@yahoo/uds 3.144.0 → 3.145.0-beta.1
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/automated-config/dist/mapTextVariantFixtureToValue.cjs +1 -1
- package/dist/automated-config/dist/mapTextVariantFixtureToValue.js +1 -1
- package/dist/automated-config/dist/properties.cjs +1 -1
- package/dist/automated-config/dist/properties.js +1 -1
- package/dist/automated-config/dist/utils/coalesceConfigVariant.cjs +1 -1
- package/dist/automated-config/dist/utils/coalesceConfigVariant.js +1 -1
- package/dist/automated-config/dist/utils/mapColorFixtureToValue.cjs +1 -1
- package/dist/automated-config/dist/utils/mapColorFixtureToValue.js +1 -1
- package/dist/cli/commands/purge.cjs +79 -0
- package/dist/{tailwind/dist → cli}/commands/purge.d.cts +4 -5
- package/dist/{tailwind/dist → cli}/commands/purge.d.ts +4 -5
- package/dist/cli/commands/purge.helpers.cjs +21 -0
- package/dist/cli/commands/purge.helpers.d.cts +14 -0
- package/dist/cli/commands/purge.helpers.d.ts +14 -0
- package/dist/cli/commands/purge.helpers.js +18 -0
- package/dist/cli/commands/purge.js +78 -0
- package/dist/cli/commands/sync.cjs +3 -3
- package/dist/cli/commands/sync.js +1 -1
- package/dist/{tailwind/dist/cli → cli}/dist/lib/spinner.cjs +1 -1
- package/dist/cli/dist/lib/spinner.js +56 -0
- package/dist/cli/dist/utils/rules/config.cjs +1 -1
- package/dist/cli/dist/utils/rules/config.js +1 -1
- package/dist/cli/runner.cjs +42 -44
- package/dist/cli/runner.js +41 -44
- package/dist/components/client/Menu/Menu.ItemCheckbox.d.cts +1 -1
- package/dist/components/client/Menu/Menu.ItemCheckbox.d.ts +1 -1
- package/dist/components/client/Popover/UDSPopoverConfigProvider.d.cts +1 -1
- package/dist/components/client/Popover/UDSPopoverConfigProvider.d.ts +1 -1
- package/dist/components/client/Toast/UDSToastConfigProvider.d.cts +1 -1
- package/dist/components/client/Toast/UDSToastConfigProvider.d.ts +1 -1
- package/dist/components/client/Toast/createToast.cjs +3 -3
- package/dist/components/client/Toast/createToast.js +2 -2
- package/dist/components/experimental/index.cjs +0 -18
- package/dist/components/experimental/index.js +1 -13
- package/dist/components/index.cjs +0 -83
- package/dist/components/index.js +1 -78
- package/dist/{tailwind → css}/dist/commands/css.cjs +5 -4
- package/dist/{tailwind → css}/dist/commands/css.helpers.cjs +3 -2
- package/dist/{tailwind → css}/dist/commands/css.helpers.js +3 -4
- package/dist/{tailwind → css}/dist/commands/css.js +5 -6
- package/dist/{tailwind → css}/dist/commands/generateComponentData.d.cts +3 -12
- package/dist/{tailwind → css}/dist/commands/generateComponentData.d.ts +3 -12
- package/dist/{tailwind → css}/dist/css/generate.cjs +11 -10
- package/dist/{tailwind → css}/dist/css/generate.d.cts +2 -3
- package/dist/{tailwind → css}/dist/css/generate.d.ts +2 -3
- package/dist/{tailwind → css}/dist/css/generate.helpers.cjs +12 -11
- package/dist/{tailwind → css}/dist/css/generate.helpers.js +10 -11
- package/dist/{tailwind → css}/dist/css/generate.js +9 -10
- package/dist/{tailwind → css}/dist/css/nodeUtils.cjs +9 -8
- package/dist/{tailwind → css}/dist/css/nodeUtils.js +7 -8
- package/dist/{tailwind → css}/dist/css/perf.cjs +4 -3
- package/dist/{tailwind → css}/dist/css/perf.js +3 -4
- package/dist/{tailwind → css}/dist/css/postcss.cjs +3 -2
- package/dist/{tailwind → css}/dist/css/postcss.helpers.cjs +3 -2
- package/dist/{tailwind → css}/dist/css/postcss.helpers.js +3 -4
- package/dist/{tailwind → css}/dist/css/postcss.js +3 -4
- package/dist/{tailwind → css}/dist/css/runner.cjs +21 -16
- package/dist/{tailwind → css}/dist/css/runner.helpers.cjs +4 -3
- package/dist/{tailwind → css}/dist/css/runner.helpers.js +3 -4
- package/dist/{tailwind → css}/dist/css/runner.js +20 -17
- package/dist/{tailwind → css}/dist/css/theme.cjs +3 -2
- package/dist/{tailwind → css}/dist/css/theme.d.cts +3 -3
- package/dist/{tailwind → css}/dist/css/theme.d.ts +3 -3
- package/dist/{tailwind → css}/dist/css/theme.js +3 -4
- package/dist/{tailwind → css}/dist/css/utils.cjs +4 -3
- package/dist/{tailwind → css}/dist/css/utils.js +4 -5
- package/dist/{tailwind → css}/dist/css/workerPool.cjs +4 -3
- package/dist/{tailwind → css}/dist/css/workerPool.js +3 -4
- package/dist/css/dist/index.d.cts +2 -0
- package/dist/css/dist/index.d.ts +2 -0
- package/dist/{tailwind/dist → css/dist/packages}/automated-config/dist/mapTextVariantFixtureToValue.cjs +4 -3
- package/dist/{tailwind/dist → css/dist/packages}/automated-config/dist/mapTextVariantFixtureToValue.js +4 -5
- package/dist/{tailwind/dist → css/dist/packages}/automated-config/dist/properties.cjs +4 -3
- package/dist/{tailwind/dist → css/dist/packages}/automated-config/dist/properties.js +4 -5
- package/dist/{tailwind/dist → css/dist/packages}/automated-config/dist/utils/mapColorFixtureToValue.cjs +4 -4
- package/dist/{tailwind/dist → css/dist/packages}/automated-config/dist/utils/mapColorFixtureToValue.js +4 -6
- package/dist/{tailwind/dist → css/dist/packages}/cli/dist/lib/colors.cjs +3 -2
- package/dist/{tailwind/dist → css/dist/packages}/cli/dist/lib/colors.js +3 -4
- package/dist/{tailwind/dist → css/dist/packages}/cli/dist/lib/logger.cjs +3 -2
- package/dist/{tailwind/dist → css/dist/packages}/cli/dist/lib/logger.js +3 -4
- package/dist/css/dist/packages/cli/dist/lib/print.cjs +12 -0
- package/dist/css/dist/packages/cli/dist/lib/print.js +12 -0
- package/dist/css/dist/packages/cli/dist/lib/spinner.cjs +58 -0
- package/dist/css/dist/packages/cli/dist/lib/spinner.js +57 -0
- package/dist/{tailwind/dist → css/dist/packages}/config/dist/index.cjs +3 -2
- package/dist/{tailwind/dist → css/dist/packages}/config/dist/index.js +3 -4
- package/dist/css/dist/packages/css-tokens/dist/index.cjs +79 -0
- package/dist/css/dist/packages/css-tokens/dist/index.js +71 -0
- package/dist/css/dist/packages/fixtures/dist/index.cjs +545 -0
- package/dist/css/dist/packages/fixtures/dist/index.js +543 -0
- package/dist/{tailwind/dist → css/dist/packages}/icons/src/safelist.cjs +3 -2
- package/dist/{tailwind/dist → css/dist/packages}/icons/src/safelist.js +3 -4
- package/dist/css/dist/packages/motion-tokens/dist/index.cjs +15 -0
- package/dist/css/dist/packages/motion-tokens/dist/index.js +15 -0
- package/dist/css/dist/packages/palette/dist/index.cjs +36 -0
- package/dist/css/dist/packages/palette/dist/index.js +36 -0
- package/dist/{automated-config/dist/utils → css/dist/packages/utils/dist}/assertUnreachable.cjs +3 -2
- package/dist/{automated-config/dist/utils → css/dist/packages/utils/dist}/assertUnreachable.js +3 -2
- package/dist/{tailwind → css}/dist/purger/optimized/ast/expressions.cjs +6 -5
- package/dist/{tailwind → css}/dist/purger/optimized/ast/expressions.js +4 -5
- package/dist/{tailwind → css}/dist/purger/optimized/purge.cjs +7 -6
- package/dist/{tailwind → css}/dist/purger/optimized/purge.js +5 -6
- package/dist/{tailwind → css}/dist/purger/optimized/purgeFromCode.cjs +4 -3
- package/dist/{tailwind → css}/dist/purger/optimized/purgeFromCode.js +3 -4
- package/dist/{tailwind → css}/dist/purger/optimized/utils/files.cjs +5 -4
- package/dist/{tailwind → css}/dist/purger/optimized/utils/files.js +4 -5
- package/dist/{tailwind → css}/dist/purger/optimized/utils/safelist.cjs +6 -5
- package/dist/{tailwind → css}/dist/purger/optimized/utils/safelist.js +5 -6
- package/dist/{tailwind → css}/dist/runtimeConfig/hookMetadata.cjs +3 -3
- package/dist/{tailwind → css}/dist/runtimeConfig/hookMetadata.js +4 -5
- package/dist/{tailwind → css}/dist/utils/optimizeCSS.cjs +4 -3
- package/dist/{tailwind → css}/dist/utils/optimizeCSS.js +3 -4
- package/dist/fixtures/src/util.cjs +2 -4
- package/dist/fixtures/src/util.js +1 -3
- package/dist/index.cjs +7 -7
- package/dist/index.d.cts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +4 -4
- package/dist/runtime/breakpointsConfig.cjs +3 -3
- package/dist/runtime/breakpointsConfig.js +2 -2
- package/dist/runtime/modalConfig.cjs +2 -2
- package/dist/runtime/modalConfig.js +1 -1
- package/dist/runtime/popoverConfig.cjs +7 -7
- package/dist/runtime/popoverConfig.js +1 -1
- package/dist/runtime/tooltipConfig.cjs +2 -2
- package/dist/runtime/tooltipConfig.js +1 -1
- package/dist/styles/styler.d.cts +52 -52
- package/dist/styles/styler.d.ts +52 -52
- package/dist/tailwind/plugin.cjs +5 -5
- package/dist/tailwind/plugin.d.cts +3 -3
- package/dist/tailwind/plugin.d.ts +3 -3
- package/dist/tailwind/plugin.js +3 -3
- package/dist/tailwind/utils/index.cjs +44 -0
- package/dist/tailwind/utils/index.d.cts +21 -0
- package/dist/tailwind/utils/index.d.ts +21 -0
- package/dist/tailwind/utils/index.js +21 -0
- package/dist/tailwind/utils/node.cjs +11 -0
- package/dist/tailwind/utils/node.d.cts +3 -0
- package/dist/tailwind/utils/node.d.ts +3 -0
- package/dist/tailwind/utils/node.js +3 -0
- package/dist/{tailwind/dist/_virtual/_rolldown/runtime.js → tailwind-internal/dist/_virtual/_rolldown/runtime.cjs} +4 -3
- package/dist/tailwind-internal/dist/_virtual/_rolldown/runtime.js +10 -0
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/generated/generatedConfigs.cjs +3 -2
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/generated/generatedConfigs.js +3 -4
- package/dist/tailwind-internal/dist/automated-config/dist/mapTextVariantFixtureToValue.cjs +19 -0
- package/dist/tailwind-internal/dist/automated-config/dist/mapTextVariantFixtureToValue.js +19 -0
- package/dist/tailwind-internal/dist/automated-config/dist/properties.cjs +532 -0
- package/dist/tailwind-internal/dist/automated-config/dist/properties.js +532 -0
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/utils/generateDefaultClassName.cjs +3 -2
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/utils/generateDefaultClassName.js +3 -4
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/utils/generateSchemaKey.cjs +3 -2
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/utils/generateSchemaKey.js +3 -4
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/utils/index.cjs +4 -3
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/utils/index.js +3 -4
- package/dist/tailwind-internal/dist/automated-config/dist/utils/mapColorFixtureToValue.cjs +26 -0
- package/dist/tailwind-internal/dist/automated-config/dist/utils/mapColorFixtureToValue.js +26 -0
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/utils/variantConfigGuards.cjs +3 -2
- package/dist/{tailwind → tailwind-internal}/dist/automated-config/dist/utils/variantConfigGuards.js +3 -4
- package/dist/tailwind-internal/dist/base/addColorModeVars.cjs +19 -0
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addColorModeVars.js +5 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addColorModeVarsV2.cjs +8 -8
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addColorModeVarsV2.js +5 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addFontFaceDeclarations.cjs +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addFontFaceDeclarations.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addFontVars.cjs +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addFontVars.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addMotionVars.cjs +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addMotionVars.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addScaleModeVars.cjs +5 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/base/addScaleModeVars.js +5 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getFocusRingStyles.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getFocusRingStyles.js +4 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getGroupedTextStyles.cjs +5 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getGroupedTextStyles.js +5 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getHitTargetStyles.cjs +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getHitTargetStyles.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getIconStyles.cjs +3 -2
- package/dist/tailwind-internal/dist/components/getIconStyles.d.cts +11 -0
- package/dist/tailwind-internal/dist/components/getIconStyles.d.ts +11 -0
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getIconStyles.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getInputStyles.cjs +3 -2
- package/dist/tailwind-internal/dist/components/getInputStyles.d.cts +11 -0
- package/dist/tailwind-internal/dist/components/getInputStyles.d.ts +11 -0
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getInputStyles.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getResponsiveTextStyles.cjs +10 -10
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getResponsiveTextStyles.d.cts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getResponsiveTextStyles.d.ts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/getResponsiveTextStyles.js +8 -9
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/types.d.cts +4 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/components/types.d.ts +4 -4
- package/dist/tailwind-internal/dist/config/dist/index.cjs +28570 -0
- package/dist/{tailwind → tailwind-internal}/dist/config/dist/index.d.cts +5 -4
- package/dist/{tailwind → tailwind-internal}/dist/config/dist/index.d.ts +5 -4
- package/dist/tailwind-internal/dist/config/dist/index.js +28570 -0
- package/dist/{tailwind → tailwind-internal}/dist/css-tokens/dist/index.cjs +13 -12
- package/dist/{tailwind → tailwind-internal}/dist/css-tokens/dist/index.js +4 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/defaultTailwindThemeAsUdsConfig.cjs +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/defaultTailwindThemeAsUdsConfig.d.cts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/defaultTailwindThemeAsUdsConfig.d.ts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/defaultTailwindThemeAsUdsConfig.js +3 -4
- package/dist/{tailwind → tailwind-internal}/dist/fixtures/dist/index.cjs +3 -1
- package/dist/{tailwind → tailwind-internal}/dist/fixtures/dist/index.js +3 -3
- package/dist/{tailwind → tailwind-internal}/dist/fonts/dist/index.cjs +3 -2
- package/dist/{tailwind → tailwind-internal}/dist/fonts/dist/index.d.cts +3 -3
- package/dist/{tailwind → tailwind-internal}/dist/fonts/dist/index.d.ts +3 -3
- package/dist/{tailwind → tailwind-internal}/dist/fonts/dist/index.js +3 -4
- package/dist/tailwind-internal/dist/index.d.cts +21 -0
- package/dist/tailwind-internal/dist/index.d.ts +21 -0
- package/dist/{tailwind → tailwind-internal}/dist/modes/dist/index.cjs +3 -2
- package/dist/{tailwind → tailwind-internal}/dist/modes/dist/index.js +3 -4
- package/dist/tailwind-internal/dist/motion-tokens/dist/index.cjs +15 -0
- package/dist/tailwind-internal/dist/motion-tokens/dist/index.js +15 -0
- package/dist/{tailwind → tailwind-internal}/dist/palette/dist/index.cjs +3 -2
- package/dist/{tailwind → tailwind-internal}/dist/palette/dist/index.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/a11y.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/a11y.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/blurBgFallback.cjs +5 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/blurBgFallback.js +4 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/borderRadius.cjs +7 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/borderRadius.js +6 -7
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/borderWidth.cjs +7 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/borderWidth.js +6 -7
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/breakpoints.cjs +7 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/breakpoints.js +6 -7
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/colors.cjs +11 -11
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/colors.js +9 -10
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/components.cjs +7 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/components.js +6 -7
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/elevation.cjs +8 -7
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/elevation.js +7 -8
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/getTailwindAsUdsColors.cjs +5 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/getTailwindAsUdsColors.js +5 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/icons.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/icons.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/input.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/input.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/motion.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/motion.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/nestedBorderRadius.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/nestedBorderRadius.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/scaleMode.cjs +5 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/scaleMode.js +4 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/shadows.cjs +5 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/shadows.js +4 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/sizing.cjs +6 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/sizing.js +5 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/spacing.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/spacing.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/typography.cjs +9 -8
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/plugins/typography.js +8 -9
- package/dist/tailwind-internal/dist/tailwindPlugin.cjs +35 -0
- package/dist/{tailwind/dist/plugin.d.ts → tailwind-internal/dist/tailwindPlugin.d.cts} +5 -7
- package/dist/{tailwind/dist/plugin.d.cts → tailwind-internal/dist/tailwindPlugin.d.ts} +5 -7
- package/dist/tailwind-internal/dist/tailwindPlugin.js +34 -0
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/theme/getFontFamilyTheme.cjs +5 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/theme/getFontFamilyTheme.js +5 -6
- package/dist/{tailwind → tailwind-internal}/dist/types/dist/index.d.cts +3 -2
- package/dist/{tailwind → tailwind-internal}/dist/types/dist/index.d.ts +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/addFontsPlugin.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/addFontsPlugin.d.cts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/addFontsPlugin.d.ts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/addFontsPlugin.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/composeTailwindPlugins.cjs +10 -16
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/composeTailwindPlugins.d.cts +16 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/composeTailwindPlugins.d.ts +16 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/composeTailwindPlugins.js +6 -7
- package/dist/tailwind-internal/dist/utils/dist/assertUnreachable.cjs +9 -0
- package/dist/tailwind-internal/dist/utils/dist/assertUnreachable.js +9 -0
- package/dist/tailwind-internal/dist/utils/dist/entries.cjs +9 -0
- package/dist/tailwind-internal/dist/utils/dist/entries.js +9 -0
- package/dist/{tokens/utils → tailwind-internal/dist/utils/dist}/fromEntries.cjs +3 -2
- package/dist/{tokens/utils → tailwind-internal/dist/utils/dist}/fromEntries.js +3 -1
- package/dist/{tokens/utils → tailwind-internal/dist/utils/dist}/mapValues.cjs +3 -2
- package/dist/{tokens/utils → tailwind-internal/dist/utils/dist}/mapValues.js +3 -1
- package/dist/{tailwind → tailwind-internal}/dist/utils/entryPoints.cjs +8 -5
- package/dist/tailwind-internal/dist/utils/entryPoints.d.cts +21 -0
- package/dist/tailwind-internal/dist/utils/entryPoints.d.ts +21 -0
- package/dist/{tailwind → tailwind-internal}/dist/utils/entryPoints.js +5 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getColorModeStyles.cjs +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getColorModeStyles.d.cts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getColorModeStyles.d.ts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getColorModeStyles.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getElevationStyles.cjs +6 -5
- package/dist/tailwind-internal/dist/utils/getElevationStyles.d.cts +13 -0
- package/dist/tailwind-internal/dist/utils/getElevationStyles.d.ts +13 -0
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getElevationStyles.js +6 -7
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getFontFaceDeclarations.cjs +4 -3
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getFontFaceDeclarations.d.cts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getFontFaceDeclarations.d.ts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getFontFaceDeclarations.js +4 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getFontStyles.cjs +7 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getFontStyles.d.cts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getFontStyles.d.ts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getFontStyles.js +7 -8
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getMotionStyles.cjs +7 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getMotionStyles.d.cts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getMotionStyles.d.ts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getMotionStyles.js +7 -8
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getNestedBorderRadiusUtilities.cjs +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getNestedBorderRadiusUtilities.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getScaleModeStyles.cjs +3 -2
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getScaleModeStyles.d.cts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getScaleModeStyles.d.ts +5 -5
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getScaleModeStyles.js +3 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getShadowPresetValues.cjs +5 -4
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getShadowPresetValues.d.cts +6 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getShadowPresetValues.d.ts +6 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getShadowPresetValues.js +5 -6
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getShadowStyles.cjs +6 -5
- package/dist/tailwind-internal/dist/utils/getShadowStyles.d.cts +18 -0
- package/dist/tailwind-internal/dist/utils/getShadowStyles.d.ts +18 -0
- package/dist/{tailwind/dist/tailwind → tailwind-internal/dist}/utils/getShadowStyles.js +6 -7
- package/dist/tailwind-internal/dist/utils/getShadowVars.cjs +24 -0
- package/dist/tailwind-internal/dist/utils/getShadowVars.d.cts +8 -0
- package/dist/tailwind-internal/dist/utils/getShadowVars.d.ts +8 -0
- package/dist/tailwind-internal/dist/utils/getShadowVars.js +24 -0
- package/dist/{tailwind → tailwind-internal}/dist/utils/opacity.cjs +6 -6
- package/dist/tailwind-internal/dist/utils/opacity.d.cts +20 -0
- package/dist/tailwind-internal/dist/utils/opacity.d.ts +20 -0
- package/dist/{tailwind → tailwind-internal}/dist/utils/opacity.js +3 -4
- package/dist/{tailwind → tailwind-internal}/dist/utils/parseTokens.cjs +6 -5
- package/dist/{tailwind → tailwind-internal}/dist/utils/parseTokens.d.cts +3 -3
- package/dist/{tailwind → tailwind-internal}/dist/utils/parseTokens.d.ts +3 -3
- package/dist/{tailwind → tailwind-internal}/dist/utils/parseTokens.js +6 -7
- package/dist/{tailwind → tailwind-internal}/dist/utils/postcssPreserveVars.cjs +3 -2
- package/dist/tailwind-internal/dist/utils/postcssPreserveVars.d.cts +38 -0
- package/dist/tailwind-internal/dist/utils/postcssPreserveVars.d.ts +38 -0
- package/dist/{tailwind → tailwind-internal}/dist/utils/postcssPreserveVars.js +3 -4
- package/dist/{tailwind → tailwind-v3}/dist/cli/dist/lib/print.cjs +2 -1
- package/dist/{tailwind → tailwind-v3}/dist/cli/dist/lib/print.js +2 -3
- package/dist/tailwind-v3/dist/cli/dist/lib/spinner.cjs +58 -0
- package/dist/{tailwind → tailwind-v3}/dist/cli/dist/lib/spinner.js +2 -3
- package/dist/tailwind-v3/dist/css-tokens/dist/index.cjs +40 -0
- package/dist/tailwind-v3/dist/css-tokens/dist/index.js +32 -0
- package/dist/tailwind-v3/dist/palette/dist/index.cjs +36 -0
- package/dist/tailwind-v3/dist/palette/dist/index.js +36 -0
- package/dist/{tailwind → tailwind-v3}/dist/purger/legacy/purgeCSS.cjs +8 -10
- package/dist/{tailwind → tailwind-v3}/dist/purger/legacy/purgeCSS.d.cts +2 -4
- package/dist/{tailwind → tailwind-v3}/dist/purger/legacy/purgeCSS.d.ts +2 -2
- package/dist/{tailwind → tailwind-v3}/dist/purger/legacy/purgeCSS.js +8 -9
- package/dist/tailwind-v3/dist/purger.d.cts +2 -0
- package/dist/tailwind-v3/dist/purger.d.ts +2 -0
- package/dist/{tailwind → tailwind-v3}/dist/utils/tsMorph.cjs +11 -14
- package/dist/{tailwind → tailwind-v3}/dist/utils/tsMorph.js +4 -5
- package/dist/tailwind-v4/dist/cli.cjs +102 -0
- package/dist/tailwind-v4/dist/cli.js +99 -0
- package/dist/tailwind-v4/dist/generateTheme-DkTgUwTM.cjs +643 -0
- package/dist/tailwind-v4/dist/generateTheme-DkTgUwTM.js +643 -0
- package/dist/tokens/index.cjs +6 -6
- package/dist/tokens/index.d.cts +3 -3
- package/dist/tokens/index.d.ts +3 -3
- package/dist/tokens/index.js +3 -3
- package/dist/tokens/parseTokens.cjs +1 -1
- package/dist/tokens/parseTokens.d.cts +1 -1
- package/dist/tokens/parseTokens.d.ts +1 -1
- package/dist/tokens/parseTokens.js +1 -1
- package/dist/tokens/utils/entries.cjs +2 -14
- package/dist/tokens/utils/entries.d.cts +1 -11
- package/dist/tokens/utils/entries.d.ts +1 -11
- package/dist/tokens/utils/entries.js +1 -13
- package/dist/tokens/utils/getFontUrls.cjs +2 -2
- package/dist/tokens/utils/getFontUrls.js +1 -1
- package/dist/uds/generated/componentData.cjs +1586 -1586
- package/dist/uds/generated/componentData.js +1586 -1586
- package/dist/uds/package.cjs +23 -7
- package/dist/uds/package.js +23 -7
- package/dist/utils/{assertUnreachable.cjs → dist/assertUnreachable.cjs} +2 -2
- package/dist/utils/{assertUnreachable.js → dist/assertUnreachable.js} +2 -1
- package/dist/utils/{entries.cjs → dist/entries.cjs} +2 -2
- package/dist/utils/dist/entries.d.cts +6 -0
- package/dist/utils/dist/entries.d.ts +6 -0
- package/dist/utils/{entries.js → dist/entries.js} +2 -1
- package/dist/utils/{fromEntries.cjs → dist/fromEntries.cjs} +2 -2
- package/dist/{tokens/utils → utils/dist}/fromEntries.d.cts +3 -2
- package/dist/{tokens/utils → utils/dist}/fromEntries.d.ts +3 -2
- package/dist/utils/{fromEntries.js → dist/fromEntries.js} +2 -1
- package/dist/utils/{mapValues.cjs → dist/mapValues.cjs} +2 -2
- package/dist/{tokens/utils → utils/dist}/mapValues.d.cts +3 -2
- package/dist/{tokens/utils → utils/dist}/mapValues.d.ts +3 -2
- package/dist/utils/{mapValues.js → dist/mapValues.js} +2 -1
- package/dist/{cli/commands/utils → utils/dist}/sortKeys.cjs +2 -2
- package/dist/{cli/commands/utils → utils/dist}/sortKeys.js +2 -1
- package/generated/componentData.json +2028 -2028
- package/package.json +24 -8
- package/dist/automated-config/dist/utils/mapValues.cjs +0 -11
- package/dist/automated-config/dist/utils/mapValues.js +0 -11
- package/dist/cli/commands/utils/sortKeys.d.cts +0 -5
- package/dist/cli/commands/utils/sortKeys.d.ts +0 -5
- package/dist/tailwind/dist/_virtual/_rolldown/runtime.cjs +0 -24
- package/dist/tailwind/dist/automated-config/dist/generated/autoVariants.cjs +0 -746
- package/dist/tailwind/dist/automated-config/dist/generated/autoVariants.js +0 -748
- package/dist/tailwind/dist/automated-config/dist/generated/autoVariants.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/generated/generatedConfigs.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/mapTextVariantFixtureToValue.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/properties.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/utils/assertUnreachable.cjs +0 -8
- package/dist/tailwind/dist/automated-config/dist/utils/assertUnreachable.js +0 -10
- package/dist/tailwind/dist/automated-config/dist/utils/assertUnreachable.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/utils/generateDefaultClassName.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/utils/generateSchemaKey.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/utils/index.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/utils/mapColorFixtureToValue.js.map +0 -1
- package/dist/tailwind/dist/automated-config/dist/utils/variantConfigGuards.js.map +0 -1
- package/dist/tailwind/dist/cli/dist/lib/colors.js.map +0 -1
- package/dist/tailwind/dist/cli/dist/lib/logger.js.map +0 -1
- package/dist/tailwind/dist/cli/dist/lib/print.js.map +0 -1
- package/dist/tailwind/dist/cli/dist/lib/spinner.js.map +0 -1
- package/dist/tailwind/dist/cli.cjs +0 -10
- package/dist/tailwind/dist/cli.d.cts +0 -6
- package/dist/tailwind/dist/cli.d.ts +0 -6
- package/dist/tailwind/dist/cli.js +0 -6
- package/dist/tailwind/dist/commands/css.d.cts +0 -14
- package/dist/tailwind/dist/commands/css.d.cts.map +0 -1
- package/dist/tailwind/dist/commands/css.d.ts +0 -14
- package/dist/tailwind/dist/commands/css.d.ts.map +0 -1
- package/dist/tailwind/dist/commands/css.helpers.js.map +0 -1
- package/dist/tailwind/dist/commands/css.js.map +0 -1
- package/dist/tailwind/dist/commands/generateComponentData.cjs +0 -70
- package/dist/tailwind/dist/commands/generateComponentData.d.cts.map +0 -1
- package/dist/tailwind/dist/commands/generateComponentData.d.ts.map +0 -1
- package/dist/tailwind/dist/commands/generateComponentData.js +0 -71
- package/dist/tailwind/dist/commands/generateComponentData.js.map +0 -1
- package/dist/tailwind/dist/commands/generatePurgeCSSData.cjs +0 -44
- package/dist/tailwind/dist/commands/generatePurgeCSSData.d.cts +0 -15
- package/dist/tailwind/dist/commands/generatePurgeCSSData.d.cts.map +0 -1
- package/dist/tailwind/dist/commands/generatePurgeCSSData.d.ts +0 -15
- package/dist/tailwind/dist/commands/generatePurgeCSSData.d.ts.map +0 -1
- package/dist/tailwind/dist/commands/generatePurgeCSSData.js +0 -44
- package/dist/tailwind/dist/commands/generatePurgeCSSData.js.map +0 -1
- package/dist/tailwind/dist/commands/purge.cjs +0 -53
- package/dist/tailwind/dist/commands/purge.d.cts.map +0 -1
- package/dist/tailwind/dist/commands/purge.d.ts.map +0 -1
- package/dist/tailwind/dist/commands/purge.js +0 -55
- package/dist/tailwind/dist/commands/purge.js.map +0 -1
- package/dist/tailwind/dist/config/dist/index.d.cts.map +0 -1
- package/dist/tailwind/dist/config/dist/index.d.ts.map +0 -1
- package/dist/tailwind/dist/config/dist/index.js.map +0 -1
- package/dist/tailwind/dist/css/generate.d.cts.map +0 -1
- package/dist/tailwind/dist/css/generate.d.ts.map +0 -1
- package/dist/tailwind/dist/css/generate.helpers.js.map +0 -1
- package/dist/tailwind/dist/css/generate.js.map +0 -1
- package/dist/tailwind/dist/css/nodeUtils.js.map +0 -1
- package/dist/tailwind/dist/css/perf.js.map +0 -1
- package/dist/tailwind/dist/css/postcss.helpers.js.map +0 -1
- package/dist/tailwind/dist/css/postcss.js.map +0 -1
- package/dist/tailwind/dist/css/purgeWorker.cjs +0 -47
- package/dist/tailwind/dist/css/purgeWorker.js +0 -48
- package/dist/tailwind/dist/css/purgeWorker.js.map +0 -1
- package/dist/tailwind/dist/css/runner.helpers.js.map +0 -1
- package/dist/tailwind/dist/css/runner.js.map +0 -1
- package/dist/tailwind/dist/css/theme.d.cts.map +0 -1
- package/dist/tailwind/dist/css/theme.d.ts.map +0 -1
- package/dist/tailwind/dist/css/theme.js.map +0 -1
- package/dist/tailwind/dist/css/utils.js.map +0 -1
- package/dist/tailwind/dist/css/workerPool.js.map +0 -1
- package/dist/tailwind/dist/css-tokens/dist/index.js.map +0 -1
- package/dist/tailwind/dist/fixtures/dist/index.js.map +0 -1
- package/dist/tailwind/dist/fonts/dist/index.d.cts.map +0 -1
- package/dist/tailwind/dist/fonts/dist/index.d.ts.map +0 -1
- package/dist/tailwind/dist/fonts/dist/index.js.map +0 -1
- package/dist/tailwind/dist/icons/src/safelist.js.map +0 -1
- package/dist/tailwind/dist/index.cjs +0 -8
- package/dist/tailwind/dist/index.d.cts +0 -5
- package/dist/tailwind/dist/index.d.ts +0 -5
- package/dist/tailwind/dist/index.js +0 -5
- package/dist/tailwind/dist/modes/dist/index.js.map +0 -1
- package/dist/tailwind/dist/motion-tokens/dist/index.cjs +0 -25
- package/dist/tailwind/dist/motion-tokens/dist/index.js +0 -26
- package/dist/tailwind/dist/motion-tokens/dist/index.js.map +0 -1
- package/dist/tailwind/dist/palette/dist/index.js.map +0 -1
- package/dist/tailwind/dist/plugin.cjs +0 -38
- package/dist/tailwind/dist/plugin.d.cts.map +0 -1
- package/dist/tailwind/dist/plugin.d.ts.map +0 -1
- package/dist/tailwind/dist/plugin.js +0 -37
- package/dist/tailwind/dist/plugin.js.map +0 -1
- package/dist/tailwind/dist/purger/legacy/index.d.cts +0 -2
- package/dist/tailwind/dist/purger/legacy/index.d.ts +0 -2
- package/dist/tailwind/dist/purger/legacy/purgeCSS.d.cts.map +0 -1
- package/dist/tailwind/dist/purger/legacy/purgeCSS.d.ts.map +0 -1
- package/dist/tailwind/dist/purger/legacy/purgeCSS.js.map +0 -1
- package/dist/tailwind/dist/purger/legacy/purgeFromCode.cjs +0 -57
- package/dist/tailwind/dist/purger/legacy/purgeFromCode.d.cts +0 -28
- package/dist/tailwind/dist/purger/legacy/purgeFromCode.d.cts.map +0 -1
- package/dist/tailwind/dist/purger/legacy/purgeFromCode.d.ts +0 -28
- package/dist/tailwind/dist/purger/legacy/purgeFromCode.d.ts.map +0 -1
- package/dist/tailwind/dist/purger/legacy/purgeFromCode.js +0 -58
- package/dist/tailwind/dist/purger/legacy/purgeFromCode.js.map +0 -1
- package/dist/tailwind/dist/purger/optimized/ast/expressions.d.cts +0 -2
- package/dist/tailwind/dist/purger/optimized/ast/expressions.d.ts +0 -2
- package/dist/tailwind/dist/purger/optimized/ast/expressions.js.map +0 -1
- package/dist/tailwind/dist/purger/optimized/ast/jsx.d.cts +0 -2
- package/dist/tailwind/dist/purger/optimized/ast/jsx.d.ts +0 -2
- package/dist/tailwind/dist/purger/optimized/ast/props.d.cts +0 -2
- package/dist/tailwind/dist/purger/optimized/ast/props.d.ts +0 -2
- package/dist/tailwind/dist/purger/optimized/ast/spread.d.cts +0 -2
- package/dist/tailwind/dist/purger/optimized/ast/spread.d.ts +0 -2
- package/dist/tailwind/dist/purger/optimized/index.d.cts +0 -3
- package/dist/tailwind/dist/purger/optimized/index.d.ts +0 -3
- package/dist/tailwind/dist/purger/optimized/purge.d.cts +0 -2
- package/dist/tailwind/dist/purger/optimized/purge.d.ts +0 -2
- package/dist/tailwind/dist/purger/optimized/purge.js.map +0 -1
- package/dist/tailwind/dist/purger/optimized/purgeFromCode.d.cts +0 -63
- package/dist/tailwind/dist/purger/optimized/purgeFromCode.d.cts.map +0 -1
- package/dist/tailwind/dist/purger/optimized/purgeFromCode.d.ts +0 -63
- package/dist/tailwind/dist/purger/optimized/purgeFromCode.d.ts.map +0 -1
- package/dist/tailwind/dist/purger/optimized/purgeFromCode.js.map +0 -1
- package/dist/tailwind/dist/purger/optimized/types.d.cts +0 -32
- package/dist/tailwind/dist/purger/optimized/types.d.cts.map +0 -1
- package/dist/tailwind/dist/purger/optimized/types.d.ts +0 -32
- package/dist/tailwind/dist/purger/optimized/types.d.ts.map +0 -1
- package/dist/tailwind/dist/purger/optimized/utils/componentAnalyzer.cjs +0 -622
- package/dist/tailwind/dist/purger/optimized/utils/componentAnalyzer.js +0 -620
- package/dist/tailwind/dist/purger/optimized/utils/componentAnalyzer.js.map +0 -1
- package/dist/tailwind/dist/purger/optimized/utils/files.d.cts +0 -2
- package/dist/tailwind/dist/purger/optimized/utils/files.d.ts +0 -2
- package/dist/tailwind/dist/purger/optimized/utils/files.js.map +0 -1
- package/dist/tailwind/dist/purger/optimized/utils/safelist.js.map +0 -1
- package/dist/tailwind/dist/purger.cjs +0 -6
- package/dist/tailwind/dist/purger.d.cts +0 -4
- package/dist/tailwind/dist/purger.d.ts +0 -4
- package/dist/tailwind/dist/purger.js +0 -4
- package/dist/tailwind/dist/runtimeConfig/hookMetadata.js.map +0 -1
- package/dist/tailwind/dist/tailwind/base/addColorModeVars.cjs +0 -19
- package/dist/tailwind/dist/tailwind/base/addColorModeVars.js.map +0 -1
- package/dist/tailwind/dist/tailwind/base/addColorModeVarsV2.js.map +0 -1
- package/dist/tailwind/dist/tailwind/base/addFontFaceDeclarations.js.map +0 -1
- package/dist/tailwind/dist/tailwind/base/addFontVars.js.map +0 -1
- package/dist/tailwind/dist/tailwind/base/addMotionVars.js.map +0 -1
- package/dist/tailwind/dist/tailwind/base/addScaleModeVars.js.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getFocusRingStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getGroupedTextStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getHitTargetStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getIconStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getInputStyles.d.cts +0 -11
- package/dist/tailwind/dist/tailwind/components/getInputStyles.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getInputStyles.d.ts +0 -11
- package/dist/tailwind/dist/tailwind/components/getInputStyles.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getInputStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getResponsiveTextStyles.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getResponsiveTextStyles.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/components/getResponsiveTextStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/components/types.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/components/types.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/defaultTailwindThemeAsUdsConfig.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/defaultTailwindThemeAsUdsConfig.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/defaultTailwindThemeAsUdsConfig.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/a11y.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/blurBgFallback.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/borderRadius.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/borderWidth.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/breakpoints.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/colors.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/components.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/elevation.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/getTailwindAsUdsColors.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/icons.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/input.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/motion.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/nestedBorderRadius.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/scaleMode.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/shadows.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/sizing.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/spacing.js.map +0 -1
- package/dist/tailwind/dist/tailwind/plugins/typography.js.map +0 -1
- package/dist/tailwind/dist/tailwind/theme/getFontFamilyTheme.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/addFontsPlugin.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/addFontsPlugin.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/addFontsPlugin.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/composeTailwindPlugins.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/composeTailwindPlugins.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/composeTailwindPlugins.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getColorModeStyles.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getColorModeStyles.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getColorModeStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getElevationStyles.d.cts +0 -13
- package/dist/tailwind/dist/tailwind/utils/getElevationStyles.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getElevationStyles.d.ts +0 -13
- package/dist/tailwind/dist/tailwind/utils/getElevationStyles.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getElevationStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getFontFaceDeclarations.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getFontFaceDeclarations.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getFontFaceDeclarations.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getFontStyles.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getFontStyles.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getFontStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getMotionStyles.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getMotionStyles.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getMotionStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getNestedBorderRadiusUtilities.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getScaleModeStyles.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getScaleModeStyles.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getScaleModeStyles.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getShadowPresetValues.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getShadowPresetValues.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getShadowPresetValues.js.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getShadowStyles.d.cts +0 -22
- package/dist/tailwind/dist/tailwind/utils/getShadowStyles.d.cts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getShadowStyles.d.ts +0 -22
- package/dist/tailwind/dist/tailwind/utils/getShadowStyles.d.ts.map +0 -1
- package/dist/tailwind/dist/tailwind/utils/getShadowStyles.js.map +0 -1
- package/dist/tailwind/dist/types/dist/index.d.cts.map +0 -1
- package/dist/tailwind/dist/types/dist/index.d.ts.map +0 -1
- package/dist/tailwind/dist/utils/assertUnreachable.cjs +0 -7
- package/dist/tailwind/dist/utils/assertUnreachable.js +0 -9
- package/dist/tailwind/dist/utils/assertUnreachable.js.map +0 -1
- package/dist/tailwind/dist/utils/entries.cjs +0 -7
- package/dist/tailwind/dist/utils/entries.js +0 -9
- package/dist/tailwind/dist/utils/entries.js.map +0 -1
- package/dist/tailwind/dist/utils/entryPoints.js.map +0 -1
- package/dist/tailwind/dist/utils/fromEntries.cjs +0 -15
- package/dist/tailwind/dist/utils/fromEntries.js +0 -17
- package/dist/tailwind/dist/utils/fromEntries.js.map +0 -1
- package/dist/tailwind/dist/utils/generatePurgeCSSData.cjs +0 -185
- package/dist/tailwind/dist/utils/generatePurgeCSSData.js +0 -178
- package/dist/tailwind/dist/utils/generatePurgeCSSData.js.map +0 -1
- package/dist/tailwind/dist/utils/mapValues.cjs +0 -10
- package/dist/tailwind/dist/utils/mapValues.js +0 -12
- package/dist/tailwind/dist/utils/mapValues.js.map +0 -1
- package/dist/tailwind/dist/utils/opacity.js.map +0 -1
- package/dist/tailwind/dist/utils/optimizeCSS.js.map +0 -1
- package/dist/tailwind/dist/utils/parseTokens.d.cts.map +0 -1
- package/dist/tailwind/dist/utils/parseTokens.d.ts.map +0 -1
- package/dist/tailwind/dist/utils/parseTokens.js.map +0 -1
- package/dist/tailwind/dist/utils/postcssPreserveVars.js.map +0 -1
- package/dist/tailwind/dist/utils/tsMorph.js.map +0 -1
- package/dist/tailwind/dist/utils.cjs +0 -24
- package/dist/tailwind/dist/utils.d.cts +0 -12
- package/dist/tailwind/dist/utils.d.ts +0 -12
- package/dist/tailwind/dist/utils.js +0 -12
- package/dist/tailwind/utils.cjs +0 -24
- package/dist/tailwind/utils.d.cts +0 -12
- package/dist/tailwind/utils.d.ts +0 -12
- package/dist/tailwind/utils.js +0 -12
- package/dist/utils/assertUnreachable.d.cts +0 -5
- package/dist/utils/assertUnreachable.d.ts +0 -5
- package/dist/utils/entries.d.cts +0 -5
- package/dist/utils/entries.d.ts +0 -5
- package/dist/utils/fromEntries.d.cts +0 -13
- package/dist/utils/fromEntries.d.ts +0 -13
- package/dist/utils/mapValues.d.cts +0 -6
- package/dist/utils/mapValues.d.ts +0 -6
- /package/dist/{tailwind/dist/purger/optimized/ast → css/dist/packages/config/dist}/index.d.cts +0 -0
- /package/dist/{tailwind/dist/purger/optimized/ast → css/dist/packages/config/dist}/index.d.ts +0 -0
- /package/dist/{tailwind/dist/css/purgeWorker.d.cts → tailwind-v3/dist/purger/legacy/purgeFromCode.d.cts} +0 -0
- /package/dist/{tailwind/dist/css/purgeWorker.d.ts → tailwind-v3/dist/purger/legacy/purgeFromCode.d.ts} +0 -0
|
@@ -1,622 +0,0 @@
|
|
|
1
|
-
/*! © 2026 Yahoo, Inc. UDS Tailwind and Purger v0.0.0-development */
|
|
2
|
-
const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
|
|
3
|
-
const require_entryPoints = require("../../../utils/entryPoints.cjs");
|
|
4
|
-
const require_index = require("../../../motion-tokens/dist/index.cjs");
|
|
5
|
-
const require_hookMetadata = require("../../../runtimeConfig/hookMetadata.cjs");
|
|
6
|
-
let node_fs = require("node:fs");
|
|
7
|
-
let node_path = require("node:path");
|
|
8
|
-
node_path = require_runtime.__toESM(node_path, 1);
|
|
9
|
-
let fast_glob = require("fast-glob");
|
|
10
|
-
fast_glob = require_runtime.__toESM(fast_glob, 1);
|
|
11
|
-
let ts_morph = require("ts-morph");
|
|
12
|
-
//#region src/purger/optimized/utils/componentAnalyzer.ts
|
|
13
|
-
/**
|
|
14
|
-
* Known UDS component names (populated by scanning)
|
|
15
|
-
*/
|
|
16
|
-
let knownComponents = null;
|
|
17
|
-
/**
|
|
18
|
-
* Map of component name -> file path
|
|
19
|
-
*/
|
|
20
|
-
let componentPaths = null;
|
|
21
|
-
let scannedComponentsDir = null;
|
|
22
|
-
const hasImportQuery = (moduleSpecifier) => moduleSpecifier.includes("?");
|
|
23
|
-
const scanComponentFilePaths = async (componentsDir) => (0, fast_glob.default)(require_entryPoints.getAllowedEntryFileGlobPatterns(), {
|
|
24
|
-
cwd: componentsDir,
|
|
25
|
-
absolute: true
|
|
26
|
-
});
|
|
27
|
-
/**
|
|
28
|
-
* Scan src/components to build a map of all component files
|
|
29
|
-
*/
|
|
30
|
-
const scanComponentFiles = async (componentsDir) => {
|
|
31
|
-
if (componentPaths && scannedComponentsDir === componentsDir) return componentPaths;
|
|
32
|
-
componentPaths = /* @__PURE__ */ new Map();
|
|
33
|
-
knownComponents = /* @__PURE__ */ new Set();
|
|
34
|
-
scannedComponentsDir = componentsDir;
|
|
35
|
-
const nextComponentPaths = componentPaths;
|
|
36
|
-
const nextKnownComponents = knownComponents;
|
|
37
|
-
(await scanComponentFilePaths(componentsDir)).forEach((file) => {
|
|
38
|
-
if (file.includes(".test.") || node_path.default.basename(require_entryPoints.stripAllowedEntryFileExtension(file)) === "index") return;
|
|
39
|
-
const fileName = node_path.default.basename(require_entryPoints.stripAllowedEntryFileExtension(file));
|
|
40
|
-
if (/^[A-Z]/.test(fileName)) {
|
|
41
|
-
nextComponentPaths.set(fileName, file);
|
|
42
|
-
nextKnownComponents.add(fileName);
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
return nextComponentPaths;
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* Analyze an object literal for variant key mappings.
|
|
49
|
-
* Handles:
|
|
50
|
-
* - Direct property assignments: { fontSize: variant } -> variant maps to fontSize
|
|
51
|
-
* - Nullish coalescing: { fontSize: fontSize ?? variant } -> variant maps to fontSize
|
|
52
|
-
* - Conditional spreads: ...(condition ? { props } : {}) -> recursively analyze props
|
|
53
|
-
*/
|
|
54
|
-
const analyzeObjectForVariantMappings = (objLiteral, styleProps, getStylesLiterals, propToVariantKeys, sourceFile) => {
|
|
55
|
-
objLiteral.getProperties().forEach((prop) => {
|
|
56
|
-
if (ts_morph.Node.isPropertyAssignment(prop)) {
|
|
57
|
-
analyzeVariantPropertyAssignment(prop, styleProps, getStylesLiterals, propToVariantKeys);
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
if (ts_morph.Node.isSpreadAssignment(prop)) analyzeVariantSpreadAssignment(prop, styleProps, getStylesLiterals, propToVariantKeys, sourceFile);
|
|
61
|
-
});
|
|
62
|
-
};
|
|
63
|
-
const addStyleProp = (styleProps, variantKey) => {
|
|
64
|
-
if (!styleProps.includes(variantKey)) styleProps.push(variantKey);
|
|
65
|
-
};
|
|
66
|
-
const addPropToVariantKeyMapping = (propToVariantKeys, propName, variantKey) => {
|
|
67
|
-
const existing = propToVariantKeys.get(propName) ?? [];
|
|
68
|
-
if (!existing.includes(variantKey)) propToVariantKeys.set(propName, [...existing, variantKey]);
|
|
69
|
-
};
|
|
70
|
-
const addRuntimeSelector = (target, key, selector) => {
|
|
71
|
-
const existing = target.get(key) ?? [];
|
|
72
|
-
if (!existing.includes(selector)) target.set(key, [...existing, selector]);
|
|
73
|
-
};
|
|
74
|
-
const getExpressionWithoutWrappers = (node) => {
|
|
75
|
-
if (ts_morph.Node.isParenthesizedExpression(node)) return getExpressionWithoutWrappers(node.getExpression());
|
|
76
|
-
if (ts_morph.Node.isAsExpression(node) || ts_morph.Node.isTypeAssertion(node) || ts_morph.Node.isSatisfiesExpression(node)) return getExpressionWithoutWrappers(node.getExpression());
|
|
77
|
-
return node;
|
|
78
|
-
};
|
|
79
|
-
const applyRuntimeSelectorIndex = (selector, indexKey, isIdentifierIndex = false) => {
|
|
80
|
-
if (selector.includes("${")) return selector;
|
|
81
|
-
return isIdentifierIndex ? selector + ".${" + indexKey + "}" : `${selector}.${indexKey}`;
|
|
82
|
-
};
|
|
83
|
-
const resolveRuntimeBindingFromExpression = (expr, runtimeBindings) => {
|
|
84
|
-
const normalized = getExpressionWithoutWrappers(expr);
|
|
85
|
-
if (ts_morph.Node.isIdentifier(normalized)) return runtimeBindings.get(normalized.getText()) ?? null;
|
|
86
|
-
if (ts_morph.Node.isElementAccessExpression(normalized)) {
|
|
87
|
-
const target = resolveRuntimeBindingFromExpression(normalized.getExpression(), runtimeBindings);
|
|
88
|
-
if (!target) return null;
|
|
89
|
-
const argumentExpression = normalized.getArgumentExpression();
|
|
90
|
-
if (!argumentExpression) return null;
|
|
91
|
-
const argument = getExpressionWithoutWrappers(argumentExpression);
|
|
92
|
-
if (ts_morph.Node.isStringLiteral(argument)) return { selector: applyRuntimeSelectorIndex(target.selector, argument.getLiteralValue()) };
|
|
93
|
-
if (ts_morph.Node.isIdentifier(argument)) return { selector: applyRuntimeSelectorIndex(target.selector, argument.getText(), true) };
|
|
94
|
-
}
|
|
95
|
-
if (ts_morph.Node.isPropertyAccessExpression(normalized)) {
|
|
96
|
-
const target = resolveRuntimeBindingFromExpression(normalized.getExpression(), runtimeBindings);
|
|
97
|
-
if (!target) return null;
|
|
98
|
-
return { selector: applyRuntimeSelectorIndex(target.selector, normalized.getName()) };
|
|
99
|
-
}
|
|
100
|
-
return null;
|
|
101
|
-
};
|
|
102
|
-
const collectRuntimeSelectorsFromExpression = (expr, runtimeBindings) => {
|
|
103
|
-
const normalized = getExpressionWithoutWrappers(expr);
|
|
104
|
-
const resolvedBinding = resolveRuntimeBindingFromExpression(normalized, runtimeBindings);
|
|
105
|
-
if (resolvedBinding) return [resolvedBinding.selector];
|
|
106
|
-
if (ts_morph.Node.isConditionalExpression(normalized)) return [...collectRuntimeSelectorsFromExpression(normalized.getWhenTrue(), runtimeBindings), ...collectRuntimeSelectorsFromExpression(normalized.getWhenFalse(), runtimeBindings)];
|
|
107
|
-
if (ts_morph.Node.isBinaryExpression(normalized)) return [...collectRuntimeSelectorsFromExpression(normalized.getLeft(), runtimeBindings), ...collectRuntimeSelectorsFromExpression(normalized.getRight(), runtimeBindings)];
|
|
108
|
-
return [];
|
|
109
|
-
};
|
|
110
|
-
const collectRuntimeConfigBindings = (sourceFile, runtimeBindings, runtimeConfigDefaultProps) => {
|
|
111
|
-
sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.VariableDeclaration).forEach((declaration) => {
|
|
112
|
-
const initializer = declaration.getInitializer();
|
|
113
|
-
if (!initializer) return;
|
|
114
|
-
const normalizedInitializer = getExpressionWithoutWrappers(initializer);
|
|
115
|
-
const nameNode = declaration.getNameNode();
|
|
116
|
-
if (ts_morph.Node.isObjectBindingPattern(nameNode) && ts_morph.Node.isCallExpression(normalizedInitializer)) {
|
|
117
|
-
const hookConfig = require_hookMetadata.getRuntimeHookConfig(normalizedInitializer.getExpression().getText());
|
|
118
|
-
if (!hookConfig) return;
|
|
119
|
-
Object.entries(hookConfig.defaultProps).forEach(([propName, selector]) => {
|
|
120
|
-
runtimeConfigDefaultProps.set(propName, selector);
|
|
121
|
-
});
|
|
122
|
-
nameNode.getElements().forEach((element) => {
|
|
123
|
-
const fieldName = element.getPropertyNameNode()?.getText() ?? element.getName();
|
|
124
|
-
const localName = element.getName();
|
|
125
|
-
const fieldConfig = hookConfig.fields[fieldName];
|
|
126
|
-
if (!fieldConfig) return;
|
|
127
|
-
runtimeBindings.set(localName, { selector: fieldConfig.bindingSelector });
|
|
128
|
-
});
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
if (!ts_morph.Node.isIdentifier(nameNode)) return;
|
|
132
|
-
const resolvedBinding = resolveRuntimeBindingFromExpression(normalizedInitializer, runtimeBindings);
|
|
133
|
-
if (resolvedBinding) runtimeBindings.set(nameNode.getText(), resolvedBinding);
|
|
134
|
-
});
|
|
135
|
-
};
|
|
136
|
-
const extractFallbackIdentifier = (initializer) => {
|
|
137
|
-
if (!ts_morph.Node.isBinaryExpression(initializer)) return null;
|
|
138
|
-
const operatorKind = initializer.getOperatorToken().getKind();
|
|
139
|
-
if (!(operatorKind === ts_morph.SyntaxKind.QuestionQuestionToken || operatorKind === ts_morph.SyntaxKind.BarBarToken) || !ts_morph.Node.isIdentifier(initializer.getRight())) return null;
|
|
140
|
-
return initializer.getRight().getText();
|
|
141
|
-
};
|
|
142
|
-
const analyzeVariantPropertyAssignment = (prop, styleProps, getStylesLiterals, propToVariantKeys) => {
|
|
143
|
-
const variantKey = prop.getName();
|
|
144
|
-
addStyleProp(styleProps, variantKey);
|
|
145
|
-
const initializer = prop.getInitializer();
|
|
146
|
-
if (!initializer) return;
|
|
147
|
-
if (ts_morph.Node.isStringLiteral(initializer)) getStylesLiterals.set(variantKey, initializer.getLiteralValue());
|
|
148
|
-
if (ts_morph.Node.isIdentifier(initializer)) addPropToVariantKeyMapping(propToVariantKeys, initializer.getText(), variantKey);
|
|
149
|
-
const fallbackIdentifier = extractFallbackIdentifier(initializer);
|
|
150
|
-
if (fallbackIdentifier) addPropToVariantKeyMapping(propToVariantKeys, fallbackIdentifier, variantKey);
|
|
151
|
-
};
|
|
152
|
-
const findVariableObjectLiteral = (sourceFile, variableName) => {
|
|
153
|
-
const initializer = sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.VariableDeclaration).find((candidate) => candidate.getName() === variableName)?.getInitializer();
|
|
154
|
-
return initializer && ts_morph.Node.isObjectLiteralExpression(initializer) ? initializer : null;
|
|
155
|
-
};
|
|
156
|
-
const analyzeVariantSpreadAssignment = (prop, styleProps, getStylesLiterals, propToVariantKeys, sourceFile) => {
|
|
157
|
-
const spreadExpr = prop.getExpression();
|
|
158
|
-
if (ts_morph.Node.isParenthesizedExpression(spreadExpr)) {
|
|
159
|
-
const conditionalExpr = spreadExpr.getExpression();
|
|
160
|
-
if (ts_morph.Node.isConditionalExpression(conditionalExpr)) {
|
|
161
|
-
const whenTrue = conditionalExpr.getWhenTrue();
|
|
162
|
-
if (!ts_morph.Node.isObjectLiteralExpression(whenTrue)) return;
|
|
163
|
-
analyzeObjectForVariantMappings(whenTrue, styleProps, getStylesLiterals, propToVariantKeys, sourceFile);
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
if (ts_morph.Node.isIdentifier(spreadExpr)) {
|
|
167
|
-
const objectLiteral = findVariableObjectLiteral(sourceFile, spreadExpr.getText());
|
|
168
|
-
if (objectLiteral) analyzeObjectForVariantMappings(objectLiteral, styleProps, getStylesLiterals, propToVariantKeys, sourceFile);
|
|
169
|
-
}
|
|
170
|
-
};
|
|
171
|
-
/**
|
|
172
|
-
* Analyzes a UDS component file to extract:
|
|
173
|
-
* 1. Default prop values (e.g., display = 'flex')
|
|
174
|
-
* 2. Props passed to getStyles()
|
|
175
|
-
* 3. Internal UDS component usage
|
|
176
|
-
*/
|
|
177
|
-
const analyzeComponent = (project, componentPath) => {
|
|
178
|
-
const sourceFile = project.getSourceFile(componentPath);
|
|
179
|
-
if (!sourceFile) return null;
|
|
180
|
-
const componentName = node_path.default.basename(require_entryPoints.stripAllowedEntryFileExtension(componentPath));
|
|
181
|
-
const defaultProps = /* @__PURE__ */ new Map();
|
|
182
|
-
const componentPropNames = /* @__PURE__ */ new Set();
|
|
183
|
-
const styleProps = [];
|
|
184
|
-
const getStylesLiterals = /* @__PURE__ */ new Map();
|
|
185
|
-
const cxLiterals = [];
|
|
186
|
-
const internalComponents = [];
|
|
187
|
-
const internalComponentProps = /* @__PURE__ */ new Map();
|
|
188
|
-
const propToVariantKeys = /* @__PURE__ */ new Map();
|
|
189
|
-
const runtimeConfigDefaultProps = /* @__PURE__ */ new Map();
|
|
190
|
-
const runtimeConfigGetStyles = /* @__PURE__ */ new Map();
|
|
191
|
-
const runtimeConfigInternalComponentProps = /* @__PURE__ */ new Map();
|
|
192
|
-
const runtimeBindings = /* @__PURE__ */ new Map();
|
|
193
|
-
collectComponentDefaultsAndProps(sourceFile, defaultProps, componentPropNames);
|
|
194
|
-
collectRuntimeConfigBindings(sourceFile, runtimeBindings, runtimeConfigDefaultProps);
|
|
195
|
-
collectGetStylesMetadata(sourceFile, styleProps, getStylesLiterals, propToVariantKeys, runtimeBindings, runtimeConfigGetStyles);
|
|
196
|
-
collectCxLiterals(sourceFile, cxLiterals);
|
|
197
|
-
collectIntrinsicClassNameLiterals(sourceFile, cxLiterals);
|
|
198
|
-
extractInternalComponents(sourceFile, internalComponents, internalComponentProps, runtimeConfigInternalComponentProps, propToVariantKeys, componentPropNames, runtimeBindings);
|
|
199
|
-
const motionVarPrefixes = extractMotionVarPrefixes(sourceFile);
|
|
200
|
-
if (new Set(["Tab", "TabList"]).has(componentName) && propToVariantKeys.has("variant") && !defaultProps.has("variant")) defaultProps.set("variant", "primary");
|
|
201
|
-
return {
|
|
202
|
-
name: componentName,
|
|
203
|
-
filePath: componentPath,
|
|
204
|
-
defaultProps,
|
|
205
|
-
styleProps,
|
|
206
|
-
getStylesLiterals,
|
|
207
|
-
cxLiterals,
|
|
208
|
-
internalComponents,
|
|
209
|
-
internalComponentProps,
|
|
210
|
-
propToVariantKeys,
|
|
211
|
-
runtimeConfigDefaultProps,
|
|
212
|
-
runtimeConfigGetStyles,
|
|
213
|
-
runtimeConfigInternalComponentProps,
|
|
214
|
-
motionVarPrefixes
|
|
215
|
-
};
|
|
216
|
-
};
|
|
217
|
-
const getComponentFunctionNodes = (sourceFile) => [...sourceFile.getFunctions(), ...sourceFile.getVariableDeclarations().filter((declaration) => {
|
|
218
|
-
const initializer = declaration.getInitializer();
|
|
219
|
-
return initializer && (ts_morph.Node.isArrowFunction(initializer) || ts_morph.Node.isCallExpression(initializer));
|
|
220
|
-
})];
|
|
221
|
-
const collectComponentDefaultsAndProps = (sourceFile, defaultProps, componentPropNames) => {
|
|
222
|
-
getComponentFunctionNodes(sourceFile).forEach((fn) => {
|
|
223
|
-
if (ts_morph.Node.isFunctionDeclaration(fn)) {
|
|
224
|
-
extractDefaultsFromFunction(fn, defaultProps);
|
|
225
|
-
extractAllPropNames(fn, componentPropNames);
|
|
226
|
-
return;
|
|
227
|
-
}
|
|
228
|
-
if (!ts_morph.Node.isVariableDeclaration(fn)) return;
|
|
229
|
-
const initializer = fn.getInitializer();
|
|
230
|
-
if (!initializer) return;
|
|
231
|
-
if (ts_morph.Node.isCallExpression(initializer)) initializer.getArguments().forEach((arg) => {
|
|
232
|
-
if (ts_morph.Node.isFunctionExpression(arg) || ts_morph.Node.isArrowFunction(arg)) {
|
|
233
|
-
extractDefaultsFromFunction(arg, defaultProps);
|
|
234
|
-
extractAllPropNames(arg, componentPropNames);
|
|
235
|
-
}
|
|
236
|
-
});
|
|
237
|
-
if (ts_morph.Node.isArrowFunction(initializer)) {
|
|
238
|
-
extractDefaultsFromFunction(initializer, defaultProps);
|
|
239
|
-
extractAllPropNames(initializer, componentPropNames);
|
|
240
|
-
}
|
|
241
|
-
});
|
|
242
|
-
};
|
|
243
|
-
const extractConditionalStringLiterals = (node) => {
|
|
244
|
-
if (ts_morph.Node.isStringLiteral(node)) return [node.getLiteralValue()];
|
|
245
|
-
if (ts_morph.Node.isConditionalExpression(node)) return [...extractConditionalStringLiterals(node.getWhenTrue()), ...extractConditionalStringLiterals(node.getWhenFalse())];
|
|
246
|
-
return [];
|
|
247
|
-
};
|
|
248
|
-
const storeVariantLiteralValues = (variantKey, literalValues, getStylesLiterals) => {
|
|
249
|
-
literalValues.forEach((value, index) => {
|
|
250
|
-
const literalKey = index === 0 ? variantKey : `${variantKey}:${index}`;
|
|
251
|
-
getStylesLiterals.set(literalKey, value);
|
|
252
|
-
});
|
|
253
|
-
};
|
|
254
|
-
/** Values already recorded for `variantKey` (base key plus `variantKey:1`, `:2`, …). */
|
|
255
|
-
const getExistingLiteralValuesForVariantKey = (variantKey, getStylesLiterals) => {
|
|
256
|
-
const values = [];
|
|
257
|
-
const base = getStylesLiterals.get(variantKey);
|
|
258
|
-
if (base !== void 0) values.push(base);
|
|
259
|
-
let index = 1;
|
|
260
|
-
while (true) {
|
|
261
|
-
const key = `${variantKey}:${index}`;
|
|
262
|
-
const next = getStylesLiterals.get(key);
|
|
263
|
-
if (next === void 0) break;
|
|
264
|
-
values.push(next);
|
|
265
|
-
index++;
|
|
266
|
-
}
|
|
267
|
-
return values;
|
|
268
|
-
};
|
|
269
|
-
/**
|
|
270
|
-
* Record a string literal for a variant key from a getStyles() call.
|
|
271
|
-
* Multiple calls with the same key (e.g. Tab's active-off vs active-on classes) must
|
|
272
|
-
* all be kept; a plain Map set would drop earlier literals.
|
|
273
|
-
*/
|
|
274
|
-
const appendGetStylesStringLiteral = (variantKey, value, getStylesLiterals) => {
|
|
275
|
-
if (getExistingLiteralValuesForVariantKey(variantKey, getStylesLiterals).includes(value)) return;
|
|
276
|
-
let nextIndex = 0;
|
|
277
|
-
while (true) {
|
|
278
|
-
const key = nextIndex === 0 ? variantKey : `${variantKey}:${nextIndex}`;
|
|
279
|
-
if (!getStylesLiterals.has(key)) {
|
|
280
|
-
getStylesLiterals.set(key, value);
|
|
281
|
-
return;
|
|
282
|
-
}
|
|
283
|
-
nextIndex++;
|
|
284
|
-
}
|
|
285
|
-
};
|
|
286
|
-
const handleGetStylesPropertyAssignment = (prop, styleProps, getStylesLiterals, propToVariantKeys, runtimeBindings, runtimeConfigGetStyles) => {
|
|
287
|
-
const variantKey = prop.getName();
|
|
288
|
-
addStyleProp(styleProps, variantKey);
|
|
289
|
-
const initializer = prop.getInitializer();
|
|
290
|
-
if (!initializer) return;
|
|
291
|
-
if (ts_morph.Node.isStringLiteral(initializer)) appendGetStylesStringLiteral(variantKey, initializer.getLiteralValue(), getStylesLiterals);
|
|
292
|
-
if (ts_morph.Node.isIdentifier(initializer)) addPropToVariantKeyMapping(propToVariantKeys, initializer.getText(), variantKey);
|
|
293
|
-
collectRuntimeSelectorsFromExpression(initializer, runtimeBindings).forEach((selector) => {
|
|
294
|
-
addRuntimeSelector(runtimeConfigGetStyles, variantKey, selector);
|
|
295
|
-
});
|
|
296
|
-
const fallbackIdentifier = extractFallbackIdentifier(initializer);
|
|
297
|
-
if (fallbackIdentifier) addPropToVariantKeyMapping(propToVariantKeys, fallbackIdentifier, variantKey);
|
|
298
|
-
if (ts_morph.Node.isConditionalExpression(initializer)) storeVariantLiteralValues(variantKey, [...extractConditionalStringLiterals(initializer.getWhenTrue()), ...extractConditionalStringLiterals(initializer.getWhenFalse())], getStylesLiterals);
|
|
299
|
-
};
|
|
300
|
-
const handleGetStylesObjectProperty = (prop, styleProps, getStylesLiterals, propToVariantKeys, sourceFile, runtimeBindings, runtimeConfigGetStyles) => {
|
|
301
|
-
if (ts_morph.Node.isPropertyAssignment(prop)) {
|
|
302
|
-
handleGetStylesPropertyAssignment(prop, styleProps, getStylesLiterals, propToVariantKeys, runtimeBindings, runtimeConfigGetStyles);
|
|
303
|
-
return;
|
|
304
|
-
}
|
|
305
|
-
if (ts_morph.Node.isShorthandPropertyAssignment(prop)) {
|
|
306
|
-
addStyleProp(styleProps, prop.getName());
|
|
307
|
-
return;
|
|
308
|
-
}
|
|
309
|
-
if (ts_morph.Node.isSpreadAssignment(prop) && ts_morph.Node.isIdentifier(prop.getExpression())) {
|
|
310
|
-
const objectLiteral = findVariableObjectLiteral(sourceFile, prop.getExpression().getText());
|
|
311
|
-
if (objectLiteral) analyzeObjectForVariantMappings(objectLiteral, styleProps, getStylesLiterals, propToVariantKeys, sourceFile);
|
|
312
|
-
}
|
|
313
|
-
};
|
|
314
|
-
const collectGetStylesMetadata = (sourceFile, styleProps, getStylesLiterals, propToVariantKeys, runtimeBindings, runtimeConfigGetStyles) => {
|
|
315
|
-
sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.CallExpression).filter((call) => call.getExpression().getText() === "getStyles").forEach((call) => {
|
|
316
|
-
const args = call.getArguments();
|
|
317
|
-
if (args.length === 0 || !ts_morph.Node.isObjectLiteralExpression(args[0])) return;
|
|
318
|
-
args[0].getProperties().forEach((prop) => {
|
|
319
|
-
handleGetStylesObjectProperty(prop, styleProps, getStylesLiterals, propToVariantKeys, sourceFile, runtimeBindings, runtimeConfigGetStyles);
|
|
320
|
-
});
|
|
321
|
-
});
|
|
322
|
-
};
|
|
323
|
-
const collectCxLiterals = (sourceFile, cxLiterals) => {
|
|
324
|
-
sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.CallExpression).filter((call) => call.getExpression().getText() === "cx").forEach((call) => {
|
|
325
|
-
call.getArguments().forEach((arg) => extractCxStringLiterals(arg, cxLiterals));
|
|
326
|
-
});
|
|
327
|
-
};
|
|
328
|
-
const pushUniqueClasses = (target, rawValue) => {
|
|
329
|
-
rawValue.split(/\s+/).filter(Boolean).forEach((className) => {
|
|
330
|
-
if (!target.includes(className)) target.push(className);
|
|
331
|
-
});
|
|
332
|
-
};
|
|
333
|
-
const collectIntrinsicClassNameLiterals = (sourceFile, cxLiterals) => {
|
|
334
|
-
[...sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.JsxSelfClosingElement), ...sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.JsxOpeningElement)].forEach((element) => {
|
|
335
|
-
const tagName = element.getTagNameNode().getText();
|
|
336
|
-
if (!/^[a-z]/.test(tagName)) return;
|
|
337
|
-
element.getAttributes().forEach((attr) => {
|
|
338
|
-
if (!ts_morph.Node.isJsxAttribute(attr) || attr.getNameNode().getText() !== "className") return;
|
|
339
|
-
const initializer = attr.getInitializer();
|
|
340
|
-
if (!initializer) return;
|
|
341
|
-
if (ts_morph.Node.isStringLiteral(initializer)) {
|
|
342
|
-
pushUniqueClasses(cxLiterals, initializer.getLiteralValue());
|
|
343
|
-
return;
|
|
344
|
-
}
|
|
345
|
-
if (!ts_morph.Node.isJsxExpression(initializer)) return;
|
|
346
|
-
const expr = initializer.getExpression();
|
|
347
|
-
if (expr && ts_morph.Node.isStringLiteral(expr)) pushUniqueClasses(cxLiterals, expr.getLiteralValue());
|
|
348
|
-
});
|
|
349
|
-
});
|
|
350
|
-
};
|
|
351
|
-
/**
|
|
352
|
-
* Extract UDS components used internally in the file and their prop values.
|
|
353
|
-
* Also detects prop aliasing (e.g., columnGap={gap} means gap -> columnGap).
|
|
354
|
-
*/
|
|
355
|
-
const extractInternalComponents = (sourceFile, internalComponents, internalComponentProps, runtimeConfigInternalComponentProps, propToVariantKeys, componentProps, runtimeBindings) => {
|
|
356
|
-
collectImportedInternalComponents(sourceFile, internalComponents);
|
|
357
|
-
collectInternalComponentUsages(sourceFile, internalComponents, internalComponentProps, runtimeConfigInternalComponentProps, propToVariantKeys, componentProps, runtimeBindings);
|
|
358
|
-
};
|
|
359
|
-
const isInternalUdsModule = (moduleSpec) => {
|
|
360
|
-
return (moduleSpec.startsWith("@yahoo/uds") || moduleSpec.startsWith("../") || moduleSpec.startsWith("./")) && (moduleSpec.includes("/components/") || moduleSpec === "@yahoo/uds");
|
|
361
|
-
};
|
|
362
|
-
const pushUniqueComponentName = (components, name) => {
|
|
363
|
-
if (/^[A-Z]/.test(name) && !components.includes(name)) components.push(name);
|
|
364
|
-
};
|
|
365
|
-
const collectImportedInternalComponents = (sourceFile, internalComponents) => {
|
|
366
|
-
sourceFile.getImportDeclarations().forEach((importDecl) => {
|
|
367
|
-
if (!isInternalUdsModule(importDecl.getModuleSpecifierValue())) return;
|
|
368
|
-
importDecl.getNamedImports().forEach((namedImport) => pushUniqueComponentName(internalComponents, namedImport.getName()));
|
|
369
|
-
});
|
|
370
|
-
};
|
|
371
|
-
const getOrCreateComponentPropsMap = (internalComponentProps, componentName) => {
|
|
372
|
-
const existing = internalComponentProps.get(componentName);
|
|
373
|
-
if (existing) return existing;
|
|
374
|
-
const created = /* @__PURE__ */ new Map();
|
|
375
|
-
internalComponentProps.set(componentName, created);
|
|
376
|
-
return created;
|
|
377
|
-
};
|
|
378
|
-
const extractJsxAttributeLiteralValues = (attr, componentProps, propToVariantKeys) => {
|
|
379
|
-
if (!ts_morph.Node.isJsxAttribute(attr)) return null;
|
|
380
|
-
const propName = attr.getNameNode().getText();
|
|
381
|
-
const initializer = attr.getInitializer();
|
|
382
|
-
if (!initializer) return {
|
|
383
|
-
propName,
|
|
384
|
-
values: []
|
|
385
|
-
};
|
|
386
|
-
if (ts_morph.Node.isStringLiteral(initializer)) return {
|
|
387
|
-
propName,
|
|
388
|
-
values: [initializer.getLiteralValue()]
|
|
389
|
-
};
|
|
390
|
-
if (!ts_morph.Node.isJsxExpression(initializer)) return {
|
|
391
|
-
propName,
|
|
392
|
-
values: []
|
|
393
|
-
};
|
|
394
|
-
const expr = initializer.getExpression();
|
|
395
|
-
if (expr && ts_morph.Node.isStringLiteral(expr)) return {
|
|
396
|
-
propName,
|
|
397
|
-
values: [expr.getLiteralValue()]
|
|
398
|
-
};
|
|
399
|
-
if (expr && ts_morph.Node.isIdentifier(expr)) {
|
|
400
|
-
const identifierName = expr.getText();
|
|
401
|
-
if (componentProps.has(identifierName) && identifierName !== propName) addPropToVariantKeyMapping(propToVariantKeys, identifierName, propName);
|
|
402
|
-
}
|
|
403
|
-
return {
|
|
404
|
-
propName,
|
|
405
|
-
values: []
|
|
406
|
-
};
|
|
407
|
-
};
|
|
408
|
-
const collectInternalComponentUsages = (sourceFile, internalComponents, internalComponentProps, runtimeConfigInternalComponentProps, propToVariantKeys, componentProps, runtimeBindings) => {
|
|
409
|
-
[...sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.JsxSelfClosingElement), ...sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.JsxOpeningElement)].forEach((element) => {
|
|
410
|
-
const tagName = element.getTagNameNode().getText();
|
|
411
|
-
if (!/^[A-Z]/.test(tagName)) return;
|
|
412
|
-
pushUniqueComponentName(internalComponents, tagName);
|
|
413
|
-
element.getAttributes().forEach((attr) => {
|
|
414
|
-
if (ts_morph.Node.isJsxAttribute(attr)) {
|
|
415
|
-
const initializer = attr.getInitializer();
|
|
416
|
-
const expression = initializer && ts_morph.Node.isJsxExpression(initializer) ? initializer.getExpression() : void 0;
|
|
417
|
-
const runtimeSelectors = expression ? collectRuntimeSelectorsFromExpression(expression, runtimeBindings) : [];
|
|
418
|
-
if (runtimeSelectors.length > 0) {
|
|
419
|
-
const runtimePropsMap = getOrCreateComponentPropsMap(runtimeConfigInternalComponentProps, tagName);
|
|
420
|
-
const runtimePropName = attr.getNameNode().getText();
|
|
421
|
-
const existingRuntimeSelectors = runtimePropsMap.get(runtimePropName) ?? [];
|
|
422
|
-
runtimePropsMap.set(runtimePropName, [...new Set([...existingRuntimeSelectors, ...runtimeSelectors])]);
|
|
423
|
-
}
|
|
424
|
-
}
|
|
425
|
-
const extracted = extractJsxAttributeLiteralValues(attr, componentProps, propToVariantKeys);
|
|
426
|
-
if (!extracted || extracted.values.length === 0) return;
|
|
427
|
-
const componentPropsMap = getOrCreateComponentPropsMap(internalComponentProps, tagName);
|
|
428
|
-
const existingValues = componentPropsMap.get(extracted.propName) ?? [];
|
|
429
|
-
const mergedValues = [...new Set([...existingValues, ...extracted.values])];
|
|
430
|
-
componentPropsMap.set(extracted.propName, mergedValues);
|
|
431
|
-
});
|
|
432
|
-
});
|
|
433
|
-
};
|
|
434
|
-
/**
|
|
435
|
-
* Extract default prop values from a function's parameter destructuring
|
|
436
|
-
*/
|
|
437
|
-
const extractDefaultsFromFunction = (fn, defaults) => {
|
|
438
|
-
let params = [];
|
|
439
|
-
if (ts_morph.Node.isFunctionDeclaration(fn) || ts_morph.Node.isFunctionExpression(fn)) params = fn.getParameters();
|
|
440
|
-
else if (ts_morph.Node.isArrowFunction(fn)) params = fn.getParameters();
|
|
441
|
-
params.forEach((param) => {
|
|
442
|
-
if (!ts_morph.Node.isParameterDeclaration(param)) return;
|
|
443
|
-
const nameNode = param.getNameNode();
|
|
444
|
-
if (!nameNode || !ts_morph.Node.isObjectBindingPattern(nameNode)) return;
|
|
445
|
-
nameNode.getElements().forEach((element) => {
|
|
446
|
-
const propName = element.getPropertyNameNode()?.getText() || element.getName();
|
|
447
|
-
const initializer = element.getInitializer();
|
|
448
|
-
if (initializer && ts_morph.Node.isStringLiteral(initializer)) defaults.set(propName, initializer.getLiteralValue());
|
|
449
|
-
else if (initializer && ts_morph.Node.isIdentifier(initializer)) {
|
|
450
|
-
const resolved = resolveIdentifierToStringLiteral(initializer);
|
|
451
|
-
if (resolved) defaults.set(propName, resolved);
|
|
452
|
-
}
|
|
453
|
-
});
|
|
454
|
-
});
|
|
455
|
-
};
|
|
456
|
-
/**
|
|
457
|
-
* Extract ALL prop names from a function's parameter destructuring (not just defaults)
|
|
458
|
-
*/
|
|
459
|
-
const extractAllPropNames = (fn, propNames) => {
|
|
460
|
-
let params = [];
|
|
461
|
-
if (ts_morph.Node.isFunctionDeclaration(fn) || ts_morph.Node.isFunctionExpression(fn)) params = fn.getParameters();
|
|
462
|
-
else if (ts_morph.Node.isArrowFunction(fn)) params = fn.getParameters();
|
|
463
|
-
params.forEach((param) => {
|
|
464
|
-
if (!ts_morph.Node.isParameterDeclaration(param)) return;
|
|
465
|
-
const nameNode = param.getNameNode();
|
|
466
|
-
if (!nameNode || !ts_morph.Node.isObjectBindingPattern(nameNode)) return;
|
|
467
|
-
nameNode.getElements().forEach((element) => {
|
|
468
|
-
const propName = element.getPropertyNameNode()?.getText() || element.getName();
|
|
469
|
-
propNames.add(propName);
|
|
470
|
-
});
|
|
471
|
-
});
|
|
472
|
-
};
|
|
473
|
-
/**
|
|
474
|
-
* Extract string literals from cx() call arguments.
|
|
475
|
-
* Handles:
|
|
476
|
-
* - Direct string literals: cx('class1', 'class2')
|
|
477
|
-
* - Object keys: cx({ 'class1': condition, 'class2': true })
|
|
478
|
-
* - Nested calls and arrays
|
|
479
|
-
*/
|
|
480
|
-
const extractCxStringLiterals = (node, literals) => {
|
|
481
|
-
if (ts_morph.Node.isStringLiteral(node)) node.getLiteralValue().split(/\s+/).filter(Boolean).forEach((cls) => {
|
|
482
|
-
if (!literals.includes(cls)) literals.push(cls);
|
|
483
|
-
});
|
|
484
|
-
else if (ts_morph.Node.isObjectLiteralExpression(node)) node.getProperties().forEach((prop) => {
|
|
485
|
-
if (ts_morph.Node.isPropertyAssignment(prop)) {
|
|
486
|
-
const nameNode = prop.getNameNode();
|
|
487
|
-
if (ts_morph.Node.isStringLiteral(nameNode)) nameNode.getLiteralValue().split(/\s+/).filter(Boolean).forEach((cls) => {
|
|
488
|
-
if (!literals.includes(cls)) literals.push(cls);
|
|
489
|
-
});
|
|
490
|
-
else if (ts_morph.Node.isIdentifier(nameNode)) {
|
|
491
|
-
const cls = nameNode.getText();
|
|
492
|
-
if (!literals.includes(cls)) literals.push(cls);
|
|
493
|
-
}
|
|
494
|
-
}
|
|
495
|
-
});
|
|
496
|
-
else if (ts_morph.Node.isArrayLiteralExpression(node)) node.getElements().forEach((element) => {
|
|
497
|
-
extractCxStringLiterals(element, literals);
|
|
498
|
-
});
|
|
499
|
-
else if (ts_morph.Node.isConditionalExpression(node)) {
|
|
500
|
-
extractCxStringLiterals(node.getWhenTrue(), literals);
|
|
501
|
-
extractCxStringLiterals(node.getWhenFalse(), literals);
|
|
502
|
-
} else if (ts_morph.Node.isBinaryExpression(node)) {
|
|
503
|
-
extractCxStringLiterals(node.getLeft(), literals);
|
|
504
|
-
extractCxStringLiterals(node.getRight(), literals);
|
|
505
|
-
}
|
|
506
|
-
};
|
|
507
|
-
/**
|
|
508
|
-
* Try to resolve an identifier to its initializer value (for const declarations)
|
|
509
|
-
*/
|
|
510
|
-
const resolveIdentifierToObject = (sourceFile, identifier) => {
|
|
511
|
-
const decl = sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.VariableDeclaration).find((candidate) => candidate.getName() === identifier);
|
|
512
|
-
if (!decl) return null;
|
|
513
|
-
let initializer = decl.getInitializer();
|
|
514
|
-
if (!initializer) return null;
|
|
515
|
-
if (ts_morph.Node.isAsExpression(initializer)) initializer = initializer.getExpression();
|
|
516
|
-
if (!ts_morph.Node.isObjectLiteralExpression(initializer)) return null;
|
|
517
|
-
const result = {};
|
|
518
|
-
initializer.getProperties().forEach((prop) => {
|
|
519
|
-
if (!ts_morph.Node.isPropertyAssignment(prop)) return;
|
|
520
|
-
const propName = prop.getName();
|
|
521
|
-
const propInit = prop.getInitializer();
|
|
522
|
-
if (propInit && ts_morph.Node.isStringLiteral(propInit)) result[propName] = propInit.getLiteralValue();
|
|
523
|
-
});
|
|
524
|
-
return result;
|
|
525
|
-
};
|
|
526
|
-
/**
|
|
527
|
-
* Extract motion CSS variable prefixes from SpringMotionConfig usage.
|
|
528
|
-
* Returns prefixes like ['--uds-motion-bouncy-4-', '--uds-motion-smooth-3-']
|
|
529
|
-
*/
|
|
530
|
-
const extractMotionVarPrefixes = (sourceFile) => {
|
|
531
|
-
const prefixes = [];
|
|
532
|
-
[...sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.JsxSelfClosingElement), ...sourceFile.getDescendantsOfKind(ts_morph.SyntaxKind.JsxOpeningElement)].forEach((element) => {
|
|
533
|
-
if (element.getTagNameNode().getText() !== "SpringMotionConfig") return;
|
|
534
|
-
const props = {
|
|
535
|
-
layoutVariant: null,
|
|
536
|
-
layoutSpeed: null,
|
|
537
|
-
colorVariant: null,
|
|
538
|
-
colorSpeed: null
|
|
539
|
-
};
|
|
540
|
-
element.getAttributes().forEach((attr) => {
|
|
541
|
-
if (ts_morph.Node.isJsxSpreadAttribute(attr)) {
|
|
542
|
-
const expr = attr.getExpression();
|
|
543
|
-
if (ts_morph.Node.isIdentifier(expr)) {
|
|
544
|
-
const spreadObj = resolveIdentifierToObject(sourceFile, expr.getText());
|
|
545
|
-
if (spreadObj) Object.keys(props).forEach((key) => {
|
|
546
|
-
if (key in spreadObj) props[key] = spreadObj[key];
|
|
547
|
-
});
|
|
548
|
-
}
|
|
549
|
-
return;
|
|
550
|
-
}
|
|
551
|
-
if (!ts_morph.Node.isJsxAttribute(attr)) return;
|
|
552
|
-
const propName = attr.getNameNode().getText();
|
|
553
|
-
if (!(propName in props)) return;
|
|
554
|
-
const initializer = attr.getInitializer();
|
|
555
|
-
if (initializer) {
|
|
556
|
-
if (ts_morph.Node.isStringLiteral(initializer)) props[propName] = initializer.getLiteralValue();
|
|
557
|
-
else if (ts_morph.Node.isJsxExpression(initializer)) {
|
|
558
|
-
const expr = initializer.getExpression();
|
|
559
|
-
if (expr && ts_morph.Node.isStringLiteral(expr)) props[propName] = expr.getLiteralValue();
|
|
560
|
-
}
|
|
561
|
-
}
|
|
562
|
-
});
|
|
563
|
-
const layoutPrefix = `--uds-motion-${props.layoutVariant ?? require_index.SPRING_MOTION_DEFAULTS.layoutVariant}-${props.layoutSpeed ?? require_index.SPRING_MOTION_DEFAULTS.layoutSpeed}-`;
|
|
564
|
-
if (!prefixes.includes(layoutPrefix)) prefixes.push(layoutPrefix);
|
|
565
|
-
const colorPrefix = `--uds-motion-${props.colorVariant ?? require_index.SPRING_MOTION_DEFAULTS.colorVariant}-${props.colorSpeed ?? require_index.SPRING_MOTION_DEFAULTS.colorSpeed}-`;
|
|
566
|
-
if (!prefixes.includes(colorPrefix)) prefixes.push(colorPrefix);
|
|
567
|
-
});
|
|
568
|
-
return prefixes;
|
|
569
|
-
};
|
|
570
|
-
const resolveIdentifierToStringLiteral = (identifier) => {
|
|
571
|
-
if (!ts_morph.Node.isIdentifier(identifier)) return null;
|
|
572
|
-
const symbol = identifier.getSymbol();
|
|
573
|
-
if (!symbol) return resolveImportedIdentifier(identifier);
|
|
574
|
-
const resolvedDeclarationValue = symbol.getDeclarations().reduce((resolved, declaration) => {
|
|
575
|
-
if (resolved) return resolved;
|
|
576
|
-
if (ts_morph.Node.isVariableDeclaration(declaration)) {
|
|
577
|
-
let initializer = declaration.getInitializer();
|
|
578
|
-
if (initializer && ts_morph.Node.isAsExpression(initializer)) initializer = initializer.getExpression();
|
|
579
|
-
if (initializer && ts_morph.Node.isStringLiteral(initializer)) return initializer.getLiteralValue();
|
|
580
|
-
}
|
|
581
|
-
if (ts_morph.Node.isEnumMember(declaration)) {
|
|
582
|
-
const initializer = declaration.getInitializer();
|
|
583
|
-
if (initializer && ts_morph.Node.isStringLiteral(initializer)) return initializer.getLiteralValue();
|
|
584
|
-
}
|
|
585
|
-
}, void 0);
|
|
586
|
-
if (resolvedDeclarationValue) return resolvedDeclarationValue;
|
|
587
|
-
return resolveImportedIdentifier(identifier);
|
|
588
|
-
};
|
|
589
|
-
const resolveImportedIdentifier = (identifier) => {
|
|
590
|
-
if (!ts_morph.Node.isIdentifier(identifier)) return null;
|
|
591
|
-
const name = identifier.getText();
|
|
592
|
-
const sourceFile = identifier.getSourceFile();
|
|
593
|
-
const project = sourceFile.getProject();
|
|
594
|
-
const baseDir = node_path.default.dirname(sourceFile.getFilePath());
|
|
595
|
-
const importResolution = sourceFile.getImportDeclarations().reduce((resolvedImport, importDecl) => {
|
|
596
|
-
if (resolvedImport) return resolvedImport;
|
|
597
|
-
if (!importDecl.getNamedImports().find((n) => n.getName() === name)) return;
|
|
598
|
-
const moduleSpec = importDecl.getModuleSpecifierValue();
|
|
599
|
-
if (!moduleSpec.startsWith(".") || hasImportQuery(moduleSpec)) return;
|
|
600
|
-
const resolvedBase = node_path.default.resolve(baseDir, moduleSpec);
|
|
601
|
-
return [
|
|
602
|
-
resolvedBase,
|
|
603
|
-
`${resolvedBase}.ts`,
|
|
604
|
-
`${resolvedBase}.tsx`
|
|
605
|
-
].reduce((resolvedCandidate, candidate) => {
|
|
606
|
-
if (resolvedCandidate) return resolvedCandidate;
|
|
607
|
-
if (!(0, node_fs.existsSync)(candidate)) return;
|
|
608
|
-
const importedFile = project.addSourceFileAtPathIfExists(candidate);
|
|
609
|
-
if (!importedFile) return;
|
|
610
|
-
const varDecl = importedFile.getVariableDeclaration(name);
|
|
611
|
-
if (!varDecl) return;
|
|
612
|
-
let initializer = varDecl.getInitializer();
|
|
613
|
-
if (initializer && ts_morph.Node.isAsExpression(initializer)) initializer = initializer.getExpression();
|
|
614
|
-
return initializer && ts_morph.Node.isStringLiteral(initializer) ? initializer.getLiteralValue() : void 0;
|
|
615
|
-
}, void 0);
|
|
616
|
-
}, void 0);
|
|
617
|
-
if (importResolution) return importResolution;
|
|
618
|
-
return null;
|
|
619
|
-
};
|
|
620
|
-
//#endregion
|
|
621
|
-
exports.analyzeComponent = analyzeComponent;
|
|
622
|
-
exports.scanComponentFiles = scanComponentFiles;
|