@tachui/cli 0.8.5-alpha → 0.8.10-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (684) hide show
  1. package/README.md +37 -427
  2. package/bin/tacho.js +12 -10
  3. package/dist/commands/analyze-imports.d.ts.map +1 -0
  4. package/dist/commands/analyze-imports.js.map +1 -0
  5. package/dist/commands/analyze.d.ts.map +1 -0
  6. package/dist/commands/analyze.js.map +1 -0
  7. package/dist/commands/dev.d.ts.map +1 -0
  8. package/dist/{cli/src/commands → commands}/dev.js +3 -3
  9. package/dist/commands/dev.js.map +1 -0
  10. package/dist/{cli/src/commands → commands}/generate.d.ts +1 -1
  11. package/dist/commands/generate.d.ts.map +1 -0
  12. package/dist/{cli/src/commands → commands}/generate.js +1 -1
  13. package/dist/commands/generate.js.map +1 -0
  14. package/dist/commands/init.d.ts +17 -0
  15. package/dist/commands/init.d.ts.map +1 -0
  16. package/dist/commands/init.js +224 -0
  17. package/dist/commands/init.js.map +1 -0
  18. package/dist/commands/migrate/remove-modifier-trigger.d.ts.map +1 -0
  19. package/dist/commands/migrate/remove-modifier-trigger.js.map +1 -0
  20. package/dist/commands/migrate.d.ts.map +1 -0
  21. package/dist/{cli/src/commands → commands}/migrate.js +3 -3
  22. package/dist/commands/migrate.js.map +1 -0
  23. package/dist/commands/modifier-docs.d.ts.map +1 -0
  24. package/dist/commands/modifier-docs.js.map +1 -0
  25. package/dist/commands/optimize.d.ts.map +1 -0
  26. package/dist/commands/optimize.js.map +1 -0
  27. package/dist/import-optimizer.d.ts.map +1 -0
  28. package/dist/import-optimizer.js.map +1 -0
  29. package/dist/index.d.ts.map +1 -0
  30. package/dist/index.js.map +1 -0
  31. package/dist/migrations/remove-modifier-trigger.d.ts.map +1 -0
  32. package/dist/migrations/remove-modifier-trigger.js.map +1 -0
  33. package/dist/scaffold/core-version-map.d.ts +2 -0
  34. package/dist/scaffold/core-version-map.d.ts.map +1 -0
  35. package/dist/scaffold/core-version-map.js +130 -0
  36. package/dist/scaffold/core-version-map.js.map +1 -0
  37. package/dist/scaffold/create-project.d.ts +15 -0
  38. package/dist/scaffold/create-project.d.ts.map +1 -0
  39. package/dist/scaffold/create-project.js +84 -0
  40. package/dist/scaffold/create-project.js.map +1 -0
  41. package/dist/scaffold/package-root.d.ts +2 -0
  42. package/dist/scaffold/package-root.d.ts.map +1 -0
  43. package/dist/scaffold/package-root.js +34 -0
  44. package/dist/scaffold/package-root.js.map +1 -0
  45. package/dist/scaffold/templates.d.ts +11 -0
  46. package/dist/scaffold/templates.d.ts.map +1 -0
  47. package/dist/scaffold/templates.js +26 -0
  48. package/dist/scaffold/templates.js.map +1 -0
  49. package/dist/scaffold/validators.d.ts +2 -0
  50. package/dist/scaffold/validators.d.ts.map +1 -0
  51. package/dist/scaffold/validators.js +32 -0
  52. package/dist/scaffold/validators.js.map +1 -0
  53. package/package.json +4 -4
  54. package/templates/advanced/README.md.template +23 -0
  55. package/templates/advanced/index.html.template +23 -0
  56. package/templates/advanced/package.json.template +20 -0
  57. package/templates/advanced/src/App.ts.template +54 -0
  58. package/templates/advanced/src/main.ts.template +4 -0
  59. package/templates/advanced/tsconfig.json.template +14 -0
  60. package/templates/advanced/vite.config.ts.template +11 -0
  61. package/templates/basic/README.md.template +17 -0
  62. package/templates/basic/index.html.template +22 -0
  63. package/templates/basic/package.json.template +20 -0
  64. package/templates/basic/src/App.ts.template +35 -0
  65. package/templates/basic/src/main.ts.template +4 -0
  66. package/templates/basic/tsconfig.json.template +14 -0
  67. package/templates/basic/vite.config.ts.template +11 -0
  68. package/dist/cli/src/commands/analyze-imports.d.ts.map +0 -1
  69. package/dist/cli/src/commands/analyze-imports.js.map +0 -1
  70. package/dist/cli/src/commands/analyze.d.ts.map +0 -1
  71. package/dist/cli/src/commands/analyze.js.map +0 -1
  72. package/dist/cli/src/commands/dev.d.ts.map +0 -1
  73. package/dist/cli/src/commands/dev.js.map +0 -1
  74. package/dist/cli/src/commands/generate.d.ts.map +0 -1
  75. package/dist/cli/src/commands/generate.js.map +0 -1
  76. package/dist/cli/src/commands/init.d.ts +0 -8
  77. package/dist/cli/src/commands/init.d.ts.map +0 -1
  78. package/dist/cli/src/commands/init.js +0 -707
  79. package/dist/cli/src/commands/init.js.map +0 -1
  80. package/dist/cli/src/commands/migrate/remove-modifier-trigger.d.ts.map +0 -1
  81. package/dist/cli/src/commands/migrate/remove-modifier-trigger.js.map +0 -1
  82. package/dist/cli/src/commands/migrate.d.ts.map +0 -1
  83. package/dist/cli/src/commands/migrate.js.map +0 -1
  84. package/dist/cli/src/commands/modifier-docs.d.ts.map +0 -1
  85. package/dist/cli/src/commands/modifier-docs.js.map +0 -1
  86. package/dist/cli/src/commands/optimize.d.ts.map +0 -1
  87. package/dist/cli/src/commands/optimize.js.map +0 -1
  88. package/dist/cli/src/import-optimizer.d.ts.map +0 -1
  89. package/dist/cli/src/import-optimizer.js.map +0 -1
  90. package/dist/cli/src/index.d.ts.map +0 -1
  91. package/dist/cli/src/index.js.map +0 -1
  92. package/dist/cli/src/migrations/remove-modifier-trigger.d.ts.map +0 -1
  93. package/dist/cli/src/migrations/remove-modifier-trigger.js.map +0 -1
  94. package/dist/core/package.json +0 -223
  95. package/dist/core/src/assets/Asset.d.ts +0 -11
  96. package/dist/core/src/assets/Asset.d.ts.map +0 -1
  97. package/dist/core/src/assets/Asset.js +0 -12
  98. package/dist/core/src/assets/Asset.js.map +0 -1
  99. package/dist/core/src/assets/AssetCollection.d.ts +0 -14
  100. package/dist/core/src/assets/AssetCollection.d.ts.map +0 -1
  101. package/dist/core/src/assets/AssetCollection.js +0 -133
  102. package/dist/core/src/assets/AssetCollection.js.map +0 -1
  103. package/dist/core/src/assets/ColorAsset.d.ts +0 -31
  104. package/dist/core/src/assets/ColorAsset.d.ts.map +0 -1
  105. package/dist/core/src/assets/ColorAsset.js +0 -182
  106. package/dist/core/src/assets/ColorAsset.js.map +0 -1
  107. package/dist/core/src/assets/FontAsset.d.ts +0 -114
  108. package/dist/core/src/assets/FontAsset.d.ts.map +0 -1
  109. package/dist/core/src/assets/FontAsset.js +0 -289
  110. package/dist/core/src/assets/FontAsset.js.map +0 -1
  111. package/dist/core/src/assets/ImageAsset.d.ts +0 -35
  112. package/dist/core/src/assets/ImageAsset.d.ts.map +0 -1
  113. package/dist/core/src/assets/ImageAsset.js +0 -69
  114. package/dist/core/src/assets/ImageAsset.js.map +0 -1
  115. package/dist/core/src/assets/index.d.ts +0 -27
  116. package/dist/core/src/assets/index.d.ts.map +0 -1
  117. package/dist/core/src/assets/index.js +0 -137
  118. package/dist/core/src/assets/index.js.map +0 -1
  119. package/dist/core/src/assets/types.d.ts +0 -10
  120. package/dist/core/src/assets/types.d.ts.map +0 -1
  121. package/dist/core/src/assets/types.js +0 -6
  122. package/dist/core/src/assets/types.js.map +0 -1
  123. package/dist/core/src/compiler/advanced-parser.d.ts +0 -113
  124. package/dist/core/src/compiler/advanced-parser.d.ts.map +0 -1
  125. package/dist/core/src/compiler/advanced-parser.js +0 -702
  126. package/dist/core/src/compiler/advanced-parser.js.map +0 -1
  127. package/dist/core/src/compiler/codegen.d.ts +0 -20
  128. package/dist/core/src/compiler/codegen.d.ts.map +0 -1
  129. package/dist/core/src/compiler/codegen.js +0 -509
  130. package/dist/core/src/compiler/codegen.js.map +0 -1
  131. package/dist/core/src/compiler/enhanced-codegen.d.ts +0 -121
  132. package/dist/core/src/compiler/enhanced-codegen.d.ts.map +0 -1
  133. package/dist/core/src/compiler/enhanced-codegen.js +0 -607
  134. package/dist/core/src/compiler/enhanced-codegen.js.map +0 -1
  135. package/dist/core/src/compiler/index.d.ts +0 -14
  136. package/dist/core/src/compiler/index.d.ts.map +0 -1
  137. package/dist/core/src/compiler/index.js +0 -12
  138. package/dist/core/src/compiler/index.js.map +0 -1
  139. package/dist/core/src/compiler/parser.d.ts +0 -12
  140. package/dist/core/src/compiler/parser.d.ts.map +0 -1
  141. package/dist/core/src/compiler/parser.js +0 -407
  142. package/dist/core/src/compiler/parser.js.map +0 -1
  143. package/dist/core/src/compiler/plugin.d.ts +0 -13
  144. package/dist/core/src/compiler/plugin.d.ts.map +0 -1
  145. package/dist/core/src/compiler/plugin.js +0 -456
  146. package/dist/core/src/compiler/plugin.js.map +0 -1
  147. package/dist/core/src/compiler/types.d.ts +0 -177
  148. package/dist/core/src/compiler/types.d.ts.map +0 -1
  149. package/dist/core/src/compiler/types.js +0 -5
  150. package/dist/core/src/compiler/types.js.map +0 -1
  151. package/dist/core/src/components/factory.d.ts +0 -24
  152. package/dist/core/src/components/factory.d.ts.map +0 -1
  153. package/dist/core/src/components/factory.js +0 -19
  154. package/dist/core/src/components/factory.js.map +0 -1
  155. package/dist/core/src/components/index.d.ts +0 -12
  156. package/dist/core/src/components/index.d.ts.map +0 -1
  157. package/dist/core/src/components/index.js +0 -9
  158. package/dist/core/src/components/index.js.map +0 -1
  159. package/dist/core/src/components/wrapper.d.ts +0 -142
  160. package/dist/core/src/components/wrapper.d.ts.map +0 -1
  161. package/dist/core/src/components/wrapper.js +0 -628
  162. package/dist/core/src/components/wrapper.js.map +0 -1
  163. package/dist/core/src/concatenation/concatenatable.d.ts +0 -63
  164. package/dist/core/src/concatenation/concatenatable.d.ts.map +0 -1
  165. package/dist/core/src/concatenation/concatenatable.js +0 -158
  166. package/dist/core/src/concatenation/concatenatable.js.map +0 -1
  167. package/dist/core/src/concatenation/concatenated-component.d.ts +0 -124
  168. package/dist/core/src/concatenation/concatenated-component.d.ts.map +0 -1
  169. package/dist/core/src/concatenation/concatenated-component.js +0 -447
  170. package/dist/core/src/concatenation/concatenated-component.js.map +0 -1
  171. package/dist/core/src/concatenation/index.d.ts +0 -13
  172. package/dist/core/src/concatenation/index.d.ts.map +0 -1
  173. package/dist/core/src/concatenation/index.js +0 -16
  174. package/dist/core/src/concatenation/index.js.map +0 -1
  175. package/dist/core/src/concatenation/text-optimizer.d.ts +0 -104
  176. package/dist/core/src/concatenation/text-optimizer.d.ts.map +0 -1
  177. package/dist/core/src/concatenation/text-optimizer.js +0 -349
  178. package/dist/core/src/concatenation/text-optimizer.js.map +0 -1
  179. package/dist/core/src/concatenation/types.d.ts +0 -88
  180. package/dist/core/src/concatenation/types.d.ts.map +0 -1
  181. package/dist/core/src/concatenation/types.js +0 -23
  182. package/dist/core/src/concatenation/types.js.map +0 -1
  183. package/dist/core/src/config.d.ts +0 -7
  184. package/dist/core/src/config.d.ts.map +0 -1
  185. package/dist/core/src/config.js +0 -17
  186. package/dist/core/src/config.js.map +0 -1
  187. package/dist/core/src/constants/frame-utils.d.ts +0 -68
  188. package/dist/core/src/constants/frame-utils.d.ts.map +0 -1
  189. package/dist/core/src/constants/frame-utils.js +0 -156
  190. package/dist/core/src/constants/frame-utils.js.map +0 -1
  191. package/dist/core/src/constants/index.d.ts +0 -8
  192. package/dist/core/src/constants/index.d.ts.map +0 -1
  193. package/dist/core/src/constants/index.js +0 -8
  194. package/dist/core/src/constants/index.js.map +0 -1
  195. package/dist/core/src/constants/layout.d.ts +0 -96
  196. package/dist/core/src/constants/layout.d.ts.map +0 -1
  197. package/dist/core/src/constants/layout.js +0 -124
  198. package/dist/core/src/constants/layout.js.map +0 -1
  199. package/dist/core/src/css-classes/component-base.d.ts +0 -40
  200. package/dist/core/src/css-classes/component-base.d.ts.map +0 -1
  201. package/dist/core/src/css-classes/component-base.js +0 -90
  202. package/dist/core/src/css-classes/component-base.js.map +0 -1
  203. package/dist/core/src/css-classes/css-class-manager.d.ts +0 -89
  204. package/dist/core/src/css-classes/css-class-manager.d.ts.map +0 -1
  205. package/dist/core/src/css-classes/css-class-manager.js +0 -328
  206. package/dist/core/src/css-classes/css-class-manager.js.map +0 -1
  207. package/dist/core/src/css-classes/dom-integration.d.ts +0 -76
  208. package/dist/core/src/css-classes/dom-integration.d.ts.map +0 -1
  209. package/dist/core/src/css-classes/dom-integration.js +0 -104
  210. package/dist/core/src/css-classes/dom-integration.js.map +0 -1
  211. package/dist/core/src/css-classes/enhanced-renderer.d.ts +0 -42
  212. package/dist/core/src/css-classes/enhanced-renderer.d.ts.map +0 -1
  213. package/dist/core/src/css-classes/enhanced-renderer.js +0 -121
  214. package/dist/core/src/css-classes/enhanced-renderer.js.map +0 -1
  215. package/dist/core/src/css-classes/index.d.ts +0 -14
  216. package/dist/core/src/css-classes/index.d.ts.map +0 -1
  217. package/dist/core/src/css-classes/index.js +0 -14
  218. package/dist/core/src/css-classes/index.js.map +0 -1
  219. package/dist/core/src/css-classes/types.d.ts +0 -59
  220. package/dist/core/src/css-classes/types.d.ts.map +0 -1
  221. package/dist/core/src/css-classes/types.js +0 -8
  222. package/dist/core/src/css-classes/types.js.map +0 -1
  223. package/dist/core/src/css-classes/utilities.d.ts +0 -104
  224. package/dist/core/src/css-classes/utilities.d.ts.map +0 -1
  225. package/dist/core/src/css-classes/utilities.js +0 -126
  226. package/dist/core/src/css-classes/utilities.js.map +0 -1
  227. package/dist/core/src/gradients/css-generator.d.ts +0 -10
  228. package/dist/core/src/gradients/css-generator.d.ts.map +0 -1
  229. package/dist/core/src/gradients/css-generator.js +0 -123
  230. package/dist/core/src/gradients/css-generator.js.map +0 -1
  231. package/dist/core/src/gradients/examples.d.ts +0 -432
  232. package/dist/core/src/gradients/examples.d.ts.map +0 -1
  233. package/dist/core/src/gradients/examples.js +0 -588
  234. package/dist/core/src/gradients/examples.js.map +0 -1
  235. package/dist/core/src/gradients/gradient-asset.d.ts +0 -10
  236. package/dist/core/src/gradients/gradient-asset.d.ts.map +0 -1
  237. package/dist/core/src/gradients/gradient-asset.js +0 -25
  238. package/dist/core/src/gradients/gradient-asset.js.map +0 -1
  239. package/dist/core/src/gradients/index.d.ts +0 -19
  240. package/dist/core/src/gradients/index.d.ts.map +0 -1
  241. package/dist/core/src/gradients/index.js +0 -56
  242. package/dist/core/src/gradients/index.js.map +0 -1
  243. package/dist/core/src/gradients/performance.d.ts +0 -146
  244. package/dist/core/src/gradients/performance.d.ts.map +0 -1
  245. package/dist/core/src/gradients/performance.js +0 -413
  246. package/dist/core/src/gradients/performance.js.map +0 -1
  247. package/dist/core/src/gradients/presets.d.ts +0 -165
  248. package/dist/core/src/gradients/presets.d.ts.map +0 -1
  249. package/dist/core/src/gradients/presets.js +0 -371
  250. package/dist/core/src/gradients/presets.js.map +0 -1
  251. package/dist/core/src/gradients/reactive.d.ts +0 -167
  252. package/dist/core/src/gradients/reactive.d.ts.map +0 -1
  253. package/dist/core/src/gradients/reactive.js +0 -329
  254. package/dist/core/src/gradients/reactive.js.map +0 -1
  255. package/dist/core/src/gradients/state-gradient-asset.d.ts +0 -67
  256. package/dist/core/src/gradients/state-gradient-asset.d.ts.map +0 -1
  257. package/dist/core/src/gradients/state-gradient-asset.js +0 -145
  258. package/dist/core/src/gradients/state-gradient-asset.js.map +0 -1
  259. package/dist/core/src/gradients/types.d.ts +0 -6
  260. package/dist/core/src/gradients/types.d.ts.map +0 -1
  261. package/dist/core/src/gradients/types.js +0 -6
  262. package/dist/core/src/gradients/types.js.map +0 -1
  263. package/dist/core/src/gradients/utils.d.ts +0 -313
  264. package/dist/core/src/gradients/utils.d.ts.map +0 -1
  265. package/dist/core/src/gradients/utils.js +0 -513
  266. package/dist/core/src/gradients/utils.js.map +0 -1
  267. package/dist/core/src/gradients/validation.d.ts +0 -156
  268. package/dist/core/src/gradients/validation.d.ts.map +0 -1
  269. package/dist/core/src/gradients/validation.js +0 -392
  270. package/dist/core/src/gradients/validation.js.map +0 -1
  271. package/dist/core/src/index.d.ts +0 -33
  272. package/dist/core/src/index.d.ts.map +0 -1
  273. package/dist/core/src/index.js +0 -57
  274. package/dist/core/src/index.js.map +0 -1
  275. package/dist/core/src/lifecycle/hooks.d.ts +0 -101
  276. package/dist/core/src/lifecycle/hooks.d.ts.map +0 -1
  277. package/dist/core/src/lifecycle/hooks.js +0 -241
  278. package/dist/core/src/lifecycle/hooks.js.map +0 -1
  279. package/dist/core/src/modifiers/alignment.d.ts +0 -5
  280. package/dist/core/src/modifiers/alignment.d.ts.map +0 -1
  281. package/dist/core/src/modifiers/alignment.js +0 -19
  282. package/dist/core/src/modifiers/alignment.js.map +0 -1
  283. package/dist/core/src/modifiers/base.d.ts +0 -128
  284. package/dist/core/src/modifiers/base.d.ts.map +0 -1
  285. package/dist/core/src/modifiers/base.js +0 -1062
  286. package/dist/core/src/modifiers/base.js.map +0 -1
  287. package/dist/core/src/modifiers/builder.d.ts +0 -148
  288. package/dist/core/src/modifiers/builder.d.ts.map +0 -1
  289. package/dist/core/src/modifiers/builder.js +0 -903
  290. package/dist/core/src/modifiers/builder.js.map +0 -1
  291. package/dist/core/src/modifiers/core.d.ts +0 -14
  292. package/dist/core/src/modifiers/core.d.ts.map +0 -1
  293. package/dist/core/src/modifiers/core.js +0 -16
  294. package/dist/core/src/modifiers/core.js.map +0 -1
  295. package/dist/core/src/modifiers/corner-radius.d.ts +0 -8
  296. package/dist/core/src/modifiers/corner-radius.d.ts.map +0 -1
  297. package/dist/core/src/modifiers/corner-radius.js +0 -19
  298. package/dist/core/src/modifiers/corner-radius.js.map +0 -1
  299. package/dist/core/src/modifiers/factories.d.ts +0 -88
  300. package/dist/core/src/modifiers/factories.d.ts.map +0 -1
  301. package/dist/core/src/modifiers/factories.js +0 -376
  302. package/dist/core/src/modifiers/factories.js.map +0 -1
  303. package/dist/core/src/modifiers/index.d.ts +0 -17
  304. package/dist/core/src/modifiers/index.d.ts.map +0 -1
  305. package/dist/core/src/modifiers/index.js +0 -16
  306. package/dist/core/src/modifiers/index.js.map +0 -1
  307. package/dist/core/src/modifiers/layout-priority.d.ts +0 -8
  308. package/dist/core/src/modifiers/layout-priority.d.ts.map +0 -1
  309. package/dist/core/src/modifiers/layout-priority.js +0 -19
  310. package/dist/core/src/modifiers/layout-priority.js.map +0 -1
  311. package/dist/core/src/modifiers/opacity.d.ts +0 -8
  312. package/dist/core/src/modifiers/opacity.d.ts.map +0 -1
  313. package/dist/core/src/modifiers/opacity.js +0 -19
  314. package/dist/core/src/modifiers/opacity.js.map +0 -1
  315. package/dist/core/src/modifiers/presets.d.ts +0 -368
  316. package/dist/core/src/modifiers/presets.d.ts.map +0 -1
  317. package/dist/core/src/modifiers/presets.js +0 -394
  318. package/dist/core/src/modifiers/presets.js.map +0 -1
  319. package/dist/core/src/modifiers/proxy.d.ts +0 -4
  320. package/dist/core/src/modifiers/proxy.d.ts.map +0 -1
  321. package/dist/core/src/modifiers/proxy.js +0 -212
  322. package/dist/core/src/modifiers/proxy.js.map +0 -1
  323. package/dist/core/src/modifiers/registration-utils.d.ts +0 -7
  324. package/dist/core/src/modifiers/registration-utils.d.ts.map +0 -1
  325. package/dist/core/src/modifiers/registration-utils.js +0 -46
  326. package/dist/core/src/modifiers/registration-utils.js.map +0 -1
  327. package/dist/core/src/modifiers/registry.d.ts +0 -78
  328. package/dist/core/src/modifiers/registry.d.ts.map +0 -1
  329. package/dist/core/src/modifiers/registry.js +0 -397
  330. package/dist/core/src/modifiers/registry.js.map +0 -1
  331. package/dist/core/src/modifiers/types.d.ts +0 -6
  332. package/dist/core/src/modifiers/types.d.ts.map +0 -1
  333. package/dist/core/src/modifiers/types.js +0 -6
  334. package/dist/core/src/modifiers/types.js.map +0 -1
  335. package/dist/core/src/plugins/index.d.ts +0 -16
  336. package/dist/core/src/plugins/index.d.ts.map +0 -1
  337. package/dist/core/src/plugins/index.js +0 -21
  338. package/dist/core/src/plugins/index.js.map +0 -1
  339. package/dist/core/src/plugins/legacy-adapter.d.ts +0 -35
  340. package/dist/core/src/plugins/legacy-adapter.d.ts.map +0 -1
  341. package/dist/core/src/plugins/legacy-adapter.js +0 -57
  342. package/dist/core/src/plugins/legacy-adapter.js.map +0 -1
  343. package/dist/core/src/plugins/simplified-component-registry.d.ts +0 -40
  344. package/dist/core/src/plugins/simplified-component-registry.d.ts.map +0 -1
  345. package/dist/core/src/plugins/simplified-component-registry.js +0 -97
  346. package/dist/core/src/plugins/simplified-component-registry.js.map +0 -1
  347. package/dist/core/src/plugins/simplified-lazy-loader.d.ts +0 -65
  348. package/dist/core/src/plugins/simplified-lazy-loader.d.ts.map +0 -1
  349. package/dist/core/src/plugins/simplified-lazy-loader.js +0 -205
  350. package/dist/core/src/plugins/simplified-lazy-loader.js.map +0 -1
  351. package/dist/core/src/plugins/simplified-plugin-manager.d.ts +0 -24
  352. package/dist/core/src/plugins/simplified-plugin-manager.d.ts.map +0 -1
  353. package/dist/core/src/plugins/simplified-plugin-manager.js +0 -77
  354. package/dist/core/src/plugins/simplified-plugin-manager.js.map +0 -1
  355. package/dist/core/src/plugins/simplified-tachui-instance.d.ts +0 -54
  356. package/dist/core/src/plugins/simplified-tachui-instance.d.ts.map +0 -1
  357. package/dist/core/src/plugins/simplified-tachui-instance.js +0 -114
  358. package/dist/core/src/plugins/simplified-tachui-instance.js.map +0 -1
  359. package/dist/core/src/plugins/simplified-types.d.ts +0 -63
  360. package/dist/core/src/plugins/simplified-types.d.ts.map +0 -1
  361. package/dist/core/src/plugins/simplified-types.js +0 -18
  362. package/dist/core/src/plugins/simplified-types.js.map +0 -1
  363. package/dist/core/src/plugins/simplified-utils.d.ts +0 -39
  364. package/dist/core/src/plugins/simplified-utils.d.ts.map +0 -1
  365. package/dist/core/src/plugins/simplified-utils.js +0 -104
  366. package/dist/core/src/plugins/simplified-utils.js.map +0 -1
  367. package/dist/core/src/reactive/cleanup.d.ts +0 -115
  368. package/dist/core/src/reactive/cleanup.d.ts.map +0 -1
  369. package/dist/core/src/reactive/cleanup.js +0 -187
  370. package/dist/core/src/reactive/cleanup.js.map +0 -1
  371. package/dist/core/src/reactive/computed.d.ts +0 -115
  372. package/dist/core/src/reactive/computed.d.ts.map +0 -1
  373. package/dist/core/src/reactive/computed.js +0 -237
  374. package/dist/core/src/reactive/computed.js.map +0 -1
  375. package/dist/core/src/reactive/context.d.ts +0 -83
  376. package/dist/core/src/reactive/context.d.ts.map +0 -1
  377. package/dist/core/src/reactive/context.js +0 -286
  378. package/dist/core/src/reactive/context.js.map +0 -1
  379. package/dist/core/src/reactive/effect.d.ts +0 -79
  380. package/dist/core/src/reactive/effect.d.ts.map +0 -1
  381. package/dist/core/src/reactive/effect.js +0 -159
  382. package/dist/core/src/reactive/effect.js.map +0 -1
  383. package/dist/core/src/reactive/enhanced-effect.d.ts +0 -108
  384. package/dist/core/src/reactive/enhanced-effect.d.ts.map +0 -1
  385. package/dist/core/src/reactive/enhanced-effect.js +0 -265
  386. package/dist/core/src/reactive/enhanced-effect.js.map +0 -1
  387. package/dist/core/src/reactive/enhanced-signal.d.ts +0 -91
  388. package/dist/core/src/reactive/enhanced-signal.d.ts.map +0 -1
  389. package/dist/core/src/reactive/enhanced-signal.js +0 -175
  390. package/dist/core/src/reactive/enhanced-signal.js.map +0 -1
  391. package/dist/core/src/reactive/equality.d.ts +0 -51
  392. package/dist/core/src/reactive/equality.d.ts.map +0 -1
  393. package/dist/core/src/reactive/equality.js +0 -169
  394. package/dist/core/src/reactive/equality.js.map +0 -1
  395. package/dist/core/src/reactive/index.d.ts +0 -22
  396. package/dist/core/src/reactive/index.d.ts.map +0 -1
  397. package/dist/core/src/reactive/index.js +0 -33
  398. package/dist/core/src/reactive/index.js.map +0 -1
  399. package/dist/core/src/reactive/migration.d.ts +0 -104
  400. package/dist/core/src/reactive/migration.d.ts.map +0 -1
  401. package/dist/core/src/reactive/migration.js +0 -257
  402. package/dist/core/src/reactive/migration.js.map +0 -1
  403. package/dist/core/src/reactive/ownership.d.ts +0 -75
  404. package/dist/core/src/reactive/ownership.d.ts.map +0 -1
  405. package/dist/core/src/reactive/ownership.js +0 -155
  406. package/dist/core/src/reactive/ownership.js.map +0 -1
  407. package/dist/core/src/reactive/scheduler.d.ts +0 -56
  408. package/dist/core/src/reactive/scheduler.d.ts.map +0 -1
  409. package/dist/core/src/reactive/scheduler.js +0 -263
  410. package/dist/core/src/reactive/scheduler.js.map +0 -1
  411. package/dist/core/src/reactive/signal-list.d.ts +0 -100
  412. package/dist/core/src/reactive/signal-list.d.ts.map +0 -1
  413. package/dist/core/src/reactive/signal-list.js +0 -240
  414. package/dist/core/src/reactive/signal-list.js.map +0 -1
  415. package/dist/core/src/reactive/signal.d.ts +0 -82
  416. package/dist/core/src/reactive/signal.d.ts.map +0 -1
  417. package/dist/core/src/reactive/signal.js +0 -172
  418. package/dist/core/src/reactive/signal.js.map +0 -1
  419. package/dist/core/src/reactive/theme.d.ts +0 -12
  420. package/dist/core/src/reactive/theme.d.ts.map +0 -1
  421. package/dist/core/src/reactive/theme.js +0 -41
  422. package/dist/core/src/reactive/theme.js.map +0 -1
  423. package/dist/core/src/reactive/types.d.ts +0 -6
  424. package/dist/core/src/reactive/types.d.ts.map +0 -1
  425. package/dist/core/src/reactive/types.js +0 -6
  426. package/dist/core/src/reactive/types.js.map +0 -1
  427. package/dist/core/src/reactive/unified-scheduler.d.ts +0 -112
  428. package/dist/core/src/reactive/unified-scheduler.d.ts.map +0 -1
  429. package/dist/core/src/reactive/unified-scheduler.js +0 -315
  430. package/dist/core/src/reactive/unified-scheduler.js.map +0 -1
  431. package/dist/core/src/runtime/component-context.d.ts +0 -73
  432. package/dist/core/src/runtime/component-context.d.ts.map +0 -1
  433. package/dist/core/src/runtime/component-context.js +0 -278
  434. package/dist/core/src/runtime/component-context.js.map +0 -1
  435. package/dist/core/src/runtime/component.d.ts +0 -112
  436. package/dist/core/src/runtime/component.d.ts.map +0 -1
  437. package/dist/core/src/runtime/component.js +0 -394
  438. package/dist/core/src/runtime/component.js.map +0 -1
  439. package/dist/core/src/runtime/context.d.ts +0 -138
  440. package/dist/core/src/runtime/context.d.ts.map +0 -1
  441. package/dist/core/src/runtime/context.js +0 -411
  442. package/dist/core/src/runtime/context.js.map +0 -1
  443. package/dist/core/src/runtime/dom-bridge.d.ts +0 -70
  444. package/dist/core/src/runtime/dom-bridge.d.ts.map +0 -1
  445. package/dist/core/src/runtime/dom-bridge.js +0 -481
  446. package/dist/core/src/runtime/dom-bridge.js.map +0 -1
  447. package/dist/core/src/runtime/element-override.d.ts +0 -82
  448. package/dist/core/src/runtime/element-override.d.ts.map +0 -1
  449. package/dist/core/src/runtime/element-override.js +0 -360
  450. package/dist/core/src/runtime/element-override.js.map +0 -1
  451. package/dist/core/src/runtime/event-delegation.d.ts +0 -59
  452. package/dist/core/src/runtime/event-delegation.d.ts.map +0 -1
  453. package/dist/core/src/runtime/event-delegation.js +0 -220
  454. package/dist/core/src/runtime/event-delegation.js.map +0 -1
  455. package/dist/core/src/runtime/index.d.ts +0 -24
  456. package/dist/core/src/runtime/index.d.ts.map +0 -1
  457. package/dist/core/src/runtime/index.js +0 -36
  458. package/dist/core/src/runtime/index.js.map +0 -1
  459. package/dist/core/src/runtime/lazy-component.d.ts +0 -58
  460. package/dist/core/src/runtime/lazy-component.d.ts.map +0 -1
  461. package/dist/core/src/runtime/lazy-component.js +0 -206
  462. package/dist/core/src/runtime/lazy-component.js.map +0 -1
  463. package/dist/core/src/runtime/lifecycle.d.ts +0 -8
  464. package/dist/core/src/runtime/lifecycle.d.ts.map +0 -1
  465. package/dist/core/src/runtime/lifecycle.js +0 -9
  466. package/dist/core/src/runtime/lifecycle.js.map +0 -1
  467. package/dist/core/src/runtime/mounting.d.ts +0 -9
  468. package/dist/core/src/runtime/mounting.d.ts.map +0 -1
  469. package/dist/core/src/runtime/mounting.js +0 -15
  470. package/dist/core/src/runtime/mounting.js.map +0 -1
  471. package/dist/core/src/runtime/optimization.d.ts +0 -8
  472. package/dist/core/src/runtime/optimization.d.ts.map +0 -1
  473. package/dist/core/src/runtime/optimization.js +0 -12
  474. package/dist/core/src/runtime/optimization.js.map +0 -1
  475. package/dist/core/src/runtime/props.d.ts +0 -154
  476. package/dist/core/src/runtime/props.d.ts.map +0 -1
  477. package/dist/core/src/runtime/props.js +0 -389
  478. package/dist/core/src/runtime/props.js.map +0 -1
  479. package/dist/core/src/runtime/renderer.d.ts +0 -168
  480. package/dist/core/src/runtime/renderer.d.ts.map +0 -1
  481. package/dist/core/src/runtime/renderer.js +0 -1181
  482. package/dist/core/src/runtime/renderer.js.map +0 -1
  483. package/dist/core/src/runtime/semantic-role-manager.d.ts +0 -37
  484. package/dist/core/src/runtime/semantic-role-manager.d.ts.map +0 -1
  485. package/dist/core/src/runtime/semantic-role-manager.js +0 -102
  486. package/dist/core/src/runtime/semantic-role-manager.js.map +0 -1
  487. package/dist/core/src/runtime/types.d.ts +0 -6
  488. package/dist/core/src/runtime/types.d.ts.map +0 -1
  489. package/dist/core/src/runtime/types.js +0 -6
  490. package/dist/core/src/runtime/types.js.map +0 -1
  491. package/dist/core/src/state/binding.d.ts +0 -96
  492. package/dist/core/src/state/binding.d.ts.map +0 -1
  493. package/dist/core/src/state/binding.js +0 -264
  494. package/dist/core/src/state/binding.js.map +0 -1
  495. package/dist/core/src/state/environment.d.ts +0 -178
  496. package/dist/core/src/state/environment.d.ts.map +0 -1
  497. package/dist/core/src/state/environment.js +0 -272
  498. package/dist/core/src/state/environment.js.map +0 -1
  499. package/dist/core/src/state/index.d.ts +0 -108
  500. package/dist/core/src/state/index.d.ts.map +0 -1
  501. package/dist/core/src/state/index.js +0 -102
  502. package/dist/core/src/state/index.js.map +0 -1
  503. package/dist/core/src/state/observed-object.d.ts +0 -126
  504. package/dist/core/src/state/observed-object.d.ts.map +0 -1
  505. package/dist/core/src/state/observed-object.js +0 -330
  506. package/dist/core/src/state/observed-object.js.map +0 -1
  507. package/dist/core/src/state/state-manager.d.ts +0 -97
  508. package/dist/core/src/state/state-manager.d.ts.map +0 -1
  509. package/dist/core/src/state/state-manager.js +0 -297
  510. package/dist/core/src/state/state-manager.js.map +0 -1
  511. package/dist/core/src/state/state.d.ts +0 -78
  512. package/dist/core/src/state/state.d.ts.map +0 -1
  513. package/dist/core/src/state/state.js +0 -283
  514. package/dist/core/src/state/state.js.map +0 -1
  515. package/dist/core/src/state/types.d.ts +0 -159
  516. package/dist/core/src/state/types.d.ts.map +0 -1
  517. package/dist/core/src/state/types.js +0 -8
  518. package/dist/core/src/state/types.js.map +0 -1
  519. package/dist/core/src/utils/clone-helpers.d.ts +0 -11
  520. package/dist/core/src/utils/clone-helpers.d.ts.map +0 -1
  521. package/dist/core/src/utils/clone-helpers.js +0 -69
  522. package/dist/core/src/utils/clone-helpers.js.map +0 -1
  523. package/dist/core/src/validation/build-time-stub.d.ts +0 -33
  524. package/dist/core/src/validation/build-time-stub.d.ts.map +0 -1
  525. package/dist/core/src/validation/build-time-stub.js +0 -53
  526. package/dist/core/src/validation/build-time-stub.js.map +0 -1
  527. package/dist/core/src/validation/debug-tools-stub.d.ts +0 -67
  528. package/dist/core/src/validation/debug-tools-stub.d.ts.map +0 -1
  529. package/dist/core/src/validation/debug-tools-stub.js +0 -94
  530. package/dist/core/src/validation/debug-tools-stub.js.map +0 -1
  531. package/dist/core/src/validation/index.d.ts +0 -116
  532. package/dist/core/src/validation/index.d.ts.map +0 -1
  533. package/dist/core/src/validation/index.js +0 -306
  534. package/dist/core/src/validation/index.js.map +0 -1
  535. package/dist/core/src/validation/lifecycle-validation.d.ts +0 -165
  536. package/dist/core/src/validation/lifecycle-validation.d.ts.map +0 -1
  537. package/dist/core/src/validation/lifecycle-validation.js +0 -501
  538. package/dist/core/src/validation/lifecycle-validation.js.map +0 -1
  539. package/dist/core/src/validation/performance-optimizer-stub.d.ts +0 -50
  540. package/dist/core/src/validation/performance-optimizer-stub.d.ts.map +0 -1
  541. package/dist/core/src/validation/performance-optimizer-stub.js +0 -50
  542. package/dist/core/src/validation/performance-optimizer-stub.js.map +0 -1
  543. package/dist/core/src/validation/plugin-registration.d.ts +0 -92
  544. package/dist/core/src/validation/plugin-registration.d.ts.map +0 -1
  545. package/dist/core/src/validation/plugin-registration.js +0 -199
  546. package/dist/core/src/validation/plugin-registration.js.map +0 -1
  547. package/dist/core/src/validation/production-bypass-core.d.ts +0 -69
  548. package/dist/core/src/validation/production-bypass-core.d.ts.map +0 -1
  549. package/dist/core/src/validation/production-bypass-core.js +0 -115
  550. package/dist/core/src/validation/production-bypass-core.js.map +0 -1
  551. package/dist/core/src/version.d.ts +0 -19
  552. package/dist/core/src/version.d.ts.map +0 -1
  553. package/dist/core/src/version.js +0 -20
  554. package/dist/core/src/version.js.map +0 -1
  555. package/dist/devtools/src/build-time/detection.d.ts +0 -32
  556. package/dist/devtools/src/build-time/detection.d.ts.map +0 -1
  557. package/dist/devtools/src/build-time/detection.js +0 -327
  558. package/dist/devtools/src/build-time/detection.js.map +0 -1
  559. package/dist/devtools/src/build-time/index.d.ts +0 -84
  560. package/dist/devtools/src/build-time/index.d.ts.map +0 -1
  561. package/dist/devtools/src/build-time/index.js +0 -157
  562. package/dist/devtools/src/build-time/index.js.map +0 -1
  563. package/dist/devtools/src/build-time/plugins.d.ts +0 -75
  564. package/dist/devtools/src/build-time/plugins.d.ts.map +0 -1
  565. package/dist/devtools/src/build-time/plugins.js +0 -429
  566. package/dist/devtools/src/build-time/plugins.js.map +0 -1
  567. package/dist/devtools/src/build-time/rules.d.ts +0 -73
  568. package/dist/devtools/src/build-time/rules.d.ts.map +0 -1
  569. package/dist/devtools/src/build-time/rules.js +0 -622
  570. package/dist/devtools/src/build-time/rules.js.map +0 -1
  571. package/dist/devtools/src/build-time/transformer.d.ts +0 -23
  572. package/dist/devtools/src/build-time/transformer.d.ts.map +0 -1
  573. package/dist/devtools/src/build-time/transformer.js +0 -294
  574. package/dist/devtools/src/build-time/transformer.js.map +0 -1
  575. package/dist/devtools/src/build-time/types.d.ts +0 -212
  576. package/dist/devtools/src/build-time/types.d.ts.map +0 -1
  577. package/dist/devtools/src/build-time/types.js +0 -8
  578. package/dist/devtools/src/build-time/types.js.map +0 -1
  579. package/dist/devtools/src/debug/debug.d.ts +0 -61
  580. package/dist/devtools/src/debug/debug.d.ts.map +0 -1
  581. package/dist/devtools/src/debug/debug.js +0 -239
  582. package/dist/devtools/src/debug/debug.js.map +0 -1
  583. package/dist/devtools/src/debug/development-warnings.d.ts +0 -42
  584. package/dist/devtools/src/debug/development-warnings.d.ts.map +0 -1
  585. package/dist/devtools/src/debug/development-warnings.js +0 -84
  586. package/dist/devtools/src/debug/development-warnings.js.map +0 -1
  587. package/dist/devtools/src/debug/enhanced-errors.d.ts +0 -176
  588. package/dist/devtools/src/debug/enhanced-errors.d.ts.map +0 -1
  589. package/dist/devtools/src/debug/enhanced-errors.js +0 -481
  590. package/dist/devtools/src/debug/enhanced-errors.js.map +0 -1
  591. package/dist/devtools/src/debug/enhanced-types.d.ts +0 -284
  592. package/dist/devtools/src/debug/enhanced-types.d.ts.map +0 -1
  593. package/dist/devtools/src/debug/enhanced-types.js +0 -8
  594. package/dist/devtools/src/debug/enhanced-types.js.map +0 -1
  595. package/dist/devtools/src/debug/index.d.ts +0 -13
  596. package/dist/devtools/src/debug/index.d.ts.map +0 -1
  597. package/dist/devtools/src/debug/index.js +0 -17
  598. package/dist/devtools/src/debug/index.js.map +0 -1
  599. package/dist/devtools/src/debug/validation-debug-tools.d.ts +0 -228
  600. package/dist/devtools/src/debug/validation-debug-tools.d.ts.map +0 -1
  601. package/dist/devtools/src/debug/validation-debug-tools.js +0 -472
  602. package/dist/devtools/src/debug/validation-debug-tools.js.map +0 -1
  603. package/dist/devtools/src/import-guide.d.ts +0 -50
  604. package/dist/devtools/src/import-guide.d.ts.map +0 -1
  605. package/dist/devtools/src/import-guide.js +0 -257
  606. package/dist/devtools/src/import-guide.js.map +0 -1
  607. package/dist/devtools/src/index.d.ts +0 -24
  608. package/dist/devtools/src/index.d.ts.map +0 -1
  609. package/dist/devtools/src/index.js +0 -32
  610. package/dist/devtools/src/index.js.map +0 -1
  611. package/dist/devtools/src/inspector/index.d.ts +0 -232
  612. package/dist/devtools/src/inspector/index.d.ts.map +0 -1
  613. package/dist/devtools/src/inspector/index.js +0 -551
  614. package/dist/devtools/src/inspector/index.js.map +0 -1
  615. package/dist/devtools/src/modifier-parameter-system.d.ts +0 -69
  616. package/dist/devtools/src/modifier-parameter-system.d.ts.map +0 -1
  617. package/dist/devtools/src/modifier-parameter-system.js +0 -462
  618. package/dist/devtools/src/modifier-parameter-system.js.map +0 -1
  619. package/dist/devtools/src/plugins/simplified-error-handler.d.ts +0 -83
  620. package/dist/devtools/src/plugins/simplified-error-handler.d.ts.map +0 -1
  621. package/dist/devtools/src/plugins/simplified-error-handler.js +0 -335
  622. package/dist/devtools/src/plugins/simplified-error-handler.js.map +0 -1
  623. package/dist/devtools/src/profiler/index.d.ts +0 -21
  624. package/dist/devtools/src/profiler/index.d.ts.map +0 -1
  625. package/dist/devtools/src/profiler/index.js +0 -30
  626. package/dist/devtools/src/profiler/index.js.map +0 -1
  627. package/dist/devtools/src/profiler/performance-optimizer.d.ts +0 -115
  628. package/dist/devtools/src/profiler/performance-optimizer.d.ts.map +0 -1
  629. package/dist/devtools/src/profiler/performance-optimizer.js +0 -273
  630. package/dist/devtools/src/profiler/performance-optimizer.js.map +0 -1
  631. package/dist/devtools/src/profiler/production-monitoring.d.ts +0 -150
  632. package/dist/devtools/src/profiler/production-monitoring.d.ts.map +0 -1
  633. package/dist/devtools/src/profiler/production-monitoring.js +0 -274
  634. package/dist/devtools/src/profiler/production-monitoring.js.map +0 -1
  635. package/dist/devtools/src/runtime/error-boundary.d.ts +0 -302
  636. package/dist/devtools/src/runtime/error-boundary.d.ts.map +0 -1
  637. package/dist/devtools/src/runtime/error-boundary.js +0 -717
  638. package/dist/devtools/src/runtime/error-boundary.js.map +0 -1
  639. package/dist/devtools/src/runtime/error-recovery.d.ts +0 -267
  640. package/dist/devtools/src/runtime/error-recovery.d.ts.map +0 -1
  641. package/dist/devtools/src/runtime/error-recovery.js +0 -499
  642. package/dist/devtools/src/runtime/error-recovery.js.map +0 -1
  643. package/dist/devtools/src/runtime/error-reporting.d.ts +0 -287
  644. package/dist/devtools/src/runtime/error-reporting.d.ts.map +0 -1
  645. package/dist/devtools/src/runtime/error-reporting.js +0 -626
  646. package/dist/devtools/src/runtime/error-reporting.js.map +0 -1
  647. package/dist/devtools/src/runtime/error-utils.d.ts +0 -204
  648. package/dist/devtools/src/runtime/error-utils.d.ts.map +0 -1
  649. package/dist/devtools/src/runtime/error-utils.js +0 -519
  650. package/dist/devtools/src/runtime/error-utils.js.map +0 -1
  651. package/dist/devtools/src/runtime/performance.d.ts +0 -217
  652. package/dist/devtools/src/runtime/performance.d.ts.map +0 -1
  653. package/dist/devtools/src/runtime/performance.js +0 -538
  654. package/dist/devtools/src/runtime/performance.js.map +0 -1
  655. package/dist/devtools/src/testing/index.d.ts +0 -29
  656. package/dist/devtools/src/testing/index.d.ts.map +0 -1
  657. package/dist/devtools/src/testing/index.js +0 -48
  658. package/dist/devtools/src/testing/index.js.map +0 -1
  659. package/dist/devtools/src/validation/enhanced-runtime.d.ts +0 -310
  660. package/dist/devtools/src/validation/enhanced-runtime.d.ts.map +0 -1
  661. package/dist/devtools/src/validation/enhanced-runtime.js +0 -603
  662. package/dist/devtools/src/validation/enhanced-runtime.js.map +0 -1
  663. package/dist/devtools/src/validation/error-reporting.d.ts +0 -186
  664. package/dist/devtools/src/validation/error-reporting.d.ts.map +0 -1
  665. package/dist/devtools/src/validation/error-reporting.js +0 -439
  666. package/dist/devtools/src/validation/error-reporting.js.map +0 -1
  667. /package/dist/{cli/src/commands → commands}/analyze-imports.d.ts +0 -0
  668. /package/dist/{cli/src/commands → commands}/analyze-imports.js +0 -0
  669. /package/dist/{cli/src/commands → commands}/analyze.d.ts +0 -0
  670. /package/dist/{cli/src/commands → commands}/analyze.js +0 -0
  671. /package/dist/{cli/src/commands → commands}/dev.d.ts +0 -0
  672. /package/dist/{cli/src/commands → commands}/migrate/remove-modifier-trigger.d.ts +0 -0
  673. /package/dist/{cli/src/commands → commands}/migrate/remove-modifier-trigger.js +0 -0
  674. /package/dist/{cli/src/commands → commands}/migrate.d.ts +0 -0
  675. /package/dist/{cli/src/commands → commands}/modifier-docs.d.ts +0 -0
  676. /package/dist/{cli/src/commands → commands}/modifier-docs.js +0 -0
  677. /package/dist/{cli/src/commands → commands}/optimize.d.ts +0 -0
  678. /package/dist/{cli/src/commands → commands}/optimize.js +0 -0
  679. /package/dist/{cli/src/import-optimizer.d.ts → import-optimizer.d.ts} +0 -0
  680. /package/dist/{cli/src/import-optimizer.js → import-optimizer.js} +0 -0
  681. /package/dist/{cli/src/index.d.ts → index.d.ts} +0 -0
  682. /package/dist/{cli/src/index.js → index.js} +0 -0
  683. /package/dist/{cli/src/migrations → migrations}/remove-modifier-trigger.d.ts +0 -0
  684. /package/dist/{cli/src/migrations → migrations}/remove-modifier-trigger.js +0 -0
@@ -1,1062 +0,0 @@
1
- /**
2
- * Base Modifier System Implementation
3
- *
4
- * Core modifier classes and utilities for the SwiftUI-inspired modifier system.
5
- */
6
- import { createEffect, isComputed, isSignal, getThemeSignal } from '../reactive';
7
- import { ModifierPriority } from './types';
8
- import { isInfinity, dimensionToCSS, shouldExpandForInfinity, } from '../constants/layout';
9
- /**
10
- * Abstract base modifier class
11
- */
12
- export class BaseModifier {
13
- properties;
14
- constructor(properties) {
15
- this.properties = properties;
16
- }
17
- /**
18
- * Helper to resolve reactive properties
19
- */
20
- resolveReactiveProps(props, context) {
21
- const resolved = {};
22
- for (const [key, value] of Object.entries(props)) {
23
- if (isSignal(value) || isComputed(value)) {
24
- // Preserve the signal/computed - let applyStyles handle reactivity
25
- resolved[key] = value;
26
- }
27
- else {
28
- // Static value
29
- resolved[key] = value;
30
- }
31
- }
32
- // Context parameter is kept for compatibility but not used in new approach
33
- void context;
34
- return resolved;
35
- }
36
- /**
37
- * Apply a single style change to an element with reactive support
38
- */
39
- applyStyleChange(element, property, value) {
40
- if (element instanceof HTMLElement) {
41
- const cssProperty = this.toCSSProperty(property);
42
- // Handle reactive values (signals and computed)
43
- if (isSignal(value) || isComputed(value)) {
44
- // Create reactive effect for this style property
45
- createEffect(() => {
46
- const currentValue = value();
47
- const cssValue = String(currentValue);
48
- // Check if value contains !important and handle it properly
49
- if (cssValue.includes('!important')) {
50
- const actualValue = cssValue.replace(/\s*!important\s*$/, '').trim();
51
- element.style.setProperty(cssProperty, actualValue, 'important');
52
- }
53
- else {
54
- element.style.setProperty(cssProperty, cssValue);
55
- }
56
- });
57
- }
58
- else {
59
- // Handle static values
60
- const cssValue = String(value);
61
- // Check if value contains !important and handle it properly
62
- if (cssValue.includes('!important')) {
63
- const actualValue = cssValue.replace(/\s*!important\s*$/, '').trim();
64
- element.style.setProperty(cssProperty, actualValue, 'important');
65
- }
66
- else {
67
- element.style.setProperty(cssProperty, cssValue);
68
- }
69
- }
70
- }
71
- }
72
- /**
73
- * Convert camelCase property to CSS kebab-case
74
- */
75
- toCSSProperty(property) {
76
- return property.replace(/([A-Z])/g, '-$1').toLowerCase();
77
- }
78
- /**
79
- * Convert value to CSS value string
80
- */
81
- toCSSValue(value) {
82
- if (typeof value === 'number') {
83
- return `${value}px`;
84
- }
85
- return String(value);
86
- }
87
- /**
88
- * Convert value to CSS value string with property-specific handling
89
- */
90
- toCSSValueForProperty(property, value) {
91
- if (typeof value === 'number') {
92
- // Properties that should be unitless
93
- const unitlessProperties = [
94
- 'opacity',
95
- 'z-index',
96
- 'line-height',
97
- 'flex-grow',
98
- 'flex-shrink',
99
- 'order',
100
- 'column-count',
101
- 'font-weight',
102
- ];
103
- if (unitlessProperties.includes(property)) {
104
- return String(value);
105
- }
106
- return `${value}px`;
107
- }
108
- // Properties that should be passed through as-is (no processing)
109
- const passthroughProperties = [
110
- 'filter', // CSS filter strings should not be processed
111
- 'transform', // CSS transform strings
112
- 'clip-path', // CSS clip-path strings
113
- ];
114
- if (passthroughProperties.includes(property)) {
115
- return String(value);
116
- }
117
- return String(value);
118
- }
119
- /**
120
- * Apply multiple CSS properties to an element with reactive support
121
- */
122
- applyStyles(element, styles) {
123
- // Check if element has a style property (for testing and real elements)
124
- if (element instanceof HTMLElement || element.style) {
125
- const styleTarget = element instanceof HTMLElement ? element.style : element.style;
126
- for (const [property, value] of Object.entries(styles)) {
127
- if (value !== undefined) {
128
- const cssProperty = this.toCSSProperty(property);
129
- // Handle reactive values (signals and computed)
130
- if (isSignal(value) || isComputed(value)) {
131
- // Create reactive effect for this style property
132
- createEffect(() => {
133
- const currentValue = value();
134
- const cssValue = this.toCSSValueForProperty(cssProperty, currentValue);
135
- if (styleTarget.setProperty) {
136
- // Check if value contains !important and handle it properly
137
- if (typeof cssValue === 'string' &&
138
- cssValue.includes('!important')) {
139
- const actualValue = cssValue
140
- .replace(/\s*!important\s*$/, '')
141
- .trim();
142
- styleTarget.setProperty(cssProperty, actualValue, 'important');
143
- }
144
- else {
145
- styleTarget.setProperty(cssProperty, cssValue);
146
- }
147
- }
148
- else {
149
- ;
150
- styleTarget[cssProperty] = cssValue;
151
- }
152
- });
153
- }
154
- else {
155
- // Handle static values
156
- const cssValue = this.toCSSValueForProperty(cssProperty, value);
157
- if (styleTarget.setProperty) {
158
- // Check if value contains !important and handle it properly
159
- if (typeof cssValue === 'string' &&
160
- cssValue.includes('!important')) {
161
- const actualValue = cssValue
162
- .replace(/\s*!important\s*$/, '')
163
- .trim();
164
- styleTarget.setProperty(cssProperty, actualValue, 'important');
165
- }
166
- else {
167
- styleTarget.setProperty(cssProperty, cssValue);
168
- }
169
- }
170
- else {
171
- ;
172
- styleTarget[cssProperty] = cssValue;
173
- }
174
- }
175
- }
176
- }
177
- }
178
- }
179
- /**
180
- * Add CSS classes to an element
181
- */
182
- addClasses(element, classes) {
183
- if (element instanceof HTMLElement) {
184
- element.classList.add(...classes);
185
- }
186
- }
187
- /**
188
- * Remove CSS classes from an element
189
- */
190
- removeClasses(element, classes) {
191
- if (element instanceof HTMLElement) {
192
- element.classList.remove(...classes);
193
- }
194
- }
195
- /**
196
- * Create a style computation context
197
- */
198
- createStyleContext(componentId, element, modifiers) {
199
- return {
200
- componentId,
201
- element,
202
- modifiers,
203
- signals: new Set(),
204
- cleanup: [],
205
- };
206
- }
207
- }
208
- /**
209
- * Layout modifier for frame, padding, margin
210
- */
211
- export class LayoutModifier extends BaseModifier {
212
- type = 'layout';
213
- priority = ModifierPriority.LAYOUT;
214
- apply(node, context) {
215
- if (!node.element || !context.element)
216
- return;
217
- const styleContext = this.createStyleContext(context.componentId, context.element, []);
218
- const styles = this.computeLayoutStyles(this.properties, styleContext);
219
- this.applyStyles(context.element, styles);
220
- // Layout modifiers (offset, aspectRatio, scaleEffect, zIndex) have been
221
- // migrated to @tachui/modifiers/layout for enhanced functionality
222
- // Handle absolutePosition separately for proper positioning (Phase 3 - Epic: Butternut)
223
- const props = this.properties;
224
- if (props.position && context.element instanceof HTMLElement) {
225
- this.applyAbsolutePosition(context.element, props.position);
226
- }
227
- return undefined;
228
- }
229
- // Layout modifier implementations have been migrated to @tachui/modifiers/layout
230
- applyAbsolutePosition(element, position) {
231
- const { x, y } = position;
232
- const currentX = x ?? 'auto';
233
- const currentY = y ?? 'auto';
234
- // Position-based transform (not a scale or offset, but absolute positioning)
235
- element.style.left = this.toCSSValue(currentX);
236
- element.style.top = this.toCSSValue(currentY);
237
- }
238
- computeLayoutStyles(props, _context) {
239
- const styles = {};
240
- // Frame properties - handle infinity values properly
241
- if (props.frame) {
242
- const frame = props.frame;
243
- // Check for infinity constraints and apply appropriate flex/size styles
244
- const infinityResult = shouldExpandForInfinity(frame);
245
- Object.assign(styles, infinityResult.cssProps);
246
- // Convert dimensions to CSS, handling infinity appropriately
247
- // Don't apply explicit width/height if infinity expansion is happening
248
- if (frame.width !== undefined) {
249
- const cssValue = dimensionToCSS(frame.width);
250
- if (cssValue !== undefined &&
251
- !isInfinity(frame.width) &&
252
- !infinityResult.expandWidth) {
253
- styles.width = cssValue;
254
- }
255
- }
256
- if (frame.height !== undefined) {
257
- const cssValue = dimensionToCSS(frame.height);
258
- if (cssValue !== undefined &&
259
- !isInfinity(frame.height) &&
260
- !infinityResult.expandHeight) {
261
- styles.height = cssValue;
262
- }
263
- }
264
- if (frame.minWidth !== undefined) {
265
- const cssValue = dimensionToCSS(frame.minWidth);
266
- if (cssValue !== undefined) {
267
- styles.minWidth = cssValue;
268
- }
269
- }
270
- if (frame.maxWidth !== undefined && !isInfinity(frame.maxWidth)) {
271
- const cssValue = dimensionToCSS(frame.maxWidth);
272
- if (cssValue !== undefined) {
273
- styles.maxWidth = cssValue;
274
- }
275
- }
276
- else if (isInfinity(frame.maxWidth)) {
277
- // SwiftUI compatibility: maxWidth infinity means expand to fill available width
278
- // Remove maxWidth constraint and use flex properties for expansion
279
- styles.maxWidth = 'none';
280
- styles.flexGrow = '1 !important';
281
- styles.flexShrink = '1 !important';
282
- styles.flexBasis = '0% !important';
283
- styles.alignSelf = 'stretch !important';
284
- }
285
- if (frame.minHeight !== undefined) {
286
- const cssValue = dimensionToCSS(frame.minHeight);
287
- if (cssValue !== undefined) {
288
- styles.minHeight = cssValue;
289
- }
290
- }
291
- if (frame.maxHeight !== undefined && !isInfinity(frame.maxHeight)) {
292
- const cssValue = dimensionToCSS(frame.maxHeight);
293
- if (cssValue !== undefined) {
294
- styles.maxHeight = cssValue;
295
- }
296
- }
297
- else if (isInfinity(frame.maxHeight)) {
298
- // SwiftUI compatibility: maxHeight infinity means expand to fill available height
299
- // Remove maxHeight constraint and use flex properties for expansion
300
- styles.maxHeight = 'none';
301
- styles.flexGrow = '1 !important';
302
- styles.flexShrink = '1 !important';
303
- styles.flexBasis = '0% !important';
304
- styles.alignSelf = 'stretch !important';
305
- }
306
- }
307
- // Padding
308
- if (props.padding !== undefined) {
309
- if (typeof props.padding === 'number') {
310
- styles.padding = this.toCSSValue(props.padding);
311
- }
312
- else {
313
- const p = props.padding;
314
- if (p.top !== undefined)
315
- styles.paddingTop = this.toCSSValue(p.top);
316
- if (p.right !== undefined)
317
- styles.paddingRight = this.toCSSValue(p.right);
318
- if (p.bottom !== undefined)
319
- styles.paddingBottom = this.toCSSValue(p.bottom);
320
- if (p.left !== undefined)
321
- styles.paddingLeft = this.toCSSValue(p.left);
322
- }
323
- }
324
- // Margin
325
- if (props.margin !== undefined) {
326
- if (typeof props.margin === 'number') {
327
- styles.margin = this.toCSSValue(props.margin);
328
- }
329
- else {
330
- const m = props.margin;
331
- if (m.top !== undefined)
332
- styles.marginTop = this.toCSSValue(m.top);
333
- if (m.right !== undefined)
334
- styles.marginRight = this.toCSSValue(m.right);
335
- if (m.bottom !== undefined)
336
- styles.marginBottom = this.toCSSValue(m.bottom);
337
- if (m.left !== undefined)
338
- styles.marginLeft = this.toCSSValue(m.left);
339
- }
340
- }
341
- // Alignment
342
- if (props.alignment) {
343
- switch (props.alignment) {
344
- case 'leading':
345
- styles.textAlign = 'left';
346
- styles.alignItems = 'flex-start';
347
- break;
348
- case 'center':
349
- styles.textAlign = 'center';
350
- styles.alignItems = 'center';
351
- break;
352
- case 'trailing':
353
- styles.textAlign = 'right';
354
- styles.alignItems = 'flex-end';
355
- break;
356
- case 'top':
357
- styles.alignItems = 'flex-start';
358
- break;
359
- case 'bottom':
360
- styles.alignItems = 'flex-end';
361
- break;
362
- }
363
- }
364
- // Layout Priority
365
- // In SwiftUI, layoutPriority determines which views get priority in sizing
366
- // Higher priority views determine container size in ZStack
367
- // We implement this using CSS flexbox properties for flexible layouts
368
- if (props.layoutPriority !== undefined) {
369
- const priority = Number(props.layoutPriority);
370
- // Set flex properties based on priority
371
- // Higher priority = less flex shrink, more flex grow
372
- if (priority > 0) {
373
- // High priority: Don't shrink, allow growth
374
- styles.flexShrink = '0';
375
- styles.flexGrow = String(Math.max(1, priority / 10));
376
- // For ZStack containers, higher priority elements determine size
377
- // We use z-index for layering and flex properties for sizing behavior
378
- styles.zIndex = String(priority);
379
- // In grid layouts, higher priority gets more space
380
- styles.gridRowEnd = `span ${String(Math.min(10, Math.max(1, Math.ceil(priority / 10))))}`;
381
- styles.gridColumnEnd = `span ${String(Math.min(10, Math.max(1, Math.ceil(priority / 10))))}`;
382
- }
383
- else if (priority === 0) {
384
- // Default priority: Normal flex behavior
385
- styles.flexShrink = '1';
386
- styles.flexGrow = '1';
387
- }
388
- else {
389
- // Low priority: Shrink more, grow less
390
- styles.flexShrink = String(Math.abs(priority));
391
- styles.flexGrow = '0';
392
- styles.zIndex = String(priority);
393
- }
394
- // For containers that need to size based on highest priority child
395
- // We use CSS custom properties that can be read by parent containers
396
- if (styles && typeof styles === 'object' && 'setProperty' in styles) {
397
- ;
398
- styles.setProperty('--layout-priority', String(priority));
399
- }
400
- }
401
- // Offset modifier (SwiftUI .offset(x, y))
402
- // Note: Offset handling is done in the apply method with proper reactive support
403
- // This is just for setting up the basic structure
404
- if (props.offset) {
405
- // The actual transform application happens in apply() method
406
- // to handle both reactive and static values properly
407
- }
408
- // Aspect Ratio modifier (SwiftUI .aspectRatio(ratio, contentMode))
409
- if (props.aspectRatio) {
410
- const { ratio, contentMode } = props.aspectRatio;
411
- if (ratio !== undefined) {
412
- // Apply CSS aspect-ratio property
413
- styles.aspectRatio = typeof ratio === 'number' ? String(ratio) : ratio;
414
- // Handle content mode
415
- if (contentMode === 'fill') {
416
- styles.objectFit = 'cover';
417
- }
418
- else {
419
- styles.objectFit = 'contain';
420
- }
421
- }
422
- }
423
- // Fixed Size modifier (SwiftUI .fixedSize())
424
- if (props.fixedSize) {
425
- const { horizontal, vertical } = props.fixedSize;
426
- if (horizontal) {
427
- styles.flexShrink = '0';
428
- styles.width = 'max-content';
429
- }
430
- if (vertical) {
431
- styles.flexShrink = '0';
432
- styles.height = 'max-content';
433
- }
434
- }
435
- return styles;
436
- }
437
- }
438
- /**
439
- * Appearance modifier for colors, fonts, borders, shadows
440
- */
441
- export class AppearanceModifier extends BaseModifier {
442
- type = 'appearance';
443
- priority = ModifierPriority.APPEARANCE;
444
- apply(node, context) {
445
- if (!node.element || !context.element) {
446
- return;
447
- }
448
- const styleContext = this.createStyleContext(context.componentId, context.element, []);
449
- const resolved = this.resolveReactiveProps(this.properties, styleContext);
450
- // Handle Assets separately with theme reactivity
451
- this.applyAssetBasedStyles(context.element, resolved);
452
- // Handle non-Asset styles normally
453
- const styles = this.computeAppearanceStyles(resolved);
454
- this.applyStyles(context.element, styles);
455
- // Handle HTML attributes (ARIA, role, navigation, etc.)
456
- this.applyAttributes(context.element, resolved);
457
- return undefined;
458
- }
459
- /**
460
- * Apply Asset-based styles with theme reactivity
461
- */
462
- applyAssetBasedStyles(element, props) {
463
- // Get the shared theme signal
464
- const themeSignal = getThemeSignal();
465
- // Handle foregroundColor Asset
466
- if (props.foregroundColor && this.isAsset(props.foregroundColor)) {
467
- createEffect(() => {
468
- // Watch theme changes to trigger re-resolution
469
- themeSignal();
470
- // Re-resolve Asset when theme changes
471
- const resolvedColor = props.foregroundColor.resolve();
472
- this.applyStyleChange(element, 'color', resolvedColor);
473
- });
474
- }
475
- // Handle backgroundColor Asset
476
- if (props.backgroundColor && this.isAsset(props.backgroundColor)) {
477
- createEffect(() => {
478
- // Watch theme changes to trigger re-resolution
479
- themeSignal();
480
- // Re-resolve Asset when theme changes
481
- const resolvedColor = props.backgroundColor.resolve();
482
- this.applyStyleChange(element, 'backgroundColor', resolvedColor);
483
- });
484
- }
485
- // Handle border color Asset
486
- if (props.border?.color && this.isAsset(props.border.color)) {
487
- createEffect(() => {
488
- // Watch theme changes
489
- themeSignal();
490
- // Re-resolve Asset when theme changes
491
- const resolvedColor = props.border.color.resolve();
492
- this.applyStyleChange(element, 'borderColor', resolvedColor);
493
- });
494
- }
495
- }
496
- /**
497
- * Check if a value is an Asset object (including Asset proxies)
498
- */
499
- isAsset(value) {
500
- return (value !== null &&
501
- value !== undefined &&
502
- typeof value === 'object' &&
503
- 'resolve' in value &&
504
- typeof value.resolve === 'function');
505
- }
506
- computeAppearanceStyles(props) {
507
- const styles = {};
508
- // Colors (skip Assets - they're handled reactively in applyAssetBasedStyles)
509
- if (props.foregroundColor && !this.isAsset(props.foregroundColor)) {
510
- styles.color = props.foregroundColor;
511
- }
512
- if (props.backgroundColor && !this.isAsset(props.backgroundColor)) {
513
- styles.backgroundColor = props.backgroundColor;
514
- }
515
- if (props.opacity !== undefined)
516
- styles.opacity = props.opacity;
517
- // Font
518
- if (props.font) {
519
- const font = props.font;
520
- if (font.family) {
521
- // Handle FontAsset objects that need to be resolved
522
- if (typeof font.family === 'object' &&
523
- font.family !== null &&
524
- typeof font.family.resolve === 'function') {
525
- const resolved = font.family.resolve();
526
- styles.fontFamily = resolved;
527
- }
528
- else {
529
- styles.fontFamily = font.family;
530
- }
531
- }
532
- if (font.size)
533
- styles.fontSize = this.toCSSValue(font.size);
534
- if (font.weight)
535
- styles.fontWeight = String(font.weight);
536
- if (font.style)
537
- styles.fontStyle = font.style;
538
- }
539
- // Corner radius
540
- if (props.cornerRadius !== undefined) {
541
- styles.borderRadius = this.toCSSValue(props.cornerRadius);
542
- }
543
- // Border
544
- if (props.border) {
545
- const border = props.border;
546
- if (border.width !== undefined)
547
- styles.borderWidth = this.toCSSValue(border.width);
548
- if (border.color && !this.isAsset(border.color)) {
549
- styles.borderColor = border.color;
550
- }
551
- if (border.style)
552
- styles.borderStyle = border.style;
553
- }
554
- // Shadow functionality moved to @tachui/modifiers/effects entry point
555
- // Clipped and Clip Shape modifiers moved to @tachui/modifiers package
556
- // Visual Effects (Phase 2 - Epic: Butternut)
557
- const filters = [];
558
- if (props.blur !== undefined) {
559
- filters.push(`blur(${props.blur}px)`);
560
- }
561
- if (props.brightness !== undefined) {
562
- filters.push(`brightness(${props.brightness})`);
563
- }
564
- if (props.contrast !== undefined) {
565
- filters.push(`contrast(${props.contrast})`);
566
- }
567
- if (props.saturation !== undefined) {
568
- filters.push(`saturate(${props.saturation})`);
569
- }
570
- if (props.hueRotation !== undefined) {
571
- filters.push(`hue-rotate(${props.hueRotation}deg)`);
572
- }
573
- if (props.grayscale !== undefined) {
574
- filters.push(`grayscale(${props.grayscale})`);
575
- }
576
- if (props.colorInvert !== undefined) {
577
- filters.push(`invert(${props.colorInvert})`);
578
- }
579
- if (filters.length > 0) {
580
- styles.filter = filters.join(' ');
581
- }
582
- return styles;
583
- }
584
- /**
585
- * Apply HTML attributes (ARIA, role, data attributes, etc.)
586
- */
587
- applyAttributes(element, props) {
588
- if (!element)
589
- return;
590
- // Also need to get the component from the context to update props
591
- // This is a hack, but needed for tests that expect attributes on component.props
592
- const component = this.findComponentFromElement(element);
593
- // Common HTML attributes
594
- if (props.role !== undefined) {
595
- element.setAttribute('role', String(props.role));
596
- if (component?.props) {
597
- component.props.role = String(props.role);
598
- }
599
- }
600
- // ARIA attributes
601
- if (props['aria-label'] !== undefined) {
602
- element.setAttribute('aria-label', String(props['aria-label']));
603
- if (component?.props) {
604
- component.props['aria-label'] = String(props['aria-label']);
605
- }
606
- }
607
- if (props['aria-live'] !== undefined) {
608
- element.setAttribute('aria-live', String(props['aria-live']));
609
- if (component?.props) {
610
- component.props['aria-live'] = String(props['aria-live']);
611
- }
612
- }
613
- if (props['aria-describedby'] !== undefined) {
614
- element.setAttribute('aria-describedby', String(props['aria-describedby']));
615
- if (component?.props) {
616
- component.props['aria-describedby'] = String(props['aria-describedby']);
617
- }
618
- }
619
- if (props['aria-modal'] !== undefined) {
620
- element.setAttribute('aria-modal', String(props['aria-modal']));
621
- if (component?.props) {
622
- component.props['aria-modal'] = String(props['aria-modal']);
623
- }
624
- }
625
- if (props['aria-hidden'] !== undefined) {
626
- element.setAttribute('aria-hidden', String(props['aria-hidden']));
627
- if (component?.props) {
628
- component.props['aria-hidden'] = String(props['aria-hidden']);
629
- }
630
- }
631
- // Navigation attributes (for custom processing by navigation system)
632
- if (props.navigationTitle !== undefined) {
633
- element.setAttribute('data-navigation-title', String(props.navigationTitle));
634
- if (component?.props) {
635
- component.props.navigationTitle = String(props.navigationTitle);
636
- }
637
- }
638
- if (props.navigationBarHidden !== undefined) {
639
- element.setAttribute('data-navigation-bar-hidden', String(props.navigationBarHidden));
640
- if (component?.props) {
641
- component.props.navigationBarHidden = props.navigationBarHidden;
642
- }
643
- // Also apply aria-hidden for accessibility
644
- if (props.navigationBarHidden) {
645
- element.setAttribute('aria-hidden', 'true');
646
- if (component?.props) {
647
- component.props['aria-hidden'] = 'true';
648
- }
649
- }
650
- }
651
- if (props.navigationBarItems !== undefined) {
652
- // Store as JSON in data attribute for navigation system to process
653
- element.setAttribute('data-navigation-bar-items', JSON.stringify(props.navigationBarItems));
654
- if (component?.props) {
655
- component.props.navigationBarItems = props.navigationBarItems;
656
- }
657
- }
658
- }
659
- findComponentFromElement(element) {
660
- // Try to find the component instance associated with this element
661
- // This is a simplified approach - in a real implementation, we'd have a proper mapping
662
- return element._tachui_component || null;
663
- }
664
- }
665
- /**
666
- * Interaction modifier for events and accessibility
667
- */
668
- export class InteractionModifier extends BaseModifier {
669
- type = 'interaction';
670
- priority = ModifierPriority.INTERACTION;
671
- apply(_node, context) {
672
- if (!context.element)
673
- return;
674
- const props = this.properties;
675
- // Event handlers
676
- if (props.onTap) {
677
- context.element.addEventListener('click', props.onTap);
678
- }
679
- if (props.onHover) {
680
- context.element.addEventListener('mouseenter', () => props.onHover(true));
681
- context.element.addEventListener('mouseleave', () => props.onHover(false));
682
- }
683
- if (props.onMouseEnter) {
684
- context.element.addEventListener('mouseenter', props.onMouseEnter);
685
- }
686
- if (props.onMouseLeave) {
687
- context.element.addEventListener('mouseleave', props.onMouseLeave);
688
- }
689
- if (props.onMouseDown) {
690
- context.element.addEventListener('mousedown', props.onMouseDown);
691
- }
692
- if (props.onMouseUp) {
693
- context.element.addEventListener('mouseup', props.onMouseUp);
694
- }
695
- if (props.onDragStart) {
696
- context.element.addEventListener('dragstart', props.onDragStart);
697
- }
698
- if (props.onDragOver) {
699
- context.element.addEventListener('dragover', props.onDragOver);
700
- }
701
- if (props.onDragLeave) {
702
- context.element.addEventListener('dragleave', props.onDragLeave);
703
- }
704
- if (props.onDrop) {
705
- context.element.addEventListener('drop', props.onDrop);
706
- }
707
- // Additional mouse events
708
- if (props.onDoubleClick) {
709
- context.element.addEventListener('dblclick', props.onDoubleClick);
710
- }
711
- if (props.onContextMenu) {
712
- context.element.addEventListener('contextmenu', props.onContextMenu);
713
- }
714
- // Focus events
715
- if (props.onFocus) {
716
- context.element.addEventListener('focus', () => props.onFocus(true));
717
- context.element.addEventListener('blur', () => props.onFocus(false));
718
- }
719
- if (props.onBlur) {
720
- context.element.addEventListener('blur', () => props.onBlur(false));
721
- }
722
- // Keyboard events
723
- if (props.onKeyPress) {
724
- context.element.addEventListener('keypress', props.onKeyPress);
725
- }
726
- if (props.onKeyDown) {
727
- context.element.addEventListener('keydown', props.onKeyDown);
728
- }
729
- if (props.onKeyUp) {
730
- context.element.addEventListener('keyup', props.onKeyUp);
731
- }
732
- // Touch events
733
- if (props.onTouchStart) {
734
- context.element.addEventListener('touchstart', props.onTouchStart, {
735
- passive: true,
736
- });
737
- }
738
- if (props.onTouchMove) {
739
- context.element.addEventListener('touchmove', props.onTouchMove, {
740
- passive: true,
741
- });
742
- }
743
- if (props.onTouchEnd) {
744
- context.element.addEventListener('touchend', props.onTouchEnd, {
745
- passive: true,
746
- });
747
- }
748
- if (props.onTouchCancel) {
749
- context.element.addEventListener('touchcancel', props.onTouchCancel, {
750
- passive: true,
751
- });
752
- }
753
- // Swipe gestures (simplified implementation)
754
- if (props.onSwipeLeft || props.onSwipeRight) {
755
- let startX = 0;
756
- let startY = 0;
757
- context.element.addEventListener('touchstart', (e) => {
758
- const touchEvent = e;
759
- const touch = touchEvent.touches[0];
760
- startX = touch.clientX;
761
- startY = touch.clientY;
762
- }, { passive: true });
763
- context.element.addEventListener('touchend', (e) => {
764
- const touchEvent = e;
765
- const touch = touchEvent.changedTouches[0];
766
- const deltaX = touch.clientX - startX;
767
- const deltaY = touch.clientY - startY;
768
- const minSwipeDistance = 50;
769
- // Only register as swipe if horizontal movement is greater than vertical
770
- if (Math.abs(deltaX) > Math.abs(deltaY) &&
771
- Math.abs(deltaX) > minSwipeDistance) {
772
- if (deltaX < 0 && props.onSwipeLeft) {
773
- props.onSwipeLeft();
774
- }
775
- else if (deltaX > 0 && props.onSwipeRight) {
776
- props.onSwipeRight();
777
- }
778
- }
779
- }, { passive: true });
780
- }
781
- // Scroll and wheel events
782
- if (props.onScroll) {
783
- context.element.addEventListener('scroll', props.onScroll, {
784
- passive: true,
785
- });
786
- }
787
- if (props.onWheel) {
788
- context.element.addEventListener('wheel', props.onWheel, {
789
- passive: false,
790
- });
791
- }
792
- // Input events
793
- if (props.onInput) {
794
- context.element.addEventListener('input', props.onInput);
795
- }
796
- if (props.onChange) {
797
- context.element.addEventListener('change', event => {
798
- const target = event.target;
799
- const value = target.value || target.textContent || '';
800
- props.onChange(value, event);
801
- });
802
- }
803
- // Clipboard events
804
- if (props.onCopy) {
805
- context.element.addEventListener('copy', props.onCopy);
806
- }
807
- if (props.onCut) {
808
- context.element.addEventListener('cut', props.onCut);
809
- }
810
- if (props.onPaste) {
811
- context.element.addEventListener('paste', props.onPaste);
812
- }
813
- // Selection events
814
- if (props.onSelect) {
815
- context.element.addEventListener('select', props.onSelect);
816
- }
817
- // Disabled state
818
- if (props.disabled !== undefined) {
819
- if (context.element instanceof HTMLElement) {
820
- if (props.disabled) {
821
- context.element.setAttribute('disabled', 'true');
822
- context.element.style.pointerEvents = 'none';
823
- context.element.style.opacity = '0.6';
824
- }
825
- else {
826
- context.element.removeAttribute('disabled');
827
- context.element.style.pointerEvents = '';
828
- context.element.style.opacity = '';
829
- }
830
- }
831
- }
832
- // Draggable state
833
- if (props.draggable !== undefined) {
834
- if (context.element instanceof HTMLElement) {
835
- context.element.draggable = props.draggable;
836
- }
837
- }
838
- // Accessibility
839
- if (props.accessibilityLabel) {
840
- context.element.setAttribute('aria-label', props.accessibilityLabel);
841
- }
842
- if (props.accessibilityHint) {
843
- context.element.setAttribute('aria-describedby', props.accessibilityHint);
844
- }
845
- return undefined;
846
- }
847
- }
848
- /**
849
- * Animation modifier for transitions and animations
850
- */
851
- export class AnimationModifier extends BaseModifier {
852
- type = 'animation';
853
- priority = ModifierPriority.ANIMATION;
854
- apply(_node, context) {
855
- if (!context.element)
856
- return;
857
- const props = this.properties;
858
- // Transition
859
- if (props.transition) {
860
- const t = props.transition;
861
- const property = t.property || 'all';
862
- const duration = t.duration || 300;
863
- const easing = t.easing || 'ease';
864
- const delay = t.delay || 0;
865
- if (context.element instanceof HTMLElement) {
866
- context.element.style.transition = `${property} ${duration}ms ${easing} ${delay}ms`;
867
- }
868
- }
869
- // Animation
870
- if (props.animation && context.element instanceof HTMLElement) {
871
- const anim = props.animation;
872
- if (anim.keyframes) {
873
- // Create keyframes
874
- const keyframeName = `tachui-animation-${context.componentId}-${Date.now()}`;
875
- const keyframeRule = this.createKeyframeRule(keyframeName, anim.keyframes);
876
- // Add keyframes to stylesheet
877
- this.addKeyframesToStylesheet(keyframeRule);
878
- // Apply animation
879
- const duration = anim.duration || 1000;
880
- const easing = anim.easing || 'ease';
881
- const iterations = anim.iterations || 1;
882
- const direction = anim.direction || 'normal';
883
- context.element.style.animation = `${keyframeName} ${duration}ms ${easing} ${iterations} ${direction}`;
884
- }
885
- }
886
- // Transform
887
- if (props.transform && context.element instanceof HTMLElement) {
888
- if (isSignal(props.transform) || isComputed(props.transform)) {
889
- // Create reactive effect for transform
890
- createEffect(() => {
891
- const transformValue = props.transform();
892
- if (context.element instanceof HTMLElement) {
893
- context.element.style.transform = transformValue;
894
- }
895
- });
896
- }
897
- else {
898
- context.element.style.transform = props.transform;
899
- }
900
- }
901
- // Scale Effect (SwiftUI .scaleEffect(x, y, anchor))
902
- if (props.scaleEffect && context.element instanceof HTMLElement) {
903
- const { x, y, anchor } = props.scaleEffect;
904
- const scaleY = y ?? x; // Default to uniform scaling if y not provided
905
- // Convert anchor to CSS transform-origin
906
- const anchorOrigins = {
907
- center: '50% 50%',
908
- top: '50% 0%',
909
- topLeading: '0% 0%',
910
- topTrailing: '100% 0%',
911
- bottom: '50% 100%',
912
- bottomLeading: '0% 100%',
913
- bottomTrailing: '100% 100%',
914
- leading: '0% 50%',
915
- trailing: '100% 50%',
916
- };
917
- const transformOrigin = anchorOrigins[anchor || 'center'] || '50% 50%';
918
- context.element.style.transformOrigin = transformOrigin;
919
- // Create scale transform
920
- const scaleTransform = `scale(${x}, ${scaleY})`;
921
- // Preserve existing transforms but replace any existing scale functions
922
- const existingTransform = context.element.style.transform || '';
923
- const existingTransforms = existingTransform
924
- .replace(/\s*scale[XYZ3d]*\([^)]*\)\s*/g, ' ')
925
- .replace(/\s+/g, ' ')
926
- .trim();
927
- const newTransform = existingTransforms
928
- ? `${existingTransforms} ${scaleTransform}`.trim()
929
- : scaleTransform;
930
- context.element.style.transform = newTransform;
931
- }
932
- // Overlay modifier moved to @tachui/modifiers package
933
- return undefined;
934
- }
935
- createKeyframeRule(name, keyframes) {
936
- let rule = `@keyframes ${name} {\n`;
937
- for (const [percentage, styles] of Object.entries(keyframes)) {
938
- rule += ` ${percentage} {\n`;
939
- for (const [property, value] of Object.entries(styles)) {
940
- const cssProperty = this.toCSSProperty(property);
941
- rule += ` ${cssProperty}: ${value};\n`;
942
- }
943
- rule += ` }\n`;
944
- }
945
- rule += '}';
946
- return rule;
947
- }
948
- addKeyframesToStylesheet(rule) {
949
- let stylesheet = document.querySelector('#tachui-animations');
950
- if (!stylesheet) {
951
- stylesheet = document.createElement('style');
952
- stylesheet.id = 'tachui-animations';
953
- document.head.appendChild(stylesheet);
954
- }
955
- stylesheet.appendChild(document.createTextNode(rule));
956
- }
957
- }
958
- /**
959
- * Lifecycle modifier for component lifecycle events
960
- */
961
- export class LifecycleModifier extends BaseModifier {
962
- type = 'lifecycle';
963
- priority = ModifierPriority.CUSTOM;
964
- activeAbortController;
965
- apply(_node, context) {
966
- if (!context.element)
967
- return;
968
- const props = this.properties;
969
- // Clean up any existing tasks on re-application
970
- if (this.activeAbortController) {
971
- this.activeAbortController.abort();
972
- }
973
- // Set up async task with cancellation
974
- if (props.task) {
975
- this.setupTask(context, props.task);
976
- }
977
- // Set up onAppear/onDisappear with IntersectionObserver
978
- if (props.onAppear || props.onDisappear) {
979
- this.setupViewportObserver(context, props);
980
- }
981
- return undefined;
982
- }
983
- setupTask(_context, task) {
984
- if (!task)
985
- return;
986
- // Create abort controller for task cancellation
987
- this.activeAbortController = new AbortController();
988
- const { signal } = this.activeAbortController;
989
- // Execute the task operation
990
- const executeTask = async () => {
991
- try {
992
- if (signal.aborted)
993
- return;
994
- const result = task.operation();
995
- // Handle both sync and async operations
996
- if (result instanceof Promise) {
997
- await result;
998
- }
999
- }
1000
- catch (error) {
1001
- if (signal.aborted)
1002
- return;
1003
- console.error('TachUI Task Error:', error);
1004
- }
1005
- };
1006
- // Start task execution
1007
- executeTask();
1008
- // Add cleanup to cancel task on component unmount
1009
- this.addCleanup(() => {
1010
- if (this.activeAbortController) {
1011
- this.activeAbortController.abort();
1012
- }
1013
- });
1014
- }
1015
- setupViewportObserver(context, props) {
1016
- if (!context.element)
1017
- return;
1018
- const observer = new IntersectionObserver(entries => {
1019
- entries.forEach(entry => {
1020
- if (entry.isIntersecting && props.onAppear) {
1021
- props.onAppear();
1022
- }
1023
- else if (!entry.isIntersecting && props.onDisappear) {
1024
- props.onDisappear();
1025
- }
1026
- });
1027
- });
1028
- observer.observe(context.element);
1029
- // Add cleanup to disconnect observer
1030
- this.addCleanup(() => {
1031
- observer.disconnect();
1032
- });
1033
- }
1034
- addCleanup(cleanup) {
1035
- // Store cleanup functions for proper disposal
1036
- if (!this.properties._cleanupFunctions) {
1037
- ;
1038
- this.properties._cleanupFunctions = [];
1039
- }
1040
- ;
1041
- this.properties._cleanupFunctions.push(cleanup);
1042
- }
1043
- }
1044
- /**
1045
- * Resizable modifier for making images resizable
1046
- * In SwiftUI, .resizable() allows images to be scaled to fit their container
1047
- */
1048
- export class ResizableModifier extends BaseModifier {
1049
- type = 'resizable';
1050
- priority = ModifierPriority.APPEARANCE;
1051
- apply(_node, context) {
1052
- if (!context.element)
1053
- return;
1054
- // For images, resizable means they can be scaled to fit their container
1055
- // This is typically achieved with object-fit: fill in CSS
1056
- if (context.element instanceof HTMLImageElement) {
1057
- context.element.style.objectFit = 'fill';
1058
- }
1059
- return undefined;
1060
- }
1061
- }
1062
- //# sourceMappingURL=base.js.map