From 9ed74042d8af9acfc91a004f1b9be11cd12473b2 Mon Sep 17 00:00:00 2001 From: Josh Black Date: Tue, 29 Mar 2022 11:10:29 -0500 Subject: [PATCH] feat(project): update elements packages to v11 layout (#11078) * feat(colors): move unstable swatches to stable BREAKING CHANGE: the `orange` and `yellow` exports now refer to swatches instead of colors * refactor(styles): rename carbon--aspect-ratios to aspect-ratios * feat(grid): move modules to scss directory BREAKING CHANGE: this module now requires Dart Sass, all files have been updated to Sass Modules * feat(icons): remove scss directory BREAKING CHANGE: the icons package no longer ships scss files. These styles are now available in the styles package. * feat(project): remove import-once package * feat(layout): move to Sass Modules, remove layout exports BREAKING CHANGE: the layout exports are no longer available in JavaScript. The scss files have been updated to use Sass Modules. * feat(motion): remove scss directory BREAKING CHANGE: the scss directory has been removed, use the index.scss entrypoint instead * docs(migration): remove pictograms from changes * feat(themes): remove deprecated code and update layout BREAKING CHANGE: the exports in JavaScript have been replaced with the latest tokens from v11. The files in the scss directory now use Sass Modules and have been updated. * fix(grid): update package to reference new scss entrypoints * feat(type): update package layout BREAKING CHANGE: this project has been updated to use Sass Modules and the entrypoints for scss files have been updated or removed * refactor(styles): update modules usage to new entrypoint * fix(styles,themes): remove modules paths * test(project): update snapshot and test files for elements * docs(themes): update preview examples * fix(themes): add back in white theme export * fix(grid): remove import-specific mixins file * docs(project): update elements previews to use v10 deps * fix(type,layout): update elements preview examples * docs(react): update styles for Data Table * test(elements): update snapshot * chore: update elements imports * refactor(elements): remove build and clean tasks * docs: update element example lock files * fix(styles): update styles to use grid scss folder --- docs/migration/v11.md | 333 +- packages/carbon-components-react/package.json | 1 + .../__snapshots__/colors-test.js.snap | 2 +- ...modules-test.js.snap => scss-test.js.snap} | 0 packages/colors/__tests__/colors-test.js | 6 +- packages/colors/__tests__/modules-test.js | 28 - packages/colors/__tests__/scss-test.js | 64 +- packages/colors/examples/preview/package.json | 1 + packages/colors/examples/preview/yarn.lock | 8 + packages/colors/src/colors.js | 12 +- packages/colors/tasks/build.js | 146 +- packages/elements/package.json | 5 +- packages/elements/scss/elements.scss | 17 - packages/elements/scss/index.scss | 15 - .../__snapshots__/PublicAPI-test.js.snap | 174 +- packages/elements/tasks/build.js | 80 - packages/elements/tasks/clean.js | 32 - packages/grid/examples/preview/package.json | 1 + packages/grid/examples/preview/styles.scss | 2 +- packages/grid/examples/preview/yarn.lock | 25 + packages/grid/index.scss | 8 +- packages/grid/package.json | 1 - packages/grid/scss/12.scss | 41 - .../grid/scss/{modules => }/_breakpoint.scss | 2 +- packages/grid/scss/{modules => }/_config.scss | 2 +- .../grid/scss/{modules => }/_css-grid.scss | 0 .../grid/scss/{modules => }/_flex-grid.scss | 0 packages/grid/scss/_mixins.import.scss | 411 - packages/grid/scss/_mixins.scss | 257 +- packages/grid/scss/_prefix.scss | 12 - packages/grid/scss/grid.scss | 10 - packages/grid/scss/index.scss | 10 - packages/grid/scss/modules/_mixins.scss | 316 - packages/icons/examples/preview/package.json | 1 + packages/icons/examples/preview/styles.scss | 6 +- packages/icons/examples/preview/yarn.lock | 124 +- packages/icons/scss/icons.scss | 10 - packages/icons/scss/index.scss | 8 - packages/icons/scss/mixins.scss | 18 - packages/import-once/.npmignore | 4 - packages/import-once/README.md | 57 - packages/import-once/package.json | 31 - packages/import-once/scss/import-once.scss | 27 - packages/import-once/scss/index.scss | 8 - packages/layout/__tests__/layout-test.js | 155 - packages/layout/__tests__/scss-test.js | 111 + packages/layout/examples/preview/index.html | 29 - packages/layout/examples/preview/package.json | 1 + packages/layout/examples/preview/styles.scss | 2 +- packages/layout/examples/preview/yarn.lock | 8 + packages/layout/index.scss | 7 +- packages/layout/package.json | 9 +- packages/layout/scss/_breakpoint.scss | 246 - packages/layout/scss/_convert.scss | 35 +- packages/layout/scss/_key-height.import.scss | 117 - packages/layout/scss/_key-height.scss | 111 - packages/layout/scss/_mini-unit.scss | 23 - packages/layout/scss/_spacing.scss | 7 +- packages/layout/scss/_utilities.scss | 8 +- packages/layout/scss/index.scss | 8 - packages/layout/scss/layout.scss | 12 - packages/layout/scss/modules/_spacing.scss | 9 - packages/layout/scss/modules/_utilities.scss | 41 - packages/layout/src/index.js | 19 - packages/layout/src/tokens.js | 10 - packages/layout/tasks/build.js | 124 +- .../__snapshots__/motion-test.js.snap | 14 +- packages/motion/__tests__/motion-test.js | 2 +- packages/motion/package.json | 7 - packages/motion/scss/index.scss | 8 - packages/motion/scss/motion.scss | 78 - .../pictograms/examples/preview/package.json | 1 + .../pictograms/examples/preview/styles.scss | 6 +- .../pictograms/examples/preview/yarn.lock | 124 +- .../expansion/DataTable-expansion-story.scss | 12 +- packages/sketch/package.json | 2 +- packages/styles/scss/__tests__/type-test.js | 1 - packages/styles/scss/_breakpoint.scss | 2 +- packages/styles/scss/_config.scss | 2 +- packages/styles/scss/_spacing.scss | 2 +- packages/styles/scss/_theme.scss | 8 +- packages/styles/scss/_themes.scss | 2 +- .../aspect-ratio/_aspect-ratio.scss | 4 +- packages/styles/scss/type/_reset.scss | 2 +- packages/themes/__tests__/mixins-test.js | 213 - .../{module-test.js => scss-test.js} | 9 +- packages/themes/__tests__/theme-maps-test.js | 32 - packages/themes/__tests__/themes-test.js | 130 - packages/themes/__tests__/tokens-test.js | 32 - .../examples/preview-v11/src/pages/index.js | 12 +- packages/themes/examples/preview/package.json | 2 + packages/themes/examples/preview/styles.scss | 4 +- packages/themes/examples/preview/yarn.lock | 95 +- packages/themes/index.scss | 6 +- packages/themes/package.json | 2 +- .../themes/scss/{modules => }/_config.scss | 0 packages/themes/scss/_mixins.scss | 39 - packages/themes/scss/_theme-maps.scss | 9 - .../themes/scss/{modules => }/_theme.scss | 0 .../themes/scss/{modules => }/_themes.scss | 0 packages/themes/scss/_tokens.scss | 2 +- .../themes/scss/{modules => }/_utilities.scss | 0 packages/themes/scss/index.scss | 8 - packages/themes/scss/modules/_tokens.scss | 8 - packages/themes/scss/themes.scss | 10 - packages/themes/src/__tests__/themes-test.js | 26 +- packages/themes/src/g10.js | 370 +- packages/themes/src/g100.js | 368 +- packages/themes/src/g80.js | 351 - packages/themes/src/g90.js | 368 +- packages/themes/src/index.js | 19 +- .../themes/src/next/__tests__/themes-test.js | 26 - packages/themes/src/next/g10.js | 268 - packages/themes/src/next/g100.js | 275 - packages/themes/src/next/g90.js | 275 - packages/themes/src/next/white.js | 271 - .../themes/src/{next => }/tokens/Token.js | 0 .../src/{next => }/tokens/TokenFormat.js | 0 .../src/{next => }/tokens/TokenGroup.js | 0 .../themes/src/{next => }/tokens/TokenSet.js | 0 .../{next => }/tokens/__tests__/Token-test.js | 0 .../tokens/__tests__/TokenFormat-test.js | 0 .../tokens/__tests__/TokenGroup-test.js | 0 .../tokens/__tests__/TokenSet-test.js | 0 .../__tests__/__snapshots__/v11-test.js.snap | 0 .../{next => }/tokens/__tests__/v11-test.js | 0 .../themes/src/{next => }/tokens/index.js | 0 .../src/{next => }/tokens/v11TokenGroup.js | 0 .../src/{next => }/tokens/v11TokenSet.js | 0 .../themes/src/v10/__tests__/themes-test.js | 32 + .../src/{ => v10}/__tests__/tokens-test.js | 0 packages/themes/src/{v9.js => v10/g10.js} | 168 +- packages/themes/src/v10/g100.js | 339 + packages/themes/src/v10/g90.js | 341 + packages/themes/src/{next => v10}/index.js | 7 +- packages/themes/{ => src/v10}/metadata.yml | 0 packages/themes/src/{ => v10}/tokens.js | 0 packages/themes/src/v10/white.js | 343 + packages/themes/src/white.js | 370 +- packages/themes/tasks/build.js | 123 +- .../themes/tasks/builders/compat/shared.js | 2 +- .../themes/tasks/builders/compat/themes.js | 4 +- .../themes/tasks/builders/compat/tokens.js | 8 +- packages/themes/tasks/builders/mixins.js | 326 - .../themes/tasks/builders/modules-themes.js | 3 +- .../themes/tasks/builders/modules-tokens.js | 2 +- packages/themes/tasks/builders/themes.js | 106 - packages/themes/tasks/builders/tokens.js | 80 - packages/type/__tests__/scss-test.js | 86 +- packages/type/examples/preview/package.json | 1 + packages/type/examples/preview/styles.scss | 12 +- packages/type/examples/preview/yarn.lock | 35 + packages/type/examples/styled-components/.env | 1 - .../examples/styled-components/.gitignore | 23 - .../type/examples/styled-components/README.md | 59 - .../examples/styled-components/package.json | 27 - .../styled-components/public/favicon.ico | Bin 3870 -> 0 bytes .../styled-components/public/index.html | 40 - .../styled-components/public/manifest.json | 15 - .../examples/styled-components/src/App.css | 32 - .../examples/styled-components/src/App.js | 37 - .../styled-components/src/App.test.js | 9 - .../examples/styled-components/src/index.css | 14 - .../examples/styled-components/src/index.js | 12 - .../examples/styled-components/src/logo.svg | 7 - .../styled-components/src/serviceWorker.js | 135 - .../type/examples/styled-components/yarn.lock | 9970 ----------------- packages/type/index.scss | 14 +- packages/type/package.json | 4 +- packages/type/scss/_classes.scss | 15 +- .../scss/{modules => }/_default-type.scss | 0 packages/type/scss/_font-family.scss | 68 +- packages/type/scss/_reset.scss | 68 +- packages/type/scss/_scale.scss | 28 +- packages/type/scss/_styles.import.scss | 766 -- packages/type/scss/_styles.scss | 360 +- packages/type/scss/font-face/_mono.scss | 430 - .../type/scss/font-face/_sans-condensed.scss | 302 - packages/type/scss/font-face/_sans.scss | 497 - packages/type/scss/font-face/_serif.scss | 430 - packages/type/scss/font-face/_settings.scss | 12 - packages/type/scss/index.scss | 8 - packages/type/scss/modules/_classes.scss | 42 - packages/type/scss/modules/_font-family.scss | 104 - packages/type/scss/modules/_prefix.scss | 11 - packages/type/scss/modules/_reset.scss | 42 - packages/type/scss/modules/_scale.scss | 57 - packages/type/scss/modules/_styles.scss | 876 -- packages/type/scss/type.scss | 8 - yarn.lock | 11 +- 190 files changed, 2991 insertions(+), 20846 deletions(-) rename packages/colors/__tests__/__snapshots__/{modules-test.js.snap => scss-test.js.snap} (100%) delete mode 100644 packages/colors/__tests__/modules-test.js delete mode 100644 packages/elements/scss/elements.scss delete mode 100644 packages/elements/scss/index.scss delete mode 100644 packages/elements/tasks/build.js delete mode 100644 packages/elements/tasks/clean.js delete mode 100644 packages/grid/scss/12.scss rename packages/grid/scss/{modules => }/_breakpoint.scss (99%) rename packages/grid/scss/{modules => }/_config.scss (97%) rename packages/grid/scss/{modules => }/_css-grid.scss (100%) rename packages/grid/scss/{modules => }/_flex-grid.scss (100%) delete mode 100644 packages/grid/scss/_mixins.import.scss delete mode 100644 packages/grid/scss/_prefix.scss delete mode 100644 packages/grid/scss/grid.scss delete mode 100644 packages/grid/scss/index.scss delete mode 100644 packages/grid/scss/modules/_mixins.scss delete mode 100644 packages/icons/scss/icons.scss delete mode 100644 packages/icons/scss/index.scss delete mode 100644 packages/icons/scss/mixins.scss delete mode 100644 packages/import-once/.npmignore delete mode 100644 packages/import-once/README.md delete mode 100644 packages/import-once/package.json delete mode 100644 packages/import-once/scss/import-once.scss delete mode 100644 packages/import-once/scss/index.scss delete mode 100644 packages/layout/__tests__/layout-test.js create mode 100644 packages/layout/__tests__/scss-test.js delete mode 100644 packages/layout/scss/_breakpoint.scss delete mode 100644 packages/layout/scss/_key-height.import.scss delete mode 100644 packages/layout/scss/_key-height.scss delete mode 100644 packages/layout/scss/_mini-unit.scss delete mode 100644 packages/layout/scss/index.scss delete mode 100644 packages/layout/scss/layout.scss delete mode 100644 packages/layout/scss/modules/_spacing.scss delete mode 100644 packages/layout/scss/modules/_utilities.scss delete mode 100644 packages/motion/scss/index.scss delete mode 100644 packages/motion/scss/motion.scss delete mode 100644 packages/themes/__tests__/mixins-test.js rename packages/themes/__tests__/{module-test.js => scss-test.js} (95%) delete mode 100644 packages/themes/__tests__/theme-maps-test.js delete mode 100644 packages/themes/__tests__/themes-test.js delete mode 100644 packages/themes/__tests__/tokens-test.js rename packages/themes/scss/{modules => }/_config.scss (100%) delete mode 100644 packages/themes/scss/_mixins.scss delete mode 100644 packages/themes/scss/_theme-maps.scss rename packages/themes/scss/{modules => }/_theme.scss (100%) rename packages/themes/scss/{modules => }/_themes.scss (100%) rename packages/themes/scss/{modules => }/_utilities.scss (100%) delete mode 100644 packages/themes/scss/index.scss delete mode 100644 packages/themes/scss/modules/_tokens.scss delete mode 100644 packages/themes/scss/themes.scss delete mode 100644 packages/themes/src/g80.js delete mode 100644 packages/themes/src/next/__tests__/themes-test.js delete mode 100644 packages/themes/src/next/g10.js delete mode 100644 packages/themes/src/next/g100.js delete mode 100644 packages/themes/src/next/g90.js delete mode 100644 packages/themes/src/next/white.js rename packages/themes/src/{next => }/tokens/Token.js (100%) rename packages/themes/src/{next => }/tokens/TokenFormat.js (100%) rename packages/themes/src/{next => }/tokens/TokenGroup.js (100%) rename packages/themes/src/{next => }/tokens/TokenSet.js (100%) rename packages/themes/src/{next => }/tokens/__tests__/Token-test.js (100%) rename packages/themes/src/{next => }/tokens/__tests__/TokenFormat-test.js (100%) rename packages/themes/src/{next => }/tokens/__tests__/TokenGroup-test.js (100%) rename packages/themes/src/{next => }/tokens/__tests__/TokenSet-test.js (100%) rename packages/themes/src/{next => }/tokens/__tests__/__snapshots__/v11-test.js.snap (100%) rename packages/themes/src/{next => }/tokens/__tests__/v11-test.js (100%) rename packages/themes/src/{next => }/tokens/index.js (100%) rename packages/themes/src/{next => }/tokens/v11TokenGroup.js (100%) rename packages/themes/src/{next => }/tokens/v11TokenSet.js (100%) create mode 100644 packages/themes/src/v10/__tests__/themes-test.js rename packages/themes/src/{ => v10}/__tests__/tokens-test.js (100%) rename packages/themes/src/{v9.js => v10/g10.js} (69%) create mode 100644 packages/themes/src/v10/g100.js create mode 100644 packages/themes/src/v10/g90.js rename packages/themes/src/{next => v10}/index.js (72%) rename packages/themes/{ => src/v10}/metadata.yml (100%) rename packages/themes/src/{ => v10}/tokens.js (100%) create mode 100644 packages/themes/src/v10/white.js delete mode 100644 packages/themes/tasks/builders/mixins.js delete mode 100644 packages/themes/tasks/builders/themes.js delete mode 100644 packages/themes/tasks/builders/tokens.js delete mode 100644 packages/type/examples/styled-components/.env delete mode 100644 packages/type/examples/styled-components/.gitignore delete mode 100644 packages/type/examples/styled-components/README.md delete mode 100644 packages/type/examples/styled-components/package.json delete mode 100644 packages/type/examples/styled-components/public/favicon.ico delete mode 100644 packages/type/examples/styled-components/public/index.html delete mode 100644 packages/type/examples/styled-components/public/manifest.json delete mode 100644 packages/type/examples/styled-components/src/App.css delete mode 100644 packages/type/examples/styled-components/src/App.js delete mode 100644 packages/type/examples/styled-components/src/App.test.js delete mode 100644 packages/type/examples/styled-components/src/index.css delete mode 100644 packages/type/examples/styled-components/src/index.js delete mode 100644 packages/type/examples/styled-components/src/logo.svg delete mode 100644 packages/type/examples/styled-components/src/serviceWorker.js delete mode 100644 packages/type/examples/styled-components/yarn.lock rename packages/type/scss/{modules => }/_default-type.scss (100%) delete mode 100644 packages/type/scss/_styles.import.scss delete mode 100644 packages/type/scss/font-face/_mono.scss delete mode 100644 packages/type/scss/font-face/_sans-condensed.scss delete mode 100644 packages/type/scss/font-face/_sans.scss delete mode 100644 packages/type/scss/font-face/_serif.scss delete mode 100644 packages/type/scss/font-face/_settings.scss delete mode 100644 packages/type/scss/index.scss delete mode 100644 packages/type/scss/modules/_classes.scss delete mode 100644 packages/type/scss/modules/_font-family.scss delete mode 100644 packages/type/scss/modules/_prefix.scss delete mode 100644 packages/type/scss/modules/_reset.scss delete mode 100644 packages/type/scss/modules/_scale.scss delete mode 100644 packages/type/scss/modules/_styles.scss delete mode 100644 packages/type/scss/type.scss diff --git a/docs/migration/v11.md b/docs/migration/v11.md index 3949ba705214..fa656ae60d9a 100644 --- a/docs/migration/v11.md +++ b/docs/migration/v11.md @@ -18,8 +18,6 @@ - [@carbon/grid](#carbongrid) - [@carbon/layout](#carbonlayout) - [@carbon/motion](#carbonmotion) -- [@carbon/pictograms](#carbonpictograms) -- [@carbon/pictograms-react](#carbonpictograms-react) - [@carbon/themes](#carbonthemes) - [@carbon/type](#carbontype) - [FAQ](#faq) @@ -55,9 +53,6 @@ of packages below. - [@carbon/grid](#carbongrid) - [@carbon/layout](#carbonlayout) - [@carbon/motion](#carbonmotion) - -- [@carbon/pictograms](#carbonpictograms) -- [@carbon/pictograms-react](#carbonpictograms-react) - [@carbon/themes](#carbonthemes) - [@carbon/type](#carbontype) @@ -1103,6 +1098,35 @@ library to use with your framework: - The `scss` directory which provided styles is no longer provided through this package +- The following assets that were deprecated in v10 have been removed: + - app-switcher + - arrows + - back-to-top + - checkbox--undeterminate + - checkbox--undeterminate--filled + - cloud--lightning + - cloud--rain + - cloud--snow + - delete + - edit-filter + - sunny + - research--bloch-sphere + - research--hinton-plot + - research--matrix + - misuse--alt + - logo--google + - mammogram--stacked + - logo--delicious + - logo--stumbleupon + - letter--Aa--large + - glyph--caution-inverted + - glyph--caution + - glyph--circle-fill + - glyph--circle-stroke + - glyph--critical + - glyph--incomplete + - glyph--square-fill + - glyph--undefined ## @carbon/icons-react @@ -1276,6 +1300,13 @@ const iconTypes = { For full Sass API documentation, visit the [Sass Documentation](../../packages/colors/docs/sass.md) for this package. +**JavaScript API** + +| v10 | v11 | +| :------- | :------------------------------------------------------------------------------------------------- | +| `yellow` | This variable no longer refers to a color and instead refers to the swatch. Use `yellow30` instead | +| `orange` | This variable no longer refers to a color and instead refers to the swatch. Use `orange40` instead | + ## @carbon/elements **Breaking changes** @@ -1333,7 +1364,7 @@ For full Sass API documentation, visit the | `scss/_css-grid.scss` | | New | | `scss/_flex-grid.scss` | | New | | `scss/_mixins.scss` | | Moved to `scss/_flex-grid.scss` | -| | `$carbon--aspect-ratios` | TODO | +| | `$carbon--aspect-ratios` | Moved to `@carbon/styles/scss/components/aspect-ratio` | | | `carbon--grid` | Renamed to `@mixin flex-grid` | | `scss/_prefix.scss` | | Moved to `scss/_config.scss` under `$prefix` | | `scss/12.scss` | | This file has been removed, configure `$flex-grid-columns` to 12 to emulate this entrypoint | @@ -1428,6 +1459,24 @@ For full documentation, visit the | | `$fluid-spacing-04` | No changes | | | `$fluid-spacing` | No changes | +For full documentation, visit the +[Sass Documentation](../../packages/layout/docs/sass.md) for the package. + +**JavaScript API** + +- The layout exports have been removed, use the spacing exports instead + +| v10 | v11 | +| :--------- | :---------- | +| `layout01` | `spacing05` | +| `layout02` | `spacing06` | +| `layout03` | `spacing07` | +| `layout04` | `spacing09` | +| `layout05` | `spacing10` | +| `layout06` | `spacing12` | +| `layout07` | `spacing13` | +| `layout` | Removed | + ## @carbon/motion **Breaking changes** @@ -1466,120 +1515,6 @@ For full documentation, visit the For full documentation, visit the [Sass Documentation](../../packages/motion/docs/sass.md) for the package. -## @carbon/pictograms - -| Pictogram | v11 | -| -------------------------------------------- | ------------------------------------------------ | -| advanced--fraud--protection | new | -| advanced--threats | new | -| alchemy--language--alphabet--a--expanded | removed | -| anonymous--users | new | -| application--security | new | -| assets | new | -| barcelona | new | -| berlin--brandenburg | removed | -| berlin--brandenburg--gate | replaced by `berlin--brandenburg-gate` | -| boston--zakim-bridge | new | -| bug--virus--malware | new | -| build--leadership--and--culture | new | -| cairo--giza-plateau | new | -| chicago | new | -| collaboration | new | -| continuous--security | new | -| data--security | new | -| design--and--development--01 | replaced by `design-and-development--01` | -| design--and--development--02 | replaced by `design-and-development--02` | -| detect--and--stop--advancing--threats | new | -| digital--id | new | -| digital--trust | new | -| do--not | replaced by `do-not` | -| download | replaced by `download--01` | -| download--alt | replaced by `download--02` | -| dubai--palm--islands | replaced by `dubai--palm-islands` | -| endpoint--security | new | -| enterprise--design--thinking | replaced by `enterprise--design--thinking--01` | -| enterprise--design--thinking--alt | replaced by `enterprise--design--thinking--02` | -| europe-africa | replaced by `europe--africa` | -| export | replaced by `export--01` | -| export--alt | replaced by `export--02` | -| farm | removed | -| feedback | replaced by `feedback--01` | -| get--ahead--of--risk--and--compliance  | new | -| govern--users--and--identities | new | -| hamburg--philharmone | new | -| heart | replaced by `love` | -| heat--map | replaced by `heat--map--01` | -| heat-map--02 | replaced by `heat--map--02` | -| high--risk--users | new | -| ibm--watson | replaced by `watson--logo` | -| identity--trust--assessment | new | -| language | replaced by `language--01` | -| language--01 | replaced by `language--02` | -| language--02 | replaced by `language--03` | -| language--03 | replaced by `language--04` | -| language--04 | replaced by `language--05` | -| language--translation--alphabet--a--expanded | removed | -| lock | replaced by `lock--01` | -| lock--alt | replaced by `lock--02` | -| locked--network | replaced by `locked--network--01` | -| locked--network--alt | replaced by `locked--network--02` | -| london--big--ben | replaced by `london--big-ben` | -| london--expanded--base | removed | -| master--threat--hunting | new | -| math-curve | replaced by `match--curve` | -| mexico-city--angel--of--independence | replaced by `mexico-city--angel-of-independence` | -| mexico-city--museo--soumaya | replaced by `mexico-city--museo-soumaya` | -| milan--duomo--di--milano | replaced by `milan--duomo-di-milano` | -| mortar--and--pestle | replaced by `mortar-and-pestle` | -| network--protection | new | -| nyc--manhattan | replaced by `nyc--manhattan--01` | -| nyc--manhattan--alt | replaced by `nyc--manhattan--02` | -| paris--arc-de-triomphe | new | -| paris--louvre | new | -| paris--notre-dame | new | -| paris--pompidou-center | new | -| population-diagram | replaced by `population--diagram` | -| prague--charles-bridge-tower | new | -| private--network | replaced by `private--network--01` | -| private--network--01 | updated to `private--network--02` | -| private--network--alt | replaced by `private--network--03` | -| private--network--alt--01 | replaced by `private--network--04` | -| protect--critical--assets | new | -| raleigh-nc | new | -| relationship-diagram | replaced by `relationship--diagram` | -| sao-paulo--expanded--base | removed | -| scatter-matrix | replaced by `scatter--matrix` | -| secure--hybrid--cloud | new | -| security--as--a--service | new | -| security--hygiene | new | -| security--intelligence | new | -| speech--alphabet--a--expanded | removed | -| stockholm | new | -| strategy--and--risk | new | -| tel--aviv | replaced by `tel-aviv` | -| threat--management | new | -| tokyo--cherry--blossom | replaced by `tokyo--cherry-blossom` | -| tool--overload | new | -| transform | replaced by `transform--01` | -| transform--02 | new | -| trusted--user | new | -| unauthorized--user--access | new | -| under--utilized--security | new | -| unify--endpoint--management | new | -| unlock | replaced by `unlock--01` | -| unlock--alt | replaced by `unlock--02` | -| upload | replaced by `upload--01` | -| upload--alt | replaced by `upload--02` | -| video | replaced by `video--01` | -| video--alt | replaced by `video--02` | -| warning | replaced by `warning--01` | -| warning--alt | replaced by `warning--02` | -| watson--avatar | replaced by `watson--logo` | -| word-cloud | replaced by `word--cloud` | -| world--community--grid | new | - -## @carbon/pictograms-react - ## @carbon/themes **Breaking changes** @@ -1587,7 +1522,7 @@ For full documentation, visit the - This package now requires Dart Sass and uses Sass Modules - Variables, mixins, and functions with the `carbon--` prefix have been renamed - Design Tokens have been changed, however you can use the - [compatability guide](#todo) to use v10 tokens along with v11 tokens + [compatability docs](#compatability) to use v10 tokens along with v11 tokens - The `theme` mixin now emits CSS Custom Properties by default for the given theme, `$emit-custom-properties` and `$emit-difference` are no longer needed @@ -1623,6 +1558,28 @@ For full documentation, visit the For full Sass API documentation, visit the [Sass Documentation](../../packages/themes/docs/sass.md) for this package. +**JavaScript API** + +| v10 | v11 | +| :------------ | :-------------------------------------------------------------------------------------------------- | +| Token exports | The names and values of tokens have been updated in v11. Access v10 values through the `v10` export | +| `white` | Updated with new tokens and values. For the v10 white theme, use the `v10` export | +| `g10` | Updated with new tokens and values. For the v10 g10 theme, use the `v10` export | +| `g80` | Removed | +| `g90` | Updated with new tokens and values. For the v10 g90 theme, use the `v10` export | +| `g100` | Updated with new tokens and values. For the v10 g100 theme, use the `v10` export | +| `v9` | Removed | +| `themes` | Updated with new tokens and values. For the v10 themes, use the `v10` export | + +The `v10` export has been added to access old token and theme values. To access +the v10 version of a theme, you can use this export directly: + +```js +import { v10 } from '@carbon/themes'; + +const { white, g10, g90, g100 } = v10; +``` + ### Design Tokens **Status key:** @@ -1795,33 +1752,33 @@ were importing `@carbon/type/scss/styles` in v10 you would now only import **Sass API** -| Filename | v10 | v11 | -| ------------------------------------- | ------------------------------------ | ----------------------------------------------------------------------------- | -| `scss/index.scss` | | Removed, use `@carbon/type` directly | -| `scss/type.scss` | | Removed, use `@carbon/type` directly | -| `scss/_classes.scss` | `@mixin carbon--type-classes` | Renamed to `@mixin type-classes` | -| `scss/font-face/_mono.scss` | `@mixin carbon--font-face-mono` | TODO | -| `scss/font-face/_sans-condensed.scss` | `@mixin carbon--font-face-condensed` | TODO | -| `scss/font-face/_sans.scss` | `@mixin carbon--font-face-sans` | TODO | -| `scss/font-face/_serif.scss` | `@mixin carbon--font-face-serif` | TODO | -| `scss/font-face/_settings.scss` | `$carbon--font-display` | TODO | -| `scss/_font-family.scss` | `$carbon--font-families` | Renamed to `$font-families` | -| | `@function carbon--font-family` | Renamed to `@function font-family` | -| | `@mixin carbon--font-family` | Renamed to `@mixin font-family` | -| | `$carbon--font-weights` | Renamed to `$font-weights` | -| | `@function carbon--font-weight` | Renamed to `@function font-weight` | -| | `@mixin carbon--font-weight` | Renamed to `@mixin font-weight` | -| `scss/_prefix.scss` | | No Changes | -| `scss/_reset.scss` | `@mixin carbon--default-type` | Renamed to `@mixin default-type` | -| | `@mixin carbon--type-reset` | Renamed to `@mixin reset`, no longer accepts `$base-font-size` as a parameter | -| `scss/_scale.scss` | `@function carbon--get-type-size` | Removed, use `type-scale` instead | -| | `$carbon--type-scale` | Renamed to `$type-scale` | -| | `@function carbon--type-scale` | Renamed to `@function type-scale` | -| | `@mixin carbon--type-scale` | Renamed to `@mixin type-scale` | -| | `@mixin carbon--font-size` | Renamed to `@mixin font-size` | -| `scss/_styles.scss` | `@mixin carbon--type-style` | Renamed to `@mixin type-style` | -| `scss/_styles.scss` | `$caption-01` | Removed | -| | `$caption-02` | Removed | +| Filename | v10 | v11 | +| ------------------------------------- | ------------------------------------ | --------------------------------------- | +| `scss/index.scss` | | Removed, use `@carbon/type` directly | +| `scss/type.scss` | | Removed, use `@carbon/type` directly | +| `scss/_classes.scss` | `@mixin carbon--type-classes` | Renamed to `@mixin type-classes` | +| `scss/font-face/_mono.scss` | `@mixin carbon--font-face-mono` | Removed, use `@carbon/styles/scss/font` | +| `scss/font-face/_sans-condensed.scss` | `@mixin carbon--font-face-condensed` | Removed, use `@carbon/styles/scss/font` | +| `scss/font-face/_sans.scss` | `@mixin carbon--font-face-sans` | Removed, use `@carbon/styles/scss/font` | +| `scss/font-face/_serif.scss` | `@mixin carbon--font-face-serif` | Removed, use `@carbon/styles/scss/font` | +| `scss/font-face/_settings.scss` | `$carbon--font-display` | Removed | +| `scss/_font-family.scss` | `$carbon--font-families` | Renamed to `$font-families` | +| | `@function carbon--font-family` | Renamed to `@function font-family` | +| | `@mixin carbon--font-family` | Renamed to `@mixin font-family` | +| | `$carbon--font-weights` | Renamed to `$font-weights` | +| | `@function carbon--font-weight` | Renamed to `@function font-weight` | +| | `@mixin carbon--font-weight` | Renamed to `@mixin font-weight` | +| `scss/_prefix.scss` | | No Changes | +| `scss/_reset.scss` | `@mixin carbon--default-type` | Renamed to `@mixin default-type` | +| | `@mixin carbon--type-reset` | Renamed to `@mixin type-reset` | +| `scss/_scale.scss` | `@function carbon--get-type-size` | Removed, use `type-scale` instead | +| | `$carbon--type-scale` | Renamed to `$type-scale` | +| | `@function carbon--type-scale` | Renamed to `@function type-scale` | +| | `@mixin carbon--type-scale` | Renamed to `@mixin type-scale` | +| | `@mixin carbon--font-size` | Renamed to `@mixin font-size` | +| `scss/_styles.scss` | `@mixin carbon--type-style` | Renamed to `@mixin type-style` | +| | `$caption-01` | Removed | +| | `$caption-02` | Removed | ## Type tokens @@ -1833,45 +1790,45 @@ were importing `@carbon/type/scss/styles` in v10 you would now only import - **New:** A net new type token to the system in v11. It has no v10 counterpart. - **Deprecated:** v10 token was removed in v11. -| Category | V10 token name | V11 token name | Status | -| -------------------- | ----------------------- | ------------------ | ---------- | -| Utility styles | code-01 | code-01 | No change | -| | code-02 | code-02 | No change | -| | label-01 | label-01 | No change | -| | label-02 | label-02 | No change | -| | helper-text-01 | helper-text-01 | No change | -| | helper-text-02 | helper-text-02 | No change | -| | | legal-01 | New | -| | | legal-02 | New | -| | caption-01 | | Deprecated | -| | caption-02 | | Deprecated | -| Body styles | | | | -| | body-short-01 | body-compact-01 | Updated | -| | body-short-02 | body-compact-02 | Updated | -| | body-long-01 | body-01 | Updated | -| | body-long-02 | body-02 | Updated | -| Fixed heading styles | | | | -| | productive-heading-01 | heading-compact-01 | Updated | -| | productive-heading-02 | heading-compact-02 | Updated | -| | expressive-heading-01 | heading-01 | Updated | -| | expressive-heading-02 | heading-02 | Updated | -| | productive-heading-03 | heading-03 | Updated | -| | productive-heading-04 | heading-04 | Updated | -| | productive-heading-05 | heading-05 | Updated | -| | productive-heading-06 | heading-06 | Updated | -| | productive-heading-07 | heading-07 | Updated | -| Fluid heading styles | | | | -| | expressive-heading-03 | fluid-heading-03 | Updated | -| | expressive-heading-04 | fluid-heading-04 | Updated | -| | expressive-heading-05 | fluid-heading-05 | Updated | -| | expressive-heading-06 | fluid-heading-06 | Updated | -| Fluid display styles | | | | -| | expressive-paragraph-01 | fluid-paragraph-01 | Updated | -| | quotation-01 | fluid-quotation-01 | Updated | -| | quotation-02 | fluid-quotation-02 | Updated | -| | display-01 | fluid-display-01 | Updated | -| | display-02 | fluid-display-02 | Updated | -| | display-03 | fluid-display-03 | Updated | -| | display-04 | fluid-display-04 | Updated | +| Category | V10 token name | V11 token name | Status | +| -------------------- | ----------------------- | ------------------ | --------- | +| Utility styles | code-01 | code-01 | No change | +| | code-02 | code-02 | No change | +| | label-01 | label-01 | No change | +| | label-02 | label-02 | No change | +| | helper-text-01 | helper-text-01 | No change | +| | helper-text-02 | helper-text-02 | No change | +| | | legal-01 | New | +| | | legal-02 | New | +| | caption-01 | | Removed | +| | caption-02 | | Removed | +| Body styles | | | | +| | body-short-01 | body-compact-01 | Updated | +| | body-short-02 | body-compact-02 | Updated | +| | body-long-01 | body-01 | Updated | +| | body-long-02 | body-02 | Updated | +| Fixed heading styles | | | | +| | productive-heading-01 | heading-compact-01 | Updated | +| | productive-heading-02 | heading-compact-02 | Updated | +| | expressive-heading-01 | heading-01 | Updated | +| | expressive-heading-02 | heading-02 | Updated | +| | productive-heading-03 | heading-03 | Updated | +| | productive-heading-04 | heading-04 | Updated | +| | productive-heading-05 | heading-05 | Updated | +| | productive-heading-06 | heading-06 | Updated | +| | productive-heading-07 | heading-07 | Updated | +| Fluid heading styles | | | | +| | expressive-heading-03 | fluid-heading-03 | Updated | +| | expressive-heading-04 | fluid-heading-04 | Updated | +| | expressive-heading-05 | fluid-heading-05 | Updated | +| | expressive-heading-06 | fluid-heading-06 | Updated | +| Fluid display styles | | | | +| | expressive-paragraph-01 | fluid-paragraph-01 | Updated | +| | quotation-01 | fluid-quotation-01 | Updated | +| | quotation-02 | fluid-quotation-02 | Updated | +| | display-01 | fluid-display-01 | Updated | +| | display-02 | fluid-display-02 | Updated | +| | display-03 | fluid-display-03 | Updated | +| | display-04 | fluid-display-04 | Updated | ## FAQ diff --git a/packages/carbon-components-react/package.json b/packages/carbon-components-react/package.json index 685ab72e92c1..e98bd3613b02 100644 --- a/packages/carbon-components-react/package.json +++ b/packages/carbon-components-react/package.json @@ -56,6 +56,7 @@ "@rollup/plugin-node-resolve": "^13.0.0", "babel-plugin-dev-expression": "^0.2.3", "babel-preset-carbon": "^0.2.0", + "browserslist-config-carbon": "^10.6.1", "fs-extra": "^10.0.0", "react": "^17.0.2", "react-dom": "^17.0.2", diff --git a/packages/colors/__tests__/__snapshots__/colors-test.js.snap b/packages/colors/__tests__/__snapshots__/colors-test.js.snap index 7327c67afbe2..c0247d238f46 100644 --- a/packages/colors/__tests__/__snapshots__/colors-test.js.snap +++ b/packages/colors/__tests__/__snapshots__/colors-test.js.snap @@ -155,7 +155,7 @@ Object { } `; -exports[`unstable_hoverColors 1`] = ` +exports[`hoverColors 1`] = ` Object { "blackHover": "#212121", "blueHover": Object { diff --git a/packages/colors/__tests__/__snapshots__/modules-test.js.snap b/packages/colors/__tests__/__snapshots__/scss-test.js.snap similarity index 100% rename from packages/colors/__tests__/__snapshots__/modules-test.js.snap rename to packages/colors/__tests__/__snapshots__/scss-test.js.snap diff --git a/packages/colors/__tests__/colors-test.js b/packages/colors/__tests__/colors-test.js index f56d290bcefb..0f180a934227 100644 --- a/packages/colors/__tests__/colors-test.js +++ b/packages/colors/__tests__/colors-test.js @@ -9,12 +9,12 @@ 'use strict'; -import { colors, unstable_hoverColors } from '../src'; +import { colors, hoverColors } from '../src'; test('colors', () => { expect(colors).toMatchSnapshot(); }); -test('unstable_hoverColors', () => { - expect(unstable_hoverColors).toMatchSnapshot(); +test('hoverColors', () => { + expect(hoverColors).toMatchSnapshot(); }); diff --git a/packages/colors/__tests__/modules-test.js b/packages/colors/__tests__/modules-test.js deleted file mode 100644 index 70d44044aedb..000000000000 --- a/packages/colors/__tests__/modules-test.js +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright IBM Corp. 2015, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - * - * @jest-environment node - */ - -'use strict'; - -const { SassRenderer } = require('@carbon/test-utils/scss'); - -const { render } = SassRenderer.create(__dirname); - -describe('@carbon/colors', () => { - test('Public API', async () => { - const { getValue } = await render(` - @use 'sass:meta'; - @use '../index.scss' as colors; - - $_: get-value(meta.module-variables('colors')); - `); - - const variables = getValue(0); - expect(variables).toMatchSnapshot(); - }); -}); diff --git a/packages/colors/__tests__/scss-test.js b/packages/colors/__tests__/scss-test.js index 39fb9d6199ff..70d44044aedb 100644 --- a/packages/colors/__tests__/scss-test.js +++ b/packages/colors/__tests__/scss-test.js @@ -9,62 +9,20 @@ 'use strict'; -const { createSassRenderer, types } = require('@carbon/test-utils/scss'); +const { SassRenderer } = require('@carbon/test-utils/scss'); -const render = createSassRenderer(__dirname); +const { render } = SassRenderer.create(__dirname); -describe('colors.scss', () => { - it('should emit default variable initializations when mixins are included', async () => { - const { calls } = await render(` -@import '../scss/mixins'; +describe('@carbon/colors', () => { + test('Public API', async () => { + const { getValue } = await render(` + @use 'sass:meta'; + @use '../index.scss' as colors; -$test: test(mixin-exists(carbon--colors)); -$test: test(global-variable-exists(carbon--blue-50)); -`); - expect(calls[0][0].getValue()).toBe(true); - expect(calls[1][0].getValue()).toBe(true); - }); - - it('should include color variables as globals if the mixin is called', async () => { - const { calls } = await render(` -@import '../scss/mixins'; - -@include carbon--colors(); -$test: test(variable-exists(carbon--blue-50)); -$test: test(global-variable-exists(carbon--blue-50)); -`); - expect(calls[0][0].getValue()).toBe(true); - expect(calls[1][0].getValue()).toBe(true); - }); - - it('should include color variables in the default entrypoint', async () => { - const { calls } = await render(` -@import '../scss/colors'; - -$test: test(mixin-exists(carbon--colors)); -$test: test(variable-exists(carbon--blue-50)); -$test: test(global-variable-exists(carbon--blue-50)); -`); - expect(calls[0][0].getValue()).toBe(true); - expect(calls[1][0].getValue()).toBe(true); - expect(calls[2][0].getValue()).toBe(true); - }); - - describe('deprecated', () => { - it('should provide a map of color values', async () => { - const { calls } = await render(` -@import '../scss/colors'; - -$map: test($ibm-color-map); -$swatch: test(map-get($ibm-color-map, 'black')); -$value: test(map-get(map-get($ibm-color-map, 'black'), 100)); -$null: test(map-get($ibm-color-map, black)); -`); + $_: get-value(meta.module-variables('colors')); + `); - expect(calls[0][0]).toBeInstanceOf(types.Map); - expect(calls[1][0]).toBeInstanceOf(types.Map); - expect(calls[2][0]).toBeInstanceOf(types.Color); - expect(calls[3][0]).toBeInstanceOf(types.Null); - }); + const variables = getValue(0); + expect(variables).toMatchSnapshot(); }); }); diff --git a/packages/colors/examples/preview/package.json b/packages/colors/examples/preview/package.json index 30a14b288728..c08d2a26bef9 100644 --- a/packages/colors/examples/preview/package.json +++ b/packages/colors/examples/preview/package.json @@ -10,6 +10,7 @@ "develop": "parcel index.html --no-cache" }, "devDependencies": { + "@carbon/colors": "^10.37.1", "@parcel/transformer-sass": "^2.0.1", "parcel": "^2.0.1" }, diff --git a/packages/colors/examples/preview/yarn.lock b/packages/colors/examples/preview/yarn.lock index b38d233ec0b8..bc3bdaba7fdc 100644 --- a/packages/colors/examples/preview/yarn.lock +++ b/packages/colors/examples/preview/yarn.lock @@ -282,6 +282,13 @@ __metadata: languageName: node linkType: hard +"@carbon/colors@npm:^10.37.1": + version: 10.37.1 + resolution: "@carbon/colors@npm:10.37.1" + checksum: 7cdc38370d1a51d968f28de951a180211b33db14f6dee5cd55c1d965ebe74c19c55924898df7c344f72dfa2c46a764ad16696038911e77b43d9b701d34c56514 + languageName: node + linkType: hard + "@gar/promisify@npm:^1.0.1": version: 1.1.2 resolution: "@gar/promisify@npm:1.1.2" @@ -1949,6 +1956,7 @@ __metadata: version: 0.0.0-use.local resolution: "colors-examples-preview@workspace:." dependencies: + "@carbon/colors": ^10.37.1 "@parcel/transformer-sass": ^2.0.1 parcel: ^2.0.1 react: ^16.13.1 diff --git a/packages/colors/src/colors.js b/packages/colors/src/colors.js index c7b5ff0e234d..0c65f65348f7 100644 --- a/packages/colors/src/colors.js +++ b/packages/colors/src/colors.js @@ -23,7 +23,7 @@ export const yellow70 = '#684e00'; export const yellow80 = '#483700'; export const yellow90 = '#302400'; export const yellow100 = '#1c1500'; -const unstable_yellow = { +const yellow = { 10: yellow10, 20: yellow20, 30: yellow30, @@ -35,7 +35,6 @@ const unstable_yellow = { 90: yellow90, 100: yellow100, }; -export const yellow = yellow30; export const yellow10Hover = '#f8e6a0'; export const yellow20Hover = '#fccd27'; @@ -70,8 +69,7 @@ export const orange70 = '#8a3800'; export const orange80 = '#5e2900'; export const orange90 = '#3e1a00'; export const orange100 = '#231000'; -export const orange = orange40; -const unstable_orange = { +const orange = { 10: orange10, 20: orange20, 30: orange30, @@ -578,7 +576,7 @@ export const colors = { gray, green, magenta, - orange: unstable_orange, + orange, purple, red, teal, @@ -586,10 +584,10 @@ export const colors = { white: { 0: white, }, - yellow: unstable_yellow, + yellow, }; -export const unstable_hoverColors = { +export const hoverColors = { whiteHover, blackHover, blueHover, diff --git a/packages/colors/tasks/build.js b/packages/colors/tasks/build.js index 7ee520064c28..2c0b3b87ccf5 100644 --- a/packages/colors/tasks/build.js +++ b/packages/colors/tasks/build.js @@ -9,7 +9,7 @@ 'use strict'; -const { colors, unstable_hoverColors: hoverColors } = require('@carbon/colors'); +const { colors, hoverColors } = require('@carbon/colors'); const { types: t, generate } = require('@carbon/scss-generator'); const { paramCase } = require('change-case'); const fs = require('fs-extra'); @@ -17,12 +17,11 @@ const path = require('path'); const FILE_BANNER = t.Comment(` Code generated by @carbon/colors. DO NOT EDIT. - Copyright IBM Corp. 2018, 2020 + Copyright IBM Corp. 2018, 2021 This source code is licensed under the Apache-2.0 license found in the LICENSE file in the root directory of this source tree. `); -const NAMESPACE = 'carbon'; async function build() { // Colors has the shape: @@ -73,137 +72,6 @@ async function build() { return acc.concat(...values); }, []); - const colorMapProperties = t.SassMap({ - properties: Object.keys(colors).flatMap((swatch) => { - const value = t.SassMap({ - properties: Object.keys(colors[swatch]).map((grade) => { - return t.SassMapProperty({ - key: t.Identifier(grade), - value: t.SassColor(colors[swatch][grade]), - }); - }), - }); - - if (swatch === paramCase(swatch)) { - return [ - t.SassMapProperty({ - key: t.Identifier(swatch), - value, - quoted: true, - }), - ]; - } - - return [ - t.SassMapProperty({ - key: t.Identifier(paramCase(swatch)), - value, - quoted: true, - }), - t.SassMapProperty({ - key: t.Identifier(swatch), - value, - quoted: true, - }), - ]; - }), - }); - - const prefixes = ['ibm-color__', 'carbon--', '']; - const variables = prefixes.flatMap((prefix) => { - return colorValues.flatMap(({ swatch, grade, value }) => { - return t.Assignment({ - id: t.Identifier(`${prefix}${swatch}-${grade}`), - init: t.SassColor(value), - default: true, - }); - }); - }); - - for (const color of hoverColorValues) { - variables.push( - t.Assignment({ - id: t.Identifier(color.name), - init: t.SassColor(color.value), - default: true, - }) - ); - } - - variables.push( - t.Assignment({ - id: t.Identifier('ibm-color-map'), - init: colorMapProperties, - default: true, - }), - t.Assignment({ - id: t.Identifier('carbon--colors'), - init: colorMapProperties, - default: true, - }), - t.Newline() - ); - - const ibmColorsMixin = t.SassMixin({ - id: t.Identifier('ibm--colors'), - body: t.BlockStatement([ - ...colorValues.flatMap(({ swatch, grade, value }) => { - return t.Assignment({ - id: t.Identifier(`ibm-color__${swatch}-${grade}`), - init: t.SassColor(value), - global: true, - }); - }), - t.Assignment({ - id: t.Identifier('ibm-color-map'), - init: colorMapProperties, - global: true, - }), - ]), - }); - - const carbonColorsMixin = t.SassMixin({ - id: t.Identifier('carbon--colors'), - body: t.BlockStatement([ - ...colorValues.flatMap(({ swatch, grade, value }) => { - return t.Assignment({ - id: t.Identifier(`carbon--${swatch}-${grade}`), - init: t.SassColor(value), - global: true, - }); - }), - t.Assignment({ - id: t.Identifier('carbon--colors'), - init: colorMapProperties, - global: true, - }), - ]), - }); - - const mixins = t.StyleSheet([ - FILE_BANNER, - ...variables, - t.Comment(`/ Define color variables -/ @access public -/ @group @carbon/colors -/ @deprecated Use \`$carbon--colors\` going forward`), - ibmColorsMixin, - t.Newline(), - t.Comment(`/ Define color variables -/ @access public -/ @group @carbon/colors`), - carbonColorsMixin, - ]); - - const entrypoint = t.StyleSheet([ - FILE_BANNER, - t.SassImport('./mixins'), - t.Comment(' Deprecated ☠️'), - t.SassMixinCall(t.Identifier('ibm--colors')), - t.Comment(' Preferred'), - t.SassMixinCall(t.Identifier(`${NAMESPACE}--colors`)), - ]); - const sassModule = t.StyleSheet([ FILE_BANNER, t.Newline(), @@ -265,17 +133,9 @@ async function build() { }), ]); - const SCSS_DIR = path.resolve(__dirname, '../scss'); - const COLORS_ENTRYPOINT = path.join(SCSS_DIR, 'colors.scss'); - const INDEX_ENTRYPOINT = path.join(SCSS_DIR, 'index.scss'); - const MIXINS_ENTRYPOINT = path.join(SCSS_DIR, 'mixins.scss'); - const MODULES_ENTRYPOINT = path.resolve(SCSS_DIR, '..', 'index.scss'); + const MODULES_ENTRYPOINT = path.resolve(__dirname, '..', 'index.scss'); - await fs.ensureDir(SCSS_DIR); await Promise.all([ - fs.writeFile(COLORS_ENTRYPOINT, generate(entrypoint).code), - fs.writeFile(INDEX_ENTRYPOINT, generate(entrypoint).code), - fs.writeFile(MIXINS_ENTRYPOINT, generate(mixins).code), fs.writeFile(MODULES_ENTRYPOINT, generate(sassModule).code), ]); } diff --git a/packages/elements/package.json b/packages/elements/package.json index 51c5f7ec53db..d6b7a9e17209 100644 --- a/packages/elements/package.json +++ b/packages/elements/package.json @@ -31,14 +31,13 @@ "access": "public" }, "scripts": { - "build": "yarn clean && carbon-cli bundle src/index.js --name CarbonElements && node tasks/build.js && carbon-cli check \"scss/*.scss\"", - "clean": "rimraf es lib umd && node tasks/clean.js" + "build": "yarn clean && carbon-cli bundle src/index.js --name CarbonElements", + "clean": "rimraf es lib umd" }, "dependencies": { "@carbon/colors": "^10.37.0", "@carbon/grid": "^10.43.0", "@carbon/icons": "^10.48.0", - "@carbon/import-once": "^10.7.0", "@carbon/layout": "^10.37.0", "@carbon/motion": "^10.29.0", "@carbon/themes": "^10.54.0", diff --git a/packages/elements/scss/elements.scss b/packages/elements/scss/elements.scss deleted file mode 100644 index 5df2cf38548d..000000000000 --- a/packages/elements/scss/elements.scss +++ /dev/null @@ -1,17 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -// The files below are generated using the `yarn build` stage for this -// package -@import './import-once/import-once'; -@import './colors/colors'; -@import './themes/themes'; -@import './layout/layout'; -@import './grid/grid'; -@import './icons/icons'; -@import './type/type'; -@import './motion/motion'; diff --git a/packages/elements/scss/index.scss b/packages/elements/scss/index.scss deleted file mode 100644 index 6a57c8801bb7..000000000000 --- a/packages/elements/scss/index.scss +++ /dev/null @@ -1,15 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import '@carbon/import-once/scss/import-once'; -@import '@carbon/colors/scss/colors'; -@import '@carbon/themes/scss/themes'; -@import '@carbon/layout/scss/layout'; -@import '@carbon/grid/scss/grid'; -@import '@carbon/icons/scss/icons'; -@import '@carbon/type/scss/type'; -@import '@carbon/motion/scss/motion'; diff --git a/packages/elements/src/__tests__/__snapshots__/PublicAPI-test.js.snap b/packages/elements/src/__tests__/__snapshots__/PublicAPI-test.js.snap index e70b668c7d72..dcbae21e04ea 100644 --- a/packages/elements/src/__tests__/__snapshots__/PublicAPI-test.js.snap +++ b/packages/elements/src/__tests__/__snapshots__/PublicAPI-test.js.snap @@ -2,13 +2,6 @@ exports[`Public API should only change with a semver change 1`] = ` Array [ - "active01", - "activeDanger", - "activeLightUI", - "activePrimary", - "activeSecondary", - "activeTertiary", - "activeUI", "background", "backgroundActive", "backgroundBrand", @@ -31,10 +24,6 @@ Array [ "blue70", "blue80", "blue90", - "body01", - "body02", - "bodyCompact01", - "bodyCompact02", "bodyLong01", "bodyLong02", "bodyShort01", @@ -42,31 +31,20 @@ Array [ "borderDisabled", "borderInteractive", "borderInverse", - "borderStrong", - "borderSubtle", - "borderSubtleSelected", - "brand01", - "brand02", - "brand03", + "borderStrong01", + "borderStrong02", + "borderStrong03", + "borderSubtle00", + "borderSubtle01", + "borderSubtle02", + "borderSubtle03", + "borderSubtleSelected01", + "borderSubtleSelected02", + "borderSubtleSelected03", "breakpoint", "breakpointDown", "breakpointUp", "breakpoints", - "buttonDangerActive", - "buttonDangerHover", - "buttonDangerPrimary", - "buttonDangerSecondary", - "buttonDisabled", - "buttonPrimary", - "buttonPrimaryActive", - "buttonPrimaryHover", - "buttonSecondary", - "buttonSecondaryActive", - "buttonSecondaryHover", - "buttonSeparator", - "buttonTertiary", - "buttonTertiaryActive", - "buttonTertiaryHover", "caption01", "caption02", "code01", @@ -100,13 +78,6 @@ Array [ "cyan70", "cyan80", "cyan90", - "danger", - "danger01", - "danger02", - "decorative01", - "disabled01", - "disabled02", - "disabled03", "display01", "display02", "display03", @@ -122,22 +93,13 @@ Array [ "expressiveParagraph01", "fast01", "fast02", - "field", "field01", "field02", - "fieldHover", + "field03", + "fieldHover01", + "fieldHover02", + "fieldHover03", "fluid", - "fluidDisplay01", - "fluidDisplay02", - "fluidDisplay03", - "fluidDisplay04", - "fluidHeading03", - "fluidHeading04", - "fluidHeading05", - "fluidHeading06", - "fluidParagraph01", - "fluidQuotation01", - "fluidQuotation02", "fluidSpacing", "fluidSpacing01", "fluidSpacing02", @@ -150,10 +112,8 @@ Array [ "fontFamily", "fontWeight", "fontWeights", - "formatTokenName", "g10", "g100", - "g80", "g90", "getTypeSize", "gray", @@ -180,29 +140,9 @@ Array [ "green90", "heading01", "heading02", - "heading03", - "heading04", - "heading05", - "heading06", - "heading07", - "headingCompact01", - "headingCompact02", "helperText01", "helperText02", "highlight", - "hoverDanger", - "hoverField", - "hoverLightUI", - "hoverPrimary", - "hoverPrimaryText", - "hoverRow", - "hoverSecondary", - "hoverSelectedUI", - "hoverTertiary", - "hoverUI", - "icon01", - "icon02", - "icon03", "iconDisabled", "iconInverse", "iconOnColor", @@ -213,44 +153,38 @@ Array [ "iconSize01", "iconSize02", "interactive", - "interactive01", - "interactive02", - "interactive03", - "interactive04", - "inverse01", - "inverse02", - "inverseFocusUi", - "inverseHoverUI", - "inverseLink", - "inverseSupport01", - "inverseSupport02", - "inverseSupport03", - "inverseSupport04", "label01", "label02", - "layer", - "layerAccent", - "layerAccentActive", - "layerAccentHover", - "layerActive", - "layerHover", - "layerSelected", + "layer01", + "layer02", + "layer03", + "layerAccent01", + "layerAccent02", + "layerAccent03", + "layerAccentActive01", + "layerAccentActive02", + "layerAccentActive03", + "layerAccentHover01", + "layerAccentHover02", + "layerAccentHover03", + "layerActive01", + "layerActive02", + "layerActive03", + "layerHover01", + "layerHover02", + "layerHover03", + "layerSelected01", + "layerSelected02", + "layerSelected03", "layerSelectedDisabled", - "layerSelectedHover", + "layerSelectedHover01", + "layerSelectedHover02", + "layerSelectedHover03", "layerSelectedInverse", "layout", - "layout01", - "layout02", - "layout03", - "layout04", - "layout05", - "layout06", - "layout07", - "legal01", - "legal02", - "link01", - "link02", "linkInverse", + "linkInverseActive", + "linkInverseHover", "linkPrimary", "linkPrimaryHover", "linkSecondary", @@ -276,7 +210,6 @@ Array [ "orange60", "orange70", "overlay", - "overlay01", "print", "productiveHeading01", "productiveHeading02", @@ -314,8 +247,6 @@ Array [ "reset", "rgba", "scale", - "selectedLightUI", - "selectedUI", "shadow", "size2XLarge", "sizeLarge", @@ -323,8 +254,6 @@ Array [ "sizeSmall", "sizeXLarge", "sizeXSmall", - "skeleton01", - "skeleton02", "skeletonBackground", "skeletonElement", "slow01", @@ -344,10 +273,9 @@ Array [ "spacing12", "spacing13", "styles", - "support01", - "support02", - "support03", - "support04", + "supportCautionMajor", + "supportCautionMinor", + "supportCautionUndefined", "supportError", "supportErrorInverse", "supportInfo", @@ -367,11 +295,6 @@ Array [ "teal70", "teal80", "teal90", - "text01", - "text02", - "text03", - "text04", - "text05", "textDisabled", "textError", "textHelper", @@ -383,17 +306,8 @@ Array [ "textSecondary", "themes", "toggleOff", - "tokens", - "ui01", - "ui02", - "ui03", - "ui04", - "ui05", - "uiBackground", - "unstable__meta", "unstable_tokens", - "v9", - "visitedLink", + "v10", "warmGray", "warmGray10", "warmGray100", diff --git a/packages/elements/tasks/build.js b/packages/elements/tasks/build.js deleted file mode 100644 index 2b1b4ba6ed91..000000000000 --- a/packages/elements/tasks/build.js +++ /dev/null @@ -1,80 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -/* eslint-disable no-console */ - -'use strict'; - -const fs = require('fs-extra'); -const klaw = require('klaw-sync'); -const path = require('path'); -const replace = require('replace-in-file'); -const packageJson = require('../package.json'); - -const WORKSPACE_NODE_MODULES = path.resolve(__dirname, '../../../node_modules'); -const BUNDLE_DIR = path.resolve(__dirname, '../scss'); -const dependencies = Object.keys(packageJson.dependencies).map((key) => { - return [key, path.join(WORKSPACE_NODE_MODULES, key)]; -}); - -async function build() { - // Copy scss folders over - await Promise.all( - dependencies.map(async ([_dependency, dependencyPath]) => { - const scssFolder = path.join(dependencyPath, 'scss'); - if (!(await fs.pathExists(scssFolder))) { - return; - } - await fs.copy( - scssFolder, - path.join(BUNDLE_DIR, path.basename(dependencyPath)) - ); - }) - ); - - // Replace `@carbon` imports with relative paths - const paths = klaw(BUNDLE_DIR, { - nodir: true, - filter(item) { - const paths = item.path.split(path.sep); - const filename = paths[paths.length - 1]; - const folder = paths[paths.length - 3]; - - if (folder === 'elements') { - if (filename === 'index.scss' || filename === 'elements.scss') { - return false; - } - } - - return true; - }, - }); - - await Promise.all( - paths.map(async (file) => { - const relativeImportPath = path.relative( - path.dirname(file.path), - BUNDLE_DIR - ); - await replace({ - files: file.path, - // Regex should match the following package patterns: - // @carbon/packagename - // @carbon/package-name - // Where the package name is the captured group in `match` - from: /@carbon\/(\w+[-\w]*)\/scss/g, - to(_, match) { - return `${relativeImportPath}/${match}`; - }, - }); - }) - ); -} - -build().catch((error) => { - console.error(error); -}); diff --git a/packages/elements/tasks/clean.js b/packages/elements/tasks/clean.js deleted file mode 100644 index 3178023fe8c6..000000000000 --- a/packages/elements/tasks/clean.js +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -/* eslint-disable no-console */ - -'use strict'; - -const fs = require('fs-extra'); -const path = require('path'); -const packageJson = require('../package.json'); - -const WORKSPACE_NODE_MODULES = path.resolve(__dirname, '../../../node_modules'); -const BUNDLE_DIR = path.resolve(__dirname, '../scss'); -const dependencies = Object.keys(packageJson.dependencies).map((key) => { - return [key, path.join(WORKSPACE_NODE_MODULES, key)]; -}); - -async function clean() { - await Promise.all( - dependencies.map(([_dependency, dependencyPath]) => { - return fs.remove(path.join(BUNDLE_DIR, path.basename(dependencyPath))); - }) - ); -} - -clean().catch((error) => { - console.error(error); -}); diff --git a/packages/grid/examples/preview/package.json b/packages/grid/examples/preview/package.json index 441c07e030b8..f051b61c690e 100644 --- a/packages/grid/examples/preview/package.json +++ b/packages/grid/examples/preview/package.json @@ -8,6 +8,7 @@ "develop": "parcel index.html --no-cache" }, "devDependencies": { + "@carbon/grid": "^10.41.1", "@parcel/transformer-sass": "^2.0.1", "parcel": "^2.0.1" }, diff --git a/packages/grid/examples/preview/styles.scss b/packages/grid/examples/preview/styles.scss index 6dfc066620cb..38e2e630964a 100644 --- a/packages/grid/examples/preview/styles.scss +++ b/packages/grid/examples/preview/styles.scss @@ -1,4 +1,4 @@ -@import '../../scss/index'; +@import '@carbon/grid/scss/index'; *, *::before, diff --git a/packages/grid/examples/preview/yarn.lock b/packages/grid/examples/preview/yarn.lock index 956e76459502..724e65eeaaba 100644 --- a/packages/grid/examples/preview/yarn.lock +++ b/packages/grid/examples/preview/yarn.lock @@ -309,6 +309,30 @@ __metadata: languageName: node linkType: hard +"@carbon/grid@npm:^10.41.1": + version: 10.43.1 + resolution: "@carbon/grid@npm:10.43.1" + dependencies: + "@carbon/import-once": ^10.7.0 + "@carbon/layout": ^10.37.1 + checksum: d59818f5602b1cada5188982a687ef861c63a2e165ed3266496b0a0b7e2e12528e55d4ac9d7d4134a4f4c19e7e16fd48425e5982279ac86ff914ba879c120a32 + languageName: node + linkType: hard + +"@carbon/import-once@npm:^10.7.0": + version: 10.7.0 + resolution: "@carbon/import-once@npm:10.7.0" + checksum: c92625bc34833073a2b113a9cf014353210570ed1105225e70c6c6d06e5203407aa472d95685a53b6460794408897641b8d8cd5fd6416f8b0fa36c28919bf5f0 + languageName: node + linkType: hard + +"@carbon/layout@npm:^10.37.1": + version: 10.37.1 + resolution: "@carbon/layout@npm:10.37.1" + checksum: baabf7e70e4779f0e5000e700bcafe96f272debaac490a4345e39fedf8d0970636f7099e2607aeb9ca6170a56bbacdff69d8181c2a46ed8adac38fadc08332b6 + languageName: node + linkType: hard + "@iarna/toml@npm:^2.2.0": version: 2.2.5 resolution: "@iarna/toml@npm:2.2.5" @@ -3261,6 +3285,7 @@ fsevents@~2.3.2: version: 0.0.0-use.local resolution: "grid-basic-example@workspace:." dependencies: + "@carbon/grid": ^10.41.1 "@parcel/transformer-sass": ^2.0.1 "@reach/router": ^1.3.3 classnames: ^2.2.6 diff --git a/packages/grid/index.scss b/packages/grid/index.scss index 493712f54a0d..1c290581e81b 100644 --- a/packages/grid/index.scss +++ b/packages/grid/index.scss @@ -5,7 +5,7 @@ // LICENSE file in the root directory of this source tree. // -@forward 'scss/modules/config'; -@forward 'scss/modules/breakpoint'; -@forward 'scss/modules/css-grid'; -@forward 'scss/modules/flex-grid'; +@forward 'scss/config'; +@forward 'scss/breakpoint'; +@forward 'scss/css-grid'; +@forward 'scss/flex-grid'; diff --git a/packages/grid/package.json b/packages/grid/package.json index 3591c80d511b..49a9e2093e6c 100644 --- a/packages/grid/package.json +++ b/packages/grid/package.json @@ -32,7 +32,6 @@ "clean": "rimraf scss/_inlined scss/vendor" }, "dependencies": { - "@carbon/import-once": "^10.7.0", "@carbon/layout": "^10.37.0" }, "devDependencies": { diff --git a/packages/grid/scss/12.scss b/packages/grid/scss/12.scss deleted file mode 100644 index 9cc166539729..000000000000 --- a/packages/grid/scss/12.scss +++ /dev/null @@ -1,41 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'mixins'; - -/// Overrides `$carbon--grid-breakpoints` to use a 12 column grid instead of the default 16 -/// @type Map -/// @access public -/// @group @carbon/grid -$carbon--12-column-grid: map-merge( - $carbon--grid-breakpoints, - ( - lg: - map-merge( - map-get($carbon--grid-breakpoints, lg), - ( - columns: 12, - ) - ), - xlg: - map-merge( - map-get($carbon--grid-breakpoints, xlg), - ( - columns: 12, - ) - ), - max: - map-merge( - map-get($carbon--grid-breakpoints, max), - ( - columns: 12, - ) - ), - ) -); - -@include carbon--grid($breakpoints: $carbon--12-column-grid); diff --git a/packages/grid/scss/modules/_breakpoint.scss b/packages/grid/scss/_breakpoint.scss similarity index 99% rename from packages/grid/scss/modules/_breakpoint.scss rename to packages/grid/scss/_breakpoint.scss index 5723834df205..50fb57f29f16 100644 --- a/packages/grid/scss/modules/_breakpoint.scss +++ b/packages/grid/scss/_breakpoint.scss @@ -8,7 +8,7 @@ @use 'sass:list'; @use 'sass:map'; @use 'sass:meta'; -@use '@carbon/layout/scss/modules/convert'; +@use '@carbon/layout/scss/convert'; @use 'config' as *; /// Provide a map and index, and get back the relevant key value diff --git a/packages/grid/scss/modules/_config.scss b/packages/grid/scss/_config.scss similarity index 97% rename from packages/grid/scss/modules/_config.scss rename to packages/grid/scss/_config.scss index 00efeb0c459d..43e33b4d7bcb 100644 --- a/packages/grid/scss/modules/_config.scss +++ b/packages/grid/scss/_config.scss @@ -6,7 +6,7 @@ // @use 'sass:map'; -@use '@carbon/layout/scss/modules/convert'; +@use '@carbon/layout/scss/convert'; /// Namespace prefix /// @type String diff --git a/packages/grid/scss/modules/_css-grid.scss b/packages/grid/scss/_css-grid.scss similarity index 100% rename from packages/grid/scss/modules/_css-grid.scss rename to packages/grid/scss/_css-grid.scss diff --git a/packages/grid/scss/modules/_flex-grid.scss b/packages/grid/scss/_flex-grid.scss similarity index 100% rename from packages/grid/scss/modules/_flex-grid.scss rename to packages/grid/scss/_flex-grid.scss diff --git a/packages/grid/scss/_mixins.import.scss b/packages/grid/scss/_mixins.import.scss deleted file mode 100644 index 669bc27e453f..000000000000 --- a/packages/grid/scss/_mixins.import.scss +++ /dev/null @@ -1,411 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// -//------------------------------------------- -// Compatibility notes (*.import.scss) -// ------------------------------------------ -// -// This file is intended to be consumed and processed with dart-sass. -// It is incompatible with node-sass/libsass as it contains sass language features -// or functions that are unavailable in node-sass/libsass, such as `math.div`. -// -// The non-`.import` suffixed version of this file eg. `_filename.scss` -// is intended to be compatible with node-sass/libsass. -// -// Styles authored within this file must be duplicated to the corresponding -// compatibility file to ensure we continue to support node-sass and dart-sass -// in v10. - -// Helpers for defining columns, rows, and containers are heavily inspired by, -// and often derived from, bootstrap: -// https://github.com/twbs/bootstrap/blob/v4-dev/scss/mixins/_grid.scss - -@use 'sass:meta'; -@use 'sass:math'; -@import '@carbon/layout/scss/breakpoint'; -@import 'prefix'; - -// ----------------------------------------------------------------------------- -// Columns -// ----------------------------------------------------------------------------- - -/// Used to initialize the default properties for a column class, most notably -/// for setting width and default gutters when a column's breakpoint has not been -/// hit yet. -/// @param {Number} $gutter [$carbon--grid-gutter] - The gutter for the grid system -/// @param {Number} $collapsed-gutter [$carbon--grid-gutter--condensed] - The condensed mode gutter -/// @access private -/// @group @carbon/grid -@mixin carbon--make-col-ready( - $gutter: $carbon--grid-gutter, - $condensed-gutter: $carbon--grid-gutter--condensed -) { - // Prevent columns from becoming too narrow when at smaller grid tiers by - // always setting `width: 100%;`. This works because we use `flex` values - // later on to override this initial width. - width: 100%; - padding-right: $gutter * 0.5; - padding-left: $gutter * 0.5; - - // For our condensed use-case, our gutters collapse to 2px solid, 1px on each - // side. - .#{$prefix}--row--condensed &, - .#{$prefix}--grid--condensed & { - padding-right: $condensed-gutter * 0.5; - padding-left: $condensed-gutter * 0.5; - } - - // For our narrow use-case, our container hangs 16px into the gutter - .#{$prefix}--row--narrow &, - .#{$prefix}--grid--narrow & { - padding-right: $gutter * 0.5; - padding-left: 0; - } -} - -/// Define the width of the column for a given span and column count. -/// A width of 0 will hide the column entirely. -/// @param {Number} $span - The number of columns covered -/// @param {Number} $columns - The total number of columns available -/// @access private -/// @group @carbon/grid -@mixin carbon--make-col($span, $columns) { - @if $span == 0 { - display: none; - } @else { - // Explicitly include `display: block` to override - display: block; - // Add a `max-width` to ensure content within each column does not blow out - // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari - // do not appear to require this. - @if meta.function-exists('div', 'math') { - max-width: percentage(math.div($span, $columns)); - flex: 0 0 percentage(math.div($span, $columns)); - } @else { - max-width: percentage(($span / $columns)); - flex: 0 0 percentage(($span / $columns)); - } - } -} - -/// Create a column offset for a given span and column count. -/// @param {Number} $span - The number of columns the offset should cover -/// @param {Number} $columns - The total number of columns available -/// @access private -/// @group @carbon/grid -@mixin carbon--make-col-offset($span, $columns) { - $offset: 0; - @if meta.function-exists('div', 'math') { - $offset: math.div($span, $columns); - } @else { - $offset: ($span / $columns); - } - @if $offset == 0 { - margin-left: 0; - } @else { - margin-left: percentage($offset); - } -} - -/// Output the CSS required for all the columns in a given grid system. -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - The breakpoints in the grid system -/// @param {Number} $gutter [$carbon--grid-gutter] - The gutter for the grid system -/// @access private -/// @group @carbon/grid -@mixin carbon--make-grid-columns( - $breakpoints: $carbon--grid-breakpoints, - $gutter: $carbon--grid-gutter -) { - .#{$prefix}--col { - @include carbon--make-col-ready($gutter); - } - - @each $breakpoint in map-keys($breakpoints) { - $infix: carbon--breakpoint-infix($breakpoint); - $columns: map-get(map-get($breakpoints, $breakpoint), columns); - - // Allow columns to stretch full width below their breakpoints - @for $i from 0 through $columns { - .#{$prefix}--col#{$infix}-#{$i} { - @include carbon--make-col-ready($gutter); - } - } - - .#{$prefix}--col#{$infix}, - .#{$prefix}--col#{$infix}--auto { - @include carbon--make-col-ready($gutter); - } - - @include carbon--breakpoint($breakpoint, $breakpoints) { - // Provide basic `.col-{bp}` classes for equal-width flexbox columns - .#{$prefix}--col, - .#{$prefix}--col#{$infix} { - max-width: 100%; - flex-basis: 0; - flex-grow: 1; - } - - .#{$prefix}--col--auto, - .#{$prefix}--col#{$infix}--auto { - width: auto; - // Reset earlier grid tiers - max-width: 100%; - flex: 1 0 0%; - } - - @for $i from 0 through $columns { - .#{$prefix}--col#{$infix}-#{$i} { - @include carbon--make-col($i, $columns); - } - } - - @for $i from 0 through ($columns - 1) { - @if not($infix == '') { - .#{$prefix}--offset#{$infix}-#{$i} { - @include carbon--make-col-offset($i, $columns); - } - } - } - } - } -} - -// ----------------------------------------------------------------------------- -// Rows -// ----------------------------------------------------------------------------- - -/// Define the properties for a selector assigned to a row in the grid system. -/// @param {Number} $gutter [$carbon--grid-gutter] - The gutter in the grid system -/// @access private -/// @group @carbon/grid -@mixin carbon--make-row($gutter: $carbon--grid-gutter) { - display: flex; - flex-wrap: wrap; - margin-right: -1 * $gutter * 0.5; - margin-left: -1 * $gutter * 0.5; -} - -// ----------------------------------------------------------------------------- -// No gutter -// ----------------------------------------------------------------------------- - -/// Add `no-gutter` and `no-gutter--{start,end}` classes to the output CSS. These -/// classes are useful for dropping the gutter in fluid situations. -/// @access private -/// @group @carbon/grid -@mixin carbon--no-gutter { - .#{$prefix}--no-gutter, - .#{$prefix}--row.#{$prefix}--no-gutter [class*='#{$prefix}--col'] { - padding-right: 0; - padding-left: 0; - } - - .#{$prefix}--no-gutter--start, - .#{$prefix}--row.#{$prefix}--no-gutter--start [class*='#{$prefix}--col'] { - padding-left: 0; - } - - .#{$prefix}--no-gutter--end, - .#{$prefix}--row.#{$prefix}--no-gutter--end [class*='#{$prefix}--col'] { - padding-right: 0; - } -} - -// ----------------------------------------------------------------------------- -// Hang -// ----------------------------------------------------------------------------- - -/// Add `hang--start` and `hang--end` classes for a given gutter. These classes are -/// used alongside `no-gutter--start` and `no-gutter--end` to "hang" type. -/// @param {Number} $gutter [$carbon--grid-gutter] - The gutter in the grid system -/// @access private -/// @group @carbon/grid -@mixin carbon--hang($gutter: $carbon--grid-gutter) { - .#{$prefix}--hang--start { - padding-left: $gutter * 0.5; - } - - .#{$prefix}--hang--end { - padding-right: $gutter * 0.5; - } -} - -// ----------------------------------------------------------------------------- -// Aspect ratio -// ----------------------------------------------------------------------------- - -/// The aspect ratios that are used to generate corresponding aspect ratio -/// classes in code -/// @type List -/// @access public -/// @group @carbon/grid -$carbon--aspect-ratios: ( - (16, 9), - (9, 16), - (2, 1), - (1, 2), - (4, 3), - (3, 4), - (3, 2), - (2, 3), - (1, 1) -); - -/// Generates the CSS classname utilities for the aspect ratios -/// -/// CSS Tricks article on aspect ratios and all the different ways it can be done. -/// https://css-tricks.com/aspect-ratio-boxes/#article-header-id-6 -/// -/// That article references an earlier article on the topic. -/// https://keithjgrant.com/posts/2017/03/aspect-ratios/ -/// -/// @param {Number} $width width from an aspect ratio -/// @param {Number} $height height from an aspect ratio -/// @access private -/// @group @carbon/grid -@mixin carbon--aspect-ratio($aspect-ratios: $carbon--aspect-ratios) { - .#{$prefix}--aspect-ratio { - position: relative; - } - - .#{$prefix}--aspect-ratio::before { - width: 1px; - height: 0; - margin-left: -1px; - content: ''; - float: left; - } - - .#{$prefix}--aspect-ratio::after { - display: table; - clear: both; - content: ''; - } - - @each $aspect-ratio in $aspect-ratios { - $width: nth($aspect-ratio, 1); - $height: nth($aspect-ratio, 2); - - .#{$prefix}--aspect-ratio--#{$width}x#{$height}::before { - @if meta.function-exists('div', 'math') { - padding-top: percentage(math.div($height, $width)); - } @else { - padding-top: percentage(($height / $width)); - } - } - } - - // leaving here for legacy support - .#{$prefix}--aspect-ratio--object { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - } -} - -// ----------------------------------------------------------------------------- -// Grid -// ----------------------------------------------------------------------------- - -/// Create the container for a grid. Will cause full-bleed for the grid unless -/// max-width properties are added with `make-container-max-widths` -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @access private -/// @group @carbon/grid -@mixin carbon--make-container($breakpoints: $carbon--grid-breakpoints) { - margin-right: auto; - margin-left: auto; - - @include carbon--set-largest-breakpoint(); - - @each $name, $value in $breakpoints { - $prev-breakpoint: map-get($breakpoints, carbon--breakpoint-prev($name)); - $margin: map-get($value, margin); - - @if $prev-breakpoint { - $prev-margin: map-get($prev-breakpoint, margin); - @if $prev-margin != $margin { - @include carbon--breakpoint($name) { - padding-right: #{($carbon--grid-gutter * 0.5) + $margin}; - padding-left: #{($carbon--grid-gutter * 0.5) + $margin}; - } - } - } @else { - @include carbon--breakpoint($name) { - padding-right: #{($carbon--grid-gutter * 0.5) + $margin}; - padding-left: #{($carbon--grid-gutter * 0.5) + $margin}; - } - } - } -} - -/// Get the last breakpoint width and set max-width to its value -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @access private -/// @group @carbon/grid -@mixin carbon--set-largest-breakpoint($breakpoints: $carbon--grid-breakpoints) { - $largest-breakpoint: last-map-item($breakpoints); - - max-width: map-get($largest-breakpoint, 'width'); -} - -/// Add in the max-widths for each breakpoint to the container -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @access private -/// @group @carbon/grid -@mixin carbon--make-container-max-widths( - $breakpoints: $carbon--grid-breakpoints -) { - @each $name, $value in $breakpoints { - @include carbon--breakpoint($name) { - max-width: map-get($value, width); - } - } -} - -/// Generate the CSS for a grid for the given breakpoints and gutters -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - The default breakpoints -/// @param {Number} $grid-gutter [$carbon--grid-gutter] - The default gutters -/// @param {Number} $condensed-gutter [$carbon--grid-gutter--condensed] - The condensed mode gutter -/// @access public -/// @group @carbon/grid -@mixin carbon--grid( - $breakpoints: $carbon--grid-breakpoints, - $grid-gutter: $carbon--grid-gutter, - $condensed-gutter: $carbon--grid-gutter--condensed -) { - .#{$prefix}--grid { - @include carbon--make-container($breakpoints); - } - - @include carbon--largest-breakpoint($breakpoints) { - .#{$prefix}--grid--full-width { - max-width: 100%; - } - } - - .#{$prefix}--row { - @include carbon--make-row(); - } - - .#{$prefix}--row-padding [class*='#{$prefix}--col'], - .#{$prefix}--col-padding { - padding-top: $grid-gutter * 0.5; - padding-bottom: $grid-gutter * 0.5; - } - - .#{$prefix}--grid--condensed [class*='#{$prefix}--col'] { - padding-top: $condensed-gutter * 0.5; - padding-bottom: $condensed-gutter * 0.5; - } - - @include carbon--make-grid-columns($breakpoints, $grid-gutter); - @include carbon--no-gutter(); - @include carbon--hang($grid-gutter); - @include carbon--aspect-ratio(); -} diff --git a/packages/grid/scss/_mixins.scss b/packages/grid/scss/_mixins.scss index 639a02459e64..fcdbc35d1ebf 100644 --- a/packages/grid/scss/_mixins.scss +++ b/packages/grid/scss/_mixins.scss @@ -4,27 +4,12 @@ // This source code is licensed under the Apache-2.0 license found in the // LICENSE file in the root directory of this source tree. // -//------------------------------------------- -// Compatibility notes -// ------------------------------------------ -// -// This file is intended to be consumed and processed with node-sass/libsass. -// Sass language features only available in dart-sass, such as `math.div`, -// should not be used. -// -// The `.import` suffixed version of this file eg. `_filename.import.scss` -// is intended to be compatible with dart-sass. -// -// Styles authored within this file must be duplicated to the corresponding -// compatibility file to ensure we continue to support node-sass and dart-sass -// in v10. -// Helpers for defining columns, rows, and containers are heavily inspired by, -// and often derived from, bootstrap: -// https://github.com/twbs/bootstrap/blob/v4-dev/scss/mixins/_grid.scss +@use 'sass:meta'; +@use "sass:math"; -@import '@carbon/layout/scss/breakpoint'; -@import 'prefix'; +@use 'config' as *; +@use 'breakpoint' as *; // ----------------------------------------------------------------------------- // Columns @@ -33,33 +18,33 @@ /// Used to initialize the default properties for a column class, most notably /// for setting width and default gutters when a column's breakpoint has not been /// hit yet. -/// @param {Number} $gutter [$carbon--grid-gutter] - The gutter for the grid system -/// @param {Number} $collapsed-gutter [$carbon--grid-gutter--condensed] - The condensed mode gutter +/// @param {Number} $gutter [$grid-gutter] - The gutter for the grid system +/// @param {Number} $collapsed-gutter [$grid-gutter--condensed] - The condensed mode gutter /// @access private /// @group @carbon/grid -@mixin carbon--make-col-ready( - $gutter: $carbon--grid-gutter, - $condensed-gutter: $carbon--grid-gutter--condensed +@mixin -make-col-ready( + $gutter: $grid-gutter, + $condensed-gutter: $grid-gutter--condensed ) { // Prevent columns from becoming too narrow when at smaller grid tiers by // always setting `width: 100%;`. This works because we use `flex` values // later on to override this initial width. width: 100%; - padding-right: ($gutter / 2); - padding-left: ($gutter / 2); + padding-right: ($gutter * 0.5); + padding-left: ($gutter * 0.5); // For our condensed use-case, our gutters collapse to 2px solid, 1px on each // side. .#{$prefix}--row--condensed &, .#{$prefix}--grid--condensed & { - padding-right: ($condensed-gutter / 2); - padding-left: ($condensed-gutter / 2); + padding-right: ($condensed-gutter * 0.5); + padding-left: ($condensed-gutter * 0.5); } // For our narrow use-case, our container hangs 16px into the gutter .#{$prefix}--row--narrow &, .#{$prefix}--grid--narrow & { - padding-right: ($gutter / 2); + padding-right: ($gutter * 0.5); padding-left: 0; } } @@ -70,7 +55,7 @@ /// @param {Number} $columns - The total number of columns available /// @access private /// @group @carbon/grid -@mixin carbon--make-col($span, $columns) { +@mixin -make-col($span, $columns) { @if $span == 0 { display: none; } @else { @@ -79,8 +64,13 @@ // Add a `max-width` to ensure content within each column does not blow out // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari // do not appear to require this. - max-width: percentage($span / $columns); - flex: 0 0 percentage($span / $columns); + @if meta.function-exists('div', 'math') { + max-width: math.percentage(math.div($span, $columns)); + flex: 0 0 math.percentage(math.div($span, $columns)); + } @else { + max-width: math.percentage(($span / $columns)); + flex: 0 0 math.percentage(($span / $columns)); + } } } @@ -89,45 +79,50 @@ /// @param {Number} $columns - The total number of columns available /// @access private /// @group @carbon/grid -@mixin carbon--make-col-offset($span, $columns) { - $offset: $span / $columns; +@mixin -make-col-offset($span, $columns) { + $offset: 0; + @if meta.function-exists('div', 'math') { + $offset: math.div($span, $columns); + } @else { + $offset: ($span / $columns); + } @if $offset == 0 { margin-left: 0; } @else { - margin-left: percentage($offset); + margin-left: math.percentage($offset); } } /// Output the CSS required for all the columns in a given grid system. -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - The breakpoints in the grid system -/// @param {Number} $gutter [$carbon--grid-gutter] - The gutter for the grid system +/// @param {Map} $breakpoints [$grid-breakpoints] - The breakpoints in the grid system +/// @param {Number} $gutter [$grid-gutter] - The gutter for the grid system /// @access private /// @group @carbon/grid -@mixin carbon--make-grid-columns( - $breakpoints: $carbon--grid-breakpoints, - $gutter: $carbon--grid-gutter +@mixin -make-grid-columns( + $breakpoints: $grid-breakpoints, + $gutter: $grid-gutter ) { .#{$prefix}--col { - @include carbon--make-col-ready($gutter); + @include -make-col-ready($gutter); } @each $breakpoint in map-keys($breakpoints) { - $infix: carbon--breakpoint-infix($breakpoint); - $columns: map-get(map-get($breakpoints, $breakpoint), columns); + $infix: breakpoint-infix($breakpoint); + $columns: map.get(map.get($breakpoints, $breakpoint), columns); // Allow columns to stretch full width below their breakpoints @for $i from 0 through $columns { .#{$prefix}--col#{$infix}-#{$i} { - @include carbon--make-col-ready($gutter); + @include -make-col-ready($gutter); } } .#{$prefix}--col#{$infix}, .#{$prefix}--col#{$infix}--auto { - @include carbon--make-col-ready($gutter); + @include -make-col-ready($gutter); } - @include carbon--breakpoint($breakpoint, $breakpoints) { + @include breakpoint($breakpoint, $breakpoints) { // Provide basic `.col-{bp}` classes for equal-width flexbox columns .#{$prefix}--col, .#{$prefix}--col#{$infix} { @@ -146,14 +141,14 @@ @for $i from 0 through $columns { .#{$prefix}--col#{$infix}-#{$i} { - @include carbon--make-col($i, $columns); + @include -make-col($i, $columns); } } @for $i from 0 through ($columns - 1) { @if not($infix == '') { .#{$prefix}--offset#{$infix}-#{$i} { - @include carbon--make-col-offset($i, $columns); + @include -make-col-offset($i, $columns); } } } @@ -166,14 +161,14 @@ // ----------------------------------------------------------------------------- /// Define the properties for a selector assigned to a row in the grid system. -/// @param {Number} $gutter [$carbon--grid-gutter] - The gutter in the grid system +/// @param {Number} $gutter [$grid-gutter] - The gutter in the grid system /// @access private /// @group @carbon/grid -@mixin carbon--make-row($gutter: $carbon--grid-gutter) { +@mixin make-row($gutter: $grid-gutter) { display: flex; flex-wrap: wrap; - margin-right: -1 * $gutter / 2; - margin-left: -1 * $gutter / 2; + margin-right: -1 * $gutter * 0.5; + margin-left: -1 * $gutter * 0.5; } // ----------------------------------------------------------------------------- @@ -184,7 +179,7 @@ /// classes are useful for dropping the gutter in fluid situations. /// @access private /// @group @carbon/grid -@mixin carbon--no-gutter { +@mixin -no-gutter { .#{$prefix}--no-gutter, .#{$prefix}--row.#{$prefix}--no-gutter [class*='#{$prefix}--col'] { padding-right: 0; @@ -208,87 +203,16 @@ /// Add `hang--start` and `hang--end` classes for a given gutter. These classes are /// used alongside `no-gutter--start` and `no-gutter--end` to "hang" type. -/// @param {Number} $gutter [$carbon--grid-gutter] - The gutter in the grid system +/// @param {Number} $gutter [$grid-gutter] - The gutter in the grid system /// @access private /// @group @carbon/grid -@mixin carbon--hang($gutter: $carbon--grid-gutter) { +@mixin -hang($gutter: $grid-gutter) { .#{$prefix}--hang--start { - padding-left: ($gutter / 2); + padding-left: ($gutter * 0.5); } .#{$prefix}--hang--end { - padding-right: ($gutter / 2); - } -} - -// ----------------------------------------------------------------------------- -// Aspect ratio -// ----------------------------------------------------------------------------- - -/// The aspect ratios that are used to generate corresponding aspect ratio -/// classes in code -/// @type List -/// @access public -/// @group @carbon/grid -$carbon--aspect-ratios: ( - (16, 9), - (9, 16), - (2, 1), - (1, 2), - (4, 3), - (3, 4), - (3, 2), - (2, 3), - (1, 1) -); - -/// Generates the CSS classname utilities for the aspect ratios -/// -/// CSS Tricks article on aspect ratios and all the different ways it can be done. -/// https://css-tricks.com/aspect-ratio-boxes/#article-header-id-6 -/// -/// That article references an earlier article on the topic. -/// https://keithjgrant.com/posts/2017/03/aspect-ratios/ -/// -/// @param {Number} $width width from an aspect ratio -/// @param {Number} $height height from an aspect ratio -/// @access private -/// @group @carbon/grid -@mixin carbon--aspect-ratio($aspect-ratios: $carbon--aspect-ratios) { - .#{$prefix}--aspect-ratio { - position: relative; - } - - .#{$prefix}--aspect-ratio::before { - width: 1px; - height: 0; - margin-left: -1px; - content: ''; - float: left; - } - - .#{$prefix}--aspect-ratio::after { - display: table; - clear: both; - content: ''; - } - - @each $aspect-ratio in $aspect-ratios { - $width: nth($aspect-ratio, 1); - $height: nth($aspect-ratio, 2); - - .#{$prefix}--aspect-ratio--#{$width}x#{$height}::before { - padding-top: percentage($height / $width); - } - } - - // leaving here for legacy support - .#{$prefix}--aspect-ratio--object { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; + padding-right: ($gutter * 0.5); } } @@ -297,99 +221,96 @@ $carbon--aspect-ratios: ( // ----------------------------------------------------------------------------- /// Create the container for a grid. Will cause full-bleed for the grid unless -/// max-width properties are added with `make-container-max-widths` -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name +/// max-width properties are added with `-make-container-max-widths` +/// @param {Map} $breakpoints [$grid-breakpoints] - A map of breakpoints where the key is the name /// @access private /// @group @carbon/grid -@mixin carbon--make-container($breakpoints: $carbon--grid-breakpoints) { +@mixin -make-container($breakpoints: $grid-breakpoints) { margin-right: auto; margin-left: auto; - @include carbon--set-largest-breakpoint(); + @include -set-largest-breakpoint(); @each $name, $value in $breakpoints { - $prev-breakpoint: map-get($breakpoints, carbon--breakpoint-prev($name)); - $margin: map-get($value, margin); + $prev-breakpoint: map.get($breakpoints, breakpoint-prev($name)); + $margin: map.get($value, margin); @if $prev-breakpoint { - $prev-margin: map-get($prev-breakpoint, margin); + $prev-margin: map.get($prev-breakpoint, margin); @if $prev-margin != $margin { - @include carbon--breakpoint($name) { - padding-right: #{($carbon--grid-gutter / 2) + $margin}; - padding-left: #{($carbon--grid-gutter / 2) + $margin}; + @include breakpoint($name) { + padding-right: #{($grid-gutter * 0.5) + $margin}; + padding-left: #{($grid-gutter * 0.5) + $margin}; } } } @else { - @include carbon--breakpoint($name) { - padding-right: #{($carbon--grid-gutter / 2) + $margin}; - padding-left: #{($carbon--grid-gutter / 2) + $margin}; + @include breakpoint($name) { + padding-right: #{($grid-gutter * 0.5) + $margin}; + padding-left: #{($grid-gutter * 0.5) + $margin}; } } } } /// Get the last breakpoint width and set max-width to its value -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name +/// @param {Map} $breakpoints [$grid-breakpoints] - A map of breakpoints where the key is the name /// @access private /// @group @carbon/grid -@mixin carbon--set-largest-breakpoint($breakpoints: $carbon--grid-breakpoints) { +@mixin -set-largest-breakpoint($breakpoints: $grid-breakpoints) { $largest-breakpoint: last-map-item($breakpoints); - max-width: map-get($largest-breakpoint, 'width'); + max-width: map.get($largest-breakpoint, 'width'); } /// Add in the max-widths for each breakpoint to the container -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name +/// @param {Map} $breakpoints [$grid-breakpoints] - A map of breakpoints where the key is the name /// @access private /// @group @carbon/grid -@mixin carbon--make-container-max-widths( - $breakpoints: $carbon--grid-breakpoints -) { +@mixin -make-container-max-widths($breakpoints: $grid-breakpoints) { @each $name, $value in $breakpoints { - @include carbon--breakpoint($name) { - max-width: map-get($value, width); + @include breakpoint($name) { + max-width: map.get($value, width); } } } /// Generate the CSS for a grid for the given breakpoints and gutters -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - The default breakpoints -/// @param {Number} $grid-gutter [$carbon--grid-gutter] - The default gutters -/// @param {Number} $condensed-gutter [$carbon--grid-gutter--condensed] - The condensed mode gutter +/// @param {Map} $breakpoints [$grid-breakpoints] - The default breakpoints +/// @param {Number} $grid-gutter [$grid-gutter] - The default gutters +/// @param {Number} $condensed-gutter [$grid-gutter--condensed] - The condensed mode gutter /// @access public /// @group @carbon/grid -@mixin carbon--grid( - $breakpoints: $carbon--grid-breakpoints, - $grid-gutter: $carbon--grid-gutter, - $condensed-gutter: $carbon--grid-gutter--condensed +@mixin grid( + $breakpoints: $grid-breakpoints, + $grid-gutter: $grid-gutter, + $condensed-gutter: $grid-gutter--condensed ) { .#{$prefix}--grid { - @include carbon--make-container($breakpoints); + @include -make-container($breakpoints); } - @include carbon--largest-breakpoint($breakpoints) { + @include largest-breakpoint($breakpoints) { .#{$prefix}--grid--full-width { max-width: 100%; } } .#{$prefix}--row { - @include carbon--make-row(); + @include make-row(); } .#{$prefix}--row-padding [class*='#{$prefix}--col'], .#{$prefix}--col-padding { - padding-top: $grid-gutter / 2; - padding-bottom: $grid-gutter / 2; + padding-top: $grid-gutter * 0.5; + padding-bottom: $grid-gutter * 0.5; } .#{$prefix}--grid--condensed [class*='#{$prefix}--col'] { - padding-top: $condensed-gutter / 2; - padding-bottom: $condensed-gutter / 2; + padding-top: $condensed-gutter * 0.5; + padding-bottom: $condensed-gutter * 0.5; } - @include carbon--make-grid-columns($breakpoints, $grid-gutter); - @include carbon--no-gutter(); - @include carbon--hang($grid-gutter); - @include carbon--aspect-ratio(); + @include -make-grid-columns($breakpoints, $grid-gutter); + @include -no-gutter(); + @include -hang($grid-gutter); } diff --git a/packages/grid/scss/_prefix.scss b/packages/grid/scss/_prefix.scss deleted file mode 100644 index 7598b1e4c065..000000000000 --- a/packages/grid/scss/_prefix.scss +++ /dev/null @@ -1,12 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -/// Namespace prefix -/// @type String -/// @access public -/// @group @carbon/grid -$prefix: 'bx' !default; diff --git a/packages/grid/scss/grid.scss b/packages/grid/scss/grid.scss deleted file mode 100644 index d3c2e6f4b9d4..000000000000 --- a/packages/grid/scss/grid.scss +++ /dev/null @@ -1,10 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import './_inlined/mixins'; - -@include carbon--grid(); diff --git a/packages/grid/scss/index.scss b/packages/grid/scss/index.scss deleted file mode 100644 index 6e4772178b3d..000000000000 --- a/packages/grid/scss/index.scss +++ /dev/null @@ -1,10 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'mixins'; - -@include carbon--grid(); diff --git a/packages/grid/scss/modules/_mixins.scss b/packages/grid/scss/modules/_mixins.scss deleted file mode 100644 index fcdbc35d1ebf..000000000000 --- a/packages/grid/scss/modules/_mixins.scss +++ /dev/null @@ -1,316 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@use 'sass:meta'; -@use "sass:math"; - -@use 'config' as *; -@use 'breakpoint' as *; - -// ----------------------------------------------------------------------------- -// Columns -// ----------------------------------------------------------------------------- - -/// Used to initialize the default properties for a column class, most notably -/// for setting width and default gutters when a column's breakpoint has not been -/// hit yet. -/// @param {Number} $gutter [$grid-gutter] - The gutter for the grid system -/// @param {Number} $collapsed-gutter [$grid-gutter--condensed] - The condensed mode gutter -/// @access private -/// @group @carbon/grid -@mixin -make-col-ready( - $gutter: $grid-gutter, - $condensed-gutter: $grid-gutter--condensed -) { - // Prevent columns from becoming too narrow when at smaller grid tiers by - // always setting `width: 100%;`. This works because we use `flex` values - // later on to override this initial width. - width: 100%; - padding-right: ($gutter * 0.5); - padding-left: ($gutter * 0.5); - - // For our condensed use-case, our gutters collapse to 2px solid, 1px on each - // side. - .#{$prefix}--row--condensed &, - .#{$prefix}--grid--condensed & { - padding-right: ($condensed-gutter * 0.5); - padding-left: ($condensed-gutter * 0.5); - } - - // For our narrow use-case, our container hangs 16px into the gutter - .#{$prefix}--row--narrow &, - .#{$prefix}--grid--narrow & { - padding-right: ($gutter * 0.5); - padding-left: 0; - } -} - -/// Define the width of the column for a given span and column count. -/// A width of 0 will hide the column entirely. -/// @param {Number} $span - The number of columns covered -/// @param {Number} $columns - The total number of columns available -/// @access private -/// @group @carbon/grid -@mixin -make-col($span, $columns) { - @if $span == 0 { - display: none; - } @else { - // Explicitly include `display: block` to override - display: block; - // Add a `max-width` to ensure content within each column does not blow out - // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari - // do not appear to require this. - @if meta.function-exists('div', 'math') { - max-width: math.percentage(math.div($span, $columns)); - flex: 0 0 math.percentage(math.div($span, $columns)); - } @else { - max-width: math.percentage(($span / $columns)); - flex: 0 0 math.percentage(($span / $columns)); - } - } -} - -/// Create a column offset for a given span and column count. -/// @param {Number} $span - The number of columns the offset should cover -/// @param {Number} $columns - The total number of columns available -/// @access private -/// @group @carbon/grid -@mixin -make-col-offset($span, $columns) { - $offset: 0; - @if meta.function-exists('div', 'math') { - $offset: math.div($span, $columns); - } @else { - $offset: ($span / $columns); - } - @if $offset == 0 { - margin-left: 0; - } @else { - margin-left: math.percentage($offset); - } -} - -/// Output the CSS required for all the columns in a given grid system. -/// @param {Map} $breakpoints [$grid-breakpoints] - The breakpoints in the grid system -/// @param {Number} $gutter [$grid-gutter] - The gutter for the grid system -/// @access private -/// @group @carbon/grid -@mixin -make-grid-columns( - $breakpoints: $grid-breakpoints, - $gutter: $grid-gutter -) { - .#{$prefix}--col { - @include -make-col-ready($gutter); - } - - @each $breakpoint in map-keys($breakpoints) { - $infix: breakpoint-infix($breakpoint); - $columns: map.get(map.get($breakpoints, $breakpoint), columns); - - // Allow columns to stretch full width below their breakpoints - @for $i from 0 through $columns { - .#{$prefix}--col#{$infix}-#{$i} { - @include -make-col-ready($gutter); - } - } - - .#{$prefix}--col#{$infix}, - .#{$prefix}--col#{$infix}--auto { - @include -make-col-ready($gutter); - } - - @include breakpoint($breakpoint, $breakpoints) { - // Provide basic `.col-{bp}` classes for equal-width flexbox columns - .#{$prefix}--col, - .#{$prefix}--col#{$infix} { - max-width: 100%; - flex-basis: 0; - flex-grow: 1; - } - - .#{$prefix}--col--auto, - .#{$prefix}--col#{$infix}--auto { - width: auto; - // Reset earlier grid tiers - max-width: 100%; - flex: 1 0 0%; - } - - @for $i from 0 through $columns { - .#{$prefix}--col#{$infix}-#{$i} { - @include -make-col($i, $columns); - } - } - - @for $i from 0 through ($columns - 1) { - @if not($infix == '') { - .#{$prefix}--offset#{$infix}-#{$i} { - @include -make-col-offset($i, $columns); - } - } - } - } - } -} - -// ----------------------------------------------------------------------------- -// Rows -// ----------------------------------------------------------------------------- - -/// Define the properties for a selector assigned to a row in the grid system. -/// @param {Number} $gutter [$grid-gutter] - The gutter in the grid system -/// @access private -/// @group @carbon/grid -@mixin make-row($gutter: $grid-gutter) { - display: flex; - flex-wrap: wrap; - margin-right: -1 * $gutter * 0.5; - margin-left: -1 * $gutter * 0.5; -} - -// ----------------------------------------------------------------------------- -// No gutter -// ----------------------------------------------------------------------------- - -/// Add `no-gutter` and `no-gutter--{start,end}` classes to the output CSS. These -/// classes are useful for dropping the gutter in fluid situations. -/// @access private -/// @group @carbon/grid -@mixin -no-gutter { - .#{$prefix}--no-gutter, - .#{$prefix}--row.#{$prefix}--no-gutter [class*='#{$prefix}--col'] { - padding-right: 0; - padding-left: 0; - } - - .#{$prefix}--no-gutter--start, - .#{$prefix}--row.#{$prefix}--no-gutter--start [class*='#{$prefix}--col'] { - padding-left: 0; - } - - .#{$prefix}--no-gutter--end, - .#{$prefix}--row.#{$prefix}--no-gutter--end [class*='#{$prefix}--col'] { - padding-right: 0; - } -} - -// ----------------------------------------------------------------------------- -// Hang -// ----------------------------------------------------------------------------- - -/// Add `hang--start` and `hang--end` classes for a given gutter. These classes are -/// used alongside `no-gutter--start` and `no-gutter--end` to "hang" type. -/// @param {Number} $gutter [$grid-gutter] - The gutter in the grid system -/// @access private -/// @group @carbon/grid -@mixin -hang($gutter: $grid-gutter) { - .#{$prefix}--hang--start { - padding-left: ($gutter * 0.5); - } - - .#{$prefix}--hang--end { - padding-right: ($gutter * 0.5); - } -} - -// ----------------------------------------------------------------------------- -// Grid -// ----------------------------------------------------------------------------- - -/// Create the container for a grid. Will cause full-bleed for the grid unless -/// max-width properties are added with `-make-container-max-widths` -/// @param {Map} $breakpoints [$grid-breakpoints] - A map of breakpoints where the key is the name -/// @access private -/// @group @carbon/grid -@mixin -make-container($breakpoints: $grid-breakpoints) { - margin-right: auto; - margin-left: auto; - - @include -set-largest-breakpoint(); - - @each $name, $value in $breakpoints { - $prev-breakpoint: map.get($breakpoints, breakpoint-prev($name)); - $margin: map.get($value, margin); - - @if $prev-breakpoint { - $prev-margin: map.get($prev-breakpoint, margin); - @if $prev-margin != $margin { - @include breakpoint($name) { - padding-right: #{($grid-gutter * 0.5) + $margin}; - padding-left: #{($grid-gutter * 0.5) + $margin}; - } - } - } @else { - @include breakpoint($name) { - padding-right: #{($grid-gutter * 0.5) + $margin}; - padding-left: #{($grid-gutter * 0.5) + $margin}; - } - } - } -} - -/// Get the last breakpoint width and set max-width to its value -/// @param {Map} $breakpoints [$grid-breakpoints] - A map of breakpoints where the key is the name -/// @access private -/// @group @carbon/grid -@mixin -set-largest-breakpoint($breakpoints: $grid-breakpoints) { - $largest-breakpoint: last-map-item($breakpoints); - - max-width: map.get($largest-breakpoint, 'width'); -} - -/// Add in the max-widths for each breakpoint to the container -/// @param {Map} $breakpoints [$grid-breakpoints] - A map of breakpoints where the key is the name -/// @access private -/// @group @carbon/grid -@mixin -make-container-max-widths($breakpoints: $grid-breakpoints) { - @each $name, $value in $breakpoints { - @include breakpoint($name) { - max-width: map.get($value, width); - } - } -} - -/// Generate the CSS for a grid for the given breakpoints and gutters -/// @param {Map} $breakpoints [$grid-breakpoints] - The default breakpoints -/// @param {Number} $grid-gutter [$grid-gutter] - The default gutters -/// @param {Number} $condensed-gutter [$grid-gutter--condensed] - The condensed mode gutter -/// @access public -/// @group @carbon/grid -@mixin grid( - $breakpoints: $grid-breakpoints, - $grid-gutter: $grid-gutter, - $condensed-gutter: $grid-gutter--condensed -) { - .#{$prefix}--grid { - @include -make-container($breakpoints); - } - - @include largest-breakpoint($breakpoints) { - .#{$prefix}--grid--full-width { - max-width: 100%; - } - } - - .#{$prefix}--row { - @include make-row(); - } - - .#{$prefix}--row-padding [class*='#{$prefix}--col'], - .#{$prefix}--col-padding { - padding-top: $grid-gutter * 0.5; - padding-bottom: $grid-gutter * 0.5; - } - - .#{$prefix}--grid--condensed [class*='#{$prefix}--col'] { - padding-top: $condensed-gutter * 0.5; - padding-bottom: $condensed-gutter * 0.5; - } - - @include -make-grid-columns($breakpoints, $grid-gutter); - @include -no-gutter(); - @include -hang($grid-gutter); -} diff --git a/packages/icons/examples/preview/package.json b/packages/icons/examples/preview/package.json index a0dece5e2ec8..77e8a49abf5e 100644 --- a/packages/icons/examples/preview/package.json +++ b/packages/icons/examples/preview/package.json @@ -8,6 +8,7 @@ "develop": "parcel index.html --no-cache" }, "devDependencies": { + "@carbon/elements": "^10.55.0", "@parcel/transformer-sass": "^2.0.1", "parcel": "^2.0.1" }, diff --git a/packages/icons/examples/preview/styles.scss b/packages/icons/examples/preview/styles.scss index 6559734bb2ea..68eb7468725c 100644 --- a/packages/icons/examples/preview/styles.scss +++ b/packages/icons/examples/preview/styles.scss @@ -1,6 +1,6 @@ -@import '../../../elements/scss/elements'; -@import '../../../elements/scss/type/font-face/mono'; -@import '../../../elements/scss/type/font-face/sans'; +@import '@carbon/elements/scss/elements'; +@import '@carbon/elements/scss/type/font-face/mono'; +@import '@carbon/elements/scss/type/font-face/sans'; @include carbon--font-face-sans(); @include carbon--font-face-mono(); diff --git a/packages/icons/examples/preview/yarn.lock b/packages/icons/examples/preview/yarn.lock index d81b51609cb1..59891eeb9fd8 100644 --- a/packages/icons/examples/preview/yarn.lock +++ b/packages/icons/examples/preview/yarn.lock @@ -309,6 +309,89 @@ __metadata: languageName: node linkType: hard +"@carbon/colors@npm:^10.37.0": + version: 10.37.1 + resolution: "@carbon/colors@npm:10.37.1" + checksum: 7cdc38370d1a51d968f28de951a180211b33db14f6dee5cd55c1d965ebe74c19c55924898df7c344f72dfa2c46a764ad16696038911e77b43d9b701d34c56514 + languageName: node + linkType: hard + +"@carbon/elements@npm:^10.55.0": + version: 10.55.0 + resolution: "@carbon/elements@npm:10.55.0" + dependencies: + "@carbon/colors": ^10.37.0 + "@carbon/grid": ^10.43.0 + "@carbon/icons": ^10.48.0 + "@carbon/import-once": ^10.7.0 + "@carbon/layout": ^10.37.0 + "@carbon/motion": ^10.29.0 + "@carbon/themes": ^10.54.0 + "@carbon/type": ^10.44.0 + checksum: 8aa548120f5257b018a89f98cf41225271574e68686aa4145ea52e73dced92f58edd22f76daaf8c7bd199ca9e1abab19e7dee78868523ec12d08103b679a86a4 + languageName: node + linkType: hard + +"@carbon/grid@npm:^10.43.0": + version: 10.43.1 + resolution: "@carbon/grid@npm:10.43.1" + dependencies: + "@carbon/import-once": ^10.7.0 + "@carbon/layout": ^10.37.1 + checksum: d59818f5602b1cada5188982a687ef861c63a2e165ed3266496b0a0b7e2e12528e55d4ac9d7d4134a4f4c19e7e16fd48425e5982279ac86ff914ba879c120a32 + languageName: node + linkType: hard + +"@carbon/icons@npm:^10.48.0": + version: 10.48.0 + resolution: "@carbon/icons@npm:10.48.0" + checksum: 38c0a89c3a70d56e0490e34ad6c5bb35007a422a7697c419c460c0c2d22135eb1bcf39c54c1cf39f12a4b2d6184eecbdc9b4beeaca84330dcc2638db84a3d92f + languageName: node + linkType: hard + +"@carbon/import-once@npm:^10.7.0": + version: 10.7.0 + resolution: "@carbon/import-once@npm:10.7.0" + checksum: c92625bc34833073a2b113a9cf014353210570ed1105225e70c6c6d06e5203407aa472d95685a53b6460794408897641b8d8cd5fd6416f8b0fa36c28919bf5f0 + languageName: node + linkType: hard + +"@carbon/layout@npm:^10.37.0, @carbon/layout@npm:^10.37.1": + version: 10.37.1 + resolution: "@carbon/layout@npm:10.37.1" + checksum: baabf7e70e4779f0e5000e700bcafe96f272debaac490a4345e39fedf8d0970636f7099e2607aeb9ca6170a56bbacdff69d8181c2a46ed8adac38fadc08332b6 + languageName: node + linkType: hard + +"@carbon/motion@npm:^10.29.0": + version: 10.29.0 + resolution: "@carbon/motion@npm:10.29.0" + checksum: 15894d6bc7c3cbe575ad8b0ac422846777558be1577b1c63da4ce401f5abd821cc278a302f83b5643262f3ca6348c9ba10d9fc48b735e6dcbb6e407c2424b6df + languageName: node + linkType: hard + +"@carbon/themes@npm:^10.54.0": + version: 10.54.0 + resolution: "@carbon/themes@npm:10.54.0" + dependencies: + "@carbon/colors": ^10.37.0 + "@carbon/layout": ^10.37.0 + "@carbon/type": ^10.44.0 + color: ^3.1.2 + checksum: 532e52d3d9e9981513954fe611729f3fbe6dc109dca44a092e520e69c7458d9c27c5c21ca6275bde2934ade529adbfd549adf65633680bdca1ace5f07f7b8b27 + languageName: node + linkType: hard + +"@carbon/type@npm:^10.44.0": + version: 10.44.0 + resolution: "@carbon/type@npm:10.44.0" + dependencies: + "@carbon/grid": ^10.43.0 + "@carbon/import-once": ^10.7.0 + checksum: 58315618107527fc26315e87c924267d3f8e1ea1e9deef76327adc8822c9edca0e2b752d0e9ce8684c93a223e25c80109571476c075570ec64c31423b5d26a9f + languageName: node + linkType: hard + "@iarna/toml@npm:^2.2.0": version: 2.2.5 resolution: "@iarna/toml@npm:2.2.5" @@ -1944,7 +2027,7 @@ __metadata: languageName: node linkType: hard -"color-convert@npm:^1.9.0": +"color-convert@npm:^1.9.0, color-convert@npm:^1.9.3": version: 1.9.3 resolution: "color-convert@npm:1.9.3" dependencies: @@ -1969,13 +2052,33 @@ __metadata: languageName: node linkType: hard -"color-name@npm:~1.1.4": +"color-name@npm:^1.0.0, color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 languageName: node linkType: hard +"color-string@npm:^1.6.0": + version: 1.9.0 + resolution: "color-string@npm:1.9.0" + dependencies: + color-name: ^1.0.0 + simple-swizzle: ^0.2.2 + checksum: 93c6678b847f8cfa47d19677fd19e1d4b19d7a33f100644400357c298266080b5bca64e5f874fa8ac8cc0aa0606ad44f7a838b4e6fd05e6affea190a68555bb4 + languageName: node + linkType: hard + +"color@npm:^3.1.2": + version: 3.2.1 + resolution: "color@npm:3.2.1" + dependencies: + color-convert: ^1.9.3 + color-string: ^1.6.0 + checksum: f81220e8b774d35865c2561be921f5652117638dcda7ca4029262046e37fc2444ac7bbfdd110cf1fd9c074a4ee5eda8f85944ffbdda26186b602dd9bb05f6400 + languageName: node + linkType: hard + "colord@npm:^2.9.1": version: 2.9.2 resolution: "colord@npm:2.9.2" @@ -2776,6 +2879,7 @@ __metadata: version: 0.0.0-use.local resolution: "esm@workspace:." dependencies: + "@carbon/elements": ^10.55.0 "@parcel/transformer-sass": ^2.0.1 parcel: ^2.0.1 prismjs: ^1.20.0 @@ -3652,6 +3756,13 @@ fsevents@~2.3.2: languageName: node linkType: hard +"is-arrayish@npm:^0.3.1": + version: 0.3.2 + resolution: "is-arrayish@npm:0.3.2" + checksum: 977e64f54d91c8f169b59afcd80ff19227e9f5c791fa28fa2e5bce355cbaf6c2c356711b734656e80c9dd4a854dd7efcf7894402f1031dfc5de5d620775b4d5f + languageName: node + linkType: hard + "is-bigint@npm:^1.0.1": version: 1.0.4 resolution: "is-bigint@npm:1.0.4" @@ -6173,6 +6284,15 @@ fsevents@~2.3.2: languageName: node linkType: hard +"simple-swizzle@npm:^0.2.2": + version: 0.2.2 + resolution: "simple-swizzle@npm:0.2.2" + dependencies: + is-arrayish: ^0.3.1 + checksum: a7f3f2ab5c76c4472d5c578df892e857323e452d9f392e1b5cf74b74db66e6294a1e1b8b390b519fa1b96b5b613f2a37db6cffef52c3f1f8f3c5ea64eb2d54c0 + languageName: node + linkType: hard + "slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" diff --git a/packages/icons/scss/icons.scss b/packages/icons/scss/icons.scss deleted file mode 100644 index 0b3a7dcad3bb..000000000000 --- a/packages/icons/scss/icons.scss +++ /dev/null @@ -1,10 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'mixins'; - -@include carbon--icons(); diff --git a/packages/icons/scss/index.scss b/packages/icons/scss/index.scss deleted file mode 100644 index 9c0f2e4db13c..000000000000 --- a/packages/icons/scss/index.scss +++ /dev/null @@ -1,8 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'icons'; diff --git a/packages/icons/scss/mixins.scss b/packages/icons/scss/mixins.scss deleted file mode 100644 index e42ac1ccedf2..000000000000 --- a/packages/icons/scss/mixins.scss +++ /dev/null @@ -1,18 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -/// Makes SVGs accessible in high contrast mode -/// @link https://github.com/IBM/carbon-elements/issues/345#issuecomment-466577293 Carbon-elements #345 -/// @access public -/// @group @carbon/icons -@mixin carbon--icons { - @media screen and (-ms-high-contrast: active) { - svg { - fill: ButtonText; - } - } -} diff --git a/packages/import-once/.npmignore b/packages/import-once/.npmignore deleted file mode 100644 index 81ba1598b971..000000000000 --- a/packages/import-once/.npmignore +++ /dev/null @@ -1,4 +0,0 @@ -**/__mocks__/** -**/__tests__/** -**/examples/** -**/tasks/** \ No newline at end of file diff --git a/packages/import-once/README.md b/packages/import-once/README.md deleted file mode 100644 index 5298061e3846..000000000000 --- a/packages/import-once/README.md +++ /dev/null @@ -1,57 +0,0 @@ -# @carbon/import-once - -> Sass helper for importing files only once. Used in the Carbon Design System - -## Getting started - -To install `@carbon/import-once` in your project, you will need to run the -following command using [npm](https://www.npmjs.com/): - -```bash -npm install -S @carbon/import-once -``` - -If you prefer [Yarn](https://yarnpkg.com/en/), use the following command -instead: - -```bash -yarn add @carbon/import-once -``` - -## Usage - -`@carbon/import-once` is helpful when needing to guarantee that a module is -loaded only once. It does this by exporting a `exports` mixin that you can use. - -This mixin is particularly useful when you have a situation where your work -might share common dependencies that you don't want duplicated. For example, -imagine we had modules `a.scss` and `b.scss` that both import `c.scss`. Using -the `exports` mixin from `@carbon/import-once` will guarantee that `c.scss` is -loaded only once. - -This looks like: - -```scss -// a.scss -@import 'c'; - -// b.scss -@import 'c'; - -// c.scss -@import '@carbon/import-once/scss/import-once'; - -@include exports('c') { - // ... -} -``` - -## 🙌 Contributing - -We're always looking for contributors to help us fix bugs, build new features, -or help us improve the project documentation. If you're interested, definitely -check out our [Contributing Guide](/.github/CONTRIBUTING.md)! 👀 - -## 📝 License - -Licensed under the [Apache 2.0 License](/LICENSE). diff --git a/packages/import-once/package.json b/packages/import-once/package.json deleted file mode 100644 index 97f60e399033..000000000000 --- a/packages/import-once/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "@carbon/import-once", - "description": "Sass helper for importing files only once. Used in the Carbon Design System", - "version": "10.7.0", - "license": "Apache-2.0", - "repository": { - "type": "git", - "url": "https://github.com/carbon-design-system/carbon.git", - "directory": "packages/import-once" - }, - "bugs": "https://github.com/carbon-design-system/carbon/issues", - "keywords": [ - "eyeglass-module", - "ibm", - "elements", - "carbon", - "carbon-elements", - "carbon-design-system", - "components", - "react" - ], - "publishConfig": { - "access": "public" - }, - "eyeglass": { - "exports": false, - "name": "@carbon/import-once", - "sassDir": "scss", - "needs": "^1.3.0" - } -} diff --git a/packages/import-once/scss/import-once.scss b/packages/import-once/scss/import-once.scss deleted file mode 100644 index 633165fe07bf..000000000000 --- a/packages/import-once/scss/import-once.scss +++ /dev/null @@ -1,27 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -/// Used by `exports` mixin to track which modules have been imported -/// @type Map -/// @access public -/// @group @carbon/import-once -$imported-modules: () !default; - -/// Module export mixin that helps making sure a module is imported once and only once -/// @access public -/// @param {String} $name - Name of exported module -/// @param {Bool} $warn [false] - Warn when a module has been already imported -/// @content Declaration blocks to be imported -/// @group @carbon/import-once -@mixin exports($name, $warn: false) { - @if not(index($imported-modules, $name)) { - $imported-modules: append($imported-modules, $name) !global; - @content; - } @else if $warn == true { - @warn 'Module `#{$name}` has already been imported.'; - } -} diff --git a/packages/import-once/scss/index.scss b/packages/import-once/scss/index.scss deleted file mode 100644 index 182f0ad45699..000000000000 --- a/packages/import-once/scss/index.scss +++ /dev/null @@ -1,8 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'import-once'; diff --git a/packages/layout/__tests__/layout-test.js b/packages/layout/__tests__/layout-test.js deleted file mode 100644 index 5ccb833278df..000000000000 --- a/packages/layout/__tests__/layout-test.js +++ /dev/null @@ -1,155 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -import { createSassRenderer, convert } from '@carbon/test-utils/scss'; -import { spacing, layout, fluidSpacing, container, iconSize } from '../src'; - -function formatStep(name, index) { - let step = index; - if (step < 10) { - step = '0' + step; - } - return `${name}-${step}`; -} - -const render = createSassRenderer(__dirname); -const spacingScale = spacing.map((value, index) => { - return [ - index, - formatStep('carbon--spacing', index + 1), - formatStep('spacing', index + 1), - value, - ]; -}); - -const fluidSpacingScale = fluidSpacing.map((value, index) => { - return [ - index, - formatStep('carbon--fluid-spacing', index + 1), - formatStep('fluid-spacing', index + 1), - value, - ]; -}); - -const layoutScale = layout.map((value, index) => { - return [ - index, - formatStep('carbon--layout', index + 1), - formatStep('layout', index + 1), - value, - ]; -}); - -const containerScale = container.map((value, index) => { - return [ - index, - formatStep('carbon--container', index + 1), - formatStep('container', index + 1), - value, - ]; -}); - -const iconSizeScale = iconSize.map((value, index) => { - return [ - index, - formatStep('carbon--icon-size', index + 1), - formatStep('icon-size', index + 1), - value, - ]; -}); - -describe('scss/layout.scss', () => { - it.each(spacingScale)( - 'it should export spacing step %s', - async (index, namespace, alias, value) => { - const { calls } = await render(` - @import '../scss/layout'; - $t: test(global-variable-exists(${namespace})); - $t: test($${namespace}); - $t: test(global-variable-exists(${alias})); - $t: test($${alias}); - `); - - expect(convert(calls[0][0])).toBe(true); - expect(convert(calls[1][0])).toBe(value); - expect(convert(calls[2][0])).toBe(true); - expect(convert(calls[3][0])).toBe(value); - } - ); - - it.each(fluidSpacingScale)( - 'it should export fluid spacing step %s', - async (index, namespace, alias, value) => { - const { calls } = await render(` - @import '../scss/layout'; - $t: test(global-variable-exists(${namespace})); - $t: test($${namespace}); - $t: test(global-variable-exists(${alias})); - $t: test($${alias}); - `); - - expect(convert(calls[0][0])).toBe(true); - expect(convert(calls[1][0])).toBe(value); - expect(convert(calls[2][0])).toBe(true); - expect(convert(calls[3][0])).toBe(value); - } - ); - - it.each(layoutScale)( - 'it should export layout step %s', - async (index, namespace, alias, value) => { - const { calls } = await render(` - @import '../scss/layout'; - $t: test(global-variable-exists(${namespace})); - $t: test($${namespace}); - $t: test(global-variable-exists(${alias})); - $t: test($${alias}); - `); - - expect(convert(calls[0][0])).toBe(true); - expect(convert(calls[1][0])).toBe(value); - expect(convert(calls[2][0])).toBe(true); - expect(convert(calls[3][0])).toBe(value); - } - ); - - it.each(containerScale)( - 'it should export container step %s', - async (index, namespace, alias, value) => { - const { calls } = await render(` - @import '../scss/layout'; - $t: test(global-variable-exists(${namespace})); - $t: test($${namespace}); - $t: test(global-variable-exists(${alias})); - $t: test($${alias}); - `); - - expect(convert(calls[0][0])).toBe(true); - expect(convert(calls[1][0])).toBe(value); - expect(convert(calls[2][0])).toBe(true); - expect(convert(calls[3][0])).toBe(value); - } - ); - - it.each(iconSizeScale)( - 'it should export icon-size step %s', - async (index, namespace, alias, value) => { - const { calls } = await render(` - @import '../scss/layout'; - $t: test(global-variable-exists(${namespace})); - $t: test($${namespace}); - $t: test(global-variable-exists(${alias})); - $t: test($${alias}); - `); - - expect(convert(calls[0][0])).toBe(true); - expect(convert(calls[1][0])).toBe(value); - expect(convert(calls[2][0])).toBe(true); - expect(convert(calls[3][0])).toBe(value); - } - ); -}); diff --git a/packages/layout/__tests__/scss-test.js b/packages/layout/__tests__/scss-test.js new file mode 100644 index 000000000000..3ad7b6843411 --- /dev/null +++ b/packages/layout/__tests__/scss-test.js @@ -0,0 +1,111 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + * + * @jest-environment node + */ + +import { SassRenderer } from '@carbon/test-utils/scss'; +import { spacing, fluidSpacing, container, iconSize } from '../src'; + +const { render } = SassRenderer.create(__dirname); + +function formatStep(name, index) { + let step = index; + if (step < 10) { + step = '0' + step; + } + return `${name}-${step}`; +} + +const spacingScale = spacing.map((value, index) => { + return [index, formatStep('spacing', index + 1), value]; +}); + +const fluidSpacingScale = fluidSpacing.map((value, index) => { + return [index, formatStep('fluid-spacing', index + 1), value]; +}); + +const containerScale = container.map((value, index) => { + return [index, formatStep('container', index + 1), value]; +}); + +const iconSizeScale = iconSize.map((value, index) => { + return [index, formatStep('icon-size', index + 1), value]; +}); + +describe('scss/layout.scss', () => { + it.each(spacingScale)( + 'it should export spacing step %s', + async (_index, id, value) => { + const { get } = await render(` + @use 'sass:map'; + @use 'sass:meta'; + @use '../index.scss' as layout; + + $variables: meta.module-variables('layout'); + $key: get('key', map.has-key($variables, '${id}')); + $value: get('value', map.get($variables, '${id}')); + `); + + expect(get('key').value).toBe(true); + expect(get('value').value).toBe(value); + } + ); + + it.each(fluidSpacingScale)( + 'it should export fluid spacing step %s', + async (_index, id, value) => { + const { get } = await render(` + @use 'sass:map'; + @use 'sass:meta'; + @use '../index.scss' as layout; + + $variables: meta.module-variables('layout'); + $key: get('key', map.has-key($variables, '${id}')); + $value: get('value', map.get($variables, '${id}')); + `); + + expect(get('key').value).toBe(true); + expect(get('value').value).toBe(value); + } + ); + + it.each(containerScale)( + 'it should export container step %s', + async (_index, id, value) => { + const { get } = await render(` + @use 'sass:map'; + @use 'sass:meta'; + @use '../index.scss' as layout; + + $variables: meta.module-variables('layout'); + $key: get('key', map.has-key($variables, '${id}')); + $value: get('value', map.get($variables, '${id}')); + `); + + expect(get('key').value).toBe(true); + expect(get('value').value).toBe(value); + } + ); + + it.each(iconSizeScale)( + 'it should export icon-size step %s', + async (_index, id, value) => { + const { get } = await render(` + @use 'sass:map'; + @use 'sass:meta'; + @use '../index.scss' as layout; + + $variables: meta.module-variables('layout'); + $key: get('key', map.has-key($variables, '${id}')); + $value: get('value', map.get($variables, '${id}')); + `); + + expect(get('key').value).toBe(true); + expect(get('value').value).toBe(value); + } + ); +}); diff --git a/packages/layout/examples/preview/index.html b/packages/layout/examples/preview/index.html index a0be87cc39ea..3a90062fbca6 100644 --- a/packages/layout/examples/preview/index.html +++ b/packages/layout/examples/preview/index.html @@ -19,16 +19,6 @@

Convert

-
-
-

Mini Unit

-
-

Used for expressing values in terms of mini-units.

-
-
-
-
-

Spacing scale

@@ -58,24 +48,5 @@

Fluid

- -
-
-

Key Heights

-
-

Used in coordination with column widths to provide key heights at various breakpoints.

-
-
    -
  1. -
  2. -
  3. -
  4. -
  5. -
  6. -
  7. -
  8. -
-
-
diff --git a/packages/layout/examples/preview/package.json b/packages/layout/examples/preview/package.json index e1f2c076530e..e9615fc47458 100644 --- a/packages/layout/examples/preview/package.json +++ b/packages/layout/examples/preview/package.json @@ -8,6 +8,7 @@ "develop": "parcel index.html --no-cache" }, "devDependencies": { + "@carbon/layout": "10.36.0", "@parcel/transformer-sass": "^2.0.1", "parcel": "^2.0.1" } diff --git a/packages/layout/examples/preview/styles.scss b/packages/layout/examples/preview/styles.scss index a5637064f849..5f7abcbb472d 100644 --- a/packages/layout/examples/preview/styles.scss +++ b/packages/layout/examples/preview/styles.scss @@ -1,4 +1,4 @@ -@import '../../scss/layout'; +@import '@carbon/layout/scss/layout'; body { font-family: 'IBM Plex Mono', monospace; diff --git a/packages/layout/examples/preview/yarn.lock b/packages/layout/examples/preview/yarn.lock index 34baf1174602..a818eb6d05a6 100644 --- a/packages/layout/examples/preview/yarn.lock +++ b/packages/layout/examples/preview/yarn.lock @@ -309,6 +309,13 @@ __metadata: languageName: node linkType: hard +"@carbon/layout@npm:10.36.0": + version: 10.36.0 + resolution: "@carbon/layout@npm:10.36.0" + checksum: 4efece45c3d09fa4c231fdeff79f50069506bca632d847cc83dd3c3de30c9d63d57f212753218d1813e311080ee7c91a4c5b396187e587833e0f28655ccc15a7 + languageName: node + linkType: hard + "@iarna/toml@npm:^2.2.0": version: 2.2.5 resolution: "@iarna/toml@npm:2.2.5" @@ -4085,6 +4092,7 @@ fsevents@~2.3.2: version: 0.0.0-use.local resolution: "layout-basic-example@workspace:." dependencies: + "@carbon/layout": 10.36.0 "@parcel/transformer-sass": ^2.0.1 parcel: ^2.0.1 languageName: unknown diff --git a/packages/layout/index.scss b/packages/layout/index.scss index a0489f9f66c4..5113f7c0ffbe 100644 --- a/packages/layout/index.scss +++ b/packages/layout/index.scss @@ -5,5 +5,8 @@ // LICENSE file in the root directory of this source tree. // -@forward 'scss/modules/convert'; -@forward 'scss/modules/spacing'; +@forward 'scss/convert'; +@forward 'scss/spacing'; +@forward 'scss/generated/container'; +@forward 'scss/generated/icon-size'; +@forward 'scss/generated/size'; diff --git a/packages/layout/package.json b/packages/layout/package.json index 0de972054fbf..3812e859451c 100644 --- a/packages/layout/package.json +++ b/packages/layout/package.json @@ -12,7 +12,6 @@ }, "bugs": "https://github.com/carbon-design-system/carbon/issues", "keywords": [ - "eyeglass-module", "ibm", "elements", "carbon", @@ -26,7 +25,7 @@ }, "scripts": { "build": "yarn clean && carbon-cli bundle src/index.js --name CarbonLayout && node tasks/build.js", - "clean": "rimraf es lib umd scss/generated scss/modules/generated" + "clean": "rimraf es lib umd scss/generated" }, "devDependencies": { "@carbon/cli": "^10.34.0", @@ -35,11 +34,5 @@ "@carbon/test-utils": "^10.21.0", "core-js": "^3.16.0", "rimraf": "^3.0.0" - }, - "eyeglass": { - "exports": false, - "name": "@carbon/layout", - "sassDir": "scss", - "needs": "^1.3.0" } } diff --git a/packages/layout/scss/_breakpoint.scss b/packages/layout/scss/_breakpoint.scss deleted file mode 100644 index 6312bbf7d572..000000000000 --- a/packages/layout/scss/_breakpoint.scss +++ /dev/null @@ -1,246 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -// https://github.com/twbs/bootstrap/blob/v4-dev/scss/mixins/_breakpoints.scss -@import 'convert'; -@import 'utilities'; - -/// Carbon gutter size in rem -/// @type Number -/// @access public -/// @group @carbon/layout -$carbon--grid-gutter: carbon--rem(32px); - -/// Carbon condensed gutter size in rem -/// @type Number -/// @access public -/// @group @carbon/layout -$carbon--grid-gutter--condensed: carbon--rem(1px); - -// Initial map of our breakpoints and their values -/// @type Map -/// @access public -/// @group @carbon/layout -$carbon--grid-breakpoints: ( - sm: ( - columns: 4, - margin: 0, - width: carbon--rem(320px), - ), - md: ( - columns: 8, - margin: carbon--rem(16px), - width: carbon--rem(672px), - ), - lg: ( - columns: 16, - margin: carbon--rem(16px), - width: carbon--rem(1056px), - ), - xlg: ( - columns: 16, - margin: carbon--rem(16px), - width: carbon--rem(1312px), - ), - max: ( - columns: 16, - margin: carbon--rem(24px), - width: carbon--rem(1584px), - ), -) !default; - -/// Get the value of the next breakpoint, or null for the last breakpoint -/// @param {String} $name - The name of the breakpoint -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name of the breakpoint and the value is the values for the breakpoint -/// @param {List} $breakpoint-names [map-keys($breakpoints)] - A list of names from the `$breakpoints` map -/// @return {String} -/// @access public -/// @group @carbon/layout -@function carbon--breakpoint-next( - $name, - $breakpoints: $carbon--grid-breakpoints, - $breakpoint-names: map-keys($breakpoints) -) { - $n: index($breakpoint-names, $name); - @if $n != null and $n < length($breakpoint-names) { - @return nth($breakpoint-names, $n + 1); - } - @return null; -} - -/// Get the value of the previous breakpoint, or null for the first breakpoint -/// @param {String} $name - The name of the breakpoint -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name of the breakpoint and the value is the values for the breakpoint -/// @param {List} $breakpoint-names [map-keys($breakpoints)] - A list of names from the `$breakpoints` map -/// @return {String} -/// @access public -/// @group @carbon/layout -@function carbon--breakpoint-prev( - $name, - $breakpoints: $carbon--grid-breakpoints, - $breakpoint-names: map-keys($breakpoints) -) { - $n: index($breakpoint-names, $name); - @if $n != null and $n > 1 { - @return nth($breakpoint-names, $n - 1); - } - @return null; -} - -/// Check to see if the given breakpoint name -/// @param {String} $name - The name of the breakpoint -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name of the breakpoint and the value is the values for the breakpoint -/// @return {Bool} -/// @access public -/// @group @carbon/layout -@function carbon--is-smallest-breakpoint( - $name, - $breakpoints: $carbon--grid-breakpoints -) { - @return index(map-keys($breakpoints), $name) == 1; -} - -/// Returns the largest breakpoint name -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @return {String} -/// @access public -/// @group @carbon/layout -@function carbon--largest-breakpoint-name( - $breakpoints: $carbon--grid-breakpoints -) { - $total-breakpoints: length($breakpoints); - @return carbon--key-by-index($breakpoints, $total-breakpoints); -} - -/// Get the infix for a given breakpoint in a list of breakpoints. Useful for generating the size part in a selector, for example: `.prefix--col-sm-2`. -/// @param {String} $name - The name of the breakpoint -/// @return {String} -/// @access public -/// @group @carbon/layout -@function carbon--breakpoint-infix($name) { - @return '-#{$name}'; -} - -/// Generate a media query from the width of the given breakpoint to infinity -/// @param {String | Number} $name -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @content -/// @access public -/// @group @carbon/layout -@mixin carbon--breakpoint-up($name, $breakpoints: $carbon--grid-breakpoints) { - @if type-of($name) == 'number' { - @media (min-width: $name) { - @content; - } - } @else if map-has-key($breakpoints, $name) { - $breakpoint: map-get($breakpoints, $name); - $width: map-get($breakpoint, width); - @if carbon--is-smallest-breakpoint($name, $breakpoints) { - @content; - } @else { - @media (min-width: $width) { - @content; - } - } - } @else { - @error 'Unable to find a breakpoint with name `#{$name}`. Expected one of: (#{map-keys($breakpoints)})'; - } -} - -/// Generate a media query for the maximum width of the given styles -/// @param {String | Number} $name -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @content -/// @access public -/// @group @carbon/layout -@mixin carbon--breakpoint-down($name, $breakpoints: $carbon--grid-breakpoints) { - @if type-of($name) == 'number' { - @media (max-width: $name) { - @content; - } - } @else if map-has-key($breakpoints, $name) { - // We borrow this logic from bootstrap for specifying the value of the - // max-width. The maximum width is calculated by finding the breakpoint and - // subtracting .02 from its value. This value is used instead of .01 to - // avoid rounding issues in Safari - // https://github.com/twbs/bootstrap/blob/c5b1919deaf5393fcca9e9b9d7ce9c338160d99d/scss/mixins/_breakpoints.scss#L34-L46 - $breakpoint: map-get($breakpoints, $name); - $width: map-get($breakpoint, width) - 0.02; - @media (max-width: $width) { - @content; - } - } @else { - @error 'Unable to find a breakpoint with name `#{$name}`. Expected one of: (#{map-keys($breakpoints)})'; - } -} - -/// Generate a media query for the range between the lower and upper breakpoints -/// @param {String | Number} $lower -/// @param {String | Number} $upper -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @content -/// @access public -/// @group @carbon/layout -@mixin carbon--breakpoint-between( - $lower, - $upper, - $breakpoints: $carbon--grid-breakpoints -) { - $is-number-lower: type-of($lower) == 'number'; - $is-number-upper: type-of($upper) == 'number'; - $min: if($is-number-lower, $lower, map-get($breakpoints, $lower)); - $max: if($is-number-upper, $upper, map-get($breakpoints, $upper)); - - @if $min and $max { - $min-width: if( - not $is-number-lower and $min, - map-get($min, width) + 0.02, - $min - ); - $max-width: if( - not $is-number-upper and $max, - map-get($max, width) - 0.02, - $max - ); - @media (min-width: $min-width) and (max-width: $max-width) { - @content; - } - } @else if $min != null and $max == null { - @include carbon--breakpoint-up($lower) { - @content; - } - } @else if $min == null and $max != null { - @include carbon--breakpoint-down($upper) { - @content; - } - } @else { - @error 'Unable to find a breakpoint to satisfy: (#{$lower},#{$upper}). Expected both to be one of (#{map-keys($breakpoints)}).'; - } -} - -/// Generate media query for the largest breakpoint -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @content -/// @access public -/// @group @carbon/layout -@mixin carbon--largest-breakpoint($breakpoints: $carbon--grid-breakpoints) { - @include carbon--breakpoint(carbon--largest-breakpoint-name()) { - @content; - } -} - -/// Generate a media query for a given breakpoint -/// @param {String | Number} $name -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - A map of breakpoints where the key is the name -/// @content -/// @access public -/// @group @carbon/layout -@mixin carbon--breakpoint($name, $breakpoints: $carbon--grid-breakpoints) { - @include carbon--breakpoint-up($name, $breakpoints) { - @content; - } -} diff --git a/packages/layout/scss/_convert.scss b/packages/layout/scss/_convert.scss index 6ed47411ddd1..c9e5313ffe94 100644 --- a/packages/layout/scss/_convert.scss +++ b/packages/layout/scss/_convert.scss @@ -4,38 +4,31 @@ // This source code is licensed under the Apache-2.0 license found in the // LICENSE file in the root directory of this source tree. // -//------------------------------------------- -// Compatibility notes -// ------------------------------------------ -// -// This file is intended to be consumed and processed with node-sass/libsass. -// Sass language features only available in dart-sass, such as `math.div`, -// should not be used. -// -// The `.import` suffixed version of this file eg. `_filename.import.scss` -// is intended to be compatible with dart-sass. -// -// Styles authored within this file must be duplicated to the corresponding -// compatibility file to ensure we continue to support node-sass and dart-sass -// in v10. + +@use 'sass:meta'; +@use 'sass:math'; /// Default font size /// @type Number /// @access public /// @group @carbon/layout -$carbon--base-font-size: 16px !default; +$base-font-size: 16px !default; /// Convert a given px unit to a rem unit /// @param {Number} $px - Number with px unit /// @return {Number} Number with rem unit /// @access public /// @group @carbon/layout -@function carbon--rem($px) { +@function rem($px) { @if unit($px) != 'px' { @error "Expected argument $px to be of type `px`, instead received: `#{unit($px)}`"; } - @return ($px / $carbon--base-font-size) * 1rem; + @if meta.function-exists('div', 'math') { + @return math.div($px, $base-font-size) * 1rem; + } @else { + @return ($px / $base-font-size) * 1rem; + } } /// Convert a given px unit to a em unit @@ -43,10 +36,14 @@ $carbon--base-font-size: 16px !default; /// @return {Number} Number with em unit /// @access public /// @group @carbon/layout -@function carbon--em($px) { +@function em($px) { @if unit($px) != 'px' { @error "Expected argument $px to be of type `px`, instead received: `#{unit($px)}`"; } - @return ($px / $carbon--base-font-size) * 1em; + @if meta.function-exists('div', 'math') { + @return math.div($px, $base-font-size) * 1em; + } @else { + @return ($px / $base-font-size) * 1em; + } } diff --git a/packages/layout/scss/_key-height.import.scss b/packages/layout/scss/_key-height.import.scss deleted file mode 100644 index e95d82a0178c..000000000000 --- a/packages/layout/scss/_key-height.import.scss +++ /dev/null @@ -1,117 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// -//------------------------------------------- -// Compatibility notes (*.import.scss) -// ------------------------------------------ -// -// This file is intended to be consumed and processed with dart-sass. -// It is incompatible with node-sass/libsass as it contains sass language features -// or functions that are unavailable in node-sass/libsass, such as `math.div`. -// -// The non-`.import` suffixed version of this file eg. `_filename.scss` -// is intended to be compatible with node-sass/libsass. -// -// Styles authored within this file must be duplicated to the corresponding -// compatibility file to ensure we continue to support node-sass and dart-sass -// in v10. - -@use 'sass:meta'; -@use "sass:math"; -@import 'breakpoint'; -@import 'utilities'; - -/// Get the column width for a given breakpoint -/// @param {String} $breakpoint -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] -/// @return {Number} In rem -/// @access public -/// @group @carbon/layout -@function carbon--get-column-width( - $breakpoint, - $breakpoints: $carbon--grid-breakpoints -) { - @if map-has-key($breakpoints, $breakpoint) { - $values: map-get($breakpoints, $breakpoint); - $width: map-get($values, width); - $margin: map-get($values, margin); - $columns: map-get($values, columns); - - @if meta.function-exists('div', 'math') { - @return math.div($width - (2 * $margin), $columns); - } @else { - @return (($width - (2 * $margin)) / $columns); - } - } @else { - @warn 'Breakpoint: `#{$breakpoint}` is not a valid breakpoint.'; - } -} - -/// @type Map -/// @access public -/// @group @carbon/layout -$carbon--key-height-scales: ( - sm: ( - carbon--get-column-width(sm), - carbon--get-column-width(sm) * 2, - carbon--get-column-width(sm) * 3, - carbon--get-column-width(sm) * 4, - carbon--get-column-width(sm) * 5, - carbon--get-column-width(sm) * 6, - ), - md: ( - carbon--get-column-width(md), - carbon--get-column-width(md) * 2, - carbon--get-column-width(md) * 3, - carbon--get-column-width(md) * 4, - carbon--get-column-width(md) * 5, - carbon--get-column-width(md) * 6, - ), - lg: ( - carbon--get-column-width(lg), - carbon--get-column-width(lg) * 2, - carbon--get-column-width(lg) * 3, - carbon--get-column-width(lg) * 4, - carbon--get-column-width(lg) * 5, - carbon--get-column-width(lg) * 6, - carbon--get-column-width(lg) * 7, - carbon--get-column-width(lg) * 8, - ), - xlg: ( - carbon--get-column-width(xlg), - carbon--get-column-width(xlg) * 2, - carbon--get-column-width(xlg) * 3, - carbon--get-column-width(xlg) * 4, - carbon--get-column-width(xlg) * 5, - carbon--get-column-width(xlg) * 6, - carbon--get-column-width(xlg) * 7, - carbon--get-column-width(xlg) * 8, - ), - max: ( - carbon--get-column-width(max), - carbon--get-column-width(max) * 2, - carbon--get-column-width(max) * 3, - carbon--get-column-width(max) * 4, - carbon--get-column-width(max) * 5, - carbon--get-column-width(max) * 6, - carbon--get-column-width(max) * 7, - carbon--get-column-width(max) * 8, - ), -); - -/// Get the value of a key height step at a given breakpoint -/// @param {String} $breakpoint -/// @param {Number} $step -/// @return {Number} In rem -/// @access public -/// @group @carbon/layout -@function carbon--key-height($breakpoint, $step) { - @if map-has-key($carbon--key-height-scales, $breakpoint) { - @return nth(map-get($carbon--key-height-scales, $breakpoint), $step); - } @else { - @warn 'Breakpoint: `#{$breakpoint}` is not a valid breakpoint.'; - } -} diff --git a/packages/layout/scss/_key-height.scss b/packages/layout/scss/_key-height.scss deleted file mode 100644 index a8113d75f885..000000000000 --- a/packages/layout/scss/_key-height.scss +++ /dev/null @@ -1,111 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// -//------------------------------------------- -// Compatibility notes -// ------------------------------------------ -// -// This file is intended to be consumed and processed with node-sass/libsass. -// Sass language features only available in dart-sass, such as `math.div`, -// should not be used. -// -// The `.import` suffixed version of this file eg. `_filename.import.scss` -// is intended to be compatible with dart-sass. -// -// Styles authored within this file must be duplicated to the corresponding -// compatibility file to ensure we continue to support node-sass and dart-sass -// in v10. - -@import 'breakpoint'; -@import 'utilities'; - -/// Get the column width for a given breakpoint -/// @param {String} $breakpoint -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] -/// @return {Number} In rem -/// @access public -/// @group @carbon/layout -@function carbon--get-column-width( - $breakpoint, - $breakpoints: $carbon--grid-breakpoints -) { - @if map-has-key($breakpoints, $breakpoint) { - $values: map-get($breakpoints, $breakpoint); - $width: map-get($values, width); - $margin: map-get($values, margin); - $columns: map-get($values, columns); - - @return ($width - (2 * $margin)) / $columns; - } @else { - @warn 'Breakpoint: `#{$breakpoint}` is not a valid breakpoint.'; - } -} - -/// @type Map -/// @access public -/// @group @carbon/layout -$carbon--key-height-scales: ( - sm: ( - carbon--get-column-width(sm), - carbon--get-column-width(sm) * 2, - carbon--get-column-width(sm) * 3, - carbon--get-column-width(sm) * 4, - carbon--get-column-width(sm) * 5, - carbon--get-column-width(sm) * 6, - ), - md: ( - carbon--get-column-width(md), - carbon--get-column-width(md) * 2, - carbon--get-column-width(md) * 3, - carbon--get-column-width(md) * 4, - carbon--get-column-width(md) * 5, - carbon--get-column-width(md) * 6, - ), - lg: ( - carbon--get-column-width(lg), - carbon--get-column-width(lg) * 2, - carbon--get-column-width(lg) * 3, - carbon--get-column-width(lg) * 4, - carbon--get-column-width(lg) * 5, - carbon--get-column-width(lg) * 6, - carbon--get-column-width(lg) * 7, - carbon--get-column-width(lg) * 8, - ), - xlg: ( - carbon--get-column-width(xlg), - carbon--get-column-width(xlg) * 2, - carbon--get-column-width(xlg) * 3, - carbon--get-column-width(xlg) * 4, - carbon--get-column-width(xlg) * 5, - carbon--get-column-width(xlg) * 6, - carbon--get-column-width(xlg) * 7, - carbon--get-column-width(xlg) * 8, - ), - max: ( - carbon--get-column-width(max), - carbon--get-column-width(max) * 2, - carbon--get-column-width(max) * 3, - carbon--get-column-width(max) * 4, - carbon--get-column-width(max) * 5, - carbon--get-column-width(max) * 6, - carbon--get-column-width(max) * 7, - carbon--get-column-width(max) * 8, - ), -); - -/// Get the value of a key height step at a given breakpoint -/// @param {String} $breakpoint -/// @param {Number} $step -/// @return {Number} In rem -/// @access public -/// @group @carbon/layout -@function carbon--key-height($breakpoint, $step) { - @if map-has-key($carbon--key-height-scales, $breakpoint) { - @return nth(map-get($carbon--key-height-scales, $breakpoint), $step); - } @else { - @warn 'Breakpoint: `#{$breakpoint}` is not a valid breakpoint.'; - } -} diff --git a/packages/layout/scss/_mini-unit.scss b/packages/layout/scss/_mini-unit.scss deleted file mode 100644 index c79b6ed564c2..000000000000 --- a/packages/layout/scss/_mini-unit.scss +++ /dev/null @@ -1,23 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'convert'; - -/// Default mini-unit value -/// @type Number -/// @access public -/// @group @carbon/layout -$carbon--mini-unit-size: 8px !default; - -/// Get the value of the corresponding number of units -/// @param {Number} $count - The number of units to get the value for -/// @return {Number} In rem units -/// @access public -/// @group @carbon/layout -@function carbon--mini-units($count) { - @return carbon--rem($carbon--mini-unit-size * $count); -} diff --git a/packages/layout/scss/_spacing.scss b/packages/layout/scss/_spacing.scss index ae11fb9e45b9..42e124108c91 100644 --- a/packages/layout/scss/_spacing.scss +++ b/packages/layout/scss/_spacing.scss @@ -5,8 +5,5 @@ // LICENSE file in the root directory of this source tree. // -@import './generated/spacing'; -@import './generated/layout'; -@import './generated/fluid-spacing'; -@import './generated/container'; -@import './generated/icon-size'; +@forward './generated/fluid-spacing'; +@forward './generated/spacing'; diff --git a/packages/layout/scss/_utilities.scss b/packages/layout/scss/_utilities.scss index af8e1e0eb4e7..91fc776b6082 100644 --- a/packages/layout/scss/_utilities.scss +++ b/packages/layout/scss/_utilities.scss @@ -14,7 +14,7 @@ /// @group @carbon/layout @function map-deep-get($map, $keys...) { @each $key in $keys { - $map: map-get($map, $key); + $map: map.get($map, $key); } @return $map; } @@ -25,8 +25,8 @@ /// @param {Integer} $index - Key chain /// @return {String} Desired value /// @group @carbon/layout -@function carbon--key-by-index($map, $index) { - $keys: map-keys($map); +@function key-by-index($map, $index) { + $keys: map.keys($map); @return nth($keys, $index); } @@ -36,6 +36,6 @@ /// @return {*} Desired value /// @group @carbon/layout @function last-map-item($map) { - $total-length: length($map); + $total-length: list.length($map); @return map-get($map, carbon--key-by-index($map, $total-length)); } diff --git a/packages/layout/scss/index.scss b/packages/layout/scss/index.scss deleted file mode 100644 index 7c7fe0aca3be..000000000000 --- a/packages/layout/scss/index.scss +++ /dev/null @@ -1,8 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'layout'; diff --git a/packages/layout/scss/layout.scss b/packages/layout/scss/layout.scss deleted file mode 100644 index acc1f1e8f702..000000000000 --- a/packages/layout/scss/layout.scss +++ /dev/null @@ -1,12 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'convert'; -@import 'breakpoint'; -@import 'mini-unit'; -@import 'spacing'; -@import 'key-height'; diff --git a/packages/layout/scss/modules/_spacing.scss b/packages/layout/scss/modules/_spacing.scss deleted file mode 100644 index 42e124108c91..000000000000 --- a/packages/layout/scss/modules/_spacing.scss +++ /dev/null @@ -1,9 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@forward './generated/fluid-spacing'; -@forward './generated/spacing'; diff --git a/packages/layout/scss/modules/_utilities.scss b/packages/layout/scss/modules/_utilities.scss deleted file mode 100644 index 91fc776b6082..000000000000 --- a/packages/layout/scss/modules/_utilities.scss +++ /dev/null @@ -1,41 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -/// Map deep get -/// @author Hugo Giraudel -/// @access public -/// @param {Map} $map - Map -/// @param {Arglist} $keys - Key chain -/// @return {*} Desired value -/// @group @carbon/layout -@function map-deep-get($map, $keys...) { - @each $key in $keys { - $map: map.get($map, $key); - } - @return $map; -} - -/// Provide a map and index, and get back the relevant key value -/// @access public -/// @param {Map} $map - Map -/// @param {Integer} $index - Key chain -/// @return {String} Desired value -/// @group @carbon/layout -@function key-by-index($map, $index) { - $keys: map.keys($map); - @return nth($keys, $index); -} - -/// Pass in a map, and get the last one in the list back -/// @access public -/// @param {Map} $map - Map -/// @return {*} Desired value -/// @group @carbon/layout -@function last-map-item($map) { - $total-length: list.length($map); - @return map-get($map, carbon--key-by-index($map, $total-length)); -} diff --git a/packages/layout/src/index.js b/packages/layout/src/index.js index ed0c3998f5dc..7f62a7c908ac 100644 --- a/packages/layout/src/index.js +++ b/packages/layout/src/index.js @@ -131,25 +131,6 @@ export const fluidSpacing = [ fluidSpacing04, ]; -// Layout -// Deprecated -- Remove in v11 -export const layout01 = miniUnits(2); -export const layout02 = miniUnits(3); -export const layout03 = miniUnits(4); -export const layout04 = miniUnits(6); -export const layout05 = miniUnits(8); -export const layout06 = miniUnits(12); -export const layout07 = miniUnits(20); -export const layout = [ - layout01, - layout02, - layout03, - layout04, - layout05, - layout06, - layout07, -]; - // Container export const container01 = miniUnits(3); export const container02 = miniUnits(4); diff --git a/packages/layout/src/tokens.js b/packages/layout/src/tokens.js index ccc679b59cff..a912640bdf76 100644 --- a/packages/layout/src/tokens.js +++ b/packages/layout/src/tokens.js @@ -27,16 +27,6 @@ export const unstable_tokens = [ 'fluidSpacing03', 'fluidSpacing04', - // Layout - // Deprecated -- Remove in v11 - 'layout01', - 'layout02', - 'layout03', - 'layout04', - 'layout05', - 'layout06', - 'layout07', - // Containers 'container01', 'container02', diff --git a/packages/layout/tasks/build.js b/packages/layout/tasks/build.js index 80d1f6a2c8bd..5a45556f2920 100644 --- a/packages/layout/tasks/build.js +++ b/packages/layout/tasks/build.js @@ -15,44 +15,17 @@ const { reporter } = require('@carbon/cli-reporter'); const { types: t, generate } = require('@carbon/scss-generator'); const fs = require('fs-extra'); const path = require('path'); -const { - container, - iconSize, - spacing, - layout, - fluidSpacing, - sizes, -} = require('../lib'); +const { container, iconSize, spacing, fluidSpacing, sizes } = require('../lib'); async function build() { reporter.info('Building scss files for layout...'); const SCSS_DIR = path.resolve(__dirname, '../scss/generated'); - const MODULES_DIR = path.resolve(__dirname, '../scss/modules/generated'); const files = [ - // v10 - { - filepath: path.join(SCSS_DIR, '_spacing.scss'), - builder() { - return buildTokenFile(spacing, 'spacing'); - }, - }, - { - filepath: path.join(SCSS_DIR, '_fluid-spacing.scss'), - builder() { - return buildTokenFile(fluidSpacing, 'fluid-spacing'); - }, - }, - { - filepath: path.join(SCSS_DIR, '_layout.scss'), - builder() { - return buildTokenFile(layout, 'layout'); - }, - }, { filepath: path.join(SCSS_DIR, '_container.scss'), builder() { - return buildTokenFile(container, 'container'); + return buildModulesTokenFile(container, 'container'); }, }, { @@ -60,7 +33,7 @@ async function build() { builder() { const FILE_BANNER = t.Comment(` Code generated by @carbon/layout. DO NOT EDIT. - Copyright IBM Corp. 2018, 2019 + Copyright IBM Corp. 2018, 2021 This source code is licensed under the Apache-2.0 license found in the LICENSE file in the root directory of this source tree. @@ -94,19 +67,17 @@ async function build() { { filepath: path.join(SCSS_DIR, '_icon-size.scss'), builder() { - return buildTokenFile(iconSize, 'icon-size'); + return buildModulesTokenFile(iconSize, 'icon-size'); }, }, - - // v11 { - filepath: path.join(MODULES_DIR, '_spacing.scss'), + filepath: path.join(SCSS_DIR, '_spacing.scss'), builder() { return buildModulesTokenFile(spacing, 'spacing', ''); }, }, { - filepath: path.join(MODULES_DIR, '_fluid-spacing.scss'), + filepath: path.join(SCSS_DIR, '_fluid-spacing.scss'), builder() { return buildModulesTokenFile(fluidSpacing, 'fluid-spacing', ''); }, @@ -114,7 +85,6 @@ async function build() { ]; await fs.ensureDir(SCSS_DIR); - await fs.ensureDir(MODULES_DIR); for (const { filepath, builder } of files) { const { code } = generate(builder()); await fs.writeFile(filepath, code); @@ -123,86 +93,6 @@ async function build() { reporter.success('Done! 🎉'); } -/** - * Build a token stylesheet for a given token scale and group. This will help - * generate the initial collection of tokens and a list of all tokens. In - * addition, it will generate aliases for these tokens. - * - * @param {Array} tokenScale - * @param {string} group - * @returns {StyleSheet} - */ -function buildTokenFile(tokenScale, group) { - const FILE_BANNER = t.Comment(` Code generated by @carbon/layout. DO NOT EDIT. - - Copyright IBM Corp. 2018, 2019 - - This source code is licensed under the Apache-2.0 license found in the - LICENSE file in the root directory of this source tree. -`); - - const values = tokenScale.map((value, index) => { - const name = formatStep(`carbon--${group}`, index + 1); - const shorthand = formatStep(group, index + 1); - const id = t.Identifier(name); - return [ - name, - shorthand, - id, - t.Assignment({ - id, - init: t.SassValue(value), - default: true, - }), - ]; - }); - - const variables = values.flatMap(([_name, _shorthand, _id, assignment]) => { - const comment = t.Comment(`/ @type Number -/ @access public -/ @group @carbon/layout`); - return [comment, assignment, t.Newline()]; - }); - - const list = [ - t.Comment(`/ @type List -/ @access public -/ @group @carbon/layout`), - t.Assignment({ - id: t.Identifier(`carbon--${group}`), - init: t.SassList({ - elements: values.map(([_name, _shorthand, id]) => { - return id; - }), - }), - }), - ]; - - const aliases = values.flatMap(([name, shorthand, id]) => { - const comment = t.Comment(`/ @type Number -/ @access public -/ @group @carbon/layout -/ @alias ${name}`); - return [ - comment, - t.Assignment({ - id: t.Identifier(shorthand), - init: id, - default: true, - }), - t.Newline(), - ]; - }); - - return t.StyleSheet([ - FILE_BANNER, - t.Newline(), - ...variables, - ...list, - t.Newline(), - ...aliases, - ]); -} /** * Build a Sass Module token stylesheet for a given token scale and group. This will help * generate the initial collection of tokens and a list of all tokens. In @@ -215,7 +105,7 @@ function buildTokenFile(tokenScale, group) { function buildModulesTokenFile(tokenScale, group) { const FILE_BANNER = t.Comment(` Code generated by @carbon/layout. DO NOT EDIT. - Copyright IBM Corp. 2018, 2019 + Copyright IBM Corp. 2018, 2021 This source code is licensed under the Apache-2.0 license found in the LICENSE file in the root directory of this source tree. diff --git a/packages/motion/__tests__/__snapshots__/motion-test.js.snap b/packages/motion/__tests__/__snapshots__/motion-test.js.snap index 793bd5fa4a91..4593164afe53 100644 --- a/packages/motion/__tests__/__snapshots__/motion-test.js.snap +++ b/packages/motion/__tests__/__snapshots__/motion-test.js.snap @@ -2,13 +2,13 @@ exports[`@carbon/motion @carbon/motion/scss/motion.scss 1`] = ` Array [ - "fast-01", - "fast-02", - "moderate-01", - "moderate-02", - "slow-01", - "slow-02", - "carbon--easings", + "easings", + "duration-fast-01", + "duration-fast-02", + "duration-moderate-01", + "duration-moderate-02", + "duration-slow-01", + "duration-slow-02", ] `; diff --git a/packages/motion/__tests__/motion-test.js b/packages/motion/__tests__/motion-test.js index c6d653f6ecf7..8dc4397c4bc3 100644 --- a/packages/motion/__tests__/motion-test.js +++ b/packages/motion/__tests__/motion-test.js @@ -20,7 +20,7 @@ describe('@carbon/motion', () => { test('@carbon/motion/scss/motion.scss', async () => { const { getValue } = await render(` @use 'sass:meta'; - @use '../scss/motion'; + @use '../index.scss' as motion; $_: get-value(meta.module-variables('motion')); `); diff --git a/packages/motion/package.json b/packages/motion/package.json index 098fa5007a25..bcc18eceffb8 100644 --- a/packages/motion/package.json +++ b/packages/motion/package.json @@ -12,7 +12,6 @@ }, "bugs": "https://github.com/carbon-design-system/carbon/issues", "keywords": [ - "eyeglass-module", "ibm", "elements", "carbon", @@ -31,11 +30,5 @@ "devDependencies": { "@carbon/cli": "^10.34.0", "rimraf": "^3.0.0" - }, - "eyeglass": { - "exports": false, - "name": "@carbon/motion", - "sassDir": "scss", - "needs": "^1.3.0" } } diff --git a/packages/motion/scss/index.scss b/packages/motion/scss/index.scss deleted file mode 100644 index 6aebad33fbfb..000000000000 --- a/packages/motion/scss/index.scss +++ /dev/null @@ -1,8 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'motion'; diff --git a/packages/motion/scss/motion.scss b/packages/motion/scss/motion.scss deleted file mode 100644 index eddd8c5891ca..000000000000 --- a/packages/motion/scss/motion.scss +++ /dev/null @@ -1,78 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -/// @access public -/// @group @carbon/motion -$fast-01: 70ms !default; - -/// @access public -/// @group @carbon/motion -$fast-02: 110ms !default; - -/// @access public -/// @group @carbon/motion -$moderate-01: 150ms !default; - -/// @access public -/// @group @carbon/motion -$moderate-02: 240ms !default; - -/// @access public -/// @group @carbon/motion -$slow-01: 400ms !default; - -/// @access public -/// @group @carbon/motion -$slow-02: 700ms !default; - -/// Common component easings -/// @type Map -/// @access public -/// @group @carbon/motion -$carbon--easings: ( - standard: ( - productive: cubic-bezier(0.2, 0, 0.38, 0.9), - expressive: cubic-bezier(0.4, 0.14, 0.3, 1), - ), - entrance: ( - productive: cubic-bezier(0, 0, 0.38, 0.9), - expressive: cubic-bezier(0, 0, 0.3, 1), - ), - exit: ( - productive: cubic-bezier(0.2, 0, 1, 0.9), - expressive: cubic-bezier(0.4, 0.14, 1, 1), - ), -); - -/// Get the transition-timing-function for a given easing and motion mode -/// @param {String} $name - Can be `standard`, `entrance`, or `exit` -/// @param {String} $mode [productive] - Can be `productive` or `expressive` -/// @param {Map} $easings [$carbon--easings] - Easings map -/// @access public -/// @group @carbon/motion -/// @return {Function} CSS `cubic-bezier()` function -@function carbon--motion($name, $mode: productive, $easings: $carbon--easings) { - @if map-has-key($easings, $name) { - $easing: map-get($easings, $name); - @if map-has-key($easing, $mode) { - @return map-get($easing, $mode); - } @else { - @error 'Unable to find a mode for the easing #{$easing} called: #{$mode}.'; - } - } @else { - @error 'Unable to find an easing named #{$name} in our supported easings.'; - } -} - -/// Set the transition-timing-function for a given easing and motion mode -/// @param {String} $name - The name of the easing curve to apply -/// @param {String} $mode - The mode for the easing curve to use -/// @access public -/// @group @carbon/motion -@mixin carbon--motion($name, $mode) { - transition-timing-function: carbon--motion($name, $mode); -} diff --git a/packages/pictograms/examples/preview/package.json b/packages/pictograms/examples/preview/package.json index 616fe3061c65..ce88f1e40b20 100644 --- a/packages/pictograms/examples/preview/package.json +++ b/packages/pictograms/examples/preview/package.json @@ -8,6 +8,7 @@ "develop": "parcel index.html --no-cache" }, "devDependencies": { + "@carbon/elements": "^10.55.0", "@parcel/transformer-sass": "^2.0.1", "parcel": "^2.0.1" }, diff --git a/packages/pictograms/examples/preview/styles.scss b/packages/pictograms/examples/preview/styles.scss index 6559734bb2ea..68eb7468725c 100644 --- a/packages/pictograms/examples/preview/styles.scss +++ b/packages/pictograms/examples/preview/styles.scss @@ -1,6 +1,6 @@ -@import '../../../elements/scss/elements'; -@import '../../../elements/scss/type/font-face/mono'; -@import '../../../elements/scss/type/font-face/sans'; +@import '@carbon/elements/scss/elements'; +@import '@carbon/elements/scss/type/font-face/mono'; +@import '@carbon/elements/scss/type/font-face/sans'; @include carbon--font-face-sans(); @include carbon--font-face-mono(); diff --git a/packages/pictograms/examples/preview/yarn.lock b/packages/pictograms/examples/preview/yarn.lock index d81b51609cb1..59891eeb9fd8 100644 --- a/packages/pictograms/examples/preview/yarn.lock +++ b/packages/pictograms/examples/preview/yarn.lock @@ -309,6 +309,89 @@ __metadata: languageName: node linkType: hard +"@carbon/colors@npm:^10.37.0": + version: 10.37.1 + resolution: "@carbon/colors@npm:10.37.1" + checksum: 7cdc38370d1a51d968f28de951a180211b33db14f6dee5cd55c1d965ebe74c19c55924898df7c344f72dfa2c46a764ad16696038911e77b43d9b701d34c56514 + languageName: node + linkType: hard + +"@carbon/elements@npm:^10.55.0": + version: 10.55.0 + resolution: "@carbon/elements@npm:10.55.0" + dependencies: + "@carbon/colors": ^10.37.0 + "@carbon/grid": ^10.43.0 + "@carbon/icons": ^10.48.0 + "@carbon/import-once": ^10.7.0 + "@carbon/layout": ^10.37.0 + "@carbon/motion": ^10.29.0 + "@carbon/themes": ^10.54.0 + "@carbon/type": ^10.44.0 + checksum: 8aa548120f5257b018a89f98cf41225271574e68686aa4145ea52e73dced92f58edd22f76daaf8c7bd199ca9e1abab19e7dee78868523ec12d08103b679a86a4 + languageName: node + linkType: hard + +"@carbon/grid@npm:^10.43.0": + version: 10.43.1 + resolution: "@carbon/grid@npm:10.43.1" + dependencies: + "@carbon/import-once": ^10.7.0 + "@carbon/layout": ^10.37.1 + checksum: d59818f5602b1cada5188982a687ef861c63a2e165ed3266496b0a0b7e2e12528e55d4ac9d7d4134a4f4c19e7e16fd48425e5982279ac86ff914ba879c120a32 + languageName: node + linkType: hard + +"@carbon/icons@npm:^10.48.0": + version: 10.48.0 + resolution: "@carbon/icons@npm:10.48.0" + checksum: 38c0a89c3a70d56e0490e34ad6c5bb35007a422a7697c419c460c0c2d22135eb1bcf39c54c1cf39f12a4b2d6184eecbdc9b4beeaca84330dcc2638db84a3d92f + languageName: node + linkType: hard + +"@carbon/import-once@npm:^10.7.0": + version: 10.7.0 + resolution: "@carbon/import-once@npm:10.7.0" + checksum: c92625bc34833073a2b113a9cf014353210570ed1105225e70c6c6d06e5203407aa472d95685a53b6460794408897641b8d8cd5fd6416f8b0fa36c28919bf5f0 + languageName: node + linkType: hard + +"@carbon/layout@npm:^10.37.0, @carbon/layout@npm:^10.37.1": + version: 10.37.1 + resolution: "@carbon/layout@npm:10.37.1" + checksum: baabf7e70e4779f0e5000e700bcafe96f272debaac490a4345e39fedf8d0970636f7099e2607aeb9ca6170a56bbacdff69d8181c2a46ed8adac38fadc08332b6 + languageName: node + linkType: hard + +"@carbon/motion@npm:^10.29.0": + version: 10.29.0 + resolution: "@carbon/motion@npm:10.29.0" + checksum: 15894d6bc7c3cbe575ad8b0ac422846777558be1577b1c63da4ce401f5abd821cc278a302f83b5643262f3ca6348c9ba10d9fc48b735e6dcbb6e407c2424b6df + languageName: node + linkType: hard + +"@carbon/themes@npm:^10.54.0": + version: 10.54.0 + resolution: "@carbon/themes@npm:10.54.0" + dependencies: + "@carbon/colors": ^10.37.0 + "@carbon/layout": ^10.37.0 + "@carbon/type": ^10.44.0 + color: ^3.1.2 + checksum: 532e52d3d9e9981513954fe611729f3fbe6dc109dca44a092e520e69c7458d9c27c5c21ca6275bde2934ade529adbfd549adf65633680bdca1ace5f07f7b8b27 + languageName: node + linkType: hard + +"@carbon/type@npm:^10.44.0": + version: 10.44.0 + resolution: "@carbon/type@npm:10.44.0" + dependencies: + "@carbon/grid": ^10.43.0 + "@carbon/import-once": ^10.7.0 + checksum: 58315618107527fc26315e87c924267d3f8e1ea1e9deef76327adc8822c9edca0e2b752d0e9ce8684c93a223e25c80109571476c075570ec64c31423b5d26a9f + languageName: node + linkType: hard + "@iarna/toml@npm:^2.2.0": version: 2.2.5 resolution: "@iarna/toml@npm:2.2.5" @@ -1944,7 +2027,7 @@ __metadata: languageName: node linkType: hard -"color-convert@npm:^1.9.0": +"color-convert@npm:^1.9.0, color-convert@npm:^1.9.3": version: 1.9.3 resolution: "color-convert@npm:1.9.3" dependencies: @@ -1969,13 +2052,33 @@ __metadata: languageName: node linkType: hard -"color-name@npm:~1.1.4": +"color-name@npm:^1.0.0, color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 languageName: node linkType: hard +"color-string@npm:^1.6.0": + version: 1.9.0 + resolution: "color-string@npm:1.9.0" + dependencies: + color-name: ^1.0.0 + simple-swizzle: ^0.2.2 + checksum: 93c6678b847f8cfa47d19677fd19e1d4b19d7a33f100644400357c298266080b5bca64e5f874fa8ac8cc0aa0606ad44f7a838b4e6fd05e6affea190a68555bb4 + languageName: node + linkType: hard + +"color@npm:^3.1.2": + version: 3.2.1 + resolution: "color@npm:3.2.1" + dependencies: + color-convert: ^1.9.3 + color-string: ^1.6.0 + checksum: f81220e8b774d35865c2561be921f5652117638dcda7ca4029262046e37fc2444ac7bbfdd110cf1fd9c074a4ee5eda8f85944ffbdda26186b602dd9bb05f6400 + languageName: node + linkType: hard + "colord@npm:^2.9.1": version: 2.9.2 resolution: "colord@npm:2.9.2" @@ -2776,6 +2879,7 @@ __metadata: version: 0.0.0-use.local resolution: "esm@workspace:." dependencies: + "@carbon/elements": ^10.55.0 "@parcel/transformer-sass": ^2.0.1 parcel: ^2.0.1 prismjs: ^1.20.0 @@ -3652,6 +3756,13 @@ fsevents@~2.3.2: languageName: node linkType: hard +"is-arrayish@npm:^0.3.1": + version: 0.3.2 + resolution: "is-arrayish@npm:0.3.2" + checksum: 977e64f54d91c8f169b59afcd80ff19227e9f5c791fa28fa2e5bce355cbaf6c2c356711b734656e80c9dd4a854dd7efcf7894402f1031dfc5de5d620775b4d5f + languageName: node + linkType: hard + "is-bigint@npm:^1.0.1": version: 1.0.4 resolution: "is-bigint@npm:1.0.4" @@ -6173,6 +6284,15 @@ fsevents@~2.3.2: languageName: node linkType: hard +"simple-swizzle@npm:^0.2.2": + version: 0.2.2 + resolution: "simple-swizzle@npm:0.2.2" + dependencies: + is-arrayish: ^0.3.1 + checksum: a7f3f2ab5c76c4472d5c578df892e857323e452d9f392e1b5cf74b74db66e6294a1e1b8b390b519fa1b96b5b613f2a37db6cffef52c3f1f8f3c5ea64eb2d54c0 + languageName: node + linkType: hard + "slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" diff --git a/packages/react/src/components/DataTable/next/expansion/DataTable-expansion-story.scss b/packages/react/src/components/DataTable/next/expansion/DataTable-expansion-story.scss index e3a3e59fcf71..25b4f33114b9 100644 --- a/packages/react/src/components/DataTable/next/expansion/DataTable-expansion-story.scss +++ b/packages/react/src/components/DataTable/next/expansion/DataTable-expansion-story.scss @@ -1,12 +1,12 @@ -@import '~@carbon/type/scss/type'; -@import '~@carbon/themes/scss/themes'; +@use '../../../../../scss/type'; +@use '../../../../../scss/theme'; .demo-inner-container-header { - @include carbon--type-style('productive-heading-01'); - color: $text-01; + @include type.type-style('heading-compact-01'); + color: theme.$text-primary; } .demo-inner-container-content { - @include carbon--type-style('body-long-01'); - color: $text-02; + @include type.type-style('body-01'); + color: theme.$text-secondary; } diff --git a/packages/sketch/package.json b/packages/sketch/package.json index 69e47dfbaa2b..3d0fefa30f5d 100644 --- a/packages/sketch/package.json +++ b/packages/sketch/package.json @@ -21,7 +21,7 @@ "access": "public" }, "scripts": { - "build": "node tasks/build.js && cross-env NODE_ENV=production skpm-build", + "build:plugin": "node tasks/build.js && cross-env NODE_ENV=production skpm-build", "clean": "rimraf carbon-elements.sketchplugin generated", "develop": "cross-env NODE_ENV=development skpm-build --watch", "log": "skpm log -f", diff --git a/packages/styles/scss/__tests__/type-test.js b/packages/styles/scss/__tests__/type-test.js index 033f99697816..5d2c6a8a9b8a 100644 --- a/packages/styles/scss/__tests__/type-test.js +++ b/packages/styles/scss/__tests__/type-test.js @@ -40,7 +40,6 @@ describe('@carbon/styles/scss/type', () => { }); expect(api.variables).toMatchInlineSnapshot(` Array [ - "caption-01", "label-01", "helper-text-01", "body-short-01", diff --git a/packages/styles/scss/_breakpoint.scss b/packages/styles/scss/_breakpoint.scss index 8121cd6700fb..0ea324898ed1 100644 --- a/packages/styles/scss/_breakpoint.scss +++ b/packages/styles/scss/_breakpoint.scss @@ -6,5 +6,5 @@ // @use './config'; -@forward '@carbon/grid/scss/modules/breakpoint' +@forward '@carbon/grid/scss/breakpoint' show breakpoint, breakpoint-between, breakpoint-down, breakpoint-up; diff --git a/packages/styles/scss/_config.scss b/packages/styles/scss/_config.scss index 653a959d5904..67a07e59f166 100644 --- a/packages/styles/scss/_config.scss +++ b/packages/styles/scss/_config.scss @@ -60,7 +60,7 @@ $flex-grid-columns: 16 !default; /// @group config $use-flexbox-grid: false !default; -@forward '@carbon/grid/scss/modules/config' +@forward '@carbon/grid/scss/config' hide $prefix, $flex-grid-columns with ( $prefix: $prefix, diff --git a/packages/styles/scss/_spacing.scss b/packages/styles/scss/_spacing.scss index 6eb1c72f8012..f0538b7107f2 100644 --- a/packages/styles/scss/_spacing.scss +++ b/packages/styles/scss/_spacing.scss @@ -5,7 +5,7 @@ // LICENSE file in the root directory of this source tree. // -@forward '@carbon/layout/scss/modules/spacing' +@forward '@carbon/layout/scss/spacing' show $spacing, $spacing-01, diff --git a/packages/styles/scss/_theme.scss b/packages/styles/scss/_theme.scss index 5215b7de5649..15f8134196df 100644 --- a/packages/styles/scss/_theme.scss +++ b/packages/styles/scss/_theme.scss @@ -6,18 +6,18 @@ // @use './config' as *; -@use '@carbon/themes/scss/modules/config' with ( +@use '@carbon/themes/scss/config' with ( $prefix: $prefix, ); @use './compat/themes' as compat; @use './themes'; -@forward '@carbon/themes/scss/modules/theme' with ( +@forward '@carbon/themes/scss/theme' with ( $fallback: themes.$white !default, $theme: compat.$white !default, ); -@forward '@carbon/themes/scss/modules/tokens'; -@use '@carbon/themes/scss/modules/tokens'; +@forward '@carbon/themes/scss/tokens'; +@use '@carbon/themes/scss/tokens'; @use './utilities/custom-property'; // Layer sets diff --git a/packages/styles/scss/_themes.scss b/packages/styles/scss/_themes.scss index cec677ab25c5..e70b8b87f3b1 100644 --- a/packages/styles/scss/_themes.scss +++ b/packages/styles/scss/_themes.scss @@ -6,4 +6,4 @@ // @use './config'; -@forward '@carbon/themes/scss/modules/themes' show $white, $g10, $g90, $g100; +@forward '@carbon/themes/scss/themes' show $white, $g10, $g90, $g100; diff --git a/packages/styles/scss/components/aspect-ratio/_aspect-ratio.scss b/packages/styles/scss/components/aspect-ratio/_aspect-ratio.scss index b81b8da78e45..4fd8e664a9da 100644 --- a/packages/styles/scss/components/aspect-ratio/_aspect-ratio.scss +++ b/packages/styles/scss/components/aspect-ratio/_aspect-ratio.scss @@ -15,7 +15,7 @@ /// @type List /// @access public /// @group @carbon/grid -$carbon--aspect-ratios: ( +$aspect-ratios: ( (16, 9), (9, 16), (2, 1), @@ -39,7 +39,7 @@ $carbon--aspect-ratios: ( /// @param {Number} $height height from an aspect ratio /// @access private /// @group @carbon/grid -@mixin aspect-ratio($aspect-ratios: $carbon--aspect-ratios) { +@mixin aspect-ratio($aspect-ratios: $aspect-ratios) { .#{$prefix}--aspect-ratio { position: relative; } diff --git a/packages/styles/scss/type/_reset.scss b/packages/styles/scss/type/_reset.scss index cab65014a81a..94b6f9e60c3e 100644 --- a/packages/styles/scss/type/_reset.scss +++ b/packages/styles/scss/type/_reset.scss @@ -5,4 +5,4 @@ // LICENSE file in the root directory of this source tree. // -@forward '@carbon/type/scss/modules/reset'; +@forward '@carbon/type/scss/reset'; diff --git a/packages/themes/__tests__/mixins-test.js b/packages/themes/__tests__/mixins-test.js deleted file mode 100644 index 5b197a6f1202..000000000000 --- a/packages/themes/__tests__/mixins-test.js +++ /dev/null @@ -1,213 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - * - * @jest-environment node - */ - -'use strict'; - -const { SassRenderer } = require('@carbon/test-utils/scss'); -const { themes } = require('../src'); - -const { render } = SassRenderer.create(__dirname); - -describe('_mixins.scss', () => { - it('should export a carbon--theme mixin', async () => { - const { unwrap } = await render(` - @import '../scss/mixins'; - - $_: get('mixin', mixin-exists(carbon--theme)); - `); - - expect(unwrap('mixin')).toBe(true); - }); - - it('should set token variables for the given theme', async () => { - const themeTests = Object.keys(themes).map((key) => { - const variable = `$carbon--theme--${key}`; - const test = ` - @include carbon--theme(${variable}) { - $_: get('${variable}', $interactive-01); - } - `; - return [variable, themes[key].interactive01, test]; - }); - - const tests = themeTests - .map(([_variable, _expectedColor, test]) => test) - .join('\n'); - const { unwrap } = await render(` - @import '../scss/themes'; - ${tests} - `); - - themeTests.forEach(([variable, expectedColor]) => { - expect(unwrap(variable)).toBe(expectedColor); - }); - }); - - it('should reset token variables after using the theme', async () => { - const { unwrap } = await render(` - @import '../scss/themes'; - - $custom-theme: map-merge($carbon--theme--white, ( - interactive-01: #ffffff, - )); - - $_: get('before', $interactive-01); - - @include carbon--theme($custom-theme) { - $_: get('mixin', $interactive-01); - } - - $_: get('after', $interactive-01); - `); - - expect(unwrap('before')).toBe(unwrap('after')); - expect(unwrap('mixin')).toBe('#ffffff'); - }); - - it('should reset token variables after using the theme with css custom properties', async () => { - const { unwrap } = await render(` - $feature-flags: (enable-css-custom-properties: true); - - @import '../scss/themes'; - - $custom-theme: map-merge($carbon--theme--white, ( - interactive-01: #ffffff, - )); - - $_: get('before', $interactive-01); - - @include carbon--theme($custom-theme) { - $_: get('mixin', $interactive-01); - } - - $_: get('after', $interactive-01); - `); - - expect(unwrap('mixin')).toBe('var(--cds-interactive-01, #ffffff)'); - expect(unwrap('after')).toBe( - `var(--cds-interactive-01, ${unwrap('before')})` - ); - }); - - it('should set the global carbon--theme to match the given theme', async () => { - const { unwrap } = await render(` - @import '../scss/themes'; - $carbon--theme: ( value-01: #000000 ); - $custom-theme: ( value-01: #ffffff ); - - @include carbon--theme($custom-theme) { - $_: get('mixin', $carbon--theme); - } - - $_: get('after', $carbon--theme); - `); - - const mixin = unwrap('mixin'); - const after = unwrap('after'); - - expect(mixin['value-01']).toBe('#ffffff'); - expect(after['value-01']).toBe('#000000'); - }); - - describe('@mixin custom-property', () => { - it('should create a custom property for a given token name and value', async () => { - const { result } = await render(` - @import '../scss/mixins'; - .selector { - @include custom-property('token-01', #000000); - } - `); - - expect(result.css.toString()).toEqual( - expect.stringContaining('--cds-token-01: #000000;') - ); - }); - - it('should export multiple tokens for maps', async () => { - const { result } = await render(` - @import '../scss/mixins'; - .selector { - @include custom-property('token-01', ( - property-01: #000000, - property-02: #ffffff, - )); - } - `); - - const output = result.css.toString(); - expect(output).toEqual( - expect.stringContaining('--cds-token-01-property-01: #000000') - ); - expect(output).toEqual( - expect.stringContaining('--cds-token-01-property-02: #ffffff') - ); - }); - }); - - describe('@function should-emit', () => { - it('should emit a value only if they are different', async () => { - const { unwrap } = await render(` - @import '../scss/mixins'; - - $theme-a: ( - property-01: #000000, - property-02: #ffffff, - property-03: ( - sub-property-01: 16px, - ), - property-04: ( - sub-property-01: 16px, - ), - ); - $theme-b: ( - property-01: #343434, - property-02: #ffffff, - property-03: ( - sub-property-01: 16px, - ), - property-04: ( - sub-property-01: 20px, - ), - ); - - // The properties are different, so should emit - $_: get('first', should-emit($theme-a, $theme-b, 'property-01', true)); - $_: get('second', should-emit($theme-a, $theme-b, 'property-04', true)); - - // The properties are the same so should not emit - $_: get('third', should-emit($theme-a, $theme-b, 'property-02', true)); - $_: get('fourth', should-emit($theme-a, $theme-b, 'property-03', true)); - `); - - expect(unwrap('first')).toBe(true); - expect(unwrap('second')).toBe(true); - expect(unwrap('third')).toBe(false); - expect(unwrap('fourth')).toBe(false); - }); - }); - - describe('v11', () => { - it('should use fallback values for v11 tokens', async () => { - const { unwrap } = await render(` - @import '../scss/mixins'; - @import '../scss/theme-maps'; - - $carbon--theme: ( - ui-background: #ffffff, - ); - @include carbon--theme(); - - $_: get('token', $background); - `); - - // `ui-background` is the fallback for `background` - expect(unwrap('token')).toBe('#ffffff'); - }); - }); -}); diff --git a/packages/themes/__tests__/module-test.js b/packages/themes/__tests__/scss-test.js similarity index 95% rename from packages/themes/__tests__/module-test.js rename to packages/themes/__tests__/scss-test.js index 2f426fc540f0..5ecdd6fe84c9 100644 --- a/packages/themes/__tests__/module-test.js +++ b/packages/themes/__tests__/scss-test.js @@ -10,7 +10,8 @@ 'use strict'; const { SassRenderer } = require('@carbon/test-utils/scss'); -const { group, themes } = require('../src/next'); +const { themes } = require('../src'); +const { group } = require('../src/tokens'); const { render } = SassRenderer.create(__dirname); const tokens = group.getTokens(); @@ -55,7 +56,7 @@ describe('@carbon/themes/scss', () => { test('scss/_themes.scss', async () => { const { unwrap } = await render(` - @use '../scss/modules/themes'; + @use '../scss/themes'; // Themes $_: get('themes.$white', themes.$white); @@ -75,7 +76,7 @@ describe('@carbon/themes/scss', () => { test('$theme', async () => { const { unwrap } = await render(` @use 'sass:map'; - @use '../scss/modules/themes' as *; + @use '../scss/themes' as *; @use '../' as themes with ( $theme: $g100 ); @@ -106,7 +107,7 @@ describe('@carbon/themes/scss', () => { test('$fallback', async () => { const { unwrap } = await render(` @use 'sass:map'; - @use '../scss/modules/themes' as *; + @use '../scss/themes' as *; @use '../' as themes with ( $fallback: $g100, $theme: ( diff --git a/packages/themes/__tests__/theme-maps-test.js b/packages/themes/__tests__/theme-maps-test.js deleted file mode 100644 index dbece1d4c66c..000000000000 --- a/packages/themes/__tests__/theme-maps-test.js +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - * - * @jest-environment node - */ - -'use strict'; - -const { createSassRenderer } = require('@carbon/test-utils/scss'); -const { themes } = require('../src'); - -const render = createSassRenderer(__dirname); - -describe('_theme-maps.scss', () => { - it('should export all themes as sass maps', async () => { - const themeMapsTests = Object.keys(themes).map((theme) => { - return `$t: test(global-variable-exists(carbon--theme--${theme}));`; - }); - const { calls } = await render(` - @import '../scss/theme-maps'; - - ${themeMapsTests.join('\n')} - `); - - for (const call of calls) { - expect(call[0].getValue()).toBe(true); - } - }); -}); diff --git a/packages/themes/__tests__/themes-test.js b/packages/themes/__tests__/themes-test.js deleted file mode 100644 index 6bfdb9d73de0..000000000000 --- a/packages/themes/__tests__/themes-test.js +++ /dev/null @@ -1,130 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -require('core-js/features/array/flat-map'); - -const { convert, createSassRenderer } = require('@carbon/test-utils/scss'); -const { camelCase } = require('change-case'); -const { formatTokenName, themes, tokens } = require('../src'); - -const render = createSassRenderer(__dirname); -const { white: defaultTheme } = themes; - -function flatten(tokens) { - return Object.keys(tokens).flatMap((group) => tokens[group]); -} - -function formatObjectKeys(object) { - if (typeof object !== 'object') { - if (isNaN(object)) { - return object; - } - return parseFloat(object, 10); - } - if (Array.isArray(object)) { - return object; - } - return Object.keys(object).reduce((acc, key) => { - return { - ...acc, - [camelCase(key)]: formatObjectKeys(object[key]), - }; - }, {}); -} - -describe('themes.scss', () => { - describe('tokens', () => { - it.each(flatten(tokens))( - '%s should match the default theme', - async (token) => { - const name = formatTokenName(token); - const { calls } = await render(` - @import '../scss/themes'; - $t: test(global-variable-exists(${name})); - $t: test($${name}); - `); - expect(convert(calls[0][0])).toBe(true); - // Since some of our tokens are objects/maps (specifically type), we'll - // need to format the Sass value so that keys are changed from - // param-case to camelCase and that values are correctly mapped over for - // strings and numbers - expect(formatObjectKeys(convert(calls[1][0]))).toEqual( - defaultTheme[token] - ); - } - ); - }); - - describe('carbon--theme', () => { - it('should export tokens that match the default theme', async () => { - const { calls } = await render(` - @import '../scss/themes'; - $t: test($carbon--theme); - `); - const theme = convert(calls[0][0]); - - Object.keys(defaultTheme).forEach((token) => { - expect(defaultTheme[token]).toEqual( - formatObjectKeys(theme[formatTokenName(token)]) - ); - }); - }); - - it('should update based on global token definitions', async () => { - const color = '#000000'; - const { calls } = await render(` - $interactive-01: ${color}; - - @import '../scss/themes'; - $t: test($carbon--theme); - `); - const theme = convert(calls[0][0]); - - expect(theme['interactive-01']).toEqual(color); - }); - - it('should support emitting the difference between themes', async () => { - const { result } = await render(` - @import '../scss/themes'; - - $carbon--theme: map-merge($carbon--theme--white, ( - interactive-01: #000000, - )); - $theme--light: map-merge($carbon--theme--white, ( - interactive-01: #ffffff, - )); - - .emit-all-values { - @include carbon--theme( - $emit-custom-properties: true, - $emit-difference: false, - ); - } - - .emit-changed-values { - @include carbon--theme( - $theme: $theme--light, - $emit-custom-properties: true, - $emit-difference: true, - ); - } - `); - - const style = document.createElement('style'); - style.innerHTML = result.css.toString(); - document.head.appendChild(style); - - const allValues = document.styleSheets[0].cssRules[0].style; - const changedValues = document.styleSheets[0].cssRules[1].style; - - expect(allValues.length).toBeGreaterThan(changedValues.length); - expect(changedValues.length).toBe(1); - }); - }); -}); diff --git a/packages/themes/__tests__/tokens-test.js b/packages/themes/__tests__/tokens-test.js deleted file mode 100644 index 7a46cb758ba1..000000000000 --- a/packages/themes/__tests__/tokens-test.js +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - * - * @jest-environment node - */ - -'use strict'; - -const { createSassRenderer } = require('@carbon/test-utils/scss'); -const { formatTokenName, tokens } = require('../src'); - -const render = createSassRenderer(__dirname); - -describe('_tokens.scss', () => { - it('should export all tokens', async () => { - const tokenVariableTests = tokens.colors.map((token) => { - return `$t: test(global-variable-exists(${formatTokenName(token)}));`; - }); - const { calls } = await render(` - @import '../scss/tokens'; - - ${tokenVariableTests.join('\n')} - `); - - for (const call of calls) { - expect(call[0].getValue()).toBe(true); - } - }); -}); diff --git a/packages/themes/examples/preview-v11/src/pages/index.js b/packages/themes/examples/preview-v11/src/pages/index.js index ac735c714fdd..a8e91173d5aa 100644 --- a/packages/themes/examples/preview-v11/src/pages/index.js +++ b/packages/themes/examples/preview-v11/src/pages/index.js @@ -5,14 +5,10 @@ * LICENSE file in the root directory of this source tree. */ -import { colors, unstable_hoverColors } from '@carbon/colors'; +import { colors, hoverColors } from '@carbon/colors'; import React from 'react'; -import { - themes, - TokenFormat, - group, - set as tokenSet, -} from '../../../../src/next'; +import { themes } from '../../../../src'; +import { TokenFormat, group, set as tokenSet } from '../../../../src/tokens'; const tokens = group.getTokens(); const groups = group.getTokenGroups(); @@ -60,7 +56,7 @@ for (const [swatch, grades] of Object.entries(colors)) { } } -for (const [swatch, grades] of Object.entries(unstable_hoverColors)) { +for (const [swatch, grades] of Object.entries(hoverColors)) { if (typeof grades !== 'object') { addColorByValue( grades, diff --git a/packages/themes/examples/preview/package.json b/packages/themes/examples/preview/package.json index 4f996408129e..ae38510bb953 100644 --- a/packages/themes/examples/preview/package.json +++ b/packages/themes/examples/preview/package.json @@ -8,6 +8,8 @@ "develop": "parcel index.html --no-cache" }, "dependencies": { + "@carbon/grid": "^10.43.1", + "@carbon/themes": "^10.54.0", "classnames": "^2.2.6", "react": "^16.13.1", "react-dom": "^16.13.1" diff --git a/packages/themes/examples/preview/styles.scss b/packages/themes/examples/preview/styles.scss index 12302cb295a6..6c13fa3a3071 100644 --- a/packages/themes/examples/preview/styles.scss +++ b/packages/themes/examples/preview/styles.scss @@ -5,8 +5,8 @@ // LICENSE file in the root directory of this source tree. // -@import '../../../grid/scss/grid'; -@import '../../scss/themes'; +@import '@carbon/grid/scss/grid'; +@import '@carbon/themes/scss/themes'; table { text-align: left; diff --git a/packages/themes/examples/preview/yarn.lock b/packages/themes/examples/preview/yarn.lock index 38b9dfc7ea5f..a13906c06ffb 100644 --- a/packages/themes/examples/preview/yarn.lock +++ b/packages/themes/examples/preview/yarn.lock @@ -309,10 +309,43 @@ __metadata: languageName: node linkType: hard +"@carbon/colors@npm:^10.37.0": + version: 10.37.1 + resolution: "@carbon/colors@npm:10.37.1" + checksum: 7cdc38370d1a51d968f28de951a180211b33db14f6dee5cd55c1d965ebe74c19c55924898df7c344f72dfa2c46a764ad16696038911e77b43d9b701d34c56514 + languageName: node + linkType: hard + +"@carbon/grid@npm:^10.43.0, @carbon/grid@npm:^10.43.1": + version: 10.43.1 + resolution: "@carbon/grid@npm:10.43.1" + dependencies: + "@carbon/import-once": ^10.7.0 + "@carbon/layout": ^10.37.1 + checksum: d59818f5602b1cada5188982a687ef861c63a2e165ed3266496b0a0b7e2e12528e55d4ac9d7d4134a4f4c19e7e16fd48425e5982279ac86ff914ba879c120a32 + languageName: node + linkType: hard + +"@carbon/import-once@npm:^10.7.0": + version: 10.7.0 + resolution: "@carbon/import-once@npm:10.7.0" + checksum: c92625bc34833073a2b113a9cf014353210570ed1105225e70c6c6d06e5203407aa472d95685a53b6460794408897641b8d8cd5fd6416f8b0fa36c28919bf5f0 + languageName: node + linkType: hard + +"@carbon/layout@npm:^10.37.0, @carbon/layout@npm:^10.37.1": + version: 10.37.1 + resolution: "@carbon/layout@npm:10.37.1" + checksum: baabf7e70e4779f0e5000e700bcafe96f272debaac490a4345e39fedf8d0970636f7099e2607aeb9ca6170a56bbacdff69d8181c2a46ed8adac38fadc08332b6 + languageName: node + linkType: hard + "@carbon/themes-examples-preview@workspace:.": version: 0.0.0-use.local resolution: "@carbon/themes-examples-preview@workspace:." dependencies: + "@carbon/grid": ^10.43.1 + "@carbon/themes": ^10.54.0 "@parcel/transformer-sass": ^2.0.1 classnames: ^2.2.6 parcel: ^2.0.1 @@ -321,6 +354,28 @@ __metadata: languageName: unknown linkType: soft +"@carbon/themes@npm:^10.54.0": + version: 10.54.0 + resolution: "@carbon/themes@npm:10.54.0" + dependencies: + "@carbon/colors": ^10.37.0 + "@carbon/layout": ^10.37.0 + "@carbon/type": ^10.44.0 + color: ^3.1.2 + checksum: 532e52d3d9e9981513954fe611729f3fbe6dc109dca44a092e520e69c7458d9c27c5c21ca6275bde2934ade529adbfd549adf65633680bdca1ace5f07f7b8b27 + languageName: node + linkType: hard + +"@carbon/type@npm:^10.44.0": + version: 10.44.0 + resolution: "@carbon/type@npm:10.44.0" + dependencies: + "@carbon/grid": ^10.43.0 + "@carbon/import-once": ^10.7.0 + checksum: 58315618107527fc26315e87c924267d3f8e1ea1e9deef76327adc8822c9edca0e2b752d0e9ce8684c93a223e25c80109571476c075570ec64c31423b5d26a9f + languageName: node + linkType: hard + "@iarna/toml@npm:^2.2.0": version: 2.2.5 resolution: "@iarna/toml@npm:2.2.5" @@ -1952,7 +2007,7 @@ __metadata: languageName: node linkType: hard -"color-convert@npm:^1.9.0": +"color-convert@npm:^1.9.0, color-convert@npm:^1.9.3": version: 1.9.3 resolution: "color-convert@npm:1.9.3" dependencies: @@ -1977,13 +2032,33 @@ __metadata: languageName: node linkType: hard -"color-name@npm:~1.1.4": +"color-name@npm:^1.0.0, color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 languageName: node linkType: hard +"color-string@npm:^1.6.0": + version: 1.9.0 + resolution: "color-string@npm:1.9.0" + dependencies: + color-name: ^1.0.0 + simple-swizzle: ^0.2.2 + checksum: 93c6678b847f8cfa47d19677fd19e1d4b19d7a33f100644400357c298266080b5bca64e5f874fa8ac8cc0aa0606ad44f7a838b4e6fd05e6affea190a68555bb4 + languageName: node + linkType: hard + +"color@npm:^3.1.2": + version: 3.2.1 + resolution: "color@npm:3.2.1" + dependencies: + color-convert: ^1.9.3 + color-string: ^1.6.0 + checksum: f81220e8b774d35865c2561be921f5652117638dcda7ca4029262046e37fc2444ac7bbfdd110cf1fd9c074a4ee5eda8f85944ffbdda26186b602dd9bb05f6400 + languageName: node + linkType: hard + "colord@npm:^2.9.1": version: 2.9.2 resolution: "colord@npm:2.9.2" @@ -3631,6 +3706,13 @@ fsevents@~2.3.2: languageName: node linkType: hard +"is-arrayish@npm:^0.3.1": + version: 0.3.2 + resolution: "is-arrayish@npm:0.3.2" + checksum: 977e64f54d91c8f169b59afcd80ff19227e9f5c791fa28fa2e5bce355cbaf6c2c356711b734656e80c9dd4a854dd7efcf7894402f1031dfc5de5d620775b4d5f + languageName: node + linkType: hard + "is-bigint@npm:^1.0.1": version: 1.0.4 resolution: "is-bigint@npm:1.0.4" @@ -6133,6 +6215,15 @@ fsevents@~2.3.2: languageName: node linkType: hard +"simple-swizzle@npm:^0.2.2": + version: 0.2.2 + resolution: "simple-swizzle@npm:0.2.2" + dependencies: + is-arrayish: ^0.3.1 + checksum: a7f3f2ab5c76c4472d5c578df892e857323e452d9f392e1b5cf74b74db66e6294a1e1b8b390b519fa1b96b5b613f2a37db6cffef52c3f1f8f3c5ea64eb2d54c0 + languageName: node + linkType: hard + "slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" diff --git a/packages/themes/index.scss b/packages/themes/index.scss index be24212194c0..a66fb095f9a2 100644 --- a/packages/themes/index.scss +++ b/packages/themes/index.scss @@ -5,6 +5,6 @@ // LICENSE file in the root directory of this source tree. // -@forward 'scss/modules/config'; -@forward 'scss/modules/theme'; -@forward 'scss/modules/tokens'; +@forward 'scss/config'; +@forward 'scss/theme'; +@forward 'scss/tokens'; diff --git a/packages/themes/package.json b/packages/themes/package.json index f3003fefb686..d16770dd0020 100644 --- a/packages/themes/package.json +++ b/packages/themes/package.json @@ -25,7 +25,7 @@ }, "scripts": { "ci-check": "carbon-cli check \"scss/**/*.scss\" -i \"**/generated/**\" -i \"**/compat/**\"", - "clean": "rimraf es lib umd scss/generated", + "clean": "rimraf es lib umd scss/generated scss/compat/generated", "build": "yarn clean && carbon-cli bundle src/index.js --name CarbonThemes && babel-node --presets '@babel/preset-env' tasks/build.js && carbon-cli check \"scss/*.scss\"" }, "dependencies": { diff --git a/packages/themes/scss/modules/_config.scss b/packages/themes/scss/_config.scss similarity index 100% rename from packages/themes/scss/modules/_config.scss rename to packages/themes/scss/_config.scss diff --git a/packages/themes/scss/_mixins.scss b/packages/themes/scss/_mixins.scss deleted file mode 100644 index 6f1e2adce38d..000000000000 --- a/packages/themes/scss/_mixins.scss +++ /dev/null @@ -1,39 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -/// @access private -/// @group @carbon/themes -$custom-property-prefix: 'cds' !default; - -/// @access private -/// @group @carbon/themes -@mixin custom-property($name, $value, $prefix: $custom-property-prefix) { - @if type-of($value) == map { - @each $property, $property-value in $value { - // Only support one-level of depth for values that are maps. This is to - // avoid bringing properties like `breakpoints` on type tokens - @if type-of($property-value) != map { - @include custom-property('#{$name}-#{$property}', $property-value); - } - } - } @else { - --#{$prefix}-#{$name}: #{$value}; - } -} - -/// @access private -/// @group @carbon/themes -@function should-emit($theme-a, $theme-b, $token, $emit-difference) { - @if $emit-difference == false { - @return true; - } - @return map-get($theme-a, $token) != map-get($theme-b, $token); -} - -// We import mixins last so that these methods are made available to the -// carbon--theme mixin -@import './generated/mixins'; diff --git a/packages/themes/scss/_theme-maps.scss b/packages/themes/scss/_theme-maps.scss deleted file mode 100644 index dd8c574ee6d9..000000000000 --- a/packages/themes/scss/_theme-maps.scss +++ /dev/null @@ -1,9 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import './generated/tokens'; -@import './generated/themes'; diff --git a/packages/themes/scss/modules/_theme.scss b/packages/themes/scss/_theme.scss similarity index 100% rename from packages/themes/scss/modules/_theme.scss rename to packages/themes/scss/_theme.scss diff --git a/packages/themes/scss/modules/_themes.scss b/packages/themes/scss/_themes.scss similarity index 100% rename from packages/themes/scss/modules/_themes.scss rename to packages/themes/scss/_themes.scss diff --git a/packages/themes/scss/_tokens.scss b/packages/themes/scss/_tokens.scss index 0d6a099bfae8..ade2391ec944 100644 --- a/packages/themes/scss/_tokens.scss +++ b/packages/themes/scss/_tokens.scss @@ -5,4 +5,4 @@ // LICENSE file in the root directory of this source tree. // -@import './generated/tokens'; +@forward 'generated/tokens'; diff --git a/packages/themes/scss/modules/_utilities.scss b/packages/themes/scss/_utilities.scss similarity index 100% rename from packages/themes/scss/modules/_utilities.scss rename to packages/themes/scss/_utilities.scss diff --git a/packages/themes/scss/index.scss b/packages/themes/scss/index.scss deleted file mode 100644 index 182c97c839a8..000000000000 --- a/packages/themes/scss/index.scss +++ /dev/null @@ -1,8 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'themes'; diff --git a/packages/themes/scss/modules/_tokens.scss b/packages/themes/scss/modules/_tokens.scss deleted file mode 100644 index ade2391ec944..000000000000 --- a/packages/themes/scss/modules/_tokens.scss +++ /dev/null @@ -1,8 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@forward 'generated/tokens'; diff --git a/packages/themes/scss/themes.scss b/packages/themes/scss/themes.scss deleted file mode 100644 index e07cee11ca2e..000000000000 --- a/packages/themes/scss/themes.scss +++ /dev/null @@ -1,10 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import './generated/tokens'; -@import './generated/themes'; -@import './mixins'; diff --git a/packages/themes/src/__tests__/themes-test.js b/packages/themes/src/__tests__/themes-test.js index c72819a25d29..060b3ece7d21 100644 --- a/packages/themes/src/__tests__/themes-test.js +++ b/packages/themes/src/__tests__/themes-test.js @@ -7,26 +7,20 @@ * @jest-environment node */ -const { themes, tokens } = require('../'); +import { themes } from '../'; +import { group, TokenFormat } from '../tokens'; -const tokenList = Object.keys(tokens).reduce((acc, key) => { - return acc.concat(tokens[key]); -}, []); +const tokens = group.getTokens().map((token) => { + return TokenFormat.convert({ + name: token.name, + format: TokenFormat.formats.js, + }); +}); describe('themes', () => { - describe.each(Object.keys(themes))('%s', (name) => { - const theme = themes[name]; - - // Test to make sure that all tokens defined exist in the theme - test.each(tokenList)('%s should be defined', (token) => { + describe.each(Object.entries(themes))('%s', (_name, theme) => { + test.each(tokens)('%s should be defined', (token) => { expect(theme[token]).toBeDefined(); }); - - // Test to make sure that all values in the them are actually tokens, useful - // for catching a case where we have an extra token that should be in the - // tokens export - test.each(Object.keys(theme))('%s should be a token', (token) => { - expect(tokenList.indexOf(token)).not.toBe(-1); - }); }); }); diff --git a/packages/themes/src/g10.js b/packages/themes/src/g10.js index ab4fc189e951..68a963095797 100644 --- a/packages/themes/src/g10.js +++ b/packages/themes/src/g10.js @@ -4,233 +4,195 @@ * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ -import { adjustLightness } from './tools'; import { // Blue blue20, + blue30, blue40, blue60, blue70, - blue80, // Gray gray10, + gray10Hover, gray20, + gray20Hover, gray30, gray40, gray50, gray60, gray70, gray80, + gray80Hover, gray100, // Support blue50, green40, - green60, - yellow, + green50, + yellow30, + orange40, red50, red60, - red80, purple60, // Constants white, - black, - - // Tools - rgba, + whiteHover, } from '@carbon/colors'; - -export const interactive01 = blue60; -export const interactive02 = gray80; -export const interactive03 = blue60; -export const interactive04 = blue60; - -export const uiBackground = gray10; - -export const ui01 = white; -export const ui02 = gray10; -export const ui03 = gray20; -export const ui04 = gray50; -export const ui05 = gray100; - -export const text01 = gray100; -export const text02 = gray70; -export const text03 = gray40; -export const text04 = white; -export const text05 = gray60; -export const textError = red60; - -export const icon01 = gray100; -export const icon02 = gray70; -export const icon03 = white; - -export const link01 = blue60; -export const link02 = blue70; - -export const inverseLink = blue40; - +import { adjustAlpha } from './tools'; + +// Background +export const background = gray10; +export const backgroundInverse = gray80; +export const backgroundBrand = blue60; +export const backgroundActive = adjustAlpha(gray50, 0.5); +export const backgroundHover = adjustAlpha(gray50, 0.12); +export const backgroundInverseHover = gray80Hover; +export const backgroundSelected = adjustAlpha(gray50, 0.2); +export const backgroundSelectedHover = adjustAlpha(gray50, 0.32); + +// Layer +// layer-01 +export const layer01 = white; +export const layerActive01 = gray30; +export const layerHover01 = whiteHover; +export const layerSelected01 = gray20; +export const layerSelectedHover01 = gray20Hover; + +// layer-02 +export const layer02 = gray10; +export const layerActive02 = gray30; +export const layerHover02 = gray10Hover; +export const layerSelected02 = gray20; +export const layerSelectedHover02 = gray20Hover; + +// layer-03 +export const layer03 = white; +export const layerActive03 = gray30; +export const layerHover03 = whiteHover; +export const layerSelected03 = gray20; +export const layerSelectedHover03 = gray20Hover; + +// layer +export const layerSelectedInverse = gray100; +export const layerSelectedDisabled = gray50; + +// layer-accent-01 +export const layerAccent01 = gray20; +export const layerAccentActive01 = gray40; +export const layerAccentHover01 = gray20Hover; + +// layer-accent-02 +export const layerAccent02 = gray20; +export const layerAccentActive02 = gray40; +export const layerAccentHover02 = gray20Hover; + +// layer-accent-03 +export const layerAccent03 = gray20; +export const layerAccentActive03 = gray40; +export const layerAccentHover03 = gray20Hover; + +// Field +// field-01 export const field01 = white; -export const field02 = gray10; +export const fieldHover01 = whiteHover; -export const inverse01 = white; -export const inverse02 = gray80; - -export const support01 = red60; -export const support02 = green60; -export const support03 = yellow; -export const support04 = blue70; - -export const inverseSupport01 = red50; -export const inverseSupport02 = green40; -export const inverseSupport03 = yellow; -export const inverseSupport04 = blue50; - -export const overlay01 = rgba(gray100, 0.5); - -export const danger01 = red60; -export const danger02 = red60; +// field-02 +export const field02 = gray10; +export const fieldHover02 = gray10Hover; -// Interaction states -export const focus = blue60; -export const inverseFocusUi = white; +// field-03 +export const field03 = white; +export const fieldHover03 = whiteHover; -export const hoverPrimary = '#0353e9'; -export const activePrimary = blue80; +// Border +// border-subtle-00 +export const borderSubtle00 = gray20; -export const hoverPrimaryText = blue70; +// border-subtle-01 +export const borderSubtle01 = gray20; +export const borderSubtleSelected01 = gray30; -export const hoverSecondary = '#4c4c4c'; -export const activeSecondary = gray60; +// border-subtle-02 +export const borderSubtle02 = gray20; +export const borderSubtleSelected02 = gray30; -export const hoverTertiary = '#0353e9'; -export const activeTertiary = blue80; +// border-subtle-03 +export const borderSubtle03 = gray20; +export const borderSubtleSelected03 = gray30; -export const hoverUI = '#e5e5e5'; -export const hoverLightUI = '#e5e5e5'; -export const activeUI = gray30; -export const activeLightUI = gray30; -export const selectedUI = gray20; -export const selectedLightUI = gray20; -export const inverseHoverUI = '#4c4c4c'; +// border-strong +export const borderStrong01 = gray50; +export const borderStrong02 = gray50; +export const borderStrong03 = gray50; -export const hoverSelectedUI = '#cacaca'; +// border-inverse +export const borderInverse = gray100; -export const hoverDanger = adjustLightness(danger01, -8); -export const activeDanger = red80; +// border-interactive +export const borderInteractive = blue60; -export const hoverRow = '#e5e5e5'; +// border +export const borderDisabled = gray30; -export const visitedLink = purple60; +// Text +export const textPrimary = gray100; +export const textSecondary = gray70; +export const textPlaceholder = adjustAlpha(textPrimary, 0.4); +export const textHelper = gray60; +export const textError = red60; +export const textInverse = white; +export const textOnColor = white; +export const textOnColorDisabled = gray50; +export const textDisabled = adjustAlpha(textPrimary, 0.25); + +// Link +export const linkPrimary = blue60; +export const linkPrimaryHover = blue70; +export const linkSecondary = blue70; +export const linkInverse = blue40; +export const linkVisited = purple60; +export const linkInverseActive = gray10; +export const linkInverseHover = blue30; + +// Icon +export const iconPrimary = gray100; +export const iconSecondary = gray70; +export const iconInverse = white; +export const iconOnColor = white; +export const iconOnColorDisabled = gray50; +export const iconDisabled = adjustAlpha(iconPrimary, 0.25); + +// Support +export const supportError = red60; +export const supportSuccess = green50; +export const supportWarning = yellow30; +export const supportInfo = blue70; +export const supportErrorInverse = red50; +export const supportSuccessInverse = green40; +export const supportWarningInverse = yellow30; +export const supportInfoInverse = blue50; +export const supportCautionMinor = yellow30; +export const supportCautionMajor = orange40; +export const supportCautionUndefined = purple60; + +// Focus +export const focus = blue60; +export const focusInset = white; +export const focusInverse = white; -export const disabled01 = white; -export const disabled02 = gray30; -export const disabled03 = gray50; +// Skeleton +export const skeletonBackground = gray10Hover; +export const skeletonElement = gray30; +// Misc +export const interactive = blue60; export const highlight = blue20; - -export const decorative01 = gray20; - -export const buttonSeparator = '#e0e0e0'; - -export const skeleton01 = '#e5e5e5'; -export const skeleton02 = gray30; - -// New color tokens -// TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens -export const background = uiBackground; -export const layer = ui01; -export const layerAccent = ui03; -export const layerAccentActive = gray40; -export const layerAccentHover = adjustLightness(layerAccent, -6); -export const field = field01; -export const backgroundInverse = inverse02; -export const backgroundBrand = interactive01; -export const interactive = interactive04; - -export const borderSubtle = ui03; -export const borderStrong = ui04; -export const borderInverse = ui05; -export const borderInteractive = interactive04; - -export const textPrimary = text01; -export const textSecondary = text02; -export const textPlaceholder = text03; -export const textHelper = text05; -export const textOnColor = text04; -export const textInverse = inverse01; - -export const linkPrimary = link01; -export const linkSecondary = link02; -export const linkVisited = visitedLink; -export const linkInverse = inverseLink; - -export const iconPrimary = icon01; -export const iconSecondary = icon02; -export const iconOnColor = icon03; -export const iconInverse = inverse01; - -export const supportError = support01; -export const supportSuccess = support02; -export const supportWarning = support03; -export const supportInfo = support04; -export const supportErrorInverse = inverseSupport01; -export const supportSuccessInverse = inverseSupport02; -export const supportWarningInverse = inverseSupport03; -export const supportInfoInverse = inverseSupport04; - -export const overlay = overlay01; -export const toggleOff = ui04; -export const shadow = rgba(black, 0.3); - -export const buttonPrimary = interactive01; -export const buttonSecondary = interactive02; -export const buttonTertiary = interactive03; -export const buttonDangerPrimary = danger01; -export const buttonDangerSecondary = danger02; - -export const backgroundActive = activeUI; -export const layerActive = activeUI; - -export const buttonDangerActive = activeDanger; -export const buttonPrimaryActive = activePrimary; -export const buttonSecondaryActive = activeSecondary; -export const buttonTertiaryActive = activeTertiary; - -export const focusInset = inverse01; -export const focusInverse = inverseFocusUi; - -export const backgroundHover = hoverUI; -export const layerHover = hoverUI; -export const fieldHover = hoverUI; -export const backgroundInverseHover = inverseHoverUI; -export const linkPrimaryHover = hoverPrimaryText; -export const buttonDangerHover = hoverDanger; -export const buttonPrimaryHover = hoverPrimary; -export const buttonSecondaryHover = hoverSecondary; -export const buttonTertiaryHover = hoverTertiary; - -export const backgroundSelected = selectedUI; -export const backgroundSelectedHover = hoverSelectedUI; -export const layerSelected = selectedUI; -export const layerSelectedHover = hoverSelectedUI; -export const layerSelectedInverse = ui05; -export const borderSubtleSelected = activeUI; - -export const borderDisabled = disabled01; - -export const textDisabled = disabled02; -export const buttonDisabled = disabled02; -export const iconDisabled = disabled02; - -export const textOnColorDisabled = disabled03; -export const iconOnColorDisabled = disabled03; -export const layerSelectedDisabled = disabled03; - -export const skeletonBackground = skeleton01; -export const skeletonElement = skeleton02; +export const overlay = 'rgba(22, 22, 22, 0.5)'; +export const toggleOff = gray50; +export const shadow = 'rgba(0, 0, 0, 0.3)'; export { // Type @@ -268,31 +230,6 @@ export { display02, display03, display04, - // V11 Tokens - legal01, - legal02, - bodyCompact01, - bodyCompact02, - body01, - body02, - headingCompact01, - headingCompact02, - heading03, - heading04, - heading05, - heading06, - heading07, - fluidHeading03, - fluidHeading04, - fluidHeading05, - fluidHeading06, - fluidParagraph01, - fluidQuotation01, - fluidQuotation02, - fluidDisplay01, - fluidDisplay02, - fluidDisplay03, - fluidDisplay04, // Layout // Spacing spacing01, @@ -313,15 +250,6 @@ export { fluidSpacing02, fluidSpacing03, fluidSpacing04, - // Layout - // Deprecated -- Remove in v11 - layout01, - layout02, - layout03, - layout04, - layout05, - layout06, - layout07, // Containers container01, container02, @@ -338,11 +266,3 @@ export { iconSize01, iconSize02, } from './white'; - -// Deprecated ☠️ -export const brand01 = interactive01; -export const brand02 = interactive02; -export const brand03 = interactive03; -export const active01 = activeUI; -export const hoverField = hoverUI; -export const danger = danger01; diff --git a/packages/themes/src/g100.js b/packages/themes/src/g100.js index 8ef8f8db91c5..36255d09510c 100644 --- a/packages/themes/src/g100.js +++ b/packages/themes/src/g100.js @@ -4,35 +4,41 @@ * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ -import { adjustLightness } from './tools'; import { // Blue - blue30, blue40, - blue50, blue60, + blue70, blue80, // Gray gray10, gray30, + gray40, gray50, gray60, + gray60Hover, gray70, + gray70Hover, gray80, + gray80Hover, gray90, + gray90Hover, gray100, // Support + blue30, + blue50, green40, green50, - yellow, + yellow30, + orange40, red40, red50, red60, - red80, purple40, + purple50, // Constants white, @@ -40,197 +46,161 @@ import { // Tools rgba, + gray10Hover, } from '@carbon/colors'; - -export const interactive01 = blue60; -export const interactive02 = gray60; -export const interactive03 = white; -export const interactive04 = blue50; - -export const uiBackground = gray100; - -export const ui01 = gray90; -export const ui02 = gray80; -export const ui03 = gray80; -export const ui04 = gray60; -export const ui05 = gray10; - -export const text01 = gray10; -export const text02 = gray30; -export const text03 = gray60; -export const text04 = white; -export const text05 = gray50; -export const textError = red40; - -export const icon01 = gray10; -export const icon02 = gray30; -export const icon03 = white; - -export const link01 = blue40; -export const link02 = blue30; - -export const inverseLink = blue60; - +import { adjustLightness, adjustAlpha } from './tools'; + +// Background +export const background = gray100; +export const backgroundInverse = gray10; +export const backgroundBrand = blue60; +export const backgroundActive = adjustAlpha(gray50, 0.4); +export const backgroundHover = adjustAlpha(gray50, 0.16); +export const backgroundInverseHover = gray10Hover; +export const backgroundSelected = adjustAlpha(gray50, 0.24); +export const backgroundSelectedHover = adjustAlpha(gray50, 0.32); + +// Layer +// layer-01 +export const layer01 = gray90; +export const layerActive01 = gray70; +export const layerHover01 = gray90Hover; +export const layerSelected01 = gray80; +export const layerSelectedHover01 = gray80Hover; + +// layer-02 +export const layer02 = gray80; +export const layerActive02 = gray60; +export const layerHover02 = gray80Hover; +export const layerSelected02 = gray70; +export const layerSelectedHover02 = gray70Hover; + +// layer-03 +export const layer03 = gray70; +export const layerActive03 = gray50; +export const layerHover03 = gray70Hover; +export const layerSelected03 = gray60; +export const layerSelectedHover03 = gray60Hover; + +// layer +export const layerSelectedInverse = gray10; +export const layerSelectedDisabled = gray40; + +// layer-accent-01 +export const layerAccent01 = gray80; +export const layerAccentActive01 = gray60; +export const layerAccentHover01 = gray80Hover; + +// layer-accent-02 +export const layerAccent02 = gray70; +export const layerAccentActive02 = gray50; +export const layerAccentHover02 = gray70Hover; + +// layer-accent-03 +export const layerAccent03 = gray60; +export const layerAccentActive03 = gray80; +export const layerAccentHover03 = gray60Hover; + +// Field +// field-01 export const field01 = gray90; -export const field02 = gray80; - -export const inverse01 = gray100; -export const inverse02 = gray10; - -export const support01 = red50; -export const support02 = green40; -export const support03 = yellow; -export const support04 = blue50; - -export const inverseSupport01 = red60; -export const inverseSupport02 = green50; -export const inverseSupport03 = yellow; -export const inverseSupport04 = blue60; +export const fieldHover01 = gray90Hover; -export const overlay01 = rgba(black, 0.65); - -export const danger01 = red60; -export const danger02 = red50; +// field-02 +export const field02 = gray80; +export const fieldHover02 = gray80Hover; -// Interaction states -export const focus = white; -export const inverseFocusUi = blue60; +// field-03 +export const field03 = gray70; +export const fieldHover03 = gray70Hover; -export const hoverPrimary = '#0353e9'; -export const activePrimary = blue80; +// Border +// border-subtle-00 +export const borderSubtle00 = gray80; -export const hoverPrimaryText = blue30; +// border-subtle-01 +export const borderSubtle01 = gray80; +export const borderSubtleSelected01 = gray70; -export const hoverSecondary = '#606060'; -export const activeSecondary = gray80; +// border-subtle-02 +export const borderSubtle02 = gray70; +export const borderSubtleSelected02 = gray60; -export const hoverTertiary = gray10; -export const activeTertiary = gray30; +// border-subtle-03 +export const borderSubtle03 = gray60; +export const borderSubtleSelected03 = gray50; -export const hoverUI = '#353535'; -export const hoverLightUI = '#4c4c4c'; -export const activeUI = gray70; -export const activeLightUI = gray60; -export const selectedUI = gray80; -export const selectedLightUI = gray70; -export const inverseHoverUI = '#e5e5e5'; +// border-strong +export const borderStrong01 = gray60; +export const borderStrong02 = gray50; +export const borderStrong03 = gray40; -export const hoverSelectedUI = '#4c4c4c'; +// border-inverse +export const borderInverse = gray10; -export const hoverDanger = adjustLightness(danger01, -8); -export const activeDanger = red80; +// border-interactive +export const borderInteractive = blue50; -export const hoverRow = '#353535'; +// border +export const borderDisabled = adjustAlpha(gray50, 0.5); -export const visitedLink = purple40; +// Text +export const textPrimary = gray10; +export const textSecondary = gray30; +export const textPlaceholder = adjustAlpha(textPrimary, 0.4); +export const textHelper = gray40; +export const textError = red40; +export const textInverse = gray100; +export const textOnColor = white; +export const textOnColorDisabled = adjustAlpha(textOnColor, 0.25); +export const textDisabled = adjustAlpha(textPrimary, 0.25); + +// Link +export const linkPrimary = blue40; +export const linkPrimaryHover = blue30; +export const linkSecondary = blue30; +export const linkInverse = blue60; +export const linkVisited = purple40; +export const linkInverseActive = gray100; +export const linkInverseHover = blue70; + +// Icon +export const iconPrimary = gray10; +export const iconSecondary = gray30; +export const iconInverse = gray100; +export const iconOnColor = white; +export const iconOnColorDisabled = adjustAlpha(iconOnColor, 0.25); +export const iconDisabled = adjustAlpha(iconPrimary, 0.25); + +// Support +export const supportError = red50; +export const supportSuccess = green40; +export const supportWarning = yellow30; +export const supportInfo = blue50; +export const supportErrorInverse = red60; +export const supportSuccessInverse = green50; +export const supportWarningInverse = yellow30; +export const supportInfoInverse = blue70; +export const supportCautionMinor = yellow30; +export const supportCautionMajor = orange40; +export const supportCautionUndefined = purple50; + +// Focus +export const focus = white; +export const focusInset = gray100; +export const focusInverse = blue60; -export const disabled01 = gray90; -export const disabled02 = gray70; -export const disabled03 = gray50; +// Skeleton +export const skeletonBackground = adjustLightness(background, 7); +export const skeletonElement = gray80; +// Misc +export const interactive = blue50; export const highlight = blue80; - -export const decorative01 = gray70; - -export const buttonSeparator = '#161616'; - -export const skeleton01 = '#353535'; -export const skeleton02 = gray70; - -// New color tokens -// TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens -export const background = uiBackground; -export const layer = ui01; -export const layerAccent = ui03; -export const layerAccentActive = gray60; -export const layerAccentHover = adjustLightness(layerAccent, +6); -export const field = field01; -export const backgroundInverse = inverse02; -export const backgroundBrand = interactive01; -export const interactive = interactive04; - -export const borderSubtle = ui03; -export const borderStrong = ui04; -export const borderInverse = ui05; -export const borderInteractive = interactive04; - -export const textPrimary = text01; -export const textSecondary = text02; -export const textPlaceholder = text03; -export const textHelper = text05; -export const textOnColor = text04; -export const textInverse = inverse01; - -export const linkPrimary = link01; -export const linkSecondary = link02; -export const linkVisited = visitedLink; -export const linkInverse = inverseLink; - -export const iconPrimary = icon01; -export const iconSecondary = icon02; -export const iconOnColor = icon03; -export const iconInverse = inverse01; - -export const supportError = support01; -export const supportSuccess = support02; -export const supportWarning = support03; -export const supportInfo = support04; -export const supportErrorInverse = inverseSupport01; -export const supportSuccessInverse = inverseSupport02; -export const supportWarningInverse = inverseSupport03; -export const supportInfoInverse = inverseSupport04; - -export const overlay = overlay01; -export const toggleOff = ui04; +export const overlay = rgba(black, 0.65); +export const toggleOff = gray60; export const shadow = rgba(black, 0.8); -export const buttonPrimary = interactive01; -export const buttonSecondary = interactive02; -export const buttonTertiary = interactive03; -export const buttonDangerPrimary = danger01; -export const buttonDangerSecondary = danger02; - -export const backgroundActive = activeUI; -export const layerActive = activeUI; - -export const buttonDangerActive = activeDanger; -export const buttonPrimaryActive = activePrimary; -export const buttonSecondaryActive = activeSecondary; -export const buttonTertiaryActive = activeTertiary; - -export const focusInset = inverse01; -export const focusInverse = inverseFocusUi; - -export const backgroundHover = hoverUI; -export const layerHover = hoverUI; -export const fieldHover = hoverUI; -export const backgroundInverseHover = inverseHoverUI; -export const linkPrimaryHover = hoverPrimaryText; -export const buttonDangerHover = hoverDanger; -export const buttonPrimaryHover = hoverPrimary; -export const buttonSecondaryHover = hoverSecondary; -export const buttonTertiaryHover = hoverTertiary; - -export const backgroundSelected = selectedUI; -export const backgroundSelectedHover = hoverSelectedUI; -export const layerSelected = selectedUI; -export const layerSelectedHover = hoverSelectedUI; -export const layerSelectedInverse = ui05; -export const borderSubtleSelected = activeUI; - -export const borderDisabled = disabled01; - -export const textDisabled = disabled02; -export const buttonDisabled = disabled02; -export const iconDisabled = disabled02; - -export const textOnColorDisabled = disabled03; -export const iconOnColorDisabled = disabled03; -export const layerSelectedDisabled = disabled03; - -export const skeletonBackground = skeleton01; -export const skeletonElement = skeleton02; - export { // Type caption01, @@ -267,31 +237,6 @@ export { display02, display03, display04, - // V11 Tokens - legal01, - legal02, - bodyCompact01, - bodyCompact02, - body01, - body02, - headingCompact01, - headingCompact02, - heading03, - heading04, - heading05, - heading06, - heading07, - fluidHeading03, - fluidHeading04, - fluidHeading05, - fluidHeading06, - fluidParagraph01, - fluidQuotation01, - fluidQuotation02, - fluidDisplay01, - fluidDisplay02, - fluidDisplay03, - fluidDisplay04, // Layout // Spacing spacing01, @@ -312,15 +257,6 @@ export { fluidSpacing02, fluidSpacing03, fluidSpacing04, - // Layout - // Deprecated -- Remove in v11 - layout01, - layout02, - layout03, - layout04, - layout05, - layout06, - layout07, // Containers container01, container02, @@ -337,11 +273,3 @@ export { iconSize01, iconSize02, } from './white'; - -// Deprecated ☠️ -export const brand01 = interactive01; -export const brand02 = interactive02; -export const brand03 = interactive03; -export const active01 = activeUI; -export const hoverField = hoverUI; -export const danger = danger01; diff --git a/packages/themes/src/g80.js b/packages/themes/src/g80.js deleted file mode 100644 index 1085783f06c3..000000000000 --- a/packages/themes/src/g80.js +++ /dev/null @@ -1,351 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ -import { adjustLightness } from './tools'; - -import { - // Blue - blue30, - blue40, - blue50, - blue60, - blue70, - blue80, - - // Gray - gray10, - gray30, - gray40, - gray50, - gray60, - gray70, - gray80, - gray100, - - // Support - green40, - green50, - yellow30, - red30, - red40, - red60, - red80, - purple40, - - // Constants - white, - black, - - // Tools - rgba, -} from '@carbon/colors'; - -// New color tokens -// TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens -export const background = gray80; -export const layer = gray70; -export const layerAccent = gray60; -export const layerAccentActive = gray70; -export const layerAccentHover = adjustLightness(layerAccent, -7); -export const field = gray70; -export const backgroundInverse = gray10; -export const backgroundBrand = blue60; -export const interactive = blue40; - -export const borderSubtle = gray60; -export const borderStrong = gray40; -export const borderInverse = gray10; -export const borderInteractive = blue50; - -export const textPrimary = gray10; -export const textSecondary = gray30; -export const textPlaceholder = gray60; -export const textHelper = gray40; -export const textError = red30; -export const textOnColor = white; -export const textInverse = gray100; - -export const linkPrimary = blue40; -export const linkSecondary = blue30; -export const linkVisited = purple40; -export const linkInverse = blue60; - -export const iconPrimary = gray10; -export const iconSecondary = gray30; -export const iconOnColor = white; -export const iconInverse = gray100; - -export const supportError = red40; -export const supportSuccess = green40; -export const supportWarning = yellow30; -export const supportInfo = blue50; -export const supportErrorInverse = red60; -export const supportSuccessInverse = green50; -export const supportWarningInverse = yellow30; -export const supportInfoInverse = blue60; - -export const overlay = rgba(black, 0.65); -export const toggleOff = gray50; -export const shadow = rgba(black, 0.8); - -export const buttonPrimary = blue60; -export const buttonSecondary = gray60; -export const buttonTertiary = white; -export const buttonDangerPrimary = red60; -export const buttonDangerSecondary = red40; -export const buttonSeparator = gray100; - -export const backgroundActive = gray70; -export const layerActive = gray60; - -export const buttonDangerActive = red80; -export const buttonPrimaryActive = blue80; -export const buttonSecondaryActive = gray70; -export const buttonTertiaryActive = gray30; - -export const focus = white; -export const focusInset = gray100; -export const focusInverse = blue60; -export const highlight = blue70; - -export const backgroundHover = adjustLightness(background, +6); -export const layerHover = adjustLightness(layer, +7); -export const fieldHover = adjustLightness(field, +7); -export const backgroundInverseHover = adjustLightness(backgroundInverse, -5); - -export const linkPrimaryHover = blue30; - -export const buttonDangerHover = adjustLightness(buttonDangerPrimary, -8); -export const buttonPrimaryHover = adjustLightness(buttonPrimary, -8); -export const buttonSecondaryHover = adjustLightness(buttonSecondary, -7); -export const buttonTertiaryHover = white; - -export const backgroundSelected = gray70; -export const backgroundSelectedHover = adjustLightness(backgroundSelected, +7); -export const layerSelected = gray60; -export const layerSelectedHover = adjustLightness(layerSelected, -6); -export const layerSelectedInverse = gray10; -export const borderSubtleSelected = gray50; - -export const borderDisabled = gray70; - -export const textDisabled = gray50; -export const buttonDisabled = gray50; -export const iconDisabled = gray50; - -export const textOnColorDisabled = gray30; -export const iconOnColorDisabled = gray30; -export const layerSelectedDisabled = gray30; - -export const skeletonBackground = adjustLightness(background, +6); -export const skeletonElement = gray60; - -////////////////////////////////////// -// Old tokens needed to pass tests // -////////////////////////////////////// -export const interactive01 = backgroundBrand; -export const interactive02 = buttonSecondary; -export const interactive03 = buttonTertiary; -export const interactive04 = interactive; - -export const uiBackground = background; - -export const ui01 = layer; -export const ui02 = gray70; -export const ui03 = layerAccent; -export const ui04 = borderStrong; -export const ui05 = borderInverse; - -export const text01 = textPrimary; -export const text02 = textSecondary; -export const text03 = textPlaceholder; -export const text04 = textOnColor; -export const text05 = textHelper; - -export const icon01 = iconPrimary; -export const icon02 = iconSecondary; -export const icon03 = iconOnColor; - -export const link01 = linkPrimary; -export const link02 = linkSecondary; - -export const inverseLink = linkInverse; - -export const field01 = field; -export const field02 = gray60; - -export const inverse01 = textInverse; -export const inverse02 = backgroundInverse; - -export const support01 = supportError; -export const support02 = supportSuccess; -export const support03 = supportWarning; -export const support04 = supportInfo; - -export const inverseSupport01 = supportErrorInverse; -export const inverseSupport02 = supportSuccessInverse; -export const inverseSupport03 = supportWarningInverse; -export const inverseSupport04 = supportInfoInverse; - -export const overlay01 = overlay; - -export const danger01 = buttonDangerPrimary; -export const danger02 = buttonDangerSecondary; - -// Interaction states -export const inverseFocusUi = focusInverse; - -export const hoverPrimary = buttonPrimaryHover; -export const activePrimary = buttonPrimaryActive; - -export const hoverPrimaryText = linkPrimaryHover; - -export const hoverSecondary = buttonSecondaryHover; -export const activeSecondary = buttonSecondaryActive; - -export const hoverTertiary = buttonTertiaryHover; -export const activeTertiary = buttonTertiaryActive; - -export const hoverUI = backgroundHover; -export const hoverLightUI = '#5E5E5E'; -export const activeUI = backgroundActive; -export const activeLightUI = gray50; -export const selectedUI = backgroundSelected; -export const selectedLightUI = gray50; -export const inverseHoverUI = backgroundInverseHover; - -export const hoverSelectedUI = layerSelectedHover; - -export const hoverDanger = buttonDangerHover; -export const activeDanger = buttonDangerActive; - -export const hoverRow = layerHover; - -export const visitedLink = linkVisited; - -export const disabled01 = gray70; -export const disabled02 = textDisabled; -export const disabled03 = textOnColorDisabled; - -export const decorative01 = gray60; - -export const skeleton01 = skeletonBackground; -export const skeleton02 = skeletonElement; - -export { - // Type - caption01, - caption02, - label01, - label02, - helperText01, - helperText02, - bodyShort01, - bodyLong01, - bodyShort02, - bodyLong02, - code01, - code02, - heading01, - productiveHeading01, - heading02, - productiveHeading02, - productiveHeading03, - productiveHeading04, - productiveHeading05, - productiveHeading06, - productiveHeading07, - expressiveHeading01, - expressiveHeading02, - expressiveHeading03, - expressiveHeading04, - expressiveHeading05, - expressiveHeading06, - expressiveParagraph01, - quotation01, - quotation02, - display01, - display02, - display03, - display04, - // V11 Tokens - legal01, - legal02, - bodyCompact01, - bodyCompact02, - body01, - body02, - headingCompact01, - headingCompact02, - heading03, - heading04, - heading05, - heading06, - heading07, - fluidHeading03, - fluidHeading04, - fluidHeading05, - fluidHeading06, - fluidParagraph01, - fluidQuotation01, - fluidQuotation02, - fluidDisplay01, - fluidDisplay02, - fluidDisplay03, - fluidDisplay04, - // Layout - // Spacing - spacing01, - spacing02, - spacing03, - spacing04, - spacing05, - spacing06, - spacing07, - spacing08, - spacing09, - spacing10, - spacing11, - spacing12, - spacing13, - // Fluid spacing - fluidSpacing01, - fluidSpacing02, - fluidSpacing03, - fluidSpacing04, - // Layout - // Deprecated -- Remove in v11 - layout01, - layout02, - layout03, - layout04, - layout05, - layout06, - layout07, - // Containers - container01, - container02, - container03, - container04, - container05, - sizeXSmall, - sizeSmall, - sizeMedium, - sizeLarge, - sizeXLarge, - size2XLarge, - // Icon sizes - iconSize01, - iconSize02, -} from './white'; - -// Deprecated ☠️ -export const brand01 = interactive01; -export const brand02 = interactive02; -export const brand03 = interactive03; -export const active01 = activeUI; -export const hoverField = hoverUI; -export const danger = danger01; diff --git a/packages/themes/src/g90.js b/packages/themes/src/g90.js index 3e0493e0daef..afab122bae29 100644 --- a/packages/themes/src/g90.js +++ b/packages/themes/src/g90.js @@ -4,37 +4,39 @@ * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ -import { adjustLightness } from './tools'; import { // Blue - blue30, blue40, - blue50, blue60, blue70, - blue80, // Gray gray10, gray30, gray40, gray50, + gray50Hover, gray60, + gray60Hover, gray70, + gray70Hover, gray80, gray90, gray100, // Support + blue30, + blue50, green40, green50, - yellow, + yellow30, + orange40, red30, red40, red60, - red80, purple40, + purple50, // Constants white, @@ -42,197 +44,163 @@ import { // Tools rgba, + gray90Hover, + gray10Hover, + gray80Hover, } from '@carbon/colors'; - -export const interactive01 = blue60; -export const interactive02 = gray60; -export const interactive03 = white; -export const interactive04 = blue50; - -export const uiBackground = gray90; - -export const ui01 = gray80; -export const ui02 = gray70; -export const ui03 = gray70; -export const ui04 = gray50; -export const ui05 = gray10; - -export const text01 = gray10; -export const text02 = gray30; -export const text03 = gray60; -export const text04 = white; -export const text05 = gray50; -export const textError = red30; - -export const icon01 = gray10; -export const icon02 = gray30; -export const icon03 = white; - -export const link01 = blue40; -export const link02 = blue30; - -export const inverseLink = blue60; - +import { adjustAlpha } from './tools'; + +// Background +export const background = gray90; +export const backgroundInverse = gray10; +export const backgroundBrand = blue60; +export const backgroundActive = adjustAlpha(gray50, 0.4); +export const backgroundHover = adjustAlpha(gray50, 0.16); +export const backgroundInverseHover = gray10Hover; +export const backgroundSelected = adjustAlpha(gray50, 0.24); +export const backgroundSelectedHover = adjustAlpha(gray50, 0.32); + +// Layer +// layer-01 +export const layer01 = gray80; +export const layerActive01 = gray60; +export const layerHover01 = gray80Hover; +export const layerSelected01 = gray70; +export const layerSelectedHover01 = gray70Hover; + +// layer-02 +export const layer02 = gray70; +export const layerActive02 = gray50; +export const layerHover02 = gray70Hover; +export const layerSelected02 = gray60; +export const layerSelectedHover02 = gray60Hover; + +// layer-03 +export const layer03 = gray60; +export const layerActive03 = gray80; +export const layerHover03 = gray60Hover; +export const layerSelected03 = gray50; +export const layerSelectedHover03 = gray50Hover; + +// layer +export const layerSelectedInverse = gray10; +export const layerSelectedDisabled = gray40; + +// layer-accent-01 +export const layerAccent01 = gray70; +export const layerAccentActive01 = gray50; +export const layerAccentHover01 = gray70Hover; + +// layer-accent-02 +export const layerAccent02 = gray60; +export const layerAccentActive02 = gray80; +export const layerAccentHover02 = gray60Hover; + +// layer-accent-03 +export const layerAccent03 = gray50; +export const layerAccentActive03 = gray70; +export const layerAccentHover03 = gray50Hover; + +// Field +// field-01 export const field01 = gray80; -export const field02 = gray70; - -export const inverse01 = gray100; -export const inverse02 = gray10; - -export const support01 = red40; -export const support02 = green40; -export const support03 = yellow; -export const support04 = blue50; - -export const inverseSupport01 = red60; -export const inverseSupport02 = green50; -export const inverseSupport03 = yellow; -export const inverseSupport04 = blue60; +export const fieldHover01 = gray80Hover; -export const overlay01 = rgba(black, 0.65); - -export const danger01 = red60; -export const danger02 = red40; +// field-02 +export const field02 = gray70; +export const fieldHover02 = gray70Hover; -// Interaction states -export const focus = white; -export const inverseFocusUi = blue60; +// field-03 +export const field03 = gray60; +export const fieldHover03 = gray60Hover; -export const hoverPrimary = '#0353e9'; -export const activePrimary = blue80; +// Border +// border-subtle-00 +export const borderSubtle00 = gray70; -export const hoverPrimaryText = blue30; +// border-subtle-01 +export const borderSubtle01 = gray70; +export const borderSubtleSelected01 = gray60; -export const hoverSecondary = '#606060'; -export const activeSecondary = gray80; +// border-subtle-02 +export const borderSubtle02 = gray60; +export const borderSubtleSelected02 = gray50; -export const hoverTertiary = gray10; -export const activeTertiary = gray30; +// border-subtle-03 +export const borderSubtle03 = gray50; +export const borderSubtleSelected03 = gray40; -export const hoverUI = '#4c4c4c'; -export const hoverLightUI = '#656565'; -export const activeUI = gray60; -export const activeLightUI = gray50; -export const selectedUI = gray70; -export const selectedLightUI = gray60; -export const inverseHoverUI = '#e5e5e5'; +// border-strong +export const borderStrong01 = gray50; +export const borderStrong02 = gray40; +export const borderStrong03 = gray30; -export const hoverSelectedUI = '#656565'; +// border-inverse +export const borderInverse = gray10; -export const hoverDanger = adjustLightness(danger01, -8); -export const activeDanger = red80; +// border-interactive +export const borderInteractive = blue50; -export const hoverRow = '#4c4c4c'; +// border +export const borderDisabled = adjustAlpha(gray50, 0.5); -export const visitedLink = purple40; +// Text +export const textPrimary = gray10; +export const textSecondary = gray30; +export const textPlaceholder = adjustAlpha(textPrimary, 0.4); +export const textHelper = gray30; +export const textError = red30; +export const textInverse = gray100; +export const textOnColor = white; +export const textOnColorDisabled = adjustAlpha(textOnColor, 0.25); +export const textDisabled = adjustAlpha(textPrimary, 0.25); + +// Link +export const linkPrimary = blue40; +export const linkPrimaryHover = blue30; +export const linkSecondary = blue30; +export const linkInverse = blue60; +export const linkVisited = purple40; +export const linkInverseActive = gray100; +export const linkInverseHover = blue70; + +// Icon +export const iconPrimary = gray10; +export const iconSecondary = gray30; +export const iconInverse = gray100; +export const iconOnColor = white; +export const iconOnColorDisabled = adjustAlpha(iconOnColor, 0.25); +export const iconDisabled = adjustAlpha(iconPrimary, 0.25); + +// Support +export const supportError = red40; +export const supportSuccess = green40; +export const supportWarning = yellow30; +export const supportInfo = blue50; +export const supportErrorInverse = red60; +export const supportSuccessInverse = green50; +export const supportWarningInverse = yellow30; +export const supportInfoInverse = blue70; +export const supportCautionMinor = yellow30; +export const supportCautionMajor = orange40; +export const supportCautionUndefined = purple50; + +// Focus +export const focus = white; +export const focusInset = gray100; +export const focusInverse = blue60; -export const disabled01 = gray80; -export const disabled02 = gray60; -export const disabled03 = gray40; +// Skeleton +export const skeletonBackground = gray90Hover; +export const skeletonElement = gray70; +// Misc +export const interactive = blue50; export const highlight = blue70; - -export const decorative01 = gray60; - -export const buttonSeparator = '#161616'; - -export const skeleton01 = '#353535'; -export const skeleton02 = gray70; - -// New color tokens -// TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens -export const background = uiBackground; -export const layer = ui01; -export const layerAccent = ui03; -export const layerAccentActive = gray50; -export const layerAccentHover = adjustLightness(layerAccent, +7); -export const field = field01; -export const backgroundInverse = inverse02; -export const backgroundBrand = interactive01; -export const interactive = interactive04; - -export const borderSubtle = ui03; -export const borderStrong = ui04; -export const borderInverse = ui05; -export const borderInteractive = interactive04; - -export const textPrimary = text01; -export const textSecondary = text02; -export const textPlaceholder = text03; -export const textHelper = text05; -export const textOnColor = text04; -export const textInverse = inverse01; - -export const linkPrimary = link01; -export const linkSecondary = link02; -export const linkVisited = visitedLink; -export const linkInverse = inverseLink; - -export const iconPrimary = icon01; -export const iconSecondary = icon02; -export const iconOnColor = icon03; -export const iconInverse = inverse01; - -export const supportError = support01; -export const supportSuccess = support02; -export const supportWarning = support03; -export const supportInfo = support04; -export const supportErrorInverse = inverseSupport01; -export const supportSuccessInverse = inverseSupport02; -export const supportWarningInverse = inverseSupport03; -export const supportInfoInverse = inverseSupport04; - -export const overlay = overlay01; -export const toggleOff = ui04; +export const overlay = rgba(black, 0.65); +export const toggleOff = gray50; export const shadow = rgba(black, 0.8); -export const buttonPrimary = interactive01; -export const buttonSecondary = interactive02; -export const buttonTertiary = interactive03; -export const buttonDangerPrimary = danger01; -export const buttonDangerSecondary = danger02; - -export const backgroundActive = activeUI; -export const layerActive = activeUI; - -export const buttonDangerActive = activeDanger; -export const buttonPrimaryActive = activePrimary; -export const buttonSecondaryActive = activeSecondary; -export const buttonTertiaryActive = activeTertiary; - -export const focusInset = inverse01; -export const focusInverse = inverseFocusUi; - -export const backgroundHover = hoverUI; -export const layerHover = hoverUI; -export const fieldHover = hoverUI; -export const backgroundInverseHover = inverseHoverUI; -export const linkPrimaryHover = hoverPrimaryText; -export const buttonDangerHover = hoverDanger; -export const buttonPrimaryHover = hoverPrimary; -export const buttonSecondaryHover = hoverSecondary; -export const buttonTertiaryHover = hoverTertiary; - -export const backgroundSelected = selectedUI; -export const backgroundSelectedHover = hoverSelectedUI; -export const layerSelected = selectedUI; -export const layerSelectedHover = hoverSelectedUI; -export const layerSelectedInverse = ui05; -export const borderSubtleSelected = activeUI; - -export const borderDisabled = disabled01; - -export const textDisabled = disabled02; -export const buttonDisabled = disabled02; -export const iconDisabled = disabled02; - -export const textOnColorDisabled = disabled03; -export const iconOnColorDisabled = disabled03; -export const layerSelectedDisabled = disabled03; - -export const skeletonBackground = skeleton01; -export const skeletonElement = skeleton02; - export { // Type caption01, @@ -269,31 +237,6 @@ export { display02, display03, display04, - // V11 Tokens - legal01, - legal02, - bodyCompact01, - bodyCompact02, - body01, - body02, - headingCompact01, - headingCompact02, - heading03, - heading04, - heading05, - heading06, - heading07, - fluidHeading03, - fluidHeading04, - fluidHeading05, - fluidHeading06, - fluidParagraph01, - fluidQuotation01, - fluidQuotation02, - fluidDisplay01, - fluidDisplay02, - fluidDisplay03, - fluidDisplay04, // Layout // Spacing spacing01, @@ -314,15 +257,6 @@ export { fluidSpacing02, fluidSpacing03, fluidSpacing04, - // Layout - // Deprecated -- Remove in v11 - layout01, - layout02, - layout03, - layout04, - layout05, - layout06, - layout07, // Containers container01, container02, @@ -339,11 +273,3 @@ export { iconSize01, iconSize02, } from './white'; - -// Deprecated ☠️ -export const brand01 = interactive01; -export const brand02 = interactive02; -export const brand03 = interactive03; -export const active01 = activeUI; -export const hoverField = hoverUI; -export const danger = danger01; diff --git a/packages/themes/src/index.js b/packages/themes/src/index.js index 0afbd96e0241..9af8b57a88a6 100644 --- a/packages/themes/src/index.js +++ b/packages/themes/src/index.js @@ -5,23 +5,18 @@ * LICENSE file in the root directory of this source tree. */ -// Tokens from the `white` theme are the default set -export * from './white'; -import * as g10 from './g10'; -import * as g100 from './g100'; import * as white from './white'; -import * as g80 from './g80'; +import * as g10 from './g10'; import * as g90 from './g90'; -import * as v9 from './v9'; -import { tokens, formatTokenName, unstable__meta } from './tokens'; +import * as g100 from './g100'; +import * as v10 from './v10'; -export { g10, g80, g90, g100, white, v9 }; -export { tokens, formatTokenName, unstable__meta }; -export const themes = { +const themes = { white, g10, - g80, g90, g100, - v9, }; + +export * from './white'; +export { white, g10, g90, g100, themes, v10 }; diff --git a/packages/themes/src/next/__tests__/themes-test.js b/packages/themes/src/next/__tests__/themes-test.js deleted file mode 100644 index 55b3ef9e7ae2..000000000000 --- a/packages/themes/src/next/__tests__/themes-test.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - * - * @jest-environment node - */ - -import { themes, group } from '../'; -import { TokenFormat } from '../tokens'; - -const tokens = group.getTokens().map((token) => { - return TokenFormat.convert({ - name: token.name, - format: TokenFormat.formats.js, - }); -}); - -describe('themes', () => { - describe.each(Object.entries(themes))('%s', (_name, theme) => { - test.each(tokens)('%s should be defined', (token) => { - expect(theme[token]).toBeDefined(); - }); - }); -}); diff --git a/packages/themes/src/next/g10.js b/packages/themes/src/next/g10.js deleted file mode 100644 index a710cd4627a5..000000000000 --- a/packages/themes/src/next/g10.js +++ /dev/null @@ -1,268 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -import { - // Blue - blue20, - blue30, - blue40, - blue60, - blue70, - - // Gray - gray10, - gray10Hover, - gray20, - gray20Hover, - gray30, - gray40, - gray50, - gray60, - gray70, - gray80, - gray80Hover, - gray100, - - // Support - blue50, - green40, - green50, - yellow30, - orange40, - red50, - red60, - purple60, - - // Constants - white, - whiteHover, -} from '@carbon/colors'; -import { adjustAlpha } from '../tools'; - -// Background -export const background = gray10; -export const backgroundInverse = gray80; -export const backgroundBrand = blue60; -export const backgroundActive = adjustAlpha(gray50, 0.5); -export const backgroundHover = adjustAlpha(gray50, 0.12); -export const backgroundInverseHover = gray80Hover; -export const backgroundSelected = adjustAlpha(gray50, 0.2); -export const backgroundSelectedHover = adjustAlpha(gray50, 0.32); - -// Layer -// layer-01 -export const layer01 = white; -export const layerActive01 = gray30; -export const layerHover01 = whiteHover; -export const layerSelected01 = gray20; -export const layerSelectedHover01 = gray20Hover; - -// layer-02 -export const layer02 = gray10; -export const layerActive02 = gray30; -export const layerHover02 = gray10Hover; -export const layerSelected02 = gray20; -export const layerSelectedHover02 = gray20Hover; - -// layer-03 -export const layer03 = white; -export const layerActive03 = gray30; -export const layerHover03 = whiteHover; -export const layerSelected03 = gray20; -export const layerSelectedHover03 = gray20Hover; - -// layer -export const layerSelectedInverse = gray100; -export const layerSelectedDisabled = gray50; - -// layer-accent-01 -export const layerAccent01 = gray20; -export const layerAccentActive01 = gray40; -export const layerAccentHover01 = gray20Hover; - -// layer-accent-02 -export const layerAccent02 = gray20; -export const layerAccentActive02 = gray40; -export const layerAccentHover02 = gray20Hover; - -// layer-accent-03 -export const layerAccent03 = gray20; -export const layerAccentActive03 = gray40; -export const layerAccentHover03 = gray20Hover; - -// Field -// field-01 -export const field01 = white; -export const fieldHover01 = whiteHover; - -// field-02 -export const field02 = gray10; -export const fieldHover02 = gray10Hover; - -// field-03 -export const field03 = white; -export const fieldHover03 = whiteHover; - -// Border -// border-subtle-00 -export const borderSubtle00 = gray20; - -// border-subtle-01 -export const borderSubtle01 = gray20; -export const borderSubtleSelected01 = gray30; - -// border-subtle-02 -export const borderSubtle02 = gray20; -export const borderSubtleSelected02 = gray30; - -// border-subtle-03 -export const borderSubtle03 = gray20; -export const borderSubtleSelected03 = gray30; - -// border-strong -export const borderStrong01 = gray50; -export const borderStrong02 = gray50; -export const borderStrong03 = gray50; - -// border-inverse -export const borderInverse = gray100; - -// border-interactive -export const borderInteractive = blue60; - -// border -export const borderDisabled = gray30; - -// Text -export const textPrimary = gray100; -export const textSecondary = gray70; -export const textPlaceholder = adjustAlpha(textPrimary, 0.4); -export const textHelper = gray60; -export const textError = red60; -export const textInverse = white; -export const textOnColor = white; -export const textOnColorDisabled = gray50; -export const textDisabled = adjustAlpha(textPrimary, 0.25); - -// Link -export const linkPrimary = blue60; -export const linkPrimaryHover = blue70; -export const linkSecondary = blue70; -export const linkInverse = blue40; -export const linkVisited = purple60; -export const linkInverseActive = gray10; -export const linkInverseHover = blue30; - -// Icon -export const iconPrimary = gray100; -export const iconSecondary = gray70; -export const iconInverse = white; -export const iconOnColor = white; -export const iconOnColorDisabled = gray50; -export const iconDisabled = adjustAlpha(iconPrimary, 0.25); - -// Support -export const supportError = red60; -export const supportSuccess = green50; -export const supportWarning = yellow30; -export const supportInfo = blue70; -export const supportErrorInverse = red50; -export const supportSuccessInverse = green40; -export const supportWarningInverse = yellow30; -export const supportInfoInverse = blue50; -export const supportCautionMinor = yellow30; -export const supportCautionMajor = orange40; -export const supportCautionUndefined = purple60; - -// Focus -export const focus = blue60; -export const focusInset = white; -export const focusInverse = white; - -// Skeleton -export const skeletonBackground = gray10Hover; -export const skeletonElement = gray30; - -// Misc -export const interactive = blue60; -export const highlight = blue20; -export const overlay = 'rgba(22, 22, 22, 0.5)'; -export const toggleOff = gray50; -export const shadow = 'rgba(0, 0, 0, 0.3)'; - -export { - // Type - caption01, - caption02, - label01, - label02, - helperText01, - helperText02, - bodyShort01, - bodyLong01, - bodyShort02, - bodyLong02, - code01, - code02, - heading01, - productiveHeading01, - heading02, - productiveHeading02, - productiveHeading03, - productiveHeading04, - productiveHeading05, - productiveHeading06, - productiveHeading07, - expressiveHeading01, - expressiveHeading02, - expressiveHeading03, - expressiveHeading04, - expressiveHeading05, - expressiveHeading06, - expressiveParagraph01, - quotation01, - quotation02, - display01, - display02, - display03, - display04, - // Layout - // Spacing - spacing01, - spacing02, - spacing03, - spacing04, - spacing05, - spacing06, - spacing07, - spacing08, - spacing09, - spacing10, - spacing11, - spacing12, - spacing13, - // Fluid spacing - fluidSpacing01, - fluidSpacing02, - fluidSpacing03, - fluidSpacing04, - // Containers - container01, - container02, - container03, - container04, - container05, - sizeXSmall, - sizeSmall, - sizeMedium, - sizeLarge, - sizeXLarge, - size2XLarge, - // Icon sizes - iconSize01, - iconSize02, -} from './white'; diff --git a/packages/themes/src/next/g100.js b/packages/themes/src/next/g100.js deleted file mode 100644 index 128de3d20481..000000000000 --- a/packages/themes/src/next/g100.js +++ /dev/null @@ -1,275 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -import { - // Blue - blue40, - blue60, - blue70, - blue80, - - // Gray - gray10, - gray30, - gray40, - gray50, - gray60, - gray60Hover, - gray70, - gray70Hover, - gray80, - gray80Hover, - gray90, - gray90Hover, - gray100, - - // Support - blue30, - blue50, - green40, - green50, - yellow30, - orange40, - red40, - red50, - red60, - purple40, - purple50, - - // Constants - white, - black, - - // Tools - rgba, - gray10Hover, -} from '@carbon/colors'; -import { adjustLightness, adjustAlpha } from '../tools'; - -// Background -export const background = gray100; -export const backgroundInverse = gray10; -export const backgroundBrand = blue60; -export const backgroundActive = adjustAlpha(gray50, 0.4); -export const backgroundHover = adjustAlpha(gray50, 0.16); -export const backgroundInverseHover = gray10Hover; -export const backgroundSelected = adjustAlpha(gray50, 0.24); -export const backgroundSelectedHover = adjustAlpha(gray50, 0.32); - -// Layer -// layer-01 -export const layer01 = gray90; -export const layerActive01 = gray70; -export const layerHover01 = gray90Hover; -export const layerSelected01 = gray80; -export const layerSelectedHover01 = gray80Hover; - -// layer-02 -export const layer02 = gray80; -export const layerActive02 = gray60; -export const layerHover02 = gray80Hover; -export const layerSelected02 = gray70; -export const layerSelectedHover02 = gray70Hover; - -// layer-03 -export const layer03 = gray70; -export const layerActive03 = gray50; -export const layerHover03 = gray70Hover; -export const layerSelected03 = gray60; -export const layerSelectedHover03 = gray60Hover; - -// layer -export const layerSelectedInverse = gray10; -export const layerSelectedDisabled = gray40; - -// layer-accent-01 -export const layerAccent01 = gray80; -export const layerAccentActive01 = gray60; -export const layerAccentHover01 = gray80Hover; - -// layer-accent-02 -export const layerAccent02 = gray70; -export const layerAccentActive02 = gray50; -export const layerAccentHover02 = gray70Hover; - -// layer-accent-03 -export const layerAccent03 = gray60; -export const layerAccentActive03 = gray80; -export const layerAccentHover03 = gray60Hover; - -// Field -// field-01 -export const field01 = gray90; -export const fieldHover01 = gray90Hover; - -// field-02 -export const field02 = gray80; -export const fieldHover02 = gray80Hover; - -// field-03 -export const field03 = gray70; -export const fieldHover03 = gray70Hover; - -// Border -// border-subtle-00 -export const borderSubtle00 = gray80; - -// border-subtle-01 -export const borderSubtle01 = gray80; -export const borderSubtleSelected01 = gray70; - -// border-subtle-02 -export const borderSubtle02 = gray70; -export const borderSubtleSelected02 = gray60; - -// border-subtle-03 -export const borderSubtle03 = gray60; -export const borderSubtleSelected03 = gray50; - -// border-strong -export const borderStrong01 = gray60; -export const borderStrong02 = gray50; -export const borderStrong03 = gray40; - -// border-inverse -export const borderInverse = gray10; - -// border-interactive -export const borderInteractive = blue50; - -// border -export const borderDisabled = adjustAlpha(gray50, 0.5); - -// Text -export const textPrimary = gray10; -export const textSecondary = gray30; -export const textPlaceholder = adjustAlpha(textPrimary, 0.4); -export const textHelper = gray40; -export const textError = red40; -export const textInverse = gray100; -export const textOnColor = white; -export const textOnColorDisabled = adjustAlpha(textOnColor, 0.25); -export const textDisabled = adjustAlpha(textPrimary, 0.25); - -// Link -export const linkPrimary = blue40; -export const linkPrimaryHover = blue30; -export const linkSecondary = blue30; -export const linkInverse = blue60; -export const linkVisited = purple40; -export const linkInverseActive = gray100; -export const linkInverseHover = blue70; - -// Icon -export const iconPrimary = gray10; -export const iconSecondary = gray30; -export const iconInverse = gray100; -export const iconOnColor = white; -export const iconOnColorDisabled = adjustAlpha(iconOnColor, 0.25); -export const iconDisabled = adjustAlpha(iconPrimary, 0.25); - -// Support -export const supportError = red50; -export const supportSuccess = green40; -export const supportWarning = yellow30; -export const supportInfo = blue50; -export const supportErrorInverse = red60; -export const supportSuccessInverse = green50; -export const supportWarningInverse = yellow30; -export const supportInfoInverse = blue70; -export const supportCautionMinor = yellow30; -export const supportCautionMajor = orange40; -export const supportCautionUndefined = purple50; - -// Focus -export const focus = white; -export const focusInset = gray100; -export const focusInverse = blue60; - -// Skeleton -export const skeletonBackground = adjustLightness(background, 7); -export const skeletonElement = gray80; - -// Misc -export const interactive = blue50; -export const highlight = blue80; -export const overlay = rgba(black, 0.65); -export const toggleOff = gray60; -export const shadow = rgba(black, 0.8); - -export { - // Type - caption01, - caption02, - label01, - label02, - helperText01, - helperText02, - bodyShort01, - bodyLong01, - bodyShort02, - bodyLong02, - code01, - code02, - heading01, - productiveHeading01, - heading02, - productiveHeading02, - productiveHeading03, - productiveHeading04, - productiveHeading05, - productiveHeading06, - productiveHeading07, - expressiveHeading01, - expressiveHeading02, - expressiveHeading03, - expressiveHeading04, - expressiveHeading05, - expressiveHeading06, - expressiveParagraph01, - quotation01, - quotation02, - display01, - display02, - display03, - display04, - // Layout - // Spacing - spacing01, - spacing02, - spacing03, - spacing04, - spacing05, - spacing06, - spacing07, - spacing08, - spacing09, - spacing10, - spacing11, - spacing12, - spacing13, - // Fluid spacing - fluidSpacing01, - fluidSpacing02, - fluidSpacing03, - fluidSpacing04, - // Containers - container01, - container02, - container03, - container04, - container05, - sizeXSmall, - sizeSmall, - sizeMedium, - sizeLarge, - sizeXLarge, - size2XLarge, - // Icon sizes - iconSize01, - iconSize02, -} from './white'; diff --git a/packages/themes/src/next/g90.js b/packages/themes/src/next/g90.js deleted file mode 100644 index 4c0f50cf4cf0..000000000000 --- a/packages/themes/src/next/g90.js +++ /dev/null @@ -1,275 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -import { - // Blue - blue40, - blue60, - blue70, - - // Gray - gray10, - gray30, - gray40, - gray50, - gray50Hover, - gray60, - gray60Hover, - gray70, - gray70Hover, - gray80, - gray90, - gray100, - - // Support - blue30, - blue50, - green40, - green50, - yellow30, - orange40, - red30, - red40, - red60, - purple40, - purple50, - - // Constants - white, - black, - - // Tools - rgba, - gray90Hover, - gray10Hover, - gray80Hover, -} from '@carbon/colors'; -import { adjustAlpha } from '../tools'; - -// Background -export const background = gray90; -export const backgroundInverse = gray10; -export const backgroundBrand = blue60; -export const backgroundActive = adjustAlpha(gray50, 0.4); -export const backgroundHover = adjustAlpha(gray50, 0.16); -export const backgroundInverseHover = gray10Hover; -export const backgroundSelected = adjustAlpha(gray50, 0.24); -export const backgroundSelectedHover = adjustAlpha(gray50, 0.32); - -// Layer -// layer-01 -export const layer01 = gray80; -export const layerActive01 = gray60; -export const layerHover01 = gray80Hover; -export const layerSelected01 = gray70; -export const layerSelectedHover01 = gray70Hover; - -// layer-02 -export const layer02 = gray70; -export const layerActive02 = gray50; -export const layerHover02 = gray70Hover; -export const layerSelected02 = gray60; -export const layerSelectedHover02 = gray60Hover; - -// layer-03 -export const layer03 = gray60; -export const layerActive03 = gray80; -export const layerHover03 = gray60Hover; -export const layerSelected03 = gray50; -export const layerSelectedHover03 = gray50Hover; - -// layer -export const layerSelectedInverse = gray10; -export const layerSelectedDisabled = gray40; - -// layer-accent-01 -export const layerAccent01 = gray70; -export const layerAccentActive01 = gray50; -export const layerAccentHover01 = gray70Hover; - -// layer-accent-02 -export const layerAccent02 = gray60; -export const layerAccentActive02 = gray80; -export const layerAccentHover02 = gray60Hover; - -// layer-accent-03 -export const layerAccent03 = gray50; -export const layerAccentActive03 = gray70; -export const layerAccentHover03 = gray50Hover; - -// Field -// field-01 -export const field01 = gray80; -export const fieldHover01 = gray80Hover; - -// field-02 -export const field02 = gray70; -export const fieldHover02 = gray70Hover; - -// field-03 -export const field03 = gray60; -export const fieldHover03 = gray60Hover; - -// Border -// border-subtle-00 -export const borderSubtle00 = gray70; - -// border-subtle-01 -export const borderSubtle01 = gray70; -export const borderSubtleSelected01 = gray60; - -// border-subtle-02 -export const borderSubtle02 = gray60; -export const borderSubtleSelected02 = gray50; - -// border-subtle-03 -export const borderSubtle03 = gray50; -export const borderSubtleSelected03 = gray40; - -// border-strong -export const borderStrong01 = gray50; -export const borderStrong02 = gray40; -export const borderStrong03 = gray30; - -// border-inverse -export const borderInverse = gray10; - -// border-interactive -export const borderInteractive = blue50; - -// border -export const borderDisabled = adjustAlpha(gray50, 0.5); - -// Text -export const textPrimary = gray10; -export const textSecondary = gray30; -export const textPlaceholder = adjustAlpha(textPrimary, 0.4); -export const textHelper = gray30; -export const textError = red30; -export const textInverse = gray100; -export const textOnColor = white; -export const textOnColorDisabled = adjustAlpha(textOnColor, 0.25); -export const textDisabled = adjustAlpha(textPrimary, 0.25); - -// Link -export const linkPrimary = blue40; -export const linkPrimaryHover = blue30; -export const linkSecondary = blue30; -export const linkInverse = blue60; -export const linkVisited = purple40; -export const linkInverseActive = gray100; -export const linkInverseHover = blue70; - -// Icon -export const iconPrimary = gray10; -export const iconSecondary = gray30; -export const iconInverse = gray100; -export const iconOnColor = white; -export const iconOnColorDisabled = adjustAlpha(iconOnColor, 0.25); -export const iconDisabled = adjustAlpha(iconPrimary, 0.25); - -// Support -export const supportError = red40; -export const supportSuccess = green40; -export const supportWarning = yellow30; -export const supportInfo = blue50; -export const supportErrorInverse = red60; -export const supportSuccessInverse = green50; -export const supportWarningInverse = yellow30; -export const supportInfoInverse = blue70; -export const supportCautionMinor = yellow30; -export const supportCautionMajor = orange40; -export const supportCautionUndefined = purple50; - -// Focus -export const focus = white; -export const focusInset = gray100; -export const focusInverse = blue60; - -// Skeleton -export const skeletonBackground = gray90Hover; -export const skeletonElement = gray70; - -// Misc -export const interactive = blue50; -export const highlight = blue70; -export const overlay = rgba(black, 0.65); -export const toggleOff = gray50; -export const shadow = rgba(black, 0.8); - -export { - // Type - caption01, - caption02, - label01, - label02, - helperText01, - helperText02, - bodyShort01, - bodyLong01, - bodyShort02, - bodyLong02, - code01, - code02, - heading01, - productiveHeading01, - heading02, - productiveHeading02, - productiveHeading03, - productiveHeading04, - productiveHeading05, - productiveHeading06, - productiveHeading07, - expressiveHeading01, - expressiveHeading02, - expressiveHeading03, - expressiveHeading04, - expressiveHeading05, - expressiveHeading06, - expressiveParagraph01, - quotation01, - quotation02, - display01, - display02, - display03, - display04, - // Layout - // Spacing - spacing01, - spacing02, - spacing03, - spacing04, - spacing05, - spacing06, - spacing07, - spacing08, - spacing09, - spacing10, - spacing11, - spacing12, - spacing13, - // Fluid spacing - fluidSpacing01, - fluidSpacing02, - fluidSpacing03, - fluidSpacing04, - // Containers - container01, - container02, - container03, - container04, - container05, - sizeXSmall, - sizeSmall, - sizeMedium, - sizeLarge, - sizeXLarge, - size2XLarge, - // Icon sizes - iconSize01, - iconSize02, -} from './white'; diff --git a/packages/themes/src/next/white.js b/packages/themes/src/next/white.js deleted file mode 100644 index b3a27bbf3ef4..000000000000 --- a/packages/themes/src/next/white.js +++ /dev/null @@ -1,271 +0,0 @@ -/** - * Copyright IBM Corp. 2018, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -import { - // Blue - blue20, - blue30, - blue40, - blue60, - blue70, - - // Gray - gray10, - gray20, - gray20Hover, - gray30, - gray40, - gray50, - gray60, - gray70, - gray80, - gray100, - - // Support - blue50, - green40, - green50, - yellow30, - orange40, - red50, - red60, - purple60, - - // Constants - white, - whiteHover, - gray80Hover, - gray10Hover, -} from '@carbon/colors'; -import { adjustAlpha } from '../tools'; - -// Background -export const background = white; -export const backgroundInverse = gray80; -export const backgroundBrand = blue60; -export const backgroundActive = adjustAlpha(gray50, 0.5); -export const backgroundHover = adjustAlpha(gray50, 0.12); -export const backgroundInverseHover = gray80Hover; -export const backgroundSelected = adjustAlpha(gray50, 0.2); -export const backgroundSelectedHover = adjustAlpha(gray50, 0.32); - -// Layer -// layer-01 -export const layer01 = gray10; -export const layerActive01 = gray30; -export const layerHover01 = gray10Hover; -export const layerSelected01 = gray20; -export const layerSelectedHover01 = gray20Hover; - -// layer-02 -export const layer02 = white; -export const layerActive02 = gray30; -export const layerHover02 = whiteHover; -export const layerSelected02 = gray20; -export const layerSelectedHover02 = gray20Hover; - -// layer-03 -export const layer03 = gray10; -export const layerActive03 = gray30; -export const layerHover03 = gray10Hover; -export const layerSelected03 = gray20; -export const layerSelectedHover03 = gray20Hover; - -// layer -export const layerSelectedInverse = gray100; -export const layerSelectedDisabled = gray50; - -// layer-accent-01 -export const layerAccent01 = gray20; -export const layerAccentActive01 = gray40; -export const layerAccentHover01 = gray20Hover; - -// layer-accent-02 -export const layerAccent02 = gray20; -export const layerAccentActive02 = gray40; -export const layerAccentHover02 = gray20Hover; - -// layer-accent-03 -export const layerAccent03 = gray20; -export const layerAccentActive03 = gray40; -export const layerAccentHover03 = gray20Hover; - -// Field -// field-01 -export const field01 = gray10; -export const fieldHover01 = gray10Hover; - -// field-02 -export const field02 = white; -export const fieldHover02 = whiteHover; - -// field-03 -export const field03 = gray10; -export const fieldHover03 = gray10Hover; - -// Border -// border-subtle-00 -export const borderSubtle00 = gray20; - -// border-subtle-01 -export const borderSubtle01 = gray20; -export const borderSubtleSelected01 = gray30; - -// border-subtle-02 -export const borderSubtle02 = gray20; -export const borderSubtleSelected02 = gray30; - -// border-subtle-03 -export const borderSubtle03 = gray20; -export const borderSubtleSelected03 = gray30; - -// border-strong -export const borderStrong01 = gray50; -export const borderStrong02 = gray50; -export const borderStrong03 = gray50; - -// border-inverse -export const borderInverse = gray100; - -// border-interactive -export const borderInteractive = blue60; - -// border -export const borderDisabled = gray30; - -// Text -export const textPrimary = gray100; -export const textSecondary = gray70; -export const textPlaceholder = adjustAlpha(textPrimary, 0.4); -export const textHelper = gray60; -export const textError = red60; -export const textInverse = white; -export const textOnColor = white; -export const textOnColorDisabled = gray50; -export const textDisabled = adjustAlpha(textPrimary, 0.25); - -// Link -export const linkPrimary = blue60; -export const linkPrimaryHover = blue70; -export const linkSecondary = blue70; -export const linkInverse = blue40; -export const linkVisited = purple60; -export const linkInverseActive = gray10; -export const linkInverseHover = blue30; - -// Icon -export const iconPrimary = gray100; -export const iconSecondary = gray70; -export const iconInverse = white; -export const iconOnColor = white; -export const iconOnColorDisabled = gray50; -export const iconDisabled = adjustAlpha(iconPrimary, 0.25); - -// Support -export const supportError = red60; -export const supportSuccess = green50; -export const supportWarning = yellow30; -export const supportInfo = blue70; -export const supportErrorInverse = red50; -export const supportSuccessInverse = green40; -export const supportWarningInverse = yellow30; -export const supportInfoInverse = blue50; -export const supportCautionMinor = yellow30; -export const supportCautionMajor = orange40; -export const supportCautionUndefined = purple60; - -// Focus -export const focus = blue60; -export const focusInset = white; -export const focusInverse = white; - -// Skeleton -export const skeletonBackground = whiteHover; -export const skeletonElement = gray30; - -// Misc -export const interactive = blue60; -export const highlight = blue20; -export const overlay = 'rgba(22, 22, 22, 0.5)'; -export const toggleOff = gray50; -export const shadow = 'rgba(0, 0, 0, 0.3)'; - -// Type -export { - caption01, - caption02, - label01, - label02, - helperText01, - helperText02, - bodyShort01, - bodyLong01, - bodyShort02, - bodyLong02, - code01, - code02, - heading01, - productiveHeading01, - heading02, - productiveHeading02, - productiveHeading03, - productiveHeading04, - productiveHeading05, - productiveHeading06, - productiveHeading07, - expressiveHeading01, - expressiveHeading02, - expressiveHeading03, - expressiveHeading04, - expressiveHeading05, - expressiveHeading06, - expressiveParagraph01, - quotation01, - quotation02, - display01, - display02, - display03, - display04, -} from '@carbon/type'; - -// Layout -// Spacing -export { - spacing01, - spacing02, - spacing03, - spacing04, - spacing05, - spacing06, - spacing07, - spacing08, - spacing09, - spacing10, - spacing11, - spacing12, - spacing13, - // Fluid spacing - fluidSpacing01, - fluidSpacing02, - fluidSpacing03, - fluidSpacing04, - // Containers - container01, - container02, - container03, - container04, - container05, - sizeXSmall, - sizeSmall, - sizeMedium, - sizeLarge, - sizeXLarge, - size2XLarge, - // Icon sizes - iconSize01, - iconSize02, -} from '@carbon/layout'; diff --git a/packages/themes/src/next/tokens/Token.js b/packages/themes/src/tokens/Token.js similarity index 100% rename from packages/themes/src/next/tokens/Token.js rename to packages/themes/src/tokens/Token.js diff --git a/packages/themes/src/next/tokens/TokenFormat.js b/packages/themes/src/tokens/TokenFormat.js similarity index 100% rename from packages/themes/src/next/tokens/TokenFormat.js rename to packages/themes/src/tokens/TokenFormat.js diff --git a/packages/themes/src/next/tokens/TokenGroup.js b/packages/themes/src/tokens/TokenGroup.js similarity index 100% rename from packages/themes/src/next/tokens/TokenGroup.js rename to packages/themes/src/tokens/TokenGroup.js diff --git a/packages/themes/src/next/tokens/TokenSet.js b/packages/themes/src/tokens/TokenSet.js similarity index 100% rename from packages/themes/src/next/tokens/TokenSet.js rename to packages/themes/src/tokens/TokenSet.js diff --git a/packages/themes/src/next/tokens/__tests__/Token-test.js b/packages/themes/src/tokens/__tests__/Token-test.js similarity index 100% rename from packages/themes/src/next/tokens/__tests__/Token-test.js rename to packages/themes/src/tokens/__tests__/Token-test.js diff --git a/packages/themes/src/next/tokens/__tests__/TokenFormat-test.js b/packages/themes/src/tokens/__tests__/TokenFormat-test.js similarity index 100% rename from packages/themes/src/next/tokens/__tests__/TokenFormat-test.js rename to packages/themes/src/tokens/__tests__/TokenFormat-test.js diff --git a/packages/themes/src/next/tokens/__tests__/TokenGroup-test.js b/packages/themes/src/tokens/__tests__/TokenGroup-test.js similarity index 100% rename from packages/themes/src/next/tokens/__tests__/TokenGroup-test.js rename to packages/themes/src/tokens/__tests__/TokenGroup-test.js diff --git a/packages/themes/src/next/tokens/__tests__/TokenSet-test.js b/packages/themes/src/tokens/__tests__/TokenSet-test.js similarity index 100% rename from packages/themes/src/next/tokens/__tests__/TokenSet-test.js rename to packages/themes/src/tokens/__tests__/TokenSet-test.js diff --git a/packages/themes/src/next/tokens/__tests__/__snapshots__/v11-test.js.snap b/packages/themes/src/tokens/__tests__/__snapshots__/v11-test.js.snap similarity index 100% rename from packages/themes/src/next/tokens/__tests__/__snapshots__/v11-test.js.snap rename to packages/themes/src/tokens/__tests__/__snapshots__/v11-test.js.snap diff --git a/packages/themes/src/next/tokens/__tests__/v11-test.js b/packages/themes/src/tokens/__tests__/v11-test.js similarity index 100% rename from packages/themes/src/next/tokens/__tests__/v11-test.js rename to packages/themes/src/tokens/__tests__/v11-test.js diff --git a/packages/themes/src/next/tokens/index.js b/packages/themes/src/tokens/index.js similarity index 100% rename from packages/themes/src/next/tokens/index.js rename to packages/themes/src/tokens/index.js diff --git a/packages/themes/src/next/tokens/v11TokenGroup.js b/packages/themes/src/tokens/v11TokenGroup.js similarity index 100% rename from packages/themes/src/next/tokens/v11TokenGroup.js rename to packages/themes/src/tokens/v11TokenGroup.js diff --git a/packages/themes/src/next/tokens/v11TokenSet.js b/packages/themes/src/tokens/v11TokenSet.js similarity index 100% rename from packages/themes/src/next/tokens/v11TokenSet.js rename to packages/themes/src/tokens/v11TokenSet.js diff --git a/packages/themes/src/v10/__tests__/themes-test.js b/packages/themes/src/v10/__tests__/themes-test.js new file mode 100644 index 000000000000..c72819a25d29 --- /dev/null +++ b/packages/themes/src/v10/__tests__/themes-test.js @@ -0,0 +1,32 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + * + * @jest-environment node + */ + +const { themes, tokens } = require('../'); + +const tokenList = Object.keys(tokens).reduce((acc, key) => { + return acc.concat(tokens[key]); +}, []); + +describe('themes', () => { + describe.each(Object.keys(themes))('%s', (name) => { + const theme = themes[name]; + + // Test to make sure that all tokens defined exist in the theme + test.each(tokenList)('%s should be defined', (token) => { + expect(theme[token]).toBeDefined(); + }); + + // Test to make sure that all values in the them are actually tokens, useful + // for catching a case where we have an extra token that should be in the + // tokens export + test.each(Object.keys(theme))('%s should be a token', (token) => { + expect(tokenList.indexOf(token)).not.toBe(-1); + }); + }); +}); diff --git a/packages/themes/src/__tests__/tokens-test.js b/packages/themes/src/v10/__tests__/tokens-test.js similarity index 100% rename from packages/themes/src/__tests__/tokens-test.js rename to packages/themes/src/v10/__tests__/tokens-test.js diff --git a/packages/themes/src/v9.js b/packages/themes/src/v10/g10.js similarity index 69% rename from packages/themes/src/v9.js rename to packages/themes/src/v10/g10.js index b3ecebd5be7d..7e94f9a51cae 100644 --- a/packages/themes/src/v9.js +++ b/packages/themes/src/v10/g10.js @@ -5,102 +5,139 @@ * LICENSE file in the root directory of this source tree. */ -import { adjustLightness } from './tools'; -import { white, red60, gray40, black, rgba } from '@carbon/colors'; - -export const interactive01 = '#3d70b2'; -export const interactive02 = '#4d5358'; -export const interactive03 = '#3d70b2'; -export const interactive04 = '#3d70b2'; -export const uiBackground = '#f4f7fb'; +import { adjustLightness } from '../tools'; + +import { + // Blue + blue20, + blue40, + blue60, + blue70, + blue80, + + // Gray + gray10, + gray20, + gray30, + gray40, + gray50, + gray60, + gray70, + gray80, + gray100, + + // Support + blue50, + green40, + green60, + yellow30, + red50, + red60, + red80, + purple60, + + // Constants + white, + black, + + // Tools + rgba, +} from '@carbon/colors'; + +export const interactive01 = blue60; +export const interactive02 = gray80; +export const interactive03 = blue60; +export const interactive04 = blue60; + +export const uiBackground = gray10; export const ui01 = white; -export const ui02 = '#f4f7fb'; -export const ui03 = '#dfe3e6'; -export const ui04 = '#8897a2'; -export const ui05 = '#5a6872'; - -export const text01 = '#152935'; -export const text02 = '#5a6872'; -export const text03 = '#cdd1d4'; +export const ui02 = gray10; +export const ui03 = gray20; +export const ui04 = gray50; +export const ui05 = gray100; + +export const text01 = gray100; +export const text02 = gray70; +export const text03 = gray40; export const text04 = white; -export const text05 = '#5a6872'; -export const textError = '#e0182d'; +export const text05 = gray60; +export const textError = red60; -export const icon01 = '#3d70b2'; -export const icon02 = '#5a6872'; +export const icon01 = gray100; +export const icon02 = gray70; export const icon03 = white; -export const link01 = '#3d70b2'; -export const link02 = '#3d70b2'; +export const link01 = blue60; +export const link02 = blue70; -export const inverseLink = '#5596e6'; +export const inverseLink = blue40; export const field01 = white; -export const field02 = '#f4f7fb'; +export const field02 = gray10; export const inverse01 = white; -export const inverse02 = '#272d33'; +export const inverse02 = gray80; -export const support01 = '#e0182d'; -export const support02 = '#5aa700'; -export const support03 = '#efc100'; -export const support04 = '#5aaafa'; +export const support01 = red60; +export const support02 = green60; +export const support03 = yellow30; +export const support04 = blue70; -export const inverseSupport01 = '#ff5050'; -export const inverseSupport02 = '#8cd211'; -export const inverseSupport03 = '#FDD600'; -export const inverseSupport04 = '#5aaafa'; +export const inverseSupport01 = red50; +export const inverseSupport02 = green40; +export const inverseSupport03 = yellow30; +export const inverseSupport04 = blue50; -export const overlay01 = 'rgba(223, 227, 230, 0.5)'; +export const overlay01 = rgba(gray100, 0.5); export const danger01 = red60; export const danger02 = red60; // Interaction states -export const focus = '#3d70b2'; -export const inverseFocusUi = '#3d70b2'; +export const focus = blue60; +export const inverseFocusUi = white; -export const hoverPrimary = '#30588c'; -export const activePrimary = '#30588c'; +export const hoverPrimary = '#0353e9'; +export const activePrimary = blue80; -export const hoverPrimaryText = '#294c86'; +export const hoverPrimaryText = blue70; -export const hoverSecondary = '#4d5b65'; -export const activeSecondary = '#414f59'; +export const hoverSecondary = '#4c4c4c'; +export const activeSecondary = gray60; -export const hoverTertiary = '#5a6872'; -export const activeTertiary = '#414f59'; +export const hoverTertiary = '#0353e9'; +export const activeTertiary = blue80; -export const hoverUI = '#EEF4FC'; -export const hoverLightUI = '#EEF4FC'; -export const activeUI = '#DFEAFA'; -export const activeLightUI = '#DFEAFA'; -export const selectedUI = '#EEF4FC'; -export const selectedLightUI = '#EEF4FC'; +export const hoverUI = '#e5e5e5'; +export const hoverLightUI = '#e5e5e5'; +export const activeUI = gray30; +export const activeLightUI = gray30; +export const selectedUI = gray20; +export const selectedLightUI = gray20; export const inverseHoverUI = '#4c4c4c'; -export const hoverSelectedUI = '#DFEAFA'; +export const hoverSelectedUI = '#cacaca'; -export const hoverDanger = '#c70014'; -export const activeDanger = '#AD1625'; +export const hoverDanger = adjustLightness(danger01, -8); +export const activeDanger = red80; -export const hoverRow = '#eef4fc'; +export const hoverRow = '#e5e5e5'; -export const visitedLink = '#294c86'; +export const visitedLink = purple60; -export const disabled01 = '#fafbfd'; -export const disabled02 = '#dfe3e6'; -export const disabled03 = '#cdd1d4'; +export const disabled01 = white; +export const disabled02 = gray30; +export const disabled03 = gray50; -export const highlight = '#f4f7fb'; +export const highlight = blue20; -export const decorative01 = '#EEF4FC'; +export const decorative01 = gray20; export const buttonSeparator = '#e0e0e0'; -export const skeleton01 = 'rgba(61, 112, 178, .1)'; -export const skeleton02 = 'rgba(61, 112, 178, .1)'; +export const skeleton01 = '#e5e5e5'; +export const skeleton02 = gray30; // New color tokens // TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens @@ -277,15 +314,6 @@ export { fluidSpacing02, fluidSpacing03, fluidSpacing04, - // Layout - // Deprecated -- Remove in v11 - layout01, - layout02, - layout03, - layout04, - layout05, - layout06, - layout07, // Containers container01, container02, diff --git a/packages/themes/src/v10/g100.js b/packages/themes/src/v10/g100.js new file mode 100644 index 000000000000..4daf06cb8c58 --- /dev/null +++ b/packages/themes/src/v10/g100.js @@ -0,0 +1,339 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + */ + +import { adjustLightness } from '../tools'; + +import { + // Blue + blue30, + blue40, + blue50, + blue60, + blue80, + + // Gray + gray10, + gray30, + gray50, + gray60, + gray70, + gray80, + gray90, + gray100, + + // Support + green40, + green50, + yellow30, + red40, + red50, + red60, + red80, + purple40, + + // Constants + white, + black, + + // Tools + rgba, +} from '@carbon/colors'; + +export const interactive01 = blue60; +export const interactive02 = gray60; +export const interactive03 = white; +export const interactive04 = blue50; + +export const uiBackground = gray100; + +export const ui01 = gray90; +export const ui02 = gray80; +export const ui03 = gray80; +export const ui04 = gray60; +export const ui05 = gray10; + +export const text01 = gray10; +export const text02 = gray30; +export const text03 = gray60; +export const text04 = white; +export const text05 = gray50; +export const textError = red40; + +export const icon01 = gray10; +export const icon02 = gray30; +export const icon03 = white; + +export const link01 = blue40; +export const link02 = blue30; + +export const inverseLink = blue60; + +export const field01 = gray90; +export const field02 = gray80; + +export const inverse01 = gray100; +export const inverse02 = gray10; + +export const support01 = red50; +export const support02 = green40; +export const support03 = yellow30; +export const support04 = blue50; + +export const inverseSupport01 = red60; +export const inverseSupport02 = green50; +export const inverseSupport03 = yellow30; +export const inverseSupport04 = blue60; + +export const overlay01 = rgba(black, 0.65); + +export const danger01 = red60; +export const danger02 = red50; + +// Interaction states +export const focus = white; +export const inverseFocusUi = blue60; + +export const hoverPrimary = '#0353e9'; +export const activePrimary = blue80; + +export const hoverPrimaryText = blue30; + +export const hoverSecondary = '#606060'; +export const activeSecondary = gray80; + +export const hoverTertiary = gray10; +export const activeTertiary = gray30; + +export const hoverUI = '#353535'; +export const hoverLightUI = '#4c4c4c'; +export const activeUI = gray70; +export const activeLightUI = gray60; +export const selectedUI = gray80; +export const selectedLightUI = gray70; +export const inverseHoverUI = '#e5e5e5'; + +export const hoverSelectedUI = '#4c4c4c'; + +export const hoverDanger = adjustLightness(danger01, -8); +export const activeDanger = red80; + +export const hoverRow = '#353535'; + +export const visitedLink = purple40; + +export const disabled01 = gray90; +export const disabled02 = gray70; +export const disabled03 = gray50; + +export const highlight = blue80; + +export const decorative01 = gray70; + +export const buttonSeparator = '#161616'; + +export const skeleton01 = '#353535'; +export const skeleton02 = gray70; + +// New color tokens +// TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens +export const background = uiBackground; +export const layer = ui01; +export const layerAccent = ui03; +export const layerAccentActive = gray60; +export const layerAccentHover = adjustLightness(layerAccent, +6); +export const field = field01; +export const backgroundInverse = inverse02; +export const backgroundBrand = interactive01; +export const interactive = interactive04; + +export const borderSubtle = ui03; +export const borderStrong = ui04; +export const borderInverse = ui05; +export const borderInteractive = interactive04; + +export const textPrimary = text01; +export const textSecondary = text02; +export const textPlaceholder = text03; +export const textHelper = text05; +export const textOnColor = text04; +export const textInverse = inverse01; + +export const linkPrimary = link01; +export const linkSecondary = link02; +export const linkVisited = visitedLink; +export const linkInverse = inverseLink; + +export const iconPrimary = icon01; +export const iconSecondary = icon02; +export const iconOnColor = icon03; +export const iconInverse = inverse01; + +export const supportError = support01; +export const supportSuccess = support02; +export const supportWarning = support03; +export const supportInfo = support04; +export const supportErrorInverse = inverseSupport01; +export const supportSuccessInverse = inverseSupport02; +export const supportWarningInverse = inverseSupport03; +export const supportInfoInverse = inverseSupport04; + +export const overlay = overlay01; +export const toggleOff = ui04; +export const shadow = rgba(black, 0.8); + +export const buttonPrimary = interactive01; +export const buttonSecondary = interactive02; +export const buttonTertiary = interactive03; +export const buttonDangerPrimary = danger01; +export const buttonDangerSecondary = danger02; + +export const backgroundActive = activeUI; +export const layerActive = activeUI; + +export const buttonDangerActive = activeDanger; +export const buttonPrimaryActive = activePrimary; +export const buttonSecondaryActive = activeSecondary; +export const buttonTertiaryActive = activeTertiary; + +export const focusInset = inverse01; +export const focusInverse = inverseFocusUi; + +export const backgroundHover = hoverUI; +export const layerHover = hoverUI; +export const fieldHover = hoverUI; +export const backgroundInverseHover = inverseHoverUI; +export const linkPrimaryHover = hoverPrimaryText; +export const buttonDangerHover = hoverDanger; +export const buttonPrimaryHover = hoverPrimary; +export const buttonSecondaryHover = hoverSecondary; +export const buttonTertiaryHover = hoverTertiary; + +export const backgroundSelected = selectedUI; +export const backgroundSelectedHover = hoverSelectedUI; +export const layerSelected = selectedUI; +export const layerSelectedHover = hoverSelectedUI; +export const layerSelectedInverse = ui05; +export const borderSubtleSelected = activeUI; + +export const borderDisabled = disabled01; + +export const textDisabled = disabled02; +export const buttonDisabled = disabled02; +export const iconDisabled = disabled02; + +export const textOnColorDisabled = disabled03; +export const iconOnColorDisabled = disabled03; +export const layerSelectedDisabled = disabled03; + +export const skeletonBackground = skeleton01; +export const skeletonElement = skeleton02; + +export { + // Type + caption01, + caption02, + label01, + label02, + helperText01, + helperText02, + bodyShort01, + bodyLong01, + bodyShort02, + bodyLong02, + code01, + code02, + heading01, + productiveHeading01, + heading02, + productiveHeading02, + productiveHeading03, + productiveHeading04, + productiveHeading05, + productiveHeading06, + productiveHeading07, + expressiveHeading01, + expressiveHeading02, + expressiveHeading03, + expressiveHeading04, + expressiveHeading05, + expressiveHeading06, + expressiveParagraph01, + quotation01, + quotation02, + display01, + display02, + display03, + display04, + // V11 Tokens + legal01, + legal02, + bodyCompact01, + bodyCompact02, + body01, + body02, + headingCompact01, + headingCompact02, + heading03, + heading04, + heading05, + heading06, + heading07, + fluidHeading03, + fluidHeading04, + fluidHeading05, + fluidHeading06, + fluidParagraph01, + fluidQuotation01, + fluidQuotation02, + fluidDisplay01, + fluidDisplay02, + fluidDisplay03, + fluidDisplay04, + // Layout + // Spacing + spacing01, + spacing02, + spacing03, + spacing04, + spacing05, + spacing06, + spacing07, + spacing08, + spacing09, + spacing10, + spacing11, + spacing12, + spacing13, + // Fluid spacing + fluidSpacing01, + fluidSpacing02, + fluidSpacing03, + fluidSpacing04, + // Containers + container01, + container02, + container03, + container04, + container05, + sizeXSmall, + sizeSmall, + sizeMedium, + sizeLarge, + sizeXLarge, + size2XLarge, + // Icon sizes + iconSize01, + iconSize02, +} from './white'; + +// Deprecated ☠️ +export const brand01 = interactive01; +export const brand02 = interactive02; +export const brand03 = interactive03; +export const active01 = activeUI; +export const hoverField = hoverUI; +export const danger = danger01; diff --git a/packages/themes/src/v10/g90.js b/packages/themes/src/v10/g90.js new file mode 100644 index 000000000000..a6ab8af4f587 --- /dev/null +++ b/packages/themes/src/v10/g90.js @@ -0,0 +1,341 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + */ + +import { adjustLightness } from '../tools'; + +import { + // Blue + blue30, + blue40, + blue50, + blue60, + blue70, + blue80, + + // Gray + gray10, + gray30, + gray40, + gray50, + gray60, + gray70, + gray80, + gray90, + gray100, + + // Support + green40, + green50, + yellow30, + red30, + red40, + red60, + red80, + purple40, + + // Constants + white, + black, + + // Tools + rgba, +} from '@carbon/colors'; + +export const interactive01 = blue60; +export const interactive02 = gray60; +export const interactive03 = white; +export const interactive04 = blue50; + +export const uiBackground = gray90; + +export const ui01 = gray80; +export const ui02 = gray70; +export const ui03 = gray70; +export const ui04 = gray50; +export const ui05 = gray10; + +export const text01 = gray10; +export const text02 = gray30; +export const text03 = gray60; +export const text04 = white; +export const text05 = gray50; +export const textError = red30; + +export const icon01 = gray10; +export const icon02 = gray30; +export const icon03 = white; + +export const link01 = blue40; +export const link02 = blue30; + +export const inverseLink = blue60; + +export const field01 = gray80; +export const field02 = gray70; + +export const inverse01 = gray100; +export const inverse02 = gray10; + +export const support01 = red40; +export const support02 = green40; +export const support03 = yellow30; +export const support04 = blue50; + +export const inverseSupport01 = red60; +export const inverseSupport02 = green50; +export const inverseSupport03 = yellow30; +export const inverseSupport04 = blue60; + +export const overlay01 = rgba(black, 0.65); + +export const danger01 = red60; +export const danger02 = red40; + +// Interaction states +export const focus = white; +export const inverseFocusUi = blue60; + +export const hoverPrimary = '#0353e9'; +export const activePrimary = blue80; + +export const hoverPrimaryText = blue30; + +export const hoverSecondary = '#606060'; +export const activeSecondary = gray80; + +export const hoverTertiary = gray10; +export const activeTertiary = gray30; + +export const hoverUI = '#4c4c4c'; +export const hoverLightUI = '#656565'; +export const activeUI = gray60; +export const activeLightUI = gray50; +export const selectedUI = gray70; +export const selectedLightUI = gray60; +export const inverseHoverUI = '#e5e5e5'; + +export const hoverSelectedUI = '#656565'; + +export const hoverDanger = adjustLightness(danger01, -8); +export const activeDanger = red80; + +export const hoverRow = '#4c4c4c'; + +export const visitedLink = purple40; + +export const disabled01 = gray80; +export const disabled02 = gray60; +export const disabled03 = gray40; + +export const highlight = blue70; + +export const decorative01 = gray60; + +export const buttonSeparator = '#161616'; + +export const skeleton01 = '#353535'; +export const skeleton02 = gray70; + +// New color tokens +// TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens +export const background = uiBackground; +export const layer = ui01; +export const layerAccent = ui03; +export const layerAccentActive = gray50; +export const layerAccentHover = adjustLightness(layerAccent, +7); +export const field = field01; +export const backgroundInverse = inverse02; +export const backgroundBrand = interactive01; +export const interactive = interactive04; + +export const borderSubtle = ui03; +export const borderStrong = ui04; +export const borderInverse = ui05; +export const borderInteractive = interactive04; + +export const textPrimary = text01; +export const textSecondary = text02; +export const textPlaceholder = text03; +export const textHelper = text05; +export const textOnColor = text04; +export const textInverse = inverse01; + +export const linkPrimary = link01; +export const linkSecondary = link02; +export const linkVisited = visitedLink; +export const linkInverse = inverseLink; + +export const iconPrimary = icon01; +export const iconSecondary = icon02; +export const iconOnColor = icon03; +export const iconInverse = inverse01; + +export const supportError = support01; +export const supportSuccess = support02; +export const supportWarning = support03; +export const supportInfo = support04; +export const supportErrorInverse = inverseSupport01; +export const supportSuccessInverse = inverseSupport02; +export const supportWarningInverse = inverseSupport03; +export const supportInfoInverse = inverseSupport04; + +export const overlay = overlay01; +export const toggleOff = ui04; +export const shadow = rgba(black, 0.8); + +export const buttonPrimary = interactive01; +export const buttonSecondary = interactive02; +export const buttonTertiary = interactive03; +export const buttonDangerPrimary = danger01; +export const buttonDangerSecondary = danger02; + +export const backgroundActive = activeUI; +export const layerActive = activeUI; + +export const buttonDangerActive = activeDanger; +export const buttonPrimaryActive = activePrimary; +export const buttonSecondaryActive = activeSecondary; +export const buttonTertiaryActive = activeTertiary; + +export const focusInset = inverse01; +export const focusInverse = inverseFocusUi; + +export const backgroundHover = hoverUI; +export const layerHover = hoverUI; +export const fieldHover = hoverUI; +export const backgroundInverseHover = inverseHoverUI; +export const linkPrimaryHover = hoverPrimaryText; +export const buttonDangerHover = hoverDanger; +export const buttonPrimaryHover = hoverPrimary; +export const buttonSecondaryHover = hoverSecondary; +export const buttonTertiaryHover = hoverTertiary; + +export const backgroundSelected = selectedUI; +export const backgroundSelectedHover = hoverSelectedUI; +export const layerSelected = selectedUI; +export const layerSelectedHover = hoverSelectedUI; +export const layerSelectedInverse = ui05; +export const borderSubtleSelected = activeUI; + +export const borderDisabled = disabled01; + +export const textDisabled = disabled02; +export const buttonDisabled = disabled02; +export const iconDisabled = disabled02; + +export const textOnColorDisabled = disabled03; +export const iconOnColorDisabled = disabled03; +export const layerSelectedDisabled = disabled03; + +export const skeletonBackground = skeleton01; +export const skeletonElement = skeleton02; + +export { + // Type + caption01, + caption02, + label01, + label02, + helperText01, + helperText02, + bodyShort01, + bodyLong01, + bodyShort02, + bodyLong02, + code01, + code02, + heading01, + productiveHeading01, + heading02, + productiveHeading02, + productiveHeading03, + productiveHeading04, + productiveHeading05, + productiveHeading06, + productiveHeading07, + expressiveHeading01, + expressiveHeading02, + expressiveHeading03, + expressiveHeading04, + expressiveHeading05, + expressiveHeading06, + expressiveParagraph01, + quotation01, + quotation02, + display01, + display02, + display03, + display04, + // V11 Tokens + legal01, + legal02, + bodyCompact01, + bodyCompact02, + body01, + body02, + headingCompact01, + headingCompact02, + heading03, + heading04, + heading05, + heading06, + heading07, + fluidHeading03, + fluidHeading04, + fluidHeading05, + fluidHeading06, + fluidParagraph01, + fluidQuotation01, + fluidQuotation02, + fluidDisplay01, + fluidDisplay02, + fluidDisplay03, + fluidDisplay04, + // Layout + // Spacing + spacing01, + spacing02, + spacing03, + spacing04, + spacing05, + spacing06, + spacing07, + spacing08, + spacing09, + spacing10, + spacing11, + spacing12, + spacing13, + // Fluid spacing + fluidSpacing01, + fluidSpacing02, + fluidSpacing03, + fluidSpacing04, + // Containers + container01, + container02, + container03, + container04, + container05, + sizeXSmall, + sizeSmall, + sizeMedium, + sizeLarge, + sizeXLarge, + size2XLarge, + // Icon sizes + iconSize01, + iconSize02, +} from './white'; + +// Deprecated ☠️ +export const brand01 = interactive01; +export const brand02 = interactive02; +export const brand03 = interactive03; +export const active01 = activeUI; +export const hoverField = hoverUI; +export const danger = danger01; diff --git a/packages/themes/src/next/index.js b/packages/themes/src/v10/index.js similarity index 72% rename from packages/themes/src/next/index.js rename to packages/themes/src/v10/index.js index 16b62ab709c6..ad4f97ae6bcf 100644 --- a/packages/themes/src/next/index.js +++ b/packages/themes/src/v10/index.js @@ -9,13 +9,14 @@ import * as white from './white'; import * as g10 from './g10'; import * as g90 from './g90'; import * as g100 from './g100'; -import { TokenFormat, group, set } from './tokens'; +import { tokens } from './tokens'; -export const themes = { +const themes = { white, g10, g90, g100, }; -export { TokenFormat, group, set }; +export * from './white'; +export { white, g10, g90, g100, themes, tokens }; diff --git a/packages/themes/metadata.yml b/packages/themes/src/v10/metadata.yml similarity index 100% rename from packages/themes/metadata.yml rename to packages/themes/src/v10/metadata.yml diff --git a/packages/themes/src/tokens.js b/packages/themes/src/v10/tokens.js similarity index 100% rename from packages/themes/src/tokens.js rename to packages/themes/src/v10/tokens.js diff --git a/packages/themes/src/v10/white.js b/packages/themes/src/v10/white.js new file mode 100644 index 000000000000..95bc99c33db4 --- /dev/null +++ b/packages/themes/src/v10/white.js @@ -0,0 +1,343 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + */ + +import { adjustLightness } from '../tools'; + +import { + // Blue + blue20, + blue40, + blue60, + blue70, + blue80, + + // Gray + gray10, + gray20, + gray30, + gray40, + gray50, + gray60, + gray70, + gray80, + gray100, + + // Support + blue50, + green40, + green60, + yellow30, + red50, + red60, + red80, + purple60, + + // Constants + white, + black, + + // Tools + rgba, +} from '@carbon/colors'; + +export const interactive01 = blue60; +export const interactive02 = gray80; +export const interactive03 = blue60; +export const interactive04 = blue60; + +export const uiBackground = white; + +export const ui01 = gray10; +export const ui02 = white; +export const ui03 = gray20; +export const ui04 = gray50; +export const ui05 = gray100; + +export const text01 = gray100; +export const text02 = gray70; +export const text03 = gray40; +export const text04 = white; +export const text05 = gray60; +export const textError = red60; + +export const icon01 = gray100; +export const icon02 = gray70; +export const icon03 = white; + +export const link01 = blue60; +export const link02 = blue70; + +export const inverseLink = blue40; + +export const field01 = gray10; +export const field02 = white; + +export const inverse01 = white; +export const inverse02 = gray80; + +export const support01 = red60; +export const support02 = green60; +export const support03 = yellow30; +export const support04 = blue70; + +export const inverseSupport01 = red50; +export const inverseSupport02 = green40; +export const inverseSupport03 = yellow30; +export const inverseSupport04 = blue50; + +export const overlay01 = rgba(gray100, 0.5); + +export const danger01 = red60; +export const danger02 = red60; + +// Interaction states +export const focus = blue60; +export const inverseFocusUi = white; + +export const hoverPrimary = '#0353e9'; +export const activePrimary = blue80; + +export const hoverPrimaryText = blue70; + +export const hoverSecondary = '#4c4c4c'; +export const activeSecondary = gray60; + +export const hoverTertiary = '#0353e9'; +export const activeTertiary = blue80; + +export const hoverUI = '#e5e5e5'; +export const hoverLightUI = '#e5e5e5'; +export const activeUI = gray30; +export const activeLightUI = gray30; +export const selectedUI = gray20; +export const selectedLightUI = gray20; +export const inverseHoverUI = '#4c4c4c'; + +export const hoverSelectedUI = '#cacaca'; + +export const hoverDanger = adjustLightness(danger01, -8); +export const activeDanger = red80; + +export const hoverRow = '#e5e5e5'; + +export const visitedLink = purple60; + +export const disabled01 = gray10; +export const disabled02 = gray30; +export const disabled03 = gray50; + +export const highlight = blue20; + +export const decorative01 = gray20; + +export const buttonSeparator = '#e0e0e0'; + +export const skeleton01 = '#e5e5e5'; +export const skeleton02 = gray30; + +// New color tokens +// TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens +export const background = uiBackground; +export const layer = ui01; +export const layerAccent = ui03; +export const layerAccentActive = gray40; +export const layerAccentHover = adjustLightness(layerAccent, -6); +export const field = field01; +export const backgroundInverse = inverse02; +export const backgroundBrand = interactive01; +export const interactive = interactive04; + +export const borderSubtle = ui03; +export const borderStrong = ui04; +export const borderInverse = ui05; +export const borderInteractive = interactive04; + +export const textPrimary = text01; +export const textSecondary = text02; +export const textPlaceholder = text03; +export const textHelper = text05; +export const textOnColor = text04; +export const textInverse = inverse01; + +export const linkPrimary = link01; +export const linkSecondary = link02; +export const linkVisited = visitedLink; +export const linkInverse = inverseLink; + +export const iconPrimary = icon01; +export const iconSecondary = icon02; +export const iconOnColor = icon03; +export const iconInverse = inverse01; + +export const supportError = support01; +export const supportSuccess = support02; +export const supportWarning = support03; +export const supportInfo = support04; +export const supportErrorInverse = inverseSupport01; +export const supportSuccessInverse = inverseSupport02; +export const supportWarningInverse = inverseSupport03; +export const supportInfoInverse = inverseSupport04; + +export const overlay = overlay01; +export const toggleOff = ui04; +export const shadow = rgba(black, 0.3); + +export const buttonPrimary = interactive01; +export const buttonSecondary = interactive02; +export const buttonTertiary = interactive03; +export const buttonDangerPrimary = danger01; +export const buttonDangerSecondary = danger02; + +export const backgroundActive = activeUI; +export const layerActive = activeUI; + +export const buttonDangerActive = activeDanger; +export const buttonPrimaryActive = activePrimary; +export const buttonSecondaryActive = activeSecondary; +export const buttonTertiaryActive = activeTertiary; + +export const focusInset = inverse01; +export const focusInverse = inverseFocusUi; + +export const backgroundHover = hoverUI; +export const layerHover = hoverUI; +export const fieldHover = hoverUI; +export const backgroundInverseHover = inverseHoverUI; +export const linkPrimaryHover = hoverPrimaryText; +export const buttonDangerHover = hoverDanger; +export const buttonPrimaryHover = hoverPrimary; +export const buttonSecondaryHover = hoverSecondary; +export const buttonTertiaryHover = hoverTertiary; + +export const backgroundSelected = selectedUI; +export const backgroundSelectedHover = hoverSelectedUI; +export const layerSelected = selectedUI; +export const layerSelectedHover = hoverSelectedUI; +export const layerSelectedInverse = ui05; +export const borderSubtleSelected = activeUI; + +export const borderDisabled = disabled01; + +export const textDisabled = disabled02; +export const buttonDisabled = disabled02; +export const iconDisabled = disabled02; + +export const textOnColorDisabled = disabled03; +export const iconOnColorDisabled = disabled03; +export const layerSelectedDisabled = disabled03; + +export const skeletonBackground = skeleton01; +export const skeletonElement = skeleton02; + +// Type +export { + caption01, + caption02, + label01, + label02, + helperText01, + helperText02, + bodyShort01, + bodyLong01, + bodyShort02, + bodyLong02, + code01, + code02, + heading01, + productiveHeading01, + heading02, + productiveHeading02, + productiveHeading03, + productiveHeading04, + productiveHeading05, + productiveHeading06, + productiveHeading07, + expressiveHeading01, + expressiveHeading02, + expressiveHeading03, + expressiveHeading04, + expressiveHeading05, + expressiveHeading06, + expressiveParagraph01, + quotation01, + quotation02, + display01, + display02, + display03, + display04, + // V11 Tokens + legal01, + legal02, + bodyCompact01, + bodyCompact02, + body01, + body02, + headingCompact01, + headingCompact02, + heading03, + heading04, + heading05, + heading06, + heading07, + fluidHeading03, + fluidHeading04, + fluidHeading05, + fluidHeading06, + fluidParagraph01, + fluidQuotation01, + fluidQuotation02, + fluidDisplay01, + fluidDisplay02, + fluidDisplay03, + fluidDisplay04, +} from '@carbon/type'; + +// Layout +// Spacing +export { + spacing01, + spacing02, + spacing03, + spacing04, + spacing05, + spacing06, + spacing07, + spacing08, + spacing09, + spacing10, + spacing11, + spacing12, + spacing13, + // Fluid spacing + fluidSpacing01, + fluidSpacing02, + fluidSpacing03, + fluidSpacing04, + // Containers + container01, + container02, + container03, + container04, + container05, + sizeXSmall, + sizeSmall, + sizeMedium, + sizeLarge, + sizeXLarge, + size2XLarge, + // Icon sizes + iconSize01, + iconSize02, +} from '@carbon/layout'; + +// Deprecated ☠️ +export const brand01 = interactive01; +export const brand02 = interactive02; +export const brand03 = interactive03; +export const active01 = activeUI; +export const hoverField = hoverUI; +export const danger = danger01; diff --git a/packages/themes/src/white.js b/packages/themes/src/white.js index 3fb1ae37fafb..134a5a60361b 100644 --- a/packages/themes/src/white.js +++ b/packages/themes/src/white.js @@ -4,19 +4,19 @@ * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ -import { adjustLightness } from './tools'; import { // Blue blue20, + blue30, blue40, blue60, blue70, - blue80, // Gray gray10, gray20, + gray20Hover, gray30, gray40, gray50, @@ -28,209 +28,171 @@ import { // Support blue50, green40, - green60, - yellow, + green50, + yellow30, + orange40, red50, red60, - red80, purple60, // Constants white, - black, - - // Tools - rgba, + whiteHover, + gray80Hover, + gray10Hover, } from '@carbon/colors'; - -export const interactive01 = blue60; -export const interactive02 = gray80; -export const interactive03 = blue60; -export const interactive04 = blue60; - -export const uiBackground = white; - -export const ui01 = gray10; -export const ui02 = white; -export const ui03 = gray20; -export const ui04 = gray50; -export const ui05 = gray100; - -export const text01 = gray100; -export const text02 = gray70; -export const text03 = gray40; -export const text04 = white; -export const text05 = gray60; -export const textError = red60; - -export const icon01 = gray100; -export const icon02 = gray70; -export const icon03 = white; - -export const link01 = blue60; -export const link02 = blue70; - -export const inverseLink = blue40; - +import { adjustAlpha } from './tools'; + +// Background +export const background = white; +export const backgroundInverse = gray80; +export const backgroundBrand = blue60; +export const backgroundActive = adjustAlpha(gray50, 0.5); +export const backgroundHover = adjustAlpha(gray50, 0.12); +export const backgroundInverseHover = gray80Hover; +export const backgroundSelected = adjustAlpha(gray50, 0.2); +export const backgroundSelectedHover = adjustAlpha(gray50, 0.32); + +// Layer +// layer-01 +export const layer01 = gray10; +export const layerActive01 = gray30; +export const layerHover01 = gray10Hover; +export const layerSelected01 = gray20; +export const layerSelectedHover01 = gray20Hover; + +// layer-02 +export const layer02 = white; +export const layerActive02 = gray30; +export const layerHover02 = whiteHover; +export const layerSelected02 = gray20; +export const layerSelectedHover02 = gray20Hover; + +// layer-03 +export const layer03 = gray10; +export const layerActive03 = gray30; +export const layerHover03 = gray10Hover; +export const layerSelected03 = gray20; +export const layerSelectedHover03 = gray20Hover; + +// layer +export const layerSelectedInverse = gray100; +export const layerSelectedDisabled = gray50; + +// layer-accent-01 +export const layerAccent01 = gray20; +export const layerAccentActive01 = gray40; +export const layerAccentHover01 = gray20Hover; + +// layer-accent-02 +export const layerAccent02 = gray20; +export const layerAccentActive02 = gray40; +export const layerAccentHover02 = gray20Hover; + +// layer-accent-03 +export const layerAccent03 = gray20; +export const layerAccentActive03 = gray40; +export const layerAccentHover03 = gray20Hover; + +// Field +// field-01 export const field01 = gray10; -export const field02 = white; +export const fieldHover01 = gray10Hover; -export const inverse01 = white; -export const inverse02 = gray80; - -export const support01 = red60; -export const support02 = green60; -export const support03 = yellow; -export const support04 = blue70; - -export const inverseSupport01 = red50; -export const inverseSupport02 = green40; -export const inverseSupport03 = yellow; -export const inverseSupport04 = blue50; - -export const overlay01 = rgba(gray100, 0.5); - -export const danger01 = red60; -export const danger02 = red60; +// field-02 +export const field02 = white; +export const fieldHover02 = whiteHover; -// Interaction states -export const focus = blue60; -export const inverseFocusUi = white; +// field-03 +export const field03 = gray10; +export const fieldHover03 = gray10Hover; -export const hoverPrimary = '#0353e9'; -export const activePrimary = blue80; +// Border +// border-subtle-00 +export const borderSubtle00 = gray20; -export const hoverPrimaryText = blue70; +// border-subtle-01 +export const borderSubtle01 = gray20; +export const borderSubtleSelected01 = gray30; -export const hoverSecondary = '#4c4c4c'; -export const activeSecondary = gray60; +// border-subtle-02 +export const borderSubtle02 = gray20; +export const borderSubtleSelected02 = gray30; -export const hoverTertiary = '#0353e9'; -export const activeTertiary = blue80; +// border-subtle-03 +export const borderSubtle03 = gray20; +export const borderSubtleSelected03 = gray30; -export const hoverUI = '#e5e5e5'; -export const hoverLightUI = '#e5e5e5'; -export const activeUI = gray30; -export const activeLightUI = gray30; -export const selectedUI = gray20; -export const selectedLightUI = gray20; -export const inverseHoverUI = '#4c4c4c'; +// border-strong +export const borderStrong01 = gray50; +export const borderStrong02 = gray50; +export const borderStrong03 = gray50; -export const hoverSelectedUI = '#cacaca'; +// border-inverse +export const borderInverse = gray100; -export const hoverDanger = adjustLightness(danger01, -8); -export const activeDanger = red80; +// border-interactive +export const borderInteractive = blue60; -export const hoverRow = '#e5e5e5'; +// border +export const borderDisabled = gray30; -export const visitedLink = purple60; +// Text +export const textPrimary = gray100; +export const textSecondary = gray70; +export const textPlaceholder = adjustAlpha(textPrimary, 0.4); +export const textHelper = gray60; +export const textError = red60; +export const textInverse = white; +export const textOnColor = white; +export const textOnColorDisabled = gray50; +export const textDisabled = adjustAlpha(textPrimary, 0.25); + +// Link +export const linkPrimary = blue60; +export const linkPrimaryHover = blue70; +export const linkSecondary = blue70; +export const linkInverse = blue40; +export const linkVisited = purple60; +export const linkInverseActive = gray10; +export const linkInverseHover = blue30; + +// Icon +export const iconPrimary = gray100; +export const iconSecondary = gray70; +export const iconInverse = white; +export const iconOnColor = white; +export const iconOnColorDisabled = gray50; +export const iconDisabled = adjustAlpha(iconPrimary, 0.25); + +// Support +export const supportError = red60; +export const supportSuccess = green50; +export const supportWarning = yellow30; +export const supportInfo = blue70; +export const supportErrorInverse = red50; +export const supportSuccessInverse = green40; +export const supportWarningInverse = yellow30; +export const supportInfoInverse = blue50; +export const supportCautionMinor = yellow30; +export const supportCautionMajor = orange40; +export const supportCautionUndefined = purple60; + +// Focus +export const focus = blue60; +export const focusInset = white; +export const focusInverse = white; -export const disabled01 = gray10; -export const disabled02 = gray30; -export const disabled03 = gray50; +// Skeleton +export const skeletonBackground = whiteHover; +export const skeletonElement = gray30; +// Misc +export const interactive = blue60; export const highlight = blue20; - -export const decorative01 = gray20; - -export const buttonSeparator = '#e0e0e0'; - -export const skeleton01 = '#e5e5e5'; -export const skeleton02 = gray30; - -// New color tokens -// TO-DO: remove fallback color when v11 is released and assign carbon colors to new tokens -export const background = uiBackground; -export const layer = ui01; -export const layerAccent = ui03; -export const layerAccentActive = gray40; -export const layerAccentHover = adjustLightness(layerAccent, -6); -export const field = field01; -export const backgroundInverse = inverse02; -export const backgroundBrand = interactive01; -export const interactive = interactive04; - -export const borderSubtle = ui03; -export const borderStrong = ui04; -export const borderInverse = ui05; -export const borderInteractive = interactive04; - -export const textPrimary = text01; -export const textSecondary = text02; -export const textPlaceholder = text03; -export const textHelper = text05; -export const textOnColor = text04; -export const textInverse = inverse01; - -export const linkPrimary = link01; -export const linkSecondary = link02; -export const linkVisited = visitedLink; -export const linkInverse = inverseLink; - -export const iconPrimary = icon01; -export const iconSecondary = icon02; -export const iconOnColor = icon03; -export const iconInverse = inverse01; - -export const supportError = support01; -export const supportSuccess = support02; -export const supportWarning = support03; -export const supportInfo = support04; -export const supportErrorInverse = inverseSupport01; -export const supportSuccessInverse = inverseSupport02; -export const supportWarningInverse = inverseSupport03; -export const supportInfoInverse = inverseSupport04; - -export const overlay = overlay01; -export const toggleOff = ui04; -export const shadow = rgba(black, 0.3); - -export const buttonPrimary = interactive01; -export const buttonSecondary = interactive02; -export const buttonTertiary = interactive03; -export const buttonDangerPrimary = danger01; -export const buttonDangerSecondary = danger02; - -export const backgroundActive = activeUI; -export const layerActive = activeUI; - -export const buttonDangerActive = activeDanger; -export const buttonPrimaryActive = activePrimary; -export const buttonSecondaryActive = activeSecondary; -export const buttonTertiaryActive = activeTertiary; - -export const focusInset = inverse01; -export const focusInverse = inverseFocusUi; - -export const backgroundHover = hoverUI; -export const layerHover = hoverUI; -export const fieldHover = hoverUI; -export const backgroundInverseHover = inverseHoverUI; -export const linkPrimaryHover = hoverPrimaryText; -export const buttonDangerHover = hoverDanger; -export const buttonPrimaryHover = hoverPrimary; -export const buttonSecondaryHover = hoverSecondary; -export const buttonTertiaryHover = hoverTertiary; - -export const backgroundSelected = selectedUI; -export const backgroundSelectedHover = hoverSelectedUI; -export const layerSelected = selectedUI; -export const layerSelectedHover = hoverSelectedUI; -export const layerSelectedInverse = ui05; -export const borderSubtleSelected = activeUI; - -export const borderDisabled = disabled01; - -export const textDisabled = disabled02; -export const buttonDisabled = disabled02; -export const iconDisabled = disabled02; - -export const textOnColorDisabled = disabled03; -export const iconOnColorDisabled = disabled03; -export const layerSelectedDisabled = disabled03; - -export const skeletonBackground = skeleton01; -export const skeletonElement = skeleton02; +export const overlay = 'rgba(22, 22, 22, 0.5)'; +export const toggleOff = gray50; +export const shadow = 'rgba(0, 0, 0, 0.3)'; // Type export { @@ -268,31 +230,6 @@ export { display02, display03, display04, - // V11 Tokens - legal01, - legal02, - bodyCompact01, - bodyCompact02, - body01, - body02, - headingCompact01, - headingCompact02, - heading03, - heading04, - heading05, - heading06, - heading07, - fluidHeading03, - fluidHeading04, - fluidHeading05, - fluidHeading06, - fluidParagraph01, - fluidQuotation01, - fluidQuotation02, - fluidDisplay01, - fluidDisplay02, - fluidDisplay03, - fluidDisplay04, } from '@carbon/type'; // Layout @@ -316,15 +253,6 @@ export { fluidSpacing02, fluidSpacing03, fluidSpacing04, - // Layout - // Deprecated -- Remove in v11 - layout01, - layout02, - layout03, - layout04, - layout05, - layout06, - layout07, // Containers container01, container02, @@ -341,11 +269,3 @@ export { iconSize01, iconSize02, } from '@carbon/layout'; - -// Deprecated ☠️ -export const brand01 = interactive01; -export const brand02 = interactive02; -export const brand03 = interactive03; -export const active01 = activeUI; -export const hoverField = hoverUI; -export const danger = danger01; diff --git a/packages/themes/tasks/build.js b/packages/themes/tasks/build.js index 54d8084944cc..b9c8cd81cf51 100644 --- a/packages/themes/tasks/build.js +++ b/packages/themes/tasks/build.js @@ -9,114 +9,43 @@ 'use strict'; -require('core-js/features/array/flat-map'); - const { reporter } = require('@carbon/cli-reporter'); const { generate } = require('@carbon/scss-generator'); const fs = require('fs-extra'); const path = require('path'); -const yaml = require('js-yaml'); -const { formatTokenName, themes, tokens } = require('../lib'); -const buildTokensFile = require('./builders/tokens'); -const buildThemesFile = require('./builders/themes'); const buildCompatThemesFile = require('./builders/compat/themes'); const buildCompatTokensFile = require('./builders/compat/tokens'); const buildModulesThemesFile = require('./builders/modules-themes'); const buildModulesTokensFile = require('./builders/modules-tokens'); -const buildMixinsFile = require('./builders/mixins'); - -const defaultTheme = 'white'; -const defaultThemeMapName = 'carbon--theme'; async function build() { reporter.info('Building scss files for themes...'); - const METADATA_FILE = path.resolve(__dirname, '../metadata.yml'); - const metadata = transformMetadata( - yaml.safeLoad(fs.readFileSync(METADATA_FILE, 'utf8')) - ); - - const SCSS_DIR = path.resolve(__dirname, '../scss/generated'); + const SCSS_DIR = path.resolve(__dirname, '../scss'); + const GENERATED_SCSS_DIR = path.join(SCSS_DIR, 'generated'); const files = [ { - filepath: path.join(SCSS_DIR, '_tokens.scss'), - builder() { - return buildTokensFile(tokens, metadata, themes[defaultTheme]); - }, - }, - { - filepath: path.join(SCSS_DIR, '_themes.scss'), - builder() { - return buildThemesFile( - themes, - tokens, - defaultTheme, - defaultThemeMapName - ); - }, - }, - { - filepath: path.join(SCSS_DIR, '_mixins.scss'), - builder() { - return buildMixinsFile( - themes, - tokens, - defaultTheme, - defaultThemeMapName - ); - }, - }, - { - filepath: path.resolve( - SCSS_DIR, - '..', - 'compat', - 'generated', - '_themes.scss' - ), + filepath: path.join(SCSS_DIR, 'compat', 'generated', '_themes.scss'), builder() { return buildCompatThemesFile(); }, }, { - filepath: path.resolve( - SCSS_DIR, - '..', - 'compat', - 'generated', - '_tokens.scss' - ), + filepath: path.resolve(SCSS_DIR, 'compat', 'generated', '_tokens.scss'), builder() { return buildCompatTokensFile(); }, }, { - filepath: path.resolve( - SCSS_DIR, - '..', - 'modules', - 'generated', - '_themes.scss' - ), + filepath: path.join(GENERATED_SCSS_DIR, '_themes.scss'), builder() { - return buildModulesThemesFile( - themes, - tokens, - defaultTheme, - defaultThemeMapName - ); + return buildModulesThemesFile(); }, }, { - filepath: path.resolve( - SCSS_DIR, - '..', - 'modules', - 'generated', - '_tokens.scss' - ), + filepath: path.join(GENERATED_SCSS_DIR, '_tokens.scss'), builder() { - return buildModulesTokensFile(tokens); + return buildModulesTokensFile(); }, }, ]; @@ -131,42 +60,6 @@ async function build() { reporter.success('Done! 🎉'); } -/** - * Transform token names to formats expected by Sassdoc for descriptions and - * aliases - * @param {object} metadata - token metadata - * @returns {object} token metadata - */ -function transformMetadata(metadata) { - const namesRegEx = new RegExp( - metadata.tokens.map((token) => token.name).join('|'), - 'g' - ); - - const replaceMap = {}; - metadata.tokens.map((token) => { - replaceMap[token.name] = formatTokenName(token.name); - }); - - metadata.tokens.forEach((token, i) => { - // interactive01 to `$interactive-01` - if (token.role) { - token.role.forEach((role, j) => { - metadata.tokens[i].role[j] = role.replace(namesRegEx, (match) => { - return '`$' + replaceMap[match] + '`'; - }); - }); - } - - // brand01 to brand-01 - if (token.alias) { - token.alias = formatTokenName(token.alias); - } - }); - - return metadata; -} - build().catch((error) => { console.error(error); process.exit(1); diff --git a/packages/themes/tasks/builders/compat/shared.js b/packages/themes/tasks/builders/compat/shared.js index 5c9fd5685c23..9f9180d34628 100644 --- a/packages/themes/tasks/builders/compat/shared.js +++ b/packages/themes/tasks/builders/compat/shared.js @@ -7,7 +7,7 @@ 'use strict'; -const { TokenFormat, group } = require('../../../src/next'); +const { TokenFormat, group } = require('../../../src/tokens'); const denylist = new Set([ 'background', diff --git a/packages/themes/tasks/builders/compat/themes.js b/packages/themes/tasks/builders/compat/themes.js index f630561d2832..357c9893239b 100644 --- a/packages/themes/tasks/builders/compat/themes.js +++ b/packages/themes/tasks/builders/compat/themes.js @@ -8,8 +8,8 @@ 'use strict'; const { types: t } = require('@carbon/scss-generator'); -const { TokenFormat } = require('../../../src/next'); -const { white, g10, g90, g100, tokens } = require('../../../src'); +const { TokenFormat } = require('../../../src/tokens'); +const { white, g10, g90, g100, tokens } = require('../../../src/v10'); const { FILE_BANNER, primitive } = require('../shared'); const { shouldIncludeToken } = require('./shared'); diff --git a/packages/themes/tasks/builders/compat/tokens.js b/packages/themes/tasks/builders/compat/tokens.js index c21813e75748..af3094d574ac 100644 --- a/packages/themes/tasks/builders/compat/tokens.js +++ b/packages/themes/tasks/builders/compat/tokens.js @@ -8,8 +8,8 @@ 'use strict'; const { types: t } = require('@carbon/scss-generator'); -const { TokenFormat } = require('../../../src/next'); -const { tokens } = require('../../../src'); +const { TokenFormat } = require('../../../src/tokens'); +const { tokens } = require('../../../src/v10'); const { FILE_BANNER } = require('../shared'); const { shouldIncludeToken } = require('./shared'); @@ -43,8 +43,8 @@ function buildCompatFile() { // Modules t.SassModule('sass:map'), - t.SassModule('../../modules/config'), - t.SassModule('../../modules/theme'), + t.SassModule('../../config'), + t.SassModule('../../theme'), t.Newline(), t.Comment('/ Internal helper for generating CSS Custom Properties'), diff --git a/packages/themes/tasks/builders/mixins.js b/packages/themes/tasks/builders/mixins.js deleted file mode 100644 index ead537937b35..000000000000 --- a/packages/themes/tasks/builders/mixins.js +++ /dev/null @@ -1,326 +0,0 @@ -/** - * Copyright IBM Corp. 2015, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -const { types: t } = require('@carbon/scss-generator'); -const { formatTokenName } = require('../../lib'); -const { FILE_BANNER } = require('./shared'); - -function buildMixinsFile(themes, tokens, defaultTheme, defaultThemeMapName) { - const comment = t.Comment(`/ Define theme variables from a map of tokens -/ @access public -/ @param {Map} $theme [$${defaultThemeMapName}] - Map of theme tokens -/ @param {Bool} $emit-custom-properties [false] - Output CSS Custom Properties for theme tokens -/ @content Pass in your custom declaration blocks to be used after the token maps set theming variables. -/ -/ @example scss -/ // Default usage -/ @include carbon--theme(); -/ -/ // Alternate styling (not white theme) -/ @include carbon--theme($carbon--theme--g90) { -/ // declarations... -/ } -/ -/ // Inline styling -/ @include carbon--theme($carbon--theme--g90) { -/ .my-dark-theme { -/ // declarations... -/ } -/ } -/ -/ @group @carbon/themes`); - - // Create carbon--theme mixin, takes a theme as input and assigns all theme - // variables using the `!global` flag before resetting at the end of the - // function block - const mixin = t.SassMixin({ - id: t.Identifier('carbon--theme'), - params: [ - t.AssignmentPattern({ - left: t.Identifier('theme'), - right: t.Identifier(defaultThemeMapName), - }), - t.AssignmentPattern({ - left: t.Identifier('emit-custom-properties'), - right: t.SassBoolean(false), - }), - t.AssignmentPattern({ - left: t.Identifier('emit-difference'), - right: t.SassBoolean(false), - }), - ], - body: t.BlockStatement({ - body: [ - t.Assignment({ - id: t.Identifier('parent-carbon-theme'), - init: t.Identifier('carbon--theme'), - }), - t.Assignment({ - id: t.Identifier('carbon--theme'), - init: t.Identifier('theme'), - global: true, - }), - ...Object.keys(tokens).flatMap((group) => { - return tokens[group].flatMap((token) => { - const name = formatTokenName(token); - - return t.Assignment({ - id: t.Identifier(name), - init: t.CallExpression({ - callee: t.Identifier('map-get'), - arguments: [t.Identifier('theme'), t.SassString(name)], - }), - global: true, - }); - }); - }), - t.IfStatement({ - // global-variable-exists('feature-flags') == false or - // global-variable-exists('feature-flags') and - // map-get($feature-flags, 'enable-v11-release') == true - test: t.LogicalExpression({ - // global-variable-exists('feature-flags') == false - left: t.LogicalExpression({ - left: t.SassFunctionCall(t.Identifier('global-variable-exists'), [ - t.SassString('feature-flags'), - ]), - operator: '==', - right: t.SassBoolean(false), - }), - operator: 'or', - // global-variable-exists('feature-flags') and - // map-get($feature-flags, 'enable-v11-release') == true - right: t.LogicalExpression({ - left: t.SassFunctionCall(t.Identifier('global-variable-exists'), [ - t.SassString('feature-flags'), - ]), - operator: 'and', - right: t.LogicalExpression({ - left: t.SassFunctionCall(t.Identifier('map-get'), [ - t.Identifier('feature-flags'), - t.SassString('enable-v11-release'), - ]), - operator: '!=', - right: t.SassBoolean(true), - }), - }), - }), - consequent: t.BlockStatement( - Object.entries(tokenMappings).map(([key, value]) => { - return t.Assignment({ - id: t.Identifier(key), - init: t.Identifier(value), - global: true, - }); - }) - ), - }), - t.IfStatement({ - test: t.LogicalExpression({ - left: t.SassFunctionCall(t.Identifier('global-variable-exists'), [ - t.SassString('feature-flags'), - ]), - operator: 'and', - right: t.SassFunctionCall(t.Identifier('map-get'), [ - t.Identifier('feature-flags'), - t.SassString('enable-css-custom-properties'), - ]), - }), - consequent: t.BlockStatement( - Object.keys(tokens).flatMap((group) => { - return tokens[group] - .filter((token) => { - // We don't want to inline CSS Custom Properties for tokens - // that are maps, we'll need to use a corresponding mixin for - // that token to embed CSS Custom Properties - return typeof themes[defaultTheme][token] !== 'object'; - }) - .flatMap((token) => { - const name = formatTokenName(token); - return t.Assignment({ - id: t.Identifier(name), - init: t.CallExpression({ - callee: t.Identifier('var'), - arguments: [ - t.SassValue({ - value: `--#{$custom-property-prefix}-${name}`, - }), - t.CallExpression({ - callee: t.Identifier('map-get'), - arguments: [ - t.Identifier('theme'), - t.SassString(name), - ], - }), - ], - }), - global: true, - }); - }); - }) - ), - }), - t.IfStatement({ - test: t.LogicalExpression({ - left: t.Identifier('emit-custom-properties'), - operator: '==', - right: t.SassBoolean(true), - }), - consequent: t.BlockStatement( - Object.keys(tokens).flatMap((group) => { - return tokens[group].flatMap((token) => { - const name = formatTokenName(token); - return [ - t.Newline(), - t.IfStatement({ - test: t.SassFunctionCall(t.Identifier('should-emit'), [ - t.Identifier('theme'), - t.Identifier('parent-carbon-theme'), - t.SassString(name), - t.Identifier('emit-difference'), - ]), - consequent: t.BlockStatement([ - t.SassMixinCall(t.Identifier('custom-property'), [ - t.SassString(name), - t.SassFunctionCall(t.Identifier('map-get'), [ - t.Identifier('theme'), - t.SassString(name), - ]), - ]), - ]), - }), - ]; - }); - }) - ), - }), - t.AtContent(), - t.Newline(), - t.Comment(' Reset to default theme after apply in content'), - t.IfStatement({ - test: t.LogicalExpression({ - left: t.Identifier('carbon--theme'), - operator: '!=', - right: t.Identifier('parent-carbon-theme'), - }), - consequent: t.BlockStatement([ - t.Assignment({ - id: t.Identifier('carbon--theme'), - init: t.Identifier('parent-carbon-theme'), - global: true, - }), - t.SassMixinCall(t.Identifier('carbon--theme')), - ]), - }), - ], - }), - }); - - return t.StyleSheet([ - FILE_BANNER, - t.Newline(), - t.SassImport('./themes'), - t.Newline(), - comment, - mixin, - ]); -} - -const tokenMappings = { - background: 'ui-background', - layer: 'ui-01', - 'layer-accent': 'ui-03', - field: 'field-01', - 'background-inverse': 'inverse-02', - 'background-brand': 'interactive-01', - interactive: 'interactive-04', - - 'border-subtle': 'ui-03', - 'border-strong': 'ui-04', - 'border-inverse': 'ui-05', - 'border-interactive': 'interactive-04', - - 'text-primary': 'text-01', - 'text-secondary': 'text-02', - 'text-placeholder': 'text-03', - 'text-helper': 'text-05', - 'text-on-color': 'text-04', - 'text-inverse': 'inverse-01', - - 'link-primary': 'link-01', - 'link-secondary': 'link-02', - 'link-visited': 'visited-link', - 'link-inverse': 'inverse-link', - - 'icon-primary': 'icon-01', - 'icon-secondary': 'icon-02', - 'icon-on-color': 'icon-03', - 'icon-inverse': 'inverse-01', - - 'support-error': 'support-01', - 'support-success': 'support-02', - 'support-warning': 'support-03', - 'support-info': 'support-04', - 'support-error-inverse': 'inverse-support-01', - 'support-success-inverse': 'inverse-support-02', - 'support-warning-inverse': 'inverse-support-03', - 'support-info-inverse': 'inverse-support-04', - - overlay: 'overlay-01', - 'toggle-off': 'ui-04', - - 'button-primary': 'interactive-01', - 'button-secondary': 'interactive-02', - 'button-tertiary': 'interactive-03', - 'button-danger-primary': 'danger-01', - 'button-danger-secondary': 'danger-02', - - 'background-active': 'active-ui', - 'layer-active': 'active-ui', - - 'button-danger-active': 'active-danger', - 'button-primary-active': 'active-primary', - 'button-secondary-active': 'active-secondary', - 'button-tertiary-active': 'active-tertiary', - - 'focus-inset': 'inverse-01', - 'focus-inverse': 'inverse-focus-ui', - - 'background-hover': 'hover-ui', - 'layer-hover': 'hover-ui', - 'field-hover': 'hover-ui', - 'background-inverse-hover': 'inverse-hover-ui', - 'link-primary-hover': 'hover-primary-text', - 'button-danger-hover': 'hover-danger', - 'button-primary-hover': 'hover-primary', - 'button-secondary-hover': 'hover-secondary', - 'button-tertiary-hover': 'hover-tertiary', - - 'background-selected': 'selected-ui', - 'background-selected-hover': 'hover-selected-ui', - 'layer-selected': 'selected-ui', - 'layer-selected-hover': 'hover-selected-ui', - 'layer-selected-inverse': 'ui-05', - 'border-subtle-selected': 'active-ui', - - 'border-disabled': 'disabled-01', - - 'text-disabled': 'disabled-02', - 'button-disabled': 'disabled-02', - 'icon-disabled': 'disabled-02', - - 'text-on-color-disabled': 'disabled-03', - 'icon-on-color-disabled': 'disabled-03', - 'layer-selected-disabled': 'disabled-03', - - 'skeleton-background': 'skeleton-01', - 'skeleton-element': 'skeleton-02', -}; - -module.exports = buildMixinsFile; diff --git a/packages/themes/tasks/builders/modules-themes.js b/packages/themes/tasks/builders/modules-themes.js index dddfe61bec4f..d577fe1b760b 100644 --- a/packages/themes/tasks/builders/modules-themes.js +++ b/packages/themes/tasks/builders/modules-themes.js @@ -8,7 +8,8 @@ 'use strict'; const { types: t } = require('@carbon/scss-generator'); -const { TokenFormat, themes, group } = require('../../src/next'); +const { TokenFormat, group } = require('../../src/tokens'); +const { themes } = require('../../src'); const { FILE_BANNER, primitive } = require('./shared'); function buildThemesFile() { diff --git a/packages/themes/tasks/builders/modules-tokens.js b/packages/themes/tasks/builders/modules-tokens.js index 777b04b670af..6b7f3fe127f4 100644 --- a/packages/themes/tasks/builders/modules-tokens.js +++ b/packages/themes/tasks/builders/modules-tokens.js @@ -8,7 +8,7 @@ 'use strict'; const { types: t } = require('@carbon/scss-generator'); -const { group } = require('../../src/next'); +const { group } = require('../../src/tokens'); const { FILE_BANNER } = require('./shared'); function buildThemeTokens() { diff --git a/packages/themes/tasks/builders/themes.js b/packages/themes/tasks/builders/themes.js deleted file mode 100644 index 4110f92a23c9..000000000000 --- a/packages/themes/tasks/builders/themes.js +++ /dev/null @@ -1,106 +0,0 @@ -/** - * Copyright IBM Corp. 2015, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -const { types: t } = require('@carbon/scss-generator'); -const { formatTokenName } = require('../../lib'); -const { FILE_BANNER, primitive } = require('./shared'); - -function buildThemesFile( - themes, - tokens, - defaultThemeName, - defaultThemeMapName -) { - const defaultTheme = themes[defaultThemeName]; - const defaultThemeMap = t.Assignment({ - id: t.Identifier(`carbon--theme--${defaultThemeName}`), - init: t.SassMap({ - properties: Object.keys(defaultTheme).map((token) => { - return t.SassMapProperty( - t.Identifier(formatTokenName(token)), - primitive(defaultTheme[token]) - ); - }), - }), - default: true, - }); - const themeMaps = Object.keys(themes) - .filter((name) => name !== defaultThemeName) - .flatMap((name) => { - const theme = themes[name]; - const comment = t.Comment(`/ Carbon's ${name} color theme -/ @type Map -/ @access public -/ @group @carbon/themes`); - return [ - t.Newline(), - comment, - t.Assignment({ - id: t.Identifier(`carbon--theme--${name}`), - init: t.SassFunctionCall(t.Identifier('map-merge'), [ - t.Identifier(`carbon--theme--${defaultThemeName}`), - t.SassMap({ - properties: Object.keys(theme) - .filter((token) => { - return theme[token] !== defaultTheme[token]; - }) - .map((token) => { - return t.SassMapProperty( - t.Identifier(formatTokenName(token)), - primitive(theme[token]) - ); - }), - }), - ]), - default: true, - }), - ]; - }); - - const carbonTheme = t.Assignment({ - id: t.Identifier(defaultThemeMapName), - init: t.SassMap({ - properties: Object.keys(tokens).flatMap((group) => { - return tokens[group].flatMap((token) => { - const name = formatTokenName(token); - return t.SassMapProperty( - t.Identifier(name), - t.SassFunctionCall(t.Identifier('if'), [ - t.SassFunctionCall(t.Identifier('global-variable-exists'), [ - t.SassString(name), - ]), - t.Identifier(name), - t.SassFunctionCall(t.Identifier('map-get'), [ - t.Identifier('carbon--theme--white'), - t.SassString(name), - ]), - ]) - ); - }); - }), - }), - default: true, - }); - - return t.StyleSheet([ - FILE_BANNER, - t.Newline(), - defaultThemeMap, - ...themeMaps, - t.Newline(), - t.Comment(`/ Carbon's default theme -/ @type Map -/ @access public -/ @alias carbon--theme--${defaultThemeName} -/ @group @carbon/themes`), - carbonTheme, - ]); -} - -module.exports = buildThemesFile; diff --git a/packages/themes/tasks/builders/tokens.js b/packages/themes/tasks/builders/tokens.js deleted file mode 100644 index 37ab1bc122c3..000000000000 --- a/packages/themes/tasks/builders/tokens.js +++ /dev/null @@ -1,80 +0,0 @@ -/** - * Copyright IBM Corp. 2015, 2018 - * - * This source code is licensed under the Apache-2.0 license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -const { types: t } = require('@carbon/scss-generator'); -const { formatTokenName } = require('../../lib'); -const { FILE_BANNER, primitive } = require('./shared'); - -/** - * Build the AST for a _tokens.scss file with a structure similar to: - * - * $token-name-01: ; - * $token-name-02: ; - * - * By default, these tokens are assigned to their value in the given - * `defaultTheme` - * @param {object} tokens - * @param {object} metadata - * @param {object} defaultTheme - * @returns {SassAST} - */ -function buildTokensFile(tokens, metadata, defaultTheme) { - const typesByGroup = { - color: 'Color', - type: 'Number', - layout: 'Number', - }; - - const assignments = Object.keys(tokens).flatMap((group) => { - return tokens[group].flatMap((token) => { - const name = formatTokenName(token); - const tokenData = - (metadata.tokens && - metadata.tokens.find((tok) => { - return tok.name === token; - })) || - {}; - - return [ - t.Newline(), - tokenData.role && t.Comment(`/ ${tokenData.role.join('; ')}`), - t.Comment(`/ @type {${typesByGroup[group]}} -/ @access public -/ @group @carbon/themes`), - tokenData.alias && t.Comment(`/ @alias ${tokenData.alias}`), - tokenData.deprecated && t.Comment(`/ @deprecated`), - t.Assignment({ - id: t.Identifier(name), - init: t.SassFunctionCall(t.Identifier('if'), [ - t.LogicalExpression({ - left: t.SassFunctionCall(t.Identifier('global-variable-exists'), [ - t.SassString('carbon--theme'), - ]), - operator: 'and', - right: t.SassFunctionCall(t.Identifier('map-has-key'), [ - t.Identifier('carbon--theme'), - t.SassString(name), - ]), - }), - t.SassFunctionCall(t.Identifier('map-get'), [ - t.Identifier('carbon--theme'), - t.SassString(name), - ]), - primitive(defaultTheme[token]), - ]), - default: true, - }), - ].filter(Boolean); - }); - }); - - return t.StyleSheet([FILE_BANNER, t.Newline(), ...assignments]); -} - -module.exports = buildTokensFile; diff --git a/packages/type/__tests__/scss-test.js b/packages/type/__tests__/scss-test.js index 34ec1decfb9b..389942b640ac 100644 --- a/packages/type/__tests__/scss-test.js +++ b/packages/type/__tests__/scss-test.js @@ -3,73 +3,69 @@ * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. + * + * @jest-environment node */ 'use strict'; -const { createSassRenderer } = require('@carbon/test-utils/scss'); +const { SassRenderer } = require('@carbon/test-utils/scss'); +const css = require('css'); const { camelCase, paramCase } = require('change-case'); const { productiveHeading01 } = require('../src'); -const render = createSassRenderer(__dirname); - -function renderIntoDocument(css) { - const style = document.createElement('style'); - style.innerHTML = css; - document.head.appendChild(style); - return document.styleSheets[document.styleSheets.length - 1]; -} +const { render } = SassRenderer.create(__dirname); -describe('type.scss', () => { - describe('styles', () => { - it('should emit the CSS properties and values for a type token', async () => { - const { result } = await render(` - @import '../scss/index'; +describe('@carbon/type', () => { + it('should emit the CSS properties and values for a type token', async () => { + const { result } = await render(` + @import '../index'; .selector { - @include carbon--type-style('productive-heading-01'); + @include type-style('productive-heading-01'); } `); - const stylesheet = renderIntoDocument(result.css.toString()); - const { style } = stylesheet.cssRules[0]; + const { stylesheet } = css.parse(result.css.toString()); + const { declarations } = stylesheet.rules[0]; - expect(style.length).toBe(Object.keys(productiveHeading01).length); + expect(declarations.length).toBe(Object.keys(productiveHeading01).length); - Object.keys(productiveHeading01).forEach((key) => { - const property = paramCase(key); - // We stringify the value from JS due to the fact that most of these - // values (like numbers) are represented as strings when we get the - // value from the CSSStyleDeclaration - expect('' + productiveHeading01[key]).toBe( - style.getPropertyValue(property) - ); + Object.keys(productiveHeading01).forEach((key) => { + const property = paramCase(key); + const match = declarations.find((declaration) => { + if (declaration.property !== property) { + return false; + } + // Note: the value on the CSS side is a CSS Custom Property. This makes + // equality based on value hard so we do a substring check + return declaration.value.includes(productiveHeading01[key]); }); + + expect(match).toBeDefined(); }); + }); - it('should emit CSS Custom Properties when the feature flag is set', async () => { - const { result } = await render(` - $feature-flags: (enable-css-custom-properties: true); - @import '../scss/index'; + it('should emit CSS Custom Properties', async () => { + const { result } = await render(` + @import '../index'; .selector { - @include carbon--type-style('productive-heading-01'); + @include type-style('productive-heading-01'); } `); - const stylesheet = renderIntoDocument(result.css.toString()); - const { style } = stylesheet.cssRules[0]; + const { stylesheet } = css.parse(result.css.toString()); + const { declarations } = stylesheet.rules[0]; - for (let i = 0; i < style.length; i++) { - const property = style[i]; - const key = camelCase(property); - const value = style.getPropertyValue(property); + for (const declaration of declarations) { + const { property, value } = declaration; + const key = camelCase(property); - // Make sure it's a custom property - expect(value).toEqual(expect.stringContaining('var(--')); - // Make sure the fallback value is included - expect(value).toEqual( - expect.stringContaining('' + productiveHeading01[key]) - ); - } - }); + // Make sure it's a custom property + expect(value).toEqual(expect.stringContaining('var(--')); + // Make sure the fallback value is included + expect(value).toEqual( + expect.stringContaining('' + productiveHeading01[key]) + ); + } }); }); diff --git a/packages/type/examples/preview/package.json b/packages/type/examples/preview/package.json index 2f942a17ba5e..e8125d8bb466 100644 --- a/packages/type/examples/preview/package.json +++ b/packages/type/examples/preview/package.json @@ -8,6 +8,7 @@ "develop": "parcel index.html --no-cache" }, "devDependencies": { + "@carbon/type": "^10.44.0", "@parcel/transformer-sass": "^2.0.1", "parcel": "^2.0.1" }, diff --git a/packages/type/examples/preview/styles.scss b/packages/type/examples/preview/styles.scss index 381bd716eb8f..597bb845bca7 100644 --- a/packages/type/examples/preview/styles.scss +++ b/packages/type/examples/preview/styles.scss @@ -1,9 +1,9 @@ -@import '../../scss/type'; -@import '../../scss/font-face/sans'; -@import '../../scss/font-face/sans-condensed'; -@import '../../scss/font-face/serif'; -@import '../../scss/font-face/mono'; -@import '../../scss/classes'; +@import '@carbon/type/scss/type'; +@import '@carbon/type/scss/font-face/sans'; +@import '@carbon/type/scss/font-face/sans-condensed'; +@import '@carbon/type/scss/font-face/serif'; +@import '@carbon/type/scss/font-face/mono'; +@import '@carbon/type/scss/classes'; @include carbon--type-reset(); @include carbon--type-classes(); diff --git a/packages/type/examples/preview/yarn.lock b/packages/type/examples/preview/yarn.lock index dd3f0b8267f2..4f0b4272ddf8 100644 --- a/packages/type/examples/preview/yarn.lock +++ b/packages/type/examples/preview/yarn.lock @@ -309,6 +309,40 @@ __metadata: languageName: node linkType: hard +"@carbon/grid@npm:^10.43.0": + version: 10.43.1 + resolution: "@carbon/grid@npm:10.43.1" + dependencies: + "@carbon/import-once": ^10.7.0 + "@carbon/layout": ^10.37.1 + checksum: d59818f5602b1cada5188982a687ef861c63a2e165ed3266496b0a0b7e2e12528e55d4ac9d7d4134a4f4c19e7e16fd48425e5982279ac86ff914ba879c120a32 + languageName: node + linkType: hard + +"@carbon/import-once@npm:^10.7.0": + version: 10.7.0 + resolution: "@carbon/import-once@npm:10.7.0" + checksum: c92625bc34833073a2b113a9cf014353210570ed1105225e70c6c6d06e5203407aa472d95685a53b6460794408897641b8d8cd5fd6416f8b0fa36c28919bf5f0 + languageName: node + linkType: hard + +"@carbon/layout@npm:^10.37.1": + version: 10.37.1 + resolution: "@carbon/layout@npm:10.37.1" + checksum: baabf7e70e4779f0e5000e700bcafe96f272debaac490a4345e39fedf8d0970636f7099e2607aeb9ca6170a56bbacdff69d8181c2a46ed8adac38fadc08332b6 + languageName: node + linkType: hard + +"@carbon/type@npm:^10.44.0": + version: 10.44.0 + resolution: "@carbon/type@npm:10.44.0" + dependencies: + "@carbon/grid": ^10.43.0 + "@carbon/import-once": ^10.7.0 + checksum: 58315618107527fc26315e87c924267d3f8e1ea1e9deef76327adc8822c9edca0e2b752d0e9ce8684c93a223e25c80109571476c075570ec64c31423b5d26a9f + languageName: node + linkType: hard + "@iarna/toml@npm:^2.2.0": version: 2.2.5 resolution: "@iarna/toml@npm:2.2.5" @@ -6779,6 +6813,7 @@ fsevents@~2.3.2: version: 0.0.0-use.local resolution: "type-preview-example@workspace:." dependencies: + "@carbon/type": ^10.44.0 "@parcel/transformer-sass": ^2.0.1 change-case: ^4.1.1 parcel: ^2.0.1 diff --git a/packages/type/examples/styled-components/.env b/packages/type/examples/styled-components/.env deleted file mode 100644 index 6f809cc2540d..000000000000 --- a/packages/type/examples/styled-components/.env +++ /dev/null @@ -1 +0,0 @@ -SKIP_PREFLIGHT_CHECK=true diff --git a/packages/type/examples/styled-components/.gitignore b/packages/type/examples/styled-components/.gitignore deleted file mode 100644 index 4d29575de804..000000000000 --- a/packages/type/examples/styled-components/.gitignore +++ /dev/null @@ -1,23 +0,0 @@ -# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. - -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/build - -# misc -.DS_Store -.env.local -.env.development.local -.env.test.local -.env.production.local - -npm-debug.log* -yarn-debug.log* -yarn-error.log* diff --git a/packages/type/examples/styled-components/README.md b/packages/type/examples/styled-components/README.md deleted file mode 100644 index 9897d167ec59..000000000000 --- a/packages/type/examples/styled-components/README.md +++ /dev/null @@ -1,59 +0,0 @@ -This project was bootstrapped with -[Create React App](https://github.com/facebook/create-react-app). - -## Available Scripts - -In the project directory, you can run: - -### `npm start` - -Runs the app in the development mode.
Open -[http://localhost:3000](http://localhost:3000) to view it in the browser. - -The page will reload if you make edits.
You will also see any lint errors in -the console. - -### `npm test` - -Launches the test runner in the interactive watch mode.
See the section -about -[running tests](https://facebook.github.io/create-react-app/docs/running-tests) -for more information. - -### `npm run build` - -Builds the app for production to the `build` folder.
It correctly bundles -React in production mode and optimizes the build for the best performance. - -The build is minified and the filenames include the hashes.
Your app is -ready to be deployed! - -See the section about -[deployment](https://facebook.github.io/create-react-app/docs/deployment) for -more information. - -### `npm run eject` - -**Note: this is a one-way operation. Once you `eject`, you can’t go back!** - -If you aren’t satisfied with the build tool and configuration choices, you can -`eject` at any time. This command will remove the single build dependency from -your project. - -Instead, it will copy all the configuration files and the transitive -dependencies (Webpack, Babel, ESLint, etc) right into your project so you have -full control over them. All of the commands except `eject` will still work, but -they will point to the copied scripts so you can tweak them. At this point -you’re on your own. - -You don’t have to ever use `eject`. The curated feature set is suitable for -small and middle deployments, and you shouldn’t feel obligated to use this -feature. However we understand that this tool wouldn’t be useful if you couldn’t -customize it when you are ready for it. - -## Learn More - -You can learn more in the -[Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). - -To learn React, check out the [React documentation](https://reactjs.org/). diff --git a/packages/type/examples/styled-components/package.json b/packages/type/examples/styled-components/package.json deleted file mode 100644 index c8c1b739d556..000000000000 --- a/packages/type/examples/styled-components/package.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "styled-components", - "version": "0.1.0", - "private": true, - "dependencies": { - "@carbon/type": "alpha", - "react": "^16.6.3", - "react-dom": "^16.6.3", - "react-scripts": "2.1.1", - "styled-components": "^4.1.2" - }, - "scripts": { - "start": "react-scripts start", - "build": "react-scripts build", - "test": "react-scripts test", - "eject": "react-scripts eject" - }, - "eslintConfig": { - "extends": "react-app" - }, - "browserslist": [ - ">0.2%", - "not dead", - "not ie <= 11", - "not op_mini all" - ] -} diff --git a/packages/type/examples/styled-components/public/favicon.ico b/packages/type/examples/styled-components/public/favicon.ico deleted file mode 100644 index a11777cc471a4344702741ab1c8a588998b1311a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3870 zcma);c{J4h9>;%nil|2-o+rCuEF-(I%-F}ijC~o(k~HKAkr0)!FCj~d>`RtpD?8b; zXOC1OD!V*IsqUwzbMF1)-gEDD=A573Z-&G7^LoAC9|WO7Xc0Cx1g^Zu0u_SjAPB3vGa^W|sj)80f#V0@M_CAZTIO(t--xg= z!sii`1giyH7EKL_+Wi0ab<)&E_0KD!3Rp2^HNB*K2@PHCs4PWSA32*-^7d{9nH2_E zmC{C*N*)(vEF1_aMamw2A{ZH5aIDqiabnFdJ|y0%aS|64E$`s2ccV~3lR!u<){eS` z#^Mx6o(iP1Ix%4dv`t@!&Za-K@mTm#vadc{0aWDV*_%EiGK7qMC_(`exc>-$Gb9~W!w_^{*pYRm~G zBN{nA;cm^w$VWg1O^^<6vY`1XCD|s_zv*g*5&V#wv&s#h$xlUilPe4U@I&UXZbL z0)%9Uj&@yd03n;!7do+bfixH^FeZ-Ema}s;DQX2gY+7g0s(9;`8GyvPY1*vxiF&|w z>!vA~GA<~JUqH}d;DfBSi^IT*#lrzXl$fNpq0_T1tA+`A$1?(gLb?e#0>UELvljtQ zK+*74m0jn&)5yk8mLBv;=@}c{t0ztT<v;Avck$S6D`Z)^c0(jiwKhQsn|LDRY&w(Fmi91I7H6S;b0XM{e zXp0~(T@k_r-!jkLwd1_Vre^v$G4|kh4}=Gi?$AaJ)3I+^m|Zyj#*?Kp@w(lQdJZf4 z#|IJW5z+S^e9@(6hW6N~{pj8|NO*>1)E=%?nNUAkmv~OY&ZV;m-%?pQ_11)hAr0oAwILrlsGawpxx4D43J&K=n+p3WLnlDsQ$b(9+4 z?mO^hmV^F8MV{4Lx>(Q=aHhQ1){0d*(e&s%G=i5rq3;t{JC zmgbn5Nkl)t@fPH$v;af26lyhH!k+#}_&aBK4baYPbZy$5aFx4}ka&qxl z$=Rh$W;U)>-=S-0=?7FH9dUAd2(q#4TCAHky!$^~;Dz^j|8_wuKc*YzfdAht@Q&ror?91Dm!N03=4=O!a)I*0q~p0g$Fm$pmr$ zb;wD;STDIi$@M%y1>p&_>%?UP($15gou_ue1u0!4(%81;qcIW8NyxFEvXpiJ|H4wz z*mFT(qVx1FKufG11hByuX%lPk4t#WZ{>8ka2efjY`~;AL6vWyQKpJun2nRiZYDij$ zP>4jQXPaP$UC$yIVgGa)jDV;F0l^n(V=HMRB5)20V7&r$jmk{UUIe zVjKroK}JAbD>B`2cwNQ&GDLx8{pg`7hbA~grk|W6LgiZ`8y`{Iq0i>t!3p2}MS6S+ zO_ruKyAElt)rdS>CtF7j{&6rP-#c=7evGMt7B6`7HG|-(WL`bDUAjyn+k$mx$CH;q2Dz4x;cPP$hW=`pFfLO)!jaCL@V2+F)So3}vg|%O*^T1j>C2lx zsURO-zIJC$^$g2byVbRIo^w>UxK}74^TqUiRR#7s_X$e)$6iYG1(PcW7un-va-S&u zHk9-6Zn&>T==A)lM^D~bk{&rFzCi35>UR!ZjQkdSiNX*-;l4z9j*7|q`TBl~Au`5& z+c)*8?#-tgUR$Zd%Q3bs96w6k7q@#tUn`5rj+r@_sAVVLqco|6O{ILX&U-&-cbVa3 zY?ngHR@%l{;`ri%H*0EhBWrGjv!LE4db?HEWb5mu*t@{kv|XwK8?npOshmzf=vZA@ zVSN9sL~!sn?r(AK)Q7Jk2(|M67Uy3I{eRy z_l&Y@A>;vjkWN5I2xvFFTLX0i+`{qz7C_@bo`ZUzDugfq4+>a3?1v%)O+YTd6@Ul7 zAfLfm=nhZ`)P~&v90$&UcF+yXm9sq!qCx3^9gzIcO|Y(js^Fj)Rvq>nQAHI92ap=P z10A4@prk+AGWCb`2)dQYFuR$|H6iDE8p}9a?#nV2}LBCoCf(Xi2@szia7#gY>b|l!-U`c}@ zLdhvQjc!BdLJvYvzzzngnw51yRYCqh4}$oRCy-z|v3Hc*d|?^Wj=l~18*E~*cR_kU z{XsxM1i{V*4GujHQ3DBpl2w4FgFR48Nma@HPgnyKoIEY-MqmMeY=I<%oG~l!f<+FN z1ZY^;10j4M4#HYXP zw5eJpA_y(>uLQ~OucgxDLuf}fVs272FaMxhn4xnDGIyLXnw>Xsd^J8XhcWIwIoQ9} z%FoSJTAGW(SRGwJwb=@pY7r$uQRK3Zd~XbxU)ts!4XsJrCycrWSI?e!IqwqIR8+Jh zlRjZ`UO1I!BtJR_2~7AbkbSm%XQqxEPkz6BTGWx8e}nQ=w7bZ|eVP4?*Tb!$(R)iC z9)&%bS*u(lXqzitAN)Oo=&Ytn>%Hzjc<5liuPi>zC_nw;Z0AE3Y$Jao_Q90R-gl~5 z_xAb2J%eArrC1CN4G$}-zVvCqF1;H;abAu6G*+PDHSYFx@Tdbfox*uEd3}BUyYY-l zTfEsOqsi#f9^FoLO;ChK<554qkri&Av~SIM*{fEYRE?vH7pTAOmu2pz3X?Wn*!ROX ztd54huAk&mFBemMooL33RV-*1f0Q3_(7hl$<#*|WF9P!;r;4_+X~k~uKEqdzZ$5Al zV63XN@)j$FN#cCD;ek1R#l zv%pGrhB~KWgoCj%GT?%{@@o(AJGt*PG#l3i>lhmb_twKH^EYvacVY-6bsCl5*^~L0 zonm@lk2UvvTKr2RS%}T>^~EYqdL1q4nD%0n&Xqr^cK^`J5W;lRRB^R-O8b&HENO||mo0xaD+S=I8RTlIfVgqN@SXDr2&-)we--K7w= zJVU8?Z+7k9dy;s;^gDkQa`0nz6N{T?(A&Iz)2!DEecLyRa&FI!id#5Z7B*O2=PsR0 zEvc|8{NS^)!d)MDX(97Xw}m&kEO@5jqRaDZ!+%`wYOI<23q|&js`&o4xvjP7D_xv@ z5hEwpsp{HezI9!~6O{~)lLR@oF7?J7i>1|5a~UuoN=q&6N}EJPV_GD`&M*v8Y`^2j zKII*d_@Fi$+i*YEW+Hbzn{iQk~yP z>7N{S4)r*!NwQ`(qcN#8SRQsNK6>{)X12nbF`*7#ecO7I)Q$uZsV+xS4E7aUn+U(K baj7?x%VD!5Cxk2YbYLNVeiXvvpMCWYo=by@ diff --git a/packages/type/examples/styled-components/public/index.html b/packages/type/examples/styled-components/public/index.html deleted file mode 100644 index 4bfce95684f8..000000000000 --- a/packages/type/examples/styled-components/public/index.html +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - React App - - - -
- - - diff --git a/packages/type/examples/styled-components/public/manifest.json b/packages/type/examples/styled-components/public/manifest.json deleted file mode 100644 index 1f2f141fafde..000000000000 --- a/packages/type/examples/styled-components/public/manifest.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "short_name": "React App", - "name": "Create React App Sample", - "icons": [ - { - "src": "favicon.ico", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#000000", - "background_color": "#ffffff" -} diff --git a/packages/type/examples/styled-components/src/App.css b/packages/type/examples/styled-components/src/App.css deleted file mode 100644 index 92f956e80402..000000000000 --- a/packages/type/examples/styled-components/src/App.css +++ /dev/null @@ -1,32 +0,0 @@ -.App { - text-align: center; -} - -.App-logo { - animation: App-logo-spin infinite 20s linear; - height: 40vmin; -} - -.App-header { - background-color: #282c34; - min-height: 100vh; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - font-size: calc(10px + 2vmin); - color: white; -} - -.App-link { - color: #61dafb; -} - -@keyframes App-logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } -} diff --git a/packages/type/examples/styled-components/src/App.js b/packages/type/examples/styled-components/src/App.js deleted file mode 100644 index 02711c39b56d..000000000000 --- a/packages/type/examples/styled-components/src/App.js +++ /dev/null @@ -1,37 +0,0 @@ -import { display04 } from '@carbon/type'; -import React, { Component } from 'react'; -import styled from 'styled-components'; -import logo from './logo.svg'; -import './App.css'; - -const Title = styled.h1(display04); - -class App extends Component { - render() { - return ( -
-
- logo - - Hello world!{' '} - <span aria-label="waving" role="img"> - 👋 - </span> - -

- Edit src/App.js and save to reload. -

-
- Learn React - -
-
- ); - } -} - -export default App; diff --git a/packages/type/examples/styled-components/src/App.test.js b/packages/type/examples/styled-components/src/App.test.js deleted file mode 100644 index a754b201bf9c..000000000000 --- a/packages/type/examples/styled-components/src/App.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from 'react'; -import ReactDOM from 'react-dom'; -import App from './App'; - -it('renders without crashing', () => { - const div = document.createElement('div'); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/packages/type/examples/styled-components/src/index.css b/packages/type/examples/styled-components/src/index.css deleted file mode 100644 index e2bd8f36a015..000000000000 --- a/packages/type/examples/styled-components/src/index.css +++ /dev/null @@ -1,14 +0,0 @@ -body { - margin: 0; - padding: 0; - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', - 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', - sans-serif; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -code { - font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', - monospace; -} diff --git a/packages/type/examples/styled-components/src/index.js b/packages/type/examples/styled-components/src/index.js deleted file mode 100644 index 0c5e75da1cd0..000000000000 --- a/packages/type/examples/styled-components/src/index.js +++ /dev/null @@ -1,12 +0,0 @@ -import React from 'react'; -import ReactDOM from 'react-dom'; -import './index.css'; -import App from './App'; -import * as serviceWorker from './serviceWorker'; - -ReactDOM.render(, document.getElementById('root')); - -// If you want your app to work offline and load faster, you can change -// unregister() to register() below. Note this comes with some pitfalls. -// Learn more about service workers: http://bit.ly/CRA-PWA -serviceWorker.unregister(); diff --git a/packages/type/examples/styled-components/src/logo.svg b/packages/type/examples/styled-components/src/logo.svg deleted file mode 100644 index 6b60c1042f58..000000000000 --- a/packages/type/examples/styled-components/src/logo.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/packages/type/examples/styled-components/src/serviceWorker.js b/packages/type/examples/styled-components/src/serviceWorker.js deleted file mode 100644 index 2283ff9ced12..000000000000 --- a/packages/type/examples/styled-components/src/serviceWorker.js +++ /dev/null @@ -1,135 +0,0 @@ -// This optional code is used to register a service worker. -// register() is not called by default. - -// This lets the app load faster on subsequent visits in production, and gives -// it offline capabilities. However, it also means that developers (and users) -// will only see deployed updates on subsequent visits to a page, after all the -// existing tabs open on the page have been closed, since previously cached -// resources are updated in the background. - -// To learn more about the benefits of this model and instructions on how to -// opt-in, read http://bit.ly/CRA-PWA - -const isLocalhost = Boolean( - window.location.hostname === 'localhost' || - // [::1] is the IPv6 localhost address. - window.location.hostname === '[::1]' || - // 127.0.0.1/8 is considered localhost for IPv4. - window.location.hostname.match( - /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ - ) -); - -export function register(config) { - if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { - // The URL constructor is available in all browsers that support SW. - const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href); - if (publicUrl.origin !== window.location.origin) { - // Our service worker won't work if PUBLIC_URL is on a different origin - // from what our page is served on. This might happen if a CDN is used to - // serve assets; see https://github.com/facebook/create-react-app/issues/2374 - return; - } - - window.addEventListener('load', () => { - const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`; - - if (isLocalhost) { - // This is running on localhost. Let's check if a service worker still exists or not. - checkValidServiceWorker(swUrl, config); - - // Add some additional logging to localhost, pointing developers to the - // service worker/PWA documentation. - navigator.serviceWorker.ready.then(() => { - console.log( - 'This web app is being served cache-first by a service ' + - 'worker. To learn more, visit http://bit.ly/CRA-PWA' - ); - }); - } else { - // Is not localhost. Just register service worker - registerValidSW(swUrl, config); - } - }); - } -} - -function registerValidSW(swUrl, config) { - navigator.serviceWorker - .register(swUrl) - .then(registration => { - registration.onupdatefound = () => { - const installingWorker = registration.installing; - if (installingWorker == null) { - return; - } - installingWorker.onstatechange = () => { - if (installingWorker.state === 'installed') { - if (navigator.serviceWorker.controller) { - // At this point, the updated precached content has been fetched, - // but the previous service worker will still serve the older - // content until all client tabs are closed. - console.log( - 'New content is available and will be used when all ' + - 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' - ); - - // Execute callback - if (config && config.onUpdate) { - config.onUpdate(registration); - } - } else { - // At this point, everything has been precached. - // It's the perfect time to display a - // "Content is cached for offline use." message. - console.log('Content is cached for offline use.'); - - // Execute callback - if (config && config.onSuccess) { - config.onSuccess(registration); - } - } - } - }; - }; - }) - .catch(error => { - console.error('Error during service worker registration:', error); - }); -} - -function checkValidServiceWorker(swUrl, config) { - // Check if the service worker can be found. If it can't reload the page. - fetch(swUrl) - .then(response => { - // Ensure service worker exists, and that we really are getting a JS file. - const contentType = response.headers.get('content-type'); - if ( - response.status === 404 || - (contentType != null && contentType.indexOf('javascript') === -1) - ) { - // No service worker found. Probably a different app. Reload the page. - navigator.serviceWorker.ready.then(registration => { - registration.unregister().then(() => { - window.location.reload(); - }); - }); - } else { - // Service worker found. Proceed as normal. - registerValidSW(swUrl, config); - } - }) - .catch(() => { - console.log( - 'No internet connection found. App is running in offline mode.' - ); - }); -} - -export function unregister() { - if ('serviceWorker' in navigator) { - navigator.serviceWorker.ready.then(registration => { - registration.unregister(); - }); - } -} diff --git a/packages/type/examples/styled-components/yarn.lock b/packages/type/examples/styled-components/yarn.lock deleted file mode 100644 index 5b3dc59cc7af..000000000000 --- a/packages/type/examples/styled-components/yarn.lock +++ /dev/null @@ -1,9970 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@babel/code-frame@7.0.0", "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.0.0-beta.35": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" - integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== - dependencies: - "@babel/highlight" "^7.0.0" - -"@babel/core@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.0.tgz#08958f1371179f62df6966d8a614003d11faeb04" - integrity sha512-9EWmD0cQAbcXSc+31RIoYgEHx3KQ2CCSMDBhnXrShWvo45TMw+3/55KVxlhkG53kw9tl87DqINgHDgFVhZJV/Q== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.0.0" - "@babel/helpers" "^7.1.0" - "@babel/parser" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - convert-source-map "^1.1.0" - debug "^3.1.0" - json5 "^0.5.0" - lodash "^4.17.10" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.0.1": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.2.tgz#f8d2a9ceb6832887329a7b60f9d035791400ba4e" - integrity sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.1.2" - "@babel/helpers" "^7.1.2" - "@babel/parser" "^7.1.2" - "@babel/template" "^7.1.2" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.1.2" - convert-source-map "^1.1.0" - debug "^3.1.0" - json5 "^0.5.0" - lodash "^4.17.10" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/generator@^7.0.0", "@babel/generator@^7.1.2", "@babel/generator@^7.1.3": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.1.3.tgz#2103ec9c42d9bdad9190a6ad5ff2d456fd7b8673" - integrity sha512-ZoCZGcfIJFJuZBqxcY9OjC1KW2lWK64qrX1o4UYL3yshVhwKFYgzpWZ0vvtGMNJdTlvkw0W+HR1VnYN8q3QPFQ== - dependencies: - "@babel/types" "^7.1.3" - jsesc "^2.5.1" - lodash "^4.17.10" - source-map "^0.5.0" - trim-right "^1.0.1" - -"@babel/helper-annotate-as-pure@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" - integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" - integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-builder-react-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0.tgz#fa154cb53eb918cf2a9a7ce928e29eb649c5acdb" - integrity sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw== - dependencies: - "@babel/types" "^7.0.0" - esutils "^2.0.0" - -"@babel/helper-call-delegate@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz#6a957f105f37755e8645343d3038a22e1449cc4a" - integrity sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ== - dependencies: - "@babel/helper-hoist-variables" "^7.0.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-define-map@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c" - integrity sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/types" "^7.0.0" - lodash "^4.17.10" - -"@babel/helper-explode-assignable-expression@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" - integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== - dependencies: - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" - integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== - dependencies: - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-get-function-arity@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" - integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-hoist-variables@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz#46adc4c5e758645ae7a45deb92bab0918c23bb88" - integrity sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-member-expression-to-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz#8cd14b0a0df7ff00f009e7d7a436945f47c7a16f" - integrity sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-module-imports@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" - integrity sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-module-transforms@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.1.0.tgz#470d4f9676d9fad50b324cdcce5fbabbc3da5787" - integrity sha512-0JZRd2yhawo79Rcm4w0LwSMILFmFXjugG3yqf+P/UsKsRS1mJCmMwwlHDlMg7Avr9LrvSpp4ZSULO9r8jpCzcw== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - lodash "^4.17.10" - -"@babel/helper-optimise-call-expression@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" - integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-plugin-utils@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" - integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== - -"@babel/helper-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0.tgz#2c1718923b57f9bbe64705ffe5640ac64d9bdb27" - integrity sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg== - dependencies: - lodash "^4.17.10" - -"@babel/helper-remap-async-to-generator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" - integrity sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-wrap-function" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-replace-supers@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.1.0.tgz#5fc31de522ec0ef0899dc9b3e7cf6a5dd655f362" - integrity sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.0.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-simple-access@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" - integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== - dependencies: - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-split-export-declaration@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" - integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-wrap-function@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.1.0.tgz#8cf54e9190706067f016af8f75cb3df829cc8c66" - integrity sha512-R6HU3dete+rwsdAfrOzTlE9Mcpk4RjU3aX3gi9grtmugQY0u79X7eogUvfXA5sI81Mfq1cn6AgxihfN33STjJA== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helpers@^7.1.0", "@babel/helpers@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.1.2.tgz#ab752e8c35ef7d39987df4e8586c63b8846234b5" - integrity sha512-Myc3pUE8eswD73aWcartxB16K6CGmHDv9KxOmD2CeOs/FaEAQodr3VYGmlvOmog60vNQ2w8QbatuahepZwrHiA== - dependencies: - "@babel/template" "^7.1.2" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.1.2" - -"@babel/highlight@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" - integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^4.0.0" - -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.1.2", "@babel/parser@^7.1.3": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.3.tgz#2c92469bac2b7fbff810b67fca07bd138b48af77" - integrity sha512-gqmspPZOMW3MIRb9HlrnbZHXI1/KHTOroBwN1NcLL6pWxzqzEKGvRTq0W/PxS45OtQGbaFikSQpkS5zbnsQm2w== - -"@babel/plugin-proposal-async-generator-functions@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.1.0.tgz#41c1a702e10081456e23a7b74d891922dd1bb6ce" - integrity sha512-Fq803F3Jcxo20MXUSDdmZZXrPe6BWyGcWBPPNB/M7WaUYESKDeKMOGIxEzQOjGSmW/NWb6UaPZrtTB2ekhB/ew== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.1.0" - "@babel/plugin-syntax-async-generators" "^7.0.0" - -"@babel/plugin-proposal-class-properties@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.1.0.tgz#9af01856b1241db60ec8838d84691aa0bd1e8df4" - integrity sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-member-expression-to-functions" "^7.0.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/plugin-syntax-class-properties" "^7.0.0" - -"@babel/plugin-proposal-decorators@7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.1.2.tgz#79829bd75fced6581ec6c7ab1930e8d738e892e7" - integrity sha512-YooynBO6PmBgHvAd0fl5e5Tq/a0pEC6RqF62ouafme8FzdIVH41Mz/u1dn8fFVm4jzEJ+g/MsOxouwybJPuP8Q== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/plugin-syntax-decorators" "^7.1.0" - -"@babel/plugin-proposal-json-strings@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.0.0.tgz#3b4d7b5cf51e1f2e70f52351d28d44fc2970d01e" - integrity sha512-kfVdUkIAGJIVmHmtS/40i/fg/AGnw/rsZBCaapY5yjeO5RA9m165Xbw9KMOu2nqXP5dTFjEjHdfNdoVcHv133Q== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-json-strings" "^7.0.0" - -"@babel/plugin-proposal-object-rest-spread@7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0.tgz#9a17b547f64d0676b6c9cecd4edf74a82ab85e7e" - integrity sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - -"@babel/plugin-proposal-optional-catch-binding@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.0.0.tgz#b610d928fe551ff7117d42c8bb410eec312a6425" - integrity sha512-JPqAvLG1s13B/AuoBjdBYvn38RqW6n1TzrQO839/sIpqLpbnXKacsAgpZHzLD83Sm8SDXMkkrAvEnJ25+0yIpw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" - -"@babel/plugin-proposal-unicode-property-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.0.0.tgz#498b39cd72536cd7c4b26177d030226eba08cd33" - integrity sha512-tM3icA6GhC3ch2SkmSxv7J/hCWKISzwycub6eGsDrFDgukD4dZ/I+x81XgW0YslS6mzNuQ1Cbzh5osjIMgepPQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.2.0" - -"@babel/plugin-syntax-async-generators@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.0.0.tgz#bf0891dcdbf59558359d0c626fdc9490e20bc13c" - integrity sha512-im7ged00ddGKAjcZgewXmp1vxSZQQywuQXe2B1A7kajjZmDeY/ekMPmWr9zJgveSaQH0k7BcGrojQhcK06l0zA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-class-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0.tgz#e051af5d300cbfbcec4a7476e37a803489881634" - integrity sha512-cR12g0Qzn4sgkjrbrzWy2GE7m9vMl/sFkqZ3gIpAQdrvPDnLM8180i+ANDFIXfjHo9aqp0ccJlQ0QNZcFUbf9w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-decorators@^7.1.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.2.0.tgz#c50b1b957dcc69e4b1127b65e1c33eef61570c1b" - integrity sha512-38QdqVoXdHUQfTpZo3rQwqQdWtCn5tMv4uV6r2RMfTqNBuv4ZBhz79SfaQWKTVmxHjeFv/DnXVC/+agHCklYWA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-dynamic-import@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.0.0.tgz#6dfb7d8b6c3be14ce952962f658f3b7eb54c33ee" - integrity sha512-Gt9xNyRrCHCiyX/ZxDGOcBnlJl0I3IWicpZRC4CdC0P5a/I07Ya2OAMEBU+J7GmRFVmIetqEYRko6QYRuKOESw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-flow@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.0.0.tgz#70638aeaad9ee426bc532e51523cff8ff02f6f17" - integrity sha512-zGcuZWiWWDa5qTZ6iAnpG0fnX/GOu49pGR5PFvkQ9GmKNaSphXQnlNXh/LG20sqWtNrx/eB6krzfEzcwvUyeFA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-json-strings@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.0.0.tgz#0d259a68090e15b383ce3710e01d5b23f3770cbd" - integrity sha512-UlSfNydC+XLj4bw7ijpldc1uZ/HB84vw+U6BTuqMdIEmz/LDe63w/GHtpQMdXWdqQZFeAI9PjnHe/vDhwirhKA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.0.0.tgz#034d5e2b4e14ccaea2e4c137af7e4afb39375ffd" - integrity sha512-PdmL2AoPsCLWxhIr3kG2+F9v4WH06Q3z+NoGVpQgnUNGcagXHq5sB3OXxkSahKq9TLdNMN/AJzFYSOo8UKDMHg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-object-rest-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0.tgz#37d8fbcaf216bd658ea1aebbeb8b75e88ebc549b" - integrity sha512-5A0n4p6bIiVe5OvQPxBnesezsgFJdHhSs3uFSvaPdMqtsovajLZ+G2vZyvNe10EzJBWWo3AcHGKhAFUxqwp2dw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-optional-catch-binding@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.0.0.tgz#886f72008b3a8b185977f7cb70713b45e51ee475" - integrity sha512-Wc+HVvwjcq5qBg1w5RG9o9RVzmCaAg/Vp0erHCKpAYV8La6I94o4GQAmFYNmkzoMO6gzoOSulpKeSSz6mPEoZw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-typescript@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.0.0.tgz#90f4fe0a741ae9c0dcdc3017717c05a0cbbd5158" - integrity sha512-5fxmdqiAQVQTIS+KSvYeZuTt91wKtBTYi6JlIkvbQ6hmO+9fZE81ezxmMiFMIsxE7CdRSgzn7nQ1BChcvK9OpA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-arrow-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0.tgz#a6c14875848c68a3b4b3163a486535ef25c7e749" - integrity sha512-2EZDBl1WIO/q4DIkIp4s86sdp4ZifL51MoIviLY/gG/mLSuOIEg7J8o6mhbxOTvUJkaN50n+8u41FVsr5KLy/w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-async-to-generator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.1.0.tgz#109e036496c51dd65857e16acab3bafdf3c57811" - integrity sha512-rNmcmoQ78IrvNCIt/R9U+cixUHeYAzgusTFgIAv+wQb9HJU4szhpDD6e5GCACmj/JP5KxuCwM96bX3L9v4ZN/g== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.1.0" - -"@babel/plugin-transform-block-scoped-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.0.0.tgz#482b3f75103927e37288b3b67b65f848e2aa0d07" - integrity sha512-AOBiyUp7vYTqz2Jibe1UaAWL0Hl9JUXEgjFvvvcSc9MVDItv46ViXFw2F7SVt1B5k+KWjl44eeXOAk3UDEaJjQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-block-scoping@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0.tgz#1745075edffd7cdaf69fab2fb6f9694424b7e9bc" - integrity sha512-GWEMCrmHQcYWISilUrk9GDqH4enf3UmhOEbNbNrlNAX1ssH3MsS1xLOS6rdjRVPgA7XXVPn87tRkdTEoA/dxEg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - lodash "^4.17.10" - -"@babel/plugin-transform-classes@7.1.0", "@babel/plugin-transform-classes@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.1.0.tgz#ab3f8a564361800cbc8ab1ca6f21108038432249" - integrity sha512-rNaqoD+4OCBZjM7VaskladgqnZ1LO6o2UxuWSDzljzW21pN1KXkB7BstAVweZdxQkHAujps5QMNOTWesBciKFg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-define-map" "^7.1.0" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0.tgz#2fbb8900cd3e8258f2a2ede909b90e7556185e31" - integrity sha512-ubouZdChNAv4AAWAgU7QKbB93NU5sHwInEWfp+/OzJKA02E6Woh9RVoX4sZrbRwtybky/d7baTUqwFx+HgbvMA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-destructuring@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.0.0.tgz#68e911e1935dda2f06b6ccbbf184ffb024e9d43a" - integrity sha512-Fr2GtF8YJSXGTyFPakPFB4ODaEKGU04bPsAllAIabwoXdFrPxL0LVXQX5dQWoxOjjgozarJcC9eWGsj0fD6Zsg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-destructuring@^7.0.0": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.1.3.tgz#e69ff50ca01fac6cb72863c544e516c2b193012f" - integrity sha512-Mb9M4DGIOspH1ExHOUnn2UUXFOyVTiX84fXCd+6B5iWrQg/QMeeRmSwpZ9lnjYLSXtZwiw80ytVMr3zue0ucYw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-dotall-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.0.0.tgz#73a24da69bc3c370251f43a3d048198546115e58" - integrity sha512-00THs8eJxOJUFVx1w8i1MBF4XH4PsAjKjQ1eqN/uCH3YKwP21GCKfrn6YZFZswbOk9+0cw1zGQPHVc1KBlSxig== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.1.3" - -"@babel/plugin-transform-duplicate-keys@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.0.0.tgz#a0601e580991e7cace080e4cf919cfd58da74e86" - integrity sha512-w2vfPkMqRkdxx+C71ATLJG30PpwtTpW7DDdLqYt2acXU7YjztzeWW2Jk1T6hKqCLYCcEA5UQM/+xTAm+QCSnuQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-exponentiation-operator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.1.0.tgz#9c34c2ee7fd77e02779cfa37e403a2e1003ccc73" - integrity sha512-uZt9kD1Pp/JubkukOGQml9tqAeI8NkE98oZnHZ2qHRElmeKCodbTZgOEUtujSCSLhHSBWbzNiFSDIMC4/RBTLQ== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-flow-strip-types@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.0.0.tgz#c40ced34c2783985d90d9f9ac77a13e6fb396a01" - integrity sha512-WhXUNb4It5a19RsgKKbQPrjmy4yWOY1KynpEbNw7bnd1QTcrT/EIl3MJvnGgpgvrKyKbqX7nUNOJfkpLOnoDKA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.0.0" - -"@babel/plugin-transform-for-of@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0.tgz#f2ba4eadb83bd17dc3c7e9b30f4707365e1c3e39" - integrity sha512-TlxKecN20X2tt2UEr2LNE6aqA0oPeMT1Y3cgz8k4Dn1j5ObT8M3nl9aA37LLklx0PBZKETC9ZAf9n/6SujTuXA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.1.0.tgz#29c5550d5c46208e7f730516d41eeddd4affadbb" - integrity sha512-VxOa1TMlFMtqPW2IDYZQaHsFrq/dDoIjgN098NowhexhZcz3UGlvPgZXuE1jEvNygyWyxRacqDpCZt+par1FNg== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-literals@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0.tgz#2aec1d29cdd24c407359c930cdd89e914ee8ff86" - integrity sha512-1NTDBWkeNXgpUcyoVFxbr9hS57EpZYXpje92zv0SUzjdu3enaRwF/l3cmyRnXLtIdyJASyiS6PtybK+CgKf7jA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-amd@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.1.0.tgz#f9e0a7072c12e296079b5a59f408ff5b97bf86a8" - integrity sha512-wt8P+xQ85rrnGNr2x1iV3DW32W8zrB6ctuBkYBbf5/ZzJY99Ob4MFgsZDFgczNU76iy9PWsy4EuxOliDjdKw6A== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-commonjs@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.1.0.tgz#0a9d86451cbbfb29bd15186306897c67f6f9a05c" - integrity sha512-wtNwtMjn1XGwM0AXPspQgvmE6msSJP15CX2RVfpTSTNPLhKhaOjaIfBaVfj4iUZ/VrFSodcFedwtPg/NxwQlPA== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - -"@babel/plugin-transform-modules-systemjs@^7.0.0": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.1.3.tgz#2119a3e3db612fd74a19d88652efbfe9613a5db0" - integrity sha512-PvTxgjxQAq4pvVUZF3mD5gEtVDuId8NtWkJsZLEJZMZAW3TvgQl1pmydLLN1bM8huHFVVU43lf0uvjQj9FRkKw== - dependencies: - "@babel/helper-hoist-variables" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-umd@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.1.0.tgz#a29a7d85d6f28c3561c33964442257cc6a21f2a8" - integrity sha512-enrRtn5TfRhMmbRwm7F8qOj0qEYByqUvTttPEGimcBH4CJHphjyK1Vg7sdU7JjeEmgSpM890IT/efS2nMHwYig== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-new-target@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz#ae8fbd89517fa7892d20e6564e641e8770c3aa4a" - integrity sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-object-super@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.1.0.tgz#b1ae194a054b826d8d4ba7ca91486d4ada0f91bb" - integrity sha512-/O02Je1CRTSk2SSJaq0xjwQ8hG4zhZGNjE8psTsSNPXyLRCODv7/PBozqT5AmQMzp7MI3ndvMhGdqp9c96tTEw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - -"@babel/plugin-transform-parameters@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.1.0.tgz#44f492f9d618c9124026e62301c296bf606a7aed" - integrity sha512-vHV7oxkEJ8IHxTfRr3hNGzV446GAb+0hgbA7o/0Jd76s+YzccdWuTU296FOCOl/xweU4t/Ya4g41yWz80RFCRw== - dependencies: - "@babel/helper-call-delegate" "^7.1.0" - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-constant-elements@7.0.0", "@babel/plugin-transform-react-constant-elements@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.0.0.tgz#ab413e33e9c46a766f5326014bcbf9e2b34ef7a4" - integrity sha512-z8yrW4KCVcqPYr0r9dHXe7fu3daLzn0r6TQEFoGbXahdrzEwT1d1ux+/EnFcqIHv9uPilUlnRnPIUf7GMO0ehg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-display-name@7.0.0", "@babel/plugin-transform-react-display-name@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0.tgz#93759e6c023782e52c2da3b75eca60d4f10533ee" - integrity sha512-BX8xKuQTO0HzINxT6j/GiCwoJB0AOMs0HmLbEnAvcte8U8rSkNa/eSCAY+l1OA4JnCVq2jw2p6U8QQryy2fTPg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-jsx-self@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.0.0.tgz#a84bb70fea302d915ea81d9809e628266bb0bc11" - integrity sha512-pymy+AK12WO4safW1HmBpwagUQRl9cevNX+82AIAtU1pIdugqcH+nuYP03Ja6B+N4gliAaKWAegIBL/ymALPHA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" - -"@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.0.0.tgz#28e00584f9598c0dd279f6280eee213fa0121c3c" - integrity sha512-OSeEpFJEH5dw/TtxTg4nijl4nHBbhqbKL94Xo/Y17WKIf2qJWeIk/QeXACF19lG1vMezkxqruwnTjVizaW7u7w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" - -"@babel/plugin-transform-react-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.0.0.tgz#524379e4eca5363cd10c4446ba163f093da75f3e" - integrity sha512-0TMP21hXsSUjIQJmu/r7RiVxeFrXRcMUigbKu0BLegJK9PkYodHstaszcig7zxXfaBji2LYUdtqIkHs+hgYkJQ== - dependencies: - "@babel/helper-builder-react-jsx" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" - -"@babel/plugin-transform-regenerator@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz#5b41686b4ed40bef874d7ed6a84bdd849c13e0c1" - integrity sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw== - dependencies: - regenerator-transform "^0.13.3" - -"@babel/plugin-transform-runtime@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.1.0.tgz#9f76920d42551bb577e2dc594df229b5f7624b63" - integrity sha512-WFLMgzu5DLQEah0lKTJzYb14vd6UiES7PTnXcvrPZ1VrwFeJ+mTbvr65fFAsXYMt2bIoOoC0jk76zY1S7HZjUg== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - resolve "^1.8.1" - semver "^5.5.1" - -"@babel/plugin-transform-shorthand-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0.tgz#85f8af592dcc07647541a0350e8c95c7bf419d15" - integrity sha512-g/99LI4vm5iOf5r1Gdxq5Xmu91zvjhEG5+yZDJW268AZELAu4J1EiFLnkSG3yuUsZyOipVOVUKoGPYwfsTymhw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0.tgz#93583ce48dd8c85e53f3a46056c856e4af30b49b" - integrity sha512-L702YFy2EvirrR4shTj0g2xQp7aNwZoWNCkNu2mcoU0uyzMl0XRwDSwzB/xp6DSUFiBmEXuyAyEN16LsgVqGGQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-sticky-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0.tgz#30a9d64ac2ab46eec087b8530535becd90e73366" - integrity sha512-LFUToxiyS/WD+XEWpkx/XJBrUXKewSZpzX68s+yEOtIbdnsRjpryDw9U06gYc6klYEij/+KQVRnD3nz3AoKmjw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - -"@babel/plugin-transform-template-literals@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0.tgz#084f1952efe5b153ddae69eb8945f882c7a97c65" - integrity sha512-vA6rkTCabRZu7Nbl9DfLZE1imj4tzdWcg5vtdQGvj+OH9itNNB6hxuRMHuIY8SGnEt1T9g5foqs9LnrHzsqEFg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-typeof-symbol@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.0.0.tgz#4dcf1e52e943e5267b7313bff347fdbe0f81cec9" - integrity sha512-1r1X5DO78WnaAIvs5uC48t41LLckxsYklJrZjNKcevyz83sF2l4RHbw29qrCPr/6ksFsdfRpT/ZgxNWHXRnffg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-typescript@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.1.0.tgz#81e7b4be90e7317cbd04bf1163ebf06b2adee60b" - integrity sha512-TOTtVeT+fekAesiCHnPz+PSkYSdOSLyLn42DI45nxg6iCdlQY6LIj/tYqpMB0y+YicoTUiYiXqF8rG6SKfhw6Q== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-typescript" "^7.0.0" - -"@babel/plugin-transform-unicode-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0.tgz#c6780e5b1863a76fe792d90eded9fcd5b51d68fc" - integrity sha512-uJBrJhBOEa3D033P95nPHu3nbFwFE9ZgXsfEitzoIXIwqAZWk7uXcg06yFKXz9FSxBH5ucgU/cYdX0IV8ldHKw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.1.3" - -"@babel/preset-env@7.1.0", "@babel/preset-env@^7.0.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.1.0.tgz#e67ea5b0441cfeab1d6f41e9b5c79798800e8d11" - integrity sha512-ZLVSynfAoDHB/34A17/JCZbyrzbQj59QC1Anyueb4Bwjh373nVPq5/HMph0z+tCmcDjXDe+DlKQq9ywQuvWrQg== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.1.0" - "@babel/plugin-proposal-json-strings" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.0.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.0.0" - "@babel/plugin-syntax-async-generators" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.1.0" - "@babel/plugin-transform-block-scoped-functions" "^7.0.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.1.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.0.0" - "@babel/plugin-transform-dotall-regex" "^7.0.0" - "@babel/plugin-transform-duplicate-keys" "^7.0.0" - "@babel/plugin-transform-exponentiation-operator" "^7.1.0" - "@babel/plugin-transform-for-of" "^7.0.0" - "@babel/plugin-transform-function-name" "^7.1.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-amd" "^7.1.0" - "@babel/plugin-transform-modules-commonjs" "^7.1.0" - "@babel/plugin-transform-modules-systemjs" "^7.0.0" - "@babel/plugin-transform-modules-umd" "^7.1.0" - "@babel/plugin-transform-new-target" "^7.0.0" - "@babel/plugin-transform-object-super" "^7.1.0" - "@babel/plugin-transform-parameters" "^7.1.0" - "@babel/plugin-transform-regenerator" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-template-literals" "^7.0.0" - "@babel/plugin-transform-typeof-symbol" "^7.0.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - browserslist "^4.1.0" - invariant "^2.2.2" - js-levenshtein "^1.1.3" - semver "^5.3.0" - -"@babel/preset-react@7.0.0", "@babel/preset-react@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.0.0.tgz#e86b4b3d99433c7b3e9e91747e2653958bc6b3c0" - integrity sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - -"@babel/preset-typescript@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.1.0.tgz#49ad6e2084ff0bfb5f1f7fb3b5e76c434d442c7f" - integrity sha512-LYveByuF9AOM8WrsNne5+N79k1YxjNB6gmpCQsnuSBAcV8QUeB+ZUxQzL7Rz7HksPbahymKkq2qBR+o36ggFZA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.1.0" - -"@babel/runtime@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.0.0.tgz#adeb78fedfc855aa05bc041640f3f6f98e85424c" - integrity sha512-7hGhzlcmg01CvH1EHdSPVXYX1aJ8KCEyz6I9xYIi/asDtzBPMyMhVibhM/K6g/5qnKBwjZtp10bNZIEFTRW1MA== - dependencies: - regenerator-runtime "^0.12.0" - -"@babel/template@^7.1.0", "@babel/template@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.1.2.tgz#090484a574fef5a2d2d7726a674eceda5c5b5644" - integrity sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.1.2" - "@babel/types" "^7.1.2" - -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0": - version "7.1.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.1.4.tgz#f4f83b93d649b4b2c91121a9087fa2fa949ec2b4" - integrity sha512-my9mdrAIGdDiSVBuMjpn/oXYpva0/EZwWL3sm3Wcy/AVWO2eXnsoZruOT9jOGNRXU8KbCIu5zsKnXcAJ6PcV6Q== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.1.3" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/parser" "^7.1.3" - "@babel/types" "^7.1.3" - debug "^3.1.0" - globals "^11.1.0" - lodash "^4.17.10" - -"@babel/types@^7.0.0", "@babel/types@^7.1.2", "@babel/types@^7.1.3": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.1.3.tgz#3a767004567060c2f40fca49a304712c525ee37d" - integrity sha512-RpPOVfK+yatXyn8n4PB1NW6k9qjinrXrRR8ugBN8fD6hCy5RXI6PSbVqpOJBO9oSaY7Nom4ohj35feb0UR9hSA== - dependencies: - esutils "^2.0.2" - lodash "^4.17.10" - to-fast-properties "^2.0.0" - -"@carbon/import-once@0.0.1-alpha.32": - version "0.0.1-alpha.32" - resolved "https://registry.yarnpkg.com/@carbon/import-once/-/import-once-0.0.1-alpha.32.tgz#44f4f78399899d659fcd4d7550defe5ac8802c6f" - integrity sha512-TXtjzIz05OpSQPIvG867O1vHzAFdKgVTCi6sMwQsL48SBuVm9yW8RrfW4z3zDAId2fnMwf0bG/+lMqNNwFKlJQ== - -"@carbon/layout@0.0.1-alpha.32": - version "0.0.1-alpha.32" - resolved "https://registry.yarnpkg.com/@carbon/layout/-/layout-0.0.1-alpha.32.tgz#1fae6b9c771d2e145b3e7ac28f030e6be1321592" - integrity sha512-LOGnUdPm6CtwIDR1xrWNvD5VgCDF2v7b7G6TMZX3Pt9a3Y6UGoKEBfPx9+GCbmfv1NRJx5WHjyszV6I6hdnqag== - -"@carbon/type@alpha": - version "0.0.1-alpha.32" - resolved "https://registry.yarnpkg.com/@carbon/type/-/type-0.0.1-alpha.32.tgz#2472f440a6e6db3506096a123d9a37a241c4903e" - integrity sha512-NFLy75ybyfQWi0Gw99iQGZ9VgI/kIzs+zwbJJx69NgLzKWeIAL9rq3pd2lXmSPep78+qBOOcCKaeFrF/uxUu/Q== - dependencies: - "@carbon/import-once" "0.0.1-alpha.32" - "@carbon/layout" "0.0.1-alpha.32" - -"@csstools/convert-colors@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" - integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== - -"@emotion/is-prop-valid@^0.6.8": - version "0.6.8" - resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.6.8.tgz#68ad02831da41213a2089d2cab4e8ac8b30cbd85" - integrity sha512-IMSL7ekYhmFlILXcouA6ket3vV7u9BqStlXzbKOF9HBtpUPMMlHU+bBxrLOa2NvleVwNIxeq/zL8LafLbeUXcA== - dependencies: - "@emotion/memoize" "^0.6.6" - -"@emotion/memoize@^0.6.6": - version "0.6.6" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.6.6.tgz#004b98298d04c7ca3b4f50ca2035d4f60d2eed1b" - integrity sha512-h4t4jFjtm1YV7UirAFuSuFGyLa+NNxjdkq6DpFLANNQY5rHueFZHVY+8Cu1HYVP6DrheB0kv4m5xPjo7eKT7yQ== - -"@emotion/unitless@^0.7.0": - version "0.7.3" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.3.tgz#6310a047f12d21a1036fb031317219892440416f" - integrity sha512-4zAPlpDEh2VwXswwr/t8xGNDGg8RQiPxtxZ3qQEXyQsBV39ptTdESCjuBvGze1nLMVrxmTIKmnO/nAV8Tqjjzg== - -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== - dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" - -"@nodelib/fs.stat@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.2.tgz#54c5a964462be3d4d78af631363c18d6fa91ac26" - integrity sha512-yprFYuno9FtNsSHVlSWd+nRlmGoAbqbeCwOryP6sC/zoCjhpArcRMYp19EvpSUSizJAlsXEwJv+wcWS9XaXdMw== - -"@svgr/core@^2.4.1": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@svgr/core/-/core-2.4.1.tgz#03a407c28c4a1d84305ae95021e8eabfda8fa731" - integrity sha512-2i1cUbjpKt1KcIP05e10vkmu9Aedp32EFqVcSQ08onbB8lVxJqMPci3Hr54aI14S9cLg4JdcpO0D35HHUtT8oQ== - dependencies: - camelcase "^5.0.0" - cosmiconfig "^5.0.6" - h2x-core "^1.1.0" - h2x-plugin-jsx "^1.1.0" - merge-deep "^3.0.2" - prettier "^1.14.2" - svgo "^1.0.5" - -"@svgr/webpack@2.4.1": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-2.4.1.tgz#68bc581ecb4c09fadeb7936bd1afaceb9da960d2" - integrity sha512-sMHYq0zbMtSHcc9kVfkYI2zrl88u4mKGyQLgKt7r+ul5nITcncm/EPBhzEUrJY5izdlaU6EvyH8zOhZnfaSmOA== - dependencies: - "@babel/core" "^7.0.1" - "@babel/plugin-transform-react-constant-elements" "^7.0.0" - "@babel/preset-env" "^7.0.0" - "@babel/preset-react" "^7.0.0" - "@svgr/core" "^2.4.1" - loader-utils "^1.1.0" - -"@types/tapable@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.2.tgz#e13182e1b69871a422d7863e11a4a6f5b814a4bd" - integrity sha512-42zEJkBpNfMEAvWR5WlwtTH22oDzcMjFsL9gDGExwF8X8WvAiw7Vwop7hPw03QT8TKfec83LwbHj6SvpqM4ELQ== - -"@webassemblyjs/ast@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.7.6.tgz#3ef8c45b3e5e943a153a05281317474fef63e21e" - integrity sha512-8nkZS48EVsMUU0v6F1LCIOw4RYWLm2plMtbhFTjNgeXmsTNLuU3xTRtnljt9BFQB+iPbLRobkNrCWftWnNC7wQ== - dependencies: - "@webassemblyjs/helper-module-context" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/wast-parser" "1.7.6" - mamacro "^0.0.3" - -"@webassemblyjs/floating-point-hex-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.6.tgz#7cb37d51a05c3fe09b464ae7e711d1ab3837801f" - integrity sha512-VBOZvaOyBSkPZdIt5VBMg3vPWxouuM13dPXGWI1cBh3oFLNcFJ8s9YA7S9l4mPI7+Q950QqOmqj06oa83hNWBA== - -"@webassemblyjs/helper-api-error@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.6.tgz#99b7e30e66f550a2638299a109dda84a622070ef" - integrity sha512-SCzhcQWHXfrfMSKcj8zHg1/kL9kb3aa5TN4plc/EREOs5Xop0ci5bdVBApbk2yfVi8aL+Ly4Qpp3/TRAUInjrg== - -"@webassemblyjs/helper-buffer@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.6.tgz#ba0648be12bbe560c25c997e175c2018df39ca3e" - integrity sha512-1/gW5NaGsEOZ02fjnFiU8/OEEXU1uVbv2um0pQ9YVL3IHSkyk6xOwokzyqqO1qDZQUAllb+V8irtClPWntbVqw== - -"@webassemblyjs/helper-code-frame@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.6.tgz#5a94d21b0057b69a7403fca0c253c3aaca95b1a5" - integrity sha512-+suMJOkSn9+vEvDvgyWyrJo5vJsWSDXZmJAjtoUq4zS4eqHyXImpktvHOZwXp1XQjO5H+YQwsBgqTQEc0J/5zg== - dependencies: - "@webassemblyjs/wast-printer" "1.7.6" - -"@webassemblyjs/helper-fsm@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.6.tgz#ae1741c6f6121213c7a0b587fb964fac492d3e49" - integrity sha512-HCS6KN3wgxUihGBW7WFzEC/o8Eyvk0d56uazusnxXthDPnkWiMv+kGi9xXswL2cvfYfeK5yiM17z2K5BVlwypw== - -"@webassemblyjs/helper-module-context@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.6.tgz#116d19a51a6cebc8900ad53ca34ff8269c668c23" - integrity sha512-e8/6GbY7OjLM+6OsN7f2krC2qYVNaSr0B0oe4lWdmq5sL++8dYDD1TFbD1TdAdWMRTYNr/Qq7ovXWzia2EbSjw== - dependencies: - mamacro "^0.0.3" - -"@webassemblyjs/helper-wasm-bytecode@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.6.tgz#98e515eaee611aa6834eb5f6a7f8f5b29fefb6f1" - integrity sha512-PzYFCb7RjjSdAOljyvLWVqd6adAOabJW+8yRT+NWhXuf1nNZWH+igFZCUK9k7Cx7CsBbzIfXjJc7u56zZgFj9Q== - -"@webassemblyjs/helper-wasm-section@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.6.tgz#783835867bdd686df7a95377ab64f51a275e8333" - integrity sha512-3GS628ppDPSuwcYlQ7cDCGr4W2n9c4hLzvnRKeuz+lGsJSmc/ADVoYpm1ts2vlB1tGHkjtQMni+yu8mHoMlKlA== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - -"@webassemblyjs/ieee754@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.7.6.tgz#c34fc058f2f831fae0632a8bb9803cf2d3462eb1" - integrity sha512-V4cIp0ruyw+hawUHwQLn6o2mFEw4t50tk530oKsYXQhEzKR+xNGDxs/SFFuyTO7X3NzEu4usA3w5jzhl2RYyzQ== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.7.6.tgz#197f75376a29f6ed6ace15898a310d871d92f03b" - integrity sha512-ojdlG8WpM394lBow4ncTGJoIVZ4aAtNOWHhfAM7m7zprmkVcKK+2kK5YJ9Bmj6/ketTtOn7wGSHCtMt+LzqgYQ== - dependencies: - "@xtuc/long" "4.2.1" - -"@webassemblyjs/utf8@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.7.6.tgz#eb62c66f906af2be70de0302e29055d25188797d" - integrity sha512-oId+tLxQ+AeDC34ELRYNSqJRaScB0TClUU6KQfpB8rNT6oelYlz8axsPhf6yPTg7PBJ/Z5WcXmUYiHEWgbbHJw== - -"@webassemblyjs/wasm-edit@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.6.tgz#fa41929160cd7d676d4c28ecef420eed5b3733c5" - integrity sha512-pTNjLO3o41v/Vz9VFLl+I3YLImpCSpodFW77pNoH4agn5I6GgSxXHXtvWDTvYJFty0jSeXZWLEmbaSIRUDlekg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/helper-wasm-section" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - "@webassemblyjs/wasm-opt" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - "@webassemblyjs/wast-printer" "1.7.6" - -"@webassemblyjs/wasm-gen@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.6.tgz#695ac38861ab3d72bf763c8c75e5f087ffabc322" - integrity sha512-mQvFJVumtmRKEUXMohwn8nSrtjJJl6oXwF3FotC5t6e2hlKMh8sIaW03Sck2MDzw9xPogZD7tdP5kjPlbH9EcQ== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/ieee754" "1.7.6" - "@webassemblyjs/leb128" "1.7.6" - "@webassemblyjs/utf8" "1.7.6" - -"@webassemblyjs/wasm-opt@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.6.tgz#fbafa78e27e1a75ab759a4b658ff3d50b4636c21" - integrity sha512-go44K90fSIsDwRgtHhX14VtbdDPdK2sZQtZqUcMRvTojdozj5tLI0VVJAzLCfz51NOkFXezPeVTAYFqrZ6rI8Q== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - -"@webassemblyjs/wasm-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.6.tgz#84eafeeff405ad6f4c4b5777d6a28ae54eed51fe" - integrity sha512-t1T6TfwNY85pDA/HWPA8kB9xA4sp9ajlRg5W7EKikqrynTyFo+/qDzIpvdkOkOGjlS6d4n4SX59SPuIayR22Yg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-api-error" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/ieee754" "1.7.6" - "@webassemblyjs/leb128" "1.7.6" - "@webassemblyjs/utf8" "1.7.6" - -"@webassemblyjs/wast-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.7.6.tgz#ca4d20b1516e017c91981773bd7e819d6bd9c6a7" - integrity sha512-1MaWTErN0ziOsNUlLdvwS+NS1QWuI/kgJaAGAMHX8+fMJFgOJDmN/xsG4h/A1Gtf/tz5VyXQciaqHZqp2q0vfg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/floating-point-hex-parser" "1.7.6" - "@webassemblyjs/helper-api-error" "1.7.6" - "@webassemblyjs/helper-code-frame" "1.7.6" - "@webassemblyjs/helper-fsm" "1.7.6" - "@xtuc/long" "4.2.1" - mamacro "^0.0.3" - -"@webassemblyjs/wast-printer@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.7.6.tgz#a6002c526ac5fa230fe2c6d2f1bdbf4aead43a5e" - integrity sha512-vHdHSK1tOetvDcl1IV1OdDeGNe/NDDQ+KzuZHMtqTVP1xO/tZ/IKNpj5BaGk1OYFdsDWQqb31PIwdEyPntOWRQ== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/wast-parser" "1.7.6" - "@xtuc/long" "4.2.1" - -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== - -"@xtuc/long@4.2.1": - version "4.2.1" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.1.tgz#5c85d662f76fa1d34575766c5dcd6615abcd30d8" - integrity sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g== - -abab@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.0.tgz#aba0ab4c5eee2d4c79d3487d85450fb2376ebb0f" - integrity sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w== - -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - -accepts@~1.3.4, accepts@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" - integrity sha1-63d99gEXI6OxTopywIBcjoZ0a9I= - dependencies: - mime-types "~2.1.18" - negotiator "0.6.1" - -acorn-dynamic-import@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz#901ceee4c7faaef7e07ad2a47e890675da50a278" - integrity sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg== - dependencies: - acorn "^5.0.0" - -acorn-globals@^4.1.0, acorn-globals@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.0.tgz#e3b6f8da3c1552a95ae627571f7dd6923bb54103" - integrity sha512-hMtHj3s5RnuhvHPowpBYvJVj3rAar82JiDQHvGs1zO0l10ocX/xEdBShNHTJaboucJUsScghp74pH3s7EnHHQw== - dependencies: - acorn "^6.0.1" - acorn-walk "^6.0.1" - -acorn-jsx@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.0.tgz#958584ddb60990c02c97c1bd9d521fce433bb101" - integrity sha512-XkB50fn0MURDyww9+UYL3c1yLbOBz0ZFvrdYlGB8l+Ije1oSC75qAqrzSPjYQbdnQUzhlUGNKuesryAv0gxZOg== - -acorn-walk@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.0.tgz#c957f4a1460da46af4a0388ce28b4c99355b0cbc" - integrity sha512-ugTb7Lq7u4GfWSqqpwE0bGyoBZNMTok/zDBXxfEG0QM50jNlGhIWjRC1pPN7bvV1anhF+bs+/gNcRw+o55Evbg== - -acorn@^5.0.0, acorn@^5.5.3, acorn@^5.6.2: - version "5.7.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" - integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== - -acorn@^6.0.1, acorn@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.2.tgz#6a459041c320ab17592c6317abbfdf4bbaa98ca4" - integrity sha512-GXmKIvbrN3TV7aVqAzVFaMW8F8wzVX7voEBRO3bDA64+EX37YSayggRJP5Xig6HYHBkWKpFg9W5gg6orklubhg== - -address@1.0.3, address@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/address/-/address-1.0.3.tgz#b5f50631f8d6cec8bd20c963963afb55e06cbce9" - integrity sha512-z55ocwKBRLryBs394Sm3ushTtBeg6VAeuku7utSoSnsJKvKcnXFIyC6vh27n3rXyxSgkJBBCAvyOn7gSUcTYjg== - -ajv-errors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.0.tgz#ecf021fa108fd17dfb5e6b383f2dd233e31ffc59" - integrity sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk= - -ajv-keywords@^3.0.0, ajv-keywords@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.2.0.tgz#e86b819c602cf8821ad637413698f1dec021847a" - integrity sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo= - -ajv@^5.3.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - -ajv@^6.0.1, ajv@^6.1.0, ajv@^6.5.3: - version "6.5.4" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.5.4.tgz#247d5274110db653706b550fcc2b797ca28cfc59" - integrity sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg== - dependencies: - fast-deep-equal "^2.0.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -alphanum-sort@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - -ansi-colors@^3.0.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.1.tgz#9638047e4213f3428a11944a7d4b31cba0a3ff95" - integrity sha512-Xt+zb6nqgvV9SWAVp0EG3lRsHcbq5DDgqjPPz6pwgtj6RKz65zGXMNa82oJfOSBA/to6GmRP7Dr+6o+kbApTzQ== - -ansi-escapes@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" - integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw== - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - -ansi-styles@^3.2.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -append-transform@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" - integrity sha1-126/jKlNJ24keja61EpLdKthGZE= - dependencies: - default-require-extensions "^1.0.0" - -aproba@^1.0.3, aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -aria-query@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc" - integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w= - dependencies: - ast-types-flow "0.0.7" - commander "^2.11.0" - -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= - dependencies: - arr-flatten "^1.0.1" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - -array-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" - integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= - -array-filter@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" - integrity sha1-fajPLiZijtcygDWB/SH2fKzS7uw= - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= - -array-flatten@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.1.tgz#426bb9da84090c1838d812c8150af20a8331e296" - integrity sha1-Qmu52oQJDBg42BLIFQryCoMx4pY= - -array-includes@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" - integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.7.0" - -array-map@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" - integrity sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI= - -array-reduce@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" - integrity sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys= - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - -arrify@^1.0.0, arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= - -asap@~2.0.3, asap@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= - -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assert@^1.1.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" - integrity sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE= - dependencies: - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - -ast-types-flow@0.0.7, ast-types-flow@^0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" - integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0= - -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - integrity sha1-GdOGodntxufByF04iu28xW0zYC0= - -async-limiter@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" - integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== - -async@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= - -async@^2.1.4: - version "2.6.1" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" - integrity sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ== - dependencies: - lodash "^4.17.10" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= - -atob@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -autoprefixer@^9.1.5: - version "9.3.1" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.3.1.tgz#71b622174de2b783d5fd99f9ad617b7a3c78443e" - integrity sha512-DY9gOh8z3tnCbJ13JIWaeQsoYncTGdsrgCceBaQSIL4nvdrLxgbRSBPevg2XbX7u4QCSfLheSJEEIUUSlkbx6Q== - dependencies: - browserslist "^4.3.3" - caniuse-lite "^1.0.30000898" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.5" - postcss-value-parser "^3.3.1" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" - integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== - -axobject-query@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9" - integrity sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww== - dependencies: - ast-types-flow "0.0.7" - -babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@7.0.0-bridge.0: - version "7.0.0-bridge.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" - integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== - -babel-core@^6.0.0, babel-core@^6.26.0: - version "6.26.3" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" - integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.1" - debug "^2.6.9" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.8" - slash "^1.0.0" - source-map "^0.5.7" - -babel-eslint@9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-9.0.0.tgz#7d9445f81ed9f60aff38115f838970df9f2b6220" - integrity sha512-itv1MwE3TMbY0QtNfeL7wzak1mV47Uy+n6HtSOO4Xd7rvmO+tsGQSgyOEEgo6Y2vHZKZphaoelNeSVj4vkLA1g== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.0.0" - "@babel/traverse" "^7.0.0" - "@babel/types" "^7.0.0" - eslint-scope "3.7.1" - eslint-visitor-keys "^1.0.0" - -babel-extract-comments@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz#0a2aedf81417ed391b85e18b4614e693a0351a21" - integrity sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ== - dependencies: - babylon "^6.18.0" - -babel-generator@^6.18.0, babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-jest@23.6.0, babel-jest@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-23.6.0.tgz#a644232366557a2240a0c083da6b25786185a2f1" - integrity sha512-lqKGG6LYXYu+DQh/slrQ8nxXQkEkhugdXsU6St7GmhVS7Ilc/22ArwqXNJrf0QaOBjZB0360qZMwXqDYQHXaew== - dependencies: - babel-plugin-istanbul "^4.1.6" - babel-preset-jest "^23.2.0" - -babel-loader@8.0.4: - version "8.0.4" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.4.tgz#7bbf20cbe4560629e2e41534147692d3fecbdce6" - integrity sha512-fhBhNkUToJcW9nV46v8w87AJOwAJDz84c1CL57n3Stj73FANM/b9TbCUK4YhdOwEyZ+OxhYpdeZDNzSI29Firw== - dependencies: - find-cache-dir "^1.0.0" - loader-utils "^1.0.2" - mkdirp "^0.5.1" - util.promisify "^1.0.0" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-dynamic-import-node@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.2.0.tgz#c0adfb07d95f4a4495e9aaac6ec386c4d7c2524e" - integrity sha512-fP899ELUnTaBcIzmrW7nniyqqdYWrWuJUyPWHxFa/c7r7hS6KC8FscNfLlBNIoPSc55kYMGEEKjPjJGCLbE1qA== - dependencies: - object.assign "^4.1.0" - -babel-plugin-istanbul@^4.1.6: - version "4.1.6" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz#36c59b2192efce81c5b378321b74175add1c9a45" - integrity sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ== - dependencies: - babel-plugin-syntax-object-rest-spread "^6.13.0" - find-up "^2.1.0" - istanbul-lib-instrument "^1.10.1" - test-exclude "^4.2.1" - -babel-plugin-jest-hoist@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-23.2.0.tgz#e61fae05a1ca8801aadee57a6d66b8cefaf44167" - integrity sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc= - -babel-plugin-macros@2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.4.2.tgz#21b1a2e82e2130403c5ff785cba6548e9b644b28" - integrity sha512-NBVpEWN4OQ/bHnu1fyDaAaTPAjnhXCEPqr1RwqxrU7b6tZ2hypp+zX4hlNfmVGfClD5c3Sl6Hfj5TJNF5VG5aA== - dependencies: - cosmiconfig "^5.0.5" - resolve "^1.8.1" - -babel-plugin-named-asset-import@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.2.3.tgz#b40ed50a848e7bb0a2a7e34d990d1f9d46fe9b38" - integrity sha512-9mx2Z9M4EGbutvXxoLV7aUBCY6ps3sqLFl094FeA2tFQzQffIh0XSsmwwQRxiSfpg3rnb5x/o46qRLxS/OzFTg== - -"babel-plugin-styled-components@>= 1": - version "1.9.2" - resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-1.9.2.tgz#0e6a6587454dcb1c9a362a8fd31fc0b075ccd260" - integrity sha512-McnheW8RkBkur/mQw7rEwQO/oUUruQ/nIIj5LIRpsVL8pzG1oo1Y53xyvAYeOfamIrl4/ta7g1G/kuTR1ekO3A== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - babel-plugin-syntax-jsx "^6.18.0" - lodash "^4.17.10" - -babel-plugin-syntax-jsx@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" - integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= - -babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= - -babel-plugin-transform-object-rest-spread@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - integrity sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY= - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - -babel-plugin-transform-react-remove-prop-types@0.4.18: - version "0.4.18" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.18.tgz#85ff79d66047b34288c6f7cc986b8854ab384f8c" - integrity sha512-azed2nHo8vmOy7EY26KH+om5oOcWRs0r1U8wOmhwta+SBMMnmJ4H6yaBZRCcHBtMeWp9AVhvBTL/lpR1kEx+Xw== - -babel-preset-jest@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-23.2.0.tgz#8ec7a03a138f001a1a8fb1e8113652bf1a55da46" - integrity sha1-jsegOhOPABoaj7HoETZSvxpV2kY= - dependencies: - babel-plugin-jest-hoist "^23.2.0" - babel-plugin-syntax-object-rest-spread "^6.13.0" - -babel-preset-react-app@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-6.1.0.tgz#477ae7f8557eb99ce26d179530127913b733310d" - integrity sha512-8PJ4N+acfYsjhDK4gMWkqJMVRMjDKb93D+nz7lWlNe73Jcv38FNu37i5K/dVQnFDdRYHbe1SjII+Y0mCgink9A== - dependencies: - "@babel/core" "7.1.0" - "@babel/plugin-proposal-class-properties" "7.1.0" - "@babel/plugin-proposal-decorators" "7.1.2" - "@babel/plugin-proposal-object-rest-spread" "7.0.0" - "@babel/plugin-syntax-dynamic-import" "7.0.0" - "@babel/plugin-transform-classes" "7.1.0" - "@babel/plugin-transform-destructuring" "7.0.0" - "@babel/plugin-transform-flow-strip-types" "7.0.0" - "@babel/plugin-transform-react-constant-elements" "7.0.0" - "@babel/plugin-transform-react-display-name" "7.0.0" - "@babel/plugin-transform-runtime" "7.1.0" - "@babel/preset-env" "7.1.0" - "@babel/preset-react" "7.0.0" - "@babel/preset-typescript" "7.1.0" - "@babel/runtime" "7.0.0" - babel-loader "8.0.4" - babel-plugin-dynamic-import-node "2.2.0" - babel-plugin-macros "2.4.2" - babel-plugin-transform-react-remove-prop-types "0.4.18" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.0.0, babel-traverse@^6.18.0, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.0.0, babel-types@^6.18.0, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -base64-js@^1.0.2: - version "1.3.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" - integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - -bfj@6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/bfj/-/bfj-6.1.1.tgz#05a3b7784fbd72cfa3c22e56002ef99336516c48" - integrity sha512-+GUNvzHR4nRyGybQc2WpNJL4MJazMuvf92ueIyA0bIkPRwhhQu3IfZQ2PSoVPpCBJfmoSdOxu5rnotfFLlvYRQ== - dependencies: - bluebird "^3.5.1" - check-types "^7.3.0" - hoopy "^0.1.2" - tryer "^1.0.0" - -big.js@^3.1.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" - integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q== - -binary-extensions@^1.0.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.12.0.tgz#c2d780f53d45bba8317a8902d4ceeaf3a6385b14" - integrity sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg== - -bluebird@^3.5.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.2.tgz#1be0908e054a751754549c270489c1505d4ab15a" - integrity sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: - version "4.11.8" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" - integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== - -body-parser@1.18.3: - version "1.18.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4" - integrity sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ= - dependencies: - bytes "3.0.0" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.2" - http-errors "~1.6.3" - iconv-lite "0.4.23" - on-finished "~2.3.0" - qs "6.5.2" - raw-body "2.3.3" - type-is "~1.6.16" - -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= - dependencies: - array-flatten "^2.1.0" - deep-equal "^1.0.1" - dns-equal "^1.0.0" - dns-txt "^2.0.2" - multicast-dns "^6.0.1" - multicast-dns-service-types "^1.1.0" - -boolbase@^1.0.0, boolbase@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -braces@^2.3.0, braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= - -browser-process-hrtime@^0.1.2: - version "0.1.3" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz#616f00faef1df7ec1b5bf9cfe2bdc3170f26c7b4" - integrity sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw== - -browser-resolve@^1.11.3: - version "1.11.3" - resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz#9b7cbb3d0f510e4cb86bdbd796124d28b5890af6" - integrity sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ== - dependencies: - resolve "1.1.7" - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= - dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" - -browserslist@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.1.1.tgz#328eb4ff1215b12df6589e9ab82f8adaa4fc8cd6" - integrity sha512-VBorw+tgpOtZ1BYhrVSVTzTt/3+vSE3eFUh0N2GCFK1HffceOaf32YS/bs6WiFhjDAblAFrx85jMy3BG9fBK2Q== - dependencies: - caniuse-lite "^1.0.30000884" - electron-to-chromium "^1.3.62" - node-releases "^1.0.0-alpha.11" - -browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.1.1, browserslist@^4.3.3: - version "4.3.4" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.3.4.tgz#4477b737db6a1b07077275b24791e680d4300425" - integrity sha512-u5iz+ijIMUlmV8blX82VGFrB9ecnUg5qEt55CMZ/YJEhha+d8qpBfOFuutJ6F/VKRXjZoD33b6uvarpPxcl3RA== - dependencies: - caniuse-lite "^1.0.30000899" - electron-to-chromium "^1.3.82" - node-releases "^1.0.1" - -bser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" - integrity sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk= - dependencies: - node-int64 "^0.4.0" - -buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= - -buffer@^4.3.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - integrity sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg= - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - -cacache@^10.0.4: - version "10.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" - integrity sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA== - dependencies: - bluebird "^3.5.1" - chownr "^1.0.1" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.1" - mississippi "^2.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.2" - ssri "^5.2.4" - unique-filename "^1.1.0" - y18n "^4.0.0" - -cacache@^11.0.2: - version "11.2.0" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.2.0.tgz#617bdc0b02844af56310e411c0878941d5739965" - integrity sha512-IFWl6lfK6wSeYCHUXh+N1lY72UDrpyrYQJNIVQf48paDuWbv5RbAtJYf/4gUQFObTCHZwdZ5sI8Iw7nqwP6nlQ== - dependencies: - bluebird "^3.5.1" - chownr "^1.0.1" - figgy-pudding "^3.1.0" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.3" - mississippi "^3.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.2" - ssri "^6.0.0" - unique-filename "^1.1.0" - y18n "^4.0.0" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= - -caller-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" - integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8= - dependencies: - callsites "^0.2.0" - -callsites@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" - integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= - -camel-case@3.0.x: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= - dependencies: - no-case "^2.2.0" - upper-case "^1.1.1" - -camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= - -camelcase@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42" - integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA== - -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000884, caniuse-lite@^1.0.30000887, caniuse-lite@^1.0.30000898, caniuse-lite@^1.0.30000899: - version "1.0.30000903" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000903.tgz#86d46227759279b3db345ddbe778335dbba9e858" - integrity sha512-T1XVJEpGCoaq7MDw7/6hCdYUukmSaS+1l/OQJkLtw7Cr2+/+d67tNGKEbyiqf7Ck8x6EhNFUxjYFXXka0N/w5g== - -capture-exit@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f" - integrity sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28= - dependencies: - rsvp "^3.3.3" - -case-sensitive-paths-webpack-plugin@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.1.2.tgz#c899b52175763689224571dad778742e133f0192" - integrity sha512-oEZgAFfEvKtjSRCu6VgYkuGxwrWXMnQzyBmlLPP7r6PWQVtHxP5Z5N6XsuJvtoVax78am/r7lr46bwo3IVEBOg== - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - -chalk@2.4.1, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" - integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - -check-types@^7.3.0: - version "7.4.0" - resolved "https://registry.yarnpkg.com/check-types/-/check-types-7.4.0.tgz#0378ec1b9616ec71f774931a3c6516fad8c152f4" - integrity sha512-YbulWHdfP99UfZ73NcUDlNJhEIDgm9Doq9GhpyXbF+7Aegi3CVV7qqMCKTTqJxlvEvnQBp9IA+dxsGN6xK/nSg== - -chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.4.tgz#356ff4e2b0e8e43e322d18a372460bbcf3accd26" - integrity sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.0" - braces "^2.3.0" - glob-parent "^3.1.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - lodash.debounce "^4.0.8" - normalize-path "^2.1.1" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - upath "^1.0.5" - optionalDependencies: - fsevents "^1.2.2" - -chownr@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== - -chrome-trace-event@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz#45a91bd2c20c9411f0963b5aaeb9a1b95e09cc48" - integrity sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A== - dependencies: - tslib "^1.9.0" - -ci-info@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" - integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A== - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -circular-json@^0.3.1: - version "0.3.3" - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" - integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -clean-css@4.2.x: - version "4.2.1" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.1.tgz#2d411ef76b8569b6d0c84068dabe85b0aa5e5c17" - integrity sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g== - dependencies: - source-map "~0.6.0" - -cli-cursor@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" - integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= - dependencies: - restore-cursor "^2.0.0" - -cli-width@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" - integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= - -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - -clone-deep@^0.2.4: - version "0.2.4" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6" - integrity sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY= - dependencies: - for-own "^0.1.3" - is-plain-object "^2.0.1" - kind-of "^3.0.2" - lazy-cache "^1.0.3" - shallow-clone "^0.1.2" - -clone-deep@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" - integrity sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ== - dependencies: - for-own "^1.0.0" - is-plain-object "^2.0.4" - kind-of "^6.0.0" - shallow-clone "^1.0.0" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -coa@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.1.tgz#f3f8b0b15073e35d70263fb1042cb2c023db38af" - integrity sha512-5wfTTO8E2/ja4jFSxePXlG5nRu5bBtL/r1HCIpJW/lzT6yDtKl0u0Z4o/Vpz32IpKmBn7HerheEZQgA9N2DarQ== - dependencies: - q "^1.1.2" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0, color-convert@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -color-string@^1.5.2: - version "1.5.3" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" - integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/color/-/color-3.1.0.tgz#d8e9fb096732875774c84bf922815df0308d0ffc" - integrity sha512-CwyopLkuRYO5ei2EpzpIh6LqJMt6Mt+jZhO5VI5f/wJLZriXQE32/SSqzmrh+QB+AZT81Cj8yv+7zwToW8ahZg== - dependencies: - color-convert "^1.9.1" - color-string "^1.5.2" - -colors@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" - integrity sha1-FopHAXVran9RoSzgyXv6KMCE7WM= - -combined-stream@^1.0.6, combined-stream@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828" - integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w== - dependencies: - delayed-stream "~1.0.0" - -commander@2.17.x, commander@~2.17.1: - version "2.17.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" - integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== - -commander@^2.11.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" - integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg== - -commander@~2.13.0: - version "2.13.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" - integrity sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA== - -commander@~2.20.0: - version "2.20.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" - integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== - -common-tags@^1.4.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937" - integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - -component-emitter@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= - -compressible@~2.0.14: - version "2.0.15" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.15.tgz#857a9ab0a7e5a07d8d837ed43fe2defff64fe212" - integrity sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw== - dependencies: - mime-db ">= 1.36.0 < 2" - -compression@^1.5.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.3.tgz#27e0e176aaf260f7f2c2813c3e440adb9f1993db" - integrity sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.14" - debug "2.6.9" - on-headers "~1.0.1" - safe-buffer "5.1.2" - vary "~1.1.2" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -concat-stream@^1.5.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -confusing-browser-globals@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.5.tgz#0171050cfdd4261e278978078bc00c4d88e135f4" - integrity sha512-tHo1tQL/9Ox5RELbkCAJhnViqWlzBz3MG1bB2czbHjH2mWd4aYUgNCNLfysFL7c4LoDws7pjg2tj48Gmpw4QHA== - -connect-history-api-fallback@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" - integrity sha1-sGhzk0vF40T+9hGhlqb6rgruAVo= - -console-browserify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - integrity sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA= - dependencies: - date-now "^0.1.4" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= - -contains-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" - integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" - integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== - dependencies: - safe-buffer "~5.1.1" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -core-js@2.5.7, core-js@^2.4.0, core-js@^2.5.0: - version "2.5.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" - integrity sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw== - -core-js@^1.0.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" - integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - -cosmiconfig@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-4.0.0.tgz#760391549580bbd2df1e562bc177b13c290972dc" - integrity sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ== - dependencies: - is-directory "^0.3.1" - js-yaml "^3.9.0" - parse-json "^4.0.0" - require-from-string "^2.0.1" - -cosmiconfig@^5.0.0, cosmiconfig@^5.0.5, cosmiconfig@^5.0.6: - version "5.0.6" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.6.tgz#dca6cf680a0bd03589aff684700858c81abeeb39" - integrity sha512-6DWfizHriCrFWURP1/qyhsiFvYdlJzbCzmtFWh744+KyWsJo5+kPzUZZaMRSSItoYc0pxFX7gEO7ZC1/gN/7AQ== - dependencies: - is-directory "^0.3.1" - js-yaml "^3.9.0" - parse-json "^4.0.0" - -create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -css-color-keywords@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" - integrity sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU= - -css-color-names@0.0.4, css-color-names@^0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= - -css-declaration-sorter@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" - integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== - dependencies: - postcss "^7.0.1" - timsort "^0.3.0" - -css-loader@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-1.0.0.tgz#9f46aaa5ca41dbe31860e3b62b8e23c42916bf56" - integrity sha512-tMXlTYf3mIMt3b0dDCOQFJiVvxbocJ5Ho577WiGPYPZcqVEO218L2iU22pDXzkTZCLDE+9AmGSUkWxeh/nZReA== - dependencies: - babel-code-frame "^6.26.0" - css-selector-tokenizer "^0.7.0" - icss-utils "^2.1.0" - loader-utils "^1.0.2" - lodash.camelcase "^4.3.0" - postcss "^6.0.23" - postcss-modules-extract-imports "^1.2.0" - postcss-modules-local-by-default "^1.2.0" - postcss-modules-scope "^1.1.0" - postcss-modules-values "^1.3.0" - postcss-value-parser "^3.3.0" - source-list-map "^2.0.0" - -css-select-base-adapter@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== - -css-select@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" - -css-select@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.0.2.tgz#ab4386cec9e1f668855564b17c3733b43b2a5ede" - integrity sha512-dSpYaDVoWaELjvZ3mS6IKZM/y2PMPa/XYoEfYNZePL4U/XgyxZNroHEHReDx/d+VgXh9VbCTtFqLkFbmeqeaRQ== - dependencies: - boolbase "^1.0.0" - css-what "^2.1.2" - domutils "^1.7.0" - nth-check "^1.0.2" - -css-selector-tokenizer@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d" - integrity sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA== - dependencies: - cssesc "^0.1.0" - fastparse "^1.1.1" - regexpu-core "^1.0.0" - -css-to-react-native@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-2.2.2.tgz#c077d0f7bf3e6c915a539e7325821c9dd01f9965" - integrity sha512-w99Fzop1FO8XKm0VpbQp3y5mnTnaS+rtCvS+ylSEOK76YXO5zoHQx/QMB1N54Cp+Ya9jB9922EHrh14ld4xmmw== - dependencies: - css-color-keywords "^1.0.0" - fbjs "^0.8.5" - postcss-value-parser "^3.3.0" - -css-tree@1.0.0-alpha.28: - version "1.0.0-alpha.28" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.28.tgz#8e8968190d886c9477bc8d61e96f61af3f7ffa7f" - integrity sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w== - dependencies: - mdn-data "~1.1.0" - source-map "^0.5.3" - -css-tree@1.0.0-alpha.29: - version "1.0.0-alpha.29" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.29.tgz#3fa9d4ef3142cbd1c301e7664c1f352bd82f5a39" - integrity sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg== - dependencies: - mdn-data "~1.1.0" - source-map "^0.5.3" - -css-unit-converter@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996" - integrity sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY= - -css-url-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/css-url-regex/-/css-url-regex-1.1.0.tgz#83834230cc9f74c457de59eebd1543feeb83b7ec" - integrity sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w= - -css-what@2.1, css-what@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.2.tgz#c0876d9d0480927d7d4920dcd72af3595649554d" - integrity sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ== - -cssdb@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-3.2.1.tgz#65e7dc90be476ce5b6e567b19f3bd73a8c66bcb5" - integrity sha512-I0IS8zvxED8sQtFZnV7M+AkhWqTgp1HIyfMQJBbjdn4GgurBt7NCZaDgrWiAN2kNJN34mhF1p50aZIMQu290mA== - -cssesc@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" - integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q= - -cssesc@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" - integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg== - -cssnano-preset-default@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.5.tgz#d1756c0259d98ad311e601ba76e95c60f6771ac1" - integrity sha512-f1uhya0ZAjPYtDD58QkBB0R+uYdzHPei7cDxJyQQIHt5acdhyGXaSXl2nDLzWHLwGFbZcHxQtkJS8mmNwnxTvw== - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.0" - postcss-colormin "^4.0.2" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.1" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.9" - postcss-merge-rules "^4.0.2" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.1" - postcss-minify-params "^4.0.1" - postcss-minify-selectors "^4.0.1" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.1" - postcss-normalize-positions "^4.0.1" - postcss-normalize-repeat-style "^4.0.1" - postcss-normalize-string "^4.0.1" - postcss-normalize-timing-functions "^4.0.1" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.1" - postcss-ordered-values "^4.1.1" - postcss-reduce-initial "^4.0.2" - postcss-reduce-transforms "^4.0.1" - postcss-svgo "^4.0.1" - postcss-unique-selectors "^4.0.1" - -cssnano-util-get-arguments@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" - integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= - -cssnano-util-get-match@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" - integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= - -cssnano-util-raw-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" - integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== - dependencies: - postcss "^7.0.0" - -cssnano-util-same-parent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" - integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== - -cssnano@^4.1.0: - version "4.1.7" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.7.tgz#0bf112294bec103ab5f68d3f805732c8325a0b1b" - integrity sha512-AiXL90l+MDuQmRNyypG2P7ux7K4XklxYzNNUd5HXZCNcH8/N9bHPcpN97v8tXgRVeFL/Ed8iP8mVmAAu0ZpT7A== - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.5" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -csso@^3.5.0: - version "3.5.1" - resolved "https://registry.yarnpkg.com/csso/-/csso-3.5.1.tgz#7b9eb8be61628973c1b261e169d2f024008e758b" - integrity sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg== - dependencies: - css-tree "1.0.0-alpha.29" - -cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0", cssom@^0.3.4: - version "0.3.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.4.tgz#8cd52e8a3acfd68d3aed38ee0a640177d2f9d797" - integrity sha512-+7prCSORpXNeR4/fUP3rL+TzqtiFfhMvTd7uEqMdgPvLPt4+uzFUeufx5RHjGTACCargg/DiEt/moMQmvnfkog== - -cssstyle@^1.0.0, cssstyle@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.1.1.tgz#18b038a9c44d65f7a8e428a653b9f6fe42faf5fb" - integrity sha512-364AI1l/M5TYcFH83JnOH/pSqgaNnKmYgKrm0didZMGKWjQB60dymwWy1rKUgL3J1ffdq9xVi2yGLHdSjjSNog== - dependencies: - cssom "0.3.x" - -cyclist@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" - integrity sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA= - -damerau-levenshtein@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514" - integrity sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ= - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -data-urls@^1.0.0, data-urls@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe" - integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ== - dependencies: - abab "^2.0.0" - whatwg-mimetype "^2.2.0" - whatwg-url "^7.0.0" - -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - integrity sha1-6vQ5/U1ISK105cx9vvIAZyueNFs= - -debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@=3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@^3.1.0: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== - dependencies: - ms "^2.1.1" - -decamelize@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decamelize@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-2.0.0.tgz#656d7bbc8094c4c788ea53c5840908c9c7d063c7" - integrity sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg== - dependencies: - xregexp "4.0.0" - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= - -deep-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - -deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -default-gateway@^2.6.0: - version "2.7.2" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-2.7.2.tgz#b7ef339e5e024b045467af403d50348db4642d0f" - integrity sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ== - dependencies: - execa "^0.10.0" - ip-regex "^2.1.0" - -default-require-extensions@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" - integrity sha1-836hXT4T/9m0N9M+GnW1+5eHTLg= - dependencies: - strip-bom "^2.0.0" - -define-properties@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -del@^2.0.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" - integrity sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag= - dependencies: - globby "^5.0.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - rimraf "^2.2.8" - -del@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" - integrity sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU= - dependencies: - globby "^6.1.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - p-map "^1.1.1" - pify "^3.0.0" - rimraf "^2.2.8" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -des.js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" - integrity sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= - dependencies: - repeating "^2.0.0" - -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - -detect-newline@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" - integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= - -detect-node@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== - -detect-port-alt@1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -diff@^3.2.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - integrity sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag== - dependencies: - arrify "^1.0.1" - path-type "^3.0.0" - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - -dns-packet@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" - integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg== - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= - dependencies: - buffer-indexof "^1.0.0" - -doctrine@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= - dependencies: - esutils "^2.0.2" - isarray "^1.0.0" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -dom-converter@~0.2: - version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - -dom-serializer@0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" - integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= - dependencies: - domelementtype "~1.1.1" - entities "~1.1.1" - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - -domelementtype@1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.2.1.tgz#578558ef23befac043a1abb0db07635509393479" - integrity sha512-SQVCLFS2E7G5CRCMdn6K9bIhRj1bS6QBWZfF0TUPh4V/BbqrQ619IdSS3/izn0FZ+9l+uODzaZjb08fjOfablA== - -domelementtype@~1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" - integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= - -domexception@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" - integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug== - dependencies: - webidl-conversions "^4.0.2" - -domhandler@2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" - integrity sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ= - dependencies: - domelementtype "1" - -domutils@1.1: - version "1.1.6" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" - integrity sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU= - dependencies: - domelementtype "1" - -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -dot-prop@^4.1.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" - integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ== - dependencies: - is-obj "^1.0.0" - -dotenv-expand@4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-4.2.0.tgz#def1f1ca5d6059d24a766e587942c21106ce1275" - integrity sha1-3vHxyl1gWdJKdm5YeULCEQbOEnU= - -dotenv@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.0.0.tgz#24e37c041741c5f4b25324958ebbc34bca965935" - integrity sha512-FlWbnhgjtwD+uNLUGHbMykMOYQaTivdHEmYwAKFjn6GKe/CqY0fNae93ZHTd20snh9ZLr8mTzIL9m0APQ1pjQg== - -duplexer@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= - -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.6.1.tgz#b1a7a29c4abfd639585efaecce80d666b1e34125" - integrity sha512-vM58DwdnKmty+FSPzT14K9JXb90H+j5emaR4KYbr2KTIz00WHGbWOe5ghQTx233ZCLZtrGDALzKwcjEtSt35mA== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -electron-to-chromium@^1.3.62, electron-to-chromium@^1.3.82: - version "1.3.82" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.82.tgz#7d13ae4437d2a783de3f4efba96b186c540b67b1" - integrity sha512-NI4nB2IWGcU4JVT1AE8kBb/dFor4zjLHMLsOROPahppeHrR0FG5uslxMmkp/thO1MvPjM2xhlKoY29/I60s0ew== - -elliptic@^6.0.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" - integrity sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ== - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -emoji-regex@^6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2" - integrity sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ== - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= - dependencies: - iconv-lite "~0.4.13" - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" - integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" - integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - tapable "^1.0.0" - -entities@~1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== - dependencies: - prr "~1.0.1" - -error-ex@^1.2.0, error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.5.1, es-abstract@^1.6.1, es-abstract@^1.7.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165" - integrity sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA== - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.1" - has "^1.0.1" - is-callable "^1.1.3" - is-regex "^1.0.4" - -es-to-primitive@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" - integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escodegen@^1.11.0, escodegen@^1.9.1: - version "1.11.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz#b27a9389481d5bfd5bec76f7bb1eb3f8f4556589" - integrity sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw== - dependencies: - esprima "^3.1.3" - estraverse "^4.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - -eslint-config-react-app@^3.0.5: - version "3.0.5" - resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-3.0.5.tgz#d199088ab486d7ccc56d40dedcb1482b01934fb2" - integrity sha512-GjPuy0pbaCkl4+9wm8p0xpl/x/AGFy3wKuju3WNVefDNDDu8T6Ap1OFMDDJbYnOAI+4jfyAE3VT06lAYcJVpdw== - dependencies: - confusing-browser-globals "^1.0.5" - -eslint-import-resolver-node@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" - integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== - dependencies: - debug "^2.6.9" - resolve "^1.5.0" - -eslint-loader@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-2.1.1.tgz#2a9251523652430bfdd643efdb0afc1a2a89546a" - integrity sha512-1GrJFfSevQdYpoDzx8mEE2TDWsb/zmFuY09l6hURg1AeFIKQOvZ+vH0UPjzmd1CZIbfTV5HUkMeBmFiDBkgIsQ== - dependencies: - loader-fs-cache "^1.0.0" - loader-utils "^1.0.2" - object-assign "^4.0.1" - object-hash "^1.1.4" - rimraf "^2.6.1" - -eslint-module-utils@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz#b270362cd88b1a48ad308976ce7fa54e98411746" - integrity sha1-snA2LNiLGkitMIl2zn+lTphBF0Y= - dependencies: - debug "^2.6.8" - pkg-dir "^1.0.0" - -eslint-plugin-flowtype@2.50.1: - version "2.50.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.1.tgz#36d4c961ac8b9e9e1dc091d3fba0537dad34ae8a" - integrity sha512-9kRxF9hfM/O6WGZcZPszOVPd2W0TLHBtceulLTsGfwMPtiCCLnCW0ssRiOOiXyqrCA20pm1iXdXm7gQeN306zQ== - dependencies: - lodash "^4.17.10" - -eslint-plugin-import@2.14.0: - version "2.14.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz#6b17626d2e3e6ad52cfce8807a845d15e22111a8" - integrity sha512-FpuRtniD/AY6sXByma2Wr0TXvXJ4nA/2/04VPlfpmUDPOpOY264x+ILiwnrk/k4RINgDAyFZByxqPUbSQ5YE7g== - dependencies: - contains-path "^0.1.0" - debug "^2.6.8" - doctrine "1.5.0" - eslint-import-resolver-node "^0.3.1" - eslint-module-utils "^2.2.0" - has "^1.0.1" - lodash "^4.17.4" - minimatch "^3.0.3" - read-pkg-up "^2.0.0" - resolve "^1.6.0" - -eslint-plugin-jsx-a11y@6.1.2: - version "6.1.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.1.2.tgz#69bca4890b36dcf0fe16dd2129d2d88b98f33f88" - integrity sha512-7gSSmwb3A+fQwtw0arguwMdOdzmKUgnUcbSNlo+GjKLAQFuC2EZxWqG9XHRI8VscBJD5a8raz3RuxQNFW+XJbw== - dependencies: - aria-query "^3.0.0" - array-includes "^3.0.3" - ast-types-flow "^0.0.7" - axobject-query "^2.0.1" - damerau-levenshtein "^1.0.4" - emoji-regex "^6.5.1" - has "^1.0.3" - jsx-ast-utils "^2.0.1" - -eslint-plugin-react@7.11.1: - version "7.11.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.11.1.tgz#c01a7af6f17519457d6116aa94fc6d2ccad5443c" - integrity sha512-cVVyMadRyW7qsIUh3FHp3u6QHNhOgVrLQYdQEB1bPWBsgbNCHdFAeNMquBMCcZJu59eNthX053L70l7gRt4SCw== - dependencies: - array-includes "^3.0.3" - doctrine "^2.1.0" - has "^1.0.3" - jsx-ast-utils "^2.0.1" - prop-types "^15.6.2" - -eslint-scope@3.7.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" - integrity sha1-PWPD7f2gLgbgGkUq2IyqzHzctug= - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-scope@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172" - integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-utils@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512" - integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q== - -eslint-visitor-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" - integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ== - -eslint@5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.6.0.tgz#b6f7806041af01f71b3f1895cbb20971ea4b6223" - integrity sha512-/eVYs9VVVboX286mBK7bbKnO1yamUy2UCRjiY6MryhQL2PaaXCExsCQ2aO83OeYRhU2eCU/FMFP+tVMoOrzNrA== - dependencies: - "@babel/code-frame" "^7.0.0" - ajv "^6.5.3" - chalk "^2.1.0" - cross-spawn "^6.0.5" - debug "^3.1.0" - doctrine "^2.1.0" - eslint-scope "^4.0.0" - eslint-utils "^1.3.1" - eslint-visitor-keys "^1.0.0" - espree "^4.0.0" - esquery "^1.0.1" - esutils "^2.0.2" - file-entry-cache "^2.0.0" - functional-red-black-tree "^1.0.1" - glob "^7.1.2" - globals "^11.7.0" - ignore "^4.0.6" - imurmurhash "^0.1.4" - inquirer "^6.1.0" - is-resolvable "^1.1.0" - js-yaml "^3.12.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.5" - minimatch "^3.0.4" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - optionator "^0.8.2" - path-is-inside "^1.0.2" - pluralize "^7.0.0" - progress "^2.0.0" - regexpp "^2.0.0" - require-uncached "^1.0.3" - semver "^5.5.1" - strip-ansi "^4.0.0" - strip-json-comments "^2.0.1" - table "^4.0.3" - text-table "^0.2.0" - -espree@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-4.1.0.tgz#728d5451e0fd156c04384a7ad89ed51ff54eb25f" - integrity sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w== - dependencies: - acorn "^6.0.2" - acorn-jsx "^5.0.0" - eslint-visitor-keys "^1.0.0" - -esprima@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" - integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" - integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== - dependencies: - estraverse "^4.0.0" - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - -estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= - -esutils@^2.0.0, esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -eventemitter3@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" - integrity sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== - -events@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= - -eventsource@0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" - integrity sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI= - dependencies: - original ">=0.0.5" - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -exec-sh@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36" - integrity sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw== - dependencies: - merge "^1.2.0" - -execa@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" - integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw== - dependencies: - cross-spawn "^6.0.0" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= - dependencies: - is-posix-bracket "^0.1.0" - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= - dependencies: - fill-range "^2.1.0" - -expand-tilde@^2.0.0, expand-tilde@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= - dependencies: - homedir-polyfill "^1.0.1" - -expect@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-23.6.0.tgz#1e0c8d3ba9a581c87bd71fb9bc8862d443425f98" - integrity sha512-dgSoOHgmtn/aDGRVFWclQyPDKl2CQRq0hmIEoUAuQs/2rn2NcvCWcSCovm6BLeuB/7EZuLGu2QfnR+qRt5OM4w== - dependencies: - ansi-styles "^3.2.0" - jest-diff "^23.6.0" - jest-get-type "^22.1.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - -express@^4.16.2: - version "4.16.4" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.4.tgz#fddef61926109e24c515ea97fd2f1bdbf62df12e" - integrity sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg== - dependencies: - accepts "~1.3.5" - array-flatten "1.1.1" - body-parser "1.18.3" - content-disposition "0.5.2" - content-type "~1.0.4" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~1.1.2" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.1.1" - fresh "0.5.2" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.2" - path-to-regexp "0.1.7" - proxy-addr "~2.0.4" - qs "6.5.2" - range-parser "~1.2.0" - safe-buffer "5.1.2" - send "0.16.2" - serve-static "1.13.2" - setprototypeof "1.1.0" - statuses "~1.4.0" - type-is "~1.6.16" - utils-merge "1.0.1" - vary "~1.1.2" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -external-editor@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" - integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= - dependencies: - is-extglob "^1.0.0" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ= - -fast-deep-equal@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" - integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= - -fast-glob@^2.0.2: - version "2.2.3" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.3.tgz#d09d378e9ef6b0076a0fa1ba7519d9d4d9699c28" - integrity sha512-NiX+JXjnx43RzvVFwRWfPKo4U+1BrK5pJPsHQdKMlLoFHrrGktXglQhHliSihWAq+m1z6fHk3uwGHrtRbS9vLA== - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.0.1" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.1" - micromatch "^3.1.10" - -fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= - -fast-levenshtein@~2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -fastparse@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" - integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ== - -faye-websocket@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= - dependencies: - websocket-driver ">=0.5.1" - -faye-websocket@~0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" - integrity sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg= - dependencies: - websocket-driver ">=0.5.1" - -fb-watchman@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" - integrity sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg= - dependencies: - bser "^2.0.0" - -fbjs@^0.8.5: - version "0.8.17" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" - integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90= - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.18" - -figgy-pudding@^3.1.0, figgy-pudding@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" - integrity sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w== - -figures@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" - integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= - dependencies: - escape-string-regexp "^1.0.5" - -file-entry-cache@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" - integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= - dependencies: - flat-cache "^1.2.1" - object-assign "^4.0.1" - -file-loader@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-2.0.0.tgz#39749c82f020b9e85901dcff98e8004e6401cfde" - integrity sha512-YCsBfd1ZGCyonOKLxPiKPdu+8ld9HAaMEvJewzz+b2eTF7uL5Zm/HdBF6FjCrpCMRq25Mi0U1gl4pwn2TlH7hQ== - dependencies: - loader-utils "^1.0.2" - schema-utils "^1.0.0" - -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= - -fileset@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" - integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA= - dependencies: - glob "^7.0.3" - minimatch "^3.0.3" - -filesize@3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz#090bb3ee01b6f801a8a8be99d31710b3422bb317" - integrity sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg== - -fill-range@^2.1.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" - integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^3.0.0" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" - integrity sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.2" - statuses "~1.4.0" - unpipe "~1.0.0" - -find-cache-dir@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" - integrity sha1-yN765XyKUqinhPnjHFfHQumToLk= - dependencies: - commondir "^1.0.1" - mkdirp "^0.5.1" - pkg-dir "^1.0.0" - -find-cache-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" - integrity sha1-kojj6ePMN0hxfTnq3hfPcfww7m8= - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^2.0.0" - -find-cache-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.0.0.tgz#4c1faed59f45184530fb9d7fa123a4d04a98472d" - integrity sha512-LDUY6V1Xs5eFskUVYtIwatojt6+9xC9Chnlk/jYOOvn3FAFfSaWddxahDGyNHh0b2dMXa6YW2m0tk8TdVaXHlA== - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^3.0.0" - -find-up@3.0.0, find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -flat-cache@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481" - integrity sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE= - dependencies: - circular-json "^0.3.1" - del "^2.0.2" - graceful-fs "^4.1.2" - write "^0.2.1" - -flatten@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" - integrity sha1-2uRqnXj74lKSJYzB54CkHZXAN4I= - -flush-write-stream@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.3.tgz#c5d586ef38af6097650b49bc41b55fabb19f35bd" - integrity sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw== - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.4" - -follow-redirects@^1.0.0: - version "1.5.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.9.tgz#c9ed9d748b814a39535716e531b9196a845d89c6" - integrity sha512-Bh65EZI/RU8nx0wbYF9shkFZlqLP+6WT/5FnA3cE/djNSuKNHJEinGGZgu/cQEkeeb2GdFOgenAmn8qaqYke2w== - dependencies: - debug "=3.1.0" - -for-in@^0.1.3: - version "0.1.8" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= - -for-in@^1.0.1, for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= - -for-own@^0.1.3, for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= - dependencies: - for-in "^1.0.1" - -for-own@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - integrity sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs= - dependencies: - for-in "^1.0.1" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -fork-ts-checker-webpack-plugin-alt@0.4.14: - version "0.4.14" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin-alt/-/fork-ts-checker-webpack-plugin-alt-0.4.14.tgz#1bd6c0d97b7d4682dde61255fcbd78b72f7473a0" - integrity sha512-s0wjOBuPdylMRBzZ4yO8LSJuzem3g0MYZFxsjRXrFDQyL5KJBVSq30+GoHM/t/r2CRU4tI6zi04sq6OXK0UYnw== - dependencies: - babel-code-frame "^6.22.0" - chalk "^2.4.1" - chokidar "^2.0.4" - lodash "^4.17.11" - micromatch "^3.1.10" - minimatch "^3.0.4" - resolve "^1.5.0" - tapable "^1.0.0" - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@7.0.0, fs-extra@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.0.tgz#8cc3f47ce07ef7b3593a11b9fb245f7e34c041d6" - integrity sha512-EglNDLRpmaTWiD/qraZn6HREAEAHJcJOmxNEYwq6xeMKnVMAy3GUcFB+wXt2C6k4CNvB/mP1y/U3dzvKKj5OtQ== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" - integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-minipass@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d" - integrity sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ== - dependencies: - minipass "^2.2.1" - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@1.2.4, fsevents@^1.2.2, fsevents@^1.2.3: - version "1.2.4" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" - integrity sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg== - dependencies: - nan "^2.9.2" - node-pre-gyp "^0.10.0" - -function-bind@^1.1.0, function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== - -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz#b877b49a5c16aefac3655f2ed2ea5b684df8d203" - integrity sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg== - -get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= - dependencies: - is-glob "^2.0.0" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= - -glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -global-modules@1.0.0, global-modules@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" - integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== - dependencies: - global-prefix "^1.0.1" - is-windows "^1.0.1" - resolve-dir "^1.0.0" - -global-prefix@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" - integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= - dependencies: - expand-tilde "^2.0.2" - homedir-polyfill "^1.0.1" - ini "^1.3.4" - is-windows "^1.0.1" - which "^1.2.14" - -globals@^11.1.0, globals@^11.7.0: - version "11.8.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.8.0.tgz#c1ef45ee9bed6badf0663c5cb90e8d1adec1321d" - integrity sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA== - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - -globby@8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.1.tgz#b5ad48b8aa80b35b814fc1281ecc851f1d2b5b50" - integrity sha512-oMrYrJERnKBLXNLVTqhm3vPEdJ/b2ZE28xN4YARiix1NOIOBPEpOUnm844K1iu/BkphCaf2WNFwMszv8Soi1pw== - dependencies: - array-union "^1.0.1" - dir-glob "^2.0.0" - fast-glob "^2.0.2" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -globby@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" - integrity sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0= - dependencies: - array-union "^1.0.1" - arrify "^1.0.0" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - integrity sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg= - -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= - -gzip-size@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.0.0.tgz#a55ecd99222f4c48fd8c01c625ce3b349d0a0e80" - integrity sha512-5iI7omclyqrnWw4XbXAmGhPsABkSIDQonv2K0h61lybgofWa6iZyvrI3r2zsJH4P8Nb64fFVzlvfhs0g7BBxAA== - dependencies: - duplexer "^0.1.1" - pify "^3.0.0" - -h2x-core@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/h2x-core/-/h2x-core-1.1.1.tgz#7fb31ab28e30ebf11818e3c7d183487ecf489f9f" - integrity sha512-LdXe4Irs731knLtHgLyFrnJCumfiqXXQwKN1IMUhi37li29PLfLbMDvfK7Rk4wmgHLKP+sIITT1mcJV4QsC3nw== - dependencies: - h2x-generate "^1.1.0" - h2x-parse "^1.1.1" - h2x-traverse "^1.1.0" - -h2x-generate@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-generate/-/h2x-generate-1.1.0.tgz#c2c98c60070e1eed231e482d5826c3c5dab2a9ba" - integrity sha512-L7Hym0yb20QIjvqeULUPOeh/cyvScdOAyJ6oRlh5dF0+w92hf3OiTk1q15KBijde7jGEe+0R4aOmtW8gkPNIzg== - dependencies: - h2x-traverse "^1.1.0" - -h2x-parse@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/h2x-parse/-/h2x-parse-1.1.1.tgz#875712cd3be75cf736c610d279b8653b24f58385" - integrity sha512-WRSmPF+tIWuUXVEZaYRhcZx/JGEJx8LjZpDDtrvMr5m/GTR0NerydCik5dRzcKXPWCtfXxuJRLR4v2P4HB2B1A== - dependencies: - h2x-types "^1.1.0" - jsdom ">=11.0.0" - -h2x-plugin-jsx@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/h2x-plugin-jsx/-/h2x-plugin-jsx-1.2.0.tgz#211fa02e5c4e0a07307b0005629923910e631c01" - integrity sha512-a7Vb3BHhJJq0dPDNdqguEyQirENkVsFtvM2YkiaT5h/fmGhmM1nDy3BLeJeSKi2tL2g9v4ykm2Z+GG9QrhDgPA== - dependencies: - h2x-types "^1.1.0" - -h2x-traverse@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-traverse/-/h2x-traverse-1.1.0.tgz#194b36c593f4e20a754dee47fa6b2288647b2271" - integrity sha512-1ND8ZbISLSUgpLHYJRvhvElITvs0g44L7RxjeXViz5XP6rooa+FtXTFLByl2Yg01zj2txubifHIuU4pgvj8l+A== - dependencies: - h2x-types "^1.1.0" - -h2x-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-types/-/h2x-types-1.1.0.tgz#ec0d5e3674e2207269f32976ac9c82aaff4818e6" - integrity sha512-QdH5qfLcdF209UsCdM0ZNZ9Dwm2PHvMfeLZtivBrjX3Y/df4US2pwsUC4HBfWhye/mx/t6puODeC7Oacb/Ol8g== - -handle-thing@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= - -handlebars@^4.0.3: - version "4.1.2" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.2.tgz#b6b37c1ced0306b221e094fc7aca3ec23b131b67" - integrity sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw== - dependencies: - neo-async "^2.6.0" - optimist "^0.6.1" - source-map "^0.6.1" - optionalDependencies: - uglify-js "^3.1.4" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.0.tgz#44657f5688a22cfd4b72486e81b3a3fb11742c29" - integrity sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA== - dependencies: - ajv "^5.3.0" - har-schema "^2.0.0" - -harmony-reflect@^1.4.6: - version "1.6.1" - resolved "https://registry.yarnpkg.com/harmony-reflect/-/harmony-reflect-1.6.1.tgz#c108d4f2bb451efef7a37861fdbdae72c9bdefa9" - integrity sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA== - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" - integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.0, has@^1.0.1, has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hash-base@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.5" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.5.tgz#e38ab4b85dfb1e0c40fe9265c0e9b54854c23812" - integrity sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -he@1.2.x: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -hex-color-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" - integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoek@4.x.x: - version "4.2.1" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.1.tgz#9634502aa12c445dd5a7c5734b572bb8738aacbb" - integrity sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA== - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -homedir-polyfill@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" - integrity sha1-TCu8inWJmP7r9e1oWA921GdotLw= - dependencies: - parse-passwd "^1.0.0" - -hoopy@^0.1.2: - version "0.1.4" - resolved "https://registry.yarnpkg.com/hoopy/-/hoopy-0.1.4.tgz#609207d661100033a9a9402ad3dea677381c1b1d" - integrity sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ== - -hosted-git-info@^2.1.4: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -hsl-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" - integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= - -hsla-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" - integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= - -html-comment-regex@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" - integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== - -html-encoding-sniffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" - integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw== - dependencies: - whatwg-encoding "^1.0.1" - -html-entities@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" - integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8= - -html-minifier@^3.2.3: - version "3.5.21" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.21.tgz#d0040e054730e354db008463593194015212d20c" - integrity sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA== - dependencies: - camel-case "3.0.x" - clean-css "4.2.x" - commander "2.17.x" - he "1.2.x" - param-case "2.1.x" - relateurl "0.2.x" - uglify-js "3.4.x" - -html-webpack-plugin@4.0.0-alpha.2: - version "4.0.0-alpha.2" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.0.0-alpha.2.tgz#7745967e389a57a098e26963f328ebe4c19b598d" - integrity sha512-tyvhjVpuGqD7QYHi1l1drMQTg5i+qRxpQEGbdnYFREgOKy7aFDf/ocQ/V1fuEDlQx7jV2zMap3Hj2nE9i5eGXw== - dependencies: - "@types/tapable" "1.0.2" - html-minifier "^3.2.3" - loader-utils "^1.1.0" - lodash "^4.17.10" - pretty-error "^2.0.2" - tapable "^1.0.0" - util.promisify "1.0.0" - -htmlparser2@~3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" - integrity sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4= - dependencies: - domelementtype "1" - domhandler "2.1" - domutils "1.1" - readable-stream "1.0" - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - -http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.4.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.0.tgz#d65edbede84349d0dc30320815a15d39cc3cbbd8" - integrity sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w== - -http-proxy-middleware@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab" - integrity sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q== - dependencies: - http-proxy "^1.16.2" - is-glob "^4.0.0" - lodash "^4.17.5" - micromatch "^3.1.9" - -http-proxy@^1.16.2: - version "1.17.0" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" - integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g== - dependencies: - eventemitter3 "^3.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= - -iconv-lite@0.4.23: - version "0.4.23" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" - integrity sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= - -icss-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" - integrity sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI= - dependencies: - postcss "^6.0.1" - -identity-obj-proxy@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" - integrity sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ= - dependencies: - harmony-reflect "^1.4.6" - -ieee754@^1.1.4: - version "1.1.12" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b" - integrity sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= - -ignore-walk@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" - integrity sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ== - dependencies: - minimatch "^3.0.4" - -ignore@^3.3.5: - version "3.3.10" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" - integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -immer@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/immer/-/immer-1.7.2.tgz#a51e9723c50b27e132f6566facbec1c85fc69547" - integrity sha512-4Urocwu9+XLDJw4Tc6ZCg7APVjjLInCFvO4TwGsAYV5zT6YYSor14dsZR0+0tHlDIN92cFUOq+i7fC00G5vTxA== - -import-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" - integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= - dependencies: - import-from "^2.1.0" - -import-from@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" - integrity sha1-M1238qev/VOqpHHUuAId7ja387E= - dependencies: - resolve-from "^3.0.0" - -import-local@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" - integrity sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ== - dependencies: - pkg-dir "^2.0.0" - resolve-cwd "^2.0.0" - -import-local@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" - integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== - dependencies: - pkg-dir "^3.0.0" - resolve-cwd "^2.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= - -ini@^1.3.4, ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== - -inquirer@6.2.0, inquirer@^6.1.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.0.tgz#51adcd776f661369dc1e894859c2560a224abdd8" - integrity sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^3.0.0" - figures "^2.0.0" - lodash "^4.17.10" - mute-stream "0.0.7" - run-async "^2.2.0" - rxjs "^6.1.0" - string-width "^2.1.0" - strip-ansi "^4.0.0" - through "^2.3.6" - -internal-ip@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-3.0.1.tgz#df5c99876e1d2eb2ea2d74f520e3f669a00ece27" - integrity sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q== - dependencies: - default-gateway "^2.6.0" - ipaddr.js "^1.5.2" - -invariant@^2.2.2, invariant@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= - -invert-kv@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" - integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== - -ip-regex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" - integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= - -ip@^1.1.0, ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= - -ipaddr.js@1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.0.tgz#eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e" - integrity sha1-6qM9bd16zo9/b+DJygRA5wZzix4= - -ipaddr.js@^1.5.2: - version "1.8.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.1.tgz#fa4b79fa47fd3def5e3b159825161c0a519c9427" - integrity sha1-+kt5+kf9Pe9eOxWYJRYcClGclCc= - -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= - dependencies: - binary-extensions "^1.0.0" - -is-buffer@^1.0.2, is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - integrity sha1-VAVy0096wxGfj3bDDLwbHgN6/74= - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.3, is-callable@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" - integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== - -is-ci@^1.0.10: - version "1.2.1" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" - integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg== - dependencies: - ci-info "^1.5.0" - -is-color-stop@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" - integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= - dependencies: - css-color-names "^0.0.4" - hex-color-regex "^1.1.0" - hsl-regex "^1.0.0" - hsla-regex "^1.0.0" - rgb-regex "^1.0.1" - rgba-regex "^1.0.0" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-generator-fn@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" - integrity sha1-lp1J4bszKfa7fwkIm+JleLLd1Go= - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= - dependencies: - is-extglob "^1.0.0" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" - integrity sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A= - dependencies: - is-extglob "^2.1.1" - -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= - dependencies: - kind-of "^3.0.2" - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== - -is-obj@^1.0.0, is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= - -is-path-in-cwd@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" - integrity sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ== - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= - dependencies: - path-is-inside "^1.0.1" - -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU= - -is-promise@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" - integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= - -is-regex@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= - dependencies: - has "^1.0.1" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-resolvable@^1.0.0, is-resolvable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - -is-root@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.0.0.tgz#838d1e82318144e5a6f77819d90207645acc7019" - integrity sha512-F/pJIk8QD6OX5DNhRB7hWamLsUilmkDGho48KbgZ6xg/lmAZXHxzXQ91jzB3yRSw5kdQGGGc4yz8HYhTYIMWPg== - -is-stream@^1.0.1, is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - -is-svg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" - integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== - dependencies: - html-comment-regex "^1.1.0" - -is-symbol@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" - integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== - dependencies: - has-symbols "^1.0.0" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= - -is-windows@^1.0.1, is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isemail@3.x.x: - version "3.2.0" - resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.2.0.tgz#59310a021931a9fb06bbb51e155ce0b3f236832c" - integrity sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg== - dependencies: - punycode "2.x.x" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isomorphic-fetch@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -istanbul-api@^1.3.1: - version "1.3.7" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.7.tgz#a86c770d2b03e11e3f778cd7aedd82d2722092aa" - integrity sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA== - dependencies: - async "^2.1.4" - fileset "^2.0.2" - istanbul-lib-coverage "^1.2.1" - istanbul-lib-hook "^1.2.2" - istanbul-lib-instrument "^1.10.2" - istanbul-lib-report "^1.1.5" - istanbul-lib-source-maps "^1.2.6" - istanbul-reports "^1.5.1" - js-yaml "^3.7.0" - mkdirp "^0.5.1" - once "^1.4.0" - -istanbul-lib-coverage@^1.2.0, istanbul-lib-coverage@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0" - integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ== - -istanbul-lib-hook@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz#bc6bf07f12a641fbf1c85391d0daa8f0aea6bf86" - integrity sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw== - dependencies: - append-transform "^0.4.0" - -istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.10.2: - version "1.10.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz#1f55ed10ac3c47f2bdddd5307935126754d0a9ca" - integrity sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A== - dependencies: - babel-generator "^6.18.0" - babel-template "^6.16.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" - babylon "^6.18.0" - istanbul-lib-coverage "^1.2.1" - semver "^5.3.0" - -istanbul-lib-report@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz#f2a657fc6282f96170aaf281eb30a458f7f4170c" - integrity sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw== - dependencies: - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - path-parse "^1.0.5" - supports-color "^3.1.2" - -istanbul-lib-source-maps@^1.2.4, istanbul-lib-source-maps@^1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz#37b9ff661580f8fca11232752ee42e08c6675d8f" - integrity sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg== - dependencies: - debug "^3.1.0" - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - rimraf "^2.6.1" - source-map "^0.5.3" - -istanbul-reports@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.5.1.tgz#97e4dbf3b515e8c484caea15d6524eebd3ff4e1a" - integrity sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw== - dependencies: - handlebars "^4.0.3" - -jest-changed-files@^23.4.2: - version "23.4.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-23.4.2.tgz#1eed688370cd5eebafe4ae93d34bb3b64968fe83" - integrity sha512-EyNhTAUWEfwnK0Is/09LxoqNDOn7mU7S3EHskG52djOFS/z+IT0jT3h3Ql61+dklcG7bJJitIWEMB4Sp1piHmA== - dependencies: - throat "^4.0.0" - -jest-cli@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-23.6.0.tgz#61ab917744338f443ef2baa282ddffdd658a5da4" - integrity sha512-hgeD1zRUp1E1zsiyOXjEn4LzRLWdJBV//ukAHGlx6s5mfCNJTbhbHjgxnDUXA8fsKWN/HqFFF6X5XcCwC/IvYQ== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.1" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.1.11" - import-local "^1.0.0" - is-ci "^1.0.10" - istanbul-api "^1.3.1" - istanbul-lib-coverage "^1.2.0" - istanbul-lib-instrument "^1.10.1" - istanbul-lib-source-maps "^1.2.4" - jest-changed-files "^23.4.2" - jest-config "^23.6.0" - jest-environment-jsdom "^23.4.0" - jest-get-type "^22.1.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve-dependencies "^23.6.0" - jest-runner "^23.6.0" - jest-runtime "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - jest-watcher "^23.4.0" - jest-worker "^23.2.0" - micromatch "^2.3.11" - node-notifier "^5.2.1" - prompts "^0.1.9" - realpath-native "^1.0.0" - rimraf "^2.5.4" - slash "^1.0.0" - string-length "^2.0.0" - strip-ansi "^4.0.0" - which "^1.2.12" - yargs "^11.0.0" - -jest-config@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-23.6.0.tgz#f82546a90ade2d8c7026fbf6ac5207fc22f8eb1d" - integrity sha512-i8V7z9BeDXab1+VNo78WM0AtWpBRXJLnkT+lyT+Slx/cbP5sZJ0+NDuLcmBE5hXAoK0aUp7vI+MOxR+R4d8SRQ== - dependencies: - babel-core "^6.0.0" - babel-jest "^23.6.0" - chalk "^2.0.1" - glob "^7.1.1" - jest-environment-jsdom "^23.4.0" - jest-environment-node "^23.4.0" - jest-get-type "^22.1.0" - jest-jasmine2 "^23.6.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - pretty-format "^23.6.0" - -jest-diff@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-23.6.0.tgz#1500f3f16e850bb3d71233408089be099f610c7d" - integrity sha512-Gz9l5Ov+X3aL5L37IT+8hoCUsof1CVYBb2QEkOupK64XyRR3h+uRpYIm97K7sY8diFxowR8pIGEdyfMKTixo3g== - dependencies: - chalk "^2.0.1" - diff "^3.2.0" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" - -jest-docblock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7" - integrity sha1-8IXh8YVI2Z/dabICB+b9VdkTg6c= - dependencies: - detect-newline "^2.1.0" - -jest-each@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-23.6.0.tgz#ba0c3a82a8054387016139c733a05242d3d71575" - integrity sha512-x7V6M/WGJo6/kLoissORuvLIeAoyo2YqLOoCDkohgJ4XOXSqOtyvr8FbInlAWS77ojBsZrafbozWoKVRdtxFCg== - dependencies: - chalk "^2.0.1" - pretty-format "^23.6.0" - -jest-environment-jsdom@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-23.4.0.tgz#056a7952b3fea513ac62a140a2c368c79d9e6023" - integrity sha1-BWp5UrP+pROsYqFAosNox52eYCM= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" - jsdom "^11.5.1" - -jest-environment-node@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-23.4.0.tgz#57e80ed0841dea303167cce8cd79521debafde10" - integrity sha1-V+gO0IQd6jAxZ8zozXlSHeuv3hA= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" - -jest-get-type@^22.1.0: - version "22.4.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4" - integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w== - -jest-haste-map@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.6.0.tgz#2e3eb997814ca696d62afdb3f2529f5bbc935e16" - integrity sha512-uyNhMyl6dr6HaXGHp8VF7cK6KpC6G9z9LiMNsst+rJIZ8l7wY0tk8qwjPmEghczojZ2/ZhtEdIabZ0OQRJSGGg== - dependencies: - fb-watchman "^2.0.0" - graceful-fs "^4.1.11" - invariant "^2.2.4" - jest-docblock "^23.2.0" - jest-serializer "^23.0.1" - jest-worker "^23.2.0" - micromatch "^2.3.11" - sane "^2.0.0" - -jest-jasmine2@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-23.6.0.tgz#840e937f848a6c8638df24360ab869cc718592e0" - integrity sha512-pe2Ytgs1nyCs8IvsEJRiRTPC0eVYd8L/dXJGU08GFuBwZ4sYH/lmFDdOL3ZmvJR8QKqV9MFuwlsAi/EWkFUbsQ== - dependencies: - babel-traverse "^6.0.0" - chalk "^2.0.1" - co "^4.6.0" - expect "^23.6.0" - is-generator-fn "^1.0.0" - jest-diff "^23.6.0" - jest-each "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - pretty-format "^23.6.0" - -jest-leak-detector@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-23.6.0.tgz#e4230fd42cf381a1a1971237ad56897de7e171de" - integrity sha512-f/8zA04rsl1Nzj10HIyEsXvYlMpMPcy0QkQilVZDFOaPbv2ur71X5u2+C4ZQJGyV/xvVXtCCZ3wQ99IgQxftCg== - dependencies: - pretty-format "^23.6.0" - -jest-matcher-utils@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-23.6.0.tgz#726bcea0c5294261a7417afb6da3186b4b8cac80" - integrity sha512-rosyCHQfBcol4NsckTn01cdelzWLU9Cq7aaigDf8VwwpIRvWE/9zLgX2bON+FkEW69/0UuYslUe22SOdEf2nog== - dependencies: - chalk "^2.0.1" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" - -jest-message-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-23.4.0.tgz#17610c50942349508d01a3d1e0bda2c079086a9f" - integrity sha1-F2EMUJQjSVCNAaPR4L2iwHkIap8= - dependencies: - "@babel/code-frame" "^7.0.0-beta.35" - chalk "^2.0.1" - micromatch "^2.3.11" - slash "^1.0.0" - stack-utils "^1.0.1" - -jest-mock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-23.2.0.tgz#ad1c60f29e8719d47c26e1138098b6d18b261134" - integrity sha1-rRxg8p6HGdR8JuETgJi20YsmETQ= - -jest-pnp-resolver@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.0.1.tgz#f397cd71dbcd4a1947b2e435f6da8e9a347308fa" - integrity sha512-kzhvJQp+9k0a/hpvIIzOJgOwfOqmnohdrAMZW2EscH3kxR2VWD7EcPa10cio8EK9V7PcD75bhG1pFnO70zGwSQ== - -jest-regex-util@^23.3.0: - version "23.3.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-23.3.0.tgz#5f86729547c2785c4002ceaa8f849fe8ca471bc5" - integrity sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U= - -jest-resolve-dependencies@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-23.6.0.tgz#b4526af24c8540d9a3fab102c15081cf509b723d" - integrity sha512-EkQWkFWjGKwRtRyIwRwI6rtPAEyPWlUC2MpzHissYnzJeHcyCn1Hc8j7Nn1xUVrS5C6W5+ZL37XTem4D4pLZdA== - dependencies: - jest-regex-util "^23.3.0" - jest-snapshot "^23.6.0" - -jest-resolve@23.6.0, jest-resolve@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-23.6.0.tgz#cf1d1a24ce7ee7b23d661c33ba2150f3aebfa0ae" - integrity sha512-XyoRxNtO7YGpQDmtQCmZjum1MljDqUCob7XlZ6jy9gsMugHdN2hY4+Acz9Qvjz2mSsOnPSH7skBmDYCHXVZqkA== - dependencies: - browser-resolve "^1.11.3" - chalk "^2.0.1" - realpath-native "^1.0.0" - -jest-runner@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-23.6.0.tgz#3894bd219ffc3f3cb94dc48a4170a2e6f23a5a38" - integrity sha512-kw0+uj710dzSJKU6ygri851CObtCD9cN8aNkg8jWJf4ewFyEa6kwmiH/r/M1Ec5IL/6VFa0wnAk6w+gzUtjJzA== - dependencies: - exit "^0.1.2" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-docblock "^23.2.0" - jest-haste-map "^23.6.0" - jest-jasmine2 "^23.6.0" - jest-leak-detector "^23.6.0" - jest-message-util "^23.4.0" - jest-runtime "^23.6.0" - jest-util "^23.4.0" - jest-worker "^23.2.0" - source-map-support "^0.5.6" - throat "^4.0.0" - -jest-runtime@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-23.6.0.tgz#059e58c8ab445917cd0e0d84ac2ba68de8f23082" - integrity sha512-ycnLTNPT2Gv+TRhnAYAQ0B3SryEXhhRj1kA6hBPSeZaNQkJ7GbZsxOLUkwg6YmvWGdX3BB3PYKFLDQCAE1zNOw== - dependencies: - babel-core "^6.0.0" - babel-plugin-istanbul "^4.1.6" - chalk "^2.0.1" - convert-source-map "^1.4.0" - exit "^0.1.2" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - realpath-native "^1.0.0" - slash "^1.0.0" - strip-bom "3.0.0" - write-file-atomic "^2.1.0" - yargs "^11.0.0" - -jest-serializer@^23.0.1: - version "23.0.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-23.0.1.tgz#a3776aeb311e90fe83fab9e533e85102bd164165" - integrity sha1-o3dq6zEekP6D+rnlM+hRAr0WQWU= - -jest-snapshot@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-23.6.0.tgz#f9c2625d1b18acda01ec2d2b826c0ce58a5aa17a" - integrity sha512-tM7/Bprftun6Cvj2Awh/ikS7zV3pVwjRYU2qNYS51VZHgaAMBs5l4o/69AiDHhQrj5+LA2Lq4VIvK7zYk/bswg== - dependencies: - babel-types "^6.0.0" - chalk "^2.0.1" - jest-diff "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-resolve "^23.6.0" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - pretty-format "^23.6.0" - semver "^5.5.0" - -jest-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-23.4.0.tgz#4d063cb927baf0a23831ff61bec2cbbf49793561" - integrity sha1-TQY8uSe68KI4Mf9hvsLLv0l5NWE= - dependencies: - callsites "^2.0.0" - chalk "^2.0.1" - graceful-fs "^4.1.11" - is-ci "^1.0.10" - jest-message-util "^23.4.0" - mkdirp "^0.5.1" - slash "^1.0.0" - source-map "^0.6.0" - -jest-validate@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.6.0.tgz#36761f99d1ed33fcd425b4e4c5595d62b6597474" - integrity sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A== - dependencies: - chalk "^2.0.1" - jest-get-type "^22.1.0" - leven "^2.1.0" - pretty-format "^23.6.0" - -jest-watcher@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-23.4.0.tgz#d2e28ce74f8dad6c6afc922b92cabef6ed05c91c" - integrity sha1-0uKM50+NrWxq/JIrksq+9u0FyRw= - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.1" - string-length "^2.0.0" - -jest-worker@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.2.0.tgz#faf706a8da36fae60eb26957257fa7b5d8ea02b9" - integrity sha1-+vcGqNo2+uYOsmlXJX+ntdjqArk= - dependencies: - merge-stream "^1.0.1" - -jest@23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-23.6.0.tgz#ad5835e923ebf6e19e7a1d7529a432edfee7813d" - integrity sha512-lWzcd+HSiqeuxyhG+EnZds6iO3Y3ZEnMrfZq/OTGvF/C+Z4fPMCdhWTGSAiO2Oym9rbEXfwddHhh6jqrTF3+Lw== - dependencies: - import-local "^1.0.0" - jest-cli "^23.6.0" - -joi@^11.1.1: - version "11.4.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-11.4.0.tgz#f674897537b625e9ac3d0b7e1604c828ad913ccb" - integrity sha512-O7Uw+w/zEWgbL6OcHbyACKSj0PkQeUgmehdoXVSxt92QFCq4+1390Rwh5moI2K/OgC7D8RHRZqHZxT2husMJHA== - dependencies: - hoek "4.x.x" - isemail "3.x.x" - topo "2.x.x" - -js-levenshtein@^1.1.3: - version "1.1.4" - resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.4.tgz#3a56e3cbf589ca0081eb22cd9ba0b1290a16d26e" - integrity sha512-PxfGzSs0ztShKrUYPIn5r0MtyAhYcCwmndozzpz8YObbPnD1jFxzlBGbRnX2mIu6Z13xN6+PTu05TQFnZFlzow== - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@^3.12.0, js-yaml@^3.7.0, js-yaml@^3.9.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" - integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsdom@>=11.0.0: - version "13.0.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-13.0.0.tgz#f1df2411b714a4e08d1bdc343c0a0889c688210f" - integrity sha512-Kmq4ASMNkgpY+YufE322EnIKoiz0UWY2DRkKlU7d5YrIW4xiVRhWFrZV1fr6w/ZNxQ50wGAH5gGRzydgnmkkvw== - dependencies: - abab "^2.0.0" - acorn "^6.0.2" - acorn-globals "^4.3.0" - array-equal "^1.0.0" - cssom "^0.3.4" - cssstyle "^1.1.1" - data-urls "^1.0.1" - domexception "^1.0.1" - escodegen "^1.11.0" - html-encoding-sniffer "^1.0.2" - nwsapi "^2.0.9" - parse5 "5.1.0" - pn "^1.1.0" - request "^2.88.0" - request-promise-native "^1.0.5" - saxes "^3.1.3" - symbol-tree "^3.2.2" - tough-cookie "^2.4.3" - w3c-hr-time "^1.0.1" - w3c-xmlserializer "^1.0.0" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.2.0" - whatwg-url "^7.0.0" - ws "^6.1.0" - xml-name-validator "^3.0.0" - -jsdom@^11.5.1: - version "11.12.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8" - integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw== - dependencies: - abab "^2.0.0" - acorn "^5.5.3" - acorn-globals "^4.1.0" - array-equal "^1.0.0" - cssom ">= 0.3.2 < 0.4.0" - cssstyle "^1.0.0" - data-urls "^1.0.0" - domexception "^1.0.1" - escodegen "^1.9.1" - html-encoding-sniffer "^1.0.2" - left-pad "^1.3.0" - nwsapi "^2.0.7" - parse5 "4.0.0" - pn "^1.1.0" - request "^2.87.0" - request-promise-native "^1.0.5" - sax "^1.2.4" - symbol-tree "^3.2.2" - tough-cookie "^2.3.4" - w3c-hr-time "^1.0.1" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.3" - whatwg-mimetype "^2.1.0" - whatwg-url "^6.4.1" - ws "^5.2.0" - xml-name-validator "^3.0.0" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= - -jsesc@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" - integrity sha1-5CGiqOINawgZ3yiQj3glJrlt0f4= - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= - dependencies: - jsonify "~0.0.0" - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json3@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" - integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= - -json5@^0.5.0, json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= - -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= - optionalDependencies: - graceful-fs "^4.1.6" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -jsx-ast-utils@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f" - integrity sha1-6AGxs5mF4g//yHtA43SAgOLcrH8= - dependencies: - array-includes "^3.0.3" - -killable@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" - integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== - -kind-of@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" - integrity sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU= - dependencies: - is-buffer "^1.0.2" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" - integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== - -kleur@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-2.0.2.tgz#b704f4944d95e255d038f0cb05fb8a602c55a300" - integrity sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ== - -last-call-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" - integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== - dependencies: - lodash "^4.17.5" - webpack-sources "^1.1.0" - -lazy-cache@^0.2.3: - version "0.2.7" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" - integrity sha1-f+3fLctu23fRHvHRF6tf/fCrG2U= - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4= - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= - dependencies: - invert-kv "^1.0.0" - -lcid@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" - integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== - dependencies: - invert-kv "^2.0.0" - -left-pad@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" - integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== - -leven@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" - integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= - -levn@^0.3.0, levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - -loader-fs-cache@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/loader-fs-cache/-/loader-fs-cache-1.0.1.tgz#56e0bf08bd9708b26a765b68509840c8dec9fdbc" - integrity sha1-VuC/CL2XCLJqdltoUJhAyN7J/bw= - dependencies: - find-cache-dir "^0.1.1" - mkdirp "0.5.1" - -loader-runner@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.1.tgz#026f12fe7c3115992896ac02ba022ba92971b979" - integrity sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw== - -loader-utils@1.1.0, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" - integrity sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0= - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -lodash._reinterpolate@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= - -lodash.camelcase@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= - -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - -lodash.tail@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" - integrity sha1-0jM6NtnncXyK0vfKyv7HwytERmQ= - -lodash.template@^4.2.4, lodash.template@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0" - integrity sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A= - dependencies: - lodash._reinterpolate "~3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz#2b4d4e95ba440d915ff08bc899e4553666713316" - integrity sha1-K01OlbpEDZFf8IvImeRVNmZxMxY= - dependencies: - lodash._reinterpolate "~3.0.0" - -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - -"lodash@>=3.5 <5", lodash@^4.13.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== - -loglevel@^1.4.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" - integrity sha1-4PyVEztu8nbNyIh82vJKpvFW+Po= - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lower-case@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= - -lru-cache@^4.0.1, lru-cache@^4.1.1, lru-cache@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.3.tgz#a1175cf3496dfc8436c156c334b4955992bce69c" - integrity sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -make-dir@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== - dependencies: - pify "^3.0.0" - -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= - dependencies: - tmpl "1.0.x" - -mamacro@^0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/mamacro/-/mamacro-0.0.3.tgz#ad2c9576197c9f1abf308d0787865bd975a3f3e4" - integrity sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA== - -map-age-cleaner@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz#098fb15538fd3dbe461f12745b0ca8568d4e3f74" - integrity sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ== - dependencies: - p-defer "^1.0.0" - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - -math-random@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" - integrity sha1-izqsWIuKZuSXXjzepn97sylgH6w= - -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -mdn-data@~1.1.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-1.1.4.tgz#50b5d4ffc4575276573c4eedb8780812a8419f01" - integrity sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA== - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= - -mem@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" - integrity sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y= - dependencies: - mimic-fn "^1.0.0" - -mem@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.0.0.tgz#6437690d9471678f6cc83659c00cbafcd6b0cdaf" - integrity sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA== - dependencies: - map-age-cleaner "^0.1.1" - mimic-fn "^1.0.0" - p-is-promise "^1.1.0" - -memoize-one@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-4.0.3.tgz#cdfdd942853f1a1b4c71c5336b8c49da0bf0273c" - integrity sha512-QmpUu4KqDmX0plH4u+tf0riMc1KHE1+lw95cMrLlXQAFOx/xnBtwhZ52XJxd9X2O6kwKBqX32kmhbhlobD0cuw== - -memory-fs@^0.4.0, memory-fs@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -merge-deep@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/merge-deep/-/merge-deep-3.0.2.tgz#f39fa100a4f1bd34ff29f7d2bf4508fbb8d83ad2" - integrity sha512-T7qC8kg4Zoti1cFd8Cr0M+qaZfOwjlPDEdZIIPPB2JZctjaPM4fX+i7HOId69tAti2fvO6X5ldfYUONDODsrkA== - dependencies: - arr-union "^3.1.0" - clone-deep "^0.2.4" - kind-of "^3.0.2" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= - -merge-stream@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" - integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= - dependencies: - readable-stream "^2.0.1" - -merge2@^1.2.1: - version "1.2.3" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz#7ee99dbd69bb6481689253f018488a1b902b0ed5" - integrity sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA== - -merge@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" - integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -micromatch@^2.3.11: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" - -micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8, micromatch@^3.1.9: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -"mime-db@>= 1.36.0 < 2", mime-db@~1.37.0: - version "1.37.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.37.0.tgz#0b6a0ce6fdbe9576e25f1f2d2fde8830dc0ad0d8" - integrity sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg== - -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.19: - version "2.1.21" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.21.tgz#28995aa1ecb770742fe6ae7e58f9181c744b3f96" - integrity sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg== - dependencies: - mime-db "~1.37.0" - -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== - -mime@^2.0.3, mime@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.3.1.tgz#b1621c54d63b97c47d3cfe7f7215f7d64517c369" - integrity sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg== - -mimic-fn@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" - integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== - -mini-css-extract-plugin@0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.3.tgz#98d60fcc5d228c3e36a9bd15a1d6816d6580beb8" - integrity sha512-Mxs0nxzF1kxPv4TRi2NimewgXlJqh0rGE30vviCU2WHrpbta6wklnUV9dr9FUtoAHmB3p3LeXEC+ZjgHvB0Dzg== - dependencies: - loader-utils "^1.1.0" - schema-utils "^1.0.0" - webpack-sources "^1.1.0" - -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= - -minimatch@3.0.4, minimatch@^3.0.3, minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= - -minimist@^1.1.1, minimist@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= - -minimist@~0.0.1: - version "0.0.10" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" - integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= - -minipass@^2.2.1, minipass@^2.3.3: - version "2.3.5" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848" - integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.1.1.tgz#6734acc045a46e61d596a43bb9d9cd326e19cc42" - integrity sha512-TrfjCjk4jLhcJyGMYymBH6oTXcWjYbUAXTHDbtnWHjZC25h0cdajHuPE1zxb4DVmu8crfh+HwH/WMuyLG0nHBg== - dependencies: - minipass "^2.2.1" - -mississippi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" - integrity sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^2.0.1" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mississippi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" - integrity sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mixin-object@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= - dependencies: - for-in "^0.1.3" - is-extendable "^0.1.1" - -mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= - dependencies: - minimist "0.0.8" - -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - -mute-stream@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" - integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= - -nan@^2.9.2: - version "2.11.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.11.1.tgz#90e22bccb8ca57ea4cd37cc83d3819b52eea6766" - integrity sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -needle@^2.2.1: - version "2.2.4" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.4.tgz#51931bff82533b1928b7d1d69e01f1b00ffd2a4e" - integrity sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA== - dependencies: - debug "^2.1.2" - iconv-lite "^0.4.4" - sax "^1.2.4" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - integrity sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk= - -neo-async@^2.5.0, neo-async@^2.6.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" - integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== - -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - -no-case@^2.2.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" - integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== - dependencies: - lower-case "^1.1.1" - -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-forge@0.7.5: - version "0.7.5" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" - integrity sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ== - -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= - -node-libs-browser@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" - integrity sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^1.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.0" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.10.3" - vm-browserify "0.0.4" - -node-notifier@^5.2.1: - version "5.3.0" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.3.0.tgz#c77a4a7b84038733d5fb351aafd8a268bfe19a01" - integrity sha512-AhENzCSGZnZJgBARsUjnQ7DnZbzyP+HxlVXuD0xqAnvL8q+OqtSX7lGg9e8nHzwXkMMXNdVeqq4E2M3EUAqX6Q== - dependencies: - growly "^1.3.0" - semver "^5.5.0" - shellwords "^0.1.1" - which "^1.3.0" - -node-pre-gyp@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc" - integrity sha512-d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4" - -node-releases@^1.0.0-alpha.11, node-releases@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.0.2.tgz#27c296d9fca3b659c64f7d43ea47a31ad2a90e4b" - integrity sha512-zP8Asfg13lG9KDAW85rylSxXBYvaSdtjMIYKHUk8c1fM8drmFwRqbSYKYD+UlNVPUvrceSvgLUKHMOWR5jPWQg== - dependencies: - semver "^5.3.0" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - integrity sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw== - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.1, normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= - -normalize-url@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" - integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== - -npm-bundled@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.5.tgz#3c1732b7ba936b3a10325aef616467c0ccbcc979" - integrity sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g== - -npm-packlist@^1.1.6: - version "1.1.12" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.12.tgz#22bde2ebc12e72ca482abd67afc51eb49377243a" - integrity sha512-WJKFOVMeAlsU/pjXuqVdzU0WfgtIBCupkEVwn+1Y0ERAbUfWw8R4GjgVbaKnUjRoD2FoQbHOCbOyT5Mbs9Lw4g== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - -npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -nth-check@^1.0.2, nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" - -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - -nwsapi@^2.0.7, nwsapi@^2.0.9: - version "2.0.9" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.0.9.tgz#77ac0cdfdcad52b6a1151a84e73254edc33ed016" - integrity sha512-nlWFSCTYQcHk/6A9FFnfhKc14c3aFhfdNBXgo8Qgi9QTBu/qg3Ww+Uiz9wMzXd1T8GFxPc2QIHB6Qtf2XFryFQ== - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -object-assign@4.1.1, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-hash@^1.1.4: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.0.tgz#76d9ba6ff113cf8efc0d996102851fe6723963e2" - integrity sha512-05KzQ70lSeGSrZJQXE5wNDiTkBJDlUT/myi6RX9dVIvz7a7Qh4oH93BQdiPMn27nldYvVQCKMUaM83AfizZlsQ== - -object-keys@^1.0.11, object-keys@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" - integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag== - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - -object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - -object.getownpropertydescriptors@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" - integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.5.1" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= - dependencies: - isobject "^3.0.1" - -object.values@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a" - integrity sha1-5STaCbT2b/Bd9FdUbscqyZ8TBpo= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.6.1" - function-bind "^1.1.0" - has "^1.0.1" - -obuf@^1.0.0, obuf@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" - integrity sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c= - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -onetime@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" - integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= - dependencies: - mimic-fn "^1.0.0" - -opn@5.4.0, opn@^5.1.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.4.0.tgz#cb545e7aab78562beb11aa3bfabc7042e1761035" - integrity sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw== - dependencies: - is-wsl "^1.1.0" - -optimist@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" - integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= - dependencies: - minimist "~0.0.1" - wordwrap "~0.0.2" - -optimize-css-assets-webpack-plugin@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.1.tgz#9eb500711d35165b45e7fd60ba2df40cb3eb9159" - integrity sha512-Rqm6sSjWtx9FchdP0uzTQDc7GXDKnwVEGoSxjezPkzMewx7gEWE9IMUYKmigTRC4U3RaNSwYVnUDLuIdtTpm0A== - dependencies: - cssnano "^4.1.0" - last-call-webpack-plugin "^3.0.0" - -optionator@^0.8.1, optionator@^0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" - integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.4" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - wordwrap "~1.0.0" - -original@>=0.0.5: - version "1.0.2" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" - integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg== - dependencies: - url-parse "^1.4.3" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-locale@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" - integrity sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA== - dependencies: - execa "^0.7.0" - lcid "^1.0.0" - mem "^1.1.0" - -os-locale@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.0.1.tgz#3b014fbf01d87f60a1e5348d80fe870dc82c4620" - integrity sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw== - dependencies: - execa "^0.10.0" - lcid "^2.0.0" - mem "^4.0.0" - -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - -p-is-promise@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" - integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.0.0.tgz#e624ed54ee8c460a778b3c9f3670496ff8a57aec" - integrity sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A== - dependencies: - p-try "^2.0.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - dependencies: - p-limit "^1.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA== - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" - integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ== - -pako@~1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" - integrity sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg== - -parallel-transform@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" - integrity sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY= - dependencies: - cyclist "~0.2.2" - inherits "^2.0.3" - readable-stream "^2.1.5" - -param-case@2.1.x: - version "2.1.1" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= - dependencies: - no-case "^2.2.0" - -parse-asn1@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" - integrity sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw== - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= - dependencies: - error-ex "^1.2.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -parse-passwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= - -parse5@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" - integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== - -parse5@5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" - integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== - -parseurl@~1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" - integrity sha1-/CidTtiZMRlGDBViUyYs3I3mW/M= - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - -path-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" - integrity sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo= - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-is-inside@^1.0.1, path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= - -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - -path-parse@^1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= - dependencies: - pify "^2.0.0" - -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== - dependencies: - pify "^3.0.0" - -pbkdf2@^3.0.3: - version "3.0.17" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" - integrity sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= - -pkg-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" - integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q= - dependencies: - find-up "^1.0.0" - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - -pkg-up@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - -pluralize@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" - integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow== - -pn@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" - integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== - -pnp-webpack-plugin@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.1.0.tgz#947a96d1db94bb5a1fc014d83b581e428699ac8c" - integrity sha512-CPCdcFxx7fEcDMWTDjXe2Wypt4JuMt4q5Q2UrpTcyBBkLiCIyPEh/mCGmUWIcNkKGyXwQ9Y2wVhlKm6ketiBNQ== - -portfinder@^1.0.9: - version "1.0.19" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.19.tgz#07e87914a55242dcda5b833d42f018d6875b595f" - integrity sha512-23aeQKW9KgHe6citUrG3r9HjeX6vls0h713TAa+CwTKZwNIr/pD2ApaxYF4Um3ZZyq4ar+Siv3+fhoHaIwSOSw== - dependencies: - async "^1.5.2" - debug "^2.2.0" - mkdirp "0.5.x" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - -postcss-attribute-case-insensitive@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.0.tgz#807b6a797ad8bf1c821b2d51cf641e9dd3837624" - integrity sha512-K/zqdg0/UgUgC8qR0lDuxYzmowPpnvrrNC5YuoqzhHMubR9AuhsPlpVu3jjkLHgDAzR+ohD/m7//iGnN9WxbzQ== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-calc@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.1.tgz#36d77bab023b0ecbb9789d84dcb23c4941145436" - integrity sha512-oXqx0m6tb4N3JGdmeMSc/i91KppbYsFZKdH0xMOqK8V1rJlzrKlTdokz8ozUXLVejydRN6u2IddxpcijRj2FqQ== - dependencies: - css-unit-converter "^1.1.1" - postcss "^7.0.5" - postcss-selector-parser "^5.0.0-rc.4" - postcss-value-parser "^3.3.1" - -postcss-color-functional-notation@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" - integrity sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-hex-alpha@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.2.tgz#e9b1886bb038daed33f6394168c210b40bb4fdb6" - integrity sha512-8bIOzQMGdZVifoBQUJdw+yIY00omBd2EwkJXepQo9cjp1UOHHHoeRDeSzTP6vakEpaRc6GAIOfvcQR7jBYaG5Q== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-mod-function@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" - integrity sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-rebeccapurple@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" - integrity sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-colormin@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.2.tgz#93cd1fa11280008696887db1a528048b18e7ed99" - integrity sha512-1QJc2coIehnVFsz0otges8kQLsryi4lo19WD+U5xCWvXd0uw/Z+KKYnbiNDCnO9GP+PvErPHCG0jNvWTngk9Rw== - dependencies: - browserslist "^4.0.0" - color "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-convert-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" - integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-custom-media@^7.0.4: - version "7.0.7" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-7.0.7.tgz#bbc698ed3089ded61aad0f5bfb1fb48bf6969e73" - integrity sha512-bWPCdZKdH60wKOTG4HKEgxWnZVjAIVNOJDvi3lkuTa90xo/K0YHa2ZnlKLC5e2qF8qCcMQXt0yzQITBp8d0OFA== - dependencies: - postcss "^7.0.5" - -postcss-custom-properties@^8.0.5: - version "8.0.8" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-8.0.8.tgz#1812e2553805e1affce93164dd1709ef6b69c53e" - integrity sha512-G3U8uSxj0B4jPJ1QBF5WYeW716n5HV/wcH2lOTV1V+EI+F0T0/ZOhl32MLLTMD79bN2mE77IOoclbCoLl4QtPA== - dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-custom-selectors@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" - integrity sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-dir-pseudo-class@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" - integrity sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-discard-comments@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.1.tgz#30697735b0c476852a7a11050eb84387a67ef55d" - integrity sha512-Ay+rZu1Sz6g8IdzRjUgG2NafSNpp2MSMOQUb+9kkzzzP+kh07fP0yNbhtFejURnyVXSX3FYy2nVNW1QTnNjgBQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-duplicates@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" - integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-empty@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" - integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== - dependencies: - postcss "^7.0.0" - -postcss-discard-overridden@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" - integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== - dependencies: - postcss "^7.0.0" - -postcss-env-function@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" - integrity sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-flexbugs-fixes@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.1.0.tgz#e094a9df1783e2200b7b19f875dcad3b3aff8b20" - integrity sha512-jr1LHxQvStNNAHlgco6PzY308zvLklh7SJVYuWUwyUQncofaAlD2l+P/gxKHOdqWKe7xJSkVLFF/2Tp+JqMSZA== - dependencies: - postcss "^7.0.0" - -postcss-focus-visible@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" - integrity sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g== - dependencies: - postcss "^7.0.2" - -postcss-focus-within@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" - integrity sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w== - dependencies: - postcss "^7.0.2" - -postcss-font-variant@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-4.0.0.tgz#71dd3c6c10a0d846c5eda07803439617bbbabacc" - integrity sha512-M8BFYKOvCrI2aITzDad7kWuXXTm0YhGdP9Q8HanmN4EF1Hmcgs1KK5rSHylt/lUJe8yLxiSwWAHdScoEiIxztg== - dependencies: - postcss "^7.0.2" - -postcss-gap-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" - integrity sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg== - dependencies: - postcss "^7.0.2" - -postcss-image-set-function@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" - integrity sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-initial@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.0.tgz#1772512faf11421b791fb2ca6879df5f68aa0517" - integrity sha512-WzrqZ5nG9R9fUtrA+we92R4jhVvEB32IIRTzfIG/PLL8UV4CvbF1ugTEHEFX6vWxl41Xt5RTCJPEZkuWzrOM+Q== - dependencies: - lodash.template "^4.2.4" - postcss "^7.0.2" - -postcss-lab-function@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" - integrity sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-load-config@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.0.0.tgz#f1312ddbf5912cd747177083c5ef7a19d62ee484" - integrity sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ== - dependencies: - cosmiconfig "^4.0.0" - import-cwd "^2.0.0" - -postcss-loader@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" - integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== - dependencies: - loader-utils "^1.1.0" - postcss "^7.0.0" - postcss-load-config "^2.0.0" - schema-utils "^1.0.0" - -postcss-logical@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" - integrity sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA== - dependencies: - postcss "^7.0.2" - -postcss-media-minmax@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" - integrity sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw== - dependencies: - postcss "^7.0.2" - -postcss-merge-longhand@^4.0.9: - version "4.0.9" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.9.tgz#c2428b994833ffb2a072f290ca642e75ceabcd6f" - integrity sha512-UVMXrXF5K/kIwUbK/crPFCytpWbNX2Q3dZSc8+nQUgfOHrCT4+MHncpdxVphUlQeZxlLXUJbDyXc5NBhTnS2tA== - dependencies: - css-color-names "0.0.4" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - stylehacks "^4.0.0" - -postcss-merge-rules@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.2.tgz#2be44401bf19856f27f32b8b12c0df5af1b88e74" - integrity sha512-UiuXwCCJtQy9tAIxsnurfF0mrNHKc4NnNx6NxqmzNNjXpQwLSukUxELHTRF0Rg1pAmcoKLih8PwvZbiordchag== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - cssnano-util-same-parent "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - vendors "^1.0.0" - -postcss-minify-font-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" - integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-gradients@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.1.tgz#6da95c6e92a809f956bb76bf0c04494953e1a7dd" - integrity sha512-pySEW3E6Ly5mHm18rekbWiAjVi/Wj8KKt2vwSfVFAWdW6wOIekgqxKxLU7vJfb107o3FDNPkaYFCxGAJBFyogA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - is-color-stop "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-params@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.1.tgz#5b2e2d0264dd645ef5d68f8fec0d4c38c1cf93d2" - integrity sha512-h4W0FEMEzBLxpxIVelRtMheskOKKp52ND6rJv+nBS33G1twu2tCyurYj/YtgU76+UDCvWeNs0hs8HFAWE2OUFg== - dependencies: - alphanum-sort "^1.0.0" - browserslist "^4.0.0" - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - uniqs "^2.0.0" - -postcss-minify-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.1.tgz#a891c197977cc37abf60b3ea06b84248b1c1e9cd" - integrity sha512-8+plQkomve3G+CodLCgbhAKrb5lekAnLYuL1d7Nz+/7RANpBEVdgBkPNwljfSKvZ9xkkZTZITd04KP+zeJTJqg== - dependencies: - alphanum-sort "^1.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -postcss-modules-extract-imports@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz#dc87e34148ec7eab5f791f7cd5849833375b741a" - integrity sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw== - dependencies: - postcss "^6.0.1" - -postcss-modules-local-by-default@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" - integrity sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-scope@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" - integrity sha1-1upkmUx5+XtipytCb75gVqGUu5A= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-values@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" - integrity sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA= - dependencies: - icss-replace-symbols "^1.1.0" - postcss "^6.0.1" - -postcss-nesting@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.0.tgz#6e26a770a0c8fcba33782a6b6f350845e1a448f6" - integrity sha512-WSsbVd5Ampi3Y0nk/SKr5+K34n52PqMqEfswu6RtU4r7wA8vSD+gM8/D9qq4aJkHImwn1+9iEFTbjoWsQeqtaQ== - dependencies: - postcss "^7.0.2" - -postcss-normalize-charset@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" - integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== - dependencies: - postcss "^7.0.0" - -postcss-normalize-display-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.1.tgz#d9a83d47c716e8a980f22f632c8b0458cfb48a4c" - integrity sha512-R5mC4vaDdvsrku96yXP7zak+O3Mm9Y8IslUobk7IMP+u/g+lXvcN4jngmHY5zeJnrQvE13dfAg5ViU05ZFDwdg== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-positions@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.1.tgz#ee2d4b67818c961964c6be09d179894b94fd6ba1" - integrity sha512-GNoOaLRBM0gvH+ZRb2vKCIujzz4aclli64MBwDuYGU2EY53LwiP7MxOZGE46UGtotrSnmarPPZ69l2S/uxdaWA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-repeat-style@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.1.tgz#5293f234b94d7669a9f805495d35b82a581c50e5" - integrity sha512-fFHPGIjBUyUiswY2rd9rsFcC0t3oRta4wxE1h3lpwfQZwFeFjXFSiDtdJ7APCmHQOnUZnqYBADNRPKPwFAONgA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-string@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.1.tgz#23c5030c2cc24175f66c914fa5199e2e3c10fef3" - integrity sha512-IJoexFTkAvAq5UZVxWXAGE0yLoNN/012v7TQh5nDo6imZJl2Fwgbhy3J2qnIoaDBrtUP0H7JrXlX1jjn2YcvCQ== - dependencies: - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-timing-functions@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.1.tgz#8be83e0b9cb3ff2d1abddee032a49108f05f95d7" - integrity sha512-1nOtk7ze36+63ONWD8RCaRDYsnzorrj+Q6fxkQV+mlY5+471Qx9kspqv0O/qQNMeApg8KNrRf496zHwJ3tBZ7w== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-unicode@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" - integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-url@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" - integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-whitespace@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.1.tgz#d14cb639b61238418ac8bc8d3b7bdd65fc86575e" - integrity sha512-U8MBODMB2L+nStzOk6VvWWjZgi5kQNShCyjRhMT3s+W9Jw93yIjOnrEkKYD3Ul7ChWbEcjDWmXq0qOL9MIAnAw== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-ordered-values@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.1.tgz#2e3b432ef3e489b18333aeca1f1295eb89be9fc2" - integrity sha512-PeJiLgJWPzkVF8JuKSBcylaU+hDJ/TX3zqAMIjlghgn1JBi6QwQaDZoDIlqWRcCAI8SxKrt3FCPSRmOgKRB97Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-overflow-shorthand@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" - integrity sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g== - dependencies: - postcss "^7.0.2" - -postcss-page-break@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" - integrity sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ== - dependencies: - postcss "^7.0.2" - -postcss-place@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" - integrity sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-preset-env@6.0.6: - version "6.0.6" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-6.0.6.tgz#f728b9a43bf01c24eb06efeeff59de0b31ee1105" - integrity sha512-W1Wtqngl7BMe4s9o76odTaVs4HXVLhOHD+L5Ez+7x15yiA+98W/WVO6IPlC1q9BIkgAckRtUFmEDr0sNufXZIQ== - dependencies: - autoprefixer "^9.1.5" - browserslist "^4.1.1" - caniuse-lite "^1.0.30000887" - cssdb "^3.2.1" - postcss "^7.0.2" - postcss-attribute-case-insensitive "^4.0.0" - postcss-color-functional-notation "^2.0.1" - postcss-color-hex-alpha "^5.0.2" - postcss-color-mod-function "^3.0.3" - postcss-color-rebeccapurple "^4.0.1" - postcss-custom-media "^7.0.4" - postcss-custom-properties "^8.0.5" - postcss-custom-selectors "^5.1.2" - postcss-dir-pseudo-class "^5.0.0" - postcss-env-function "^2.0.2" - postcss-focus-visible "^4.0.0" - postcss-focus-within "^3.0.0" - postcss-font-variant "^4.0.0" - postcss-gap-properties "^2.0.0" - postcss-image-set-function "^3.0.1" - postcss-initial "^3.0.0" - postcss-lab-function "^2.0.1" - postcss-logical "^3.0.0" - postcss-media-minmax "^4.0.0" - postcss-nesting "^7.0.0" - postcss-overflow-shorthand "^2.0.0" - postcss-page-break "^2.0.0" - postcss-place "^4.0.1" - postcss-pseudo-class-any-link "^6.0.0" - postcss-replace-overflow-wrap "^3.0.0" - postcss-selector-matches "^4.0.0" - postcss-selector-not "^4.0.0" - -postcss-pseudo-class-any-link@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" - integrity sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-reduce-initial@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.2.tgz#bac8e325d67510ee01fa460676dc8ea9e3b40f15" - integrity sha512-epUiC39NonKUKG+P3eAOKKZtm5OtAtQJL7Ye0CBN1f+UQTHzqotudp+hki7zxXm7tT0ZAKDMBj1uihpPjP25ug== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - -postcss-reduce-transforms@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.1.tgz#8600d5553bdd3ad640f43bff81eb52f8760d4561" - integrity sha512-sZVr3QlGs0pjh6JAIe6DzWvBaqYw05V1t3d9Tp+VnFRT5j+rsqoWsysh/iSD7YNsULjq9IAylCznIwVd5oU/zA== - dependencies: - cssnano-util-get-match "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-replace-overflow-wrap@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" - integrity sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw== - dependencies: - postcss "^7.0.2" - -postcss-safe-parser@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-4.0.1.tgz#8756d9e4c36fdce2c72b091bbc8ca176ab1fcdea" - integrity sha512-xZsFA3uX8MO3yAda03QrG3/Eg1LN3EPfjjf07vke/46HERLZyHrTsQ9E1r1w1W//fWEhtYNndo2hQplN2cVpCQ== - dependencies: - postcss "^7.0.0" - -postcss-selector-matches@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" - integrity sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-not@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-4.0.0.tgz#c68ff7ba96527499e832724a2674d65603b645c0" - integrity sha512-W+bkBZRhqJaYN8XAnbbZPLWMvZD1wKTu0UxtFKdhtGjWYmxhkUneoeOhRJKdAE5V7ZTlnbHfCR+6bNwK9e1dTQ== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-parser@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz#4f875f4afb0c96573d5cf4d74011aee250a7e865" - integrity sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU= - dependencies: - dot-prop "^4.1.1" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: - version "5.0.0-rc.4" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0-rc.4.tgz#ca5e77238bf152966378c13e91ad6d611568ea87" - integrity sha512-0XvfYuShrKlTk1ooUrVzMCFQRcypsdEIsGqh5IxC5rdtBi4/M/tDAJeSONwC2MTqEFsmPZYAV7Dd4X8rgAfV0A== - dependencies: - cssesc "^2.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-svgo@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.1.tgz#5628cdb38f015de6b588ce6d0bf0724b492b581d" - integrity sha512-YD5uIk5NDRySy0hcI+ZJHwqemv2WiqqzDgtvgMzO8EGSkK5aONyX8HMVFRFJSdO8wUWTuisUFn/d7yRRbBr5Qw== - dependencies: - is-svg "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" - -postcss-unique-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" - integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== - dependencies: - alphanum-sort "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" - -postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== - -postcss-values-parser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.0.tgz#1ba42cae31367c44f96721cb5eb99462bfb39705" - integrity sha512-cyRdkgbRRefu91ByAlJow4y9w/hnBmmWgLpWmlFQ2bpIy2eKrqowt3VeYcaHQ08otVXmC9V2JtYW1Z/RpvYR8A== - dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss@^6.0.1, postcss@^6.0.23: - version "6.0.23" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" - integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== - dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.4.0" - -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.2, postcss@^7.0.5: - version "7.0.5" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.5.tgz#70e6443e36a6d520b0fd4e7593fcca3635ee9f55" - integrity sha512-HBNpviAUFCKvEh7NZhw1e8MBPivRszIiUnhrJ+sBFVSYSqubrzwX3KG51mYgcRHX8j/cAgZJedONZcm5jTBdgQ== - dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.5.0" - -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= - -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= - -prettier@^1.14.2: - version "1.14.3" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.14.3.tgz#90238dd4c0684b7edce5f83b0fb7328e48bd0895" - integrity sha512-qZDVnCrnpsRJJq5nSsiHCE3BYMED2OtsI+cmzIzF1QIfqm5ALf8tEJcO27zV1gKNKRPdhjO0dNWnrzssDQ1tFg== - -pretty-bytes@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-4.0.2.tgz#b2bf82e7350d65c6c33aa95aaa5a4f6327f61cd9" - integrity sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk= - -pretty-error@^2.0.2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" - integrity sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM= - dependencies: - renderkid "^2.0.1" - utila "~0.4" - -pretty-format@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.6.0.tgz#5eaac8eeb6b33b987b7fe6097ea6a8a146ab5760" - integrity sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw== - dependencies: - ansi-regex "^3.0.0" - ansi-styles "^3.2.0" - -private@^0.1.6, private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - -process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= - -progress@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.1.tgz#c9242169342b1c29d275889c95734621b1952e31" - integrity sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg== - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= - -promise@8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/promise/-/promise-8.0.2.tgz#9dcd0672192c589477d56891271bdc27547ae9f0" - integrity sha512-EIyzM39FpVOMbqgzEHhxdrEhtOSDOtjMZQ0M6iVfCE+kWNgCkAyOdnuCWqfmflylftfadU6FkiMgHZA2kUzwRw== - dependencies: - asap "~2.0.6" - -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - -prompts@^0.1.9: - version "0.1.14" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-0.1.14.tgz#a8e15c612c5c9ec8f8111847df3337c9cbd443b2" - integrity sha512-rxkyiE9YH6zAz/rZpywySLKkpaj0NMVyNw1qhsubdbjjSgcayjTShDreZGlFMcGSu5sab3bAKPfFk78PB90+8w== - dependencies: - kleur "^2.0.1" - sisteransi "^0.1.1" - -prop-types@^15.5.4, prop-types@^15.6.2: - version "15.6.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" - integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ== - dependencies: - loose-envify "^1.3.1" - object-assign "^4.1.1" - -proxy-addr@~2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.4.tgz#ecfc733bf22ff8c6f407fa275327b9ab67e48b93" - integrity sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA== - dependencies: - forwarded "~0.1.2" - ipaddr.js "1.8.0" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= - -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= - -psl@^1.1.24: - version "1.1.29" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.29.tgz#60f580d360170bb722a797cc704411e6da850c67" - integrity sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ== - -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" - -pump@^2.0.0, pump@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@2.x.x, punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -punycode@^1.2.4, punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= - -q@^1.1.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= - -qs@6.5.2, qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= - -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - -raf@3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.0.tgz#a28876881b4bc2ca9117d4138163ddb80f781575" - integrity sha512-pDP/NMRAXoTfrhCfyfSEwJAKLaxBU9eApMeBPB1TkDouZmvPerIClV8lTAd+uF8ZiTaVl69e1FCxQrAd/VTjGw== - dependencies: - performance-now "^2.1.0" - -randomatic@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed" - integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== - dependencies: - is-number "^4.0.0" - kind-of "^6.0.0" - math-random "^1.0.1" - -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" - integrity sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A== - dependencies: - safe-buffer "^5.1.0" - -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.0.3, range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - integrity sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4= - -raw-body@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" - integrity sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw== - dependencies: - bytes "3.0.0" - http-errors "1.6.3" - iconv-lite "0.4.23" - unpipe "1.0.0" - -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-app-polyfill@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-0.1.3.tgz#e57bb50f3751dac0e6b3ac27673812c68c679a1d" - integrity sha512-Fl5Pic4F15G05qX7RmUqPZr1MtyFKJKSlRwMhel4kvDLrk/KcQ9QbpvyMTzv/0NN5957XFQ7r1BNHWi7qN59Pw== - dependencies: - core-js "2.5.7" - object-assign "4.1.1" - promise "8.0.2" - raf "3.4.0" - whatwg-fetch "3.0.0" - -react-dev-utils@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-6.1.1.tgz#a07e3e8923c4609d9f27e5af5207e3ca20724895" - integrity sha512-ThbJ86coVd6wV/QiTo8klDTvdAJ1WsFCGQN07+UkN+QN9CtCSsl/+YuDJToKGeG8X4j9HMGXNKbk2QhPAZr43w== - dependencies: - "@babel/code-frame" "7.0.0" - address "1.0.3" - browserslist "4.1.1" - chalk "2.4.1" - cross-spawn "6.0.5" - detect-port-alt "1.1.6" - escape-string-regexp "1.0.5" - filesize "3.6.1" - find-up "3.0.0" - global-modules "1.0.0" - globby "8.0.1" - gzip-size "5.0.0" - immer "1.7.2" - inquirer "6.2.0" - is-root "2.0.0" - loader-utils "1.1.0" - opn "5.4.0" - pkg-up "2.0.0" - react-error-overlay "^5.1.0" - recursive-readdir "2.2.2" - shell-quote "1.6.1" - sockjs-client "1.1.5" - strip-ansi "4.0.0" - text-table "0.2.0" - -react-dom@^16.6.3: - version "16.6.3" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.6.3.tgz#8fa7ba6883c85211b8da2d0efeffc9d3825cccc0" - integrity sha512-8ugJWRCWLGXy+7PmNh8WJz3g1TaTUt1XyoIcFN+x0Zbkoz+KKdUyx1AQLYJdbFXjuF41Nmjn5+j//rxvhFjgSQ== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.11.2" - -react-error-overlay@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-5.1.0.tgz#c516995a5652e7bfbed8b497910d5280df74a7e8" - integrity sha512-akMy/BQT5m1J3iJIHkSb4qycq2wzllWsmmolaaFVnb+LPV9cIJ/nTud40ZsiiT0H3P+/wXIdbjx2fzF61OaeOQ== - -react-is@^16.6.0: - version "16.6.3" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.6.3.tgz#d2d7462fcfcbe6ec0da56ad69047e47e56e7eac0" - integrity sha512-u7FDWtthB4rWibG/+mFbVd5FvdI20yde86qKGx4lVUTWmPlSWQ4QxbBIrrs+HnXGbxOUlUzTAP/VDmvCwaP2yA== - -react-scripts@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-2.1.1.tgz#c2959a756b0b61d3090adece0d7aedd324dff8a5" - integrity sha512-f6KCUy7opItgeana1Ghwj+lYQp5BTHSaivG/dbfiIqSm5QdOIUV5eiFSBsbaAE6GEKqGYmZDK6Yw5WmbrhxaFg== - dependencies: - "@babel/core" "7.1.0" - "@svgr/webpack" "2.4.1" - babel-core "7.0.0-bridge.0" - babel-eslint "9.0.0" - babel-jest "23.6.0" - babel-loader "8.0.4" - babel-plugin-named-asset-import "^0.2.3" - babel-preset-react-app "^6.1.0" - bfj "6.1.1" - case-sensitive-paths-webpack-plugin "2.1.2" - chalk "2.4.1" - css-loader "1.0.0" - dotenv "6.0.0" - dotenv-expand "4.2.0" - eslint "5.6.0" - eslint-config-react-app "^3.0.5" - eslint-loader "2.1.1" - eslint-plugin-flowtype "2.50.1" - eslint-plugin-import "2.14.0" - eslint-plugin-jsx-a11y "6.1.2" - eslint-plugin-react "7.11.1" - file-loader "2.0.0" - fork-ts-checker-webpack-plugin-alt "0.4.14" - fs-extra "7.0.0" - html-webpack-plugin "4.0.0-alpha.2" - identity-obj-proxy "3.0.0" - jest "23.6.0" - jest-pnp-resolver "1.0.1" - jest-resolve "23.6.0" - mini-css-extract-plugin "0.4.3" - optimize-css-assets-webpack-plugin "5.0.1" - pnp-webpack-plugin "1.1.0" - postcss-flexbugs-fixes "4.1.0" - postcss-loader "3.0.0" - postcss-preset-env "6.0.6" - postcss-safe-parser "4.0.1" - react-app-polyfill "^0.1.3" - react-dev-utils "^6.1.1" - resolve "1.8.1" - sass-loader "7.1.0" - style-loader "0.23.0" - terser-webpack-plugin "1.1.0" - url-loader "1.1.1" - webpack "4.19.1" - webpack-dev-server "3.1.9" - webpack-manifest-plugin "2.0.4" - workbox-webpack-plugin "3.6.3" - optionalDependencies: - fsevents "1.2.4" - -react@^16.6.3: - version "16.6.3" - resolved "https://registry.yarnpkg.com/react/-/react-16.6.3.tgz#25d77c91911d6bbdd23db41e70fb094cc1e0871c" - integrity sha512-zCvmH2vbEolgKxtqXL2wmGCUxUyNheYn/C+PD1YAjfxHC54+MhdruyhO7QieQrYsYeTxrn93PM2y0jRH1zEExw== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.11.2" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3, readable-stream@^2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" - -readable-stream@1.0: - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readdirp@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -realpath-native@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.2.tgz#cd51ce089b513b45cf9b1516c82989b51ccc6560" - integrity sha512-+S3zTvVt9yTntFrBpm7TQmQ3tzpCrnA1a/y+3cUHAc9ZR6aIjG0WNLR+Rj79QpJktY+VeW/TQtFlQ1bzsehI8g== - dependencies: - util.promisify "^1.0.0" - -recursive-readdir@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" - integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== - dependencies: - minimatch "3.0.4" - -regenerate-unicode-properties@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz#107405afcc4a190ec5ed450ecaa00ed0cafa7a4c" - integrity sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw== - dependencies: - regenerate "^1.4.0" - -regenerate@^1.2.1, regenerate@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" - integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - -regenerator-runtime@^0.12.0: - version "0.12.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de" - integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg== - -regenerator-transform@^0.13.3: - version "0.13.3" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb" - integrity sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA== - dependencies: - private "^0.1.6" - -regex-cache@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" - integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== - dependencies: - is-equal-shallow "^0.1.3" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexpp@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== - -regexpu-core@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" - integrity sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs= - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regexpu-core@^4.1.3, regexpu-core@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.2.0.tgz#a3744fa03806cffe146dea4421a3e73bdcc47b1d" - integrity sha512-Z835VSnJJ46CNBttalHD/dB+Sj2ezmY6Xp38npwU87peK6mqOzOpV8eYktdkLTEkzzD+JsTcxd84ozd8I14+rw== - dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^7.0.0" - regjsgen "^0.4.0" - regjsparser "^0.3.0" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.0.2" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= - -regjsgen@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.4.0.tgz#c1eb4c89a209263f8717c782591523913ede2561" - integrity sha512-X51Lte1gCYUdlwhF28+2YMO0U6WeN0GLpgpA7LK7mbdDnkQYiwvEpmpe0F/cv5L14EbxgrdayAG3JETBv0dbXA== - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= - dependencies: - jsesc "~0.5.0" - -regjsparser@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.3.0.tgz#3c326da7fcfd69fa0d332575a41c8c0cdf588c96" - integrity sha512-zza72oZBBHzt64G7DxdqrOo/30bhHkwMUoT0WqfGu98XLd7N+1tsy5MJ96Bk4MD0y74n629RhmrGW6XlnLLwCA== - dependencies: - jsesc "~0.5.0" - -relateurl@0.2.x: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -renderkid@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.2.tgz#12d310f255360c07ad8fde253f6c9e9de372d2aa" - integrity sha512-FsygIxevi1jSiPY9h7vZmBFUbAOcbYm9UwyiLNdVsLRs/5We9Ob5NMPbGYUTWiLq5L+ezlVdE0A8bbME5CWTpg== - dependencies: - css-select "^1.1.0" - dom-converter "~0.2" - htmlparser2 "~3.3.0" - strip-ansi "^3.0.0" - utila "^0.4.0" - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.5.2, repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= - dependencies: - is-finite "^1.0.0" - -request-promise-core@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6" - integrity sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY= - dependencies: - lodash "^4.13.1" - -request-promise-native@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5" - integrity sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU= - dependencies: - request-promise-core "1.1.1" - stealthy-require "^1.1.0" - tough-cookie ">=2.3.3" - -request@^2.87.0, request@^2.88.0: - version "2.88.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" - integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.0" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.4.3" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-from-string@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= - -require-uncached@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" - integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM= - dependencies: - caller-path "^0.1.0" - resolve-from "^1.0.0" - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= - dependencies: - resolve-from "^3.0.0" - -resolve-dir@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" - integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= - dependencies: - expand-tilde "^2.0.0" - global-modules "^1.0.0" - -resolve-from@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" - integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY= - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= - -resolve@1.8.1, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.6.0, resolve@^1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" - integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA== - dependencies: - path-parse "^1.0.5" - -restore-cursor@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" - integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= - dependencies: - onetime "^2.0.0" - signal-exit "^3.0.2" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -rgb-regex@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" - integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= - -rgba-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" - integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= - -rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - integrity sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w== - dependencies: - glob "^7.0.5" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -rsvp@^3.3.3: - version "3.6.2" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" - integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== - -run-async@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" - integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= - dependencies: - is-promise "^2.1.0" - -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= - dependencies: - aproba "^1.1.1" - -rxjs@^6.1.0: - version "6.3.3" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz#3c6a7fa420e844a81390fb1158a9ec614f4bad55" - integrity sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw== - dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.2, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sane@^2.0.0: - version "2.5.2" - resolved "https://registry.yarnpkg.com/sane/-/sane-2.5.2.tgz#b4dc1861c21b427e929507a3e751e2a2cb8ab3fa" - integrity sha1-tNwYYcIbQn6SlQej51HiosuKs/o= - dependencies: - anymatch "^2.0.0" - capture-exit "^1.2.0" - exec-sh "^0.2.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - watch "~0.18.0" - optionalDependencies: - fsevents "^1.2.3" - -sass-loader@7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.1.0.tgz#16fd5138cb8b424bf8a759528a1972d72aad069d" - integrity sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w== - dependencies: - clone-deep "^2.0.1" - loader-utils "^1.0.1" - lodash.tail "^4.1.1" - neo-async "^2.5.0" - pify "^3.0.0" - semver "^5.5.0" - -sax@^1.2.4, sax@~1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -saxes@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.3.tgz#334ab3b802a465ccda96fff9bdefbd505546ffa8" - integrity sha512-Nc5DXc5A+m3rUDtkS+vHlBWKT7mCKjJPyia7f8YMW773hsXVv2wEHQZGE0zs4+5PLwz9U5Sbl/94Cnd9vHV7Bg== - dependencies: - xmlchars "^1.3.1" - -scheduler@^0.11.2: - version "0.11.3" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.11.3.tgz#b5769b90cf8b1464f3f3cfcafe8e3cd7555a2d6b" - integrity sha512-i9X9VRRVZDd3xZw10NY5Z2cVMbdYg6gqFecfj79USv1CFN+YrJ3gIPRKf1qlY+Sxly4djoKdfx1T+m9dnRB8kQ== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -schema-utils@^0.4.4, schema-utils@^0.4.5: - version "0.4.7" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" - integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ== - dependencies: - ajv "^6.1.0" - ajv-keywords "^3.1.0" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= - -selfsigned@^1.9.1: - version "1.10.4" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.4.tgz#cdd7eccfca4ed7635d47a08bf2d5d3074092e2cd" - integrity sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw== - dependencies: - node-forge "0.7.5" - -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1: - version "5.6.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" - integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== - -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" - -serialize-javascript@^1.4.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.5.0.tgz#1aa336162c88a890ddad5384baebc93a655161fe" - integrity sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ== - -serve-index@^1.7.2: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= - dependencies: - accepts "~1.3.4" - batch "0.6.1" - debug "2.6.9" - escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" - -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" - integrity sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -set-value@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4, setimmediate@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shallow-clone@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060" - integrity sha1-WQnodLp3EG1zrEFM/sH/yofZcGA= - dependencies: - is-extendable "^0.1.1" - kind-of "^2.0.1" - lazy-cache "^0.2.3" - mixin-object "^2.0.1" - -shallow-clone@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" - integrity sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA== - dependencies: - is-extendable "^0.1.1" - kind-of "^5.0.0" - mixin-object "^2.0.1" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= - -shell-quote@1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" - integrity sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c= - dependencies: - array-filter "~0.0.0" - array-map "~0.0.0" - array-reduce "~0.0.0" - jsonify "~0.0.0" - -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= - -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= - dependencies: - is-arrayish "^0.3.1" - -sisteransi@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.1.tgz#5431447d5f7d1675aac667ccd0b865a4994cb3ce" - integrity sha512-PmGOd02bM9YO5ifxpw36nrNMBTptEtfRl4qUYl9SndkolplkrZZOW7PGHjrZL53QvMVj9nQ+TKqUnRsw4tJa4g== - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= - -slice-ansi@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" - integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg== - dependencies: - is-fullwidth-code-point "^2.0.0" - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sockjs-client@1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.5.tgz#1bb7c0f7222c40f42adf14f4442cbd1269771a83" - integrity sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM= - dependencies: - debug "^2.6.6" - eventsource "0.1.6" - faye-websocket "~0.11.0" - inherits "^2.0.1" - json3 "^3.3.2" - url-parse "^1.1.8" - -sockjs@0.3.19: - version "0.3.19" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" - integrity sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw== - dependencies: - faye-websocket "^0.10.0" - uuid "^3.0.1" - -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - -source-map-resolve@^0.5.0: - version "0.5.2" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" - integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== - dependencies: - atob "^2.1.1" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== - dependencies: - source-map "^0.5.6" - -source-map-support@^0.5.6, source-map-support@~0.5.6: - version "0.5.9" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" - integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= - -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -spdx-correct@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.2.tgz#19bb409e91b47b1ad54159243f7312a858db3c2e" - integrity sha512-q9hedtzyXHr5S0A1vEPoK/7l8NpfkFYTq6iCY+Pno2ZbdZR6WexZFtqeVGkGxW3TEJMN914Z55EnAGMmenlIQQ== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" - integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== - -spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz#a59efc09784c2a5bada13cfeaf5c75dd214044d2" - integrity sha512-qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg== - -spdy-transport@^2.0.18: - version "2.1.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.1.0.tgz#4bbb15aaffed0beefdd56ad61dbdc8ba3e2cb7a1" - integrity sha512-bpUeGpZcmZ692rrTiqf9/2EUakI6/kXX1Rpe0ib/DyOzbiexVfXkw6GnvI9hVGvIwVaUhkaBojjCZwLNRGQg1g== - dependencies: - debug "^2.6.8" - detect-node "^2.0.3" - hpack.js "^2.1.6" - obuf "^1.1.1" - readable-stream "^2.2.9" - safe-buffer "^5.0.1" - wbuf "^1.7.2" - -spdy@^3.4.1: - version "3.4.7" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" - integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw= - dependencies: - debug "^2.6.8" - handle-thing "^1.2.5" - http-deceiver "^1.2.7" - safe-buffer "^5.0.1" - select-hose "^2.0.0" - spdy-transport "^2.0.18" - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -sshpk@^1.7.0: - version "1.15.2" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.15.2.tgz#c946d6bd9b1a39d0e8635763f5242d6ed6dcb629" - integrity sha512-Ra/OXQtuh0/enyl4ETZAfTaeksa6BXks5ZcjpSUNrjBr0DvrJKX+1fsKDPpT9TBXgHAFsa4510aNVgI8g/+SzA== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -ssri@^5.2.4: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.3.0.tgz#ba3872c9c6d33a0704a7d71ff045e5ec48999d06" - integrity sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ== - dependencies: - safe-buffer "^5.1.1" - -ssri@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" - integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== - dependencies: - figgy-pudding "^3.5.1" - -stable@~0.1.6: - version "0.1.8" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - -stack-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620" - integrity sha1-1PM6tU6OOHeLDKXP07OvsS22hiA= - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== - -stealthy-require@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" - integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= - -stream-browserify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" - integrity sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds= - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= - -string-length@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" - integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0= - dependencies: - astral-regex "^1.0.0" - strip-ansi "^4.0.0" - -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string_decoder@^1.0.0, string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= - -stringify-object@^3.2.2: - version "3.3.0" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -strip-ansi@4.0.0, strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-bom@3.0.0, strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= - dependencies: - is-utf8 "^0.2.0" - -strip-comments@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/strip-comments/-/strip-comments-1.0.2.tgz#82b9c45e7f05873bee53f37168af930aa368679d" - integrity sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw== - dependencies: - babel-extract-comments "^1.0.0" - babel-plugin-transform-object-rest-spread "^6.26.0" - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - -strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - -style-loader@0.23.0: - version "0.23.0" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.0.tgz#8377fefab68416a2e05f1cabd8c3a3acfcce74f1" - integrity sha512-uCcN7XWHkqwGVt7skpInW6IGO1tG6ReyFQ1Cseh0VcN6VdcFQi62aG/2F3Y9ueA8x4IVlfaSUxpmQXQD9QrEuQ== - dependencies: - loader-utils "^1.1.0" - schema-utils "^0.4.5" - -styled-components@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-4.1.2.tgz#f8a685e3b2bcd03c5beac7f2c02bb6ad237da9b3" - integrity sha512-NdvWatJ2WLqZxAvto+oH0k7GAC/TlAUJTrHoXJddjbCrU6U23EmVbb9LXJBF+d6q6hH+g9nQYOWYPUeX/Vlc2w== - dependencies: - "@emotion/is-prop-valid" "^0.6.8" - "@emotion/unitless" "^0.7.0" - babel-plugin-styled-components ">= 1" - css-to-react-native "^2.2.2" - memoize-one "^4.0.0" - prop-types "^15.5.4" - react-is "^16.6.0" - stylis "^3.5.0" - stylis-rule-sheet "^0.0.10" - supports-color "^5.5.0" - -stylehacks@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.1.tgz#3186595d047ab0df813d213e51c8b94e0b9010f2" - integrity sha512-TK5zEPeD9NyC1uPIdjikzsgWxdQQN/ry1X3d1iOz1UkYDCmcr928gWD1KHgyC27F50UnE0xCTrBOO1l6KR8M4w== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -stylis-rule-sheet@^0.0.10: - version "0.0.10" - resolved "https://registry.yarnpkg.com/stylis-rule-sheet/-/stylis-rule-sheet-0.0.10.tgz#44e64a2b076643f4b52e5ff71efc04d8c3c4a430" - integrity sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw== - -stylis@^3.5.0: - version "3.5.4" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-3.5.4.tgz#f665f25f5e299cf3d64654ab949a57c768b73fbe" - integrity sha512-8/3pSmthWM7lsPBKv7NXkzn2Uc9W7NotcwGNpJaa3k7WMM1XDCA4MgT5k/8BIexd5ydZdboXtU90XH9Ec4Bv/Q== - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^3.1.2: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= - dependencies: - has-flag "^1.0.0" - -supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.4.0, supports-color@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -svgo@^1.0.0, svgo@^1.0.5: - version "1.1.1" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.1.1.tgz#12384b03335bcecd85cfa5f4e3375fed671cb985" - integrity sha512-GBkJbnTuFpM4jFbiERHDWhZc/S/kpHToqmZag3aEBjPYK44JAN2QBjvrGIxLOoCyMZjuFQIfTO2eJd8uwLY/9g== - dependencies: - coa "~2.0.1" - colors "~1.1.2" - css-select "^2.0.0" - css-select-base-adapter "~0.1.0" - css-tree "1.0.0-alpha.28" - css-url-regex "^1.1.0" - csso "^3.5.0" - js-yaml "^3.12.0" - mkdirp "~0.5.1" - object.values "^1.0.4" - sax "~1.2.4" - stable "~0.1.6" - unquote "~1.1.1" - util.promisify "~1.0.0" - -symbol-tree@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" - integrity sha1-rifbOPZgp64uHDt9G8KQgZuFGeY= - -table@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/table/-/table-4.0.3.tgz#00b5e2b602f1794b9acaf9ca908a76386a7813bc" - integrity sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg== - dependencies: - ajv "^6.0.1" - ajv-keywords "^3.0.0" - chalk "^2.1.0" - lodash "^4.17.4" - slice-ansi "1.0.0" - string-width "^2.1.1" - -tapable@^1.0.0, tapable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.0.tgz#0d076a172e3d9ba088fd2272b2668fb8d194b78c" - integrity sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA== - -tar@^4: - version "4.4.6" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.6.tgz#63110f09c00b4e60ac8bcfe1bf3c8660235fbc9b" - integrity sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg== - dependencies: - chownr "^1.0.1" - fs-minipass "^1.2.5" - minipass "^2.3.3" - minizlib "^1.1.0" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.2" - -terser-webpack-plugin@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.1.0.tgz#cf7c25a1eee25bf121f4a587bb9e004e3f80e528" - integrity sha512-61lV0DSxMAZ8AyZG7/A4a3UPlrbOBo8NIQ4tJzLPAdGOQ+yoNC7l5ijEow27lBAL2humer01KLS6bGIMYQxKoA== - dependencies: - cacache "^11.0.2" - find-cache-dir "^2.0.0" - schema-utils "^1.0.0" - serialize-javascript "^1.4.0" - source-map "^0.6.1" - terser "^3.8.1" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -terser@^3.8.1: - version "3.10.8" - resolved "https://registry.yarnpkg.com/terser/-/terser-3.10.8.tgz#2fe3967396a10cdc3d575074fe857efd30a2895a" - integrity sha512-GQJHWJ/vbx0EgRk+lBMONMmKaT+ifeo/XgT/hi3KpzEEFOERVyFuJSVXH8grcmJjiqKY35ds8rBCxvABUeyyuQ== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - source-map-support "~0.5.6" - -test-exclude@^4.2.1: - version "4.2.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.3.tgz#a9a5e64474e4398339245a0a769ad7c2f4a97c20" - integrity sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA== - dependencies: - arrify "^1.0.1" - micromatch "^2.3.11" - object-assign "^4.1.0" - read-pkg-up "^1.0.1" - require-main-filename "^1.0.1" - -text-table@0.2.0, text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -throat@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" - integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= - -through2@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - integrity sha1-AARWmzfHx0ujnEPzzteNGtlBQL4= - dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - -through@^2.3.6: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - -thunky@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" - integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== - -timers-browserify@^2.0.4: - version "2.0.10" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" - integrity sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg== - dependencies: - setimmediate "^1.0.4" - -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -tmpl@1.0.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" - integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= - -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -topo@2.x.x: - version "2.0.2" - resolved "https://registry.yarnpkg.com/topo/-/topo-2.0.2.tgz#cd5615752539057c0dc0491a621c3bc6fbe1d182" - integrity sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI= - dependencies: - hoek "4.x.x" - -tough-cookie@>=2.3.3, tough-cookie@^2.3.4, tough-cookie@^2.4.3, tough-cookie@~2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" - integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== - dependencies: - psl "^1.1.24" - punycode "^1.4.1" - -tr46@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" - integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= - dependencies: - punycode "^2.1.0" - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - -tryer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" - integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA== - -tslib@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" - integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" - -type-is@~1.6.16: - version "1.6.16" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" - integrity sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.18" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= - -ua-parser-js@^0.7.18: - version "0.7.19" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.19.tgz#94151be4c0a7fb1d001af7022fdaca4642659e4b" - integrity sha512-T3PVJ6uz8i0HzPxOF9SWzWAlfN/DavlpQqepn22xgve/5QecC+XMCAtmUNnY7C9StehaV6exjUCI801lOI7QlQ== - -uglify-es@^3.3.4: - version "3.3.9" - resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" - integrity sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ== - dependencies: - commander "~2.13.0" - source-map "~0.6.1" - -uglify-js@3.4.x: - version "3.4.9" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3" - integrity sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - -uglify-js@^3.1.4: - version "3.6.0" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.0.tgz#704681345c53a8b2079fb6cec294b05ead242ff5" - integrity sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg== - dependencies: - commander "~2.20.0" - source-map "~0.6.1" - -uglifyjs-webpack-plugin@^1.2.4: - version "1.3.0" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz#75f548160858163a08643e086d5fefe18a5d67de" - integrity sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw== - dependencies: - cacache "^10.0.4" - find-cache-dir "^1.0.0" - schema-utils "^0.4.5" - serialize-javascript "^1.4.0" - source-map "^0.6.1" - uglify-es "^3.3.4" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== - -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" - -unicode-match-property-value-ecmascript@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz#9f1dc76926d6ccf452310564fd834ace059663d4" - integrity sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ== - -unicode-property-aliases-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz#5a533f31b4317ea76f17d807fa0d116546111dd0" - integrity sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg== - -union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^0.4.3" - -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= - -unique-filename@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.1.tgz#5e9edc6d1ce8fb264db18a507ef9bd8544451ca6" - integrity sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg== - dependencies: - imurmurhash "^0.1.4" - -universalify@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.0.5: - version "1.1.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.0.tgz#35256597e46a581db4793d0ce47fa9aebfc9fabd" - integrity sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw== - -upper-case@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -url-loader@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-1.1.1.tgz#4d1f3b4f90dde89f02c008e662d604d7511167c1" - integrity sha512-vugEeXjyYFBCUOpX+ZuaunbK3QXMKaQ3zUnRfIpRBlGkY7QizCnzyyn2ASfcxsvyU3ef+CJppVywnl3Kgf13Gg== - dependencies: - loader-utils "^1.1.0" - mime "^2.0.3" - schema-utils "^1.0.0" - -url-parse@^1.1.8, url-parse@^1.4.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.3.tgz#71c1303d38fb6639ade183c2992c8cc0686df862" - integrity sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util.promisify@1.0.0, util.promisify@^1.0.0, util.promisify@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= - dependencies: - inherits "2.0.1" - -util@^0.10.3: - version "0.10.4" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" - integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== - dependencies: - inherits "2.0.3" - -utila@^0.4.0, utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -uuid@^3.0.1, uuid@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -vendors@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.2.tgz#7fcb5eef9f5623b156bcea89ec37d63676f21801" - integrity sha512-w/hry/368nO21AN9QljsaIhb9ZiZtZARoVH5f3CsFbawdLdayCgKRPup7CggujvySMxx0I91NOyxdVENohprLQ== - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vm-browserify@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" - integrity sha1-XX6kW7755Kb/ZflUOOCofDV9WnM= - dependencies: - indexof "0.0.1" - -w3c-hr-time@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" - integrity sha1-gqwr/2PZUOqeMYmlimViX+3xkEU= - dependencies: - browser-process-hrtime "^0.1.2" - -w3c-xmlserializer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-1.0.0.tgz#d23e20de595b892056f20a359fc2622908d48695" - integrity sha512-0et1+9uXYiIRAecx1D5Z1nk60+vimniGdIKl4XjeqkWi6acoHNlXMv1VR5jV+jF4ooeO08oWbYxeAJOcon1oMA== - dependencies: - domexception "^1.0.1" - webidl-conversions "^4.0.2" - xml-name-validator "^3.0.0" - -walker@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= - dependencies: - makeerror "1.0.x" - -watch@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986" - integrity sha1-KAlUdsbffJDJYxOJkMClQj60uYY= - dependencies: - exec-sh "^0.2.0" - minimist "^1.2.0" - -watchpack@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" - integrity sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA== - dependencies: - chokidar "^2.0.2" - graceful-fs "^4.1.2" - neo-async "^2.5.0" - -wbuf@^1.1.0, wbuf@^1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - -webidl-conversions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== - -webpack-dev-middleware@3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz#1132fecc9026fd90f0ecedac5cbff75d1fb45890" - integrity sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA== - dependencies: - memory-fs "~0.4.1" - mime "^2.3.1" - range-parser "^1.0.3" - webpack-log "^2.0.0" - -webpack-dev-server@3.1.9: - version "3.1.9" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.1.9.tgz#8b32167624d2faff40dcedc2cbce17ed1f34d3e0" - integrity sha512-fqPkuNalLuc/hRC2QMkVYJkgNmRvxZQo7ykA2e1XRg/tMJm3qY7ZaD6d89/Fqjxtj9bOrn5wZzLD2n84lJdvWg== - dependencies: - ansi-html "0.0.7" - bonjour "^3.5.0" - chokidar "^2.0.0" - compression "^1.5.2" - connect-history-api-fallback "^1.3.0" - debug "^3.1.0" - del "^3.0.0" - express "^4.16.2" - html-entities "^1.2.0" - http-proxy-middleware "~0.18.0" - import-local "^2.0.0" - internal-ip "^3.0.1" - ip "^1.1.5" - killable "^1.0.0" - loglevel "^1.4.1" - opn "^5.1.0" - portfinder "^1.0.9" - schema-utils "^1.0.0" - selfsigned "^1.9.1" - serve-index "^1.7.2" - sockjs "0.3.19" - sockjs-client "1.1.5" - spdy "^3.4.1" - strip-ansi "^3.0.0" - supports-color "^5.1.0" - webpack-dev-middleware "3.4.0" - webpack-log "^2.0.0" - yargs "12.0.2" - -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-manifest-plugin@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.0.4.tgz#e4ca2999b09557716b8ba4475fb79fab5986f0cd" - integrity sha512-nejhOHexXDBKQOj/5v5IZSfCeTO3x1Dt1RZEcGfBSul891X/eLIcIVH31gwxPDdsi2Z8LKKFGpM4w9+oTBOSCg== - dependencies: - fs-extra "^7.0.0" - lodash ">=3.5 <5" - tapable "^1.0.0" - -webpack-sources@^1.1.0, webpack-sources@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85" - integrity sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@4.19.1: - version "4.19.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.19.1.tgz#096674bc3b573f8756c762754366e5b333d6576f" - integrity sha512-j7Q/5QqZRqIFXJvC0E59ipLV5Hf6lAnS3ezC3I4HMUybwEDikQBVad5d+IpPtmaQPQArvgUZLXIN6lWijHBn4g== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-module-context" "1.7.6" - "@webassemblyjs/wasm-edit" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - acorn "^5.6.2" - acorn-dynamic-import "^3.0.0" - ajv "^6.1.0" - ajv-keywords "^3.1.0" - chrome-trace-event "^1.0.0" - enhanced-resolve "^4.1.0" - eslint-scope "^4.0.0" - json-parse-better-errors "^1.0.2" - loader-runner "^2.3.0" - loader-utils "^1.1.0" - memory-fs "~0.4.1" - micromatch "^3.1.8" - mkdirp "~0.5.0" - neo-async "^2.5.0" - node-libs-browser "^2.0.0" - schema-utils "^0.4.4" - tapable "^1.1.0" - uglifyjs-webpack-plugin "^1.2.4" - watchpack "^1.5.0" - webpack-sources "^1.2.0" - -websocket-driver@>=0.5.1: - version "0.7.0" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" - integrity sha1-DK+dLXVdk67gSdS90NP+LMoqJOs= - dependencies: - http-parser-js ">=0.4.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" - integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== - -whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3, whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - -whatwg-fetch@3.0.0, whatwg-fetch@>=0.10.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" - integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== - -whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.2.0.tgz#a3d58ef10b76009b042d03e25591ece89b88d171" - integrity sha512-5YSO1nMd5D1hY3WzAQV3PzZL83W3YeyR1yW9PcH26Weh1t+Vzh9B6XkDh7aXm83HBZ4nSMvkjvN2H2ySWIvBgw== - -whatwg-url@^6.4.1: - version "6.5.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" - integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -whatwg-url@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz#fde926fa54a599f3adf82dff25a9f7be02dc6edd" - integrity sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -wordwrap@~0.0.2: - version "0.0.3" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" - integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= - -wordwrap@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= - -workbox-background-sync@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-background-sync/-/workbox-background-sync-3.6.3.tgz#6609a0fac9eda336a7c52e6aa227ba2ae532ad94" - integrity sha512-ypLo0B6dces4gSpaslmDg5wuoUWrHHVJfFWwl1udvSylLdXvnrfhFfriCS42SNEe5lsZtcNZF27W/SMzBlva7Q== - dependencies: - workbox-core "^3.6.3" - -workbox-broadcast-cache-update@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-broadcast-cache-update/-/workbox-broadcast-cache-update-3.6.3.tgz#3f5dff22ada8c93e397fb38c1dc100606a7b92da" - integrity sha512-pJl4lbClQcvp0SyTiEw0zLSsVYE1RDlCPtpKnpMjxFtu8lCFTAEuVyzxp9w7GF4/b3P4h5nyQ+q7V9mIR7YzGg== - dependencies: - workbox-core "^3.6.3" - -workbox-build@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-build/-/workbox-build-3.6.3.tgz#77110f9f52dc5d82fa6c1c384c6f5e2225adcbd8" - integrity sha512-w0clZ/pVjL8VXy6GfthefxpEXs0T8uiRuopZSFVQ8ovfbH6c6kUpEh6DcYwm/Y6dyWPiCucdyAZotgjz+nRz8g== - dependencies: - babel-runtime "^6.26.0" - common-tags "^1.4.0" - fs-extra "^4.0.2" - glob "^7.1.2" - joi "^11.1.1" - lodash.template "^4.4.0" - pretty-bytes "^4.0.2" - stringify-object "^3.2.2" - strip-comments "^1.0.2" - workbox-background-sync "^3.6.3" - workbox-broadcast-cache-update "^3.6.3" - workbox-cache-expiration "^3.6.3" - workbox-cacheable-response "^3.6.3" - workbox-core "^3.6.3" - workbox-google-analytics "^3.6.3" - workbox-navigation-preload "^3.6.3" - workbox-precaching "^3.6.3" - workbox-range-requests "^3.6.3" - workbox-routing "^3.6.3" - workbox-strategies "^3.6.3" - workbox-streams "^3.6.3" - workbox-sw "^3.6.3" - -workbox-cache-expiration@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-cache-expiration/-/workbox-cache-expiration-3.6.3.tgz#4819697254a72098a13f94b594325a28a1e90372" - integrity sha512-+ECNph/6doYx89oopO/UolYdDmQtGUgo8KCgluwBF/RieyA1ZOFKfrSiNjztxOrGJoyBB7raTIOlEEwZ1LaHoA== - dependencies: - workbox-core "^3.6.3" - -workbox-cacheable-response@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-cacheable-response/-/workbox-cacheable-response-3.6.3.tgz#869f1a68fce9063f6869ddbf7fa0a2e0a868b3aa" - integrity sha512-QpmbGA9SLcA7fklBLm06C4zFg577Dt8u3QgLM0eMnnbaVv3rhm4vbmDpBkyTqvgK/Ly8MBDQzlXDtUCswQwqqg== - dependencies: - workbox-core "^3.6.3" - -workbox-core@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-core/-/workbox-core-3.6.3.tgz#69abba70a4f3f2a5c059295a6f3b7c62bd00e15c" - integrity sha512-cx9cx0nscPkIWs8Pt98HGrS9/aORuUcSkWjG25GqNWdvD/pSe7/5Oh3BKs0fC+rUshCiyLbxW54q0hA+GqZeSQ== - -workbox-google-analytics@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-google-analytics/-/workbox-google-analytics-3.6.3.tgz#99df2a3d70d6e91961e18a6752bac12e91fbf727" - integrity sha512-RQBUo/6SXtIaQTRFj4RQZ9e1gAl7D8oS5S+Hi173Kk70/BgJjzPwXpC5A249Jv5YfkCOLMQCeF9A27BiD0b0ig== - dependencies: - workbox-background-sync "^3.6.3" - workbox-core "^3.6.3" - workbox-routing "^3.6.3" - workbox-strategies "^3.6.3" - -workbox-navigation-preload@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-navigation-preload/-/workbox-navigation-preload-3.6.3.tgz#a2c34eb7c17e7485b795125091215f757b3c4964" - integrity sha512-dd26xTX16DUu0i+MhqZK/jQXgfIitu0yATM4jhRXEmpMqQ4MxEeNvl2CgjDMOHBnCVMax+CFZQWwxMx/X/PqCw== - dependencies: - workbox-core "^3.6.3" - -workbox-precaching@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-precaching/-/workbox-precaching-3.6.3.tgz#5341515e9d5872c58ede026a31e19bafafa4e1c1" - integrity sha512-aBqT66BuMFviPTW6IpccZZHzpA8xzvZU2OM1AdhmSlYDXOJyb1+Z6blVD7z2Q8VNtV1UVwQIdImIX+hH3C3PIw== - dependencies: - workbox-core "^3.6.3" - -workbox-range-requests@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-range-requests/-/workbox-range-requests-3.6.3.tgz#3cc21cba31f2dd8c43c52a196bcc8f6cdbcde803" - integrity sha512-R+yLWQy7D9aRF9yJ3QzwYnGFnGDhMUij4jVBUVtkl67oaVoP1ymZ81AfCmfZro2kpPRI+vmNMfxxW531cqdx8A== - dependencies: - workbox-core "^3.6.3" - -workbox-routing@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-routing/-/workbox-routing-3.6.3.tgz#659cd8f9274986cfa98fda0d050de6422075acf7" - integrity sha512-bX20i95OKXXQovXhFOViOK63HYmXvsIwZXKWbSpVeKToxMrp0G/6LZXnhg82ijj/S5yhKNRf9LeGDzaqxzAwMQ== - dependencies: - workbox-core "^3.6.3" - -workbox-strategies@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-strategies/-/workbox-strategies-3.6.3.tgz#11a0dc249a7bc23d3465ec1322d28fa6643d64a0" - integrity sha512-Pg5eulqeKet2y8j73Yw6xTgLdElktcWExGkzDVCGqfV9JCvnGuEpz5eVsCIK70+k4oJcBCin9qEg3g3CwEIH3g== - dependencies: - workbox-core "^3.6.3" - -workbox-streams@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-streams/-/workbox-streams-3.6.3.tgz#beaea5d5b230239836cc327b07d471aa6101955a" - integrity sha512-rqDuS4duj+3aZUYI1LsrD2t9hHOjwPqnUIfrXSOxSVjVn83W2MisDF2Bj+dFUZv4GalL9xqErcFW++9gH+Z27w== - dependencies: - workbox-core "^3.6.3" - -workbox-sw@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-sw/-/workbox-sw-3.6.3.tgz#278ea4c1831b92bbe2d420da8399176c4b2789ff" - integrity sha512-IQOUi+RLhvYCiv80RP23KBW/NTtIvzvjex28B8NW1jOm+iV4VIu3VXKXTA6er5/wjjuhmtB28qEAUqADLAyOSg== - -workbox-webpack-plugin@3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-webpack-plugin/-/workbox-webpack-plugin-3.6.3.tgz#a807bb891b4e4e3c808df07e58f17de2d5ba6182" - integrity sha512-RwmKjc7HFHUFHoOlKoZUq9349u0QN3F8W5tZZU0vc1qsBZDINWXRiIBCAKvo/Njgay5sWz7z4I2adnyTo97qIQ== - dependencies: - babel-runtime "^6.26.0" - json-stable-stringify "^1.0.1" - workbox-build "^3.6.3" - -worker-farm@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.6.0.tgz#aecc405976fab5a95526180846f0dba288f3a4a0" - integrity sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ== - dependencies: - errno "~0.1.7" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -write-file-atomic@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" - integrity sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - -write@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" - integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= - dependencies: - mkdirp "^0.5.1" - -ws@^5.2.0: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" - integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== - dependencies: - async-limiter "~1.0.0" - -ws@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-6.1.0.tgz#119a9dbf92c54e190ec18d10e871d55c95cf9373" - integrity sha512-H3dGVdGvW2H8bnYpIDc3u3LH8Wue3Qh+Zto6aXXFzvESkTVT6rAfKR6tR/+coaUvxs8yHtmNV0uioBF62ZGSTg== - dependencies: - async-limiter "~1.0.0" - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xmlchars@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-1.3.1.tgz#1dda035f833dbb4f86a0c28eaa6ca769214793cf" - integrity sha512-tGkGJkN8XqCod7OT+EvGYK5Z4SfDQGD30zAa58OcnAa0RRWgzUEK72tkXhsX1FZd+rgnhRxFtmO+ihkp8LHSkw== - -xregexp@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020" - integrity sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg== - -xtend@^4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= - -y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= - -"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== - -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - -yallist@^3.0.0, yallist@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.2.tgz#8452b4bb7e83c7c188d8041c1a837c773d6d8bb9" - integrity sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k= - -yargs-parser@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" - integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== - dependencies: - camelcase "^4.1.0" - -yargs-parser@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" - integrity sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc= - dependencies: - camelcase "^4.1.0" - -yargs@12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc" - integrity sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ== - dependencies: - cliui "^4.0.0" - decamelize "^2.0.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^10.1.0" - -yargs@^11.0.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77" - integrity sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A== - dependencies: - cliui "^4.0.0" - decamelize "^1.1.1" - find-up "^2.1.0" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^9.0.2" diff --git a/packages/type/index.scss b/packages/type/index.scss index 7bff12346d25..c0802d6597d9 100644 --- a/packages/type/index.scss +++ b/packages/type/index.scss @@ -5,12 +5,12 @@ // LICENSE file in the root directory of this source tree. // -@forward 'scss/modules/prefix' with ( +@forward 'scss/prefix' with ( $prefix: 'bx' !default, ); -@forward 'scss/modules/classes'; -@forward 'scss/modules/font-family'; -@forward 'scss/modules/reset'; -@forward 'scss/modules/scale'; -@forward 'scss/modules/styles'; -@forward 'scss/modules/default-type'; +@forward 'scss/classes'; +@forward 'scss/font-family'; +@forward 'scss/reset'; +@forward 'scss/scale'; +@forward 'scss/styles'; +@forward 'scss/default-type'; diff --git a/packages/type/package.json b/packages/type/package.json index cdb40e90cc9c..473d568b4b8c 100644 --- a/packages/type/package.json +++ b/packages/type/package.json @@ -37,13 +37,13 @@ "clean": "rimraf css es lib umd scss/_inlined scss/vendor" }, "dependencies": { - "@carbon/grid": "^10.43.0", - "@carbon/import-once": "^10.7.0" + "@carbon/grid": "^10.43.0" }, "devDependencies": { "@carbon/cli": "^10.34.0", "@carbon/test-utils": "^10.21.0", "change-case": "^4.1.1", + "css": "^3.0.0", "rimraf": "^3.0.0" }, "eyeglass": { diff --git a/packages/type/scss/_classes.scss b/packages/type/scss/_classes.scss index 021d798b06ef..56f15ba6de04 100644 --- a/packages/type/scss/_classes.scss +++ b/packages/type/scss/_classes.scss @@ -5,23 +5,24 @@ // LICENSE file in the root directory of this source tree. // -@import 'prefix'; -@import 'styles'; -@import 'font-family'; +@use 'sass:map'; +@use 'font-family' as *; +@use 'prefix' as *; +@use 'styles' as *; /// Create type classes for font families, weights, styles /// @access public /// @group @carbon/type -@mixin carbon--type-classes { +@mixin type-classes { // Font families - @each $name, $value in $carbon--font-families { + @each $name, $value in $font-families { .#{$prefix}--type-#{$name} { font-family: $value; } } // Font weights - @each $name, $value in $carbon--font-weights { + @each $name, $value in $font-weights { .#{$prefix}--type-#{$name} { font-weight: $value; } @@ -35,7 +36,7 @@ // Type styles @each $name, $value in $tokens { .#{$prefix}--type-#{$name} { - @include carbon--type-style($name, map-has-key($value, breakpoints)); + @include type-style($name, map.has-key($value, breakpoints)); } } } diff --git a/packages/type/scss/modules/_default-type.scss b/packages/type/scss/_default-type.scss similarity index 100% rename from packages/type/scss/modules/_default-type.scss rename to packages/type/scss/_default-type.scss diff --git a/packages/type/scss/_font-family.scss b/packages/type/scss/_font-family.scss index 9803c8013ceb..0e579c378d79 100644 --- a/packages/type/scss/_font-family.scss +++ b/packages/type/scss/_font-family.scss @@ -5,24 +5,58 @@ // LICENSE file in the root directory of this source tree. // +@use 'sass:string'; + /// Font family fallbacks for: IBM Plex Mono, IBM Plex Sans, IBM Plex Sans /// Condensed, IBM Plex Sans Hebrew, and IBM Plex Serif /// @type Map /// @access public /// @group @carbon/type -$carbon--font-families: ( +$font-families: ( 'mono': - unquote( - "'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace" + string.unquote( + "'IBM Plex Mono', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', monospace" + ), + 'sans': + string.unquote( + "'IBM Plex Sans', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" ), - 'sans': unquote("'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif"), 'sans-condensed': - unquote("'IBM Plex Sans Condensed', 'Helvetica Neue', Arial, sans-serif"), + string.unquote( + "'IBM Plex Sans Condensed', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" + ), + 'sans-arabic': + string.unquote( + "'IBM Plex Sans Arabic', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" + ), + 'sans-devanagari': + string.unquote( + "'IBM Plex Sans Devanagari', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" + ), 'sans-hebrew': - unquote( - "'IBM Plex Sans Hebrew', 'Helvetica Hebrew', 'Arial Hebrew', sans-serif" + string.unquote( + "'IBM Plex Sans Hebrew', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" + ), + 'sans-jp': + string.unquote( + "'IBM Plex Sans JP', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" + ), + 'sans-kr': + string.unquote( + "'IBM Plex Sans KR', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" + ), + 'sans-thai-looped': + string.unquote( + "'IBM Plex Sans Thai Looped', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" + ), + 'sans-thai': + string.unquote( + "'IBM Plex Sans Thai', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" + ), + 'serif': + string.unquote( + "'IBM Plex Serif', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', serif" ), - 'serif': unquote("'IBM Plex Serif', 'Georgia', Times, serif"), ) !default; /// Get the font-family for an IBM Plex font @@ -30,23 +64,23 @@ $carbon--font-families: ( /// @return {String} /// @access public /// @group @carbon/type -@function carbon--font-family($name) { - @return map-get($carbon--font-families, $name); +@function font-family($name) { + @return map-get($font-families, $name); } /// Include the `font-family` definition for the given name in your selector /// @param {String} $name /// @access public /// @group @carbon/type -@mixin carbon--font-family($name) { - font-family: carbon--font-family($name); +@mixin font-family($name) { + font-family: font-family($name); } /// Suggested font weights to be used in product /// @type Map /// @access public /// @group @carbon/type -$carbon--font-weights: ( +$font-weights: ( 'light': 300, 'regular': 400, 'semibold': 600, @@ -57,14 +91,14 @@ $carbon--font-weights: ( /// @return {Number} /// @access public /// @group @carbon/type -@function carbon--font-weight($weight) { - @return map-get($carbon--font-weights, $weight); +@function font-weight($weight) { + @return map-get($font-weights, $weight); } /// Set the `font-weight` property with the value for a given name /// @param {String} $weight /// @access public /// @group @carbon/type -@mixin carbon--font-weight($weight) { - font-weight: carbon--font-weight($weight); +@mixin font-weight($weight) { + font-weight: font-weight($weight); } diff --git a/packages/type/scss/_reset.scss b/packages/type/scss/_reset.scss index 55a33241fc6b..d16d13cdbe56 100644 --- a/packages/type/scss/_reset.scss +++ b/packages/type/scss/_reset.scss @@ -5,25 +5,26 @@ // LICENSE file in the root directory of this source tree. // -@import '@carbon/layout/scss/convert'; -@import 'font-family'; -@import 'styles'; +@use 'sass:map'; +@use 'sass:meta'; +@use '@carbon/layout'; +@use 'font-family' as *; /// Include a type reset for a given body and mono font family -/// @param {String} $body-font-family [carbon--font-family('sans')] - The font family used on the `` element -/// @param {String} $mono-font-family [carbon--font-family('mono')] - The font family used on elements that require mono fonts, like the `` element +/// @param {String} $body-font-family [font-family('sans')] - The font family used on the `` element +/// @param {String} $mono-font-family [font-family('mono')] - The font family used on elements that require mono fonts, like the `` element /// @access public /// @group @carbon/type -@mixin carbon--type-reset( - $body-font-family: carbon--font-family('sans'), - $mono-font-family: carbon--font-family('mono') +@mixin reset( + $body-font-family: font-family('sans'), + $mono-font-family: font-family('mono') ) { html { font-size: 100%; } body { - @include carbon--font-weight('regular'); + @include font-weight('regular'); font-family: $body-font-family; -moz-osx-font-smoothing: grayscale; @@ -36,53 +37,6 @@ } strong { - @include carbon--font-weight('semibold'); - } -} - -/// Include default type styles -/// @access public -/// @group @carbon/type -@mixin carbon--default-type { - h1 { - @include carbon--type-style('productive-heading-06'); - } - - h2 { - @include carbon--type-style('productive-heading-05'); - } - - h3 { - @include carbon--type-style('productive-heading-04'); - } - - h4 { - @include carbon--type-style('productive-heading-03'); - } - - h5 { - @include carbon--type-style('productive-heading-02'); - } - - h6 { - @include carbon--type-style('productive-heading-01'); - } - - p { - @include carbon--type-style('body-long-02'); - } - - a { - @if global-variable-exists('carbon--theme') and - map-has-key($carbon--theme, 'link-01') - { - color: map-get($carbon--theme, 'link-01'); - } @else { - color: #0062fe; - } - } - - em { - font-style: italic; + @include font-weight('semibold'); } } diff --git a/packages/type/scss/_scale.scss b/packages/type/scss/_scale.scss index 6074bd6c178a..e8152e849eb4 100644 --- a/packages/type/scss/_scale.scss +++ b/packages/type/scss/_scale.scss @@ -5,31 +5,29 @@ // LICENSE file in the root directory of this source tree. // -@import '@carbon/layout/scss/convert'; +@use '@carbon/layout'; +@use 'sass:list'; /// Compute the type size for the given type scale step /// @param {Number} $step /// @return {Number} In px /// @access public /// @group @carbon/type -@function carbon--get-type-size($step) { +@function get-type-size($step) { @if $step == 1 { @return 12px; } // Yn = Yn-1 + {INT[(n-2)/4] + 1} * 2 - @return carbon--get-type-size($step - 1) + (floor(($step - 2) * 0.25) + 1) * 2; + @return get-type-size($step - 1) + (floor(($step - 2) * 0.25) + 1) * 2; } /// Type scale follows a custom formula for determining each step size and supports sizes from 12px to 92px /// @type Map /// @access public /// @group @carbon/type -$carbon--type-scale: (); +$type-scale: (); @for $i from 1 through 23 { - $carbon--type-scale: append( - $carbon--type-scale, - carbon--rem(carbon--get-type-size($i)) - ); + $type-scale: list.append($type-scale, layout.rem(get-type-size($i))); } /// Get the value of a specific step in the type scale @@ -37,23 +35,23 @@ $carbon--type-scale: (); /// @return {Number} In rem /// @access public /// @group @carbon/type -@function carbon--type-scale($step) { - @return nth($carbon--type-scale, $step); +@function type-scale($step) { + @return nth($type-scale, $step); } /// Set the font-size value of a selector with the value at the given `$step` /// @param {Number} $step /// @access public /// @group @carbon/type -@mixin carbon--type-scale($step) { - font-size: carbon--type-scale($step); +@mixin type-scale($step) { + font-size: type-scale($step); } /// Alias of `type-scale` mixin. /// @param {Number} $step -/// @alias carbon--type-scale +/// @alias type-scale /// @access public /// @group @carbon/type -@mixin carbon--font-size($step) { - font-size: carbon--type-scale($step); +@mixin font-size($step) { + font-size: type-scale($step); } diff --git a/packages/type/scss/_styles.import.scss b/packages/type/scss/_styles.import.scss deleted file mode 100644 index d4b0d69eafe8..000000000000 --- a/packages/type/scss/_styles.import.scss +++ /dev/null @@ -1,766 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// -//------------------------------------------- -// Compatibility notes (*.import.scss) -// ------------------------------------------ -// -// This file is intended to be consumed and processed with dart-sass. -// It is incompatible with node-sass/libsass as it contains sass language features -// or functions that are unavailable in node-sass/libsass, such as `math.div`. -// -// The non-`.import` suffixed version of this file eg. `_filename.scss` -// is intended to be compatible with node-sass/libsass. -// -// Styles authored within this file must be duplicated to the corresponding -// compatibility file to ensure we continue to support node-sass and dart-sass -// in v10. - -@use "sass:meta"; -@use "sass:math"; -@import '@carbon/layout/scss/breakpoint'; -@import 'font-family'; -@import 'scale'; - -/// @type Map -/// @access public -/// @group @carbon/type -$caption-01: ( - font-size: carbon--type-scale(1), - font-weight: carbon--font-weight('regular'), - line-height: 1.34, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$caption-02: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.29, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$label-01: ( - font-size: carbon--type-scale(1), - font-weight: carbon--font-weight('regular'), - line-height: 1.34, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$label-02: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.29, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$helper-text-01: ( - font-size: carbon--type-scale(1), - line-height: 1.34, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$helper-text-02: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.29, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-short-01: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.29, - letter-spacing: 0.16px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-long-01: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.43, - letter-spacing: 0.16px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-short-02: ( - font-size: carbon--type-scale(3), - font-weight: carbon--font-weight('regular'), - line-height: 1.375, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-long-02: ( - font-size: carbon--type-scale(3), - font-weight: carbon--font-weight('regular'), - line-height: 1.5, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$code-01: ( - font-family: carbon--font-family('mono'), - font-size: carbon--type-scale(1), - font-weight: carbon--font-weight('regular'), - line-height: 1.34, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$code-02: ( - font-family: carbon--font-family('mono'), - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.43, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-01: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('semibold'), - line-height: 1.29, - letter-spacing: 0.16px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-01: $heading-01 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-02: ( - font-size: carbon--type-scale(3), - font-weight: carbon--font-weight('semibold'), - line-height: 1.375, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-02: $heading-02 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-03: ( - font-size: carbon--type-scale(5), - font-weight: carbon--font-weight('regular'), - line-height: 1.4, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-04: ( - font-size: carbon--type-scale(7), - font-weight: carbon--font-weight('regular'), - line-height: 1.29, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-05: ( - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('regular'), - line-height: 1.25, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-06: ( - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('light'), - // Extra digit needed for precision in Chrome - line-height: 1.199, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-07: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('light'), - line-height: 1.19, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-01: map-merge( - $heading-01, - ( - line-height: 1.25, - ) -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-02: map-merge( - $heading-02, - ( - line-height: 1.5, - ) -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-03: ( - font-size: carbon--type-scale(5), - font-weight: carbon--font-weight('regular'), - line-height: 1.4, - letter-spacing: 0, - breakpoints: ( - xlg: ( - font-size: carbon--type-scale(5), - line-height: 1.25, - ), - max: ( - font-size: carbon--type-scale(6), - line-height: 1.334, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-04: ( - font-size: carbon--type-scale(7), - font-weight: carbon--font-weight('regular'), - line-height: 1.29, - letter-spacing: 0, - breakpoints: ( - xlg: ( - font-size: carbon--type-scale(7), - line-height: 1.25, - ), - max: ( - font-size: carbon--type-scale(8), - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-05: ( - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('regular'), - line-height: 1.25, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: carbon--type-scale(9), - font-weight: carbon--font-weight('light'), - line-height: 1.22, - ), - lg: ( - font-size: carbon--type-scale(10), - line-height: 1.19, - ), - xlg: ( - font-size: carbon--type-scale(11), - line-height: 1.17, - ), - max: ( - font-size: carbon--type-scale(13), - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-06: ( - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('semibold'), - line-height: 1.25, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: carbon--type-scale(9), - line-height: 1.22, - ), - lg: ( - font-size: carbon--type-scale(10), - line-height: 1.19, - ), - xlg: ( - font-size: carbon--type-scale(11), - line-height: 1.17, - ), - max: ( - font-size: carbon--type-scale(13), - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-paragraph-01: ( - font-size: carbon--type-scale(6), - font-weight: carbon--font-weight('light'), - line-height: 1.334, - letter-spacing: 0, - breakpoints: ( - lg: ( - font-size: carbon--type-scale(7), - line-height: 1.29, - ), - max: ( - font-size: carbon--type-scale(8), - line-height: 1.25, - ), - ), -); - -/// @type Map -/// @access public -/// @group @carbon/type -$quotation-01: ( - font-size: carbon--type-scale(5), - font-weight: carbon--font-weight('regular'), - line-height: 1.3, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: carbon--type-scale(5), - ), - lg: ( - font-size: carbon--type-scale(6), - line-height: 1.334, - ), - xlg: ( - font-size: carbon--type-scale(7), - line-height: 1.29, - ), - max: ( - font-size: carbon--type-scale(8), - line-height: 1.25, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$quotation-02: ( - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('light'), - line-height: 1.25, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: carbon--type-scale(9), - line-height: 1.22, - ), - lg: ( - font-size: carbon--type-scale(10), - line-height: 1.19, - ), - xlg: ( - font-size: carbon--type-scale(11), - line-height: 1.17, - ), - max: ( - font-size: carbon--type-scale(13), - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$display-01: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('light'), - line-height: 1.19, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: carbon--type-scale(10), - ), - lg: ( - font-size: carbon--type-scale(12), - ), - xlg: ( - font-size: carbon--type-scale(13), - line-height: 1.17, - ), - max: ( - font-size: carbon--type-scale(15), - line-height: 1.13, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$display-02: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('semibold'), - line-height: 1.19, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: carbon--type-scale(10), - ), - lg: ( - font-size: carbon--type-scale(12), - ), - xlg: ( - font-size: carbon--type-scale(13), - line-height: 1.16, - ), - max: ( - font-size: carbon--type-scale(15), - line-height: 1.13, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$display-03: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('light'), - line-height: 1.19, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: carbon--type-scale(14), - line-height: 1.15, - ), - lg: ( - font-size: carbon--type-scale(17), - line-height: 1.11, - letter-spacing: -0.64px, - ), - xlg: ( - font-size: carbon--type-scale(20), - line-height: 1.07, - letter-spacing: -0.64px, - ), - max: ( - font-size: carbon--type-scale(23), - line-height: 1.05, - letter-spacing: -0.96px, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$display-04: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('semibold'), - line-height: 1.19, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: carbon--type-scale(14), - line-height: 1.15, - ), - lg: ( - font-size: carbon--type-scale(17), - line-height: 1.11, - letter-spacing: -0.64px, - ), - xlg: ( - font-size: carbon--type-scale(20), - line-height: 1.07, - letter-spacing: -0.64px, - ), - max: ( - font-size: carbon--type-scale(23), - line-height: 1.05, - letter-spacing: -0.96px, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$tokens: ( - caption-01: $caption-01, - caption-02: $caption-02, - label-01: $label-01, - label-02: $label-02, - helper-text-01: $helper-text-01, - helper-text-02: $helper-text-02, - body-short-01: $body-short-01, - body-short-02: $body-short-02, - body-long-01: $body-long-01, - body-long-02: $body-long-02, - code-01: $code-01, - code-02: $code-02, - heading-01: $heading-01, - heading-02: $heading-02, - productive-heading-01: $productive-heading-01, - productive-heading-02: $productive-heading-02, - productive-heading-03: $productive-heading-03, - productive-heading-04: $productive-heading-04, - productive-heading-05: $productive-heading-05, - productive-heading-06: $productive-heading-06, - productive-heading-07: $productive-heading-07, - expressive-paragraph-01: $expressive-paragraph-01, - expressive-heading-01: $expressive-heading-01, - expressive-heading-02: $expressive-heading-02, - expressive-heading-03: $expressive-heading-03, - expressive-heading-04: $expressive-heading-04, - expressive-heading-05: $expressive-heading-05, - expressive-heading-06: $expressive-heading-06, - quotation-01: $quotation-01, - quotation-02: $quotation-02, - display-01: $display-01, - display-02: $display-02, - display-03: $display-03, - display-04: $display-04, -); - -/// @param {Map} $map -/// @access public -/// @group @carbon/type -@mixin properties($map) { - @each $name, $value in $map { - #{$name}: $value; - } -} - -/// @param {Number} $value - Number with units -/// @return {Number} Without units -/// @access public -/// @group @carbon/type -@function strip-unit($value) { - @if meta.function-exists('div', 'math') { - @return math.div($value, $value * 0 + 1); - } @else { - @return $value / ($value * 0 + 1); - } -} - -/// This helper includes fluid type styles for the given token value. Fluid type -/// means that the `font-size` is computed using `calc()` in order to be -/// determined by the screen size instead of a breakpoint. As a result, fluid -/// styles should be used with caution in fixed width contexts. -/// -/// In addition, we make use of %-based line-heights so that the line-height of -/// each type style is computed correctly due to the dynamic nature of the -/// `font-size`. -/// -/// Most of the logic for this work comes from CSS Tricks: -/// https://css-tricks.com/snippets/css/fluid-typography/ -/// -/// @param {Map} $type-styles - The value of a given type token -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - Custom breakpoints to use -/// @access public -/// @group @carbon/type -@mixin fluid-type($type-styles, $breakpoints: $carbon--grid-breakpoints) { - // Include the initial styles for the given token by default without any - // media query guard. This includes `font-size` as a fallback in the case - // that a browser does not support `calc()` - @include properties(map-remove($type-styles, breakpoints)); - // We also need to include the `sm` styles by default since they don't - // appear in the fluid styles for tokens - @include fluid-type-size($type-styles, sm, $breakpoints); - - // Finally, we need to go through all the breakpoints defined in the type - // token and apply the properties and fluid type size for that given - // breakpoint - @each $name, $values in map-get($type-styles, breakpoints) { - @include carbon--breakpoint($name) { - @include properties($values); - @include fluid-type-size($type-styles, $name, $breakpoints); - } - } -} - -/// Computes the fluid `font-size` for a given type style and breakpoint -/// @param {Map} $type-styles - The styles for a given token -/// @param {String} $name - The name of the breakpoint to which we apply the fluid -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - The breakpoints for the grid system -/// @access public -/// @group @carbon/type -@mixin fluid-type-size( - $type-styles, - $name, - $breakpoints: $carbon--grid-breakpoints -) { - // Get the information about the breakpoint we're currently working in. Useful - // for getting initial width information - $breakpoint: map-get($breakpoints, $name); - - // Our fluid styles are captured under the 'breakpoints' property in our type - // styles map. These define what values to treat as `max-` variables below - $fluid-sizes: map-get($type-styles, breakpoints); - $fluid-breakpoint: (); - // Special case for `sm` because the styles for small are on the type style - // directly - @if $name == sm { - $fluid-breakpoint: map-remove($type-styles, breakpoints); - } @else { - $fluid-breakpoint: map-get($fluid-sizes, $name); - } - - // Initialize our font-sizes to the default size for the type style - $max-font-size: map-get($type-styles, font-size); - $min-font-size: map-get($type-styles, font-size); - @if map-has-key($fluid-breakpoint, font-size) { - $min-font-size: map-get($fluid-breakpoint, font-size); - } - - // Initialize our min and max width to the width of the current breakpoint - $max-vw: map-get($breakpoint, width); - $min-vw: map-get($breakpoint, width); - - // We can use `breakpoint-next` to see if there is another breakpoint we can - // use to update `max-font-size` and `max-vw` with larger values - $next-breakpoint-available: carbon--breakpoint-next($name, $breakpoints); - $next-fluid-breakpoint-name: null; - - // We need to figure out what the next available fluid breakpoint is for our - // given $type-styles. In this loop we try and iterate through breakpoints - // until we either manually set $next-breakpoint-available to null or - // `breakpoint-next` returns null. - @while $next-breakpoint-available { - @if map-has-key($fluid-sizes, $next-breakpoint-available) { - $next-fluid-breakpoint-name: $next-breakpoint-available; - $next-breakpoint-available: null; - } @else { - $next-breakpoint-available: carbon--breakpoint-next( - $next-breakpoint-available, - $breakpoints - ); - } - } - - // If we have found the next available fluid breakpoint name, then we know - // that we have values that we can use to set max-font-size and max-vw as both - // values derive from the next breakpoint - @if $next-fluid-breakpoint-name { - $next-fluid-breakpoint: map-get($breakpoints, $next-fluid-breakpoint-name); - $max-font-size: map-get( - map-get($fluid-sizes, $next-fluid-breakpoint-name), - font-size - ); - $max-vw: map-get($next-fluid-breakpoint, width); - - // prettier-ignore - font-size: calc(#{$min-font-size} + - #{strip-unit($max-font-size - $min-font-size)} * - ((100vw - #{$min-vw}) / #{strip-unit($max-vw - $min-vw)}) - ); - } @else { - // Otherwise, just default to setting the font size found from the type - // style or the given fluid breakpoint in the type style - font-size: $min-font-size; - } -} - -// TODO move following variable and `custom-property` mixin into shared file for -// both `@carbon/type` and `@carbon/themes` - -/// @access private -/// @group @carbon/type -$custom-property-prefix: 'cds' !default; - -/// @access private -/// @group @carbon/type -@mixin custom-properties($name, $value) { - @each $property, $value in $value { - #{$property}: var( - --#{$custom-property-prefix}-#{$name}-#{$property}, - #{$value} - ); - } -} - -/// Helper mixin to include the styles for a given token in any selector in your -/// project. Also includes an optional fluid option that will enable fluid -/// styles for the token if they are defined. Fluid styles will cause the -/// token's font-size to be computed based on the viewport size. As a result, use -/// with caution in fixed contexts. -/// @param {String} $name - The name of the token to get the styles for -/// @param {Boolean} $fluid [false] - Specify whether to include fluid styles for the -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - Provide a custom breakpoint map to use -/// @access public -/// @group @carbon/type -@mixin carbon--type-style( - $name, - $fluid: false, - $breakpoints: $carbon--grid-breakpoints -) { - @if not map-has-key($tokens, $name) { - @error 'Unable to find a token with the name: `#{$name}`'; - } - - $token: map-get($tokens, $name); - - // If $fluid is set to true and the token has breakpoints defined for fluid - // styles, delegate to the fluid-type helper for the given token - // Otherwise remove token breakpoints - @if $fluid == true and map-has-key($token, 'breakpoints') { - @include fluid-type($token, $breakpoints); - } @else { - @if global-variable-exists('feature-flags') and - map-get($feature-flags, 'enable-css-custom-properties') - { - @include custom-properties($name, map-remove($token, 'breakpoints')); - } @else { - // Otherwise, we just include all the property declarations directly on the - // selector - @include properties(map-remove($token, 'breakpoints')); - } - } -} diff --git a/packages/type/scss/_styles.scss b/packages/type/scss/_styles.scss index 08c3ca957825..53f952957eaf 100644 --- a/packages/type/scss/_styles.scss +++ b/packages/type/scss/_styles.scss @@ -4,75 +4,32 @@ // This source code is licensed under the Apache-2.0 license found in the // LICENSE file in the root directory of this source tree. // -//------------------------------------------- -// Compatibility notes -// ------------------------------------------ -// -// This file is intended to be consumed and processed with node-sass/libsass. -// Sass language features only available in dart-sass, such as `math.div`, -// should not be used. -// -// The `.import` suffixed version of this file eg. `_filename.import.scss` -// is intended to be compatible with dart-sass. -// -// Styles authored within this file must be duplicated to the corresponding -// compatibility file to ensure we continue to support node-sass and dart-sass -// in v10. // stylelint-disable number-max-precision -@import '@carbon/layout/scss/breakpoint'; -@import 'font-family'; -@import 'scale'; - -/// @type Map -/// @access public -/// @deprecated -/// @group @carbon/type -$caption-01: ( - font-size: carbon--type-scale(1), - font-weight: carbon--font-weight('regular'), - line-height: 1.33333, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @deprecated -/// @group @carbon/type -$caption-02: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.28572, - letter-spacing: 0.32px, -) !default; +@use 'sass:map'; +@use 'sass:math'; +@use '@carbon/grid/scss/config' as gridconfig; +@use '@carbon/grid/scss/breakpoint' as grid; +@use 'font-family'; +@use 'scale'; /// @type Map /// @access public /// @group @carbon/type $label-01: ( - font-size: carbon--type-scale(1), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(1), + font-weight: font-family.font-weight('regular'), line-height: 1.33333, letter-spacing: 0.32px, ) !default; -/// @type Map -/// @access public -/// @group @carbon/type -$label-02: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.28572, - letter-spacing: 0.16px, -) !default; - /// @type Map /// @access public /// @group @carbon/type $legal-01: ( - font-size: carbon--type-scale(1), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(1), + font-weight: font-family.font-weight('regular'), line-height: 1.33333, letter-spacing: 0.32px, ) !default; @@ -81,8 +38,8 @@ $legal-01: ( /// @access public /// @group @carbon/type $legal-02: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(2), + font-weight: font-family.font-weight('regular'), line-height: 1.28572, letter-spacing: 0.16px, ) !default; @@ -92,28 +49,17 @@ $legal-02: ( /// @deprecated /// @group @carbon/type $helper-text-01: ( - font-size: carbon--type-scale(1), + font-size: scale.type-scale(1), line-height: 1.33333, letter-spacing: 0.32px, ) !default; -/// @type Map -/// @access public -/// @deprecated -/// @group @carbon/type -$helper-text-02: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), - line-height: 1.28572, - letter-spacing: 0.16px, -) !default; - /// @type Map /// @access public /// @group @carbon/type $body-short-01: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(2), + font-weight: font-family.font-weight('regular'), line-height: 1.28572, letter-spacing: 0.16px, ) !default; @@ -127,8 +73,8 @@ $body-compact-01: $body-short-01 !default; /// @access public /// @group @carbon/type $body-long-01: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(2), + font-weight: font-family.font-weight('regular'), line-height: 1.42857, letter-spacing: 0.16px, ) !default; @@ -142,8 +88,8 @@ $body-01: $body-long-01 !default; /// @access public /// @group @carbon/type $body-short-02: ( - font-size: carbon--type-scale(3), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(3), + font-weight: font-family.font-weight('regular'), line-height: 1.375, letter-spacing: 0, ) !default; @@ -157,8 +103,8 @@ $body-compact-02: $body-short-02 !default; /// @access public /// @group @carbon/type $body-long-02: ( - font-size: carbon--type-scale(3), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(3), + font-weight: font-family.font-weight('regular'), line-height: 1.5, letter-spacing: 0, ) !default; @@ -172,9 +118,9 @@ $body-02: $body-long-02 !default; /// @access public /// @group @carbon/type $code-01: ( - font-family: carbon--font-family('mono'), - font-size: carbon--type-scale(1), - font-weight: carbon--font-weight('regular'), + font-family: font-family.font-family('mono'), + font-size: scale.type-scale(1), + font-weight: font-family.font-weight('regular'), line-height: 1.33333, letter-spacing: 0.32px, ) !default; @@ -183,9 +129,9 @@ $code-01: ( /// @access public /// @group @carbon/type $code-02: ( - font-family: carbon--font-family('mono'), - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('regular'), + font-family: font-family.font-family('mono'), + font-size: scale.type-scale(2), + font-weight: font-family.font-weight('regular'), line-height: 1.42857, letter-spacing: 0.32px, ) !default; @@ -194,8 +140,8 @@ $code-02: ( /// @access public /// @group @carbon/type $heading-01: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('semibold'), + font-size: scale.type-scale(2), + font-weight: font-family.font-weight('semibold'), line-height: 1.42857, letter-spacing: 0.16px, ) !default; @@ -204,8 +150,8 @@ $heading-01: ( /// @access public /// @group @carbon/type $productive-heading-01: ( - font-size: carbon--type-scale(2), - font-weight: carbon--font-weight('semibold'), + font-size: scale.type-scale(2), + font-weight: font-family.font-weight('semibold'), line-height: 1.28572, letter-spacing: 0.16px, ) !default; @@ -219,8 +165,8 @@ $heading-compact-01: $productive-heading-01 !default; /// @access public /// @group @carbon/type $heading-02: ( - font-size: carbon--type-scale(3), - font-weight: carbon--font-weight('semibold'), + font-size: scale.type-scale(3), + font-weight: font-family.font-weight('semibold'), line-height: 1.5, letter-spacing: 0, ) !default; @@ -229,24 +175,23 @@ $heading-02: ( /// @access public /// @group @carbon/type $productive-heading-02: ( - font-size: carbon--type-scale(3), - font-weight: carbon--font-weight('semibold'), + font-size: scale.type-scale(3), + font-weight: font-family.font-weight('semibold'), line-height: 1.375, letter-spacing: 0, ) !default; +/// @type Map +/// @access public +/// @group @carbon/type $heading-compact-02: $productive-heading-02 !default; -// Question for designers: -// heading-02 currently maps to productive heading-02 -// what are the styles for heading-compact-02? - /// @type Map /// @access public /// @group @carbon/type $productive-heading-03: ( - font-size: carbon--type-scale(5), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(5), + font-weight: font-family.font-weight('regular'), line-height: 1.4, letter-spacing: 0, ) !default; @@ -260,8 +205,8 @@ $heading-03: $productive-heading-03 !default; /// @access public /// @group @carbon/type $productive-heading-04: ( - font-size: carbon--type-scale(7), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(7), + font-weight: font-family.font-weight('regular'), line-height: 1.28572, letter-spacing: 0, ) !default; @@ -275,8 +220,8 @@ $heading-04: $productive-heading-04 !default; /// @access public /// @group @carbon/type $productive-heading-05: ( - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(8), + font-weight: font-family.font-weight('regular'), line-height: 1.25, letter-spacing: 0, ) !default; @@ -290,8 +235,8 @@ $heading-05: $productive-heading-05 !default; /// @access public /// @group @carbon/type $productive-heading-06: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('light'), + font-size: scale.type-scale(8), + font-weight: font-family.font-weight('light'), // Extra digit needed for precision in Chrome line-height: 1.199, letter-spacing: 0, @@ -306,8 +251,8 @@ $heading-06: $productive-heading-06 !default; /// @access public /// @group @carbon/type $productive-heading-07: ( - font-size: carbon--type-scale(12), - font-weight: carbon--font-weight('light'), + font-size: scale.type-scale(10), + font-weight: font-family.font-weight('light'), line-height: 1.19, letter-spacing: 0, ) !default; @@ -331,18 +276,18 @@ $expressive-heading-02: $heading-02 !default; /// @access public /// @group @carbon/type $expressive-heading-03: ( - font-size: carbon--type-scale(5), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(5), + font-weight: font-family.font-weight('regular'), line-height: 1.4, letter-spacing: 0, breakpoints: ( xlg: ( - font-size: carbon--type-scale(5), + font-size: scale.type-scale(5), line-height: 1.25, ), max: ( - font-size: carbon--type-scale(6), - line-height: 1.33333, + font-size: scale.type-scale(6), + line-height: 1.334, ), ), ) !default; @@ -356,17 +301,17 @@ $fluid-heading-03: $expressive-heading-03 !default; /// @access public /// @group @carbon/type $expressive-heading-04: ( - font-size: carbon--type-scale(7), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(7), + font-weight: font-family.font-weight('regular'), line-height: 1.28572, letter-spacing: 0, breakpoints: ( xlg: ( - font-size: carbon--type-scale(7), + font-size: scale.type-scale(7), line-height: 1.25, ), max: ( - font-size: carbon--type-scale(8), + font-size: scale.type-scale(8), ), ), ) !default; @@ -380,26 +325,26 @@ $fluid-heading-04: $expressive-heading-04 !default; /// @access public /// @group @carbon/type $expressive-heading-05: ( - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('regular'), + font-size: scale.type-scale(8), + font-weight: font-family.font-weight('regular'), line-height: 1.25, letter-spacing: 0, breakpoints: ( md: ( - font-size: carbon--type-scale(9), - font-weight: carbon--font-weight('light'), + font-size: scale.type-scale(9), + font-weight: font-family.font-weight('light'), line-height: 1.22, ), lg: ( - font-size: carbon--type-scale(10), + font-size: scale.type-scale(10), line-height: 1.19, ), xlg: ( - font-size: carbon--type-scale(11), + font-size: scale.type-scale(11), line-height: 1.17, ), max: ( - font-size: carbon--type-scale(13), + font-size: scale.type-scale(13), ), ), ) !default; @@ -413,25 +358,25 @@ $fluid-heading-05: $expressive-heading-05 !default; /// @access public /// @group @carbon/type $expressive-heading-06: ( - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('semibold'), + font-size: scale.type-scale(8), + font-weight: font-family.font-weight('semibold'), line-height: 1.25, letter-spacing: 0, breakpoints: ( md: ( - font-size: carbon--type-scale(9), + font-size: scale.type-scale(9), line-height: 1.22, ), lg: ( - font-size: carbon--type-scale(10), + font-size: scale.type-scale(10), line-height: 1.19, ), xlg: ( - font-size: carbon--type-scale(11), + font-size: scale.type-scale(11), line-height: 1.17, ), max: ( - font-size: carbon--type-scale(13), + font-size: scale.type-scale(13), ), ), ) !default; @@ -445,17 +390,17 @@ $fluid-heading-06: $expressive-heading-06 !default; /// @access public /// @group @carbon/type $expressive-paragraph-01: ( - font-size: carbon--type-scale(6), - font-weight: carbon--font-weight('light'), - line-height: 1.33333, + font-size: scale.type-scale(6), + font-weight: font-family.font-weight('light'), + line-height: 1.334, letter-spacing: 0, breakpoints: ( lg: ( - font-size: carbon--type-scale(7), + font-size: scale.type-scale(7), line-height: 1.28572, ), max: ( - font-size: carbon--type-scale(8), + font-size: scale.type-scale(8), line-height: 1.25, ), ), @@ -470,25 +415,25 @@ $fluid-paragraph-01: $expressive-paragraph-01 !default; /// @access public /// @group @carbon/type $quotation-01: ( - font-family: carbon--font-family('serif'), - font-size: carbon--type-scale(5), - font-weight: carbon--font-weight('regular'), + font-family: font-family.font-family('serif'), + font-size: scale.type-scale(5), + font-weight: font-family.font-weight('regular'), line-height: 1.3, letter-spacing: 0, breakpoints: ( md: ( - font-size: carbon--type-scale(5), + font-size: scale.type-scale(5), ), lg: ( - font-size: carbon--type-scale(6), - line-height: 1.33333, + font-size: scale.type-scale(6), + line-height: 1.334, ), xlg: ( - font-size: carbon--type-scale(7), + font-size: scale.type-scale(7), line-height: 1.28572, ), max: ( - font-size: carbon--type-scale(8), + font-size: scale.type-scale(8), line-height: 1.25, ), ), @@ -503,26 +448,26 @@ $fluid-quotation-01: $quotation-01 !default; /// @access public /// @group @carbon/type $quotation-02: ( - font-family: carbon--font-family('serif'), - font-size: carbon--type-scale(8), - font-weight: carbon--font-weight('light'), + font-family: font-family.font-family('serif'), + font-size: scale.type-scale(8), + font-weight: font-family.font-weight('light'), line-height: 1.25, letter-spacing: 0, breakpoints: ( md: ( - font-size: carbon--type-scale(9), + font-size: scale.type-scale(9), line-height: 1.22, ), lg: ( - font-size: carbon--type-scale(10), + font-size: scale.type-scale(10), line-height: 1.19, ), xlg: ( - font-size: carbon--type-scale(11), + font-size: scale.type-scale(11), line-height: 1.17, ), max: ( - font-size: carbon--type-scale(13), + font-size: scale.type-scale(13), ), ), ) !default; @@ -536,23 +481,23 @@ $fluid-quotation-02: $quotation-02 !default; /// @access public /// @group @carbon/type $display-01: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('light'), + font-size: scale.type-scale(10), + font-weight: font-family.font-weight('light'), line-height: 1.19, letter-spacing: 0, breakpoints: ( md: ( - font-size: carbon--type-scale(10), + font-size: scale.type-scale(10), ), lg: ( - font-size: carbon--type-scale(12), + font-size: scale.type-scale(12), ), xlg: ( - font-size: carbon--type-scale(13), + font-size: scale.type-scale(13), line-height: 1.17, ), max: ( - font-size: carbon--type-scale(15), + font-size: scale.type-scale(15), line-height: 1.13, ), ), @@ -567,23 +512,23 @@ $fluid-display-01: $display-01 !default; /// @access public /// @group @carbon/type $display-02: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('semibold'), + font-size: scale.type-scale(10), + font-weight: font-family.font-weight('semibold'), line-height: 1.19, letter-spacing: 0, breakpoints: ( md: ( - font-size: carbon--type-scale(10), + font-size: scale.type-scale(10), ), lg: ( - font-size: carbon--type-scale(12), + font-size: scale.type-scale(12), ), xlg: ( - font-size: carbon--type-scale(13), + font-size: scale.type-scale(13), line-height: 1.16, ), max: ( - font-size: carbon--type-scale(15), + font-size: scale.type-scale(15), line-height: 1.13, ), ), @@ -598,27 +543,27 @@ $fluid-display-02: $display-02 !default; /// @access public /// @group @carbon/type $display-03: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('light'), + font-size: scale.type-scale(10), + font-weight: font-family.font-weight('light'), line-height: 1.19, letter-spacing: 0, breakpoints: ( md: ( - font-size: carbon--type-scale(14), + font-size: scale.type-scale(14), line-height: 1.15, ), lg: ( - font-size: carbon--type-scale(17), + font-size: scale.type-scale(17), line-height: 1.11, letter-spacing: -0.64px, ), xlg: ( - font-size: carbon--type-scale(20), + font-size: scale.type-scale(20), line-height: 1.07, letter-spacing: -0.64px, ), max: ( - font-size: carbon--type-scale(23), + font-size: scale.type-scale(23), line-height: 1.05, letter-spacing: -0.96px, ), @@ -634,27 +579,27 @@ $fluid-display-03: $display-03 !default; /// @access public /// @group @carbon/type $display-04: ( - font-size: carbon--type-scale(10), - font-weight: carbon--font-weight('semibold'), + font-size: scale.type-scale(10), + font-weight: font-family.font-weight('semibold'), line-height: 1.19, letter-spacing: 0, breakpoints: ( md: ( - font-size: carbon--type-scale(14), + font-size: scale.type-scale(14), line-height: 1.15, ), lg: ( - font-size: carbon--type-scale(17), + font-size: scale.type-scale(17), line-height: 1.11, letter-spacing: -0.64px, ), xlg: ( - font-size: carbon--type-scale(20), + font-size: scale.type-scale(20), line-height: 1.07, letter-spacing: -0.64px, ), max: ( - font-size: carbon--type-scale(23), + font-size: scale.type-scale(23), line-height: 1.05, letter-spacing: -0.96px, ), @@ -670,12 +615,8 @@ $fluid-display-04: $display-04 !default; /// @access public /// @group @carbon/type $tokens: ( - caption-01: $caption-01, - caption-02: $caption-02, label-01: $label-01, - label-02: $label-02, helper-text-01: $helper-text-01, - helper-text-02: $helper-text-02, body-short-01: $body-short-01, body-short-02: $body-short-02, body-long-01: $body-long-01, @@ -745,7 +686,7 @@ $tokens: ( /// @access public /// @group @carbon/type @function strip-unit($value) { - @return $value / ($value * 0 + 1); + @return math.div($value, $value * 0 + 1); } /// This helper includes fluid type styles for the given token value. Fluid type @@ -761,14 +702,14 @@ $tokens: ( /// https://css-tricks.com/snippets/css/fluid-typography/ /// /// @param {Map} $type-styles - The value of a given type token -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - Custom breakpoints to use +/// @param {Map} $breakpoints [$grid-breakpoints] - Custom breakpoints to use /// @access public /// @group @carbon/type -@mixin fluid-type($type-styles, $breakpoints: $carbon--grid-breakpoints) { +@mixin fluid-type($type-styles, $breakpoints: gridconfig.$grid-breakpoints) { // Include the initial styles for the given token by default without any // media query guard. This includes `font-size` as a fallback in the case // that a browser does not support `calc()` - @include properties(map-remove($type-styles, breakpoints)); + @include properties(map.remove($type-styles, breakpoints)); // We also need to include the `sm` styles by default since they don't // appear in the fluid styles for tokens @include fluid-type-size($type-styles, sm, $breakpoints); @@ -776,8 +717,8 @@ $tokens: ( // Finally, we need to go through all the breakpoints defined in the type // token and apply the properties and fluid type size for that given // breakpoint - @each $name, $values in map-get($type-styles, breakpoints) { - @include carbon--breakpoint($name) { + @each $name, $values in map.get($type-styles, breakpoints) { + @include grid.breakpoint($name) { @include properties($values); @include fluid-type-size($type-styles, $name, $breakpoints); } @@ -787,44 +728,44 @@ $tokens: ( /// Computes the fluid `font-size` for a given type style and breakpoint /// @param {Map} $type-styles - The styles for a given token /// @param {String} $name - The name of the breakpoint to which we apply the fluid -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - The breakpoints for the grid system +/// @param {Map} $breakpoints [$grid-breakpoints] - The breakpoints for the grid system /// @access public /// @group @carbon/type @mixin fluid-type-size( $type-styles, $name, - $breakpoints: $carbon--grid-breakpoints + $breakpoints: gridconfig.$grid-breakpoints ) { // Get the information about the breakpoint we're currently working in. Useful // for getting initial width information - $breakpoint: map-get($breakpoints, $name); + $breakpoint: map.get($breakpoints, $name); // Our fluid styles are captured under the 'breakpoints' property in our type // styles map. These define what values to treat as `max-` variables below - $fluid-sizes: map-get($type-styles, breakpoints); + $fluid-sizes: map.get($type-styles, breakpoints); $fluid-breakpoint: (); // Special case for `sm` because the styles for small are on the type style // directly @if $name == sm { - $fluid-breakpoint: map-remove($type-styles, breakpoints); + $fluid-breakpoint: map.remove($type-styles, breakpoints); } @else { - $fluid-breakpoint: map-get($fluid-sizes, $name); + $fluid-breakpoint: map.get($fluid-sizes, $name); } // Initialize our font-sizes to the default size for the type style - $max-font-size: map-get($type-styles, font-size); - $min-font-size: map-get($type-styles, font-size); - @if map-has-key($fluid-breakpoint, font-size) { - $min-font-size: map-get($fluid-breakpoint, font-size); + $max-font-size: map.get($type-styles, font-size); + $min-font-size: map.get($type-styles, font-size); + @if map.has-key($fluid-breakpoint, font-size) { + $min-font-size: map.get($fluid-breakpoint, font-size); } // Initialize our min and max width to the width of the current breakpoint - $max-vw: map-get($breakpoint, width); - $min-vw: map-get($breakpoint, width); + $max-vw: map.get($breakpoint, width); + $min-vw: map.get($breakpoint, width); // We can use `breakpoint-next` to see if there is another breakpoint we can // use to update `max-font-size` and `max-vw` with larger values - $next-breakpoint-available: carbon--breakpoint-next($name, $breakpoints); + $next-breakpoint-available: grid.breakpoint-next($name, $breakpoints); $next-fluid-breakpoint-name: null; // We need to figure out what the next available fluid breakpoint is for our @@ -832,11 +773,11 @@ $tokens: ( // until we either manually set $next-breakpoint-available to null or // `breakpoint-next` returns null. @while $next-breakpoint-available { - @if map-has-key($fluid-sizes, $next-breakpoint-available) { + @if map.has-key($fluid-sizes, $next-breakpoint-available) { $next-fluid-breakpoint-name: $next-breakpoint-available; $next-breakpoint-available: null; } @else { - $next-breakpoint-available: carbon--breakpoint-next( + $next-breakpoint-available: grid.breakpoint-next( $next-breakpoint-available, $breakpoints ); @@ -847,12 +788,12 @@ $tokens: ( // that we have values that we can use to set max-font-size and max-vw as both // values derive from the next breakpoint @if $next-fluid-breakpoint-name { - $next-fluid-breakpoint: map-get($breakpoints, $next-fluid-breakpoint-name); - $max-font-size: map-get( - map-get($fluid-sizes, $next-fluid-breakpoint-name), + $next-fluid-breakpoint: map.get($breakpoints, $next-fluid-breakpoint-name); + $max-font-size: map.get( + map.get($fluid-sizes, $next-fluid-breakpoint-name), font-size ); - $max-vw: map-get($next-fluid-breakpoint, width); + $max-vw: map.get($next-fluid-breakpoint, width); // prettier-ignore font-size: calc(#{$min-font-size} + @@ -891,34 +832,25 @@ $custom-property-prefix: 'cds' !default; /// with caution in fixed contexts. /// @param {String} $name - The name of the token to get the styles for /// @param {Boolean} $fluid [false] - Specify whether to include fluid styles for the -/// @param {Map} $breakpoints [$carbon--grid-breakpoints] - Provide a custom breakpoint map to use +/// @param {Map} $breakpoints [$grid-breakpoints] - Provide a custom breakpoint map to use /// @access public /// @group @carbon/type -@mixin carbon--type-style( +@mixin type-style( $name, $fluid: false, - $breakpoints: $carbon--grid-breakpoints + $breakpoints: gridconfig.$grid-breakpoints ) { - @if not map-has-key($tokens, $name) { + @if not map.has-key($tokens, $name) { @error 'Unable to find a token with the name: `#{$name}`'; } - $token: map-get($tokens, $name); + $token: map.get($tokens, $name); // If $fluid is set to true and the token has breakpoints defined for fluid // styles, delegate to the fluid-type helper for the given token - // Otherwise remove token breakpoints - @if $fluid == true and map-has-key($token, 'breakpoints') { + @if $fluid == true and map.has-key($token, 'breakpoints') { @include fluid-type($token, $breakpoints); } @else { - @if global-variable-exists('feature-flags') and - map-get($feature-flags, 'enable-css-custom-properties') - { - @include custom-properties($name, map-remove($token, 'breakpoints')); - } @else { - // Otherwise, we just include all the property declarations directly on the - // selector - @include properties(map-remove($token, 'breakpoints')); - } + @include custom-properties($name, $token); } } diff --git a/packages/type/scss/font-face/_mono.scss b/packages/type/scss/font-face/_mono.scss deleted file mode 100644 index 9121aba9bc58..000000000000 --- a/packages/type/scss/font-face/_mono.scss +++ /dev/null @@ -1,430 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'settings'; - -/// Mono `@font-face`'s -/// @access public -/// @group @carbon/type -@mixin carbon--font-face-mono { - // .woff support for IE11 - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Mono Light Italic'), local('IBMPlexMono-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1gMoW.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Mono Italic'), local('IBMPlexMono-Italic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa1Xdm.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Mono SemiBold Italic'), - local('IBMPlexMono-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1gMoW.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Mono Light'), local('IBMPlexMono-Light'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwlBFhA.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Mono'), local('IBMPlexMono'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1i8q0Q.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Mono SemiBold'), local('IBMPlexMono-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlBFhA.woff) - format('woff'); - } - - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Mono Light Italic'), local('IBMPlexMono-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1jcoQPttoz6Pz.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Mono Light Italic'), local('IBMPlexMono-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1hMoQPttoz6Pz.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Mono Light Italic'), local('IBMPlexMono-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1j8oQPttoz6Pz.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Mono Light Italic'), local('IBMPlexMono-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1jsoQPttoz6Pz.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Mono Light Italic'), local('IBMPlexMono-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1gMoQPttozw.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Mono Italic'), local('IBMPlexMono-Italic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa2HdgregdFOFh.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Mono Italic'), local('IBMPlexMono-Italic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa0XdgregdFOFh.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Mono Italic'), local('IBMPlexMono-Italic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa2ndgregdFOFh.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Mono Italic'), local('IBMPlexMono-Italic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa23dgregdFOFh.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Mono Italic'), local('IBMPlexMono-Italic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa1XdgregdFA.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Mono SemiBold Italic'), - local('IBMPlexMono-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1jcoQPttoz6Pz.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Mono SemiBold Italic'), - local('IBMPlexMono-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1hMoQPttoz6Pz.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Mono SemiBold Italic'), - local('IBMPlexMono-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1j8oQPttoz6Pz.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Mono SemiBold Italic'), - local('IBMPlexMono-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1jsoQPttoz6Pz.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Mono SemiBold Italic'), - local('IBMPlexMono-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1gMoQPttozw.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Mono Light'), local('IBMPlexMono-Light'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwl1FgsAXHNlYzg.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Mono Light'), local('IBMPlexMono-Light'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwlRFgsAXHNlYzg.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Mono Light'), local('IBMPlexMono-Light'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwl9FgsAXHNlYzg.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Mono Light'), local('IBMPlexMono-Light'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwl5FgsAXHNlYzg.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Mono Light'), local('IBMPlexMono-Light'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwlBFgsAXHNk.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Mono'), local('IBMPlexMono'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1iIq131nj-otFQ.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Mono'), local('IBMPlexMono'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1isq131nj-otFQ.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Mono'), local('IBMPlexMono'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1iAq131nj-otFQ.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Mono'), local('IBMPlexMono'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1iEq131nj-otFQ.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Mono'), local('IBMPlexMono'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1i8q131nj-o.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Mono SemiBold'), local('IBMPlexMono-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl1FgsAXHNlYzg.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Mono SemiBold'), local('IBMPlexMono-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlRFgsAXHNlYzg.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Mono SemiBold'), local('IBMPlexMono-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl9FgsAXHNlYzg.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Mono SemiBold'), local('IBMPlexMono-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl5FgsAXHNlYzg.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Mono'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Mono SemiBold'), local('IBMPlexMono-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlBFgsAXHNk.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } -} diff --git a/packages/type/scss/font-face/_sans-condensed.scss b/packages/type/scss/font-face/_sans-condensed.scss deleted file mode 100644 index 7c5af23a96ed..000000000000 --- a/packages/type/scss/font-face/_sans-condensed.scss +++ /dev/null @@ -1,302 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'settings'; - -/// Sans `@font-face`'s -/// @access public -/// @group @carbon/type -@mixin carbon--font-face-sans-condensed { - // .woff support for IE11 - @font-face { - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Condensed Light Italic'), - local('IBMPlexSansCond-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8AfppYA.woff) - format('woff'); - } - @font-face { - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Condensed Italic'), - local('IBMPlexSansCond-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYasyKg.woff) - format('woff'); - } - @font-face { - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans Condensed SemiBold Italic'), - local('IBMPlexSansCond-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8HPvpYA.woff) - format('woff'); - } - @font-face { - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Condensed Light'), local('IBMPlexSansCond-Light'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4C6ovo.woff) - format('woff'); - } - @font-face { - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans Condensed'), local('IBMPlexSansCond'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHbat.woff) - format('woff'); - } - @font-face { - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans Condensed SemiBold'), - local('IBMPlexSansCond-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY527Ivo.woff) - format('woff'); - } - - /* vietnamese */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Condensed Light Italic'), - local('IBMPlexSansCond-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8AfplYstEzi6D11GTg.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, - U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Condensed Light Italic'), - local('IBMPlexSansCond-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8AfplYotEzi6D11GTg.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Condensed Light Italic'), - local('IBMPlexSansCond-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8AfplYQtEzi6D10.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* vietnamese */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Condensed Italic'), - local('IBMPlexSansCond-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas-KPLgKkPHhKABg.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, - U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Condensed Italic'), - local('IBMPlexSansCond-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas-KLLgKkPHhKABg.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Condensed Italic'), - local('IBMPlexSansCond-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas-KzLgKkPHhI.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* vietnamese */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans Condensed SemiBold Italic'), - local('IBMPlexSansCond-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8HPvlYstEzi6D11GTg.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, - U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans Condensed SemiBold Italic'), - local('IBMPlexSansCond-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8HPvlYotEzi6D11GTg.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans Condensed SemiBold Italic'), - local('IBMPlexSansCond-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8HPvlYQtEzi6D10.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* vietnamese */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Condensed Light'), local('IBMPlexSansCond-Light'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4C6rvjpYYnFBq4P1w.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, - U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Condensed Light'), local('IBMPlexSansCond-Light'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4C6rvipYYnFBq4P1w.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Condensed Light'), local('IBMPlexSansCond-Light'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4C6rvspYYnFBq4.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* vietnamese */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans Condensed'), local('IBMPlexSansCond'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYamyK7Bh4sNLhM.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, - U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans Condensed'), local('IBMPlexSansCond'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYanyK7Bh4sNLhM.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans Condensed'), local('IBMPlexSansCond'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYapyK7Bh4sN.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* vietnamese */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans Condensed SemiBold'), - local('IBMPlexSansCond-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY527LvjpYYnFBq4P1w.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, - U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans Condensed SemiBold'), - local('IBMPlexSansCond-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY527LvipYYnFBq4P1w.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: swap; - font-family: 'IBM Plex Sans Condensed'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans Condensed SemiBold'), - local('IBMPlexSansCond-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsanscondensed/v6/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY527LvspYYnFBq4.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } -} diff --git a/packages/type/scss/font-face/_sans.scss b/packages/type/scss/font-face/_sans.scss deleted file mode 100644 index 037a18aef3dd..000000000000 --- a/packages/type/scss/font-face/_sans.scss +++ /dev/null @@ -1,497 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'settings'; - -/// Sans `@font-face`'s -/// @access public -/// @group @carbon/type -@mixin carbon--font-face-sans { - // .woff support for IE11 - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Light Italic'), local('IBMPlexSans-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRcdvfo.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Italic'), local('IBMPlexSans-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuF6ZP.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans SemiBold Italic'), - local('IBMPlexSans-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJcdvfo.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Light'), local('IBMPlexSans-Light'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIFscg.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans'), local('IBMPlexSans'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdHeEw.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans SemiBold'), local('IBMPlexSans-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIFscg.woff) - format('woff'); - } - - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Light Italic'), local('IBMPlexSans-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRce_fuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Light Italic'), local('IBMPlexSans-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRccvfuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* greek */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Light Italic'), local('IBMPlexSans-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRcdffuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0370-03FF; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Light Italic'), local('IBMPlexSans-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRceffuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Light Italic'), local('IBMPlexSans-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRcePfuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Sans Light Italic'), local('IBMPlexSans-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRcdvfuJGl18Q.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Italic'), local('IBMPlexSans-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuGqZJW9XjDlN8.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Italic'), local('IBMPlexSans-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuE6ZJW9XjDlN8.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* greek */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Italic'), local('IBMPlexSans-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuFKZJW9XjDlN8.woff2) - format('woff2'); - unicode-range: U+0370-03FF; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Italic'), local('IBMPlexSans-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuGKZJW9XjDlN8.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Italic'), local('IBMPlexSans-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuGaZJW9XjDlN8.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Sans Italic'), local('IBMPlexSans-Italic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuF6ZJW9XjDg.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans SemiBold Italic'), - local('IBMPlexSans-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJce_fuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans SemiBold Italic'), - local('IBMPlexSans-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJccvfuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* greek */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans SemiBold Italic'), - local('IBMPlexSans-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJcdffuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0370-03FF; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans SemiBold Italic'), - local('IBMPlexSans-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJceffuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans SemiBold Italic'), - local('IBMPlexSans-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJcePfuJGl18QRY.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Sans SemiBold Italic'), - local('IBMPlexSans-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJcdvfuJGl18Q.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Light'), local('IBMPlexSans-Light'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIxsdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Light'), local('IBMPlexSans-Light'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIVsdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* greek */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Light'), local('IBMPlexSans-Light'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIJsdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0370-03FF; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Light'), local('IBMPlexSans-Light'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AI5sdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Light'), local('IBMPlexSans-Light'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AI9sdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Sans Light'), local('IBMPlexSans-Light'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIFsdP3pBms.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans'), local('IBMPlexSans'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdzeFaxOedfTDw.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans'), local('IBMPlexSans'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdXeFaxOedfTDw.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* greek */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans'), local('IBMPlexSans'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdLeFaxOedfTDw.woff2) - format('woff2'); - unicode-range: U+0370-03FF; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans'), local('IBMPlexSans'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhd7eFaxOedfTDw.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans'), local('IBMPlexSans'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhd_eFaxOedfTDw.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Sans'), local('IBMPlexSans'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdHeFaxOedc.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans SemiBold'), local('IBMPlexSans-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIxsdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans SemiBold'), local('IBMPlexSans-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIVsdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* greek */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans SemiBold'), local('IBMPlexSans-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIJsdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0370-03FF; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans SemiBold'), local('IBMPlexSans-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AI5sdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans SemiBold'), local('IBMPlexSans-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AI9sdP3pBmtF8A.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Sans'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Sans SemiBold'), local('IBMPlexSans-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIFsdP3pBms.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } -} diff --git a/packages/type/scss/font-face/_serif.scss b/packages/type/scss/font-face/_serif.scss deleted file mode 100644 index d0d50e55bcd9..000000000000 --- a/packages/type/scss/font-face/_serif.scss +++ /dev/null @@ -1,430 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'settings'; - -/// Serif `@font-face`'s -/// @access public -/// @group @carbon/type -@mixin carbon--font-face-serif { - // .woff support for IE11 - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Serif Light Italic'), local('IBMPlexSerif-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xm1npiw.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Serif Italic'), local('IBMPlexSerif-Italic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizBREVNn1dOx-zrZ2X3pZvkTiUa6zUTiA.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Serif SemiBold Italic'), - local('IBMPlexSerif-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3m1npiw.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Serif Light'), local('IBMPlexSerif-Light'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi20-SI0q10.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Serif'), local('IBMPlexSerif'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizDREVNn1dOx-zrZ2X3pZvkTiUf2zE.woff) - format('woff'); - } - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Serif SemiBold'), local('IBMPlexSerif-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi3A_yI0q10.woff) - format('woff'); - } - - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Serif Light Italic'), local('IBMPlexSerif-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xm1TpjfGj7oaMBg.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Serif Light Italic'), local('IBMPlexSerif-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xm13pjfGj7oaMBg.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Serif Light Italic'), local('IBMPlexSerif-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xm1bpjfGj7oaMBg.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Serif Light Italic'), local('IBMPlexSerif-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xm1fpjfGj7oaMBg.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 300; - src: local('IBM Plex Serif Light Italic'), local('IBMPlexSerif-LightItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xm1npjfGj7oY.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Serif Italic'), local('IBMPlexSerif-Italic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizBREVNn1dOx-zrZ2X3pZvkTiUa6zgTjnTLgNuZ5w.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Serif Italic'), local('IBMPlexSerif-Italic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizBREVNn1dOx-zrZ2X3pZvkTiUa6zETjnTLgNuZ5w.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Serif Italic'), local('IBMPlexSerif-Italic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizBREVNn1dOx-zrZ2X3pZvkTiUa6zoTjnTLgNuZ5w.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Serif Italic'), local('IBMPlexSerif-Italic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizBREVNn1dOx-zrZ2X3pZvkTiUa6zsTjnTLgNuZ5w.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 400; - src: local('IBM Plex Serif Italic'), local('IBMPlexSerif-Italic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizBREVNn1dOx-zrZ2X3pZvkTiUa6zUTjnTLgNs.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Serif SemiBold Italic'), - local('IBMPlexSerif-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3m1TpjfGj7oaMBg.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Serif SemiBold Italic'), - local('IBMPlexSerif-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3m13pjfGj7oaMBg.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Serif SemiBold Italic'), - local('IBMPlexSerif-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3m1bpjfGj7oaMBg.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Serif SemiBold Italic'), - local('IBMPlexSerif-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3m1fpjfGj7oaMBg.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: italic; - font-weight: 600; - src: local('IBM Plex Serif SemiBold Italic'), - local('IBMPlexSerif-SemiBoldItalic'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3m1npjfGj7oY.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Serif Light'), local('IBMPlexSerif-Light'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi20-SI5q1vjitOh3oc.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Serif Light'), local('IBMPlexSerif-Light'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi20-SIwq1vjitOh3oc.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Serif Light'), local('IBMPlexSerif-Light'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi20-SI7q1vjitOh3oc.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Serif Light'), local('IBMPlexSerif-Light'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi20-SI6q1vjitOh3oc.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 300; - src: local('IBM Plex Serif Light'), local('IBMPlexSerif-Light'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi20-SI0q1vjitOh.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Serif'), local('IBMPlexSerif'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizDREVNn1dOx-zrZ2X3pZvkTiUS2zcZiVbJsNo.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Serif'), local('IBMPlexSerif'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizDREVNn1dOx-zrZ2X3pZvkTiUb2zcZiVbJsNo.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Serif'), local('IBMPlexSerif'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizDREVNn1dOx-zrZ2X3pZvkTiUQ2zcZiVbJsNo.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Serif'), local('IBMPlexSerif'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizDREVNn1dOx-zrZ2X3pZvkTiUR2zcZiVbJsNo.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 400; - src: local('IBM Plex Serif'), local('IBMPlexSerif'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizDREVNn1dOx-zrZ2X3pZvkTiUf2zcZiVbJ.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } - /* cyrillic-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Serif SemiBold'), local('IBMPlexSerif-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi3A_yI5q1vjitOh3oc.woff2) - format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, - U+FE2E-FE2F; - } - /* cyrillic */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Serif SemiBold'), local('IBMPlexSerif-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi3A_yIwq1vjitOh3oc.woff2) - format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; - } - /* vietnamese */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Serif SemiBold'), local('IBMPlexSerif-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi3A_yI7q1vjitOh3oc.woff2) - format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; - } - /* latin-ext */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Serif SemiBold'), local('IBMPlexSerif-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi3A_yI6q1vjitOh3oc.woff2) - format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, - U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; - } - /* latin */ - @font-face { - font-display: $carbon--font-display; - font-family: 'IBM Plex Serif'; - font-style: normal; - font-weight: 600; - src: local('IBM Plex Serif SemiBold'), local('IBMPlexSerif-SemiBold'), - url(https://fonts.gstatic.com/s/ibmplexserif/v7/jizAREVNn1dOx-zrZ2X3pZvkTi3A_yI0q1vjitOh.woff2) - format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; - } -} diff --git a/packages/type/scss/font-face/_settings.scss b/packages/type/scss/font-face/_settings.scss deleted file mode 100644 index 54affbc42c6f..000000000000 --- a/packages/type/scss/font-face/_settings.scss +++ /dev/null @@ -1,12 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -/// Defines how font files are loaded and displayed by the browser -/// @link https://css-tricks.com/almanac/properties/f/font-display/ -/// @access public -/// @group @carbon/type -$carbon--font-display: auto !default; diff --git a/packages/type/scss/index.scss b/packages/type/scss/index.scss deleted file mode 100644 index da1b298fbe96..000000000000 --- a/packages/type/scss/index.scss +++ /dev/null @@ -1,8 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import 'reset'; diff --git a/packages/type/scss/modules/_classes.scss b/packages/type/scss/modules/_classes.scss deleted file mode 100644 index 56f15ba6de04..000000000000 --- a/packages/type/scss/modules/_classes.scss +++ /dev/null @@ -1,42 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@use 'sass:map'; -@use 'font-family' as *; -@use 'prefix' as *; -@use 'styles' as *; - -/// Create type classes for font families, weights, styles -/// @access public -/// @group @carbon/type -@mixin type-classes { - // Font families - @each $name, $value in $font-families { - .#{$prefix}--type-#{$name} { - font-family: $value; - } - } - - // Font weights - @each $name, $value in $font-weights { - .#{$prefix}--type-#{$name} { - font-weight: $value; - } - } - - // Font styles - .#{$prefix}--type-italic { - font-style: italic; - } - - // Type styles - @each $name, $value in $tokens { - .#{$prefix}--type-#{$name} { - @include type-style($name, map.has-key($value, breakpoints)); - } - } -} diff --git a/packages/type/scss/modules/_font-family.scss b/packages/type/scss/modules/_font-family.scss deleted file mode 100644 index 0e579c378d79..000000000000 --- a/packages/type/scss/modules/_font-family.scss +++ /dev/null @@ -1,104 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@use 'sass:string'; - -/// Font family fallbacks for: IBM Plex Mono, IBM Plex Sans, IBM Plex Sans -/// Condensed, IBM Plex Sans Hebrew, and IBM Plex Serif -/// @type Map -/// @access public -/// @group @carbon/type -$font-families: ( - 'mono': - string.unquote( - "'IBM Plex Mono', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', monospace" - ), - 'sans': - string.unquote( - "'IBM Plex Sans', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'sans-condensed': - string.unquote( - "'IBM Plex Sans Condensed', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'sans-arabic': - string.unquote( - "'IBM Plex Sans Arabic', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'sans-devanagari': - string.unquote( - "'IBM Plex Sans Devanagari', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'sans-hebrew': - string.unquote( - "'IBM Plex Sans Hebrew', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'sans-jp': - string.unquote( - "'IBM Plex Sans JP', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'sans-kr': - string.unquote( - "'IBM Plex Sans KR', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'sans-thai-looped': - string.unquote( - "'IBM Plex Sans Thai Looped', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'sans-thai': - string.unquote( - "'IBM Plex Sans Thai', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', sans-serif" - ), - 'serif': - string.unquote( - "'IBM Plex Serif', system-ui, -apple-system, BlinkMacSystemFont, '.SFNSText-Regular', serif" - ), -) !default; - -/// Get the font-family for an IBM Plex font -/// @param {String} $name -/// @return {String} -/// @access public -/// @group @carbon/type -@function font-family($name) { - @return map-get($font-families, $name); -} - -/// Include the `font-family` definition for the given name in your selector -/// @param {String} $name -/// @access public -/// @group @carbon/type -@mixin font-family($name) { - font-family: font-family($name); -} - -/// Suggested font weights to be used in product -/// @type Map -/// @access public -/// @group @carbon/type -$font-weights: ( - 'light': 300, - 'regular': 400, - 'semibold': 600, -) !default; - -/// Retrieve the font-weight value for a given name -/// @param {String} $weight -/// @return {Number} -/// @access public -/// @group @carbon/type -@function font-weight($weight) { - @return map-get($font-weights, $weight); -} - -/// Set the `font-weight` property with the value for a given name -/// @param {String} $weight -/// @access public -/// @group @carbon/type -@mixin font-weight($weight) { - font-weight: font-weight($weight); -} diff --git a/packages/type/scss/modules/_prefix.scss b/packages/type/scss/modules/_prefix.scss deleted file mode 100644 index 09c7214038b8..000000000000 --- a/packages/type/scss/modules/_prefix.scss +++ /dev/null @@ -1,11 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -/// @type String -/// @access public -/// @group @carbon/type -$prefix: 'bx' !default; diff --git a/packages/type/scss/modules/_reset.scss b/packages/type/scss/modules/_reset.scss deleted file mode 100644 index d16d13cdbe56..000000000000 --- a/packages/type/scss/modules/_reset.scss +++ /dev/null @@ -1,42 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@use 'sass:map'; -@use 'sass:meta'; -@use '@carbon/layout'; -@use 'font-family' as *; - -/// Include a type reset for a given body and mono font family -/// @param {String} $body-font-family [font-family('sans')] - The font family used on the `` element -/// @param {String} $mono-font-family [font-family('mono')] - The font family used on elements that require mono fonts, like the `` element -/// @access public -/// @group @carbon/type -@mixin reset( - $body-font-family: font-family('sans'), - $mono-font-family: font-family('mono') -) { - html { - font-size: 100%; - } - - body { - @include font-weight('regular'); - - font-family: $body-font-family; - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - text-rendering: optimizeLegibility; - } - - code { - font-family: $mono-font-family; - } - - strong { - @include font-weight('semibold'); - } -} diff --git a/packages/type/scss/modules/_scale.scss b/packages/type/scss/modules/_scale.scss deleted file mode 100644 index e8152e849eb4..000000000000 --- a/packages/type/scss/modules/_scale.scss +++ /dev/null @@ -1,57 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@use '@carbon/layout'; -@use 'sass:list'; - -/// Compute the type size for the given type scale step -/// @param {Number} $step -/// @return {Number} In px -/// @access public -/// @group @carbon/type -@function get-type-size($step) { - @if $step == 1 { - @return 12px; - } - // Yn = Yn-1 + {INT[(n-2)/4] + 1} * 2 - @return get-type-size($step - 1) + (floor(($step - 2) * 0.25) + 1) * 2; -} - -/// Type scale follows a custom formula for determining each step size and supports sizes from 12px to 92px -/// @type Map -/// @access public -/// @group @carbon/type -$type-scale: (); -@for $i from 1 through 23 { - $type-scale: list.append($type-scale, layout.rem(get-type-size($i))); -} - -/// Get the value of a specific step in the type scale -/// @param {Number} $step -/// @return {Number} In rem -/// @access public -/// @group @carbon/type -@function type-scale($step) { - @return nth($type-scale, $step); -} - -/// Set the font-size value of a selector with the value at the given `$step` -/// @param {Number} $step -/// @access public -/// @group @carbon/type -@mixin type-scale($step) { - font-size: type-scale($step); -} - -/// Alias of `type-scale` mixin. -/// @param {Number} $step -/// @alias type-scale -/// @access public -/// @group @carbon/type -@mixin font-size($step) { - font-size: type-scale($step); -} diff --git a/packages/type/scss/modules/_styles.scss b/packages/type/scss/modules/_styles.scss deleted file mode 100644 index a53bc6098645..000000000000 --- a/packages/type/scss/modules/_styles.scss +++ /dev/null @@ -1,876 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -// stylelint-disable number-max-precision - -@use 'sass:map'; -@use 'sass:math'; -@use '@carbon/grid/scss/modules/config' as gridconfig; -@use '@carbon/grid/scss/modules/breakpoint' as grid; -@use 'font-family'; -@use 'scale'; - -/// @type Map -/// @access public -/// @deprecated -/// @group @carbon/type -$caption-01: ( - font-size: scale.type-scale(1), - font-weight: font-family.font-weight('regular'), - line-height: 1.33333, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$label-01: ( - font-size: scale.type-scale(1), - font-weight: font-family.font-weight('regular'), - line-height: 1.33333, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$legal-01: ( - font-size: scale.type-scale(1), - font-weight: font-family.font-weight('regular'), - line-height: 1.33333, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$legal-02: ( - font-size: scale.type-scale(2), - font-weight: font-family.font-weight('regular'), - line-height: 1.28572, - letter-spacing: 0.16px, -) !default; - -/// @type Map -/// @access public -/// @deprecated -/// @group @carbon/type -$helper-text-01: ( - font-size: scale.type-scale(1), - line-height: 1.33333, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-short-01: ( - font-size: scale.type-scale(2), - font-weight: font-family.font-weight('regular'), - line-height: 1.28572, - letter-spacing: 0.16px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-compact-01: $body-short-01 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-long-01: ( - font-size: scale.type-scale(2), - font-weight: font-family.font-weight('regular'), - line-height: 1.42857, - letter-spacing: 0.16px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-01: $body-long-01 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-short-02: ( - font-size: scale.type-scale(3), - font-weight: font-family.font-weight('regular'), - line-height: 1.375, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-compact-02: $body-short-02 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-long-02: ( - font-size: scale.type-scale(3), - font-weight: font-family.font-weight('regular'), - line-height: 1.5, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$body-02: $body-long-02 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$code-01: ( - font-family: font-family.font-family('mono'), - font-size: scale.type-scale(1), - font-weight: font-family.font-weight('regular'), - line-height: 1.33333, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$code-02: ( - font-family: font-family.font-family('mono'), - font-size: scale.type-scale(2), - font-weight: font-family.font-weight('regular'), - line-height: 1.42857, - letter-spacing: 0.32px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-01: ( - font-size: scale.type-scale(2), - font-weight: font-family.font-weight('semibold'), - line-height: 1.42857, - letter-spacing: 0.16px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-01: ( - font-size: scale.type-scale(2), - font-weight: font-family.font-weight('semibold'), - line-height: 1.28572, - letter-spacing: 0.16px, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-compact-01: $productive-heading-01 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-02: ( - font-size: scale.type-scale(3), - font-weight: font-family.font-weight('semibold'), - line-height: 1.5, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-02: ( - font-size: scale.type-scale(3), - font-weight: font-family.font-weight('semibold'), - line-height: 1.375, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-compact-02: $productive-heading-02 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-03: ( - font-size: scale.type-scale(5), - font-weight: font-family.font-weight('regular'), - line-height: 1.4, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-03: $productive-heading-03 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-04: ( - font-size: scale.type-scale(7), - font-weight: font-family.font-weight('regular'), - line-height: 1.28572, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-04: $productive-heading-04 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-05: ( - font-size: scale.type-scale(8), - font-weight: font-family.font-weight('regular'), - line-height: 1.25, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-05: $productive-heading-05 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-06: ( - font-size: scale.type-scale(8), - font-weight: font-family.font-weight('light'), - // Extra digit needed for precision in Chrome - line-height: 1.199, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-06: $productive-heading-06 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$productive-heading-07: ( - font-size: scale.type-scale(10), - font-weight: font-family.font-weight('light'), - line-height: 1.19, - letter-spacing: 0, -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$heading-07: $productive-heading-07 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-01: $heading-01 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-02: $heading-02 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-03: ( - font-size: scale.type-scale(5), - font-weight: font-family.font-weight('regular'), - line-height: 1.4, - letter-spacing: 0, - breakpoints: ( - xlg: ( - font-size: scale.type-scale(5), - line-height: 1.25, - ), - max: ( - font-size: scale.type-scale(6), - line-height: 1.334, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-heading-03: $expressive-heading-03 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-04: ( - font-size: scale.type-scale(7), - font-weight: font-family.font-weight('regular'), - line-height: 1.28572, - letter-spacing: 0, - breakpoints: ( - xlg: ( - font-size: scale.type-scale(7), - line-height: 1.25, - ), - max: ( - font-size: scale.type-scale(8), - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-heading-04: $expressive-heading-04 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-05: ( - font-size: scale.type-scale(8), - font-weight: font-family.font-weight('regular'), - line-height: 1.25, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: scale.type-scale(9), - font-weight: font-family.font-weight('light'), - line-height: 1.22, - ), - lg: ( - font-size: scale.type-scale(10), - line-height: 1.19, - ), - xlg: ( - font-size: scale.type-scale(11), - line-height: 1.17, - ), - max: ( - font-size: scale.type-scale(13), - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-heading-05: $expressive-heading-05 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-heading-06: ( - font-size: scale.type-scale(8), - font-weight: font-family.font-weight('semibold'), - line-height: 1.25, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: scale.type-scale(9), - line-height: 1.22, - ), - lg: ( - font-size: scale.type-scale(10), - line-height: 1.19, - ), - xlg: ( - font-size: scale.type-scale(11), - line-height: 1.17, - ), - max: ( - font-size: scale.type-scale(13), - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-heading-06: $expressive-heading-06 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$expressive-paragraph-01: ( - font-size: scale.type-scale(6), - font-weight: font-family.font-weight('light'), - line-height: 1.334, - letter-spacing: 0, - breakpoints: ( - lg: ( - font-size: scale.type-scale(7), - line-height: 1.28572, - ), - max: ( - font-size: scale.type-scale(8), - line-height: 1.25, - ), - ), -); - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-paragraph-01: $expressive-paragraph-01 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$quotation-01: ( - font-family: font-family.font-family('serif'), - font-size: scale.type-scale(5), - font-weight: font-family.font-weight('regular'), - line-height: 1.3, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: scale.type-scale(5), - ), - lg: ( - font-size: scale.type-scale(6), - line-height: 1.334, - ), - xlg: ( - font-size: scale.type-scale(7), - line-height: 1.28572, - ), - max: ( - font-size: scale.type-scale(8), - line-height: 1.25, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-quotation-01: $quotation-01 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$quotation-02: ( - font-family: font-family.font-family('serif'), - font-size: scale.type-scale(8), - font-weight: font-family.font-weight('light'), - line-height: 1.25, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: scale.type-scale(9), - line-height: 1.22, - ), - lg: ( - font-size: scale.type-scale(10), - line-height: 1.19, - ), - xlg: ( - font-size: scale.type-scale(11), - line-height: 1.17, - ), - max: ( - font-size: scale.type-scale(13), - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-quotation-02: $quotation-02 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$display-01: ( - font-size: scale.type-scale(10), - font-weight: font-family.font-weight('light'), - line-height: 1.19, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: scale.type-scale(10), - ), - lg: ( - font-size: scale.type-scale(12), - ), - xlg: ( - font-size: scale.type-scale(13), - line-height: 1.17, - ), - max: ( - font-size: scale.type-scale(15), - line-height: 1.13, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-display-01: $display-01 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$display-02: ( - font-size: scale.type-scale(10), - font-weight: font-family.font-weight('semibold'), - line-height: 1.19, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: scale.type-scale(10), - ), - lg: ( - font-size: scale.type-scale(12), - ), - xlg: ( - font-size: scale.type-scale(13), - line-height: 1.16, - ), - max: ( - font-size: scale.type-scale(15), - line-height: 1.13, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-display-02: $display-02 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$display-03: ( - font-size: scale.type-scale(10), - font-weight: font-family.font-weight('light'), - line-height: 1.19, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: scale.type-scale(14), - line-height: 1.15, - ), - lg: ( - font-size: scale.type-scale(17), - line-height: 1.11, - letter-spacing: -0.64px, - ), - xlg: ( - font-size: scale.type-scale(20), - line-height: 1.07, - letter-spacing: -0.64px, - ), - max: ( - font-size: scale.type-scale(23), - line-height: 1.05, - letter-spacing: -0.96px, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-display-03: $display-03 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$display-04: ( - font-size: scale.type-scale(10), - font-weight: font-family.font-weight('semibold'), - line-height: 1.19, - letter-spacing: 0, - breakpoints: ( - md: ( - font-size: scale.type-scale(14), - line-height: 1.15, - ), - lg: ( - font-size: scale.type-scale(17), - line-height: 1.11, - letter-spacing: -0.64px, - ), - xlg: ( - font-size: scale.type-scale(20), - line-height: 1.07, - letter-spacing: -0.64px, - ), - max: ( - font-size: scale.type-scale(23), - line-height: 1.05, - letter-spacing: -0.96px, - ), - ), -) !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$fluid-display-04: $display-04 !default; - -/// @type Map -/// @access public -/// @group @carbon/type -$tokens: ( - caption-01: $caption-01, - label-01: $label-01, - helper-text-01: $helper-text-01, - body-short-01: $body-short-01, - body-short-02: $body-short-02, - body-long-01: $body-long-01, - body-long-02: $body-long-02, - code-01: $code-01, - code-02: $code-02, - heading-01: $heading-01, - heading-02: $heading-02, - productive-heading-01: $productive-heading-01, - productive-heading-02: $productive-heading-02, - productive-heading-03: $productive-heading-03, - productive-heading-04: $productive-heading-04, - productive-heading-05: $productive-heading-05, - productive-heading-06: $productive-heading-06, - productive-heading-07: $productive-heading-07, - expressive-paragraph-01: $expressive-paragraph-01, - expressive-heading-01: $expressive-heading-01, - expressive-heading-02: $expressive-heading-02, - expressive-heading-03: $expressive-heading-03, - expressive-heading-04: $expressive-heading-04, - expressive-heading-05: $expressive-heading-05, - expressive-heading-06: $expressive-heading-06, - quotation-01: $quotation-01, - quotation-02: $quotation-02, - display-01: $display-01, - display-02: $display-02, - display-03: $display-03, - display-04: $display-04, - // V11 Tokens - legal-01: $legal-01, - legal-02: $legal-02, - body-compact-01: $body-compact-01, - body-compact-02: $body-compact-02, - heading-compact-01: $heading-compact-01, - heading-compact-02: $heading-compact-02, - body-01: $body-01, - body-02: $body-02, - heading-03: $heading-03, - heading-04: $heading-04, - heading-05: $heading-05, - heading-06: $heading-06, - heading-07: $heading-07, - fluid-heading-03: $fluid-heading-03, - fluid-heading-04: $fluid-heading-04, - fluid-heading-05: $fluid-heading-05, - fluid-heading-06: $fluid-heading-06, - fluid-paragraph-01: $fluid-paragraph-01, - fluid-quotation-01: $fluid-quotation-01, - fluid-quotation-02: $fluid-quotation-02, - fluid-display-01: $fluid-display-01, - fluid-display-02: $fluid-display-02, - fluid-display-03: $fluid-display-03, - fluid-display-04: $fluid-display-04, -); - -/// @param {Map} $map -/// @access public -/// @group @carbon/type -@mixin properties($map) { - @each $name, $value in $map { - #{$name}: $value; - } -} - -/// @param {Number} $value - Number with units -/// @return {Number} Without units -/// @access public -/// @group @carbon/type -@function strip-unit($value) { - @return math.div($value, $value * 0 + 1); -} - -/// This helper includes fluid type styles for the given token value. Fluid type -/// means that the `font-size` is computed using `calc()` in order to be -/// determined by the screen size instead of a breakpoint. As a result, fluid -/// styles should be used with caution in fixed width contexts. -/// -/// In addition, we make use of %-based line-heights so that the line-height of -/// each type style is computed correctly due to the dynamic nature of the -/// `font-size`. -/// -/// Most of the logic for this work comes from CSS Tricks: -/// https://css-tricks.com/snippets/css/fluid-typography/ -/// -/// @param {Map} $type-styles - The value of a given type token -/// @param {Map} $breakpoints [$grid-breakpoints] - Custom breakpoints to use -/// @access public -/// @group @carbon/type -@mixin fluid-type($type-styles, $breakpoints: gridconfig.$grid-breakpoints) { - // Include the initial styles for the given token by default without any - // media query guard. This includes `font-size` as a fallback in the case - // that a browser does not support `calc()` - @include properties(map.remove($type-styles, breakpoints)); - // We also need to include the `sm` styles by default since they don't - // appear in the fluid styles for tokens - @include fluid-type-size($type-styles, sm, $breakpoints); - - // Finally, we need to go through all the breakpoints defined in the type - // token and apply the properties and fluid type size for that given - // breakpoint - @each $name, $values in map.get($type-styles, breakpoints) { - @include grid.breakpoint($name) { - @include properties($values); - @include fluid-type-size($type-styles, $name, $breakpoints); - } - } -} - -/// Computes the fluid `font-size` for a given type style and breakpoint -/// @param {Map} $type-styles - The styles for a given token -/// @param {String} $name - The name of the breakpoint to which we apply the fluid -/// @param {Map} $breakpoints [$grid-breakpoints] - The breakpoints for the grid system -/// @access public -/// @group @carbon/type -@mixin fluid-type-size( - $type-styles, - $name, - $breakpoints: gridconfig.$grid-breakpoints -) { - // Get the information about the breakpoint we're currently working in. Useful - // for getting initial width information - $breakpoint: map.get($breakpoints, $name); - - // Our fluid styles are captured under the 'breakpoints' property in our type - // styles map. These define what values to treat as `max-` variables below - $fluid-sizes: map.get($type-styles, breakpoints); - $fluid-breakpoint: (); - // Special case for `sm` because the styles for small are on the type style - // directly - @if $name == sm { - $fluid-breakpoint: map.remove($type-styles, breakpoints); - } @else { - $fluid-breakpoint: map.get($fluid-sizes, $name); - } - - // Initialize our font-sizes to the default size for the type style - $max-font-size: map.get($type-styles, font-size); - $min-font-size: map.get($type-styles, font-size); - @if map.has-key($fluid-breakpoint, font-size) { - $min-font-size: map.get($fluid-breakpoint, font-size); - } - - // Initialize our min and max width to the width of the current breakpoint - $max-vw: map.get($breakpoint, width); - $min-vw: map.get($breakpoint, width); - - // We can use `breakpoint-next` to see if there is another breakpoint we can - // use to update `max-font-size` and `max-vw` with larger values - $next-breakpoint-available: grid.breakpoint-next($name, $breakpoints); - $next-fluid-breakpoint-name: null; - - // We need to figure out what the next available fluid breakpoint is for our - // given $type-styles. In this loop we try and iterate through breakpoints - // until we either manually set $next-breakpoint-available to null or - // `breakpoint-next` returns null. - @while $next-breakpoint-available { - @if map.has-key($fluid-sizes, $next-breakpoint-available) { - $next-fluid-breakpoint-name: $next-breakpoint-available; - $next-breakpoint-available: null; - } @else { - $next-breakpoint-available: grid.breakpoint-next( - $next-breakpoint-available, - $breakpoints - ); - } - } - - // If we have found the next available fluid breakpoint name, then we know - // that we have values that we can use to set max-font-size and max-vw as both - // values derive from the next breakpoint - @if $next-fluid-breakpoint-name { - $next-fluid-breakpoint: map.get($breakpoints, $next-fluid-breakpoint-name); - $max-font-size: map.get( - map.get($fluid-sizes, $next-fluid-breakpoint-name), - font-size - ); - $max-vw: map.get($next-fluid-breakpoint, width); - - // prettier-ignore - font-size: calc(#{$min-font-size} + - #{strip-unit($max-font-size - $min-font-size)} * - ((100vw - #{$min-vw}) / #{strip-unit($max-vw - $min-vw)}) - ); - } @else { - // Otherwise, just default to setting the font size found from the type - // style or the given fluid breakpoint in the type style - font-size: $min-font-size; - } -} - -// TODO move following variable and `custom-property` mixin into shared file for -// both `@carbon/type` and `@carbon/themes` - -/// @access private -/// @group @carbon/type -$custom-property-prefix: 'cds' !default; - -/// @access private -/// @group @carbon/type -@mixin custom-properties($name, $value) { - @each $property, $value in $value { - #{$property}: var( - --#{$custom-property-prefix}-#{$name}-#{$property}, - #{$value} - ); - } -} - -/// Helper mixin to include the styles for a given token in any selector in your -/// project. Also includes an optional fluid option that will enable fluid -/// styles for the token if they are defined. Fluid styles will cause the -/// token's font-size to be computed based on the viewport size. As a result, use -/// with caution in fixed contexts. -/// @param {String} $name - The name of the token to get the styles for -/// @param {Boolean} $fluid [false] - Specify whether to include fluid styles for the -/// @param {Map} $breakpoints [$grid-breakpoints] - Provide a custom breakpoint map to use -/// @access public -/// @group @carbon/type -@mixin type-style( - $name, - $fluid: false, - $breakpoints: gridconfig.$grid-breakpoints -) { - @if not map.has-key($tokens, $name) { - @error 'Unable to find a token with the name: `#{$name}`'; - } - - $token: map.get($tokens, $name); - - // If $fluid is set to true and the token has breakpoints defined for fluid - // styles, delegate to the fluid-type helper for the given token - @if $fluid == true and map.has-key($token, 'breakpoints') { - @include fluid-type($token, $breakpoints); - } @else { - @if global-variable-exists('feature-flags') and - map.get($feature-flags, 'enable-css-custom-properties') - { - @include custom-properties($name, $token); - } @else { - // Otherwise, we just include all the property declarations directly on the - // selector - @include properties(map.remove($token, 'breakpoints')); - } - } -} diff --git a/packages/type/scss/type.scss b/packages/type/scss/type.scss deleted file mode 100644 index a2dfdc8bf1b6..000000000000 --- a/packages/type/scss/type.scss +++ /dev/null @@ -1,8 +0,0 @@ -// -// Copyright IBM Corp. 2018, 2018 -// -// This source code is licensed under the Apache-2.0 license found in the -// LICENSE file in the root directory of this source tree. -// - -@import './_inlined/reset'; diff --git a/yarn.lock b/yarn.lock index 2825b19f6fcf..60f335a6b98e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1798,7 +1798,6 @@ __metadata: "@carbon/colors": ^10.37.0 "@carbon/grid": ^10.43.0 "@carbon/icons": ^10.48.0 - "@carbon/import-once": ^10.7.0 "@carbon/layout": ^10.37.0 "@carbon/motion": ^10.29.0 "@carbon/themes": ^10.54.0 @@ -1836,7 +1835,6 @@ __metadata: resolution: "@carbon/grid@workspace:packages/grid" dependencies: "@carbon/cli": ^10.34.0 - "@carbon/import-once": ^10.7.0 "@carbon/layout": ^10.37.0 rimraf: ^3.0.0 languageName: unknown @@ -1938,12 +1936,6 @@ __metadata: languageName: unknown linkType: soft -"@carbon/import-once@^10.7.0, @carbon/import-once@workspace:packages/import-once": - version: 0.0.0-use.local - resolution: "@carbon/import-once@workspace:packages/import-once" - languageName: unknown - linkType: soft - "@carbon/layout@^10.37.0, @carbon/layout@workspace:packages/layout": version: 0.0.0-use.local resolution: "@carbon/layout@workspace:packages/layout" @@ -2179,9 +2171,9 @@ __metadata: dependencies: "@carbon/cli": ^10.34.0 "@carbon/grid": ^10.43.0 - "@carbon/import-once": ^10.7.0 "@carbon/test-utils": ^10.21.0 change-case: ^4.1.1 + css: ^3.0.0 rimraf: ^3.0.0 languageName: unknown linkType: soft @@ -10034,6 +10026,7 @@ __metadata: "@rollup/plugin-node-resolve": ^13.0.0 babel-plugin-dev-expression: ^0.2.3 babel-preset-carbon: ^0.2.0 + browserslist-config-carbon: ^10.6.1 fs-extra: ^10.0.0 react: ^17.0.2 react-dom: ^17.0.2