From 6936d0ce0e65f160f4d88c4c0fe439c82f2dedab Mon Sep 17 00:00:00 2001 From: Nathan Young <1447339+nathanyoung@users.noreply.github.com> Date: Mon, 6 May 2024 13:28:15 -0700 Subject: [PATCH] BREAKING CHANGE: background, border, font dark mode color values (#244) * update babel * bump style-dictionary * wip * dark mode backgrounds * background colors * font colors * add border colors * output scss dark mode colors * remove debug * update figma * Delete mapSemanticColors.js BREAKING CHANGE: do not generate semantic colors BREAKING CHANGE: background, border, font dark mode color values --- .github/workflows/pull-request.yml | 3 +- build.js | 56 +- config.json | 84 ++- formats/utilityClass/utilitiesConfig.js | 32 +- package.json | 2 +- properties/color/base.json | 117 ---- properties/color/brand.json | 90 ---- properties/color/font.json | 22 - properties/size/border-radius.json | 11 - properties/size/breakpoint.json | 21 - properties/size/font.json | 49 -- properties/size/spacing.json | 70 --- .../generateTokenTypes/generateTokenTypes.js | 76 ++- utils/mapSemanticColors/mapSemanticColors.js | 45 -- .../parseFigmaDocumentTokens.js | 20 +- yarn.lock | 501 ++++++++++++++---- 16 files changed, 624 insertions(+), 575 deletions(-) delete mode 100644 properties/color/base.json delete mode 100644 properties/color/brand.json delete mode 100644 properties/color/font.json delete mode 100644 properties/size/border-radius.json delete mode 100644 properties/size/breakpoint.json delete mode 100644 properties/size/font.json delete mode 100644 properties/size/spacing.json delete mode 100644 utils/mapSemanticColors/mapSemanticColors.js diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index e245fd3..6d59b03 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -8,7 +8,7 @@ on: pull_request: types: [opened, synchronize, reopened] push: - branches: [main] + branches: [main, beta] # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: @@ -30,4 +30,3 @@ jobs: - name: unit test run: | yarn test - diff --git a/build.js b/build.js index 1741199..9accfe6 100644 --- a/build.js +++ b/build.js @@ -12,6 +12,37 @@ const useSizeUnit = require('./transforms/useSizeUnit/useSizeUnit'); const customKebab = require('./transforms/customKebab/customKebab'); const createIconComponents = require('./utils/createIconComponents/createIconComponents'); +/** + * This function will wrap a built-in format and replace `.value` with `.darkValue` + * if a token has a `.darkValue`. + * @param {String} format - the name of the built-in format + * @returns {Function} + */ +function darkFormatWrapper(format) { + return function (args) { + const dictionary = Object.assign({}, args.dictionary); + // Override each token's `value` with `darkValue` + dictionary.allTokens = dictionary.allTokens.map(token => { + const { darkValue } = token; + if (darkValue) { + return Object.assign({}, token, { + value: token.darkValue, + original: { + value: token.darkValue, + darkValue: token.darkValue, + }, + }); + } else { + return token; + } + }); + + // Use the built-in format but with our customized dictionary object + // so it will output the darkValue instead of the value + return StyleDictionary.format[format]({ ...args, dictionary }); + }; +} + console.log('Build started...'); console.log('\n=============================================='); @@ -37,6 +68,16 @@ StyleDictionary.registerFilter({ prop.attributes.category === 'color' && prop.attributes.type === 'brand', }); +StyleDictionary.registerFilter({ + name: 'isColor', + matcher: token => token.attributes.category === 'color', +}); + +StyleDictionary.registerFilter({ + name: 'isDarkColor', + matcher: token => token.darkValue && token.attributes.category === 'color', +}); + // Custom Formats StyleDictionary.registerFormat(utilityClass); StyleDictionary.registerFormat(cssVariablesFont); @@ -60,7 +101,7 @@ const FIGMA_TOKENS_DOCUMENT = 'abGRptpr7iPaMsXdEPVm6W'; * Ideally the figma file version _label_ and the npm package version will match * but it is not required. */ -const FIGMA_FILE_VERSION = '5496945385'; +const FIGMA_FILE_VERSION = '5702376608'; /** * Read tokens from FIGMA file. @@ -69,7 +110,7 @@ getFigmaDocument(FIGMA_TOKENS_DOCUMENT, FIGMA_FILE_VERSION) .then(response => response.json()) .then(figmaJson => { /** - * Empty build directoty + * Empty build directory */ fse.emptyDirSync('./build'); console.log('\nBuild directory cleared'); @@ -80,13 +121,6 @@ getFigmaDocument(FIGMA_TOKENS_DOCUMENT, FIGMA_FILE_VERSION) */ let properties = parseFigmaDocumentTokens(figmaJson.document); - /** - * Generate semantic (light, lighter, etc...) colors - * from lightness numbers (50, 100, etc...) - * It keeps the original colors as well as the semantic versions. - */ - properties = mapSemanticColors(properties); - /** * Apply the configuration. * @@ -95,6 +129,10 @@ getFigmaDocument(FIGMA_TOKENS_DOCUMENT, FIGMA_FILE_VERSION) */ const StyleDictionaryExtended = StyleDictionary.extend({ properties, + format: { + cssDark: darkFormatWrapper(`css/variables`), + scssDark: darkFormatWrapper(`scss/variables`), + }, platforms: dictionaryConfig.platforms, }); diff --git a/config.json b/config.json index 20e589e..170a9c7 100644 --- a/config.json +++ b/config.json @@ -1,7 +1,14 @@ { "platforms": { "scss": { - "transforms": ["attribute/cti", "name/cti/custom-kebab", "time/seconds", "content/icon", "size/use-unit", "color/css"], + "transforms": [ + "attribute/cti", + "name/cti/custom-kebab", + "time/seconds", + "content/icon", + "size/use-unit", + "color/css" + ], "buildPath": "build/scss/", "files": [ { @@ -9,6 +16,12 @@ "format": "scss/variables", "filter": "isBrandColor" }, + { + "destination": "variables-color-dark.scss", + "format": "scssDark", + "options": { "selector": ":root.dark" }, + "filter": "isDarkColor" + }, { "destination": "variables-size.scss", "format": "scss/variables", @@ -22,13 +35,26 @@ ] }, "css": { - "transforms": ["attribute/cti", "name/cti/custom-kebab", "time/seconds", "content/icon", "size/use-unit", "color/css"], + "transforms": [ + "attribute/cti", + "name/cti/custom-kebab", + "time/seconds", + "content/icon", + "size/use-unit", + "color/css" + ], "buildPath": "build/css/", "files": [ { "destination": "variables-color.css", "format": "css/variables", - "filter": "isBrandColor" + "filter": "isColor" + }, + { + "destination": "variables-color-dark.css", + "format": "cssDark", + "options": { "selector": ":root.dark" }, + "filter": "isDarkColor" }, { "destination": "variables-size.css", @@ -44,22 +70,45 @@ }, "cssUtilities": { "buildPath": "build/utilities/", - "transforms": ["attribute/cti", "name/cti/custom-kebab", "time/seconds", "content/icon", "size/use-unit", "color/css"], - "files": [{ - "destination": "utilities.css", - "format": "css/utility-classes" - }] + "transforms": [ + "attribute/cti", + "name/cti/custom-kebab", + "time/seconds", + "content/icon", + "size/use-unit", + "color/css" + ], + "files": [ + { + "destination": "utilities.css", + "format": "css/utility-classes" + } + ] }, "sassUtilities": { "buildPath": "build/utilities/", - "transforms": ["attribute/cti", "name/cti/custom-kebab", "time/seconds", "content/icon", "size/use-unit", "color/css"], - "files": [{ - "destination": "utilities.scss", - "format": "css/utility-classes" - }] + "transforms": [ + "attribute/cti", + "name/cti/custom-kebab", + "time/seconds", + "content/icon", + "size/use-unit", + "color/css" + ], + "files": [ + { + "destination": "utilities.scss", + "format": "css/utility-classes" + } + ] }, "js": { - "transforms": ["attribute/cti", "name/cti/pascal", "size/use-unit", "color/css"], + "transforms": [ + "attribute/cti", + "name/cti/pascal", + "size/use-unit", + "color/css" + ], "buildPath": "build/js/", "files": [ { @@ -80,7 +129,12 @@ ] }, "json": { - "transforms": ["attribute/cti", "name/cti/pascal", "size/use-unit", "color/css"], + "transforms": [ + "attribute/cti", + "name/cti/pascal", + "size/use-unit", + "color/css" + ], "buildPath": "build/json/", "files": [ { diff --git a/formats/utilityClass/utilitiesConfig.js b/formats/utilityClass/utilitiesConfig.js index 4b7eadf..8f0ce21 100644 --- a/formats/utilityClass/utilitiesConfig.js +++ b/formats/utilityClass/utilitiesConfig.js @@ -9,6 +9,16 @@ const utilities = [ hover: true, focus: true, }, + { + name: 'font-color', + tokenCategory: 'color', + tokenType: 'text', + cssProp: 'color', + variations: [''], + responsive: false, + hover: true, + focus: true, + }, { name: 'background-color', tokenCategory: 'color', @@ -19,6 +29,16 @@ const utilities = [ hover: true, focus: true, }, + { + name: 'background-color', + tokenCategory: 'color', + tokenType: 'background', + cssProp: 'background-color', + variations: [''], + responsive: false, + hover: true, + focus: true, + }, { name: 'border-color', tokenCategory: 'color', @@ -29,6 +49,16 @@ const utilities = [ hover: true, focus: true, }, + { + name: 'border-color', + tokenCategory: 'color', + tokenType: 'border', + cssProp: 'border-color', + variations: [''], + responsive: false, + hover: true, + focus: true, + }, { name: 'font-size', tokenCategory: 'size', @@ -224,4 +254,4 @@ const utilities = [ }, ]; -module.exports = utilities; \ No newline at end of file +module.exports = utilities; diff --git a/package.json b/package.json index 577478a..eb80eca 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,6 @@ "react": ">=16.8.0", "react-dom": ">=16.8.0", "semantic-release": "^19.0.3", - "style-dictionary": "^2.10.0" + "style-dictionary": "^3.8.0" } } diff --git a/properties/color/base.json b/properties/color/base.json deleted file mode 100644 index 411c594..0000000 --- a/properties/color/base.json +++ /dev/null @@ -1,117 +0,0 @@ - -{ - "color": { - "base": { - "red": { - "50" : { "value": "#FFE3E3", "attributes": {"font": "base"}}, - "100" : { "value": "#FFB6B5", "attributes": {"font": "base"}}, - "200" : { "value": "#F98887", "attributes": {"font": "base"}}, - "300" : { "value": "#F45957", "attributes": {"font": "base"}}, - "400" : { "value": "#F02A28", "attributes": {"font": "base"}}, - "500" : { "value": "#D7110F", "attributes": {"font": "inverse"}}, - "600" : { "value": "#A80A0B", "attributes": {"font": "inverse"}}, - "700" : { "value": "#780506", "attributes": {"font": "inverse"}}, - "800" : { "value": "#4B0202", "attributes": {"font": "inverse"}}, - "900" : { "value": "#200000", "attributes": {"font": "inverse"}} - }, - "orange": { - "50" : { "value": "#FFFBDA", "attributes": {"font": "base"}}, - "100" : { "value": "#FFEAAE", "attributes": {"font": "base"}}, - "200" : { "value": "#FFD97D", "attributes": {"font": "base"}}, - "300" : { "value": "#FFC34B", "attributes": {"font": "base"}}, - "400" : { "value": "#FFAA1A", "attributes": {"font": "base"}}, - "500" : { "value": "#E68900", "attributes": {"font": "base"}}, - "600" : { "value": "#B37600", "attributes": {"font": "base"}}, - "700" : { "value": "#815D00", "attributes": {"font": "inverse"}}, - "800" : { "value": "#4F3D00", "attributes": {"font": "inverse"}}, - "900" : { "value": "#1F1600", "attributes": {"font": "inverse"}} - }, - "yellow": { - "50" : { "value": "#FFFADA", "attributes": {"font": "base"}}, - "100" : { "value": "#FFF1AD", "attributes": {"font": "base"}}, - "200" : { "value": "#FFE77D", "attributes": {"font": "base"}}, - "300" : { "value": "#FFDE4B", "attributes": {"font": "base"}}, - "400" : { "value": "#FFD41A", "attributes": {"font": "base"}}, - "500" : { "value": "#E6BB00", "attributes": {"font": "base"}}, - "600" : { "value": "#B39100", "attributes": {"font": "base"}}, - "700" : { "value": "#806800", "attributes": {"font": "inverse"}}, - "800" : { "value": "#4E3E00", "attributes": {"font": "inverse"}}, - "900" : { "value": "#1C1500", "attributes": {"font": "inverse"}} - }, - "green": { - "50" : { "value": "#E3FBEF", "attributes": {"font": "base"}}, - "100" : { "value": "#C3ECD8", "attributes": {"font": "base"}}, - "200" : { "value": "#A0DEBF", "attributes": {"font": "base"}}, - "300" : { "value": "#7BD0A5", "attributes": {"font": "base"}}, - "400" : { "value": "#58C38D", "attributes": {"font": "base"}}, - "500" : { "value": "#3EA973", "attributes": {"font": "base"}}, - "600" : { "value": "#2F8459", "attributes": {"font": "inverse"}}, - "700" : { "value": "#1F5E3F", "attributes": {"font": "inverse"}}, - "800" : { "value": "#0F3925", "attributes": {"font": "inverse"}}, - "900" : { "value": "#001509", "attributes": {"font": "inverse"}} - }, - "cyan": { - "50" : { "value": "#D7FEFF", "attributes": {"font": "base"}}, - "100" : { "value": "#AAF4FF", "attributes": {"font": "base"}}, - "200" : { "value": "#7AEBFF", "attributes": {"font": "base"}}, - "300" : { "value": "#48E2FF", "attributes": {"font": "base"}}, - "400" : { "value": "#1ADAFF", "attributes": {"font": "base"}}, - "500" : { "value": "#00C0E6", "attributes": {"font": "base"}}, - "600" : { "value": "#006B82", "attributes": {"font": "inverse"}}, - "700" : { "value": "#006B82", "attributes": {"font": "inverse"}}, - "800" : { "value": "#004150", "attributes": {"font": "inverse"}}, - "900" : { "value": "#00171F", "attributes": {"font": "inverse"}} - }, - "blue": { - "50" : { "value": "#DDF6FF", "attributes": {"font": "base"}}, - "100" : { "value": "#B0DEFF", "attributes": {"font": "base"}}, - "200" : { "value": "#82C6FB", "attributes": {"font": "base"}}, - "300" : { "value": "#53AFF7", "attributes": {"font": "base"}}, - "400" : { "value": "#2598F3", "attributes": {"font": "base"}}, - "500" : { "value": "#0C7FDA", "attributes": {"font": "base"}}, - "600" : { "value": "#0062AA", "attributes": {"font": "inverse"}}, - "700" : { "value": "#00467B", "attributes": {"font": "inverse"}}, - "800" : { "value": "#002A4D", "attributes": {"font": "inverse"}}, - "900" : { "value": "#000F1F", "attributes": {"font": "inverse"}} - }, - "indigo": { - "50" : { "value": "#E9EEFF", "attributes": {"font": "base"}}, - "100" : { "value": "#C4CCF0", "attributes": {"font": "base"}}, - "200" : { "value": "#9FAAE1", "attributes": {"font": "base"}}, - "300" : { "value": "#7A88D2", "attributes": {"font": "base"}}, - "400" : { "value": "#5566C4", "attributes": {"font": "inverse"}}, - "500" : { "value": "#3B4CAA", "attributes": {"font": "inverse"}}, - "600" : { "value": "#2D3B85", "attributes": {"font": "inverse"}}, - "700" : { "value": "#1F2A61", "attributes": {"font": "inverse"}}, - "800" : { "value": "#11193D", "attributes": {"font": "inverse"}}, - "900" : { "value": "#05071A", "attributes": {"font": "inverse"}} - }, - "purple": { - "50" : { "value": "#ECE8FF", "attributes": {"font": "base"}}, - "100" : { "value": "#C4BDF7", "attributes": {"font": "base"}}, - "200" : { "value": "#9991EE", "attributes": {"font": "base"}}, - "300" : { "value": "#7A65E6", "attributes": {"font": "base"}}, - "400" : { "value": "#5F39DE", "attributes": {"font": "inverse"}}, - "500" : { "value": "#5120C5", "attributes": {"font": "inverse"}}, - "600" : { "value": "#471899", "attributes": {"font": "inverse"}}, - "700" : { "value": "#39116E", "attributes": {"font": "inverse"}}, - "800" : { "value": "#250A44", "attributes": {"font": "inverse"}}, - "900" : { "value": "#11021B", "attributes": {"font": "inverse"}} - }, - "grey": { - "50" : { "value": "#F5F8F7", "attributes": {"font": "base"}}, - "100" : { "value": "#D5DCD7", "attributes": {"font": "base"}}, - "200" : { "value": "#BBC4BE", "attributes": {"font": "base"}}, - "300" : { "value": "#A0ADA4", "attributes": {"font": "base"}}, - "400" : { "value": "#86968A", "attributes": {"font": "base"}}, - "500" : { "value": "#6C7C70", "attributes": {"font": "base"}}, - "600" : { "value": "#4D524F", "attributes": {"font": "inverse"}}, - "700" : { "value": "#3C453E", "attributes": {"font": "inverse"}}, - "800" : { "value": "#2A2D2B", "attributes": {"font": "inverse"}}, - "900" : { "value": "#080F08", "attributes": {"font": "inverse"}} - }, - "white": { "value": "#ffffff" }, - "black": { "value": "#000000" } - } - } -} \ No newline at end of file diff --git a/properties/color/brand.json b/properties/color/brand.json deleted file mode 100644 index 8cdf912..0000000 --- a/properties/color/brand.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "color": { - "brand": { - "primary": { - "lightest": { "value": "{color.base.green.50.value}" }, - "lighter": { "value": "{color.base.green.100.value}" }, - "light": { "value": "{color.base.green.300.value}" }, - "base": { "value": "{color.base.green.600.value}" }, - "dark": { "value": "{color.base.green.700.value}" }, - "darker": { "value": "{color.base.green.800.value}" }, - "darkest": { "value": "{color.base.green.900.value}" } - }, - "secondary": { - "lightest": { "value": "{color.base.blue.50.value}" }, - "lighter": { "value": "{color.base.blue.100.value}" }, - "light": { "value": "{color.base.blue.300.value}" }, - "base": { "value": "{color.base.blue.500.value}" }, - "dark": { "value": "{color.base.blue.600.value}" }, - "darker": { "value": "{color.base.blue.700.value}" }, - "darkest": { "value": "{color.base.blue.800.value}" } - }, - "tertiary": { - "lightest": { "value": "{color.base.purple.50.value}" }, - "lighter": { "value": "{color.base.purple.100.value}" }, - "light": { "value": "{color.base.purple.300.value}" }, - "base": { "value": "{color.base.purple.500.value}" }, - "dark": { "value": "{color.base.purple.600.value}" }, - "darker": { "value": "{color.base.purple.700.value}" }, - "darkest": { "value": "{color.base.purple.800.value}" } - }, - "grey": { - "lightest": { "value": "{color.base.grey.50.value}" }, - "lighter": { "value": "{color.base.grey.100.value}" }, - "light": { "value": "{color.base.grey.300.value}" }, - "base": { "value": "{color.base.grey.500.value}" }, - "dark": { "value": "{color.base.grey.600.value}" }, - "darker": { "value": "{color.base.grey.700.value}" }, - "darkest": { "value": "{color.base.grey.800.value}" } - }, - "success": { - "lightest": { "value": "{color.base.green.50.value}" }, - "lighter": { "value": "{color.base.green.100.value}" }, - "light": { "value": "{color.base.green.300.value}" }, - "base": { "value": "{color.base.green.500.value}" }, - "dark": { "value": "{color.base.green.600.value}" }, - "darker": { "value": "{color.base.green.700.value}" }, - "darkest": { "value": "{color.base.green.800.value}" } - }, - "warning": { - "lightest": { "value": "{color.base.orange.50.value}" }, - "lighter": { "value": "{color.base.orange.100.value}" }, - "light": { "value": "{color.base.orange.300.value}" }, - "base": { "value": "{color.base.orange.500.value}" }, - "dark": { "value": "{color.base.orange.600.value}" }, - "darker": { "value": "{color.base.orange.700.value}" }, - "darkest": { "value": "{color.base.orange.800.value}" } - }, - "danger": { - "lightest": { "value": "{color.base.red.50.value}" }, - "lighter": { "value": "{color.base.red.100.value}" }, - "light": { "value": "{color.base.red.300.value}" }, - "base": { "value": "{color.base.red.500.value}" }, - "dark": { "value": "{color.base.red.600.value}" }, - "darker": { "value": "{color.base.red.700.value}" }, - "darkest": { "value": "{color.base.red.800.value}" } - }, - "info": { - "lightest": { "value": "{color.base.blue.50.value}" }, - "lighter": { "value": "{color.base.blue.100.value}" }, - "light": { "value": "{color.base.blue.300.value}" }, - "base": { "value": "{color.base.blue.500.value}" }, - "dark": { "value": "{color.base.blue.600.value}" }, - "darker": { "value": "{color.base.blue.700.value}" }, - "darkest": { "value": "{color.base.blue.800.value}" } - }, - "dark": { - "base": { "value": "{color.base.grey.700.value}" } - }, - "light": { - "base": { "value": "{color.base.grey.100.value}" } - }, - "black": { - "base": { "value": "{color.base.black.value}" } - }, - "white": { - "base": { "value": "{color.base.white.value}" } - } - } - } -} \ No newline at end of file diff --git a/properties/color/font.json b/properties/color/font.json deleted file mode 100644 index 680013a..0000000 --- a/properties/color/font.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "color": { - "font": { - "base": { "value": "{color.brand.dark.base.value}" }, - "inverse": { "value": "{color.brand.light.base.value}" }, - "primary": { "value": "{color.brand.primary.base.value}" }, - "secondary": { "value": "{color.brand.secondary.base.value}" }, - "tertiary": { "value": "{color.brand.tertiary.base.value}" }, - "success": { "value": "{color.brand.success.base.value}" }, - "warning": { "value": "{color.brand.warning.base.value}" }, - "danger": { "value": "{color.brand.danger.base.value}" }, - "info": { "value": "{color.brand.info.base.value}" }, - "grey-lightest": { "value": "{color.brand.grey.lightest.value}" }, - "grey-lighter": { "value": "{color.brand.grey.lighter.value}" }, - "grey-light": { "value": "{color.brand.grey.light.value}" }, - "grey": { "value": "{color.brand.grey.base.value}" }, - "grey-dark": { "value": "{color.brand.grey.dark.value}" }, - "grey-darker": { "value": "{color.brand.grey.darker.value}" }, - "grey-darkest": { "value": "{color.brand.grey.darkest.value}" } - } - } -} diff --git a/properties/size/border-radius.json b/properties/size/border-radius.json deleted file mode 100644 index 090af3c..0000000 --- a/properties/size/border-radius.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "size": { - "border-radius": { - "xs": { "value": "0.125", "unit": "rem" }, - "sm": { "value": "0.25", "unit": "rem" }, - "md": { "value": ".5", "unit": "rem" }, - "lg": { "value": "1", "unit": "rem" }, - "circle": { "value": "50", "unit": "%" } - } - } -} \ No newline at end of file diff --git a/properties/size/breakpoint.json b/properties/size/breakpoint.json deleted file mode 100644 index 4050557..0000000 --- a/properties/size/breakpoint.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "size": { - "breakpoint": { - "tablet": { - "value": "608", - "comment": "landscape phones, tablets and larger", - "unit": "px" - }, - "desktop": { - "value": "992", - "comment": "landscape tablets, desktops and larger", - "unit": "px" - }, - "hd": { - "value": "1280", - "comment": "large desktops and larger", - "unit": "px" - } - } - } -} diff --git a/properties/size/font.json b/properties/size/font.json deleted file mode 100644 index fd260d3..0000000 --- a/properties/size/font.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "size": { - "font": { - "xs": { - "value": "0.75", - "comment": "Small and hard to read for many people so use with caution", - "unit": "rem" - }, - "sm": { - "value": "0.875", - "unit": "rem" - }, - "md": { - "value": "1", - "comment": "For paragraph body copy", - "unit": "rem" - }, - "lg": { - "value": "1.25", - "unit": "rem" - }, - "xl": { - "value": "1.5", - "unit": "rem" - }, - "2xl": { - "value": "2.25", - "unit": "rem" - }, - "3xl": { - "value": "3", - "unit": "rem" - }, - "4xl": { - "value": "5", - "unit": "rem" - }, - "5xl": { - "value": "6", - "comment": "For Hero or Marketing titles", - "unit": "rem" - }, - "base": { - "value": "{size.font.md.value}", - "unit": "rem" - } - } - } -} \ No newline at end of file diff --git a/properties/size/spacing.json b/properties/size/spacing.json deleted file mode 100644 index 0b0afb6..0000000 --- a/properties/size/spacing.json +++ /dev/null @@ -1,70 +0,0 @@ -{ - "size": { - "spacing": { - "0": { "value": "0", "unit": "" }, - "2xs": { "value": "0.25", "unit": "rem" }, - "xs": { "value": "0.5", "unit": "rem" }, - "sm": { "value": "0.75", "unit": "rem" }, - "md": { "value": "1", "unit": "rem" }, - "lg": { "value": "1.5", "unit": "rem" }, - "xl": { "value": "2", "unit": "rem" }, - "2xl": { "value": "2.5", "unit": "rem" }, - "3xl": { "value": "3", "unit": "rem" }, - "4xl": { "value": "4", "unit": "rem" }, - "5xl": { "value": "5", "unit": "rem" }, - "base": { "value": "{size.spacing.md.value}", "unit": "rem" }, - "inherit": { "value": "inherit", "unit": "" } - }, - "width": { - "sm": { "value": "1", "unit": "rem" }, - "md": { "value": "2", "unit": "rem" }, - "lg": { "value": "4", "unit": "rem" }, - "xl": { "value": "8", "unit": "rem" }, - "2xl": { "value": "12", "unit": "rem" }, - "3xl": { "value": "16", "unit": "rem" }, - "4xl": { "value": "32", "unit": "rem" }, - "5xl": { "value": "64", "unit": "rem" }, - "10": { "value": "10", "unit": "%" }, - "15": { "value": "15", "unit": "%" }, - "20": { "value": "20", "unit": "%" }, - "25": { "value": "25", "unit": "%" }, - "30": { "value": "30", "unit": "%" }, - "33": { "value": "33", "unit": "%" }, - "34": { "value": "34", "unit": "%" }, - "40": { "value": "40", "unit": "%" }, - "50": { "value": "50", "unit": "%" }, - "60": { "value": "60", "unit": "%" }, - "70": { "value": "70", "unit": "%" }, - "75": { "value": "75", "unit": "%" }, - "80": { "value": "80", "unit": "%" }, - "90": { "value": "90", "unit": "%" }, - "100": { "value": "100", "unit": "%" } - - }, - "height": { - "sm": { "value": "1", "unit": "rem" }, - "md": { "value": "2", "unit": "rem" }, - "lg": { "value": "4", "unit": "rem" }, - "xl": { "value": "8", "unit": "rem" }, - "2xl": { "value": "12", "unit": "rem" }, - "3xl": { "value": "16", "unit": "rem" }, - "4xl": { "value": "32", "unit": "rem" }, - "5xl": { "value": "64", "unit": "rem" }, - "10": { "value": "10", "unit": "%" }, - "15": { "value": "15", "unit": "%" }, - "20": { "value": "20", "unit": "%" }, - "25": { "value": "25", "unit": "%" }, - "30": { "value": "30", "unit": "%" }, - "33": { "value": "33", "unit": "%" }, - "34": { "value": "34", "unit": "%" }, - "40": { "value": "40", "unit": "%" }, - "50": { "value": "50", "unit": "%" }, - "60": { "value": "60", "unit": "%" }, - "70": { "value": "70", "unit": "%" }, - "75": { "value": "75", "unit": "%" }, - "80": { "value": "80", "unit": "%" }, - "90": { "value": "90", "unit": "%" }, - "100": { "value": "100", "unit": "%" } - } - } -} \ No newline at end of file diff --git a/utils/generateTokenTypes/generateTokenTypes.js b/utils/generateTokenTypes/generateTokenTypes.js index 3f17f8d..96cdb27 100644 --- a/utils/generateTokenTypes/generateTokenTypes.js +++ b/utils/generateTokenTypes/generateTokenTypes.js @@ -3,7 +3,10 @@ const path = require('path'); const babel = require('@babel/core'); const BABEL_OPTIONS = { - plugins: ['@babel/plugin-transform-react-jsx', '@babel/plugin-transform-modules-commonjs'], + plugins: [ + '@babel/plugin-transform-react-jsx', + '@babel/plugin-transform-modules-commonjs', + ], }; const colorTokens = require('../../build/json/variables-color.json'); const sizeTokens = require('../../build/json/variables-size.json'); @@ -13,7 +16,12 @@ const assetTokens = require('../../build/json/variables-asset.json'); * COLORS */ const brandColors = colorTokens.color.brand; +const backgroundColors = colorTokens.color.background; +const borderColors = colorTokens.color.border; +const fontColors = colorTokens.color.text; const BRAND_COLORS = 'BRAND_COLORS'; +const BACKGROUND_COLORS = 'BACKGROUND_COLORS'; +const BORDER_COLORS = 'BORDER_COLORS'; const FONT_COLORS = 'FONT_COLORS'; const BRAND_COLOR_NAMES = 'BRAND_COLOR_NAMES'; @@ -26,15 +34,22 @@ const brandColorOptions = [].concat.apply( ), ); +const backgroundColorOptions = [].concat.apply( + [], + Object.keys(backgroundColors).map(colorName => colorName), +); + +const borderColorOptions = [].concat.apply( + [], + Object.keys(borderColors).map(colorName => colorName), +); + const brandColorNames = Object.keys(brandColors); +const backgroundColorNames = Object.keys(backgroundColors); const fontColorOptions = [].concat.apply( [], - Object.keys(brandColors).map(colorName => - Object.keys(brandColors[colorName]).map(colorGrade => - colorGrade === 'base' ? colorName : `${colorName}-${colorGrade}`, - ), - ), + Object.keys(fontColors).map(colorName => colorName), ); /** @@ -69,13 +84,13 @@ const WIDTH_SIZES = 'WIDTH_SIZES'; const Z_INDEX_SIZES = 'Z_INDEX_SIZES'; /** - * ASSETS + * ASSETS */ - const { asset } = assetTokens; +const { asset } = assetTokens; - const fontFamilyOptions = Object.keys(asset.fonts); +const fontFamilyOptions = Object.keys(asset.fonts); - const FONT_FAMILY_OPTIONS = 'FONT_FAMILY_OPTIONS'; +const FONT_FAMILY_OPTIONS = 'FONT_FAMILY_OPTIONS'; /** * ICONS @@ -84,13 +99,19 @@ const sourceIconsDir = path.join(__dirname, '..', '..', 'icons/'); const iconFiles = fs .readdirSync(sourceIconsDir) .filter(fileName => path.extname(fileName).toLowerCase() === '.svg'); -const iconNames = iconFiles.map(iconFile => iconFile.substr(0, iconFile.lastIndexOf('.'))); +const iconNames = iconFiles.map(iconFile => + iconFile.substr(0, iconFile.lastIndexOf('.')), +); const ICON_NAMES = 'ICON_NAMES'; /** * UTILITY FUNCTIONS */ -const writeArray = (array, arrayName, options = { lineBreak: true, asConst: true }) => { +const writeArray = ( + array, + arrayName, + options = { lineBreak: true, asConst: true }, +) => { const { lineBreak, asConst } = options; let result = `const ${arrayName} = [`; @@ -118,7 +139,9 @@ const createColorTokens = currentFile => { let result = currentFile; result = result.concat(writeExport(writeArray(brandColorOptions, BRAND_COLORS))); - result = result.concat(writeExport(writeArray(fontColorOptions, FONT_COLORS))); + result = result.concat(writeExport(writeArray([...backgroundColorOptions, ...brandColorOptions],BACKGROUND_COLORS))); + result = result.concat(writeExport(writeArray([...borderColorOptions, ...brandColorOptions],BORDER_COLORS))); + result = result.concat(writeExport(writeArray([...fontColorOptions, ...brandColorOptions], FONT_COLORS))); result = result.concat(writeArray(brandColorNames, BRAND_COLOR_NAMES)); return result; @@ -149,12 +172,14 @@ const createAssetTokens = currentFile => { result = result.concat(writeArray(fontFamilyOptions, FONT_FAMILY_OPTIONS)); return result; -} +}; const createIconNames = (currentFile, asConst = true) => { let result = currentFile; - result = result.concat(writeExport(writeArray(iconNames, ICON_NAMES, { asConst }))); + result = result.concat( + writeExport(writeArray(iconNames, ICON_NAMES, { asConst })), + ); return result; }; @@ -166,6 +191,8 @@ const createColorTypes = currentFile => { let result = currentFile; result = result.concat(writeExport(writeUnionTypeFromArray('BrandColor', BRAND_COLORS))); + result = result.concat(writeExport(writeUnionTypeFromArray('BackgroundColor', BACKGROUND_COLORS))); + result = result.concat(writeExport(writeUnionTypeFromArray('BorderColor', BORDER_COLORS))); result = result.concat(writeExport(writeUnionTypeFromArray('FontColor', FONT_COLORS))); result = result.concat(writeExport(writeUnionTypeFromArray('ColorName', BRAND_COLOR_NAMES))); @@ -176,9 +203,7 @@ const createSizeTypes = currentFile => { let result = currentFile; result = result.concat(writeExport(writeUnionTypeFromArray('BorderSize', BORDER_SIZES))); - result = result.concat( - writeExport(writeUnionTypeFromArray('BorderRadiusSize', BORDER_RADIUS_SIZES)), - ); + result = result.concat(writeExport(writeUnionTypeFromArray('BorderRadiusSize',BORDER_RADIUS_SIZES),)); result = result.concat(writeExport(writeUnionTypeFromArray('BoxShadowSize', BOX_SHADOW_SIZES))); result = result.concat(writeExport(writeUnionTypeFromArray('BreakpointSize', BREAKPOINT_SIZES))); result = result.concat(writeExport(writeUnionTypeFromArray('FontSize', FONT_SIZES))); @@ -188,22 +213,24 @@ const createSizeTypes = currentFile => { result = result.concat(writeExport(writeUnionTypeFromArray('OpacitySize', OPACITY_SIZES))); result = result.concat(writeExport(writeUnionTypeFromArray('SpacingSize', SPACING_SIZES))); result = result.concat(writeExport(writeUnionTypeFromArray('WidthSize', WIDTH_SIZES))); - result = result.concat(writeExport(writeUnionTypeFromArray('ZIndexSize', Z_INDEX_SIZES))); + result = result.concat(writeExport(writeUnionTypeFromArray('ZIndexSize', Z_INDEX_SIZES)) +); return result; }; - const createAssetTypes = currentFile => { let result = currentFile; - result = result.concat(writeExport(writeUnionTypeFromArray('FontFamily', FONT_FAMILY_OPTIONS))); + result = result.concat(writeExport(writeUnionTypeFromArray('FontFamily', FONT_FAMILY_OPTIONS)) + ); return result; }; const createIconTypes = currentFile => { let result = currentFile; - result = result.concat(writeExport(writeUnionTypeFromArray('IconName', ICON_NAMES))); + result = result.concat(writeExport(writeUnionTypeFromArray('IconName', ICON_NAMES)) + ); return result; }; @@ -233,7 +260,10 @@ const writeFile = () => { let icons = ''; icons = createFileHeader(icons); - icons = babel.transformSync(createIconNames(icons, false), BABEL_OPTIONS).code; + icons = babel.transformSync( + createIconNames(icons, false), + BABEL_OPTIONS, + ).code; fs.writeFileSync(`${__dirname}/../../build/icons/index.js`, icons); }; diff --git a/utils/mapSemanticColors/mapSemanticColors.js b/utils/mapSemanticColors/mapSemanticColors.js deleted file mode 100644 index 5c309e9..0000000 --- a/utils/mapSemanticColors/mapSemanticColors.js +++ /dev/null @@ -1,45 +0,0 @@ -const colorMap = { - '50': 'lightest', - '100': 'lighter', - '300': 'light', - '500': 'base', - '600': 'dark', - '700': 'darker', - '800': 'darkest', -}; - -const mapSemanticColors = (properties) => { - const updatedProperties = { ...properties }; - const colors = { ...updatedProperties.color }; - - // Color Types are BRAND, FONT, BORDER. - Object.keys(colors).forEach(colorType => { - // Excluding border since they don't follow the traditional lightness scale. - if (colorType !== 'border') { - // Color names are primary, secondary, danger, etc... - Object.keys(colors[colorType]).forEach(colorName => { - // Only create semantic variations for colors that have a lightness scale (50, 100, etc...) - if (Object.keys(colors[colorType][colorName]).length > 1) { - Object.keys(colorMap).forEach(colorVariation => { - colors[colorType][colorName][colorMap[colorVariation]] = { - value: colors[colorType][colorName][colorVariation].value, - }; - }); - } else { - // For colors without a scale, just use the 500 value to create a `base` variable. - Object.keys(colors[colorType][colorName]).forEach(() => { - colors[colorType][colorName][colorMap['500']] = { - value: colors[colorType][colorName]['500'].value, - } - }); - } - }); - } - }); - - updatedProperties.color = { ...colors }; - - return updatedProperties; -} - -module.exports = mapSemanticColors; \ No newline at end of file diff --git a/utils/parseFigmaDocumentTokens/parseFigmaDocumentTokens.js b/utils/parseFigmaDocumentTokens/parseFigmaDocumentTokens.js index d23a509..b558183 100644 --- a/utils/parseFigmaDocumentTokens/parseFigmaDocumentTokens.js +++ b/utils/parseFigmaDocumentTokens/parseFigmaDocumentTokens.js @@ -1,12 +1,20 @@ const figmaDocumentReducer = (acc, current) => { if (current.children) { - let value = current.children.find(child => child.type === 'TEXT' && child.name === 'value'); - let unit = current.children.find(child => child.type === 'TEXT' && child.name === 'unit'); + let value = current.children.find( + child => child.type === 'TEXT' && child.name === 'value', + ); + let darkValue = current.children.find( + child => child.type === 'TEXT' && child.name === 'darkValue', + ); + let unit = current.children.find( + child => child.type === 'TEXT' && child.name === 'unit', + ); if (value) { acc[current.name] = { value: value.characters, - ...unit && { unit: unit.characters }, - } + ...(unit && { unit: unit.characters }), + ...(darkValue && { darkValue: darkValue.characters }), + }; } else { acc[current.name] = current.children.reduce(figmaDocumentReducer, {}); } @@ -14,7 +22,7 @@ const figmaDocumentReducer = (acc, current) => { return acc; }; -const parseFigmaDocumentTokens = (document) => document.children.reduce(figmaDocumentReducer, {}); +const parseFigmaDocumentTokens = document => + document.children.reduce(figmaDocumentReducer, {}); module.exports = parseFigmaDocumentTokens; - diff --git a/yarn.lock b/yarn.lock index 4e6c22f..4dd89f6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -54,20 +54,20 @@ source-map "^0.5.0" "@babel/core@^7.12.9": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.4.tgz#1f758428e88e0d8c563874741bc4ffc4f71a4717" - integrity sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg== + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.5.tgz#15ab5b98e101972d171aeef92ac70d8d6718f06a" + integrity sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.4" + "@babel/generator" "^7.24.5" "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.24.4" - "@babel/parser" "^7.24.4" + "@babel/helper-module-transforms" "^7.24.5" + "@babel/helpers" "^7.24.5" + "@babel/parser" "^7.24.5" "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.1" - "@babel/types" "^7.24.0" + "@babel/traverse" "^7.24.5" + "@babel/types" "^7.24.5" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -84,7 +84,7 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/generator@^7.23.6", "@babel/generator@^7.24.1", "@babel/generator@^7.24.4": +"@babel/generator@^7.23.6": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.4.tgz#1fc55532b88adf952025d5d2d1e71f946cb1c498" integrity sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw== @@ -94,6 +94,16 @@ "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" +"@babel/generator@^7.24.1", "@babel/generator@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.5.tgz#e5afc068f932f05616b66713e28d0f04e99daeb3" + integrity sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA== + dependencies: + "@babel/types" "^7.24.5" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^2.5.1" + "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" @@ -132,14 +142,14 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-module-imports@^7.22.15": +"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.3": version "7.24.3" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== dependencies: "@babel/types" "^7.24.0" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.23.3": +"@babel/helper-module-transforms@^7.12.1": version "7.23.3" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== @@ -150,6 +160,17 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.20" +"@babel/helper-module-transforms@^7.23.3", "@babel/helper-module-transforms@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz#ea6c5e33f7b262a0ae762fd5986355c45f54a545" + integrity sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-module-imports" "^7.24.3" + "@babel/helper-simple-access" "^7.24.5" + "@babel/helper-split-export-declaration" "^7.24.5" + "@babel/helper-validator-identifier" "^7.24.5" + "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.8.0": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" @@ -165,30 +186,35 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz#945681931a52f15ce879fd5b86ce2dae6d3d7f2a" integrity sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w== -"@babel/helper-simple-access@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" - integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== +"@babel/helper-simple-access@^7.22.5", "@babel/helper-simple-access@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz#50da5b72f58c16b07fbd992810be6049478e85ba" + integrity sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.24.5" -"@babel/helper-split-export-declaration@^7.22.6": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" - integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== +"@babel/helper-split-export-declaration@^7.22.6", "@babel/helper-split-export-declaration@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6" + integrity sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.24.5" -"@babel/helper-string-parser@^7.23.4": +"@babel/helper-string-parser@^7.23.4", "@babel/helper-string-parser@^7.24.1": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== -"@babel/helper-validator-identifier@^7.10.4", "@babel/helper-validator-identifier@^7.22.20": +"@babel/helper-validator-identifier@^7.10.4": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== +"@babel/helper-validator-identifier@^7.22.20", "@babel/helper-validator-identifier@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" + integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== + "@babel/helper-validator-option@^7.23.5": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" @@ -203,16 +229,16 @@ "@babel/traverse" "^7.23.7" "@babel/types" "^7.23.6" -"@babel/helpers@^7.24.4": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.4.tgz#dc00907fd0d95da74563c142ef4cd21f2cb856b6" - integrity sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw== +"@babel/helpers@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.5.tgz#fedeb87eeafa62b621160402181ad8585a22a40a" + integrity sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q== dependencies: "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.1" - "@babel/types" "^7.24.0" + "@babel/traverse" "^7.24.5" + "@babel/types" "^7.24.5" -"@babel/highlight@^7.23.4", "@babel/highlight@^7.24.2": +"@babel/highlight@^7.23.4": version "7.24.2" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.2.tgz#3f539503efc83d3c59080a10e6634306e0370d26" integrity sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA== @@ -222,6 +248,16 @@ js-tokens "^4.0.0" picocolors "^1.0.0" +"@babel/highlight@^7.24.2": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.5.tgz#bc0613f98e1dd0720e99b2a9ee3760194a704b6e" + integrity sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw== + dependencies: + "@babel/helper-validator-identifier" "^7.24.5" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/parser@^7.1.0": version "7.12.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.7.tgz#fee7b39fe809d0e73e5b25eecaf5780ef3d73056" @@ -232,11 +268,16 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.6.tgz#ba1c9e512bda72a47e285ae42aff9d2a635a9e3b" integrity sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ== -"@babel/parser@^7.22.15", "@babel/parser@^7.23.6", "@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.4": +"@babel/parser@^7.22.15", "@babel/parser@^7.23.6": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.4.tgz#234487a110d89ad5a3ed4a8a566c36b9453e8c88" integrity sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg== +"@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" + integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== + "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" @@ -407,7 +448,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/traverse@^7.23.7", "@babel/traverse@^7.24.1": +"@babel/traverse@^7.23.7": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.1.tgz#d65c36ac9dd17282175d1e4a3c49d5b7988f530c" integrity sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ== @@ -423,6 +464,22 @@ debug "^4.3.1" globals "^11.1.0" +"@babel/traverse@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.5.tgz#972aa0bc45f16983bf64aa1f877b2dd0eea7e6f8" + integrity sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA== + dependencies: + "@babel/code-frame" "^7.24.2" + "@babel/generator" "^7.24.5" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.24.5" + "@babel/parser" "^7.24.5" + "@babel/types" "^7.24.5" + debug "^4.3.1" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.3.0", "@babel/types@^7.3.3": version "7.12.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.7.tgz#6039ff1e242640a29452c9ae572162ec9a8f5d13" @@ -441,7 +498,7 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" -"@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.24.0": +"@babel/types@^7.22.15", "@babel/types@^7.23.6": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== @@ -450,6 +507,15 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" +"@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7" + integrity sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ== + dependencies: + "@babel/helper-string-parser" "^7.24.1" + "@babel/helper-validator-identifier" "^7.24.5" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -473,6 +539,18 @@ resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + "@isaacs/string-locale-compare@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz#291c227e93fd407a96ecd59879a35809120e432b" @@ -988,6 +1066,11 @@ dependencies: "@octokit/openapi-types" "^18.0.0" +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + "@pnpm/config.env-replace@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz#ab29da53df41e8948a00f2433f085f54de8b3a4c" @@ -1397,6 +1480,11 @@ ansi-regex@^5.0.0, ansi-regex@^5.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" @@ -1416,6 +1504,11 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0, ansi-styles@^4.3.0: dependencies: color-convert "^2.0.1" +ansi-styles@^6.1.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== + ansicolors@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" @@ -2208,6 +2301,14 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +camel-case@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== + dependencies: + pascal-case "^3.1.2" + tslib "^2.0.3" + camelcase-keys@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" @@ -2233,9 +2334,18 @@ caniuse-lite@^1.0.30000844: integrity sha512-E9FktFxaNnp4ky3ucIGzEXLM+Knzlpuq1oN1sFAU0KeayygabGTmOsndpo8QrL4D9pcThlf4D2pUKaDxPCUmVw== caniuse-lite@^1.0.30001587: - version "1.0.30001606" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001606.tgz#b4d5f67ab0746a3b8b5b6d1f06e39c51beb39a9e" - integrity sha512-LPbwnW4vfpJId225pwjZJOgX1m9sGfbw/RKJvw/t0QhYOOaTXHvkjVGFGPpvwEzufrjvTlsULnVTxdy4/6cqkg== + version "1.0.30001614" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001614.tgz#f894b4209376a0bf923d67d9c361d96b1dfebe39" + integrity sha512-jmZQ1VpmlRwHgdP1/uiKzgiAuGOfLEJsYFP4+GBou/QQ4U6IOJCB4NP1c+1p9RGLpwObcT94jA5/uO+F1vBbog== + +capital-case@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/capital-case/-/capital-case-1.0.4.tgz#9d130292353c9249f6b00fa5852bee38a717e669" + integrity sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case-first "^2.0.2" capture-exit@^2.0.0: version "2.0.0" @@ -2285,6 +2395,24 @@ chalk@^5.2.0: resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" integrity sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w== +change-case@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/change-case/-/change-case-4.1.2.tgz#fedfc5f136045e2398c0410ee441f95704641e12" + integrity sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A== + dependencies: + camel-case "^4.1.2" + capital-case "^1.0.4" + constant-case "^3.0.4" + dot-case "^3.0.4" + header-case "^2.0.4" + no-case "^3.0.4" + param-case "^3.0.4" + pascal-case "^3.1.2" + path-case "^3.0.4" + sentence-case "^3.0.4" + snake-case "^3.0.4" + tslib "^2.0.3" + char-regex@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" @@ -2436,10 +2564,10 @@ combined-stream@^1.0.8: dependencies: delayed-stream "~1.0.0" -commander@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" - integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== +commander@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== common-ancestor-path@^1.0.1: version "1.0.1" @@ -2477,6 +2605,15 @@ console-control-strings@^1.1.0: resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== +constant-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-3.0.4.tgz#3b84a9aeaf4cf31ec45e6bf5de91bdfb0589faf1" + integrity sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case "^2.0.2" + conventional-changelog-angular@^5.0.0: version "5.0.13" resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" @@ -2789,6 +2926,14 @@ domexception@^2.0.1: dependencies: webidl-conversions "^5.0.0" +dot-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + dot-prop@^5.1.0: version "5.3.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" @@ -2808,15 +2953,20 @@ duplexer2@~0.1.0: dependencies: readable-stream "^2.0.2" +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + electron-to-chromium@^1.3.47: version "1.3.610" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.610.tgz#1254eb394acd220a836ea1f203f8cded4e487052" integrity sha512-eFDC+yVQpEhtlapk4CYDPfV9ajF9cEof5TBcO49L1ETO+aYogrKWDmYpZyxBScMNe8Bo/gJamH4amQ4yyvXg4g== electron-to-chromium@^1.4.668: - version "1.4.728" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.728.tgz#ac54d9d1b38752b920ec737a48c83dec2bf45ea1" - integrity sha512-Ud1v7hJJYIqehlUJGqR6PF1Ek8l80zWwxA6nGxigBsGJ9f9M2fciHyrIiNMerSHSH3p+0/Ia7jIlnDkt41h5cw== + version "1.4.752" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.752.tgz#99227455547c8254488e3dab7d316c34a2c067b8" + integrity sha512-P3QJreYI/AUTcfBVrC4zy9KvnZWekViThgQMX/VpJ+IsOBbcX5JFpORM4qWapwWQ+agb2nYAOyn/4PMXOk0m2Q== emittery@^0.7.1: version "0.7.2" @@ -2828,6 +2978,11 @@ emoji-regex@^8.0.0: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + encoding@^0.1.13: version "0.1.13" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" @@ -2868,7 +3023,7 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -escalade@^3.1.1: +escalade@^3.1.1, escalade@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== @@ -3120,6 +3275,14 @@ for-in@^1.0.2: resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= +foreground-child@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d" + integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^4.0.1" + form-data@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" @@ -3149,6 +3312,15 @@ fromentries@^1.3.2: resolved "https://registry.yarnpkg.com/fromentries/-/fromentries-1.3.2.tgz#e4bca6808816bf8f93b52750f1127f5a6fd86e3a" integrity sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg== +fs-extra@^10.0.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^11.0.0: version "11.2.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.2.0.tgz#e70e17dfad64232287d01929399e0ea7c86b0e5b" @@ -3158,15 +3330,6 @@ fs-extra@^11.0.0: jsonfile "^6.0.1" universalify "^2.0.0" -fs-extra@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" - integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^4.0.0" - universalify "^0.1.0" - fs-extra@^9.0.1: version "9.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" @@ -3271,6 +3434,17 @@ glob-parent@^5.1.2: dependencies: is-glob "^4.0.1" +glob@^10.3.10: + version "10.3.12" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.12.tgz#3a65c363c2e9998d220338e88a5f6ac97302960b" + integrity sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.3.6" + minimatch "^9.0.1" + minipass "^7.0.4" + path-scurry "^1.10.2" + glob@^7.1.1, glob@^7.1.2: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" @@ -3283,7 +3457,7 @@ glob@^7.1.1, glob@^7.1.2: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: +glob@^7.1.3, glob@^7.1.4: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -3420,6 +3594,14 @@ hasown@^2.0.0: dependencies: function-bind "^1.1.2" +header-case@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/header-case/-/header-case-2.0.4.tgz#5a42e63b55177349cf405beb8d775acabb92c063" + integrity sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q== + dependencies: + capital-case "^1.0.4" + tslib "^2.0.3" + hook-std@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/hook-std/-/hook-std-2.0.0.tgz#ff9aafdebb6a989a354f729bb6445cf4a3a7077c" @@ -3928,6 +4110,15 @@ istanbul-reports@^3.0.2: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" +jackspeak@^2.3.6: + version "2.3.6" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" + integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + java-properties@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/java-properties/-/java-properties-1.0.2.tgz#ccd1fa73907438a5b5c38982269d0e771fe78211" @@ -4387,17 +4578,15 @@ json-stringify-safe@^5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== -json5@^2.1.2, json5@^2.1.3, json5@^2.2.3: +json5@^2.1.2, json5@^2.2.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== - optionalDependencies: - graceful-fs "^4.1.6" +jsonc-parser@^3.0.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" + integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== jsonfile@^6.0.1: version "6.1.0" @@ -4650,6 +4839,18 @@ loose-envify@^1.0.0, loose-envify@^1.1.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== + dependencies: + tslib "^2.0.3" + +lru-cache@^10.2.0: + version "10.2.2" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.2.tgz#48206bc114c1252940c41b25b41af5b545aca878" + integrity sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ== + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -4839,6 +5040,13 @@ minimatch@^5.0.1, minimatch@^5.1.0: dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.1: + version "9.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" + integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== + dependencies: + brace-expansion "^2.0.1" + minimist-options@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -4917,6 +5125,11 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.4: + version "7.0.4" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" + integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== + minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -5014,6 +5227,14 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== + dependencies: + lower-case "^2.0.2" + tslib "^2.0.3" + node-emoji@^1.11.0: version "1.11.0" resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.11.0.tgz#69a0150e6946e2f115e9d7ea4df7971e2628301c" @@ -5491,6 +5712,14 @@ pacote@^13.0.3, pacote@^13.6.1, pacote@^13.6.2: ssri "^9.0.0" tar "^6.1.11" +param-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -5530,11 +5759,27 @@ parse5@6.0.1: resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== +pascal-case@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + 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-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.4.tgz#9168645334eb942658375c56f80b4c0cb5f82c6f" + integrity sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -5565,6 +5810,14 @@ path-parse@^1.0.6, path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-scurry@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.2.tgz#8f6357eb1239d5fa1da8b9f70e9c080675458ba7" + integrity sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-type@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" @@ -6142,6 +6395,15 @@ semver@^7.0.0, semver@^7.1.1, semver@^7.1.2, semver@^7.3.2, semver@^7.3.4, semve dependencies: lru-cache "^6.0.0" +sentence-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.4.tgz#3645a7b8c117c787fde8702056225bb62a45131f" + integrity sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case-first "^2.0.2" + set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" @@ -6196,6 +6458,11 @@ signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + signale@^1.2.1: version "1.4.0" resolved "https://registry.yarnpkg.com/signale/-/signale-1.4.0.tgz#c4be58302fb0262ac00fc3d886a7c113759042f1" @@ -6220,6 +6487,14 @@ smart-buffer@^4.2.0: resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== +snake-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" + integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -6415,7 +6690,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -6424,6 +6699,15 @@ string-length@^4.0.1: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -6438,6 +6722,13 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -6445,12 +6736,12 @@ strip-ansi@^3.0.0: dependencies: ansi-regex "^2.0.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== +strip-ansi@^7.0.1: + version "7.1.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" + integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== dependencies: - ansi-regex "^5.0.1" + ansi-regex "^6.0.1" strip-bom@^3.0.0: version "3.0.0" @@ -6484,18 +6775,19 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== -style-dictionary@^2.10.0: - version "2.10.3" - resolved "https://registry.yarnpkg.com/style-dictionary/-/style-dictionary-2.10.3.tgz#7c89f8020524172df6e534ab4217f6923e1daf7b" - integrity sha512-iSDb8T2tMSB5JcTQ7uquB+W3oO7kuJbb+QrSQMiQjBCOa7AGYtWzYo/O7rl3f9Hj956w41WVw9HpTpYfFWwU+g== +style-dictionary@^3.8.0: + version "3.9.2" + resolved "https://registry.yarnpkg.com/style-dictionary/-/style-dictionary-3.9.2.tgz#5b3ecd4af28a64f4855db71c90d24fd288f27318" + integrity sha512-M2pcQ6hyRtqHOh+NyT6T05R3pD/gwNpuhREBKvxC1En0vyywx+9Wy9nXWT1SZ9ePzv1vAo65ItnpA16tT9ZUCg== dependencies: chalk "^4.0.0" - commander "^5.1.0" - fs-extra "^8.1.0" - glob "^7.1.6" - json5 "^2.1.3" + change-case "^4.1.2" + commander "^8.3.0" + fs-extra "^10.0.0" + glob "^10.3.10" + json5 "^2.2.2" + jsonc-parser "^3.0.0" lodash "^4.17.15" - resolve-cwd "^3.0.0" tinycolor2 "^1.4.1" supports-color@^2.0.0: @@ -6727,6 +7019,11 @@ trim-off-newlines@^1.0.0: resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.3.tgz#8df24847fcb821b0ab27d58ab6efec9f2fe961a1" integrity sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg== +tslib@^2.0.3: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" @@ -6817,11 +7114,6 @@ universal-user-agent@^6.0.0: resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.1.tgz#15f20f55da3c930c57bddbf1734c6654d5fd35aa" integrity sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ== -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== - universalify@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" @@ -6841,13 +7133,27 @@ unset-value@^1.0.0: isobject "^3.0.0" update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== + version "1.0.14" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.14.tgz#46a9367c323f8ade9a9dddb7f3ae7814b3a0b31c" + integrity sha512-JixKH8GR2pWYshIPUg/NujK3JO7JiqEEUiNArE86NQyrgUuZeTlZQN3xuS/yiV5Kb48ev9K6RqNkaJjXsdg7Jw== dependencies: - escalade "^3.1.1" + escalade "^3.1.2" picocolors "^1.0.0" +upper-case-first@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.2.tgz#992c3273f882abd19d1e02894cc147117f844324" + integrity sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg== + dependencies: + tslib "^2.0.3" + +upper-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.2.tgz#d89810823faab1df1549b7d97a76f8662bae6f7a" + integrity sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg== + dependencies: + tslib "^2.0.3" + urix@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" @@ -7018,6 +7324,15 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" @@ -7027,14 +7342,14 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" wrappy@1: version "1.0.2"