@tachui/core 0.7.0-alpha1

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 (1327) hide show
  1. package/LICENSE +363 -0
  2. package/dist/assets/Asset.cjs +2 -0
  3. package/dist/assets/Asset.cjs.map +1 -0
  4. package/dist/assets/Asset.d.ts +11 -0
  5. package/dist/assets/Asset.d.ts.map +1 -0
  6. package/dist/assets/Asset.js +9 -0
  7. package/dist/assets/Asset.js.map +1 -0
  8. package/dist/assets/AssetCollection.cjs +2 -0
  9. package/dist/assets/AssetCollection.cjs.map +1 -0
  10. package/dist/assets/AssetCollection.d.ts +14 -0
  11. package/dist/assets/AssetCollection.d.ts.map +1 -0
  12. package/dist/assets/AssetCollection.js +44 -0
  13. package/dist/assets/AssetCollection.js.map +1 -0
  14. package/dist/assets/ColorAsset.cjs +2 -0
  15. package/dist/assets/ColorAsset.cjs.map +1 -0
  16. package/dist/assets/ColorAsset.d.ts +31 -0
  17. package/dist/assets/ColorAsset.d.ts.map +1 -0
  18. package/dist/assets/ColorAsset.js +114 -0
  19. package/dist/assets/ColorAsset.js.map +1 -0
  20. package/dist/assets/FontAsset.cjs +9 -0
  21. package/dist/assets/FontAsset.cjs.map +1 -0
  22. package/dist/assets/FontAsset.d.ts +114 -0
  23. package/dist/assets/FontAsset.d.ts.map +1 -0
  24. package/dist/assets/FontAsset.js +173 -0
  25. package/dist/assets/FontAsset.js.map +1 -0
  26. package/dist/assets/ImageAsset.cjs +2 -0
  27. package/dist/assets/ImageAsset.cjs.map +1 -0
  28. package/dist/assets/ImageAsset.d.ts +35 -0
  29. package/dist/assets/ImageAsset.d.ts.map +1 -0
  30. package/dist/assets/ImageAsset.js +39 -0
  31. package/dist/assets/ImageAsset.js.map +1 -0
  32. package/dist/assets/index.cjs +2 -0
  33. package/dist/assets/index.cjs.map +1 -0
  34. package/dist/assets/index.d.ts +26 -0
  35. package/dist/assets/index.d.ts.map +1 -0
  36. package/dist/assets/index.js +119 -0
  37. package/dist/assets/index.js.map +1 -0
  38. package/dist/assets/types.d.ts +70 -0
  39. package/dist/assets/types.d.ts.map +1 -0
  40. package/dist/bundles/common.d.ts +24 -0
  41. package/dist/bundles/common.d.ts.map +1 -0
  42. package/dist/bundles/complete.d.ts +27 -0
  43. package/dist/bundles/complete.d.ts.map +1 -0
  44. package/dist/bundles/essential.d.ts +24 -0
  45. package/dist/bundles/essential.d.ts.map +1 -0
  46. package/dist/bundles/minimal.d.ts +24 -0
  47. package/dist/bundles/minimal.d.ts.map +1 -0
  48. package/dist/bundles/production-minimal.d.ts +35 -0
  49. package/dist/bundles/production-minimal.d.ts.map +1 -0
  50. package/dist/common.cjs +2 -0
  51. package/dist/common.cjs.map +1 -0
  52. package/dist/common.js +985 -0
  53. package/dist/common.js.map +1 -0
  54. package/dist/compiler/advanced-parser.cjs +5 -0
  55. package/dist/compiler/advanced-parser.cjs.map +1 -0
  56. package/dist/compiler/advanced-parser.d.ts +113 -0
  57. package/dist/compiler/advanced-parser.d.ts.map +1 -0
  58. package/dist/compiler/advanced-parser.js +440 -0
  59. package/dist/compiler/advanced-parser.js.map +1 -0
  60. package/dist/compiler/codegen.cjs +6 -0
  61. package/dist/compiler/codegen.cjs.map +1 -0
  62. package/dist/compiler/codegen.d.ts +20 -0
  63. package/dist/compiler/codegen.d.ts.map +1 -0
  64. package/dist/compiler/codegen.js +241 -0
  65. package/dist/compiler/codegen.js.map +1 -0
  66. package/dist/compiler/enhanced-codegen.cjs +6 -0
  67. package/dist/compiler/enhanced-codegen.cjs.map +1 -0
  68. package/dist/compiler/enhanced-codegen.d.ts +121 -0
  69. package/dist/compiler/enhanced-codegen.d.ts.map +1 -0
  70. package/dist/compiler/enhanced-codegen.js +347 -0
  71. package/dist/compiler/enhanced-codegen.js.map +1 -0
  72. package/dist/compiler/index.cjs +2 -0
  73. package/dist/compiler/index.cjs.map +1 -0
  74. package/dist/compiler/index.d.ts +14 -0
  75. package/dist/compiler/index.d.ts.map +1 -0
  76. package/dist/compiler/index.js +13 -0
  77. package/dist/compiler/index.js.map +1 -0
  78. package/dist/compiler/parser.cjs +5 -0
  79. package/dist/compiler/parser.cjs.map +1 -0
  80. package/dist/compiler/parser.d.ts +12 -0
  81. package/dist/compiler/parser.d.ts.map +1 -0
  82. package/dist/compiler/parser.js +275 -0
  83. package/dist/compiler/parser.js.map +1 -0
  84. package/dist/compiler/plugin.cjs +33 -0
  85. package/dist/compiler/plugin.cjs.map +1 -0
  86. package/dist/compiler/plugin.d.ts +13 -0
  87. package/dist/compiler/plugin.d.ts.map +1 -0
  88. package/dist/compiler/plugin.js +103 -0
  89. package/dist/compiler/plugin.js.map +1 -0
  90. package/dist/compiler/types.d.ts +149 -0
  91. package/dist/compiler/types.d.ts.map +1 -0
  92. package/dist/components/BasicInput.cjs +2 -0
  93. package/dist/components/BasicInput.cjs.map +1 -0
  94. package/dist/components/BasicInput.d.ts +116 -0
  95. package/dist/components/BasicInput.d.ts.map +1 -0
  96. package/dist/components/BasicInput.js +182 -0
  97. package/dist/components/BasicInput.js.map +1 -0
  98. package/dist/components/Button.cjs +7 -0
  99. package/dist/components/Button.cjs.map +1 -0
  100. package/dist/components/Button.d.ts +252 -0
  101. package/dist/components/Button.d.ts.map +1 -0
  102. package/dist/components/Button.js +408 -0
  103. package/dist/components/Button.js.map +1 -0
  104. package/dist/components/Divider.cjs +2 -0
  105. package/dist/components/Divider.cjs.map +1 -0
  106. package/dist/components/Divider.d.ts +141 -0
  107. package/dist/components/Divider.d.ts.map +1 -0
  108. package/dist/components/Divider.js +187 -0
  109. package/dist/components/Divider.js.map +1 -0
  110. package/dist/components/EnhancedLink.cjs +2 -0
  111. package/dist/components/EnhancedLink.cjs.map +1 -0
  112. package/dist/components/EnhancedLink.d.ts +365 -0
  113. package/dist/components/EnhancedLink.d.ts.map +1 -0
  114. package/dist/components/EnhancedLink.js +345 -0
  115. package/dist/components/EnhancedLink.js.map +1 -0
  116. package/dist/components/Form.cjs +2 -0
  117. package/dist/components/Form.cjs.map +1 -0
  118. package/dist/components/Form.d.ts +141 -0
  119. package/dist/components/Form.d.ts.map +1 -0
  120. package/dist/components/Form.js +244 -0
  121. package/dist/components/Form.js.map +1 -0
  122. package/dist/components/Grid.cjs +2 -0
  123. package/dist/components/Grid.cjs.map +1 -0
  124. package/dist/components/Grid.d.ts +698 -0
  125. package/dist/components/Grid.d.ts.map +1 -0
  126. package/dist/components/Grid.js +1045 -0
  127. package/dist/components/Grid.js.map +1 -0
  128. package/dist/components/GridResponsive.cjs +2 -0
  129. package/dist/components/GridResponsive.cjs.map +1 -0
  130. package/dist/components/GridResponsive.d.ts +214 -0
  131. package/dist/components/GridResponsive.d.ts.map +1 -0
  132. package/dist/components/GridResponsive.js +382 -0
  133. package/dist/components/GridResponsive.js.map +1 -0
  134. package/dist/components/Image.cjs +2 -0
  135. package/dist/components/Image.cjs.map +1 -0
  136. package/dist/components/Image.d.ts +162 -0
  137. package/dist/components/Image.d.ts.map +1 -0
  138. package/dist/components/Image.js +212 -0
  139. package/dist/components/Image.js.map +1 -0
  140. package/dist/components/List.cjs +2 -0
  141. package/dist/components/List.cjs.map +1 -0
  142. package/dist/components/List.d.ts +287 -0
  143. package/dist/components/List.d.ts.map +1 -0
  144. package/dist/components/List.js +561 -0
  145. package/dist/components/List.js.map +1 -0
  146. package/dist/components/Menu.cjs +2 -0
  147. package/dist/components/Menu.cjs.map +1 -0
  148. package/dist/components/Menu.d.ts +159 -0
  149. package/dist/components/Menu.d.ts.map +1 -0
  150. package/dist/components/Menu.js +443 -0
  151. package/dist/components/Menu.js.map +1 -0
  152. package/dist/components/Picker.cjs +2 -0
  153. package/dist/components/Picker.cjs.map +1 -0
  154. package/dist/components/Picker.d.ts +153 -0
  155. package/dist/components/Picker.d.ts.map +1 -0
  156. package/dist/components/Picker.js +478 -0
  157. package/dist/components/Picker.js.map +1 -0
  158. package/dist/components/ScrollView.cjs +6 -0
  159. package/dist/components/ScrollView.cjs.map +1 -0
  160. package/dist/components/ScrollView.d.ts +222 -0
  161. package/dist/components/ScrollView.d.ts.map +1 -0
  162. package/dist/components/ScrollView.js +363 -0
  163. package/dist/components/ScrollView.js.map +1 -0
  164. package/dist/components/Section.cjs +2 -0
  165. package/dist/components/Section.cjs.map +1 -0
  166. package/dist/components/Section.d.ts +153 -0
  167. package/dist/components/Section.d.ts.map +1 -0
  168. package/dist/components/Section.js +323 -0
  169. package/dist/components/Section.js.map +1 -0
  170. package/dist/components/Show.cjs +2 -0
  171. package/dist/components/Show.cjs.map +1 -0
  172. package/dist/components/Show.d.ts +64 -0
  173. package/dist/components/Show.d.ts.map +1 -0
  174. package/dist/components/Show.js +112 -0
  175. package/dist/components/Show.js.map +1 -0
  176. package/dist/components/Spacer.cjs +2 -0
  177. package/dist/components/Spacer.cjs.map +1 -0
  178. package/dist/components/Spacer.d.ts +35 -0
  179. package/dist/components/Spacer.d.ts.map +1 -0
  180. package/dist/components/Spacer.js +53 -0
  181. package/dist/components/Spacer.js.map +1 -0
  182. package/dist/components/Text.cjs +2 -0
  183. package/dist/components/Text.cjs.map +1 -0
  184. package/dist/components/Text.d.ts +242 -0
  185. package/dist/components/Text.d.ts.map +1 -0
  186. package/dist/components/Text.js +193 -0
  187. package/dist/components/Text.js.map +1 -0
  188. package/dist/components/Toggle.cjs +2 -0
  189. package/dist/components/Toggle.cjs.map +1 -0
  190. package/dist/components/Toggle.d.ts +207 -0
  191. package/dist/components/Toggle.d.ts.map +1 -0
  192. package/dist/components/Toggle.js +477 -0
  193. package/dist/components/Toggle.js.map +1 -0
  194. package/dist/components/index.cjs +2 -0
  195. package/dist/components/index.cjs.map +1 -0
  196. package/dist/components/index.d.ts +45 -0
  197. package/dist/components/index.d.ts.map +1 -0
  198. package/dist/components/index.js +104 -0
  199. package/dist/components/index.js.map +1 -0
  200. package/dist/components/wrapper.cjs +2 -0
  201. package/dist/components/wrapper.cjs.map +1 -0
  202. package/dist/components/wrapper.d.ts +249 -0
  203. package/dist/components/wrapper.d.ts.map +1 -0
  204. package/dist/components/wrapper.js +484 -0
  205. package/dist/components/wrapper.js.map +1 -0
  206. package/dist/concatenation/concatenatable.cjs +2 -0
  207. package/dist/concatenation/concatenatable.cjs.map +1 -0
  208. package/dist/concatenation/concatenatable.d.ts +63 -0
  209. package/dist/concatenation/concatenatable.d.ts.map +1 -0
  210. package/dist/concatenation/concatenatable.js +118 -0
  211. package/dist/concatenation/concatenatable.js.map +1 -0
  212. package/dist/concatenation/concatenated-component.cjs +2 -0
  213. package/dist/concatenation/concatenated-component.cjs.map +1 -0
  214. package/dist/concatenation/concatenated-component.d.ts +110 -0
  215. package/dist/concatenation/concatenated-component.d.ts.map +1 -0
  216. package/dist/concatenation/concatenated-component.js +276 -0
  217. package/dist/concatenation/concatenated-component.js.map +1 -0
  218. package/dist/concatenation/index.d.ts +13 -0
  219. package/dist/concatenation/index.d.ts.map +1 -0
  220. package/dist/concatenation/text-optimizer.cjs +2 -0
  221. package/dist/concatenation/text-optimizer.cjs.map +1 -0
  222. package/dist/concatenation/text-optimizer.d.ts +104 -0
  223. package/dist/concatenation/text-optimizer.d.ts.map +1 -0
  224. package/dist/concatenation/text-optimizer.js +236 -0
  225. package/dist/concatenation/text-optimizer.js.map +1 -0
  226. package/dist/concatenation/types.cjs +2 -0
  227. package/dist/concatenation/types.cjs.map +1 -0
  228. package/dist/concatenation/types.d.ts +88 -0
  229. package/dist/concatenation/types.d.ts.map +1 -0
  230. package/dist/concatenation/types.js +13 -0
  231. package/dist/concatenation/types.js.map +1 -0
  232. package/dist/constants/frame-utils.cjs +2 -0
  233. package/dist/constants/frame-utils.cjs.map +1 -0
  234. package/dist/constants/frame-utils.d.ts +68 -0
  235. package/dist/constants/frame-utils.d.ts.map +1 -0
  236. package/dist/constants/frame-utils.js +116 -0
  237. package/dist/constants/frame-utils.js.map +1 -0
  238. package/dist/constants/index.d.ts +8 -0
  239. package/dist/constants/index.d.ts.map +1 -0
  240. package/dist/constants/layout.cjs +2 -0
  241. package/dist/constants/layout.cjs.map +1 -0
  242. package/dist/constants/layout.d.ts +60 -0
  243. package/dist/constants/layout.d.ts.map +1 -0
  244. package/dist/constants/layout.js +46 -0
  245. package/dist/constants/layout.js.map +1 -0
  246. package/dist/css-classes/component-base.cjs +2 -0
  247. package/dist/css-classes/component-base.cjs.map +1 -0
  248. package/dist/css-classes/component-base.d.ts +40 -0
  249. package/dist/css-classes/component-base.d.ts.map +1 -0
  250. package/dist/css-classes/component-base.js +62 -0
  251. package/dist/css-classes/component-base.js.map +1 -0
  252. package/dist/css-classes/css-class-manager.cjs +2 -0
  253. package/dist/css-classes/css-class-manager.cjs.map +1 -0
  254. package/dist/css-classes/css-class-manager.d.ts +89 -0
  255. package/dist/css-classes/css-class-manager.d.ts.map +1 -0
  256. package/dist/css-classes/css-class-manager.js +209 -0
  257. package/dist/css-classes/css-class-manager.js.map +1 -0
  258. package/dist/css-classes/dom-integration.cjs +2 -0
  259. package/dist/css-classes/dom-integration.cjs.map +1 -0
  260. package/dist/css-classes/dom-integration.d.ts +76 -0
  261. package/dist/css-classes/dom-integration.d.ts.map +1 -0
  262. package/dist/css-classes/dom-integration.js +67 -0
  263. package/dist/css-classes/dom-integration.js.map +1 -0
  264. package/dist/css-classes/enhanced-renderer.cjs +2 -0
  265. package/dist/css-classes/enhanced-renderer.cjs.map +1 -0
  266. package/dist/css-classes/enhanced-renderer.d.ts +42 -0
  267. package/dist/css-classes/enhanced-renderer.d.ts.map +1 -0
  268. package/dist/css-classes/enhanced-renderer.js +73 -0
  269. package/dist/css-classes/enhanced-renderer.js.map +1 -0
  270. package/dist/css-classes/index.d.ts +14 -0
  271. package/dist/css-classes/index.d.ts.map +1 -0
  272. package/dist/css-classes/types.d.ts +59 -0
  273. package/dist/css-classes/types.d.ts.map +1 -0
  274. package/dist/css-classes/utilities.cjs +2 -0
  275. package/dist/css-classes/utilities.cjs.map +1 -0
  276. package/dist/css-classes/utilities.d.ts +104 -0
  277. package/dist/css-classes/utilities.d.ts.map +1 -0
  278. package/dist/css-classes/utilities.js +41 -0
  279. package/dist/css-classes/utilities.js.map +1 -0
  280. package/dist/debug/index.d.ts +61 -0
  281. package/dist/debug/index.d.ts.map +1 -0
  282. package/dist/debug.cjs +52 -0
  283. package/dist/debug.cjs.map +1 -0
  284. package/dist/debug.js +179 -0
  285. package/dist/debug.js.map +1 -0
  286. package/dist/developer-experience/enhanced-errors.d.ts +128 -0
  287. package/dist/developer-experience/enhanced-errors.d.ts.map +1 -0
  288. package/dist/developer-experience/enhanced-types.d.ts +281 -0
  289. package/dist/developer-experience/enhanced-types.d.ts.map +1 -0
  290. package/dist/developer-experience/index.d.ts +44 -0
  291. package/dist/developer-experience/index.d.ts.map +1 -0
  292. package/dist/essential.cjs +2 -0
  293. package/dist/essential.cjs.map +1 -0
  294. package/dist/essential.js +968 -0
  295. package/dist/essential.js.map +1 -0
  296. package/dist/gradients/css-generator.cjs +2 -0
  297. package/dist/gradients/css-generator.cjs.map +1 -0
  298. package/dist/gradients/css-generator.d.ts +10 -0
  299. package/dist/gradients/css-generator.d.ts.map +1 -0
  300. package/dist/gradients/css-generator.js +100 -0
  301. package/dist/gradients/css-generator.js.map +1 -0
  302. package/dist/gradients/examples.cjs +2 -0
  303. package/dist/gradients/examples.cjs.map +1 -0
  304. package/dist/gradients/examples.d.ts +432 -0
  305. package/dist/gradients/examples.d.ts.map +1 -0
  306. package/dist/gradients/examples.js +555 -0
  307. package/dist/gradients/examples.js.map +1 -0
  308. package/dist/gradients/gradient-asset.cjs +2 -0
  309. package/dist/gradients/gradient-asset.cjs.map +1 -0
  310. package/dist/gradients/gradient-asset.d.ts +10 -0
  311. package/dist/gradients/gradient-asset.d.ts.map +1 -0
  312. package/dist/gradients/gradient-asset.js +22 -0
  313. package/dist/gradients/gradient-asset.js.map +1 -0
  314. package/dist/gradients/index.cjs +2 -0
  315. package/dist/gradients/index.cjs.map +1 -0
  316. package/dist/gradients/index.d.ts +19 -0
  317. package/dist/gradients/index.d.ts.map +1 -0
  318. package/dist/gradients/index.js +78 -0
  319. package/dist/gradients/index.js.map +1 -0
  320. package/dist/gradients/performance.cjs +2 -0
  321. package/dist/gradients/performance.cjs.map +1 -0
  322. package/dist/gradients/performance.d.ts +146 -0
  323. package/dist/gradients/performance.d.ts.map +1 -0
  324. package/dist/gradients/performance.js +237 -0
  325. package/dist/gradients/performance.js.map +1 -0
  326. package/dist/gradients/presets.cjs +2 -0
  327. package/dist/gradients/presets.cjs.map +1 -0
  328. package/dist/gradients/presets.d.ts +165 -0
  329. package/dist/gradients/presets.d.ts.map +1 -0
  330. package/dist/gradients/presets.js +254 -0
  331. package/dist/gradients/presets.js.map +1 -0
  332. package/dist/gradients/reactive.cjs +2 -0
  333. package/dist/gradients/reactive.cjs.map +1 -0
  334. package/dist/gradients/reactive.d.ts +167 -0
  335. package/dist/gradients/reactive.d.ts.map +1 -0
  336. package/dist/gradients/reactive.js +239 -0
  337. package/dist/gradients/reactive.js.map +1 -0
  338. package/dist/gradients/state-gradient-asset.cjs +2 -0
  339. package/dist/gradients/state-gradient-asset.cjs.map +1 -0
  340. package/dist/gradients/state-gradient-asset.d.ts +67 -0
  341. package/dist/gradients/state-gradient-asset.d.ts.map +1 -0
  342. package/dist/gradients/state-gradient-asset.js +111 -0
  343. package/dist/gradients/state-gradient-asset.js.map +1 -0
  344. package/dist/gradients/types.d.ts +94 -0
  345. package/dist/gradients/types.d.ts.map +1 -0
  346. package/dist/gradients/utils.cjs +2 -0
  347. package/dist/gradients/utils.cjs.map +1 -0
  348. package/dist/gradients/utils.d.ts +313 -0
  349. package/dist/gradients/utils.d.ts.map +1 -0
  350. package/dist/gradients/utils.js +385 -0
  351. package/dist/gradients/utils.js.map +1 -0
  352. package/dist/gradients/validation.cjs +2 -0
  353. package/dist/gradients/validation.cjs.map +1 -0
  354. package/dist/gradients/validation.d.ts +156 -0
  355. package/dist/gradients/validation.d.ts.map +1 -0
  356. package/dist/gradients/validation.js +209 -0
  357. package/dist/gradients/validation.js.map +1 -0
  358. package/dist/index.cjs +2 -0
  359. package/dist/index.cjs.map +1 -0
  360. package/dist/index.d.ts +26 -0
  361. package/dist/index.d.ts.map +1 -0
  362. package/dist/index.js +965 -0
  363. package/dist/index.js.map +1 -0
  364. package/dist/index2.cjs +2 -0
  365. package/dist/index2.cjs.map +1 -0
  366. package/dist/index2.js +293 -0
  367. package/dist/index2.js.map +1 -0
  368. package/dist/lifecycle/hooks.cjs +2 -0
  369. package/dist/lifecycle/hooks.cjs.map +1 -0
  370. package/dist/lifecycle/hooks.d.ts +101 -0
  371. package/dist/lifecycle/hooks.d.ts.map +1 -0
  372. package/dist/lifecycle/hooks.js +159 -0
  373. package/dist/lifecycle/hooks.js.map +1 -0
  374. package/dist/minimal-prod.cjs +2 -0
  375. package/dist/minimal-prod.cjs.map +1 -0
  376. package/dist/minimal-prod.js +193 -0
  377. package/dist/minimal-prod.js.map +1 -0
  378. package/dist/minimal.cjs +2 -0
  379. package/dist/minimal.cjs.map +1 -0
  380. package/dist/minimal.js +968 -0
  381. package/dist/minimal.js.map +1 -0
  382. package/dist/modifiers/as-html-validator.cjs +2 -0
  383. package/dist/modifiers/as-html-validator.cjs.map +1 -0
  384. package/dist/modifiers/as-html-validator.d.ts +20 -0
  385. package/dist/modifiers/as-html-validator.d.ts.map +1 -0
  386. package/dist/modifiers/as-html-validator.js +47 -0
  387. package/dist/modifiers/as-html-validator.js.map +1 -0
  388. package/dist/modifiers/as-html.cjs +2 -0
  389. package/dist/modifiers/as-html.cjs.map +1 -0
  390. package/dist/modifiers/as-html.d.ts +65 -0
  391. package/dist/modifiers/as-html.d.ts.map +1 -0
  392. package/dist/modifiers/as-html.js +71 -0
  393. package/dist/modifiers/as-html.js.map +1 -0
  394. package/dist/modifiers/attributes.cjs +2 -0
  395. package/dist/modifiers/attributes.cjs.map +1 -0
  396. package/dist/modifiers/attributes.d.ts +203 -0
  397. package/dist/modifiers/attributes.d.ts.map +1 -0
  398. package/dist/modifiers/attributes.js +272 -0
  399. package/dist/modifiers/attributes.js.map +1 -0
  400. package/dist/modifiers/backdrop.cjs +2 -0
  401. package/dist/modifiers/backdrop.cjs.map +1 -0
  402. package/dist/modifiers/backdrop.d.ts +59 -0
  403. package/dist/modifiers/backdrop.d.ts.map +1 -0
  404. package/dist/modifiers/backdrop.js +109 -0
  405. package/dist/modifiers/backdrop.js.map +1 -0
  406. package/dist/modifiers/background.cjs +2 -0
  407. package/dist/modifiers/background.cjs.map +1 -0
  408. package/dist/modifiers/background.d.ts +21 -0
  409. package/dist/modifiers/background.d.ts.map +1 -0
  410. package/dist/modifiers/background.js +67 -0
  411. package/dist/modifiers/background.js.map +1 -0
  412. package/dist/modifiers/base.cjs +25 -0
  413. package/dist/modifiers/base.cjs.map +1 -0
  414. package/dist/modifiers/base.d.ts +156 -0
  415. package/dist/modifiers/base.d.ts.map +1 -0
  416. package/dist/modifiers/base.js +745 -0
  417. package/dist/modifiers/base.js.map +1 -0
  418. package/dist/modifiers/basic-sanitizer.cjs +2 -0
  419. package/dist/modifiers/basic-sanitizer.cjs.map +1 -0
  420. package/dist/modifiers/basic-sanitizer.d.ts +54 -0
  421. package/dist/modifiers/basic-sanitizer.d.ts.map +1 -0
  422. package/dist/modifiers/basic-sanitizer.js +162 -0
  423. package/dist/modifiers/basic-sanitizer.js.map +1 -0
  424. package/dist/modifiers/border.cjs +2 -0
  425. package/dist/modifiers/border.cjs.map +1 -0
  426. package/dist/modifiers/border.d.ts +217 -0
  427. package/dist/modifiers/border.d.ts.map +1 -0
  428. package/dist/modifiers/border.js +160 -0
  429. package/dist/modifiers/border.js.map +1 -0
  430. package/dist/modifiers/builder.cjs +2 -0
  431. package/dist/modifiers/builder.cjs.map +1 -0
  432. package/dist/modifiers/builder.d.ts +377 -0
  433. package/dist/modifiers/builder.d.ts.map +1 -0
  434. package/dist/modifiers/builder.js +930 -0
  435. package/dist/modifiers/builder.js.map +1 -0
  436. package/dist/modifiers/core.cjs +2 -0
  437. package/dist/modifiers/core.cjs.map +1 -0
  438. package/dist/modifiers/core.d.ts +407 -0
  439. package/dist/modifiers/core.d.ts.map +1 -0
  440. package/dist/modifiers/core.js +398 -0
  441. package/dist/modifiers/core.js.map +1 -0
  442. package/dist/modifiers/css.cjs +2 -0
  443. package/dist/modifiers/css.cjs.map +1 -0
  444. package/dist/modifiers/css.d.ts +86 -0
  445. package/dist/modifiers/css.d.ts.map +1 -0
  446. package/dist/modifiers/css.js +50 -0
  447. package/dist/modifiers/css.js.map +1 -0
  448. package/dist/modifiers/effects.cjs +2 -0
  449. package/dist/modifiers/effects.cjs.map +1 -0
  450. package/dist/modifiers/effects.d.ts +159 -0
  451. package/dist/modifiers/effects.d.ts.map +1 -0
  452. package/dist/modifiers/effects.js +178 -0
  453. package/dist/modifiers/effects.js.map +1 -0
  454. package/dist/modifiers/elements.cjs +2 -0
  455. package/dist/modifiers/elements.cjs.map +1 -0
  456. package/dist/modifiers/elements.d.ts +240 -0
  457. package/dist/modifiers/elements.d.ts.map +1 -0
  458. package/dist/modifiers/elements.js +216 -0
  459. package/dist/modifiers/elements.js.map +1 -0
  460. package/dist/modifiers/filters.cjs +2 -0
  461. package/dist/modifiers/filters.cjs.map +1 -0
  462. package/dist/modifiers/filters.d.ts +275 -0
  463. package/dist/modifiers/filters.d.ts.map +1 -0
  464. package/dist/modifiers/filters.js +223 -0
  465. package/dist/modifiers/filters.js.map +1 -0
  466. package/dist/modifiers/flexbox.cjs +2 -0
  467. package/dist/modifiers/flexbox.cjs.map +1 -0
  468. package/dist/modifiers/flexbox.d.ts +82 -0
  469. package/dist/modifiers/flexbox.d.ts.map +1 -0
  470. package/dist/modifiers/flexbox.js +56 -0
  471. package/dist/modifiers/flexbox.js.map +1 -0
  472. package/dist/modifiers/font.cjs +2 -0
  473. package/dist/modifiers/font.cjs.map +1 -0
  474. package/dist/modifiers/font.d.ts +71 -0
  475. package/dist/modifiers/font.d.ts.map +1 -0
  476. package/dist/modifiers/font.js +60 -0
  477. package/dist/modifiers/font.js.map +1 -0
  478. package/dist/modifiers/grid.cjs +2 -0
  479. package/dist/modifiers/grid.cjs.map +1 -0
  480. package/dist/modifiers/grid.d.ts +92 -0
  481. package/dist/modifiers/grid.d.ts.map +1 -0
  482. package/dist/modifiers/grid.js +92 -0
  483. package/dist/modifiers/grid.js.map +1 -0
  484. package/dist/modifiers/index.d.ts +58 -0
  485. package/dist/modifiers/index.d.ts.map +1 -0
  486. package/dist/modifiers/margin.cjs +2 -0
  487. package/dist/modifiers/margin.cjs.map +1 -0
  488. package/dist/modifiers/margin.d.ts +128 -0
  489. package/dist/modifiers/margin.d.ts.map +1 -0
  490. package/dist/modifiers/margin.js +65 -0
  491. package/dist/modifiers/margin.js.map +1 -0
  492. package/dist/modifiers/padding.cjs +2 -0
  493. package/dist/modifiers/padding.cjs.map +1 -0
  494. package/dist/modifiers/padding.d.ts +204 -0
  495. package/dist/modifiers/padding.d.ts.map +1 -0
  496. package/dist/modifiers/padding.js +109 -0
  497. package/dist/modifiers/padding.js.map +1 -0
  498. package/dist/modifiers/registry.cjs +2 -0
  499. package/dist/modifiers/registry.cjs.map +1 -0
  500. package/dist/modifiers/registry.d.ts +69 -0
  501. package/dist/modifiers/registry.d.ts.map +1 -0
  502. package/dist/modifiers/registry.js +163 -0
  503. package/dist/modifiers/registry.js.map +1 -0
  504. package/dist/modifiers/responsive/advanced-utilities.cjs +2 -0
  505. package/dist/modifiers/responsive/advanced-utilities.cjs.map +1 -0
  506. package/dist/modifiers/responsive/advanced-utilities.d.ts +118 -0
  507. package/dist/modifiers/responsive/advanced-utilities.d.ts.map +1 -0
  508. package/dist/modifiers/responsive/advanced-utilities.js +291 -0
  509. package/dist/modifiers/responsive/advanced-utilities.js.map +1 -0
  510. package/dist/modifiers/responsive/breakpoints.cjs +2 -0
  511. package/dist/modifiers/responsive/breakpoints.cjs.map +1 -0
  512. package/dist/modifiers/responsive/breakpoints.d.ts +81 -0
  513. package/dist/modifiers/responsive/breakpoints.d.ts.map +1 -0
  514. package/dist/modifiers/responsive/breakpoints.js +168 -0
  515. package/dist/modifiers/responsive/breakpoints.js.map +1 -0
  516. package/dist/modifiers/responsive/css-generator.cjs +5 -0
  517. package/dist/modifiers/responsive/css-generator.cjs.map +1 -0
  518. package/dist/modifiers/responsive/css-generator.d.ts +100 -0
  519. package/dist/modifiers/responsive/css-generator.d.ts.map +1 -0
  520. package/dist/modifiers/responsive/css-generator.js +261 -0
  521. package/dist/modifiers/responsive/css-generator.js.map +1 -0
  522. package/dist/modifiers/responsive/dev-tools.cjs +77 -0
  523. package/dist/modifiers/responsive/dev-tools.cjs.map +1 -0
  524. package/dist/modifiers/responsive/dev-tools.d.ts +107 -0
  525. package/dist/modifiers/responsive/dev-tools.d.ts.map +1 -0
  526. package/dist/modifiers/responsive/dev-tools.js +380 -0
  527. package/dist/modifiers/responsive/dev-tools.js.map +1 -0
  528. package/dist/modifiers/responsive/index.d.ts +28 -0
  529. package/dist/modifiers/responsive/index.d.ts.map +1 -0
  530. package/dist/modifiers/responsive/layout-patterns.cjs +2 -0
  531. package/dist/modifiers/responsive/layout-patterns.cjs.map +1 -0
  532. package/dist/modifiers/responsive/layout-patterns.d.ts +230 -0
  533. package/dist/modifiers/responsive/layout-patterns.d.ts.map +1 -0
  534. package/dist/modifiers/responsive/layout-patterns.js +254 -0
  535. package/dist/modifiers/responsive/layout-patterns.js.map +1 -0
  536. package/dist/modifiers/responsive/performance.cjs +3 -0
  537. package/dist/modifiers/responsive/performance.cjs.map +1 -0
  538. package/dist/modifiers/responsive/performance.d.ts +130 -0
  539. package/dist/modifiers/responsive/performance.d.ts.map +1 -0
  540. package/dist/modifiers/responsive/performance.js +212 -0
  541. package/dist/modifiers/responsive/performance.js.map +1 -0
  542. package/dist/modifiers/responsive/responsive-builder.cjs +2 -0
  543. package/dist/modifiers/responsive/responsive-builder.cjs.map +1 -0
  544. package/dist/modifiers/responsive/responsive-builder.d.ts +133 -0
  545. package/dist/modifiers/responsive/responsive-builder.d.ts.map +1 -0
  546. package/dist/modifiers/responsive/responsive-builder.js +272 -0
  547. package/dist/modifiers/responsive/responsive-builder.js.map +1 -0
  548. package/dist/modifiers/responsive/responsive-modifier.cjs +3 -0
  549. package/dist/modifiers/responsive/responsive-modifier.cjs.map +1 -0
  550. package/dist/modifiers/responsive/responsive-modifier.d.ts +123 -0
  551. package/dist/modifiers/responsive/responsive-modifier.d.ts.map +1 -0
  552. package/dist/modifiers/responsive/responsive-modifier.js +204 -0
  553. package/dist/modifiers/responsive/responsive-modifier.js.map +1 -0
  554. package/dist/modifiers/responsive/types.cjs +2 -0
  555. package/dist/modifiers/responsive/types.cjs.map +1 -0
  556. package/dist/modifiers/responsive/types.d.ts +183 -0
  557. package/dist/modifiers/responsive/types.d.ts.map +1 -0
  558. package/dist/modifiers/responsive/types.js +26 -0
  559. package/dist/modifiers/responsive/types.js.map +1 -0
  560. package/dist/modifiers/responsive/utilities.cjs +16 -0
  561. package/dist/modifiers/responsive/utilities.cjs.map +1 -0
  562. package/dist/modifiers/responsive/utilities.d.ts +149 -0
  563. package/dist/modifiers/responsive/utilities.d.ts.map +1 -0
  564. package/dist/modifiers/responsive/utilities.js +273 -0
  565. package/dist/modifiers/responsive/utilities.js.map +1 -0
  566. package/dist/modifiers/scroll.cjs +2 -0
  567. package/dist/modifiers/scroll.cjs.map +1 -0
  568. package/dist/modifiers/scroll.d.ts +143 -0
  569. package/dist/modifiers/scroll.d.ts.map +1 -0
  570. package/dist/modifiers/scroll.js +82 -0
  571. package/dist/modifiers/scroll.js.map +1 -0
  572. package/dist/modifiers/shadows.cjs +2 -0
  573. package/dist/modifiers/shadows.cjs.map +1 -0
  574. package/dist/modifiers/shadows.d.ts +114 -0
  575. package/dist/modifiers/shadows.d.ts.map +1 -0
  576. package/dist/modifiers/shadows.js +147 -0
  577. package/dist/modifiers/shadows.js.map +1 -0
  578. package/dist/modifiers/size.cjs +2 -0
  579. package/dist/modifiers/size.cjs.map +1 -0
  580. package/dist/modifiers/size.d.ts +113 -0
  581. package/dist/modifiers/size.d.ts.map +1 -0
  582. package/dist/modifiers/size.js +74 -0
  583. package/dist/modifiers/size.js.map +1 -0
  584. package/dist/modifiers/text.cjs +2 -0
  585. package/dist/modifiers/text.cjs.map +1 -0
  586. package/dist/modifiers/text.d.ts +147 -0
  587. package/dist/modifiers/text.d.ts.map +1 -0
  588. package/dist/modifiers/text.js +166 -0
  589. package/dist/modifiers/text.js.map +1 -0
  590. package/dist/modifiers/transformations.cjs +2 -0
  591. package/dist/modifiers/transformations.cjs.map +1 -0
  592. package/dist/modifiers/transformations.d.ts +329 -0
  593. package/dist/modifiers/transformations.d.ts.map +1 -0
  594. package/dist/modifiers/transformations.js +216 -0
  595. package/dist/modifiers/transformations.js.map +1 -0
  596. package/dist/modifiers/transitions.cjs +2 -0
  597. package/dist/modifiers/transitions.cjs.map +1 -0
  598. package/dist/modifiers/transitions.d.ts +98 -0
  599. package/dist/modifiers/transitions.d.ts.map +1 -0
  600. package/dist/modifiers/transitions.js +102 -0
  601. package/dist/modifiers/transitions.js.map +1 -0
  602. package/dist/modifiers/types.cjs +2 -0
  603. package/dist/modifiers/types.cjs.map +1 -0
  604. package/dist/modifiers/types.d.ts +655 -0
  605. package/dist/modifiers/types.d.ts.map +1 -0
  606. package/dist/modifiers/types.js +5 -0
  607. package/dist/modifiers/types.js.map +1 -0
  608. package/dist/modifiers/typography.cjs +2 -0
  609. package/dist/modifiers/typography.cjs.map +1 -0
  610. package/dist/modifiers/typography.d.ts +192 -0
  611. package/dist/modifiers/typography.d.ts.map +1 -0
  612. package/dist/modifiers/typography.js +76 -0
  613. package/dist/modifiers/typography.js.map +1 -0
  614. package/dist/modifiers/utility.cjs +2 -0
  615. package/dist/modifiers/utility.cjs.map +1 -0
  616. package/dist/modifiers/utility.d.ts +69 -0
  617. package/dist/modifiers/utility.d.ts.map +1 -0
  618. package/dist/modifiers/utility.js +71 -0
  619. package/dist/modifiers/utility.js.map +1 -0
  620. package/dist/modifiers/utils.cjs +2 -0
  621. package/dist/modifiers/utils.cjs.map +1 -0
  622. package/dist/modifiers/utils.d.ts +75 -0
  623. package/dist/modifiers/utils.d.ts.map +1 -0
  624. package/dist/modifiers/utils.js +250 -0
  625. package/dist/modifiers/utils.js.map +1 -0
  626. package/dist/plugins/component-loader-registry.d.ts +143 -0
  627. package/dist/plugins/component-loader-registry.d.ts.map +1 -0
  628. package/dist/plugins/index.cjs +2 -0
  629. package/dist/plugins/index.cjs.map +1 -0
  630. package/dist/plugins/index.d.ts +17 -0
  631. package/dist/plugins/index.d.ts.map +1 -0
  632. package/dist/plugins/index.js +34 -0
  633. package/dist/plugins/index.js.map +1 -0
  634. package/dist/plugins/legacy-adapter.cjs +2 -0
  635. package/dist/plugins/legacy-adapter.cjs.map +1 -0
  636. package/dist/plugins/legacy-adapter.d.ts +35 -0
  637. package/dist/plugins/legacy-adapter.d.ts.map +1 -0
  638. package/dist/plugins/legacy-adapter.js +30 -0
  639. package/dist/plugins/legacy-adapter.js.map +1 -0
  640. package/dist/plugins/simplified-component-registry.cjs +2 -0
  641. package/dist/plugins/simplified-component-registry.cjs.map +1 -0
  642. package/dist/plugins/simplified-component-registry.d.ts +40 -0
  643. package/dist/plugins/simplified-component-registry.d.ts.map +1 -0
  644. package/dist/plugins/simplified-component-registry.js +71 -0
  645. package/dist/plugins/simplified-component-registry.js.map +1 -0
  646. package/dist/plugins/simplified-error-handler.cjs +2 -0
  647. package/dist/plugins/simplified-error-handler.cjs.map +1 -0
  648. package/dist/plugins/simplified-error-handler.d.ts +83 -0
  649. package/dist/plugins/simplified-error-handler.d.ts.map +1 -0
  650. package/dist/plugins/simplified-error-handler.js +154 -0
  651. package/dist/plugins/simplified-error-handler.js.map +1 -0
  652. package/dist/plugins/simplified-index.d.ts +17 -0
  653. package/dist/plugins/simplified-index.d.ts.map +1 -0
  654. package/dist/plugins/simplified-lazy-loader.cjs +2 -0
  655. package/dist/plugins/simplified-lazy-loader.cjs.map +1 -0
  656. package/dist/plugins/simplified-lazy-loader.d.ts +65 -0
  657. package/dist/plugins/simplified-lazy-loader.d.ts.map +1 -0
  658. package/dist/plugins/simplified-lazy-loader.js +129 -0
  659. package/dist/plugins/simplified-lazy-loader.js.map +1 -0
  660. package/dist/plugins/simplified-plugin-manager.cjs +2 -0
  661. package/dist/plugins/simplified-plugin-manager.cjs.map +1 -0
  662. package/dist/plugins/simplified-plugin-manager.d.ts +24 -0
  663. package/dist/plugins/simplified-plugin-manager.d.ts.map +1 -0
  664. package/dist/plugins/simplified-plugin-manager.js +51 -0
  665. package/dist/plugins/simplified-plugin-manager.js.map +1 -0
  666. package/dist/plugins/simplified-tachui-instance.cjs +2 -0
  667. package/dist/plugins/simplified-tachui-instance.cjs.map +1 -0
  668. package/dist/plugins/simplified-tachui-instance.d.ts +54 -0
  669. package/dist/plugins/simplified-tachui-instance.d.ts.map +1 -0
  670. package/dist/plugins/simplified-tachui-instance.js +88 -0
  671. package/dist/plugins/simplified-tachui-instance.js.map +1 -0
  672. package/dist/plugins/simplified-types.cjs +2 -0
  673. package/dist/plugins/simplified-types.cjs.map +1 -0
  674. package/dist/plugins/simplified-types.d.ts +63 -0
  675. package/dist/plugins/simplified-types.d.ts.map +1 -0
  676. package/dist/plugins/simplified-types.js +9 -0
  677. package/dist/plugins/simplified-types.js.map +1 -0
  678. package/dist/plugins/simplified-utils.cjs +2 -0
  679. package/dist/plugins/simplified-utils.cjs.map +1 -0
  680. package/dist/plugins/simplified-utils.d.ts +39 -0
  681. package/dist/plugins/simplified-utils.d.ts.map +1 -0
  682. package/dist/plugins/simplified-utils.js +40 -0
  683. package/dist/plugins/simplified-utils.js.map +1 -0
  684. package/dist/reactive/cleanup.cjs +2 -0
  685. package/dist/reactive/cleanup.cjs.map +1 -0
  686. package/dist/reactive/cleanup.d.ts +115 -0
  687. package/dist/reactive/cleanup.d.ts.map +1 -0
  688. package/dist/reactive/cleanup.js +62 -0
  689. package/dist/reactive/cleanup.js.map +1 -0
  690. package/dist/reactive/computed.cjs +2 -0
  691. package/dist/reactive/computed.cjs.map +1 -0
  692. package/dist/reactive/computed.d.ts +115 -0
  693. package/dist/reactive/computed.d.ts.map +1 -0
  694. package/dist/reactive/computed.js +121 -0
  695. package/dist/reactive/computed.js.map +1 -0
  696. package/dist/reactive/context.cjs +2 -0
  697. package/dist/reactive/context.cjs.map +1 -0
  698. package/dist/reactive/context.d.ts +82 -0
  699. package/dist/reactive/context.d.ts.map +1 -0
  700. package/dist/reactive/context.js +143 -0
  701. package/dist/reactive/context.js.map +1 -0
  702. package/dist/reactive/effect.cjs +2 -0
  703. package/dist/reactive/effect.cjs.map +1 -0
  704. package/dist/reactive/effect.d.ts +79 -0
  705. package/dist/reactive/effect.d.ts.map +1 -0
  706. package/dist/reactive/effect.js +67 -0
  707. package/dist/reactive/effect.js.map +1 -0
  708. package/dist/reactive/enhanced-effect.cjs +2 -0
  709. package/dist/reactive/enhanced-effect.cjs.map +1 -0
  710. package/dist/reactive/enhanced-effect.d.ts +108 -0
  711. package/dist/reactive/enhanced-effect.d.ts.map +1 -0
  712. package/dist/reactive/enhanced-effect.js +153 -0
  713. package/dist/reactive/enhanced-effect.js.map +1 -0
  714. package/dist/reactive/enhanced-signal.cjs +2 -0
  715. package/dist/reactive/enhanced-signal.cjs.map +1 -0
  716. package/dist/reactive/enhanced-signal.d.ts +91 -0
  717. package/dist/reactive/enhanced-signal.d.ts.map +1 -0
  718. package/dist/reactive/enhanced-signal.js +117 -0
  719. package/dist/reactive/enhanced-signal.js.map +1 -0
  720. package/dist/reactive/equality.cjs +2 -0
  721. package/dist/reactive/equality.cjs.map +1 -0
  722. package/dist/reactive/equality.d.ts +51 -0
  723. package/dist/reactive/equality.d.ts.map +1 -0
  724. package/dist/reactive/equality.js +66 -0
  725. package/dist/reactive/equality.js.map +1 -0
  726. package/dist/reactive/index.cjs +2 -0
  727. package/dist/reactive/index.cjs.map +1 -0
  728. package/dist/reactive/index.d.ts +21 -0
  729. package/dist/reactive/index.d.ts.map +1 -0
  730. package/dist/reactive/index.js +95 -0
  731. package/dist/reactive/index.js.map +1 -0
  732. package/dist/reactive/migration.cjs +18 -0
  733. package/dist/reactive/migration.cjs.map +1 -0
  734. package/dist/reactive/migration.d.ts +104 -0
  735. package/dist/reactive/migration.d.ts.map +1 -0
  736. package/dist/reactive/migration.js +164 -0
  737. package/dist/reactive/migration.js.map +1 -0
  738. package/dist/reactive/ownership.cjs +2 -0
  739. package/dist/reactive/ownership.cjs.map +1 -0
  740. package/dist/reactive/ownership.d.ts +75 -0
  741. package/dist/reactive/ownership.d.ts.map +1 -0
  742. package/dist/reactive/ownership.js +34 -0
  743. package/dist/reactive/ownership.js.map +1 -0
  744. package/dist/reactive/scheduler.cjs +2 -0
  745. package/dist/reactive/scheduler.cjs.map +1 -0
  746. package/dist/reactive/scheduler.d.ts +56 -0
  747. package/dist/reactive/scheduler.d.ts.map +1 -0
  748. package/dist/reactive/scheduler.js +111 -0
  749. package/dist/reactive/scheduler.js.map +1 -0
  750. package/dist/reactive/signal.cjs +2 -0
  751. package/dist/reactive/signal.cjs.map +1 -0
  752. package/dist/reactive/signal.d.ts +82 -0
  753. package/dist/reactive/signal.d.ts.map +1 -0
  754. package/dist/reactive/signal.js +96 -0
  755. package/dist/reactive/signal.js.map +1 -0
  756. package/dist/reactive/theme.cjs +2 -0
  757. package/dist/reactive/theme.cjs.map +1 -0
  758. package/dist/reactive/theme.d.ts +12 -0
  759. package/dist/reactive/theme.d.ts.map +1 -0
  760. package/dist/reactive/theme.js +27 -0
  761. package/dist/reactive/theme.js.map +1 -0
  762. package/dist/reactive/types.cjs +2 -0
  763. package/dist/reactive/types.cjs.map +1 -0
  764. package/dist/reactive/types.d.ts +93 -0
  765. package/dist/reactive/types.d.ts.map +1 -0
  766. package/dist/reactive/types.js +5 -0
  767. package/dist/reactive/types.js.map +1 -0
  768. package/dist/reactive/unified-scheduler.cjs +2 -0
  769. package/dist/reactive/unified-scheduler.cjs.map +1 -0
  770. package/dist/reactive/unified-scheduler.d.ts +112 -0
  771. package/dist/reactive/unified-scheduler.d.ts.map +1 -0
  772. package/dist/reactive/unified-scheduler.js +219 -0
  773. package/dist/reactive/unified-scheduler.js.map +1 -0
  774. package/dist/runtime/component-context.cjs +2 -0
  775. package/dist/runtime/component-context.cjs.map +1 -0
  776. package/dist/runtime/component-context.d.ts +73 -0
  777. package/dist/runtime/component-context.d.ts.map +1 -0
  778. package/dist/runtime/component-context.js +177 -0
  779. package/dist/runtime/component-context.js.map +1 -0
  780. package/dist/runtime/component.cjs +2 -0
  781. package/dist/runtime/component.cjs.map +1 -0
  782. package/dist/runtime/component.d.ts +112 -0
  783. package/dist/runtime/component.d.ts.map +1 -0
  784. package/dist/runtime/component.js +238 -0
  785. package/dist/runtime/component.js.map +1 -0
  786. package/dist/runtime/context.cjs +2 -0
  787. package/dist/runtime/context.cjs.map +1 -0
  788. package/dist/runtime/context.d.ts +138 -0
  789. package/dist/runtime/context.d.ts.map +1 -0
  790. package/dist/runtime/context.js +289 -0
  791. package/dist/runtime/context.js.map +1 -0
  792. package/dist/runtime/dev-tools.cjs +2 -0
  793. package/dist/runtime/dev-tools.cjs.map +1 -0
  794. package/dist/runtime/dev-tools.d.ts +240 -0
  795. package/dist/runtime/dev-tools.d.ts.map +1 -0
  796. package/dist/runtime/dev-tools.js +391 -0
  797. package/dist/runtime/dev-tools.js.map +1 -0
  798. package/dist/runtime/development-warnings.cjs +2 -0
  799. package/dist/runtime/development-warnings.cjs.map +1 -0
  800. package/dist/runtime/development-warnings.d.ts +42 -0
  801. package/dist/runtime/development-warnings.d.ts.map +1 -0
  802. package/dist/runtime/development-warnings.js +69 -0
  803. package/dist/runtime/development-warnings.js.map +1 -0
  804. package/dist/runtime/dom-bridge.cjs +2 -0
  805. package/dist/runtime/dom-bridge.cjs.map +1 -0
  806. package/dist/runtime/dom-bridge.d.ts +70 -0
  807. package/dist/runtime/dom-bridge.d.ts.map +1 -0
  808. package/dist/runtime/dom-bridge.js +241 -0
  809. package/dist/runtime/dom-bridge.js.map +1 -0
  810. package/dist/runtime/element-override.cjs +2 -0
  811. package/dist/runtime/element-override.cjs.map +1 -0
  812. package/dist/runtime/element-override.d.ts +82 -0
  813. package/dist/runtime/element-override.d.ts.map +1 -0
  814. package/dist/runtime/element-override.js +214 -0
  815. package/dist/runtime/element-override.js.map +1 -0
  816. package/dist/runtime/error-boundary.cjs +2 -0
  817. package/dist/runtime/error-boundary.cjs.map +1 -0
  818. package/dist/runtime/error-boundary.d.ts +302 -0
  819. package/dist/runtime/error-boundary.d.ts.map +1 -0
  820. package/dist/runtime/error-boundary.js +559 -0
  821. package/dist/runtime/error-boundary.js.map +1 -0
  822. package/dist/runtime/error-recovery.cjs +2 -0
  823. package/dist/runtime/error-recovery.cjs.map +1 -0
  824. package/dist/runtime/error-recovery.d.ts +267 -0
  825. package/dist/runtime/error-recovery.d.ts.map +1 -0
  826. package/dist/runtime/error-recovery.js +385 -0
  827. package/dist/runtime/error-recovery.js.map +1 -0
  828. package/dist/runtime/error-reporting.cjs +3 -0
  829. package/dist/runtime/error-reporting.cjs.map +1 -0
  830. package/dist/runtime/error-reporting.d.ts +287 -0
  831. package/dist/runtime/error-reporting.d.ts.map +1 -0
  832. package/dist/runtime/error-reporting.js +479 -0
  833. package/dist/runtime/error-reporting.js.map +1 -0
  834. package/dist/runtime/error-utils.cjs +3 -0
  835. package/dist/runtime/error-utils.cjs.map +1 -0
  836. package/dist/runtime/error-utils.d.ts +204 -0
  837. package/dist/runtime/error-utils.d.ts.map +1 -0
  838. package/dist/runtime/error-utils.js +352 -0
  839. package/dist/runtime/error-utils.js.map +1 -0
  840. package/dist/runtime/index.d.ts +29 -0
  841. package/dist/runtime/index.d.ts.map +1 -0
  842. package/dist/runtime/lazy-component.cjs +2 -0
  843. package/dist/runtime/lazy-component.cjs.map +1 -0
  844. package/dist/runtime/lazy-component.d.ts +58 -0
  845. package/dist/runtime/lazy-component.d.ts.map +1 -0
  846. package/dist/runtime/lazy-component.js +129 -0
  847. package/dist/runtime/lazy-component.js.map +1 -0
  848. package/dist/runtime/lifecycle.cjs +2 -0
  849. package/dist/runtime/lifecycle.cjs.map +1 -0
  850. package/dist/runtime/lifecycle.d.ts +8 -0
  851. package/dist/runtime/lifecycle.d.ts.map +1 -0
  852. package/dist/runtime/lifecycle.js +7 -0
  853. package/dist/runtime/lifecycle.js.map +1 -0
  854. package/dist/runtime/mounting.cjs +2 -0
  855. package/dist/runtime/mounting.cjs.map +1 -0
  856. package/dist/runtime/mounting.d.ts +9 -0
  857. package/dist/runtime/mounting.d.ts.map +1 -0
  858. package/dist/runtime/mounting.js +12 -0
  859. package/dist/runtime/mounting.js.map +1 -0
  860. package/dist/runtime/optimization.cjs +2 -0
  861. package/dist/runtime/optimization.cjs.map +1 -0
  862. package/dist/runtime/optimization.d.ts +8 -0
  863. package/dist/runtime/optimization.d.ts.map +1 -0
  864. package/dist/runtime/optimization.js +6 -0
  865. package/dist/runtime/optimization.js.map +1 -0
  866. package/dist/runtime/performance.cjs +2 -0
  867. package/dist/runtime/performance.cjs.map +1 -0
  868. package/dist/runtime/performance.d.ts +217 -0
  869. package/dist/runtime/performance.d.ts.map +1 -0
  870. package/dist/runtime/performance.js +399 -0
  871. package/dist/runtime/performance.js.map +1 -0
  872. package/dist/runtime/props.cjs +2 -0
  873. package/dist/runtime/props.cjs.map +1 -0
  874. package/dist/runtime/props.d.ts +154 -0
  875. package/dist/runtime/props.d.ts.map +1 -0
  876. package/dist/runtime/props.js +265 -0
  877. package/dist/runtime/props.js.map +1 -0
  878. package/dist/runtime/refs.d.ts +8 -0
  879. package/dist/runtime/refs.d.ts.map +1 -0
  880. package/dist/runtime/renderer.cjs +2 -0
  881. package/dist/runtime/renderer.cjs.map +1 -0
  882. package/dist/runtime/renderer.d.ts +116 -0
  883. package/dist/runtime/renderer.d.ts.map +1 -0
  884. package/dist/runtime/renderer.js +390 -0
  885. package/dist/runtime/renderer.js.map +1 -0
  886. package/dist/runtime/semantic-role-manager.cjs +2 -0
  887. package/dist/runtime/semantic-role-manager.cjs.map +1 -0
  888. package/dist/runtime/semantic-role-manager.d.ts +37 -0
  889. package/dist/runtime/semantic-role-manager.d.ts.map +1 -0
  890. package/dist/runtime/semantic-role-manager.js +82 -0
  891. package/dist/runtime/semantic-role-manager.js.map +1 -0
  892. package/dist/runtime/types.d.ts +230 -0
  893. package/dist/runtime/types.d.ts.map +1 -0
  894. package/dist/state/binding.cjs +2 -0
  895. package/dist/state/binding.cjs.map +1 -0
  896. package/dist/state/binding.d.ts +96 -0
  897. package/dist/state/binding.d.ts.map +1 -0
  898. package/dist/state/binding.js +155 -0
  899. package/dist/state/binding.js.map +1 -0
  900. package/dist/state/environment-object.d.ts +130 -0
  901. package/dist/state/environment-object.d.ts.map +1 -0
  902. package/dist/state/environment.cjs +2 -0
  903. package/dist/state/environment.cjs.map +1 -0
  904. package/dist/state/environment.d.ts +178 -0
  905. package/dist/state/environment.d.ts.map +1 -0
  906. package/dist/state/environment.js +115 -0
  907. package/dist/state/environment.js.map +1 -0
  908. package/dist/state/index.cjs +2 -0
  909. package/dist/state/index.cjs.map +1 -0
  910. package/dist/state/index.d.ts +108 -0
  911. package/dist/state/index.d.ts.map +1 -0
  912. package/dist/state/index.js +63 -0
  913. package/dist/state/index.js.map +1 -0
  914. package/dist/state/observed-object.cjs +2 -0
  915. package/dist/state/observed-object.cjs.map +1 -0
  916. package/dist/state/observed-object.d.ts +126 -0
  917. package/dist/state/observed-object.d.ts.map +1 -0
  918. package/dist/state/observed-object.js +163 -0
  919. package/dist/state/observed-object.js.map +1 -0
  920. package/dist/state/state-manager.cjs +2 -0
  921. package/dist/state/state-manager.cjs.map +1 -0
  922. package/dist/state/state-manager.d.ts +97 -0
  923. package/dist/state/state-manager.d.ts.map +1 -0
  924. package/dist/state/state-manager.js +233 -0
  925. package/dist/state/state-manager.js.map +1 -0
  926. package/dist/state/state.cjs +2 -0
  927. package/dist/state/state.cjs.map +1 -0
  928. package/dist/state/state.d.ts +78 -0
  929. package/dist/state/state.d.ts.map +1 -0
  930. package/dist/state/state.js +159 -0
  931. package/dist/state/state.js.map +1 -0
  932. package/dist/state/types.d.ts +159 -0
  933. package/dist/state/types.d.ts.map +1 -0
  934. package/dist/sui-compat.cjs +2 -0
  935. package/dist/sui-compat.cjs.map +1 -0
  936. package/dist/sui-compat.d.ts +110 -0
  937. package/dist/sui-compat.d.ts.map +1 -0
  938. package/dist/sui-compat.js +88 -0
  939. package/dist/sui-compat.js.map +1 -0
  940. package/dist/validation/advanced-debugging.cjs +44 -0
  941. package/dist/validation/advanced-debugging.cjs.map +1 -0
  942. package/dist/validation/advanced-debugging.d.ts +319 -0
  943. package/dist/validation/advanced-debugging.d.ts.map +1 -0
  944. package/dist/validation/advanced-debugging.js +455 -0
  945. package/dist/validation/advanced-debugging.js.map +1 -0
  946. package/dist/validation/build-time/detection.cjs +2 -0
  947. package/dist/validation/build-time/detection.cjs.map +1 -0
  948. package/dist/validation/build-time/detection.d.ts +32 -0
  949. package/dist/validation/build-time/detection.d.ts.map +1 -0
  950. package/dist/validation/build-time/detection.js +199 -0
  951. package/dist/validation/build-time/detection.js.map +1 -0
  952. package/dist/validation/build-time/index.cjs +2 -0
  953. package/dist/validation/build-time/index.cjs.map +1 -0
  954. package/dist/validation/build-time/index.d.ts +84 -0
  955. package/dist/validation/build-time/index.d.ts.map +1 -0
  956. package/dist/validation/build-time/index.js +122 -0
  957. package/dist/validation/build-time/index.js.map +1 -0
  958. package/dist/validation/build-time/plugins.cjs +3 -0
  959. package/dist/validation/build-time/plugins.cjs.map +1 -0
  960. package/dist/validation/build-time/plugins.d.ts +75 -0
  961. package/dist/validation/build-time/plugins.d.ts.map +1 -0
  962. package/dist/validation/build-time/plugins.js +282 -0
  963. package/dist/validation/build-time/plugins.js.map +1 -0
  964. package/dist/validation/build-time/rules.cjs +2 -0
  965. package/dist/validation/build-time/rules.cjs.map +1 -0
  966. package/dist/validation/build-time/rules.d.ts +73 -0
  967. package/dist/validation/build-time/rules.d.ts.map +1 -0
  968. package/dist/validation/build-time/rules.js +576 -0
  969. package/dist/validation/build-time/rules.js.map +1 -0
  970. package/dist/validation/build-time/transformer.cjs +3 -0
  971. package/dist/validation/build-time/transformer.cjs.map +1 -0
  972. package/dist/validation/build-time/transformer.d.ts +23 -0
  973. package/dist/validation/build-time/transformer.d.ts.map +1 -0
  974. package/dist/validation/build-time/transformer.js +177 -0
  975. package/dist/validation/build-time/transformer.js.map +1 -0
  976. package/dist/validation/build-time/types.d.ts +212 -0
  977. package/dist/validation/build-time/types.d.ts.map +1 -0
  978. package/dist/validation/comprehensive.cjs +9 -0
  979. package/dist/validation/comprehensive.cjs.map +1 -0
  980. package/dist/validation/comprehensive.d.ts +160 -0
  981. package/dist/validation/comprehensive.d.ts.map +1 -0
  982. package/dist/validation/comprehensive.js +916 -0
  983. package/dist/validation/comprehensive.js.map +1 -0
  984. package/dist/validation/debug-tools.cjs +16 -0
  985. package/dist/validation/debug-tools.cjs.map +1 -0
  986. package/dist/validation/debug-tools.d.ts +251 -0
  987. package/dist/validation/debug-tools.d.ts.map +1 -0
  988. package/dist/validation/debug-tools.js +405 -0
  989. package/dist/validation/debug-tools.js.map +1 -0
  990. package/dist/validation/developer-experience.cjs +17 -0
  991. package/dist/validation/developer-experience.cjs.map +1 -0
  992. package/dist/validation/developer-experience.d.ts +243 -0
  993. package/dist/validation/developer-experience.d.ts.map +1 -0
  994. package/dist/validation/developer-experience.js +433 -0
  995. package/dist/validation/developer-experience.js.map +1 -0
  996. package/dist/validation/documentation-integration.cjs +7 -0
  997. package/dist/validation/documentation-integration.cjs.map +1 -0
  998. package/dist/validation/documentation-integration.d.ts +269 -0
  999. package/dist/validation/documentation-integration.d.ts.map +1 -0
  1000. package/dist/validation/documentation-integration.js +440 -0
  1001. package/dist/validation/documentation-integration.js.map +1 -0
  1002. package/dist/validation/enhanced-runtime.cjs +6 -0
  1003. package/dist/validation/enhanced-runtime.cjs.map +1 -0
  1004. package/dist/validation/enhanced-runtime.d.ts +279 -0
  1005. package/dist/validation/enhanced-runtime.d.ts.map +1 -0
  1006. package/dist/validation/enhanced-runtime.js +465 -0
  1007. package/dist/validation/enhanced-runtime.js.map +1 -0
  1008. package/dist/validation/error-reporting.cjs +32 -0
  1009. package/dist/validation/error-reporting.cjs.map +1 -0
  1010. package/dist/validation/error-reporting.d.ts +186 -0
  1011. package/dist/validation/error-reporting.d.ts.map +1 -0
  1012. package/dist/validation/error-reporting.js +370 -0
  1013. package/dist/validation/error-reporting.js.map +1 -0
  1014. package/dist/validation/ide-integration.cjs +85 -0
  1015. package/dist/validation/ide-integration.cjs.map +1 -0
  1016. package/dist/validation/ide-integration.d.ts +328 -0
  1017. package/dist/validation/ide-integration.d.ts.map +1 -0
  1018. package/dist/validation/ide-integration.js +557 -0
  1019. package/dist/validation/ide-integration.js.map +1 -0
  1020. package/dist/validation/index.cjs +6 -0
  1021. package/dist/validation/index.cjs.map +1 -0
  1022. package/dist/validation/index.d.ts +171 -0
  1023. package/dist/validation/index.d.ts.map +1 -0
  1024. package/dist/validation/index.js +309 -0
  1025. package/dist/validation/index.js.map +1 -0
  1026. package/dist/validation/lifecycle-validation.cjs +2 -0
  1027. package/dist/validation/lifecycle-validation.cjs.map +1 -0
  1028. package/dist/validation/lifecycle-validation.d.ts +165 -0
  1029. package/dist/validation/lifecycle-validation.d.ts.map +1 -0
  1030. package/dist/validation/lifecycle-validation.js +314 -0
  1031. package/dist/validation/lifecycle-validation.js.map +1 -0
  1032. package/dist/validation/performance-optimizer.cjs +2 -0
  1033. package/dist/validation/performance-optimizer.cjs.map +1 -0
  1034. package/dist/validation/performance-optimizer.d.ts +218 -0
  1035. package/dist/validation/performance-optimizer.d.ts.map +1 -0
  1036. package/dist/validation/performance-optimizer.js +338 -0
  1037. package/dist/validation/performance-optimizer.js.map +1 -0
  1038. package/dist/validation/plugin-registration.cjs +2 -0
  1039. package/dist/validation/plugin-registration.cjs.map +1 -0
  1040. package/dist/validation/plugin-registration.d.ts +88 -0
  1041. package/dist/validation/plugin-registration.d.ts.map +1 -0
  1042. package/dist/validation/plugin-registration.js +126 -0
  1043. package/dist/validation/plugin-registration.js.map +1 -0
  1044. package/dist/validation/production-bypass.cjs +2 -0
  1045. package/dist/validation/production-bypass.cjs.map +1 -0
  1046. package/dist/validation/production-bypass.d.ts +175 -0
  1047. package/dist/validation/production-bypass.d.ts.map +1 -0
  1048. package/dist/validation/production-bypass.js +218 -0
  1049. package/dist/validation/production-bypass.js.map +1 -0
  1050. package/dist/validation/simple.cjs +9 -0
  1051. package/dist/validation/simple.cjs.map +1 -0
  1052. package/dist/validation/simple.d.ts +111 -0
  1053. package/dist/validation/simple.d.ts.map +1 -0
  1054. package/dist/validation/simple.js +146 -0
  1055. package/dist/validation/simple.js.map +1 -0
  1056. package/dist/viewport/adapters/web-adapter.cjs +70 -0
  1057. package/dist/viewport/adapters/web-adapter.cjs.map +1 -0
  1058. package/dist/viewport/adapters/web-adapter.d.ts +227 -0
  1059. package/dist/viewport/adapters/web-adapter.d.ts.map +1 -0
  1060. package/dist/viewport/adapters/web-adapter.js +823 -0
  1061. package/dist/viewport/adapters/web-adapter.js.map +1 -0
  1062. package/dist/viewport/components.cjs +2 -0
  1063. package/dist/viewport/components.cjs.map +1 -0
  1064. package/dist/viewport/components.d.ts +131 -0
  1065. package/dist/viewport/components.d.ts.map +1 -0
  1066. package/dist/viewport/components.js +298 -0
  1067. package/dist/viewport/components.js.map +1 -0
  1068. package/dist/viewport/environment.cjs +2 -0
  1069. package/dist/viewport/environment.cjs.map +1 -0
  1070. package/dist/viewport/environment.d.ts +75 -0
  1071. package/dist/viewport/environment.d.ts.map +1 -0
  1072. package/dist/viewport/environment.js +86 -0
  1073. package/dist/viewport/environment.js.map +1 -0
  1074. package/dist/viewport/index.cjs +2 -0
  1075. package/dist/viewport/index.cjs.map +1 -0
  1076. package/dist/viewport/index.d.ts +138 -0
  1077. package/dist/viewport/index.d.ts.map +1 -0
  1078. package/dist/viewport/index.js +166 -0
  1079. package/dist/viewport/index.js.map +1 -0
  1080. package/dist/viewport/platform-detection.cjs +2 -0
  1081. package/dist/viewport/platform-detection.cjs.map +1 -0
  1082. package/dist/viewport/platform-detection.d.ts +59 -0
  1083. package/dist/viewport/platform-detection.d.ts.map +1 -0
  1084. package/dist/viewport/platform-detection.js +205 -0
  1085. package/dist/viewport/platform-detection.js.map +1 -0
  1086. package/dist/viewport/types.cjs +2 -0
  1087. package/dist/viewport/types.cjs.map +1 -0
  1088. package/dist/viewport/types.d.ts +301 -0
  1089. package/dist/viewport/types.d.ts.map +1 -0
  1090. package/dist/viewport/types.js +13 -0
  1091. package/dist/viewport/types.js.map +1 -0
  1092. package/dist/viewport/viewport-manager.cjs +2 -0
  1093. package/dist/viewport/viewport-manager.cjs.map +1 -0
  1094. package/dist/viewport/viewport-manager.d.ts +118 -0
  1095. package/dist/viewport/viewport-manager.d.ts.map +1 -0
  1096. package/dist/viewport/viewport-manager.js +524 -0
  1097. package/dist/viewport/viewport-manager.js.map +1 -0
  1098. package/package.json +128 -0
  1099. package/src/assets/Asset.ts +11 -0
  1100. package/src/assets/AssetCollection.ts +99 -0
  1101. package/src/assets/ColorAsset.ts +210 -0
  1102. package/src/assets/FontAsset.ts +380 -0
  1103. package/src/assets/ImageAsset.ts +91 -0
  1104. package/src/assets/README.md +190 -0
  1105. package/src/assets/index.ts +175 -0
  1106. package/src/assets/test-assets.ts +69 -0
  1107. package/src/assets/test-integration.ts +46 -0
  1108. package/src/assets/test-simple.ts +28 -0
  1109. package/src/assets/types.ts +79 -0
  1110. package/src/bundles/common.ts +30 -0
  1111. package/src/bundles/complete.ts +29 -0
  1112. package/src/bundles/essential.ts +26 -0
  1113. package/src/bundles/minimal.ts +26 -0
  1114. package/src/bundles/production-minimal.ts +67 -0
  1115. package/src/compiler/advanced-parser.ts +871 -0
  1116. package/src/compiler/codegen.ts +450 -0
  1117. package/src/compiler/enhanced-codegen.ts +729 -0
  1118. package/src/compiler/index.ts +25 -0
  1119. package/src/compiler/parser.ts +461 -0
  1120. package/src/compiler/plugin.ts +181 -0
  1121. package/src/compiler/types.ts +177 -0
  1122. package/src/components/BasicInput.ts +352 -0
  1123. package/src/components/Button.ts +963 -0
  1124. package/src/components/Divider.ts +341 -0
  1125. package/src/components/EnhancedLink.ts +676 -0
  1126. package/src/components/Form.ts +414 -0
  1127. package/src/components/Grid.ts +2507 -0
  1128. package/src/components/GridResponsive.ts +637 -0
  1129. package/src/components/Image.ts +426 -0
  1130. package/src/components/List.ts +1084 -0
  1131. package/src/components/Menu.ts +807 -0
  1132. package/src/components/Picker.ts +678 -0
  1133. package/src/components/ScrollView.ts +725 -0
  1134. package/src/components/Section.ts +472 -0
  1135. package/src/components/Show.ts +205 -0
  1136. package/src/components/Spacer.ts +93 -0
  1137. package/src/components/Text.ts +447 -0
  1138. package/src/components/Toggle.ts +700 -0
  1139. package/src/components/index.ts +231 -0
  1140. package/src/components/wrapper.ts +828 -0
  1141. package/src/concatenation/concatenatable.ts +211 -0
  1142. package/src/concatenation/concatenated-component.ts +471 -0
  1143. package/src/concatenation/index.ts +41 -0
  1144. package/src/concatenation/styles.css +120 -0
  1145. package/src/concatenation/text-optimizer.ts +440 -0
  1146. package/src/concatenation/types.ts +116 -0
  1147. package/src/constants/README.md +339 -0
  1148. package/src/constants/__tests__/frame-utils.test.ts +276 -0
  1149. package/src/constants/__tests__/layout.test.ts +215 -0
  1150. package/src/constants/frame-utils.ts +174 -0
  1151. package/src/constants/index.ts +8 -0
  1152. package/src/constants/layout.ts +120 -0
  1153. package/src/css-classes/component-base.ts +117 -0
  1154. package/src/css-classes/css-class-manager.ts +372 -0
  1155. package/src/css-classes/dom-integration.ts +162 -0
  1156. package/src/css-classes/enhanced-renderer.ts +166 -0
  1157. package/src/css-classes/index.ts +45 -0
  1158. package/src/css-classes/types.ts +73 -0
  1159. package/src/css-classes/utilities.ts +175 -0
  1160. package/src/debug/index.ts +267 -0
  1161. package/src/developer-experience/enhanced-errors.ts +556 -0
  1162. package/src/developer-experience/enhanced-types.ts +427 -0
  1163. package/src/developer-experience/index.ts +220 -0
  1164. package/src/globals.d.ts +43 -0
  1165. package/src/gradients/__tests__/angular-gradient.test.ts +111 -0
  1166. package/src/gradients/__tests__/background-modifier.test.ts +81 -0
  1167. package/src/gradients/__tests__/comprehensive-gradients.test.ts +296 -0
  1168. package/src/gradients/__tests__/gradient-asset.test.ts +144 -0
  1169. package/src/gradients/__tests__/linear-gradient.test.ts +92 -0
  1170. package/src/gradients/__tests__/phase4-features.test.ts +386 -0
  1171. package/src/gradients/__tests__/radial-gradient.test.ts +110 -0
  1172. package/src/gradients/__tests__/repeating-gradients.test.ts +125 -0
  1173. package/src/gradients/__tests__/state-background-modifier.test.ts +340 -0
  1174. package/src/gradients/__tests__/state-gradient-asset.test.ts +262 -0
  1175. package/src/gradients/__tests__/state-gradient-integration.test.ts +277 -0
  1176. package/src/gradients/css-generator.ts +158 -0
  1177. package/src/gradients/examples.ts +632 -0
  1178. package/src/gradients/gradient-asset.ts +30 -0
  1179. package/src/gradients/index.ts +85 -0
  1180. package/src/gradients/performance.ts +521 -0
  1181. package/src/gradients/presets.ts +422 -0
  1182. package/src/gradients/reactive.ts +470 -0
  1183. package/src/gradients/state-gradient-asset.ts +179 -0
  1184. package/src/gradients/types.ts +148 -0
  1185. package/src/gradients/utils.ts +579 -0
  1186. package/src/gradients/validation.ts +489 -0
  1187. package/src/index.ts +168 -0
  1188. package/src/lifecycle/hooks.ts +332 -0
  1189. package/src/modifiers/__tests__/as-html-integration.test.ts +204 -0
  1190. package/src/modifiers/__tests__/as-html.test.ts +437 -0
  1191. package/src/modifiers/__tests__/basic-sanitizer-security.test.ts +294 -0
  1192. package/src/modifiers/__tests__/border.test.ts +371 -0
  1193. package/src/modifiers/__tests__/margin-string-support.test.ts +41 -0
  1194. package/src/modifiers/__tests__/padding-string-support.test.ts +41 -0
  1195. package/src/modifiers/as-html-validator.ts +68 -0
  1196. package/src/modifiers/as-html.ts +216 -0
  1197. package/src/modifiers/attributes.ts +574 -0
  1198. package/src/modifiers/backdrop.ts +290 -0
  1199. package/src/modifiers/background.ts +165 -0
  1200. package/src/modifiers/base.ts +1815 -0
  1201. package/src/modifiers/basic-sanitizer.ts +227 -0
  1202. package/src/modifiers/border.ts +574 -0
  1203. package/src/modifiers/builder.ts +1747 -0
  1204. package/src/modifiers/core.ts +521 -0
  1205. package/src/modifiers/css.ts +148 -0
  1206. package/src/modifiers/effects.ts +412 -0
  1207. package/src/modifiers/elements.ts +541 -0
  1208. package/src/modifiers/filters.ts +501 -0
  1209. package/src/modifiers/flexbox.ts +180 -0
  1210. package/src/modifiers/font.ts +149 -0
  1211. package/src/modifiers/grid.ts +238 -0
  1212. package/src/modifiers/index.ts +481 -0
  1213. package/src/modifiers/margin.ts +218 -0
  1214. package/src/modifiers/padding.ts +318 -0
  1215. package/src/modifiers/registry.ts +444 -0
  1216. package/src/modifiers/responsive/__tests__/advanced-media-queries.test.ts +392 -0
  1217. package/src/modifiers/responsive/__tests__/advanced-utilities.test.ts +368 -0
  1218. package/src/modifiers/responsive/__tests__/comprehensive-browser-tests.test.ts +556 -0
  1219. package/src/modifiers/responsive/__tests__/layout-patterns.test.ts +558 -0
  1220. package/src/modifiers/responsive/advanced-utilities.ts +562 -0
  1221. package/src/modifiers/responsive/breakpoints.ts +330 -0
  1222. package/src/modifiers/responsive/css-generator.ts +432 -0
  1223. package/src/modifiers/responsive/dev-tools.ts +650 -0
  1224. package/src/modifiers/responsive/index.ts +119 -0
  1225. package/src/modifiers/responsive/layout-patterns.ts +592 -0
  1226. package/src/modifiers/responsive/performance.ts +385 -0
  1227. package/src/modifiers/responsive/responsive-builder.ts +620 -0
  1228. package/src/modifiers/responsive/responsive-modifier.ts +410 -0
  1229. package/src/modifiers/responsive/types.ts +226 -0
  1230. package/src/modifiers/responsive/utilities.ts +478 -0
  1231. package/src/modifiers/scroll.ts +297 -0
  1232. package/src/modifiers/shadows.ts +321 -0
  1233. package/src/modifiers/size.ts +208 -0
  1234. package/src/modifiers/text.ts +416 -0
  1235. package/src/modifiers/transformations.ts +640 -0
  1236. package/src/modifiers/transitions.ts +218 -0
  1237. package/src/modifiers/types.ts +889 -0
  1238. package/src/modifiers/typography.ts +341 -0
  1239. package/src/modifiers/utility.ts +209 -0
  1240. package/src/modifiers/utils.ts +413 -0
  1241. package/src/plugins/__tests__/simplified-plugin-system.test.ts +190 -0
  1242. package/src/plugins/component-loader-registry.ts +371 -0
  1243. package/src/plugins/index.ts +61 -0
  1244. package/src/plugins/legacy-adapter.ts +84 -0
  1245. package/src/plugins/simplified-component-registry.ts +130 -0
  1246. package/src/plugins/simplified-error-handler.ts +372 -0
  1247. package/src/plugins/simplified-index.ts +61 -0
  1248. package/src/plugins/simplified-lazy-loader.ts +242 -0
  1249. package/src/plugins/simplified-plugin-manager.ts +93 -0
  1250. package/src/plugins/simplified-tachui-instance.ts +142 -0
  1251. package/src/plugins/simplified-types.ts +79 -0
  1252. package/src/plugins/simplified-utils.ts +118 -0
  1253. package/src/reactive/cleanup.ts +241 -0
  1254. package/src/reactive/computed.ts +281 -0
  1255. package/src/reactive/context.ts +287 -0
  1256. package/src/reactive/effect.ts +194 -0
  1257. package/src/reactive/enhanced-effect.ts +318 -0
  1258. package/src/reactive/enhanced-signal.ts +227 -0
  1259. package/src/reactive/equality.ts +188 -0
  1260. package/src/reactive/globals.d.ts +5 -0
  1261. package/src/reactive/index.ts +150 -0
  1262. package/src/reactive/migration.ts +335 -0
  1263. package/src/reactive/ownership.ts +182 -0
  1264. package/src/reactive/scheduler.ts +300 -0
  1265. package/src/reactive/signal.ts +201 -0
  1266. package/src/reactive/theme.ts +49 -0
  1267. package/src/reactive/types.ts +103 -0
  1268. package/src/reactive/unified-scheduler.ts +357 -0
  1269. package/src/runtime/component-context.ts +343 -0
  1270. package/src/runtime/component.ts +499 -0
  1271. package/src/runtime/context.ts +527 -0
  1272. package/src/runtime/dev-tools.ts +752 -0
  1273. package/src/runtime/development-warnings.ts +114 -0
  1274. package/src/runtime/dom-bridge.ts +570 -0
  1275. package/src/runtime/element-override.ts +282 -0
  1276. package/src/runtime/error-boundary.ts +955 -0
  1277. package/src/runtime/error-recovery.ts +638 -0
  1278. package/src/runtime/error-reporting.ts +808 -0
  1279. package/src/runtime/error-utils.ts +698 -0
  1280. package/src/runtime/index.ts +202 -0
  1281. package/src/runtime/lazy-component.ts +268 -0
  1282. package/src/runtime/lifecycle.ts +10 -0
  1283. package/src/runtime/mounting.ts +17 -0
  1284. package/src/runtime/optimization.ts +13 -0
  1285. package/src/runtime/performance.ts +693 -0
  1286. package/src/runtime/props.ts +434 -0
  1287. package/src/runtime/refs.ts +13 -0
  1288. package/src/runtime/renderer.ts +674 -0
  1289. package/src/runtime/semantic-role-manager.ts +140 -0
  1290. package/src/runtime/types.ts +282 -0
  1291. package/src/state/binding.ts +381 -0
  1292. package/src/state/environment-object.ts +444 -0
  1293. package/src/state/environment.ts +351 -0
  1294. package/src/state/index.ts +179 -0
  1295. package/src/state/observed-object.ts +405 -0
  1296. package/src/state/state-manager.ts +366 -0
  1297. package/src/state/state.ts +339 -0
  1298. package/src/state/types.ts +192 -0
  1299. package/src/sui-compat.ts +163 -0
  1300. package/src/validation/__tests__/phase-1d-integration.test.ts +558 -0
  1301. package/src/validation/advanced-debugging.ts +860 -0
  1302. package/src/validation/build-time/detection.ts +373 -0
  1303. package/src/validation/build-time/index.ts +222 -0
  1304. package/src/validation/build-time/plugins.ts +515 -0
  1305. package/src/validation/build-time/rules.ts +624 -0
  1306. package/src/validation/build-time/transformer.ts +372 -0
  1307. package/src/validation/build-time/types.ts +232 -0
  1308. package/src/validation/comprehensive.ts +1272 -0
  1309. package/src/validation/debug-tools.ts +724 -0
  1310. package/src/validation/developer-experience.ts +712 -0
  1311. package/src/validation/documentation-integration.ts +835 -0
  1312. package/src/validation/enhanced-runtime.ts +765 -0
  1313. package/src/validation/error-reporting.ts +587 -0
  1314. package/src/validation/ide-integration.ts +845 -0
  1315. package/src/validation/index.ts +353 -0
  1316. package/src/validation/lifecycle-validation.ts +636 -0
  1317. package/src/validation/performance-optimizer.ts +599 -0
  1318. package/src/validation/plugin-registration.ts +249 -0
  1319. package/src/validation/production-bypass.ts +466 -0
  1320. package/src/validation/simple.ts +465 -0
  1321. package/src/viewport/adapters/web-adapter.ts +1385 -0
  1322. package/src/viewport/components.ts +505 -0
  1323. package/src/viewport/environment.ts +173 -0
  1324. package/src/viewport/index.ts +290 -0
  1325. package/src/viewport/platform-detection.ts +431 -0
  1326. package/src/viewport/types.ts +371 -0
  1327. package/src/viewport/viewport-manager.ts +979 -0
@@ -0,0 +1,408 @@
1
+ import "../reactive/cleanup.js";
2
+ import "../reactive/unified-scheduler.js";
3
+ import { createEffect as _ } from "../reactive/effect.js";
4
+ import { createSignal as $, isSignal as g } from "../reactive/signal.js";
5
+ import "../reactive/scheduler.js";
6
+ import "../reactive/theme.js";
7
+ import { h as P, text as R } from "../runtime/renderer.js";
8
+ import { withModifiers as V } from "./wrapper.js";
9
+ import { useLifecycle as H } from "../lifecycle/hooks.js";
10
+ import { ColorAsset as L } from "../assets/ColorAsset.js";
11
+ import { ConcatenatedComponent as M } from "../concatenation/concatenated-component.js";
12
+ import "../css-classes/css-class-manager.js";
13
+ import { ComponentWithCSSClasses as I } from "../css-classes/component-base.js";
14
+ var O = Object.defineProperty, W = (i, e, t) => e in i ? O(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t, h = (i, e, t) => W(i, typeof e != "symbol" ? e + "" : e, t);
15
+ const K = {
16
+ colors: {
17
+ primary: "#007AFF",
18
+ secondary: "#5856D6",
19
+ destructive: "#FF3B30",
20
+ background: "#F2F2F7",
21
+ surface: "#FFFFFF",
22
+ onPrimary: "#FFFFFF",
23
+ onSecondary: "#FFFFFF",
24
+ onSurface: "#000000",
25
+ border: "#C7C7CC",
26
+ disabled: "#8E8E93"
27
+ },
28
+ spacing: {
29
+ small: 8,
30
+ medium: 12,
31
+ large: 16
32
+ },
33
+ borderRadius: {
34
+ small: 6,
35
+ medium: 8,
36
+ large: 12
37
+ },
38
+ typography: {
39
+ small: { size: 14, weight: "500" },
40
+ medium: { size: 16, weight: "500" },
41
+ large: { size: 18, weight: "600" }
42
+ }
43
+ };
44
+ class U extends I {
45
+ constructor(e, t = K) {
46
+ super(), this.props = e, h(this, "type", "component"), h(this, "id"), h(this, "mounted", !1), h(this, "cleanup", []), h(this, "stateSignal"), h(this, "setState"), h(this, "theme"), this.id = `button-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`, this.theme = t;
47
+ const [s, o] = $("normal");
48
+ this.stateSignal = s, this.setState = o, this.setupDOMEventListeners();
49
+ }
50
+ /**
51
+ * Set up DOM event listeners for button interactions
52
+ */
53
+ setupDOMEventListeners() {
54
+ H(this, {
55
+ onDOMReady: (e, t) => {
56
+ t instanceof HTMLButtonElement && (this.attachInteractionEvents(t), this.setupReactiveStyles(t));
57
+ }
58
+ });
59
+ }
60
+ /**
61
+ * Set up reactive style updates based on state changes
62
+ */
63
+ setupReactiveStyles(e) {
64
+ const t = _(() => {
65
+ this.stateSignal(), this.isEnabled(), this.isLoading();
66
+ const { tint: s, backgroundColor: o, foregroundColor: r } = this.props;
67
+ s && g(s) ? s() : s instanceof L && s.resolve(), o && g(o) ? o() : o instanceof L && o.resolve(), r && g(r) ? r() : r instanceof L && r.resolve();
68
+ const n = this.getButtonStyles();
69
+ this.applyStylesToElement(e, n);
70
+ });
71
+ this.cleanup.push(() => {
72
+ t && typeof t.dispose == "function" && t.dispose();
73
+ });
74
+ }
75
+ /**
76
+ * Apply computed styles to the button element, respecting modifier-applied styles
77
+ */
78
+ applyStylesToElement(e, t) {
79
+ Object.entries(t).forEach(([s, o]) => {
80
+ const r = this.camelToKebabCase(s);
81
+ if (typeof o == "string" || typeof o == "number") {
82
+ const n = e.style.getPropertyValue(r);
83
+ r === "transform" ? e.style.setProperty(r, String(o)) : n && n !== "" && n !== "inherit" || e.style.setProperty(r, String(o));
84
+ }
85
+ });
86
+ }
87
+ /**
88
+ * Convert camelCase to kebab-case for CSS properties
89
+ */
90
+ camelToKebabCase(e) {
91
+ return e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
92
+ }
93
+ /**
94
+ * Resolve color value from string, signal, or asset
95
+ */
96
+ resolveColorValue(e) {
97
+ if (e) {
98
+ if (typeof e == "string")
99
+ return e;
100
+ if (g(e))
101
+ return e();
102
+ if (e instanceof L)
103
+ return e.resolve();
104
+ }
105
+ }
106
+ /**
107
+ * Attach interaction event listeners to the button element
108
+ */
109
+ attachInteractionEvents(e) {
110
+ const t = () => {
111
+ const a = this.isEnabled();
112
+ return typeof a == "boolean" ? a : a();
113
+ };
114
+ let s = null;
115
+ const o = (a) => {
116
+ t() && a.button === 0 && (this.setState("pressed"), s = () => {
117
+ this.stateSignal() === "pressed" && this.setState("normal"), s && (document.removeEventListener("mouseup", s), s = null);
118
+ }, document.addEventListener("mouseup", s));
119
+ }, r = () => {
120
+ t() && this.stateSignal() === "pressed" && (this.setState("normal"), s && (document.removeEventListener("mouseup", s), s = null));
121
+ }, n = () => {
122
+ t() && (this.setState("normal"), s && (document.removeEventListener("mouseup", s), s = null));
123
+ }, d = () => {
124
+ t() && this.stateSignal() !== "pressed" && this.setState("focused");
125
+ }, v = () => {
126
+ t() && this.stateSignal() === "focused" && this.setState("normal");
127
+ }, b = (a) => {
128
+ t() && (a.key === " " || a.key === "Enter") && (a.preventDefault(), this.setState("pressed"));
129
+ }, S = (a) => {
130
+ t() && (a.key === " " || a.key === "Enter") && (a.preventDefault(), this.setState("normal"), this.props.action?.());
131
+ };
132
+ e.addEventListener("mousedown", o), e.addEventListener("mouseup", r), e.addEventListener("mouseleave", n), e.addEventListener("focus", d), e.addEventListener("blur", v), e.addEventListener("keydown", b), e.addEventListener("keyup", S), this.cleanup.push(() => {
133
+ e.removeEventListener("mousedown", o), e.removeEventListener("mouseup", r), e.removeEventListener("mouseleave", n), e.removeEventListener("focus", d), e.removeEventListener("blur", v), e.removeEventListener("keydown", b), e.removeEventListener("keyup", S), s && (document.removeEventListener("mouseup", s), s = null);
134
+ });
135
+ }
136
+ /**
137
+ * Check if button is enabled
138
+ */
139
+ isEnabled() {
140
+ const { isEnabled: e } = this.props;
141
+ return e === void 0 ? !0 : typeof e == "boolean" || g(e) ? e : !0;
142
+ }
143
+ /**
144
+ * Render the button component
145
+ */
146
+ render() {
147
+ const e = this.isEnabled(), t = [];
148
+ this.props.systemImage && t.push(P("span", {
149
+ class: "button-icon",
150
+ style: {
151
+ marginRight: "8px",
152
+ fontSize: "1.2em"
153
+ }
154
+ }, R(this.props.systemImage))), t.push(P("span", {
155
+ class: "button-title"
156
+ }, R(this.props.title || "")));
157
+ const s = ["tachui-button"];
158
+ return [{
159
+ type: "element",
160
+ tag: "button",
161
+ props: {
162
+ className: this.createClassString(this.props, s),
163
+ type: "button",
164
+ disabled: typeof e == "boolean" ? !e : () => !e(),
165
+ // Invert enabled to disabled
166
+ onClick: this.props.action ? () => {
167
+ try {
168
+ this.props.action?.();
169
+ } catch (n) {
170
+ console.error("Button action error:", n);
171
+ }
172
+ } : void 0,
173
+ // Pass through debug label for debug system
174
+ ...this.props.debugLabel && { debugLabel: this.props.debugLabel }
175
+ },
176
+ children: t,
177
+ // Attach component metadata for modifier processing
178
+ componentMetadata: {
179
+ id: this.id,
180
+ type: "Button"
181
+ // Note: modifiers are attached automatically by the modifier system
182
+ }
183
+ }];
184
+ }
185
+ /**
186
+ * Check if button is in loading state
187
+ */
188
+ isLoading() {
189
+ const { isLoading: e } = this.props;
190
+ return e === void 0 ? !1 : typeof e == "boolean" ? e : g(e) ? e() : !1;
191
+ }
192
+ /**
193
+ * Check if the button has color-related modifiers applied
194
+ */
195
+ hasColorModifiers() {
196
+ let e = this.modifiers;
197
+ return !e && this.modifierBuilder && (e = this.modifierBuilder.modifiers), !e && this.modifiableComponent && (e = this.modifiableComponent.modifiers), !e || !Array.isArray(e) ? !1 : e.some((t) => t.type === "appearance" || t.constructor?.name === "AppearanceModifier" ? t.properties && (t.properties.foregroundColor !== void 0 || t.properties.color !== void 0) : t.properties ? ["foregroundColor", "color", "textColor"].some((o) => t.properties[o] !== void 0) : !1);
198
+ }
199
+ /**
200
+ * Check if the button has typography-related modifiers applied
201
+ */
202
+ hasTypographyModifiers() {
203
+ let e = this.modifiers;
204
+ return !e && this.modifierBuilder && (e = this.modifierBuilder.modifiers), !e && this.modifiableComponent && (e = this.modifiableComponent.modifiers), !e || !Array.isArray(e) ? !1 : e.some((s) => s.type === "typography" || s.constructor?.name === "TypographyModifier" ? s.properties && (s.properties.transform !== void 0 || s.properties.textTransform !== void 0) : !1);
205
+ }
206
+ /**
207
+ * Get computed button styles based on variant, size, role, and state
208
+ */
209
+ // biome-ignore lint/suspicious/noExplicitAny: CSS styles require flexible property types
210
+ getButtonStyles() {
211
+ const { variant: e, size: t, role: s = "none", tint: o, backgroundColor: r, foregroundColor: n } = this.props, d = this.stateSignal(), v = this.isLoading(), b = this.isEnabled(), S = this.hasColorModifiers(), a = this.hasTypographyModifiers(), u = {
212
+ // Only set color property if no modifiers will handle it
213
+ // This prevents conflicts between Button styles and AppearanceModifier
214
+ ...!S && !n && !e && { color: "inherit" },
215
+ // Only set text-related properties if no typography modifiers will handle them
216
+ // This prevents conflicts between Button styles and TypographyModifier
217
+ ...!a && {
218
+ fontStyle: "inherit",
219
+ lineHeight: "inherit",
220
+ textTransform: "inherit",
221
+ textDecoration: "inherit",
222
+ textIndent: "inherit",
223
+ textShadow: "inherit",
224
+ wordSpacing: "inherit",
225
+ textOrientation: "inherit",
226
+ writingMode: "inherit",
227
+ direction: "inherit"
228
+ }
229
+ // Let modifiers control: fontFamily, fontSize, fontWeight, letterSpacing, textAlign
230
+ };
231
+ if (t) {
232
+ const f = this.theme.spacing[t] || this.theme.spacing.medium, D = this.theme.borderRadius[t] || this.theme.borderRadius.medium, T = this.theme.typography[t] || this.theme.typography.medium, z = {
233
+ small: "32px",
234
+ medium: "40px",
235
+ large: "48px"
236
+ };
237
+ u.padding = `${f}px ${f * 2}px`, u.borderRadius = `${D}px`, u.fontSize = `${T.size}px`, u.fontWeight = T.weight, u.minHeight = z[t];
238
+ }
239
+ let c = "transparent", p = "transparent", k = "1px", m;
240
+ const A = this.resolveColorValue(o), C = this.resolveColorValue(r), E = this.resolveColorValue(n);
241
+ if (e) {
242
+ const f = A || this.theme.colors.primary;
243
+ switch (e) {
244
+ case "filled":
245
+ s === "destructive" ? c = this.theme.colors.destructive : s === "cancel" ? c = this.theme.colors.secondary : c = f, m = this.theme.colors.onPrimary;
246
+ break;
247
+ case "outlined":
248
+ p = s === "destructive" ? this.theme.colors.destructive : f, m = s === "destructive" ? this.theme.colors.destructive : f;
249
+ break;
250
+ case "bordered":
251
+ c = this.theme.colors.background, p = this.theme.colors.border;
252
+ break;
253
+ case "borderedProminent":
254
+ c = this.theme.colors.surface, p = this.theme.colors.primary, k = "2px";
255
+ break;
256
+ }
257
+ }
258
+ C && (c = C), E && (m = E);
259
+ let F = "1", w = "auto", x, B = "none";
260
+ b ? v ? (F = "0.6", w = "none") : d === "pressed" ? (c = this.darkenColor(c, 0.1), p = this.darkenColor(p, 0.1), x = "scale(0.95)") : d === "focused" && (B = "0 0 0 3px #007AFF40") : (c = this.theme.colors.disabled, p = this.theme.colors.disabled, m = this.theme.colors.disabled, F = "0.6", w = "none");
261
+ const l = {
262
+ ...u
263
+ // Size-based styles (only if size provided)
264
+ };
265
+ return e && (l.backgroundColor = c, l.borderColor = p, l.borderWidth = k, m !== void 0 && (l.color = m)), C && (l.backgroundColor = C), E && (l.color = E), l.cursor = b ? "pointer" : "not-allowed", l.opacity = F, l.pointerEvents = w, l.transform = x !== void 0 ? x : "none", l.boxShadow = B, l.transition = "all 0.2s ease", l;
266
+ }
267
+ /**
268
+ * Handle button press with proper state management
269
+ */
270
+ async handlePress() {
271
+ if (!(!this.isEnabled() || this.isLoading()) && (this.triggerHapticFeedback(), this.setState("pressed"), setTimeout(() => {
272
+ this.isEnabled() && this.setState("normal");
273
+ }, 150), this.props.action))
274
+ try {
275
+ const e = this.props.action();
276
+ e && typeof e.then == "function" && await e;
277
+ } catch (e) {
278
+ console.error("Button action failed:", e);
279
+ }
280
+ }
281
+ /**
282
+ * Trigger haptic feedback (mobile Safari support)
283
+ */
284
+ triggerHapticFeedback() {
285
+ if (this.props.hapticFeedback !== !1 && typeof window < "u" && "navigator" in window) {
286
+ const e = window.navigator;
287
+ e.vibrate && e.vibrate(10);
288
+ }
289
+ }
290
+ /**
291
+ * Helper to darken a color for pressed states
292
+ */
293
+ darkenColor(e, t) {
294
+ if (e === "transparent") return e;
295
+ if (e.startsWith("#")) {
296
+ const s = e.slice(1), o = parseInt(s, 16), r = Math.max(0, Math.floor((o >> 16) * (1 - t))), n = Math.max(0, Math.floor((o >> 8 & 255) * (1 - t))), d = Math.max(0, Math.floor((o & 255) * (1 - t)));
297
+ return `#${(r << 16 | n << 8 | d).toString(16).padStart(6, "0")}`;
298
+ }
299
+ return e;
300
+ }
301
+ // ============================================================================
302
+ // Concatenation Support (Phase 3.1)
303
+ // ============================================================================
304
+ /**
305
+ * Concatenate this button with another concatenatable component
306
+ */
307
+ concat(e) {
308
+ const t = this.toSegment(), s = e.toSegment(), o = {
309
+ totalSegments: e instanceof M ? e.segments.length + 1 : 2,
310
+ accessibilityRole: e instanceof M ? this.mergeAccessibilityRoles("composite", e.metadata.accessibilityRole) : this.determineAccessibilityRole(e),
311
+ semanticStructure: "inline"
312
+ // Buttons are typically inline in concatenation
313
+ };
314
+ return new M([t, s], o);
315
+ }
316
+ /**
317
+ * Convert this button to a segment for concatenation
318
+ */
319
+ toSegment() {
320
+ return {
321
+ id: this.id,
322
+ component: this,
323
+ modifiers: [],
324
+ // Buttons don't typically have concatenation-specific modifiers
325
+ render: () => {
326
+ const e = this.render();
327
+ return Array.isArray(e) ? e[0] : e;
328
+ }
329
+ };
330
+ }
331
+ /**
332
+ * Check if this component supports concatenation
333
+ */
334
+ isConcatenatable() {
335
+ return !0;
336
+ }
337
+ /**
338
+ * Determine accessibility role for concatenation
339
+ */
340
+ determineAccessibilityRole(e) {
341
+ switch (e.constructor.name) {
342
+ case "EnhancedText":
343
+ return "composite";
344
+ // Button + Text = composite (interactive content)
345
+ case "EnhancedImage":
346
+ return "composite";
347
+ // Button + Image = composite (interactive content)
348
+ case "EnhancedButton":
349
+ case "EnhancedLink":
350
+ return "composite";
351
+ // Button + Interactive = composite
352
+ default:
353
+ return "composite";
354
+ }
355
+ }
356
+ /**
357
+ * Merge accessibility roles when combining components
358
+ */
359
+ mergeAccessibilityRoles(e, t) {
360
+ return "composite";
361
+ }
362
+ }
363
+ function y(i, e, t = {}) {
364
+ const s = { ...t, title: i, ...e && { action: e } }, o = new U(s);
365
+ return V(o);
366
+ }
367
+ const re = {
368
+ /**
369
+ * Filled button (primary)
370
+ */
371
+ Filled: (i, e, t = {}) => y(i, e, { ...t, variant: "filled" }),
372
+ /**
373
+ * Outlined button
374
+ */
375
+ Outlined: (i, e, t = {}) => y(i, e, { ...t, variant: "outlined" }),
376
+ /**
377
+ * Plain button (text only)
378
+ */
379
+ Plain: (i, e, t = {}) => y(i, e, { ...t, variant: "plain" }),
380
+ /**
381
+ * Bordered button
382
+ */
383
+ Bordered: (i, e, t = {}) => y(i, e, { ...t, variant: "bordered" }),
384
+ /**
385
+ * Destructive button
386
+ */
387
+ Destructive: (i, e, t = {}) => y(i, e, { ...t, role: "destructive" }),
388
+ /**
389
+ * Cancel button
390
+ */
391
+ Cancel: (i, e, t = {}) => y(i, e, { ...t, role: "cancel" })
392
+ }, N = `
393
+ @keyframes spin {
394
+ from { transform: rotate(0deg); }
395
+ to { transform: rotate(360deg); }
396
+ }
397
+ `;
398
+ if (typeof document < "u") {
399
+ const i = document.createElement("style");
400
+ i.textContent = N, document.head.appendChild(i);
401
+ }
402
+ export {
403
+ y as Button,
404
+ re as ButtonStyles,
405
+ U as EnhancedButton,
406
+ K as defaultButtonTheme
407
+ };
408
+ //# sourceMappingURL=Button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.js","sources":["../../src/components/Button.ts"],"sourcesContent":["/**\n * Enhanced Button Component (Phase 5.2)\n *\n * SwiftUI-inspired Button component with press states, variants,\n * and advanced interaction handling.\n */\n\nimport type { ModifiableComponent, ModifierBuilder } from '../modifiers/types'\nimport { createSignal, isSignal, createEffect } from '../reactive'\nimport type { Signal } from '../reactive/types'\nimport type { ComponentInstance, ComponentProps } from '../runtime/types'\nimport { text, h } from '../runtime/renderer'\nimport { withModifiers } from './wrapper'\nimport { useLifecycle } from '../lifecycle/hooks'\nimport { ColorAsset } from '../assets/ColorAsset'\nimport type { Concatenatable, ComponentSegment, ConcatenationMetadata } from '../concatenation/types'\nimport { ConcatenatedComponent } from '../concatenation/concatenated-component'\nimport {\n ComponentWithCSSClasses,\n type CSSClassesProps\n} from '../css-classes'\n\n/**\n * Button role types following SwiftUI patterns\n */\nexport type ButtonRole = 'destructive' | 'cancel' | 'none'\n\n/**\n * Button variants\n */\nexport type ButtonVariant =\n | 'filled' // Solid background (primary)\n | 'outlined' // Border with transparent background\n | 'plain' // No background or border\n | 'bordered' // Subtle border with light background\n | 'borderedProminent' // Prominent border style\n\n/**\n * Button size presets\n */\nexport type ButtonSize = 'small' | 'medium' | 'large'\n\n/**\n * Button state\n */\nexport type ButtonState = 'normal' | 'pressed' | 'disabled' | 'focused'\n\n/**\n * Button component properties with CSS classes support\n */\nexport interface ButtonProps extends ComponentProps, CSSClassesProps {\n // Content\n title?: string | (() => string) | Signal<string>\n systemImage?: string\n\n // Behavior\n action?: () => void | Promise<void>\n role?: ButtonRole\n isEnabled?: boolean | Signal<boolean>\n\n // Appearance\n variant?: ButtonVariant\n size?: ButtonSize\n tint?: string | Signal<string> | ColorAsset\n backgroundColor?: string | Signal<string> | ColorAsset\n foregroundColor?: string | Signal<string> | ColorAsset\n\n // State management\n isPressed?: Signal<boolean>\n isLoading?: boolean | Signal<boolean>\n\n // Accessibility\n accessibilityLabel?: string\n accessibilityHint?: string\n\n // Advanced\n controlSize?: ButtonSize\n hapticFeedback?: boolean\n}\n\n/**\n * Button theme configuration\n */\nexport interface ButtonTheme {\n colors: {\n primary: string\n secondary: string\n destructive: string\n background: string\n surface: string\n onPrimary: string\n onSecondary: string\n onSurface: string\n border: string\n disabled: string\n }\n spacing: {\n small: number\n medium: number\n large: number\n }\n borderRadius: {\n small: number\n medium: number\n large: number\n }\n typography: {\n small: { size: number; weight: string }\n medium: { size: number; weight: string }\n large: { size: number; weight: string }\n }\n}\n\n/**\n * Default button theme\n */\nexport const defaultButtonTheme: ButtonTheme = {\n colors: {\n primary: '#007AFF',\n secondary: '#5856D6',\n destructive: '#FF3B30',\n background: '#F2F2F7',\n surface: '#FFFFFF',\n onPrimary: '#FFFFFF',\n onSecondary: '#FFFFFF',\n onSurface: '#000000',\n border: '#C7C7CC',\n disabled: '#8E8E93',\n },\n spacing: {\n small: 8,\n medium: 12,\n large: 16,\n },\n borderRadius: {\n small: 6,\n medium: 8,\n large: 12,\n },\n typography: {\n small: { size: 14, weight: '500' },\n medium: { size: 16, weight: '500' },\n large: { size: 18, weight: '600' },\n },\n}\n\n/**\n * Enhanced Button component class with CSS classes support\n */\nexport class EnhancedButton extends ComponentWithCSSClasses implements ComponentInstance<ButtonProps>, Concatenatable<ButtonProps> {\n public readonly type = 'component' as const\n public readonly id: string\n public mounted = false\n public cleanup: (() => void)[] = []\n public stateSignal: () => ButtonState\n private setState: (value: ButtonState) => void\n public theme: ButtonTheme\n\n constructor(\n public props: ButtonProps,\n theme: ButtonTheme = defaultButtonTheme\n ) {\n super()\n this.id = `button-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`\n this.theme = theme\n\n // Create reactive state signals\n const [stateSignal, setState] = createSignal<ButtonState>('normal')\n this.stateSignal = stateSignal\n this.setState = setState\n\n // Set up DOM event listeners when component is ready\n this.setupDOMEventListeners()\n }\n\n /**\n * Set up DOM event listeners for button interactions\n */\n private setupDOMEventListeners(): void {\n useLifecycle(this, {\n onDOMReady: (_elements, primaryElement) => {\n if (primaryElement instanceof HTMLButtonElement) {\n this.attachInteractionEvents(primaryElement)\n this.setupReactiveStyles(primaryElement)\n }\n }\n })\n }\n\n /**\n * Set up reactive style updates based on state changes\n */\n private setupReactiveStyles(button: HTMLButtonElement): void {\n // Create a reactive effect that updates styles when state changes\n const effect = createEffect(() => {\n // Reading the state signal makes this effect reactive to state changes\n this.stateSignal()\n\n // Also watch for changes in enabled/loading states if they're reactive\n this.isEnabled()\n this.isLoading()\n\n // Watch color properties for reactivity\n const { tint, backgroundColor, foregroundColor } = this.props\n\n // Make reactive to tint changes\n if (tint && isSignal(tint)) {\n (tint as () => string)() // Read the signal to make effect reactive to it\n } else if (tint instanceof ColorAsset) {\n tint.resolve() // Make effect reactive to theme changes\n }\n\n // Make reactive to backgroundColor changes\n if (backgroundColor && isSignal(backgroundColor)) {\n (backgroundColor as () => string)()\n } else if (backgroundColor instanceof ColorAsset) {\n backgroundColor.resolve()\n }\n\n // Make reactive to foregroundColor changes\n if (foregroundColor && isSignal(foregroundColor)) {\n (foregroundColor as () => string)()\n } else if (foregroundColor instanceof ColorAsset) {\n foregroundColor.resolve()\n }\n\n // Trigger style update whenever any dependency changes\n const styles = this.getButtonStyles()\n this.applyStylesToElement(button, styles)\n })\n\n // Store the effect cleanup function\n this.cleanup.push(() => {\n // Clean up the reactive effect when component unmounts\n if (effect && typeof effect.dispose === 'function') {\n effect.dispose()\n }\n })\n }\n\n /**\n * Apply computed styles to the button element, respecting modifier-applied styles\n */\n private applyStylesToElement(element: HTMLButtonElement, styles: Record<string, any>): void {\n // Apply each style property to the element, but only if not already set by modifiers\n Object.entries(styles).forEach(([property, value]) => {\n const cssProperty = this.camelToKebabCase(property)\n if (typeof value === 'string' || typeof value === 'number') {\n // Check if this property is already set by a modifier\n const currentValue = element.style.getPropertyValue(cssProperty)\n const hasModifierValue = currentValue && currentValue !== '' && currentValue !== 'inherit'\n \n // Special handling for transform: Button state transforms should override modifier transforms\n if (cssProperty === 'transform') {\n element.style.setProperty(cssProperty, String(value))\n } else if (!hasModifierValue) {\n // For other properties, only apply Button styles if no modifier has set this property\n element.style.setProperty(cssProperty, String(value))\n }\n }\n })\n }\n\n /**\n * Convert camelCase to kebab-case for CSS properties\n */\n private camelToKebabCase(str: string): string {\n return str.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase()\n }\n\n /**\n * Resolve color value from string, signal, or asset\n */\n private resolveColorValue(color: string | Signal<string> | ColorAsset | undefined): string | undefined {\n if (!color) return undefined\n\n if (typeof color === 'string') {\n return color\n } else if (isSignal(color)) {\n return (color as () => string)()\n } else if (color instanceof ColorAsset) {\n return color.resolve()\n }\n\n return undefined\n }\n\n /**\n * Attach interaction event listeners to the button element\n */\n private attachInteractionEvents(button: HTMLButtonElement): void {\n // Helper to check if button is currently enabled\n const isCurrentlyEnabled = (): boolean => {\n const enabled = this.isEnabled()\n return typeof enabled === 'boolean' ? enabled : enabled()\n }\n\n // Store global mouseup handler reference for cleanup\n let globalMouseUpHandler: ((event: MouseEvent) => void) | null = null\n\n // Mouse/pointer events for press states\n const handleMouseDown = (event: MouseEvent) => {\n if (isCurrentlyEnabled() && event.button === 0) { // Only left click\n this.setState('pressed')\n \n // Add global mouseup listener to handle mouseup outside the button\n globalMouseUpHandler = () => {\n if (this.stateSignal() === 'pressed') {\n this.setState('normal')\n }\n // Remove the global listener after handling\n if (globalMouseUpHandler) {\n document.removeEventListener('mouseup', globalMouseUpHandler)\n globalMouseUpHandler = null\n }\n }\n document.addEventListener('mouseup', globalMouseUpHandler)\n }\n }\n\n const handleMouseUp = () => {\n if (isCurrentlyEnabled() && this.stateSignal() === 'pressed') {\n this.setState('normal')\n // Clean up global listener if it exists\n if (globalMouseUpHandler) {\n document.removeEventListener('mouseup', globalMouseUpHandler)\n globalMouseUpHandler = null\n }\n }\n }\n\n const handleMouseLeave = () => {\n if (isCurrentlyEnabled()) {\n this.setState('normal')\n // Clean up global listener if it exists\n if (globalMouseUpHandler) {\n document.removeEventListener('mouseup', globalMouseUpHandler)\n globalMouseUpHandler = null\n }\n }\n }\n\n // Focus events\n const handleFocus = () => {\n if (isCurrentlyEnabled() && this.stateSignal() !== 'pressed') {\n this.setState('focused')\n }\n }\n\n const handleBlur = () => {\n if (isCurrentlyEnabled() && this.stateSignal() === 'focused') {\n this.setState('normal')\n }\n }\n\n // Keyboard events\n const handleKeyDown = (event: KeyboardEvent) => {\n if (isCurrentlyEnabled() && (event.key === ' ' || event.key === 'Enter')) {\n event.preventDefault()\n this.setState('pressed')\n }\n }\n\n const handleKeyUp = (event: KeyboardEvent) => {\n if (isCurrentlyEnabled() && (event.key === ' ' || event.key === 'Enter')) {\n event.preventDefault()\n this.setState('normal')\n // Trigger the action for keyboard activation\n this.props.action?.()\n }\n }\n\n // Add event listeners\n button.addEventListener('mousedown', handleMouseDown)\n button.addEventListener('mouseup', handleMouseUp)\n button.addEventListener('mouseleave', handleMouseLeave)\n button.addEventListener('focus', handleFocus)\n button.addEventListener('blur', handleBlur)\n button.addEventListener('keydown', handleKeyDown)\n button.addEventListener('keyup', handleKeyUp)\n\n // Store cleanup functions\n this.cleanup.push(() => {\n button.removeEventListener('mousedown', handleMouseDown)\n button.removeEventListener('mouseup', handleMouseUp)\n button.removeEventListener('mouseleave', handleMouseLeave)\n button.removeEventListener('focus', handleFocus)\n button.removeEventListener('blur', handleBlur)\n button.removeEventListener('keydown', handleKeyDown)\n button.removeEventListener('keyup', handleKeyUp)\n \n // Clean up global mouseup listener if it exists\n if (globalMouseUpHandler) {\n document.removeEventListener('mouseup', globalMouseUpHandler)\n globalMouseUpHandler = null\n }\n })\n }\n\n /**\n * Check if button is enabled\n */\n isEnabled(): boolean | (() => boolean) {\n const { isEnabled } = this.props\n\n if (isEnabled === undefined) return true\n if (typeof isEnabled === 'boolean') return isEnabled\n if (isSignal(isEnabled)) return isEnabled as () => boolean\n return true\n }\n\n\n /**\n * Render the button component\n */\n render() {\n // Use reactive pattern - pass signals/functions directly to runtime\n const enabled = this.isEnabled() // Get signal/value for enabled state\n\n // Create button content - always include title\n const children = []\n\n // System image (icon) - only if specified\n if (this.props.systemImage) {\n children.push(h('span', {\n class: 'button-icon',\n style: {\n marginRight: '8px',\n fontSize: '1.2em',\n },\n }, text(this.props.systemImage)))\n }\n\n // Button title - use h() helper for proper text node handling\n children.push(h('span', {\n class: 'button-title'\n }, text(this.props.title || '')))\n\n // Process CSS classes for this component\n const baseClasses = ['tachui-button']\n const classString = this.createClassString(this.props, baseClasses)\n\n // Create button element as DOMNode object with modifier metadata\n const buttonElement = {\n type: 'element' as const,\n tag: 'button',\n props: {\n className: classString,\n type: 'button',\n disabled: typeof enabled === 'boolean' ? !enabled : () => !enabled(), // Invert enabled to disabled\n onClick: this.props.action\n ? () => {\n try {\n this.props.action?.()\n } catch (error) {\n console.error('Button action error:', error)\n }\n }\n : undefined,\n // Pass through debug label for debug system\n ...(this.props.debugLabel && { debugLabel: this.props.debugLabel }),\n },\n children,\n // Attach component metadata for modifier processing\n componentMetadata: {\n id: this.id,\n type: 'Button',\n // Note: modifiers are attached automatically by the modifier system\n },\n }\n\n return [buttonElement]\n }\n\n /**\n * Check if button is in loading state\n */\n isLoading(): boolean {\n const { isLoading } = this.props\n\n if (isLoading === undefined) return false\n if (typeof isLoading === 'boolean') return isLoading\n if (isSignal(isLoading)) return (isLoading as () => boolean)()\n return false\n }\n\n /**\n * Check if the button has color-related modifiers applied\n */\n private hasColorModifiers(): boolean {\n // Try to get modifiers from the wrapper component first\n let modifiers = (this as any).modifiers\n\n // If not found on this component, check if we're wrapped and get from wrapper\n if (!modifiers && (this as any).modifierBuilder) {\n modifiers = (this as any).modifierBuilder.modifiers\n }\n\n // Also check if we're part of a modifiable component structure\n if (!modifiers && (this as any).modifiableComponent) {\n modifiers = (this as any).modifiableComponent.modifiers\n }\n\n if (!modifiers || !Array.isArray(modifiers)) {\n return false\n }\n\n // Check for any modifier that affects color\n return modifiers.some((modifier: any) => {\n // Check AppearanceModifier\n if (modifier.type === 'appearance' || modifier.constructor?.name === 'AppearanceModifier') {\n return modifier.properties &&\n (modifier.properties.foregroundColor !== undefined ||\n modifier.properties.color !== undefined)\n }\n\n // Check for any other modifiers that might affect color\n if (modifier.properties) {\n const colorProps = ['foregroundColor', 'color', 'textColor']\n return colorProps.some(prop => modifier.properties[prop] !== undefined)\n }\n\n return false\n })\n }\n\n /**\n * Check if the button has typography-related modifiers applied\n */\n private hasTypographyModifiers(): boolean {\n // Try to get modifiers from the wrapper component first\n let modifiers = (this as any).modifiers\n\n // If not found on this component, check if we're wrapped and get from wrapper\n if (!modifiers && (this as any).modifierBuilder) {\n modifiers = (this as any).modifierBuilder.modifiers\n }\n\n // Also check if we're part of a modifiable component structure\n if (!modifiers && (this as any).modifiableComponent) {\n modifiers = (this as any).modifiableComponent.modifiers\n }\n\n if (!modifiers || !Array.isArray(modifiers)) {\n return false\n }\n\n // Check for any modifier that affects text transformation\n const hasTypography = modifiers.some((modifier: any) => {\n // Check TypographyModifier\n if (modifier.type === 'typography' || modifier.constructor?.name === 'TypographyModifier') {\n return modifier.properties &&\n (modifier.properties.transform !== undefined ||\n modifier.properties.textTransform !== undefined)\n }\n\n return false\n })\n\n return hasTypography\n }\n\n /**\n * Get computed button styles based on variant, size, role, and state\n */\n // biome-ignore lint/suspicious/noExplicitAny: CSS styles require flexible property types\n getButtonStyles(): Record<string, any> {\n const { variant, size, role = 'none', tint, backgroundColor: bgColorProp, foregroundColor: fgColorProp } = this.props\n const state = this.stateSignal()\n const isLoading = this.isLoading()\n const isEnabled = this.isEnabled()\n\n // Check if the component has color-related or typography modifiers applied\n const hasColorModifiers = this.hasColorModifiers()\n const hasTypographyModifiers = this.hasTypographyModifiers()\n\n // Base styles - minimal defaults, inherit from parent but allow modifiers to override\n const baseStyles: Record<string, any> = {\n // Only set color property if no modifiers will handle it\n // This prevents conflicts between Button styles and AppearanceModifier\n ...((!hasColorModifiers && !fgColorProp && !variant) && { color: 'inherit' }),\n // Only set text-related properties if no typography modifiers will handle them\n // This prevents conflicts between Button styles and TypographyModifier\n ...(!hasTypographyModifiers && {\n fontStyle: 'inherit',\n lineHeight: 'inherit',\n textTransform: 'inherit',\n textDecoration: 'inherit',\n textIndent: 'inherit',\n textShadow: 'inherit',\n wordSpacing: 'inherit',\n textOrientation: 'inherit',\n writingMode: 'inherit',\n direction: 'inherit',\n }),\n // Let modifiers control: fontFamily, fontSize, fontWeight, letterSpacing, textAlign\n }\n\n // Only apply size-based styles if size is explicitly provided\n if (size) {\n const sizeConfig = this.theme.spacing[size] || this.theme.spacing.medium\n const borderRadius = this.theme.borderRadius[size] || this.theme.borderRadius.medium\n const typography = this.theme.typography[size] || this.theme.typography.medium\n\n const minHeights = {\n small: '32px',\n medium: '40px',\n large: '48px',\n }\n\n baseStyles.padding = `${sizeConfig}px ${sizeConfig * 2}px`\n baseStyles.borderRadius = `${borderRadius}px`\n baseStyles.fontSize = `${typography.size}px`\n baseStyles.fontWeight = typography.weight\n baseStyles.minHeight = minHeights[size]\n }\n\n let backgroundColor = 'transparent'\n let borderColor = 'transparent'\n let borderWidth = '1px'\n let color = undefined // Will be set by variant or remain undefined to use baseStyles.color\n\n // Resolve color values using helper method\n const tintColor = this.resolveColorValue(tint)\n const customBackgroundColor = this.resolveColorValue(bgColorProp)\n const customForegroundColor = this.resolveColorValue(fgColorProp)\n\n // Apply variant styles ONLY if variant is explicitly provided\n if (variant) {\n const fallbackTintColor = tintColor || this.theme.colors.primary\n\n switch (variant) {\n case 'filled':\n if (role === 'destructive') {\n backgroundColor = this.theme.colors.destructive\n } else if (role === 'cancel') {\n backgroundColor = this.theme.colors.secondary\n } else {\n backgroundColor = fallbackTintColor\n }\n color = this.theme.colors.onPrimary\n break\n case 'outlined':\n borderColor = role === 'destructive' ? this.theme.colors.destructive : fallbackTintColor\n color = role === 'destructive' ? this.theme.colors.destructive : fallbackTintColor\n break\n case 'bordered':\n backgroundColor = this.theme.colors.background\n borderColor = this.theme.colors.border\n break\n case 'borderedProminent':\n backgroundColor = this.theme.colors.surface\n borderColor = this.theme.colors.primary\n borderWidth = '2px'\n break\n case 'plain':\n // Keep defaults (transparent)\n break\n }\n }\n\n // Apply custom colors if provided (override variant defaults)\n if (customBackgroundColor) {\n backgroundColor = customBackgroundColor\n }\n if (customForegroundColor) {\n color = customForegroundColor\n }\n\n // Apply state modifications\n let opacity = '1'\n let pointerEvents = 'auto'\n let transform = undefined // Only set when needed\n let boxShadow = 'none'\n\n if (!isEnabled) {\n backgroundColor = this.theme.colors.disabled\n borderColor = this.theme.colors.disabled\n color = this.theme.colors.disabled\n opacity = '0.6'\n pointerEvents = 'none'\n } else if (isLoading) {\n opacity = '0.6'\n pointerEvents = 'none'\n } else if (state === 'pressed') {\n // Darken colors for pressed state\n backgroundColor = this.darkenColor(backgroundColor, 0.1)\n borderColor = this.darkenColor(borderColor, 0.1)\n transform = 'scale(0.95)'\n } else if (state === 'focused') {\n boxShadow = '0 0 0 3px #007AFF40'\n }\n\n // Build final styles object - only include styles when explicitly needed\n const finalStyles: Record<string, any> = {\n ...baseStyles, // Size-based styles (only if size provided)\n }\n\n // Only apply variant/color styles if variant is provided\n if (variant) {\n finalStyles.backgroundColor = backgroundColor\n finalStyles.borderColor = borderColor\n finalStyles.borderWidth = borderWidth\n if (color !== undefined) {\n finalStyles.color = color\n }\n }\n\n // Apply custom color overrides even without variant\n if (customBackgroundColor) {\n finalStyles.backgroundColor = customBackgroundColor\n }\n if (customForegroundColor) {\n finalStyles.color = customForegroundColor\n }\n\n // Always apply interaction and state styles\n finalStyles.cursor = isEnabled ? 'pointer' : 'not-allowed'\n finalStyles.opacity = opacity\n finalStyles.pointerEvents = pointerEvents\n\n // Always apply transform - use 'none' when not needed to properly clear previous values\n finalStyles.transform = transform !== undefined ? transform : 'none'\n finalStyles.boxShadow = boxShadow\n\n finalStyles.transition = 'all 0.2s ease'\n\n return finalStyles\n }\n\n /**\n * Handle button press with proper state management\n */\n async handlePress(): Promise<void> {\n if (!this.isEnabled() || this.isLoading()) return\n\n // Trigger haptic feedback (if available)\n this.triggerHapticFeedback()\n\n this.setState('pressed')\n\n // Reset state after animation\n setTimeout(() => {\n if (this.isEnabled()) {\n this.setState('normal')\n }\n }, 150)\n\n // Execute action if provided\n if (this.props.action) {\n try {\n const result = this.props.action()\n // Handle if action returns a Promise\n if (result && typeof result.then === 'function') {\n await result\n }\n } catch (error) {\n console.error('Button action failed:', error)\n }\n }\n }\n\n /**\n * Trigger haptic feedback (mobile Safari support)\n */\n private triggerHapticFeedback(): void {\n // Check if haptic feedback is disabled\n if (this.props.hapticFeedback === false) return\n\n if (typeof window !== 'undefined' && 'navigator' in window) {\n // biome-ignore lint/suspicious/noExplicitAny: Navigator API requires dynamic access\n const navigator = window.navigator as any\n if (navigator.vibrate) {\n navigator.vibrate(10) // Short vibration\n }\n }\n }\n\n /**\n * Helper to darken a color for pressed states\n */\n private darkenColor(color: string, amount: number): string {\n if (color === 'transparent') return color\n\n // Simple darkening for hex colors\n if (color.startsWith('#')) {\n const hex = color.slice(1)\n const num = parseInt(hex, 16)\n const r = Math.max(0, Math.floor((num >> 16) * (1 - amount)))\n const g = Math.max(0, Math.floor(((num >> 8) & 0x00ff) * (1 - amount)))\n const b = Math.max(0, Math.floor((num & 0x0000ff) * (1 - amount)))\n return `#${((r << 16) | (g << 8) | b).toString(16).padStart(6, '0')}`\n }\n\n return color\n }\n\n // ============================================================================\n // Concatenation Support (Phase 3.1)\n // ============================================================================\n\n /**\n * Concatenate this button with another concatenatable component\n */\n concat<U extends Concatenatable<any>>(other: U): ConcatenatedComponent<ButtonProps | U> {\n const thisSegment = this.toSegment()\n const otherSegment = other.toSegment()\n\n const metadata: ConcatenationMetadata = {\n totalSegments: other instanceof ConcatenatedComponent ? other.segments.length + 1 : 2,\n accessibilityRole: other instanceof ConcatenatedComponent\n ? this.mergeAccessibilityRoles('composite', other.metadata.accessibilityRole)\n : this.determineAccessibilityRole(other),\n semanticStructure: 'inline' // Buttons are typically inline in concatenation\n }\n\n return new ConcatenatedComponent([thisSegment, otherSegment], metadata)\n }\n\n /**\n * Convert this button to a segment for concatenation\n */\n toSegment(): ComponentSegment {\n return {\n id: this.id,\n component: this,\n modifiers: [], // Buttons don't typically have concatenation-specific modifiers\n render: () => {\n const rendered = this.render()\n return Array.isArray(rendered) ? rendered[0] : rendered\n }\n }\n }\n\n /**\n * Check if this component supports concatenation\n */\n isConcatenatable(): boolean {\n return true\n }\n\n /**\n * Determine accessibility role for concatenation\n */\n private determineAccessibilityRole(other: Concatenatable): 'text' | 'group' | 'composite' {\n const componentType = (other as any).constructor.name\n\n switch (componentType) {\n case 'EnhancedText':\n return 'composite' // Button + Text = composite (interactive content)\n case 'EnhancedImage':\n return 'composite' // Button + Image = composite (interactive content)\n case 'EnhancedButton':\n case 'EnhancedLink':\n return 'composite' // Button + Interactive = composite\n default:\n return 'composite'\n }\n }\n\n /**\n * Merge accessibility roles when combining components\n */\n private mergeAccessibilityRoles(\n _thisRole: 'text' | 'group' | 'composite',\n _existingRole: 'text' | 'group' | 'composite'\n ): 'text' | 'group' | 'composite' {\n // Buttons always contribute as 'composite' (interactive), so result is always composite\n return 'composite'\n }\n}\n\n/**\n * Create enhanced Button component with modifier support\n */\nexport function Button(\n title: string | (() => string) | Signal<string>,\n action?: () => void | Promise<void>,\n props: Omit<ButtonProps, 'title' | 'action'> = {}\n): ModifiableComponent<ButtonProps> & {\n modifier: ModifierBuilder<ModifiableComponent<ButtonProps>>\n} {\n const buttonProps: ButtonProps = { ...props, title, ...(action && { action }) }\n const component = new EnhancedButton(buttonProps)\n return withModifiers(component)\n}\n\n\n/**\n * Button variant shortcuts\n */\nexport const ButtonStyles = {\n /**\n * Filled button (primary)\n */\n Filled: (\n title: string | (() => string) | Signal<string>,\n action?: () => void | Promise<void>,\n props: Omit<ButtonProps, 'title' | 'action' | 'variant'> = {}\n ) => Button(title, action, { ...props, variant: 'filled' }),\n\n /**\n * Outlined button\n */\n Outlined: (\n title: string | (() => string) | Signal<string>,\n action?: () => void | Promise<void>,\n props: Omit<ButtonProps, 'title' | 'action' | 'variant'> = {}\n ) => Button(title, action, { ...props, variant: 'outlined' }),\n\n /**\n * Plain button (text only)\n */\n Plain: (\n title: string | (() => string) | Signal<string>,\n action?: () => void | Promise<void>,\n props: Omit<ButtonProps, 'title' | 'action' | 'variant'> = {}\n ) => Button(title, action, { ...props, variant: 'plain' }),\n\n /**\n * Bordered button\n */\n Bordered: (\n title: string | (() => string) | Signal<string>,\n action?: () => void | Promise<void>,\n props: Omit<ButtonProps, 'title' | 'action' | 'variant'> = {}\n ) => Button(title, action, { ...props, variant: 'bordered' }),\n\n /**\n * Destructive button\n */\n Destructive: (\n title: string | (() => string) | Signal<string>,\n action?: () => void | Promise<void>,\n props: Omit<ButtonProps, 'title' | 'action' | 'role'> = {}\n ) => Button(title, action, { ...props, role: 'destructive' }),\n\n /**\n * Cancel button\n */\n Cancel: (\n title: string | (() => string) | Signal<string>,\n action?: () => void | Promise<void>,\n props: Omit<ButtonProps, 'title' | 'action' | 'role'> = {}\n ) => Button(title, action, { ...props, role: 'cancel' }),\n}\n\n/**\n * CSS animations for button loading spinner\n */\nconst buttonAnimations = `\n@keyframes spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n`\n\n// Inject animations into document head\nif (typeof document !== 'undefined') {\n const style = document.createElement('style')\n style.textContent = buttonAnimations\n document.head.appendChild(style)\n}\n"],"names":["defaultButtonTheme","EnhancedButton","ComponentWithCSSClasses","props","theme","__publicField","stateSignal","setState","createSignal","useLifecycle","_elements","primaryElement","button","effect","createEffect","tint","backgroundColor","foregroundColor","isSignal","ColorAsset","styles","element","property","value","cssProperty","currentValue","str","color","isCurrentlyEnabled","enabled","globalMouseUpHandler","handleMouseDown","event","handleMouseUp","handleMouseLeave","handleFocus","handleBlur","handleKeyDown","handleKeyUp","isEnabled","children","h","text","baseClasses","error","isLoading","modifiers","modifier","prop","variant","size","role","bgColorProp","fgColorProp","state","hasColorModifiers","hasTypographyModifiers","baseStyles","sizeConfig","borderRadius","typography","minHeights","borderColor","borderWidth","tintColor","customBackgroundColor","customForegroundColor","fallbackTintColor","opacity","pointerEvents","transform","boxShadow","finalStyles","result","navigator","amount","hex","num","g","b","other","thisSegment","otherSegment","metadata","ConcatenatedComponent","rendered","_thisRole","_existingRole","Button","title","action","buttonProps","component","withModifiers","ButtonStyles","buttonAnimations","style"],"mappings":";;;;;;;;;;;;;;AAoHO,MAAMA,IAAkC;AAAA,EAC7C,QAAQ;AAAA,IACN,SAAS;AAAA,IACT,WAAW;AAAA,IACX,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,WAAW;AAAA,IACX,aAAa;AAAA,IACb,WAAW;AAAA,IACX,QAAQ;AAAA,IACR,UAAU;AAAA,EAAA;AAAA,EAEZ,SAAS;AAAA,IACP,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EAAA;AAAA,EAET,cAAc;AAAA,IACZ,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EAAA;AAAA,EAET,YAAY;AAAA,IACV,OAAO,EAAE,MAAM,IAAI,QAAQ,MAAA;AAAA,IAC3B,QAAQ,EAAE,MAAM,IAAI,QAAQ,MAAA;AAAA,IAC5B,OAAO,EAAE,MAAM,IAAI,QAAQ,MAAA;AAAA,EAAM;AAErC;AAKO,MAAMC,UAAuBC,EAA+F;AAAA,EASjI,YACSC,GACPC,IAAqBJ,GACrB;AACA,UAAA,GAHO,KAAA,QAAAG,GATTE,EAAA,MAAgB,QAAO,WAAA,GACvBA,EAAA,MAAgB,IAAA,GAChBA,EAAA,MAAO,WAAU,EAAA,GACjBA,EAAA,MAAO,WAA0B,EAAC,GAClCA,EAAA,MAAO,aAAA,GACPA,EAAA,MAAQ,UAAA,GACRA,EAAA,MAAO,OAAA,GAOL,KAAK,KAAK,UAAU,KAAK,IAAA,CAAK,IAAI,KAAK,OAAA,EAAS,SAAS,EAAE,EAAE,OAAO,GAAG,CAAC,CAAC,IACzE,KAAK,QAAQD;AAGb,UAAM,CAACE,GAAaC,CAAQ,IAAIC,EAA0B,QAAQ;AAClE,SAAK,cAAcF,GACnB,KAAK,WAAWC,GAGhB,KAAK,uBAAA;AAAA,EACP;AAAA;AAAA;AAAA;AAAA,EAKQ,yBAA+B;AACrC,IAAAE,EAAa,MAAM;AAAA,MACjB,YAAY,CAACC,GAAWC,MAAmB;AACzC,QAAIA,aAA0B,sBAC5B,KAAK,wBAAwBA,CAAc,GAC3C,KAAK,oBAAoBA,CAAc;AAAA,MAE3C;AAAA,IAAA,CACD;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKQ,oBAAoBC,GAAiC;AAE3D,UAAMC,IAASC,EAAa,MAAM;AAEhC,WAAK,YAAA,GAGL,KAAK,UAAA,GACL,KAAK,UAAA;AAGL,YAAM,EAAE,MAAAC,GAAM,iBAAAC,GAAiB,iBAAAC,EAAA,IAAoB,KAAK;AAGxD,MAAIF,KAAQG,EAASH,CAAI,IACtBA,EAAA,IACQA,aAAgBI,KACzBJ,EAAK,QAAA,GAIHC,KAAmBE,EAASF,CAAe,IAC5CA,EAAA,IACQA,aAA2BG,KACpCH,EAAgB,QAAA,GAIdC,KAAmBC,EAASD,CAAe,IAC5CA,EAAA,IACQA,aAA2BE,KACpCF,EAAgB,QAAA;AAIlB,YAAMG,IAAS,KAAK,gBAAA;AACpB,WAAK,qBAAqBR,GAAQQ,CAAM;AAAA,IAC1C,CAAC;AAGD,SAAK,QAAQ,KAAK,MAAM;AAEtB,MAAIP,KAAU,OAAOA,EAAO,WAAY,cACtCA,EAAO,QAAA;AAAA,IAEX,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKQ,qBAAqBQ,GAA4BD,GAAmC;AAE1F,WAAO,QAAQA,CAAM,EAAE,QAAQ,CAAC,CAACE,GAAUC,CAAK,MAAM;AACpD,YAAMC,IAAc,KAAK,iBAAiBF,CAAQ;AAClD,UAAI,OAAOC,KAAU,YAAY,OAAOA,KAAU,UAAU;AAE1D,cAAME,IAAeJ,EAAQ,MAAM,iBAAiBG,CAAW;AAI/D,QAAIA,MAAgB,cAClBH,EAAQ,MAAM,YAAYG,GAAa,OAAOD,CAAK,CAAC,IAJ7BE,KAAgBA,MAAiB,MAAMA,MAAiB,aAO/EJ,EAAQ,MAAM,YAAYG,GAAa,OAAOD,CAAK,CAAC;AAAA,MAExD;AAAA,IACF,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKQ,iBAAiBG,GAAqB;AAC5C,WAAOA,EAAI,QAAQ,sBAAsB,OAAO,EAAE,YAAA;AAAA,EACpD;AAAA;AAAA;AAAA;AAAA,EAKQ,kBAAkBC,GAA6E;AACrG,QAAKA,GAEL;AAAA,UAAI,OAAOA,KAAU;AACnB,eAAOA;AACT,UAAWT,EAASS,CAAK;AACvB,eAAQA,EAAA;AACV,UAAWA,aAAiBR;AAC1B,eAAOQ,EAAM,QAAA;AAAA;AAAA,EAIjB;AAAA;AAAA;AAAA;AAAA,EAKQ,wBAAwBf,GAAiC;AAE/D,UAAMgB,IAAqB,MAAe;AACxC,YAAMC,IAAU,KAAK,UAAA;AACrB,aAAO,OAAOA,KAAY,YAAYA,IAAUA,EAAA;AAAA,IAClD;AAGA,QAAIC,IAA6D;AAGjE,UAAMC,IAAkB,CAACC,MAAsB;AAC7C,MAAIJ,EAAA,KAAwBI,EAAM,WAAW,MAC3C,KAAK,SAAS,SAAS,GAGvBF,IAAuB,MAAM;AAC3B,QAAI,KAAK,YAAA,MAAkB,aACzB,KAAK,SAAS,QAAQ,GAGpBA,MACF,SAAS,oBAAoB,WAAWA,CAAoB,GAC5DA,IAAuB;AAAA,MAE3B,GACA,SAAS,iBAAiB,WAAWA,CAAoB;AAAA,IAE7D,GAEMG,IAAgB,MAAM;AAC1B,MAAIL,EAAA,KAAwB,KAAK,YAAA,MAAkB,cACjD,KAAK,SAAS,QAAQ,GAElBE,MACF,SAAS,oBAAoB,WAAWA,CAAoB,GAC5DA,IAAuB;AAAA,IAG7B,GAEMI,IAAmB,MAAM;AAC7B,MAAIN,QACF,KAAK,SAAS,QAAQ,GAElBE,MACF,SAAS,oBAAoB,WAAWA,CAAoB,GAC5DA,IAAuB;AAAA,IAG7B,GAGMK,IAAc,MAAM;AACxB,MAAIP,EAAA,KAAwB,KAAK,YAAA,MAAkB,aACjD,KAAK,SAAS,SAAS;AAAA,IAE3B,GAEMQ,IAAa,MAAM;AACvB,MAAIR,EAAA,KAAwB,KAAK,YAAA,MAAkB,aACjD,KAAK,SAAS,QAAQ;AAAA,IAE1B,GAGMS,IAAgB,CAACL,MAAyB;AAC9C,MAAIJ,QAAyBI,EAAM,QAAQ,OAAOA,EAAM,QAAQ,aAC9DA,EAAM,eAAA,GACN,KAAK,SAAS,SAAS;AAAA,IAE3B,GAEMM,IAAc,CAACN,MAAyB;AAC5C,MAAIJ,QAAyBI,EAAM,QAAQ,OAAOA,EAAM,QAAQ,aAC9DA,EAAM,eAAA,GACN,KAAK,SAAS,QAAQ,GAEtB,KAAK,MAAM,SAAA;AAAA,IAEf;AAGA,IAAApB,EAAO,iBAAiB,aAAamB,CAAe,GACpDnB,EAAO,iBAAiB,WAAWqB,CAAa,GAChDrB,EAAO,iBAAiB,cAAcsB,CAAgB,GACtDtB,EAAO,iBAAiB,SAASuB,CAAW,GAC5CvB,EAAO,iBAAiB,QAAQwB,CAAU,GAC1CxB,EAAO,iBAAiB,WAAWyB,CAAa,GAChDzB,EAAO,iBAAiB,SAAS0B,CAAW,GAG5C,KAAK,QAAQ,KAAK,MAAM;AACtB,MAAA1B,EAAO,oBAAoB,aAAamB,CAAe,GACvDnB,EAAO,oBAAoB,WAAWqB,CAAa,GACnDrB,EAAO,oBAAoB,cAAcsB,CAAgB,GACzDtB,EAAO,oBAAoB,SAASuB,CAAW,GAC/CvB,EAAO,oBAAoB,QAAQwB,CAAU,GAC7CxB,EAAO,oBAAoB,WAAWyB,CAAa,GACnDzB,EAAO,oBAAoB,SAAS0B,CAAW,GAG3CR,MACF,SAAS,oBAAoB,WAAWA,CAAoB,GAC5DA,IAAuB;AAAA,IAE3B,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKA,YAAuC;AACrC,UAAM,EAAE,WAAAS,MAAc,KAAK;AAE3B,WAAIA,MAAc,SAAkB,KAChC,OAAOA,KAAc,aACrBrB,EAASqB,CAAS,IAAUA,IACzB;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAMA,SAAS;AAEP,UAAMV,IAAU,KAAK,UAAA,GAGfW,IAAW,CAAA;AAGjB,IAAI,KAAK,MAAM,eACbA,EAAS,KAAKC,EAAE,QAAQ;AAAA,MACtB,OAAO;AAAA,MACP,OAAO;AAAA,QACL,aAAa;AAAA,QACb,UAAU;AAAA,MAAA;AAAA,IACZ,GACCC,EAAK,KAAK,MAAM,WAAW,CAAC,CAAC,GAIlCF,EAAS,KAAKC,EAAE,QAAQ;AAAA,MACtB,OAAO;AAAA,IAAA,GACNC,EAAK,KAAK,MAAM,SAAS,EAAE,CAAC,CAAC;AAGhC,UAAMC,IAAc,CAAC,eAAe;AAgCpC,WAAO,CA5Be;AAAA,MACpB,MAAM;AAAA,MACN,KAAK;AAAA,MACL,OAAO;AAAA,QACL,WAPgB,KAAK,kBAAkB,KAAK,OAAOA,CAAW;AAAA,QAQ9D,MAAM;AAAA,QACN,UAAU,OAAOd,KAAY,YAAY,CAACA,IAAU,MAAM,CAACA,EAAA;AAAA;AAAA,QAC3D,SAAS,KAAK,MAAM,SAChB,MAAM;AACJ,cAAI;AACF,iBAAK,MAAM,SAAA;AAAA,UACb,SAASe,GAAO;AACd,oBAAQ,MAAM,wBAAwBA,CAAK;AAAA,UAC7C;AAAA,QACF,IACA;AAAA;AAAA,QAEJ,GAAI,KAAK,MAAM,cAAc,EAAE,YAAY,KAAK,MAAM,WAAA;AAAA,MAAW;AAAA,MAEnE,UAAAJ;AAAA;AAAA,MAEA,mBAAmB;AAAA,QACjB,IAAI,KAAK;AAAA,QACT,MAAM;AAAA;AAAA,MAAA;AAAA,IAER,CAGmB;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA,EAKA,YAAqB;AACnB,UAAM,EAAE,WAAAK,MAAc,KAAK;AAE3B,WAAIA,MAAc,SAAkB,KAChC,OAAOA,KAAc,YAAkBA,IACvC3B,EAAS2B,CAAS,IAAWA,EAAA,IAC1B;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKQ,oBAA6B;AAEnC,QAAIC,IAAa,KAAa;AAY9B,WATI,CAACA,KAAc,KAAa,oBAC9BA,IAAa,KAAa,gBAAgB,YAIxC,CAACA,KAAc,KAAa,wBAC9BA,IAAa,KAAa,oBAAoB,YAG5C,CAACA,KAAa,CAAC,MAAM,QAAQA,CAAS,IACjC,KAIFA,EAAU,KAAK,CAACC,MAEjBA,EAAS,SAAS,gBAAgBA,EAAS,aAAa,SAAS,uBAC5DA,EAAS,eACRA,EAAS,WAAW,oBAAoB,UACxCA,EAAS,WAAW,UAAU,UAIpCA,EAAS,aACQ,CAAC,mBAAmB,SAAS,WAAW,EACzC,KAAK,CAAAC,MAAQD,EAAS,WAAWC,CAAI,MAAM,MAAS,IAGjE,EACR;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKQ,yBAAkC;AAExC,QAAIF,IAAa,KAAa;AAY9B,WATI,CAACA,KAAc,KAAa,oBAC9BA,IAAa,KAAa,gBAAgB,YAIxC,CAACA,KAAc,KAAa,wBAC9BA,IAAa,KAAa,oBAAoB,YAG5C,CAACA,KAAa,CAAC,MAAM,QAAQA,CAAS,IACjC,KAIaA,EAAU,KAAK,CAACC,MAEhCA,EAAS,SAAS,gBAAgBA,EAAS,aAAa,SAAS,uBAC5DA,EAAS,eACRA,EAAS,WAAW,cAAc,UAClCA,EAAS,WAAW,kBAAkB,UAGzC,EACR;AAAA,EAGH;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,kBAAuC;AACrC,UAAM,EAAE,SAAAE,GAAS,MAAAC,GAAM,MAAAC,IAAO,QAAQ,MAAApC,GAAM,iBAAiBqC,GAAa,iBAAiBC,EAAA,IAAgB,KAAK,OAC1GC,IAAQ,KAAK,YAAA,GACbT,IAAY,KAAK,UAAA,GACjBN,IAAY,KAAK,UAAA,GAGjBgB,IAAoB,KAAK,kBAAA,GACzBC,IAAyB,KAAK,uBAAA,GAG9BC,IAAkC;AAAA;AAAA;AAAA,MAGtC,GAAK,CAACF,KAAqB,CAACF,KAAe,CAACJ,KAAY,EAAE,OAAO,UAAA;AAAA;AAAA;AAAA,MAGjE,GAAI,CAACO,KAA0B;AAAA,QAC7B,WAAW;AAAA,QACX,YAAY;AAAA,QACZ,eAAe;AAAA,QACf,gBAAgB;AAAA,QAChB,YAAY;AAAA,QACZ,YAAY;AAAA,QACZ,aAAa;AAAA,QACb,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,WAAW;AAAA,MAAA;AAAA;AAAA,IACb;AAKF,QAAIN,GAAM;AACR,YAAMQ,IAAa,KAAK,MAAM,QAAQR,CAAI,KAAK,KAAK,MAAM,QAAQ,QAC5DS,IAAe,KAAK,MAAM,aAAaT,CAAI,KAAK,KAAK,MAAM,aAAa,QACxEU,IAAa,KAAK,MAAM,WAAWV,CAAI,KAAK,KAAK,MAAM,WAAW,QAElEW,IAAa;AAAA,QACjB,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,MAAA;AAGT,MAAAJ,EAAW,UAAU,GAAGC,CAAU,MAAMA,IAAa,CAAC,MACtDD,EAAW,eAAe,GAAGE,CAAY,MACzCF,EAAW,WAAW,GAAGG,EAAW,IAAI,MACxCH,EAAW,aAAaG,EAAW,QACnCH,EAAW,YAAYI,EAAWX,CAAI;AAAA,IACxC;AAEA,QAAIlC,IAAkB,eAClB8C,IAAc,eACdC,IAAc,OACdpC;AAGJ,UAAMqC,IAAY,KAAK,kBAAkBjD,CAAI,GACvCkD,IAAwB,KAAK,kBAAkBb,CAAW,GAC1Dc,IAAwB,KAAK,kBAAkBb,CAAW;AAGhE,QAAIJ,GAAS;AACX,YAAMkB,IAAoBH,KAAa,KAAK,MAAM,OAAO;AAEzD,cAAQf,GAAA;AAAA,QACN,KAAK;AACH,UAAIE,MAAS,gBACXnC,IAAkB,KAAK,MAAM,OAAO,cAC3BmC,MAAS,WAClBnC,IAAkB,KAAK,MAAM,OAAO,YAEpCA,IAAkBmD,GAEpBxC,IAAQ,KAAK,MAAM,OAAO;AAC1B;AAAA,QACF,KAAK;AACH,UAAAmC,IAAcX,MAAS,gBAAgB,KAAK,MAAM,OAAO,cAAcgB,GACvExC,IAAQwB,MAAS,gBAAgB,KAAK,MAAM,OAAO,cAAcgB;AACjE;AAAA,QACF,KAAK;AACH,UAAAnD,IAAkB,KAAK,MAAM,OAAO,YACpC8C,IAAc,KAAK,MAAM,OAAO;AAChC;AAAA,QACF,KAAK;AACH,UAAA9C,IAAkB,KAAK,MAAM,OAAO,SACpC8C,IAAc,KAAK,MAAM,OAAO,SAChCC,IAAc;AACd;AAAA,MAGA;AAAA,IAEN;AAGA,IAAIE,MACFjD,IAAkBiD,IAEhBC,MACFvC,IAAQuC;AAIV,QAAIE,IAAU,KACVC,IAAgB,QAChBC,GACAC,IAAY;AAEhB,IAAKhC,IAMMM,KACTuB,IAAU,OACVC,IAAgB,UACPf,MAAU,aAEnBtC,IAAkB,KAAK,YAAYA,GAAiB,GAAG,GACvD8C,IAAc,KAAK,YAAYA,GAAa,GAAG,GAC/CQ,IAAY,iBACHhB,MAAU,cACnBiB,IAAY,0BAdZvD,IAAkB,KAAK,MAAM,OAAO,UACpC8C,IAAc,KAAK,MAAM,OAAO,UAChCnC,IAAQ,KAAK,MAAM,OAAO,UAC1ByC,IAAU,OACVC,IAAgB;AAclB,UAAMG,IAAmC;AAAA,MACvC,GAAGf;AAAA;AAAA,IAAA;AAIL,WAAIR,MACFuB,EAAY,kBAAkBxD,GAC9BwD,EAAY,cAAcV,GAC1BU,EAAY,cAAcT,GACtBpC,MAAU,WACZ6C,EAAY,QAAQ7C,KAKpBsC,MACFO,EAAY,kBAAkBP,IAE5BC,MACFM,EAAY,QAAQN,IAItBM,EAAY,SAASjC,IAAY,YAAY,eAC7CiC,EAAY,UAAUJ,GACtBI,EAAY,gBAAgBH,GAG5BG,EAAY,YAAYF,MAAc,SAAYA,IAAY,QAC9DE,EAAY,YAAYD,GAExBC,EAAY,aAAa,iBAElBA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,cAA6B;AACjC,QAAI,GAAC,KAAK,UAAA,KAAe,KAAK,iBAG9B,KAAK,sBAAA,GAEL,KAAK,SAAS,SAAS,GAGvB,WAAW,MAAM;AACf,MAAI,KAAK,eACP,KAAK,SAAS,QAAQ;AAAA,IAE1B,GAAG,GAAG,GAGF,KAAK,MAAM;AACb,UAAI;AACF,cAAMC,IAAS,KAAK,MAAM,OAAA;AAE1B,QAAIA,KAAU,OAAOA,EAAO,QAAS,cACnC,MAAMA;AAAA,MAEV,SAAS7B,GAAO;AACd,gBAAQ,MAAM,yBAAyBA,CAAK;AAAA,MAC9C;AAAA,EAEJ;AAAA;AAAA;AAAA;AAAA,EAKQ,wBAA8B;AAEpC,QAAI,KAAK,MAAM,mBAAmB,MAE9B,OAAO,SAAW,OAAe,eAAe,QAAQ;AAE1D,YAAM8B,IAAY,OAAO;AACzB,MAAIA,EAAU,WACZA,EAAU,QAAQ,EAAE;AAAA,IAExB;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKQ,YAAY/C,GAAegD,GAAwB;AACzD,QAAIhD,MAAU,cAAe,QAAOA;AAGpC,QAAIA,EAAM,WAAW,GAAG,GAAG;AACzB,YAAMiD,IAAMjD,EAAM,MAAM,CAAC,GACnBkD,IAAM,SAASD,GAAK,EAAE,GACtB,IAAI,KAAK,IAAI,GAAG,KAAK,OAAOC,KAAO,OAAO,IAAIF,EAAO,CAAC,GACtDG,IAAI,KAAK,IAAI,GAAG,KAAK,OAAQD,KAAO,IAAK,QAAW,IAAIF,EAAO,CAAC,GAChEI,IAAI,KAAK,IAAI,GAAG,KAAK,OAAOF,IAAM,QAAa,IAAIF,EAAO,CAAC;AACjE,aAAO,KAAM,KAAK,KAAOG,KAAK,IAAKC,GAAG,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC;AAAA,IACrE;AAEA,WAAOpD;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,OAAsCqD,GAAkD;AACtF,UAAMC,IAAc,KAAK,UAAA,GACnBC,IAAeF,EAAM,UAAA,GAErBG,IAAkC;AAAA,MACtC,eAAeH,aAAiBI,IAAwBJ,EAAM,SAAS,SAAS,IAAI;AAAA,MACpF,mBAAmBA,aAAiBI,IAChC,KAAK,wBAAwB,aAAaJ,EAAM,SAAS,iBAAiB,IAC1E,KAAK,2BAA2BA,CAAK;AAAA,MACzC,mBAAmB;AAAA;AAAA,IAAA;AAGrB,WAAO,IAAII,EAAsB,CAACH,GAAaC,CAAY,GAAGC,CAAQ;AAAA,EACxE;AAAA;AAAA;AAAA;AAAA,EAKA,YAA8B;AAC5B,WAAO;AAAA,MACL,IAAI,KAAK;AAAA,MACT,WAAW;AAAA,MACX,WAAW,CAAA;AAAA;AAAA,MACX,QAAQ,MAAM;AACZ,cAAME,IAAW,KAAK,OAAA;AACtB,eAAO,MAAM,QAAQA,CAAQ,IAAIA,EAAS,CAAC,IAAIA;AAAA,MACjD;AAAA,IAAA;AAAA,EAEJ;AAAA;AAAA;AAAA;AAAA,EAKA,mBAA4B;AAC1B,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKQ,2BAA2BL,GAAuD;AAGxF,YAFuBA,EAAc,YAAY,MAEzC;AAAA,MACN,KAAK;AACH,eAAO;AAAA;AAAA,MACT,KAAK;AACH,eAAO;AAAA;AAAA,MACT,KAAK;AAAA,MACL,KAAK;AACH,eAAO;AAAA;AAAA,MACT;AACE,eAAO;AAAA,IAAA;AAAA,EAEb;AAAA;AAAA;AAAA;AAAA,EAKQ,wBACNM,GACAC,GACgC;AAEhC,WAAO;AAAA,EACT;AACF;AAKO,SAASC,EACdC,GACAC,GACAvF,IAA+C,CAAA,GAG/C;AACA,QAAMwF,IAA2B,EAAE,GAAGxF,GAAO,OAAAsF,GAAO,GAAIC,KAAU,EAAE,QAAAA,IAAO,GACrEE,IAAY,IAAI3F,EAAe0F,CAAW;AAChD,SAAOE,EAAcD,CAAS;AAChC;AAMO,MAAME,KAAe;AAAA;AAAA;AAAA;AAAA,EAI1B,QAAQ,CACNL,GACAC,GACAvF,IAA2D,CAAA,MACxDqF,EAAOC,GAAOC,GAAQ,EAAE,GAAGvF,GAAO,SAAS,UAAU;AAAA;AAAA;AAAA;AAAA,EAK1D,UAAU,CACRsF,GACAC,GACAvF,IAA2D,CAAA,MACxDqF,EAAOC,GAAOC,GAAQ,EAAE,GAAGvF,GAAO,SAAS,YAAY;AAAA;AAAA;AAAA;AAAA,EAK5D,OAAO,CACLsF,GACAC,GACAvF,IAA2D,CAAA,MACxDqF,EAAOC,GAAOC,GAAQ,EAAE,GAAGvF,GAAO,SAAS,SAAS;AAAA;AAAA;AAAA;AAAA,EAKzD,UAAU,CACRsF,GACAC,GACAvF,IAA2D,CAAA,MACxDqF,EAAOC,GAAOC,GAAQ,EAAE,GAAGvF,GAAO,SAAS,YAAY;AAAA;AAAA;AAAA;AAAA,EAK5D,aAAa,CACXsF,GACAC,GACAvF,IAAwD,CAAA,MACrDqF,EAAOC,GAAOC,GAAQ,EAAE,GAAGvF,GAAO,MAAM,eAAe;AAAA;AAAA;AAAA;AAAA,EAK5D,QAAQ,CACNsF,GACAC,GACAvF,IAAwD,CAAA,MACrDqF,EAAOC,GAAOC,GAAQ,EAAE,GAAGvF,GAAO,MAAM,UAAU;AACzD,GAKM4F,IAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAQzB,IAAI,OAAO,WAAa,KAAa;AACnC,QAAMC,IAAQ,SAAS,cAAc,OAAO;AAC5C,EAAAA,EAAM,cAAcD,GACpB,SAAS,KAAK,YAAYC,CAAK;AACjC;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../reactive/cleanup.cjs");require("../reactive/unified-scheduler.cjs");const m=require("../reactive/effect.cjs"),u=require("../reactive/signal.cjs");require("../reactive/scheduler.cjs");require("../reactive/theme.cjs");require("../runtime/component.cjs");require("../runtime/context.cjs");require("../runtime/dev-tools.cjs");require("../runtime/dom-bridge.cjs");require("../runtime/error-boundary.cjs");require("../runtime/error-reporting.cjs");require("../runtime/performance.cjs");const g=require("../runtime/renderer.cjs");require("../runtime/element-override.cjs");require("../runtime/semantic-role-manager.cjs");require("../runtime/development-warnings.cjs");const f=require("./wrapper.cjs");var v=Object.defineProperty,y=(t,e,o)=>e in t?v(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,a=(t,e,o)=>y(t,typeof e!="symbol"?e+"":e,o);const r={colors:{default:"#E5E5E5",light:"#F0F0F0",medium:"#D1D1D1",heavy:"#A0A0A0"},thickness:{thin:1,medium:2,thick:3},spacing:{small:8,medium:16,large:24}};class d{constructor(e){a(this,"type","component"),a(this,"id"),a(this,"props"),a(this,"theme",r),this.props=e,this.id=`divider-${Date.now()}-${Math.random().toString(36).substr(2,9)}`}resolveValue(e){return u.isSignal(e)?e():e}getBaseStyles(){const e=this.props.orientation==="vertical",o=this.resolveValue(this.props.thickness??this.theme.thickness.thin),n=this.resolveValue(this.props.color??this.theme.colors.default),s=this.props.style??"solid",p=this.resolveValue(this.props.opacity??1),h=this.resolveValue(this.props.margin??this.theme.spacing.medium),l=this.resolveValue(this.props.length),i={border:"none",margin:"0",padding:"0",backgroundColor:n,opacity:String(p),flexShrink:"0"};return e?(i.width=`${o}px`,i.height=l?typeof l=="string"?l:`${l}px`:"100%",i.marginLeft=`${h}px`,i.marginRight=`${h}px`,i.alignSelf="stretch"):(i.height=`${o}px`,i.width=l?typeof l=="string"?l:`${l}px`:"100%",i.marginTop=`${h}px`,i.marginBottom=`${h}px`),(s==="dashed"||s==="dotted")&&(i.backgroundColor="transparent",e?i.borderRight=`${o}px ${s} ${n}`:i.borderTop=`${o}px ${s} ${n}`),i}render(){const e=g.h("div",{role:"separator","aria-orientation":this.props.orientation??"horizontal",style:this.getBaseStyles()});return["color","thickness","length","margin","opacity"].forEach(n=>{const s=this.props[n];u.isSignal(s)&&m.createEffect(()=>{const p=this.getBaseStyles(),h=e.element;h&&Object.assign(h.style,p)})}),e.getAttribute=n=>{const s=e.props?.[n];return s==null?null:String(s)},e.setAttribute=(n,s)=>{e.props||(e.props={}),e.props[n]=s},e}}function c(t={}){return f.withModifiers(new d(t))}const k={thin(t){return c({thickness:r.thickness.thin,color:t})},medium(t){return c({thickness:r.thickness.medium,color:t})},thick(t){return c({thickness:r.thickness.thick,color:t})},vertical(t,e){return c({orientation:"vertical",length:t,thickness:e})},dashed(t,e){return c({style:"dashed",color:t,thickness:e})},dotted(t,e){return c({style:"dotted",color:t,thickness:e})},subtle(){return c({color:r.colors.light,opacity:.6})},prominent(){return c({color:r.colors.heavy,thickness:r.thickness.medium})}},q={theme:r,createTheme(t){return{colors:{...r.colors,...t.colors},thickness:{...r.thickness,...t.thickness},spacing:{...r.spacing,...t.spacing}}},colors:{light:r.colors.light,medium:r.colors.medium,heavy:r.colors.heavy,primary:"#007AFF",success:"#34C759",warning:"#FF9500",danger:"#FF3B30"}};exports.Divider=c;exports.DividerComponent=d;exports.DividerStyles=q;exports.DividerUtils=k;exports.defaultDividerTheme=r;
2
+ //# sourceMappingURL=Divider.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Divider.cjs","sources":["../../src/components/Divider.ts"],"sourcesContent":["/**\n * Divider Component\n *\n * SwiftUI-inspired Divider component for visual separation between content.\n * Simple, clean line separator with customizable styling.\n */\n\nimport type { ModifiableComponent, ModifierBuilder } from '../modifiers/types'\nimport { createEffect, isSignal } from '../reactive'\nimport type { Signal } from '../reactive/types'\nimport { h } from '../runtime'\nimport type { ComponentInstance, ComponentProps, DOMNode } from '../runtime/types'\nimport { withModifiers } from './wrapper'\n\n/**\n * Divider component properties\n */\nexport interface DividerProps extends ComponentProps {\n // Appearance\n color?: string | Signal<string>\n thickness?: number | Signal<number>\n length?: number | string | Signal<number | string>\n\n // Orientation\n orientation?: 'horizontal' | 'vertical'\n\n // Spacing\n margin?: number | Signal<number>\n\n // Style\n style?: 'solid' | 'dashed' | 'dotted'\n opacity?: number | Signal<number>\n}\n\n/**\n * Default divider theme\n */\nexport interface DividerTheme {\n colors: {\n default: string\n light: string\n medium: string\n heavy: string\n }\n thickness: {\n thin: number\n medium: number\n thick: number\n }\n spacing: {\n small: number\n medium: number\n large: number\n }\n}\n\nexport const defaultDividerTheme: DividerTheme = {\n colors: {\n default: '#E5E5E5',\n light: '#F0F0F0',\n medium: '#D1D1D1',\n heavy: '#A0A0A0',\n },\n thickness: {\n thin: 1,\n medium: 2,\n thick: 3,\n },\n spacing: {\n small: 8,\n medium: 16,\n large: 24,\n },\n}\n\n/**\n * Divider component implementation\n */\nexport class DividerComponent implements ComponentInstance<DividerProps> {\n public readonly type = 'component' as const\n public readonly id: string\n public readonly props: DividerProps\n private theme: DividerTheme = defaultDividerTheme\n\n constructor(props: DividerProps) {\n this.props = props\n this.id = `divider-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`\n }\n\n private resolveValue<T>(value: T | Signal<T>): T {\n return isSignal(value) ? value() : value\n }\n\n private getBaseStyles(): Record<string, string> {\n const isVertical = this.props.orientation === 'vertical'\n const thickness = this.resolveValue(this.props.thickness ?? this.theme.thickness.thin)\n const color = this.resolveValue(this.props.color ?? this.theme.colors.default)\n const style = this.props.style ?? 'solid'\n const opacity = this.resolveValue(this.props.opacity ?? 1)\n const margin = this.resolveValue(this.props.margin ?? this.theme.spacing.medium)\n const length = this.resolveValue(this.props.length)\n\n const baseStyles: Record<string, string> = {\n border: 'none',\n margin: '0',\n padding: '0',\n backgroundColor: color,\n opacity: String(opacity),\n flexShrink: '0',\n }\n\n if (isVertical) {\n // Vertical divider\n baseStyles.width = `${thickness}px`\n baseStyles.height = length ? (typeof length === 'string' ? length : `${length}px`) : '100%'\n baseStyles.marginLeft = `${margin}px`\n baseStyles.marginRight = `${margin}px`\n baseStyles.alignSelf = 'stretch'\n } else {\n // Horizontal divider (default)\n baseStyles.height = `${thickness}px`\n baseStyles.width = length ? (typeof length === 'string' ? length : `${length}px`) : '100%'\n baseStyles.marginTop = `${margin}px`\n baseStyles.marginBottom = `${margin}px`\n }\n\n // Handle dashed/dotted styles differently\n if (style === 'dashed' || style === 'dotted') {\n baseStyles.backgroundColor = 'transparent'\n if (isVertical) {\n baseStyles.borderRight = `${thickness}px ${style} ${color}`\n } else {\n baseStyles.borderTop = `${thickness}px ${style} ${color}`\n }\n }\n\n return baseStyles\n }\n\n render(): DOMNode {\n const element = h('div', {\n role: 'separator',\n 'aria-orientation': this.props.orientation ?? 'horizontal',\n style: this.getBaseStyles(),\n })\n\n // Set up reactive updates for dynamic properties\n const reactiveProps = ['color', 'thickness', 'length', 'margin', 'opacity'] as const\n\n reactiveProps.forEach((prop) => {\n const value = this.props[prop]\n if (isSignal(value)) {\n createEffect(() => {\n // Recalculate and apply styles when reactive values change\n const newStyles = this.getBaseStyles()\n const elementDOM = element.element as HTMLElement\n if (elementDOM) {\n Object.assign(elementDOM.style, newStyles)\n }\n })\n }\n })\n\n // For tests that call getAttribute directly on returned DOMNode,\n // expose minimal helpers mapping to props\n // biome-ignore lint/suspicious/noExplicitAny: DOM compatibility requires any for dynamic property access\n ;(element as any).getAttribute = (name: string) => {\n // biome-ignore lint/suspicious/noExplicitAny: Dynamic props access for DOM compatibility\n const value = (element.props as any)?.[name]\n return value == null ? null : String(value)\n }\n // biome-ignore lint/suspicious/noExplicitAny: Test utility requires DOM-like interface\n ;(element as any).setAttribute = (name: string, value: any) => {\n if (!element.props)\n element.props = {}\n // biome-ignore lint/suspicious/noExplicitAny: Dynamic props access\n ;(element.props as any)[name] = value\n }\n\n return element\n }\n}\n\n/**\n * Create a Divider component\n */\nexport function Divider(props?: DividerProps): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n}\nexport function Divider(): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n}\nexport function Divider(props: DividerProps = {}): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n} {\n return withModifiers(new DividerComponent(props))\n}\n\n/**\n * Divider utility functions and presets\n */\nexport const DividerUtils = {\n /**\n * Create a thin horizontal divider\n */\n thin(color?: string): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n } {\n return Divider({\n thickness: defaultDividerTheme.thickness.thin,\n color,\n })\n },\n\n /**\n * Create a medium horizontal divider\n */\n medium(color?: string): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n } {\n return Divider({\n thickness: defaultDividerTheme.thickness.medium,\n color,\n })\n },\n\n /**\n * Create a thick horizontal divider\n */\n thick(color?: string): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n } {\n return Divider({\n thickness: defaultDividerTheme.thickness.thick,\n color,\n })\n },\n\n /**\n * Create a vertical divider\n */\n vertical(\n height?: number | string,\n thickness?: number\n ): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n } {\n return Divider({\n orientation: 'vertical',\n length: height,\n thickness,\n })\n },\n\n /**\n * Create a dashed divider\n */\n dashed(\n color?: string,\n thickness?: number\n ): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n } {\n return Divider({\n style: 'dashed',\n color,\n thickness,\n })\n },\n\n /**\n * Create a dotted divider\n */\n dotted(\n color?: string,\n thickness?: number\n ): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n } {\n return Divider({\n style: 'dotted',\n color,\n thickness,\n })\n },\n\n /**\n * Create a subtle divider with light color\n */\n subtle(): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n } {\n return Divider({\n color: defaultDividerTheme.colors.light,\n opacity: 0.6,\n })\n },\n\n /**\n * Create a prominent divider with heavier color\n */\n prominent(): ModifiableComponent<DividerProps> & {\n modifier: ModifierBuilder<ModifiableComponent<DividerProps>>\n } {\n return Divider({\n color: defaultDividerTheme.colors.heavy,\n thickness: defaultDividerTheme.thickness.medium,\n })\n },\n}\n\n/**\n * Divider styles and theming\n */\nexport const DividerStyles = {\n theme: defaultDividerTheme,\n\n /**\n * Create a custom divider theme\n */\n createTheme(overrides: Partial<DividerTheme>): DividerTheme {\n return {\n colors: { ...defaultDividerTheme.colors, ...overrides.colors },\n thickness: { ...defaultDividerTheme.thickness, ...overrides.thickness },\n spacing: { ...defaultDividerTheme.spacing, ...overrides.spacing },\n }\n },\n\n /**\n * Preset color schemes\n */\n colors: {\n light: defaultDividerTheme.colors.light,\n medium: defaultDividerTheme.colors.medium,\n heavy: defaultDividerTheme.colors.heavy,\n primary: '#007AFF',\n success: '#34C759',\n warning: '#FF9500',\n danger: '#FF3B30',\n },\n}\n"],"names":["defaultDividerTheme","DividerComponent","props","__publicField","value","isSignal","isVertical","thickness","color","style","opacity","margin","length","baseStyles","element","h","prop","createEffect","newStyles","elementDOM","name","Divider","withModifiers","DividerUtils","height","DividerStyles","overrides"],"mappings":"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"}