@multiplatform.one/theme 7.83.1 → 7.84.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 (853) hide show
  1. package/dist/cjs/audit/constraintAudit.cjs +567 -0
  2. package/dist/cjs/audit/constraintAudit.native.js +948 -0
  3. package/dist/cjs/audit/constraintAudit.native.js.map +1 -0
  4. package/dist/cjs/audit/designTokens.cjs +53 -0
  5. package/dist/cjs/audit/designTokens.native.js +80 -0
  6. package/dist/cjs/audit/designTokens.native.js.map +1 -0
  7. package/dist/cjs/audit/diffReport.cjs +255 -0
  8. package/dist/cjs/audit/diffReport.native.js +519 -0
  9. package/dist/cjs/audit/diffReport.native.js.map +1 -0
  10. package/dist/cjs/audit/index.cjs +41 -0
  11. package/dist/cjs/audit/index.native.js +44 -0
  12. package/dist/cjs/audit/index.native.js.map +1 -0
  13. package/dist/cjs/audit/themeMatrix.cjs +924 -0
  14. package/dist/cjs/audit/themeMatrix.native.js +1552 -0
  15. package/dist/cjs/audit/themeMatrix.native.js.map +1 -0
  16. package/dist/cjs/dates.cjs +261 -0
  17. package/dist/cjs/dates.native.js +289 -0
  18. package/dist/cjs/dates.native.js.map +1 -0
  19. package/dist/cjs/devWarn.cjs +163 -0
  20. package/dist/cjs/devWarn.native.js +191 -0
  21. package/dist/cjs/devWarn.native.js.map +1 -0
  22. package/dist/cjs/expo.cjs +89 -0
  23. package/dist/cjs/expo.native.js +97 -0
  24. package/dist/cjs/expo.native.js.map +1 -0
  25. package/dist/cjs/figma/figmaTokens.cjs +350 -0
  26. package/dist/cjs/figma/figmaTokens.native.js +637 -0
  27. package/dist/cjs/figma/figmaTokens.native.js.map +1 -0
  28. package/dist/cjs/font.cjs +65 -0
  29. package/dist/cjs/font.native.js +74 -0
  30. package/dist/cjs/font.native.js.map +1 -0
  31. package/dist/cjs/fonts/createFontLoader.cjs +32 -0
  32. package/dist/cjs/fonts/createFontLoader.native.js +70 -0
  33. package/dist/cjs/fonts/createFontLoader.native.js.map +1 -0
  34. package/dist/cjs/fonts/index.cjs +22 -0
  35. package/dist/cjs/fonts/index.native.js +25 -0
  36. package/dist/cjs/fonts/index.native.js.map +1 -0
  37. package/dist/cjs/fonts/interFaces.cjs +38 -0
  38. package/dist/cjs/fonts/interFaces.native.js +41 -0
  39. package/dist/cjs/fonts/interFaces.native.js.map +1 -0
  40. package/dist/cjs/fonts/types.cjs +18 -0
  41. package/dist/cjs/fonts/types.native.js +21 -0
  42. package/dist/cjs/fonts/types.native.js.map +1 -0
  43. package/dist/cjs/index.cjs +39 -0
  44. package/dist/cjs/index.native.js +42 -0
  45. package/dist/cjs/index.native.js.map +1 -0
  46. package/dist/cjs/keyboardFocusRing.cjs +111 -0
  47. package/dist/cjs/keyboardFocusRing.native.js +116 -0
  48. package/dist/cjs/keyboardFocusRing.native.js.map +1 -0
  49. package/dist/cjs/menuRow.cjs +80 -0
  50. package/dist/cjs/menuRow.native.js +86 -0
  51. package/dist/cjs/menuRow.native.js.map +1 -0
  52. package/dist/cjs/numbers.cjs +161 -0
  53. package/dist/cjs/numbers.native.js +173 -0
  54. package/dist/cjs/numbers.native.js.map +1 -0
  55. package/dist/cjs/theme/FontKnobStyles.cjs +161 -0
  56. package/dist/cjs/theme/FontKnobStyles.native.js +41 -0
  57. package/dist/cjs/theme/FontKnobStyles.native.js.map +1 -0
  58. package/dist/cjs/theme/Heading.cjs +174 -0
  59. package/dist/cjs/theme/Heading.native.js +186 -0
  60. package/dist/cjs/theme/Heading.native.js.map +1 -0
  61. package/dist/cjs/theme/IconSlot.cjs +67 -0
  62. package/dist/cjs/theme/IconSlot.native.js +78 -0
  63. package/dist/cjs/theme/IconSlot.native.js.map +1 -0
  64. package/dist/cjs/theme/Intent.cjs +44 -0
  65. package/dist/cjs/theme/Intent.native.js +48 -0
  66. package/dist/cjs/theme/Intent.native.js.map +1 -0
  67. package/dist/cjs/theme/Preset.cjs +150 -0
  68. package/dist/cjs/theme/Preset.native.js +156 -0
  69. package/dist/cjs/theme/Preset.native.js.map +1 -0
  70. package/dist/cjs/theme/PresetContext.cjs +38 -0
  71. package/dist/cjs/theme/PresetContext.native.js +42 -0
  72. package/dist/cjs/theme/PresetContext.native.js.map +1 -0
  73. package/dist/cjs/theme/Surface.cjs +115 -0
  74. package/dist/cjs/theme/Surface.native.js +126 -0
  75. package/dist/cjs/theme/Surface.native.js.map +1 -0
  76. package/dist/cjs/theme/Text.cjs +147 -0
  77. package/dist/cjs/theme/Text.native.js +155 -0
  78. package/dist/cjs/theme/Text.native.js.map +1 -0
  79. package/dist/cjs/theme/Tint.cjs +55 -0
  80. package/dist/cjs/theme/Tint.native.js +59 -0
  81. package/dist/cjs/theme/Tint.native.js.map +1 -0
  82. package/dist/cjs/theme/activateThemeConfig.cjs +42 -0
  83. package/dist/cjs/theme/activateThemeConfig.native.js +45 -0
  84. package/dist/cjs/theme/activateThemeConfig.native.js.map +1 -0
  85. package/dist/cjs/theme/animations/css.cjs +36 -0
  86. package/dist/cjs/theme/animations/css.native.js +39 -0
  87. package/dist/cjs/theme/animations/css.native.js.map +1 -0
  88. package/dist/cjs/theme/animations/index.cjs +20 -0
  89. package/dist/cjs/theme/animations/index.native.js +23 -0
  90. package/dist/cjs/theme/animations/index.native.js.map +1 -0
  91. package/dist/cjs/theme/animations/reactNative.cjs +158 -0
  92. package/dist/cjs/theme/animations/reactNative.native.js +161 -0
  93. package/dist/cjs/theme/animations/reactNative.native.js.map +1 -0
  94. package/dist/cjs/theme/chartPalette.cjs +229 -0
  95. package/dist/cjs/theme/chartPalette.native.js +297 -0
  96. package/dist/cjs/theme/chartPalette.native.js.map +1 -0
  97. package/dist/cjs/theme/colorRules.cjs +323 -0
  98. package/dist/cjs/theme/colorRules.native.js +359 -0
  99. package/dist/cjs/theme/colorRules.native.js.map +1 -0
  100. package/dist/cjs/theme/controlTiers.cjs +67 -0
  101. package/dist/cjs/theme/controlTiers.native.js +72 -0
  102. package/dist/cjs/theme/controlTiers.native.js.map +1 -0
  103. package/dist/cjs/theme/cookies.cjs +183 -0
  104. package/dist/cjs/theme/cookies.native.js +309 -0
  105. package/dist/cjs/theme/cookies.native.js.map +1 -0
  106. package/dist/cjs/theme/cornerSmoothing.cjs +111 -0
  107. package/dist/cjs/theme/cornerSmoothing.native.js +71 -0
  108. package/dist/cjs/theme/cornerSmoothing.native.js.map +1 -0
  109. package/dist/cjs/theme/createDefaultThemeConfig.cjs +130 -0
  110. package/dist/cjs/theme/createDefaultThemeConfig.native.js +176 -0
  111. package/dist/cjs/theme/createDefaultThemeConfig.native.js.map +1 -0
  112. package/dist/cjs/theme/createThemes.cjs +737 -0
  113. package/dist/cjs/theme/createThemes.native.js +1183 -0
  114. package/dist/cjs/theme/createThemes.native.js.map +1 -0
  115. package/dist/cjs/theme/dedupeInherited.cjs +83 -0
  116. package/dist/cjs/theme/dedupeInherited.native.js +194 -0
  117. package/dist/cjs/theme/dedupeInherited.native.js.map +1 -0
  118. package/dist/cjs/theme/defaults/accent.cjs +32 -0
  119. package/dist/cjs/theme/defaults/accent.native.js +35 -0
  120. package/dist/cjs/theme/defaults/accent.native.js.map +1 -0
  121. package/dist/cjs/theme/defaults/base.cjs +48 -0
  122. package/dist/cjs/theme/defaults/base.native.js +51 -0
  123. package/dist/cjs/theme/defaults/base.native.js.map +1 -0
  124. package/dist/cjs/theme/defaults/builderOptions.cjs +192 -0
  125. package/dist/cjs/theme/defaults/builderOptions.native.js +263 -0
  126. package/dist/cjs/theme/defaults/builderOptions.native.js.map +1 -0
  127. package/dist/cjs/theme/defaults/categoryFonts.cjs +50 -0
  128. package/dist/cjs/theme/defaults/categoryFonts.native.js +53 -0
  129. package/dist/cjs/theme/defaults/categoryFonts.native.js.map +1 -0
  130. package/dist/cjs/theme/defaults/fonts.cjs +288 -0
  131. package/dist/cjs/theme/defaults/fonts.native.js +380 -0
  132. package/dist/cjs/theme/defaults/fonts.native.js.map +1 -0
  133. package/dist/cjs/theme/defaults/house.cjs +39 -0
  134. package/dist/cjs/theme/defaults/house.native.js +46 -0
  135. package/dist/cjs/theme/defaults/house.native.js.map +1 -0
  136. package/dist/cjs/theme/defaults/index.cjs +25 -0
  137. package/dist/cjs/theme/defaults/index.native.js +28 -0
  138. package/dist/cjs/theme/defaults/index.native.js.map +1 -0
  139. package/dist/cjs/theme/devtools/ColorLineVisualizer.cjs +243 -0
  140. package/dist/cjs/theme/devtools/ColorLineVisualizer.native.js +269 -0
  141. package/dist/cjs/theme/devtools/ColorLineVisualizer.native.js.map +1 -0
  142. package/dist/cjs/theme/devtools/ThemeDevtoolsPanel.cjs +1350 -0
  143. package/dist/cjs/theme/devtools/ThemeDevtoolsPanel.native.js +1814 -0
  144. package/dist/cjs/theme/devtools/ThemeDevtoolsPanel.native.js.map +1 -0
  145. package/dist/cjs/theme/devtools/animationOptions.cjs +36 -0
  146. package/dist/cjs/theme/devtools/animationOptions.native.js +46 -0
  147. package/dist/cjs/theme/devtools/animationOptions.native.js.map +1 -0
  148. package/dist/cjs/theme/devtools/buildSnapshot.cjs +92 -0
  149. package/dist/cjs/theme/devtools/buildSnapshot.native.js +174 -0
  150. package/dist/cjs/theme/devtools/buildSnapshot.native.js.map +1 -0
  151. package/dist/cjs/theme/devtools/knobIcons.cjs +498 -0
  152. package/dist/cjs/theme/devtools/knobIcons.native.js +520 -0
  153. package/dist/cjs/theme/devtools/knobIcons.native.js.map +1 -0
  154. package/dist/cjs/theme/devtools/vizConstants.cjs +54 -0
  155. package/dist/cjs/theme/devtools/vizConstants.native.js +57 -0
  156. package/dist/cjs/theme/devtools/vizConstants.native.js.map +1 -0
  157. package/dist/cjs/theme/dynamicType.cjs +52 -0
  158. package/dist/cjs/theme/dynamicType.native.js +55 -0
  159. package/dist/cjs/theme/dynamicType.native.js.map +1 -0
  160. package/dist/cjs/theme/fieldFocus.cjs +56 -0
  161. package/dist/cjs/theme/fieldFocus.native.js +62 -0
  162. package/dist/cjs/theme/fieldFocus.native.js.map +1 -0
  163. package/dist/cjs/theme/fillContrast.cjs +130 -0
  164. package/dist/cjs/theme/fillContrast.native.js +163 -0
  165. package/dist/cjs/theme/fillContrast.native.js.map +1 -0
  166. package/dist/cjs/theme/focusState.cjs +120 -0
  167. package/dist/cjs/theme/focusState.native.js +123 -0
  168. package/dist/cjs/theme/focusState.native.js.map +1 -0
  169. package/dist/cjs/theme/fontCategoryMetrics.cjs +91 -0
  170. package/dist/cjs/theme/fontCategoryMetrics.native.js +94 -0
  171. package/dist/cjs/theme/fontCategoryMetrics.native.js.map +1 -0
  172. package/dist/cjs/theme/fontCategoryStacks.cjs +40 -0
  173. package/dist/cjs/theme/fontCategoryStacks.native.js +43 -0
  174. package/dist/cjs/theme/fontCategoryStacks.native.js.map +1 -0
  175. package/dist/cjs/theme/glyphPaint.cjs +55 -0
  176. package/dist/cjs/theme/glyphPaint.native.js +81 -0
  177. package/dist/cjs/theme/glyphPaint.native.js.map +1 -0
  178. package/dist/cjs/theme/glyphTint.cjs +90 -0
  179. package/dist/cjs/theme/glyphTint.native.js +96 -0
  180. package/dist/cjs/theme/glyphTint.native.js.map +1 -0
  181. package/dist/cjs/theme/groupGeometry.cjs +67 -0
  182. package/dist/cjs/theme/groupGeometry.native.js +72 -0
  183. package/dist/cjs/theme/groupGeometry.native.js.map +1 -0
  184. package/dist/cjs/theme/hairline.cjs +119 -0
  185. package/dist/cjs/theme/hairline.native.js +73 -0
  186. package/dist/cjs/theme/hairline.native.js.map +1 -0
  187. package/dist/cjs/theme/index.cjs +95 -0
  188. package/dist/cjs/theme/index.native.js +98 -0
  189. package/dist/cjs/theme/index.native.js.map +1 -0
  190. package/dist/cjs/theme/intents.cjs +62 -0
  191. package/dist/cjs/theme/intents.native.js +65 -0
  192. package/dist/cjs/theme/intents.native.js.map +1 -0
  193. package/dist/cjs/theme/knobs.cjs +172 -0
  194. package/dist/cjs/theme/knobs.native.js +175 -0
  195. package/dist/cjs/theme/knobs.native.js.map +1 -0
  196. package/dist/cjs/theme/layoutTokens.cjs +172 -0
  197. package/dist/cjs/theme/layoutTokens.native.js +222 -0
  198. package/dist/cjs/theme/layoutTokens.native.js.map +1 -0
  199. package/dist/cjs/theme/listRows.cjs +44 -0
  200. package/dist/cjs/theme/listRows.native.js +49 -0
  201. package/dist/cjs/theme/listRows.native.js.map +1 -0
  202. package/dist/cjs/theme/mergedTokens.cjs +39 -0
  203. package/dist/cjs/theme/mergedTokens.native.js +61 -0
  204. package/dist/cjs/theme/mergedTokens.native.js.map +1 -0
  205. package/dist/cjs/theme/motion.cjs +72 -0
  206. package/dist/cjs/theme/motion.native.js +82 -0
  207. package/dist/cjs/theme/motion.native.js.map +1 -0
  208. package/dist/cjs/theme/motionStops.cjs +28 -0
  209. package/dist/cjs/theme/motionStops.native.js +31 -0
  210. package/dist/cjs/theme/motionStops.native.js.map +1 -0
  211. package/dist/cjs/theme/motionTiming.cjs +79 -0
  212. package/dist/cjs/theme/motionTiming.native.js +85 -0
  213. package/dist/cjs/theme/motionTiming.native.js.map +1 -0
  214. package/dist/cjs/theme/nativeFontFamily.cjs +30 -0
  215. package/dist/cjs/theme/nativeFontFamily.native.js +37 -0
  216. package/dist/cjs/theme/nativeFontFamily.native.js.map +1 -0
  217. package/dist/cjs/theme/nativeMonoFamily.cjs +44 -0
  218. package/dist/cjs/theme/nativeMonoFamily.native.js +47 -0
  219. package/dist/cjs/theme/nativeMonoFamily.native.js.map +1 -0
  220. package/dist/cjs/theme/overlaySurfaces.cjs +327 -0
  221. package/dist/cjs/theme/overlaySurfaces.native.js +351 -0
  222. package/dist/cjs/theme/overlaySurfaces.native.js.map +1 -0
  223. package/dist/cjs/theme/pageGutter.cjs +85 -0
  224. package/dist/cjs/theme/pageGutter.native.js +92 -0
  225. package/dist/cjs/theme/pageGutter.native.js.map +1 -0
  226. package/dist/cjs/theme/preset.types.cjs +18 -0
  227. package/dist/cjs/theme/preset.types.native.js +21 -0
  228. package/dist/cjs/theme/preset.types.native.js.map +1 -0
  229. package/dist/cjs/theme/presetPreview.cjs +42 -0
  230. package/dist/cjs/theme/presetPreview.native.js +46 -0
  231. package/dist/cjs/theme/presetPreview.native.js.map +1 -0
  232. package/dist/cjs/theme/presetStore.cjs +288 -0
  233. package/dist/cjs/theme/presetStore.native.js +344 -0
  234. package/dist/cjs/theme/presetStore.native.js.map +1 -0
  235. package/dist/cjs/theme/presetUserSync.cjs +70 -0
  236. package/dist/cjs/theme/presetUserSync.native.js +75 -0
  237. package/dist/cjs/theme/presetUserSync.native.js.map +1 -0
  238. package/dist/cjs/theme/presets.cjs +128 -0
  239. package/dist/cjs/theme/presets.native.js +131 -0
  240. package/dist/cjs/theme/presets.native.js.map +1 -0
  241. package/dist/cjs/theme/radiusClass.cjs +128 -0
  242. package/dist/cjs/theme/radiusClass.native.js +137 -0
  243. package/dist/cjs/theme/radiusClass.native.js.map +1 -0
  244. package/dist/cjs/theme/radiusClassTable.generated.cjs +164 -0
  245. package/dist/cjs/theme/radiusClassTable.generated.native.js +167 -0
  246. package/dist/cjs/theme/radiusClassTable.generated.native.js.map +1 -0
  247. package/dist/cjs/theme/ramps.cjs +75 -0
  248. package/dist/cjs/theme/ramps.native.js +79 -0
  249. package/dist/cjs/theme/ramps.native.js.map +1 -0
  250. package/dist/cjs/theme/readableColor.cjs +284 -0
  251. package/dist/cjs/theme/readableColor.native.js +393 -0
  252. package/dist/cjs/theme/readableColor.native.js.map +1 -0
  253. package/dist/cjs/theme/recipeInputs.cjs +352 -0
  254. package/dist/cjs/theme/recipeInputs.native.js +470 -0
  255. package/dist/cjs/theme/recipeInputs.native.js.map +1 -0
  256. package/dist/cjs/theme/recipes.cjs +18 -0
  257. package/dist/cjs/theme/recipes.native.js +21 -0
  258. package/dist/cjs/theme/recipes.native.js.map +1 -0
  259. package/dist/cjs/theme/resolveKnobs.cjs +866 -0
  260. package/dist/cjs/theme/resolveKnobs.native.js +884 -0
  261. package/dist/cjs/theme/resolveKnobs.native.js.map +1 -0
  262. package/dist/cjs/theme/scale/ScaleStyles.cjs +57 -0
  263. package/dist/cjs/theme/scale/ScaleStyles.native.js +41 -0
  264. package/dist/cjs/theme/scale/ScaleStyles.native.js.map +1 -0
  265. package/dist/cjs/theme/scale/activeScale.cjs +56 -0
  266. package/dist/cjs/theme/scale/activeScale.native.js +84 -0
  267. package/dist/cjs/theme/scale/activeScale.native.js.map +1 -0
  268. package/dist/cjs/theme/scale/deriveRecipeInputs.cjs +111 -0
  269. package/dist/cjs/theme/scale/deriveRecipeInputs.native.js +154 -0
  270. package/dist/cjs/theme/scale/deriveRecipeInputs.native.js.map +1 -0
  271. package/dist/cjs/theme/scale/generateScale.cjs +114 -0
  272. package/dist/cjs/theme/scale/generateScale.native.js +200 -0
  273. package/dist/cjs/theme/scale/generateScale.native.js.map +1 -0
  274. package/dist/cjs/theme/scale/index.cjs +78 -0
  275. package/dist/cjs/theme/scale/index.native.js +81 -0
  276. package/dist/cjs/theme/scale/index.native.js.map +1 -0
  277. package/dist/cjs/theme/scale/installScaleConfig.cjs +31 -0
  278. package/dist/cjs/theme/scale/installScaleConfig.native.js +65 -0
  279. package/dist/cjs/theme/scale/installScaleConfig.native.js.map +1 -0
  280. package/dist/cjs/theme/scale/scaleAttribute.cjs +39 -0
  281. package/dist/cjs/theme/scale/scaleAttribute.native.js +42 -0
  282. package/dist/cjs/theme/scale/scaleAttribute.native.js.map +1 -0
  283. package/dist/cjs/theme/scale/scaleCss.cjs +89 -0
  284. package/dist/cjs/theme/scale/scaleCss.native.js +201 -0
  285. package/dist/cjs/theme/scale/scaleCss.native.js.map +1 -0
  286. package/dist/cjs/theme/scale/scaleFonts.cjs +86 -0
  287. package/dist/cjs/theme/scale/scaleFonts.native.js +155 -0
  288. package/dist/cjs/theme/scale/scaleFonts.native.js.map +1 -0
  289. package/dist/cjs/theme/scale/scaleInputs.cjs +232 -0
  290. package/dist/cjs/theme/scale/scaleInputs.native.js +237 -0
  291. package/dist/cjs/theme/scale/scaleInputs.native.js.map +1 -0
  292. package/dist/cjs/theme/scale/themeScales.cjs +136 -0
  293. package/dist/cjs/theme/scale/themeScales.native.js +185 -0
  294. package/dist/cjs/theme/scale/themeScales.native.js.map +1 -0
  295. package/dist/cjs/theme/scale/useActiveScale.cjs +78 -0
  296. package/dist/cjs/theme/scale/useActiveScale.native.js +87 -0
  297. package/dist/cjs/theme/scale/useActiveScale.native.js.map +1 -0
  298. package/dist/cjs/theme/schemeStore.cjs +87 -0
  299. package/dist/cjs/theme/schemeStore.native.js +104 -0
  300. package/dist/cjs/theme/schemeStore.native.js.map +1 -0
  301. package/dist/cjs/theme/shared.cjs +125 -0
  302. package/dist/cjs/theme/shared.native.js +168 -0
  303. package/dist/cjs/theme/shared.native.js.map +1 -0
  304. package/dist/cjs/theme/sizeRecipes.cjs +176 -0
  305. package/dist/cjs/theme/sizeRecipes.native.js +251 -0
  306. package/dist/cjs/theme/sizeRecipes.native.js.map +1 -0
  307. package/dist/cjs/theme/subsetThemes.cjs +46 -0
  308. package/dist/cjs/theme/subsetThemes.native.js +76 -0
  309. package/dist/cjs/theme/subsetThemes.native.js.map +1 -0
  310. package/dist/cjs/theme/theme.cjs +189 -0
  311. package/dist/cjs/theme/theme.native.js +115 -0
  312. package/dist/cjs/theme/theme.native.js.map +1 -0
  313. package/dist/cjs/theme/themeValue.cjs +51 -0
  314. package/dist/cjs/theme/themeValue.native.js +73 -0
  315. package/dist/cjs/theme/themeValue.native.js.map +1 -0
  316. package/dist/cjs/theme/tileSizes.cjs +202 -0
  317. package/dist/cjs/theme/tileSizes.native.js +230 -0
  318. package/dist/cjs/theme/tileSizes.native.js.map +1 -0
  319. package/dist/cjs/theme/touchManipulation.cjs +33 -0
  320. package/dist/cjs/theme/touchManipulation.native.js +36 -0
  321. package/dist/cjs/theme/touchManipulation.native.js.map +1 -0
  322. package/dist/cjs/theme/transitionProps.cjs +50 -0
  323. package/dist/cjs/theme/transitionProps.native.js +81 -0
  324. package/dist/cjs/theme/transitionProps.native.js.map +1 -0
  325. package/dist/cjs/theme/useColorScale.cjs +47 -0
  326. package/dist/cjs/theme/useColorScale.native.js +33 -0
  327. package/dist/cjs/theme/useColorScale.native.js.map +1 -0
  328. package/dist/cjs/theme/usePresetSwitch.cjs +70 -0
  329. package/dist/cjs/theme/usePresetSwitch.native.js +50 -0
  330. package/dist/cjs/theme/usePresetSwitch.native.js.map +1 -0
  331. package/dist/cjs/theme/useResolvedKnobs.cjs +140 -0
  332. package/dist/cjs/theme/useResolvedKnobs.native.js +177 -0
  333. package/dist/cjs/theme/useResolvedKnobs.native.js.map +1 -0
  334. package/dist/cjs/theme/useSchemePreference.cjs +49 -0
  335. package/dist/cjs/theme/useSchemePreference.native.js +80 -0
  336. package/dist/cjs/theme/useSchemePreference.native.js.map +1 -0
  337. package/dist/cjs/theme/useTheme.cjs +152 -0
  338. package/dist/cjs/theme/useTheme.native.js +94 -0
  339. package/dist/cjs/theme/useTheme.native.js.map +1 -0
  340. package/dist/cjs/theme/useTouchSurface.cjs +33 -0
  341. package/dist/cjs/theme/useTouchSurface.native.js +36 -0
  342. package/dist/cjs/theme/useTouchSurface.native.js.map +1 -0
  343. package/dist/cjs/theme/v3TokenRoles.cjs +64 -0
  344. package/dist/cjs/theme/v3TokenRoles.native.js +67 -0
  345. package/dist/cjs/theme/v3TokenRoles.native.js.map +1 -0
  346. package/dist/esm/audit/constraintAudit.mjs +540 -0
  347. package/dist/esm/audit/constraintAudit.mjs.map +1 -0
  348. package/dist/esm/audit/constraintAudit.native.js +918 -0
  349. package/dist/esm/audit/constraintAudit.native.js.map +1 -0
  350. package/dist/esm/audit/designTokens.mjs +28 -0
  351. package/dist/esm/audit/designTokens.mjs.map +1 -0
  352. package/dist/esm/audit/designTokens.native.js +52 -0
  353. package/dist/esm/audit/designTokens.native.js.map +1 -0
  354. package/dist/esm/audit/diffReport.mjs +229 -0
  355. package/dist/esm/audit/diffReport.mjs.map +1 -0
  356. package/dist/esm/audit/diffReport.native.js +490 -0
  357. package/dist/esm/audit/diffReport.native.js.map +1 -0
  358. package/dist/esm/audit/index.mjs +5 -0
  359. package/dist/esm/audit/index.mjs.map +1 -0
  360. package/dist/esm/audit/index.native.js +5 -0
  361. package/dist/esm/audit/index.native.js.map +1 -0
  362. package/dist/esm/audit/themeMatrix.mjs +890 -0
  363. package/dist/esm/audit/themeMatrix.mjs.map +1 -0
  364. package/dist/esm/audit/themeMatrix.native.js +1515 -0
  365. package/dist/esm/audit/themeMatrix.native.js.map +1 -0
  366. package/dist/esm/dates.mjs +224 -0
  367. package/dist/esm/dates.mjs.map +1 -0
  368. package/dist/esm/dates.native.js +249 -0
  369. package/dist/esm/dates.native.js.map +1 -0
  370. package/dist/esm/devWarn.mjs +123 -0
  371. package/dist/esm/devWarn.mjs.map +1 -0
  372. package/dist/esm/devWarn.native.js +148 -0
  373. package/dist/esm/devWarn.native.js.map +1 -0
  374. package/dist/esm/expo.mjs +59 -0
  375. package/dist/esm/expo.mjs.map +1 -0
  376. package/dist/esm/expo.native.js +64 -0
  377. package/dist/esm/expo.native.js.map +1 -0
  378. package/dist/esm/figma/figmaTokens.mjs +322 -0
  379. package/dist/esm/figma/figmaTokens.mjs.map +1 -0
  380. package/dist/esm/figma/figmaTokens.native.js +606 -0
  381. package/dist/esm/figma/figmaTokens.native.js.map +1 -0
  382. package/dist/esm/font.mjs +40 -0
  383. package/dist/esm/font.mjs.map +1 -0
  384. package/dist/esm/font.native.js +46 -0
  385. package/dist/esm/font.native.js.map +1 -0
  386. package/dist/esm/fonts/createFontLoader.mjs +7 -0
  387. package/dist/esm/fonts/createFontLoader.mjs.map +1 -0
  388. package/dist/esm/fonts/createFontLoader.native.js +42 -0
  389. package/dist/esm/fonts/createFontLoader.native.js.map +1 -0
  390. package/dist/esm/fonts/index.mjs +4 -0
  391. package/dist/esm/fonts/index.mjs.map +1 -0
  392. package/dist/esm/fonts/index.native.js +4 -0
  393. package/dist/esm/fonts/index.native.js.map +1 -0
  394. package/dist/esm/fonts/interFaces.mjs +12 -0
  395. package/dist/esm/fonts/interFaces.mjs.map +1 -0
  396. package/dist/esm/fonts/interFaces.native.js +12 -0
  397. package/dist/esm/fonts/interFaces.native.js.map +1 -0
  398. package/dist/esm/fonts/types.mjs +2 -0
  399. package/dist/esm/fonts/types.mjs.map +1 -0
  400. package/dist/esm/fonts/types.native.js +2 -0
  401. package/dist/esm/fonts/types.native.js.map +1 -0
  402. package/dist/esm/index.mjs +11 -0
  403. package/dist/esm/index.mjs.map +1 -0
  404. package/dist/esm/index.native.js +11 -0
  405. package/dist/esm/index.native.js.map +1 -0
  406. package/dist/esm/keyboardFocusRing.mjs +81 -0
  407. package/dist/esm/keyboardFocusRing.mjs.map +1 -0
  408. package/dist/esm/keyboardFocusRing.native.js +83 -0
  409. package/dist/esm/keyboardFocusRing.native.js.map +1 -0
  410. package/dist/esm/menuRow.mjs +49 -0
  411. package/dist/esm/menuRow.mjs.map +1 -0
  412. package/dist/esm/menuRow.native.js +52 -0
  413. package/dist/esm/menuRow.native.js.map +1 -0
  414. package/dist/esm/numbers.mjs +132 -0
  415. package/dist/esm/numbers.mjs.map +1 -0
  416. package/dist/esm/numbers.native.js +141 -0
  417. package/dist/esm/numbers.native.js.map +1 -0
  418. package/dist/esm/theme/FontKnobStyles.mjs +131 -0
  419. package/dist/esm/theme/FontKnobStyles.mjs.map +1 -0
  420. package/dist/esm/theme/FontKnobStyles.native.js +11 -0
  421. package/dist/esm/theme/FontKnobStyles.native.js.map +1 -0
  422. package/dist/esm/theme/Heading.mjs +143 -0
  423. package/dist/esm/theme/Heading.mjs.map +1 -0
  424. package/dist/esm/theme/Heading.native.js +152 -0
  425. package/dist/esm/theme/Heading.native.js.map +1 -0
  426. package/dist/esm/theme/IconSlot.mjs +42 -0
  427. package/dist/esm/theme/IconSlot.mjs.map +1 -0
  428. package/dist/esm/theme/IconSlot.native.js +50 -0
  429. package/dist/esm/theme/IconSlot.native.js.map +1 -0
  430. package/dist/esm/theme/Intent.mjs +19 -0
  431. package/dist/esm/theme/Intent.mjs.map +1 -0
  432. package/dist/esm/theme/Intent.native.js +20 -0
  433. package/dist/esm/theme/Intent.native.js.map +1 -0
  434. package/dist/esm/theme/Preset.mjs +124 -0
  435. package/dist/esm/theme/Preset.mjs.map +1 -0
  436. package/dist/esm/theme/Preset.native.js +127 -0
  437. package/dist/esm/theme/Preset.native.js.map +1 -0
  438. package/dist/esm/theme/PresetContext.mjs +11 -0
  439. package/dist/esm/theme/PresetContext.mjs.map +1 -0
  440. package/dist/esm/theme/PresetContext.native.js +12 -0
  441. package/dist/esm/theme/PresetContext.native.js.map +1 -0
  442. package/dist/esm/theme/Surface.mjs +80 -0
  443. package/dist/esm/theme/Surface.mjs.map +1 -0
  444. package/dist/esm/theme/Surface.native.js +88 -0
  445. package/dist/esm/theme/Surface.native.js.map +1 -0
  446. package/dist/esm/theme/Text.mjs +119 -0
  447. package/dist/esm/theme/Text.mjs.map +1 -0
  448. package/dist/esm/theme/Text.native.js +124 -0
  449. package/dist/esm/theme/Text.native.js.map +1 -0
  450. package/dist/esm/theme/Tint.mjs +29 -0
  451. package/dist/esm/theme/Tint.mjs.map +1 -0
  452. package/dist/esm/theme/Tint.native.js +30 -0
  453. package/dist/esm/theme/Tint.native.js.map +1 -0
  454. package/dist/esm/theme/activateThemeConfig.mjs +17 -0
  455. package/dist/esm/theme/activateThemeConfig.mjs.map +1 -0
  456. package/dist/esm/theme/activateThemeConfig.native.js +17 -0
  457. package/dist/esm/theme/activateThemeConfig.native.js.map +1 -0
  458. package/dist/esm/theme/animations/css.mjs +7 -0
  459. package/dist/esm/theme/animations/css.mjs.map +1 -0
  460. package/dist/esm/theme/animations/css.native.js +7 -0
  461. package/dist/esm/theme/animations/css.native.js.map +1 -0
  462. package/dist/esm/theme/animations/index.mjs +2 -0
  463. package/dist/esm/theme/animations/index.mjs.map +1 -0
  464. package/dist/esm/theme/animations/index.native.js +2 -0
  465. package/dist/esm/theme/animations/index.native.js.map +1 -0
  466. package/dist/esm/theme/animations/reactNative.mjs +131 -0
  467. package/dist/esm/theme/animations/reactNative.mjs.map +1 -0
  468. package/dist/esm/theme/animations/reactNative.native.js +131 -0
  469. package/dist/esm/theme/animations/reactNative.native.js.map +1 -0
  470. package/dist/esm/theme/chartPalette.mjs +191 -0
  471. package/dist/esm/theme/chartPalette.mjs.map +1 -0
  472. package/dist/esm/theme/chartPalette.native.js +256 -0
  473. package/dist/esm/theme/chartPalette.native.js.map +1 -0
  474. package/dist/esm/theme/colorRules.mjs +273 -0
  475. package/dist/esm/theme/colorRules.mjs.map +1 -0
  476. package/dist/esm/theme/colorRules.native.js +306 -0
  477. package/dist/esm/theme/colorRules.native.js.map +1 -0
  478. package/dist/esm/theme/controlTiers.mjs +39 -0
  479. package/dist/esm/theme/controlTiers.mjs.map +1 -0
  480. package/dist/esm/theme/controlTiers.native.js +41 -0
  481. package/dist/esm/theme/controlTiers.native.js.map +1 -0
  482. package/dist/esm/theme/cookies.mjs +145 -0
  483. package/dist/esm/theme/cookies.mjs.map +1 -0
  484. package/dist/esm/theme/cookies.native.js +268 -0
  485. package/dist/esm/theme/cookies.native.js.map +1 -0
  486. package/dist/esm/theme/cornerSmoothing.mjs +71 -0
  487. package/dist/esm/theme/cornerSmoothing.mjs.map +1 -0
  488. package/dist/esm/theme/cornerSmoothing.native.js +28 -0
  489. package/dist/esm/theme/cornerSmoothing.native.js.map +1 -0
  490. package/dist/esm/theme/createDefaultThemeConfig.mjs +102 -0
  491. package/dist/esm/theme/createDefaultThemeConfig.mjs.map +1 -0
  492. package/dist/esm/theme/createDefaultThemeConfig.native.js +145 -0
  493. package/dist/esm/theme/createDefaultThemeConfig.native.js.map +1 -0
  494. package/dist/esm/theme/createThemes.mjs +697 -0
  495. package/dist/esm/theme/createThemes.mjs.map +1 -0
  496. package/dist/esm/theme/createThemes.native.js +1140 -0
  497. package/dist/esm/theme/createThemes.native.js.map +1 -0
  498. package/dist/esm/theme/dedupeInherited.mjs +55 -0
  499. package/dist/esm/theme/dedupeInherited.mjs.map +1 -0
  500. package/dist/esm/theme/dedupeInherited.native.js +163 -0
  501. package/dist/esm/theme/dedupeInherited.native.js.map +1 -0
  502. package/dist/esm/theme/defaults/accent.mjs +7 -0
  503. package/dist/esm/theme/defaults/accent.mjs.map +1 -0
  504. package/dist/esm/theme/defaults/accent.native.js +7 -0
  505. package/dist/esm/theme/defaults/accent.native.js.map +1 -0
  506. package/dist/esm/theme/defaults/base.mjs +23 -0
  507. package/dist/esm/theme/defaults/base.mjs.map +1 -0
  508. package/dist/esm/theme/defaults/base.native.js +23 -0
  509. package/dist/esm/theme/defaults/base.native.js.map +1 -0
  510. package/dist/esm/theme/defaults/builderOptions.mjs +165 -0
  511. package/dist/esm/theme/defaults/builderOptions.mjs.map +1 -0
  512. package/dist/esm/theme/defaults/builderOptions.native.js +233 -0
  513. package/dist/esm/theme/defaults/builderOptions.native.js.map +1 -0
  514. package/dist/esm/theme/defaults/categoryFonts.mjs +25 -0
  515. package/dist/esm/theme/defaults/categoryFonts.mjs.map +1 -0
  516. package/dist/esm/theme/defaults/categoryFonts.native.js +25 -0
  517. package/dist/esm/theme/defaults/categoryFonts.native.js.map +1 -0
  518. package/dist/esm/theme/defaults/fonts.mjs +227 -0
  519. package/dist/esm/theme/defaults/fonts.mjs.map +1 -0
  520. package/dist/esm/theme/defaults/fonts.native.js +316 -0
  521. package/dist/esm/theme/defaults/fonts.native.js.map +1 -0
  522. package/dist/esm/theme/defaults/house.mjs +13 -0
  523. package/dist/esm/theme/defaults/house.mjs.map +1 -0
  524. package/dist/esm/theme/defaults/house.native.js +17 -0
  525. package/dist/esm/theme/defaults/house.native.js.map +1 -0
  526. package/dist/esm/theme/defaults/index.mjs +7 -0
  527. package/dist/esm/theme/defaults/index.mjs.map +1 -0
  528. package/dist/esm/theme/defaults/index.native.js +7 -0
  529. package/dist/esm/theme/defaults/index.native.js.map +1 -0
  530. package/dist/esm/theme/devtools/ColorLineVisualizer.mjs +218 -0
  531. package/dist/esm/theme/devtools/ColorLineVisualizer.mjs.map +1 -0
  532. package/dist/esm/theme/devtools/ColorLineVisualizer.native.js +230 -0
  533. package/dist/esm/theme/devtools/ColorLineVisualizer.native.js.map +1 -0
  534. package/dist/esm/theme/devtools/ThemeDevtoolsPanel.mjs +1325 -0
  535. package/dist/esm/theme/devtools/ThemeDevtoolsPanel.mjs.map +1 -0
  536. package/dist/esm/theme/devtools/ThemeDevtoolsPanel.native.js +1786 -0
  537. package/dist/esm/theme/devtools/ThemeDevtoolsPanel.native.js.map +1 -0
  538. package/dist/esm/theme/devtools/animationOptions.mjs +11 -0
  539. package/dist/esm/theme/devtools/animationOptions.mjs.map +1 -0
  540. package/dist/esm/theme/devtools/animationOptions.native.js +18 -0
  541. package/dist/esm/theme/devtools/animationOptions.native.js.map +1 -0
  542. package/dist/esm/theme/devtools/buildSnapshot.mjs +67 -0
  543. package/dist/esm/theme/devtools/buildSnapshot.mjs.map +1 -0
  544. package/dist/esm/theme/devtools/buildSnapshot.native.js +146 -0
  545. package/dist/esm/theme/devtools/buildSnapshot.native.js.map +1 -0
  546. package/dist/esm/theme/devtools/knobIcons.mjs +456 -0
  547. package/dist/esm/theme/devtools/knobIcons.mjs.map +1 -0
  548. package/dist/esm/theme/devtools/knobIcons.native.js +464 -0
  549. package/dist/esm/theme/devtools/knobIcons.native.js.map +1 -0
  550. package/dist/esm/theme/devtools/vizConstants.mjs +26 -0
  551. package/dist/esm/theme/devtools/vizConstants.mjs.map +1 -0
  552. package/dist/esm/theme/devtools/vizConstants.native.js +26 -0
  553. package/dist/esm/theme/devtools/vizConstants.native.js.map +1 -0
  554. package/dist/esm/theme/dynamicType.mjs +24 -0
  555. package/dist/esm/theme/dynamicType.mjs.map +1 -0
  556. package/dist/esm/theme/dynamicType.native.js +24 -0
  557. package/dist/esm/theme/dynamicType.native.js.map +1 -0
  558. package/dist/esm/theme/fieldFocus.mjs +27 -0
  559. package/dist/esm/theme/fieldFocus.mjs.map +1 -0
  560. package/dist/esm/theme/fieldFocus.native.js +30 -0
  561. package/dist/esm/theme/fieldFocus.native.js.map +1 -0
  562. package/dist/esm/theme/fillContrast.mjs +98 -0
  563. package/dist/esm/theme/fillContrast.mjs.map +1 -0
  564. package/dist/esm/theme/fillContrast.native.js +128 -0
  565. package/dist/esm/theme/fillContrast.native.js.map +1 -0
  566. package/dist/esm/theme/focusState.mjs +81 -0
  567. package/dist/esm/theme/focusState.mjs.map +1 -0
  568. package/dist/esm/theme/focusState.native.js +81 -0
  569. package/dist/esm/theme/focusState.native.js.map +1 -0
  570. package/dist/esm/theme/fontCategoryMetrics.mjs +65 -0
  571. package/dist/esm/theme/fontCategoryMetrics.mjs.map +1 -0
  572. package/dist/esm/theme/fontCategoryMetrics.native.js +65 -0
  573. package/dist/esm/theme/fontCategoryMetrics.native.js.map +1 -0
  574. package/dist/esm/theme/fontCategoryStacks.mjs +15 -0
  575. package/dist/esm/theme/fontCategoryStacks.mjs.map +1 -0
  576. package/dist/esm/theme/fontCategoryStacks.native.js +15 -0
  577. package/dist/esm/theme/fontCategoryStacks.native.js.map +1 -0
  578. package/dist/esm/theme/glyphPaint.mjs +29 -0
  579. package/dist/esm/theme/glyphPaint.mjs.map +1 -0
  580. package/dist/esm/theme/glyphPaint.native.js +52 -0
  581. package/dist/esm/theme/glyphPaint.native.js.map +1 -0
  582. package/dist/esm/theme/glyphTint.mjs +60 -0
  583. package/dist/esm/theme/glyphTint.mjs.map +1 -0
  584. package/dist/esm/theme/glyphTint.native.js +63 -0
  585. package/dist/esm/theme/glyphTint.native.js.map +1 -0
  586. package/dist/esm/theme/groupGeometry.mjs +38 -0
  587. package/dist/esm/theme/groupGeometry.mjs.map +1 -0
  588. package/dist/esm/theme/groupGeometry.native.js +40 -0
  589. package/dist/esm/theme/groupGeometry.native.js.map +1 -0
  590. package/dist/esm/theme/hairline.mjs +89 -0
  591. package/dist/esm/theme/hairline.mjs.map +1 -0
  592. package/dist/esm/theme/hairline.native.js +41 -0
  593. package/dist/esm/theme/hairline.native.js.map +1 -0
  594. package/dist/esm/theme/index.mjs +66 -0
  595. package/dist/esm/theme/index.mjs.map +1 -0
  596. package/dist/esm/theme/index.native.js +66 -0
  597. package/dist/esm/theme/index.native.js.map +1 -0
  598. package/dist/esm/theme/intents.mjs +37 -0
  599. package/dist/esm/theme/intents.mjs.map +1 -0
  600. package/dist/esm/theme/intents.native.js +37 -0
  601. package/dist/esm/theme/intents.native.js.map +1 -0
  602. package/dist/esm/theme/knobs.mjs +125 -0
  603. package/dist/esm/theme/knobs.mjs.map +1 -0
  604. package/dist/esm/theme/knobs.native.js +125 -0
  605. package/dist/esm/theme/knobs.native.js.map +1 -0
  606. package/dist/esm/theme/layoutTokens.mjs +124 -0
  607. package/dist/esm/theme/layoutTokens.mjs.map +1 -0
  608. package/dist/esm/theme/layoutTokens.native.js +171 -0
  609. package/dist/esm/theme/layoutTokens.native.js.map +1 -0
  610. package/dist/esm/theme/listRows.mjs +17 -0
  611. package/dist/esm/theme/listRows.mjs.map +1 -0
  612. package/dist/esm/theme/listRows.native.js +19 -0
  613. package/dist/esm/theme/listRows.native.js.map +1 -0
  614. package/dist/esm/theme/mergedTokens.mjs +14 -0
  615. package/dist/esm/theme/mergedTokens.mjs.map +1 -0
  616. package/dist/esm/theme/mergedTokens.native.js +33 -0
  617. package/dist/esm/theme/mergedTokens.native.js.map +1 -0
  618. package/dist/esm/theme/motion.mjs +41 -0
  619. package/dist/esm/theme/motion.mjs.map +1 -0
  620. package/dist/esm/theme/motion.native.js +48 -0
  621. package/dist/esm/theme/motion.native.js.map +1 -0
  622. package/dist/esm/theme/motionStops.mjs +3 -0
  623. package/dist/esm/theme/motionStops.mjs.map +1 -0
  624. package/dist/esm/theme/motionStops.native.js +3 -0
  625. package/dist/esm/theme/motionStops.native.js.map +1 -0
  626. package/dist/esm/theme/motionTiming.mjs +48 -0
  627. package/dist/esm/theme/motionTiming.mjs.map +1 -0
  628. package/dist/esm/theme/motionTiming.native.js +51 -0
  629. package/dist/esm/theme/motionTiming.native.js.map +1 -0
  630. package/dist/esm/theme/nativeFontFamily.mjs +5 -0
  631. package/dist/esm/theme/nativeFontFamily.mjs.map +1 -0
  632. package/dist/esm/theme/nativeFontFamily.native.js +9 -0
  633. package/dist/esm/theme/nativeFontFamily.native.js.map +1 -0
  634. package/dist/esm/theme/nativeMonoFamily.mjs +18 -0
  635. package/dist/esm/theme/nativeMonoFamily.mjs.map +1 -0
  636. package/dist/esm/theme/nativeMonoFamily.native.js +18 -0
  637. package/dist/esm/theme/nativeMonoFamily.native.js.map +1 -0
  638. package/dist/esm/theme/overlaySurfaces.mjs +290 -0
  639. package/dist/esm/theme/overlaySurfaces.mjs.map +1 -0
  640. package/dist/esm/theme/overlaySurfaces.native.js +311 -0
  641. package/dist/esm/theme/overlaySurfaces.native.js.map +1 -0
  642. package/dist/esm/theme/pageGutter.mjs +55 -0
  643. package/dist/esm/theme/pageGutter.mjs.map +1 -0
  644. package/dist/esm/theme/pageGutter.native.js +59 -0
  645. package/dist/esm/theme/pageGutter.native.js.map +1 -0
  646. package/dist/esm/theme/preset.types.mjs +2 -0
  647. package/dist/esm/theme/preset.types.mjs.map +1 -0
  648. package/dist/esm/theme/preset.types.native.js +2 -0
  649. package/dist/esm/theme/preset.types.native.js.map +1 -0
  650. package/dist/esm/theme/presetPreview.mjs +17 -0
  651. package/dist/esm/theme/presetPreview.mjs.map +1 -0
  652. package/dist/esm/theme/presetPreview.native.js +18 -0
  653. package/dist/esm/theme/presetPreview.native.js.map +1 -0
  654. package/dist/esm/theme/presetStore.mjs +251 -0
  655. package/dist/esm/theme/presetStore.mjs.map +1 -0
  656. package/dist/esm/theme/presetStore.native.js +304 -0
  657. package/dist/esm/theme/presetStore.native.js.map +1 -0
  658. package/dist/esm/theme/presetUserSync.mjs +44 -0
  659. package/dist/esm/theme/presetUserSync.mjs.map +1 -0
  660. package/dist/esm/theme/presetUserSync.native.js +46 -0
  661. package/dist/esm/theme/presetUserSync.native.js.map +1 -0
  662. package/dist/esm/theme/presets.mjs +97 -0
  663. package/dist/esm/theme/presets.mjs.map +1 -0
  664. package/dist/esm/theme/presets.native.js +97 -0
  665. package/dist/esm/theme/presets.native.js.map +1 -0
  666. package/dist/esm/theme/radiusClass.mjs +99 -0
  667. package/dist/esm/theme/radiusClass.mjs.map +1 -0
  668. package/dist/esm/theme/radiusClass.native.js +105 -0
  669. package/dist/esm/theme/radiusClass.native.js.map +1 -0
  670. package/dist/esm/theme/radiusClassTable.generated.mjs +135 -0
  671. package/dist/esm/theme/radiusClassTable.generated.mjs.map +1 -0
  672. package/dist/esm/theme/radiusClassTable.generated.native.js +135 -0
  673. package/dist/esm/theme/radiusClassTable.generated.native.js.map +1 -0
  674. package/dist/esm/theme/ramps.mjs +48 -0
  675. package/dist/esm/theme/ramps.mjs.map +1 -0
  676. package/dist/esm/theme/ramps.native.js +49 -0
  677. package/dist/esm/theme/ramps.native.js.map +1 -0
  678. package/dist/esm/theme/readableColor.mjs +248 -0
  679. package/dist/esm/theme/readableColor.mjs.map +1 -0
  680. package/dist/esm/theme/readableColor.native.js +354 -0
  681. package/dist/esm/theme/readableColor.native.js.map +1 -0
  682. package/dist/esm/theme/recipeInputs.mjs +309 -0
  683. package/dist/esm/theme/recipeInputs.mjs.map +1 -0
  684. package/dist/esm/theme/recipeInputs.native.js +424 -0
  685. package/dist/esm/theme/recipeInputs.native.js.map +1 -0
  686. package/dist/esm/theme/recipes.mjs +2 -0
  687. package/dist/esm/theme/recipes.mjs.map +1 -0
  688. package/dist/esm/theme/recipes.native.js +2 -0
  689. package/dist/esm/theme/recipes.native.js.map +1 -0
  690. package/dist/esm/theme/resolveKnobs.mjs +818 -0
  691. package/dist/esm/theme/resolveKnobs.mjs.map +1 -0
  692. package/dist/esm/theme/resolveKnobs.native.js +833 -0
  693. package/dist/esm/theme/resolveKnobs.native.js.map +1 -0
  694. package/dist/esm/theme/scale/ScaleStyles.mjs +30 -0
  695. package/dist/esm/theme/scale/ScaleStyles.mjs.map +1 -0
  696. package/dist/esm/theme/scale/ScaleStyles.native.js +11 -0
  697. package/dist/esm/theme/scale/ScaleStyles.native.js.map +1 -0
  698. package/dist/esm/theme/scale/activeScale.mjs +28 -0
  699. package/dist/esm/theme/scale/activeScale.mjs.map +1 -0
  700. package/dist/esm/theme/scale/activeScale.native.js +53 -0
  701. package/dist/esm/theme/scale/activeScale.native.js.map +1 -0
  702. package/dist/esm/theme/scale/deriveRecipeInputs.mjs +86 -0
  703. package/dist/esm/theme/scale/deriveRecipeInputs.mjs.map +1 -0
  704. package/dist/esm/theme/scale/deriveRecipeInputs.native.js +126 -0
  705. package/dist/esm/theme/scale/deriveRecipeInputs.native.js.map +1 -0
  706. package/dist/esm/theme/scale/generateScale.mjs +85 -0
  707. package/dist/esm/theme/scale/generateScale.mjs.map +1 -0
  708. package/dist/esm/theme/scale/generateScale.native.js +168 -0
  709. package/dist/esm/theme/scale/generateScale.native.js.map +1 -0
  710. package/dist/esm/theme/scale/index.mjs +12 -0
  711. package/dist/esm/theme/scale/index.mjs.map +1 -0
  712. package/dist/esm/theme/scale/index.native.js +12 -0
  713. package/dist/esm/theme/scale/index.native.js.map +1 -0
  714. package/dist/esm/theme/scale/installScaleConfig.mjs +6 -0
  715. package/dist/esm/theme/scale/installScaleConfig.mjs.map +1 -0
  716. package/dist/esm/theme/scale/installScaleConfig.native.js +36 -0
  717. package/dist/esm/theme/scale/installScaleConfig.native.js.map +1 -0
  718. package/dist/esm/theme/scale/scaleAttribute.mjs +11 -0
  719. package/dist/esm/theme/scale/scaleAttribute.mjs.map +1 -0
  720. package/dist/esm/theme/scale/scaleAttribute.native.js +11 -0
  721. package/dist/esm/theme/scale/scaleAttribute.native.js.map +1 -0
  722. package/dist/esm/theme/scale/scaleCss.mjs +62 -0
  723. package/dist/esm/theme/scale/scaleCss.mjs.map +1 -0
  724. package/dist/esm/theme/scale/scaleCss.native.js +171 -0
  725. package/dist/esm/theme/scale/scaleCss.native.js.map +1 -0
  726. package/dist/esm/theme/scale/scaleFonts.mjs +60 -0
  727. package/dist/esm/theme/scale/scaleFonts.mjs.map +1 -0
  728. package/dist/esm/theme/scale/scaleFonts.native.js +126 -0
  729. package/dist/esm/theme/scale/scaleFonts.native.js.map +1 -0
  730. package/dist/esm/theme/scale/scaleInputs.mjs +189 -0
  731. package/dist/esm/theme/scale/scaleInputs.mjs.map +1 -0
  732. package/dist/esm/theme/scale/scaleInputs.native.js +191 -0
  733. package/dist/esm/theme/scale/scaleInputs.native.js.map +1 -0
  734. package/dist/esm/theme/scale/themeScales.mjs +109 -0
  735. package/dist/esm/theme/scale/themeScales.mjs.map +1 -0
  736. package/dist/esm/theme/scale/themeScales.native.js +155 -0
  737. package/dist/esm/theme/scale/themeScales.native.js.map +1 -0
  738. package/dist/esm/theme/scale/useActiveScale.mjs +51 -0
  739. package/dist/esm/theme/scale/useActiveScale.mjs.map +1 -0
  740. package/dist/esm/theme/scale/useActiveScale.native.js +57 -0
  741. package/dist/esm/theme/scale/useActiveScale.native.js.map +1 -0
  742. package/dist/esm/theme/schemeStore.mjs +59 -0
  743. package/dist/esm/theme/schemeStore.mjs.map +1 -0
  744. package/dist/esm/theme/schemeStore.native.js +73 -0
  745. package/dist/esm/theme/schemeStore.native.js.map +1 -0
  746. package/dist/esm/theme/shared.mjs +95 -0
  747. package/dist/esm/theme/shared.mjs.map +1 -0
  748. package/dist/esm/theme/shared.native.js +135 -0
  749. package/dist/esm/theme/shared.native.js.map +1 -0
  750. package/dist/esm/theme/sizeRecipes.mjs +112 -0
  751. package/dist/esm/theme/sizeRecipes.mjs.map +1 -0
  752. package/dist/esm/theme/sizeRecipes.native.js +184 -0
  753. package/dist/esm/theme/sizeRecipes.native.js.map +1 -0
  754. package/dist/esm/theme/subsetThemes.mjs +21 -0
  755. package/dist/esm/theme/subsetThemes.mjs.map +1 -0
  756. package/dist/esm/theme/subsetThemes.native.js +48 -0
  757. package/dist/esm/theme/subsetThemes.native.js.map +1 -0
  758. package/dist/esm/theme/theme.mjs +163 -0
  759. package/dist/esm/theme/theme.mjs.map +1 -0
  760. package/dist/esm/theme/theme.native.js +87 -0
  761. package/dist/esm/theme/theme.native.js.map +1 -0
  762. package/dist/esm/theme/themeValue.mjs +25 -0
  763. package/dist/esm/theme/themeValue.mjs.map +1 -0
  764. package/dist/esm/theme/themeValue.native.js +44 -0
  765. package/dist/esm/theme/themeValue.native.js.map +1 -0
  766. package/dist/esm/theme/tileSizes.mjs +167 -0
  767. package/dist/esm/theme/tileSizes.mjs.map +1 -0
  768. package/dist/esm/theme/tileSizes.native.js +192 -0
  769. package/dist/esm/theme/tileSizes.native.js.map +1 -0
  770. package/dist/esm/theme/touchManipulation.mjs +7 -0
  771. package/dist/esm/theme/touchManipulation.mjs.map +1 -0
  772. package/dist/esm/theme/touchManipulation.native.js +7 -0
  773. package/dist/esm/theme/touchManipulation.native.js.map +1 -0
  774. package/dist/esm/theme/transitionProps.mjs +25 -0
  775. package/dist/esm/theme/transitionProps.mjs.map +1 -0
  776. package/dist/esm/theme/transitionProps.native.js +53 -0
  777. package/dist/esm/theme/transitionProps.native.js.map +1 -0
  778. package/dist/esm/theme/useColorScale.mjs +22 -0
  779. package/dist/esm/theme/useColorScale.mjs.map +1 -0
  780. package/dist/esm/theme/useColorScale.native.js +5 -0
  781. package/dist/esm/theme/useColorScale.native.js.map +1 -0
  782. package/dist/esm/theme/usePresetSwitch.mjs +45 -0
  783. package/dist/esm/theme/usePresetSwitch.mjs.map +1 -0
  784. package/dist/esm/theme/usePresetSwitch.native.js +22 -0
  785. package/dist/esm/theme/usePresetSwitch.native.js.map +1 -0
  786. package/dist/esm/theme/useResolvedKnobs.mjs +111 -0
  787. package/dist/esm/theme/useResolvedKnobs.mjs.map +1 -0
  788. package/dist/esm/theme/useResolvedKnobs.native.js +145 -0
  789. package/dist/esm/theme/useResolvedKnobs.native.js.map +1 -0
  790. package/dist/esm/theme/useSchemePreference.mjs +24 -0
  791. package/dist/esm/theme/useSchemePreference.mjs.map +1 -0
  792. package/dist/esm/theme/useSchemePreference.native.js +52 -0
  793. package/dist/esm/theme/useSchemePreference.native.js.map +1 -0
  794. package/dist/esm/theme/useTheme.mjs +127 -0
  795. package/dist/esm/theme/useTheme.mjs.map +1 -0
  796. package/dist/esm/theme/useTheme.native.js +66 -0
  797. package/dist/esm/theme/useTheme.native.js.map +1 -0
  798. package/dist/esm/theme/useTouchSurface.mjs +8 -0
  799. package/dist/esm/theme/useTouchSurface.mjs.map +1 -0
  800. package/dist/esm/theme/useTouchSurface.native.js +8 -0
  801. package/dist/esm/theme/useTouchSurface.native.js.map +1 -0
  802. package/dist/esm/theme/v3TokenRoles.mjs +39 -0
  803. package/dist/esm/theme/v3TokenRoles.mjs.map +1 -0
  804. package/dist/esm/theme/v3TokenRoles.native.js +39 -0
  805. package/dist/esm/theme/v3TokenRoles.native.js.map +1 -0
  806. package/package.json +56 -12
  807. package/src/expo.ts +20 -0
  808. package/src/fonts/createFontLoader.ts +8 -4
  809. package/src/fonts/index.ts +1 -0
  810. package/src/fonts/interFaces.spec.ts +87 -0
  811. package/src/fonts/interFaces.ts +26 -0
  812. package/src/theme/accentButtonLabel.spec.ts +116 -0
  813. package/src/theme/colorRules.ts +41 -0
  814. package/src/theme/controlTiers.ts +6 -4
  815. package/src/theme/defaults/fonts.spec.ts +9 -2
  816. package/src/theme/defaults/fonts.ts +5 -8
  817. package/src/theme/glyphTint.spec.ts +30 -2
  818. package/src/theme/glyphTint.ts +1 -47
  819. package/src/theme/hairline.spec.ts +60 -3
  820. package/src/theme/hairline.ts +35 -5
  821. package/src/theme/readableColor.ts +49 -0
  822. package/src/theme/resolveKnobs.ts +172 -101
  823. package/src/theme/scale/activeScale.spec.ts +33 -0
  824. package/src/theme/scale/activeScale.ts +19 -0
  825. package/src/theme/scale/index.ts +6 -1
  826. package/src/theme/subsetThemes.spec.ts +81 -0
  827. package/src/theme/subsetThemes.ts +13 -1
  828. package/types/expo.d.ts +10 -0
  829. package/types/expo.d.ts.map +1 -1
  830. package/types/fonts/createFontLoader.d.ts.map +1 -1
  831. package/types/fonts/index.d.ts +1 -0
  832. package/types/fonts/index.d.ts.map +1 -1
  833. package/types/fonts/interFaces.d.ts +23 -0
  834. package/types/fonts/interFaces.d.ts.map +1 -0
  835. package/types/theme/colorRules.d.ts +6 -0
  836. package/types/theme/colorRules.d.ts.map +1 -1
  837. package/types/theme/controlTiers.d.ts +5 -3
  838. package/types/theme/controlTiers.d.ts.map +1 -1
  839. package/types/theme/defaults/fonts.d.ts +30 -30
  840. package/types/theme/defaults/fonts.d.ts.map +1 -1
  841. package/types/theme/glyphTint.d.ts +0 -6
  842. package/types/theme/glyphTint.d.ts.map +1 -1
  843. package/types/theme/hairline.d.ts +14 -3
  844. package/types/theme/hairline.d.ts.map +1 -1
  845. package/types/theme/readableColor.d.ts +19 -0
  846. package/types/theme/readableColor.d.ts.map +1 -1
  847. package/types/theme/resolveKnobs.d.ts.map +1 -1
  848. package/types/theme/scale/activeScale.d.ts +8 -0
  849. package/types/theme/scale/activeScale.d.ts.map +1 -1
  850. package/types/theme/scale/index.d.ts +1 -1
  851. package/types/theme/scale/index.d.ts.map +1 -1
  852. package/types/theme/subsetThemes.d.ts +10 -1
  853. package/types/theme/subsetThemes.d.ts.map +1 -1
@@ -0,0 +1,1786 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
3
+ import { writeToClipboard } from "@multiplatform.one/platform";
4
+ import { storage } from "@multiplatform.one/store";
5
+ import { useTheme } from "../useTheme.native.js";
6
+ import { defaultKnobs, FillStyle, BorderRadius, CornerSmoothing, BorderWidth, Elevation, TextAccent, HeadingFont, BodyFont, FontWeight, FieldLabelPlacement, RequiredMarking, TableZebra, BulkBarPlacement, SelectAllScope, TimestampStyle, DisabledStyle, FormAutofocus, interactionStates } from "../knobs.native.js";
7
+ import { getPresetNames, getPreset } from "../shared.native.js";
8
+ import { defaultScaleInputs } from "../scale/scaleInputs.native.js";
9
+ import { extractAnimationNames } from "./animationOptions.native.js";
10
+ import { ColorLineVisualizer } from "./ColorLineVisualizer.native.js";
11
+ import { buildSnapshot } from "./buildSnapshot.native.js";
12
+ import { fillIcon as _fillIcon, borderRadiusIcon as _borderRadiusIcon, cornerSmoothingIcon as _cornerSmoothingIcon, borderWidthIcon as _borderWidthIcon, elevationIcon as _elevationIcon, textAccentIcon as _textAccentIcon, headingFontIcon as _headingFontIcon, bodyFontIcon as _bodyFontIcon, fontWeightIcon as _fontWeightIcon, modeIcon as _modeIcon, fieldLabelPlacementIcon as _fieldLabelPlacementIcon, requiredMarkingIcon as _requiredMarkingIcon, tableZebraIcon as _tableZebraIcon, bulkBarPlacementIcon as _bulkBarPlacementIcon, selectAllScopeIcon as _selectAllScopeIcon, timestampStyleIcon as _timestampStyleIcon, disabledStyleIcon as _disabledStyleIcon, formAutofocusIcon as _formAutofocusIcon } from "./knobIcons.native.js";
13
+ function _type_of(obj) {
14
+ "@swc/helpers - typeof";
15
+
16
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
17
+ }
18
+ var tanstackDevtoolsSettings = "tanstack_devtools_settings";
19
+ var pinnedKnobsStorageKey = "ts-theme-pinned";
20
+ var expandedKnobsStorageKey = "ts-theme-expanded";
21
+ var stateDisplayLabels = {
22
+ hover: "hover",
23
+ press: "press",
24
+ focus: "focus",
25
+ focusVisible: "focusV"
26
+ };
27
+ var knobKeys = ["fillStyle", "borderRadius", "cornerSmoothing", "borderWidth", "elevation", "textAccent", "headingFont", "bodyFont", "fontWeight", "animation", "fieldLabelPlacement", "requiredMarking", "tableZebra", "bulkBarPlacement", "selectAllScope", "timestampStyle", "disabledStyle", "formAutofocus"];
28
+ var stateKnobKeys = ["fillStyle", "borderRadius", "borderWidth", "elevation", "textAccent", "headingFont", "bodyFont", "fontWeight"];
29
+ var designProfiles = {
30
+ Bootstrap: {
31
+ fillStyle: "filled",
32
+ borderRadius: "small",
33
+ borderWidth: "medium",
34
+ elevation: "none",
35
+ textAccent: "high",
36
+ headingFont: "sans-serif",
37
+ bodyFont: "sans-serif",
38
+ fontWeight: "regular",
39
+ animation: "quick",
40
+ color: "blue"
41
+ },
42
+ "Material UI": {
43
+ fillStyle: "filled",
44
+ borderRadius: "large",
45
+ borderWidth: "none",
46
+ elevation: "small",
47
+ textAccent: "high",
48
+ headingFont: "sans-serif",
49
+ bodyFont: "sans-serif",
50
+ fontWeight: "bold",
51
+ animation: "medium",
52
+ color: "purple",
53
+ "hover.elevation": "medium"
54
+ },
55
+ "GTK4 / Adwaita": {
56
+ fillStyle: "filled",
57
+ borderRadius: "small",
58
+ borderWidth: "small",
59
+ elevation: "none",
60
+ textAccent: "high",
61
+ headingFont: "sans-serif",
62
+ bodyFont: "sans-serif",
63
+ fontWeight: "regular",
64
+ animation: "quick",
65
+ color: "gray"
66
+ },
67
+ "Fluent UI": {
68
+ fillStyle: "filled",
69
+ borderRadius: "small",
70
+ borderWidth: "small",
71
+ elevation: "small",
72
+ textAccent: "high",
73
+ headingFont: "sans-serif",
74
+ bodyFont: "sans-serif",
75
+ fontWeight: "regular",
76
+ animation: "quick",
77
+ color: "blue",
78
+ "hover.elevation": "small"
79
+ }
80
+ };
81
+ var profileNames = ["", ...Object.keys(designProfiles)];
82
+ function formatPresetOption(name) {
83
+ var _ref, _ref1;
84
+ var _getPreset;
85
+ if (name === "") return "custom";
86
+ var scale = (_getPreset = getPreset(name)) === null || _getPreset === void 0 ? void 0 : _getPreset.scale;
87
+ var control = (_ref = scale === null || scale === void 0 ? void 0 : scale.control) !== null && _ref !== void 0 ? _ref : defaultScaleInputs.control;
88
+ var type = (_ref1 = scale === null || scale === void 0 ? void 0 : scale.type) !== null && _ref1 !== void 0 ? _ref1 : defaultScaleInputs.type;
89
+ return `${name} \xB7 ${control}/${type}`;
90
+ }
91
+ function createStyles(isDark) {
92
+ return {
93
+ panel: {
94
+ fontFamily: "system-ui, -apple-system, sans-serif",
95
+ // Not the host page's tracking, which follows the app's bodyFont knob.
96
+ letterSpacing: "normal",
97
+ fontSize: 13,
98
+ color: isDark ? "#e8e8e8" : "#1a1a1a",
99
+ padding: 12,
100
+ display: "flex",
101
+ flexDirection: "column",
102
+ gap: 12,
103
+ height: "100%",
104
+ overflowY: "auto",
105
+ background: "transparent"
106
+ },
107
+ knobsRow: {
108
+ display: "flex",
109
+ flexDirection: "row",
110
+ flexWrap: "wrap",
111
+ alignItems: "flex-start",
112
+ alignContent: "flex-start",
113
+ gap: 8
114
+ },
115
+ card: {
116
+ display: "flex",
117
+ flexDirection: "column",
118
+ gap: 4,
119
+ padding: "6px 10px",
120
+ borderRadius: 6,
121
+ border: isDark ? "1px solid #333" : "1px solid #e0e0e0",
122
+ background: isDark ? "#1e1e1e" : "#fafafa",
123
+ minWidth: 140
124
+ },
125
+ label: {
126
+ fontSize: 11,
127
+ fontWeight: 500,
128
+ color: isDark ? "#888" : "#777",
129
+ whiteSpace: "nowrap",
130
+ textTransform: "uppercase",
131
+ letterSpacing: "0.04em"
132
+ },
133
+ select: {
134
+ padding: "3px 6px",
135
+ borderRadius: 4,
136
+ border: isDark ? "1px solid #444" : "1px solid #ccc",
137
+ background: isDark ? "#2a2a2a" : "#fff",
138
+ color: isDark ? "#e8e8e8" : "#1a1a1a",
139
+ cursor: "pointer",
140
+ fontSize: 13,
141
+ fontFamily: "inherit",
142
+ outline: "none",
143
+ width: "100%"
144
+ },
145
+ toggleRow: {
146
+ display: "flex",
147
+ alignItems: "center",
148
+ gap: 6
149
+ },
150
+ toggle: function toggle(active) {
151
+ return {
152
+ width: 36,
153
+ height: 20,
154
+ borderRadius: 10,
155
+ background: active ? "#7c6cff" : isDark ? "#444" : "#ccc",
156
+ position: "relative",
157
+ cursor: "pointer",
158
+ border: "none",
159
+ padding: 0,
160
+ transition: "background 0.2s"
161
+ };
162
+ },
163
+ toggleKnob: function toggleKnob(active) {
164
+ return {
165
+ width: 16,
166
+ height: 16,
167
+ borderRadius: 8,
168
+ background: "#fff",
169
+ position: "absolute",
170
+ top: 2,
171
+ left: active ? 18 : 2,
172
+ transition: "left 0.2s"
173
+ };
174
+ },
175
+ iconBtn: function iconBtn(active) {
176
+ return {
177
+ width: 30,
178
+ height: 30,
179
+ borderRadius: 6,
180
+ border: active ? `1.5px solid ${isDark ? "rgba(255,255,255,0.5)" : "rgba(0,0,0,0.35)"}` : `1px solid ${isDark ? "rgba(255,255,255,0.08)" : "rgba(0,0,0,0.08)"}`,
181
+ background: active ? isDark ? "rgba(255,255,255,0.12)" : "rgba(0,0,0,0.06)" : "transparent",
182
+ cursor: "pointer",
183
+ display: "flex",
184
+ alignItems: "center",
185
+ justifyContent: "center",
186
+ padding: 0,
187
+ transition: "all 0.15s ease",
188
+ outline: "none"
189
+ };
190
+ },
191
+ iconRow: {
192
+ display: "flex",
193
+ gap: 2,
194
+ justifyContent: "flex-end"
195
+ },
196
+ resetBtn: {
197
+ padding: "4px 10px",
198
+ borderRadius: 4,
199
+ border: isDark ? "1px solid #555" : "1px solid #ccc",
200
+ background: isDark ? "#2a2a2a" : "#f5f5f5",
201
+ color: isDark ? "#e8e8e8" : "#1a1a1a",
202
+ cursor: "pointer",
203
+ fontSize: 11,
204
+ fontFamily: "inherit",
205
+ fontWeight: 500,
206
+ transition: "all 0.15s",
207
+ whiteSpace: "nowrap"
208
+ }
209
+ };
210
+ }
211
+ function PinCheckbox(param) {
212
+ var {
213
+ pinned,
214
+ onToggle,
215
+ isDark
216
+ } = param;
217
+ return /* @__PURE__ */_jsx("label", {
218
+ title: pinned ? "Pinned \u2014 random won't change this" : "Pin to protect from random",
219
+ style: {
220
+ position: "absolute",
221
+ top: 3,
222
+ right: 3,
223
+ display: "flex",
224
+ alignItems: "center",
225
+ cursor: "pointer",
226
+ zIndex: 1,
227
+ opacity: pinned ? 1 : 0,
228
+ transition: "opacity 0.15s"
229
+ },
230
+ className: "pin-checkbox",
231
+ children: /* @__PURE__ */_jsx("input", {
232
+ type: "checkbox",
233
+ checked: pinned,
234
+ onChange: onToggle,
235
+ style: {
236
+ width: 10,
237
+ height: 10,
238
+ margin: 0,
239
+ cursor: "pointer",
240
+ accentColor: isDark ? "#e8e8e8" : "#1a1a1a"
241
+ }
242
+ })
243
+ });
244
+ }
245
+ function Dropdown(param) {
246
+ var {
247
+ label,
248
+ options,
249
+ value,
250
+ onChange,
251
+ format,
252
+ styles,
253
+ pinned,
254
+ onTogglePin,
255
+ onUnset,
256
+ isDark,
257
+ children
258
+ } = param;
259
+ var optionStyle = isDark ? {
260
+ backgroundColor: "#1f1f1f",
261
+ color: "#e8e8e8"
262
+ } : {
263
+ backgroundColor: "#ffffff",
264
+ color: "#1a1a1a"
265
+ };
266
+ return /* @__PURE__ */_jsxs("div", {
267
+ style: {
268
+ ...styles.card,
269
+ position: "relative"
270
+ },
271
+ onMouseEnter: function onMouseEnter(e) {
272
+ var element = e.currentTarget.querySelector(".pin-checkbox");
273
+ if (element && !pinned) element.style.opacity = "0.5";
274
+ },
275
+ onMouseLeave: function onMouseLeave(e) {
276
+ var element = e.currentTarget.querySelector(".pin-checkbox");
277
+ if (element && !pinned) element.style.opacity = "0";
278
+ },
279
+ children: [onTogglePin && /* @__PURE__ */_jsx(PinCheckbox, {
280
+ pinned: !!pinned,
281
+ onToggle: onTogglePin,
282
+ isDark: !!isDark
283
+ }), /* @__PURE__ */_jsx("span", {
284
+ style: styles.label,
285
+ children: label
286
+ }), /* @__PURE__ */_jsxs("select", {
287
+ style: {
288
+ ...styles.select,
289
+ colorScheme: isDark ? "dark" : "light"
290
+ },
291
+ value: value === void 0 ? "__unset__" : String(value),
292
+ onChange: function onChange1(e) {
293
+ var rawValue = e.target.value;
294
+ if (rawValue === "__unset__") {
295
+ onUnset === null || onUnset === void 0 ? void 0 : onUnset();
296
+ return;
297
+ }
298
+ var matchedOption = options.find(function (option) {
299
+ return String(option) === rawValue;
300
+ });
301
+ if (matchedOption !== void 0) onChange(matchedOption);
302
+ },
303
+ children: [onUnset && /* @__PURE__ */_jsx("option", {
304
+ value: "__unset__",
305
+ style: optionStyle,
306
+ children: "unset (inherit)"
307
+ }), options.map(function (opt) {
308
+ return /* @__PURE__ */_jsx("option", {
309
+ value: String(opt),
310
+ style: optionStyle,
311
+ children: format ? format(opt) : String(opt)
312
+ }, String(opt));
313
+ })]
314
+ }), children]
315
+ });
316
+ }
317
+ function CollapseButton(param) {
318
+ var {
319
+ expanded,
320
+ onToggle,
321
+ isDark
322
+ } = param;
323
+ return /* @__PURE__ */_jsx("button", {
324
+ type: "button",
325
+ title: expanded ? "Collapse state overrides" : "Expand state overrides",
326
+ onClick: onToggle,
327
+ style: {
328
+ background: "none",
329
+ border: "none",
330
+ padding: 0,
331
+ cursor: "pointer",
332
+ display: "flex",
333
+ alignItems: "center",
334
+ color: isDark ? "#666" : "#aaa",
335
+ transition: "transform 0.15s, color 0.15s",
336
+ transform: expanded ? "rotate(90deg)" : "rotate(0deg)",
337
+ flexShrink: 0
338
+ },
339
+ children: /* @__PURE__ */_jsxs("svg", {
340
+ width: "10",
341
+ height: "10",
342
+ viewBox: "0 0 10 10",
343
+ fill: "none",
344
+ role: "img",
345
+ "aria-label": "Toggle",
346
+ children: [/* @__PURE__ */_jsx("title", {
347
+ children: "Toggle state overrides"
348
+ }), /* @__PURE__ */_jsx("path", {
349
+ d: "M3 1.5l4 3.5-4 3.5",
350
+ stroke: "currentColor",
351
+ strokeWidth: "1.5",
352
+ strokeLinecap: "round",
353
+ strokeLinejoin: "round"
354
+ })]
355
+ })
356
+ });
357
+ }
358
+ function IconGroup(param) {
359
+ var {
360
+ label,
361
+ options,
362
+ value,
363
+ onChange,
364
+ icon,
365
+ styles,
366
+ isDark,
367
+ pinned,
368
+ onTogglePin,
369
+ expanded,
370
+ onToggleExpand,
371
+ onUnset,
372
+ children
373
+ } = param;
374
+ return /* @__PURE__ */_jsxs("div", {
375
+ role: "group",
376
+ "aria-label": label,
377
+ style: {
378
+ ...styles.card,
379
+ position: "relative"
380
+ },
381
+ onMouseEnter: function onMouseEnter(e) {
382
+ var element = e.currentTarget.querySelector(".pin-checkbox");
383
+ if (element && !pinned) element.style.opacity = "0.5";
384
+ },
385
+ onMouseLeave: function onMouseLeave(e) {
386
+ var element = e.currentTarget.querySelector(".pin-checkbox");
387
+ if (element && !pinned) element.style.opacity = "0";
388
+ },
389
+ children: [onTogglePin && /* @__PURE__ */_jsx(PinCheckbox, {
390
+ pinned: !!pinned,
391
+ onToggle: onTogglePin,
392
+ isDark
393
+ }), /* @__PURE__ */_jsxs("div", {
394
+ style: {
395
+ display: "flex",
396
+ alignItems: "center",
397
+ gap: 4
398
+ },
399
+ children: [onToggleExpand && /* @__PURE__ */_jsx(CollapseButton, {
400
+ expanded: !!expanded,
401
+ onToggle: onToggleExpand,
402
+ isDark
403
+ }), /* @__PURE__ */_jsx("span", {
404
+ style: styles.label,
405
+ children: label
406
+ })]
407
+ }), /* @__PURE__ */_jsxs("div", {
408
+ style: styles.iconRow,
409
+ children: [onUnset && /* @__PURE__ */_jsx("button", {
410
+ type: "button",
411
+ style: {
412
+ ...styles.iconBtn(value === void 0),
413
+ padding: "1px 4px",
414
+ fontSize: 10,
415
+ minWidth: 0
416
+ },
417
+ onClick: onUnset,
418
+ title: "unset (inherit)",
419
+ "aria-pressed": value === void 0,
420
+ children: "\u21BA"
421
+ }), options.map(function (opt) {
422
+ var active = value !== void 0 && opt === value;
423
+ return /* @__PURE__ */_jsx("button", {
424
+ type: "button",
425
+ style: styles.iconBtn(active),
426
+ onClick: function onClick() {
427
+ return onChange(opt);
428
+ },
429
+ title: String(opt),
430
+ "aria-pressed": active,
431
+ children: icon(opt, active, isDark)
432
+ }, String(opt));
433
+ })]
434
+ }), expanded && children]
435
+ });
436
+ }
437
+ function StateSubRow(param) {
438
+ var {
439
+ stateName,
440
+ options,
441
+ value,
442
+ onChange,
443
+ icon,
444
+ styles,
445
+ isDark
446
+ } = param;
447
+ return /* @__PURE__ */_jsxs("div", {
448
+ style: {
449
+ display: "flex",
450
+ alignItems: "center",
451
+ gap: 4,
452
+ marginTop: 2
453
+ },
454
+ children: [/* @__PURE__ */_jsx("span", {
455
+ style: {
456
+ fontSize: 9,
457
+ fontWeight: 500,
458
+ color: isDark ? "#666" : "#aaa",
459
+ width: 46,
460
+ textAlign: "right",
461
+ flexShrink: 0
462
+ },
463
+ children: stateName
464
+ }), /* @__PURE__ */_jsxs("div", {
465
+ style: {
466
+ ...styles.iconRow,
467
+ gap: 2
468
+ },
469
+ children: [/* @__PURE__ */_jsx("button", {
470
+ type: "button",
471
+ style: {
472
+ ...styles.iconBtn(value === ""),
473
+ padding: "1px 4px",
474
+ fontSize: 9,
475
+ minWidth: 0
476
+ },
477
+ onClick: function onClick() {
478
+ return onChange("");
479
+ },
480
+ title: "inherit (no override)",
481
+ children: "\u2013"
482
+ }), options.map(function (opt) {
483
+ var active = opt === value;
484
+ return /* @__PURE__ */_jsx("button", {
485
+ type: "button",
486
+ style: {
487
+ ...styles.iconBtn(active),
488
+ transform: "scale(0.85)"
489
+ },
490
+ onClick: function onClick() {
491
+ return onChange(opt);
492
+ },
493
+ title: opt,
494
+ children: icon(opt, active, isDark)
495
+ }, opt);
496
+ })]
497
+ })]
498
+ });
499
+ }
500
+ function ic(active, dark) {
501
+ return active ? dark ? "#e8e8e8" : "#1a1a1a" : dark ? "#555" : "#bbb";
502
+ }
503
+ function modeIcon(v, active, dark) {
504
+ return _modeIcon(v, ic(active, dark));
505
+ }
506
+ function fillIcon(v, active, dark) {
507
+ return _fillIcon(v, ic(active, dark));
508
+ }
509
+ function borderRadiusIcon(v, active, dark) {
510
+ return _borderRadiusIcon(v, ic(active, dark));
511
+ }
512
+ function cornerSmoothingIcon(v, active, dark) {
513
+ return _cornerSmoothingIcon(v, ic(active, dark));
514
+ }
515
+ function borderWidthIcon(v, active, dark) {
516
+ return _borderWidthIcon(v, ic(active, dark));
517
+ }
518
+ function elevationIconWrap(v, active, dark) {
519
+ return _elevationIcon(v, ic(active, dark), dark);
520
+ }
521
+ function textAccentIcon(v, active, dark) {
522
+ return _textAccentIcon(v, ic(active, dark));
523
+ }
524
+ function headingFontIcon(v, active, dark) {
525
+ return _headingFontIcon(v, ic(active, dark));
526
+ }
527
+ function bodyFontIcon(v, active, dark) {
528
+ return _bodyFontIcon(v, ic(active, dark));
529
+ }
530
+ function fontWeightIcon(v, active, dark) {
531
+ return _fontWeightIcon(v, ic(active, dark));
532
+ }
533
+ function fieldLabelPlacementIcon(v, active, dark) {
534
+ return _fieldLabelPlacementIcon(v, ic(active, dark));
535
+ }
536
+ function requiredMarkingIcon(v, active, dark) {
537
+ return _requiredMarkingIcon(v, ic(active, dark));
538
+ }
539
+ function tableZebraIcon(v, active, dark) {
540
+ return _tableZebraIcon(v, ic(active, dark));
541
+ }
542
+ function bulkBarPlacementIcon(v, active, dark) {
543
+ return _bulkBarPlacementIcon(v, ic(active, dark));
544
+ }
545
+ function selectAllScopeIcon(v, active, dark) {
546
+ return _selectAllScopeIcon(v, ic(active, dark));
547
+ }
548
+ function timestampStyleIcon(v, active, dark) {
549
+ return _timestampStyleIcon(v, ic(active, dark));
550
+ }
551
+ function disabledStyleIcon(v, active, dark) {
552
+ return _disabledStyleIcon(v, ic(active, dark));
553
+ }
554
+ function formAutofocusIcon(v, active, dark) {
555
+ return _formAutofocusIcon(v, ic(active, dark));
556
+ }
557
+ function extractThemeTokenColors(tamaguiConfig, scheme, colorTheme) {
558
+ var prefix = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : "color";
559
+ var config = tamaguiConfig;
560
+ var themes = config === null || config === void 0 ? void 0 : config.themes;
561
+ if (!themes) return void 0;
562
+ var candidates = [];
563
+ if (colorTheme) candidates.push(`${scheme}_${colorTheme}`);
564
+ candidates.push(scheme);
565
+ var _iteratorNormalCompletion = true,
566
+ _didIteratorError = false,
567
+ _iteratorError = void 0;
568
+ try {
569
+ for (var _iterator = candidates[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
570
+ var name = _step.value;
571
+ var theme = themes[name];
572
+ if (!theme) continue;
573
+ var colors = [];
574
+ var found = false;
575
+ for (var i = 1; i <= 12; i++) {
576
+ var token = theme[`${prefix}${i}`];
577
+ var val = void 0;
578
+ if (typeof token === "string") {
579
+ val = token;
580
+ } else if (token && (typeof token === "undefined" ? "undefined" : _type_of(token)) === "object" && "val" in token) {
581
+ val = String(token.val);
582
+ }
583
+ if (val) {
584
+ colors.push(val);
585
+ found = true;
586
+ } else {
587
+ colors.push("");
588
+ }
589
+ }
590
+ if (found) return colors;
591
+ }
592
+ } catch (err) {
593
+ _didIteratorError = true;
594
+ _iteratorError = err;
595
+ } finally {
596
+ try {
597
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
598
+ _iterator.return();
599
+ }
600
+ } finally {
601
+ if (_didIteratorError) {
602
+ throw _iteratorError;
603
+ }
604
+ }
605
+ }
606
+ return void 0;
607
+ }
608
+ function ThemeDevtoolsPanel(param) {
609
+ var {
610
+ useUserScheme,
611
+ extraPresets,
612
+ devtoolsTheme,
613
+ themeColors,
614
+ currentThemeColor,
615
+ onThemeColorChange,
616
+ tamaguiConfig
617
+ } = param;
618
+ var _getOverride;
619
+ var [knobs, setKnobs,, setPreset, activePresetName] = useTheme();
620
+ var scheme = useUserScheme === null || useUserScheme === void 0 ? void 0 : useUserScheme();
621
+ var isDark = devtoolsTheme !== "light";
622
+ var styles = useMemo(function () {
623
+ return createStyles(isDark);
624
+ }, [isDark]);
625
+ var animationOptions = useMemo(function () {
626
+ return ["none", ...extractAnimationNames(tamaguiConfig)];
627
+ }, [tamaguiConfig]);
628
+ var [overrides, setOverrides] = useState(function () {
629
+ var _getPreset;
630
+ var presetKnobs = activePresetName ? (_getPreset = getPreset(activePresetName)) === null || _getPreset === void 0 ? void 0 : _getPreset.knobs : void 0;
631
+ return new Set(knobKeys.filter(function (key) {
632
+ var _ref;
633
+ return knobs[key] !== ((_ref = presetKnobs === null || presetKnobs === void 0 ? void 0 : presetKnobs[key]) !== null && _ref !== void 0 ? _ref : defaultKnobs[key]);
634
+ }));
635
+ });
636
+ var [pinnedKnobs, setPinnedKnobs] = useState(function () {
637
+ try {
638
+ var raw = storage.getItem(pinnedKnobsStorageKey);
639
+ var stored = typeof raw === "string" || raw === null ? raw : null;
640
+ if (stored) return new Set(JSON.parse(stored));
641
+ } catch (unused) {}
642
+ return /* @__PURE__ */new Set();
643
+ });
644
+ var [activeProfile, setActiveProfile] = useState("");
645
+ var [expandedKnobs, setExpandedKnobs] = useState(function () {
646
+ try {
647
+ var raw = storage.getItem(expandedKnobsStorageKey);
648
+ var stored = typeof raw === "string" || raw === null ? raw : null;
649
+ if (stored) {
650
+ var parsed = JSON.parse(stored);
651
+ return new Set(parsed.filter(function (k) {
652
+ return stateKnobKeys.includes(k);
653
+ }));
654
+ }
655
+ } catch (unused) {}
656
+ return /* @__PURE__ */new Set();
657
+ });
658
+ var knobsRef = useRef(knobs);
659
+ knobsRef.current = knobs;
660
+ useEffect(function () {
661
+ void Promise.resolve(storage.setItem(pinnedKnobsStorageKey, JSON.stringify([...pinnedKnobs]))).catch(function () {});
662
+ }, [pinnedKnobs]);
663
+ useEffect(function () {
664
+ void Promise.resolve(storage.setItem(expandedKnobsStorageKey, JSON.stringify([...expandedKnobs]))).catch(function () {});
665
+ }, [expandedKnobs]);
666
+ var clearStateOverridesForKeys = useCallback(function (keys) {
667
+ var current = knobsRef.current;
668
+ var partial = {};
669
+ var _iteratorNormalCompletion = true,
670
+ _didIteratorError = false,
671
+ _iteratorError = void 0;
672
+ try {
673
+ for (var _iterator = interactionStates[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
674
+ var state = _step.value;
675
+ var stateKnobs = {
676
+ ...current[state]
677
+ };
678
+ var mutated = false;
679
+ var _iteratorNormalCompletion1 = true,
680
+ _didIteratorError1 = false,
681
+ _iteratorError1 = void 0;
682
+ try {
683
+ for (var _iterator1 = keys[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
684
+ var key = _step1.value;
685
+ if (stateKnobs[key] !== void 0) {
686
+ stateKnobs[key] = void 0;
687
+ mutated = true;
688
+ }
689
+ }
690
+ } catch (err) {
691
+ _didIteratorError1 = true;
692
+ _iteratorError1 = err;
693
+ } finally {
694
+ try {
695
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
696
+ _iterator1.return();
697
+ }
698
+ } finally {
699
+ if (_didIteratorError1) {
700
+ throw _iteratorError1;
701
+ }
702
+ }
703
+ }
704
+ if (mutated) {
705
+ partial[state] = stateKnobs;
706
+ }
707
+ }
708
+ } catch (err) {
709
+ _didIteratorError = true;
710
+ _iteratorError = err;
711
+ } finally {
712
+ try {
713
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
714
+ _iterator.return();
715
+ }
716
+ } finally {
717
+ if (_didIteratorError) {
718
+ throw _iteratorError;
719
+ }
720
+ }
721
+ }
722
+ if (Object.keys(partial).length > 0) {
723
+ setKnobs(partial);
724
+ }
725
+ }, [setKnobs]);
726
+ var toggleExpand = useCallback(function (key) {
727
+ var collapsing = false;
728
+ setExpandedKnobs(function (prev) {
729
+ var next = new Set(prev);
730
+ if (next.has(key)) {
731
+ collapsing = true;
732
+ next.delete(key);
733
+ } else {
734
+ next.add(key);
735
+ }
736
+ return next;
737
+ });
738
+ if (collapsing) {
739
+ clearStateOverridesForKeys([key]);
740
+ }
741
+ }, [clearStateOverridesForKeys]);
742
+ var togglePin = useCallback(function (key) {
743
+ setPinnedKnobs(function (prev) {
744
+ var next = new Set(prev);
745
+ if (next.has(key)) {
746
+ next.delete(key);
747
+ var _iteratorNormalCompletion = true,
748
+ _didIteratorError = false,
749
+ _iteratorError = void 0;
750
+ try {
751
+ for (var _iterator = interactionStates[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
752
+ var state = _step.value;
753
+ next.delete(`${state}.${key}`);
754
+ }
755
+ } catch (err) {
756
+ _didIteratorError = true;
757
+ _iteratorError = err;
758
+ } finally {
759
+ try {
760
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
761
+ _iterator.return();
762
+ }
763
+ } finally {
764
+ if (_didIteratorError) {
765
+ throw _iteratorError;
766
+ }
767
+ }
768
+ }
769
+ } else {
770
+ next.add(key);
771
+ var _iteratorNormalCompletion1 = true,
772
+ _didIteratorError1 = false,
773
+ _iteratorError1 = void 0;
774
+ try {
775
+ for (var _iterator1 = interactionStates[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
776
+ var state1 = _step1.value;
777
+ next.add(`${state1}.${key}`);
778
+ }
779
+ } catch (err) {
780
+ _didIteratorError1 = true;
781
+ _iteratorError1 = err;
782
+ } finally {
783
+ try {
784
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
785
+ _iterator1.return();
786
+ }
787
+ } finally {
788
+ if (_didIteratorError1) {
789
+ throw _iteratorError1;
790
+ }
791
+ }
792
+ }
793
+ }
794
+ return next;
795
+ });
796
+ }, []);
797
+ var allStateKnobsExpanded = useMemo(function () {
798
+ return stateKnobKeys.every(function (key) {
799
+ return expandedKnobs.has(key);
800
+ });
801
+ }, [expandedKnobs]);
802
+ var handleToggleAllStates = useCallback(function () {
803
+ var collapsingAll = false;
804
+ setExpandedKnobs(function (prev) {
805
+ var allExpanded = stateKnobKeys.every(function (key) {
806
+ return prev.has(key);
807
+ });
808
+ if (allExpanded) {
809
+ collapsingAll = true;
810
+ return /* @__PURE__ */new Set();
811
+ }
812
+ return new Set(stateKnobKeys);
813
+ });
814
+ if (collapsingAll) {
815
+ clearStateOverridesForKeys(stateKnobKeys);
816
+ }
817
+ }, [clearStateOverridesForKeys]);
818
+ var set = useCallback(function (key, value) {
819
+ setOverrides(function (prev) {
820
+ return new Set(prev).add(key);
821
+ });
822
+ setKnobs({
823
+ [key]: value
824
+ });
825
+ if (activeProfile) setActiveProfile("");
826
+ }, [setKnobs, activeProfile]);
827
+ var handleProfileChange = useCallback(function (profileName) {
828
+ if (!profileName) {
829
+ setActiveProfile("");
830
+ return;
831
+ }
832
+ var profile = designProfiles[profileName];
833
+ if (!profile) return;
834
+ var partial = {};
835
+ var _iteratorNormalCompletion = true,
836
+ _didIteratorError = false,
837
+ _iteratorError = void 0;
838
+ try {
839
+ for (var _iterator = knobKeys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
840
+ var key = _step.value;
841
+ if (profile[key]) partial[key] = profile[key];
842
+ }
843
+ } catch (err) {
844
+ _didIteratorError = true;
845
+ _iteratorError = err;
846
+ } finally {
847
+ try {
848
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
849
+ _iterator.return();
850
+ }
851
+ } finally {
852
+ if (_didIteratorError) {
853
+ throw _iteratorError;
854
+ }
855
+ }
856
+ }
857
+ var hover = {};
858
+ var press = {};
859
+ var _iteratorNormalCompletion1 = true,
860
+ _didIteratorError1 = false,
861
+ _iteratorError1 = void 0;
862
+ try {
863
+ for (var _iterator1 = Object.entries(profile)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
864
+ var [k, v] = _step1.value;
865
+ if (!v) continue;
866
+ if (k.startsWith("hover.")) hover[k.slice(6)] = v;else if (k.startsWith("press.")) press[k.slice(6)] = v;
867
+ }
868
+ } catch (err) {
869
+ _didIteratorError1 = true;
870
+ _iteratorError1 = err;
871
+ } finally {
872
+ try {
873
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
874
+ _iterator1.return();
875
+ }
876
+ } finally {
877
+ if (_didIteratorError1) {
878
+ throw _iteratorError1;
879
+ }
880
+ }
881
+ }
882
+ if (Object.keys(hover).length) partial.hover = hover;
883
+ if (Object.keys(press).length) partial.press = press;
884
+ setKnobs(partial);
885
+ setOverrides(new Set(knobKeys));
886
+ setPinnedKnobs(/* @__PURE__ */new Set());
887
+ setActiveProfile(profileName);
888
+ if (profile.color && onThemeColorChange) {
889
+ onThemeColorChange(profile.color);
890
+ }
891
+ }, [setKnobs, onThemeColorChange]);
892
+ var handleClearKnobs = useCallback(function () {
893
+ if (activeProfile && designProfiles[activeProfile]) {
894
+ handleProfileChange(activeProfile);
895
+ setExpandedKnobs(/* @__PURE__ */new Set());
896
+ return;
897
+ }
898
+ setOverrides(/* @__PURE__ */new Set());
899
+ setPinnedKnobs(/* @__PURE__ */new Set());
900
+ setExpandedKnobs(/* @__PURE__ */new Set());
901
+ setActiveProfile("");
902
+ if (activePresetName) {
903
+ setPreset(activePresetName);
904
+ } else {
905
+ setKnobs({
906
+ ...defaultKnobs
907
+ });
908
+ }
909
+ }, [activeProfile, handleProfileChange, activePresetName, setPreset, setKnobs]);
910
+ var handleApplyDefaults = useCallback(function () {
911
+ setOverrides(new Set(knobKeys));
912
+ setPinnedKnobs(/* @__PURE__ */new Set());
913
+ setExpandedKnobs(/* @__PURE__ */new Set());
914
+ setActiveProfile("");
915
+ setPreset("");
916
+ setKnobs({
917
+ ...defaultKnobs
918
+ });
919
+ }, [setPreset, setKnobs]);
920
+ var [copyStatus, setCopyStatus] = useState("idle");
921
+ var handleCopySnapshot = useCallback(async function () {
922
+ var _extractThemeTokenColors, _extractThemeTokenColors1;
923
+ var knobValues = {};
924
+ var _iteratorNormalCompletion = true,
925
+ _didIteratorError = false,
926
+ _iteratorError = void 0;
927
+ try {
928
+ for (var _iterator = Object.entries(knobs)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
929
+ var [key, value] = _step.value;
930
+ if (value && (typeof value === "undefined" ? "undefined" : _type_of(value)) === "object") {
931
+ var _iteratorNormalCompletion1 = true,
932
+ _didIteratorError1 = false,
933
+ _iteratorError1 = void 0;
934
+ try {
935
+ for (var _iterator1 = Object.entries(value)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
936
+ var [sk, sv] = _step1.value;
937
+ if (sv) knobValues[`${key}.${sk}`] = sv;
938
+ }
939
+ } catch (err) {
940
+ _didIteratorError1 = true;
941
+ _iteratorError1 = err;
942
+ } finally {
943
+ try {
944
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
945
+ _iterator1.return();
946
+ }
947
+ } finally {
948
+ if (_didIteratorError1) {
949
+ throw _iteratorError1;
950
+ }
951
+ }
952
+ }
953
+ } else {
954
+ knobValues[key] = String(value);
955
+ }
956
+ }
957
+ } catch (err) {
958
+ _didIteratorError = true;
959
+ _iteratorError = err;
960
+ } finally {
961
+ try {
962
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
963
+ _iterator.return();
964
+ }
965
+ } finally {
966
+ if (_didIteratorError) {
967
+ throw _iteratorError;
968
+ }
969
+ }
970
+ }
971
+ var lightColors = (_extractThemeTokenColors = extractThemeTokenColors(tamaguiConfig, "light", currentThemeColor)) !== null && _extractThemeTokenColors !== void 0 ? _extractThemeTokenColors : [];
972
+ var darkColors = (_extractThemeTokenColors1 = extractThemeTokenColors(tamaguiConfig, "dark", currentThemeColor)) !== null && _extractThemeTokenColors1 !== void 0 ? _extractThemeTokenColors1 : [];
973
+ var snapshot = buildSnapshot({
974
+ knobValues,
975
+ activePreset: activePresetName !== null && activePresetName !== void 0 ? activePresetName : void 0,
976
+ schemeSetting: scheme === null || scheme === void 0 ? void 0 : scheme.setting,
977
+ schemeValue: scheme === null || scheme === void 0 ? void 0 : scheme.value,
978
+ currentColor: currentThemeColor,
979
+ lightColors,
980
+ darkColors
981
+ });
982
+ var success = await writeToClipboard(snapshot);
983
+ if (success) {
984
+ setCopyStatus("copied");
985
+ setTimeout(function () {
986
+ return setCopyStatus("idle");
987
+ }, 2e3);
988
+ } else {
989
+ setCopyStatus("error");
990
+ setTimeout(function () {
991
+ return setCopyStatus("idle");
992
+ }, 2e3);
993
+ }
994
+ }, [knobs, activePresetName, scheme, currentThemeColor, tamaguiConfig]);
995
+ var handleRandomize = useCallback(function () {
996
+ var pick = function pick2(arr) {
997
+ return arr[Math.floor(Math.random() * arr.length)];
998
+ };
999
+ var knobEnums = {
1000
+ fillStyle: Object.values(FillStyle),
1001
+ borderRadius: Object.values(BorderRadius),
1002
+ borderWidth: Object.values(BorderWidth),
1003
+ elevation: Object.values(Elevation),
1004
+ textAccent: Object.values(TextAccent),
1005
+ headingFont: Object.values(HeadingFont),
1006
+ bodyFont: Object.values(BodyFont),
1007
+ fontWeight: Object.values(FontWeight),
1008
+ animation: animationOptions
1009
+ };
1010
+ var partial = {};
1011
+ var newOverrides = new Set(knobKeys);
1012
+ var _iteratorNormalCompletion = true,
1013
+ _didIteratorError = false,
1014
+ _iteratorError = void 0;
1015
+ try {
1016
+ for (var _iterator = knobKeys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
1017
+ var key = _step.value;
1018
+ if (pinnedKnobs.has(key)) continue;
1019
+ var values = knobEnums[key];
1020
+ if (values) partial[key] = pick(values);
1021
+ }
1022
+ } catch (err) {
1023
+ _didIteratorError = true;
1024
+ _iteratorError = err;
1025
+ } finally {
1026
+ try {
1027
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
1028
+ _iterator.return();
1029
+ }
1030
+ } finally {
1031
+ if (_didIteratorError) {
1032
+ throw _iteratorError;
1033
+ }
1034
+ }
1035
+ }
1036
+ if (expandedKnobs.size > 0) {
1037
+ var knobEnumsForState = {
1038
+ fillStyle: Object.values(FillStyle),
1039
+ borderRadius: Object.values(BorderRadius),
1040
+ borderWidth: Object.values(BorderWidth),
1041
+ elevation: Object.values(Elevation),
1042
+ textAccent: Object.values(TextAccent),
1043
+ headingFont: Object.values(HeadingFont),
1044
+ bodyFont: Object.values(BodyFont),
1045
+ fontWeight: Object.values(FontWeight)
1046
+ };
1047
+ var _iteratorNormalCompletion1 = true,
1048
+ _didIteratorError1 = false,
1049
+ _iteratorError1 = void 0;
1050
+ try {
1051
+ for (var _iterator1 = interactionStates[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
1052
+ var state = _step1.value;
1053
+ var statePartial = {};
1054
+ var _iteratorNormalCompletion2 = true,
1055
+ _didIteratorError2 = false,
1056
+ _iteratorError2 = void 0;
1057
+ try {
1058
+ for (var _iterator2 = expandedKnobs[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
1059
+ var key1 = _step2.value;
1060
+ var values1 = knobEnumsForState[key1];
1061
+ if (values1) statePartial[key1] = pick(values1);
1062
+ }
1063
+ } catch (err) {
1064
+ _didIteratorError2 = true;
1065
+ _iteratorError2 = err;
1066
+ } finally {
1067
+ try {
1068
+ if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
1069
+ _iterator2.return();
1070
+ }
1071
+ } finally {
1072
+ if (_didIteratorError2) {
1073
+ throw _iteratorError2;
1074
+ }
1075
+ }
1076
+ }
1077
+ if (Object.keys(statePartial).length > 0) {
1078
+ partial[state] = statePartial;
1079
+ }
1080
+ }
1081
+ } catch (err) {
1082
+ _didIteratorError1 = true;
1083
+ _iteratorError1 = err;
1084
+ } finally {
1085
+ try {
1086
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
1087
+ _iterator1.return();
1088
+ }
1089
+ } finally {
1090
+ if (_didIteratorError1) {
1091
+ throw _iteratorError1;
1092
+ }
1093
+ }
1094
+ }
1095
+ }
1096
+ setOverrides(newOverrides);
1097
+ setKnobs(partial);
1098
+ if (!pinnedKnobs.has("color") && themeColors && onThemeColorChange) {
1099
+ var nonEmpty = themeColors.filter(function (c) {
1100
+ return c !== "";
1101
+ });
1102
+ if (nonEmpty.length > 0) {
1103
+ onThemeColorChange(pick(nonEmpty));
1104
+ }
1105
+ }
1106
+ if (!pinnedKnobs.has("scheme") && scheme) {
1107
+ scheme.set(pick(["light", "dark"]));
1108
+ }
1109
+ if (activeProfile) setActiveProfile("");
1110
+ }, [setKnobs, themeColors, onThemeColorChange, scheme, pinnedKnobs, expandedKnobs, activeProfile, animationOptions]);
1111
+ var presetOptions = useMemo(function () {
1112
+ var registered = getPresetNames();
1113
+ var names = new Set(registered);
1114
+ if (extraPresets) {
1115
+ var _iteratorNormalCompletion = true,
1116
+ _didIteratorError = false,
1117
+ _iteratorError = void 0;
1118
+ try {
1119
+ for (var _iterator = extraPresets[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
1120
+ var name = _step.value;
1121
+ names.add(name);
1122
+ }
1123
+ } catch (err) {
1124
+ _didIteratorError = true;
1125
+ _iteratorError = err;
1126
+ } finally {
1127
+ try {
1128
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
1129
+ _iterator.return();
1130
+ }
1131
+ } finally {
1132
+ if (_didIteratorError) {
1133
+ throw _iteratorError;
1134
+ }
1135
+ }
1136
+ }
1137
+ }
1138
+ return ["", ...Array.from(names).filter(Boolean).sort()];
1139
+ }, [extraPresets]);
1140
+ var handlePresetChange = useCallback(function (presetName) {
1141
+ if (!presetName) return;
1142
+ setPreset(presetName);
1143
+ setOverrides(/* @__PURE__ */new Set());
1144
+ }, [setPreset]);
1145
+ var handleResetToPreset = useCallback(function () {
1146
+ if (activePresetName) {
1147
+ setPreset(activePresetName);
1148
+ } else {
1149
+ setKnobs({
1150
+ ...defaultKnobs
1151
+ });
1152
+ }
1153
+ setOverrides(/* @__PURE__ */new Set());
1154
+ }, [activePresetName, setPreset, setKnobs]);
1155
+ var prevDevtoolsTheme = useRef(void 0);
1156
+ useEffect(function () {
1157
+ if (!devtoolsTheme || !scheme) {
1158
+ prevDevtoolsTheme.current = devtoolsTheme;
1159
+ return;
1160
+ }
1161
+ if (prevDevtoolsTheme.current === void 0) {
1162
+ prevDevtoolsTheme.current = devtoolsTheme;
1163
+ return;
1164
+ }
1165
+ if (prevDevtoolsTheme.current !== devtoolsTheme) {
1166
+ prevDevtoolsTheme.current = devtoolsTheme;
1167
+ if (scheme.value !== devtoolsTheme) {
1168
+ scheme.set(devtoolsTheme);
1169
+ }
1170
+ }
1171
+ }, [devtoolsTheme, scheme]);
1172
+ var schemeValue = scheme === null || scheme === void 0 ? void 0 : scheme.value;
1173
+ useEffect(function () {
1174
+ if (!schemeValue) return;
1175
+ void Promise.resolve(storage.getItem(tanstackDevtoolsSettings)).then(function (raw) {
1176
+ var settings = raw ? JSON.parse(raw) : {};
1177
+ if (settings.theme !== schemeValue) {
1178
+ settings.theme = schemeValue;
1179
+ return Promise.resolve(storage.setItem(tanstackDevtoolsSettings, JSON.stringify(settings)));
1180
+ }
1181
+ }).catch(function () {});
1182
+ },
1183
+ // storage may be unavailable (e.g. SSR, iframe sandbox)
1184
+ [schemeValue]);
1185
+ var getOverride = function getOverride2(key) {
1186
+ return overrides.has(key) ? knobs[key] : void 0;
1187
+ };
1188
+ var inheritedKnob = useCallback(function (key) {
1189
+ var activeProfileConfig = activeProfile ? designProfiles[activeProfile] : void 0;
1190
+ if (activeProfileConfig === null || activeProfileConfig === void 0 ? void 0 : activeProfileConfig[key]) {
1191
+ return activeProfileConfig[key];
1192
+ }
1193
+ if (activePresetName) {
1194
+ var _getPreset;
1195
+ var presetKnobs = (_getPreset = getPreset(activePresetName)) === null || _getPreset === void 0 ? void 0 : _getPreset.knobs;
1196
+ if ((presetKnobs === null || presetKnobs === void 0 ? void 0 : presetKnobs[key]) !== void 0) return presetKnobs[key];
1197
+ }
1198
+ return defaultKnobs[key];
1199
+ }, [activeProfile, activePresetName]);
1200
+ var unset = useCallback(function (key) {
1201
+ setOverrides(function (prev) {
1202
+ var next = new Set(prev);
1203
+ next.delete(key);
1204
+ return next;
1205
+ });
1206
+ setKnobs({
1207
+ [key]: inheritedKnob(key)
1208
+ });
1209
+ }, [setKnobs, inheritedKnob]);
1210
+ var setStateKnob = useCallback(function (state, key, value) {
1211
+ var current = knobsRef.current;
1212
+ setKnobs({
1213
+ [state]: {
1214
+ ...current[state],
1215
+ [key]: value === "" ? void 0 : value
1216
+ }
1217
+ });
1218
+ setOverrides(function (prev) {
1219
+ return new Set(prev).add(state);
1220
+ });
1221
+ if (activeProfile) setActiveProfile("");
1222
+ }, [setKnobs, activeProfile]);
1223
+ var getStateKnob = function getStateKnob2(state, key) {
1224
+ var _stateKnobs_key;
1225
+ var stateKnobs = knobs[state];
1226
+ return (_stateKnobs_key = stateKnobs[key]) !== null && _stateKnobs_key !== void 0 ? _stateKnobs_key : "";
1227
+ };
1228
+ var stateRows = function stateRows2(knobKey, options, icon) {
1229
+ return interactionStates.map(function (state) {
1230
+ return /* @__PURE__ */_jsx(StateSubRow, {
1231
+ stateName: stateDisplayLabels[state],
1232
+ options,
1233
+ value: getStateKnob(state, knobKey),
1234
+ onChange: function onChange(v) {
1235
+ return setStateKnob(state, knobKey, v);
1236
+ },
1237
+ icon,
1238
+ styles,
1239
+ isDark
1240
+ }, state);
1241
+ });
1242
+ };
1243
+ return /* @__PURE__ */_jsxs("div", {
1244
+ style: styles.panel,
1245
+ children: [/* ── Knobs ── */
1246
+ /* @__PURE__ */_jsxs("div", {
1247
+ style: styles.knobsRow,
1248
+ children: [presetOptions.length > 1 && /* @__PURE__ */_jsx(Dropdown, {
1249
+ label: "Preset",
1250
+ options: presetOptions,
1251
+ value: activePresetName !== null && activePresetName !== void 0 ? activePresetName : "",
1252
+ onChange: function onChange(v) {
1253
+ return handlePresetChange(v);
1254
+ },
1255
+ format: formatPresetOption,
1256
+ styles
1257
+ }), presetOptions.length > 1 && /* @__PURE__ */_jsx("div", {
1258
+ style: styles.card,
1259
+ children: /* @__PURE__ */_jsx("button", {
1260
+ type: "button",
1261
+ style: styles.resetBtn,
1262
+ onClick: handleResetToPreset,
1263
+ children: "Reset to Preset"
1264
+ })
1265
+ }), themeColors && themeColors.length > 1 && onThemeColorChange && /* @__PURE__ */_jsx(Dropdown, {
1266
+ label: "Theme",
1267
+ options: themeColors,
1268
+ value: currentThemeColor !== null && currentThemeColor !== void 0 ? currentThemeColor : "",
1269
+ onChange: function onChange(v) {
1270
+ return onThemeColorChange(v);
1271
+ },
1272
+ format: function format(v) {
1273
+ return v === "" ? "none" : String(v);
1274
+ },
1275
+ styles,
1276
+ pinned: pinnedKnobs.has("color"),
1277
+ onTogglePin: function onTogglePin() {
1278
+ return togglePin("color");
1279
+ },
1280
+ isDark
1281
+ }), scheme && /* @__PURE__ */_jsx(IconGroup, {
1282
+ label: "Scheme",
1283
+ options: ["system", "light", "dark"],
1284
+ value: scheme.setting,
1285
+ onChange: function onChange(v) {
1286
+ return scheme.set(v);
1287
+ },
1288
+ icon: modeIcon,
1289
+ styles,
1290
+ isDark,
1291
+ pinned: pinnedKnobs.has("scheme"),
1292
+ onTogglePin: function onTogglePin() {
1293
+ return togglePin("scheme");
1294
+ }
1295
+ }), /* @__PURE__ */_jsx(IconGroup, {
1296
+ label: "Fill",
1297
+ options: Object.values(FillStyle),
1298
+ value: getOverride("fillStyle"),
1299
+ onChange: function onChange(v) {
1300
+ return set("fillStyle", v);
1301
+ },
1302
+ icon: fillIcon,
1303
+ styles,
1304
+ isDark,
1305
+ pinned: pinnedKnobs.has("fillStyle"),
1306
+ onTogglePin: function onTogglePin() {
1307
+ return togglePin("fillStyle");
1308
+ },
1309
+ expanded: expandedKnobs.has("fillStyle"),
1310
+ onToggleExpand: function onToggleExpand() {
1311
+ return toggleExpand("fillStyle");
1312
+ },
1313
+ onUnset: function onUnset() {
1314
+ return unset("fillStyle");
1315
+ },
1316
+ children: stateRows("fillStyle", Object.values(FillStyle), fillIcon)
1317
+ }), /* @__PURE__ */_jsx(IconGroup, {
1318
+ label: "Radius",
1319
+ options: Object.values(BorderRadius),
1320
+ value: getOverride("borderRadius"),
1321
+ onChange: function onChange(v) {
1322
+ return set("borderRadius", v);
1323
+ },
1324
+ icon: borderRadiusIcon,
1325
+ styles,
1326
+ isDark,
1327
+ pinned: pinnedKnobs.has("borderRadius"),
1328
+ onTogglePin: function onTogglePin() {
1329
+ return togglePin("borderRadius");
1330
+ },
1331
+ expanded: expandedKnobs.has("borderRadius"),
1332
+ onToggleExpand: function onToggleExpand() {
1333
+ return toggleExpand("borderRadius");
1334
+ },
1335
+ onUnset: function onUnset() {
1336
+ return unset("borderRadius");
1337
+ },
1338
+ children: stateRows("borderRadius", Object.values(BorderRadius), borderRadiusIcon)
1339
+ }), /* @__PURE__ */_jsx(IconGroup, {
1340
+ label: "Smoothing",
1341
+ options: Object.values(CornerSmoothing),
1342
+ value: getOverride("cornerSmoothing"),
1343
+ onChange: function onChange(v) {
1344
+ return set("cornerSmoothing", v);
1345
+ },
1346
+ icon: cornerSmoothingIcon,
1347
+ styles,
1348
+ isDark,
1349
+ pinned: pinnedKnobs.has("cornerSmoothing"),
1350
+ onTogglePin: function onTogglePin() {
1351
+ return togglePin("cornerSmoothing");
1352
+ },
1353
+ onUnset: function onUnset() {
1354
+ return unset("cornerSmoothing");
1355
+ }
1356
+ }), /* @__PURE__ */_jsx(IconGroup, {
1357
+ label: "Border",
1358
+ options: Object.values(BorderWidth),
1359
+ value: getOverride("borderWidth"),
1360
+ onChange: function onChange(v) {
1361
+ return set("borderWidth", v);
1362
+ },
1363
+ icon: borderWidthIcon,
1364
+ styles,
1365
+ isDark,
1366
+ pinned: pinnedKnobs.has("borderWidth"),
1367
+ onTogglePin: function onTogglePin() {
1368
+ return togglePin("borderWidth");
1369
+ },
1370
+ expanded: expandedKnobs.has("borderWidth"),
1371
+ onToggleExpand: function onToggleExpand() {
1372
+ return toggleExpand("borderWidth");
1373
+ },
1374
+ onUnset: function onUnset() {
1375
+ return unset("borderWidth");
1376
+ },
1377
+ children: stateRows("borderWidth", Object.values(BorderWidth), borderWidthIcon)
1378
+ }), /* @__PURE__ */_jsx(IconGroup, {
1379
+ label: "Elevation",
1380
+ options: Object.values(Elevation),
1381
+ value: getOverride("elevation"),
1382
+ onChange: function onChange(v) {
1383
+ return set("elevation", v);
1384
+ },
1385
+ icon: elevationIconWrap,
1386
+ styles,
1387
+ isDark,
1388
+ pinned: pinnedKnobs.has("elevation"),
1389
+ onTogglePin: function onTogglePin() {
1390
+ return togglePin("elevation");
1391
+ },
1392
+ expanded: expandedKnobs.has("elevation"),
1393
+ onToggleExpand: function onToggleExpand() {
1394
+ return toggleExpand("elevation");
1395
+ },
1396
+ onUnset: function onUnset() {
1397
+ return unset("elevation");
1398
+ },
1399
+ children: stateRows("elevation", Object.values(Elevation), elevationIconWrap)
1400
+ }), /* @__PURE__ */_jsx(IconGroup, {
1401
+ label: "Text Accent",
1402
+ options: Object.values(TextAccent),
1403
+ value: getOverride("textAccent"),
1404
+ onChange: function onChange(v) {
1405
+ return set("textAccent", v);
1406
+ },
1407
+ icon: textAccentIcon,
1408
+ styles,
1409
+ isDark,
1410
+ pinned: pinnedKnobs.has("textAccent"),
1411
+ onTogglePin: function onTogglePin() {
1412
+ return togglePin("textAccent");
1413
+ },
1414
+ expanded: expandedKnobs.has("textAccent"),
1415
+ onToggleExpand: function onToggleExpand() {
1416
+ return toggleExpand("textAccent");
1417
+ },
1418
+ onUnset: function onUnset() {
1419
+ return unset("textAccent");
1420
+ },
1421
+ children: stateRows("textAccent", Object.values(TextAccent), textAccentIcon)
1422
+ }), /* @__PURE__ */_jsx(IconGroup, {
1423
+ label: "Heading",
1424
+ options: Object.values(HeadingFont),
1425
+ value: getOverride("headingFont"),
1426
+ onChange: function onChange(v) {
1427
+ return set("headingFont", v);
1428
+ },
1429
+ icon: headingFontIcon,
1430
+ styles,
1431
+ isDark,
1432
+ pinned: pinnedKnobs.has("headingFont"),
1433
+ onTogglePin: function onTogglePin() {
1434
+ return togglePin("headingFont");
1435
+ },
1436
+ expanded: expandedKnobs.has("headingFont"),
1437
+ onToggleExpand: function onToggleExpand() {
1438
+ return toggleExpand("headingFont");
1439
+ },
1440
+ onUnset: function onUnset() {
1441
+ return unset("headingFont");
1442
+ },
1443
+ children: stateRows("headingFont", Object.values(HeadingFont), headingFontIcon)
1444
+ }), /* @__PURE__ */_jsx(IconGroup, {
1445
+ label: "Body",
1446
+ options: Object.values(BodyFont),
1447
+ value: getOverride("bodyFont"),
1448
+ onChange: function onChange(v) {
1449
+ return set("bodyFont", v);
1450
+ },
1451
+ icon: bodyFontIcon,
1452
+ styles,
1453
+ isDark,
1454
+ pinned: pinnedKnobs.has("bodyFont"),
1455
+ onTogglePin: function onTogglePin() {
1456
+ return togglePin("bodyFont");
1457
+ },
1458
+ expanded: expandedKnobs.has("bodyFont"),
1459
+ onToggleExpand: function onToggleExpand() {
1460
+ return toggleExpand("bodyFont");
1461
+ },
1462
+ onUnset: function onUnset() {
1463
+ return unset("bodyFont");
1464
+ },
1465
+ children: stateRows("bodyFont", Object.values(BodyFont), bodyFontIcon)
1466
+ }), /* @__PURE__ */_jsx(IconGroup, {
1467
+ label: "Weight",
1468
+ options: Object.values(FontWeight),
1469
+ value: getOverride("fontWeight"),
1470
+ onChange: function onChange(v) {
1471
+ return set("fontWeight", v);
1472
+ },
1473
+ icon: fontWeightIcon,
1474
+ styles,
1475
+ isDark,
1476
+ pinned: pinnedKnobs.has("fontWeight"),
1477
+ onTogglePin: function onTogglePin() {
1478
+ return togglePin("fontWeight");
1479
+ },
1480
+ expanded: expandedKnobs.has("fontWeight"),
1481
+ onToggleExpand: function onToggleExpand() {
1482
+ return toggleExpand("fontWeight");
1483
+ },
1484
+ onUnset: function onUnset() {
1485
+ return unset("fontWeight");
1486
+ },
1487
+ children: stateRows("fontWeight", Object.values(FontWeight), fontWeightIcon)
1488
+ }), /* @__PURE__ */_jsx(Dropdown, {
1489
+ label: "Animation",
1490
+ options: animationOptions,
1491
+ value: (_getOverride = getOverride("animation")) !== null && _getOverride !== void 0 ? _getOverride : "",
1492
+ onChange: function onChange(v) {
1493
+ return set("animation", v);
1494
+ },
1495
+ onUnset: function onUnset() {
1496
+ return unset("animation");
1497
+ },
1498
+ styles,
1499
+ pinned: pinnedKnobs.has("animation"),
1500
+ onTogglePin: function onTogglePin() {
1501
+ return togglePin("animation");
1502
+ },
1503
+ isDark
1504
+ }), /* @__PURE__ */_jsx(IconGroup, {
1505
+ label: "Label place",
1506
+ options: Object.values(FieldLabelPlacement),
1507
+ value: getOverride("fieldLabelPlacement"),
1508
+ onChange: function onChange(v) {
1509
+ return set("fieldLabelPlacement", v);
1510
+ },
1511
+ icon: fieldLabelPlacementIcon,
1512
+ styles,
1513
+ isDark,
1514
+ pinned: pinnedKnobs.has("fieldLabelPlacement"),
1515
+ onTogglePin: function onTogglePin() {
1516
+ return togglePin("fieldLabelPlacement");
1517
+ },
1518
+ onUnset: function onUnset() {
1519
+ return unset("fieldLabelPlacement");
1520
+ }
1521
+ }), /* @__PURE__ */_jsx(IconGroup, {
1522
+ label: "Required mark",
1523
+ options: Object.values(RequiredMarking),
1524
+ value: getOverride("requiredMarking"),
1525
+ onChange: function onChange(v) {
1526
+ return set("requiredMarking", v);
1527
+ },
1528
+ icon: requiredMarkingIcon,
1529
+ styles,
1530
+ isDark,
1531
+ pinned: pinnedKnobs.has("requiredMarking"),
1532
+ onTogglePin: function onTogglePin() {
1533
+ return togglePin("requiredMarking");
1534
+ },
1535
+ onUnset: function onUnset() {
1536
+ return unset("requiredMarking");
1537
+ }
1538
+ }), /* @__PURE__ */_jsx(IconGroup, {
1539
+ label: "Zebra",
1540
+ options: Object.values(TableZebra),
1541
+ value: getOverride("tableZebra"),
1542
+ onChange: function onChange(v) {
1543
+ return set("tableZebra", v);
1544
+ },
1545
+ icon: tableZebraIcon,
1546
+ styles,
1547
+ isDark,
1548
+ pinned: pinnedKnobs.has("tableZebra"),
1549
+ onTogglePin: function onTogglePin() {
1550
+ return togglePin("tableZebra");
1551
+ },
1552
+ onUnset: function onUnset() {
1553
+ return unset("tableZebra");
1554
+ }
1555
+ }), /* @__PURE__ */_jsx(IconGroup, {
1556
+ label: "Bulk bar",
1557
+ options: Object.values(BulkBarPlacement),
1558
+ value: getOverride("bulkBarPlacement"),
1559
+ onChange: function onChange(v) {
1560
+ return set("bulkBarPlacement", v);
1561
+ },
1562
+ icon: bulkBarPlacementIcon,
1563
+ styles,
1564
+ isDark,
1565
+ pinned: pinnedKnobs.has("bulkBarPlacement"),
1566
+ onTogglePin: function onTogglePin() {
1567
+ return togglePin("bulkBarPlacement");
1568
+ },
1569
+ onUnset: function onUnset() {
1570
+ return unset("bulkBarPlacement");
1571
+ }
1572
+ }), /* @__PURE__ */_jsx(IconGroup, {
1573
+ label: "Select all",
1574
+ options: Object.values(SelectAllScope),
1575
+ value: getOverride("selectAllScope"),
1576
+ onChange: function onChange(v) {
1577
+ return set("selectAllScope", v);
1578
+ },
1579
+ icon: selectAllScopeIcon,
1580
+ styles,
1581
+ isDark,
1582
+ pinned: pinnedKnobs.has("selectAllScope"),
1583
+ onTogglePin: function onTogglePin() {
1584
+ return togglePin("selectAllScope");
1585
+ },
1586
+ onUnset: function onUnset() {
1587
+ return unset("selectAllScope");
1588
+ }
1589
+ }), /* @__PURE__ */_jsx(IconGroup, {
1590
+ label: "Timestamp",
1591
+ options: Object.values(TimestampStyle),
1592
+ value: getOverride("timestampStyle"),
1593
+ onChange: function onChange(v) {
1594
+ return set("timestampStyle", v);
1595
+ },
1596
+ icon: timestampStyleIcon,
1597
+ styles,
1598
+ isDark,
1599
+ pinned: pinnedKnobs.has("timestampStyle"),
1600
+ onTogglePin: function onTogglePin() {
1601
+ return togglePin("timestampStyle");
1602
+ },
1603
+ onUnset: function onUnset() {
1604
+ return unset("timestampStyle");
1605
+ }
1606
+ }), /* @__PURE__ */_jsx(IconGroup, {
1607
+ label: "Disabled",
1608
+ options: Object.values(DisabledStyle),
1609
+ value: getOverride("disabledStyle"),
1610
+ onChange: function onChange(v) {
1611
+ return set("disabledStyle", v);
1612
+ },
1613
+ icon: disabledStyleIcon,
1614
+ styles,
1615
+ isDark,
1616
+ pinned: pinnedKnobs.has("disabledStyle"),
1617
+ onTogglePin: function onTogglePin() {
1618
+ return togglePin("disabledStyle");
1619
+ },
1620
+ onUnset: function onUnset() {
1621
+ return unset("disabledStyle");
1622
+ }
1623
+ }), /* @__PURE__ */_jsx(IconGroup, {
1624
+ label: "Autofocus",
1625
+ options: Object.values(FormAutofocus),
1626
+ value: getOverride("formAutofocus"),
1627
+ onChange: function onChange(v) {
1628
+ return set("formAutofocus", v);
1629
+ },
1630
+ icon: formAutofocusIcon,
1631
+ styles,
1632
+ isDark,
1633
+ pinned: pinnedKnobs.has("formAutofocus"),
1634
+ onTogglePin: function onTogglePin() {
1635
+ return togglePin("formAutofocus");
1636
+ },
1637
+ onUnset: function onUnset() {
1638
+ return unset("formAutofocus");
1639
+ }
1640
+ }), /* @__PURE__ */_jsxs("div", {
1641
+ style: {
1642
+ ...styles.card,
1643
+ flexDirection: "row",
1644
+ gap: 6,
1645
+ flexWrap: "wrap"
1646
+ },
1647
+ children: [/* @__PURE__ */_jsx("select", {
1648
+ title: "Design system profile",
1649
+ value: activeProfile,
1650
+ onChange: function onChange(e) {
1651
+ return handleProfileChange(e.target.value);
1652
+ },
1653
+ style: {
1654
+ ...styles.select,
1655
+ width: "auto",
1656
+ fontSize: 11,
1657
+ opacity: activeProfile ? 1 : 0.6
1658
+ },
1659
+ children: profileNames.map(function (name) {
1660
+ return /* @__PURE__ */_jsx("option", {
1661
+ value: name,
1662
+ children: name || "profile"
1663
+ }, name);
1664
+ })
1665
+ }), /* @__PURE__ */_jsx("button", {
1666
+ type: "button",
1667
+ style: {
1668
+ ...styles.resetBtn,
1669
+ ...(copyStatus === "copied" ? {
1670
+ background: isDark ? "#1a3a1a" : "#d4edda",
1671
+ borderColor: isDark ? "#2d5a2d" : "#a3d9a5"
1672
+ } : copyStatus === "error" ? {
1673
+ background: isDark ? "#3a1a1a" : "#f8d7da",
1674
+ borderColor: isDark ? "#5a2d2d" : "#f5c6cb"
1675
+ } : {})
1676
+ },
1677
+ onClick: handleCopySnapshot,
1678
+ "aria-label": copyStatus === "copied" ? "Copied" : copyStatus === "error" ? "Copy failed" : "Copy snapshot",
1679
+ children: copyStatus === "copied" ? "\u2713" : copyStatus === "error" ? "!" : "\u29C9"
1680
+ }), /* @__PURE__ */_jsx("button", {
1681
+ type: "button",
1682
+ style: styles.resetBtn,
1683
+ onClick: handleRandomize,
1684
+ children: "Random"
1685
+ }), /* @__PURE__ */_jsx("button", {
1686
+ type: "button",
1687
+ style: styles.iconBtn(false),
1688
+ onClick: handleToggleAllStates,
1689
+ title: allStateKnobsExpanded ? "Collapse States" : "Expand States",
1690
+ "aria-label": allStateKnobsExpanded ? "Collapse States" : "Expand States",
1691
+ children: /* @__PURE__ */_jsxs("svg", {
1692
+ width: "14",
1693
+ height: "14",
1694
+ viewBox: "0 0 16 16",
1695
+ fill: "none",
1696
+ role: "img",
1697
+ "aria-label": "States",
1698
+ children: [/* @__PURE__ */_jsx("title", {
1699
+ children: allStateKnobsExpanded ? "Collapse States" : "Expand States"
1700
+ }), /* @__PURE__ */_jsx("path", {
1701
+ d: "M2.5 4.5h7M2.5 8h7M2.5 11.5h7",
1702
+ stroke: "currentColor",
1703
+ strokeWidth: "1.3",
1704
+ strokeLinecap: "round"
1705
+ }), /* @__PURE__ */_jsx("path", {
1706
+ d: allStateKnobsExpanded ? "M12 10.5l-2-2 2-2" : "M10 6.5l2 2-2 2",
1707
+ stroke: "currentColor",
1708
+ strokeWidth: "1.3",
1709
+ strokeLinecap: "round",
1710
+ strokeLinejoin: "round"
1711
+ })]
1712
+ })
1713
+ }), /* @__PURE__ */_jsx("button", {
1714
+ type: "button",
1715
+ style: styles.iconBtn(false),
1716
+ onClick: handleApplyDefaults,
1717
+ title: "Apply Defaults",
1718
+ "aria-label": "Apply Defaults",
1719
+ children: /* @__PURE__ */_jsxs("svg", {
1720
+ width: "14",
1721
+ height: "14",
1722
+ viewBox: "0 0 16 16",
1723
+ fill: "none",
1724
+ role: "img",
1725
+ "aria-label": "Defaults",
1726
+ children: [/* @__PURE__ */_jsx("title", {
1727
+ children: "Apply Defaults"
1728
+ }), /* @__PURE__ */_jsx("path", {
1729
+ d: "M2.5 4.5h11M2.5 8h11M2.5 11.5h11",
1730
+ stroke: "currentColor",
1731
+ strokeWidth: "1.3",
1732
+ strokeLinecap: "round"
1733
+ }), /* @__PURE__ */_jsx("circle", {
1734
+ cx: "5",
1735
+ cy: "4.5",
1736
+ r: "1.2",
1737
+ fill: "currentColor"
1738
+ }), /* @__PURE__ */_jsx("circle", {
1739
+ cx: "8",
1740
+ cy: "8",
1741
+ r: "1.2",
1742
+ fill: "currentColor"
1743
+ }), /* @__PURE__ */_jsx("circle", {
1744
+ cx: "11",
1745
+ cy: "11.5",
1746
+ r: "1.2",
1747
+ fill: "currentColor"
1748
+ })]
1749
+ })
1750
+ }), /* @__PURE__ */_jsx("button", {
1751
+ type: "button",
1752
+ style: styles.iconBtn(false),
1753
+ onClick: handleClearKnobs,
1754
+ title: "Clear",
1755
+ "aria-label": "Clear",
1756
+ children: /* @__PURE__ */_jsxs("svg", {
1757
+ width: "14",
1758
+ height: "14",
1759
+ viewBox: "0 0 16 16",
1760
+ fill: "none",
1761
+ role: "img",
1762
+ "aria-label": "Clear",
1763
+ children: [/* @__PURE__ */_jsx("title", {
1764
+ children: "Clear"
1765
+ }), /* @__PURE__ */_jsx("path", {
1766
+ d: "M3.5 3.5l9 9M12.5 3.5l-9 9",
1767
+ stroke: "currentColor",
1768
+ strokeWidth: "1.4",
1769
+ strokeLinecap: "round"
1770
+ })]
1771
+ })
1772
+ })]
1773
+ })]
1774
+ }), /* ── Color palette ── */
1775
+ /* @__PURE__ */_jsx(ColorLineVisualizer, {
1776
+ knobs,
1777
+ isDark,
1778
+ themeColors: extractThemeTokenColors(tamaguiConfig, isDark ? "dark" : "light", currentThemeColor || void 0),
1779
+ oppositeThemeColors: extractThemeTokenColors(tamaguiConfig, isDark ? "light" : "dark", currentThemeColor || void 0),
1780
+ accentColors: extractThemeTokenColors(tamaguiConfig, isDark ? "dark" : "light", currentThemeColor || void 0, "accent"),
1781
+ oppositeAccentColors: extractThemeTokenColors(tamaguiConfig, isDark ? "light" : "dark", currentThemeColor || void 0, "accent")
1782
+ })]
1783
+ });
1784
+ }
1785
+ export { ThemeDevtoolsPanel };
1786
+ //# sourceMappingURL=ThemeDevtoolsPanel.native.js.map