diff --git a/Jenkinsfile.groovy b/Jenkinsfile.groovy index a280982e..7ccd25a6 100644 --- a/Jenkinsfile.groovy +++ b/Jenkinsfile.groovy @@ -18,19 +18,29 @@ spec: - name: docker image: docker:18-git tty: true - volumeMounts: - - mountPath: /var/run/docker.sock - name: docker-sock + env: + - name: DOCKER_HOST + value: tcp://localhost:2375 + - name: HOME + value: /home/jenkins/agent - name: helm image: alpine/helm:3.1.0 command: - cat tty: true + - name: dind-daemon + image: docker:18.06-dind + securityContext: + privileged: true + runAsUser: 0 + volumeMounts: + - name: docker-graph-storage + mountPath: /var/lib/docker + securityContext: + runAsUser: 1000 volumes: - - name: docker-sock - hostPath: - path: /var/run/docker.sock - type: File + - name: docker-graph-storage + emptyDir: {} """ } } diff --git a/README.md b/README.md index 4b5c883b..1de1b138 100644 --- a/README.md +++ b/README.md @@ -28,3 +28,9 @@ You can check out [the Next.js GitHub repository](https://github.com/vercel/next The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/import?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. + +## Acknowledgements + +DMS development supported by: + +[![Canarie logo](canarie-logo.png)](https://canarie.ca) diff --git a/canarie-logo.png b/canarie-logo.png new file mode 100644 index 00000000..1cbcfd68 Binary files /dev/null and b/canarie-logo.png differ diff --git a/components/NavBar.tsx b/components/NavBar.tsx index 712307a8..4ac426c3 100644 --- a/components/NavBar.tsx +++ b/components/NavBar.tsx @@ -48,12 +48,12 @@ const NavBar: React.ComponentType = () => { {NEXT_PUBLIC_LAB_NAME} ) : ( - + ); + return (
css` diff --git a/components/pages/explorer/RepoTable.tsx b/components/pages/explorer/RepoTable.tsx index 65577c11..778a5047 100644 --- a/components/pages/explorer/RepoTable.tsx +++ b/components/pages/explorer/RepoTable.tsx @@ -22,8 +22,10 @@ import { css } from '@emotion/core'; import dynamic from 'next/dynamic'; import urlJoin from 'url-join'; +import { useTheme } from 'emotion-theming'; import { PageContentProps } from './index'; +import StyledLink from '../../Link'; import defaultTheme from '../../theme'; import { getConfig } from '../../../global/config'; @@ -228,6 +230,7 @@ const getTableStyle = (theme: typeof defaultTheme) => css` `; const RepoTable = (props: PageContentProps) => { + const theme: typeof defaultTheme = useTheme(); const { NEXT_PUBLIC_ARRANGER_API, NEXT_PUBLIC_ARRANGER_PROJECT_ID, @@ -241,10 +244,38 @@ const RepoTable = (props: PageContentProps) => { const customExporters = [ { label: 'File Table', fileName: `data-explorer-table-export.${today}.tsv` }, // exports a TSV with what is displayed on the table (columns selected, etc.) { label: 'File Manifest', fileName: `score-manifest.${today}.tsv`, columns: manifestColumns }, // exports a TSV with the manifest columns + { label: () => ( + + To download files using a file manifest, please follow these + + instructions + + . + + ), }, ]; return ( -
getTableStyle(theme)}> +
{ +const OvertureLogo = ({ height, style }: IconProps) => { return ( diff --git a/components/theme/icons/types.ts b/components/theme/icons/types.ts index 434846da..b396b844 100644 --- a/components/theme/icons/types.ts +++ b/components/theme/icons/types.ts @@ -23,7 +23,7 @@ import { SerializedStyles } from '@emotion/core'; export type IconProps = { fill?: string; - width: number; - height: number; + width?: number; + height?: number; style?: SerializedStyles; }; diff --git a/package-lock.json b/package-lock.json index 9cb481cf..6ea8dfdd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "dms-ui", - "version": "0.8.0", + "version": "1.0.2", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -127,15 +127,16 @@ } }, "@arranger/components": { - "version": "2.12.3", - "resolved": "https://registry.npmjs.org/@arranger/components/-/components-2.12.3.tgz", - "integrity": "sha512-852n5rNIG816sO17ayiX3Bm5uY3XmCl/MxMpY37pGOs56BGZ1OJrqsuA90Rv/owiIzx7G9xnLiLCfpJ+BRzPpQ==", + "version": "2.12.13", + "resolved": "https://registry.npmjs.org/@arranger/components/-/components-2.12.13.tgz", + "integrity": "sha512-+aOTxe2Fra+kWV5Qv7vlnADxb8n60Rr65djTdQ3T/1ad17Ki0qWN40WLSwUjwL37c3E8CI197xx/VZ7gTewTCw==", "requires": { - "@arranger/mapping-utils": "^2.12.3", + "@arranger/mapping-utils": "^2.12.13", "ajv": "^6.1.1", "babel-polyfill": "^6.26.0", "classnames": "^2.2.5", "convert-units": "^2.3.4", + "date-fns": "^2.21.1", "downshift": "^1.23.2", "emotion": "^9.2.12", "filesize": "^3.5.11", @@ -150,7 +151,7 @@ "pretty-quick": "^3.0.2", "ramda": "^0.26.1", "react-component-component": "^1.2.1", - "react-datepicker": "^1.4.1", + "react-datepicker": "^3.8.0", "react-grid-layout": "^0.16.5", "react-icons": "^2.2.7", "react-input-range": "^1.3.0", @@ -172,11 +173,11 @@ } }, "@arranger/mapping-utils": { - "version": "2.12.3", - "resolved": "https://registry.npmjs.org/@arranger/mapping-utils/-/mapping-utils-2.12.3.tgz", - "integrity": "sha512-FBZoiyB95m6W2+i73qN1SBqz0k/qsX3276behCpFHhxw79/BleWWCHNK8uZDfp/L1SfFH/aBopM+6kOAhr3VGA==", + "version": "2.12.13", + "resolved": "https://registry.npmjs.org/@arranger/mapping-utils/-/mapping-utils-2.12.13.tgz", + "integrity": "sha512-UJXiFPnyXbvs6VpiV9/adbUvpkBLl73S75wKzzsossMnwBMRgqcsUu2XuBbXYZPUJ4gonwgguZ+STm2AxybJvA==", "requires": { - "@arranger/middleware": "^2.12.3", + "@arranger/middleware": "^2.12.13", "babel-polyfill": "^6.26.0", "graphql-fields": "^1.0.2", "kind-of": "^6.0.3", @@ -187,9 +188,9 @@ } }, "@arranger/middleware": { - "version": "2.12.3", - "resolved": "https://registry.npmjs.org/@arranger/middleware/-/middleware-2.12.3.tgz", - "integrity": "sha512-EXB9Us6zyiEzkWz4sJ+fOJMauEG7jiy2AQ8mh3SEsYrlfo42eR0llmld27/upysu6Wzq2KcOwzHhMbLahjdaRQ==", + "version": "2.12.13", + "resolved": "https://registry.npmjs.org/@arranger/middleware/-/middleware-2.12.13.tgz", + "integrity": "sha512-f3BvzQHqXRRjyUdpIeYyEhKtAxSo4O7AaCdbafx3ajBvNHyFk5kd/JfUQTrayHHxrKurweiZoKudtNnk9pyZHg==", "requires": { "body-parser": "^1.18.2", "cors": "^2.8.4", @@ -201,6 +202,13 @@ "morgan": "^1.9.0", "utf8": "^3.0.0", "winston": "^2.4.0" + }, + "dependencies": { + "date-fns": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz", + "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==" + } } }, "@babel/code-frame": { @@ -2601,9 +2609,9 @@ "integrity": "sha512-oVfRvqHV/V6D1yifJbVRU3TMp8OT6o6BG+U9MkwuJ3U8/CsDHvalRpsxBqivn71ztOFZBTfJMvETbqHiaNSj7Q==" }, "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==" }, "@types/node": { "version": "14.14.25", @@ -4074,9 +4082,9 @@ "dev": true }, "codemirror": { - "version": "5.60.0", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.60.0.tgz", - "integrity": "sha512-AEL7LhFOlxPlCL8IdTcJDblJm8yrAGib7I+DErJPdZd4l6imx8IMgKK3RblVgBQqz3TZJR4oknQ03bz+uNjBYA==" + "version": "5.61.0", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.61.0.tgz", + "integrity": "sha512-D3wYH90tYY1BsKlUe0oNj2JAhQ9TepkD51auk3N7q+4uz7A/cgJ5JsWHreT0PqieW1QhOuqxQ2reCXV1YXzecg==" }, "codemirror-graphql": { "version": "0.6.12", @@ -4659,9 +4667,9 @@ } }, "date-fns": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz", - "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==" + "version": "2.21.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.21.1.tgz", + "integrity": "sha512-m1WR0xGiC6j6jNFAyW4Nvh4WxAi4JF4w9jRJwSI8nBmNcyZXPcP9VUQG+6gHQXAmqaGEKDKhOqAtENDC941UkA==" }, "debug": { "version": "2.6.9", @@ -5905,9 +5913,9 @@ }, "dependencies": { "graphql-language-service-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/graphql-language-service-parser/-/graphql-language-service-parser-1.9.0.tgz", - "integrity": "sha512-B5xPZLbBmIp0kHvpY1Z35I5DtPoDK9wGxQVRDIzcBaiIvAmlTrDvjo3bu7vKREdjFbYKvWNgrEWENuprMbF17Q==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/graphql-language-service-parser/-/graphql-language-service-parser-1.9.1.tgz", + "integrity": "sha512-GySsDrYxzxu6r1vF282xXDR2KlfVL5aOW7pgc75fF3UFiuqGm/SeoIljNM0mLpRl5KSxo1HNOxhkWoFBoy/h2w==", "requires": { "graphql-language-service-types": "^1.8.0" } @@ -6109,9 +6117,9 @@ "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" }, "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "html-encoding-sniffer": { @@ -6230,9 +6238,9 @@ } }, "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -8342,13 +8350,13 @@ } }, "jsonpath": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.0.tgz", - "integrity": "sha512-CZHwa1sZOf42qkIyK7evwToFXeTB4iplbl6Z9CVwU0wmBQPffL6gtYJXCoeciJoZENMuzaidPjhp2iOLRei4wQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.1.tgz", + "integrity": "sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w==", "requires": { "esprima": "1.2.2", "static-eval": "2.0.2", - "underscore": "1.7.0" + "underscore": "1.12.1" }, "dependencies": { "esprima": { @@ -8498,9 +8506,9 @@ } }, "lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "lodash._basebind": { "version": "2.3.0", @@ -10462,14 +10470,15 @@ "integrity": "sha1-ykDmweq6p+pcGhT8dBfHASYPft8=" }, "react-datepicker": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/react-datepicker/-/react-datepicker-1.8.0.tgz", - "integrity": "sha512-N4LdVTtqJCsZyKXBQ/AqSEcH6FyhgsY1gD07zECNu60nGt5s4ngRlhYdHoE34VNFO+ZY+pvljZRLwSC8LS9RxQ==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/react-datepicker/-/react-datepicker-3.8.0.tgz", + "integrity": "sha512-iFVNEp8DJoX5yEvEiciM7sJKmLGrvE70U38KhpG13XrulNSijeHw1RZkhd/0UmuXR71dcZB/kdfjiidifstZjw==", "requires": { - "classnames": "^2.2.5", - "prop-types": "^15.6.0", - "react-onclickoutside": "^6.7.1", - "react-popper": "^1.0.2" + "classnames": "^2.2.6", + "date-fns": "^2.0.1", + "prop-types": "^15.7.2", + "react-onclickoutside": "^6.10.0", + "react-popper": "^1.3.8" } }, "react-dom": { @@ -12366,9 +12375,9 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", "requires": { "figgy-pudding": "^3.5.1" } @@ -12609,9 +12618,9 @@ "dev": true }, "ua-parser-js": { - "version": "0.7.25", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.25.tgz", - "integrity": "sha512-8NFExdfI24Ny8R3Vc6+uUytP/I7dpqk3JERlvxPWlrtx5YboqCgxAXYKPAifbPLV2zKbgmmPL53ufW7mUC/VOQ==" + "version": "0.7.28", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz", + "integrity": "sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g==" }, "uc.micro": { "version": "1.0.6", @@ -12619,9 +12628,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "underscore": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz", - "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=" + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz", + "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==" }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", diff --git a/package.json b/package.json index e8c1d52f..6d62e7a9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "dms-ui", - "version": "1.0.2", + "version": "1.0.3", "private": true, "scripts": { "dev": "next dev", @@ -9,7 +9,7 @@ "test": "jest" }, "dependencies": { - "@arranger/components": "^2.12.3", + "@arranger/components": "^2.12.13", "@emotion/babel-preset-css-prop": "^10.0.27", "@emotion/core": "^10.0.35", "@emotion/styled": "^10.0.27", @@ -19,7 +19,7 @@ "emotion-theming": "^10.0.27", "jsonwebtoken": "^8.5.1", "jwt-decode": "^3.1.2", - "lodash": "^4.17.20", + "lodash": "^4.17.21", "next": "^9.5.4", "query-string": "^6.13.8", "react": "16.13.1",