@yahoo/uds 3.142.0 → 3.143.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/client/Popover/UDSPopoverConfigProvider.d.cts +1 -1
- package/dist/components/client/Popover/UDSPopoverConfigProvider.d.ts +1 -1
- package/dist/styles/styler.d.cts +3 -3
- package/dist/styles/styler.d.ts +3 -3
- package/dist/tailwind/dist/automated-config/dist/mapTextVariantFixtureToValue.js.map +1 -1
- package/dist/tailwind/dist/automated-config/dist/properties.js.map +1 -1
- package/dist/tailwind/dist/automated-config/dist/utils/assertUnreachable.js.map +1 -1
- package/dist/tailwind/dist/automated-config/dist/utils/generateDefaultClassName.js.map +1 -1
- package/dist/tailwind/dist/automated-config/dist/utils/generateSchemaKey.js.map +1 -1
- package/dist/tailwind/dist/automated-config/dist/utils/index.js.map +1 -1
- package/dist/tailwind/dist/automated-config/dist/utils/mapColorFixtureToValue.js.map +1 -1
- package/dist/tailwind/dist/cli/dist/lib/logger.js.map +1 -1
- package/dist/tailwind/dist/cli/dist/lib/print.js.map +1 -1
- package/dist/tailwind/dist/cli/dist/lib/spinner.js.map +1 -1
- package/dist/tailwind/dist/commands/css.helpers.js.map +1 -1
- package/dist/tailwind/dist/commands/css.js.map +1 -1
- package/dist/tailwind/dist/commands/generateComponentData.js.map +1 -1
- package/dist/tailwind/dist/commands/generatePurgeCSSData.js.map +1 -1
- package/dist/tailwind/dist/commands/purge.js.map +1 -1
- package/dist/tailwind/dist/css/generate.helpers.js.map +1 -1
- package/dist/tailwind/dist/css/generate.js.map +1 -1
- package/dist/tailwind/dist/css/nodeUtils.js.map +1 -1
- package/dist/tailwind/dist/css/perf.js.map +1 -1
- package/dist/tailwind/dist/css/postcss.helpers.js.map +1 -1
- package/dist/tailwind/dist/css/postcss.js.map +1 -1
- package/dist/tailwind/dist/css/purgeWorker.js.map +1 -1
- package/dist/tailwind/dist/css/runner.helpers.js.map +1 -1
- package/dist/tailwind/dist/css/runner.js.map +1 -1
- package/dist/tailwind/dist/css/utils.js.map +1 -1
- package/dist/tailwind/dist/css/workerPool.js.map +1 -1
- package/dist/tailwind/dist/css-tokens/dist/index.js.map +1 -1
- package/dist/tailwind/dist/fixtures/dist/index.cjs +0 -10
- package/dist/tailwind/dist/fixtures/dist/index.js +0 -10
- package/dist/tailwind/dist/fixtures/dist/index.js.map +1 -1
- package/dist/tailwind/dist/modes/dist/index.cjs +1 -0
- package/dist/tailwind/dist/modes/dist/index.js +1 -0
- package/dist/tailwind/dist/modes/dist/index.js.map +1 -1
- package/dist/tailwind/dist/plugin.js.map +1 -1
- package/dist/tailwind/dist/purger/legacy/purgeCSS.js.map +1 -1
- package/dist/tailwind/dist/purger/legacy/purgeFromCode.js.map +1 -1
- package/dist/tailwind/dist/purger/optimized/ast/expressions.js.map +1 -1
- package/dist/tailwind/dist/purger/optimized/purge.js.map +1 -1
- package/dist/tailwind/dist/purger/optimized/purgeFromCode.js.map +1 -1
- package/dist/tailwind/dist/purger/optimized/utils/componentAnalyzer.js.map +1 -1
- package/dist/tailwind/dist/purger/optimized/utils/files.js.map +1 -1
- package/dist/tailwind/dist/purger/optimized/utils/safelist.js.map +1 -1
- package/dist/tailwind/dist/runtimeConfig/hookMetadata.js.map +1 -1
- package/dist/tailwind/dist/tailwind/base/addColorModeVars.js.map +1 -1
- package/dist/tailwind/dist/tailwind/base/addColorModeVarsV2.js.map +1 -1
- package/dist/tailwind/dist/tailwind/base/addFontFaceDeclarations.js.map +1 -1
- package/dist/tailwind/dist/tailwind/base/addFontVars.js.map +1 -1
- package/dist/tailwind/dist/tailwind/base/addMotionVars.js.map +1 -1
- package/dist/tailwind/dist/tailwind/base/addScaleModeVars.js.map +1 -1
- package/dist/tailwind/dist/tailwind/components/getFocusRingStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/components/getHitTargetStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/components/getIconStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/components/getInputStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/components/getResponsiveTextStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/a11y.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/blurBgFallback.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/borderRadius.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/borderWidth.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/breakpoints.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/colors.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/components.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/elevation.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/getTailwindAsUdsColors.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/icons.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/input.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/motion.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/nestedBorderRadius.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/scaleMode.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/shadows.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/sizing.js.map +1 -1
- package/dist/tailwind/dist/tailwind/plugins/typography.js.map +1 -1
- package/dist/tailwind/dist/tailwind/theme/getFontFamilyTheme.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/addFontsPlugin.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/composeTailwindPlugins.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getColorModeStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getElevationStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getFontFaceDeclarations.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getFontStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getMotionStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getNestedBorderRadiusUtilities.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getScaleModeStyles.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getShadowPresetValues.js.map +1 -1
- package/dist/tailwind/dist/tailwind/utils/getShadowStyles.js.map +1 -1
- package/dist/tailwind/dist/utils/assertUnreachable.js.map +1 -1
- package/dist/tailwind/dist/utils/entries.js.map +1 -1
- package/dist/tailwind/dist/utils/entryPoints.js.map +1 -1
- package/dist/tailwind/dist/utils/fromEntries.js.map +1 -1
- package/dist/tailwind/dist/utils/generatePurgeCSSData.js.map +1 -1
- package/dist/tailwind/dist/utils/mapValues.js.map +1 -1
- package/dist/tailwind/dist/utils/opacity.js.map +1 -1
- package/dist/tailwind/dist/utils/optimizeCSS.js.map +1 -1
- package/dist/tailwind/dist/utils/parseTokens.js.map +1 -1
- package/dist/tailwind/dist/utils/postcssPreserveVars.js.map +1 -1
- package/dist/tailwind/dist/utils/tsMorph.js.map +1 -1
- package/dist/uds/generated/componentData.cjs +1311 -1311
- package/dist/uds/generated/componentData.js +1311 -1311
- package/dist/uds/generated/tailwindPurge.cjs +3 -0
- package/dist/uds/generated/tailwindPurge.js +3 -0
- package/dist/uds/package.cjs +2 -2
- package/dist/uds/package.js +2 -2
- package/generated/componentData.json +1692 -1692
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../fixtures/dist/index.js"],"sourcesContent":["// src/arbitrary.ts\nfunction createArbitraryFixture(fixture) {\n return fixture;\n}\nvar positiveIntegers = createArbitraryFixture({\n type: \"arbitraryFixture\",\n valueType: \"integer\",\n min: 0,\n step: 1\n});\n// src/index.ts\nvar breakpoints = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"2xl\"\n];\nvar colorModes = [\n \"light\",\n \"dark\"\n];\nvar scaleModes = [\n \"xSmall\",\n \"small\",\n \"medium\",\n \"large\",\n \"xLarge\",\n \"xxLarge\",\n \"xxxLarge\"\n];\nvar regionModes = [\n \"\\uD83C\\uDDFA\\uD83C\\uDDF8 US\",\n \"\\uD83C\\uDDE9\\uD83C\\uDDEA DE\",\n \"\\uD83C\\uDDEB\\uD83C\\uDDF7 FR\",\n \"\\uD83C\\uDDE8\\uD83C\\uDDF3 CN\"\n];\nvar elevationLevels = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\"\n];\nvar elevationAliases = [\n \"elevation-0\",\n \"elevation-1\",\n \"elevation-2\",\n \"elevation-3\",\n \"elevation-4\",\n \"elevation-5\"\n];\nvar elevationShadowLayerCount = 4;\nvar elevationInsetShadowLayerCount = 2;\nvar hues = [\n \"gray\",\n \"purple\",\n \"indigo\",\n \"blue\",\n \"cyan\",\n \"teal\",\n \"mint\",\n \"green\",\n \"lime\",\n \"citron\",\n \"yellow\",\n \"brown\",\n \"nude\",\n \"orange\",\n \"sunset\",\n \"red\",\n \"rose\",\n \"pink\",\n \"magenta\",\n \"carbon\"\n];\nvar hueSteps = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\"\n];\nvar spectrumColors = [\n \"gray-0\",\n \"gray-1\",\n \"gray-2\",\n \"gray-3\",\n \"gray-4\",\n \"gray-5\",\n \"gray-6\",\n \"gray-7\",\n \"gray-8\",\n \"gray-9\",\n \"gray-10\",\n \"gray-11\",\n \"gray-12\",\n \"gray-13\",\n \"gray-14\",\n \"gray-15\",\n \"purple-0\",\n \"purple-1\",\n \"purple-2\",\n \"purple-3\",\n \"purple-4\",\n \"purple-5\",\n \"purple-6\",\n \"purple-7\",\n \"purple-8\",\n \"purple-9\",\n \"purple-10\",\n \"purple-11\",\n \"purple-12\",\n \"purple-13\",\n \"purple-14\",\n \"purple-15\",\n \"indigo-0\",\n \"indigo-1\",\n \"indigo-2\",\n \"indigo-3\",\n \"indigo-4\",\n \"indigo-5\",\n \"indigo-6\",\n \"indigo-7\",\n \"indigo-8\",\n \"indigo-9\",\n \"indigo-10\",\n \"indigo-11\",\n \"indigo-12\",\n \"indigo-13\",\n \"indigo-14\",\n \"indigo-15\",\n \"blue-0\",\n \"blue-1\",\n \"blue-2\",\n \"blue-3\",\n \"blue-4\",\n \"blue-5\",\n \"blue-6\",\n \"blue-7\",\n \"blue-8\",\n \"blue-9\",\n \"blue-10\",\n \"blue-11\",\n \"blue-12\",\n \"blue-13\",\n \"blue-14\",\n \"blue-15\",\n \"cyan-0\",\n \"cyan-1\",\n \"cyan-2\",\n \"cyan-3\",\n \"cyan-4\",\n \"cyan-5\",\n \"cyan-6\",\n \"cyan-7\",\n \"cyan-8\",\n \"cyan-9\",\n \"cyan-10\",\n \"cyan-11\",\n \"cyan-12\",\n \"cyan-13\",\n \"cyan-14\",\n \"cyan-15\",\n \"teal-0\",\n \"teal-1\",\n \"teal-2\",\n \"teal-3\",\n \"teal-4\",\n \"teal-5\",\n \"teal-6\",\n \"teal-7\",\n \"teal-8\",\n \"teal-9\",\n \"teal-10\",\n \"teal-11\",\n \"teal-12\",\n \"teal-13\",\n \"teal-14\",\n \"teal-15\",\n \"mint-0\",\n \"mint-1\",\n \"mint-2\",\n \"mint-3\",\n \"mint-4\",\n \"mint-5\",\n \"mint-6\",\n \"mint-7\",\n \"mint-8\",\n \"mint-9\",\n \"mint-10\",\n \"mint-11\",\n \"mint-12\",\n \"mint-13\",\n \"mint-14\",\n \"mint-15\",\n \"green-0\",\n \"green-1\",\n \"green-2\",\n \"green-3\",\n \"green-4\",\n \"green-5\",\n \"green-6\",\n \"green-7\",\n \"green-8\",\n \"green-9\",\n \"green-10\",\n \"green-11\",\n \"green-12\",\n \"green-13\",\n \"green-14\",\n \"green-15\",\n \"lime-0\",\n \"lime-1\",\n \"lime-2\",\n \"lime-3\",\n \"lime-4\",\n \"lime-5\",\n \"lime-6\",\n \"lime-7\",\n \"lime-8\",\n \"lime-9\",\n \"lime-10\",\n \"lime-11\",\n \"lime-12\",\n \"lime-13\",\n \"lime-14\",\n \"lime-15\",\n \"citron-0\",\n \"citron-1\",\n \"citron-2\",\n \"citron-3\",\n \"citron-4\",\n \"citron-5\",\n \"citron-6\",\n \"citron-7\",\n \"citron-8\",\n \"citron-9\",\n \"citron-10\",\n \"citron-11\",\n \"citron-12\",\n \"citron-13\",\n \"citron-14\",\n \"citron-15\",\n \"yellow-0\",\n \"yellow-1\",\n \"yellow-2\",\n \"yellow-3\",\n \"yellow-4\",\n \"yellow-5\",\n \"yellow-6\",\n \"yellow-7\",\n \"yellow-8\",\n \"yellow-9\",\n \"yellow-10\",\n \"yellow-11\",\n \"yellow-12\",\n \"yellow-13\",\n \"yellow-14\",\n \"yellow-15\",\n \"brown-0\",\n \"brown-1\",\n \"brown-2\",\n \"brown-3\",\n \"brown-4\",\n \"brown-5\",\n \"brown-6\",\n \"brown-7\",\n \"brown-8\",\n \"brown-9\",\n \"brown-10\",\n \"brown-11\",\n \"brown-12\",\n \"brown-13\",\n \"brown-14\",\n \"brown-15\",\n \"nude-0\",\n \"nude-1\",\n \"nude-2\",\n \"nude-3\",\n \"nude-4\",\n \"nude-5\",\n \"nude-6\",\n \"nude-7\",\n \"nude-8\",\n \"nude-9\",\n \"nude-10\",\n \"nude-11\",\n \"nude-12\",\n \"nude-13\",\n \"nude-14\",\n \"nude-15\",\n \"orange-0\",\n \"orange-1\",\n \"orange-2\",\n \"orange-3\",\n \"orange-4\",\n \"orange-5\",\n \"orange-6\",\n \"orange-7\",\n \"orange-8\",\n \"orange-9\",\n \"orange-10\",\n \"orange-11\",\n \"orange-12\",\n \"orange-13\",\n \"orange-14\",\n \"orange-15\",\n \"sunset-0\",\n \"sunset-1\",\n \"sunset-2\",\n \"sunset-3\",\n \"sunset-4\",\n \"sunset-5\",\n \"sunset-6\",\n \"sunset-7\",\n \"sunset-8\",\n \"sunset-9\",\n \"sunset-10\",\n \"sunset-11\",\n \"sunset-12\",\n \"sunset-13\",\n \"sunset-14\",\n \"sunset-15\",\n \"red-0\",\n \"red-1\",\n \"red-2\",\n \"red-3\",\n \"red-4\",\n \"red-5\",\n \"red-6\",\n \"red-7\",\n \"red-8\",\n \"red-9\",\n \"red-10\",\n \"red-11\",\n \"red-12\",\n \"red-13\",\n \"red-14\",\n \"red-15\",\n \"rose-0\",\n \"rose-1\",\n \"rose-2\",\n \"rose-3\",\n \"rose-4\",\n \"rose-5\",\n \"rose-6\",\n \"rose-7\",\n \"rose-8\",\n \"rose-9\",\n \"rose-10\",\n \"rose-11\",\n \"rose-12\",\n \"rose-13\",\n \"rose-14\",\n \"rose-15\",\n \"pink-0\",\n \"pink-1\",\n \"pink-2\",\n \"pink-3\",\n \"pink-4\",\n \"pink-5\",\n \"pink-6\",\n \"pink-7\",\n \"pink-8\",\n \"pink-9\",\n \"pink-10\",\n \"pink-11\",\n \"pink-12\",\n \"pink-13\",\n \"pink-14\",\n \"pink-15\",\n \"magenta-0\",\n \"magenta-1\",\n \"magenta-2\",\n \"magenta-3\",\n \"magenta-4\",\n \"magenta-5\",\n \"magenta-6\",\n \"magenta-7\",\n \"magenta-8\",\n \"magenta-9\",\n \"magenta-10\",\n \"magenta-11\",\n \"magenta-12\",\n \"magenta-13\",\n \"magenta-14\",\n \"magenta-15\",\n \"carbon-0\",\n \"carbon-1\",\n \"carbon-2\",\n \"carbon-3\",\n \"carbon-4\",\n \"carbon-5\",\n \"carbon-6\",\n \"carbon-7\",\n \"carbon-8\",\n \"carbon-9\",\n \"carbon-10\",\n \"carbon-11\",\n \"carbon-12\",\n \"carbon-13\",\n \"carbon-14\",\n \"carbon-15\"\n];\nvar backgroundPaletteColors = [\n \"primary\",\n \"secondary\",\n \"accent\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\"\n];\nvar foregroundPaletteColors = [\n \"primary\",\n \"secondary\",\n \"accent\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\",\n \"tertiary\",\n \"muted\",\n \"on-color\"\n];\nvar linePaletteColors = [\n \"primary\",\n \"secondary\",\n \"accent\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\",\n \"tertiary\",\n \"muted\"\n];\nvar alwaysPaletteAliases = [\n \"always/white\",\n \"always/black\",\n \"always/transparent\",\n \"always/current\",\n \"always/brand\",\n \"always/accent\"\n];\nvar shadowPaletteColors = [\n \"primary\",\n \"secondary\"\n];\nvar shadowColors = [\n \"elevation-0\",\n \"elevation-1\",\n \"elevation-2\",\n \"elevation-3\",\n \"elevation-4\",\n \"elevation-5\",\n \"gray-0\",\n \"gray-1\",\n \"gray-2\",\n \"gray-3\",\n \"gray-4\",\n \"gray-5\",\n \"gray-6\",\n \"gray-7\",\n \"gray-8\",\n \"gray-9\",\n \"gray-10\",\n \"gray-11\",\n \"gray-12\",\n \"gray-13\",\n \"gray-14\",\n \"gray-15\",\n \"purple-0\",\n \"purple-1\",\n \"purple-2\",\n \"purple-3\",\n \"purple-4\",\n \"purple-5\",\n \"purple-6\",\n \"purple-7\",\n \"purple-8\",\n \"purple-9\",\n \"purple-10\",\n \"purple-11\",\n \"purple-12\",\n \"purple-13\",\n \"purple-14\",\n \"purple-15\",\n \"indigo-0\",\n \"indigo-1\",\n \"indigo-2\",\n \"indigo-3\",\n \"indigo-4\",\n \"indigo-5\",\n \"indigo-6\",\n \"indigo-7\",\n \"indigo-8\",\n \"indigo-9\",\n \"indigo-10\",\n \"indigo-11\",\n \"indigo-12\",\n \"indigo-13\",\n \"indigo-14\",\n \"indigo-15\",\n \"blue-0\",\n \"blue-1\",\n \"blue-2\",\n \"blue-3\",\n \"blue-4\",\n \"blue-5\",\n \"blue-6\",\n \"blue-7\",\n \"blue-8\",\n \"blue-9\",\n \"blue-10\",\n \"blue-11\",\n \"blue-12\",\n \"blue-13\",\n \"blue-14\",\n \"blue-15\",\n \"cyan-0\",\n \"cyan-1\",\n \"cyan-2\",\n \"cyan-3\",\n \"cyan-4\",\n \"cyan-5\",\n \"cyan-6\",\n \"cyan-7\",\n \"cyan-8\",\n \"cyan-9\",\n \"cyan-10\",\n \"cyan-11\",\n \"cyan-12\",\n \"cyan-13\",\n \"cyan-14\",\n \"cyan-15\",\n \"teal-0\",\n \"teal-1\",\n \"teal-2\",\n \"teal-3\",\n \"teal-4\",\n \"teal-5\",\n \"teal-6\",\n \"teal-7\",\n \"teal-8\",\n \"teal-9\",\n \"teal-10\",\n \"teal-11\",\n \"teal-12\",\n \"teal-13\",\n \"teal-14\",\n \"teal-15\",\n \"mint-0\",\n \"mint-1\",\n \"mint-2\",\n \"mint-3\",\n \"mint-4\",\n \"mint-5\",\n \"mint-6\",\n \"mint-7\",\n \"mint-8\",\n \"mint-9\",\n \"mint-10\",\n \"mint-11\",\n \"mint-12\",\n \"mint-13\",\n \"mint-14\",\n \"mint-15\",\n \"green-0\",\n \"green-1\",\n \"green-2\",\n \"green-3\",\n \"green-4\",\n \"green-5\",\n \"green-6\",\n \"green-7\",\n \"green-8\",\n \"green-9\",\n \"green-10\",\n \"green-11\",\n \"green-12\",\n \"green-13\",\n \"green-14\",\n \"green-15\",\n \"lime-0\",\n \"lime-1\",\n \"lime-2\",\n \"lime-3\",\n \"lime-4\",\n \"lime-5\",\n \"lime-6\",\n \"lime-7\",\n \"lime-8\",\n \"lime-9\",\n \"lime-10\",\n \"lime-11\",\n \"lime-12\",\n \"lime-13\",\n \"lime-14\",\n \"lime-15\",\n \"citron-0\",\n \"citron-1\",\n \"citron-2\",\n \"citron-3\",\n \"citron-4\",\n \"citron-5\",\n \"citron-6\",\n \"citron-7\",\n \"citron-8\",\n \"citron-9\",\n \"citron-10\",\n \"citron-11\",\n \"citron-12\",\n \"citron-13\",\n \"citron-14\",\n \"citron-15\",\n \"yellow-0\",\n \"yellow-1\",\n \"yellow-2\",\n \"yellow-3\",\n \"yellow-4\",\n \"yellow-5\",\n \"yellow-6\",\n \"yellow-7\",\n \"yellow-8\",\n \"yellow-9\",\n \"yellow-10\",\n \"yellow-11\",\n \"yellow-12\",\n \"yellow-13\",\n \"yellow-14\",\n \"yellow-15\",\n \"brown-0\",\n \"brown-1\",\n \"brown-2\",\n \"brown-3\",\n \"brown-4\",\n \"brown-5\",\n \"brown-6\",\n \"brown-7\",\n \"brown-8\",\n \"brown-9\",\n \"brown-10\",\n \"brown-11\",\n \"brown-12\",\n \"brown-13\",\n \"brown-14\",\n \"brown-15\",\n \"nude-0\",\n \"nude-1\",\n \"nude-2\",\n \"nude-3\",\n \"nude-4\",\n \"nude-5\",\n \"nude-6\",\n \"nude-7\",\n \"nude-8\",\n \"nude-9\",\n \"nude-10\",\n \"nude-11\",\n \"nude-12\",\n \"nude-13\",\n \"nude-14\",\n \"nude-15\",\n \"orange-0\",\n \"orange-1\",\n \"orange-2\",\n \"orange-3\",\n \"orange-4\",\n \"orange-5\",\n \"orange-6\",\n \"orange-7\",\n \"orange-8\",\n \"orange-9\",\n \"orange-10\",\n \"orange-11\",\n \"orange-12\",\n \"orange-13\",\n \"orange-14\",\n \"orange-15\",\n \"sunset-0\",\n \"sunset-1\",\n \"sunset-2\",\n \"sunset-3\",\n \"sunset-4\",\n \"sunset-5\",\n \"sunset-6\",\n \"sunset-7\",\n \"sunset-8\",\n \"sunset-9\",\n \"sunset-10\",\n \"sunset-11\",\n \"sunset-12\",\n \"sunset-13\",\n \"sunset-14\",\n \"sunset-15\",\n \"red-0\",\n \"red-1\",\n \"red-2\",\n \"red-3\",\n \"red-4\",\n \"red-5\",\n \"red-6\",\n \"red-7\",\n \"red-8\",\n \"red-9\",\n \"red-10\",\n \"red-11\",\n \"red-12\",\n \"red-13\",\n \"red-14\",\n \"red-15\",\n \"rose-0\",\n \"rose-1\",\n \"rose-2\",\n \"rose-3\",\n \"rose-4\",\n \"rose-5\",\n \"rose-6\",\n \"rose-7\",\n \"rose-8\",\n \"rose-9\",\n \"rose-10\",\n \"rose-11\",\n \"rose-12\",\n \"rose-13\",\n \"rose-14\",\n \"rose-15\",\n \"pink-0\",\n \"pink-1\",\n \"pink-2\",\n \"pink-3\",\n \"pink-4\",\n \"pink-5\",\n \"pink-6\",\n \"pink-7\",\n \"pink-8\",\n \"pink-9\",\n \"pink-10\",\n \"pink-11\",\n \"pink-12\",\n \"pink-13\",\n \"pink-14\",\n \"pink-15\",\n \"magenta-0\",\n \"magenta-1\",\n \"magenta-2\",\n \"magenta-3\",\n \"magenta-4\",\n \"magenta-5\",\n \"magenta-6\",\n \"magenta-7\",\n \"magenta-8\",\n \"magenta-9\",\n \"magenta-10\",\n \"magenta-11\",\n \"magenta-12\",\n \"magenta-13\",\n \"magenta-14\",\n \"magenta-15\",\n \"carbon-0\",\n \"carbon-1\",\n \"carbon-2\",\n \"carbon-3\",\n \"carbon-4\",\n \"carbon-5\",\n \"carbon-6\",\n \"carbon-7\",\n \"carbon-8\",\n \"carbon-9\",\n \"carbon-10\",\n \"carbon-11\",\n \"carbon-12\",\n \"carbon-13\",\n \"carbon-14\",\n \"carbon-15\",\n \"primary\",\n \"secondary\",\n \"always/white\",\n \"always/black\",\n \"always/transparent\",\n \"always/current\",\n \"always/brand\",\n \"always/accent\",\n \"white\",\n \"black\",\n \"transparent\",\n \"current\"\n];\nvar opacitySteps = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\",\n \"16\",\n \"17\",\n \"18\",\n \"19\",\n \"20\",\n \"21\",\n \"22\",\n \"23\",\n \"24\",\n \"25\",\n \"26\",\n \"27\",\n \"28\",\n \"29\",\n \"30\",\n \"31\",\n \"32\",\n \"33\",\n \"34\",\n \"35\",\n \"36\",\n \"37\",\n \"38\",\n \"39\",\n \"40\",\n \"41\",\n \"42\",\n \"43\",\n \"44\",\n \"45\",\n \"46\",\n \"47\",\n \"48\",\n \"49\",\n \"50\",\n \"51\",\n \"52\",\n \"53\",\n \"54\",\n \"55\",\n \"56\",\n \"57\",\n \"58\",\n \"59\",\n \"60\",\n \"61\",\n \"62\",\n \"63\",\n \"64\",\n \"65\",\n \"66\",\n \"67\",\n \"68\",\n \"69\",\n \"70\",\n \"71\",\n \"72\",\n \"73\",\n \"74\",\n \"75\",\n \"76\",\n \"77\",\n \"78\",\n \"79\",\n \"80\",\n \"81\",\n \"82\",\n \"83\",\n \"84\",\n \"85\",\n \"86\",\n \"87\",\n \"88\",\n \"89\",\n \"90\",\n \"91\",\n \"92\",\n \"93\",\n \"94\",\n \"95\",\n \"96\",\n \"97\",\n \"98\",\n \"99\",\n \"100\"\n];\nvar fromEntries = (item) => Object.fromEntries(item);\nvar opacityMap = fromEntries(opacitySteps.map((key) => [key, `${parseInt(key) / 100}`]));\nvar backgroundColors = [\n ...backgroundPaletteColors,\n ...alwaysPaletteAliases,\n ...elevationAliases\n];\nvar foregroundColors = [...foregroundPaletteColors, ...alwaysPaletteAliases];\nvar lineColors = [...linePaletteColors, ...alwaysPaletteAliases, ...elevationAliases];\nvar palette = {\n background: backgroundPaletteColors,\n foreground: foregroundPaletteColors,\n line: linePaletteColors,\n shadow: shadowPaletteColors\n};\nvar idealColorSorting = [\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"muted\",\n \"on-color\",\n \"accent\",\n \"brand\",\n \"brand-secondary\",\n \"info\",\n \"info-secondary\",\n \"alert\",\n \"alert-secondary\",\n \"positive\",\n \"positive-secondary\",\n \"warning\",\n \"warning-secondary\"\n];\nfunction sortPalette(paletteToSort, ordering = idealColorSorting) {\n return Object.entries(paletteToSort).sort(([prevPaletteAlias], [nextPaletteAlias]) => ordering.indexOf(prevPaletteAlias) - ordering.indexOf(nextPaletteAlias));\n}\nvar textVariantsTypography = [\n \"display1\",\n \"display2\",\n \"display3\",\n \"title1\",\n \"title2\",\n \"title3\",\n \"title4\",\n \"headline1\",\n \"body1\",\n \"label1\",\n \"label2\",\n \"label3\",\n \"label4\",\n \"caption1\",\n \"caption2\",\n \"legal1\"\n];\nvar textVariantsUi = [\n \"ui1\",\n \"ui2\",\n \"ui3\",\n \"ui4\",\n \"ui5\",\n \"ui6\"\n];\nvar textVariants = [\n \"display1\",\n \"display2\",\n \"display3\",\n \"title1\",\n \"title2\",\n \"title3\",\n \"title4\",\n \"headline1\",\n \"body1\",\n \"label1\",\n \"label2\",\n \"label3\",\n \"label4\",\n \"caption1\",\n \"caption2\",\n \"legal1\",\n \"ui1\",\n \"ui2\",\n \"ui3\",\n \"ui4\",\n \"ui5\",\n \"ui6\",\n \"display1/emphasized\",\n \"display2/emphasized\",\n \"display3/emphasized\",\n \"title1/emphasized\",\n \"title2/emphasized\",\n \"title3/emphasized\",\n \"title4/emphasized\",\n \"headline1/emphasized\",\n \"body1/emphasized\",\n \"label1/emphasized\",\n \"label2/emphasized\",\n \"label3/emphasized\",\n \"label4/emphasized\",\n \"caption1/emphasized\",\n \"caption2/emphasized\",\n \"legal1/emphasized\",\n \"ui1/emphasized\",\n \"ui2/emphasized\",\n \"ui3/emphasized\",\n \"ui4/emphasized\",\n \"ui5/emphasized\",\n \"ui6/emphasized\"\n];\nvar textVariantsWithoutEmphasized = [\n \"display1\",\n \"display2\",\n \"display3\",\n \"title1\",\n \"title2\",\n \"title3\",\n \"title4\",\n \"headline1\",\n \"body1\",\n \"label1\",\n \"label2\",\n \"label3\",\n \"label4\",\n \"caption1\",\n \"caption2\",\n \"legal1\",\n \"ui1\",\n \"ui2\",\n \"ui3\",\n \"ui4\",\n \"ui5\",\n \"ui6\"\n];\nvar textProperties = [\n \"fontFamily\",\n \"fontSize\",\n \"fontWeight\",\n \"lineHeight\",\n \"textTransform\",\n \"letterSpacing\"\n];\nvar textDecorationLines = [\n \"none\",\n \"underline\"\n];\nvar typographyStyleProperties = [\n \"fontFamily\",\n \"fontSize\",\n \"fontWeight\",\n \"lineHeight\",\n \"textTransform\",\n \"letterSpacing\",\n \"fontSlant\",\n \"fontWidth\"\n];\nvar fontAliases = [\n \"sans\",\n \"sans-alt\",\n \"serif\",\n \"serif-alt\",\n \"mono\"\n];\nvar fontWeights = [\n \"light\",\n \"medium\",\n \"black\",\n \"thin\",\n \"extralight\",\n \"regular\",\n \"semibold\",\n \"bold\",\n \"extrabold\"\n];\nvar textTransforms = [\n \"none\",\n \"uppercase\",\n \"lowercase\",\n \"capitalize\"\n];\nvar avatarShapes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"none\",\n \"xs\",\n \"full\"\n];\nvar avatarSizeSort = {\n \"2xs\": 0,\n xs: 1,\n sm: 2,\n md: 3,\n lg: 4,\n xl: 5,\n \"2xl\": 6,\n \"3xl\": 7\n};\nvar avatarSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"2xl\",\n \"xs\",\n \"2xs\",\n \"3xl\"\n].sort((a, b) => avatarSizeSort[a] - avatarSizeSort[b]);\nvar borderRadiiSort = {\n none: 0,\n xs: 1,\n sm: 2,\n md: 3,\n lg: 4,\n xl: 5,\n full: 6\n};\nvar borderRadii = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"none\",\n \"xs\",\n \"full\"\n].sort((a, b) => borderRadiiSort[a] - borderRadiiSort[b]);\nvar borderWidthSort = {\n none: 0,\n thin: 1,\n medium: 2,\n thick: 3\n};\nvar borderWidths = [\n \"medium\",\n \"none\",\n \"thin\",\n \"thick\"\n].sort((a, b) => borderWidthSort[a] - borderWidthSort[b]);\nvar borderWidthsWithElevation = [\n ...borderWidths,\n ...elevationAliases.map((alias) => `width-${alias}`)\n];\nvar iconSizeSort = { xs: 0, sm: 1, md: 2, lg: 3 };\nvar iconSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xs\"\n].sort((a, b) => iconSizeSort[a] - iconSizeSort[b]);\nvar iconVariants = [\n \"fill\",\n \"outline\",\n \"multicolor\"\n];\nvar percentageSteps = [\n 4,\n 2,\n 1,\n 3,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 16,\n 17,\n 18,\n 19,\n 20,\n 21,\n 22,\n 23,\n 24,\n 25,\n 26,\n 27,\n 28,\n 29,\n 30,\n 31,\n 32,\n 33,\n 34,\n 35,\n 36,\n 37,\n 38,\n 39,\n 40,\n 41,\n 42,\n 43,\n 44,\n 45,\n 46,\n 47,\n 48,\n 49,\n 50,\n 51,\n 52,\n 53,\n 54,\n 55,\n 56,\n 57,\n 58,\n 59,\n 60,\n 61,\n 62,\n 63,\n 64,\n 65,\n 66,\n 67,\n 68,\n 69,\n 70,\n 71,\n 72,\n 73,\n 74,\n 75,\n 76,\n 77,\n 78,\n 79,\n 80,\n 81,\n 82,\n 83,\n 84,\n 85,\n 86,\n 87,\n 88,\n 89,\n 90,\n 91,\n 92,\n 93,\n 94,\n 95,\n 96,\n 97,\n 98,\n 99,\n 100\n];\nvar spacingAliases = [\n \"0\",\n \"px\",\n \"0.5\",\n \"1\",\n \"1.5\",\n \"2\",\n \"2.5\",\n \"3\",\n \"3.5\",\n \"4\",\n \"4.5\",\n \"5\",\n \"5.5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"14\",\n \"16\",\n \"20\",\n \"24\",\n \"28\",\n \"32\",\n \"36\",\n \"40\",\n \"44\",\n \"48\",\n \"52\",\n \"56\",\n \"60\",\n \"64\",\n \"72\",\n \"80\",\n \"96\"\n];\nvar spacingMap = {\n \"0\": 0,\n px: 1,\n \"0.5\": 2,\n \"1\": 4,\n \"1.5\": 6,\n \"2\": 8,\n \"2.5\": 10,\n \"3\": 12,\n \"3.5\": 14,\n \"4\": 16,\n \"4.5\": 18,\n \"5\": 20,\n \"5.5\": 22,\n \"6\": 24,\n \"7\": 28,\n \"8\": 32,\n \"9\": 36,\n \"10\": 40,\n \"11\": 44,\n \"12\": 48,\n \"14\": 56,\n \"16\": 64,\n \"20\": 80,\n \"24\": 96,\n \"28\": 112,\n \"32\": 128,\n \"36\": 144,\n \"40\": 160,\n \"44\": 176,\n \"48\": 192,\n \"52\": 208,\n \"56\": 224,\n \"60\": 240,\n \"64\": 256,\n \"72\": 288,\n \"80\": 320,\n \"96\": 384\n};\nvar shadowOffsets = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"14\",\n \"16\",\n \"20\",\n \"24\",\n \"28\",\n \"32\",\n \"36\",\n \"40\",\n \"44\",\n \"48\",\n \"52\",\n \"56\",\n \"60\",\n \"64\",\n \"72\",\n \"80\",\n \"96\",\n \"px\",\n \"0.5\",\n \"1.5\",\n \"2.5\",\n \"3.5\",\n \"4.5\",\n \"5.5\",\n \"-1\",\n \"-2\",\n \"-3\",\n \"-4\",\n \"-5\",\n \"-6\",\n \"-7\",\n \"-8\",\n \"-9\",\n \"-10\",\n \"-11\",\n \"-12\",\n \"-14\",\n \"-16\",\n \"-20\",\n \"-24\",\n \"-28\",\n \"-32\",\n \"-36\",\n \"-40\",\n \"-44\",\n \"-48\",\n \"-52\",\n \"-56\",\n \"-60\",\n \"-64\",\n \"-72\",\n \"-80\",\n \"-96\",\n \"-px\",\n \"-0.5\",\n \"-1.5\",\n \"-2.5\",\n \"-3.5\",\n \"-4.5\",\n \"-5.5\"\n];\nvar shadowOffsetMap = {\n \"-96\": -384,\n \"-80\": -320,\n \"-72\": -288,\n \"-64\": -256,\n \"-60\": -240,\n \"-56\": -224,\n \"-52\": -208,\n \"-48\": -192,\n \"-44\": -176,\n \"-40\": -160,\n \"-36\": -144,\n \"-32\": -128,\n \"-28\": -112,\n \"-24\": -96,\n \"-20\": -80,\n \"-16\": -64,\n \"-14\": -56,\n \"-12\": -48,\n \"-11\": -44,\n \"-10\": -40,\n \"-9\": -36,\n \"-8\": -32,\n \"-7\": -28,\n \"-6\": -24,\n \"-5.5\": -22,\n \"-5\": -20,\n \"-4.5\": -18,\n \"-4\": -16,\n \"-3.5\": -14,\n \"-3\": -12,\n \"-2.5\": -10,\n \"-2\": -8,\n \"-1.5\": -6,\n \"-1\": -4,\n \"-0.5\": -2,\n \"-px\": -1,\n \"0\": 0,\n px: 1,\n \"0.5\": 2,\n \"1\": 4,\n \"1.5\": 6,\n \"2\": 8,\n \"2.5\": 10,\n \"3\": 12,\n \"3.5\": 14,\n \"4\": 16,\n \"4.5\": 18,\n \"5\": 20,\n \"5.5\": 22,\n \"6\": 24,\n \"7\": 28,\n \"8\": 32,\n \"9\": 36,\n \"10\": 40,\n \"11\": 44,\n \"12\": 48,\n \"14\": 56,\n \"16\": 64,\n \"20\": 80,\n \"24\": 96,\n \"28\": 112,\n \"32\": 128,\n \"36\": 144,\n \"40\": 160,\n \"44\": 176,\n \"48\": 192,\n \"52\": 208,\n \"56\": 224,\n \"60\": 240,\n \"64\": 256,\n \"72\": 288,\n \"80\": 320,\n \"96\": 384\n};\nvar shadowSpreadRadii = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"14\",\n \"16\",\n \"20\",\n \"24\",\n \"28\",\n \"32\",\n \"36\",\n \"40\",\n \"44\",\n \"48\",\n \"52\",\n \"56\",\n \"60\",\n \"64\",\n \"72\",\n \"80\",\n \"96\",\n \"px\",\n \"0.5\",\n \"1.5\",\n \"2.5\",\n \"3.5\",\n \"4.5\",\n \"5.5\",\n \"-1\",\n \"-2\",\n \"-3\",\n \"-4\",\n \"-5\",\n \"-6\",\n \"-7\",\n \"-8\",\n \"-9\",\n \"-10\",\n \"-11\",\n \"-12\",\n \"-14\",\n \"-16\",\n \"-20\",\n \"-24\",\n \"-28\",\n \"-32\",\n \"-36\",\n \"-40\",\n \"-44\",\n \"-48\",\n \"-52\",\n \"-56\",\n \"-60\",\n \"-64\",\n \"-72\",\n \"-80\",\n \"-96\",\n \"-px\",\n \"-0.5\",\n \"-1.5\",\n \"-2.5\",\n \"-3.5\",\n \"-4.5\",\n \"-5.5\"\n];\nvar shadowSpreadRadiusMap = shadowOffsetMap;\nvar shadowOpacities = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\",\n \"16\",\n \"17\",\n \"18\",\n \"19\",\n \"20\",\n \"21\",\n \"22\",\n \"23\",\n \"24\",\n \"25\",\n \"26\",\n \"27\",\n \"28\",\n \"29\",\n \"30\",\n \"31\",\n \"32\",\n \"33\",\n \"34\",\n \"35\",\n \"36\",\n \"37\",\n \"38\",\n \"39\",\n \"40\",\n \"41\",\n \"42\",\n \"43\",\n \"44\",\n \"45\",\n \"46\",\n \"47\",\n \"48\",\n \"49\",\n \"50\",\n \"51\",\n \"52\",\n \"53\",\n \"54\",\n \"55\",\n \"56\",\n \"57\",\n \"58\",\n \"59\",\n \"60\",\n \"61\",\n \"62\",\n \"63\",\n \"64\",\n \"65\",\n \"66\",\n \"67\",\n \"68\",\n \"69\",\n \"70\",\n \"71\",\n \"72\",\n \"73\",\n \"74\",\n \"75\",\n \"76\",\n \"77\",\n \"78\",\n \"79\",\n \"80\",\n \"81\",\n \"82\",\n \"83\",\n \"84\",\n \"85\",\n \"86\",\n \"87\",\n \"88\",\n \"89\",\n \"90\",\n \"91\",\n \"92\",\n \"93\",\n \"94\",\n \"95\",\n \"96\",\n \"97\",\n \"98\",\n \"99\",\n \"100\"\n];\nvar shadowOpacityMap = fromEntries(shadowOpacities.map((key) => [key, parseInt(key)]));\nvar tshirtSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"none\",\n \"xs\",\n \"full\"\n];\nvar buttonVariants = [\n \"primary\",\n \"secondary\",\n \"tertiary\"\n];\nvar buttonVariantPriority = {\n primary: 0,\n secondary: 1,\n tertiary: 2\n};\nvar buttonVariantsFlat = [\n \"primary\",\n \"secondary\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\",\n \"tertiary\",\n \"contrast-high\",\n \"contrast-medium\",\n \"contrast-low\",\n \"brand-tertiary\",\n \"alert-tertiary\",\n \"positive-tertiary\",\n \"warning-tertiary\",\n \"info-tertiary\"\n].sort((a, b) => {\n const aPriority = buttonVariantPriority[a] ?? Number.MAX_SAFE_INTEGER;\n const bPriority = buttonVariantPriority[b] ?? Number.MAX_SAFE_INTEGER;\n if (aPriority !== bPriority) {\n return aPriority - bPriority;\n }\n return a.localeCompare(b);\n});\nvar buttonVariantsSecondary = buttonVariantsFlat.filter((v) => v.includes(\"secondary\"));\nvar buttonVariantsTertiary = buttonVariantsFlat.filter((v) => v.includes(\"tertiary\"));\nvar buttonVariantsPrimary = buttonVariantsFlat.filter((v) => !buttonVariantsSecondary.includes(v) && !buttonVariantsTertiary.includes(v));\nvar preferredTShirtSizeSort = {\n none: 0,\n xs: 1,\n sm: 2,\n md: 3,\n lg: 4,\n xl: 5,\n full: 6\n};\nvar buttonPalettes = [\n \"accent\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\"\n];\nvar buttonSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xs\"\n].sort((a, b) => preferredTShirtSizeSort[a] - preferredTShirtSizeSort[b]);\nvar scaleEffects = [\n \"none\",\n \"up\",\n \"down\"\n];\nvar buttonIconSvgSize = \"sm\";\nvar iconButtonSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"xs\"\n].sort((a, b) => preferredTShirtSizeSort[a] - preferredTShirtSizeSort[b]);\nvar inputSizes = [\n \"md\",\n \"lg\"\n];\nvar motionVariants = [\n \"damped\",\n \"smooth\",\n \"subtle\",\n \"bouncy\",\n \"veryBouncy\"\n];\nvar motionVariantSpeeds = [\n \"1\",\n \"2\",\n \"3\",\n \"4\"\n];\nvar motionSpringConfigOptions = [\n \"damping\",\n \"stiffness\"\n];\nvar shadowVariants = [\"none\", \"xs\", \"sm\", \"md\", \"lg\", \"xl\", \"2xl\"];\nvar shadowVariantsInvert = [\n \"xs-invert\",\n \"sm-invert\",\n \"md-invert\",\n \"lg-invert\",\n \"xl-invert\",\n \"2xl-invert\"\n];\nvar shadowVariantsWithInvert = [...shadowVariants, ...shadowVariantsInvert];\nvar shadowVariantConfigs = [];\nvar checkboxVariants = [\n \"primary\",\n \"secondary\"\n];\nvar checkboxSizes = [\n \"sm\",\n \"md\"\n];\nvar switchSizes = [\n \"sm\",\n \"md\"\n];\nvar chipVariants = [\n \"primary\",\n \"secondary\",\n \"brand\",\n \"brand-secondary\"\n];\nvar chipSizes = [\n \"sm\",\n \"md\"\n];\nvar badgeVariants = [\n \"primary\",\n \"secondary\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\"\n];\nvar badgeSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xs\"\n];\nvar linkVariants = [\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"on-color\"\n];\nvar linkTextVariants = [\n \"display1\",\n \"display2\",\n \"display3\",\n \"title1\",\n \"title2\",\n \"title3\",\n \"title4\",\n \"headline1\",\n \"body1\",\n \"label1\",\n \"label2\",\n \"label3\",\n \"label4\",\n \"caption1\",\n \"caption2\",\n \"legal1\",\n \"ui1\",\n \"ui2\",\n \"ui3\",\n \"ui4\",\n \"ui5\",\n \"ui6\"\n];\nvar toastSizes = [\n \"toString\",\n \"charAt\",\n \"charCodeAt\",\n \"concat\",\n \"indexOf\",\n \"lastIndexOf\",\n \"localeCompare\",\n \"match\",\n \"replace\",\n \"search\",\n \"slice\",\n \"split\",\n \"substring\",\n \"toLowerCase\",\n \"toLocaleLowerCase\",\n \"toUpperCase\",\n \"toLocaleUpperCase\",\n \"trim\",\n \"length\",\n \"substr\",\n \"valueOf\",\n \"codePointAt\",\n \"includes\",\n \"endsWith\",\n \"normalize\",\n \"repeat\",\n \"startsWith\",\n \"anchor\",\n \"big\",\n \"blink\",\n \"bold\",\n \"fixed\",\n \"fontcolor\",\n \"fontsize\",\n \"italics\",\n \"link\",\n \"small\",\n \"strike\",\n \"sub\",\n \"sup\",\n \"padStart\",\n \"padEnd\",\n \"trimEnd\",\n \"trimStart\",\n \"trimLeft\",\n \"trimRight\",\n \"matchAll\",\n \"__@iterator@109\"\n];\nvar toastVariants = [\n \"warning\",\n \"info\",\n \"success\",\n \"error\",\n \"loading\"\n];\nvar tooltipPlacements = [\n \"top\",\n \"bottom\",\n \"start\",\n \"end\",\n \"top-start\",\n \"top-end\",\n \"bottom-start\",\n \"bottom-end\",\n \"start-top\",\n \"start-bottom\",\n \"end-top\",\n \"end-bottom\"\n];\nvar bannerInnerShadowOptions = [\"none\", \"subtle\"];\nvar configurableComponentNames = [\n \"avatar\",\n \"badge\",\n \"button\",\n \"checkbox\",\n \"chip\",\n \"divider\",\n \"iconButton\",\n \"input\",\n \"link\",\n \"menu\",\n \"radio\",\n \"switch\",\n \"toast\",\n \"tooltip\"\n];\nvar fontIds = [\n \"centra-no2\",\n \"gelica\",\n \"yas\",\n \"inter\",\n \"roboto-mono\",\n \"yahoo-sans\",\n \"yahoo-sans-cr4\",\n \"yahoo-product-sans\",\n \"yahoo-product-sans-extended\",\n \"yahoo-sans-condensed\",\n \"yahoo-serif-display\",\n \"yahoo-serif-text\"\n];\nvar fontUrls = [\n \"https://s.yimg.com/bw/fonts/centra-no2-hairline.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-hairline-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-thin.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-thin-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-light.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-light-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-book.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-book-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-medium.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-medium-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-bold.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-bold-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-extrabold.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-extrabold-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-black.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-black-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-extralight.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-extralight-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-light.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-light-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-regular.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-regular-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-medium.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-medium-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-semibold.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-semibold-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-bold.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-bold-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-black.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-black-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/yas-latin1-normal-no-italic-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/inter-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-100.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-100-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-300.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-300-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-400.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-400-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-500.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-500-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-700.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-700-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-sans-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-sans-cr4-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-product-sans-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/YahooPd_Eval202412-v1.1.0.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-sans-condensed-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-light.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-regular.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-bold.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-extrabold.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-black.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-text-regular.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-text-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-text-bold.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-text-bold-italic.woff2\"\n];\nexport { typographyStyleProperties, tshirtSizes, tooltipPlacements, toastVariants, toastSizes, textVariantsWithoutEmphasized, textVariantsUi, textVariantsTypography, textVariants, textTransforms, textProperties, textDecorationLines, switchSizes, spectrumColors, spacingMap, spacingAliases, sortPalette, shadowVariantsWithInvert, shadowVariantsInvert, shadowVariants, shadowVariantConfigs, shadowSpreadRadiusMap, shadowSpreadRadii, shadowPaletteColors, shadowOpacityMap, shadowOpacities, shadowOffsets, shadowOffsetMap, shadowColors, scaleModes, scaleEffects, regionModes, positiveIntegers, percentageSteps, palette, opacitySteps, opacityMap, motionVariants, motionVariantSpeeds, motionSpringConfigOptions, linkVariants, linkTextVariants, linePaletteColors, lineColors, inputSizes, iconVariants, iconSizes, iconButtonSizes, hues, hueSteps, foregroundPaletteColors, foregroundColors, fontWeights, fontUrls, fontIds, fontAliases, elevationShadowLayerCount, elevationLevels, elevationInsetShadowLayerCount, elevationAliases, configurableComponentNames, colorModes, chipVariants, chipSizes, checkboxVariants, checkboxSizes, buttonVariantsTertiary, buttonVariantsSecondary, buttonVariantsPrimary, buttonVariantsFlat, buttonVariants, buttonSizes, buttonPalettes, buttonIconSvgSize, breakpoints, borderWidthsWithElevation, borderWidths, borderRadii, bannerInnerShadowOptions, badgeVariants, badgeSizes, backgroundPaletteColors, backgroundColors, avatarSizes, avatarShapes, alwaysPaletteAliases };\n"],"mappings":";;AACA,SAAS,uBAAuB,SAAS;AACrC,QAAO;;AAEY,uBAAuB;CAC1C,MAAM;CACN,WAAW;CACX,KAAK;CACL,MAAM;CACT,CAAC;AAoCF,IAAI,mBAAmB;CACnB;CACA;CACA;CACA;CACA;CACA;CACH;AA6WD,IAAI,0BAA0B;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AACD,IAAI,0BAA0B;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AACD,IAAI,oBAAoB;CACpB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AACD,IAAI,uBAAuB;CACvB;CACA;CACA;CACA;CACA;CACA;CACH;AAyVD,IAAI,eAAe;CACf;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AACD,IAAI,eAAe,SAAS,OAAO,YAAY,KAAK;AACpD,IAAI,aAAa,YAAY,aAAa,KAAK,QAAQ,CAAC,KAAK,GAAG,SAAS,IAAI,GAAG,MAAM,CAAC,CAAC;AACjE;CACnB,GAAG;CACH,GAAG;CACH,GAAG;CACN;AACsB,CAAC,GAAG,yBAAyB,GAAG,qBAAqB;AAC3D;CAAC,GAAG;CAAmB,GAAG;CAAsB,GAAG;CAAiB;AAsDrF,IAAI,eAAe;CACf;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AA+CD,IAAI,cAAc;CACd;CACA;CACA;CACA;CACA;CACH;AA2BD,IAAI,iBAAiB;CACjB,OAAO;CACP,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,OAAO;CACP,OAAO;CACV;AACiB;CACd;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,eAAe,KAAK,eAAe,GAAG;AACvD,IAAI,kBAAkB;CAClB,MAAM;CACN,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,MAAM;CACT;AACiB;CACd;CACA;CACA;CACA;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,gBAAgB,KAAK,gBAAgB,GAAG;AACzD,IAAI,kBAAkB;CAClB,MAAM;CACN,MAAM;CACN,QAAQ;CACR,OAAO;CACV;AAO+B,CAC5B,GAPe;CACf;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,gBAAgB,KAAK,gBAAgB,GAE/C,EACH,GAAG,iBAAiB,KAAK,UAAU,SAAS,QAAQ,CACvD;AACD,IAAI,eAAe;CAAE,IAAI;CAAG,IAAI;CAAG,IAAI;CAAG,IAAI;CAAG;AACjC;CACZ;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,aAAa,KAAK,aAAa,GAAG;AAmJnD,IAAI,aAAa;CACb,KAAK;CACL,IAAI;CACJ,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACT;AA4ED,IAAI,kBAAkB;CAClB,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,OAAO;CACP,KAAK;CACL,IAAI;CACJ,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACT;AA4ED,IAAI,wBAAwB;AAwG5B,IAAI,mBAAmB,YAAY;CAtG/B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAE+B,CAAgB,KAAK,QAAQ,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC;AAetF,IAAI,wBAAwB;CACxB,SAAS;CACT,WAAW;CACX,UAAU;CACb;AACD,IAAI,qBAAqB;CACrB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM;CACb,MAAM,YAAY,sBAAsB,MAAM,OAAO;CACrD,MAAM,YAAY,sBAAsB,MAAM,OAAO;AACrD,KAAI,cAAc,UACd,QAAO,YAAY;AAEvB,QAAO,EAAE,cAAc,EAAE;EAC3B;AACF,IAAI,0BAA0B,mBAAmB,QAAQ,MAAM,EAAE,SAAS,YAAY,CAAC;AACvF,IAAI,yBAAyB,mBAAmB,QAAQ,MAAM,EAAE,SAAS,WAAW,CAAC;AACzD,mBAAmB,QAAQ,MAAM,CAAC,wBAAwB,SAAS,EAAE,IAAI,CAAC,uBAAuB,SAAS,EAAE,CAAC;AACzI,IAAI,0BAA0B;CAC1B,MAAM;CACN,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,MAAM;CACT;AASiB;CACd;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,wBAAwB,KAAK,wBAAwB,GAAG;AAOnD;CAClB;CACA;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,wBAAwB,KAAK,wBAAwB,GAAG;AAkBzE,IAAI,4BAA4B,CAC5B,WACA,YACH;AACD,IAAI,iBAAiB;CAAC;CAAQ;CAAM;CAAM;CAAM;CAAM;CAAM;CAAM;AAClE,IAAI,uBAAuB;CACvB;CACA;CACA;CACA;CACA;CACA;CACH;AAC8B,CAAC,GAAG,gBAAgB,GAAG,qBAAqB"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../fixtures/dist/index.js"],"sourcesContent":["// src/arbitrary.ts\nfunction createArbitraryFixture(fixture) {\n return fixture;\n}\nvar positiveIntegers = createArbitraryFixture({\n type: \"arbitraryFixture\",\n valueType: \"integer\",\n min: 0,\n step: 1\n});\n// src/index.ts\nvar breakpoints = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"2xl\"\n];\nvar colorModes = [\n \"light\",\n \"dark\"\n];\nvar scaleModes = [\n \"xSmall\",\n \"small\",\n \"medium\",\n \"large\",\n \"xLarge\",\n \"xxLarge\",\n \"xxxLarge\"\n];\nvar regionModes = [\n \"\\uD83C\\uDDFA\\uD83C\\uDDF8 US\",\n \"\\uD83C\\uDDE9\\uD83C\\uDDEA DE\",\n \"\\uD83C\\uDDEB\\uD83C\\uDDF7 FR\",\n \"\\uD83C\\uDDE8\\uD83C\\uDDF3 CN\"\n];\nvar elevationLevels = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\"\n];\nvar elevationAliases = [\n \"elevation-0\",\n \"elevation-1\",\n \"elevation-2\",\n \"elevation-3\",\n \"elevation-4\",\n \"elevation-5\"\n];\nvar elevationShadowLayerCount = 4;\nvar elevationInsetShadowLayerCount = 2;\nvar hues = [\n \"gray\",\n \"purple\",\n \"indigo\",\n \"blue\",\n \"cyan\",\n \"teal\",\n \"mint\",\n \"green\",\n \"lime\",\n \"citron\",\n \"yellow\",\n \"brown\",\n \"nude\",\n \"orange\",\n \"sunset\",\n \"red\",\n \"rose\",\n \"pink\",\n \"magenta\",\n \"carbon\"\n];\nvar hueSteps = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\"\n];\nvar spectrumColors = [\n \"gray-0\",\n \"gray-1\",\n \"gray-2\",\n \"gray-3\",\n \"gray-4\",\n \"gray-5\",\n \"gray-6\",\n \"gray-7\",\n \"gray-8\",\n \"gray-9\",\n \"gray-10\",\n \"gray-11\",\n \"gray-12\",\n \"gray-13\",\n \"gray-14\",\n \"gray-15\",\n \"purple-0\",\n \"purple-1\",\n \"purple-2\",\n \"purple-3\",\n \"purple-4\",\n \"purple-5\",\n \"purple-6\",\n \"purple-7\",\n \"purple-8\",\n \"purple-9\",\n \"purple-10\",\n \"purple-11\",\n \"purple-12\",\n \"purple-13\",\n \"purple-14\",\n \"purple-15\",\n \"indigo-0\",\n \"indigo-1\",\n \"indigo-2\",\n \"indigo-3\",\n \"indigo-4\",\n \"indigo-5\",\n \"indigo-6\",\n \"indigo-7\",\n \"indigo-8\",\n \"indigo-9\",\n \"indigo-10\",\n \"indigo-11\",\n \"indigo-12\",\n \"indigo-13\",\n \"indigo-14\",\n \"indigo-15\",\n \"blue-0\",\n \"blue-1\",\n \"blue-2\",\n \"blue-3\",\n \"blue-4\",\n \"blue-5\",\n \"blue-6\",\n \"blue-7\",\n \"blue-8\",\n \"blue-9\",\n \"blue-10\",\n \"blue-11\",\n \"blue-12\",\n \"blue-13\",\n \"blue-14\",\n \"blue-15\",\n \"cyan-0\",\n \"cyan-1\",\n \"cyan-2\",\n \"cyan-3\",\n \"cyan-4\",\n \"cyan-5\",\n \"cyan-6\",\n \"cyan-7\",\n \"cyan-8\",\n \"cyan-9\",\n \"cyan-10\",\n \"cyan-11\",\n \"cyan-12\",\n \"cyan-13\",\n \"cyan-14\",\n \"cyan-15\",\n \"teal-0\",\n \"teal-1\",\n \"teal-2\",\n \"teal-3\",\n \"teal-4\",\n \"teal-5\",\n \"teal-6\",\n \"teal-7\",\n \"teal-8\",\n \"teal-9\",\n \"teal-10\",\n \"teal-11\",\n \"teal-12\",\n \"teal-13\",\n \"teal-14\",\n \"teal-15\",\n \"mint-0\",\n \"mint-1\",\n \"mint-2\",\n \"mint-3\",\n \"mint-4\",\n \"mint-5\",\n \"mint-6\",\n \"mint-7\",\n \"mint-8\",\n \"mint-9\",\n \"mint-10\",\n \"mint-11\",\n \"mint-12\",\n \"mint-13\",\n \"mint-14\",\n \"mint-15\",\n \"green-0\",\n \"green-1\",\n \"green-2\",\n \"green-3\",\n \"green-4\",\n \"green-5\",\n \"green-6\",\n \"green-7\",\n \"green-8\",\n \"green-9\",\n \"green-10\",\n \"green-11\",\n \"green-12\",\n \"green-13\",\n \"green-14\",\n \"green-15\",\n \"lime-0\",\n \"lime-1\",\n \"lime-2\",\n \"lime-3\",\n \"lime-4\",\n \"lime-5\",\n \"lime-6\",\n \"lime-7\",\n \"lime-8\",\n \"lime-9\",\n \"lime-10\",\n \"lime-11\",\n \"lime-12\",\n \"lime-13\",\n \"lime-14\",\n \"lime-15\",\n \"citron-0\",\n \"citron-1\",\n \"citron-2\",\n \"citron-3\",\n \"citron-4\",\n \"citron-5\",\n \"citron-6\",\n \"citron-7\",\n \"citron-8\",\n \"citron-9\",\n \"citron-10\",\n \"citron-11\",\n \"citron-12\",\n \"citron-13\",\n \"citron-14\",\n \"citron-15\",\n \"yellow-0\",\n \"yellow-1\",\n \"yellow-2\",\n \"yellow-3\",\n \"yellow-4\",\n \"yellow-5\",\n \"yellow-6\",\n \"yellow-7\",\n \"yellow-8\",\n \"yellow-9\",\n \"yellow-10\",\n \"yellow-11\",\n \"yellow-12\",\n \"yellow-13\",\n \"yellow-14\",\n \"yellow-15\",\n \"brown-0\",\n \"brown-1\",\n \"brown-2\",\n \"brown-3\",\n \"brown-4\",\n \"brown-5\",\n \"brown-6\",\n \"brown-7\",\n \"brown-8\",\n \"brown-9\",\n \"brown-10\",\n \"brown-11\",\n \"brown-12\",\n \"brown-13\",\n \"brown-14\",\n \"brown-15\",\n \"nude-0\",\n \"nude-1\",\n \"nude-2\",\n \"nude-3\",\n \"nude-4\",\n \"nude-5\",\n \"nude-6\",\n \"nude-7\",\n \"nude-8\",\n \"nude-9\",\n \"nude-10\",\n \"nude-11\",\n \"nude-12\",\n \"nude-13\",\n \"nude-14\",\n \"nude-15\",\n \"orange-0\",\n \"orange-1\",\n \"orange-2\",\n \"orange-3\",\n \"orange-4\",\n \"orange-5\",\n \"orange-6\",\n \"orange-7\",\n \"orange-8\",\n \"orange-9\",\n \"orange-10\",\n \"orange-11\",\n \"orange-12\",\n \"orange-13\",\n \"orange-14\",\n \"orange-15\",\n \"sunset-0\",\n \"sunset-1\",\n \"sunset-2\",\n \"sunset-3\",\n \"sunset-4\",\n \"sunset-5\",\n \"sunset-6\",\n \"sunset-7\",\n \"sunset-8\",\n \"sunset-9\",\n \"sunset-10\",\n \"sunset-11\",\n \"sunset-12\",\n \"sunset-13\",\n \"sunset-14\",\n \"sunset-15\",\n \"red-0\",\n \"red-1\",\n \"red-2\",\n \"red-3\",\n \"red-4\",\n \"red-5\",\n \"red-6\",\n \"red-7\",\n \"red-8\",\n \"red-9\",\n \"red-10\",\n \"red-11\",\n \"red-12\",\n \"red-13\",\n \"red-14\",\n \"red-15\",\n \"rose-0\",\n \"rose-1\",\n \"rose-2\",\n \"rose-3\",\n \"rose-4\",\n \"rose-5\",\n \"rose-6\",\n \"rose-7\",\n \"rose-8\",\n \"rose-9\",\n \"rose-10\",\n \"rose-11\",\n \"rose-12\",\n \"rose-13\",\n \"rose-14\",\n \"rose-15\",\n \"pink-0\",\n \"pink-1\",\n \"pink-2\",\n \"pink-3\",\n \"pink-4\",\n \"pink-5\",\n \"pink-6\",\n \"pink-7\",\n \"pink-8\",\n \"pink-9\",\n \"pink-10\",\n \"pink-11\",\n \"pink-12\",\n \"pink-13\",\n \"pink-14\",\n \"pink-15\",\n \"magenta-0\",\n \"magenta-1\",\n \"magenta-2\",\n \"magenta-3\",\n \"magenta-4\",\n \"magenta-5\",\n \"magenta-6\",\n \"magenta-7\",\n \"magenta-8\",\n \"magenta-9\",\n \"magenta-10\",\n \"magenta-11\",\n \"magenta-12\",\n \"magenta-13\",\n \"magenta-14\",\n \"magenta-15\",\n \"carbon-0\",\n \"carbon-1\",\n \"carbon-2\",\n \"carbon-3\",\n \"carbon-4\",\n \"carbon-5\",\n \"carbon-6\",\n \"carbon-7\",\n \"carbon-8\",\n \"carbon-9\",\n \"carbon-10\",\n \"carbon-11\",\n \"carbon-12\",\n \"carbon-13\",\n \"carbon-14\",\n \"carbon-15\"\n];\nvar backgroundPaletteColors = [\n \"primary\",\n \"secondary\",\n \"accent\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\"\n];\nvar foregroundPaletteColors = [\n \"primary\",\n \"secondary\",\n \"accent\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\",\n \"tertiary\",\n \"muted\",\n \"on-color\"\n];\nvar linePaletteColors = [\n \"primary\",\n \"secondary\",\n \"accent\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\",\n \"tertiary\",\n \"muted\"\n];\nvar alwaysPaletteAliases = [\n \"always/white\",\n \"always/black\",\n \"always/transparent\",\n \"always/current\",\n \"always/brand\",\n \"always/accent\"\n];\nvar shadowPaletteColors = [\n \"primary\",\n \"secondary\"\n];\nvar shadowColors = [\n \"elevation-0\",\n \"elevation-1\",\n \"elevation-2\",\n \"elevation-3\",\n \"elevation-4\",\n \"elevation-5\",\n \"gray-0\",\n \"gray-1\",\n \"gray-2\",\n \"gray-3\",\n \"gray-4\",\n \"gray-5\",\n \"gray-6\",\n \"gray-7\",\n \"gray-8\",\n \"gray-9\",\n \"gray-10\",\n \"gray-11\",\n \"gray-12\",\n \"gray-13\",\n \"gray-14\",\n \"gray-15\",\n \"purple-0\",\n \"purple-1\",\n \"purple-2\",\n \"purple-3\",\n \"purple-4\",\n \"purple-5\",\n \"purple-6\",\n \"purple-7\",\n \"purple-8\",\n \"purple-9\",\n \"purple-10\",\n \"purple-11\",\n \"purple-12\",\n \"purple-13\",\n \"purple-14\",\n \"purple-15\",\n \"indigo-0\",\n \"indigo-1\",\n \"indigo-2\",\n \"indigo-3\",\n \"indigo-4\",\n \"indigo-5\",\n \"indigo-6\",\n \"indigo-7\",\n \"indigo-8\",\n \"indigo-9\",\n \"indigo-10\",\n \"indigo-11\",\n \"indigo-12\",\n \"indigo-13\",\n \"indigo-14\",\n \"indigo-15\",\n \"blue-0\",\n \"blue-1\",\n \"blue-2\",\n \"blue-3\",\n \"blue-4\",\n \"blue-5\",\n \"blue-6\",\n \"blue-7\",\n \"blue-8\",\n \"blue-9\",\n \"blue-10\",\n \"blue-11\",\n \"blue-12\",\n \"blue-13\",\n \"blue-14\",\n \"blue-15\",\n \"cyan-0\",\n \"cyan-1\",\n \"cyan-2\",\n \"cyan-3\",\n \"cyan-4\",\n \"cyan-5\",\n \"cyan-6\",\n \"cyan-7\",\n \"cyan-8\",\n \"cyan-9\",\n \"cyan-10\",\n \"cyan-11\",\n \"cyan-12\",\n \"cyan-13\",\n \"cyan-14\",\n \"cyan-15\",\n \"teal-0\",\n \"teal-1\",\n \"teal-2\",\n \"teal-3\",\n \"teal-4\",\n \"teal-5\",\n \"teal-6\",\n \"teal-7\",\n \"teal-8\",\n \"teal-9\",\n \"teal-10\",\n \"teal-11\",\n \"teal-12\",\n \"teal-13\",\n \"teal-14\",\n \"teal-15\",\n \"mint-0\",\n \"mint-1\",\n \"mint-2\",\n \"mint-3\",\n \"mint-4\",\n \"mint-5\",\n \"mint-6\",\n \"mint-7\",\n \"mint-8\",\n \"mint-9\",\n \"mint-10\",\n \"mint-11\",\n \"mint-12\",\n \"mint-13\",\n \"mint-14\",\n \"mint-15\",\n \"green-0\",\n \"green-1\",\n \"green-2\",\n \"green-3\",\n \"green-4\",\n \"green-5\",\n \"green-6\",\n \"green-7\",\n \"green-8\",\n \"green-9\",\n \"green-10\",\n \"green-11\",\n \"green-12\",\n \"green-13\",\n \"green-14\",\n \"green-15\",\n \"lime-0\",\n \"lime-1\",\n \"lime-2\",\n \"lime-3\",\n \"lime-4\",\n \"lime-5\",\n \"lime-6\",\n \"lime-7\",\n \"lime-8\",\n \"lime-9\",\n \"lime-10\",\n \"lime-11\",\n \"lime-12\",\n \"lime-13\",\n \"lime-14\",\n \"lime-15\",\n \"citron-0\",\n \"citron-1\",\n \"citron-2\",\n \"citron-3\",\n \"citron-4\",\n \"citron-5\",\n \"citron-6\",\n \"citron-7\",\n \"citron-8\",\n \"citron-9\",\n \"citron-10\",\n \"citron-11\",\n \"citron-12\",\n \"citron-13\",\n \"citron-14\",\n \"citron-15\",\n \"yellow-0\",\n \"yellow-1\",\n \"yellow-2\",\n \"yellow-3\",\n \"yellow-4\",\n \"yellow-5\",\n \"yellow-6\",\n \"yellow-7\",\n \"yellow-8\",\n \"yellow-9\",\n \"yellow-10\",\n \"yellow-11\",\n \"yellow-12\",\n \"yellow-13\",\n \"yellow-14\",\n \"yellow-15\",\n \"brown-0\",\n \"brown-1\",\n \"brown-2\",\n \"brown-3\",\n \"brown-4\",\n \"brown-5\",\n \"brown-6\",\n \"brown-7\",\n \"brown-8\",\n \"brown-9\",\n \"brown-10\",\n \"brown-11\",\n \"brown-12\",\n \"brown-13\",\n \"brown-14\",\n \"brown-15\",\n \"nude-0\",\n \"nude-1\",\n \"nude-2\",\n \"nude-3\",\n \"nude-4\",\n \"nude-5\",\n \"nude-6\",\n \"nude-7\",\n \"nude-8\",\n \"nude-9\",\n \"nude-10\",\n \"nude-11\",\n \"nude-12\",\n \"nude-13\",\n \"nude-14\",\n \"nude-15\",\n \"orange-0\",\n \"orange-1\",\n \"orange-2\",\n \"orange-3\",\n \"orange-4\",\n \"orange-5\",\n \"orange-6\",\n \"orange-7\",\n \"orange-8\",\n \"orange-9\",\n \"orange-10\",\n \"orange-11\",\n \"orange-12\",\n \"orange-13\",\n \"orange-14\",\n \"orange-15\",\n \"sunset-0\",\n \"sunset-1\",\n \"sunset-2\",\n \"sunset-3\",\n \"sunset-4\",\n \"sunset-5\",\n \"sunset-6\",\n \"sunset-7\",\n \"sunset-8\",\n \"sunset-9\",\n \"sunset-10\",\n \"sunset-11\",\n \"sunset-12\",\n \"sunset-13\",\n \"sunset-14\",\n \"sunset-15\",\n \"red-0\",\n \"red-1\",\n \"red-2\",\n \"red-3\",\n \"red-4\",\n \"red-5\",\n \"red-6\",\n \"red-7\",\n \"red-8\",\n \"red-9\",\n \"red-10\",\n \"red-11\",\n \"red-12\",\n \"red-13\",\n \"red-14\",\n \"red-15\",\n \"rose-0\",\n \"rose-1\",\n \"rose-2\",\n \"rose-3\",\n \"rose-4\",\n \"rose-5\",\n \"rose-6\",\n \"rose-7\",\n \"rose-8\",\n \"rose-9\",\n \"rose-10\",\n \"rose-11\",\n \"rose-12\",\n \"rose-13\",\n \"rose-14\",\n \"rose-15\",\n \"pink-0\",\n \"pink-1\",\n \"pink-2\",\n \"pink-3\",\n \"pink-4\",\n \"pink-5\",\n \"pink-6\",\n \"pink-7\",\n \"pink-8\",\n \"pink-9\",\n \"pink-10\",\n \"pink-11\",\n \"pink-12\",\n \"pink-13\",\n \"pink-14\",\n \"pink-15\",\n \"magenta-0\",\n \"magenta-1\",\n \"magenta-2\",\n \"magenta-3\",\n \"magenta-4\",\n \"magenta-5\",\n \"magenta-6\",\n \"magenta-7\",\n \"magenta-8\",\n \"magenta-9\",\n \"magenta-10\",\n \"magenta-11\",\n \"magenta-12\",\n \"magenta-13\",\n \"magenta-14\",\n \"magenta-15\",\n \"carbon-0\",\n \"carbon-1\",\n \"carbon-2\",\n \"carbon-3\",\n \"carbon-4\",\n \"carbon-5\",\n \"carbon-6\",\n \"carbon-7\",\n \"carbon-8\",\n \"carbon-9\",\n \"carbon-10\",\n \"carbon-11\",\n \"carbon-12\",\n \"carbon-13\",\n \"carbon-14\",\n \"carbon-15\",\n \"primary\",\n \"secondary\",\n \"always/white\",\n \"always/black\",\n \"always/transparent\",\n \"always/current\",\n \"always/brand\",\n \"always/accent\",\n \"white\",\n \"black\",\n \"transparent\",\n \"current\"\n];\nvar opacitySteps = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\",\n \"16\",\n \"17\",\n \"18\",\n \"19\",\n \"20\",\n \"21\",\n \"22\",\n \"23\",\n \"24\",\n \"25\",\n \"26\",\n \"27\",\n \"28\",\n \"29\",\n \"30\",\n \"31\",\n \"32\",\n \"33\",\n \"34\",\n \"35\",\n \"36\",\n \"37\",\n \"38\",\n \"39\",\n \"40\",\n \"41\",\n \"42\",\n \"43\",\n \"44\",\n \"45\",\n \"46\",\n \"47\",\n \"48\",\n \"49\",\n \"50\",\n \"51\",\n \"52\",\n \"53\",\n \"54\",\n \"55\",\n \"56\",\n \"57\",\n \"58\",\n \"59\",\n \"60\",\n \"61\",\n \"62\",\n \"63\",\n \"64\",\n \"65\",\n \"66\",\n \"67\",\n \"68\",\n \"69\",\n \"70\",\n \"71\",\n \"72\",\n \"73\",\n \"74\",\n \"75\",\n \"76\",\n \"77\",\n \"78\",\n \"79\",\n \"80\",\n \"81\",\n \"82\",\n \"83\",\n \"84\",\n \"85\",\n \"86\",\n \"87\",\n \"88\",\n \"89\",\n \"90\",\n \"91\",\n \"92\",\n \"93\",\n \"94\",\n \"95\",\n \"96\",\n \"97\",\n \"98\",\n \"99\",\n \"100\"\n];\nvar fromEntries = (item) => Object.fromEntries(item);\nvar opacityMap = fromEntries(opacitySteps.map((key) => [key, `${parseInt(key) / 100}`]));\nvar backgroundColors = [\n ...backgroundPaletteColors,\n ...alwaysPaletteAliases,\n ...elevationAliases\n];\nvar foregroundColors = [...foregroundPaletteColors, ...alwaysPaletteAliases];\nvar lineColors = [...linePaletteColors, ...alwaysPaletteAliases, ...elevationAliases];\nvar palette = {\n background: backgroundPaletteColors,\n foreground: foregroundPaletteColors,\n line: linePaletteColors,\n shadow: shadowPaletteColors\n};\nvar idealColorSorting = [\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"muted\",\n \"on-color\",\n \"accent\",\n \"brand\",\n \"brand-secondary\",\n \"info\",\n \"info-secondary\",\n \"alert\",\n \"alert-secondary\",\n \"positive\",\n \"positive-secondary\",\n \"warning\",\n \"warning-secondary\"\n];\nfunction sortPalette(paletteToSort, ordering = idealColorSorting) {\n return Object.entries(paletteToSort).sort(([prevPaletteAlias], [nextPaletteAlias]) => ordering.indexOf(prevPaletteAlias) - ordering.indexOf(nextPaletteAlias));\n}\nvar textVariantsTypography = [\n \"display1\",\n \"display2\",\n \"display3\",\n \"title1\",\n \"title2\",\n \"title3\",\n \"title4\",\n \"headline1\",\n \"body1\",\n \"label1\",\n \"label2\",\n \"label3\",\n \"label4\",\n \"caption1\",\n \"caption2\",\n \"legal1\"\n];\nvar textVariantsUi = [\n \"ui1\",\n \"ui2\",\n \"ui3\",\n \"ui4\",\n \"ui5\",\n \"ui6\"\n];\nvar textVariants = [\n \"display1\",\n \"display2\",\n \"display3\",\n \"title1\",\n \"title2\",\n \"title3\",\n \"title4\",\n \"headline1\",\n \"body1\",\n \"label1\",\n \"label2\",\n \"label3\",\n \"label4\",\n \"caption1\",\n \"caption2\",\n \"legal1\",\n \"ui1\",\n \"ui2\",\n \"ui3\",\n \"ui4\",\n \"ui5\",\n \"ui6\",\n \"display1/emphasized\",\n \"display2/emphasized\",\n \"display3/emphasized\",\n \"title1/emphasized\",\n \"title2/emphasized\",\n \"title3/emphasized\",\n \"title4/emphasized\",\n \"headline1/emphasized\",\n \"body1/emphasized\",\n \"label1/emphasized\",\n \"label2/emphasized\",\n \"label3/emphasized\",\n \"label4/emphasized\",\n \"caption1/emphasized\",\n \"caption2/emphasized\",\n \"legal1/emphasized\",\n \"ui1/emphasized\",\n \"ui2/emphasized\",\n \"ui3/emphasized\",\n \"ui4/emphasized\",\n \"ui5/emphasized\",\n \"ui6/emphasized\"\n];\nvar textVariantsWithoutEmphasized = [\n \"display1\",\n \"display2\",\n \"display3\",\n \"title1\",\n \"title2\",\n \"title3\",\n \"title4\",\n \"headline1\",\n \"body1\",\n \"label1\",\n \"label2\",\n \"label3\",\n \"label4\",\n \"caption1\",\n \"caption2\",\n \"legal1\",\n \"ui1\",\n \"ui2\",\n \"ui3\",\n \"ui4\",\n \"ui5\",\n \"ui6\"\n];\nvar textProperties = [\n \"fontFamily\",\n \"fontSize\",\n \"fontWeight\",\n \"lineHeight\",\n \"textTransform\",\n \"letterSpacing\"\n];\nvar textDecorationLines = [\n \"none\",\n \"underline\"\n];\nvar typographyStyleProperties = [\n \"fontFamily\",\n \"fontSize\",\n \"fontWeight\",\n \"lineHeight\",\n \"textTransform\",\n \"letterSpacing\",\n \"fontSlant\",\n \"fontWidth\"\n];\nvar fontAliases = [\n \"sans\",\n \"sans-alt\",\n \"serif\",\n \"serif-alt\",\n \"mono\"\n];\nvar fontWeights = [\n \"light\",\n \"medium\",\n \"black\",\n \"thin\",\n \"extralight\",\n \"regular\",\n \"semibold\",\n \"bold\",\n \"extrabold\"\n];\nvar textTransforms = [\n \"none\",\n \"uppercase\",\n \"lowercase\",\n \"capitalize\"\n];\nvar avatarShapes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"none\",\n \"xs\",\n \"full\"\n];\nvar avatarSizeSort = {\n \"2xs\": 0,\n xs: 1,\n sm: 2,\n md: 3,\n lg: 4,\n xl: 5,\n \"2xl\": 6,\n \"3xl\": 7\n};\nvar avatarSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"2xl\",\n \"xs\",\n \"2xs\",\n \"3xl\"\n].sort((a, b) => avatarSizeSort[a] - avatarSizeSort[b]);\nvar borderRadiiSort = {\n none: 0,\n xs: 1,\n sm: 2,\n md: 3,\n lg: 4,\n xl: 5,\n full: 6\n};\nvar borderRadii = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"none\",\n \"xs\",\n \"full\"\n].sort((a, b) => borderRadiiSort[a] - borderRadiiSort[b]);\nvar borderWidthSort = {\n none: 0,\n thin: 1,\n medium: 2,\n thick: 3\n};\nvar borderWidths = [\n \"medium\",\n \"none\",\n \"thin\",\n \"thick\"\n].sort((a, b) => borderWidthSort[a] - borderWidthSort[b]);\nvar borderWidthsWithElevation = [\n ...borderWidths,\n ...elevationAliases.map((alias) => `width-${alias}`)\n];\nvar iconSizeSort = { xs: 0, sm: 1, md: 2, lg: 3 };\nvar iconSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xs\"\n].sort((a, b) => iconSizeSort[a] - iconSizeSort[b]);\nvar iconVariants = [\n \"fill\",\n \"outline\",\n \"multicolor\"\n];\nvar percentageSteps = [\n 4,\n 2,\n 1,\n 3,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 16,\n 17,\n 18,\n 19,\n 20,\n 21,\n 22,\n 23,\n 24,\n 25,\n 26,\n 27,\n 28,\n 29,\n 30,\n 31,\n 32,\n 33,\n 34,\n 35,\n 36,\n 37,\n 38,\n 39,\n 40,\n 41,\n 42,\n 43,\n 44,\n 45,\n 46,\n 47,\n 48,\n 49,\n 50,\n 51,\n 52,\n 53,\n 54,\n 55,\n 56,\n 57,\n 58,\n 59,\n 60,\n 61,\n 62,\n 63,\n 64,\n 65,\n 66,\n 67,\n 68,\n 69,\n 70,\n 71,\n 72,\n 73,\n 74,\n 75,\n 76,\n 77,\n 78,\n 79,\n 80,\n 81,\n 82,\n 83,\n 84,\n 85,\n 86,\n 87,\n 88,\n 89,\n 90,\n 91,\n 92,\n 93,\n 94,\n 95,\n 96,\n 97,\n 98,\n 99,\n 100\n];\nvar spacingAliases = [\n \"0\",\n \"px\",\n \"0.5\",\n \"1\",\n \"1.5\",\n \"2\",\n \"2.5\",\n \"3\",\n \"3.5\",\n \"4\",\n \"4.5\",\n \"5\",\n \"5.5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"14\",\n \"16\",\n \"20\",\n \"24\",\n \"28\",\n \"32\",\n \"36\",\n \"40\",\n \"44\",\n \"48\",\n \"52\",\n \"56\",\n \"60\",\n \"64\",\n \"72\",\n \"80\",\n \"96\"\n];\nvar spacingMap = {\n \"0\": 0,\n px: 1,\n \"0.5\": 2,\n \"1\": 4,\n \"1.5\": 6,\n \"2\": 8,\n \"2.5\": 10,\n \"3\": 12,\n \"3.5\": 14,\n \"4\": 16,\n \"4.5\": 18,\n \"5\": 20,\n \"5.5\": 22,\n \"6\": 24,\n \"7\": 28,\n \"8\": 32,\n \"9\": 36,\n \"10\": 40,\n \"11\": 44,\n \"12\": 48,\n \"14\": 56,\n \"16\": 64,\n \"20\": 80,\n \"24\": 96,\n \"28\": 112,\n \"32\": 128,\n \"36\": 144,\n \"40\": 160,\n \"44\": 176,\n \"48\": 192,\n \"52\": 208,\n \"56\": 224,\n \"60\": 240,\n \"64\": 256,\n \"72\": 288,\n \"80\": 320,\n \"96\": 384\n};\nvar shadowOffsets = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"14\",\n \"16\",\n \"20\",\n \"24\",\n \"28\",\n \"32\",\n \"36\",\n \"40\",\n \"44\",\n \"48\",\n \"52\",\n \"56\",\n \"60\",\n \"64\",\n \"72\",\n \"80\",\n \"96\",\n \"px\",\n \"0.5\",\n \"1.5\",\n \"2.5\",\n \"3.5\",\n \"4.5\",\n \"5.5\",\n \"-1\",\n \"-2\",\n \"-3\",\n \"-4\",\n \"-5\",\n \"-6\",\n \"-7\",\n \"-8\",\n \"-9\",\n \"-10\",\n \"-11\",\n \"-12\",\n \"-14\",\n \"-16\",\n \"-20\",\n \"-24\",\n \"-28\",\n \"-32\",\n \"-36\",\n \"-40\",\n \"-44\",\n \"-48\",\n \"-52\",\n \"-56\",\n \"-60\",\n \"-64\",\n \"-72\",\n \"-80\",\n \"-96\",\n \"-px\",\n \"-0.5\",\n \"-1.5\",\n \"-2.5\",\n \"-3.5\",\n \"-4.5\",\n \"-5.5\"\n];\nvar shadowOffsetMap = {\n \"-96\": -384,\n \"-80\": -320,\n \"-72\": -288,\n \"-64\": -256,\n \"-60\": -240,\n \"-56\": -224,\n \"-52\": -208,\n \"-48\": -192,\n \"-44\": -176,\n \"-40\": -160,\n \"-36\": -144,\n \"-32\": -128,\n \"-28\": -112,\n \"-24\": -96,\n \"-20\": -80,\n \"-16\": -64,\n \"-14\": -56,\n \"-12\": -48,\n \"-11\": -44,\n \"-10\": -40,\n \"-9\": -36,\n \"-8\": -32,\n \"-7\": -28,\n \"-6\": -24,\n \"-5.5\": -22,\n \"-5\": -20,\n \"-4.5\": -18,\n \"-4\": -16,\n \"-3.5\": -14,\n \"-3\": -12,\n \"-2.5\": -10,\n \"-2\": -8,\n \"-1.5\": -6,\n \"-1\": -4,\n \"-0.5\": -2,\n \"-px\": -1,\n \"0\": 0,\n px: 1,\n \"0.5\": 2,\n \"1\": 4,\n \"1.5\": 6,\n \"2\": 8,\n \"2.5\": 10,\n \"3\": 12,\n \"3.5\": 14,\n \"4\": 16,\n \"4.5\": 18,\n \"5\": 20,\n \"5.5\": 22,\n \"6\": 24,\n \"7\": 28,\n \"8\": 32,\n \"9\": 36,\n \"10\": 40,\n \"11\": 44,\n \"12\": 48,\n \"14\": 56,\n \"16\": 64,\n \"20\": 80,\n \"24\": 96,\n \"28\": 112,\n \"32\": 128,\n \"36\": 144,\n \"40\": 160,\n \"44\": 176,\n \"48\": 192,\n \"52\": 208,\n \"56\": 224,\n \"60\": 240,\n \"64\": 256,\n \"72\": 288,\n \"80\": 320,\n \"96\": 384\n};\nvar shadowSpreadRadii = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"14\",\n \"16\",\n \"20\",\n \"24\",\n \"28\",\n \"32\",\n \"36\",\n \"40\",\n \"44\",\n \"48\",\n \"52\",\n \"56\",\n \"60\",\n \"64\",\n \"72\",\n \"80\",\n \"96\",\n \"px\",\n \"0.5\",\n \"1.5\",\n \"2.5\",\n \"3.5\",\n \"4.5\",\n \"5.5\",\n \"-1\",\n \"-2\",\n \"-3\",\n \"-4\",\n \"-5\",\n \"-6\",\n \"-7\",\n \"-8\",\n \"-9\",\n \"-10\",\n \"-11\",\n \"-12\",\n \"-14\",\n \"-16\",\n \"-20\",\n \"-24\",\n \"-28\",\n \"-32\",\n \"-36\",\n \"-40\",\n \"-44\",\n \"-48\",\n \"-52\",\n \"-56\",\n \"-60\",\n \"-64\",\n \"-72\",\n \"-80\",\n \"-96\",\n \"-px\",\n \"-0.5\",\n \"-1.5\",\n \"-2.5\",\n \"-3.5\",\n \"-4.5\",\n \"-5.5\"\n];\nvar shadowSpreadRadiusMap = shadowOffsetMap;\nvar shadowOpacities = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\",\n \"16\",\n \"17\",\n \"18\",\n \"19\",\n \"20\",\n \"21\",\n \"22\",\n \"23\",\n \"24\",\n \"25\",\n \"26\",\n \"27\",\n \"28\",\n \"29\",\n \"30\",\n \"31\",\n \"32\",\n \"33\",\n \"34\",\n \"35\",\n \"36\",\n \"37\",\n \"38\",\n \"39\",\n \"40\",\n \"41\",\n \"42\",\n \"43\",\n \"44\",\n \"45\",\n \"46\",\n \"47\",\n \"48\",\n \"49\",\n \"50\",\n \"51\",\n \"52\",\n \"53\",\n \"54\",\n \"55\",\n \"56\",\n \"57\",\n \"58\",\n \"59\",\n \"60\",\n \"61\",\n \"62\",\n \"63\",\n \"64\",\n \"65\",\n \"66\",\n \"67\",\n \"68\",\n \"69\",\n \"70\",\n \"71\",\n \"72\",\n \"73\",\n \"74\",\n \"75\",\n \"76\",\n \"77\",\n \"78\",\n \"79\",\n \"80\",\n \"81\",\n \"82\",\n \"83\",\n \"84\",\n \"85\",\n \"86\",\n \"87\",\n \"88\",\n \"89\",\n \"90\",\n \"91\",\n \"92\",\n \"93\",\n \"94\",\n \"95\",\n \"96\",\n \"97\",\n \"98\",\n \"99\",\n \"100\"\n];\nvar shadowOpacityMap = fromEntries(shadowOpacities.map((key) => [key, parseInt(key)]));\nvar tshirtSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"none\",\n \"xs\",\n \"full\"\n];\nvar buttonVariants = [\n \"primary\",\n \"secondary\",\n \"tertiary\"\n];\nvar buttonVariantPriority = {\n primary: 0,\n secondary: 1,\n tertiary: 2\n};\nvar buttonVariantsFlat = [\n \"primary\",\n \"secondary\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\",\n \"tertiary\",\n \"contrast-high\",\n \"contrast-medium\",\n \"contrast-low\",\n \"brand-tertiary\",\n \"alert-tertiary\",\n \"positive-tertiary\",\n \"warning-tertiary\",\n \"info-tertiary\"\n].sort((a, b) => {\n const aPriority = buttonVariantPriority[a] ?? Number.MAX_SAFE_INTEGER;\n const bPriority = buttonVariantPriority[b] ?? Number.MAX_SAFE_INTEGER;\n if (aPriority !== bPriority) {\n return aPriority - bPriority;\n }\n return a.localeCompare(b);\n});\nvar buttonVariantsSecondary = buttonVariantsFlat.filter((v) => v.includes(\"secondary\"));\nvar buttonVariantsTertiary = buttonVariantsFlat.filter((v) => v.includes(\"tertiary\"));\nvar buttonVariantsPrimary = buttonVariantsFlat.filter((v) => !buttonVariantsSecondary.includes(v) && !buttonVariantsTertiary.includes(v));\nvar preferredTShirtSizeSort = {\n none: 0,\n xs: 1,\n sm: 2,\n md: 3,\n lg: 4,\n xl: 5,\n full: 6\n};\nvar buttonPalettes = [\n \"accent\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\"\n];\nvar buttonSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xs\"\n].sort((a, b) => preferredTShirtSizeSort[a] - preferredTShirtSizeSort[b]);\nvar scaleEffects = [\n \"none\",\n \"up\",\n \"down\"\n];\nvar buttonIconSvgSize = \"sm\";\nvar iconButtonSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xl\",\n \"xs\"\n].sort((a, b) => preferredTShirtSizeSort[a] - preferredTShirtSizeSort[b]);\nvar inputSizes = [\n \"md\",\n \"lg\"\n];\nvar motionVariants = [\n \"damped\",\n \"smooth\",\n \"subtle\",\n \"bouncy\",\n \"veryBouncy\"\n];\nvar motionVariantSpeeds = [\n \"1\",\n \"2\",\n \"3\",\n \"4\"\n];\nvar motionSpringConfigOptions = [\n \"damping\",\n \"stiffness\"\n];\nvar shadowVariants = [\"none\", \"xs\", \"sm\", \"md\", \"lg\", \"xl\", \"2xl\"];\nvar shadowVariantsInvert = [\n \"xs-invert\",\n \"sm-invert\",\n \"md-invert\",\n \"lg-invert\",\n \"xl-invert\",\n \"2xl-invert\"\n];\nvar shadowVariantsWithInvert = [...shadowVariants, ...shadowVariantsInvert];\nvar shadowVariantConfigs = [];\nvar checkboxVariants = [\n \"primary\",\n \"secondary\"\n];\nvar checkboxSizes = [\n \"sm\",\n \"md\"\n];\nvar switchSizes = [\n \"sm\",\n \"md\"\n];\nvar chipVariants = [\n \"primary\",\n \"secondary\",\n \"brand\",\n \"brand-secondary\"\n];\nvar chipSizes = [\n \"sm\",\n \"md\"\n];\nvar badgeVariants = [\n \"primary\",\n \"secondary\",\n \"brand\",\n \"alert\",\n \"positive\",\n \"warning\",\n \"info\",\n \"brand-secondary\",\n \"alert-secondary\",\n \"positive-secondary\",\n \"warning-secondary\",\n \"info-secondary\"\n];\nvar badgeSizes = [\n \"sm\",\n \"md\",\n \"lg\",\n \"xs\"\n];\nvar linkVariants = [\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"on-color\"\n];\nvar linkTextVariants = [\n \"display1\",\n \"display2\",\n \"display3\",\n \"title1\",\n \"title2\",\n \"title3\",\n \"title4\",\n \"headline1\",\n \"body1\",\n \"label1\",\n \"label2\",\n \"label3\",\n \"label4\",\n \"caption1\",\n \"caption2\",\n \"legal1\",\n \"ui1\",\n \"ui2\",\n \"ui3\",\n \"ui4\",\n \"ui5\",\n \"ui6\"\n];\nvar toastSizes = [\n \"toString\",\n \"charAt\",\n \"charCodeAt\",\n \"concat\",\n \"indexOf\",\n \"lastIndexOf\",\n \"localeCompare\",\n \"match\",\n \"replace\",\n \"search\",\n \"slice\",\n \"split\",\n \"substring\",\n \"toLowerCase\",\n \"toLocaleLowerCase\",\n \"toUpperCase\",\n \"toLocaleUpperCase\",\n \"trim\",\n \"length\",\n \"substr\",\n \"valueOf\",\n \"codePointAt\",\n \"includes\",\n \"endsWith\",\n \"normalize\",\n \"repeat\",\n \"startsWith\",\n \"anchor\",\n \"big\",\n \"blink\",\n \"bold\",\n \"fixed\",\n \"fontcolor\",\n \"fontsize\",\n \"italics\",\n \"link\",\n \"small\",\n \"strike\",\n \"sub\",\n \"sup\",\n \"padStart\",\n \"padEnd\",\n \"trimEnd\",\n \"trimStart\",\n \"trimLeft\",\n \"trimRight\",\n \"matchAll\",\n \"__@iterator@109\"\n];\nvar toastVariants = [\n \"warning\",\n \"info\",\n \"success\",\n \"error\",\n \"loading\"\n];\nvar tooltipPlacements = [\n \"top\",\n \"bottom\",\n \"start\",\n \"end\",\n \"top-start\",\n \"top-end\",\n \"bottom-start\",\n \"bottom-end\",\n \"start-top\",\n \"start-bottom\",\n \"end-top\",\n \"end-bottom\"\n];\nvar bannerInnerShadowOptions = [\"none\", \"subtle\"];\nvar configurableComponentNames = [\n \"avatar\",\n \"badge\",\n \"button\",\n \"checkbox\",\n \"chip\",\n \"divider\",\n \"iconButton\",\n \"input\",\n \"link\",\n \"menu\",\n \"radio\",\n \"switch\",\n \"toast\",\n \"tooltip\"\n];\nvar fontIds = [\n \"centra-no2\",\n \"gelica\",\n \"yas\",\n \"inter\",\n \"roboto-mono\",\n \"yahoo-sans\",\n \"yahoo-sans-cr4\",\n \"yahoo-product-sans\",\n \"yahoo-product-sans-extended\",\n \"yahoo-sans-condensed\",\n \"yahoo-serif-display\",\n \"yahoo-serif-text\"\n];\nvar fontUrls = [\n \"https://s.yimg.com/bw/fonts/centra-no2-hairline.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-hairline-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-thin.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-thin-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-light.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-light-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-book.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-book-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-medium.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-medium-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-bold.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-bold-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-extrabold.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-extrabold-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-black.woff2\",\n \"https://s.yimg.com/bw/fonts/centra-no2-black-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-extralight.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-extralight-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-light.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-light-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-regular.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-regular-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-medium.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-medium-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-semibold.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-semibold-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-bold.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-bold-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-black.woff2\",\n \"https://s.yimg.com/bw/fonts/gelica-black-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/yas-latin1-normal-no-italic-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/inter-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-100.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-100-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-300.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-300-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-400.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-400-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-500.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-500-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-700.woff2\",\n \"https://s.yimg.com/bw/fonts/roboto-mono-700-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-sans-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-sans-cr4-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-product-sans-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/YahooPd_Eval202412-v1.1.0.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-sans-condensed-vf.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-light.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-regular.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-bold.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-extrabold.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-display-black.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-text-regular.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-text-italic.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-text-bold.woff2\",\n \"https://s.yimg.com/bw/fonts/yahoo-serif-text-bold-italic.woff2\"\n];\nexport { typographyStyleProperties, tshirtSizes, tooltipPlacements, toastVariants, toastSizes, textVariantsWithoutEmphasized, textVariantsUi, textVariantsTypography, textVariants, textTransforms, textProperties, textDecorationLines, switchSizes, spectrumColors, spacingMap, spacingAliases, sortPalette, shadowVariantsWithInvert, shadowVariantsInvert, shadowVariants, shadowVariantConfigs, shadowSpreadRadiusMap, shadowSpreadRadii, shadowPaletteColors, shadowOpacityMap, shadowOpacities, shadowOffsets, shadowOffsetMap, shadowColors, scaleModes, scaleEffects, regionModes, positiveIntegers, percentageSteps, palette, opacitySteps, opacityMap, motionVariants, motionVariantSpeeds, motionSpringConfigOptions, linkVariants, linkTextVariants, linePaletteColors, lineColors, inputSizes, iconVariants, iconSizes, iconButtonSizes, hues, hueSteps, foregroundPaletteColors, foregroundColors, fontWeights, fontUrls, fontIds, fontAliases, elevationShadowLayerCount, elevationLevels, elevationInsetShadowLayerCount, elevationAliases, configurableComponentNames, colorModes, chipVariants, chipSizes, checkboxVariants, checkboxSizes, buttonVariantsTertiary, buttonVariantsSecondary, buttonVariantsPrimary, buttonVariantsFlat, buttonVariants, buttonSizes, buttonPalettes, buttonIconSvgSize, breakpoints, borderWidthsWithElevation, borderWidths, borderRadii, bannerInnerShadowOptions, badgeVariants, badgeSizes, backgroundPaletteColors, backgroundColors, avatarSizes, avatarShapes, alwaysPaletteAliases };\n"],"mappings":";AA6CA,IAAI,mBAAmB;CACnB;CACA;CACA;CACA;CACA;CACA;CACH;AA6WD,IAAI,0BAA0B;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AACD,IAAI,0BAA0B;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AACD,IAAI,oBAAoB;CACpB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AACD,IAAI,uBAAuB;CACvB;CACA;CACA;CACA;CACA;CACA;CACH;AAyVD,IAAI,eAAe;CACf;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AACD,IAAI,eAAe,SAAS,OAAO,YAAY,KAAK;AACpD,IAAI,aAAa,YAAY,aAAa,KAAK,QAAQ,CAAC,KAAK,GAAG,SAAS,IAAI,GAAG,MAAM,CAAC,CAAC;AACjE;CACnB,GAAG;CACH,GAAG;CACH,GAAG;CACN;AACsB,CAAC,GAAG,yBAAyB,GAAG,qBAAqB;AAC3D;CAAC,GAAG;CAAmB,GAAG;CAAsB,GAAG;CAAiB;AAsDrF,IAAI,eAAe;CACf;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH;AA+CD,IAAI,cAAc;CACd;CACA;CACA;CACA;CACA;CACH;AA2BD,IAAI,iBAAiB;CACjB,OAAO;CACP,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,OAAO;CACP,OAAO;CACV;AACiB;CACd;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,eAAe,KAAK,eAAe,GAAG;AACvD,IAAI,kBAAkB;CAClB,MAAM;CACN,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,MAAM;CACT;AACiB;CACd;CACA;CACA;CACA;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,gBAAgB,KAAK,gBAAgB,GAAG;AACzD,IAAI,kBAAkB;CAClB,MAAM;CACN,MAAM;CACN,QAAQ;CACR,OAAO;CACV;AAO+B,CAC5B,GAPe;CACf;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,gBAAgB,KAAK,gBAAgB,GAE/C,EACH,GAAG,iBAAiB,KAAK,UAAU,SAAS,QAAQ,CACvD;AACD,IAAI,eAAe;CAAE,IAAI;CAAG,IAAI;CAAG,IAAI;CAAG,IAAI;CAAG;AACjC;CACZ;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,aAAa,KAAK,aAAa,GAAG;AAmJnD,IAAI,aAAa;CACb,KAAK;CACL,IAAI;CACJ,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACT;AA4ED,IAAI,kBAAkB;CAClB,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,OAAO;CACP,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,OAAO;CACP,KAAK;CACL,IAAI;CACJ,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,OAAO;CACP,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACT;AA4ED,IAAI,wBAAwB;AAwG5B,IAAI,mBAAmB,YAAY;CAtG/B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAE+B,CAAgB,KAAK,QAAQ,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC;AAetF,IAAI,wBAAwB;CACxB,SAAS;CACT,WAAW;CACX,UAAU;CACb;AACD,IAAI,qBAAqB;CACrB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM;CACb,MAAM,YAAY,sBAAsB,MAAM,OAAO;CACrD,MAAM,YAAY,sBAAsB,MAAM,OAAO;CACrD,IAAI,cAAc,WACd,OAAO,YAAY;CAEvB,OAAO,EAAE,cAAc,EAAE;EAC3B;AACF,IAAI,0BAA0B,mBAAmB,QAAQ,MAAM,EAAE,SAAS,YAAY,CAAC;AACvF,IAAI,yBAAyB,mBAAmB,QAAQ,MAAM,EAAE,SAAS,WAAW,CAAC;AACzD,mBAAmB,QAAQ,MAAM,CAAC,wBAAwB,SAAS,EAAE,IAAI,CAAC,uBAAuB,SAAS,EAAE,CAAC;AACzI,IAAI,0BAA0B;CAC1B,MAAM;CACN,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,MAAM;CACT;AASiB;CACd;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,wBAAwB,KAAK,wBAAwB,GAAG;AAOnD;CAClB;CACA;CACA;CACA;CACA;CACH,CAAC,MAAM,GAAG,MAAM,wBAAwB,KAAK,wBAAwB,GAAG;AAkBzE,IAAI,4BAA4B,CAC5B,WACA,YACH;AACD,IAAI,iBAAiB;CAAC;CAAQ;CAAM;CAAM;CAAM;CAAM;CAAM;CAAM;AAClE,IAAI,uBAAuB;CACvB;CACA;CACA;CACA;CACA;CACA;CACH;AAC8B,CAAC,GAAG,gBAAgB,GAAG,qBAAqB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../modes/dist/index.js"],"sourcesContent":["/*! © 2026 Yahoo, Inc. UDS Modes v0.0.0-development */\n//#region src/index.ts\nconst DEFAULT_COLOR_MODE_FOR_APP = \"system\";\nconst DEFAULT_SCALE_MODE_FOR_APP = \"system\";\nconst DEFAULT_COLOR_MODE = \"light\";\nconst DEFAULT_SCALE_MODE = \"large\";\nconst DEFAULT_HIGH_CONTRAST_MODE = false;\nconst DEFAULT_REGION_MODE = \"🇺🇸 US\";\n//#endregion\nexport { DEFAULT_COLOR_MODE, DEFAULT_COLOR_MODE_FOR_APP, DEFAULT_HIGH_CONTRAST_MODE, DEFAULT_REGION_MODE, DEFAULT_SCALE_MODE, DEFAULT_SCALE_MODE_FOR_APP };\n\n//# sourceMappingURL=index.js.map"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../modes/dist/index.js"],"sourcesContent":["/*! © 2026 Yahoo, Inc. UDS Modes v0.0.0-development */\n//#region src/index.ts\nconst DEFAULT_COLOR_MODE_FOR_APP = \"system\";\nconst DEFAULT_SCALE_MODE_FOR_APP = \"system\";\nconst DEFAULT_COLOR_MODE = \"light\";\nconst DEFAULT_SCALE_MODE = \"large\";\nconst DEFAULT_HIGH_CONTRAST_MODE = false;\nconst DEFAULT_REGION_MODE = \"🇺🇸 US\";\n//#endregion\nexport { DEFAULT_COLOR_MODE, DEFAULT_COLOR_MODE_FOR_APP, DEFAULT_HIGH_CONTRAST_MODE, DEFAULT_REGION_MODE, DEFAULT_SCALE_MODE, DEFAULT_SCALE_MODE_FOR_APP };\n\n//# sourceMappingURL=index.js.map"],"mappings":";;;AAIA,MAAM,qBAAqB;AAC3B,MAAM,qBAAqB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","names":[],"sources":["../src/tailwind/tailwindPlugin.ts"],"sourcesContent":["import { getInputStyles } from './components/getInputStyles';\nimport { udsToTailwindMap } from './defaultTailwindThemeAsUdsConfig';\nimport { a11yPlugin } from './plugins/a11y';\nimport { blurBgFallbackPlugin } from './plugins/blurBgFallback';\nimport { borderRadiusPlugin } from './plugins/borderRadius';\nimport { borderWidthPlugin } from './plugins/borderWidth';\nimport { breakpointsPlugin } from './plugins/breakpoints';\nimport { colorsPlugin } from './plugins/colors';\nimport { componentsPlugin } from './plugins/components';\nimport { elevationPlugin } from './plugins/elevation';\nimport { iconsPlugin } from './plugins/icons';\nimport { inputPlugin } from './plugins/input';\nimport { motionPlugin } from './plugins/motion';\nimport { nestedBorderRadiusPlugin } from './plugins/nestedBorderRadius';\nimport { scaleModePlugin } from './plugins/scaleMode';\nimport { shadowsPlugin } from './plugins/shadows';\nimport { sizingPlugin } from './plugins/sizing';\nimport { spacingPlugin } from './plugins/spacing';\nimport { typographyPlugin } from './plugins/typography';\nimport { composeTailwindPlugins } from './utils/composeTailwindPlugins';\n\nconst tailwindPlugin = composeTailwindPlugins(\n colorsPlugin,\n iconsPlugin,\n a11yPlugin,\n breakpointsPlugin,\n typographyPlugin,\n componentsPlugin,\n shadowsPlugin,\n elevationPlugin,\n motionPlugin,\n spacingPlugin,\n borderWidthPlugin,\n borderRadiusPlugin,\n nestedBorderRadiusPlugin,\n blurBgFallbackPlugin,\n sizingPlugin,\n inputPlugin,\n scaleModePlugin,\n);\n\n/**\n * Use in `tailwindConfig.content` to ensure UDS package(s) styles are\n * included in the app.\n * Note: wrapped in a function so client side usage of the tailwind plugin package\n * (e.g. configurator) doesn't error out on require() being undefined.\n * */\nconst getUDSContent = () => {\n return [require.resolve('@yahoo/uds').replace('/dist/index.cjs', '/dist/**/*.{js,cjs}')];\n};\n\nexport { getInputStyles, getUDSContent, tailwindPlugin, udsToTailwindMap };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAM,iBAAiB,uBACrB,cACA,aACA,YACA,mBACA,kBACA,kBACA,eACA,iBACA,cACA,eACA,mBACA,oBACA,0BACA,sBACA,cACA,aACA,gBACD;;;;;;;AAQD,MAAM,sBAAsB;
|
|
1
|
+
{"version":3,"file":"plugin.js","names":[],"sources":["../src/tailwind/tailwindPlugin.ts"],"sourcesContent":["import { getInputStyles } from './components/getInputStyles';\nimport { udsToTailwindMap } from './defaultTailwindThemeAsUdsConfig';\nimport { a11yPlugin } from './plugins/a11y';\nimport { blurBgFallbackPlugin } from './plugins/blurBgFallback';\nimport { borderRadiusPlugin } from './plugins/borderRadius';\nimport { borderWidthPlugin } from './plugins/borderWidth';\nimport { breakpointsPlugin } from './plugins/breakpoints';\nimport { colorsPlugin } from './plugins/colors';\nimport { componentsPlugin } from './plugins/components';\nimport { elevationPlugin } from './plugins/elevation';\nimport { iconsPlugin } from './plugins/icons';\nimport { inputPlugin } from './plugins/input';\nimport { motionPlugin } from './plugins/motion';\nimport { nestedBorderRadiusPlugin } from './plugins/nestedBorderRadius';\nimport { scaleModePlugin } from './plugins/scaleMode';\nimport { shadowsPlugin } from './plugins/shadows';\nimport { sizingPlugin } from './plugins/sizing';\nimport { spacingPlugin } from './plugins/spacing';\nimport { typographyPlugin } from './plugins/typography';\nimport { composeTailwindPlugins } from './utils/composeTailwindPlugins';\n\nconst tailwindPlugin = composeTailwindPlugins(\n colorsPlugin,\n iconsPlugin,\n a11yPlugin,\n breakpointsPlugin,\n typographyPlugin,\n componentsPlugin,\n shadowsPlugin,\n elevationPlugin,\n motionPlugin,\n spacingPlugin,\n borderWidthPlugin,\n borderRadiusPlugin,\n nestedBorderRadiusPlugin,\n blurBgFallbackPlugin,\n sizingPlugin,\n inputPlugin,\n scaleModePlugin,\n);\n\n/**\n * Use in `tailwindConfig.content` to ensure UDS package(s) styles are\n * included in the app.\n * Note: wrapped in a function so client side usage of the tailwind plugin package\n * (e.g. configurator) doesn't error out on require() being undefined.\n * */\nconst getUDSContent = () => {\n return [require.resolve('@yahoo/uds').replace('/dist/index.cjs', '/dist/**/*.{js,cjs}')];\n};\n\nexport { getInputStyles, getUDSContent, tailwindPlugin, udsToTailwindMap };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAM,iBAAiB,uBACrB,cACA,aACA,YACA,mBACA,kBACA,kBACA,eACA,iBACA,cACA,eACA,mBACA,oBACA,0BACA,sBACA,cACA,aACA,gBACD;;;;;;;AAQD,MAAM,sBAAsB;CAC1B,OAAO,CAAA,UAAS,QAAQ,aAAa,CAAC,QAAQ,mBAAmB,sBAAsB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"purgeCSS.js","names":[],"sources":["../../../src/purger/legacy/purgeCSS.ts"],"sourcesContent":["import { mkdirSync, writeFileSync } from 'node:fs';\nimport path from 'node:path';\n\nimport { print, spinStart, spinStop } from '@yahoo/uds-cli/lib';\nimport type { UniversalTokensConfig } from '@yahoo/uds-config';\nimport {\n DARK_COLOR_MODE_CLASSNAME,\n LARGE_SCALE_MODE_CLASSNAME,\n LIGHT_COLOR_MODE_CLASSNAME,\n MEDIUM_SCALE_MODE_CLASSNAME,\n SMALL_SCALE_MODE_CLASSNAME,\n XLARGE_SCALE_MODE_CLASSNAME,\n XSMALL_SCALE_MODE_CLASSNAME,\n XXLARGE_SCALE_MODE_CLASSNAME,\n XXXLARGE_SCALE_MODE_CLASSNAME,\n} from '@yahoo/uds-css-tokens';\nimport type { ColorModeConfig, ScaleModeConfig } from '@yahoo/uds-types';\nimport fg from 'fast-glob';\nimport type { CallExpression, JsxOpeningElement, JsxSelfClosingElement } from 'ts-morph';\nimport { Node, Project, SyntaxKind, ts } from 'ts-morph';\n\nimport { DEFAULT_ENTRY, resolveEntryPaths } from '../../utils/entryPoints';\nimport { findReferencesAsJsxElements, getUsedPropsInReference } from '../../utils/tsMorph';\n\ntype PropToUsedOptions = [string, string[]];\ntype ComponentToVariants = { [key: string]: PropToUsedOptions[] };\ntype VariantsList = string[];\ntype ComponentDependencies = { [key: string]: string[] };\ntype ComponentToTwClasses = { [key: string]: string };\n\ninterface GeneratedPurgeCSSData {\n variantsList: VariantsList;\n componentToVariants: ComponentToVariants;\n componentToTwClasses: ComponentToTwClasses;\n componentsDependencies: ComponentDependencies;\n}\n\nconst scaleModeToClass: { [key in keyof ScaleModeConfig]: string } = {\n large: LARGE_SCALE_MODE_CLASSNAME,\n medium: MEDIUM_SCALE_MODE_CLASSNAME,\n small: SMALL_SCALE_MODE_CLASSNAME,\n xLarge: XLARGE_SCALE_MODE_CLASSNAME,\n xSmall: XSMALL_SCALE_MODE_CLASSNAME,\n xxLarge: XXLARGE_SCALE_MODE_CLASSNAME,\n xxxLarge: XXXLARGE_SCALE_MODE_CLASSNAME,\n};\n\nconst colorModeToClass: { [key in keyof ColorModeConfig]: string } = {\n dark: DARK_COLOR_MODE_CLASSNAME,\n light: LIGHT_COLOR_MODE_CLASSNAME,\n};\n\ntype SafeList = string[];\ntype ImportsList = string[];\ntype Files = string[];\n\nconst getFiles = async (entry: string | string[]): Promise<Files> => {\n try {\n const workspaceDir = process.env.PWD || process.cwd();\n\n if (!workspaceDir) {\n throw new Error('Workspace directory not found.');\n }\n\n const files = await Promise.all(\n resolveEntryPaths(entry, workspaceDir, DEFAULT_ENTRY).map((entryPath) => {\n if (entryPath.kind === 'file') {\n return [entryPath.absolutePath];\n }\n\n return fg(['**/*.jsx', '**/*.tsx'], {\n cwd: entryPath.absolutePath,\n absolute: true,\n ignore: ['**/node_modules/**'],\n });\n }),\n );\n return [...new Set(files.flat())];\n } catch (error) {\n throw error instanceof Error\n ? error\n : new Error(`Couldn't find the entry directory: ${entry}. Please make sure it exists.`);\n }\n};\n\n/**\n * Find all JSX references for a named import.\n *\n * @example\n * const references = findNamedImportReferences(project, '@yahoo/uds', 'HStack')\n */\nfunction findNamedImportReferences(\n project: Project,\n moduleSpecifierValue: string,\n namedImportName: string,\n) {\n const references: (JsxOpeningElement | JsxSelfClosingElement)[] = [];\n for (const sourceFile of project.getSourceFiles()) {\n for (const importDeclaration of sourceFile.getImportDeclarations()) {\n if (importDeclaration.getModuleSpecifierValue() === moduleSpecifierValue) {\n for (const namedImport of importDeclaration.getNamedImports()) {\n if (namedImport.getName() === namedImportName) {\n const identifier = namedImport.getFirstDescendantByKindOrThrow(\n ts.SyntaxKind.Identifier,\n );\n\n references.push(...findReferencesAsJsxElements(identifier));\n }\n }\n }\n }\n }\n\n return references;\n}\n\n/**\n * Given a file it returns the list of imports from @yahoo/uds\n */\nconst parseFiles = (project: Project, files: Files): ImportsList => {\n const importsSet = new Set();\n\n const importsPerFile: string[] = files\n .map((file: string) => {\n const sourceFile = project.getSourceFile(file);\n\n const udsImports =\n sourceFile\n ?.getImportDeclarations()\n .filter((declaration) => {\n return (\n declaration.getModuleSpecifier().getText().includes('@yahoo/uds') ||\n declaration.getModuleSpecifier().getText().includes('@yahoo/uds/experimental')\n );\n })\n .map((declaration) => {\n return declaration.getNamedImports().map((namedImport) => namedImport.getName());\n })\n .flat() ?? [];\n\n return udsImports;\n })\n .flat();\n\n importsPerFile.forEach((item: string) => {\n if (!importsSet.has(item)) {\n importsSet.add(item);\n }\n });\n\n return Array.from(importsSet) as string[];\n};\n\nconst getTailwindSafelist = (\n project: Project,\n componentList: string[],\n variants: Record<string, Record<string, string>>,\n generatedPurgeCssData: GeneratedPurgeCSSData,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>,\n): SafeList => {\n const { variantsList, componentToVariants, componentToTwClasses } = generatedPurgeCssData;\n const safeList: SafeList = [];\n const validVariants = new Set<string>(variantsList);\n // we track the prop name and which values have been used\n const usedProps = new Map<string, Set<string>>();\n componentList.forEach((component: string) => {\n if (isUDSComponent(component, generatedPurgeCssData)) {\n // get the TW classes relevant for each prop\n // these classes are used internally in UDS,\n // they either have been initialized or used by other UDS components\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n componentToVariants[component].forEach(([propName, usedValues]: [string, any]) => {\n if (validVariants.has(propName)) {\n const options: Set<string> = usedProps.get(propName) ?? new Set();\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n usedValues.forEach((val: any) => options.add(val));\n usedProps.set(propName, options);\n }\n });\n\n // scan the project for used props and\n // get the corresponding css for those used props\n getUsedProps(project, component, variants, packageJson).forEach(([propName, usedValues]) => {\n if (validVariants.has(propName)) {\n // This means that an expression has been used (Ex: `<Button size={getSize()} />`)\n // so we need to add all possible options for that prop\n if (usedValues.length === 0) {\n usedValues = Object.keys(variants[propName as keyof typeof variants] ?? {});\n }\n\n const options: Set<string> = usedProps.get(propName) ?? new Set();\n usedValues.forEach((val) => options.add(val));\n usedProps.set(propName, options);\n }\n });\n\n // get the inline TW classes used in each component\n safeList.push(...componentToTwClasses[component].replaceAll('\\\\', '').split(' '));\n }\n });\n\n for (const [propName, usedValues] of usedProps) {\n const variantGroup = variants[propName as keyof typeof variants];\n if (variantGroup) {\n usedValues.forEach((option) => {\n const variantClass = (variantGroup as Record<string, string>)[option];\n if (variantClass) {\n safeList.push(variantClass.replaceAll('\\\\', ''));\n }\n });\n }\n }\n\n for (const [variant, variantOptions] of scanGetStylesReferences(project, variants, packageJson)) {\n const variantGroup = variants[variant as keyof typeof variants];\n if (variantGroup) {\n variantOptions.forEach((option) => {\n const variantClass = (variantGroup as Record<string, string>)[option];\n if (variantClass) {\n safeList.push(variantClass.replaceAll('\\\\', ''));\n }\n });\n }\n }\n\n // Return a deduped list and strip out any empty strings\n return Array.from(new Set(safeList)).filter(Boolean);\n};\n\n/**\n * Get the used props for a given component.\n *\n * @example\n * const usedProps = getUsedProps(project, 'HStack');\n */\nconst getUsedProps = (\n project: Project,\n component: string,\n variants: Record<string, Record<string, string>>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>,\n): Array<[string, string[]]> => {\n const references: (JsxOpeningElement | JsxSelfClosingElement)[] = [];\n references.push(...findNamedImportReferences(project, packageJson.name, component));\n references.push(\n ...findNamedImportReferences(project, `${packageJson.name}/experimental`, component),\n );\n\n const usedProps = references\n .map((reference) => getUsedPropsInReference(reference, variants))\n .flat();\n\n return usedProps;\n};\n\nconst isUDSComponent = (\n component: string,\n { componentToVariants }: GeneratedPurgeCSSData,\n): boolean => {\n return !!componentToVariants[component];\n};\n\nconst saveToFile = (safeList: SafeList, outputPath: string) => {\n const fileContent = `\n //! This file is generated by \\`uds purge\\` from @yahoo/uds\n //! Do not edit directly\n //! If there is issue with this file please report to #ask-uds\n export const safelist = ${JSON.stringify(safeList)};\n `;\n\n // Ensure the output directory exists\n mkdirSync(path.dirname(outputPath), { recursive: true });\n writeFileSync(outputPath, fileContent);\n};\n\nconst getComponentsToConvertToTW = (\n udsImport: ImportsList,\n generatedPurgeCssData: GeneratedPurgeCSSData,\n): string[] => {\n const { componentToVariants, componentsDependencies } = generatedPurgeCssData;\n // filter out just the components\n const components = udsImport.filter((importedItem) => !!componentToVariants[importedItem]);\n const set = new Set();\n components.forEach((component) => {\n if (!set.has(component)) {\n set.add(component);\n }\n if (componentsDependencies[component]) {\n componentsDependencies[component].forEach((dependent: string) => {\n if (!set.has(dependent)) {\n set.add(dependent);\n }\n });\n }\n });\n return Array.from(set) as string[];\n};\n\n/**\n * Get the classes that corresponds to the used modes\n */\nconst getClassesForEnabledThemesAndScales = (): string[] => {\n const classes: string[] = [];\n\n // TODO: Remove this once the config supports toggling colorModes and scaleModes\n if (process.env.ENABLED_SCALE_AND_COLOR_MODES) {\n process.env.ENABLED_SCALE_AND_COLOR_MODES.split(',').map((mode) => {\n mode = mode.trim();\n if (colorModeToClass[mode as keyof ColorModeConfig]) {\n classes.push(colorModeToClass[mode as keyof ColorModeConfig]);\n } else if (scaleModeToClass[mode as keyof ScaleModeConfig]) {\n classes.push(scaleModeToClass[mode as keyof ScaleModeConfig]);\n }\n });\n } else {\n // Default: Light, Dark and Large\n classes.push(colorModeToClass.dark);\n classes.push(colorModeToClass.light);\n classes.push(scaleModeToClass.large);\n }\n\n return classes;\n};\n\n/**\n * Scan the source code for all `getStyles` references\n *\n * Note: This currently only works if we are passing a literal object to getStyles.\n *\n * Explanation: They we are able to enfer what css to include is by looking at the properties of the object passed.\n * If something other than an object is passed, we can fallback on the Type, but that would require handling\n * a lot of edge cases (function return type, spread operator, ternary, ...) and each one of these cases will\n * most likely have a sub case. Falling back to the Type will complicate the code a lot is error prone as there\n * is only so much info we can get out of the types as the Users are free to use `any` on their project which will\n * provide no value for us. Hence why having a literal object passed is the best and probably the only sane way\n * to go about this.\n */\nconst scanGetStylesReferences = (\n project: Project,\n variants: Record<string, Record<string, string>>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>,\n): Map<string, Set<string>> => {\n // Find all the references for `getStyles`\n const references: CallExpression[] = [];\n for (const sourceFile of project.getSourceFiles()) {\n for (const importDeclaration of sourceFile.getImportDeclarations()) {\n if (importDeclaration.getModuleSpecifierValue() === packageJson.name) {\n for (const namedImport of importDeclaration.getNamedImports()) {\n if (namedImport.getName() === 'getStyles') {\n const identifier = namedImport.getFirstDescendantByKindOrThrow(\n ts.SyntaxKind.Identifier,\n );\n\n for (const reference of identifier.findReferencesAsNodes()) {\n const node = reference.getFirstAncestor((node) => {\n return Node.isCallExpression(node);\n });\n\n if (node) {\n references.push(node as CallExpression);\n }\n }\n }\n }\n }\n }\n }\n\n const usedProps = new Map<string, Set<string>>();\n for (const reference of references) {\n // TODO: handle the throw, tell users to not use something other than an object when calling `getStyles`\n const objectLiteralExpression = reference.getFirstChildByKindOrThrow(\n SyntaxKind.ObjectLiteralExpression,\n );\n const propertyAssignments = objectLiteralExpression.getDescendantsOfKind(\n SyntaxKind.PropertyAssignment,\n ); // PropertyAssignment is { property: 'test' }\n const shorthandPropertyAssignments = objectLiteralExpression.getDescendantsOfKind(\n SyntaxKind.ShorthandPropertyAssignment,\n ); // ShorthandPropertyAssignment is { property }\n // TODO: handle spread assignment\n propertyAssignments.forEach((propertyAssigment) => {\n const identifier = propertyAssigment.getFirstChildByKind(SyntaxKind.Identifier)?.getText();\n // check if we are assigning a string\n const stringLiteral = propertyAssigment\n .getFirstChildByKind(SyntaxKind.StringLiteral)\n ?.getLiteralText();\n if (identifier && !stringLiteral) {\n // this means an expression has been used\n // so we add all the possibilites\n const isvalidVariant = !!variants[identifier as keyof typeof variants];\n const fallback = isvalidVariant\n ? Object.keys(variants[identifier as keyof typeof variants])\n : [];\n usedProps.set(identifier, new Set(fallback));\n }\n if (identifier && stringLiteral) {\n let options: Set<string>;\n if (usedProps.has(identifier)) {\n options = usedProps.get(identifier)!;\n } else {\n options = new Set();\n }\n options.add(stringLiteral);\n usedProps.set(identifier, options);\n }\n });\n shorthandPropertyAssignments.forEach((propertyAssigment) => {\n const identifier = propertyAssigment.getFirstChildByKind(SyntaxKind.Identifier)?.getText();\n if (identifier) {\n usedProps.set(identifier, new Set());\n }\n });\n }\n\n return usedProps;\n};\n\ntype PurgeOptions = {\n config?: string;\n output?: string;\n entry?: string | string[];\n optimized?: string | boolean;\n};\n\nconst applyPurgeDefaults = (\n options: PurgeOptions = {},\n): Required<Pick<PurgeOptions, 'config' | 'output' | 'entry'>> => ({\n config: options.config ?? process.env.UDS_OUT_FILE ?? './uds.config.ts',\n output: options.output ?? 'dist/safelist.ts',\n entry: options.entry ?? DEFAULT_ENTRY,\n});\n\nasync function purge(\n variants: Record<string, Record<string, string>>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>,\n generatedPurgeCssData: GeneratedPurgeCSSData,\n options: PurgeOptions = {},\n) {\n const { config: configPath, output, entry } = applyPurgeDefaults(options);\n const workspaceDir = process.env.PWD || process.cwd();\n if (!workspaceDir) {\n throw new Error('Workspace directory not found.');\n }\n const srcDir = path.join(workspaceDir, '/tsconfig.json');\n const project = new Project({\n tsConfigFilePath: srcDir,\n });\n const outputFilePath = path.join(workspaceDir, output);\n\n // // we need to load the UDS config\n const configAbsolutePath = path.join(workspaceDir, configPath);\n // The config is currently unused because we haven't implemented the feature to toggle the color and scale modes\n // in the configurator. This is a placeholder for when we do, so we can purge the unused classes.\n let config: { config: UniversalTokensConfig } | undefined;\n try {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n config = await import(configAbsolutePath);\n } catch {\n throw new Error(\n \"Couldn't load the UDS config. Make sure you have uds.config.ts in the root of your project.\",\n );\n }\n spinStart('Getting used UDS components...');\n // 1. Get all files from the current dir\n print('Loading the project...');\n const files = await getFiles(entry);\n // 2. For each file get the imports;\n print('Going through the imports...');\n const udsImports = parseFiles(project, files);\n // 3. Now that we have the imported components\n print('Finding all the components imported from UDS...');\n const udsComponents = getComponentsToConvertToTW(udsImports, generatedPurgeCssData);\n // 4. Generate the CSS we need\n print('🧑🍳 Cooking...');\n const safeList = getTailwindSafelist(\n project,\n udsComponents,\n variants,\n generatedPurgeCssData,\n packageJson,\n );\n const themesAndScalesClasses = getClassesForEnabledThemesAndScales();\n // 5. Write the allowlist to a file\n saveToFile(safeList.concat(themesAndScalesClasses), outputFilePath);\n spinStop('Generated your safelist!');\n}\n\nexport {\n applyPurgeDefaults,\n findNamedImportReferences,\n type GeneratedPurgeCSSData,\n getClassesForEnabledThemesAndScales,\n getComponentsToConvertToTW,\n getTailwindSafelist,\n getUsedProps,\n isUDSComponent,\n parseFiles,\n purge,\n type PurgeOptions,\n scanGetStylesReferences,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"purgeCSS.js","names":[],"sources":["../../../src/purger/legacy/purgeCSS.ts"],"sourcesContent":["import { mkdirSync, writeFileSync } from 'node:fs';\nimport path from 'node:path';\n\nimport { print, spinStart, spinStop } from '@yahoo/uds-cli/lib';\nimport type { UniversalTokensConfig } from '@yahoo/uds-config';\nimport {\n DARK_COLOR_MODE_CLASSNAME,\n LARGE_SCALE_MODE_CLASSNAME,\n LIGHT_COLOR_MODE_CLASSNAME,\n MEDIUM_SCALE_MODE_CLASSNAME,\n SMALL_SCALE_MODE_CLASSNAME,\n XLARGE_SCALE_MODE_CLASSNAME,\n XSMALL_SCALE_MODE_CLASSNAME,\n XXLARGE_SCALE_MODE_CLASSNAME,\n XXXLARGE_SCALE_MODE_CLASSNAME,\n} from '@yahoo/uds-css-tokens';\nimport type { ColorModeConfig, ScaleModeConfig } from '@yahoo/uds-types';\nimport fg from 'fast-glob';\nimport type { CallExpression, JsxOpeningElement, JsxSelfClosingElement } from 'ts-morph';\nimport { Node, Project, SyntaxKind, ts } from 'ts-morph';\n\nimport { DEFAULT_ENTRY, resolveEntryPaths } from '../../utils/entryPoints';\nimport { findReferencesAsJsxElements, getUsedPropsInReference } from '../../utils/tsMorph';\n\ntype PropToUsedOptions = [string, string[]];\ntype ComponentToVariants = { [key: string]: PropToUsedOptions[] };\ntype VariantsList = string[];\ntype ComponentDependencies = { [key: string]: string[] };\ntype ComponentToTwClasses = { [key: string]: string };\n\ninterface GeneratedPurgeCSSData {\n variantsList: VariantsList;\n componentToVariants: ComponentToVariants;\n componentToTwClasses: ComponentToTwClasses;\n componentsDependencies: ComponentDependencies;\n}\n\nconst scaleModeToClass: { [key in keyof ScaleModeConfig]: string } = {\n large: LARGE_SCALE_MODE_CLASSNAME,\n medium: MEDIUM_SCALE_MODE_CLASSNAME,\n small: SMALL_SCALE_MODE_CLASSNAME,\n xLarge: XLARGE_SCALE_MODE_CLASSNAME,\n xSmall: XSMALL_SCALE_MODE_CLASSNAME,\n xxLarge: XXLARGE_SCALE_MODE_CLASSNAME,\n xxxLarge: XXXLARGE_SCALE_MODE_CLASSNAME,\n};\n\nconst colorModeToClass: { [key in keyof ColorModeConfig]: string } = {\n dark: DARK_COLOR_MODE_CLASSNAME,\n light: LIGHT_COLOR_MODE_CLASSNAME,\n};\n\ntype SafeList = string[];\ntype ImportsList = string[];\ntype Files = string[];\n\nconst getFiles = async (entry: string | string[]): Promise<Files> => {\n try {\n const workspaceDir = process.env.PWD || process.cwd();\n\n if (!workspaceDir) {\n throw new Error('Workspace directory not found.');\n }\n\n const files = await Promise.all(\n resolveEntryPaths(entry, workspaceDir, DEFAULT_ENTRY).map((entryPath) => {\n if (entryPath.kind === 'file') {\n return [entryPath.absolutePath];\n }\n\n return fg(['**/*.jsx', '**/*.tsx'], {\n cwd: entryPath.absolutePath,\n absolute: true,\n ignore: ['**/node_modules/**'],\n });\n }),\n );\n return [...new Set(files.flat())];\n } catch (error) {\n throw error instanceof Error\n ? error\n : new Error(`Couldn't find the entry directory: ${entry}. Please make sure it exists.`);\n }\n};\n\n/**\n * Find all JSX references for a named import.\n *\n * @example\n * const references = findNamedImportReferences(project, '@yahoo/uds', 'HStack')\n */\nfunction findNamedImportReferences(\n project: Project,\n moduleSpecifierValue: string,\n namedImportName: string,\n) {\n const references: (JsxOpeningElement | JsxSelfClosingElement)[] = [];\n for (const sourceFile of project.getSourceFiles()) {\n for (const importDeclaration of sourceFile.getImportDeclarations()) {\n if (importDeclaration.getModuleSpecifierValue() === moduleSpecifierValue) {\n for (const namedImport of importDeclaration.getNamedImports()) {\n if (namedImport.getName() === namedImportName) {\n const identifier = namedImport.getFirstDescendantByKindOrThrow(\n ts.SyntaxKind.Identifier,\n );\n\n references.push(...findReferencesAsJsxElements(identifier));\n }\n }\n }\n }\n }\n\n return references;\n}\n\n/**\n * Given a file it returns the list of imports from @yahoo/uds\n */\nconst parseFiles = (project: Project, files: Files): ImportsList => {\n const importsSet = new Set();\n\n const importsPerFile: string[] = files\n .map((file: string) => {\n const sourceFile = project.getSourceFile(file);\n\n const udsImports =\n sourceFile\n ?.getImportDeclarations()\n .filter((declaration) => {\n return (\n declaration.getModuleSpecifier().getText().includes('@yahoo/uds') ||\n declaration.getModuleSpecifier().getText().includes('@yahoo/uds/experimental')\n );\n })\n .map((declaration) => {\n return declaration.getNamedImports().map((namedImport) => namedImport.getName());\n })\n .flat() ?? [];\n\n return udsImports;\n })\n .flat();\n\n importsPerFile.forEach((item: string) => {\n if (!importsSet.has(item)) {\n importsSet.add(item);\n }\n });\n\n return Array.from(importsSet) as string[];\n};\n\nconst getTailwindSafelist = (\n project: Project,\n componentList: string[],\n variants: Record<string, Record<string, string>>,\n generatedPurgeCssData: GeneratedPurgeCSSData,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>,\n): SafeList => {\n const { variantsList, componentToVariants, componentToTwClasses } = generatedPurgeCssData;\n const safeList: SafeList = [];\n const validVariants = new Set<string>(variantsList);\n // we track the prop name and which values have been used\n const usedProps = new Map<string, Set<string>>();\n componentList.forEach((component: string) => {\n if (isUDSComponent(component, generatedPurgeCssData)) {\n // get the TW classes relevant for each prop\n // these classes are used internally in UDS,\n // they either have been initialized or used by other UDS components\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n componentToVariants[component].forEach(([propName, usedValues]: [string, any]) => {\n if (validVariants.has(propName)) {\n const options: Set<string> = usedProps.get(propName) ?? new Set();\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n usedValues.forEach((val: any) => options.add(val));\n usedProps.set(propName, options);\n }\n });\n\n // scan the project for used props and\n // get the corresponding css for those used props\n getUsedProps(project, component, variants, packageJson).forEach(([propName, usedValues]) => {\n if (validVariants.has(propName)) {\n // This means that an expression has been used (Ex: `<Button size={getSize()} />`)\n // so we need to add all possible options for that prop\n if (usedValues.length === 0) {\n usedValues = Object.keys(variants[propName as keyof typeof variants] ?? {});\n }\n\n const options: Set<string> = usedProps.get(propName) ?? new Set();\n usedValues.forEach((val) => options.add(val));\n usedProps.set(propName, options);\n }\n });\n\n // get the inline TW classes used in each component\n safeList.push(...componentToTwClasses[component].replaceAll('\\\\', '').split(' '));\n }\n });\n\n for (const [propName, usedValues] of usedProps) {\n const variantGroup = variants[propName as keyof typeof variants];\n if (variantGroup) {\n usedValues.forEach((option) => {\n const variantClass = (variantGroup as Record<string, string>)[option];\n if (variantClass) {\n safeList.push(variantClass.replaceAll('\\\\', ''));\n }\n });\n }\n }\n\n for (const [variant, variantOptions] of scanGetStylesReferences(project, variants, packageJson)) {\n const variantGroup = variants[variant as keyof typeof variants];\n if (variantGroup) {\n variantOptions.forEach((option) => {\n const variantClass = (variantGroup as Record<string, string>)[option];\n if (variantClass) {\n safeList.push(variantClass.replaceAll('\\\\', ''));\n }\n });\n }\n }\n\n // Return a deduped list and strip out any empty strings\n return Array.from(new Set(safeList)).filter(Boolean);\n};\n\n/**\n * Get the used props for a given component.\n *\n * @example\n * const usedProps = getUsedProps(project, 'HStack');\n */\nconst getUsedProps = (\n project: Project,\n component: string,\n variants: Record<string, Record<string, string>>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>,\n): Array<[string, string[]]> => {\n const references: (JsxOpeningElement | JsxSelfClosingElement)[] = [];\n references.push(...findNamedImportReferences(project, packageJson.name, component));\n references.push(\n ...findNamedImportReferences(project, `${packageJson.name}/experimental`, component),\n );\n\n const usedProps = references\n .map((reference) => getUsedPropsInReference(reference, variants))\n .flat();\n\n return usedProps;\n};\n\nconst isUDSComponent = (\n component: string,\n { componentToVariants }: GeneratedPurgeCSSData,\n): boolean => {\n return !!componentToVariants[component];\n};\n\nconst saveToFile = (safeList: SafeList, outputPath: string) => {\n const fileContent = `\n //! This file is generated by \\`uds purge\\` from @yahoo/uds\n //! Do not edit directly\n //! If there is issue with this file please report to #ask-uds\n export const safelist = ${JSON.stringify(safeList)};\n `;\n\n // Ensure the output directory exists\n mkdirSync(path.dirname(outputPath), { recursive: true });\n writeFileSync(outputPath, fileContent);\n};\n\nconst getComponentsToConvertToTW = (\n udsImport: ImportsList,\n generatedPurgeCssData: GeneratedPurgeCSSData,\n): string[] => {\n const { componentToVariants, componentsDependencies } = generatedPurgeCssData;\n // filter out just the components\n const components = udsImport.filter((importedItem) => !!componentToVariants[importedItem]);\n const set = new Set();\n components.forEach((component) => {\n if (!set.has(component)) {\n set.add(component);\n }\n if (componentsDependencies[component]) {\n componentsDependencies[component].forEach((dependent: string) => {\n if (!set.has(dependent)) {\n set.add(dependent);\n }\n });\n }\n });\n return Array.from(set) as string[];\n};\n\n/**\n * Get the classes that corresponds to the used modes\n */\nconst getClassesForEnabledThemesAndScales = (): string[] => {\n const classes: string[] = [];\n\n // TODO: Remove this once the config supports toggling colorModes and scaleModes\n if (process.env.ENABLED_SCALE_AND_COLOR_MODES) {\n process.env.ENABLED_SCALE_AND_COLOR_MODES.split(',').map((mode) => {\n mode = mode.trim();\n if (colorModeToClass[mode as keyof ColorModeConfig]) {\n classes.push(colorModeToClass[mode as keyof ColorModeConfig]);\n } else if (scaleModeToClass[mode as keyof ScaleModeConfig]) {\n classes.push(scaleModeToClass[mode as keyof ScaleModeConfig]);\n }\n });\n } else {\n // Default: Light, Dark and Large\n classes.push(colorModeToClass.dark);\n classes.push(colorModeToClass.light);\n classes.push(scaleModeToClass.large);\n }\n\n return classes;\n};\n\n/**\n * Scan the source code for all `getStyles` references\n *\n * Note: This currently only works if we are passing a literal object to getStyles.\n *\n * Explanation: They we are able to enfer what css to include is by looking at the properties of the object passed.\n * If something other than an object is passed, we can fallback on the Type, but that would require handling\n * a lot of edge cases (function return type, spread operator, ternary, ...) and each one of these cases will\n * most likely have a sub case. Falling back to the Type will complicate the code a lot is error prone as there\n * is only so much info we can get out of the types as the Users are free to use `any` on their project which will\n * provide no value for us. Hence why having a literal object passed is the best and probably the only sane way\n * to go about this.\n */\nconst scanGetStylesReferences = (\n project: Project,\n variants: Record<string, Record<string, string>>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>,\n): Map<string, Set<string>> => {\n // Find all the references for `getStyles`\n const references: CallExpression[] = [];\n for (const sourceFile of project.getSourceFiles()) {\n for (const importDeclaration of sourceFile.getImportDeclarations()) {\n if (importDeclaration.getModuleSpecifierValue() === packageJson.name) {\n for (const namedImport of importDeclaration.getNamedImports()) {\n if (namedImport.getName() === 'getStyles') {\n const identifier = namedImport.getFirstDescendantByKindOrThrow(\n ts.SyntaxKind.Identifier,\n );\n\n for (const reference of identifier.findReferencesAsNodes()) {\n const node = reference.getFirstAncestor((node) => {\n return Node.isCallExpression(node);\n });\n\n if (node) {\n references.push(node as CallExpression);\n }\n }\n }\n }\n }\n }\n }\n\n const usedProps = new Map<string, Set<string>>();\n for (const reference of references) {\n // TODO: handle the throw, tell users to not use something other than an object when calling `getStyles`\n const objectLiteralExpression = reference.getFirstChildByKindOrThrow(\n SyntaxKind.ObjectLiteralExpression,\n );\n const propertyAssignments = objectLiteralExpression.getDescendantsOfKind(\n SyntaxKind.PropertyAssignment,\n ); // PropertyAssignment is { property: 'test' }\n const shorthandPropertyAssignments = objectLiteralExpression.getDescendantsOfKind(\n SyntaxKind.ShorthandPropertyAssignment,\n ); // ShorthandPropertyAssignment is { property }\n // TODO: handle spread assignment\n propertyAssignments.forEach((propertyAssigment) => {\n const identifier = propertyAssigment.getFirstChildByKind(SyntaxKind.Identifier)?.getText();\n // check if we are assigning a string\n const stringLiteral = propertyAssigment\n .getFirstChildByKind(SyntaxKind.StringLiteral)\n ?.getLiteralText();\n if (identifier && !stringLiteral) {\n // this means an expression has been used\n // so we add all the possibilites\n const isvalidVariant = !!variants[identifier as keyof typeof variants];\n const fallback = isvalidVariant\n ? Object.keys(variants[identifier as keyof typeof variants])\n : [];\n usedProps.set(identifier, new Set(fallback));\n }\n if (identifier && stringLiteral) {\n let options: Set<string>;\n if (usedProps.has(identifier)) {\n options = usedProps.get(identifier)!;\n } else {\n options = new Set();\n }\n options.add(stringLiteral);\n usedProps.set(identifier, options);\n }\n });\n shorthandPropertyAssignments.forEach((propertyAssigment) => {\n const identifier = propertyAssigment.getFirstChildByKind(SyntaxKind.Identifier)?.getText();\n if (identifier) {\n usedProps.set(identifier, new Set());\n }\n });\n }\n\n return usedProps;\n};\n\ntype PurgeOptions = {\n config?: string;\n output?: string;\n entry?: string | string[];\n optimized?: string | boolean;\n};\n\nconst applyPurgeDefaults = (\n options: PurgeOptions = {},\n): Required<Pick<PurgeOptions, 'config' | 'output' | 'entry'>> => ({\n config: options.config ?? process.env.UDS_OUT_FILE ?? './uds.config.ts',\n output: options.output ?? 'dist/safelist.ts',\n entry: options.entry ?? DEFAULT_ENTRY,\n});\n\nasync function purge(\n variants: Record<string, Record<string, string>>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>,\n generatedPurgeCssData: GeneratedPurgeCSSData,\n options: PurgeOptions = {},\n) {\n const { config: configPath, output, entry } = applyPurgeDefaults(options);\n const workspaceDir = process.env.PWD || process.cwd();\n if (!workspaceDir) {\n throw new Error('Workspace directory not found.');\n }\n const srcDir = path.join(workspaceDir, '/tsconfig.json');\n const project = new Project({\n tsConfigFilePath: srcDir,\n });\n const outputFilePath = path.join(workspaceDir, output);\n\n // // we need to load the UDS config\n const configAbsolutePath = path.join(workspaceDir, configPath);\n // The config is currently unused because we haven't implemented the feature to toggle the color and scale modes\n // in the configurator. This is a placeholder for when we do, so we can purge the unused classes.\n let config: { config: UniversalTokensConfig } | undefined;\n try {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n config = await import(configAbsolutePath);\n } catch {\n throw new Error(\n \"Couldn't load the UDS config. Make sure you have uds.config.ts in the root of your project.\",\n );\n }\n spinStart('Getting used UDS components...');\n // 1. Get all files from the current dir\n print('Loading the project...');\n const files = await getFiles(entry);\n // 2. For each file get the imports;\n print('Going through the imports...');\n const udsImports = parseFiles(project, files);\n // 3. Now that we have the imported components\n print('Finding all the components imported from UDS...');\n const udsComponents = getComponentsToConvertToTW(udsImports, generatedPurgeCssData);\n // 4. Generate the CSS we need\n print('🧑🍳 Cooking...');\n const safeList = getTailwindSafelist(\n project,\n udsComponents,\n variants,\n generatedPurgeCssData,\n packageJson,\n );\n const themesAndScalesClasses = getClassesForEnabledThemesAndScales();\n // 5. Write the allowlist to a file\n saveToFile(safeList.concat(themesAndScalesClasses), outputFilePath);\n spinStop('Generated your safelist!');\n}\n\nexport {\n applyPurgeDefaults,\n findNamedImportReferences,\n type GeneratedPurgeCSSData,\n getClassesForEnabledThemesAndScales,\n getComponentsToConvertToTW,\n getTailwindSafelist,\n getUsedProps,\n isUDSComponent,\n parseFiles,\n purge,\n type PurgeOptions,\n scanGetStylesReferences,\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"purgeFromCode.js","names":[],"sources":["../../../src/purger/legacy/purgeFromCode.ts"],"sourcesContent":["import {\n DARK_COLOR_MODE_CLASSNAME,\n LARGE_SCALE_MODE_CLASSNAME,\n LIGHT_COLOR_MODE_CLASSNAME,\n} from '@yahoo/uds-css-tokens';\nimport { Project, ts } from 'ts-morph';\n\nimport type { GeneratedPurgeCSSData } from './purgeCSS';\nimport { getComponentsToConvertToTW, getTailwindSafelist, parseFiles } from './purgeCSS';\n\ninterface PurgeFromCodeResult {\n safelist: string[];\n imports: string[];\n components: string[];\n error?: string;\n}\n\ninterface PurgeFromCodeOptions {\n colorModes?: ('dark' | 'light')[];\n variants: Record<string, Record<string, string>>;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>;\n generatedPurgeCssData: GeneratedPurgeCSSData;\n}\n\nconst COLOR_MODE_CLASSES: Record<string, string> = {\n dark: DARK_COLOR_MODE_CLASSNAME,\n light: LIGHT_COLOR_MODE_CLASSNAME,\n};\n\n/**\n * Run the legacy purger on a code string and return the safelist.\n * This uses the same logic as the CLI `uds purge` command but with in-memory files.\n *\n * @param code - The TypeScript/TSX code to analyze\n * @param options - Configuration options for color modes\n * @returns The purge result containing safelist, imports, and components\n */\nfunction purgeFromCode(code: string, options: PurgeFromCodeOptions): PurgeFromCodeResult {\n const { colorModes = ['dark', 'light'] } = options;\n\n try {\n const project = new Project({\n useInMemoryFileSystem: true,\n compilerOptions: {\n jsx: ts.JsxEmit.ReactJSX,\n jsxImportSource: 'react',\n target: ts.ScriptTarget.ESNext,\n module: ts.ModuleKind.ESNext,\n moduleResolution: ts.ModuleResolutionKind.NodeJs,\n esModuleInterop: true,\n strict: true,\n },\n });\n\n const sourceFile = project.createSourceFile('user-code.tsx', code);\n\n const imports = parseFiles(project, [sourceFile.getFilePath()]);\n const components = getComponentsToConvertToTW(imports, options.generatedPurgeCssData);\n const safelist = getTailwindSafelist(\n project,\n components,\n options.variants,\n options.generatedPurgeCssData,\n options.packageJson,\n );\n\n // Add color mode classes\n for (const mode of colorModes) {\n const cls = COLOR_MODE_CLASSES[mode];\n if (cls) {\n safelist.push(cls);\n }\n }\n\n // Always include large scale mode\n safelist.push(LARGE_SCALE_MODE_CLASSNAME);\n\n return {\n safelist: Array.from(new Set(safelist)),\n imports,\n components,\n };\n } catch (error) {\n return {\n safelist: [],\n imports: [],\n components: [],\n error: error instanceof Error ? error.message : 'Unknown error',\n };\n }\n}\n\nexport type { PurgeFromCodeOptions, PurgeFromCodeResult };\nexport { purgeFromCode };\n"],"mappings":";;;;;AAyBA,MAAM,qBAA6C;CACjD,MAAM;CACN,OAAO;CACR;;;;;;;;;AAUD,SAAS,cAAc,MAAc,SAAoD;CACvF,MAAM,EAAE,aAAa,CAAC,QAAQ,QAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"purgeFromCode.js","names":[],"sources":["../../../src/purger/legacy/purgeFromCode.ts"],"sourcesContent":["import {\n DARK_COLOR_MODE_CLASSNAME,\n LARGE_SCALE_MODE_CLASSNAME,\n LIGHT_COLOR_MODE_CLASSNAME,\n} from '@yahoo/uds-css-tokens';\nimport { Project, ts } from 'ts-morph';\n\nimport type { GeneratedPurgeCSSData } from './purgeCSS';\nimport { getComponentsToConvertToTW, getTailwindSafelist, parseFiles } from './purgeCSS';\n\ninterface PurgeFromCodeResult {\n safelist: string[];\n imports: string[];\n components: string[];\n error?: string;\n}\n\ninterface PurgeFromCodeOptions {\n colorModes?: ('dark' | 'light')[];\n variants: Record<string, Record<string, string>>;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n packageJson: Record<string, any>;\n generatedPurgeCssData: GeneratedPurgeCSSData;\n}\n\nconst COLOR_MODE_CLASSES: Record<string, string> = {\n dark: DARK_COLOR_MODE_CLASSNAME,\n light: LIGHT_COLOR_MODE_CLASSNAME,\n};\n\n/**\n * Run the legacy purger on a code string and return the safelist.\n * This uses the same logic as the CLI `uds purge` command but with in-memory files.\n *\n * @param code - The TypeScript/TSX code to analyze\n * @param options - Configuration options for color modes\n * @returns The purge result containing safelist, imports, and components\n */\nfunction purgeFromCode(code: string, options: PurgeFromCodeOptions): PurgeFromCodeResult {\n const { colorModes = ['dark', 'light'] } = options;\n\n try {\n const project = new Project({\n useInMemoryFileSystem: true,\n compilerOptions: {\n jsx: ts.JsxEmit.ReactJSX,\n jsxImportSource: 'react',\n target: ts.ScriptTarget.ESNext,\n module: ts.ModuleKind.ESNext,\n moduleResolution: ts.ModuleResolutionKind.NodeJs,\n esModuleInterop: true,\n strict: true,\n },\n });\n\n const sourceFile = project.createSourceFile('user-code.tsx', code);\n\n const imports = parseFiles(project, [sourceFile.getFilePath()]);\n const components = getComponentsToConvertToTW(imports, options.generatedPurgeCssData);\n const safelist = getTailwindSafelist(\n project,\n components,\n options.variants,\n options.generatedPurgeCssData,\n options.packageJson,\n );\n\n // Add color mode classes\n for (const mode of colorModes) {\n const cls = COLOR_MODE_CLASSES[mode];\n if (cls) {\n safelist.push(cls);\n }\n }\n\n // Always include large scale mode\n safelist.push(LARGE_SCALE_MODE_CLASSNAME);\n\n return {\n safelist: Array.from(new Set(safelist)),\n imports,\n components,\n };\n } catch (error) {\n return {\n safelist: [],\n imports: [],\n components: [],\n error: error instanceof Error ? error.message : 'Unknown error',\n };\n }\n}\n\nexport type { PurgeFromCodeOptions, PurgeFromCodeResult };\nexport { purgeFromCode };\n"],"mappings":";;;;;AAyBA,MAAM,qBAA6C;CACjD,MAAM;CACN,OAAO;CACR;;;;;;;;;AAUD,SAAS,cAAc,MAAc,SAAoD;CACvF,MAAM,EAAE,aAAa,CAAC,QAAQ,QAAQ,KAAK;CAE3C,IAAI;EACF,MAAM,UAAU,IAAI,QAAQ;GAC1B,uBAAuB;GACvB,iBAAiB;IACf,KAAK,GAAG,QAAQ;IAChB,iBAAiB;IACjB,QAAQ,GAAG,aAAa;IACxB,QAAQ,GAAG,WAAW;IACtB,kBAAkB,GAAG,qBAAqB;IAC1C,iBAAiB;IACjB,QAAQ;IACT;GACF,CAAC;EAIF,MAAM,UAAU,WAAW,SAAS,CAFjB,QAAQ,iBAAiB,iBAAiB,KAEd,CAAC,aAAa,CAAC,CAAC;EAC/D,MAAM,aAAa,2BAA2B,SAAS,QAAQ,sBAAsB;EACrF,MAAM,WAAW,oBACf,SACA,YACA,QAAQ,UACR,QAAQ,uBACR,QAAQ,YACT;EAGD,KAAK,MAAM,QAAQ,YAAY;GAC7B,MAAM,MAAM,mBAAmB;GAC/B,IAAI,KACF,SAAS,KAAK,IAAI;;EAKtB,SAAS,KAAK,2BAA2B;EAEzC,OAAO;GACL,UAAU,MAAM,KAAK,IAAI,IAAI,SAAS,CAAC;GACvC;GACA;GACD;UACM,OAAO;EACd,OAAO;GACL,UAAU,EAAE;GACZ,SAAS,EAAE;GACX,YAAY,EAAE;GACd,OAAO,iBAAiB,QAAQ,MAAM,UAAU;GACjD"}
|