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