@tachui/core 0.7.0-alpha1 → 0.7.1-alpha

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 (947) hide show
  1. package/README.md +195 -0
  2. package/dist/ScrollView-h-6wYMAm.js +515 -0
  3. package/dist/Spacer-BbteDQ9I.js +5337 -0
  4. package/dist/binding-CmdpowkI.js +2276 -0
  5. package/dist/bundles/minimal.d.ts +30 -4
  6. package/dist/bundles/minimal.d.ts.map +1 -1
  7. package/dist/common.js +825 -954
  8. package/dist/compiler/index.js +1386 -10
  9. package/dist/components/index.js +4166 -101
  10. package/dist/concatenated-component-DPcl2TEO.js +6779 -0
  11. package/dist/{runtime/context.js → context--zQFIImS.js} +65 -71
  12. package/dist/debug.js +0 -1
  13. package/dist/dom-bridge-Cx-s6Ihx.js +406 -0
  14. package/dist/effect-CytAc9em.js +66 -0
  15. package/dist/essential.js +825 -954
  16. package/dist/index-Nfi2SBQh.js +3268 -0
  17. package/dist/index.js +825 -954
  18. package/dist/minimal-prod.js +162 -191
  19. package/dist/minimal.js +183 -957
  20. package/dist/modifiers/responsive/index.d.ts +10 -9
  21. package/dist/modifiers/responsive/index.d.ts.map +1 -1
  22. package/dist/plugins/index.js +543 -32
  23. package/dist/reactive/index.js +490 -93
  24. package/dist/runtime/dom-bridge.js +12 -239
  25. package/dist/runtime/renderer.js +8 -388
  26. package/dist/scheduler-7SvC3a21.js +814 -0
  27. package/dist/validation/index.js +6614 -198
  28. package/dist/viewport/index.js +2002 -83
  29. package/package.json +3 -4
  30. package/dist/assets/Asset.cjs +0 -2
  31. package/dist/assets/Asset.cjs.map +0 -1
  32. package/dist/assets/Asset.js +0 -9
  33. package/dist/assets/Asset.js.map +0 -1
  34. package/dist/assets/AssetCollection.cjs +0 -2
  35. package/dist/assets/AssetCollection.cjs.map +0 -1
  36. package/dist/assets/AssetCollection.js +0 -44
  37. package/dist/assets/AssetCollection.js.map +0 -1
  38. package/dist/assets/ColorAsset.cjs +0 -2
  39. package/dist/assets/ColorAsset.cjs.map +0 -1
  40. package/dist/assets/ColorAsset.js +0 -114
  41. package/dist/assets/ColorAsset.js.map +0 -1
  42. package/dist/assets/FontAsset.cjs +0 -9
  43. package/dist/assets/FontAsset.cjs.map +0 -1
  44. package/dist/assets/FontAsset.js +0 -173
  45. package/dist/assets/FontAsset.js.map +0 -1
  46. package/dist/assets/ImageAsset.cjs +0 -2
  47. package/dist/assets/ImageAsset.cjs.map +0 -1
  48. package/dist/assets/ImageAsset.js +0 -39
  49. package/dist/assets/ImageAsset.js.map +0 -1
  50. package/dist/assets/index.cjs +0 -2
  51. package/dist/assets/index.cjs.map +0 -1
  52. package/dist/assets/index.js +0 -119
  53. package/dist/assets/index.js.map +0 -1
  54. package/dist/common.cjs +0 -2
  55. package/dist/common.cjs.map +0 -1
  56. package/dist/common.js.map +0 -1
  57. package/dist/compiler/advanced-parser.cjs +0 -5
  58. package/dist/compiler/advanced-parser.cjs.map +0 -1
  59. package/dist/compiler/advanced-parser.js +0 -440
  60. package/dist/compiler/advanced-parser.js.map +0 -1
  61. package/dist/compiler/codegen.cjs +0 -6
  62. package/dist/compiler/codegen.cjs.map +0 -1
  63. package/dist/compiler/codegen.js +0 -241
  64. package/dist/compiler/codegen.js.map +0 -1
  65. package/dist/compiler/enhanced-codegen.cjs +0 -6
  66. package/dist/compiler/enhanced-codegen.cjs.map +0 -1
  67. package/dist/compiler/enhanced-codegen.js +0 -347
  68. package/dist/compiler/enhanced-codegen.js.map +0 -1
  69. package/dist/compiler/index.cjs +0 -2
  70. package/dist/compiler/index.cjs.map +0 -1
  71. package/dist/compiler/index.js.map +0 -1
  72. package/dist/compiler/parser.cjs +0 -5
  73. package/dist/compiler/parser.cjs.map +0 -1
  74. package/dist/compiler/parser.js +0 -275
  75. package/dist/compiler/parser.js.map +0 -1
  76. package/dist/compiler/plugin.cjs +0 -33
  77. package/dist/compiler/plugin.cjs.map +0 -1
  78. package/dist/compiler/plugin.js +0 -103
  79. package/dist/compiler/plugin.js.map +0 -1
  80. package/dist/components/BasicInput.cjs +0 -2
  81. package/dist/components/BasicInput.cjs.map +0 -1
  82. package/dist/components/BasicInput.js +0 -182
  83. package/dist/components/BasicInput.js.map +0 -1
  84. package/dist/components/Button.cjs +0 -7
  85. package/dist/components/Button.cjs.map +0 -1
  86. package/dist/components/Button.js +0 -408
  87. package/dist/components/Button.js.map +0 -1
  88. package/dist/components/Divider.cjs +0 -2
  89. package/dist/components/Divider.cjs.map +0 -1
  90. package/dist/components/Divider.js +0 -187
  91. package/dist/components/Divider.js.map +0 -1
  92. package/dist/components/EnhancedLink.cjs +0 -2
  93. package/dist/components/EnhancedLink.cjs.map +0 -1
  94. package/dist/components/EnhancedLink.js +0 -345
  95. package/dist/components/EnhancedLink.js.map +0 -1
  96. package/dist/components/Form.cjs +0 -2
  97. package/dist/components/Form.cjs.map +0 -1
  98. package/dist/components/Form.js +0 -244
  99. package/dist/components/Form.js.map +0 -1
  100. package/dist/components/Grid.cjs +0 -2
  101. package/dist/components/Grid.cjs.map +0 -1
  102. package/dist/components/Grid.js +0 -1045
  103. package/dist/components/Grid.js.map +0 -1
  104. package/dist/components/GridResponsive.cjs +0 -2
  105. package/dist/components/GridResponsive.cjs.map +0 -1
  106. package/dist/components/GridResponsive.js +0 -382
  107. package/dist/components/GridResponsive.js.map +0 -1
  108. package/dist/components/Image.cjs +0 -2
  109. package/dist/components/Image.cjs.map +0 -1
  110. package/dist/components/Image.js +0 -212
  111. package/dist/components/Image.js.map +0 -1
  112. package/dist/components/List.cjs +0 -2
  113. package/dist/components/List.cjs.map +0 -1
  114. package/dist/components/List.js +0 -561
  115. package/dist/components/List.js.map +0 -1
  116. package/dist/components/Menu.cjs +0 -2
  117. package/dist/components/Menu.cjs.map +0 -1
  118. package/dist/components/Menu.js +0 -443
  119. package/dist/components/Menu.js.map +0 -1
  120. package/dist/components/Picker.cjs +0 -2
  121. package/dist/components/Picker.cjs.map +0 -1
  122. package/dist/components/Picker.js +0 -478
  123. package/dist/components/Picker.js.map +0 -1
  124. package/dist/components/ScrollView.cjs +0 -6
  125. package/dist/components/ScrollView.cjs.map +0 -1
  126. package/dist/components/ScrollView.js +0 -363
  127. package/dist/components/ScrollView.js.map +0 -1
  128. package/dist/components/Section.cjs +0 -2
  129. package/dist/components/Section.cjs.map +0 -1
  130. package/dist/components/Section.js +0 -323
  131. package/dist/components/Section.js.map +0 -1
  132. package/dist/components/Show.cjs +0 -2
  133. package/dist/components/Show.cjs.map +0 -1
  134. package/dist/components/Show.js +0 -112
  135. package/dist/components/Show.js.map +0 -1
  136. package/dist/components/Spacer.cjs +0 -2
  137. package/dist/components/Spacer.cjs.map +0 -1
  138. package/dist/components/Spacer.js +0 -53
  139. package/dist/components/Spacer.js.map +0 -1
  140. package/dist/components/Text.cjs +0 -2
  141. package/dist/components/Text.cjs.map +0 -1
  142. package/dist/components/Text.js +0 -193
  143. package/dist/components/Text.js.map +0 -1
  144. package/dist/components/Toggle.cjs +0 -2
  145. package/dist/components/Toggle.cjs.map +0 -1
  146. package/dist/components/Toggle.js +0 -477
  147. package/dist/components/Toggle.js.map +0 -1
  148. package/dist/components/index.cjs +0 -2
  149. package/dist/components/index.cjs.map +0 -1
  150. package/dist/components/index.js.map +0 -1
  151. package/dist/components/wrapper.cjs +0 -2
  152. package/dist/components/wrapper.cjs.map +0 -1
  153. package/dist/components/wrapper.js +0 -484
  154. package/dist/components/wrapper.js.map +0 -1
  155. package/dist/concatenation/concatenatable.cjs +0 -2
  156. package/dist/concatenation/concatenatable.cjs.map +0 -1
  157. package/dist/concatenation/concatenatable.js +0 -118
  158. package/dist/concatenation/concatenatable.js.map +0 -1
  159. package/dist/concatenation/concatenated-component.cjs +0 -2
  160. package/dist/concatenation/concatenated-component.cjs.map +0 -1
  161. package/dist/concatenation/concatenated-component.js +0 -276
  162. package/dist/concatenation/concatenated-component.js.map +0 -1
  163. package/dist/concatenation/text-optimizer.cjs +0 -2
  164. package/dist/concatenation/text-optimizer.cjs.map +0 -1
  165. package/dist/concatenation/text-optimizer.js +0 -236
  166. package/dist/concatenation/text-optimizer.js.map +0 -1
  167. package/dist/concatenation/types.cjs +0 -2
  168. package/dist/concatenation/types.cjs.map +0 -1
  169. package/dist/concatenation/types.js +0 -13
  170. package/dist/concatenation/types.js.map +0 -1
  171. package/dist/constants/frame-utils.cjs +0 -2
  172. package/dist/constants/frame-utils.cjs.map +0 -1
  173. package/dist/constants/frame-utils.js +0 -116
  174. package/dist/constants/frame-utils.js.map +0 -1
  175. package/dist/constants/layout.cjs +0 -2
  176. package/dist/constants/layout.cjs.map +0 -1
  177. package/dist/constants/layout.js +0 -46
  178. package/dist/constants/layout.js.map +0 -1
  179. package/dist/css-classes/component-base.cjs +0 -2
  180. package/dist/css-classes/component-base.cjs.map +0 -1
  181. package/dist/css-classes/component-base.js +0 -62
  182. package/dist/css-classes/component-base.js.map +0 -1
  183. package/dist/css-classes/css-class-manager.cjs +0 -2
  184. package/dist/css-classes/css-class-manager.cjs.map +0 -1
  185. package/dist/css-classes/css-class-manager.js +0 -209
  186. package/dist/css-classes/css-class-manager.js.map +0 -1
  187. package/dist/css-classes/dom-integration.cjs +0 -2
  188. package/dist/css-classes/dom-integration.cjs.map +0 -1
  189. package/dist/css-classes/dom-integration.js +0 -67
  190. package/dist/css-classes/dom-integration.js.map +0 -1
  191. package/dist/css-classes/enhanced-renderer.cjs +0 -2
  192. package/dist/css-classes/enhanced-renderer.cjs.map +0 -1
  193. package/dist/css-classes/enhanced-renderer.js +0 -73
  194. package/dist/css-classes/enhanced-renderer.js.map +0 -1
  195. package/dist/css-classes/utilities.cjs +0 -2
  196. package/dist/css-classes/utilities.cjs.map +0 -1
  197. package/dist/css-classes/utilities.js +0 -41
  198. package/dist/css-classes/utilities.js.map +0 -1
  199. package/dist/debug.cjs +0 -52
  200. package/dist/debug.cjs.map +0 -1
  201. package/dist/debug.js.map +0 -1
  202. package/dist/essential.cjs +0 -2
  203. package/dist/essential.cjs.map +0 -1
  204. package/dist/essential.js.map +0 -1
  205. package/dist/gradients/css-generator.cjs +0 -2
  206. package/dist/gradients/css-generator.cjs.map +0 -1
  207. package/dist/gradients/css-generator.js +0 -100
  208. package/dist/gradients/css-generator.js.map +0 -1
  209. package/dist/gradients/examples.cjs +0 -2
  210. package/dist/gradients/examples.cjs.map +0 -1
  211. package/dist/gradients/examples.js +0 -555
  212. package/dist/gradients/examples.js.map +0 -1
  213. package/dist/gradients/gradient-asset.cjs +0 -2
  214. package/dist/gradients/gradient-asset.cjs.map +0 -1
  215. package/dist/gradients/gradient-asset.js +0 -22
  216. package/dist/gradients/gradient-asset.js.map +0 -1
  217. package/dist/gradients/index.cjs +0 -2
  218. package/dist/gradients/index.cjs.map +0 -1
  219. package/dist/gradients/index.js +0 -78
  220. package/dist/gradients/index.js.map +0 -1
  221. package/dist/gradients/performance.cjs +0 -2
  222. package/dist/gradients/performance.cjs.map +0 -1
  223. package/dist/gradients/performance.js +0 -237
  224. package/dist/gradients/performance.js.map +0 -1
  225. package/dist/gradients/presets.cjs +0 -2
  226. package/dist/gradients/presets.cjs.map +0 -1
  227. package/dist/gradients/presets.js +0 -254
  228. package/dist/gradients/presets.js.map +0 -1
  229. package/dist/gradients/reactive.cjs +0 -2
  230. package/dist/gradients/reactive.cjs.map +0 -1
  231. package/dist/gradients/reactive.js +0 -239
  232. package/dist/gradients/reactive.js.map +0 -1
  233. package/dist/gradients/state-gradient-asset.cjs +0 -2
  234. package/dist/gradients/state-gradient-asset.cjs.map +0 -1
  235. package/dist/gradients/state-gradient-asset.js +0 -111
  236. package/dist/gradients/state-gradient-asset.js.map +0 -1
  237. package/dist/gradients/utils.cjs +0 -2
  238. package/dist/gradients/utils.cjs.map +0 -1
  239. package/dist/gradients/utils.js +0 -385
  240. package/dist/gradients/utils.js.map +0 -1
  241. package/dist/gradients/validation.cjs +0 -2
  242. package/dist/gradients/validation.cjs.map +0 -1
  243. package/dist/gradients/validation.js +0 -209
  244. package/dist/gradients/validation.js.map +0 -1
  245. package/dist/index.cjs +0 -2
  246. package/dist/index.cjs.map +0 -1
  247. package/dist/index.js.map +0 -1
  248. package/dist/index2.cjs +0 -2
  249. package/dist/index2.cjs.map +0 -1
  250. package/dist/index2.js +0 -293
  251. package/dist/index2.js.map +0 -1
  252. package/dist/lifecycle/hooks.cjs +0 -2
  253. package/dist/lifecycle/hooks.cjs.map +0 -1
  254. package/dist/lifecycle/hooks.js +0 -159
  255. package/dist/lifecycle/hooks.js.map +0 -1
  256. package/dist/minimal-prod.cjs +0 -2
  257. package/dist/minimal-prod.cjs.map +0 -1
  258. package/dist/minimal-prod.js.map +0 -1
  259. package/dist/minimal.cjs +0 -2
  260. package/dist/minimal.cjs.map +0 -1
  261. package/dist/minimal.js.map +0 -1
  262. package/dist/modifiers/as-html-validator.cjs +0 -2
  263. package/dist/modifiers/as-html-validator.cjs.map +0 -1
  264. package/dist/modifiers/as-html-validator.js +0 -47
  265. package/dist/modifiers/as-html-validator.js.map +0 -1
  266. package/dist/modifiers/as-html.cjs +0 -2
  267. package/dist/modifiers/as-html.cjs.map +0 -1
  268. package/dist/modifiers/as-html.js +0 -71
  269. package/dist/modifiers/as-html.js.map +0 -1
  270. package/dist/modifiers/attributes.cjs +0 -2
  271. package/dist/modifiers/attributes.cjs.map +0 -1
  272. package/dist/modifiers/attributes.js +0 -272
  273. package/dist/modifiers/attributes.js.map +0 -1
  274. package/dist/modifiers/backdrop.cjs +0 -2
  275. package/dist/modifiers/backdrop.cjs.map +0 -1
  276. package/dist/modifiers/backdrop.js +0 -109
  277. package/dist/modifiers/backdrop.js.map +0 -1
  278. package/dist/modifiers/background.cjs +0 -2
  279. package/dist/modifiers/background.cjs.map +0 -1
  280. package/dist/modifiers/background.js +0 -67
  281. package/dist/modifiers/background.js.map +0 -1
  282. package/dist/modifiers/base.cjs +0 -25
  283. package/dist/modifiers/base.cjs.map +0 -1
  284. package/dist/modifiers/base.js +0 -745
  285. package/dist/modifiers/base.js.map +0 -1
  286. package/dist/modifiers/basic-sanitizer.cjs +0 -2
  287. package/dist/modifiers/basic-sanitizer.cjs.map +0 -1
  288. package/dist/modifiers/basic-sanitizer.js +0 -162
  289. package/dist/modifiers/basic-sanitizer.js.map +0 -1
  290. package/dist/modifiers/border.cjs +0 -2
  291. package/dist/modifiers/border.cjs.map +0 -1
  292. package/dist/modifiers/border.js +0 -160
  293. package/dist/modifiers/border.js.map +0 -1
  294. package/dist/modifiers/builder.cjs +0 -2
  295. package/dist/modifiers/builder.cjs.map +0 -1
  296. package/dist/modifiers/builder.js +0 -930
  297. package/dist/modifiers/builder.js.map +0 -1
  298. package/dist/modifiers/core.cjs +0 -2
  299. package/dist/modifiers/core.cjs.map +0 -1
  300. package/dist/modifiers/core.js +0 -398
  301. package/dist/modifiers/core.js.map +0 -1
  302. package/dist/modifiers/css.cjs +0 -2
  303. package/dist/modifiers/css.cjs.map +0 -1
  304. package/dist/modifiers/css.js +0 -50
  305. package/dist/modifiers/css.js.map +0 -1
  306. package/dist/modifiers/effects.cjs +0 -2
  307. package/dist/modifiers/effects.cjs.map +0 -1
  308. package/dist/modifiers/effects.js +0 -178
  309. package/dist/modifiers/effects.js.map +0 -1
  310. package/dist/modifiers/elements.cjs +0 -2
  311. package/dist/modifiers/elements.cjs.map +0 -1
  312. package/dist/modifiers/elements.js +0 -216
  313. package/dist/modifiers/elements.js.map +0 -1
  314. package/dist/modifiers/filters.cjs +0 -2
  315. package/dist/modifiers/filters.cjs.map +0 -1
  316. package/dist/modifiers/filters.js +0 -223
  317. package/dist/modifiers/filters.js.map +0 -1
  318. package/dist/modifiers/flexbox.cjs +0 -2
  319. package/dist/modifiers/flexbox.cjs.map +0 -1
  320. package/dist/modifiers/flexbox.js +0 -56
  321. package/dist/modifiers/flexbox.js.map +0 -1
  322. package/dist/modifiers/font.cjs +0 -2
  323. package/dist/modifiers/font.cjs.map +0 -1
  324. package/dist/modifiers/font.js +0 -60
  325. package/dist/modifiers/font.js.map +0 -1
  326. package/dist/modifiers/grid.cjs +0 -2
  327. package/dist/modifiers/grid.cjs.map +0 -1
  328. package/dist/modifiers/grid.js +0 -92
  329. package/dist/modifiers/grid.js.map +0 -1
  330. package/dist/modifiers/margin.cjs +0 -2
  331. package/dist/modifiers/margin.cjs.map +0 -1
  332. package/dist/modifiers/margin.js +0 -65
  333. package/dist/modifiers/margin.js.map +0 -1
  334. package/dist/modifiers/padding.cjs +0 -2
  335. package/dist/modifiers/padding.cjs.map +0 -1
  336. package/dist/modifiers/padding.js +0 -109
  337. package/dist/modifiers/padding.js.map +0 -1
  338. package/dist/modifiers/registry.cjs +0 -2
  339. package/dist/modifiers/registry.cjs.map +0 -1
  340. package/dist/modifiers/registry.js +0 -163
  341. package/dist/modifiers/registry.js.map +0 -1
  342. package/dist/modifiers/responsive/advanced-utilities.cjs +0 -2
  343. package/dist/modifiers/responsive/advanced-utilities.cjs.map +0 -1
  344. package/dist/modifiers/responsive/advanced-utilities.js +0 -291
  345. package/dist/modifiers/responsive/advanced-utilities.js.map +0 -1
  346. package/dist/modifiers/responsive/breakpoints.cjs +0 -2
  347. package/dist/modifiers/responsive/breakpoints.cjs.map +0 -1
  348. package/dist/modifiers/responsive/breakpoints.js +0 -168
  349. package/dist/modifiers/responsive/breakpoints.js.map +0 -1
  350. package/dist/modifiers/responsive/css-generator.cjs +0 -5
  351. package/dist/modifiers/responsive/css-generator.cjs.map +0 -1
  352. package/dist/modifiers/responsive/css-generator.js +0 -261
  353. package/dist/modifiers/responsive/css-generator.js.map +0 -1
  354. package/dist/modifiers/responsive/dev-tools.cjs +0 -77
  355. package/dist/modifiers/responsive/dev-tools.cjs.map +0 -1
  356. package/dist/modifiers/responsive/dev-tools.js +0 -380
  357. package/dist/modifiers/responsive/dev-tools.js.map +0 -1
  358. package/dist/modifiers/responsive/layout-patterns.cjs +0 -2
  359. package/dist/modifiers/responsive/layout-patterns.cjs.map +0 -1
  360. package/dist/modifiers/responsive/layout-patterns.js +0 -254
  361. package/dist/modifiers/responsive/layout-patterns.js.map +0 -1
  362. package/dist/modifiers/responsive/performance.cjs +0 -3
  363. package/dist/modifiers/responsive/performance.cjs.map +0 -1
  364. package/dist/modifiers/responsive/performance.js +0 -212
  365. package/dist/modifiers/responsive/performance.js.map +0 -1
  366. package/dist/modifiers/responsive/responsive-builder.cjs +0 -2
  367. package/dist/modifiers/responsive/responsive-builder.cjs.map +0 -1
  368. package/dist/modifiers/responsive/responsive-builder.js +0 -272
  369. package/dist/modifiers/responsive/responsive-builder.js.map +0 -1
  370. package/dist/modifiers/responsive/responsive-modifier.cjs +0 -3
  371. package/dist/modifiers/responsive/responsive-modifier.cjs.map +0 -1
  372. package/dist/modifiers/responsive/responsive-modifier.js +0 -204
  373. package/dist/modifiers/responsive/responsive-modifier.js.map +0 -1
  374. package/dist/modifiers/responsive/types.cjs +0 -2
  375. package/dist/modifiers/responsive/types.cjs.map +0 -1
  376. package/dist/modifiers/responsive/types.js +0 -26
  377. package/dist/modifiers/responsive/types.js.map +0 -1
  378. package/dist/modifiers/responsive/utilities.cjs +0 -16
  379. package/dist/modifiers/responsive/utilities.cjs.map +0 -1
  380. package/dist/modifiers/responsive/utilities.js +0 -273
  381. package/dist/modifiers/responsive/utilities.js.map +0 -1
  382. package/dist/modifiers/scroll.cjs +0 -2
  383. package/dist/modifiers/scroll.cjs.map +0 -1
  384. package/dist/modifiers/scroll.js +0 -82
  385. package/dist/modifiers/scroll.js.map +0 -1
  386. package/dist/modifiers/shadows.cjs +0 -2
  387. package/dist/modifiers/shadows.cjs.map +0 -1
  388. package/dist/modifiers/shadows.js +0 -147
  389. package/dist/modifiers/shadows.js.map +0 -1
  390. package/dist/modifiers/size.cjs +0 -2
  391. package/dist/modifiers/size.cjs.map +0 -1
  392. package/dist/modifiers/size.js +0 -74
  393. package/dist/modifiers/size.js.map +0 -1
  394. package/dist/modifiers/text.cjs +0 -2
  395. package/dist/modifiers/text.cjs.map +0 -1
  396. package/dist/modifiers/text.js +0 -166
  397. package/dist/modifiers/text.js.map +0 -1
  398. package/dist/modifiers/transformations.cjs +0 -2
  399. package/dist/modifiers/transformations.cjs.map +0 -1
  400. package/dist/modifiers/transformations.js +0 -216
  401. package/dist/modifiers/transformations.js.map +0 -1
  402. package/dist/modifiers/transitions.cjs +0 -2
  403. package/dist/modifiers/transitions.cjs.map +0 -1
  404. package/dist/modifiers/transitions.js +0 -102
  405. package/dist/modifiers/transitions.js.map +0 -1
  406. package/dist/modifiers/types.cjs +0 -2
  407. package/dist/modifiers/types.cjs.map +0 -1
  408. package/dist/modifiers/types.js +0 -5
  409. package/dist/modifiers/types.js.map +0 -1
  410. package/dist/modifiers/typography.cjs +0 -2
  411. package/dist/modifiers/typography.cjs.map +0 -1
  412. package/dist/modifiers/typography.js +0 -76
  413. package/dist/modifiers/typography.js.map +0 -1
  414. package/dist/modifiers/utility.cjs +0 -2
  415. package/dist/modifiers/utility.cjs.map +0 -1
  416. package/dist/modifiers/utility.js +0 -71
  417. package/dist/modifiers/utility.js.map +0 -1
  418. package/dist/modifiers/utils.cjs +0 -2
  419. package/dist/modifiers/utils.cjs.map +0 -1
  420. package/dist/modifiers/utils.js +0 -250
  421. package/dist/modifiers/utils.js.map +0 -1
  422. package/dist/plugins/index.cjs +0 -2
  423. package/dist/plugins/index.cjs.map +0 -1
  424. package/dist/plugins/index.js.map +0 -1
  425. package/dist/plugins/legacy-adapter.cjs +0 -2
  426. package/dist/plugins/legacy-adapter.cjs.map +0 -1
  427. package/dist/plugins/legacy-adapter.js +0 -30
  428. package/dist/plugins/legacy-adapter.js.map +0 -1
  429. package/dist/plugins/simplified-component-registry.cjs +0 -2
  430. package/dist/plugins/simplified-component-registry.cjs.map +0 -1
  431. package/dist/plugins/simplified-component-registry.js +0 -71
  432. package/dist/plugins/simplified-component-registry.js.map +0 -1
  433. package/dist/plugins/simplified-error-handler.cjs +0 -2
  434. package/dist/plugins/simplified-error-handler.cjs.map +0 -1
  435. package/dist/plugins/simplified-error-handler.js +0 -154
  436. package/dist/plugins/simplified-error-handler.js.map +0 -1
  437. package/dist/plugins/simplified-lazy-loader.cjs +0 -2
  438. package/dist/plugins/simplified-lazy-loader.cjs.map +0 -1
  439. package/dist/plugins/simplified-lazy-loader.js +0 -129
  440. package/dist/plugins/simplified-lazy-loader.js.map +0 -1
  441. package/dist/plugins/simplified-plugin-manager.cjs +0 -2
  442. package/dist/plugins/simplified-plugin-manager.cjs.map +0 -1
  443. package/dist/plugins/simplified-plugin-manager.js +0 -51
  444. package/dist/plugins/simplified-plugin-manager.js.map +0 -1
  445. package/dist/plugins/simplified-tachui-instance.cjs +0 -2
  446. package/dist/plugins/simplified-tachui-instance.cjs.map +0 -1
  447. package/dist/plugins/simplified-tachui-instance.js +0 -88
  448. package/dist/plugins/simplified-tachui-instance.js.map +0 -1
  449. package/dist/plugins/simplified-types.cjs +0 -2
  450. package/dist/plugins/simplified-types.cjs.map +0 -1
  451. package/dist/plugins/simplified-types.js +0 -9
  452. package/dist/plugins/simplified-types.js.map +0 -1
  453. package/dist/plugins/simplified-utils.cjs +0 -2
  454. package/dist/plugins/simplified-utils.cjs.map +0 -1
  455. package/dist/plugins/simplified-utils.js +0 -40
  456. package/dist/plugins/simplified-utils.js.map +0 -1
  457. package/dist/reactive/cleanup.cjs +0 -2
  458. package/dist/reactive/cleanup.cjs.map +0 -1
  459. package/dist/reactive/cleanup.js +0 -62
  460. package/dist/reactive/cleanup.js.map +0 -1
  461. package/dist/reactive/computed.cjs +0 -2
  462. package/dist/reactive/computed.cjs.map +0 -1
  463. package/dist/reactive/computed.js +0 -121
  464. package/dist/reactive/computed.js.map +0 -1
  465. package/dist/reactive/context.cjs +0 -2
  466. package/dist/reactive/context.cjs.map +0 -1
  467. package/dist/reactive/context.js +0 -143
  468. package/dist/reactive/context.js.map +0 -1
  469. package/dist/reactive/effect.cjs +0 -2
  470. package/dist/reactive/effect.cjs.map +0 -1
  471. package/dist/reactive/effect.js +0 -67
  472. package/dist/reactive/effect.js.map +0 -1
  473. package/dist/reactive/enhanced-effect.cjs +0 -2
  474. package/dist/reactive/enhanced-effect.cjs.map +0 -1
  475. package/dist/reactive/enhanced-effect.js +0 -153
  476. package/dist/reactive/enhanced-effect.js.map +0 -1
  477. package/dist/reactive/enhanced-signal.cjs +0 -2
  478. package/dist/reactive/enhanced-signal.cjs.map +0 -1
  479. package/dist/reactive/enhanced-signal.js +0 -117
  480. package/dist/reactive/enhanced-signal.js.map +0 -1
  481. package/dist/reactive/equality.cjs +0 -2
  482. package/dist/reactive/equality.cjs.map +0 -1
  483. package/dist/reactive/equality.js +0 -66
  484. package/dist/reactive/equality.js.map +0 -1
  485. package/dist/reactive/index.cjs +0 -2
  486. package/dist/reactive/index.cjs.map +0 -1
  487. package/dist/reactive/index.js.map +0 -1
  488. package/dist/reactive/migration.cjs +0 -18
  489. package/dist/reactive/migration.cjs.map +0 -1
  490. package/dist/reactive/migration.js +0 -164
  491. package/dist/reactive/migration.js.map +0 -1
  492. package/dist/reactive/ownership.cjs +0 -2
  493. package/dist/reactive/ownership.cjs.map +0 -1
  494. package/dist/reactive/ownership.js +0 -34
  495. package/dist/reactive/ownership.js.map +0 -1
  496. package/dist/reactive/scheduler.cjs +0 -2
  497. package/dist/reactive/scheduler.cjs.map +0 -1
  498. package/dist/reactive/scheduler.js +0 -111
  499. package/dist/reactive/scheduler.js.map +0 -1
  500. package/dist/reactive/signal.cjs +0 -2
  501. package/dist/reactive/signal.cjs.map +0 -1
  502. package/dist/reactive/signal.js +0 -96
  503. package/dist/reactive/signal.js.map +0 -1
  504. package/dist/reactive/theme.cjs +0 -2
  505. package/dist/reactive/theme.cjs.map +0 -1
  506. package/dist/reactive/theme.js +0 -27
  507. package/dist/reactive/theme.js.map +0 -1
  508. package/dist/reactive/types.cjs +0 -2
  509. package/dist/reactive/types.cjs.map +0 -1
  510. package/dist/reactive/types.js +0 -5
  511. package/dist/reactive/types.js.map +0 -1
  512. package/dist/reactive/unified-scheduler.cjs +0 -2
  513. package/dist/reactive/unified-scheduler.cjs.map +0 -1
  514. package/dist/reactive/unified-scheduler.js +0 -219
  515. package/dist/reactive/unified-scheduler.js.map +0 -1
  516. package/dist/runtime/component-context.cjs +0 -2
  517. package/dist/runtime/component-context.cjs.map +0 -1
  518. package/dist/runtime/component-context.js +0 -177
  519. package/dist/runtime/component-context.js.map +0 -1
  520. package/dist/runtime/component.cjs +0 -2
  521. package/dist/runtime/component.cjs.map +0 -1
  522. package/dist/runtime/component.js +0 -238
  523. package/dist/runtime/component.js.map +0 -1
  524. package/dist/runtime/context.cjs +0 -2
  525. package/dist/runtime/context.cjs.map +0 -1
  526. package/dist/runtime/context.js.map +0 -1
  527. package/dist/runtime/dev-tools.cjs +0 -2
  528. package/dist/runtime/dev-tools.cjs.map +0 -1
  529. package/dist/runtime/dev-tools.js +0 -391
  530. package/dist/runtime/dev-tools.js.map +0 -1
  531. package/dist/runtime/development-warnings.cjs +0 -2
  532. package/dist/runtime/development-warnings.cjs.map +0 -1
  533. package/dist/runtime/development-warnings.js +0 -69
  534. package/dist/runtime/development-warnings.js.map +0 -1
  535. package/dist/runtime/dom-bridge.cjs +0 -2
  536. package/dist/runtime/dom-bridge.cjs.map +0 -1
  537. package/dist/runtime/dom-bridge.js.map +0 -1
  538. package/dist/runtime/element-override.cjs +0 -2
  539. package/dist/runtime/element-override.cjs.map +0 -1
  540. package/dist/runtime/element-override.js +0 -214
  541. package/dist/runtime/element-override.js.map +0 -1
  542. package/dist/runtime/error-boundary.cjs +0 -2
  543. package/dist/runtime/error-boundary.cjs.map +0 -1
  544. package/dist/runtime/error-boundary.js +0 -559
  545. package/dist/runtime/error-boundary.js.map +0 -1
  546. package/dist/runtime/error-recovery.cjs +0 -2
  547. package/dist/runtime/error-recovery.cjs.map +0 -1
  548. package/dist/runtime/error-recovery.js +0 -385
  549. package/dist/runtime/error-recovery.js.map +0 -1
  550. package/dist/runtime/error-reporting.cjs +0 -3
  551. package/dist/runtime/error-reporting.cjs.map +0 -1
  552. package/dist/runtime/error-reporting.js +0 -479
  553. package/dist/runtime/error-reporting.js.map +0 -1
  554. package/dist/runtime/error-utils.cjs +0 -3
  555. package/dist/runtime/error-utils.cjs.map +0 -1
  556. package/dist/runtime/error-utils.js +0 -352
  557. package/dist/runtime/error-utils.js.map +0 -1
  558. package/dist/runtime/lazy-component.cjs +0 -2
  559. package/dist/runtime/lazy-component.cjs.map +0 -1
  560. package/dist/runtime/lazy-component.js +0 -129
  561. package/dist/runtime/lazy-component.js.map +0 -1
  562. package/dist/runtime/lifecycle.cjs +0 -2
  563. package/dist/runtime/lifecycle.cjs.map +0 -1
  564. package/dist/runtime/lifecycle.js +0 -7
  565. package/dist/runtime/lifecycle.js.map +0 -1
  566. package/dist/runtime/mounting.cjs +0 -2
  567. package/dist/runtime/mounting.cjs.map +0 -1
  568. package/dist/runtime/mounting.js +0 -12
  569. package/dist/runtime/mounting.js.map +0 -1
  570. package/dist/runtime/optimization.cjs +0 -2
  571. package/dist/runtime/optimization.cjs.map +0 -1
  572. package/dist/runtime/optimization.js +0 -6
  573. package/dist/runtime/optimization.js.map +0 -1
  574. package/dist/runtime/performance.cjs +0 -2
  575. package/dist/runtime/performance.cjs.map +0 -1
  576. package/dist/runtime/performance.js +0 -399
  577. package/dist/runtime/performance.js.map +0 -1
  578. package/dist/runtime/props.cjs +0 -2
  579. package/dist/runtime/props.cjs.map +0 -1
  580. package/dist/runtime/props.js +0 -265
  581. package/dist/runtime/props.js.map +0 -1
  582. package/dist/runtime/renderer.cjs +0 -2
  583. package/dist/runtime/renderer.cjs.map +0 -1
  584. package/dist/runtime/renderer.js.map +0 -1
  585. package/dist/runtime/semantic-role-manager.cjs +0 -2
  586. package/dist/runtime/semantic-role-manager.cjs.map +0 -1
  587. package/dist/runtime/semantic-role-manager.js +0 -82
  588. package/dist/runtime/semantic-role-manager.js.map +0 -1
  589. package/dist/state/binding.cjs +0 -2
  590. package/dist/state/binding.cjs.map +0 -1
  591. package/dist/state/binding.js +0 -155
  592. package/dist/state/binding.js.map +0 -1
  593. package/dist/state/environment.cjs +0 -2
  594. package/dist/state/environment.cjs.map +0 -1
  595. package/dist/state/environment.js +0 -115
  596. package/dist/state/environment.js.map +0 -1
  597. package/dist/state/index.cjs +0 -2
  598. package/dist/state/index.cjs.map +0 -1
  599. package/dist/state/index.js +0 -63
  600. package/dist/state/index.js.map +0 -1
  601. package/dist/state/observed-object.cjs +0 -2
  602. package/dist/state/observed-object.cjs.map +0 -1
  603. package/dist/state/observed-object.js +0 -163
  604. package/dist/state/observed-object.js.map +0 -1
  605. package/dist/state/state-manager.cjs +0 -2
  606. package/dist/state/state-manager.cjs.map +0 -1
  607. package/dist/state/state-manager.js +0 -233
  608. package/dist/state/state-manager.js.map +0 -1
  609. package/dist/state/state.cjs +0 -2
  610. package/dist/state/state.cjs.map +0 -1
  611. package/dist/state/state.js +0 -159
  612. package/dist/state/state.js.map +0 -1
  613. package/dist/sui-compat.cjs +0 -2
  614. package/dist/sui-compat.cjs.map +0 -1
  615. package/dist/sui-compat.js +0 -88
  616. package/dist/sui-compat.js.map +0 -1
  617. package/dist/validation/advanced-debugging.cjs +0 -44
  618. package/dist/validation/advanced-debugging.cjs.map +0 -1
  619. package/dist/validation/advanced-debugging.js +0 -455
  620. package/dist/validation/advanced-debugging.js.map +0 -1
  621. package/dist/validation/build-time/detection.cjs +0 -2
  622. package/dist/validation/build-time/detection.cjs.map +0 -1
  623. package/dist/validation/build-time/detection.js +0 -199
  624. package/dist/validation/build-time/detection.js.map +0 -1
  625. package/dist/validation/build-time/index.cjs +0 -2
  626. package/dist/validation/build-time/index.cjs.map +0 -1
  627. package/dist/validation/build-time/index.js +0 -122
  628. package/dist/validation/build-time/index.js.map +0 -1
  629. package/dist/validation/build-time/plugins.cjs +0 -3
  630. package/dist/validation/build-time/plugins.cjs.map +0 -1
  631. package/dist/validation/build-time/plugins.js +0 -282
  632. package/dist/validation/build-time/plugins.js.map +0 -1
  633. package/dist/validation/build-time/rules.cjs +0 -2
  634. package/dist/validation/build-time/rules.cjs.map +0 -1
  635. package/dist/validation/build-time/rules.js +0 -576
  636. package/dist/validation/build-time/rules.js.map +0 -1
  637. package/dist/validation/build-time/transformer.cjs +0 -3
  638. package/dist/validation/build-time/transformer.cjs.map +0 -1
  639. package/dist/validation/build-time/transformer.js +0 -177
  640. package/dist/validation/build-time/transformer.js.map +0 -1
  641. package/dist/validation/comprehensive.cjs +0 -9
  642. package/dist/validation/comprehensive.cjs.map +0 -1
  643. package/dist/validation/comprehensive.js +0 -916
  644. package/dist/validation/comprehensive.js.map +0 -1
  645. package/dist/validation/debug-tools.cjs +0 -16
  646. package/dist/validation/debug-tools.cjs.map +0 -1
  647. package/dist/validation/debug-tools.js +0 -405
  648. package/dist/validation/debug-tools.js.map +0 -1
  649. package/dist/validation/developer-experience.cjs +0 -17
  650. package/dist/validation/developer-experience.cjs.map +0 -1
  651. package/dist/validation/developer-experience.js +0 -433
  652. package/dist/validation/developer-experience.js.map +0 -1
  653. package/dist/validation/documentation-integration.cjs +0 -7
  654. package/dist/validation/documentation-integration.cjs.map +0 -1
  655. package/dist/validation/documentation-integration.js +0 -440
  656. package/dist/validation/documentation-integration.js.map +0 -1
  657. package/dist/validation/enhanced-runtime.cjs +0 -6
  658. package/dist/validation/enhanced-runtime.cjs.map +0 -1
  659. package/dist/validation/enhanced-runtime.js +0 -465
  660. package/dist/validation/enhanced-runtime.js.map +0 -1
  661. package/dist/validation/error-reporting.cjs +0 -32
  662. package/dist/validation/error-reporting.cjs.map +0 -1
  663. package/dist/validation/error-reporting.js +0 -370
  664. package/dist/validation/error-reporting.js.map +0 -1
  665. package/dist/validation/ide-integration.cjs +0 -85
  666. package/dist/validation/ide-integration.cjs.map +0 -1
  667. package/dist/validation/ide-integration.js +0 -557
  668. package/dist/validation/ide-integration.js.map +0 -1
  669. package/dist/validation/index.cjs +0 -6
  670. package/dist/validation/index.cjs.map +0 -1
  671. package/dist/validation/index.js.map +0 -1
  672. package/dist/validation/lifecycle-validation.cjs +0 -2
  673. package/dist/validation/lifecycle-validation.cjs.map +0 -1
  674. package/dist/validation/lifecycle-validation.js +0 -314
  675. package/dist/validation/lifecycle-validation.js.map +0 -1
  676. package/dist/validation/performance-optimizer.cjs +0 -2
  677. package/dist/validation/performance-optimizer.cjs.map +0 -1
  678. package/dist/validation/performance-optimizer.js +0 -338
  679. package/dist/validation/performance-optimizer.js.map +0 -1
  680. package/dist/validation/plugin-registration.cjs +0 -2
  681. package/dist/validation/plugin-registration.cjs.map +0 -1
  682. package/dist/validation/plugin-registration.js +0 -126
  683. package/dist/validation/plugin-registration.js.map +0 -1
  684. package/dist/validation/production-bypass.cjs +0 -2
  685. package/dist/validation/production-bypass.cjs.map +0 -1
  686. package/dist/validation/production-bypass.js +0 -218
  687. package/dist/validation/production-bypass.js.map +0 -1
  688. package/dist/validation/simple.cjs +0 -9
  689. package/dist/validation/simple.cjs.map +0 -1
  690. package/dist/validation/simple.js +0 -146
  691. package/dist/validation/simple.js.map +0 -1
  692. package/dist/viewport/adapters/web-adapter.cjs +0 -70
  693. package/dist/viewport/adapters/web-adapter.cjs.map +0 -1
  694. package/dist/viewport/adapters/web-adapter.js +0 -823
  695. package/dist/viewport/adapters/web-adapter.js.map +0 -1
  696. package/dist/viewport/components.cjs +0 -2
  697. package/dist/viewport/components.cjs.map +0 -1
  698. package/dist/viewport/components.js +0 -298
  699. package/dist/viewport/components.js.map +0 -1
  700. package/dist/viewport/environment.cjs +0 -2
  701. package/dist/viewport/environment.cjs.map +0 -1
  702. package/dist/viewport/environment.js +0 -86
  703. package/dist/viewport/environment.js.map +0 -1
  704. package/dist/viewport/index.cjs +0 -2
  705. package/dist/viewport/index.cjs.map +0 -1
  706. package/dist/viewport/index.js.map +0 -1
  707. package/dist/viewport/platform-detection.cjs +0 -2
  708. package/dist/viewport/platform-detection.cjs.map +0 -1
  709. package/dist/viewport/platform-detection.js +0 -205
  710. package/dist/viewport/platform-detection.js.map +0 -1
  711. package/dist/viewport/types.cjs +0 -2
  712. package/dist/viewport/types.cjs.map +0 -1
  713. package/dist/viewport/types.js +0 -13
  714. package/dist/viewport/types.js.map +0 -1
  715. package/dist/viewport/viewport-manager.cjs +0 -2
  716. package/dist/viewport/viewport-manager.cjs.map +0 -1
  717. package/dist/viewport/viewport-manager.js +0 -524
  718. package/dist/viewport/viewport-manager.js.map +0 -1
  719. package/src/assets/Asset.ts +0 -11
  720. package/src/assets/AssetCollection.ts +0 -99
  721. package/src/assets/ColorAsset.ts +0 -210
  722. package/src/assets/FontAsset.ts +0 -380
  723. package/src/assets/ImageAsset.ts +0 -91
  724. package/src/assets/README.md +0 -190
  725. package/src/assets/index.ts +0 -175
  726. package/src/assets/test-assets.ts +0 -69
  727. package/src/assets/test-integration.ts +0 -46
  728. package/src/assets/test-simple.ts +0 -28
  729. package/src/assets/types.ts +0 -79
  730. package/src/bundles/common.ts +0 -30
  731. package/src/bundles/complete.ts +0 -29
  732. package/src/bundles/essential.ts +0 -26
  733. package/src/bundles/minimal.ts +0 -26
  734. package/src/bundles/production-minimal.ts +0 -67
  735. package/src/compiler/advanced-parser.ts +0 -871
  736. package/src/compiler/codegen.ts +0 -450
  737. package/src/compiler/enhanced-codegen.ts +0 -729
  738. package/src/compiler/index.ts +0 -25
  739. package/src/compiler/parser.ts +0 -461
  740. package/src/compiler/plugin.ts +0 -181
  741. package/src/compiler/types.ts +0 -177
  742. package/src/components/BasicInput.ts +0 -352
  743. package/src/components/Button.ts +0 -963
  744. package/src/components/Divider.ts +0 -341
  745. package/src/components/EnhancedLink.ts +0 -676
  746. package/src/components/Form.ts +0 -414
  747. package/src/components/Grid.ts +0 -2507
  748. package/src/components/GridResponsive.ts +0 -637
  749. package/src/components/Image.ts +0 -426
  750. package/src/components/List.ts +0 -1084
  751. package/src/components/Menu.ts +0 -807
  752. package/src/components/Picker.ts +0 -678
  753. package/src/components/ScrollView.ts +0 -725
  754. package/src/components/Section.ts +0 -472
  755. package/src/components/Show.ts +0 -205
  756. package/src/components/Spacer.ts +0 -93
  757. package/src/components/Text.ts +0 -447
  758. package/src/components/Toggle.ts +0 -700
  759. package/src/components/index.ts +0 -231
  760. package/src/components/wrapper.ts +0 -828
  761. package/src/concatenation/concatenatable.ts +0 -211
  762. package/src/concatenation/concatenated-component.ts +0 -471
  763. package/src/concatenation/index.ts +0 -41
  764. package/src/concatenation/styles.css +0 -120
  765. package/src/concatenation/text-optimizer.ts +0 -440
  766. package/src/concatenation/types.ts +0 -116
  767. package/src/constants/README.md +0 -339
  768. package/src/constants/__tests__/frame-utils.test.ts +0 -276
  769. package/src/constants/__tests__/layout.test.ts +0 -215
  770. package/src/constants/frame-utils.ts +0 -174
  771. package/src/constants/index.ts +0 -8
  772. package/src/constants/layout.ts +0 -120
  773. package/src/css-classes/component-base.ts +0 -117
  774. package/src/css-classes/css-class-manager.ts +0 -372
  775. package/src/css-classes/dom-integration.ts +0 -162
  776. package/src/css-classes/enhanced-renderer.ts +0 -166
  777. package/src/css-classes/index.ts +0 -45
  778. package/src/css-classes/types.ts +0 -73
  779. package/src/css-classes/utilities.ts +0 -175
  780. package/src/debug/index.ts +0 -267
  781. package/src/developer-experience/enhanced-errors.ts +0 -556
  782. package/src/developer-experience/enhanced-types.ts +0 -427
  783. package/src/developer-experience/index.ts +0 -220
  784. package/src/globals.d.ts +0 -43
  785. package/src/gradients/__tests__/angular-gradient.test.ts +0 -111
  786. package/src/gradients/__tests__/background-modifier.test.ts +0 -81
  787. package/src/gradients/__tests__/comprehensive-gradients.test.ts +0 -296
  788. package/src/gradients/__tests__/gradient-asset.test.ts +0 -144
  789. package/src/gradients/__tests__/linear-gradient.test.ts +0 -92
  790. package/src/gradients/__tests__/phase4-features.test.ts +0 -386
  791. package/src/gradients/__tests__/radial-gradient.test.ts +0 -110
  792. package/src/gradients/__tests__/repeating-gradients.test.ts +0 -125
  793. package/src/gradients/__tests__/state-background-modifier.test.ts +0 -340
  794. package/src/gradients/__tests__/state-gradient-asset.test.ts +0 -262
  795. package/src/gradients/__tests__/state-gradient-integration.test.ts +0 -277
  796. package/src/gradients/css-generator.ts +0 -158
  797. package/src/gradients/examples.ts +0 -632
  798. package/src/gradients/gradient-asset.ts +0 -30
  799. package/src/gradients/index.ts +0 -85
  800. package/src/gradients/performance.ts +0 -521
  801. package/src/gradients/presets.ts +0 -422
  802. package/src/gradients/reactive.ts +0 -470
  803. package/src/gradients/state-gradient-asset.ts +0 -179
  804. package/src/gradients/types.ts +0 -148
  805. package/src/gradients/utils.ts +0 -579
  806. package/src/gradients/validation.ts +0 -489
  807. package/src/index.ts +0 -168
  808. package/src/lifecycle/hooks.ts +0 -332
  809. package/src/modifiers/__tests__/as-html-integration.test.ts +0 -204
  810. package/src/modifiers/__tests__/as-html.test.ts +0 -437
  811. package/src/modifiers/__tests__/basic-sanitizer-security.test.ts +0 -294
  812. package/src/modifiers/__tests__/border.test.ts +0 -371
  813. package/src/modifiers/__tests__/margin-string-support.test.ts +0 -41
  814. package/src/modifiers/__tests__/padding-string-support.test.ts +0 -41
  815. package/src/modifiers/as-html-validator.ts +0 -68
  816. package/src/modifiers/as-html.ts +0 -216
  817. package/src/modifiers/attributes.ts +0 -574
  818. package/src/modifiers/backdrop.ts +0 -290
  819. package/src/modifiers/background.ts +0 -165
  820. package/src/modifiers/base.ts +0 -1815
  821. package/src/modifiers/basic-sanitizer.ts +0 -227
  822. package/src/modifiers/border.ts +0 -574
  823. package/src/modifiers/builder.ts +0 -1747
  824. package/src/modifiers/core.ts +0 -521
  825. package/src/modifiers/css.ts +0 -148
  826. package/src/modifiers/effects.ts +0 -412
  827. package/src/modifiers/elements.ts +0 -541
  828. package/src/modifiers/filters.ts +0 -501
  829. package/src/modifiers/flexbox.ts +0 -180
  830. package/src/modifiers/font.ts +0 -149
  831. package/src/modifiers/grid.ts +0 -238
  832. package/src/modifiers/index.ts +0 -481
  833. package/src/modifiers/margin.ts +0 -218
  834. package/src/modifiers/padding.ts +0 -318
  835. package/src/modifiers/registry.ts +0 -444
  836. package/src/modifiers/responsive/__tests__/advanced-media-queries.test.ts +0 -392
  837. package/src/modifiers/responsive/__tests__/advanced-utilities.test.ts +0 -368
  838. package/src/modifiers/responsive/__tests__/comprehensive-browser-tests.test.ts +0 -556
  839. package/src/modifiers/responsive/__tests__/layout-patterns.test.ts +0 -558
  840. package/src/modifiers/responsive/advanced-utilities.ts +0 -562
  841. package/src/modifiers/responsive/breakpoints.ts +0 -330
  842. package/src/modifiers/responsive/css-generator.ts +0 -432
  843. package/src/modifiers/responsive/dev-tools.ts +0 -650
  844. package/src/modifiers/responsive/index.ts +0 -119
  845. package/src/modifiers/responsive/layout-patterns.ts +0 -592
  846. package/src/modifiers/responsive/performance.ts +0 -385
  847. package/src/modifiers/responsive/responsive-builder.ts +0 -620
  848. package/src/modifiers/responsive/responsive-modifier.ts +0 -410
  849. package/src/modifiers/responsive/types.ts +0 -226
  850. package/src/modifiers/responsive/utilities.ts +0 -478
  851. package/src/modifiers/scroll.ts +0 -297
  852. package/src/modifiers/shadows.ts +0 -321
  853. package/src/modifiers/size.ts +0 -208
  854. package/src/modifiers/text.ts +0 -416
  855. package/src/modifiers/transformations.ts +0 -640
  856. package/src/modifiers/transitions.ts +0 -218
  857. package/src/modifiers/types.ts +0 -889
  858. package/src/modifiers/typography.ts +0 -341
  859. package/src/modifiers/utility.ts +0 -209
  860. package/src/modifiers/utils.ts +0 -413
  861. package/src/plugins/__tests__/simplified-plugin-system.test.ts +0 -190
  862. package/src/plugins/component-loader-registry.ts +0 -371
  863. package/src/plugins/index.ts +0 -61
  864. package/src/plugins/legacy-adapter.ts +0 -84
  865. package/src/plugins/simplified-component-registry.ts +0 -130
  866. package/src/plugins/simplified-error-handler.ts +0 -372
  867. package/src/plugins/simplified-index.ts +0 -61
  868. package/src/plugins/simplified-lazy-loader.ts +0 -242
  869. package/src/plugins/simplified-plugin-manager.ts +0 -93
  870. package/src/plugins/simplified-tachui-instance.ts +0 -142
  871. package/src/plugins/simplified-types.ts +0 -79
  872. package/src/plugins/simplified-utils.ts +0 -118
  873. package/src/reactive/cleanup.ts +0 -241
  874. package/src/reactive/computed.ts +0 -281
  875. package/src/reactive/context.ts +0 -287
  876. package/src/reactive/effect.ts +0 -194
  877. package/src/reactive/enhanced-effect.ts +0 -318
  878. package/src/reactive/enhanced-signal.ts +0 -227
  879. package/src/reactive/equality.ts +0 -188
  880. package/src/reactive/globals.d.ts +0 -5
  881. package/src/reactive/index.ts +0 -150
  882. package/src/reactive/migration.ts +0 -335
  883. package/src/reactive/ownership.ts +0 -182
  884. package/src/reactive/scheduler.ts +0 -300
  885. package/src/reactive/signal.ts +0 -201
  886. package/src/reactive/theme.ts +0 -49
  887. package/src/reactive/types.ts +0 -103
  888. package/src/reactive/unified-scheduler.ts +0 -357
  889. package/src/runtime/component-context.ts +0 -343
  890. package/src/runtime/component.ts +0 -499
  891. package/src/runtime/context.ts +0 -527
  892. package/src/runtime/dev-tools.ts +0 -752
  893. package/src/runtime/development-warnings.ts +0 -114
  894. package/src/runtime/dom-bridge.ts +0 -570
  895. package/src/runtime/element-override.ts +0 -282
  896. package/src/runtime/error-boundary.ts +0 -955
  897. package/src/runtime/error-recovery.ts +0 -638
  898. package/src/runtime/error-reporting.ts +0 -808
  899. package/src/runtime/error-utils.ts +0 -698
  900. package/src/runtime/index.ts +0 -202
  901. package/src/runtime/lazy-component.ts +0 -268
  902. package/src/runtime/lifecycle.ts +0 -10
  903. package/src/runtime/mounting.ts +0 -17
  904. package/src/runtime/optimization.ts +0 -13
  905. package/src/runtime/performance.ts +0 -693
  906. package/src/runtime/props.ts +0 -434
  907. package/src/runtime/refs.ts +0 -13
  908. package/src/runtime/renderer.ts +0 -674
  909. package/src/runtime/semantic-role-manager.ts +0 -140
  910. package/src/runtime/types.ts +0 -282
  911. package/src/state/binding.ts +0 -381
  912. package/src/state/environment-object.ts +0 -444
  913. package/src/state/environment.ts +0 -351
  914. package/src/state/index.ts +0 -179
  915. package/src/state/observed-object.ts +0 -405
  916. package/src/state/state-manager.ts +0 -366
  917. package/src/state/state.ts +0 -339
  918. package/src/state/types.ts +0 -192
  919. package/src/sui-compat.ts +0 -163
  920. package/src/validation/__tests__/phase-1d-integration.test.ts +0 -558
  921. package/src/validation/advanced-debugging.ts +0 -860
  922. package/src/validation/build-time/detection.ts +0 -373
  923. package/src/validation/build-time/index.ts +0 -222
  924. package/src/validation/build-time/plugins.ts +0 -515
  925. package/src/validation/build-time/rules.ts +0 -624
  926. package/src/validation/build-time/transformer.ts +0 -372
  927. package/src/validation/build-time/types.ts +0 -232
  928. package/src/validation/comprehensive.ts +0 -1272
  929. package/src/validation/debug-tools.ts +0 -724
  930. package/src/validation/developer-experience.ts +0 -712
  931. package/src/validation/documentation-integration.ts +0 -835
  932. package/src/validation/enhanced-runtime.ts +0 -765
  933. package/src/validation/error-reporting.ts +0 -587
  934. package/src/validation/ide-integration.ts +0 -845
  935. package/src/validation/index.ts +0 -353
  936. package/src/validation/lifecycle-validation.ts +0 -636
  937. package/src/validation/performance-optimizer.ts +0 -599
  938. package/src/validation/plugin-registration.ts +0 -249
  939. package/src/validation/production-bypass.ts +0 -466
  940. package/src/validation/simple.ts +0 -465
  941. package/src/viewport/adapters/web-adapter.ts +0 -1385
  942. package/src/viewport/components.ts +0 -505
  943. package/src/viewport/environment.ts +0 -173
  944. package/src/viewport/index.ts +0 -290
  945. package/src/viewport/platform-detection.ts +0 -431
  946. package/src/viewport/types.ts +0 -371
  947. package/src/viewport/viewport-manager.ts +0 -979
@@ -1 +0,0 @@
1
- {"version":3,"file":"dev-tools.js","sources":["../../../src/modifiers/responsive/dev-tools.ts"],"sourcesContent":["/**\n * Responsive Development Tools and Debugging Features\n *\n * Provides comprehensive debugging, inspection, and development tools\n * for the responsive design system.\n */\n\nimport { createComputed, Signal } from '../../reactive'\nimport {\n ResponsiveValue,\n BreakpointKey,\n BreakpointContext,\n isResponsiveValue\n} from './types'\nimport {\n getCurrentBreakpoint,\n createBreakpointContext,\n getCurrentBreakpointConfig\n} from './breakpoints'\nimport { ResponsivePerformanceMonitor, cssRuleCache } from './performance'\nimport { MediaQueries } from './utilities'\n\n/**\n * Development mode responsive debugging\n */\nexport class ResponsiveDevTools {\n private static isEnabled = false\n private static debugOverlay: HTMLElement | null = null\n private static logLevel: 'error' | 'warn' | 'info' | 'debug' = 'info'\n\n /**\n * Enable responsive development tools\n */\n static enable(options: {\n showOverlay?: boolean\n showBreakpoints?: boolean\n showPerformance?: boolean\n logLevel?: 'error' | 'warn' | 'info' | 'debug'\n highlightResponsiveElements?: boolean\n position?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'\n } = {}): void {\n if (process.env.NODE_ENV === 'production') {\n console.warn('ResponsiveDevTools: Not enabling in production mode')\n return\n }\n\n this.isEnabled = true\n this.logLevel = options.logLevel || 'info'\n\n this.log('info', 'ResponsiveDevTools: Enabled')\n\n if (options.showOverlay) {\n this.createDebugOverlay(options)\n }\n\n if (options.highlightResponsiveElements) {\n this.enableElementHighlighting()\n }\n\n if (options.showPerformance) {\n this.enablePerformanceMonitoring()\n }\n\n // Log initial state\n this.logResponsiveState()\n }\n\n /**\n * Disable responsive development tools\n */\n static disable(): void {\n this.isEnabled = false\n\n if (this.debugOverlay) {\n this.debugOverlay.remove()\n this.debugOverlay = null\n }\n\n this.disableElementHighlighting()\n this.log('info', 'ResponsiveDevTools: Disabled')\n }\n\n /**\n * Check if development tools are enabled\n */\n static get enabled(): boolean {\n return this.isEnabled && process.env.NODE_ENV !== 'production'\n }\n\n /**\n * Log responsive information\n */\n private static log(level: 'error' | 'warn' | 'info' | 'debug', ...args: any[]): void {\n if (!this.enabled) return\n\n const levels = ['error', 'warn', 'info', 'debug']\n const currentLevel = levels.indexOf(this.logLevel)\n const messageLevel = levels.indexOf(level)\n\n if (messageLevel <= currentLevel) {\n console[level]('[ResponsiveDevTools]', ...args)\n }\n }\n\n /**\n * Create visual debug overlay\n */\n private static createDebugOverlay(options: {\n showBreakpoints?: boolean\n showPerformance?: boolean\n position?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'\n }): void {\n if (typeof document === 'undefined') return\n\n const position = options.position || 'top-right'\n\n this.debugOverlay = document.createElement('div')\n this.debugOverlay.id = 'tachui-responsive-debug'\n this.debugOverlay.style.cssText = `\n position: fixed;\n ${position.includes('top') ? 'top: 10px' : 'bottom: 10px'};\n ${position.includes('right') ? 'right: 10px' : 'left: 10px'};\n background: rgba(0, 0, 0, 0.9);\n color: white;\n padding: 12px;\n border-radius: 8px;\n font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;\n font-size: 12px;\n z-index: 10000;\n pointer-events: auto;\n cursor: pointer;\n max-width: 300px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);\n border: 1px solid rgba(255, 255, 255, 0.1);\n `\n\n // Add close button\n const closeButton = document.createElement('div')\n closeButton.textContent = '×'\n closeButton.style.cssText = `\n position: absolute;\n top: 4px;\n right: 8px;\n cursor: pointer;\n font-size: 16px;\n color: #ff6b6b;\n `\n closeButton.onclick = () => this.disable()\n this.debugOverlay.appendChild(closeButton)\n\n document.body.appendChild(this.debugOverlay)\n\n // Update overlay content reactively\n this.updateDebugOverlay(options)\n\n // Update on resize\n let resizeTimer: number\n window.addEventListener('resize', () => {\n clearTimeout(resizeTimer)\n resizeTimer = window.setTimeout(() => {\n this.updateDebugOverlay(options)\n }, 100)\n })\n }\n\n /**\n * Update debug overlay content\n */\n private static updateDebugOverlay(options: {\n showBreakpoints?: boolean\n showPerformance?: boolean\n }): void {\n if (!this.debugOverlay) return\n\n const context = createBreakpointContext()\n const breakpointConfig = getCurrentBreakpointConfig()\n\n let content = `\n <div style=\"margin-bottom: 8px; font-weight: bold; color: #4fc3f7;\">\n 📱 Responsive Debug\n </div>\n `\n\n // Current breakpoint info\n content += `\n <div style=\"margin-bottom: 6px;\">\n <strong>Current:</strong> <span style=\"color: #66bb6a;\">${context.current}</span>\n </div>\n <div style=\"margin-bottom: 6px;\">\n <strong>Size:</strong> ${context.width}×${context.height}\n </div>\n `\n\n // Breakpoint ranges\n if (options.showBreakpoints) {\n content += `<div style=\"margin: 8px 0; font-weight: bold; color: #ffb74d;\">Breakpoints:</div>`\n\n for (const [name, value] of Object.entries(breakpointConfig)) {\n const isActive = name === context.current\n const color = isActive ? '#66bb6a' : '#999'\n content += `\n <div style=\"color: ${color}; margin-bottom: 2px;\">\n ${isActive ? '▶' : '▷'} ${name}: ${value}\n </div>\n `\n }\n }\n\n // Performance info\n if (options.showPerformance) {\n const perfStats = ResponsivePerformanceMonitor.getStats()\n const cacheStats = cssRuleCache.getStats()\n\n content += `<div style=\"margin: 8px 0; font-weight: bold; color: #f06292;\">Performance:</div>`\n content += `\n <div style=\"margin-bottom: 2px;\">\n Cache: ${cacheStats.size} rules (${(cacheStats.hitRate * 100).toFixed(1)}% hit rate)\n </div>\n `\n\n if (Object.keys(perfStats).length > 0) {\n for (const [name, stats] of Object.entries(perfStats)) {\n content += `\n <div style=\"margin-bottom: 2px;\">\n ${name}: ${stats.average.toFixed(2)}ms avg\n </div>\n `\n }\n }\n }\n\n // Media query test results\n content += `<div style=\"margin: 8px 0; font-weight: bold; color: #ba68c8;\">Media Queries:</div>`\n\n const testQueries = {\n 'Touch': MediaQueries.touchDevice,\n 'Dark': MediaQueries.darkMode,\n 'Reduced Motion': MediaQueries.reducedMotion,\n 'High Contrast': MediaQueries.highContrast\n }\n\n for (const [name, query] of Object.entries(testQueries)) {\n const matches = window.matchMedia(query).matches\n const color = matches ? '#66bb6a' : '#666'\n content += `\n <div style=\"color: ${color}; margin-bottom: 2px;\">\n ${matches ? '✓' : '✗'} ${name}\n </div>\n `\n }\n\n this.debugOverlay.innerHTML = content + this.debugOverlay.querySelector('div:last-child')?.outerHTML || ''\n }\n\n /**\n * Enable element highlighting for responsive elements\n */\n private static enableElementHighlighting(): void {\n if (typeof document === 'undefined') return\n\n const style = document.createElement('style')\n style.id = 'tachui-responsive-highlight'\n style.textContent = `\n .tachui-responsive-element {\n outline: 2px dashed #4fc3f7 !important;\n outline-offset: 2px !important;\n position: relative !important;\n }\n\n .tachui-responsive-element::before {\n content: 'R';\n position: absolute !important;\n top: -8px !important;\n right: -8px !important;\n background: #4fc3f7 !important;\n color: white !important;\n width: 16px !important;\n height: 16px !important;\n border-radius: 50% !important;\n font-size: 10px !important;\n font-weight: bold !important;\n display: flex !important;\n align-items: center !important;\n justify-content: center !important;\n z-index: 10001 !important;\n font-family: monospace !important;\n }\n `\n\n document.head.appendChild(style)\n\n // Find and mark responsive elements\n const observer = new MutationObserver(() => {\n this.highlightResponsiveElements()\n })\n\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['class']\n })\n\n // Initial highlighting\n this.highlightResponsiveElements()\n }\n\n /**\n * Disable element highlighting\n */\n private static disableElementHighlighting(): void {\n if (typeof document === 'undefined') return\n\n const style = document.getElementById('tachui-responsive-highlight')\n if (style) {\n style.remove()\n }\n\n document.querySelectorAll('.tachui-responsive-element').forEach(el => {\n el.classList.remove('tachui-responsive-element')\n })\n }\n\n /**\n * Highlight elements with responsive classes\n */\n private static highlightResponsiveElements(): void {\n if (typeof document === 'undefined') return\n\n // Find elements with tachui responsive classes\n const responsiveSelectors = [\n '[class*=\"tachui-responsive-\"]',\n '[class*=\"tachui-mq-\"]'\n ]\n\n responsiveSelectors.forEach(selector => {\n document.querySelectorAll(selector).forEach(el => {\n if (!el.classList.contains('tachui-responsive-element')) {\n el.classList.add('tachui-responsive-element')\n }\n })\n })\n }\n\n /**\n * Enable performance monitoring display\n */\n private static enablePerformanceMonitoring(): void {\n // Log performance stats periodically\n setInterval(() => {\n if (!this.enabled) return\n\n const perfStats = ResponsivePerformanceMonitor.getStats()\n const cacheStats = cssRuleCache.getStats()\n\n this.log('debug', 'Performance Stats:', {\n cache: cacheStats,\n performance: perfStats\n })\n }, 5000)\n }\n\n /**\n * Log current responsive state\n */\n static logResponsiveState(): void {\n if (!this.enabled) return\n\n const context = createBreakpointContext()\n const config = getCurrentBreakpointConfig()\n\n console.group('🔍 TachUI Responsive State')\n console.log('Current breakpoint:', context.current)\n console.log('Viewport:', `${context.width}×${context.height}`)\n console.log('Configuration:', config)\n\n // Test media queries only in browser environment\n if (typeof window !== 'undefined' && window.matchMedia) {\n const queries = {\n 'Mobile': MediaQueries.mobile,\n 'Tablet': MediaQueries.tablet,\n 'Desktop': MediaQueries.desktop,\n 'Touch Device': MediaQueries.touchDevice,\n 'Dark Mode': MediaQueries.darkMode,\n 'Reduced Motion': MediaQueries.reducedMotion\n }\n\n console.log('Media Query Results:')\n for (const [name, query] of Object.entries(queries)) {\n try {\n console.log(` ${name}: ${window.matchMedia(query).matches}`)\n } catch (_error) {\n console.log(` ${name}: Error testing query`)\n }\n }\n }\n\n console.groupEnd()\n }\n\n /**\n * Inspect a responsive value\n */\n static inspectResponsiveValue<T>(\n value: ResponsiveValue<T>,\n label?: string\n ): void {\n if (!this.enabled) return\n\n const currentBreakpoint = getCurrentBreakpoint()\n\n console.group(`🔍 Responsive Value${label ? ` - ${label}` : ''}`)\n\n if (isResponsiveValue(value)) {\n const responsiveObj = value as Partial<Record<BreakpointKey, T>>\n console.log('Responsive object:', responsiveObj)\n\n // Show resolved value for current breakpoint\n const breakpointOrder: BreakpointKey[] = ['base', 'sm', 'md', 'lg', 'xl', '2xl']\n const currentIndex = breakpointOrder.indexOf(currentBreakpoint())\n\n let resolvedValue: T | undefined\n for (let i = currentIndex; i >= 0; i--) {\n const bp = breakpointOrder[i]\n if (responsiveObj[bp] !== undefined) {\n resolvedValue = responsiveObj[bp]\n console.log(`Resolved value (${bp}):`, resolvedValue)\n break\n }\n }\n\n // Show all defined breakpoints\n console.log('Defined breakpoints:')\n for (const [bp, val] of Object.entries(responsiveObj)) {\n if (val !== undefined) {\n const isCurrent = bp === currentBreakpoint()\n console.log(` ${isCurrent ? '→' : ' '} ${bp}:`, val)\n }\n }\n } else {\n console.log('Static value:', value)\n }\n\n console.groupEnd()\n }\n\n /**\n * Test responsive behavior\n */\n static testResponsiveBehavior(\n responsiveValue: ResponsiveValue<any>,\n testBreakpoints: BreakpointKey[] = ['base', 'sm', 'md', 'lg', 'xl', '2xl']\n ): Partial<Record<BreakpointKey, any>> {\n if (!this.enabled) return {}\n\n const results: Partial<Record<BreakpointKey, any>> = {}\n\n // Mock different breakpoints and test resolution\n testBreakpoints.forEach(bp => {\n // This would require breakpoint mocking functionality\n // For now, just log what would happen\n this.log('debug', `Testing breakpoint ${bp}:`, responsiveValue)\n })\n\n return results\n }\n\n /**\n * Export responsive configuration for debugging\n */\n static exportConfiguration(): {\n breakpoints: Record<BreakpointKey, string>\n currentContext: BreakpointContext\n performance: any\n mediaQueries: Record<string, boolean>\n } {\n const context = createBreakpointContext()\n const config = getCurrentBreakpointConfig()\n const perfStats = ResponsivePerformanceMonitor.getStats()\n const cacheStats = cssRuleCache.getStats()\n\n const mediaQueryResults: Record<string, boolean> = {}\n if (typeof window !== 'undefined' && window.matchMedia) {\n for (const [name, query] of Object.entries(MediaQueries)) {\n if (typeof query === 'string') {\n try {\n mediaQueryResults[name] = window.matchMedia(query).matches\n } catch (_error) {\n mediaQueryResults[name] = false\n }\n }\n }\n }\n\n return {\n breakpoints: config,\n currentContext: context,\n performance: {\n cache: cacheStats,\n timings: perfStats\n },\n mediaQueries: mediaQueryResults\n }\n }\n}\n\n/**\n * Responsive value inspector hook\n */\nexport function useResponsiveInspector<T>(\n value: ResponsiveValue<T>,\n label?: string\n): Signal<{\n resolvedValue: T | undefined\n activeBreakpoint: BreakpointKey\n allValues: Partial<Record<BreakpointKey, T>>\n isResponsive: boolean\n}> {\n const currentBreakpoint = getCurrentBreakpoint()\n\n return createComputed(() => {\n const breakpoint = currentBreakpoint()\n const isResponsive = isResponsiveValue(value)\n\n let resolvedValue: T | undefined\n let allValues: Partial<Record<BreakpointKey, T>> = {}\n\n if (isResponsive) {\n const responsiveObj = value as Partial<Record<BreakpointKey, T>>\n allValues = responsiveObj\n\n // Resolve value for current breakpoint\n const breakpointOrder: BreakpointKey[] = ['base', 'sm', 'md', 'lg', 'xl', '2xl']\n const currentIndex = breakpointOrder.indexOf(breakpoint)\n\n for (let i = currentIndex; i >= 0; i--) {\n const bp = breakpointOrder[i]\n if (responsiveObj[bp] !== undefined) {\n resolvedValue = responsiveObj[bp]\n break\n }\n }\n } else {\n resolvedValue = value as T\n allValues = { [breakpoint]: resolvedValue }\n }\n\n // Log in development mode\n if (ResponsiveDevTools.enabled && label) {\n ResponsiveDevTools.inspectResponsiveValue(value, label)\n }\n\n return {\n resolvedValue,\n activeBreakpoint: breakpoint,\n allValues,\n isResponsive\n }\n }) as Signal<{\n resolvedValue: T | undefined\n activeBreakpoint: BreakpointKey\n allValues: Partial<Record<BreakpointKey, T>>\n isResponsive: boolean\n }>\n}\n\n/**\n * Browser compatibility testing utilities\n */\nexport class BrowserCompatibility {\n /**\n * Test CSS features support\n */\n static testCSSFeatures(): Record<string, boolean> {\n if (typeof window === 'undefined' || typeof CSS === 'undefined' || !CSS.supports) {\n return {}\n }\n\n const features: Record<string, boolean> = {}\n\n try {\n // Test CSS Grid\n features.cssGrid = CSS.supports('display', 'grid')\n\n // Test CSS Flexbox\n features.flexbox = CSS.supports('display', 'flex')\n\n // Test CSS Custom Properties\n features.customProperties = CSS.supports('--test', 'value')\n\n // Test viewport units\n features.viewportUnits = CSS.supports('width', '100vw')\n\n // Test media queries\n features.mediaQueries = typeof window.matchMedia === 'function'\n\n // Test container queries (modern feature)\n features.containerQueries = CSS.supports('container-type', 'inline-size')\n\n // Test CSS logical properties\n features.logicalProperties = CSS.supports('margin-inline-start', '1rem')\n } catch (_error) {\n // If any test fails, just return what we have so far\n }\n\n return features\n }\n\n /**\n * Test responsive behavior across different viewport sizes\n */\n static testViewportSizes(\n callback: (width: number, height: number) => void\n ): void {\n if (typeof window === 'undefined') return\n\n const testSizes = [\n { width: 320, height: 568, name: 'iPhone SE' },\n { width: 375, height: 667, name: 'iPhone 8' },\n { width: 768, height: 1024, name: 'iPad Portrait' },\n { width: 1024, height: 768, name: 'iPad Landscape' },\n { width: 1280, height: 720, name: 'Desktop Small' },\n { width: 1920, height: 1080, name: 'Desktop Large' }\n ]\n\n // This would require a testing environment or dev tools integration\n if (ResponsiveDevTools.enabled) {\n ResponsiveDevTools['log']('info', 'Testing viewport sizes:', testSizes)\n }\n\n testSizes.forEach(size => {\n // In a real implementation, this would simulate the viewport size\n callback(size.width, size.height)\n })\n }\n}\n\n/**\n * Development-only global helpers\n */\nif (typeof window !== 'undefined' && process.env.NODE_ENV !== 'production') {\n // Add global helpers for development\n ;(window as any).tachUIResponsive = {\n devTools: ResponsiveDevTools,\n inspector: useResponsiveInspector,\n compatibility: BrowserCompatibility,\n logState: () => ResponsiveDevTools.logResponsiveState(),\n export: () => ResponsiveDevTools.exportConfiguration()\n }\n}\n"],"names":["ResponsiveDevTools","options","level","args","levels","currentLevel","position","closeButton","resizeTimer","context","createBreakpointContext","breakpointConfig","getCurrentBreakpointConfig","content","name","value","isActive","perfStats","ResponsivePerformanceMonitor","cacheStats","cssRuleCache","stats","testQueries","MediaQueries","query","matches","style","el","selector","config","queries","label","currentBreakpoint","getCurrentBreakpoint","isResponsiveValue","responsiveObj","breakpointOrder","currentIndex","resolvedValue","i","bp","val","isCurrent","responsiveValue","testBreakpoints","results","mediaQueryResults","__publicField","useResponsiveInspector","createComputed","breakpoint","isResponsive","allValues","BrowserCompatibility","features","callback","testSizes","size"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./responsive-modifier.cjs");class p{static autoFit(e){const t={};if(typeof e.minColumnWidth=="object"){t.gridTemplateColumns={};for(const[a,r]of Object.entries(e.minColumnWidth)){const s=typeof r=="number"?`${r}px`:r,o=e.maxColumns&&typeof e.maxColumns=="object"?e.maxColumns[a]||"auto":e.maxColumns||"auto";t.gridTemplateColumns[a]=o==="auto"?`repeat(auto-fit, minmax(${s}, 1fr))`:`repeat(${o}, minmax(${s}, 1fr))`}}else{const a=typeof e.minColumnWidth=="number"?`${e.minColumnWidth}px`:e.minColumnWidth,r=e.maxColumns||"auto";t.gridTemplateColumns=r==="auto"?`repeat(auto-fit, minmax(${a}, 1fr))`:`repeat(${r}, minmax(${a}, 1fr))`}return e.gap&&(t.gap=e.gap),t.display="grid",i.createResponsiveModifier(t)}static columns(e,t){const a={display:"grid",gridTemplateColumns:typeof e=="object"?Object.fromEntries(Object.entries(e).map(([r,s])=>[r,`repeat(${s}, 1fr)`])):`repeat(${e}, 1fr)`};return t?.gap&&(a.gap=t.gap),t?.rowGap&&(a.rowGap=t.rowGap),t?.autoRows&&(a.gridAutoRows=t.autoRows),i.createResponsiveModifier(a)}static masonry(e){const t={display:"grid",gridTemplateColumns:typeof e.columns=="object"?Object.fromEntries(Object.entries(e.columns).map(([a,r])=>[a,`repeat(${r}, 1fr)`])):`repeat(${e.columns}, 1fr)`,gridAutoRows:"max-content"};return e.gap&&(t.gap=e.gap),i.createResponsiveModifier(t)}}class l{static stackToRow(e){const a={display:"flex",flexDirection:{base:"column",[e?.stackBreakpoint||"md"]:"row"}};return e?.gap&&(a.gap=e.gap),e?.align&&(a.alignItems=e.align),e?.justify&&(a.justifyContent=e.justify),i.createResponsiveModifier(a)}static wrap(e){const t={display:"flex",flexWrap:"wrap",...e};return i.createResponsiveModifier(t)}static center(e="row"){const t={display:"flex",flexDirection:e,justifyContent:"center",alignItems:"center"};return i.createResponsiveModifier(t)}static spaceBetween(e="row"){const t={display:"flex",flexDirection:e,justifyContent:"space-between",alignItems:"center"};return i.createResponsiveModifier(t)}}class d{static container(e){const t={width:"100%",marginLeft:"auto",marginRight:"auto"};return e?.maxWidth?t.maxWidth=e.maxWidth:t.maxWidth={sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},e?.padding&&(t.paddingLeft=e.padding,t.paddingRight=e.padding),e?.margin&&(t.marginTop=e.margin,t.marginBottom=e.margin),i.createResponsiveModifier(t)}static fullWidth(){return i.createResponsiveModifier({width:"100vw",marginLeft:"calc(-50vw + 50%)",marginRight:"calc(-50vw + 50%)"})}static section(e){const t={};return e?.paddingY&&(t.paddingTop=e.paddingY,t.paddingBottom=e.paddingY),e?.paddingX&&(t.paddingLeft=e.paddingX,t.paddingRight=e.paddingX),e?.maxWidth&&(t.maxWidth=e.maxWidth,t.marginLeft="auto",t.marginRight="auto"),i.createResponsiveModifier(t)}}class m{static showOn(e){const t={display:{}};for(const a of e)t.display[a]="block";return i.createResponsiveModifier(t)}static hideOn(e){const t={display:{}};for(const a of e)t.display[a]="none";return i.createResponsiveModifier(t)}static mobileOnly(){return i.createResponsiveModifier({display:{base:"block",md:"none"}})}static desktopOnly(){return i.createResponsiveModifier({display:{base:"none",md:"block"}})}static tabletOnly(){return i.createResponsiveModifier({display:{base:"none",md:"block",lg:"none"}})}}class u{static padding(e){const t={};return e.all&&(t.padding=e.all),e.horizontal&&(t.paddingLeft=e.horizontal,t.paddingRight=e.horizontal),e.vertical&&(t.paddingTop=e.vertical,t.paddingBottom=e.vertical),e.top&&(t.paddingTop=e.top),e.right&&(t.paddingRight=e.right),e.bottom&&(t.paddingBottom=e.bottom),e.left&&(t.paddingLeft=e.left),i.createResponsiveModifier(t)}static margin(e){const t={};return e.all&&(t.margin=e.all),e.horizontal&&(t.marginLeft=e.horizontal,t.marginRight=e.horizontal),e.vertical&&(t.marginTop=e.vertical,t.marginBottom=e.vertical),e.top&&(t.marginTop=e.top),e.right&&(t.marginRight=e.right),e.bottom&&(t.marginBottom=e.bottom),e.left&&(t.marginLeft=e.left),i.createResponsiveModifier(t)}static gap(e){const t={};return e.all&&(t.gap=e.all),e.column&&(t.columnGap=e.column),e.row&&(t.rowGap=e.row),i.createResponsiveModifier(t)}}class x{static scale(e){const t={fontSize:e.base};if(e.scale&&typeof e.scale=="object"){t.fontSize={};for(const[a,r]of Object.entries(e.scale)){const s=typeof e.base=="number"?e.base:parseFloat(e.base);t.fontSize[a]=`${s*r}px`}}return e.lineHeight&&(t.lineHeight=e.lineHeight),i.createResponsiveModifier(t)}static fluid(e){const t=e.minBreakpoint||"320px",a=e.maxBreakpoint||"1200px",r=typeof e.minSize=="number"?`${e.minSize}px`:e.minSize,s=typeof e.maxSize=="number"?`${e.maxSize}px`:e.maxSize;return i.createResponsiveModifier({fontSize:`clamp(${r}, calc(${r} + (${s} - ${r}) * ((100vw - ${t}) / (${a} - ${t}))), ${s})`})}}exports.Container=d;exports.Flex=l;exports.ResponsiveContainerPatterns=d;exports.ResponsiveFlexPatterns=l;exports.ResponsiveGrid=p;exports.ResponsiveGridPatterns=p;exports.ResponsiveSpacingPatterns=u;exports.ResponsiveTypography=x;exports.ResponsiveTypographyPatterns=x;exports.ResponsiveVisibilityPatterns=m;exports.Spacing=u;exports.Visibility=m;
2
- //# sourceMappingURL=layout-patterns.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layout-patterns.cjs","sources":["../../../src/modifiers/responsive/layout-patterns.ts"],"sourcesContent":["/**\n * Responsive Layout Utility Patterns\n * \n * Provides common responsive layout patterns and utilities that make it easy\n * to create responsive designs without writing custom CSS for every use case.\n */\n\nimport { \n ResponsiveValue, \n BreakpointKey, \n ResponsiveSpacingConfig\n} from './types'\nimport { createResponsiveModifier } from './responsive-modifier'\n\n/**\n * Configuration for responsive grid layout\n */\nexport interface ResponsiveGridConfig {\n columns?: ResponsiveValue<number>\n rows?: ResponsiveValue<number>\n gap?: ResponsiveValue<string | number>\n columnGap?: ResponsiveValue<string | number>\n rowGap?: ResponsiveValue<string | number>\n autoFlow?: ResponsiveValue<'row' | 'column' | 'row dense' | 'column dense'>\n autoRows?: ResponsiveValue<string>\n autoColumns?: ResponsiveValue<string>\n templateAreas?: ResponsiveValue<string>\n}\n\n/**\n * Configuration for responsive flexbox layout\n */\nexport interface ResponsiveFlexConfig {\n direction?: ResponsiveValue<'row' | 'row-reverse' | 'column' | 'column-reverse'>\n wrap?: ResponsiveValue<'nowrap' | 'wrap' | 'wrap-reverse'>\n justify?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly'>\n align?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'>\n alignContent?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'stretch' | 'space-between' | 'space-around'>\n gap?: ResponsiveValue<string | number>\n columnGap?: ResponsiveValue<string | number>\n rowGap?: ResponsiveValue<string | number>\n}\n\n/**\n * Configuration for responsive container layout\n */\nexport interface ResponsiveContainerConfig {\n maxWidth?: ResponsiveValue<string | number>\n width?: ResponsiveValue<string | number>\n padding?: ResponsiveValue<string | number>\n margin?: ResponsiveValue<string | number>\n centerContent?: ResponsiveValue<boolean>\n}\n\n\n/**\n * Responsive Grid Layout Utilities\n */\nexport class ResponsiveGridPatterns {\n /**\n * Create a responsive grid with automatic column sizing\n */\n static autoFit(config: {\n minColumnWidth: ResponsiveValue<string | number>\n gap?: ResponsiveValue<string | number>\n maxColumns?: ResponsiveValue<number>\n }) {\n const gridConfig: any = {}\n \n if (typeof config.minColumnWidth === 'object') {\n // Handle responsive minColumnWidth\n gridConfig.gridTemplateColumns = {}\n for (const [breakpoint, width] of Object.entries(config.minColumnWidth)) {\n const widthValue = typeof width === 'number' ? `${width}px` : width\n const maxCols = config.maxColumns && typeof config.maxColumns === 'object' \n ? config.maxColumns[breakpoint as BreakpointKey] || 'auto'\n : config.maxColumns || 'auto'\n \n gridConfig.gridTemplateColumns[breakpoint] = maxCols === 'auto' \n ? `repeat(auto-fit, minmax(${widthValue}, 1fr))`\n : `repeat(${maxCols}, minmax(${widthValue}, 1fr))`\n }\n } else {\n const widthValue = typeof config.minColumnWidth === 'number' ? `${config.minColumnWidth}px` : config.minColumnWidth\n const maxCols = config.maxColumns || 'auto'\n gridConfig.gridTemplateColumns = maxCols === 'auto'\n ? `repeat(auto-fit, minmax(${widthValue}, 1fr))`\n : `repeat(${maxCols}, minmax(${widthValue}, 1fr))`\n }\n \n if (config.gap) {\n gridConfig.gap = config.gap\n }\n \n gridConfig.display = 'grid'\n \n return createResponsiveModifier(gridConfig)\n }\n \n /**\n * Create a responsive grid with explicit column counts\n */\n static columns(columns: ResponsiveValue<number>, config?: {\n gap?: ResponsiveValue<string | number>\n rowGap?: ResponsiveValue<string | number>\n autoRows?: ResponsiveValue<string>\n }) {\n const gridConfig: any = {\n display: 'grid',\n gridTemplateColumns: typeof columns === 'object' \n ? Object.fromEntries(\n Object.entries(columns).map(([bp, cols]) => [bp, `repeat(${cols}, 1fr)`])\n )\n : `repeat(${columns}, 1fr)`\n }\n \n if (config?.gap) gridConfig.gap = config.gap\n if (config?.rowGap) gridConfig.rowGap = config.rowGap\n if (config?.autoRows) gridConfig.gridAutoRows = config.autoRows\n \n return createResponsiveModifier(gridConfig)\n }\n \n /**\n * Create responsive masonry-style grid\n */\n static masonry(config: {\n columns: ResponsiveValue<number>\n gap?: ResponsiveValue<string | number>\n }) {\n const gridConfig: any = {\n display: 'grid',\n gridTemplateColumns: typeof config.columns === 'object'\n ? Object.fromEntries(\n Object.entries(config.columns).map(([bp, cols]) => [bp, `repeat(${cols}, 1fr)`])\n )\n : `repeat(${config.columns}, 1fr)`,\n gridAutoRows: 'max-content'\n }\n \n if (config.gap) gridConfig.gap = config.gap\n \n return createResponsiveModifier(gridConfig)\n }\n}\n\n/**\n * Responsive Flexbox Layout Utilities\n */\nexport class ResponsiveFlexPatterns {\n /**\n * Create a responsive flex container that stacks on mobile, flows horizontally on desktop\n */\n static stackToRow(config?: {\n stackBreakpoint?: BreakpointKey\n gap?: ResponsiveValue<string | number>\n align?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'>\n justify?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly'>\n }) {\n const stackBreakpoint = config?.stackBreakpoint || 'md'\n \n const flexConfig: any = {\n display: 'flex',\n flexDirection: {\n base: 'column',\n [stackBreakpoint]: 'row'\n }\n }\n \n if (config?.gap) flexConfig.gap = config.gap\n if (config?.align) flexConfig.alignItems = config.align\n if (config?.justify) flexConfig.justifyContent = config.justify\n \n return createResponsiveModifier(flexConfig)\n }\n \n /**\n * Create a responsive flex container with wrapping behavior\n */\n static wrap(config?: ResponsiveFlexConfig) {\n const flexConfig: any = {\n display: 'flex',\n flexWrap: 'wrap',\n ...config\n }\n \n return createResponsiveModifier(flexConfig)\n }\n \n /**\n * Create centered flex layout\n */\n static center(direction: ResponsiveValue<'row' | 'column'> = 'row') {\n const flexConfig: any = {\n display: 'flex',\n flexDirection: direction,\n justifyContent: 'center',\n alignItems: 'center'\n }\n \n return createResponsiveModifier(flexConfig)\n }\n \n /**\n * Create space-between flex layout\n */\n static spaceBetween(direction: ResponsiveValue<'row' | 'column'> = 'row') {\n const flexConfig: any = {\n display: 'flex',\n flexDirection: direction,\n justifyContent: 'space-between',\n alignItems: 'center'\n }\n \n return createResponsiveModifier(flexConfig)\n }\n}\n\n/**\n * Responsive Container Utilities\n */\nexport class ResponsiveContainerPatterns {\n /**\n * Create a responsive container with max-width constraints\n */\n static container(config?: ResponsiveContainerConfig) {\n const containerConfig: any = {\n width: '100%',\n marginLeft: 'auto',\n marginRight: 'auto'\n }\n \n if (config?.maxWidth) {\n containerConfig.maxWidth = config.maxWidth\n } else {\n // Default responsive max-widths\n containerConfig.maxWidth = {\n sm: '640px',\n md: '768px',\n lg: '1024px',\n xl: '1280px',\n '2xl': '1536px'\n }\n }\n \n if (config?.padding) {\n containerConfig.paddingLeft = config.padding\n containerConfig.paddingRight = config.padding\n }\n \n if (config?.margin) {\n containerConfig.marginTop = config.margin\n containerConfig.marginBottom = config.margin\n }\n \n return createResponsiveModifier(containerConfig)\n }\n \n /**\n * Create a full-width container that breaks out of constraints\n */\n static fullWidth() {\n return createResponsiveModifier({\n width: '100vw',\n marginLeft: 'calc(-50vw + 50%)',\n marginRight: 'calc(-50vw + 50%)'\n })\n }\n \n /**\n * Create a section container with responsive padding\n */\n static section(config?: {\n paddingY?: ResponsiveValue<string | number>\n paddingX?: ResponsiveValue<string | number>\n maxWidth?: ResponsiveValue<string | number>\n }) {\n const sectionConfig: any = {}\n \n if (config?.paddingY) {\n sectionConfig.paddingTop = config.paddingY\n sectionConfig.paddingBottom = config.paddingY\n }\n \n if (config?.paddingX) {\n sectionConfig.paddingLeft = config.paddingX\n sectionConfig.paddingRight = config.paddingX\n }\n \n if (config?.maxWidth) {\n sectionConfig.maxWidth = config.maxWidth\n sectionConfig.marginLeft = 'auto'\n sectionConfig.marginRight = 'auto'\n }\n \n return createResponsiveModifier(sectionConfig)\n }\n}\n\n/**\n * Responsive Visibility Utilities\n */\nexport class ResponsiveVisibilityPatterns {\n /**\n * Show element only on specific breakpoints\n */\n static showOn(breakpoints: BreakpointKey[]) {\n const displayConfig: any = {\n display: {} // Start with empty object\n }\n \n // Show on specified breakpoints\n for (const breakpoint of breakpoints) {\n displayConfig.display[breakpoint] = 'block'\n }\n \n return createResponsiveModifier(displayConfig)\n }\n \n /**\n * Hide element only on specific breakpoints\n */\n static hideOn(breakpoints: BreakpointKey[]) {\n const displayConfig: any = {\n display: {} // Start with empty object\n }\n \n // Hide on specified breakpoints\n for (const breakpoint of breakpoints) {\n displayConfig.display[breakpoint] = 'none'\n }\n \n return createResponsiveModifier(displayConfig)\n }\n \n /**\n * Show on mobile, hide on desktop\n */\n static mobileOnly() {\n return createResponsiveModifier({\n display: {\n base: 'block',\n md: 'none'\n }\n })\n }\n \n /**\n * Hide on mobile, show on desktop\n */\n static desktopOnly() {\n return createResponsiveModifier({\n display: {\n base: 'none',\n md: 'block'\n }\n })\n }\n \n /**\n * Show only on tablet breakpoint\n */\n static tabletOnly() {\n return createResponsiveModifier({\n display: {\n base: 'none',\n md: 'block',\n lg: 'none'\n }\n })\n }\n}\n\n/**\n * Responsive Spacing Utilities\n */\nexport class ResponsiveSpacingPatterns {\n /**\n * Create responsive padding\n */\n static padding(config: ResponsiveSpacingConfig) {\n const paddingConfig: any = {}\n \n if (config.all) paddingConfig.padding = config.all\n if (config.horizontal) {\n paddingConfig.paddingLeft = config.horizontal\n paddingConfig.paddingRight = config.horizontal\n }\n if (config.vertical) {\n paddingConfig.paddingTop = config.vertical\n paddingConfig.paddingBottom = config.vertical\n }\n if (config.top) paddingConfig.paddingTop = config.top\n if (config.right) paddingConfig.paddingRight = config.right\n if (config.bottom) paddingConfig.paddingBottom = config.bottom\n if (config.left) paddingConfig.paddingLeft = config.left\n \n return createResponsiveModifier(paddingConfig)\n }\n \n /**\n * Create responsive margin\n */\n static margin(config: ResponsiveSpacingConfig) {\n const marginConfig: any = {}\n \n if (config.all) marginConfig.margin = config.all\n if (config.horizontal) {\n marginConfig.marginLeft = config.horizontal\n marginConfig.marginRight = config.horizontal\n }\n if (config.vertical) {\n marginConfig.marginTop = config.vertical\n marginConfig.marginBottom = config.vertical\n }\n if (config.top) marginConfig.marginTop = config.top\n if (config.right) marginConfig.marginRight = config.right\n if (config.bottom) marginConfig.marginBottom = config.bottom\n if (config.left) marginConfig.marginLeft = config.left\n \n return createResponsiveModifier(marginConfig)\n }\n \n /**\n * Create responsive gap (for flexbox and grid)\n */\n static gap(config: {\n all?: ResponsiveValue<string | number>\n column?: ResponsiveValue<string | number>\n row?: ResponsiveValue<string | number>\n }) {\n const gapConfig: any = {}\n \n if (config.all) gapConfig.gap = config.all\n if (config.column) gapConfig.columnGap = config.column\n if (config.row) gapConfig.rowGap = config.row\n \n return createResponsiveModifier(gapConfig)\n }\n}\n\n/**\n * Responsive Typography Utilities\n */\nexport class ResponsiveTypographyPatterns {\n /**\n * Create responsive font scale\n */\n static scale(config: {\n base: string | number\n scale?: ResponsiveValue<number>\n lineHeight?: ResponsiveValue<number | string>\n }) {\n const typographyConfig: any = {\n fontSize: config.base\n }\n \n if (config.scale && typeof config.scale === 'object') {\n typographyConfig.fontSize = {}\n for (const [breakpoint, scaleValue] of Object.entries(config.scale)) {\n const baseSize = typeof config.base === 'number' ? config.base : parseFloat(config.base)\n typographyConfig.fontSize[breakpoint] = `${baseSize * scaleValue}px`\n }\n }\n \n if (config.lineHeight) {\n typographyConfig.lineHeight = config.lineHeight\n }\n \n return createResponsiveModifier(typographyConfig)\n }\n \n /**\n * Create fluid typography that scales smoothly\n */\n static fluid(config: {\n minSize: string | number\n maxSize: string | number\n minBreakpoint?: string\n maxBreakpoint?: string\n }) {\n const minBp = config.minBreakpoint || '320px'\n const maxBp = config.maxBreakpoint || '1200px'\n const minSize = typeof config.minSize === 'number' ? `${config.minSize}px` : config.minSize\n const maxSize = typeof config.maxSize === 'number' ? `${config.maxSize}px` : config.maxSize\n \n return createResponsiveModifier({\n fontSize: `clamp(${minSize}, calc(${minSize} + (${maxSize} - ${minSize}) * ((100vw - ${minBp}) / (${maxBp} - ${minBp}))), ${maxSize})`\n })\n }\n}\n\n/**\n * Common Layout Patterns\n */\nexport const LayoutPatterns = {\n /**\n * Sidebar layout that collapses on mobile\n */\n sidebar: (config?: {\n sidebarWidth?: ResponsiveValue<string | number>\n collapseBreakpoint?: BreakpointKey\n gap?: ResponsiveValue<string | number>\n }) => {\n const collapseBreakpoint = config?.collapseBreakpoint || 'md'\n const sidebarWidth = config?.sidebarWidth || '250px'\n \n return createResponsiveModifier({\n display: 'grid',\n gridTemplateColumns: {\n base: '1fr',\n [collapseBreakpoint]: `${sidebarWidth} 1fr`\n },\n gap: config?.gap || '1rem'\n })\n },\n \n /**\n * Holy grail layout (header, footer, sidebar, main content)\n */\n holyGrail: (config?: {\n headerHeight?: ResponsiveValue<string | number>\n footerHeight?: ResponsiveValue<string | number>\n sidebarWidth?: ResponsiveValue<string | number>\n collapseBreakpoint?: BreakpointKey\n }) => {\n const collapseBreakpoint = config?.collapseBreakpoint || 'lg'\n \n return createResponsiveModifier({\n display: 'grid',\n gridTemplateAreas: {\n base: '\"header\" \"main\" \"footer\"',\n [collapseBreakpoint]: '\"header header\" \"sidebar main\" \"footer footer\"'\n },\n gridTemplateRows: {\n base: `${config?.headerHeight || 'auto'} 1fr ${config?.footerHeight || 'auto'}`,\n [collapseBreakpoint]: `${config?.headerHeight || 'auto'} 1fr ${config?.footerHeight || 'auto'}`\n },\n gridTemplateColumns: {\n base: '1fr',\n [collapseBreakpoint]: `${config?.sidebarWidth || '250px'} 1fr`\n },\n minHeight: '100vh'\n })\n },\n \n /**\n * Card grid layout\n */\n cardGrid: (config?: {\n minCardWidth?: ResponsiveValue<string | number>\n gap?: ResponsiveValue<string | number>\n maxColumns?: ResponsiveValue<number>\n }) => {\n return ResponsiveGridPatterns.autoFit({\n minColumnWidth: config?.minCardWidth || '300px',\n gap: config?.gap || '1rem',\n maxColumns: config?.maxColumns\n })\n },\n \n /**\n * Hero section layout\n */\n hero: (config?: {\n minHeight?: ResponsiveValue<string | number>\n textAlign?: ResponsiveValue<'left' | 'center' | 'right'>\n padding?: ResponsiveValue<string | number>\n }) => {\n return createResponsiveModifier({\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n textAlign: config?.textAlign || 'center',\n minHeight: config?.minHeight || '50vh',\n padding: config?.padding || '2rem'\n })\n }\n}\n\n/**\n * Export all layout patterns for easy access\n */\nexport {\n ResponsiveGridPatterns as ResponsiveGrid,\n ResponsiveFlexPatterns as Flex,\n ResponsiveContainerPatterns as Container,\n ResponsiveVisibilityPatterns as Visibility,\n ResponsiveSpacingPatterns as Spacing,\n ResponsiveTypographyPatterns as ResponsiveTypography\n}"],"names":["ResponsiveGridPatterns","config","gridConfig","breakpoint","width","widthValue","maxCols","createResponsiveModifier","columns","bp","cols","ResponsiveFlexPatterns","flexConfig","direction","ResponsiveContainerPatterns","containerConfig","sectionConfig","ResponsiveVisibilityPatterns","breakpoints","displayConfig","ResponsiveSpacingPatterns","paddingConfig","marginConfig","gapConfig","ResponsiveTypographyPatterns","typographyConfig","scaleValue","baseSize","minBp","maxBp","minSize","maxSize"],"mappings":"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"}
@@ -1,254 +0,0 @@
1
- import { createResponsiveModifier as i } from "./responsive-modifier.js";
2
- class o {
3
- /**
4
- * Create a responsive grid with automatic column sizing
5
- */
6
- static autoFit(t) {
7
- const a = {};
8
- if (typeof t.minColumnWidth == "object") {
9
- a.gridTemplateColumns = {};
10
- for (const [e, r] of Object.entries(t.minColumnWidth)) {
11
- const s = typeof r == "number" ? `${r}px` : r, p = t.maxColumns && typeof t.maxColumns == "object" ? t.maxColumns[e] || "auto" : t.maxColumns || "auto";
12
- a.gridTemplateColumns[e] = p === "auto" ? `repeat(auto-fit, minmax(${s}, 1fr))` : `repeat(${p}, minmax(${s}, 1fr))`;
13
- }
14
- } else {
15
- const e = typeof t.minColumnWidth == "number" ? `${t.minColumnWidth}px` : t.minColumnWidth, r = t.maxColumns || "auto";
16
- a.gridTemplateColumns = r === "auto" ? `repeat(auto-fit, minmax(${e}, 1fr))` : `repeat(${r}, minmax(${e}, 1fr))`;
17
- }
18
- return t.gap && (a.gap = t.gap), a.display = "grid", i(a);
19
- }
20
- /**
21
- * Create a responsive grid with explicit column counts
22
- */
23
- static columns(t, a) {
24
- const e = {
25
- display: "grid",
26
- gridTemplateColumns: typeof t == "object" ? Object.fromEntries(
27
- Object.entries(t).map(([r, s]) => [r, `repeat(${s}, 1fr)`])
28
- ) : `repeat(${t}, 1fr)`
29
- };
30
- return a?.gap && (e.gap = a.gap), a?.rowGap && (e.rowGap = a.rowGap), a?.autoRows && (e.gridAutoRows = a.autoRows), i(e);
31
- }
32
- /**
33
- * Create responsive masonry-style grid
34
- */
35
- static masonry(t) {
36
- const a = {
37
- display: "grid",
38
- gridTemplateColumns: typeof t.columns == "object" ? Object.fromEntries(
39
- Object.entries(t.columns).map(([e, r]) => [e, `repeat(${r}, 1fr)`])
40
- ) : `repeat(${t.columns}, 1fr)`,
41
- gridAutoRows: "max-content"
42
- };
43
- return t.gap && (a.gap = t.gap), i(a);
44
- }
45
- }
46
- class m {
47
- /**
48
- * Create a responsive flex container that stacks on mobile, flows horizontally on desktop
49
- */
50
- static stackToRow(t) {
51
- const e = {
52
- display: "flex",
53
- flexDirection: {
54
- base: "column",
55
- [t?.stackBreakpoint || "md"]: "row"
56
- }
57
- };
58
- return t?.gap && (e.gap = t.gap), t?.align && (e.alignItems = t.align), t?.justify && (e.justifyContent = t.justify), i(e);
59
- }
60
- /**
61
- * Create a responsive flex container with wrapping behavior
62
- */
63
- static wrap(t) {
64
- const a = {
65
- display: "flex",
66
- flexWrap: "wrap",
67
- ...t
68
- };
69
- return i(a);
70
- }
71
- /**
72
- * Create centered flex layout
73
- */
74
- static center(t = "row") {
75
- return i({
76
- display: "flex",
77
- flexDirection: t,
78
- justifyContent: "center",
79
- alignItems: "center"
80
- });
81
- }
82
- /**
83
- * Create space-between flex layout
84
- */
85
- static spaceBetween(t = "row") {
86
- return i({
87
- display: "flex",
88
- flexDirection: t,
89
- justifyContent: "space-between",
90
- alignItems: "center"
91
- });
92
- }
93
- }
94
- class d {
95
- /**
96
- * Create a responsive container with max-width constraints
97
- */
98
- static container(t) {
99
- const a = {
100
- width: "100%",
101
- marginLeft: "auto",
102
- marginRight: "auto"
103
- };
104
- return t?.maxWidth ? a.maxWidth = t.maxWidth : a.maxWidth = {
105
- sm: "640px",
106
- md: "768px",
107
- lg: "1024px",
108
- xl: "1280px",
109
- "2xl": "1536px"
110
- }, t?.padding && (a.paddingLeft = t.padding, a.paddingRight = t.padding), t?.margin && (a.marginTop = t.margin, a.marginBottom = t.margin), i(a);
111
- }
112
- /**
113
- * Create a full-width container that breaks out of constraints
114
- */
115
- static fullWidth() {
116
- return i({
117
- width: "100vw",
118
- marginLeft: "calc(-50vw + 50%)",
119
- marginRight: "calc(-50vw + 50%)"
120
- });
121
- }
122
- /**
123
- * Create a section container with responsive padding
124
- */
125
- static section(t) {
126
- const a = {};
127
- return t?.paddingY && (a.paddingTop = t.paddingY, a.paddingBottom = t.paddingY), t?.paddingX && (a.paddingLeft = t.paddingX, a.paddingRight = t.paddingX), t?.maxWidth && (a.maxWidth = t.maxWidth, a.marginLeft = "auto", a.marginRight = "auto"), i(a);
128
- }
129
- }
130
- class u {
131
- /**
132
- * Show element only on specific breakpoints
133
- */
134
- static showOn(t) {
135
- const a = {
136
- display: {}
137
- // Start with empty object
138
- };
139
- for (const e of t)
140
- a.display[e] = "block";
141
- return i(a);
142
- }
143
- /**
144
- * Hide element only on specific breakpoints
145
- */
146
- static hideOn(t) {
147
- const a = {
148
- display: {}
149
- // Start with empty object
150
- };
151
- for (const e of t)
152
- a.display[e] = "none";
153
- return i(a);
154
- }
155
- /**
156
- * Show on mobile, hide on desktop
157
- */
158
- static mobileOnly() {
159
- return i({
160
- display: {
161
- base: "block",
162
- md: "none"
163
- }
164
- });
165
- }
166
- /**
167
- * Hide on mobile, show on desktop
168
- */
169
- static desktopOnly() {
170
- return i({
171
- display: {
172
- base: "none",
173
- md: "block"
174
- }
175
- });
176
- }
177
- /**
178
- * Show only on tablet breakpoint
179
- */
180
- static tabletOnly() {
181
- return i({
182
- display: {
183
- base: "none",
184
- md: "block",
185
- lg: "none"
186
- }
187
- });
188
- }
189
- }
190
- class x {
191
- /**
192
- * Create responsive padding
193
- */
194
- static padding(t) {
195
- const a = {};
196
- return t.all && (a.padding = t.all), t.horizontal && (a.paddingLeft = t.horizontal, a.paddingRight = t.horizontal), t.vertical && (a.paddingTop = t.vertical, a.paddingBottom = t.vertical), t.top && (a.paddingTop = t.top), t.right && (a.paddingRight = t.right), t.bottom && (a.paddingBottom = t.bottom), t.left && (a.paddingLeft = t.left), i(a);
197
- }
198
- /**
199
- * Create responsive margin
200
- */
201
- static margin(t) {
202
- const a = {};
203
- return t.all && (a.margin = t.all), t.horizontal && (a.marginLeft = t.horizontal, a.marginRight = t.horizontal), t.vertical && (a.marginTop = t.vertical, a.marginBottom = t.vertical), t.top && (a.marginTop = t.top), t.right && (a.marginRight = t.right), t.bottom && (a.marginBottom = t.bottom), t.left && (a.marginLeft = t.left), i(a);
204
- }
205
- /**
206
- * Create responsive gap (for flexbox and grid)
207
- */
208
- static gap(t) {
209
- const a = {};
210
- return t.all && (a.gap = t.all), t.column && (a.columnGap = t.column), t.row && (a.rowGap = t.row), i(a);
211
- }
212
- }
213
- class h {
214
- /**
215
- * Create responsive font scale
216
- */
217
- static scale(t) {
218
- const a = {
219
- fontSize: t.base
220
- };
221
- if (t.scale && typeof t.scale == "object") {
222
- a.fontSize = {};
223
- for (const [e, r] of Object.entries(t.scale)) {
224
- const s = typeof t.base == "number" ? t.base : parseFloat(t.base);
225
- a.fontSize[e] = `${s * r}px`;
226
- }
227
- }
228
- return t.lineHeight && (a.lineHeight = t.lineHeight), i(a);
229
- }
230
- /**
231
- * Create fluid typography that scales smoothly
232
- */
233
- static fluid(t) {
234
- const a = t.minBreakpoint || "320px", e = t.maxBreakpoint || "1200px", r = typeof t.minSize == "number" ? `${t.minSize}px` : t.minSize, s = typeof t.maxSize == "number" ? `${t.maxSize}px` : t.maxSize;
235
- return i({
236
- fontSize: `clamp(${r}, calc(${r} + (${s} - ${r}) * ((100vw - ${a}) / (${e} - ${a}))), ${s})`
237
- });
238
- }
239
- }
240
- export {
241
- d as Container,
242
- m as Flex,
243
- d as ResponsiveContainerPatterns,
244
- m as ResponsiveFlexPatterns,
245
- o as ResponsiveGrid,
246
- o as ResponsiveGridPatterns,
247
- x as ResponsiveSpacingPatterns,
248
- h as ResponsiveTypography,
249
- h as ResponsiveTypographyPatterns,
250
- u as ResponsiveVisibilityPatterns,
251
- x as Spacing,
252
- u as Visibility
253
- };
254
- //# sourceMappingURL=layout-patterns.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layout-patterns.js","sources":["../../../src/modifiers/responsive/layout-patterns.ts"],"sourcesContent":["/**\n * Responsive Layout Utility Patterns\n * \n * Provides common responsive layout patterns and utilities that make it easy\n * to create responsive designs without writing custom CSS for every use case.\n */\n\nimport { \n ResponsiveValue, \n BreakpointKey, \n ResponsiveSpacingConfig\n} from './types'\nimport { createResponsiveModifier } from './responsive-modifier'\n\n/**\n * Configuration for responsive grid layout\n */\nexport interface ResponsiveGridConfig {\n columns?: ResponsiveValue<number>\n rows?: ResponsiveValue<number>\n gap?: ResponsiveValue<string | number>\n columnGap?: ResponsiveValue<string | number>\n rowGap?: ResponsiveValue<string | number>\n autoFlow?: ResponsiveValue<'row' | 'column' | 'row dense' | 'column dense'>\n autoRows?: ResponsiveValue<string>\n autoColumns?: ResponsiveValue<string>\n templateAreas?: ResponsiveValue<string>\n}\n\n/**\n * Configuration for responsive flexbox layout\n */\nexport interface ResponsiveFlexConfig {\n direction?: ResponsiveValue<'row' | 'row-reverse' | 'column' | 'column-reverse'>\n wrap?: ResponsiveValue<'nowrap' | 'wrap' | 'wrap-reverse'>\n justify?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly'>\n align?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'>\n alignContent?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'stretch' | 'space-between' | 'space-around'>\n gap?: ResponsiveValue<string | number>\n columnGap?: ResponsiveValue<string | number>\n rowGap?: ResponsiveValue<string | number>\n}\n\n/**\n * Configuration for responsive container layout\n */\nexport interface ResponsiveContainerConfig {\n maxWidth?: ResponsiveValue<string | number>\n width?: ResponsiveValue<string | number>\n padding?: ResponsiveValue<string | number>\n margin?: ResponsiveValue<string | number>\n centerContent?: ResponsiveValue<boolean>\n}\n\n\n/**\n * Responsive Grid Layout Utilities\n */\nexport class ResponsiveGridPatterns {\n /**\n * Create a responsive grid with automatic column sizing\n */\n static autoFit(config: {\n minColumnWidth: ResponsiveValue<string | number>\n gap?: ResponsiveValue<string | number>\n maxColumns?: ResponsiveValue<number>\n }) {\n const gridConfig: any = {}\n \n if (typeof config.minColumnWidth === 'object') {\n // Handle responsive minColumnWidth\n gridConfig.gridTemplateColumns = {}\n for (const [breakpoint, width] of Object.entries(config.minColumnWidth)) {\n const widthValue = typeof width === 'number' ? `${width}px` : width\n const maxCols = config.maxColumns && typeof config.maxColumns === 'object' \n ? config.maxColumns[breakpoint as BreakpointKey] || 'auto'\n : config.maxColumns || 'auto'\n \n gridConfig.gridTemplateColumns[breakpoint] = maxCols === 'auto' \n ? `repeat(auto-fit, minmax(${widthValue}, 1fr))`\n : `repeat(${maxCols}, minmax(${widthValue}, 1fr))`\n }\n } else {\n const widthValue = typeof config.minColumnWidth === 'number' ? `${config.minColumnWidth}px` : config.minColumnWidth\n const maxCols = config.maxColumns || 'auto'\n gridConfig.gridTemplateColumns = maxCols === 'auto'\n ? `repeat(auto-fit, minmax(${widthValue}, 1fr))`\n : `repeat(${maxCols}, minmax(${widthValue}, 1fr))`\n }\n \n if (config.gap) {\n gridConfig.gap = config.gap\n }\n \n gridConfig.display = 'grid'\n \n return createResponsiveModifier(gridConfig)\n }\n \n /**\n * Create a responsive grid with explicit column counts\n */\n static columns(columns: ResponsiveValue<number>, config?: {\n gap?: ResponsiveValue<string | number>\n rowGap?: ResponsiveValue<string | number>\n autoRows?: ResponsiveValue<string>\n }) {\n const gridConfig: any = {\n display: 'grid',\n gridTemplateColumns: typeof columns === 'object' \n ? Object.fromEntries(\n Object.entries(columns).map(([bp, cols]) => [bp, `repeat(${cols}, 1fr)`])\n )\n : `repeat(${columns}, 1fr)`\n }\n \n if (config?.gap) gridConfig.gap = config.gap\n if (config?.rowGap) gridConfig.rowGap = config.rowGap\n if (config?.autoRows) gridConfig.gridAutoRows = config.autoRows\n \n return createResponsiveModifier(gridConfig)\n }\n \n /**\n * Create responsive masonry-style grid\n */\n static masonry(config: {\n columns: ResponsiveValue<number>\n gap?: ResponsiveValue<string | number>\n }) {\n const gridConfig: any = {\n display: 'grid',\n gridTemplateColumns: typeof config.columns === 'object'\n ? Object.fromEntries(\n Object.entries(config.columns).map(([bp, cols]) => [bp, `repeat(${cols}, 1fr)`])\n )\n : `repeat(${config.columns}, 1fr)`,\n gridAutoRows: 'max-content'\n }\n \n if (config.gap) gridConfig.gap = config.gap\n \n return createResponsiveModifier(gridConfig)\n }\n}\n\n/**\n * Responsive Flexbox Layout Utilities\n */\nexport class ResponsiveFlexPatterns {\n /**\n * Create a responsive flex container that stacks on mobile, flows horizontally on desktop\n */\n static stackToRow(config?: {\n stackBreakpoint?: BreakpointKey\n gap?: ResponsiveValue<string | number>\n align?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'>\n justify?: ResponsiveValue<'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly'>\n }) {\n const stackBreakpoint = config?.stackBreakpoint || 'md'\n \n const flexConfig: any = {\n display: 'flex',\n flexDirection: {\n base: 'column',\n [stackBreakpoint]: 'row'\n }\n }\n \n if (config?.gap) flexConfig.gap = config.gap\n if (config?.align) flexConfig.alignItems = config.align\n if (config?.justify) flexConfig.justifyContent = config.justify\n \n return createResponsiveModifier(flexConfig)\n }\n \n /**\n * Create a responsive flex container with wrapping behavior\n */\n static wrap(config?: ResponsiveFlexConfig) {\n const flexConfig: any = {\n display: 'flex',\n flexWrap: 'wrap',\n ...config\n }\n \n return createResponsiveModifier(flexConfig)\n }\n \n /**\n * Create centered flex layout\n */\n static center(direction: ResponsiveValue<'row' | 'column'> = 'row') {\n const flexConfig: any = {\n display: 'flex',\n flexDirection: direction,\n justifyContent: 'center',\n alignItems: 'center'\n }\n \n return createResponsiveModifier(flexConfig)\n }\n \n /**\n * Create space-between flex layout\n */\n static spaceBetween(direction: ResponsiveValue<'row' | 'column'> = 'row') {\n const flexConfig: any = {\n display: 'flex',\n flexDirection: direction,\n justifyContent: 'space-between',\n alignItems: 'center'\n }\n \n return createResponsiveModifier(flexConfig)\n }\n}\n\n/**\n * Responsive Container Utilities\n */\nexport class ResponsiveContainerPatterns {\n /**\n * Create a responsive container with max-width constraints\n */\n static container(config?: ResponsiveContainerConfig) {\n const containerConfig: any = {\n width: '100%',\n marginLeft: 'auto',\n marginRight: 'auto'\n }\n \n if (config?.maxWidth) {\n containerConfig.maxWidth = config.maxWidth\n } else {\n // Default responsive max-widths\n containerConfig.maxWidth = {\n sm: '640px',\n md: '768px',\n lg: '1024px',\n xl: '1280px',\n '2xl': '1536px'\n }\n }\n \n if (config?.padding) {\n containerConfig.paddingLeft = config.padding\n containerConfig.paddingRight = config.padding\n }\n \n if (config?.margin) {\n containerConfig.marginTop = config.margin\n containerConfig.marginBottom = config.margin\n }\n \n return createResponsiveModifier(containerConfig)\n }\n \n /**\n * Create a full-width container that breaks out of constraints\n */\n static fullWidth() {\n return createResponsiveModifier({\n width: '100vw',\n marginLeft: 'calc(-50vw + 50%)',\n marginRight: 'calc(-50vw + 50%)'\n })\n }\n \n /**\n * Create a section container with responsive padding\n */\n static section(config?: {\n paddingY?: ResponsiveValue<string | number>\n paddingX?: ResponsiveValue<string | number>\n maxWidth?: ResponsiveValue<string | number>\n }) {\n const sectionConfig: any = {}\n \n if (config?.paddingY) {\n sectionConfig.paddingTop = config.paddingY\n sectionConfig.paddingBottom = config.paddingY\n }\n \n if (config?.paddingX) {\n sectionConfig.paddingLeft = config.paddingX\n sectionConfig.paddingRight = config.paddingX\n }\n \n if (config?.maxWidth) {\n sectionConfig.maxWidth = config.maxWidth\n sectionConfig.marginLeft = 'auto'\n sectionConfig.marginRight = 'auto'\n }\n \n return createResponsiveModifier(sectionConfig)\n }\n}\n\n/**\n * Responsive Visibility Utilities\n */\nexport class ResponsiveVisibilityPatterns {\n /**\n * Show element only on specific breakpoints\n */\n static showOn(breakpoints: BreakpointKey[]) {\n const displayConfig: any = {\n display: {} // Start with empty object\n }\n \n // Show on specified breakpoints\n for (const breakpoint of breakpoints) {\n displayConfig.display[breakpoint] = 'block'\n }\n \n return createResponsiveModifier(displayConfig)\n }\n \n /**\n * Hide element only on specific breakpoints\n */\n static hideOn(breakpoints: BreakpointKey[]) {\n const displayConfig: any = {\n display: {} // Start with empty object\n }\n \n // Hide on specified breakpoints\n for (const breakpoint of breakpoints) {\n displayConfig.display[breakpoint] = 'none'\n }\n \n return createResponsiveModifier(displayConfig)\n }\n \n /**\n * Show on mobile, hide on desktop\n */\n static mobileOnly() {\n return createResponsiveModifier({\n display: {\n base: 'block',\n md: 'none'\n }\n })\n }\n \n /**\n * Hide on mobile, show on desktop\n */\n static desktopOnly() {\n return createResponsiveModifier({\n display: {\n base: 'none',\n md: 'block'\n }\n })\n }\n \n /**\n * Show only on tablet breakpoint\n */\n static tabletOnly() {\n return createResponsiveModifier({\n display: {\n base: 'none',\n md: 'block',\n lg: 'none'\n }\n })\n }\n}\n\n/**\n * Responsive Spacing Utilities\n */\nexport class ResponsiveSpacingPatterns {\n /**\n * Create responsive padding\n */\n static padding(config: ResponsiveSpacingConfig) {\n const paddingConfig: any = {}\n \n if (config.all) paddingConfig.padding = config.all\n if (config.horizontal) {\n paddingConfig.paddingLeft = config.horizontal\n paddingConfig.paddingRight = config.horizontal\n }\n if (config.vertical) {\n paddingConfig.paddingTop = config.vertical\n paddingConfig.paddingBottom = config.vertical\n }\n if (config.top) paddingConfig.paddingTop = config.top\n if (config.right) paddingConfig.paddingRight = config.right\n if (config.bottom) paddingConfig.paddingBottom = config.bottom\n if (config.left) paddingConfig.paddingLeft = config.left\n \n return createResponsiveModifier(paddingConfig)\n }\n \n /**\n * Create responsive margin\n */\n static margin(config: ResponsiveSpacingConfig) {\n const marginConfig: any = {}\n \n if (config.all) marginConfig.margin = config.all\n if (config.horizontal) {\n marginConfig.marginLeft = config.horizontal\n marginConfig.marginRight = config.horizontal\n }\n if (config.vertical) {\n marginConfig.marginTop = config.vertical\n marginConfig.marginBottom = config.vertical\n }\n if (config.top) marginConfig.marginTop = config.top\n if (config.right) marginConfig.marginRight = config.right\n if (config.bottom) marginConfig.marginBottom = config.bottom\n if (config.left) marginConfig.marginLeft = config.left\n \n return createResponsiveModifier(marginConfig)\n }\n \n /**\n * Create responsive gap (for flexbox and grid)\n */\n static gap(config: {\n all?: ResponsiveValue<string | number>\n column?: ResponsiveValue<string | number>\n row?: ResponsiveValue<string | number>\n }) {\n const gapConfig: any = {}\n \n if (config.all) gapConfig.gap = config.all\n if (config.column) gapConfig.columnGap = config.column\n if (config.row) gapConfig.rowGap = config.row\n \n return createResponsiveModifier(gapConfig)\n }\n}\n\n/**\n * Responsive Typography Utilities\n */\nexport class ResponsiveTypographyPatterns {\n /**\n * Create responsive font scale\n */\n static scale(config: {\n base: string | number\n scale?: ResponsiveValue<number>\n lineHeight?: ResponsiveValue<number | string>\n }) {\n const typographyConfig: any = {\n fontSize: config.base\n }\n \n if (config.scale && typeof config.scale === 'object') {\n typographyConfig.fontSize = {}\n for (const [breakpoint, scaleValue] of Object.entries(config.scale)) {\n const baseSize = typeof config.base === 'number' ? config.base : parseFloat(config.base)\n typographyConfig.fontSize[breakpoint] = `${baseSize * scaleValue}px`\n }\n }\n \n if (config.lineHeight) {\n typographyConfig.lineHeight = config.lineHeight\n }\n \n return createResponsiveModifier(typographyConfig)\n }\n \n /**\n * Create fluid typography that scales smoothly\n */\n static fluid(config: {\n minSize: string | number\n maxSize: string | number\n minBreakpoint?: string\n maxBreakpoint?: string\n }) {\n const minBp = config.minBreakpoint || '320px'\n const maxBp = config.maxBreakpoint || '1200px'\n const minSize = typeof config.minSize === 'number' ? `${config.minSize}px` : config.minSize\n const maxSize = typeof config.maxSize === 'number' ? `${config.maxSize}px` : config.maxSize\n \n return createResponsiveModifier({\n fontSize: `clamp(${minSize}, calc(${minSize} + (${maxSize} - ${minSize}) * ((100vw - ${minBp}) / (${maxBp} - ${minBp}))), ${maxSize})`\n })\n }\n}\n\n/**\n * Common Layout Patterns\n */\nexport const LayoutPatterns = {\n /**\n * Sidebar layout that collapses on mobile\n */\n sidebar: (config?: {\n sidebarWidth?: ResponsiveValue<string | number>\n collapseBreakpoint?: BreakpointKey\n gap?: ResponsiveValue<string | number>\n }) => {\n const collapseBreakpoint = config?.collapseBreakpoint || 'md'\n const sidebarWidth = config?.sidebarWidth || '250px'\n \n return createResponsiveModifier({\n display: 'grid',\n gridTemplateColumns: {\n base: '1fr',\n [collapseBreakpoint]: `${sidebarWidth} 1fr`\n },\n gap: config?.gap || '1rem'\n })\n },\n \n /**\n * Holy grail layout (header, footer, sidebar, main content)\n */\n holyGrail: (config?: {\n headerHeight?: ResponsiveValue<string | number>\n footerHeight?: ResponsiveValue<string | number>\n sidebarWidth?: ResponsiveValue<string | number>\n collapseBreakpoint?: BreakpointKey\n }) => {\n const collapseBreakpoint = config?.collapseBreakpoint || 'lg'\n \n return createResponsiveModifier({\n display: 'grid',\n gridTemplateAreas: {\n base: '\"header\" \"main\" \"footer\"',\n [collapseBreakpoint]: '\"header header\" \"sidebar main\" \"footer footer\"'\n },\n gridTemplateRows: {\n base: `${config?.headerHeight || 'auto'} 1fr ${config?.footerHeight || 'auto'}`,\n [collapseBreakpoint]: `${config?.headerHeight || 'auto'} 1fr ${config?.footerHeight || 'auto'}`\n },\n gridTemplateColumns: {\n base: '1fr',\n [collapseBreakpoint]: `${config?.sidebarWidth || '250px'} 1fr`\n },\n minHeight: '100vh'\n })\n },\n \n /**\n * Card grid layout\n */\n cardGrid: (config?: {\n minCardWidth?: ResponsiveValue<string | number>\n gap?: ResponsiveValue<string | number>\n maxColumns?: ResponsiveValue<number>\n }) => {\n return ResponsiveGridPatterns.autoFit({\n minColumnWidth: config?.minCardWidth || '300px',\n gap: config?.gap || '1rem',\n maxColumns: config?.maxColumns\n })\n },\n \n /**\n * Hero section layout\n */\n hero: (config?: {\n minHeight?: ResponsiveValue<string | number>\n textAlign?: ResponsiveValue<'left' | 'center' | 'right'>\n padding?: ResponsiveValue<string | number>\n }) => {\n return createResponsiveModifier({\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n textAlign: config?.textAlign || 'center',\n minHeight: config?.minHeight || '50vh',\n padding: config?.padding || '2rem'\n })\n }\n}\n\n/**\n * Export all layout patterns for easy access\n */\nexport {\n ResponsiveGridPatterns as ResponsiveGrid,\n ResponsiveFlexPatterns as Flex,\n ResponsiveContainerPatterns as Container,\n ResponsiveVisibilityPatterns as Visibility,\n ResponsiveSpacingPatterns as Spacing,\n ResponsiveTypographyPatterns as ResponsiveTypography\n}"],"names":["ResponsiveGridPatterns","config","gridConfig","breakpoint","width","widthValue","maxCols","createResponsiveModifier","columns","bp","cols","ResponsiveFlexPatterns","flexConfig","direction","ResponsiveContainerPatterns","containerConfig","sectionConfig","ResponsiveVisibilityPatterns","breakpoints","displayConfig","ResponsiveSpacingPatterns","paddingConfig","marginConfig","gapConfig","ResponsiveTypographyPatterns","typographyConfig","scaleValue","baseSize","minBp","maxBp","minSize","maxSize"],"mappings":";AA0DO,MAAMA,EAAuB;AAAA;AAAA;AAAA;AAAA,EAIlC,OAAO,QAAQC,GAIZ;AACD,UAAMC,IAAkB,CAAA;AAExB,QAAI,OAAOD,EAAO,kBAAmB,UAAU;AAE7C,MAAAC,EAAW,sBAAsB,CAAA;AACjC,iBAAW,CAACC,GAAYC,CAAK,KAAK,OAAO,QAAQH,EAAO,cAAc,GAAG;AACvE,cAAMI,IAAa,OAAOD,KAAU,WAAW,GAAGA,CAAK,OAAOA,GACxDE,IAAUL,EAAO,cAAc,OAAOA,EAAO,cAAe,WAC9DA,EAAO,WAAWE,CAA2B,KAAK,SAClDF,EAAO,cAAc;AAEzB,QAAAC,EAAW,oBAAoBC,CAAU,IAAIG,MAAY,SACrD,2BAA2BD,CAAU,YACrC,UAAUC,CAAO,YAAYD,CAAU;AAAA,MAC7C;AAAA,IACF,OAAO;AACL,YAAMA,IAAa,OAAOJ,EAAO,kBAAmB,WAAW,GAAGA,EAAO,cAAc,OAAOA,EAAO,gBAC/FK,IAAUL,EAAO,cAAc;AACrC,MAAAC,EAAW,sBAAsBI,MAAY,SACzC,2BAA2BD,CAAU,YACrC,UAAUC,CAAO,YAAYD,CAAU;AAAA,IAC7C;AAEA,WAAIJ,EAAO,QACTC,EAAW,MAAMD,EAAO,MAG1BC,EAAW,UAAU,QAEdK,EAAyBL,CAAU;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,QAAQM,GAAkCP,GAI9C;AACD,UAAMC,IAAkB;AAAA,MACtB,SAAS;AAAA,MACT,qBAAqB,OAAOM,KAAY,WACpC,OAAO;AAAA,QACL,OAAO,QAAQA,CAAO,EAAE,IAAI,CAAC,CAACC,GAAIC,CAAI,MAAM,CAACD,GAAI,UAAUC,CAAI,QAAQ,CAAC;AAAA,MAAA,IAE1E,UAAUF,CAAO;AAAA,IAAA;AAGvB,WAAIP,GAAQ,QAAKC,EAAW,MAAMD,EAAO,MACrCA,GAAQ,WAAQC,EAAW,SAASD,EAAO,SAC3CA,GAAQ,aAAUC,EAAW,eAAeD,EAAO,WAEhDM,EAAyBL,CAAU;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,QAAQD,GAGZ;AACD,UAAMC,IAAkB;AAAA,MACtB,SAAS;AAAA,MACT,qBAAqB,OAAOD,EAAO,WAAY,WAC3C,OAAO;AAAA,QACL,OAAO,QAAQA,EAAO,OAAO,EAAE,IAAI,CAAC,CAACQ,GAAIC,CAAI,MAAM,CAACD,GAAI,UAAUC,CAAI,QAAQ,CAAC;AAAA,MAAA,IAEjF,UAAUT,EAAO,OAAO;AAAA,MAC5B,cAAc;AAAA,IAAA;AAGhB,WAAIA,EAAO,QAAKC,EAAW,MAAMD,EAAO,MAEjCM,EAAyBL,CAAU;AAAA,EAC5C;AACF;AAKO,MAAMS,EAAuB;AAAA;AAAA;AAAA;AAAA,EAIlC,OAAO,WAAWV,GAKf;AAGD,UAAMW,IAAkB;AAAA,MACtB,SAAS;AAAA,MACT,eAAe;AAAA,QACb,MAAM;AAAA,QACN,CANoBX,GAAQ,mBAAmB,IAM/B,GAAG;AAAA,MAAA;AAAA,IACrB;AAGF,WAAIA,GAAQ,QAAKW,EAAW,MAAMX,EAAO,MACrCA,GAAQ,UAAOW,EAAW,aAAaX,EAAO,QAC9CA,GAAQ,YAASW,EAAW,iBAAiBX,EAAO,UAEjDM,EAAyBK,CAAU;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,KAAKX,GAA+B;AACzC,UAAMW,IAAkB;AAAA,MACtB,SAAS;AAAA,MACT,UAAU;AAAA,MACV,GAAGX;AAAA,IAAA;AAGL,WAAOM,EAAyBK,CAAU;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,OAAOC,IAA+C,OAAO;AAQlE,WAAON,EAPiB;AAAA,MACtB,SAAS;AAAA,MACT,eAAeM;AAAA,MACf,gBAAgB;AAAA,MAChB,YAAY;AAAA,IAAA,CAG4B;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,aAAaA,IAA+C,OAAO;AAQxE,WAAON,EAPiB;AAAA,MACtB,SAAS;AAAA,MACT,eAAeM;AAAA,MACf,gBAAgB;AAAA,MAChB,YAAY;AAAA,IAAA,CAG4B;AAAA,EAC5C;AACF;AAKO,MAAMC,EAA4B;AAAA;AAAA;AAAA;AAAA,EAIvC,OAAO,UAAUb,GAAoC;AACnD,UAAMc,IAAuB;AAAA,MAC3B,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,aAAa;AAAA,IAAA;AAGf,WAAId,GAAQ,WACVc,EAAgB,WAAWd,EAAO,WAGlCc,EAAgB,WAAW;AAAA,MACzB,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,OAAO;AAAA,IAAA,GAIPd,GAAQ,YACVc,EAAgB,cAAcd,EAAO,SACrCc,EAAgB,eAAed,EAAO,UAGpCA,GAAQ,WACVc,EAAgB,YAAYd,EAAO,QACnCc,EAAgB,eAAed,EAAO,SAGjCM,EAAyBQ,CAAe;AAAA,EACjD;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,YAAY;AACjB,WAAOR,EAAyB;AAAA,MAC9B,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,aAAa;AAAA,IAAA,CACd;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,QAAQN,GAIZ;AACD,UAAMe,IAAqB,CAAA;AAE3B,WAAIf,GAAQ,aACVe,EAAc,aAAaf,EAAO,UAClCe,EAAc,gBAAgBf,EAAO,WAGnCA,GAAQ,aACVe,EAAc,cAAcf,EAAO,UACnCe,EAAc,eAAef,EAAO,WAGlCA,GAAQ,aACVe,EAAc,WAAWf,EAAO,UAChCe,EAAc,aAAa,QAC3BA,EAAc,cAAc,SAGvBT,EAAyBS,CAAa;AAAA,EAC/C;AACF;AAKO,MAAMC,EAA6B;AAAA;AAAA;AAAA;AAAA,EAIxC,OAAO,OAAOC,GAA8B;AAC1C,UAAMC,IAAqB;AAAA,MACzB,SAAS,CAAA;AAAA;AAAA,IAAC;AAIZ,eAAWhB,KAAce;AACvB,MAAAC,EAAc,QAAQhB,CAAU,IAAI;AAGtC,WAAOI,EAAyBY,CAAa;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,OAAOD,GAA8B;AAC1C,UAAMC,IAAqB;AAAA,MACzB,SAAS,CAAA;AAAA;AAAA,IAAC;AAIZ,eAAWhB,KAAce;AACvB,MAAAC,EAAc,QAAQhB,CAAU,IAAI;AAGtC,WAAOI,EAAyBY,CAAa;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,aAAa;AAClB,WAAOZ,EAAyB;AAAA,MAC9B,SAAS;AAAA,QACP,MAAM;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IACN,CACD;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,cAAc;AACnB,WAAOA,EAAyB;AAAA,MAC9B,SAAS;AAAA,QACP,MAAM;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IACN,CACD;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,aAAa;AAClB,WAAOA,EAAyB;AAAA,MAC9B,SAAS;AAAA,QACP,MAAM;AAAA,QACN,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA;AAAA,IACN,CACD;AAAA,EACH;AACF;AAKO,MAAMa,EAA0B;AAAA;AAAA;AAAA;AAAA,EAIrC,OAAO,QAAQnB,GAAiC;AAC9C,UAAMoB,IAAqB,CAAA;AAE3B,WAAIpB,EAAO,QAAKoB,EAAc,UAAUpB,EAAO,MAC3CA,EAAO,eACToB,EAAc,cAAcpB,EAAO,YACnCoB,EAAc,eAAepB,EAAO,aAElCA,EAAO,aACToB,EAAc,aAAapB,EAAO,UAClCoB,EAAc,gBAAgBpB,EAAO,WAEnCA,EAAO,QAAKoB,EAAc,aAAapB,EAAO,MAC9CA,EAAO,UAAOoB,EAAc,eAAepB,EAAO,QAClDA,EAAO,WAAQoB,EAAc,gBAAgBpB,EAAO,SACpDA,EAAO,SAAMoB,EAAc,cAAcpB,EAAO,OAE7CM,EAAyBc,CAAa;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,OAAOpB,GAAiC;AAC7C,UAAMqB,IAAoB,CAAA;AAE1B,WAAIrB,EAAO,QAAKqB,EAAa,SAASrB,EAAO,MACzCA,EAAO,eACTqB,EAAa,aAAarB,EAAO,YACjCqB,EAAa,cAAcrB,EAAO,aAEhCA,EAAO,aACTqB,EAAa,YAAYrB,EAAO,UAChCqB,EAAa,eAAerB,EAAO,WAEjCA,EAAO,QAAKqB,EAAa,YAAYrB,EAAO,MAC5CA,EAAO,UAAOqB,EAAa,cAAcrB,EAAO,QAChDA,EAAO,WAAQqB,EAAa,eAAerB,EAAO,SAClDA,EAAO,SAAMqB,EAAa,aAAarB,EAAO,OAE3CM,EAAyBe,CAAY;AAAA,EAC9C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,IAAIrB,GAIR;AACD,UAAMsB,IAAiB,CAAA;AAEvB,WAAItB,EAAO,QAAKsB,EAAU,MAAMtB,EAAO,MACnCA,EAAO,WAAQsB,EAAU,YAAYtB,EAAO,SAC5CA,EAAO,QAAKsB,EAAU,SAAStB,EAAO,MAEnCM,EAAyBgB,CAAS;AAAA,EAC3C;AACF;AAKO,MAAMC,EAA6B;AAAA;AAAA;AAAA;AAAA,EAIxC,OAAO,MAAMvB,GAIV;AACD,UAAMwB,IAAwB;AAAA,MAC5B,UAAUxB,EAAO;AAAA,IAAA;AAGnB,QAAIA,EAAO,SAAS,OAAOA,EAAO,SAAU,UAAU;AACpD,MAAAwB,EAAiB,WAAW,CAAA;AAC5B,iBAAW,CAACtB,GAAYuB,CAAU,KAAK,OAAO,QAAQzB,EAAO,KAAK,GAAG;AACnE,cAAM0B,IAAW,OAAO1B,EAAO,QAAS,WAAWA,EAAO,OAAO,WAAWA,EAAO,IAAI;AACvF,QAAAwB,EAAiB,SAAStB,CAAU,IAAI,GAAGwB,IAAWD,CAAU;AAAA,MAClE;AAAA,IACF;AAEA,WAAIzB,EAAO,eACTwB,EAAiB,aAAaxB,EAAO,aAGhCM,EAAyBkB,CAAgB;AAAA,EAClD;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,MAAMxB,GAKV;AACD,UAAM2B,IAAQ3B,EAAO,iBAAiB,SAChC4B,IAAQ5B,EAAO,iBAAiB,UAChC6B,IAAU,OAAO7B,EAAO,WAAY,WAAW,GAAGA,EAAO,OAAO,OAAOA,EAAO,SAC9E8B,IAAU,OAAO9B,EAAO,WAAY,WAAW,GAAGA,EAAO,OAAO,OAAOA,EAAO;AAEpF,WAAOM,EAAyB;AAAA,MAC9B,UAAU,SAASuB,CAAO,UAAUA,CAAO,OAAOC,CAAO,MAAMD,CAAO,iBAAiBF,CAAK,QAAQC,CAAK,MAAMD,CAAK,QAAQG,CAAO;AAAA,IAAA,CACpI;AAAA,EACH;AACF;"}
@@ -1,3 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var b=Object.defineProperty,T=(u,e,t)=>e in u?b(u,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):u[e]=t,o=(u,e,t)=>T(u,typeof e!="symbol"?e+"":e,t);class w{constructor(){o(this,"cache",new Map),o(this,"hitCount",0),o(this,"missCount",0)}get(e){const t=this.cache.get(e);return t?this.hitCount++:this.missCount++,t}set(e,t){this.cache.set(e,t)}clear(){this.cache.clear(),this.hitCount=0,this.missCount=0}getStats(){return{size:this.cache.size,hitRate:this.hitCount/(this.hitCount+this.missCount)||0,hits:this.hitCount,misses:this.missCount}}}const l=new w;class m{static generateOptimizedCSS(e,t,i={}){const{minify:s=process.env.NODE_ENV==="production",batch:c=!0,deduplicate:r=!0}=i,n=this.createCacheKey(e,t,{minify:s});if(r){const h=l.get(n);if(h)return h}const a=this.generateCSS(e,t,{minify:s});return r&&l.set(n,a),c&&a.trim()?(this.addToBatch(a),""):a}static createCacheKey(e,t,i){return JSON.stringify({selector:e,config:t,options:i})}static generateCSS(e,t,i){const{minify:s=!1}=i,c=s?"":" ",r=s?"":`
2
- `,n=s?"":" ";let a="";const h=new Set,p=this.extractBaseStyles(t);Object.keys(p).length>0&&(a+=`${e}${n}{${r}`,a+=this.generateProperties(p,c,r,n),a+=`}${r}`);for(const[d,f]of Object.entries(t))if(typeof f=="object"&&f!==null)for(const[S,$]of Object.entries(f)){if(S==="base")continue;const C=this.getMediaQuery(S),g=`${C}:${d}`;h.has(g)||(a+=`@media ${C}${n}{${r}`,a+=`${c}${e}${n}{${r}`,a+=`${c}${c}${this.propertyToCSS(d)}:${n}${this.valueToCSS($)};${r}`,a+=`${c}}${r}`,a+=`}${r}`,h.add(g))}return a}static addToBatch(e){this.ruleQueue.push(e),this.ruleQueue.length>=this.BATCH_SIZE?this.flushBatch():this.flushTimer||(this.flushTimer=window.setTimeout(()=>this.flushBatch(),16))}static flushBatch(){if(this.ruleQueue.length===0)return;const e=this.ruleQueue.join("");this.ruleQueue=[],this.flushTimer&&(clearTimeout(this.flushTimer),this.flushTimer=null),this.injectCSS(e)}static injectCSS(e){if(typeof document>"u")return;let t=document.getElementById("tachui-responsive-styles");t||(t=document.createElement("style"),t.id="tachui-responsive-styles",t.type="text/css",document.head.appendChild(t)),t.appendChild(document.createTextNode(e))}static extractBaseStyles(e){const t={};for(const[i,s]of Object.entries(e))typeof s!="object"||s===null?t[i]=s:"base"in s&&(t[i]=s.base);return t}static generateProperties(e,t,i,s){let c="";for(const[r,n]of Object.entries(e))n!==void 0&&(c+=`${t}${this.propertyToCSS(r)}:${s}${this.valueToCSS(n)};${i}`);return c}static propertyToCSS(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}static valueToCSS(e){return typeof e=="number"?`${e}px`:e.toString()}static getMediaQuery(e){return{base:"",sm:"(min-width: 640px)",md:"(min-width: 768px)",lg:"(min-width: 1024px)",xl:"(min-width: 1280px)","2xl":"(min-width: 1536px)"}[e]||e}static flush(){this.flushBatch()}static getStats(){return{cache:l.getStats(),batch:{queueSize:this.ruleQueue.length,batchSize:this.BATCH_SIZE}}}static reset(){l.clear(),this.ruleQueue=[],this.flushTimer&&(clearTimeout(this.flushTimer),this.flushTimer=null)}}o(m,"BATCH_SIZE",50);o(m,"ruleQueue",[]);o(m,"flushTimer",null);class y{static startMeasurement(e){const t=performance.now();return()=>{const i=performance.now()-t;return this.recordMeasurement(e,i),i}}static recordMeasurement(e,t){this.measurements.has(e)||this.measurements.set(e,[]);const i=this.measurements.get(e);i.push(t),i.length>100&&i.shift()}static getStats(){const e={};for(const[t,i]of this.measurements){const s=[...i].sort((r,n)=>r-n),c=i.reduce((r,n)=>r+n,0)/i.length;e[t]={count:i.length,average:c,min:s[0],max:s[s.length-1],p50:s[Math.floor(s.length*.5)],p95:s[Math.floor(s.length*.95)],p99:s[Math.floor(s.length*.99)]}}return e}static reset(){this.measurements.clear()}}o(y,"measurements",new Map);exports.OptimizedCSSGenerator=m;exports.ResponsivePerformanceMonitor=y;exports.cssRuleCache=l;
3
- //# sourceMappingURL=performance.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"performance.cjs","sources":["../../../src/modifiers/responsive/performance.ts"],"sourcesContent":["/**\n * Responsive System Performance Optimizations\n * \n * Optimizes CSS generation, caching, and runtime performance for the responsive system.\n */\n\nimport { ResponsiveStyleConfig, BreakpointKey } from './types'\n\n/**\n * CSS rule cache for deduplication\n */\nclass CSSRuleCache {\n private cache = new Map<string, string>()\n private hitCount = 0\n private missCount = 0\n \n get(key: string): string | undefined {\n const result = this.cache.get(key)\n if (result) {\n this.hitCount++\n } else {\n this.missCount++\n }\n return result\n }\n \n set(key: string, value: string): void {\n this.cache.set(key, value)\n }\n \n clear(): void {\n this.cache.clear()\n this.hitCount = 0\n this.missCount = 0\n }\n \n getStats() {\n return {\n size: this.cache.size,\n hitRate: this.hitCount / (this.hitCount + this.missCount) || 0,\n hits: this.hitCount,\n misses: this.missCount\n }\n }\n}\n\n/**\n * Global CSS rule cache instance\n */\nexport const cssRuleCache = new CSSRuleCache()\n\n/**\n * Performance-optimized CSS generation\n */\nexport class OptimizedCSSGenerator {\n private static readonly BATCH_SIZE = 50\n private static ruleQueue: string[] = []\n private static flushTimer: number | null = null\n \n /**\n * Generate CSS with caching and batching\n */\n static generateOptimizedCSS(\n selector: string,\n config: ResponsiveStyleConfig,\n options: {\n minify?: boolean\n batch?: boolean\n deduplicate?: boolean\n } = {}\n ): string {\n const {\n minify = process.env.NODE_ENV === 'production',\n batch = true,\n deduplicate = true\n } = options\n \n // Create cache key\n const cacheKey = this.createCacheKey(selector, config, { minify })\n \n // Check cache first\n if (deduplicate) {\n const cached = cssRuleCache.get(cacheKey)\n if (cached) {\n return cached\n }\n }\n \n // Generate CSS\n const css = this.generateCSS(selector, config, { minify })\n \n // Cache result\n if (deduplicate) {\n cssRuleCache.set(cacheKey, css)\n }\n \n // Handle batching\n if (batch && css.trim()) {\n this.addToBatch(css)\n return '' // Return empty since we're batching\n }\n \n return css\n }\n \n /**\n * Create cache key for CSS rule\n */\n private static createCacheKey(\n selector: string,\n config: ResponsiveStyleConfig,\n options: { minify?: boolean }\n ): string {\n return JSON.stringify({ selector, config, options })\n }\n \n /**\n * Generate CSS without optimizations (for comparison)\n */\n private static generateCSS(\n selector: string,\n config: ResponsiveStyleConfig,\n options: { minify?: boolean }\n ): string {\n const { minify = false } = options\n const indent = minify ? '' : ' '\n const newline = minify ? '' : '\\n'\n const space = minify ? '' : ' '\n \n let css = ''\n const processedBreakpoints = new Set<string>()\n \n // Base styles first\n const baseStyles = this.extractBaseStyles(config)\n if (Object.keys(baseStyles).length > 0) {\n css += `${selector}${space}{${newline}`\n css += this.generateProperties(baseStyles, indent, newline, space)\n css += `}${newline}`\n }\n \n // Responsive styles\n for (const [property, value] of Object.entries(config)) {\n if (typeof value === 'object' && value !== null) {\n for (const [breakpoint, breakpointValue] of Object.entries(value)) {\n if (breakpoint === 'base') continue\n \n const mediaQuery = this.getMediaQuery(breakpoint as BreakpointKey)\n const breakpointKey = `${mediaQuery}:${property}`\n \n if (!processedBreakpoints.has(breakpointKey)) {\n css += `@media ${mediaQuery}${space}{${newline}`\n css += `${indent}${selector}${space}{${newline}`\n css += `${indent}${indent}${this.propertyToCSS(property)}:${space}${this.valueToCSS(breakpointValue)};${newline}`\n css += `${indent}}${newline}`\n css += `}${newline}`\n \n processedBreakpoints.add(breakpointKey)\n }\n }\n }\n }\n \n return css\n }\n \n /**\n * Add CSS to batch queue\n */\n private static addToBatch(css: string): void {\n this.ruleQueue.push(css)\n \n if (this.ruleQueue.length >= this.BATCH_SIZE) {\n this.flushBatch()\n } else if (!this.flushTimer) {\n this.flushTimer = window.setTimeout(() => this.flushBatch(), 16) // Next frame\n }\n }\n \n /**\n * Flush batched CSS rules\n */\n private static flushBatch(): void {\n if (this.ruleQueue.length === 0) return\n \n const batchedCSS = this.ruleQueue.join('')\n this.ruleQueue = []\n \n if (this.flushTimer) {\n clearTimeout(this.flushTimer)\n this.flushTimer = null\n }\n \n // Inject batched CSS\n this.injectCSS(batchedCSS)\n }\n \n /**\n * Inject CSS into document\n */\n private static injectCSS(css: string): void {\n if (typeof document === 'undefined') return\n \n let styleElement = document.getElementById('tachui-responsive-styles') as HTMLStyleElement\n \n if (!styleElement) {\n styleElement = document.createElement('style')\n styleElement.id = 'tachui-responsive-styles'\n styleElement.type = 'text/css'\n document.head.appendChild(styleElement)\n }\n \n // Use standard approach (legacy IE support removed)\n styleElement.appendChild(document.createTextNode(css))\n }\n \n /**\n * Extract base (non-responsive) styles\n */\n private static extractBaseStyles(config: ResponsiveStyleConfig): Record<string, any> {\n const baseStyles: Record<string, any> = {}\n \n for (const [property, value] of Object.entries(config)) {\n if (typeof value !== 'object' || value === null) {\n baseStyles[property] = value\n } else if ('base' in value) {\n baseStyles[property] = value.base\n }\n }\n \n return baseStyles\n }\n \n /**\n * Generate CSS properties\n */\n private static generateProperties(\n styles: Record<string, any>,\n indent: string,\n newline: string,\n space: string\n ): string {\n let css = ''\n \n for (const [property, value] of Object.entries(styles)) {\n if (value !== undefined) {\n css += `${indent}${this.propertyToCSS(property)}:${space}${this.valueToCSS(value)};${newline}`\n }\n }\n \n return css\n }\n \n /**\n * Convert property name to CSS\n */\n private static propertyToCSS(property: string): string {\n return property.replace(/[A-Z]/g, match => `-${match.toLowerCase()}`)\n }\n \n /**\n * Convert value to CSS\n */\n private static valueToCSS(value: any): string {\n if (typeof value === 'number') {\n return `${value}px`\n }\n return value.toString()\n }\n \n /**\n * Get media query for breakpoint\n */\n private static getMediaQuery(breakpoint: BreakpointKey): string {\n const queries: Record<BreakpointKey, string> = {\n base: '',\n sm: '(min-width: 640px)',\n md: '(min-width: 768px)',\n lg: '(min-width: 1024px)',\n xl: '(min-width: 1280px)',\n '2xl': '(min-width: 1536px)'\n }\n \n return queries[breakpoint] || breakpoint\n }\n \n /**\n * Force flush any pending batched CSS\n */\n static flush(): void {\n this.flushBatch()\n }\n \n /**\n * Get performance statistics\n */\n static getStats() {\n return {\n cache: cssRuleCache.getStats(),\n batch: {\n queueSize: this.ruleQueue.length,\n batchSize: this.BATCH_SIZE\n }\n }\n }\n \n /**\n * Clear all caches and reset performance counters\n */\n static reset(): void {\n cssRuleCache.clear()\n this.ruleQueue = []\n if (this.flushTimer) {\n clearTimeout(this.flushTimer)\n this.flushTimer = null\n }\n }\n}\n\n/**\n * Performance monitoring for responsive system\n */\nexport class ResponsivePerformanceMonitor {\n private static measurements = new Map<string, number[]>()\n \n /**\n * Start performance measurement\n */\n static startMeasurement(name: string): () => number {\n const startTime = performance.now()\n \n return () => {\n const duration = performance.now() - startTime\n this.recordMeasurement(name, duration)\n return duration\n }\n }\n \n /**\n * Record measurement\n */\n private static recordMeasurement(name: string, duration: number): void {\n if (!this.measurements.has(name)) {\n this.measurements.set(name, [])\n }\n \n const measurements = this.measurements.get(name)!\n measurements.push(duration)\n \n // Keep only last 100 measurements\n if (measurements.length > 100) {\n measurements.shift()\n }\n }\n \n /**\n * Get performance statistics\n */\n static getStats() {\n const stats: Record<string, any> = {}\n \n for (const [name, measurements] of this.measurements) {\n const sorted = [...measurements].sort((a, b) => a - b)\n const avg = measurements.reduce((sum, val) => sum + val, 0) / measurements.length\n \n stats[name] = {\n count: measurements.length,\n average: avg,\n min: sorted[0],\n max: sorted[sorted.length - 1],\n p50: sorted[Math.floor(sorted.length * 0.5)],\n p95: sorted[Math.floor(sorted.length * 0.95)],\n p99: sorted[Math.floor(sorted.length * 0.99)]\n }\n }\n \n return stats\n }\n \n /**\n * Clear all performance data\n */\n static reset(): void {\n this.measurements.clear()\n }\n}"],"names":["CSSRuleCache","__publicField","key","result","value","cssRuleCache","OptimizedCSSGenerator","selector","config","options","minify","batch","deduplicate","cacheKey","cached","css","indent","newline","space","processedBreakpoints","baseStyles","property","breakpoint","breakpointValue","mediaQuery","breakpointKey","batchedCSS","styleElement","styles","match","ResponsivePerformanceMonitor","name","startTime","duration","measurements","stats","sorted","a","b","avg","sum","val"],"mappings":"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"}