@yahoo/uds 3.114.0-beta.2 → 3.114.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.
Files changed (247) hide show
  1. package/dist/automated-config/dist/generated/autoVariants.cjs +3 -0
  2. package/dist/automated-config/dist/generated/autoVariants.d.cts +3 -0
  3. package/dist/automated-config/dist/generated/autoVariants.d.ts +3 -0
  4. package/dist/automated-config/dist/generated/autoVariants.js +3 -0
  5. package/dist/automated-config/dist/generated/generatedConfigs.cjs +1883 -0
  6. package/dist/automated-config/dist/generated/generatedConfigs.d.cts +175 -1
  7. package/dist/automated-config/dist/generated/generatedConfigs.d.ts +175 -1
  8. package/dist/automated-config/dist/generated/generatedConfigs.js +1882 -1
  9. package/dist/automated-config/dist/generated/universalTokensConfigAuto.cjs +84 -0
  10. package/dist/automated-config/dist/generated/universalTokensConfigAuto.d.cts +3 -1
  11. package/dist/automated-config/dist/generated/universalTokensConfigAuto.d.ts +3 -1
  12. package/dist/automated-config/dist/generated/universalTokensConfigAuto.js +84 -0
  13. package/dist/automated-config/dist/mapTextVariantFixtureToValue.cjs +1 -12
  14. package/dist/automated-config/dist/mapTextVariantFixtureToValue.js +1 -12
  15. package/dist/automated-config/dist/properties.cjs +58 -12
  16. package/dist/automated-config/dist/properties.d.cts +8 -0
  17. package/dist/automated-config/dist/properties.d.ts +8 -0
  18. package/dist/automated-config/dist/properties.js +58 -12
  19. package/dist/automated-config/dist/utils/getConfigVariantProperties.d.cts +2 -2
  20. package/dist/automated-config/dist/utils/getConfigVariantProperties.d.ts +2 -2
  21. package/dist/cli/commands/sync.cjs +7 -1
  22. package/dist/cli/commands/sync.d.cts +1 -1
  23. package/dist/cli/commands/sync.d.ts +1 -1
  24. package/dist/cli/commands/sync.js +7 -1
  25. package/dist/cli/commands/version.cjs +2 -0
  26. package/dist/cli/commands/version.d.cts +1 -1
  27. package/dist/cli/commands/version.d.ts +1 -1
  28. package/dist/cli/commands/version.js +2 -0
  29. package/dist/cli/dist/cli.cjs +1 -1
  30. package/dist/cli/dist/cli.js +1 -1
  31. package/dist/cli/dist/commands/editor-rules.cjs +2 -2
  32. package/dist/cli/dist/commands/editor-rules.js +2 -2
  33. package/dist/cli/dist/utils/rules/config.cjs +1 -1
  34. package/dist/cli/dist/utils/rules/config.js +1 -1
  35. package/dist/cli/runner.cjs +2 -11
  36. package/dist/cli/runner.js +2 -11
  37. package/dist/components/Scrim.cjs +28 -0
  38. package/dist/components/Scrim.d.cts +14 -0
  39. package/dist/components/Scrim.d.ts +14 -0
  40. package/dist/components/Scrim.js +26 -0
  41. package/dist/components/client/BottomSheet/BottomSheet.cjs +209 -0
  42. package/dist/components/client/BottomSheet/BottomSheet.d.cts +77 -0
  43. package/dist/components/client/BottomSheet/BottomSheet.d.ts +77 -0
  44. package/dist/components/client/BottomSheet/BottomSheet.js +207 -0
  45. package/dist/components/client/BottomSheet/BottomSheetContent.cjs +26 -0
  46. package/dist/components/client/BottomSheet/BottomSheetContent.d.cts +15 -0
  47. package/dist/components/client/BottomSheet/BottomSheetContent.d.ts +15 -0
  48. package/dist/components/client/BottomSheet/BottomSheetContent.js +24 -0
  49. package/dist/components/client/BottomSheet/BottomSheetDismiss.cjs +15 -0
  50. package/dist/components/client/BottomSheet/BottomSheetDismiss.d.cts +12 -0
  51. package/dist/components/client/BottomSheet/BottomSheetDismiss.d.ts +12 -0
  52. package/dist/components/client/BottomSheet/BottomSheetDismiss.js +13 -0
  53. package/dist/components/client/BottomSheet/BottomSheetHandle.cjs +30 -0
  54. package/dist/components/client/BottomSheet/BottomSheetHandle.d.cts +19 -0
  55. package/dist/components/client/BottomSheet/BottomSheetHandle.d.ts +19 -0
  56. package/dist/components/client/BottomSheet/BottomSheetHandle.js +28 -0
  57. package/dist/components/client/BottomSheet/BottomSheetHeader.cjs +42 -0
  58. package/dist/components/client/BottomSheet/BottomSheetHeader.d.cts +18 -0
  59. package/dist/components/client/BottomSheet/BottomSheetHeader.d.ts +18 -0
  60. package/dist/components/client/BottomSheet/BottomSheetHeader.js +40 -0
  61. package/dist/components/client/BottomSheet/BottomSheetProvider.cjs +21 -0
  62. package/dist/components/client/BottomSheet/BottomSheetProvider.d.cts +19 -0
  63. package/dist/components/client/BottomSheet/BottomSheetProvider.d.ts +19 -0
  64. package/dist/components/client/BottomSheet/BottomSheetProvider.js +19 -0
  65. package/dist/components/client/BottomSheet/BottomSheetTrigger.cjs +15 -0
  66. package/dist/components/client/BottomSheet/BottomSheetTrigger.d.cts +12 -0
  67. package/dist/components/client/BottomSheet/BottomSheetTrigger.d.ts +12 -0
  68. package/dist/components/client/BottomSheet/BottomSheetTrigger.js +13 -0
  69. package/dist/components/client/BottomSheet/UDSBottomSheetConfigProvider.cjs +32 -0
  70. package/dist/components/client/BottomSheet/UDSBottomSheetConfigProvider.d.cts +22 -0
  71. package/dist/components/client/BottomSheet/UDSBottomSheetConfigProvider.d.ts +22 -0
  72. package/dist/components/client/BottomSheet/UDSBottomSheetConfigProvider.js +29 -0
  73. package/dist/components/client/BottomSheet/index.cjs +22 -0
  74. package/dist/components/client/BottomSheet/index.d.cts +10 -0
  75. package/dist/components/client/BottomSheet/index.d.ts +10 -0
  76. package/dist/components/client/BottomSheet/index.js +12 -0
  77. package/dist/components/client/BottomSheet/useBottomSheetDrag.cjs +188 -0
  78. package/dist/components/client/BottomSheet/useBottomSheetDrag.d.cts +44 -0
  79. package/dist/components/client/BottomSheet/useBottomSheetDrag.d.ts +44 -0
  80. package/dist/components/client/BottomSheet/useBottomSheetDrag.js +185 -0
  81. package/dist/components/client/BottomSheet/useBottomSheetSnapModel.cjs +138 -0
  82. package/dist/components/client/BottomSheet/useBottomSheetSnapModel.d.cts +46 -0
  83. package/dist/components/client/BottomSheet/useBottomSheetSnapModel.d.ts +46 -0
  84. package/dist/components/client/BottomSheet/useBottomSheetSnapModel.js +135 -0
  85. package/dist/components/client/BottomSheet/useBottomSheetStore.cjs +34 -0
  86. package/dist/components/client/BottomSheet/useBottomSheetStore.d.cts +38 -0
  87. package/dist/components/client/BottomSheet/useBottomSheetStore.d.ts +38 -0
  88. package/dist/components/client/BottomSheet/useBottomSheetStore.js +31 -0
  89. package/dist/components/client/BottomSheet/useBottomSheetStoreInternal.cjs +17 -0
  90. package/dist/components/client/BottomSheet/useBottomSheetStoreInternal.d.cts +13 -0
  91. package/dist/components/client/BottomSheet/useBottomSheetStoreInternal.d.ts +13 -0
  92. package/dist/components/client/BottomSheet/useBottomSheetStoreInternal.js +15 -0
  93. package/dist/components/client/BottomSheet/useExpansionMargins.cjs +89 -0
  94. package/dist/components/client/BottomSheet/useExpansionMargins.d.cts +34 -0
  95. package/dist/components/client/BottomSheet/useExpansionMargins.d.ts +34 -0
  96. package/dist/components/client/BottomSheet/useExpansionMargins.js +87 -0
  97. package/dist/components/client/BottomSheet/useViewportHeight.cjs +32 -0
  98. package/dist/components/client/BottomSheet/useViewportHeight.d.cts +9 -0
  99. package/dist/components/client/BottomSheet/useViewportHeight.d.ts +9 -0
  100. package/dist/components/client/BottomSheet/useViewportHeight.js +30 -0
  101. package/dist/components/client/BottomSheet/useVirtualKeyboard.cjs +48 -0
  102. package/dist/components/client/BottomSheet/useVirtualKeyboard.d.cts +10 -0
  103. package/dist/components/client/BottomSheet/useVirtualKeyboard.d.ts +10 -0
  104. package/dist/components/client/BottomSheet/useVirtualKeyboard.js +46 -0
  105. package/dist/components/client/BottomSheet/utils.cjs +128 -0
  106. package/dist/components/client/BottomSheet/utils.d.cts +61 -0
  107. package/dist/components/client/BottomSheet/utils.d.ts +61 -0
  108. package/dist/components/client/BottomSheet/utils.js +118 -0
  109. package/dist/components/client/Menu/Menu.Content.cjs +1 -1
  110. package/dist/components/client/Menu/Menu.Content.js +1 -1
  111. package/dist/components/client/Menu/Menu.ItemCheckbox.d.cts +1 -1
  112. package/dist/components/client/Menu/Menu.ItemCheckbox.d.ts +1 -1
  113. package/dist/components/client/Menu/Menu.index.d.cts +1 -1
  114. package/dist/components/client/index.cjs +16 -0
  115. package/dist/components/client/index.d.cts +10 -1
  116. package/dist/components/client/index.d.ts +10 -1
  117. package/dist/components/client/index.js +9 -1
  118. package/dist/components/client/providers/UDSConfigProvider.cjs +10 -6
  119. package/dist/components/client/providers/UDSConfigProvider.d.cts +1 -0
  120. package/dist/components/client/providers/UDSConfigProvider.d.ts +1 -0
  121. package/dist/components/client/providers/UDSConfigProvider.js +10 -6
  122. package/dist/components/index.cjs +24 -0
  123. package/dist/components/index.d.cts +9 -1
  124. package/dist/components/index.d.ts +9 -1
  125. package/dist/components/index.js +17 -1
  126. package/dist/config/dist/index.cjs +110 -2
  127. package/dist/config/dist/index.js +110 -2
  128. package/dist/fixtures/dist/index.cjs +103 -0
  129. package/dist/fixtures/dist/index.d.cts +3 -2
  130. package/dist/fixtures/dist/index.d.ts +3 -2
  131. package/dist/fixtures/dist/index.js +103 -1
  132. package/dist/fixtures/index.cjs +1 -0
  133. package/dist/fixtures/index.d.cts +2 -2
  134. package/dist/fixtures/index.d.ts +2 -2
  135. package/dist/fixtures/index.js +2 -2
  136. package/dist/index.cjs +20 -2
  137. package/dist/index.d.cts +12 -5
  138. package/dist/index.d.ts +12 -5
  139. package/dist/index.js +11 -3
  140. package/dist/runtime/bottomSheetConfig.cjs +11 -0
  141. package/dist/runtime/bottomSheetConfig.d.cts +15 -0
  142. package/dist/runtime/bottomSheetConfig.d.ts +15 -0
  143. package/dist/runtime/bottomSheetConfig.js +9 -0
  144. package/dist/runtime/index.cjs +2 -0
  145. package/dist/runtime/index.d.cts +2 -1
  146. package/dist/runtime/index.d.ts +2 -1
  147. package/dist/runtime/index.js +2 -1
  148. package/dist/runtime/udsConfig.cjs +2 -0
  149. package/dist/runtime/udsConfig.d.cts +2 -0
  150. package/dist/runtime/udsConfig.d.ts +2 -0
  151. package/dist/runtime/udsConfig.js +2 -0
  152. package/dist/styles/styler.d.cts +33 -30
  153. package/dist/styles/styler.d.ts +33 -30
  154. package/dist/styles/variants.cjs +278 -278
  155. package/dist/styles/variants.d.cts +9 -0
  156. package/dist/styles/variants.d.ts +9 -0
  157. package/dist/styles/variants.js +278 -278
  158. package/dist/tailwind/dist/commands/generateComponentData.cjs +31 -33
  159. package/dist/tailwind/dist/commands/generateComponentData.d.ts +1 -1
  160. package/dist/tailwind/dist/commands/generateComponentData.js +31 -33
  161. package/dist/tailwind/dist/commands/generatePurgeCSSData.d.ts +1 -1
  162. package/dist/tailwind/dist/commands/purge.cjs +4 -3
  163. package/dist/tailwind/dist/commands/purge.d.ts +1 -1
  164. package/dist/tailwind/dist/commands/purge.js +4 -3
  165. package/dist/tailwind/dist/index.d.cts +0 -1
  166. package/dist/tailwind/dist/index.d.ts +3 -5
  167. package/dist/tailwind/dist/purger/legacy/purgeCSS.cjs +3 -4
  168. package/dist/tailwind/dist/purger/legacy/purgeCSS.js +3 -4
  169. package/dist/tailwind/dist/purger/optimized/ast/expressions.cjs +125 -122
  170. package/dist/tailwind/dist/purger/optimized/ast/expressions.js +125 -122
  171. package/dist/tailwind/dist/purger/optimized/ast/jsx.cjs +8 -1
  172. package/dist/tailwind/dist/purger/optimized/ast/jsx.js +8 -1
  173. package/dist/tailwind/dist/purger/optimized/purge.cjs +10 -11
  174. package/dist/tailwind/dist/purger/optimized/purge.js +9 -10
  175. package/dist/tailwind/dist/purger/optimized/purgeFromCode.cjs +127 -232
  176. package/dist/tailwind/dist/purger/optimized/purgeFromCode.js +127 -232
  177. package/dist/tailwind/dist/purger/optimized/utils/componentAnalyzer.cjs +262 -330
  178. package/dist/tailwind/dist/purger/optimized/utils/componentAnalyzer.js +262 -329
  179. package/dist/tailwind/dist/purger/optimized/utils/files.cjs +3 -4
  180. package/dist/tailwind/dist/purger/optimized/utils/files.js +3 -4
  181. package/dist/tailwind/dist/purger/optimized/utils/safelist.cjs +21 -13
  182. package/dist/tailwind/dist/purger/optimized/utils/safelist.js +21 -13
  183. package/dist/tailwind/dist/tailwind/plugins/components.cjs +2 -0
  184. package/dist/tailwind/dist/tailwind/plugins/components.js +3 -1
  185. package/dist/tailwind/dist/tailwind/plugins/typography.cjs +13 -41
  186. package/dist/tailwind/dist/tailwind/plugins/typography.js +13 -41
  187. package/dist/tailwind/dist/tailwind/utils/composeTailwindPlugins.cjs +2 -4
  188. package/dist/tailwind/dist/tailwind/utils/composeTailwindPlugins.d.cts +1 -10
  189. package/dist/tailwind/dist/tailwind/utils/composeTailwindPlugins.d.ts +1 -10
  190. package/dist/tailwind/dist/tailwind/utils/composeTailwindPlugins.js +2 -4
  191. package/dist/tailwind/dist/utils/tsMorph.cjs +1 -1
  192. package/dist/tokens/automation/configs/index.cjs +2 -0
  193. package/dist/tokens/automation/configs/index.d.cts +2 -2
  194. package/dist/tokens/automation/configs/index.d.ts +2 -2
  195. package/dist/tokens/automation/configs/index.js +2 -2
  196. package/dist/tokens/automation/index.cjs +2 -0
  197. package/dist/tokens/automation/index.d.cts +2 -2
  198. package/dist/tokens/automation/index.d.ts +2 -2
  199. package/dist/tokens/automation/index.js +2 -2
  200. package/dist/tokens/index.cjs +2 -0
  201. package/dist/tokens/index.d.cts +3 -3
  202. package/dist/tokens/index.d.ts +3 -3
  203. package/dist/tokens/index.js +2 -2
  204. package/dist/tokens/types.d.cts +2 -2
  205. package/dist/tokens/types.d.ts +2 -2
  206. package/dist/types/dist/index.d.cts +76 -1
  207. package/dist/types/dist/index.d.ts +76 -1
  208. package/dist/uds/generated/componentData.cjs +1187 -961
  209. package/dist/uds/generated/componentData.js +1111 -939
  210. package/dist/uds/generated/tailwindPurge.cjs +57 -29
  211. package/dist/uds/generated/tailwindPurge.js +57 -29
  212. package/dist/uds/package.cjs +4 -10
  213. package/dist/uds/package.js +4 -10
  214. package/package.json +4 -7
  215. package/dist/cli/dist/lib/logger.cjs +0 -66
  216. package/dist/cli/dist/lib/logger.js +0 -66
  217. package/dist/tailwind/dist/commands/css.cjs +0 -79
  218. package/dist/tailwind/dist/commands/css.d.ts +0 -3
  219. package/dist/tailwind/dist/commands/css.helpers.cjs +0 -32
  220. package/dist/tailwind/dist/commands/css.helpers.js +0 -28
  221. package/dist/tailwind/dist/commands/css.js +0 -79
  222. package/dist/tailwind/dist/css/generate.cjs +0 -120
  223. package/dist/tailwind/dist/css/generate.d.cts +0 -30
  224. package/dist/tailwind/dist/css/generate.d.ts +0 -31
  225. package/dist/tailwind/dist/css/generate.helpers.cjs +0 -112
  226. package/dist/tailwind/dist/css/generate.helpers.js +0 -100
  227. package/dist/tailwind/dist/css/generate.js +0 -115
  228. package/dist/tailwind/dist/css/postcss.cjs +0 -35
  229. package/dist/tailwind/dist/css/postcss.helpers.cjs +0 -27
  230. package/dist/tailwind/dist/css/postcss.helpers.js +0 -26
  231. package/dist/tailwind/dist/css/postcss.js +0 -35
  232. package/dist/tailwind/dist/css/runner.cjs +0 -278
  233. package/dist/tailwind/dist/css/runner.helpers.cjs +0 -26
  234. package/dist/tailwind/dist/css/runner.helpers.js +0 -23
  235. package/dist/tailwind/dist/css/runner.js +0 -275
  236. package/dist/tailwind/dist/css/theme.cjs +0 -12
  237. package/dist/tailwind/dist/css/theme.d.cts +0 -66
  238. package/dist/tailwind/dist/css/theme.d.ts +0 -66
  239. package/dist/tailwind/dist/css/theme.js +0 -11
  240. package/dist/tailwind/dist/css/utils.cjs +0 -234
  241. package/dist/tailwind/dist/css/utils.js +0 -223
  242. package/dist/tailwind/dist/utils/optimizeCSS.cjs +0 -405
  243. package/dist/tailwind/dist/utils/optimizeCSS.js +0 -403
  244. package/dist/tailwind/dist/utils/postcssPreserveVars.cjs +0 -67
  245. package/dist/tailwind/dist/utils/postcssPreserveVars.js +0 -65
  246. package/generated/componentData.json +0 -2397
  247. package/generated/tailwindPurge.ts +0 -4560
@@ -10,19 +10,18 @@ fast_glob = require_runtime.__toESM(fast_glob);
10
10
  /**
11
11
  * Scan a directory for JSX/TSX files
12
12
  */
13
- const scanForFiles = async (entry) => {
13
+ async function scanForFiles(entry) {
14
14
  const workspaceDir = process.env.PWD ?? process.cwd();
15
15
  const srcDir = node_path.default.join(workspaceDir, entry);
16
16
  try {
17
17
  return await (0, fast_glob.default)("**/*.{jsx,tsx}", {
18
18
  cwd: srcDir,
19
- absolute: true,
20
- ignore: ["**/node_modules/**"]
19
+ absolute: true
21
20
  });
22
21
  } catch {
23
22
  throw new Error(`Couldn't find the entry directory: ${entry}. Please make sure it exists.`);
24
23
  }
25
- };
24
+ }
26
25
 
27
26
  //#endregion
28
27
  exports.scanForFiles = scanForFiles;
@@ -7,19 +7,18 @@ import fg from "fast-glob";
7
7
  /**
8
8
  * Scan a directory for JSX/TSX files
9
9
  */
10
- const scanForFiles = async (entry) => {
10
+ async function scanForFiles(entry) {
11
11
  const workspaceDir = process.env.PWD ?? process.cwd();
12
12
  const srcDir = path.join(workspaceDir, entry);
13
13
  try {
14
14
  return await fg("**/*.{jsx,tsx}", {
15
15
  cwd: srcDir,
16
- absolute: true,
17
- ignore: ["**/node_modules/**"]
16
+ absolute: true
18
17
  });
19
18
  } catch {
20
19
  throw new Error(`Couldn't find the entry directory: ${entry}. Please make sure it exists.`);
21
20
  }
22
- };
21
+ }
23
22
 
24
23
  //#endregion
25
24
  export { scanForFiles };
@@ -1,9 +1,9 @@
1
1
  /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
2
2
  const require_runtime = require('../../../../../_virtual/_rolldown/runtime.cjs');
3
3
  const require_index = require('../../../../../css-tokens/dist/index.cjs');
4
- let node_fs = require("node:fs");
5
4
  let node_path = require("node:path");
6
5
  node_path = require_runtime.__toESM(node_path);
6
+ let node_fs = require("node:fs");
7
7
 
8
8
  //#region ../tailwind/dist/purger/optimized/utils/safelist.js
9
9
  /*! © 2026 Yahoo, Inc. UDS Tailwind and Purger v0.0.0-development */
@@ -14,32 +14,40 @@ const colorModeToClass = {
14
14
  /**
15
15
  * Deduplicate and clean a safelist
16
16
  */
17
- const deduplicateSafelist = (safelist) => {
18
- const deduped = safelist.map((cls) => cls.replaceAll("\\", "").trim()).filter((cleaned) => cleaned && isValidClassName(cleaned));
19
- return Array.from(new Set(deduped));
20
- };
17
+ function deduplicateSafelist(safelist) {
18
+ const set = /* @__PURE__ */ new Set();
19
+ for (const cls of safelist) {
20
+ const cleaned = cls.replaceAll("\\", "").trim();
21
+ if (cleaned && isValidClassName(cleaned)) set.add(cleaned);
22
+ }
23
+ return Array.from(set);
24
+ }
21
25
  /**
22
26
  * Check if a class name is valid (not malformed from CSS escape sequences)
23
27
  */
24
- const isValidClassName = (cls) => {
28
+ function isValidClassName(cls) {
25
29
  if (cls.match(/^[0-9]/)) return false;
26
30
  if (cls.match(/[0-9][a-z]$/)) return false;
27
31
  if (cls.includes("2c")) return false;
32
+ if (cls.includes("0.")) return false;
28
33
  return true;
29
- };
34
+ }
30
35
  /**
31
36
  * Get classes for enabled color modes.
32
37
  * Note: Light mode is not included by default since :root already defines light mode styles.
33
38
  * Only dark mode class is needed to enable dark mode switching.
34
39
  */
35
- const getThemeAndScaleClasses = (colorModes) => {
36
- if (!colorModes || colorModes.length === 0) return [colorModeToClass.dark];
37
- return colorModes.map((mode) => colorModeToClass[mode]).filter((className) => Boolean(className));
38
- };
40
+ function getThemeAndScaleClasses(colorModes) {
41
+ const classes = [];
42
+ if (colorModes && colorModes.length > 0) {
43
+ for (const mode of colorModes) if (colorModeToClass[mode]) classes.push(colorModeToClass[mode]);
44
+ } else classes.push(colorModeToClass.dark);
45
+ return classes;
46
+ }
39
47
  /**
40
48
  * Save safelist to a file
41
49
  */
42
- const saveSafelistToFile = async (safelist, outputPath) => {
50
+ async function saveSafelistToFile(safelist, outputPath) {
43
51
  const content = `
44
52
  //! This file is generated by the optimized purger from @yahoo/uds
45
53
  //! Do not edit directly
@@ -48,7 +56,7 @@ export const safelist = ${JSON.stringify(safelist)};
48
56
  `;
49
57
  (0, node_fs.mkdirSync)(node_path.default.dirname(outputPath), { recursive: true });
50
58
  (0, node_fs.writeFileSync)(outputPath, content);
51
- };
59
+ }
52
60
 
53
61
  //#endregion
54
62
  exports.deduplicateSafelist = deduplicateSafelist;
@@ -1,7 +1,7 @@
1
1
  /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
2
2
  import { DARK_COLOR_MODE_CLASSNAME, LIGHT_COLOR_MODE_CLASSNAME } from "../../../../../css-tokens/dist/index.js";
3
- import { mkdirSync, writeFileSync } from "node:fs";
4
3
  import path from "node:path";
4
+ import { mkdirSync, writeFileSync } from "node:fs";
5
5
 
6
6
  //#region ../tailwind/dist/purger/optimized/utils/safelist.js
7
7
  /*! © 2026 Yahoo, Inc. UDS Tailwind and Purger v0.0.0-development */
@@ -12,32 +12,40 @@ const colorModeToClass = {
12
12
  /**
13
13
  * Deduplicate and clean a safelist
14
14
  */
15
- const deduplicateSafelist = (safelist) => {
16
- const deduped = safelist.map((cls) => cls.replaceAll("\\", "").trim()).filter((cleaned) => cleaned && isValidClassName(cleaned));
17
- return Array.from(new Set(deduped));
18
- };
15
+ function deduplicateSafelist(safelist) {
16
+ const set = /* @__PURE__ */ new Set();
17
+ for (const cls of safelist) {
18
+ const cleaned = cls.replaceAll("\\", "").trim();
19
+ if (cleaned && isValidClassName(cleaned)) set.add(cleaned);
20
+ }
21
+ return Array.from(set);
22
+ }
19
23
  /**
20
24
  * Check if a class name is valid (not malformed from CSS escape sequences)
21
25
  */
22
- const isValidClassName = (cls) => {
26
+ function isValidClassName(cls) {
23
27
  if (cls.match(/^[0-9]/)) return false;
24
28
  if (cls.match(/[0-9][a-z]$/)) return false;
25
29
  if (cls.includes("2c")) return false;
30
+ if (cls.includes("0.")) return false;
26
31
  return true;
27
- };
32
+ }
28
33
  /**
29
34
  * Get classes for enabled color modes.
30
35
  * Note: Light mode is not included by default since :root already defines light mode styles.
31
36
  * Only dark mode class is needed to enable dark mode switching.
32
37
  */
33
- const getThemeAndScaleClasses = (colorModes) => {
34
- if (!colorModes || colorModes.length === 0) return [colorModeToClass.dark];
35
- return colorModes.map((mode) => colorModeToClass[mode]).filter((className) => Boolean(className));
36
- };
38
+ function getThemeAndScaleClasses(colorModes) {
39
+ const classes = [];
40
+ if (colorModes && colorModes.length > 0) {
41
+ for (const mode of colorModes) if (colorModeToClass[mode]) classes.push(colorModeToClass[mode]);
42
+ } else classes.push(colorModeToClass.dark);
43
+ return classes;
44
+ }
37
45
  /**
38
46
  * Save safelist to a file
39
47
  */
40
- const saveSafelistToFile = async (safelist, outputPath) => {
48
+ async function saveSafelistToFile(safelist, outputPath) {
41
49
  const content = `
42
50
  //! This file is generated by the optimized purger from @yahoo/uds
43
51
  //! Do not edit directly
@@ -46,7 +54,7 @@ export const safelist = ${JSON.stringify(safelist)};
46
54
  `;
47
55
  mkdirSync(path.dirname(outputPath), { recursive: true });
48
56
  writeFileSync(outputPath, content);
49
- };
57
+ }
50
58
 
51
59
  //#endregion
52
60
  export { deduplicateSafelist, getThemeAndScaleClasses, saveSafelistToFile };
@@ -26,6 +26,8 @@ const componentsPlugin = tailwindcss_plugin_js.default.withOptions(({ config, pr
26
26
  if (config.input) addComponents(require_index$1.generateStyles(require_generatedConfigs.InputConfig, config.input, theme, previewOptions));
27
27
  if (config?.toast) addComponents(require_index$1.generateStyles(require_generatedConfigs.ToastConfig, config.toast, theme, previewOptions));
28
28
  if (config.tooltip) addComponents(require_index$1.generateStyles(require_generatedConfigs.TooltipConfig, config.tooltip, theme, previewOptions));
29
+ if (config?.bottomSheet) addComponents(require_index$1.generateStyles(require_generatedConfigs.BottomSheetConfig, config.bottomSheet, theme, previewOptions));
30
+ if (config?.scrim) addComponents(require_index$1.generateStyles(require_generatedConfigs.ScrimConfig, config.scrim, theme, previewOptions));
29
31
  }, () => ({ theme: { extend: { opacity: require_index.opacityMap } } }));
30
32
 
31
33
  //#endregion
@@ -1,7 +1,7 @@
1
1
  /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
2
2
  import { opacityMap } from "../../../../fixtures/dist/index.js";
3
3
  import { generateStyles } from "../../../../automated-config/dist/utils/index.js";
4
- import { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../../../automated-config/dist/generated/generatedConfigs.js";
4
+ import { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../../../automated-config/dist/generated/generatedConfigs.js";
5
5
  import plugin from "tailwindcss/plugin.js";
6
6
 
7
7
  //#region ../tailwind/dist/tailwind/plugins/components.js
@@ -24,6 +24,8 @@ const componentsPlugin = plugin.withOptions(({ config, previewOptions = { genera
24
24
  if (config.input) addComponents(generateStyles(InputConfig, config.input, theme, previewOptions));
25
25
  if (config?.toast) addComponents(generateStyles(ToastConfig, config.toast, theme, previewOptions));
26
26
  if (config.tooltip) addComponents(generateStyles(TooltipConfig, config.tooltip, theme, previewOptions));
27
+ if (config?.bottomSheet) addComponents(generateStyles(BottomSheetConfig, config.bottomSheet, theme, previewOptions));
28
+ if (config?.scrim) addComponents(generateStyles(ScrimConfig, config.scrim, theme, previewOptions));
27
29
  }, () => ({ theme: { extend: { opacity: opacityMap } } }));
28
30
 
29
31
  //#endregion
@@ -16,14 +16,6 @@ tailwindcss_plugin_js = require_runtime.__toESM(tailwindcss_plugin_js);
16
16
 
17
17
  //#region ../tailwind/dist/tailwind/plugins/typography.js
18
18
  /*! © 2026 Yahoo, Inc. UDS Tailwind and Purger v0.0.0-development */
19
- const UDS_FONT_FAMILY_THEME_KEY = "udsFontFamily";
20
- const UDS_FONT_SIZE_THEME_KEY = "udsFontSize";
21
- const UDS_FONT_WEIGHT_THEME_KEY = "udsFontWeight";
22
- const UDS_FONT_SLANT_THEME_KEY = "udsFontSlant";
23
- const UDS_LINE_HEIGHT_THEME_KEY = "udsLineHeight";
24
- const UDS_LETTER_SPACING_THEME_KEY = "udsLetterSpacing";
25
- const UDS_TEXT_TRANSFORM_THEME_KEY = "udsTextTransform";
26
- const UDS_FONT_WIDTH_THEME_KEY = "udsFontWidth";
27
19
  /** @deprecated Descriptive font weights vary based on font, so this is not correct for each font we support
28
20
  * This is used as a baseline for using native font weights in the system IE. <Text fontWeight="bold" />
29
21
  */
@@ -38,8 +30,7 @@ const fontWeightMap = {
38
30
  extrabold: "800",
39
31
  black: "900"
40
32
  };
41
- const typographyPlugin = tailwindcss_plugin_js.default.withOptions(({ config, disableOverrideTailwindTheme, disableFontFaceDeclarations = false }) => (api) => {
42
- const shouldMergeTypographyTokensIntoTailwindTheme = !require_composeTailwindPlugins.shouldNotMergeTokensIntoTailwindTheme(disableOverrideTailwindTheme, "typography");
33
+ const typographyPlugin = tailwindcss_plugin_js.default.withOptions(({ config, disableFontFaceDeclarations = false }) => (api) => {
43
34
  const { addBase, addUtilities, addComponents, matchUtilities, theme } = api;
44
35
  const fontIds = Object.values(config.font);
45
36
  if (disableFontFaceDeclarations === false) require_addFontFaceDeclarations.addFontFaceDeclarations(fontIds, api);
@@ -47,7 +38,8 @@ const typographyPlugin = tailwindcss_plugin_js.default.withOptions(({ config, di
47
38
  addBase(require_getResponsiveTextStyles.getBaseTextVars(config));
48
39
  addBase(require_getGroupedTextStyles.getGroupedTextStyles());
49
40
  if ((config.globalDefaults.enableResponsiveType ?? false) && config.typography && config.breakpoints) addComponents(require_getResponsiveTextStyles.getResponsiveTextStyles(config));
50
- const namedFontWeightsFromPlugin = theme("udsFontWeight") || {};
41
+ matchUtilities({ case: (value) => ({ "text-transform": value }) }, { values: theme("typography.textTransform") });
42
+ const namedFontWeightsFromPlugin = theme("typography.fontWeight") || {};
51
43
  const fontWeightsWithDescriptives = {
52
44
  ...fontWeightMap,
53
45
  ...namedFontWeightsFromPlugin
@@ -56,28 +48,19 @@ const typographyPlugin = tailwindcss_plugin_js.default.withOptions(({ config, di
56
48
  const styles = {};
57
49
  if (require_index.textVariants.map(require_getResponsiveTextStyles.textVariantsSafe).includes(fontWeight)) {
58
50
  const textVariant = fontWeight;
59
- const slantValue = theme(`udsFontSlant.${textVariant}`);
60
- const widthValue = theme(`udsFontWidth.${textVariant}`);
51
+ const slantValue = theme(`typography.fontSlant.${textVariant}`);
52
+ const widthValue = theme(`typography.fontWidth.${textVariant}`);
61
53
  styles["font-weight"] = value;
62
54
  styles["font-variation-settings"] = `"wght" ${value}, "slnt" ${slantValue}, "ital" ${slantValue}, "wdth" ${widthValue}`;
63
55
  const bolderStyles = { "font-variation-settings": "normal" };
64
56
  styles["b"] = bolderStyles;
65
57
  styles["strong"] = bolderStyles;
66
58
  } else styles["font-weight"] = value;
67
- if (shouldMergeTypographyTokensIntoTailwindTheme) addUtilities({ [`.font-weight-${fontWeight}`]: styles });
68
- addUtilities({ [`.uds-font-weight-${fontWeight}`]: styles });
59
+ addUtilities({ [`.font-weight-${fontWeight}`]: styles });
69
60
  });
70
- if (shouldMergeTypographyTokensIntoTailwindTheme) matchUtilities({ "font-size": (value) => ({ "font-size": value }) }, { values: theme(UDS_FONT_SIZE_THEME_KEY) });
71
- matchUtilities({ "uds-font-size": (value) => ({ "font-size": value }) }, { values: theme(UDS_FONT_SIZE_THEME_KEY) });
72
- matchUtilities({ "uds-font-family": (value) => ({ "font-family": value }) }, { values: theme(UDS_FONT_FAMILY_THEME_KEY) });
73
- matchUtilities({ "uds-line-height": (value) => ({ "line-height": value }) }, { values: theme(UDS_LINE_HEIGHT_THEME_KEY) });
74
- matchUtilities({ "uds-letter-spacing": (value) => ({ "letter-spacing": value }) }, { values: theme(UDS_LETTER_SPACING_THEME_KEY) });
75
- if (shouldMergeTypographyTokensIntoTailwindTheme) matchUtilities({ case: (value) => ({ "text-transform": value }) }, { values: theme(UDS_TEXT_TRANSFORM_THEME_KEY) });
76
- matchUtilities({ "uds-text-transform": (value) => {
77
- return { "text-transform": value };
78
- } }, { values: theme(UDS_TEXT_TRANSFORM_THEME_KEY) });
61
+ matchUtilities({ "font-size": (value) => ({ "font-size": value }) }, { values: theme("typography.fontSize") });
79
62
  }, ({ disableOverrideTailwindTheme }) => {
80
- const shouldNotMergeTypographyTokensIntoTailwindTheme = require_composeTailwindPlugins.shouldNotMergeTokensIntoTailwindTheme(disableOverrideTailwindTheme, "typography");
63
+ const shouldNotMergeFontSizeTokensIntoTailwindTheme = require_composeTailwindPlugins.shouldNotMergeTokensIntoTailwindTheme(disableOverrideTailwindTheme, "textSize");
81
64
  /**
82
65
  * Reassign Tailwind's font size aliases to UDS's font size aliases
83
66
  * This makes it so UDS configs can power both Tailwind and UDS components
@@ -87,25 +70,14 @@ const typographyPlugin = tailwindcss_plugin_js.default.withOptions(({ config, di
87
70
  }));
88
71
  const textClasses = require_index.textVariants.map((variant) => `uds-text-${require_getResponsiveTextStyles.textVariantsSafe(variant)}`);
89
72
  const responsiveTextClasses = [require_index$1.TEXT_RESPONSIVE_CLASSNAME, ...Object.keys(require_index$1.TEXT_RESPONSIVE_BREAKPOINT_CLASSNAMES).map((variant) => require_index$1.TEXT_RESPONSIVE_BREAKPOINT_CLASSNAMES[variant])];
90
- const fontFamily = require_getFontFamilyTheme.getFontFamilyTheme();
91
- const { lineHeight, letterSpacing, fontSize, textTransform, fontWeight, fontSlant, fontWidth } = require_getResponsiveTextStyles.RESPONSIVE_TAILWIND_CONFIG_MAP;
92
73
  return {
93
74
  safelist: [...textClasses, ...responsiveTextClasses],
94
75
  theme: { extend: {
95
- ...shouldNotMergeTypographyTokensIntoTailwindTheme ? {} : {
96
- fontFamily,
97
- fontSize: tailwindFontSize,
98
- lineHeight,
99
- letterSpacing
100
- },
101
- [UDS_FONT_FAMILY_THEME_KEY]: fontFamily,
102
- [UDS_FONT_SIZE_THEME_KEY]: fontSize,
103
- [UDS_FONT_WEIGHT_THEME_KEY]: fontWeight,
104
- [UDS_FONT_SLANT_THEME_KEY]: fontSlant,
105
- [UDS_LINE_HEIGHT_THEME_KEY]: lineHeight,
106
- [UDS_LETTER_SPACING_THEME_KEY]: letterSpacing,
107
- [UDS_TEXT_TRANSFORM_THEME_KEY]: textTransform,
108
- [UDS_FONT_WIDTH_THEME_KEY]: fontWidth
76
+ fontFamily: require_getFontFamilyTheme.getFontFamilyTheme(),
77
+ ...shouldNotMergeFontSizeTokensIntoTailwindTheme ? {} : { fontSize: tailwindFontSize },
78
+ lineHeight: require_getResponsiveTextStyles.RESPONSIVE_TAILWIND_CONFIG_MAP.lineHeight,
79
+ letterSpacing: require_getResponsiveTextStyles.RESPONSIVE_TAILWIND_CONFIG_MAP.letterSpacing,
80
+ typography: require_getResponsiveTextStyles.RESPONSIVE_TAILWIND_CONFIG_MAP
109
81
  } }
110
82
  };
111
83
  });
@@ -14,14 +14,6 @@ import plugin from "tailwindcss/plugin.js";
14
14
 
15
15
  //#region ../tailwind/dist/tailwind/plugins/typography.js
16
16
  /*! © 2026 Yahoo, Inc. UDS Tailwind and Purger v0.0.0-development */
17
- const UDS_FONT_FAMILY_THEME_KEY = "udsFontFamily";
18
- const UDS_FONT_SIZE_THEME_KEY = "udsFontSize";
19
- const UDS_FONT_WEIGHT_THEME_KEY = "udsFontWeight";
20
- const UDS_FONT_SLANT_THEME_KEY = "udsFontSlant";
21
- const UDS_LINE_HEIGHT_THEME_KEY = "udsLineHeight";
22
- const UDS_LETTER_SPACING_THEME_KEY = "udsLetterSpacing";
23
- const UDS_TEXT_TRANSFORM_THEME_KEY = "udsTextTransform";
24
- const UDS_FONT_WIDTH_THEME_KEY = "udsFontWidth";
25
17
  /** @deprecated Descriptive font weights vary based on font, so this is not correct for each font we support
26
18
  * This is used as a baseline for using native font weights in the system IE. <Text fontWeight="bold" />
27
19
  */
@@ -36,8 +28,7 @@ const fontWeightMap = {
36
28
  extrabold: "800",
37
29
  black: "900"
38
30
  };
39
- const typographyPlugin = plugin.withOptions(({ config, disableOverrideTailwindTheme, disableFontFaceDeclarations = false }) => (api) => {
40
- const shouldMergeTypographyTokensIntoTailwindTheme = !shouldNotMergeTokensIntoTailwindTheme(disableOverrideTailwindTheme, "typography");
31
+ const typographyPlugin = plugin.withOptions(({ config, disableFontFaceDeclarations = false }) => (api) => {
41
32
  const { addBase, addUtilities, addComponents, matchUtilities, theme } = api;
42
33
  const fontIds = Object.values(config.font);
43
34
  if (disableFontFaceDeclarations === false) addFontFaceDeclarations(fontIds, api);
@@ -45,7 +36,8 @@ const typographyPlugin = plugin.withOptions(({ config, disableOverrideTailwindTh
45
36
  addBase(getBaseTextVars(config));
46
37
  addBase(getGroupedTextStyles());
47
38
  if ((config.globalDefaults.enableResponsiveType ?? false) && config.typography && config.breakpoints) addComponents(getResponsiveTextStyles(config));
48
- const namedFontWeightsFromPlugin = theme("udsFontWeight") || {};
39
+ matchUtilities({ case: (value) => ({ "text-transform": value }) }, { values: theme("typography.textTransform") });
40
+ const namedFontWeightsFromPlugin = theme("typography.fontWeight") || {};
49
41
  const fontWeightsWithDescriptives = {
50
42
  ...fontWeightMap,
51
43
  ...namedFontWeightsFromPlugin
@@ -54,28 +46,19 @@ const typographyPlugin = plugin.withOptions(({ config, disableOverrideTailwindTh
54
46
  const styles = {};
55
47
  if (textVariants.map(textVariantsSafe).includes(fontWeight)) {
56
48
  const textVariant = fontWeight;
57
- const slantValue = theme(`udsFontSlant.${textVariant}`);
58
- const widthValue = theme(`udsFontWidth.${textVariant}`);
49
+ const slantValue = theme(`typography.fontSlant.${textVariant}`);
50
+ const widthValue = theme(`typography.fontWidth.${textVariant}`);
59
51
  styles["font-weight"] = value;
60
52
  styles["font-variation-settings"] = `"wght" ${value}, "slnt" ${slantValue}, "ital" ${slantValue}, "wdth" ${widthValue}`;
61
53
  const bolderStyles = { "font-variation-settings": "normal" };
62
54
  styles["b"] = bolderStyles;
63
55
  styles["strong"] = bolderStyles;
64
56
  } else styles["font-weight"] = value;
65
- if (shouldMergeTypographyTokensIntoTailwindTheme) addUtilities({ [`.font-weight-${fontWeight}`]: styles });
66
- addUtilities({ [`.uds-font-weight-${fontWeight}`]: styles });
57
+ addUtilities({ [`.font-weight-${fontWeight}`]: styles });
67
58
  });
68
- if (shouldMergeTypographyTokensIntoTailwindTheme) matchUtilities({ "font-size": (value) => ({ "font-size": value }) }, { values: theme(UDS_FONT_SIZE_THEME_KEY) });
69
- matchUtilities({ "uds-font-size": (value) => ({ "font-size": value }) }, { values: theme(UDS_FONT_SIZE_THEME_KEY) });
70
- matchUtilities({ "uds-font-family": (value) => ({ "font-family": value }) }, { values: theme(UDS_FONT_FAMILY_THEME_KEY) });
71
- matchUtilities({ "uds-line-height": (value) => ({ "line-height": value }) }, { values: theme(UDS_LINE_HEIGHT_THEME_KEY) });
72
- matchUtilities({ "uds-letter-spacing": (value) => ({ "letter-spacing": value }) }, { values: theme(UDS_LETTER_SPACING_THEME_KEY) });
73
- if (shouldMergeTypographyTokensIntoTailwindTheme) matchUtilities({ case: (value) => ({ "text-transform": value }) }, { values: theme(UDS_TEXT_TRANSFORM_THEME_KEY) });
74
- matchUtilities({ "uds-text-transform": (value) => {
75
- return { "text-transform": value };
76
- } }, { values: theme(UDS_TEXT_TRANSFORM_THEME_KEY) });
59
+ matchUtilities({ "font-size": (value) => ({ "font-size": value }) }, { values: theme("typography.fontSize") });
77
60
  }, ({ disableOverrideTailwindTheme }) => {
78
- const shouldNotMergeTypographyTokensIntoTailwindTheme = shouldNotMergeTokensIntoTailwindTheme(disableOverrideTailwindTheme, "typography");
61
+ const shouldNotMergeFontSizeTokensIntoTailwindTheme = shouldNotMergeTokensIntoTailwindTheme(disableOverrideTailwindTheme, "textSize");
79
62
  /**
80
63
  * Reassign Tailwind's font size aliases to UDS's font size aliases
81
64
  * This makes it so UDS configs can power both Tailwind and UDS components
@@ -85,25 +68,14 @@ const typographyPlugin = plugin.withOptions(({ config, disableOverrideTailwindTh
85
68
  }));
86
69
  const textClasses = textVariants.map((variant) => `uds-text-${textVariantsSafe(variant)}`);
87
70
  const responsiveTextClasses = [TEXT_RESPONSIVE_CLASSNAME, ...Object.keys(TEXT_RESPONSIVE_BREAKPOINT_CLASSNAMES).map((variant) => TEXT_RESPONSIVE_BREAKPOINT_CLASSNAMES[variant])];
88
- const fontFamily = getFontFamilyTheme();
89
- const { lineHeight, letterSpacing, fontSize, textTransform, fontWeight, fontSlant, fontWidth } = RESPONSIVE_TAILWIND_CONFIG_MAP;
90
71
  return {
91
72
  safelist: [...textClasses, ...responsiveTextClasses],
92
73
  theme: { extend: {
93
- ...shouldNotMergeTypographyTokensIntoTailwindTheme ? {} : {
94
- fontFamily,
95
- fontSize: tailwindFontSize,
96
- lineHeight,
97
- letterSpacing
98
- },
99
- [UDS_FONT_FAMILY_THEME_KEY]: fontFamily,
100
- [UDS_FONT_SIZE_THEME_KEY]: fontSize,
101
- [UDS_FONT_WEIGHT_THEME_KEY]: fontWeight,
102
- [UDS_FONT_SLANT_THEME_KEY]: fontSlant,
103
- [UDS_LINE_HEIGHT_THEME_KEY]: lineHeight,
104
- [UDS_LETTER_SPACING_THEME_KEY]: letterSpacing,
105
- [UDS_TEXT_TRANSFORM_THEME_KEY]: textTransform,
106
- [UDS_FONT_WIDTH_THEME_KEY]: fontWidth
74
+ fontFamily: getFontFamilyTheme(),
75
+ ...shouldNotMergeFontSizeTokensIntoTailwindTheme ? {} : { fontSize: tailwindFontSize },
76
+ lineHeight: RESPONSIVE_TAILWIND_CONFIG_MAP.lineHeight,
77
+ letterSpacing: RESPONSIVE_TAILWIND_CONFIG_MAP.letterSpacing,
78
+ typography: RESPONSIVE_TAILWIND_CONFIG_MAP
107
79
  } }
108
80
  };
109
81
  });
@@ -13,10 +13,7 @@ const shouldNotMergeTokensIntoTailwindTheme = (disableOverrideTailwindTheme, fea
13
13
  const composeTailwindPlugins = (...plugins) => tailwindcss_plugin_js.default.withOptions((options) => {
14
14
  if (!options.config) throw new Error("`tailwindPlugin` requires a config object. If your project has not yet sync'd a config, you can import `defaultTokensConfig` from `@yahoo/uds/defaultTokensConfig` and pass it to `tailwindPlugin`.");
15
15
  options.disableOverrideTailwindTheme ??= false;
16
- options.onlyTheme ??= false;
17
- options.ignorePluginSafelists ??= false;
18
16
  return (api) => {
19
- if (options.onlyTheme) return;
20
17
  const { addBase, addComponents, addUtilities, config } = api;
21
18
  const parentConfigImportant = config().important;
22
19
  const useImportNamespace = (0, lodash_es.isString)(parentConfigImportant);
@@ -58,7 +55,8 @@ const composeTailwindPlugins = (...plugins) => tailwindcss_plugin_js.default.wit
58
55
  throw new Error(`The theme.extend.${key} value cannot be a function when using composeTailwindPlugins. Please resolve the function to an object instead.`);
59
56
  }
60
57
  const mergedConfig = (0, lodash_es.merge)({}, ...pluginConfigs);
61
- mergedConfig.safelist = options.ignorePluginSafelists ? options.safelist : Array.from(new Set([...options.safelist ?? [], ...pluginConfigs.flatMap((c) => c.safelist ?? [])]));
58
+ const safelist = new Set([...options.safelist ?? [], ...pluginConfigs.flatMap((c) => c.safelist ?? [])]);
59
+ mergedConfig.safelist = Array.from(safelist);
62
60
  return mergedConfig;
63
61
  });
64
62
 
@@ -34,16 +34,7 @@ interface TailwindPluginOptions {
34
34
  * Which UDS tokens should be merged into the tailwind theme.
35
35
  * @default false
36
36
  */
37
- disableOverrideTailwindTheme?: boolean | Array<'typography' | 'borderRadius' | 'borderWidth' | 'screens'>;
38
- /**
39
- * If we are in standalone (aka `uds css`) mode, only apply theme values
40
- * @default false
41
- */
42
- onlyTheme?: boolean;
43
- /**
44
- * Whether to ignore the safelists requested by plugins (for optimized purger use only)
45
- */
46
- ignorePluginSafelists?: boolean;
37
+ disableOverrideTailwindTheme?: boolean | Array<'textSize' | 'borderRadius' | 'borderWidth' | 'screens'>;
47
38
  previewOptions?: {
48
39
  /**
49
40
  * Generates CSS classes for visually forcing components into a pseudo state (hover, focus, etc)
@@ -35,16 +35,7 @@ interface TailwindPluginOptions {
35
35
  * Which UDS tokens should be merged into the tailwind theme.
36
36
  * @default false
37
37
  */
38
- disableOverrideTailwindTheme?: boolean | Array<'typography' | 'borderRadius' | 'borderWidth' | 'screens'>;
39
- /**
40
- * If we are in standalone (aka `uds css`) mode, only apply theme values
41
- * @default false
42
- */
43
- onlyTheme?: boolean;
44
- /**
45
- * Whether to ignore the safelists requested by plugins (for optimized purger use only)
46
- */
47
- ignorePluginSafelists?: boolean;
38
+ disableOverrideTailwindTheme?: boolean | Array<'textSize' | 'borderRadius' | 'borderWidth' | 'screens'>;
48
39
  previewOptions?: {
49
40
  /**
50
41
  * Generates CSS classes for visually forcing components into a pseudo state (hover, focus, etc)
@@ -11,10 +11,7 @@ const shouldNotMergeTokensIntoTailwindTheme = (disableOverrideTailwindTheme, fea
11
11
  const composeTailwindPlugins = (...plugins) => plugin.withOptions((options) => {
12
12
  if (!options.config) throw new Error("`tailwindPlugin` requires a config object. If your project has not yet sync'd a config, you can import `defaultTokensConfig` from `@yahoo/uds/defaultTokensConfig` and pass it to `tailwindPlugin`.");
13
13
  options.disableOverrideTailwindTheme ??= false;
14
- options.onlyTheme ??= false;
15
- options.ignorePluginSafelists ??= false;
16
14
  return (api) => {
17
- if (options.onlyTheme) return;
18
15
  const { addBase, addComponents, addUtilities, config } = api;
19
16
  const parentConfigImportant = config().important;
20
17
  const useImportNamespace = isString(parentConfigImportant);
@@ -56,7 +53,8 @@ const composeTailwindPlugins = (...plugins) => plugin.withOptions((options) => {
56
53
  throw new Error(`The theme.extend.${key} value cannot be a function when using composeTailwindPlugins. Please resolve the function to an object instead.`);
57
54
  }
58
55
  const mergedConfig = merge({}, ...pluginConfigs);
59
- mergedConfig.safelist = options.ignorePluginSafelists ? options.safelist : Array.from(new Set([...options.safelist ?? [], ...pluginConfigs.flatMap((c) => c.safelist ?? [])]));
56
+ const safelist = new Set([...options.safelist ?? [], ...pluginConfigs.flatMap((c) => c.safelist ?? [])]);
57
+ mergedConfig.safelist = Array.from(safelist);
60
58
  return mergedConfig;
61
59
  });
62
60
 
@@ -1,7 +1,7 @@
1
1
  /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
2
2
  const require_runtime = require('../../../_virtual/_rolldown/runtime.cjs');
3
- let lodash_es = require("lodash-es");
4
3
  let ts_morph = require("ts-morph");
4
+ let lodash_es = require("lodash-es");
5
5
 
6
6
  //#region ../tailwind/dist/utils/tsMorph.js
7
7
  /*! © 2026 Yahoo, Inc. UDS Tailwind and Purger v0.0.0-development */
@@ -4,6 +4,7 @@ const require_generatedConfigs = require('../../../automated-config/dist/generat
4
4
 
5
5
  exports.AvatarConfig = require_generatedConfigs.AvatarConfig;
6
6
  exports.BadgeConfig = require_generatedConfigs.BadgeConfig;
7
+ exports.BottomSheetConfig = require_generatedConfigs.BottomSheetConfig;
7
8
  exports.ButtonConfig = require_generatedConfigs.ButtonConfig;
8
9
  exports.CheckboxConfig = require_generatedConfigs.CheckboxConfig;
9
10
  exports.ChipConfig = require_generatedConfigs.ChipConfig;
@@ -14,6 +15,7 @@ exports.LinkConfig = require_generatedConfigs.LinkConfig;
14
15
  exports.MenuContentConfig = require_generatedConfigs.MenuContentConfig;
15
16
  exports.MenuItemConfig = require_generatedConfigs.MenuItemConfig;
16
17
  exports.RadioConfig = require_generatedConfigs.RadioConfig;
18
+ exports.ScrimConfig = require_generatedConfigs.ScrimConfig;
17
19
  exports.SwitchConfig = require_generatedConfigs.SwitchConfig;
18
20
  exports.ToastConfig = require_generatedConfigs.ToastConfig;
19
21
  exports.TooltipConfig = require_generatedConfigs.TooltipConfig;
@@ -1,3 +1,3 @@
1
1
 
2
- import { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../../automated-config/dist/generated/generatedConfigs.cjs";
3
- export { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig };
2
+ import { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../../automated-config/dist/generated/generatedConfigs.cjs";
3
+ export { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig };
@@ -1,3 +1,3 @@
1
1
 
2
- import { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../../automated-config/dist/generated/generatedConfigs.js";
3
- export { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig };
2
+ import { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../../automated-config/dist/generated/generatedConfigs.js";
3
+ export { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig };
@@ -1,4 +1,4 @@
1
1
  /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
2
- import { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../../automated-config/dist/generated/generatedConfigs.js";
2
+ import { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../../automated-config/dist/generated/generatedConfigs.js";
3
3
 
4
- export { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig };
4
+ export { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig };
@@ -17,6 +17,7 @@ const require_generatedConfigs = require('../../automated-config/dist/generated/
17
17
 
18
18
  exports.AvatarConfig = require_generatedConfigs.AvatarConfig;
19
19
  exports.BadgeConfig = require_generatedConfigs.BadgeConfig;
20
+ exports.BottomSheetConfig = require_generatedConfigs.BottomSheetConfig;
20
21
  exports.ButtonConfig = require_generatedConfigs.ButtonConfig;
21
22
  exports.CheckboxConfig = require_generatedConfigs.CheckboxConfig;
22
23
  exports.ChipConfig = require_generatedConfigs.ChipConfig;
@@ -27,6 +28,7 @@ exports.LinkConfig = require_generatedConfigs.LinkConfig;
27
28
  exports.MenuContentConfig = require_generatedConfigs.MenuContentConfig;
28
29
  exports.MenuItemConfig = require_generatedConfigs.MenuItemConfig;
29
30
  exports.RadioConfig = require_generatedConfigs.RadioConfig;
31
+ exports.ScrimConfig = require_generatedConfigs.ScrimConfig;
30
32
  exports.SwitchConfig = require_generatedConfigs.SwitchConfig;
31
33
  exports.ToastConfig = require_generatedConfigs.ToastConfig;
32
34
  exports.TooltipConfig = require_generatedConfigs.TooltipConfig;
@@ -1,5 +1,5 @@
1
1
 
2
- import { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../automated-config/dist/generated/generatedConfigs.cjs";
2
+ import { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../automated-config/dist/generated/generatedConfigs.cjs";
3
3
  import { ComponentSchema, buildConfigSchema, findFixtureType } from "../../automated-config/dist/utils/buildConfigSchema.cjs";
4
4
  import { cartesianProduct } from "../../automated-config/dist/utils/cartesianProduct.cjs";
5
5
  import { coalesceConfigVariant } from "../../automated-config/dist/utils/coalesceConfigVariant.cjs";
@@ -13,4 +13,4 @@ import { getConfigVariantPseudoStates } from "../../automated-config/dist/utils/
13
13
  import { getConfigVariants } from "../../automated-config/dist/utils/getConfigVariants.cjs";
14
14
  import { getConfigSubcomponents } from "../../automated-config/dist/utils/subcomponents.cjs";
15
15
  import { createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, generateClassName, generateConfigStyles, generateDeclaration, generateStyles, statePseudoMapDocsMode } from "../../automated-config/dist/utils/index.cjs";
16
- export { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, ComponentSchema, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig, buildConfigSchema, cartesianProduct, coalesceConfigVariant, createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, findFixtureType, generateClassName, generateConfigStyles, generateDeclaration, generateDefaultClassName, generateKeyFromFlatConfigPath, generateSchemaKey, generateStyles, getConfigDefaultValue, getConfigSubcomponents, getConfigVariantComponentStates, getConfigVariantComponentStatesMatrix, getConfigVariantProperties, getConfigVariantPseudoStates, getConfigVariants, isConfigDefaultValue, statePseudoMapDocsMode };
16
+ export { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, ComponentSchema, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig, buildConfigSchema, cartesianProduct, coalesceConfigVariant, createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, findFixtureType, generateClassName, generateConfigStyles, generateDeclaration, generateDefaultClassName, generateKeyFromFlatConfigPath, generateSchemaKey, generateStyles, getConfigDefaultValue, getConfigSubcomponents, getConfigVariantComponentStates, getConfigVariantComponentStatesMatrix, getConfigVariantProperties, getConfigVariantPseudoStates, getConfigVariants, isConfigDefaultValue, statePseudoMapDocsMode };
@@ -1,5 +1,5 @@
1
1
 
2
- import { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../automated-config/dist/generated/generatedConfigs.js";
2
+ import { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../automated-config/dist/generated/generatedConfigs.js";
3
3
  import { ComponentSchema, buildConfigSchema, findFixtureType } from "../../automated-config/dist/utils/buildConfigSchema.js";
4
4
  import { cartesianProduct } from "../../automated-config/dist/utils/cartesianProduct.js";
5
5
  import { coalesceConfigVariant } from "../../automated-config/dist/utils/coalesceConfigVariant.js";
@@ -13,4 +13,4 @@ import { getConfigVariantPseudoStates } from "../../automated-config/dist/utils/
13
13
  import { getConfigVariants } from "../../automated-config/dist/utils/getConfigVariants.js";
14
14
  import { getConfigSubcomponents } from "../../automated-config/dist/utils/subcomponents.js";
15
15
  import { createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, generateClassName, generateConfigStyles, generateDeclaration, generateStyles, statePseudoMapDocsMode } from "../../automated-config/dist/utils/index.js";
16
- export { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, ComponentSchema, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig, buildConfigSchema, cartesianProduct, coalesceConfigVariant, createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, findFixtureType, generateClassName, generateConfigStyles, generateDeclaration, generateDefaultClassName, generateKeyFromFlatConfigPath, generateSchemaKey, generateStyles, getConfigDefaultValue, getConfigSubcomponents, getConfigVariantComponentStates, getConfigVariantComponentStatesMatrix, getConfigVariantProperties, getConfigVariantPseudoStates, getConfigVariants, isConfigDefaultValue, statePseudoMapDocsMode };
16
+ export { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, ComponentSchema, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig, buildConfigSchema, cartesianProduct, coalesceConfigVariant, createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, findFixtureType, generateClassName, generateConfigStyles, generateDeclaration, generateDefaultClassName, generateKeyFromFlatConfigPath, generateSchemaKey, generateStyles, getConfigDefaultValue, getConfigSubcomponents, getConfigVariantComponentStates, getConfigVariantComponentStatesMatrix, getConfigVariantProperties, getConfigVariantPseudoStates, getConfigVariants, isConfigDefaultValue, statePseudoMapDocsMode };
@@ -12,6 +12,6 @@ import { getConfigVariantProperties } from "../../automated-config/dist/utils/ge
12
12
  import { getConfigVariantPseudoStates } from "../../automated-config/dist/utils/getConfigVariantPseudoStates.js";
13
13
  import { getConfigVariants } from "../../automated-config/dist/utils/getConfigVariants.js";
14
14
  import { createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, generateClassName, generateConfigStyles, generateDeclaration, generateStyles, statePseudoMapDocsMode } from "../../automated-config/dist/utils/index.js";
15
- import { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../automated-config/dist/generated/generatedConfigs.js";
15
+ import { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig } from "../../automated-config/dist/generated/generatedConfigs.js";
16
16
 
17
- export { AvatarConfig, BadgeConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, SwitchConfig, ToastConfig, TooltipConfig, buildConfigSchema, cartesianProduct, coalesceConfigVariant, createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, findFixtureType, generateClassName, generateConfigStyles, generateDeclaration, generateDefaultClassName, generateKeyFromFlatConfigPath, generateSchemaKey, generateStyles, getConfigDefaultValue, getConfigSubcomponents, getConfigVariantComponentStates, getConfigVariantComponentStatesMatrix, getConfigVariantProperties, getConfigVariantPseudoStates, getConfigVariants, isConfigDefaultValue, statePseudoMapDocsMode };
17
+ export { AvatarConfig, BadgeConfig, BottomSheetConfig, ButtonConfig, CheckboxConfig, ChipConfig, DividerConfig, IconButtonConfig, InputConfig, LinkConfig, MenuContentConfig, MenuItemConfig, RadioConfig, ScrimConfig, SwitchConfig, ToastConfig, TooltipConfig, buildConfigSchema, cartesianProduct, coalesceConfigVariant, createComponentStates, createConfigurableProperty, createLayerConfig, createSubComponentConfig, createVariantConfig, createVariantConfigWithComponentStates, createVariantConfigWithProperties, findFixtureType, generateClassName, generateConfigStyles, generateDeclaration, generateDefaultClassName, generateKeyFromFlatConfigPath, generateSchemaKey, generateStyles, getConfigDefaultValue, getConfigSubcomponents, getConfigVariantComponentStates, getConfigVariantComponentStatesMatrix, getConfigVariantProperties, getConfigVariantPseudoStates, getConfigVariants, isConfigDefaultValue, statePseudoMapDocsMode };