From 35399b4460ad8e27d2c8150177f55b91b97c3d4f Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 10:24:47 +0300 Subject: [PATCH 01/62] new user insert for Onurcan Karatay --- src/encoded/tests/data/master-inserts/user.json | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/encoded/tests/data/master-inserts/user.json b/src/encoded/tests/data/master-inserts/user.json index b4fc1eebce..46d9387828 100644 --- a/src/encoded/tests/data/master-inserts/user.json +++ b/src/encoded/tests/data/master-inserts/user.json @@ -375,5 +375,22 @@ } ], "user_institution": "828cd4fe-ebb0-4b36-a94a-d2e3a36cc989" + }, + { + "email": "onurcank.karatay@gmail.com", + "first_name": "Onurcan", + "last_name": "Karatay", + "uuid": "42cd3586-0ae7-43bd-9d9c-14a03572e3aa", + "groups": [ + "admin" + ], + "project": "12a92962-8265-4fc0-b2f8-cf14f05db58b", + "project_roles": [ + { + "project": "12a92962-8265-4fc0-b2f8-cf14f05db58b", + "role": "developer" + } + ], + "user_institution": "828cd4fe-ebb0-4b36-a94a-d2e3a36cc989" } ] From d719b18e4a04404e8e2a41ff953022da0f9a9d0e Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 10:31:34 +0300 Subject: [PATCH 02/62] bump SPC v0.1.91-beta.5, bootstrap v5.3.0 --- package-lock.json | 551 +++++++++++++++++++++++++++------------------- package.json | 4 +- 2 files changed, 332 insertions(+), 223 deletions(-) diff --git a/package-lock.json b/package-lock.json index b781e2e8dc..35f2809aa8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "@gmod/tabix": "^1.5.11", "@gmod/vcf": "^5.0.6", "@hms-dbmi-bgm/react-workflow-viz": "0.1.5", - "@hms-dbmi-bgm/shared-portal-components": "github:4dn-dcic/shared-portal-components#0.1.80", + "@hms-dbmi-bgm/shared-portal-components": "github:4dn-dcic/shared-portal-components#0.1.91-beta.5", "auth0-lock": "^11.33.0", "buffer": "^6.0.3", "d3": "^5.16.0", @@ -75,7 +75,7 @@ "babel-jest": "^29.1.2", "babel-loader": "^8.2.3", "babel-plugin-minify-dead-code-elimination": "^0.5.1", - "bootstrap": "^4.6.1", + "bootstrap": "^5.3.0", "bufferutil": "^4.0.7", "eslint": "^8.10.0", "eslint-plugin-cypress": "^2.12.1", @@ -2401,8 +2401,8 @@ } }, "node_modules/@hms-dbmi-bgm/shared-portal-components": { - "version": "0.1.80", - "resolved": "git+ssh://git@github.com/4dn-dcic/shared-portal-components.git#07285d90a64c19c8751fa4c00ac6ca5db8697257", + "version": "0.1.91-beta.5", + "resolved": "git+ssh://git@github.com/4dn-dcic/shared-portal-components.git#6b871404ee2e28e30df67068b7d139049a25622b", "license": "MIT", "dependencies": { "@4dn-dcic/react-infinite": "github:4dn-dcic/react-infinite#1.1.9", @@ -2413,12 +2413,12 @@ "date-fns-tz": "^1.3.0", "dom-helpers": "^5.2.1", "dompurify": "^2.3.6", - "html-react-parser": "^1.2.8", + "html-react-parser": "^5.1.10", "js-md5": "^0.7.3", "jsdom": "^19.0.0", "jsonwebtoken": ">=7.4.0", "react-draggable": ">=4.4.5", - "react-json-tree": "^0.17.0" + "react-json-tree": "^0.19.0" }, "peerDependencies": { "auth0-lock": ">=11.26.3", @@ -2429,7 +2429,7 @@ "memoize-one": "^5.1.1", "query-string": ">=4.3.0", "react": ">=16.14.0", - "react-bootstrap": "1.6.4", + "react-bootstrap": "2.10.4", "react-dom": ">=16.14.0", "react-tooltip": ">=3.11.6", "react-transition-group": ">=4.4.2", @@ -3316,9 +3316,10 @@ "dev": true }, "node_modules/@popperjs/core": { - "version": "2.11.7", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.7.tgz", - "integrity": "sha512-Cr4OjIkipTtcXKjAsm8agyleBuDHvxzeBoa1v543lbv1YaIwQjESsVcmjiWiPEbC1FIeHOG/Op9kdCmAmiS3Kw==", + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/popperjs" @@ -3503,11 +3504,6 @@ "@babel/types": "^7.20.7" } }, - "node_modules/@types/base16": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/base16/-/base16-1.0.2.tgz", - "integrity": "sha512-oYO/U4VD1DavwrKuCSQWdLG+5K22SLPem2OQaHmFcQuwHoVeGC+JGVRji2MUqZUAIQZHEonOeVfAX09hYiLsdg==" - }, "node_modules/@types/eslint": { "version": "8.40.2", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.40.2.tgz", @@ -3594,9 +3590,10 @@ "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" }, "node_modules/@types/lodash": { - "version": "4.14.192", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.192.tgz", - "integrity": "sha512-km+Vyn3BYm5ytMO13k9KTp27O75rbQ0NFw+U//g+PX7VZyjCioXaRFisqSIJRECljcTv73G3i6BpglNGHgUQ5A==" + "version": "4.17.9", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.9.tgz", + "integrity": "sha512-w9iWudx1XWOHW5lQRS9iKpK/XuRhnN+0T7HvdCCd802FYkT1AMTnxndJHGrNJwRoRHkslGr4S29tjm1cT7x/7w==", + "license": "MIT" }, "node_modules/@types/node": { "version": "14.18.42", @@ -5019,11 +5016,6 @@ "node": ">=0.10.0" } }, - "node_modules/base16": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", - "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" - }, "node_modules/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -5110,9 +5102,9 @@ "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==" }, "node_modules/bootstrap": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.6.2.tgz", - "integrity": "sha512-51Bbp/Uxr9aTuy6ca/8FbFloBUJZLHwnhTcnjIeRn2suQWsWzcuJhGjKDB5eppVte/8oCdOL3VuwxvZDUggwGQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", "dev": true, "funding": [ { @@ -5124,9 +5116,9 @@ "url": "https://opencollective.com/bootstrap" } ], + "license": "MIT", "peerDependencies": { - "jquery": "1.9.1 - 3", - "popper.js": "^1.16.1" + "@popperjs/core": "^2.11.8" } }, "node_modules/box-intersect": { @@ -5798,18 +5790,23 @@ } }, "node_modules/color": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "license": "MIT", "dependencies": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "engines": { + "node": ">=12.5.0" } }, "node_modules/color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "dependencies": { "color-name": "1.1.3" } @@ -5823,6 +5820,7 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "license": "MIT", "dependencies": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -5837,6 +5835,24 @@ "color-support": "bin.js" } }, + "node_modules/color/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, "node_modules/colorette": { "version": "2.0.19", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", @@ -6070,9 +6086,10 @@ "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" }, "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" }, "node_modules/cypress": { "version": "10.11.0", @@ -7036,9 +7053,10 @@ } }, "node_modules/entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", - "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", "engines": { "node": ">=0.12" }, @@ -10311,12 +10329,28 @@ "dev": true }, "node_modules/html-dom-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-1.2.0.tgz", - "integrity": "sha512-2HIpFMvvffsXHFUFjso0M9LqM+1Lm22BF+Df2ba+7QHJXjk63pWChEnI6YG27eaWqUdfnh5/Vy+OXrNTtepRsg==", + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-5.0.10.tgz", + "integrity": "sha512-GwArYL3V3V8yU/mLKoFF7HlLBv80BZ2Ey1BzfVNRpAci0cEKhFHI/Qh8o8oyt3qlAMLlK250wsxLdYX4viedvg==", + "license": "MIT", + "dependencies": { + "domhandler": "5.0.3", + "htmlparser2": "9.1.0" + } + }, + "node_modules/html-dom-parser/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "license": "BSD-2-Clause", "dependencies": { - "domhandler": "4.3.1", - "htmlparser2": "7.2.0" + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, "node_modules/html-encoding-sniffer": { @@ -10331,23 +10365,45 @@ } }, "node_modules/html-react-parser": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-1.4.14.tgz", - "integrity": "sha512-pxhNWGie8Y+DGDpSh8cTa0k3g8PsDcwlfolA+XxYo1AGDeB6e2rdlyv4ptU9bOTiZ2i3fID+6kyqs86MN0FYZQ==", + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-5.1.16.tgz", + "integrity": "sha512-OtVPEQRwa4eelyMbHmUfMSw5VwJsVGSVsfa8I+M8xuV87n91cF3PHpvT/z0Frf1uG34atqh3dxgjaGIsmqVsRA==", + "license": "MIT", "dependencies": { - "domhandler": "4.3.1", - "html-dom-parser": "1.2.0", - "react-property": "2.0.0", - "style-to-js": "1.1.1" + "domhandler": "5.0.3", + "html-dom-parser": "5.0.10", + "react-property": "2.0.2", + "style-to-js": "1.1.14" }, "peerDependencies": { + "@types/react": "0.14 || 15 || 16 || 17 || 18", "react": "0.14 || 15 || 16 || 17 || 18" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/html-react-parser/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, "node_modules/htmlparser2": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", - "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz", + "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==", "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", { @@ -10355,11 +10411,55 @@ "url": "https://github.com/sponsors/fb55" } ], + "license": "MIT", "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.2", - "domutils": "^2.8.0", - "entities": "^3.0.1" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.1.0", + "entities": "^4.5.0" + } + }, + "node_modules/htmlparser2/node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/htmlparser2/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/htmlparser2/node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" } }, "node_modules/http-proxy-agent": { @@ -10520,9 +10620,10 @@ } }, "node_modules/inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.3.tgz", + "integrity": "sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==", + "license": "MIT" }, "node_modules/internal-slot": { "version": "1.0.5", @@ -10634,7 +10735,8 @@ "node_modules/is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "license": "MIT" }, "node_modules/is-bigint": { "version": "1.0.4", @@ -11459,13 +11561,6 @@ "node": ">= 0.6.0" } }, - "node_modules/jquery": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.4.tgz", - "integrity": "sha512-v28EW9DWDFpzcD9O5iyJXg3R3+q+mET5JhnjJzQUZMHOv67bpSIHq81GEYpPNZHG+XXHsfSme3nxp/hndKEcsQ==", - "dev": true, - "peer": true - }, "node_modules/js-cookie": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", @@ -11936,11 +12031,6 @@ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, - "node_modules/lodash.curry": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", - "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" - }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -13536,18 +13626,6 @@ "node": ">=0.10.0" } }, - "node_modules/popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", - "dev": true, - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, "node_modules/posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -13870,17 +13948,15 @@ } }, "node_modules/react-base16-styling": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.9.1.tgz", - "integrity": "sha512-1s0CY1zRBOQ5M3T61wetEpvQmsYSNtWEcdYzyZNxKa8t7oDvaOn9d21xrGezGAHFWLM7SHcktPuPTrvoqxSfKw==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.10.0.tgz", + "integrity": "sha512-H1k2eFB6M45OaiRru3PBXkuCcn2qNmx+gzLb4a9IPMR7tMH8oBRXU5jGbPDYG1Hz+82d88ED0vjR8BmqU3pQdg==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.16.7", - "@types/base16": "^1.0.2", - "@types/lodash": "^4.14.178", - "base16": "^1.0.0", - "color": "^3.2.1", - "csstype": "^3.0.10", - "lodash.curry": "^4.1.1" + "@types/lodash": "^4.17.0", + "color": "^4.2.3", + "csstype": "^3.1.3", + "lodash-es": "^4.17.21" } }, "node_modules/react-bootstrap": { @@ -14003,19 +14079,17 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "node_modules/react-json-tree": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/react-json-tree/-/react-json-tree-0.17.0.tgz", - "integrity": "sha512-hcWjibI/fAvsKnfYk+lka5OrE1Lvb1jH5pSnFhIU5T8cCCxB85r6h/NOzDPggSSgErjmx4rl3+2EkeclIKBOhg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/react-json-tree/-/react-json-tree-0.19.0.tgz", + "integrity": "sha512-PqT1WRVcWP+RROsZPQfNEKIC1iM/ZMfY4g5jN6oDnXp5593PPRAYgoHcgYCDjflAHQMtxl8XGdlTwIBdEGUXvw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.18.3", - "@types/lodash": "^4.14.182", - "@types/prop-types": "^15.7.5", - "prop-types": "^15.8.1", - "react-base16-styling": "^0.9.1" + "@types/lodash": "^4.17.0", + "react-base16-styling": "^0.10.0" }, "peerDependencies": { - "@types/react": "^16.3.0 || ^17.0.0 || ^18.0.0", - "react": "^16.3.0 || ^17.0.0 || ^18.0.0" + "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, "node_modules/react-jsx-parser": { @@ -14096,9 +14170,10 @@ } }, "node_modules/react-property": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.0.tgz", - "integrity": "sha512-kzmNjIgU32mO4mmH5+iUyrqlpFQhF8K2k7eZ4fdLSOPFrD1XgEuSBv9LDEgxRXTMBqMd8ppT0x6TIzqE5pdGdw==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.2.tgz", + "integrity": "sha512-+PbtI3VuDV0l6CleQMsx2gtK0JZbZKbpdu5ynr+lbsuvtmgbNcS3VM0tuY2QjFNOcWxvXeHjDpy42RO+4U2rug==", + "license": "MIT" }, "node_modules/react-redux": { "version": "7.2.9", @@ -15175,6 +15250,7 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "license": "MIT", "dependencies": { "is-arrayish": "^0.3.1" } @@ -15943,19 +16019,21 @@ } }, "node_modules/style-to-js": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.1.tgz", - "integrity": "sha512-RJ18Z9t2B02sYhZtfWKQq5uplVctgvjTfLWT7+Eb1zjUjIrWzX5SdlkwLGQozrqarTmEzJJ/YmdNJCUNI47elg==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.14.tgz", + "integrity": "sha512-+FGNddHGLPY4NOPneEEdFj8dIy+oV4mHGrPZpB38P+YXrCAG9mp70dbcsAWnM8BFZULkJRvMqD0CXRjZLOYJFA==", + "license": "MIT", "dependencies": { - "style-to-object": "0.3.0" + "style-to-object": "1.0.7" } }, "node_modules/style-to-object": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", - "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.7.tgz", + "integrity": "sha512-uSjr59G5u6fbxUfKbb8GcqMGT3Xs9v5IbPkjb0S16GyOeBLAzSRK0CixBv5YrYvzO6TDLzIS6QCn78tkqWngPw==", + "license": "MIT", "dependencies": { - "inline-style-parser": "0.1.1" + "inline-style-parser": "0.2.3" } }, "node_modules/subprocess-middleware": { @@ -19376,8 +19454,8 @@ } }, "@hms-dbmi-bgm/shared-portal-components": { - "version": "git+ssh://git@github.com/4dn-dcic/shared-portal-components.git#07285d90a64c19c8751fa4c00ac6ca5db8697257", - "from": "@hms-dbmi-bgm/shared-portal-components@github:4dn-dcic/shared-portal-components#0.1.80", + "version": "git+ssh://git@github.com/4dn-dcic/shared-portal-components.git#6b871404ee2e28e30df67068b7d139049a25622b", + "from": "@hms-dbmi-bgm/shared-portal-components@github:4dn-dcic/shared-portal-components#0.1.91-beta.5", "requires": { "@4dn-dcic/react-infinite": "github:4dn-dcic/react-infinite#1.1.9", "@sentry/react": "^7.35.0", @@ -19387,12 +19465,12 @@ "date-fns-tz": "^1.3.0", "dom-helpers": "^5.2.1", "dompurify": "^2.3.6", - "html-react-parser": "^1.2.8", + "html-react-parser": "^5.1.10", "js-md5": "^0.7.3", "jsdom": "^19.0.0", "jsonwebtoken": ">=7.4.0", "react-draggable": ">=4.4.5", - "react-json-tree": "^0.17.0" + "react-json-tree": "^0.19.0" } }, "@humanwhocodes/config-array": { @@ -20152,9 +20230,9 @@ "dev": true }, "@popperjs/core": { - "version": "2.11.7", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.7.tgz", - "integrity": "sha512-Cr4OjIkipTtcXKjAsm8agyleBuDHvxzeBoa1v543lbv1YaIwQjESsVcmjiWiPEbC1FIeHOG/Op9kdCmAmiS3Kw==" + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==" }, "@restart/context": { "version": "2.1.4", @@ -20300,11 +20378,6 @@ "@babel/types": "^7.20.7" } }, - "@types/base16": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/base16/-/base16-1.0.2.tgz", - "integrity": "sha512-oYO/U4VD1DavwrKuCSQWdLG+5K22SLPem2OQaHmFcQuwHoVeGC+JGVRji2MUqZUAIQZHEonOeVfAX09hYiLsdg==" - }, "@types/eslint": { "version": "8.40.2", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.40.2.tgz", @@ -20391,9 +20464,9 @@ "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" }, "@types/lodash": { - "version": "4.14.192", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.192.tgz", - "integrity": "sha512-km+Vyn3BYm5ytMO13k9KTp27O75rbQ0NFw+U//g+PX7VZyjCioXaRFisqSIJRECljcTv73G3i6BpglNGHgUQ5A==" + "version": "4.17.9", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.9.tgz", + "integrity": "sha512-w9iWudx1XWOHW5lQRS9iKpK/XuRhnN+0T7HvdCCd802FYkT1AMTnxndJHGrNJwRoRHkslGr4S29tjm1cT7x/7w==" }, "@types/node": { "version": "14.18.42", @@ -21558,11 +21631,6 @@ } } }, - "base16": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", - "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" - }, "base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -21626,9 +21694,9 @@ "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==" }, "bootstrap": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.6.2.tgz", - "integrity": "sha512-51Bbp/Uxr9aTuy6ca/8FbFloBUJZLHwnhTcnjIeRn2suQWsWzcuJhGjKDB5eppVte/8oCdOL3VuwxvZDUggwGQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", "dev": true, "requires": {} }, @@ -22121,18 +22189,34 @@ } }, "color": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", "requires": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "dependencies": { + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + } } }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "requires": { "color-name": "1.1.3" } @@ -22354,9 +22438,9 @@ } }, "csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, "cypress": { "version": "10.11.0", @@ -23167,9 +23251,9 @@ } }, "entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", - "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==" + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" }, "error-ex": { "version": "1.3.2", @@ -25807,12 +25891,22 @@ "dev": true }, "html-dom-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-1.2.0.tgz", - "integrity": "sha512-2HIpFMvvffsXHFUFjso0M9LqM+1Lm22BF+Df2ba+7QHJXjk63pWChEnI6YG27eaWqUdfnh5/Vy+OXrNTtepRsg==", + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-5.0.10.tgz", + "integrity": "sha512-GwArYL3V3V8yU/mLKoFF7HlLBv80BZ2Ey1BzfVNRpAci0cEKhFHI/Qh8o8oyt3qlAMLlK250wsxLdYX4viedvg==", "requires": { - "domhandler": "4.3.1", - "htmlparser2": "7.2.0" + "domhandler": "5.0.3", + "htmlparser2": "9.1.0" + }, + "dependencies": { + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + } } }, "html-encoding-sniffer": { @@ -25824,25 +25918,65 @@ } }, "html-react-parser": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-1.4.14.tgz", - "integrity": "sha512-pxhNWGie8Y+DGDpSh8cTa0k3g8PsDcwlfolA+XxYo1AGDeB6e2rdlyv4ptU9bOTiZ2i3fID+6kyqs86MN0FYZQ==", + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-5.1.16.tgz", + "integrity": "sha512-OtVPEQRwa4eelyMbHmUfMSw5VwJsVGSVsfa8I+M8xuV87n91cF3PHpvT/z0Frf1uG34atqh3dxgjaGIsmqVsRA==", "requires": { - "domhandler": "4.3.1", - "html-dom-parser": "1.2.0", - "react-property": "2.0.0", - "style-to-js": "1.1.1" + "domhandler": "5.0.3", + "html-dom-parser": "5.0.10", + "react-property": "2.0.2", + "style-to-js": "1.1.14" + }, + "dependencies": { + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + } } }, "htmlparser2": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", - "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz", + "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==", "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.2", - "domutils": "^2.8.0", - "entities": "^3.0.1" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.1.0", + "entities": "^4.5.0" + }, + "dependencies": { + "dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + }, + "domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + } + } } }, "http-proxy-agent": { @@ -25969,9 +26103,9 @@ "optional": true }, "inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.3.tgz", + "integrity": "sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==" }, "internal-slot": { "version": "1.0.5", @@ -26648,13 +26782,6 @@ "resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.16.0.tgz", "integrity": "sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==" }, - "jquery": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.4.tgz", - "integrity": "sha512-v28EW9DWDFpzcD9O5iyJXg3R3+q+mET5JhnjJzQUZMHOv67bpSIHq81GEYpPNZHG+XXHsfSme3nxp/hndKEcsQ==", - "dev": true, - "peer": true - }, "js-cookie": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", @@ -27027,11 +27154,6 @@ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, - "lodash.curry": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", - "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" - }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -28267,13 +28389,6 @@ } } }, - "popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "dev": true, - "peer": true - }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -28508,17 +28623,14 @@ } }, "react-base16-styling": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.9.1.tgz", - "integrity": "sha512-1s0CY1zRBOQ5M3T61wetEpvQmsYSNtWEcdYzyZNxKa8t7oDvaOn9d21xrGezGAHFWLM7SHcktPuPTrvoqxSfKw==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.10.0.tgz", + "integrity": "sha512-H1k2eFB6M45OaiRru3PBXkuCcn2qNmx+gzLb4a9IPMR7tMH8oBRXU5jGbPDYG1Hz+82d88ED0vjR8BmqU3pQdg==", "requires": { - "@babel/runtime": "^7.16.7", - "@types/base16": "^1.0.2", - "@types/lodash": "^4.14.178", - "base16": "^1.0.0", - "color": "^3.2.1", - "csstype": "^3.0.10", - "lodash.curry": "^4.1.1" + "@types/lodash": "^4.17.0", + "color": "^4.2.3", + "csstype": "^3.1.3", + "lodash-es": "^4.17.21" } }, "react-bootstrap": { @@ -28625,15 +28737,12 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "react-json-tree": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/react-json-tree/-/react-json-tree-0.17.0.tgz", - "integrity": "sha512-hcWjibI/fAvsKnfYk+lka5OrE1Lvb1jH5pSnFhIU5T8cCCxB85r6h/NOzDPggSSgErjmx4rl3+2EkeclIKBOhg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/react-json-tree/-/react-json-tree-0.19.0.tgz", + "integrity": "sha512-PqT1WRVcWP+RROsZPQfNEKIC1iM/ZMfY4g5jN6oDnXp5593PPRAYgoHcgYCDjflAHQMtxl8XGdlTwIBdEGUXvw==", "requires": { - "@babel/runtime": "^7.18.3", - "@types/lodash": "^4.14.182", - "@types/prop-types": "^15.7.5", - "prop-types": "^15.8.1", - "react-base16-styling": "^0.9.1" + "@types/lodash": "^4.17.0", + "react-base16-styling": "^0.10.0" } }, "react-jsx-parser": { @@ -28699,9 +28808,9 @@ } }, "react-property": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.0.tgz", - "integrity": "sha512-kzmNjIgU32mO4mmH5+iUyrqlpFQhF8K2k7eZ4fdLSOPFrD1XgEuSBv9LDEgxRXTMBqMd8ppT0x6TIzqE5pdGdw==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.2.tgz", + "integrity": "sha512-+PbtI3VuDV0l6CleQMsx2gtK0JZbZKbpdu5ynr+lbsuvtmgbNcS3VM0tuY2QjFNOcWxvXeHjDpy42RO+4U2rug==" }, "react-redux": { "version": "7.2.9", @@ -30157,19 +30266,19 @@ "dev": true }, "style-to-js": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.1.tgz", - "integrity": "sha512-RJ18Z9t2B02sYhZtfWKQq5uplVctgvjTfLWT7+Eb1zjUjIrWzX5SdlkwLGQozrqarTmEzJJ/YmdNJCUNI47elg==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.14.tgz", + "integrity": "sha512-+FGNddHGLPY4NOPneEEdFj8dIy+oV4mHGrPZpB38P+YXrCAG9mp70dbcsAWnM8BFZULkJRvMqD0CXRjZLOYJFA==", "requires": { - "style-to-object": "0.3.0" + "style-to-object": "1.0.7" } }, "style-to-object": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", - "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.7.tgz", + "integrity": "sha512-uSjr59G5u6fbxUfKbb8GcqMGT3Xs9v5IbPkjb0S16GyOeBLAzSRK0CixBv5YrYvzO6TDLzIS6QCn78tkqWngPw==", "requires": { - "inline-style-parser": "0.1.1" + "inline-style-parser": "0.2.3" } }, "subprocess-middleware": { diff --git a/package.json b/package.json index d2748ce27f..d76b5eb104 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "babel-jest": "^29.1.2", "babel-loader": "^8.2.3", "babel-plugin-minify-dead-code-elimination": "^0.5.1", - "bootstrap": "^4.6.1", + "bootstrap": "^5.3.0", "bufferutil": "^4.0.7", "eslint": "^8.10.0", "eslint-plugin-cypress": "^2.12.1", @@ -61,7 +61,7 @@ "@gmod/tabix": "^1.5.11", "@gmod/vcf": "^5.0.6", "@hms-dbmi-bgm/react-workflow-viz": "0.1.5", - "@hms-dbmi-bgm/shared-portal-components": "github:4dn-dcic/shared-portal-components#0.1.80", + "@hms-dbmi-bgm/shared-portal-components": "github:4dn-dcic/shared-portal-components#0.1.91-beta.5", "auth0-lock": "^11.33.0", "buffer": "^6.0.3", "d3": "^5.16.0", From 03444caccc1749a54b1a71f057655825df63cd9d Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 10:34:05 +0300 Subject: [PATCH 03/62] Bs5 sass upgrades --- src/encoded/static/scss/encoded/_base.scss | 18 +++++++--- .../encoded/_bootstrap-theme-overrides.scss | 35 ++++++++++--------- src/encoded/static/scss/encoded/_layout.scss | 2 +- 3 files changed, 33 insertions(+), 22 deletions(-) diff --git a/src/encoded/static/scss/encoded/_base.scss b/src/encoded/static/scss/encoded/_base.scss index 7757cec3d0..cc76efad86 100644 --- a/src/encoded/static/scss/encoded/_base.scss +++ b/src/encoded/static/scss/encoded/_base.scss @@ -53,7 +53,8 @@ $grid-breakpoints: ( sm: 576px, md: 768px, lg: 992px, - xl: 1500px // < xl is overridden from default of 1200px; others are Bootstrap v4 defaults + xl: 1200px, + xxl: 1500px, ); $border-radius-base: 3px; @@ -115,10 +116,19 @@ $primary-dark: #2b6088; //#0c5979; $facetlist-excluding: #450000; -// Will be extended in bootstrap's _variables.scss with Bootstrap orig colors (warning, success, primary, etc). -// And then used to create utility classes 'text-primary-dark', 'bg-primary-dark', etc. +// Previously, Bootstrap extended $theme-colors with default colors like warning, success, and primary. +// However, as of Bootstrap v5, Bootstrap has removed the default Sass map merging to simplify customization and prevent redundant values. +// Now, we need to explicitly define all values in the Sass maps for $theme-colors. $theme-colors: ( - "primary-dark": $primary-dark + "primary": $primary, + "secondary": $secondary, + "success": $success, + "info": $info, + "warning": $warning, + "danger": $danger, + "light": $light, + "dark": $dark, + "primary-dark": $primary-dark ); // override 1.5, to help center text diff --git a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss index c32324a530..2cefdadb06 100644 --- a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss +++ b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss @@ -55,20 +55,6 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px } -/**** Ports from Bootstrap v5, these can be deleted if/when we upgrade to Bootstrap 5 *****/ - -.pe-none { - /* @see https://getbootstrap.com/docs/5.0/utilities/interactions/#pointer-events */ - pointer-events: none; -} - -.pe-auto { - /* @see https://getbootstrap.com/docs/5.0/utilities/interactions/#pointer-events */ - pointer-events: auto; -} - -/**** End Ports from Bootstrap5 ****/ - /************************************** ************* Text Styles ************ **************************************/ @@ -117,7 +103,7 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px /** Extending Bootstrap button w/ rounded & ext-padding class **/ /** btn-xs was removed in Bootstrap v4 so we recreate it here **/ .btn.btn-xs { - @include button-size(1px, 5px, 0.825rem, 1.5, $border-radius-sm); + @include button-size(1px, 5px, 0.825rem, 1.5); font-weight: 400; padding-top: 2px; //> i.icon { @@ -181,11 +167,13 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px // Reset rounded corners > div.dropdown:not(:last-child) > .btn:not(.dropdown-toggle) { - @include border-right-radius(0); + border-top-right-radius: 0; + border-bottom-right-radius: 0; } > div.dropdown:not(:first-child) > .btn { - @include border-left-radius(0); + border-top-left-radius: 0; + border-bottom-left-radius: 0; } } @@ -329,4 +317,17 @@ div[role="dialog"] { } } +/************************************** + ************ Link Styles *********** + **************************************/ + +a { + text-decoration: none; + text-underline-offset: 0.125em; + &.link-underline-hover { + &:hover { + text-decoration: underline !important; + } + } +} \ No newline at end of file diff --git a/src/encoded/static/scss/encoded/_layout.scss b/src/encoded/static/scss/encoded/_layout.scss index 299576f208..9251fe7b1c 100644 --- a/src/encoded/static/scss/encoded/_layout.scss +++ b/src/encoded/static/scss/encoded/_layout.scss @@ -47,7 +47,7 @@ body { #layout { height: auto !important; - margin: 0 auto -$footer-height; + // margin: 0 auto -$footer-height; min-height: 100%; background-color: $appBackgroundColor; // overflow-x: hidden; From aa71f47474ae09b1ee4935e524dcd3c7ade6324f Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 11:27:58 +0300 Subject: [PATCH 04/62] Bs5 text align upgrades --- .../cypress/e2e/05b_case_view_fsui.cy.js | 4 +- src/encoded/static/components/Footer.js | 2 +- .../browse/AboveTableControlsBaseCGAP.js | 10 +- .../components/browse/CaseDetailPane.js | 30 ++-- .../components/browse/CaseNotesColumn.js | 2 +- .../components/browse/columnExtensionMap.js | 16 +-- .../browse/variantSampleColumnExtensionMap.js | 26 ++-- .../components/forms/ExcelSubmissionView.js | 50 +++---- .../components/forms/UserRegistrationForm.js | 4 +- .../item-pages/CaseView/AccessioningTab.js | 2 +- .../item-pages/CaseView/BioinformaticsTab.js | 28 ++-- .../CaseReviewTab/ReportGenerationView.js | 14 +- .../CaseView/CaseReviewTab/index.js | 18 +-- .../item-pages/CaseView/CaseStats.js | 18 +-- .../item-pages/CaseView/CaseSummaryTable.js | 24 ++-- ...aseViewEmbeddedVariantSampleSearchTable.js | 2 +- .../AddToVariantSampleListButton.js | 4 +- .../FilteringTableFilterSetUI/FilterBlock.js | 12 +- .../PresetFilterSetSelectionUI.js | 34 ++--- .../SaveFilterSetPresetButton.js | 2 +- .../FilteringTableFilterSetUI/index.js | 32 ++--- .../item-pages/CaseView/InterpretationTab.js | 10 +- .../item-pages/CaseView/PedigreeTabView.js | 4 +- .../CaseView/TechnicalReviewColumn.js | 20 +-- .../CaseView/VariantSampleSelection.js | 56 ++++---- .../components/item-pages/CaseView/index.js | 10 +- .../variant-sample-selection-panels.js | 2 +- .../components/item-pages/DefaultItemView.js | 2 +- .../components/item-pages/HealthView.js | 6 +- .../ReportView/ReportPrintPreviewPane.js | 4 +- .../ReportView/ReportPrintPreviewTab.js | 2 +- .../SomaticAccessioningTab.js | 2 +- .../SomaticAnalysisStats.js | 14 +- .../SomaticBioinformaticsTab.js | 14 +- .../item-pages/SomaticAnalysisView/index.js | 8 +- .../StructuralVariantSampleOverview.js | 6 +- .../StructuralVariantSampleView/SvBrowser.js | 10 +- .../SvDetailPanes.js | 4 +- .../SvGeneTabBody.js | 6 +- .../SvSampleTabBody.js | 116 +++++++-------- .../SvVariantTabBody.js | 18 +-- .../static/components/item-pages/UserView.js | 22 +-- .../VariantSampleView/AnnotationSections.js | 62 ++++---- .../BamFileBrowserTabBody.js | 4 +- .../InterpretationSpaceController.js | 34 ++--- .../VariantSampleView/SampleTabBody.js | 112 +++++++-------- .../VariantSampleInfoHeader.js | 12 +- .../VariantSampleOverview.js | 4 +- .../VariantSampleView/VariantTabBody.js | 134 +++++++++--------- .../item-pages/components/BadgesTabView.js | 6 +- .../CohortStatisticalAnalysisTable.js | 4 +- .../components/EmbeddedItemSearchTable.js | 2 +- .../item-pages/components/FeedbackButton.js | 2 +- .../HiGlass/EmbeddedCohortBrowser.js | 12 +- .../components/HiGlass/GeneSearchBox.js | 6 +- .../PedigreeDetailPane/ClinicianNotes.js | 4 +- .../PedigreeDetailPane/DiseasesLegend.js | 2 +- .../PedigreeDetailPane/IndividualBody.js | 2 +- .../components/PedigreeTabViewBody.js | 4 +- .../components/item-pages/components/QCM.js | 8 +- .../Workflow/WorkflowNodeElement.js | 14 +- .../navigation/components/AccountNav.js | 8 +- .../BigDropdown/BigDropdownBigLink.js | 4 +- .../BigDropdownIntroductionWrapper.js | 4 +- .../BigDropdown/BigDropdownPageTreeMenu.js | 10 +- .../navigation/components/CollapsedNav.js | 8 +- .../components/static-pages/DirectoryPage.js | 2 +- .../static-pages/HomePage/GuestHomeView.js | 6 +- .../static-pages/HomePage/UserDashboard.js | 12 +- src/encoded/static/components/util/Schemas.js | 4 +- src/encoded/static/components/util/acmg.js | 4 +- .../encoded/_bootstrap-theme-overrides.scss | 12 +- src/encoded/static/scss/encoded/_layout.scss | 2 +- .../static/scss/encoded/_typography.scss | 2 +- .../scss/encoded/modules/_item-pages.scss | 2 +- .../static/scss/encoded/modules/_search.scss | 2 +- .../static/scss/encoded/modules/_tables.scss | 12 +- 77 files changed, 596 insertions(+), 596 deletions(-) diff --git a/deploy/post_deploy_testing/cypress/e2e/05b_case_view_fsui.cy.js b/deploy/post_deploy_testing/cypress/e2e/05b_case_view_fsui.cy.js index a99278098f..2c763cf2b7 100644 --- a/deploy/post_deploy_testing/cypress/e2e/05b_case_view_fsui.cy.js +++ b/deploy/post_deploy_testing/cypress/e2e/05b_case_view_fsui.cy.js @@ -51,11 +51,11 @@ describe('Case View - FSUI', function () { it("Save buttons disabled initially", function(){ - cy.get("div#case-info\\.filtering #snv-filtering .above-variantsample-table-ui .filter-set-ui-header div.pl-16 button:first-child").should(function($btn){ + cy.get("div#case-info\\.filtering #snv-filtering .above-variantsample-table-ui .filter-set-ui-header div.ps-16 button:first-child").should(function($btn){ expect($btn.children("span")).to.have.text('Save Case FilterSet'); expect($btn).to.have.attr('disabled'); }).end() - .get("div#case-info\\.filtering #snv-filtering .above-variantsample-table-ui .filter-set-ui-header div.pl-16 button:last-child").should(function($btn){ + .get("div#case-info\\.filtering #snv-filtering .above-variantsample-table-ui .filter-set-ui-header div.ps-16 button:last-child").should(function($btn){ expect($btn).to.have.text('Create Preset'); expect($btn).to.have.attr('disabled'); }); diff --git a/src/encoded/static/components/Footer.js b/src/encoded/static/components/Footer.js index 24bd1b3916..acb63aa656 100644 --- a/src/encoded/static/components/Footer.js +++ b/src/encoded/static/components/Footer.js @@ -25,7 +25,7 @@ export const Footer = React.memo(function Footer(){
- + diff --git a/src/encoded/static/components/browse/AboveTableControlsBaseCGAP.js b/src/encoded/static/components/browse/AboveTableControlsBaseCGAP.js index 0cf9822883..5034d2061e 100644 --- a/src/encoded/static/components/browse/AboveTableControlsBaseCGAP.js +++ b/src/encoded/static/components/browse/AboveTableControlsBaseCGAP.js @@ -61,7 +61,7 @@ export const AboveSearchViewOptions = React.memo(function AboveSearchViewOptions return( Create New} /> + submitNewButton={Create New} />
@@ -147,7 +147,7 @@ export const AboveCaseSearchViewOptions = React.memo(function AboveCaseSearchVie const CaseSearchViewSubmitNewButton = React.memo(function CaseSearchViewSubmitNewButton(props) { return ( Submit New...}> + title={Submit New...}> Case @@ -225,7 +225,7 @@ class ProjectFilterCheckbox extends React.PureComponent { return ( - { isChanging ? : null } + { isChanging ? : null } { children } @@ -296,7 +296,7 @@ function ProjectSelectDropdown(props){ return ( { Term.toName("project.display_title", projectTerm) } - ({ doc_count }) + ({ doc_count }) ); }); @@ -384,7 +384,7 @@ export const DashboardTitle = React.memo(function DashboardTitle(props){
- +
{subtitle} Dashboard
diff --git a/src/encoded/static/components/browse/CaseDetailPane.js b/src/encoded/static/components/browse/CaseDetailPane.js index 0834bd149d..f25adc0876 100644 --- a/src/encoded/static/components/browse/CaseDetailPane.js +++ b/src/encoded/static/components/browse/CaseDetailPane.js @@ -177,11 +177,11 @@ class FamilySection extends React.Component { return (

-
+
- { family.display_title }: Family & Report History + { family.display_title }: Family & Report History

{ open ? ( @@ -212,11 +212,11 @@ export class FamilyReportStackedTable extends React.PureComponent { // Keeping these builtInHeader methods separate in case we want to build in custom columns later static builtInHeaders = [ - { columnClass: 'individual', className: 'text-left', title: 'Individual', initialWidth: 200 }, - { columnClass: 'libraries', className: 'text-left', title: 'Sequencing Libraries', initialWidth: 80 }, + { columnClass: 'individual', className: 'text-start', title: 'Individual', initialWidth: 200 }, + { columnClass: 'libraries', className: 'text-start', title: 'Sequencing Libraries', initialWidth: 80 }, /* report + analysis columns have no labels, but have left alignment, so we add 12px padding left to visually align header to it better */ - { columnClass: 'analysis', className: 'text-left pl-12', title: 'Analysis', initialWidth: 80 }, - { columnClass: 'report', className: 'text-left pl-12', title: 'Report', initialWidth: 260 } + { columnClass: 'analysis', className: 'text-start ps-12', title: 'Analysis', initialWidth: 80 }, + { columnClass: 'report', className: 'text-start ps-12', title: 'Report', initialWidth: 260 } ]; /* Built-in headers */ @@ -284,7 +284,7 @@ export class FamilyReportStackedTable extends React.PureComponent { }> -
+
{ atId ? { workup_type } : { workup_type } }
@@ -330,7 +330,7 @@ export class FamilyReportStackedTable extends React.PureComponent { }> - { analysis_title } + { analysis_title } { reportBlock ? {reportBlock} : FamilyReportStackedTable.renderEmptyBlock("report") } @@ -362,12 +362,12 @@ export class FamilyReportStackedTable extends React.PureComponent { }> -
- Case ID: +
+ Case ID: { caseAtId ? { case_title } : { case_title }}
-
- Report: +
+ Report: { reportAtId ? { reportTitle } : { reportTitle }}
@@ -378,8 +378,8 @@ export class FamilyReportStackedTable extends React.PureComponent { }> -
- Case ID: +
+ Case ID: { caseAtId ? { case_title } : { case_title } @@ -395,7 +395,7 @@ export class FamilyReportStackedTable extends React.PureComponent { }> -
+
{ atId ? { role || display_title } diff --git a/src/encoded/static/components/browse/CaseNotesColumn.js b/src/encoded/static/components/browse/CaseNotesColumn.js index 42acbd367a..460c7a3c09 100644 --- a/src/encoded/static/components/browse/CaseNotesColumn.js +++ b/src/encoded/static/components/browse/CaseNotesColumn.js @@ -50,7 +50,7 @@ const CaseNotesPopover = forwardRef(({ > ); @@ -297,12 +297,12 @@ export const VariantSampleDisplayTitleColumn = React.memo(function VariantSample ]; if (variantID) { - rows.push({ variantID }); + rows.push({ variantID }); } return ( ); @@ -334,7 +334,7 @@ export const VariantSampleDisplayTitleColumnSV = React.memo(function VariantSamp return ( ); @@ -365,7 +365,7 @@ export const GenesMostSevereDisplayTitle = React.memo(function GenesMostSevereDi { title }
- + { genes_most_severe_transcript}
@@ -450,7 +450,7 @@ export const StructuralVariantTranscriptColumn = React.memo(function StructuralV :  { highlighted_genes.map((gene) => { const { display_title, "@id": atID } = gene; - return {display_title}; + return {display_title}; })}
); @@ -493,32 +493,32 @@ export const ProbandGenotypeLabelColumn = React.memo(function ProbandGenotypeLab const rowCls = truncate ? "text-truncate" : null; const rows = [ - //
Proband: {proband_genotype_label}
+ //
Proband: {proband_genotype_label}
{ showIcon ? - + : null } { proband_genotype_label }
]; if (mother_genotype_label) { - // rows.push(
Mother: {mother_genotype_label || "-"}
); + // rows.push(
Mother: {mother_genotype_label || "-"}
); rows.push(
{ showIcon ? - + : null } { mother_genotype_label || "-" }
); } if (father_genotype_label) { - // rows.push(
Father: {father_genotype_label || "-"}
); + // rows.push(
Father: {father_genotype_label || "-"}
); rows.push(
{ showIcon ? - + : null } { father_genotype_label || "-" }
@@ -533,7 +533,7 @@ export const BAMSnapshotColumn = React.memo(function BAMSnapshotColumn({ result
diff --git a/src/encoded/static/components/forms/ExcelSubmissionView.js b/src/encoded/static/components/forms/ExcelSubmissionView.js index 57f0bc7856..5cd8f7f84c 100644 --- a/src/encoded/static/components/forms/ExcelSubmissionView.js +++ b/src/encoded/static/components/forms/ExcelSubmissionView.js @@ -184,12 +184,12 @@ export default class ExcelSubmissionView extends React.PureComponent { if (submissionID && submissionTitle){ submissionLink = (
- Saved as • + Saved as • { submissionTitle } - +
); } @@ -233,7 +233,7 @@ const LocalAlertsContainer = function LocalAlertsContainer(props) { { noCloseButton !== true ? : null }

{ title }

@@ -509,7 +509,7 @@ class PanelOne extends React.PureComponent { if (!user) { return (
- +
Loading Information...
); @@ -530,9 +530,9 @@ class PanelOne extends React.PureComponent {
{ institutionTitle }
- - { institutionID } • - + { institutionID } • + @@ -561,7 +561,7 @@ class PanelOne extends React.PureComponent {
{ valuesChanged ? -
+
: <> - + }
{ ingestionType === "genelist" ? null : ( <>
- Results: + Results: )} @@ -731,17 +731,17 @@ function CreatedItemsTable(props) { const label = ( {alias} - + ); const value = ( - { accession } + { accession } ); return ; }); - return ; + return ; } @@ -851,7 +851,7 @@ function ExcelSubmissionFileAttachmentBtn(props) { const selectTitle = "Select " + uploadType + " file(s)..."; const uploadTitle = "Upload " + uploadType; - const instructionsNode =
Accepted file types: { acceptedTypesDisplay }
; + const instructionsNode =
Accepted file types: { acceptedTypesDisplay }
; return ; } @@ -878,7 +878,7 @@ function FileAttachmentBtn(props){ { instructionsNode }
- + { selectTitle }
@@ -918,13 +918,13 @@ function FileAttachmentBtn(props){
- { !loadingFileResult && postFileSuccess ? Success! : null} - { !loadingFileResult && postFileSuccess === false ? Failure! : null} + { !loadingFileResult && postFileSuccess ? Success! : null} + { !loadingFileResult && postFileSuccess === false ? Failure! : null} ); } @@ -974,9 +974,9 @@ const LinkToFieldSection = React.memo(function LinkToFieldSection(props){
- - { selectedID } • - + { selectedID } • + @@ -999,8 +999,8 @@ const ProjectDrop = (props) => { { display_title }
- - { projectID } + + { projectID }
diff --git a/src/encoded/static/components/forms/UserRegistrationForm.js b/src/encoded/static/components/forms/UserRegistrationForm.js index 2be8a1ba6e..75fbb44181 100644 --- a/src/encoded/static/components/forms/UserRegistrationForm.js +++ b/src/encoded/static/components/forms/UserRegistrationForm.js @@ -424,11 +424,11 @@ class LookupProjectField extends React.PureComponent { return ( -
+
{ currProjectTitle }
{ currentProjectDetails && currentProjectDetails['@id'] ? - : null } diff --git a/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js b/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js index 796e7df3e9..04531fb0b5 100644 --- a/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js +++ b/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js @@ -323,7 +323,7 @@ class FamilyAccessionStackedTable extends React.PureComponent { return ( // We can pass 'className={..}' to this if needed. -
+
{ atId ? { role || display_title } diff --git a/src/encoded/static/components/item-pages/CaseView/BioinformaticsTab.js b/src/encoded/static/components/item-pages/CaseView/BioinformaticsTab.js index 92ed694a0f..4cba2ed8a2 100644 --- a/src/encoded/static/components/item-pages/CaseView/BioinformaticsTab.js +++ b/src/encoded/static/components/item-pages/CaseView/BioinformaticsTab.js @@ -37,8 +37,8 @@ export const BioinformaticsTab = React.memo(function BioinformaticsTab(props) { - - ViewProvenance Graph + + ViewProvenance Graph ); @@ -50,7 +50,7 @@ export const BioinformaticsTab = React.memo(function BioinformaticsTab(props) {

Bioinformatics Analysis

{/* TODO: See if there's any desire to include QC statuses here (BAM, SNV, SV, etc.) -
+
Current Status: PASS 3/28/20
*/} @@ -150,14 +150,14 @@ function BioinfoStatTable({ qualityControlMetrics }) { {coverage.value || fallbackElem} - {(coverage.value && coverage.flag) && } + {(coverage.value && coverage.flag) && } {totalSNVIndelVars.value ? decorateNumberWithCommas(+totalSNVIndelVars.value) : fallbackElem} {transTransRatio.value || fallbackElem} - {(transTransRatio.value && transTransRatio.flag) && } + {(transTransRatio.value && transTransRatio.flag) && }
@@ -167,11 +167,11 @@ function BioinfoStatTable({ qualityControlMetrics }) { {mapLongFormSexToLetter(predictedSex.value) || fallbackElem}  {!!predictedSex.link && (see peddy QC report)} - {predictedSex.flag && } + {predictedSex.flag && } {heterozygosity.value || fallbackElem} - {(heterozygosity.value && heterozygosity.flag) && } + {(heterozygosity.value && heterozygosity.flag) && } {filteredSNVIndelVariants.value ? decorateNumberWithCommas(+filteredSNVIndelVariants.value) : fallbackElem} @@ -187,7 +187,7 @@ function BioinfoStatTable({ qualityControlMetrics }) { {deNovo.value || fallbackElem} - {(deNovo.value && deNovo.flag) && } + {(deNovo.value && deNovo.flag) && } {filteredSVVariants.value ? decorateNumberWithCommas(+filteredSVVariants.value) : fallbackElem} @@ -243,9 +243,9 @@ function QCMAccordionDrawer(props) { const failFlags = fail.map((flag) => ); return ( -
+
-
+
{failFlags} {warnFlags}
@@ -258,7 +258,7 @@ function QCMAccordionDrawer(props) { borderTop: "1px solid rgba(0, 0, 0, 0.08)", borderBottom: "1px solid rgba(0, 0, 0, 0.08)" }}> - {individual_id || individual_accession} + {individual_id || individual_accession} {idToGraphIdentifier[atID]} 
@@ -285,10 +285,10 @@ function QCMAccordionToggle({ children, eventKey, callback, role, sequencingType return (
- -
+ +
{role ? `${role}:` : ""} -
+
{specimenType && sequencingType ? `${specimenType} - ${sequencingType}` : specimenType ? specimenType : sequencingType}
diff --git a/src/encoded/static/components/item-pages/CaseView/CaseReviewTab/ReportGenerationView.js b/src/encoded/static/components/item-pages/CaseView/CaseReviewTab/ReportGenerationView.js index 9439fc5472..15c4ed5e38 100644 --- a/src/encoded/static/components/item-pages/CaseView/CaseReviewTab/ReportGenerationView.js +++ b/src/encoded/static/components/item-pages/CaseView/CaseReviewTab/ReportGenerationView.js @@ -140,7 +140,7 @@ export const ReportGenerationView = React.memo(function ReportGenerationView (pr renderedWarnings = (
Warnings:
-
    +
      { warnings.map(function(warning, idx){ return
    • { warning }
    • ; }) }
@@ -218,23 +218,23 @@ export const ReportGenerationView = React.memo(function ReportGenerationView (pr
- +
-
+
{/*
@@ -357,7 +357,7 @@ function ReportFindingsTableNoSamplesFallback (props) {
{ header } - + Add text in place of table?
diff --git a/src/encoded/static/components/item-pages/CaseView/CaseReviewTab/index.js b/src/encoded/static/components/item-pages/CaseView/CaseReviewTab/index.js index 94c0a5b11b..37457ef8d1 100644 --- a/src/encoded/static/components/item-pages/CaseView/CaseReviewTab/index.js +++ b/src/encoded/static/components/item-pages/CaseView/CaseReviewTab/index.js @@ -116,7 +116,7 @@ export const CaseReviewTab = React.memo(function CaseReviewTab (props) {

Case Review { isFetchingReportItem || isLoadingVariantSampleListItem ? - + : ( {/* */} @@ -132,8 +132,8 @@ export const CaseReviewTab = React.memo(function CaseReviewTab (props) { {/* Hidden Temporarily
-
@@ -148,26 +148,26 @@ export const CaseReviewTab = React.memo(function CaseReviewTab (props) {
-
+
{/* - */} - + - +
-
+
-
diff --git a/src/encoded/static/components/item-pages/CaseView/CaseStats.js b/src/encoded/static/components/item-pages/CaseView/CaseStats.js index bcba783a36..f99810848a 100644 --- a/src/encoded/static/components/item-pages/CaseView/CaseStats.js +++ b/src/encoded/static/components/item-pages/CaseView/CaseStats.js @@ -36,7 +36,7 @@ function mapFeaturesToBadges(features = []) { const { display_title = null, '@id': featureID } = feature; return ( // TODO: create own ~ `.tag` styling or override Bootstrap's default. Maybe. - { display_title } @@ -69,13 +69,13 @@ export const CaseStats = React.memo(function CaseStats(props){
- +

Patient Info

{ haveCaseEditPermission && individualAtID ? + className="text-white-50 ms-12 text-small" data-tip="Edit Individual. Changes may take a few minutes to appear."> : null } @@ -92,13 +92,13 @@ export const CaseStats = React.memo(function CaseStats(props){
- +

Family Info

{ haveCaseEditPermission && familyAtID ? + className="text-white-50 ms-12 text-small" data-tip="Edit Family. Changes may take a few minutes to appear."> : null } @@ -151,7 +151,7 @@ export const PatientInfo = React.memo(function PatientInfo({ caseItem = null }) return (
- + { individual_id } @@ -159,7 +159,7 @@ export const PatientInfo = React.memo(function PatientInfo({ caseItem = null })
{" "} - { accession } + { accession }
@@ -172,7 +172,7 @@ export const PatientInfo = React.memo(function PatientInfo({ caseItem = null }) { age && age_units ? `${age} ${age_units}(s)` : fallbackElem }
- + {" "} { Schemas.Term.toName("status", status, true) || fallbackElem }
@@ -227,7 +227,7 @@ export const FamilyInfo = React.memo(function FamilyInfo({ canonicalFamily }) {
{" "} - { familyAccession } + { familyAccession }
{/*
{ cohortTitle || fallbackElem } diff --git a/src/encoded/static/components/item-pages/CaseView/CaseSummaryTable.js b/src/encoded/static/components/item-pages/CaseView/CaseSummaryTable.js index 8659130570..9f1ece1268 100644 --- a/src/encoded/static/components/item-pages/CaseView/CaseSummaryTable.js +++ b/src/encoded/static/components/item-pages/CaseView/CaseSummaryTable.js @@ -49,27 +49,27 @@ export const CaseSummaryTable = React.memo(function CaseSummaryTable(props){ const columnTitles = { 'sample' : ( - - Sample + + Sample ), 'individual' : ( - - Individual + + Individual ), 'assayType' : "Assay Type", 'rawFiles' : ( - + Sequencing ), 'processingType' : "Processing Type", 'processedFiles' : ( - + Pipeline ), @@ -348,11 +348,11 @@ export const CaseSummaryTable = React.memo(function CaseSummaryTable(props){ function statusToIcon(status){ switch (status) { case "PASS": - return ; + return ; case "FAIL": - return ; + return ; case "WARN": - return ; + return ; default: return null; } @@ -452,8 +452,8 @@ export const CaseSummaryTable = React.memo(function CaseSummaryTable(props){ const indvLink = (
- { isProband ? Proband : null} - { (role && role !== "proband") ? {role} : null} + { isProband ? Proband : null} + { (role && role !== "proband") ? {role} : null} { genID ? { genID }: null} { individual_id || indvDisplayTitle }
); @@ -495,7 +495,7 @@ export const CaseSummaryTable = React.memo(function CaseSummaryTable(props){ { specimen_collection_date ? - + : null } diff --git a/src/encoded/static/components/item-pages/CaseView/CaseViewEmbeddedVariantSampleSearchTable.js b/src/encoded/static/components/item-pages/CaseView/CaseViewEmbeddedVariantSampleSearchTable.js index 02322e60aa..86453f75e8 100644 --- a/src/encoded/static/components/item-pages/CaseView/CaseViewEmbeddedVariantSampleSearchTable.js +++ b/src/encoded/static/components/item-pages/CaseView/CaseViewEmbeddedVariantSampleSearchTable.js @@ -277,7 +277,7 @@ const MatchingFilterBlockIndicesPopoverColumn = React.memo(function MatchingFilt const popover = ( Matches Filter Blocks: - +
    { filterBlockNameList.map(function(fbName, i){ return
  • { fbName }
  • ; diff --git a/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/AddToVariantSampleListButton.js b/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/AddToVariantSampleListButton.js index 67065bf35b..46404d9573 100644 --- a/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/AddToVariantSampleListButton.js +++ b/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/AddToVariantSampleListButton.js @@ -52,7 +52,7 @@ export function AddToVariantSampleListButton(props){ return ( @@ -61,7 +61,7 @@ export function AddToVariantSampleListButton(props){ return ( diff --git a/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/FilterBlock.js b/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/FilterBlock.js index 1c2701beca..8fb3f02114 100644 --- a/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/FilterBlock.js +++ b/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/FilterBlock.js @@ -135,21 +135,21 @@ const FilterBlockTitle = React.memo(function FilterBlockTitle (props) { setNameOfFilterBlockAtIdx(index, inputElem.value); }}> - - ); } else { const isDuplicateName = typeof duplicateNameIndices[index] === "number"; - const deleteIconCls = "icon fas mr-07 clickable icon-times-circle" + (!isOnlyFilterBlock ? "" : " disabled"); + const deleteIconCls = "icon fas me-07 clickable icon-times-circle" + (!isOnlyFilterBlock ? "" : " disabled"); const titleCls = "text-small pt-02" + ( (isDuplicateName || !isValidNameContentsToSaveToVariantSampleList) ? " text-danger" : !filterName ? " text-secondary" @@ -162,13 +162,13 @@ const FilterBlockTitle = React.memo(function FilterBlockTitle (props) { : null } - { isLoadingBlock ? : null } + { isLoadingBlock ? : null } { filterName || No Name } { typeof setNameOfFilterBlockAtIdx === "function" && typeof filterName === "string" ? // Prevent [attempts at] editing of JSX/non-string 'filterName' values. Should only occur for hardcoded-UI stuff like DummyLoadingFilterBlock - + : null } ); @@ -181,7 +181,7 @@ const FilterBlockTitle = React.memo(function FilterBlockTitle (props) {
    { innerTitle }
    -
    +
    { cachedCount }
    diff --git a/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/PresetFilterSetSelectionUI.js b/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/PresetFilterSetSelectionUI.js index d6efc62d5e..19245db711 100644 --- a/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/PresetFilterSetSelectionUI.js +++ b/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/PresetFilterSetSelectionUI.js @@ -250,7 +250,7 @@ export class PresetFilterSetSelectionUI extends React.PureComponent { }; const savePresetDropdownCls = "btn btn-outline-primary-dark btn-sm text-truncate w-100"; - const btnInner =
    Create Preset from Current FilterSet
    ; + const btnInner =
    Create Preset from Current FilterSet
    ; const createPresetBtn = (
    @@ -312,12 +312,12 @@ export class PresetFilterSetSelectionUI extends React.PureComponent { let nextToTitleIcon = null; if (errorMessage) { nextToTitleIcon = ( - + ); } else if (isCheckingForNewFilterSet || isLoadingPresets) { nextToTitleIcon = ( - + ); } @@ -326,7 +326,7 @@ export class PresetFilterSetSelectionUI extends React.PureComponent {
    - + Presets { nextToTitleIcon }
    @@ -334,7 +334,7 @@ export class PresetFilterSetSelectionUI extends React.PureComponent {
    { totalResultCount } total { (totalResultCount || 0) >= 250 ? - + : null }
    : null } @@ -461,7 +461,7 @@ const PresetFilterSetResult = React.memo(function PresetFilterSetResult (props) } else { menuOptions.push( - + View Details ); @@ -474,14 +474,14 @@ const PresetFilterSetResult = React.memo(function PresetFilterSetResult (props) menuOptions.push( - + Edit ); menuOptions.push( - + Delete ); @@ -490,7 +490,7 @@ const PresetFilterSetResult = React.memo(function PresetFilterSetResult (props) // TODO make sure userProjectUUID not already in FS's `preset_for_projects` before showing or enabling menuOptions.push( - + Set as preset for my project ); @@ -574,13 +574,13 @@ const PresetFilterSetResult = React.memo(function PresetFilterSetResult (props) const presetIconsToShow = ( { isPresetForProject ? - + : null } { isPresetForUser ? - + : null } { isDefaultForProject ? - + : null } ); @@ -593,14 +593,14 @@ const PresetFilterSetResult = React.memo(function PresetFilterSetResult (props) data-is-origin-of-current-case-filterset={isOriginOfCurrentCaseFilterSet} data-is-current-case-filterset-unchanged={isCurrentCaseFilterSetUnchanged} data-has-been-deleted={isDeleted}> -
    +
    { presetFSTitle }
    -
    +
    - @@ -614,12 +614,12 @@ const PresetFilterSetResult = React.memo(function PresetFilterSetResult (props) - + -
    +

-
+
@@ -405,7 +405,7 @@ const FilterSetUIHeader = React.memo(function FilterSetUIHeader(props){ if (isFetchingInitialFilterSetItem) { titleBlock = (

- + Loading Filter Set

); @@ -420,25 +420,25 @@ const FilterSetUIHeader = React.memo(function FilterSetUIHeader(props){ setTitleOfFilterSet(inputElem.value); }}> - - + ); } */ else { titleBlock = ( ); } @@ -455,16 +455,16 @@ const FilterSetUIHeader = React.memo(function FilterSetUIHeader(props){ if (haveDuplicateQueries || haveDuplicateNames || !allFilterBlockNameQueriesValid) { const err = !allFilterBlockNameQueriesValid ? "Filter block with same name but different query value has been saved to Variant Sample selection list already. Please change Filter Block name below to proceed." : `Filter blocks with duplicate ${(haveDuplicateNames ? "names" : "") + (haveDuplicateNames && haveDuplicateQueries ? " and " : "") + (haveDuplicateQueries ? "queries" : "")} exist below.`; - warnIcon = ; + warnIcon = ; } // todo if edit permission(?): [ Save Button etc. ] [ Sum Active(?) Filters ] return ( -
+
{ titleBlock }
-
+
{ warnIcon }
-
+
{ (allFilterBlocksSelected ? "All" : selectedFilterBlockIdxCount + "/" + filterBlocksLen) + " filter blocks selected" }
@@ -589,20 +589,20 @@ function FilterSetUIBlockBottomUI(props){
-
+
@@ -303,7 +303,7 @@ const ExportInterpretationSpreadsheetButton = React.memo(function ExportInterpre - + Export SNVs As... }> diff --git a/src/encoded/static/components/item-pages/CaseView/PedigreeTabView.js b/src/encoded/static/components/item-pages/CaseView/PedigreeTabView.js index 0023813173..b90f9cb9f8 100644 --- a/src/encoded/static/components/item-pages/CaseView/PedigreeTabView.js +++ b/src/encoded/static/components/item-pages/CaseView/PedigreeTabView.js @@ -319,7 +319,7 @@ const FamilySelectionDropdown = React.memo(function FamilySelectionDropdown(prop Family {pedigreeFamiliesIdx + 1} ); return ( - + { familiesWithViewPermission.map(function(family, i){ const { original_pedigree: pf = null } = family; @@ -347,7 +347,7 @@ const FamilySelectionDropdown = React.memo(function FamilySelectionDropdown(prop /** No longer in use for UX reasons; keeping it around temporarily in case people want it back */ const ShowAsDiseasesDropdown = React.memo(function ShowAsDiseasesDropdown({ showAsDiseases, onSelect }){ return ( - + Phenotypic Features Disorders diff --git a/src/encoded/static/components/item-pages/CaseView/TechnicalReviewColumn.js b/src/encoded/static/components/item-pages/CaseView/TechnicalReviewColumn.js index 09d0375b5a..cd61280f7a 100644 --- a/src/encoded/static/components/item-pages/CaseView/TechnicalReviewColumn.js +++ b/src/encoded/static/components/item-pages/CaseView/TechnicalReviewColumn.js @@ -422,7 +422,7 @@ export class TechnicalReviewColumn extends React.PureComponent { )); - const recentlySavedAsterisk = *; + const recentlySavedAsterisk = *; return (
@@ -448,7 +448,7 @@ export class TechnicalReviewColumn extends React.PureComponent { { typeof lastSavedNoteText !== "undefined" ? recentlySavedAsterisk : null } { typeof unsavedTechnicalReviewNoteTextForResult !== "undefined" ? // Will be equal to null if saved text exists but unsaved text is blank (== will remove field upon save). - * + * : null } @@ -666,10 +666,10 @@ const NotePopoverContents = React.memo(function NotePopover(props){
: null }
- -
@@ -1122,7 +1122,7 @@ class CallClassificationButton extends React.PureComponent { const lastSavedIndicator = isLastSaved ? * : isLastSaveUnset ? - + : null; if (isDefaultSaveToProject) { @@ -1142,17 +1142,17 @@ class CallClassificationButton extends React.PureComponent { // We don't have a way to unsave from project, so disable button for now if already saved to project. return (
- - @@ -578,13 +578,13 @@ export const VariantSampleSelection = React.memo(function VariantSampleSelection
- + { dateAnyNoteLastModified ? : N/A }
- +
@@ -603,7 +603,7 @@ export const ACMGClassificationColumn = React.memo(function ACMGClassificationCo } return ( - { showIcon ? : null } + { showIcon ? : null } { acmgClassification } ); @@ -614,20 +614,20 @@ export const DiscoveryCandidacyColumn = React.memo(function DiscoveryCandidacyCo const labelStyle = useMemo(function(){ return { "width" : 70 }; }); // Don't create new object reference each re-render return ( -
- Gene: +
+ Gene: { geneCandidacy ? - - + + { geneCandidacy } : }
-
- Variant: +
+ Variant: { variantCandidacy ? - - { showIcon ? : null } + + { showIcon ? : null } { variantCandidacy } : } @@ -647,7 +647,7 @@ function InterpretationTabVariantSampleTitle(props){ if (anyUnsavedChanges) { return ( - + { variantDisplayTitle } ); @@ -655,7 +655,7 @@ function InterpretationTabVariantSampleTitle(props){ const targetHref = vsID + "?showInterpretation=True&interpretationTab=1" + (caseAccession ? '&caseSource=' + caseAccession : ''); return ( - diff --git a/src/encoded/static/components/item-pages/DefaultItemView.js b/src/encoded/static/components/item-pages/DefaultItemView.js index 9bf1896fe2..e3cb88b4fd 100644 --- a/src/encoded/static/components/item-pages/DefaultItemView.js +++ b/src/encoded/static/components/item-pages/DefaultItemView.js @@ -454,7 +454,7 @@ export class ItemActionsTab extends React.PureComponent {
- JSON + JSON
); diff --git a/src/encoded/static/components/item-pages/HealthView.js b/src/encoded/static/components/item-pages/HealthView.js index 784c9fa07f..565c7571e0 100644 --- a/src/encoded/static/components/item-pages/HealthView.js +++ b/src/encoded/static/components/item-pages/HealthView.js @@ -293,7 +293,7 @@ const DatabaseCountsInfo = React.memo(function DatabaseCountsInfo(props){ return ( ); } @@ -303,14 +303,14 @@ const DatabaseCountsInfo = React.memo(function DatabaseCountsInfo(props){ if (db_es_total === 'loading...') { btnTitle = ( - + Fetching Database Counts ); } else { btnTitle = ( - + Refresh Counts ); diff --git a/src/encoded/static/components/item-pages/ReportView/ReportPrintPreviewPane.js b/src/encoded/static/components/item-pages/ReportView/ReportPrintPreviewPane.js index 9c5994ff46..61367589c1 100644 --- a/src/encoded/static/components/item-pages/ReportView/ReportPrintPreviewPane.js +++ b/src/encoded/static/components/item-pages/ReportView/ReportPrintPreviewPane.js @@ -253,14 +253,14 @@ function ReportHeader({ report, caseItem, reportSettings }){

{ organization_title || projectTitle }

-
+

GENOME SEQUENCING REPORT

Computational Genome Analysis Platform
-
+
diff --git a/src/encoded/static/components/item-pages/ReportView/ReportPrintPreviewTab.js b/src/encoded/static/components/item-pages/ReportView/ReportPrintPreviewTab.js index 735238d4a5..d4981efd6e 100644 --- a/src/encoded/static/components/item-pages/ReportView/ReportPrintPreviewTab.js +++ b/src/encoded/static/components/item-pages/ReportView/ReportPrintPreviewTab.js @@ -70,7 +70,7 @@ ReportPrintPreviewTab.getTabObject = function(props) { function PrintPageButton(props){ const { className = "btn btn-primary", - children = Print, + children = Print, disabled = false } = props; const onClick = useCallback(function(e){ diff --git a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAccessioningTab.js b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAccessioningTab.js index c7a6b99d48..50dfe19dd4 100644 --- a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAccessioningTab.js +++ b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAccessioningTab.js @@ -153,7 +153,7 @@ class SomaticAccessionStackedTable extends React.PureComponent { return ( // We can pass 'className={..}' to this if needed. -
+
{ atId && Individual diff --git a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAnalysisStats.js b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAnalysisStats.js index 3c459cccdc..b5db933d23 100644 --- a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAnalysisStats.js +++ b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAnalysisStats.js @@ -15,27 +15,27 @@ export const SomaticAnalysisStats = React.memo(function SomaticAnalysisStats(pro
{ individualAtID && } - { !individualAtID &&
No Individual Available
} + { !individualAtID &&
No Individual Available
}
- +

Sample Summary

@@ -84,17 +84,17 @@ export const IndividualInfo = React.memo(function IndividualInfo({ individual }) return (
- + { display_title || individual_id }
- { accession } + { accession }
- + {primaryDisorders ? primaryDisorders: fallbackElem}
diff --git a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticBioinformaticsTab.js b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticBioinformaticsTab.js index fec8a6148a..0f180d29cb 100644 --- a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticBioinformaticsTab.js +++ b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticBioinformaticsTab.js @@ -52,7 +52,7 @@ function SomaticBioinfoStatTable({ sample }) { {coverage.value || fallbackElem} - {(coverage.value && coverage.flag) && } + {(coverage.value && coverage.flag) && } {fallbackElem} @@ -97,9 +97,9 @@ function SQCMAccordionDrawer(props) { const failFlags = fail.map((flag) => ); return ( -
+
-
+
{failFlags} {warnFlags}
@@ -112,7 +112,7 @@ function SQCMAccordionDrawer(props) { borderTop: "1px solid rgba(0, 0, 0, 0.08)", borderBottom: "1px solid rgba(0, 0, 0, 0.08)" }}> - {individual_id || individual_accession} + {individual_id || individual_accession}
@@ -138,10 +138,10 @@ function SQCMAccordionToggle({ children, eventKey, callback, tissueType, sequenc return (
- -
+ +
{tissueType ? `${tissueType}:` : ""} -
+
{specimenType && sequencingType ? `${specimenType} - ${sequencingType}` : specimenType ? specimenType : sequencingType}
diff --git a/src/encoded/static/components/item-pages/SomaticAnalysisView/index.js b/src/encoded/static/components/item-pages/SomaticAnalysisView/index.js index 5c01ab4362..0043e4a132 100644 --- a/src/encoded/static/components/item-pages/SomaticAnalysisView/index.js +++ b/src/encoded/static/components/item-pages/SomaticAnalysisView/index.js @@ -97,12 +97,12 @@ const SomaticAnalysisInfoTabView = React.memo(function CaseInfoTabView(props) { {external_identifier || display_title} - {description}
- + {accession}
What is somatic analysis? -
@@ -123,8 +123,8 @@ const SomaticAnalysisInfoTabView = React.memo(function CaseInfoTabView(props) {
- -

+ +

Somatic Analysis Browser

diff --git a/src/encoded/static/components/item-pages/StructuralVariantSampleView/StructuralVariantSampleOverview.js b/src/encoded/static/components/item-pages/StructuralVariantSampleView/StructuralVariantSampleOverview.js index 592dc8c1a8..d816818316 100644 --- a/src/encoded/static/components/item-pages/StructuralVariantSampleView/StructuralVariantSampleOverview.js +++ b/src/encoded/static/components/item-pages/StructuralVariantSampleView/StructuralVariantSampleOverview.js @@ -152,7 +152,7 @@ function StructuralVariantInfoSection({ context }) {
@@ -170,7 +170,7 @@ function StructuralVariantInfoSection({ context }) {
-
+
@@ -380,7 +380,7 @@ const OverviewTabTitle = React.memo(function OverviewTabTitle(props){ return ( ); diff --git a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvBrowser.js b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvBrowser.js index 7ee157dff8..dd316fa543 100644 --- a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvBrowser.js +++ b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvBrowser.js @@ -12,11 +12,11 @@ import { SvBrowserHiglass } from './SvBrowserHiglass'; function SvSettingsCheckbox({ label, checked, onChange, disabled, loading = false }) { if (typeof onChange !== 'function') return null; if (typeof checked === 'undefined') return null; - const spinnerClass = "spinner-border text-secondary ml-1 spinner-border-sm" + (!loading ? " d-none" : ""); + const spinnerClass = "spinner-border text-secondary ms-1 spinner-border-sm" + (!loading ? " d-none" : ""); return ( {label}
@@ -436,7 +436,7 @@ export class SvBrowser extends React.PureComponent {
-
-
diff --git a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvDetailPanes.js b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvDetailPanes.js index ff27346b7d..0d6b9311e8 100644 --- a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvDetailPanes.js +++ b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvDetailPanes.js @@ -184,7 +184,7 @@ function ConsequenceOfSVSection({ currentTranscript }) {
@@ -197,7 +197,7 @@ function ConsequenceOfSVSection({ currentTranscript }) {
diff --git a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvGeneTabBody.js b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvGeneTabBody.js index 14eabe8aeb..a4575266e1 100644 --- a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvGeneTabBody.js +++ b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvGeneTabBody.js @@ -138,7 +138,7 @@ const SVGeneDisplayTitleColumn = React.memo(function SVGeneDispalyTitleColumn(pr const transcriptIndex = getInitialTranscriptIndex(filteredTranscripts); const { csq_mane = null, csq_feature = null } = filteredTranscripts[transcriptIndex || 0]; const transcriptDisplay = csq_mane || csq_feature; - rows.push({ transcriptDisplay } ); + rows.push({ transcriptDisplay } ); } return ( @@ -161,8 +161,8 @@ export const HighlightedGeneSelector = React.memo(function HighlightedGeneSelect return onSelectGene(result, false, false); }, [ onSelectGene, result ]); - // return ; - return ; + // return ; + return ; }); const geneTableColumns = { diff --git a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvSampleTabBody.js b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvSampleTabBody.js index ce8e0af6c1..06d99518e5 100644 --- a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvSampleTabBody.js +++ b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvSampleTabBody.js @@ -33,7 +33,7 @@ export const SvSampleTabBody = (props) => { Structural Variant - Caller Properties (Manta) - +
@@ -49,7 +49,7 @@ export const SvSampleTabBody = (props) => { Copy Number Variant - Caller Properties (BicSeq2) - +
@@ -91,7 +91,7 @@ function SvMantaTable(props) { const fallbackElem = - ; if (!callers.length || !callers.includes("Manta")) { - return
Variant not detected by Manta
; + return
Variant not detected by Manta
; } const startExists = confidence_interval_start.length > 0; @@ -103,51 +103,51 @@ function SvMantaTable(props) { - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + +
QualityValueDefinitionQualityValueDefinition
Precise/Imprecise{impreciseDisplay}{ getTipForField("imprecise") }Precise/Imprecise{impreciseDisplay}{ getTipForField("imprecise") }
Confidence interval around left breakpoint{startExists ? confidence_interval_start.join(", "): fallbackElem}{ getTipForField("confidence_interval_start", "StructuralVariantSample", "items" ) }Confidence interval around left breakpoint{startExists ? confidence_interval_start.join(", "): fallbackElem}{ getTipForField("confidence_interval_start", "StructuralVariantSample", "items" ) }
Confidence interval around right breakpoint{endExists ? confidence_interval_end.join(", "): fallbackElem}{ getTipForField("confidence_interval_end", "StructuralVariantSample", "items") }Confidence interval around right breakpoint{endExists ? confidence_interval_end.join(", "): fallbackElem}{ getTipForField("confidence_interval_end", "StructuralVariantSample", "items") }
Number of split reads supporting the alternative allele{ falsyZeroCheck(alternate_split_reads, fallbackElem)}{ getTipForField("alternate_split_reads", "StructuralVariantSample") }Number of split reads supporting the alternative allele{ falsyZeroCheck(alternate_split_reads, fallbackElem)}{ getTipForField("alternate_split_reads", "StructuralVariantSample") }
Number of split reads supporting the reference allele{ falsyZeroCheck(reference_split_reads, fallbackElem)}{ getTipForField("reference_split_reads", "StructuralVariantSample") }Number of split reads supporting the reference allele{ falsyZeroCheck(reference_split_reads, fallbackElem)}{ getTipForField("reference_split_reads", "StructuralVariantSample") }
Number of spanning reads supporting the alternative allele{ falsyZeroCheck(alternate_paired_reads, fallbackElem)}{ getTipForField("alternate_paired_reads", "StructuralVariantSample") }Number of spanning reads supporting the alternative allele{ falsyZeroCheck(alternate_paired_reads, fallbackElem)}{ getTipForField("alternate_paired_reads", "StructuralVariantSample") }
Number of spanning reads supporting the reference allele{ falsyZeroCheck(reference_paired_reads, fallbackElem)}{ getTipForField("reference_paired_reads", "StructuralVariantSample") }Number of spanning reads supporting the reference allele{ falsyZeroCheck(reference_paired_reads, fallbackElem)}{ getTipForField("reference_paired_reads", "StructuralVariantSample") }
Manta Quality Score{ falsyZeroCheck(qualityScore, fallbackElem)}{ getTipForField("quality_score", "StructuralVariantSample") }Manta Quality Score{ falsyZeroCheck(qualityScore, fallbackElem)}{ getTipForField("quality_score", "StructuralVariantSample") }
@@ -168,7 +168,7 @@ function SvBicSeqTable(props) { } = props; if (!callers.length || !callers.includes("BIC-seq2")) { - return
Variant not detected by BIC-seq2
; + return
Variant not detected by BIC-seq2
; } const fallbackElem = - ; @@ -178,28 +178,28 @@ function SvBicSeqTable(props) { - - - + + + - - - + + + - - - + + + - - + - + - - - + + +
QualityValueDefinitionQualityValueDefinition
Number of Observed Reads{bicseq2_observed_reads || fallbackElem}{getTipForField("bicseq2_observed_reads")}Number of Observed Reads{bicseq2_observed_reads || fallbackElem}{getTipForField("bicseq2_observed_reads")}
Number of Expected Reads{bicseq2_expected_reads || fallbackElem}{getTipForField("bicseq2_expected_reads")}Number of Expected Reads{bicseq2_expected_reads || fallbackElem}{getTipForField("bicseq2_expected_reads")}
Copy Ratio [log2] -
+
Copy Ratio [log2] +
{shortenToSignificantDigits(bicseq2_log2_copy_ratio) || fallbackElem} - Positive Value: Indicates an excess of reads,
suggesting a possible duplication.
@@ -208,12 +208,12 @@ function SvBicSeqTable(props) { />
{getTipForField("bicseq2_log2_copy_ratio")}{getTipForField("bicseq2_log2_copy_ratio")}
P-value{shortenToSignificantDigits(bicseq2_pvalue, 2) || fallbackElem}{getTipForField("bicseq2_pvalue")}P-value{shortenToSignificantDigits(bicseq2_pvalue, 2) || fallbackElem}{getTipForField("bicseq2_pvalue")}
@@ -237,11 +237,11 @@ function GenotypeQualityTable(props) { return ( - {samplegeno_role} - {samplegeno_sampleid} - {samplegeno_numgt} - {samplegeno_quality} - {samplegeno_likelihood} + {samplegeno_role} + {samplegeno_sampleid} + {samplegeno_numgt} + {samplegeno_quality} + {samplegeno_likelihood} ); }); @@ -250,11 +250,11 @@ function GenotypeQualityTable(props) { - - - - - + + + + + diff --git a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvVariantTabBody.js b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvVariantTabBody.js index 9b6b345ebe..42e27669ea 100644 --- a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvVariantTabBody.js +++ b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvVariantTabBody.js @@ -84,10 +84,10 @@ const SVGnomADTable = React.memo(function SVGnomADTable(props) { const ancestryTableRows = ancestryRowData.map(function({ popStr, populationTitle, alleleCount, alleleFreq, alleleNum, homozygoteNum }){ return ( - + - + ); }); @@ -102,30 +102,30 @@ const SVGnomADTable = React.memo(function SVGnomADTable(props) {
RelationIDGenotype Genotype Quality Genotype Likelihoods RelationIDGenotype Genotype Quality Genotype Likelihoods
{ populationTitle }{ populationTitle } { standardizeGnomadValue(alleleCount) } { standardizeGnomadValue(alleleNum) }{ alleleFreq === 0 ? "0.0000" : standardizeGnomadValue(alleleFreq) }{ alleleFreq === 0 ? "0.0000" : standardizeGnomadValue(alleleFreq) }
- + - - + - + { ancestryTableRows } diff --git a/src/encoded/static/components/item-pages/UserView.js b/src/encoded/static/components/item-pages/UserView.js index a0f3133e5a..ea4afa6852 100644 --- a/src/encoded/static/components/item-pages/UserView.js +++ b/src/encoded/static/components/item-pages/UserView.js @@ -153,7 +153,7 @@ class SyncedAccessKeyTable extends React.PureComponent {

-
+
Access Key ID
@@ -161,7 +161,7 @@ class SyncedAccessKeyTable extends React.PureComponent {
-
+
Secret Access Key
@@ -212,7 +212,7 @@ class SyncedAccessKeyTable extends React.PureComponent { 'modal' : ( - Access key { foundItem.access_key_id } has been deleted. + Access key { foundItem.access_key_id } has been deleted. ) @@ -281,7 +281,7 @@ function AccessKeyTableContainer({ children, bodyClassName="card-body" }){

- + Access Keys

@@ -507,7 +507,7 @@ function ProfileContactFields(props){ } function ProfileContactFieldsIcon({ icon }){ - return ; + return ; } @@ -525,7 +525,7 @@ const ProfileWorkFields = React.memo(function ProfileWorkFields({ user }){ return (
  • -
    +
    @@ -533,7 +533,7 @@ const ProfileWorkFields = React.memo(function ProfileWorkFields({ user }){
    -
    +
    @@ -548,7 +548,7 @@ const ProfileWorkFields = React.memo(function ProfileWorkFields({ user }){

    - + Organizations

    @@ -607,12 +607,12 @@ export function ImpersonateUserForm({ updateAppSessionState }) { - - + + View Users diff --git a/src/encoded/static/components/item-pages/VariantSampleView/AnnotationSections.js b/src/encoded/static/components/item-pages/VariantSampleView/AnnotationSections.js index 307b33fa18..dcd2fb504e 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/AnnotationSections.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/AnnotationSections.js @@ -132,7 +132,7 @@ export const ExternalDatabasesSection = React.memo(function ExternalDatabasesSec return ( { externalID } - + ); }); @@ -148,7 +148,7 @@ export const ExternalDatabasesSection = React.memo(function ExternalDatabasesSec { title } { index === extIDsLen - 1 ? - + : (index === 0 ? " + " : " ") } ); @@ -160,7 +160,7 @@ export const ExternalDatabasesSection = React.memo(function ExternalDatabasesSec
    @@ -176,7 +176,7 @@ export const ExternalDatabasesSection = React.memo(function ExternalDatabasesSec const externalDatabaseElemsLen = externalDatabaseElems.length; if (externalDatabaseElemsLen === 0) { - return

    No External Databases

    ; + return

    No External Databases

    ; } else if (externalDatabaseElemsLen >= 4) { const mp = Math.ceil(externalDatabaseElemsLen / 2); const col1 = externalDatabaseElems.slice(0, mp); @@ -229,7 +229,7 @@ export const GeneOverview = React.memo(function GeneOverview(props) {
    @@ -241,7 +241,7 @@ export const GeneOverview = React.memo(function GeneOverview(props) {
    @@ -264,7 +264,7 @@ export const GeneOverview = React.memo(function GeneOverview(props) {
    @@ -309,7 +309,7 @@ export const GeneOverview = React.memo(function GeneOverview(props) {
    @@ -337,35 +337,35 @@ export const ConstraintScoresSection = React.memo(function ConstraintScoresSecti // more todo } = currentGeneItem; return ( -
  • PopulationPopulation Allele Count - Allele Number - + Allele Frequency -
    gnomAD SVgnomAD SV {gnomad_ac || fallbackElem} {gnomad_an || fallbackElem}{gnomad_af || fallbackElem}{gnomad_af || fallbackElem}
    +
    - + - - - - - @@ -437,9 +437,9 @@ export const ConstraintScoresSection = React.memo(function ConstraintScoresSecti - @@ -448,9 +448,9 @@ export const ConstraintScoresSection = React.memo(function ConstraintScoresSecti - - - - - + + + + { altADs.map((ad, i) => ( - ))} - + ); } const CoverageTable = React.memo(function CoverageTable({ samplegeno = [], genotypeLabels = [], varRef }) { if (samplegeno.length === 0) { - return No coverage data available.; + return No coverage data available.; } const mapNumgtToGT = {}; @@ -280,7 +280,7 @@ const CoverageTable = React.memo(function CoverageTable({ samplegeno = [], genot refAndAltCols = numGTKeys.sort((a,b) => a - b).map((numGT, i) => { const thisGT = mapNumgtToGT[numGT]; const { bpGT = null, shortGT = null } = mapGTToShortenedTitles[thisGT]; - return ; + return ; }); } else { // looks like some columns were missing/incomplete, need to ensure # matches refAndAltCols = []; @@ -291,15 +291,15 @@ const CoverageTable = React.memo(function CoverageTable({ samplegeno = [], genot // if it's ref, just use ref placeholder to replace if (i === 0) { const { bpGT = null, shortGT = null } = shortenGT(varRef, 2); - refAndAltCols.push(); + refAndAltCols.push(); } else { // apply placeholder name to empty alt column - refAndAltCols.push(); + refAndAltCols.push(); emptyColCount++; } } else { // use actual value const thisGT = mapNumgtToGT[i]; const { bpGT = null, shortGT = null } = mapGTToShortenedTitles[thisGT]; - refAndAltCols.push(); + refAndAltCols.push(); } } } @@ -323,11 +323,11 @@ const CoverageTable = React.memo(function CoverageTable({ samplegeno = [], genot
    ConstraintConstraint Synonymous - + Missense - + LoF - +
    + Expected - {genePopoverContents.expected} + {genePopoverContents.expected} { falsyZeroCheck(exp_syn, fallbackNotPresent)} @@ -378,9 +378,9 @@ export const ConstraintScoresSection = React.memo(function ConstraintScoresSecti
    + Observed - {genePopoverContents.observed} + {genePopoverContents.observed} { falsyZeroCheck(obs_syn, fallbackNotPresent)} @@ -393,9 +393,9 @@ export const ConstraintScoresSection = React.memo(function ConstraintScoresSecti
    + O/E (range) - {genePopoverContents.oerange} + {genePopoverContents.oerange} { falsyZeroCheck(shortenToSignificantDigits(oe_syn), fallbackNotPresent)} @@ -411,9 +411,9 @@ export const ConstraintScoresSection = React.memo(function ConstraintScoresSecti
    + Z-score - {genePopoverContents.zscore} + {genePopoverContents.zscore} { falsyZeroCheck(shortenToSignificantDigits(syn_z), fallbackNotPresent)} @@ -426,9 +426,9 @@ export const ConstraintScoresSection = React.memo(function ConstraintScoresSecti
    + LOEUF - {genePopoverContents.loeuf} + {genePopoverContents.loeuf} { fallbackNotImplemented } { fallbackNotImplemented }
    + S-Het - {genePopoverContents.shet} + {genePopoverContents.shet} { fallbackNotImplemented } { fallbackNotImplemented }
    + RVIS (ExAC) - {genePopoverContents.rvis} + {genePopoverContents.rvis} { fallbackNotImplemented } @@ -539,7 +539,7 @@ export function ClinVarSection({ context, getTipForField, schemas, clinvarExtern // Ensure that the date is valid by running through date parser const lastEvaluatedFromClinVar = Date.parse(new Date(lastEvaluatedFromClinVarRaw)); - const externalLinkIconAppend = ; + const externalLinkIconAppend = ; const clinVarSearchLink = clinvarVariantSearchUrl ? ( @@ -556,8 +556,8 @@ export function ClinVarSection({ context, getTipForField, schemas, clinvarExtern // No ClinVar info available. Still include link to search for variant at same location, though. return (
    - { clinVarSearchLink ?
    { clinVarSearchLink }
    : null } -

    No record in ClinVar

    + { clinVarSearchLink ?
    { clinVarSearchLink }
    : null } +

    No record in ClinVar

    ); } @@ -642,7 +642,7 @@ export function GeneTranscriptDisplayTitle({ transcript, hideGene }){ ({ geneDisplayTitle || No Gene }) : null} { csq_canonical ? - + : null } diff --git a/src/encoded/static/components/item-pages/VariantSampleView/BamFileBrowserTabBody.js b/src/encoded/static/components/item-pages/VariantSampleView/BamFileBrowserTabBody.js index 57791b14b7..359c70262a 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/BamFileBrowserTabBody.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/BamFileBrowserTabBody.js @@ -55,9 +55,9 @@ export const BamFileBrowserTabBody = React.memo(function BamFileBrowserTabBody (
    -
    +
    diff --git a/src/encoded/static/components/item-pages/VariantSampleView/InterpretationSpaceController.js b/src/encoded/static/components/item-pages/VariantSampleView/InterpretationSpaceController.js index fa08841c71..7e4fca9a5b 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/InterpretationSpaceController.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/InterpretationSpaceController.js @@ -633,7 +633,7 @@ export class InterpretationSpaceController extends React.Component { function GenericInterpretationSpaceTabBtn(props) { const { disabled, tabName, tooltip = null, onClick, isActive = false, unsavedDraft = false, cls = "" } = props; - const className = `${cls} btn btn-xs ${isActive ? "btn-primary-dark": "btn-link"} ${unsavedDraft ? 'font-italic': ""}`; + const className = `${cls} btn btn-xs ${isActive ? "btn-primary-dark": "btn-link"} ${unsavedDraft ? 'fst-italic': ""}`; return (
    : null} @@ -1012,13 +1012,13 @@ function HighlightedGenesDrop(props) { filterMethod="includes" onChange={(atID) => { onSelectGene((geneAtIDToGeneMap[atID])); } } maxResults={3} {...{ optionRenderFunction, titleRenderFunction, customFilterFunction }} /> {/* // keeping this around in case there are issues. - + { value || "Select an option..." } { dropOptions } */} { selectedGeneID ? - : null} @@ -1182,7 +1182,7 @@ function NoteFieldDrop(props) { if (static_enum.length > 0) { dropOptions = static_enum.map((option) => ( onOptionChange(field, option)} key={option}> - {option} + {option} )); } @@ -1190,17 +1190,17 @@ function NoteFieldDrop(props) { return (
    - - { value ? <> { value } : "Select an option..."} + + { value ? <> { value } : "Select an option..."} { dropOptions } { value ? - : null} @@ -1249,7 +1249,7 @@ function GenericFieldForm(props) { if (!schemas) { return (
    - + Loading...
    ); } @@ -1301,7 +1301,7 @@ function ACMGPicker(props) { return (
    { selections.length > 0 ? picked :
    None
    } @@ -1310,8 +1310,8 @@ function ACMGPicker(props) { { autoClassification ? -
    - {autoClassification} +
    + {autoClassification}
    : null } @@ -1325,7 +1325,7 @@ export const ACMGPickerOption = React.memo(function ACMGPickerOption (props) { isFallback = false, toggleInvocation, onToggleCallback = null, - className = "mr-01 ml-01" + className = "me-01 ms-01" } = props; const { rule_strength: strength, @@ -1446,14 +1446,14 @@ function UnsavedInterpretationModal(props) { -
    +
    Variant Interpretation: Unsaved Changes
    This variant interpretation is incomplete and contains at least 1:
    -
    Unsaved Variant Classification
    +
    Unsaved Variant Classification
    Are you sure you want to navigate away?
    diff --git a/src/encoded/static/components/item-pages/VariantSampleView/SampleTabBody.js b/src/encoded/static/components/item-pages/VariantSampleView/SampleTabBody.js index 1d904baf85..e83919a7d5 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/SampleTabBody.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/SampleTabBody.js @@ -50,7 +50,7 @@ export function SampleTabBody(props){
    View BAM Snapshot - +
    @@ -156,24 +156,24 @@ function CoverageTableRow(props) { return (
    { relation } { caseID }{ totalCoverage }{ refAD } {(refAD > 0 && refAD != totalCoverage) ? ` (${ Math.round(refAD/totalCoverage * 100 )}%)`: null }{ relation } { caseID }{ totalCoverage }{ refAD } {(refAD > 0 && refAD != totalCoverage) ? ` (${ Math.round(refAD/totalCoverage * 100 )}%)`: null } + { ad || 0} { ad > 0 ? ` (${ Math.round(ad/totalCoverage * 100 )}%)`: null } { label || "-" }{ label || "-" }
    {`${numGT == 0 ? 'Ref': 'Alt'} (${bpGT || shortGT || thisGT})`}{`${numGT == 0 ? 'Ref': 'Alt'} (${bpGT || shortGT || thisGT})`}Ref ({bpGT || shortGT || varRef})Ref ({bpGT || shortGT || varRef})Alt (#{emptyColCount})Alt (#{emptyColCount}){`${i == 0 ? 'Ref': 'Alt'} (${bpGT || shortGT || thisGT})`}{`${i == 0 ? 'Ref': 'Alt'} (${bpGT || shortGT || thisGT})`}
    - - - + + + { refAndAltCols } - + @@ -343,31 +343,31 @@ function QualityTable(props) {
    RelationIDCoverageRelationIDCoverageCallCall
    - - - + + + - - - + + + - - - + + + - - - + + + - - - + + +
    QualityScoreDefinitionQualityScoreDefinition
    Variant Quality{ variantQuality }{ getTipForField("QUAL") }Variant Quality{ variantQuality }{ getTipForField("QUAL") }
    Genotype Quality{ genotypeQuality }{ getTipForField("GQ") }Genotype Quality{ genotypeQuality }{ getTipForField("GQ") }
    Genotype Likelihoods(0/0,0/1,1/1){ genotypeLikelihood }{ getTipForField("PL") }Genotype Likelihoods(0/0,0/1,1/1){ genotypeLikelihood }{ getTipForField("PL") }
    Strand Fisher Score{ strandFisherScore }{ getTipForField("FS") }Strand Fisher Score{ strandFisherScore }{ getTipForField("FS") }
    @@ -384,22 +384,22 @@ QualityTable.propTypes = { function DeNovoTable(props) { const { getTipForField, novoPP = null } = props; if (novoPP === null) { - return Novo caller results are not provided for chrX, chrY, and chrM because these chromosomes do not meet model assumptions.; + return Novo caller results are not provided for chrX, chrY, and chrM because these chromosomes do not meet model assumptions.; } return ( - - - + + + - - - + + +
    Inheritance ModeScoreDefinitionInheritance ModeScoreDefinition
    NovoCaller{ novoPP }{ getTipForField("novoPP") }NovoCaller{ novoPP }{ getTipForField("novoPP") }
    @@ -414,14 +414,14 @@ const CompoundHetTable = React.memo(function CompoundHetTable(props) { const { cmphetArr } = props; if (cmphetArr.length === 0) { - return No other variants on the same gene have passed the CGAP filter for rare exonic or splicing variants or clinvar variants.; + return No other variants on the same gene have passed the CGAP filter for rare exonic or splicing variants or clinvar variants.; } function loadStatus(loadstatus) { switch (loadstatus) { case "error": // TODO: tooltip broken; need to rework to account for the weirdness with the tooltip handlers getting unhooked - return Error; + return Error; case "loading": return ; default: @@ -433,14 +433,14 @@ const CompoundHetTable = React.memo(function CompoundHetTable(props) { - - - - - - - - + + + + + + + + @@ -471,13 +471,13 @@ const CompoundHetTable = React.memo(function CompoundHetTable(props) { return ( - - - - - + + + - - - + + + ); })} diff --git a/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleInfoHeader.js b/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleInfoHeader.js index f969ccd10c..f1a5d2815f 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleInfoHeader.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleInfoHeader.js @@ -132,7 +132,7 @@ function TranscriptSelectionSection(props){ dropdownTitleToShow = selectedGeneTranscript ? ( { selectedGeneTitle } - { currentGeneItemLoading ? : null } + { currentGeneItemLoading ? : null } ) : No gene selected; body = ; @@ -148,7 +148,7 @@ function TranscriptSelectionSection(props){ disabled={geneTranscriptListLen === 0} data-tip="Select a transcript (& gene) to view their details"> { geneListOptions } -
    +
    {/* BA1, BS1 here maybe */}
    @@ -281,15 +281,15 @@ function GDNAList({ context }){ {/* Canononical GRCh38 entry */}
    -
    GRCh38
    +
    GRCh38
    { chrom }
    { hgvsg }
    {/* Legacy GRCh37/hg19 support. */}
    -
    +
    GRCh37 (hg19) - + {hg19PopoverContent}
    @@ -304,7 +304,7 @@ function GDNAList({ context }){ * csq_hg19.forEach(function({ hg19_pos, hg19_chr, csq_hg19_hgvsg }, idx){ renderedRows.push(
    -
    GRCh37 (hg19)
    +
    GRCh37 (hg19)
    { hg19_chr }
    { csq_hg19_hgvsg }
    diff --git a/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleOverview.js b/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleOverview.js index 6cd18dcb5e..1d5a3d492b 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleOverview.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleOverview.js @@ -339,7 +339,7 @@ export const OverviewTabTitle = React.memo(function OverviewTabTitle(props){ return ( ); @@ -638,7 +638,7 @@ const ACMGInvokableRule = React.memo(function ACMGInvokableRule(props) { }, [ toggleRuleStrengthOptionsPopover, strength ]); // 'rule' is already compared in toggleRuleStrengthOptionsPopover useCallback wrapper. return ( -
    { rule }
    diff --git a/src/encoded/static/components/item-pages/VariantSampleView/VariantTabBody.js b/src/encoded/static/components/item-pages/VariantSampleView/VariantTabBody.js index a66bbba4fa..a7b8e59ad1 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/VariantTabBody.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/VariantTabBody.js @@ -95,7 +95,7 @@ export const VariantTabBody = React.memo(function VariantTabBody (props) { { clinvarExternalHref ? - + : null } @@ -212,11 +212,11 @@ const GnomADTable = React.memo(function GnomADTable(props){ const ancestryTableRows = ancestryRowData.map(function({ popStr, populationTitle, alleleCount, alleleFreq, alleleNum, homozygoteNum }){ return (
    - + - + ); }); @@ -225,35 +225,35 @@ const GnomADTable = React.memo(function GnomADTable(props){
    VariantPhaseGeneImpactTranscriptImpact TranscriptLocationCoding EffectVariantPhaseGeneImpactTranscriptImpact TranscriptLocationCoding Effect
    + { href ? {variant} : variant } { phase }{ gene }{ impactGene } + { phase }{ gene }{ impactGene } { finalTranscripts.map((item, i) => { if (finalTranscripts.length - 1 !== i) { return item + ", "; @@ -485,9 +485,9 @@ const CompoundHetTable = React.memo(function CompoundHetTable(props) { return item; }) } { impactTranscript }{ loadStatus(location) }{ loadStatus(coding_effect) }{ impactTranscript }{ loadStatus(location) }{ loadStatus(coding_effect) }
    { populationTitle }{ populationTitle } { standardizeGnomadValue(alleleCount) } { standardizeGnomadValue(alleleNum) } { standardizeGnomadValue(homozygoteNum) }{ alleleFreq === 0 ? "0.0000" : standardizeGnomadValue(alleleFreq) }{ alleleFreq === 0 ? "0.0000" : standardizeGnomadValue(alleleFreq) }
    - + - + { ancestryTableRows } - + - + - + - + - + - +
    PopulationPopulation Allele Count Allele Number # of HomozygotesAllele FrequencyAllele Frequency
    FemaleFemale { standardizeGnomadValue(gnomad_ac_female) } { standardizeGnomadValue(gnomad_an_female) } { standardizeGnomadValue(gnomad_nhomalt_female) }{ gnomad_af_female === 0 ? "0.0000" : standardizeGnomadValue(gnomad_af_female) }{ gnomad_af_female === 0 ? "0.0000" : standardizeGnomadValue(gnomad_af_female) }
    MaleMale { standardizeGnomadValue(gnomad_ac_male) } { standardizeGnomadValue(gnomad_an_male) } { standardizeGnomadValue(gnomad_nhomalt_male) }{ gnomad_af_male === 0 ? "0.0000" : standardizeGnomadValue(gnomad_af_male) }{ gnomad_af_male === 0 ? "0.0000" : standardizeGnomadValue(gnomad_af_male) }
    TotalTotal { standardizeGnomadValue(gnomad_ac) } { standardizeGnomadValue(gnomad_an) } { standardizeGnomadValue(gnomad_nhomalt) }{ gnomad_af === 0 ? "0.0000" : standardizeGnomadValue(gnomad_af) }{ gnomad_af === 0 ? "0.0000" : standardizeGnomadValue(gnomad_af) }
    @@ -306,49 +306,49 @@ function PredictorsSection({ context, getTipForField, currentTranscriptIdx }){ - + - + - { csq_gerp_rs } - { fallbackElem } - { csq_gerp_rs_rankscore } + { csq_gerp_rs } + { fallbackElem } + { csq_gerp_rs_rankscore } - + - + - { csq_cadd_phred } - { fallbackElem } - { csq_cadd_raw_rankscore } + { csq_cadd_phred } + { fallbackElem } + { csq_cadd_raw_rankscore } - + - + - { csq_phylop30way_mammalian } - { fallbackElem } - { fallbackElem } + { csq_phylop30way_mammalian } + { fallbackElem } + { fallbackElem } - + - + - { csq_phylop100way_vertebrate } - { fallbackElem } - { csq_phylop100way_vertebrate_rankscore } + { csq_phylop100way_vertebrate } + { fallbackElem } + { csq_phylop100way_vertebrate_rankscore } - + - + - { csq_phastcons100way_vertebrate } - { fallbackElem } - { fallbackElem } + { csq_phastcons100way_vertebrate } + { fallbackElem } + { fallbackElem } @@ -366,40 +366,40 @@ function PredictorsSection({ context, getTipForField, currentTranscriptIdx }){ - + - + - { csq_sift_score } - { csq_sift_pred } - { csq_sift_converted_rankscore } + { csq_sift_score } + { csq_sift_pred } + { csq_sift_converted_rankscore } - + - + - { csq_polyphen2_hvar_score } - { csq_polyphen2_hvar_pred } - { csq_polyphen2_hvar_rankscore } + { csq_polyphen2_hvar_score } + { csq_polyphen2_hvar_pred } + { csq_polyphen2_hvar_rankscore } - + - + - { csq_primateai_score } - { csq_primateai_pred } - { csq_primateai_rankscore } + { csq_primateai_score } + { csq_primateai_pred } + { csq_primateai_rankscore } - + - + - { csq_revel_score } - { fallbackElem } - { csq_revel_rankscore } + { csq_revel_score } + { fallbackElem } + { csq_revel_rankscore } @@ -416,17 +416,17 @@ function PredictorsSection({ context, getTipForField, currentTranscriptIdx }){ - - + + - - +
    Prediction ToolScorePrediction ToolScore
    + - + { spliceaiMaxds }{ spliceaiMaxds }
    @@ -440,10 +440,10 @@ function PredictorsTableHeading(){ return ( - Prediction Tool - Score - Prediction - Rank Score (0 to 1) + Prediction Tool + Score + Prediction + Rank Score (0 to 1) ); @@ -506,7 +506,7 @@ function ExternalResourcesSection({ context, schemas, currentTranscriptIdx }){
    @@ -529,7 +529,7 @@ const hgmdSearchLink = [
    diff --git a/src/encoded/static/components/item-pages/components/BadgesTabView.js b/src/encoded/static/components/item-pages/components/BadgesTabView.js index 67f67fdfa6..34e42baf63 100644 --- a/src/encoded/static/components/item-pages/components/BadgesTabView.js +++ b/src/encoded/static/components/item-pages/components/BadgesTabView.js @@ -224,7 +224,7 @@ class SummaryIcon extends React.PureComponent { const countCommendations = badgesByClassification.Commendation.length; const tooltip = countCommendations + " Commendation" + (countCommendations > 1 ? "s" : ""); return ( -
    +
    @@ -277,7 +277,7 @@ class SummaryIcon extends React.PureComponent { }).join(' + '); return ( -
    +
    { this.generateArcs(classificationRatioPairs) } @@ -407,7 +407,7 @@ class BadgeItem extends React.PureComponent {

    { badgeTitle } - { description ? : null } + { description ? : null }

    { renderedMessages } { linkMsg } diff --git a/src/encoded/static/components/item-pages/components/CohortStatisticalAnalysisTable.js b/src/encoded/static/components/item-pages/components/CohortStatisticalAnalysisTable.js index 10e1123c08..b6d72ad2c5 100644 --- a/src/encoded/static/components/item-pages/components/CohortStatisticalAnalysisTable.js +++ b/src/encoded/static/components/item-pages/components/CohortStatisticalAnalysisTable.js @@ -25,7 +25,7 @@ function StatTestCheckbox({ label, checked, onChange }) { @@ -360,7 +360,7 @@ class CohortStatisticalAnalysisTableComponent extends React.PureComponent { const headerCols = []; headerCols.push(Gene name); this.state.activeTests.forEach((test) => { - let icon = "icon icon-sort-amount-down pl-1 fas"; + let icon = "icon icon-sort-amount-down ps-1 fas"; if (test !== this.state.sortedBy) { icon += " text-primary"; } diff --git a/src/encoded/static/components/item-pages/components/EmbeddedItemSearchTable.js b/src/encoded/static/components/item-pages/components/EmbeddedItemSearchTable.js index 4d1358d95b..13ebe1a544 100644 --- a/src/encoded/static/components/item-pages/components/EmbeddedItemSearchTable.js +++ b/src/encoded/static/components/item-pages/components/EmbeddedItemSearchTable.js @@ -127,7 +127,7 @@ export const SearchTableTitle = React.memo(function (props) { externalSearchLinkVisible && currentSearchHref ? ( - + Open In Search View ) : null diff --git a/src/encoded/static/components/item-pages/components/FeedbackButton.js b/src/encoded/static/components/item-pages/components/FeedbackButton.js index e16e249ee9..8b75285e47 100644 --- a/src/encoded/static/components/item-pages/components/FeedbackButton.js +++ b/src/encoded/static/components/item-pages/components/FeedbackButton.js @@ -41,7 +41,7 @@ export default function FeedbackButton(props) { return ( - + Feedback or Issues? diff --git a/src/encoded/static/components/item-pages/components/HiGlass/EmbeddedCohortBrowser.js b/src/encoded/static/components/item-pages/components/HiGlass/EmbeddedCohortBrowser.js index 55b9c77851..dd977d7d9f 100644 --- a/src/encoded/static/components/item-pages/components/HiGlass/EmbeddedCohortBrowser.js +++ b/src/encoded/static/components/item-pages/components/HiGlass/EmbeddedCohortBrowser.js @@ -13,7 +13,7 @@ function GeneListFilter({ geneLists, onChange }) { return (
    - + -
    diff --git a/src/encoded/static/components/item-pages/components/HiGlass/GeneSearchBox.js b/src/encoded/static/components/item-pages/components/HiGlass/GeneSearchBox.js index 362fbbce93..331a4662ee 100644 --- a/src/encoded/static/components/item-pages/components/HiGlass/GeneSearchBox.js +++ b/src/encoded/static/components/item-pages/components/HiGlass/GeneSearchBox.js @@ -166,14 +166,14 @@ const GeneSearchResult = React.memo(function GeneSearchResult(props) { if (error) { return (
    - + {error}
    ); } else if (info) { return (
    - + {info}
    ); @@ -185,7 +185,7 @@ const GeneSearchResult = React.memo(function GeneSearchResult(props) { } return ( -
    +
    -
    diff --git a/src/encoded/static/components/item-pages/components/PedigreeTabViewBody.js b/src/encoded/static/components/item-pages/components/PedigreeTabViewBody.js index ac9d3e00d4..aa1d09bee4 100644 --- a/src/encoded/static/components/item-pages/components/PedigreeTabViewBody.js +++ b/src/encoded/static/components/item-pages/components/PedigreeTabViewBody.js @@ -313,10 +313,10 @@ export class PedigreeFullScreenBtn extends React.PureComponent { const { visible } = this.state; if (!visible) return null; return ( - ); } diff --git a/src/encoded/static/components/item-pages/components/QCM.js b/src/encoded/static/components/item-pages/components/QCM.js index 4f41545167..8f8d73b861 100644 --- a/src/encoded/static/components/item-pages/components/QCM.js +++ b/src/encoded/static/components/item-pages/components/QCM.js @@ -7,7 +7,7 @@ import { capitalize } from '@hms-dbmi-bgm/shared-portal-components/es/components import { flagToBootstrapClass } from '../../util/item'; import QuickPopover from './QuickPopover'; -export function QCMFlag({ type, title, cls = "m-0 ml-1" }) { +export function QCMFlag({ type, title, cls = "m-0 ms-1" }) { if (!title || !type) return null; const alertClass = type === "warn" ? "warning" : "danger"; @@ -15,7 +15,7 @@ export function QCMFlag({ type, title, cls = "m-0 ml-1" }) { return (
    {qcmFieldNameToDisplay(title)} - +
    ); } @@ -60,11 +60,11 @@ export function BioinfoStatsEntry(props) { - {popoverContent ? {popoverContent} : null} + {popoverContent ? {popoverContent} : null}
    {children}
    diff --git a/src/encoded/static/components/item-pages/components/Workflow/WorkflowNodeElement.js b/src/encoded/static/components/item-pages/components/Workflow/WorkflowNodeElement.js index dfd5825344..8e2c1334ab 100644 --- a/src/encoded/static/components/item-pages/components/Workflow/WorkflowNodeElement.js +++ b/src/encoded/static/components/item-pages/components/Workflow/WorkflowNodeElement.js @@ -187,7 +187,7 @@ export class WorkflowNodeElement extends React.PureComponent { output += '
    '; } if (argumentName === 'Input' || argumentName === 'Output'){ - argumentName += ' Argument   ' + name + ''; + argumentName += ' Argument   ' + name + ''; } output += '' + argumentName + ''; } @@ -238,14 +238,14 @@ export class WorkflowNodeElement extends React.PureComponent { && node.meta.workflow.steps.length > 0 && typeof node.meta.workflow.steps[0].name === 'string' ){ - //elemProps.className += ' text-monospace'; + //elemProps.className += ' font-monospace'; return
    { _.pluck(node.meta.workflow.steps, 'name').join(', ') }
    ; } // If Parameter if (isNodeParameter(node)){ if (doesRunDataExist(node)){ - elemProps.className += ' text-monospace'; + elemProps.className += ' font-monospace'; return
    { node.name }
    ; } return
    Parameter
    ; @@ -256,7 +256,7 @@ export class WorkflowNodeElement extends React.PureComponent { if (fileFormatAsString) { return
    { fileFormatAsString }
    ; } - elemProps.className += ' text-monospace'; + elemProps.className += ' font-monospace'; return
    { title }
    ; } @@ -335,7 +335,7 @@ export class WorkflowNodeElement extends React.PureComponent { } else if (node.meta && node.meta.run_data && node.meta.run_data.file && typeof node.meta.run_data.file === 'object' && node.meta.run_data.file.file_type){ belowTitle = node.meta.run_data.file.file_type; } else { - belowTitle = { node.name }; + belowTitle = { node.name }; } return
    { belowTitle }
    ; } @@ -376,7 +376,7 @@ export class WorkflowNodeElement extends React.PureComponent { if (isNodeFile(node) && doesRunDataExist(node)){ const { file : { accession, display_title } } = run_data; return ( -
    +
    { this.icon() } { typeof file === 'string' ? ioType : accession || display_title }
    @@ -384,7 +384,7 @@ export class WorkflowNodeElement extends React.PureComponent { } if (isNodeParameter(node) && doesRunDataExist(node)){ - return
    { this.icon() }{ run_data.value }
    ; + return
    { this.icon() }{ run_data.value }
    ; } // Fallback / Default - use node.name diff --git a/src/encoded/static/components/navigation/components/AccountNav.js b/src/encoded/static/components/navigation/components/AccountNav.js index bfaf5fbc2d..17ceee537c 100644 --- a/src/encoded/static/components/navigation/components/AccountNav.js +++ b/src/encoded/static/components/navigation/components/AccountNav.js @@ -109,13 +109,13 @@ function UserActionsMenu(props){ const isActive = isActionActive(action, href); let prepend = null; if (actionID === "impersonate") { - prepend = ; + prepend = ; } if (actionID === "profile") { - prepend = ; + prepend = ; } if (actionID === "submissions") { - prepend = ; + prepend = ; } return (
    @@ -162,7 +162,7 @@ function LogoutLink({ performLogout, isLoading = false }){ return ( diff --git a/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownBigLink.js b/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownBigLink.js index f34f6034f1..099eecf0eb 100644 --- a/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownBigLink.js +++ b/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownBigLink.js @@ -22,13 +22,13 @@ export function BigDropdownBigLink(props){ if (typeof titleIcon === "string") { iconCol = ( -
    +
    ); } else if (React.isValidElement(titleIcon)){ iconCol = ( -
    +
    { titleIcon }
    ); diff --git a/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownIntroductionWrapper.js b/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownIntroductionWrapper.js index ddf71f1b23..394f9ebf4a 100644 --- a/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownIntroductionWrapper.js +++ b/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownIntroductionWrapper.js @@ -18,13 +18,13 @@ export function BigDropdownIntroductionWrapper(props){ if (typeof titleIcon === "string") { iconCol = ( -
    +
    ); } else if (React.isValidElement(titleIcon)){ iconCol = ( -
    +
    { titleIcon }
    ); diff --git a/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownPageTreeMenu.js b/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownPageTreeMenu.js index 286501b650..d19b1e3ffd 100644 --- a/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownPageTreeMenu.js +++ b/src/encoded/static/components/navigation/components/BigDropdown/BigDropdownPageTreeMenu.js @@ -142,23 +142,23 @@ function StaticHelpLinks() {
    - Video Tutorials + Video Tutorials - Training Guide + Training Guide - Get Involved + Get Involved - FAQ + FAQ - Legal + Legal
    ) diff --git a/src/encoded/static/components/navigation/components/CollapsedNav.js b/src/encoded/static/components/navigation/components/CollapsedNav.js index 75c0c0b363..e3e1ced806 100644 --- a/src/encoded/static/components/navigation/components/CollapsedNav.js +++ b/src/encoded/static/components/navigation/components/CollapsedNav.js @@ -86,7 +86,7 @@ function LeftNavAuthenticated(props){ }; }, [ context ]); return ( -
    +
    @@ -98,7 +98,7 @@ const LeftNavGuest = React.memo(function LeftNavGuest(props){ // const { pathname = "/" } = url.parse(href, false); return ( -
    +
    ); @@ -179,7 +179,7 @@ const BrowseNavItemBody = React.memo(function BrowseNavItemBody(props) {
    -
    + -
    +
    View Cohort Browser diff --git a/src/encoded/static/components/static-pages/DirectoryPage.js b/src/encoded/static/components/static-pages/DirectoryPage.js index 88ada39742..b3862939d3 100644 --- a/src/encoded/static/components/static-pages/DirectoryPage.js +++ b/src/encoded/static/components/static-pages/DirectoryPage.js @@ -60,7 +60,7 @@ function DirectoryBodyGridItem(props){ { description ?
    { description }
    : null } - { childrenHaveChildren && childPageCount ?
    { childPageCount }  1 ? "s" : "")}/>
    : null } + { childrenHaveChildren && childPageCount ?
    { childPageCount }  1 ? "s" : "")}/>
    : null }
    ); diff --git a/src/encoded/static/components/static-pages/HomePage/GuestHomeView.js b/src/encoded/static/components/static-pages/HomePage/GuestHomeView.js index 63dcb55063..28983981c1 100644 --- a/src/encoded/static/components/static-pages/HomePage/GuestHomeView.js +++ b/src/encoded/static/components/static-pages/HomePage/GuestHomeView.js @@ -57,9 +57,9 @@ export const GuestHomeView = React.memo(function GuestHomeView(props){
    diff --git a/src/encoded/static/components/static-pages/HomePage/UserDashboard.js b/src/encoded/static/components/static-pages/HomePage/UserDashboard.js index 0154ca3758..3645da5b73 100644 --- a/src/encoded/static/components/static-pages/HomePage/UserDashboard.js +++ b/src/encoded/static/components/static-pages/HomePage/UserDashboard.js @@ -23,7 +23,7 @@ export const UserDashboard = React.memo(function UserDashboard({ windowHeight, w
    - +
    Home Dashboard
    @@ -37,13 +37,13 @@ export const UserDashboard = React.memo(function UserDashboard({ windowHeight, w
    diff --git a/src/encoded/static/components/util/Schemas.js b/src/encoded/static/components/util/Schemas.js index 30fd6b17d5..7cce66c667 100644 --- a/src/encoded/static/components/util/Schemas.js +++ b/src/encoded/static/components/util/Schemas.js @@ -130,7 +130,7 @@ const fieldToTransformationDict = memoize(function(){ if (allowJSXOutput){ return ( - + { capitalizeSentence(term) } ); @@ -168,7 +168,7 @@ const fieldToTransformationDict = memoize(function(){ if (allowJSXOutput) { return ( - + { txtName } ); diff --git a/src/encoded/static/components/util/acmg.js b/src/encoded/static/components/util/acmg.js index 37a709a77e..b37eb5161f 100644 --- a/src/encoded/static/components/util/acmg.js +++ b/src/encoded/static/components/util/acmg.js @@ -12,7 +12,7 @@ export const metadata = { "BS3": { type: "benign", strength: "Strong", order: 2, description: "Well-established in vitro or in vivo functional studies show no damaging effect on protein function or splicing" }, "BS4": { type: "benign", strength: "Strong", order: 2, description: "Lack of segregation in affected members of a family

    • Caveat: The presence of phenocopies for common phenotypes (i.e., cancer, epilepsy) can mimic lack of segregation among affected individuals. Also, families may have more than one pathogenic variant contributing to an autosomal dominant disorder, further confounding an apparent lack of segregation.
    " }, "BP1": { type: "benign", strength: "Supporting", order: 3, description: "Missense variant in a gene for which primarily truncating variants are known to cause disease" }, - "BP2": { type: "benign", strength: "Supporting", order: 3, description: "Observed in trans with a pathogenic variant for a fully penetrant dominant gene/disorder or observed in cis with a pathogenic variant in any inheritance pattern" }, + "BP2": { type: "benign", strength: "Supporting", order: 3, description: "Observed in trans with a pathogenic variant for a fully penetrant dominant gene/disorder or observed in cis with a pathogenic variant in any inheritance pattern" }, "BP3": { type: "benign", strength: "Supporting", order: 3, description: "In-frame deletions/insertions in a repetitive region without a known function" }, "BP4": { type: "benign", strength: "Supporting", order: 3, description: "Multiple lines of computational evidence suggest no impact on gene or gene product (conservation, evolutionary, splicing impact, etc.)

    • Caveat: Because many in silico algorithms use the same or very similar input for their predictions, each algorithm cannot be counted as an independent criterion. BP4 can be used only once in any evaluation of a variant.
    " }, "BP5": { type: "benign", strength: "Supporting", order: 3, description: "Variant found in a case with an alternate molecular basis for disease" }, @@ -25,7 +25,7 @@ export const metadata = { "PP5": { type: "pathogenic", strength: "Supporting", order: 4, description: "Reputable source recently reports variant as pathogenic, but the evidence is not available to the laboratory to perform an independent evaluation" }, "PM1": { type: "pathogenic", strength: "Moderate", order: 5, description: "Located in a mutational hot spot and/or critical and well-established functional domain (e.g., active site of an enzyme) without benign variation." }, "PM2": { type: "pathogenic", strength: "Moderate", order: 5, description: "Absent from controls (or at extremely low frequency if recessive) (Table 6) in Exome Sequencing Project, 1000 Genomes Project, or Exome Aggregation Consortium
    • Caveat: Population data for insertions/deletions may be poorly called by next-generation sequencing
    " }, - "PM3": { type: "pathogenic", strength: "Moderate", order: 5, description: "For recessive disorders, detected in trans with a pathogenic variant

    Note: This requires testing of parents (or offspring) to determine phase." }, + "PM3": { type: "pathogenic", strength: "Moderate", order: 5, description: "For recessive disorders, detected in trans with a pathogenic variant

    Note: This requires testing of parents (or offspring) to determine phase." }, "PM4": { type: "pathogenic", strength: "Moderate", order: 5, description: "Protein length changes as a result of in-frame deletions/insertions in a nonrepeat region or stop-loss variants" }, "PM5": { type: "pathogenic", strength: "Moderate", order: 5, description: "Novel missense change at an amino acid residue where a different missense change determined to be pathogenic has been seen before
    • Example: Arg156His is pathogenic; now you observe Arg156Cys
    • Caveat: Beware of changes that impact splicing rather than at the amino acid/protein level.
    " }, "PM6": { type: "pathogenic", strength: "Moderate", order: 5, description: "Assumed de novo, but without confirmation of paternity and maternity" }, diff --git a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss index 2cefdadb06..df363a00d2 100644 --- a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss +++ b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss @@ -10,8 +10,8 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px // Taken largely from bootstrap / spacing.scss -// Overrides ONLY mb-, mt-, pb-, pt-, ml-, mr-, pl-, and pr- util classnames to use -// more fine-grained increments of _pixels-at-default-zoom_ so that e.g. mr-16 is equivalent to having margin-right: 16px at default zoom. +// Overrides ONLY mb-, mt-, pb-, pt-, ms-, me-, ps-, and pe- util classnames to use +// more fine-grained increments of _pixels-at-default-zoom_ so that e.g. me-16 is equivalent to having margin-right: 16px at default zoom. @each $breakpoint in map-keys($grid-breakpoints) { @include media-breakpoint-up($breakpoint) { $infix: breakpoint-infix($breakpoint, $grid-breakpoints); @@ -21,13 +21,13 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px .#{$abbrev}t#{$infix}-#{$util-size} { #{$prop}-top: $util-size * 0.625rem !important; } - .#{$abbrev}r#{$infix}-#{$util-size} { + .#{$abbrev}e#{$infix}-#{$util-size} { #{$prop}-right: $util-size * 0.625rem !important; } .#{$abbrev}b#{$infix}-#{$util-size} { #{$prop}-bottom: $util-size * 0.625rem !important; } - .#{$abbrev}l#{$infix}-#{$util-size} { + .#{$abbrev}s#{$infix}-#{$util-size} { #{$prop}-left: $util-size * 0.625rem !important; } @@ -35,13 +35,13 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px .#{$abbrev}t#{$infix}-#{$util-size}#{$util-mini-size} { #{$prop}-top: $util-size * 0.625rem + ($util-mini-size * 0.0625rem) !important; } - .#{$abbrev}r#{$infix}-#{$util-size}#{$util-mini-size} { + .#{$abbrev}e#{$infix}-#{$util-size}#{$util-mini-size} { #{$prop}-right: $util-size * 0.625rem + ($util-mini-size * 0.0625rem) !important; } .#{$abbrev}b#{$infix}-#{$util-size}#{$util-mini-size} { #{$prop}-bottom: $util-size * 0.625rem + ($util-mini-size * 0.0625rem) !important; } - .#{$abbrev}l#{$infix}-#{$util-size}#{$util-mini-size} { + .#{$abbrev}s#{$infix}-#{$util-size}#{$util-mini-size} { #{$prop}-left: $util-size * 0.625rem + ($util-mini-size * 0.0625rem) !important; } } diff --git a/src/encoded/static/scss/encoded/_layout.scss b/src/encoded/static/scss/encoded/_layout.scss index 9251fe7b1c..dcfdccea8a 100644 --- a/src/encoded/static/scss/encoded/_layout.scss +++ b/src/encoded/static/scss/encoded/_layout.scss @@ -245,7 +245,7 @@ body.is-full-screen { //padding-bottom: 10px; > .subtitle-prepend { margin-right: 8px; - &.border-right { + &.border-end { padding-right : 8px; border-right: 1px solid #ddd; } diff --git a/src/encoded/static/scss/encoded/_typography.scss b/src/encoded/static/scss/encoded/_typography.scss index 582ce93f63..351486e503 100644 --- a/src/encoded/static/scss/encoded/_typography.scss +++ b/src/encoded/static/scss/encoded/_typography.scss @@ -91,7 +91,7 @@ hr { /************ THIS SOMEWHAT EXTENDS THEM **********/ // Exists in bootstrap: -// text-capitalize, text-uppercase, text-monospace, text-justify, text-wrap, text-nowrap, text-truncate +// text-capitalize, text-uppercase, font-monospace, text-justify, text-wrap, text-nowrap, text-truncate .text-serif { font-family: $font-family-serif; } .text-100 { font-weight: 100 !important; } diff --git a/src/encoded/static/scss/encoded/modules/_item-pages.scss b/src/encoded/static/scss/encoded/modules/_item-pages.scss index 86f69af829..d7f752f9ba 100644 --- a/src/encoded/static/scss/encoded/modules/_item-pages.scss +++ b/src/encoded/static/scss/encoded/modules/_item-pages.scss @@ -2509,7 +2509,7 @@ table.report-findings-table { > label { cursor: pointer; > input { - // Override default mr-08 + // Override default me-08 margin-right: 16px !important; } } diff --git a/src/encoded/static/scss/encoded/modules/_search.scss b/src/encoded/static/scss/encoded/modules/_search.scss index 3b6781a974..6de5df7786 100644 --- a/src/encoded/static/scss/encoded/modules/_search.scss +++ b/src/encoded/static/scss/encoded/modules/_search.scss @@ -126,7 +126,7 @@ $search-results-header-row-height: 52px; /* 46px is existing default for both re vertical-align: text-top; } .mono-text, - .text-monospace { + .font-monospace { letter-spacing: 0.5px; } img.in-search-table-title-image { diff --git a/src/encoded/static/scss/encoded/modules/_tables.scss b/src/encoded/static/scss/encoded/modules/_tables.scss index bb02334f21..70611d43fc 100644 --- a/src/encoded/static/scss/encoded/modules/_tables.scss +++ b/src/encoded/static/scss/encoded/modules/_tables.scss @@ -42,9 +42,9 @@ table { } } - /* If entire table or row has .text-left etc, apply to children as well (unless itself overrides). */ - &.text-left, - &.text-right { + /* If entire table or row has .text-start etc, apply to children as well (unless itself overrides). */ + &.text-start, + &.text-end { > tr { text-align: inherit; > th, @@ -55,9 +55,9 @@ table { } } - /* If entire table or row has .text-left etc, apply to children as well. */ - &.text-left, - &.text-right { + /* If entire table or row has .text-start etc, apply to children as well. */ + &.text-start, + &.text-end { > thead, > tbody { text-align: inherit; From 991f54e05b8d26785abf053be4fc1fca33b60125 Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 11:45:03 +0300 Subject: [PATCH 05/62] Update container width for xxl breakpoint --- src/encoded/static/components/app.js | 2 +- src/encoded/static/components/item-pages/CaseView/index.js | 4 ++-- .../item-pages/components/PedigreeTabViewBody.js | 2 +- src/encoded/static/components/util/layout.js | 7 +++++-- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/encoded/static/components/app.js b/src/encoded/static/components/app.js index 2600c56439..c3220c9f15 100644 --- a/src/encoded/static/components/app.js +++ b/src/encoded/static/components/app.js @@ -1755,7 +1755,7 @@ class BodyElement extends React.PureComponent { let innerContainerMinHeight; if (mounted && windowHeight){ const rgs = responsiveGridState(windowWidth); - if ({ 'xl' : 1, 'lg' : 1, 'md' : 1 }[rgs]){ + if ({ 'xxl': 1, 'xl' : 1, 'lg' : 1, 'md' : 1 }[rgs]){ innerContainerMinHeight = ( // Hardcoded: // - minus top nav full height, footer, [testWarning] diff --git a/src/encoded/static/components/item-pages/CaseView/index.js b/src/encoded/static/components/item-pages/CaseView/index.js index b713b5579d..db6cc3ed4d 100644 --- a/src/encoded/static/components/item-pages/CaseView/index.js +++ b/src/encoded/static/components/item-pages/CaseView/index.js @@ -254,14 +254,14 @@ const CaseInfoTabView = React.memo(function CaseInfoTabView(props) {
    ); - if (PedigreeVizView && windowWidth !== null && (rgs === "lg" || rgs === "xl")) { + if (PedigreeVizView && windowWidth !== null && (rgs === "lg" || rgs === "xl" || rgs === "xxl")) { // at windowWidth === null, `rgs` defaults to 'lg' or 'xl' for serverside render if (rgs === "lg") { pedWidth = 400; } - if (rgs === "xl") { + if (rgs === "xl" || rgs === "xxl") { pedWidth = 560; if (windowWidth >= 1680) { pedWidth = 800; diff --git a/src/encoded/static/components/item-pages/components/PedigreeTabViewBody.js b/src/encoded/static/components/item-pages/components/PedigreeTabViewBody.js index aa1d09bee4..b452bfa226 100644 --- a/src/encoded/static/components/item-pages/components/PedigreeTabViewBody.js +++ b/src/encoded/static/components/item-pages/components/PedigreeTabViewBody.js @@ -183,7 +183,7 @@ export class PedigreeTabViewBody extends React.PureComponent { if (rgs !== "xs" && rgs !== "sm") { // Should be aligned with CSS stylesheet. // Tablet or higher size; detail pane opens to side - if (rgs === "xl") { + if (rgs === "xl" || rgs === "xxl") { detailPaneOpenOffsetWidth += 400; } else { detailPaneOpenOffsetWidth += 320; diff --git a/src/encoded/static/components/util/layout.js b/src/encoded/static/components/util/layout.js index d1f33655cc..94a92e8a3e 100644 --- a/src/encoded/static/components/util/layout.js +++ b/src/encoded/static/components/util/layout.js @@ -8,6 +8,7 @@ import { isServerSide } from '@hms-dbmi-bgm/shared-portal-components/es/componen * * 2019-07-10 -- updated to Bootstrap v4 breakpoints, added 'xl'. * 2020-10-22 -- Moved to CGAP rep, since breakpoints differ from 4DN now. + * 2024-10-02 -- updated to Bootstrap v5 breakpoints, added 'xxl'. * * @param {number} width - Width of the current browser _window_. * @return {string} - Abbreviation for column/grid Bootstrap size, e.g. 'lg', 'md', 'sm', or 'xs'. @@ -16,9 +17,10 @@ export function responsiveGridState(width = null){ if (typeof width !== 'number') { // Assumed to be null or undefined which should mean we are // server-side or not yet mounted. - return 'xl'; + return 'xxl'; } - if (width >= 1500) return 'xl'; + if (width >= 1500) return 'xxl'; + if (width >= 1200) return 'xl'; if (width >= 992) return 'lg'; if (width >= 768) return 'md'; if (width >= 576) return 'sm'; @@ -40,6 +42,7 @@ export function responsiveGridState(width = null){ export function gridContainerWidth(windowWidth = null){ // Subtract 20 for padding/margins. switch(responsiveGridState(windowWidth)){ + case 'xxl': return 1300; case 'xl': return 1120; case 'lg': return 940; case 'md': return 700; From c674f0f62c4e93294d25eb8815b7979e255efa53 Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 13:27:20 +0300 Subject: [PATCH 06/62] rename .close to .btn-close for Bootstrap 5 migration --- src/encoded/static/components/forms/ExcelSubmissionView.js | 2 +- src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss | 2 +- src/encoded/static/scss/encoded/_layout.scss | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/encoded/static/components/forms/ExcelSubmissionView.js b/src/encoded/static/components/forms/ExcelSubmissionView.js index 5cd8f7f84c..c9acc07688 100644 --- a/src/encoded/static/components/forms/ExcelSubmissionView.js +++ b/src/encoded/static/components/forms/ExcelSubmissionView.js @@ -231,7 +231,7 @@ const LocalAlertsContainer = function LocalAlertsContainer(props) { return (
    { noCloseButton !== true ? - diff --git a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss index df363a00d2..793881e6ed 100644 --- a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss +++ b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss @@ -281,7 +281,7 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px margin-top: 0; margin-bottom: 0; - &.h4 + button.close { + &.h4 + button.btn-close { /* Default size for Modal.Title is h4; increase close button icon size (experimental) */ font-size: 1.8em; } diff --git a/src/encoded/static/scss/encoded/_layout.scss b/src/encoded/static/scss/encoded/_layout.scss index dcfdccea8a..484bd6c5c3 100644 --- a/src/encoded/static/scss/encoded/_layout.scss +++ b/src/encoded/static/scss/encoded/_layout.scss @@ -93,7 +93,7 @@ body { > .alerts { margin-top: 20px; - .alert.no-close-button > button.close { + .alert.no-close-button > button.btn-close { display: none; } } From e02a7350735918334aaf1d6a6478bab35a239f97 Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 13:45:04 +0300 Subject: [PATCH 07/62] Bs5 button upgrades --- .../components/forms/UserRegistrationForm.js | 4 ++-- .../item-pages/CaseView/AccessioningTab.js | 4 ++-- .../SaveFilterSetPresetButton.js | 18 +++++++++------ .../components/item-pages/HealthView.js | 12 +++++----- .../StructuralVariantSampleView/SvBrowser.js | 2 +- .../InterpretationSpaceController.js | 22 +++++++++---------- .../HiGlass/EmbeddedCohortBrowser.js | 2 +- .../components/ItemFileAttachment.js | 2 +- .../components/util/PatchItemsProgress.js | 8 ++++--- 9 files changed, 41 insertions(+), 33 deletions(-) diff --git a/src/encoded/static/components/forms/UserRegistrationForm.js b/src/encoded/static/components/forms/UserRegistrationForm.js index 75fbb44181..8a26d36d26 100644 --- a/src/encoded/static/components/forms/UserRegistrationForm.js +++ b/src/encoded/static/components/forms/UserRegistrationForm.js @@ -313,8 +313,8 @@ export default class UserRegistrationForm extends React.PureComponent {
    -
    -
    diff --git a/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js b/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js index 04531fb0b5..5138b8f2fe 100644 --- a/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js +++ b/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js @@ -15,10 +15,10 @@ export const AccessioningTab = React.memo(function AccessioningTab(props) { const secondaryFamiliesLen = secondaryFamilies.length; const viewSecondaryFamiliesBtn = secondaryFamiliesLen === 0 ? null : ( -
    +
    +
    + +
    ); } @@ -404,9 +406,11 @@ export class SaveFilterSetPresetButton extends React.Component { Failed to create preset FilterSet

    You may not have permission yet to create new FilterSets. Check back again later or report to developers.

    - +
    + +
    ); } diff --git a/src/encoded/static/components/item-pages/HealthView.js b/src/encoded/static/components/item-pages/HealthView.js index 565c7571e0..24ae8b1c6c 100644 --- a/src/encoded/static/components/item-pages/HealthView.js +++ b/src/encoded/static/components/item-pages/HealthView.js @@ -291,7 +291,7 @@ const DatabaseCountsInfo = React.memo(function DatabaseCountsInfo(props){ if (notYetLoaded) { return ( - @@ -320,10 +320,12 @@ const DatabaseCountsInfo = React.memo(function DatabaseCountsInfo(props){

    Database Counts

    - +
    + +
    diff --git a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvBrowser.js b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvBrowser.js index dd316fa543..e85550df56 100644 --- a/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvBrowser.js +++ b/src/encoded/static/components/item-pages/StructuralVariantSampleView/SvBrowser.js @@ -461,7 +461,7 @@ export class SvBrowser extends React.PureComponent {
    : null}
    @@ -1155,7 +1155,7 @@ class GenericInterpretationPanel extends React.PureComponent { saveAsDraft={this.saveStateAsDraft} /> { caseSource ? - : null}
    @@ -1377,10 +1377,10 @@ function SVGeneInterpretationSubmitButton(props) { } = props; return ( -
    -
    ); @@ -1412,18 +1412,18 @@ function GenericInterpretationSubmitButton(props) { if (isCurrent || isApproved || !hasEditPermission) { // No further steps allowed; saved to knowledgebase or approved to case return ( -
    -
    ); } else { // Brand new draft OR previous draft; allow saving or re-saving as draft return ( -
    -
    ); diff --git a/src/encoded/static/components/item-pages/components/HiGlass/EmbeddedCohortBrowser.js b/src/encoded/static/components/item-pages/components/HiGlass/EmbeddedCohortBrowser.js index dd977d7d9f..053c6cd1e7 100644 --- a/src/encoded/static/components/item-pages/components/HiGlass/EmbeddedCohortBrowser.js +++ b/src/encoded/static/components/item-pages/components/HiGlass/EmbeddedCohortBrowser.js @@ -524,7 +524,7 @@ class EmbeddedCohortBrowserComponent extends React.PureComponent {
    +
    + +
    : null } From 3528b52413e9c0ff28a45b2d767b6d1fdfd6d437 Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 13:54:07 +0300 Subject: [PATCH 08/62] update btn css --- .../static/scss/encoded/_bootstrap-theme-overrides.scss | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss index 793881e6ed..10c2a554d5 100644 --- a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss +++ b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss @@ -118,6 +118,11 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px padding-right: 7px; } +.btn.btn-info, +.btn.btn-success { + color: #fff !important; +} + /* Light gray BG, more prominent button style than btn-default */ .btn.btn-secondary { @include button-variant(#e4e4e4, #e0e0e0); From f2724e84b93fc516f5f37c64b6e0f192457c5b9d Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 15:54:36 +0300 Subject: [PATCH 09/62] Bs5 link upgrades --- src/encoded/static/components/PageTitleSection.js | 4 ++-- .../static/components/browse/CaseDetailPane.js | 12 ++++++------ .../browse/variantSampleColumnExtensionMap.js | 6 +++--- .../static/components/forms/ExcelSubmissionView.js | 6 +++--- .../components/forms/UserRegistrationForm.js | 4 ++-- .../item-pages/CaseView/AccessioningTab.js | 8 ++++---- .../item-pages/CaseView/BioinformaticsTab.js | 14 +++++++------- .../components/item-pages/CaseView/CaseStats.js | 10 +++++----- .../item-pages/CaseView/CaseSummaryTable.js | 11 ++++++----- .../PresetFilterSetSelectionUI.js | 2 +- .../components/item-pages/DefaultItemView.js | 2 +- .../static/components/item-pages/HealthView.js | 2 +- .../SomaticAnalysisView/SomaticAccessioningTab.js | 6 +++--- .../SomaticAnalysisView/SomaticAnalysisStats.js | 6 +++--- .../SomaticBioinformaticsTab.js | 2 +- .../StructuralVariantSampleOverview.js | 2 +- .../item-pages/VariantSampleView/SampleTabBody.js | 2 +- .../VariantSampleView/VariantSampleInfoHeader.js | 2 +- .../item-pages/components/BadgesTabView.js | 2 +- .../components/CohortStatisticalAnalysisTable.js | 2 +- .../item-pages/components/HiGlass/GeneSearchBox.js | 1 + .../components/PedigreeDetailPane/Files.js | 4 ++-- .../PedigreeDetailPane/IndividualBody.js | 4 ++-- .../components/Workflow/WorkflowDetailPane.js | 4 ++-- .../navigation/components/UserRegistrationModal.js | 8 ++++---- .../static/components/static-pages/ErrorPage.js | 12 ++++++------ .../static-pages/HomePage/GuestHomeView.js | 6 +++--- .../viz/PedigreeViz/DefaultDetailPaneComponent.js | 2 +- .../scss/encoded/_bootstrap-theme-overrides.scss | 3 +++ .../static/scss/encoded/modules/_static-pages.scss | 8 ++++++++ 30 files changed, 85 insertions(+), 72 deletions(-) diff --git a/src/encoded/static/components/PageTitleSection.js b/src/encoded/static/components/PageTitleSection.js index 234c31b918..ea85a3e585 100644 --- a/src/encoded/static/components/PageTitleSection.js +++ b/src/encoded/static/components/PageTitleSection.js @@ -304,7 +304,7 @@ export class StaticPageBreadcrumbs extends React.Component { if (ancestor['@id'] === this.props.context['@id']){ inner = null;//ancestor.display_title; } else { - inner = { ancestor.display_title }; + inner = { ancestor.display_title }; } return (
    @@ -328,7 +328,7 @@ export class StaticPageBreadcrumbs extends React.Component { if (editAction && editAction.href){ return (
    - Edit + Edit
    ); } diff --git a/src/encoded/static/components/browse/CaseDetailPane.js b/src/encoded/static/components/browse/CaseDetailPane.js index f25adc0876..ae375a585e 100644 --- a/src/encoded/static/components/browse/CaseDetailPane.js +++ b/src/encoded/static/components/browse/CaseDetailPane.js @@ -285,7 +285,7 @@ export class FamilyReportStackedTable extends React.PureComponent { label={}>
    - { atId ? { workup_type } : { workup_type } } + { atId ? { workup_type } : { workup_type } }
    @@ -364,11 +364,11 @@ export class FamilyReportStackedTable extends React.PureComponent {
    Case ID: - { caseAtId ? { case_title } : { case_title }} + { caseAtId ? { case_title } : { case_title }}
    Report: - { reportAtId ? { reportTitle } : { reportTitle }} + { reportAtId ? { reportTitle } : { reportTitle }}
    ); @@ -381,7 +381,7 @@ export class FamilyReportStackedTable extends React.PureComponent {
    Case ID: { caseAtId ? - { case_title } + { case_title } : { case_title } }
    @@ -397,7 +397,7 @@ export class FamilyReportStackedTable extends React.PureComponent {
    { atId ? - + { role || display_title } : { role || display_title } @@ -418,7 +418,7 @@ export class FamilyReportStackedTable extends React.PureComponent { const showMoreExtTitle = ( - { preventExpand ? (view Family) : null } + { preventExpand ? (view Family) : null } ); diff --git a/src/encoded/static/components/browse/variantSampleColumnExtensionMap.js b/src/encoded/static/components/browse/variantSampleColumnExtensionMap.js index 1d2da9cc31..c6b705330d 100644 --- a/src/encoded/static/components/browse/variantSampleColumnExtensionMap.js +++ b/src/encoded/static/components/browse/variantSampleColumnExtensionMap.js @@ -450,7 +450,7 @@ export const StructuralVariantTranscriptColumn = React.memo(function StructuralV :  { highlighted_genes.map((gene) => { const { display_title, "@id": atID } = gene; - return {display_title}; + return {display_title}; })}
    ); @@ -471,13 +471,13 @@ const StructuralVariantTranscriptCSQGeneColumn = React.memo(function({ result }) const genes = Object.keys(transcriptsDeduped); if (genes.length <= 2) { // show comma separated - return {genes.join(", ")}; + return {genes.join(", ")}; } // show first and last gene separated by "..." with first 10 available on hover const lastItemIndex = genes.length >= 10 ? 10 : genes.length; const tipGenes = genes.slice(0, lastItemIndex).join(", "); - return {`${genes[0]}...${genes[genes.length-1]}`} ; + return {`${genes[0]}...${genes[genes.length-1]}`} ; }); export const ProbandGenotypeLabelColumn = React.memo(function ProbandGenotypeLabelColumn(props){ diff --git a/src/encoded/static/components/forms/ExcelSubmissionView.js b/src/encoded/static/components/forms/ExcelSubmissionView.js index c9acc07688..b4e1c9f5ea 100644 --- a/src/encoded/static/components/forms/ExcelSubmissionView.js +++ b/src/encoded/static/components/forms/ExcelSubmissionView.js @@ -653,8 +653,8 @@ class PanelTwo extends React.PureComponent {
    {/*TODO: update this with family history links */} { ingestionType === "genelist" ? - <>Click here for more on how to format your genelist submission document. - : <>Click here for more on how to format your accession submission document.} + <>Click here for more on how to format your genelist submission document. + : <>Click here for more on how to format your accession submission document.}

    @@ -730,7 +730,7 @@ function CreatedItemsTable(props) { } const label = ( - {alias} + {alias} ); diff --git a/src/encoded/static/components/forms/UserRegistrationForm.js b/src/encoded/static/components/forms/UserRegistrationForm.js index 8a26d36d26..2be36d13de 100644 --- a/src/encoded/static/components/forms/UserRegistrationForm.js +++ b/src/encoded/static/components/forms/UserRegistrationForm.js @@ -305,7 +305,7 @@ export default class UserRegistrationForm extends React.PureComponent {

    - By signing up, you are agreeing to our Privacy Policy. + By signing up, you are agreeing to our Privacy Policy.
    We may track your usage of the portal to help improve the quality of user experience and/or security assurance purposes.

    @@ -410,7 +410,7 @@ class LookupProjectField extends React.PureComponent { currentProjectDetails && currentProjectDetails['@id'] && currentProjectDetails.display_title && (
    + rel="noopener noreferrer" style={{ verticalAlign: "middle" }} className="link-underline-hover"> { currentProjectDetails.display_title }    diff --git a/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js b/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js index 5138b8f2fe..da074b2f6b 100644 --- a/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js +++ b/src/encoded/static/components/item-pages/CaseView/AccessioningTab.js @@ -122,7 +122,7 @@ class FamilyAccessionStackedTable extends React.PureComponent { }> - - + - ); @@ -208,7 +208,7 @@ class FamilyAccessionStackedTable extends React.PureComponent { { (atId && workup_type) ? @@ -217,7 +217,7 @@ class FamilyAccessionStackedTable extends React.PureComponent { { workup_type ? null : "No workup type found for sample"} { atId ? - + { workup_type || accession } : { workup_type || accession }} @@ -325,7 +325,7 @@ class FamilyAccessionStackedTable extends React.PureComponent {
    { atId ? - + { role || display_title } : diff --git a/src/encoded/static/components/item-pages/CaseView/BioinformaticsTab.js b/src/encoded/static/components/item-pages/CaseView/BioinformaticsTab.js index 4cba2ed8a2..d838d35f49 100644 --- a/src/encoded/static/components/item-pages/CaseView/BioinformaticsTab.js +++ b/src/encoded/static/components/item-pages/CaseView/BioinformaticsTab.js @@ -72,13 +72,13 @@ export const BioinformaticsTab = React.memo(function BioinformaticsTab(props) { const bioinfoPopoverContent = { predictedSexAndAncestry: (
    - Sex and ancestry of each sample is predicted using the QC tool peddy. - For more info see peddy’s documentation. + Sex and ancestry of each sample is predicted using the QC tool peddy. + For more info see peddy’s documentation.
    ), filteredSNVIndelVariants: (
    - During processing, hard filters are applied to + During processing, hard filters are applied to remove variants that will not be of interest. This lowers the number of variants returned from the millions to the thousands. Briefly, these filters include: (1) removing intergenic variants; (2) including some variants based on VEP, ClinVar, and SpliceAI annotations; (3) Removing variants with only intronic consequences; and (4) removing common variants based on gnomAD population allele @@ -87,7 +87,7 @@ const bioinfoPopoverContent = { ), filteredSVVariants: (
    - During processing, hard filters are applied to + During processing, hard filters are applied to remove structural variants (SVs) that will not be of interest. This limits the numbers and types of SVs returned from thousands to fewer than 500. Briefly, these filters include: (1) including SVs based on VEP annotations; (2) removing SVs with only intronic or intergenic consequences; (3) selecting SVs based on SV type (e.g., DEL and DUP); (3) removing common variants based on gnomAD-SV @@ -166,7 +166,7 @@ function BioinfoStatTable({ qualityControlMetrics }) { {mapLongFormSexToLetter(predictedSex.value) || fallbackElem}  - {!!predictedSex.link && (see peddy QC report)} + {!!predictedSex.link && (see peddy QC report)} {predictedSex.flag && } @@ -183,7 +183,7 @@ function BioinfoStatTable({ qualityControlMetrics }) { {predictedAncestry.value || fallbackElem}  - {!!predictedAncestry.link && (see peddy QC report)} + {!!predictedAncestry.link && (see peddy QC report)} {deNovo.value || fallbackElem} @@ -258,7 +258,7 @@ function QCMAccordionDrawer(props) { borderTop: "1px solid rgba(0, 0, 0, 0.08)", borderBottom: "1px solid rgba(0, 0, 0, 0.08)" }}> - {individual_id || individual_accession} + {individual_id || individual_accession} {idToGraphIdentifier[atID]} 
    diff --git a/src/encoded/static/components/item-pages/CaseView/CaseStats.js b/src/encoded/static/components/item-pages/CaseView/CaseStats.js index f99810848a..77033e52bb 100644 --- a/src/encoded/static/components/item-pages/CaseView/CaseStats.js +++ b/src/encoded/static/components/item-pages/CaseView/CaseStats.js @@ -36,7 +36,7 @@ function mapFeaturesToBadges(features = []) { const { display_title = null, '@id': featureID } = feature; return ( // TODO: create own ~ `.tag` styling or override Bootstrap's default. Maybe. - { display_title } @@ -75,7 +75,7 @@ export const CaseStats = React.memo(function CaseStats(props){ { haveCaseEditPermission && individualAtID ? + className="text-white-50 ms-12 text-small link-underline-hover" data-tip="Edit Individual. Changes may take a few minutes to appear."> : null } @@ -98,7 +98,7 @@ export const CaseStats = React.memo(function CaseStats(props){ { haveCaseEditPermission && familyAtID ? + className="text-white-50 ms-12 text-small link-underline-hover" data-tip="Edit Family. Changes may take a few minutes to appear."> : null } @@ -152,7 +152,7 @@ export const PatientInfo = React.memo(function PatientInfo({ caseItem = null })
    - + { individual_id }
    @@ -220,7 +220,7 @@ export const FamilyInfo = React.memo(function FamilyInfo({ canonicalFamily }) { diff --git a/src/encoded/static/components/item-pages/CaseView/CaseSummaryTable.js b/src/encoded/static/components/item-pages/CaseView/CaseSummaryTable.js index 9f1ece1268..8baee9aa5b 100644 --- a/src/encoded/static/components/item-pages/CaseView/CaseSummaryTable.js +++ b/src/encoded/static/components/item-pages/CaseView/CaseSummaryTable.js @@ -287,14 +287,15 @@ export const CaseSummaryTable = React.memo(function CaseSummaryTable(props){ + data-tip={tooltips[0]} + className="link-underline-hover"> { ext.toUpperCase() } { files[0].hasQm ? QC @@ -321,7 +322,7 @@ export const CaseSummaryTable = React.memo(function CaseSummaryTable(props){ QC @@ -455,7 +456,7 @@ export const CaseSummaryTable = React.memo(function CaseSummaryTable(props){ { isProband ? Proband : null} { (role && role !== "proband") ? {role} : null} { genID ? { genID }: null} - { individual_id || indvDisplayTitle } + { individual_id || indvDisplayTitle }
    ); samples.forEach(function(sample, sampleIdx){ @@ -499,7 +500,7 @@ export const CaseSummaryTable = React.memo(function CaseSummaryTable(props){ : null } - { sampleTitle } + { sampleTitle } ), individualGroup, diff --git a/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/PresetFilterSetSelectionUI.js b/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/PresetFilterSetSelectionUI.js index 19245db711..5fad431627 100644 --- a/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/PresetFilterSetSelectionUI.js +++ b/src/encoded/static/components/item-pages/CaseView/FilteringTableFilterSetUI/PresetFilterSetSelectionUI.js @@ -327,7 +327,7 @@ export class PresetFilterSetSelectionUI extends React.PureComponent {
    - Presets + Presets { nextToTitleIcon }
    { !isCheckingForNewFilterSet && !isLoadingPresets ? diff --git a/src/encoded/static/components/item-pages/DefaultItemView.js b/src/encoded/static/components/item-pages/DefaultItemView.js index e3cb88b4fd..d2b2fba8aa 100644 --- a/src/encoded/static/components/item-pages/DefaultItemView.js +++ b/src/encoded/static/components/item-pages/DefaultItemView.js @@ -189,7 +189,7 @@ export default class DefaultItemView extends React.PureComponent { } Alerts.queue({ 'title' : "Redirected", - 'message': You have been redirected from { redirected_from_accession }, which this item ({ context.accession }) supercedes., + 'message': You have been redirected from { redirected_from_accession }, which this item ({ context.accession }) supercedes., 'style': 'warning' }); }, 'GET', (err)=>{ diff --git a/src/encoded/static/components/item-pages/HealthView.js b/src/encoded/static/components/item-pages/HealthView.js index 24ae8b1c6c..1467a286d5 100644 --- a/src/encoded/static/components/item-pages/HealthView.js +++ b/src/encoded/static/components/item-pages/HealthView.js @@ -33,7 +33,7 @@ export default class HealthView extends React.PureComponent { static termTransformFxn(field, term){ if (field === "foursight" && term && term.slice(0,4) === "http") { - return { term }; + return { term }; } return Term.toName(field, term, true); } diff --git a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAccessioningTab.js b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAccessioningTab.js index 50dfe19dd4..ad3b392668 100644 --- a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAccessioningTab.js +++ b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAccessioningTab.js @@ -113,7 +113,7 @@ class SomaticAccessionStackedTable extends React.PureComponent { { atId && workup_type ? @@ -122,7 +122,7 @@ class SomaticAccessionStackedTable extends React.PureComponent { { workup_type ? null : "No workup type found for sample"} { atId ? - + { workup_type || accession } : { workup_type || accession }} @@ -155,7 +155,7 @@ class SomaticAccessionStackedTable extends React.PureComponent {
    { atId && - + Individual } diff --git a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAnalysisStats.js b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAnalysisStats.js index b5db933d23..9dd5518b7a 100644 --- a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAnalysisStats.js +++ b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticAnalysisStats.js @@ -21,7 +21,7 @@ export const SomaticAnalysisStats = React.memo(function SomaticAnalysisStats(pro { haveSAEditPermission && individualAtID ? + className="text-white-50 ms-12 text-small link-underline-hover" data-tip="Edit Individual. Changes may take a few minutes to appear."> : null } @@ -85,7 +85,7 @@ export const IndividualInfo = React.memo(function IndividualInfo({ individual }) @@ -141,7 +141,7 @@ export const SampleSummaryInfo = React.memo(function SampleSummaryInfo({ samples
    { bam_sample_id || display_title ? - {bam_sample_id || display_title} + {bam_sample_id || display_title} : fallbackElem }
    {appendLine &&
    } diff --git a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticBioinformaticsTab.js b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticBioinformaticsTab.js index 0f180d29cb..f2435283fc 100644 --- a/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticBioinformaticsTab.js +++ b/src/encoded/static/components/item-pages/SomaticAnalysisView/SomaticBioinformaticsTab.js @@ -112,7 +112,7 @@ function SQCMAccordionDrawer(props) { borderTop: "1px solid rgba(0, 0, 0, 0.08)", borderBottom: "1px solid rgba(0, 0, 0, 0.08)" }}> - {individual_id || individual_accession} + {individual_id || individual_accession}
    diff --git a/src/encoded/static/components/item-pages/StructuralVariantSampleView/StructuralVariantSampleOverview.js b/src/encoded/static/components/item-pages/StructuralVariantSampleView/StructuralVariantSampleOverview.js index d816818316..7150c8cb8e 100644 --- a/src/encoded/static/components/item-pages/StructuralVariantSampleView/StructuralVariantSampleOverview.js +++ b/src/encoded/static/components/item-pages/StructuralVariantSampleView/StructuralVariantSampleOverview.js @@ -478,7 +478,7 @@ const hg19PopoverContent = (

    For structural variants, both the start and end coordinates are converted to hg19 via an - implementation of LiftOver. If + implementation of LiftOver. If either one of these conversions fails, the variant will not be available in hg19 coordinates.

    diff --git a/src/encoded/static/components/item-pages/VariantSampleView/SampleTabBody.js b/src/encoded/static/components/item-pages/VariantSampleView/SampleTabBody.js index e83919a7d5..9aff8a0641 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/SampleTabBody.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/SampleTabBody.js @@ -472,7 +472,7 @@ const CompoundHetTable = React.memo(function CompoundHetTable(props) { return ( - { href ? {variant} : variant } + { href ? {variant} : variant } { phase } { gene } diff --git a/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleInfoHeader.js b/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleInfoHeader.js index f1a5d2815f..9dea714a13 100644 --- a/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleInfoHeader.js +++ b/src/encoded/static/components/item-pages/VariantSampleView/VariantSampleInfoHeader.js @@ -325,7 +325,7 @@ const hg19PopoverContent = (

    To calculate the variant for hg19 coordinates, the hg38 position is converted to hg19 - via an implementation of LiftOver. If the hg19 conversion + via an implementation of LiftOver. If the hg19 conversion is successful, the variant is then converted to HGSV format. If the HGSV conversion is also successful, the result will be displayed. Otherwise, only the hg38 coordinates for the variant will be displayed. diff --git a/src/encoded/static/components/item-pages/components/BadgesTabView.js b/src/encoded/static/components/item-pages/components/BadgesTabView.js index 34e42baf63..9965ac00b3 100644 --- a/src/encoded/static/components/item-pages/components/BadgesTabView.js +++ b/src/encoded/static/components/item-pages/components/BadgesTabView.js @@ -380,7 +380,7 @@ class BadgeItem extends React.PureComponent { titleToShow = { parentTypeTitle } { parentDisplayTitle }; tooltip = parentItem.description || tooltip; } - linkMsg =

    ; + linkMsg = ; } const image = badge_icon && (
    ); diff --git a/src/encoded/static/components/item-pages/components/CohortStatisticalAnalysisTable.js b/src/encoded/static/components/item-pages/components/CohortStatisticalAnalysisTable.js index b6d72ad2c5..690bb520af 100644 --- a/src/encoded/static/components/item-pages/components/CohortStatisticalAnalysisTable.js +++ b/src/encoded/static/components/item-pages/components/CohortStatisticalAnalysisTable.js @@ -96,7 +96,7 @@ function ShowMore({ recordDifference, onClick }) { if (recordDifference > 0) { return ( ); } diff --git a/src/encoded/static/components/item-pages/components/HiGlass/GeneSearchBox.js b/src/encoded/static/components/item-pages/components/HiGlass/GeneSearchBox.js index 331a4662ee..274f413b61 100644 --- a/src/encoded/static/components/item-pages/components/HiGlass/GeneSearchBox.js +++ b/src/encoded/static/components/item-pages/components/HiGlass/GeneSearchBox.js @@ -189,6 +189,7 @@ const GeneSearchResult = React.memo(function GeneSearchResult(props) { handleResultClick(evt, result.geneName)} > {result.geneName} diff --git a/src/encoded/static/components/item-pages/components/PedigreeDetailPane/Files.js b/src/encoded/static/components/item-pages/components/PedigreeDetailPane/Files.js index 72bf63218f..4ab3014798 100644 --- a/src/encoded/static/components/item-pages/components/PedigreeDetailPane/Files.js +++ b/src/encoded/static/components/item-pages/components/PedigreeDetailPane/Files.js @@ -77,7 +77,7 @@ function FileArrayField (props) { { files.map(function({ "@id" : fileID, display_title: fileDisplayTitle }){ return (
  • - { fileDisplayTitle } + { fileDisplayTitle }
  • ); }) } @@ -85,7 +85,7 @@ function FileArrayField (props) { { haveEditPermission ? I certify that my file(s) do not contain Personal Health Information}/> + requestVerificationMsg={I certify that my file(s) do not contain Personal Health Information}/> : null }
    ); diff --git a/src/encoded/static/components/item-pages/components/PedigreeDetailPane/IndividualBody.js b/src/encoded/static/components/item-pages/components/PedigreeDetailPane/IndividualBody.js index b892afd06d..a2a2af43ae 100644 --- a/src/encoded/static/components/item-pages/components/PedigreeDetailPane/IndividualBody.js +++ b/src/encoded/static/components/item-pages/components/PedigreeDetailPane/IndividualBody.js @@ -114,7 +114,7 @@ export class IndividualBody extends React.PureComponent { let showTitle = getIndividualDisplayTitle(individual); if (individualID) { - showTitle = { showTitle }; + showTitle = { showTitle }; } let editLink; @@ -254,7 +254,7 @@ function DiseaseListItem(props) { return (
    - { title } + { title } { onsetAge !== null && onsetAgeUnits !== null ? ( @ diff --git a/src/encoded/static/components/item-pages/components/Workflow/WorkflowDetailPane.js b/src/encoded/static/components/item-pages/components/Workflow/WorkflowDetailPane.js index fa249d6a39..7d7ffec7c5 100644 --- a/src/encoded/static/components/item-pages/components/Workflow/WorkflowDetailPane.js +++ b/src/encoded/static/components/item-pages/components/Workflow/WorkflowDetailPane.js @@ -49,7 +49,7 @@ function FileDetailBody(props){ if (context && context['@id'] === atId){ title = accession || display_title; } else { - title = { accession || display_title }; + title = { accession || display_title }; } return ( @@ -93,7 +93,7 @@ function StepDetailBody(props){ } let title; if (stepID && display_title){ - title = { display_title }; + title = { display_title }; } else { title = display_title || stepNodeName; } diff --git a/src/encoded/static/components/navigation/components/UserRegistrationModal.js b/src/encoded/static/components/navigation/components/UserRegistrationModal.js index 1fef8841fa..f0d51bcc40 100644 --- a/src/encoded/static/components/navigation/components/UserRegistrationModal.js +++ b/src/encoded/static/components/navigation/components/UserRegistrationModal.js @@ -47,20 +47,20 @@ export const UserRegistrationModal = React.memo(function UserRegistrationModal(p
    • Please register below or{' '} - use a different email address{' '} + use a different email address{' '} if you have an existing account.
    • - For information on the CGAP login process, see our documentation here. + For information on the CGAP login process, see our documentation here.
    • - This registration form will only work on the cgap-training environment. + This registration form will only work on the cgap-training environment. If you are not on this environment, please reach out to the CGAP team for help with account creation.
    • { isEmailAGmail?
    • If you prefer, you can use your institutional email address as your account ID by creating a new google account at{' '} - + https://accounts.google.com/signup/v2 and selecting "Use my current email address instead".
    • diff --git a/src/encoded/static/components/static-pages/ErrorPage.js b/src/encoded/static/components/static-pages/ErrorPage.js index 0c29f627e0..4dae747687 100644 --- a/src/encoded/static/components/static-pages/ErrorPage.js +++ b/src/encoded/static/components/static-pages/ErrorPage.js @@ -15,7 +15,7 @@ export default class ErrorPage extends React.PureComponent { if (status === 'invalid_login'){ errorMessage = (
      -

      The account you provided is not valid. Return to the homepage.

      +

      The account you provided is not valid. Return to the homepage.

      Please note: our authentication system will automatically attempt to log you in through your selected provider if you are @@ -23,7 +23,7 @@ export default class ErrorPage extends React.PureComponent { that you are logged in to the provider (e.g. google) with the matching email address.
      Access is restricted to 4DN consortium members.
      -
      Request an account.
      +
      Request an account.
      ); } else if (status === 'not_found'){ @@ -31,7 +31,7 @@ export default class ErrorPage extends React.PureComponent { } else if (status === 'forbidden'){ return ; }else{ - errorMessage =

      {"The page you've requested does not exist or you have found an error."} Return to the homepage.

      ; + errorMessage =

      {"The page you've requested does not exist or you have found an error."} Return to the homepage.

      ; } return
      { errorMessage }
      ; } @@ -57,7 +57,7 @@ const HTTPNotFoundView = React.memo(function(props){ {"The page you've requested does not exist."}

      - Return to the homepage. + Return to the homepage.

      ); @@ -70,9 +70,9 @@ const HTTPForbiddenView = React.memo(function HTTPForbiddenView(props){ Access was denied to this resource.

      - If you have an account, please try logging in or return to the homepage. + If you have an account, please try logging in or return to the homepage.
      - For instructions on how to set up an account, please visit the help page for Creating an Account. + For instructions on how to set up an account, please visit the help page for Creating an Account.

      ); diff --git a/src/encoded/static/components/static-pages/HomePage/GuestHomeView.js b/src/encoded/static/components/static-pages/HomePage/GuestHomeView.js index 28983981c1..3ce4a5b117 100644 --- a/src/encoded/static/components/static-pages/HomePage/GuestHomeView.js +++ b/src/encoded/static/components/static-pages/HomePage/GuestHomeView.js @@ -57,9 +57,9 @@ export const GuestHomeView = React.memo(function GuestHomeView(props){
    diff --git a/src/encoded/static/components/viz/PedigreeViz/DefaultDetailPaneComponent.js b/src/encoded/static/components/viz/PedigreeViz/DefaultDetailPaneComponent.js index 4f0f4253bb..e2140d90ae 100644 --- a/src/encoded/static/components/viz/PedigreeViz/DefaultDetailPaneComponent.js +++ b/src/encoded/static/components/viz/PedigreeViz/DefaultDetailPaneComponent.js @@ -81,7 +81,7 @@ function PartnersLinks(props){ }; const partnerLinks = partners.map((p) => - + { getIndividualDisplayTitle(p) } diff --git a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss index 10c2a554d5..ff09cf2b09 100644 --- a/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss +++ b/src/encoded/static/scss/encoded/_bootstrap-theme-overrides.scss @@ -98,6 +98,9 @@ $margin-util-sizes-mini: 1, 2, 3, 4, 5, 6, 7, 8; // * 1px &.btn-xs.fixed-height { height: 24px; } + &.btn-link { + text-decoration: none; + } } /** Extending Bootstrap button w/ rounded & ext-padding class **/ diff --git a/src/encoded/static/scss/encoded/modules/_static-pages.scss b/src/encoded/static/scss/encoded/modules/_static-pages.scss index 4f0445123b..6f63847606 100644 --- a/src/encoded/static/scss/encoded/modules/_static-pages.scss +++ b/src/encoded/static/scss/encoded/modules/_static-pages.scss @@ -133,6 +133,14 @@ } } } + + a { + text-decoration: none; + + &:hover { + text-decoration: underline; + } + } } .static-section-entry { From 3d8ef667a383ac62a09925245f6da795779e09a9 Mon Sep 17 00:00:00 2001 From: Onurcankaratay Date: Wed, 2 Oct 2024 16:03:31 +0300 Subject: [PATCH 10/62] Bs5 form upgrades --- .../static/components/forms/UserRegistrationForm.js | 10 +++++----- .../CaseView/CaseReviewTab/ReportGenerationView.js | 2 +- .../StructuralVariantSampleView/SvBrowser.js | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/encoded/static/components/forms/UserRegistrationForm.js b/src/encoded/static/components/forms/UserRegistrationForm.js index 2be36d13de..1d612e4760 100644 --- a/src/encoded/static/components/forms/UserRegistrationForm.js +++ b/src/encoded/static/components/forms/UserRegistrationForm.js @@ -257,7 +257,7 @@ export default class UserRegistrationForm extends React.PureComponent {
    -
    +

    { object.itemUtil.User.gravatar(unverifiedUserEmail, 36, { 'style' : { 'borderRadius': '50%', 'marginRight' : 10 } }, 'mm') } @@ -267,7 +267,7 @@ export default class UserRegistrationForm extends React.PureComponent {
    -
    +
    @@ -275,7 +275,7 @@ export default class UserRegistrationForm extends React.PureComponent {
    -
    +
    @@ -286,7 +286,7 @@ export default class UserRegistrationForm extends React.PureComponent {
    -
    +

    cgap-training

    @@ -465,7 +465,7 @@ function JobTitleField(props) { return (
    -
    +