@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,370 +0,0 @@
1
- import { EnhancedValidationError as g } from "./enhanced-runtime.js";
2
- var f = Object.defineProperty, h = (n, t, e) => t in n ? f(n, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[t] = e, c = (n, t, e) => h(n, typeof t != "symbol" ? t + "" : t, e);
3
- const p = {
4
- // Component Construction Errors
5
- COMPONENT_MISSING_REQUIRED_PARAM: {
6
- title: "Missing Required Parameter",
7
- description: "The {component} component requires a {parameter} parameter to function correctly.",
8
- impact: "Component will not render or may throw runtime errors.",
9
- quickFix: "Add the missing {parameter} parameter.",
10
- detailedSolution: "Check the component documentation for required parameters and their expected types.",
11
- prevention: "Use TypeScript for compile-time validation of required parameters.",
12
- emoji: "❌",
13
- color: "red"
14
- },
15
- COMPONENT_INVALID_PARAM_TYPE: {
16
- title: "Invalid Parameter Type",
17
- description: "The {component} component received {received} but expected {expected}.",
18
- impact: "May cause unexpected behavior or runtime errors.",
19
- quickFix: "Convert the value to the expected type: {expected}.",
20
- detailedSolution: "Ensure all parameters match the expected types. Use type guards or validation.",
21
- prevention: "Enable strict TypeScript checking and use proper type annotations.",
22
- emoji: "🔄",
23
- color: "yellow"
24
- },
25
- COMPONENT_NULL_UNDEFINED_PARAM: {
26
- title: "Null or Undefined Parameter",
27
- description: "The {component} component received null or undefined for {parameter}.",
28
- impact: "Component may not render correctly or throw errors.",
29
- quickFix: "Provide a valid value or use conditional rendering.",
30
- detailedSolution: "Check for null/undefined values before passing to components.",
31
- prevention: "Use optional chaining (?.) and nullish coalescing (??) operators.",
32
- emoji: "⚠️",
33
- color: "yellow"
34
- },
35
- // Modifier Usage Errors
36
- MODIFIER_NOT_EXISTS: {
37
- title: "Unknown Modifier",
38
- description: "The modifier .{modifier}() does not exist in the tachUI framework.",
39
- impact: "Build errors or silent failures in modifier chains.",
40
- quickFix: "Check the spelling or use a valid modifier name.",
41
- detailedSolution: "Refer to the modifier documentation for available options.",
42
- prevention: "Use IDE autocompletion and enable TypeScript strict mode.",
43
- emoji: "🔍",
44
- color: "red"
45
- },
46
- MODIFIER_INVALID_COMPONENT: {
47
- title: "Invalid Modifier Usage",
48
- description: "The modifier .{modifier}() is not valid for {component} components.",
49
- impact: "Modifier will be ignored or cause styling issues.",
50
- quickFix: "Use this modifier only on compatible components: {validComponents}.",
51
- detailedSolution: "Each modifier has specific component compatibility. Check documentation.",
52
- prevention: "Learn modifier-component compatibility rules.",
53
- emoji: "🚫",
54
- color: "yellow"
55
- },
56
- MODIFIER_WRONG_PARAMS: {
57
- title: "Incorrect Modifier Parameters",
58
- description: "The modifier .{modifier}() received incorrect parameters.",
59
- impact: "Modifier may not work as expected or throw errors.",
60
- quickFix: "Use the correct parameter format: {correctFormat}.",
61
- detailedSolution: "Check modifier documentation for parameter requirements.",
62
- prevention: "Use TypeScript for parameter validation.",
63
- emoji: "📝",
64
- color: "yellow"
65
- },
66
- // Prop Validation Errors
67
- PROP_MISSING_REQUIRED: {
68
- title: "Missing Required Property",
69
- description: "The {component} component is missing the required {property} property.",
70
- impact: "Component may not function correctly without this property.",
71
- quickFix: "Add the {property} property to the component props.",
72
- detailedSolution: "Required properties are essential for component functionality.",
73
- prevention: "Use TypeScript interfaces to enforce required properties.",
74
- emoji: "📋",
75
- color: "red"
76
- },
77
- PROP_INVALID_TYPE: {
78
- title: "Invalid Property Type",
79
- description: "Property {property} expected {expected} but received {received}.",
80
- impact: "May cause type errors or unexpected component behavior.",
81
- quickFix: "Convert the value to {expected} type.",
82
- detailedSolution: "Ensure all props match their expected types.",
83
- prevention: "Use proper TypeScript typing for props.",
84
- emoji: "🔧",
85
- color: "yellow"
86
- },
87
- // Lifecycle Errors
88
- LIFECYCLE_INVALID_STATE: {
89
- title: "Invalid Component State",
90
- description: "Component {component} is in an invalid state during {phase}.",
91
- impact: "May cause rendering issues or memory leaks.",
92
- quickFix: "Ensure proper component lifecycle management.",
93
- detailedSolution: "Review component mounting, updating, and unmounting logic.",
94
- prevention: "Follow React/component lifecycle best practices.",
95
- emoji: "🔄",
96
- color: "yellow"
97
- },
98
- // Performance Errors
99
- PERFORMANCE_EXPENSIVE_RENDER: {
100
- title: "Expensive Render Operation",
101
- description: "Component {component} is performing expensive operations during render.",
102
- impact: "May cause UI lag and poor user experience.",
103
- quickFix: "Move expensive operations to useEffect or useMemo.",
104
- detailedSolution: "Optimize component rendering by avoiding heavy computations.",
105
- prevention: "Use performance profiling tools and React DevTools.",
106
- emoji: "⚡",
107
- color: "blue"
108
- },
109
- // Best Practices
110
- BEST_PRACTICE_DEPRECATED: {
111
- title: "Deprecated Usage",
112
- description: "Using deprecated {feature} which will be removed in future versions.",
113
- impact: "Code may break in future framework updates.",
114
- quickFix: "Replace with the recommended alternative: {alternative}.",
115
- detailedSolution: "Check migration guide for updated patterns.",
116
- prevention: "Stay updated with framework changelog and migration guides.",
117
- emoji: "⚠️",
118
- color: "blue"
119
- }
120
- };
121
- class l {
122
- static generate(t, e, r) {
123
- const o = this.categories[t], i = e.substring(0, 3).toUpperCase(), a = r ? r.substring(0, 3).toUpperCase() : "001", u = Date.now().toString(36).substring(-3).toUpperCase();
124
- return `TACH-${o}-${i}-${a}-${u}`;
125
- }
126
- }
127
- c(l, "categories", {
128
- "component-construction": "CC",
129
- "modifier-usage": "MU",
130
- "prop-validation": "PV",
131
- lifecycle: "LC",
132
- performance: "PF",
133
- accessibility: "AC",
134
- "best-practices": "BP"
135
- });
136
- const d = class m {
137
- constructor() {
138
- c(this, "errorHistory", []), c(this, "maxHistorySize", 100);
139
- }
140
- static getInstance() {
141
- return this.instance || (this.instance = new m()), this.instance;
142
- }
143
- /**
144
- * Create enhanced validation error with rich context
145
- */
146
- createError(t, e) {
147
- const o = {
148
- component: "Unknown",
149
- category: "component-construction",
150
- severity: "error",
151
- errorCode: l.generate(
152
- e.category || "component-construction",
153
- e.component || "Unknown",
154
- e.property
155
- ),
156
- suggestion: "Please check the component documentation.",
157
- documentation: "https://docs.tachui.dev/",
158
- fixes: [],
159
- examples: { wrong: [], correct: [] },
160
- recoveryStrategy: "throw",
161
- ...e
162
- }, i = new g(t, o);
163
- return this.recordError(i), i;
164
- }
165
- /**
166
- * Format error message with rich context
167
- */
168
- formatError(t) {
169
- const e = t.context, r = this.getTemplate(e.errorCode || "UNKNOWN");
170
- let o = `${r.emoji} ${r.title}
171
- `;
172
- return o += `📍 Error Code: ${e.errorCode}
173
- `, o += `🏷️ Category: ${e.category} | Severity: ${e.severity}
174
-
175
- `, o += `📋 Description:
176
- ${this.substituteVariables(r.description, e)}
177
-
178
- `, o += `⚠️ Impact:
179
- ${r.impact}
180
-
181
- `, r.quickFix && (o += `🔧 Quick Fix:
182
- ${this.substituteVariables(r.quickFix, e)}
183
-
184
- `), e.examples.wrong.length > 0 && (o += `❌ Wrong:
185
- ${e.examples.wrong.map((i) => ` ${i}`).join(`
186
- `)}
187
-
188
- `), e.examples.correct.length > 0 && (o += `✅ Correct:
189
- ${e.examples.correct.map((i) => ` ${i}`).join(`
190
- `)}
191
-
192
- `), e.fixes.length > 0 && (o += `🔨 Available Fixes:
193
- `, e.fixes.forEach((i, a) => {
194
- o += ` ${a + 1}. ${i.description} (${i.difficulty})
195
- `, o += ` ${i.code}
196
- `;
197
- }), o += `
198
- `), o += `📚 Documentation: ${e.documentation}
199
- `, e.commonMistakes && e.commonMistakes.length > 0 && (o += `💡 Common Mistakes:
200
- ${e.commonMistakes.map((i) => ` • ${i}`).join(`
201
- `)}
202
- `), o += `🛡️ Recovery: ${this.getRecoveryDescription(e.recoveryStrategy)}
203
- `, o;
204
- }
205
- /**
206
- * Get error template by code or fallback to default
207
- */
208
- getTemplate(t) {
209
- const e = t.split("-");
210
- if (e.length >= 2) {
211
- const r = e[1], i = Object.keys(p).find((a) => r === "CC" ? a.startsWith("COMPONENT_") : r === "MU" ? a.startsWith("MODIFIER_") : r === "PV" ? a.startsWith("PROP_") : r === "LC" ? a.startsWith("LIFECYCLE_") : r === "PF" ? a.startsWith("PERFORMANCE_") : r === "BP" ? a.startsWith("BEST_PRACTICE_") : !1);
212
- if (i)
213
- return p[i];
214
- }
215
- return {
216
- title: "Validation Error",
217
- description: "A validation error occurred.",
218
- impact: "May affect component functionality.",
219
- emoji: "❌",
220
- color: "red"
221
- };
222
- }
223
- /**
224
- * Substitute variables in template strings
225
- */
226
- substituteVariables(t, e) {
227
- return t.replace(/\{component\}/g, e.component).replace(/\{package\}/g, e.package || "Core").replace(/\{property\}/g, e.property || "property").replace(/\{parameter\}/g, e.property || "parameter").replace(/\{modifier\}/g, e.property || "modifier");
228
- }
229
- /**
230
- * Get recovery strategy description
231
- */
232
- getRecoveryDescription(t) {
233
- switch (t) {
234
- case "ignore":
235
- return "Error will be ignored and execution continues";
236
- case "fallback":
237
- return "Fallback value will be used";
238
- case "fix":
239
- return "Automatic fix will be applied if available";
240
- case "throw":
241
- return "Error will be thrown and must be handled";
242
- default:
243
- return "No recovery strategy specified";
244
- }
245
- }
246
- /**
247
- * Record error in history for analytics
248
- */
249
- recordError(t) {
250
- this.errorHistory.push(t), this.errorHistory.length > this.maxHistorySize && this.errorHistory.shift();
251
- }
252
- /**
253
- * Get error statistics
254
- */
255
- getErrorStats() {
256
- const t = /* @__PURE__ */ new Map(), e = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
257
- return this.errorHistory.forEach((o) => {
258
- const i = o.context;
259
- t.set(i.category, (t.get(i.category) || 0) + 1), e.set(i.severity, (e.get(i.severity) || 0) + 1), r.set(i.component, (r.get(i.component) || 0) + 1);
260
- }), {
261
- totalErrors: this.errorHistory.length,
262
- categories: Object.fromEntries(t),
263
- severities: Object.fromEntries(e),
264
- components: Object.fromEntries(r),
265
- recentErrors: this.errorHistory.slice(-10).map((o) => ({
266
- code: o.context.errorCode,
267
- component: o.context.component,
268
- message: o.message,
269
- timestamp: Date.now()
270
- }))
271
- };
272
- }
273
- /**
274
- * Clear error history
275
- */
276
- clearHistory() {
277
- this.errorHistory = [];
278
- }
279
- /**
280
- * Export error report for debugging
281
- */
282
- exportErrorReport() {
283
- const t = this.getErrorStats(), e = {
284
- timestamp: (/* @__PURE__ */ new Date()).toISOString(),
285
- framework: "tachUI",
286
- version: "1.0.0",
287
- // Would be dynamic in real implementation
288
- stats: t,
289
- errors: this.errorHistory.map((r) => ({
290
- code: r.context.errorCode,
291
- message: r.message,
292
- context: r.context,
293
- stack: r.stack
294
- }))
295
- };
296
- return JSON.stringify(e, null, 2);
297
- }
298
- };
299
- c(d, "instance");
300
- let y = d;
301
- class E {
302
- /**
303
- * Generate fix suggestions for common component errors
304
- */
305
- static generateComponentFixSuggestions(t, e, r) {
306
- const o = [];
307
- return e.includes("requires") && e.includes("parameter") && o.push({
308
- description: `Add the missing parameter to ${t}`,
309
- code: this.generateParameterFix(t, r),
310
- difficulty: "easy",
311
- autoFix: () => this.generateParameterFix(t, r)
312
- }), e.includes("type") && e.includes("expected") && o.push({
313
- description: "Convert value to expected type",
314
- code: this.generateTypeFix(t, r),
315
- difficulty: "medium"
316
- }), (e.includes("null") || e.includes("undefined")) && o.push({
317
- description: "Add null check and default value",
318
- code: this.generateNullCheckFix(t, r),
319
- difficulty: "easy"
320
- }), o;
321
- }
322
- /**
323
- * Generate fix for missing parameters
324
- */
325
- static generateParameterFix(t, e) {
326
- return {
327
- Text: 'Text("Hello World")',
328
- Button: 'Button("Click me", () => {})',
329
- Image: 'Image({ source: "image.jpg" })',
330
- Toggle: "Toggle({ isOn: false })",
331
- VStack: "VStack({ children: [] })",
332
- HStack: "HStack({ children: [] })"
333
- }[t] || `${t}({ /* add required props */ })`;
334
- }
335
- /**
336
- * Generate fix for type mismatches
337
- */
338
- static generateTypeFix(t, e) {
339
- if (e.length > 0) {
340
- const r = e[0];
341
- if (typeof r == "number")
342
- return `${t}(String(${r})) // Convert number to string`;
343
- if (typeof r == "object")
344
- return `${t}(JSON.stringify(${JSON.stringify(r)})) // Serialize object`;
345
- }
346
- return `${t}(/* provide correct type */)`;
347
- }
348
- /**
349
- * Generate fix for null/undefined values
350
- */
351
- static generateNullCheckFix(t, e) {
352
- return `${t}(value || "default") // Provide fallback for null/undefined`;
353
- }
354
- }
355
- const s = y.getInstance(), C = {
356
- createError: (n, t) => s.createError(n, t),
357
- formatError: (n) => s.formatError(n),
358
- getStats: () => s.getErrorStats(),
359
- exportReport: () => s.exportErrorReport(),
360
- generateSuggestions: E.generateComponentFixSuggestions
361
- };
362
- export {
363
- y as EnhancedErrorReporter,
364
- l as ErrorCodeGenerator,
365
- C as ErrorReportingUtils,
366
- E as ErrorSuggestionEngine,
367
- p as ErrorTemplates,
368
- s as errorReporter
369
- };
370
- //# sourceMappingURL=error-reporting.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error-reporting.js","sources":["../../src/validation/error-reporting.ts"],"sourcesContent":["/**\n * Enhanced Error Reporting System - Phase 1C\n * \n * Rich error message templates, contextual suggestions, fix examples,\n * and comprehensive developer guidance for validation errors.\n */\n\nimport type { RecoveryStrategy } from './enhanced-runtime'\nimport { EnhancedValidationError } from './enhanced-runtime'\n\n/**\n * Error severity levels\n */\nexport type ValidationErrorSeverity = 'critical' | 'error' | 'warning' | 'info'\n\n/**\n * Error category for classification\n */\nexport type ValidationErrorCategory = \n | 'component-construction'\n | 'modifier-usage'\n | 'prop-validation'\n | 'lifecycle'\n | 'performance'\n | 'accessibility'\n | 'best-practices'\n\n/**\n * Fix suggestion with automated repair capability\n */\nexport interface FixSuggestion {\n description: string\n code: string\n autoFix?: () => string\n difficulty: 'easy' | 'medium' | 'hard'\n}\n\n/**\n * Enhanced error context with rich metadata\n */\nexport interface EnhancedErrorContext {\n component: string\n package?: string\n property?: string\n \n // Error classification\n category: ValidationErrorCategory\n severity: ValidationErrorSeverity\n errorCode: string\n \n // Developer guidance\n suggestion: string\n documentation: string\n fixes: FixSuggestion[]\n \n // Examples\n examples: {\n wrong: string[]\n correct: string[]\n }\n \n // Recovery options\n recoveryStrategy: RecoveryStrategy\n fallbackValue?: any\n autoFix?: () => any\n \n // Context information\n location?: {\n file?: string\n line?: number\n column?: number\n }\n \n // Related errors\n relatedErrors?: string[]\n commonMistakes?: string[]\n}\n\n/**\n * Error message template for consistent formatting\n */\nexport interface ErrorMessageTemplate {\n title: string\n description: string\n impact: string\n \n // Developer guidance sections\n quickFix?: string\n detailedSolution?: string\n prevention?: string\n \n // Visual formatting\n emoji: string\n color: 'red' | 'yellow' | 'blue' | 'gray'\n}\n\n/**\n * Comprehensive error templates database\n */\nexport const ErrorTemplates: Record<string, ErrorMessageTemplate> = {\n // Component Construction Errors\n 'COMPONENT_MISSING_REQUIRED_PARAM': {\n title: 'Missing Required Parameter',\n description: 'The {component} component requires a {parameter} parameter to function correctly.',\n impact: 'Component will not render or may throw runtime errors.',\n quickFix: 'Add the missing {parameter} parameter.',\n detailedSolution: 'Check the component documentation for required parameters and their expected types.',\n prevention: 'Use TypeScript for compile-time validation of required parameters.',\n emoji: '❌',\n color: 'red'\n },\n\n 'COMPONENT_INVALID_PARAM_TYPE': {\n title: 'Invalid Parameter Type',\n description: 'The {component} component received {received} but expected {expected}.',\n impact: 'May cause unexpected behavior or runtime errors.',\n quickFix: 'Convert the value to the expected type: {expected}.',\n detailedSolution: 'Ensure all parameters match the expected types. Use type guards or validation.',\n prevention: 'Enable strict TypeScript checking and use proper type annotations.',\n emoji: '🔄',\n color: 'yellow'\n },\n\n 'COMPONENT_NULL_UNDEFINED_PARAM': {\n title: 'Null or Undefined Parameter',\n description: 'The {component} component received null or undefined for {parameter}.',\n impact: 'Component may not render correctly or throw errors.',\n quickFix: 'Provide a valid value or use conditional rendering.',\n detailedSolution: 'Check for null/undefined values before passing to components.',\n prevention: 'Use optional chaining (?.) and nullish coalescing (??) operators.',\n emoji: '⚠️',\n color: 'yellow'\n },\n\n // Modifier Usage Errors\n 'MODIFIER_NOT_EXISTS': {\n title: 'Unknown Modifier',\n description: 'The modifier .{modifier}() does not exist in the tachUI framework.',\n impact: 'Build errors or silent failures in modifier chains.',\n quickFix: 'Check the spelling or use a valid modifier name.',\n detailedSolution: 'Refer to the modifier documentation for available options.',\n prevention: 'Use IDE autocompletion and enable TypeScript strict mode.',\n emoji: '🔍',\n color: 'red'\n },\n\n 'MODIFIER_INVALID_COMPONENT': {\n title: 'Invalid Modifier Usage',\n description: 'The modifier .{modifier}() is not valid for {component} components.',\n impact: 'Modifier will be ignored or cause styling issues.',\n quickFix: 'Use this modifier only on compatible components: {validComponents}.',\n detailedSolution: 'Each modifier has specific component compatibility. Check documentation.',\n prevention: 'Learn modifier-component compatibility rules.',\n emoji: '🚫',\n color: 'yellow'\n },\n\n 'MODIFIER_WRONG_PARAMS': {\n title: 'Incorrect Modifier Parameters',\n description: 'The modifier .{modifier}() received incorrect parameters.',\n impact: 'Modifier may not work as expected or throw errors.',\n quickFix: 'Use the correct parameter format: {correctFormat}.',\n detailedSolution: 'Check modifier documentation for parameter requirements.',\n prevention: 'Use TypeScript for parameter validation.',\n emoji: '📝',\n color: 'yellow'\n },\n\n // Prop Validation Errors\n 'PROP_MISSING_REQUIRED': {\n title: 'Missing Required Property',\n description: 'The {component} component is missing the required {property} property.',\n impact: 'Component may not function correctly without this property.',\n quickFix: 'Add the {property} property to the component props.',\n detailedSolution: 'Required properties are essential for component functionality.',\n prevention: 'Use TypeScript interfaces to enforce required properties.',\n emoji: '📋',\n color: 'red'\n },\n\n 'PROP_INVALID_TYPE': {\n title: 'Invalid Property Type',\n description: 'Property {property} expected {expected} but received {received}.',\n impact: 'May cause type errors or unexpected component behavior.',\n quickFix: 'Convert the value to {expected} type.',\n detailedSolution: 'Ensure all props match their expected types.',\n prevention: 'Use proper TypeScript typing for props.',\n emoji: '🔧',\n color: 'yellow'\n },\n\n // Lifecycle Errors\n 'LIFECYCLE_INVALID_STATE': {\n title: 'Invalid Component State',\n description: 'Component {component} is in an invalid state during {phase}.',\n impact: 'May cause rendering issues or memory leaks.',\n quickFix: 'Ensure proper component lifecycle management.',\n detailedSolution: 'Review component mounting, updating, and unmounting logic.',\n prevention: 'Follow React/component lifecycle best practices.',\n emoji: '🔄',\n color: 'yellow'\n },\n\n // Performance Errors\n 'PERFORMANCE_EXPENSIVE_RENDER': {\n title: 'Expensive Render Operation',\n description: 'Component {component} is performing expensive operations during render.',\n impact: 'May cause UI lag and poor user experience.',\n quickFix: 'Move expensive operations to useEffect or useMemo.',\n detailedSolution: 'Optimize component rendering by avoiding heavy computations.',\n prevention: 'Use performance profiling tools and React DevTools.',\n emoji: '⚡',\n color: 'blue'\n },\n\n // Best Practices\n 'BEST_PRACTICE_DEPRECATED': {\n title: 'Deprecated Usage',\n description: 'Using deprecated {feature} which will be removed in future versions.',\n impact: 'Code may break in future framework updates.',\n quickFix: 'Replace with the recommended alternative: {alternative}.',\n detailedSolution: 'Check migration guide for updated patterns.',\n prevention: 'Stay updated with framework changelog and migration guides.',\n emoji: '⚠️',\n color: 'blue'\n }\n}\n\n/**\n * Error code generator for consistent error identification\n */\nexport class ErrorCodeGenerator {\n private static categories = {\n 'component-construction': 'CC',\n 'modifier-usage': 'MU',\n 'prop-validation': 'PV',\n 'lifecycle': 'LC',\n 'performance': 'PF',\n 'accessibility': 'AC',\n 'best-practices': 'BP'\n }\n\n static generate(category: ValidationErrorCategory, component: string, specific?: string): string {\n const categoryCode = this.categories[category]\n const componentCode = component.substring(0, 3).toUpperCase()\n const specificCode = specific ? specific.substring(0, 3).toUpperCase() : '001'\n const timestamp = Date.now().toString(36).substring(-3).toUpperCase()\n \n return `TACH-${categoryCode}-${componentCode}-${specificCode}-${timestamp}`\n }\n}\n\n/**\n * Enhanced error reporter with rich formatting\n */\nexport class EnhancedErrorReporter {\n private static instance: EnhancedErrorReporter\n private errorHistory: EnhancedValidationError[] = []\n private maxHistorySize = 100\n\n static getInstance(): EnhancedErrorReporter {\n if (!this.instance) {\n this.instance = new EnhancedErrorReporter()\n }\n return this.instance\n }\n\n /**\n * Create enhanced validation error with rich context\n */\n createError(\n message: string,\n context: Partial<EnhancedErrorContext>\n ): EnhancedValidationError {\n const errorCode = ErrorCodeGenerator.generate(\n context.category || 'component-construction',\n context.component || 'Unknown',\n context.property\n )\n\n const enhancedContext: EnhancedErrorContext = {\n component: 'Unknown',\n category: 'component-construction',\n severity: 'error',\n errorCode,\n suggestion: 'Please check the component documentation.',\n documentation: 'https://docs.tachui.dev/',\n fixes: [],\n examples: { wrong: [], correct: [] },\n recoveryStrategy: 'throw',\n ...context\n }\n\n const error = new EnhancedValidationError(message, enhancedContext)\n this.recordError(error)\n return error\n }\n\n /**\n * Format error message with rich context\n */\n formatError(error: EnhancedValidationError): string {\n const context = error.context as any as EnhancedErrorContext\n const template = this.getTemplate(context.errorCode || 'UNKNOWN')\n \n let formatted = `${template.emoji} ${template.title}\\n`\n formatted += `📍 Error Code: ${context.errorCode}\\n`\n formatted += `🏷️ Category: ${context.category} | Severity: ${context.severity}\\n\\n`\n \n // Description with context substitution\n formatted += `📋 Description:\\n${this.substituteVariables(template.description, context)}\\n\\n`\n \n // Impact\n formatted += `⚠️ Impact:\\n${template.impact}\\n\\n`\n \n // Quick fix\n if (template.quickFix) {\n formatted += `🔧 Quick Fix:\\n${this.substituteVariables(template.quickFix, context)}\\n\\n`\n }\n \n // Examples\n if (context.examples.wrong.length > 0) {\n formatted += `❌ Wrong:\\n${context.examples.wrong.map(ex => ` ${ex}`).join('\\n')}\\n\\n`\n }\n \n if (context.examples.correct.length > 0) {\n formatted += `✅ Correct:\\n${context.examples.correct.map(ex => ` ${ex}`).join('\\n')}\\n\\n`\n }\n \n // Fix suggestions\n if (context.fixes.length > 0) {\n formatted += `🔨 Available Fixes:\\n`\n context.fixes.forEach((fix, index) => {\n formatted += ` ${index + 1}. ${fix.description} (${fix.difficulty})\\n`\n formatted += ` ${fix.code}\\n`\n })\n formatted += '\\n'\n }\n \n // Documentation\n formatted += `📚 Documentation: ${context.documentation}\\n`\n \n // Related information\n if (context.commonMistakes && context.commonMistakes.length > 0) {\n formatted += `💡 Common Mistakes:\\n${context.commonMistakes.map(m => ` • ${m}`).join('\\n')}\\n`\n }\n \n // Recovery information\n formatted += `🛡️ Recovery: ${this.getRecoveryDescription(context.recoveryStrategy)}\\n`\n \n return formatted\n }\n\n /**\n * Get error template by code or fallback to default\n */\n private getTemplate(errorCode: string): ErrorMessageTemplate {\n // Extract template key from error code\n const parts = errorCode.split('-')\n if (parts.length >= 2) {\n const category = parts[1]\n const templateKeys = Object.keys(ErrorTemplates)\n const matchingTemplate = templateKeys.find(key => {\n if (category === 'CC') return key.startsWith('COMPONENT_')\n if (category === 'MU') return key.startsWith('MODIFIER_')\n if (category === 'PV') return key.startsWith('PROP_')\n if (category === 'LC') return key.startsWith('LIFECYCLE_')\n if (category === 'PF') return key.startsWith('PERFORMANCE_')\n if (category === 'BP') return key.startsWith('BEST_PRACTICE_')\n return false\n })\n \n if (matchingTemplate) {\n return ErrorTemplates[matchingTemplate]\n }\n }\n \n // Fallback to generic template\n return {\n title: 'Validation Error',\n description: 'A validation error occurred.',\n impact: 'May affect component functionality.',\n emoji: '❌',\n color: 'red'\n }\n }\n\n /**\n * Substitute variables in template strings\n */\n private substituteVariables(template: string, context: EnhancedErrorContext): string {\n return template\n .replace(/\\{component\\}/g, context.component)\n .replace(/\\{package\\}/g, context.package || 'Core')\n .replace(/\\{property\\}/g, context.property || 'property')\n .replace(/\\{parameter\\}/g, context.property || 'parameter')\n .replace(/\\{modifier\\}/g, context.property || 'modifier')\n }\n\n /**\n * Get recovery strategy description\n */\n private getRecoveryDescription(strategy: RecoveryStrategy): string {\n switch (strategy) {\n case 'ignore': return 'Error will be ignored and execution continues'\n case 'fallback': return 'Fallback value will be used'\n case 'fix': return 'Automatic fix will be applied if available'\n case 'throw': return 'Error will be thrown and must be handled'\n default: return 'No recovery strategy specified'\n }\n }\n\n /**\n * Record error in history for analytics\n */\n private recordError(error: EnhancedValidationError): void {\n this.errorHistory.push(error)\n \n // Maintain history size limit\n if (this.errorHistory.length > this.maxHistorySize) {\n this.errorHistory.shift()\n }\n }\n\n /**\n * Get error statistics\n */\n getErrorStats() {\n const categoryCounts = new Map<ValidationErrorCategory, number>()\n const severityCounts = new Map<ValidationErrorSeverity, number>()\n const componentCounts = new Map<string, number>()\n \n this.errorHistory.forEach(error => {\n const context = error.context as EnhancedErrorContext\n \n categoryCounts.set(context.category, (categoryCounts.get(context.category) || 0) + 1)\n severityCounts.set(context.severity, (severityCounts.get(context.severity) || 0) + 1)\n componentCounts.set(context.component, (componentCounts.get(context.component) || 0) + 1)\n })\n \n return {\n totalErrors: this.errorHistory.length,\n categories: Object.fromEntries(categoryCounts),\n severities: Object.fromEntries(severityCounts),\n components: Object.fromEntries(componentCounts),\n recentErrors: this.errorHistory.slice(-10).map(e => ({\n code: (e.context as EnhancedErrorContext).errorCode,\n component: e.context.component,\n message: e.message,\n timestamp: Date.now()\n }))\n }\n }\n\n /**\n * Clear error history\n */\n clearHistory(): void {\n this.errorHistory = []\n }\n\n /**\n * Export error report for debugging\n */\n exportErrorReport(): string {\n const stats = this.getErrorStats()\n const report = {\n timestamp: new Date().toISOString(),\n framework: 'tachUI',\n version: '1.0.0', // Would be dynamic in real implementation\n stats,\n errors: this.errorHistory.map(error => ({\n code: (error.context as EnhancedErrorContext).errorCode,\n message: error.message,\n context: error.context,\n stack: error.stack\n }))\n }\n \n return JSON.stringify(report, null, 2)\n }\n}\n\n/**\n * Error suggestion engine for intelligent fixes\n */\nexport class ErrorSuggestionEngine {\n /**\n * Generate fix suggestions for common component errors\n */\n static generateComponentFixSuggestions(\n component: string,\n error: string,\n _args: unknown[]\n ): FixSuggestion[] {\n const suggestions: FixSuggestion[] = []\n \n // Missing parameter fixes\n if (error.includes('requires') && error.includes('parameter')) {\n suggestions.push({\n description: `Add the missing parameter to ${component}`,\n code: this.generateParameterFix(component, _args),\n difficulty: 'easy',\n autoFix: () => this.generateParameterFix(component, _args)\n })\n }\n \n // Type mismatch fixes\n if (error.includes('type') && error.includes('expected')) {\n suggestions.push({\n description: 'Convert value to expected type',\n code: this.generateTypeFix(component, _args),\n difficulty: 'medium'\n })\n }\n \n // Null/undefined fixes\n if (error.includes('null') || error.includes('undefined')) {\n suggestions.push({\n description: 'Add null check and default value',\n code: this.generateNullCheckFix(component, _args),\n difficulty: 'easy'\n })\n }\n \n return suggestions\n }\n\n /**\n * Generate fix for missing parameters\n */\n private static generateParameterFix(component: string, _args: unknown[]): string {\n const componentDefaults: Record<string, string> = {\n 'Text': 'Text(\"Hello World\")',\n 'Button': 'Button(\"Click me\", () => {})',\n 'Image': 'Image({ source: \"image.jpg\" })',\n 'Toggle': 'Toggle({ isOn: false })',\n 'VStack': 'VStack({ children: [] })',\n 'HStack': 'HStack({ children: [] })'\n }\n \n return componentDefaults[component] || `${component}({ /* add required props */ })`\n }\n\n /**\n * Generate fix for type mismatches\n */\n private static generateTypeFix(component: string, args: unknown[]): string {\n if (args.length > 0) {\n const firstArg = args[0]\n if (typeof firstArg === 'number') {\n return `${component}(String(${firstArg})) // Convert number to string`\n }\n if (typeof firstArg === 'object') {\n return `${component}(JSON.stringify(${JSON.stringify(firstArg)})) // Serialize object`\n }\n }\n return `${component}(/* provide correct type */)`\n }\n\n /**\n * Generate fix for null/undefined values\n */\n private static generateNullCheckFix(component: string, _args: unknown[]): string {\n return `${component}(value || \"default\") // Provide fallback for null/undefined`\n }\n}\n\n// Export singleton instance\nexport const errorReporter = EnhancedErrorReporter.getInstance()\n\n// Export utilities\nexport const ErrorReportingUtils = {\n createError: (message: string, context: Partial<EnhancedErrorContext>) => \n errorReporter.createError(message, context),\n \n formatError: (error: EnhancedValidationError) => \n errorReporter.formatError(error),\n \n getStats: () => \n errorReporter.getErrorStats(),\n \n exportReport: () => \n errorReporter.exportErrorReport(),\n \n generateSuggestions: ErrorSuggestionEngine.generateComponentFixSuggestions\n}"],"names":["ErrorTemplates","ErrorCodeGenerator","category","component","specific","categoryCode","componentCode","specificCode","timestamp","__publicField","_EnhancedErrorReporter","message","context","enhancedContext","error","EnhancedValidationError","template","formatted","ex","fix","index","m","errorCode","parts","matchingTemplate","key","strategy","categoryCounts","severityCounts","componentCounts","e","stats","report","EnhancedErrorReporter","ErrorSuggestionEngine","_args","suggestions","args","firstArg","errorReporter","ErrorReportingUtils"],"mappings":"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"}
@@ -1,85 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("./developer-experience.cjs");var x=Object.defineProperty,D=(i,t,e)=>t in i?x(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e,u=(i,t,e)=>D(i,typeof t!="symbol"?t+"":t,e);let d={enableLanguageServer:!0,serverPort:3579,enableRealTimeDiagnostics:!0,diagnosticDelay:500,maxDiagnostics:100,enableHoverInfo:!0,enableAutoComplete:!0,enableSignatureHelp:!0,enableQuickFixes:!0,enableCodeActions:!0,enableRefactoring:!0,enableStatusBar:!0,enableOutputChannel:!0,enableWebview:!1};class g{constructor(){u(this,"diagnostics",new Map),u(this,"listeners",new Set)}async validateDocument(t,e){if(!d.enableRealTimeDiagnostics)return[];const n=[],o=e.split(`
2
- `);for(let s=0;s<o.length;s++){const a=o[s],l=this.detectCommonErrors(a,s);n.push(...l)}const r=n.slice(0,d.maxDiagnostics);return this.diagnostics.set(t,r),this.notifyListeners(t,r),r}detectCommonErrors(t,e){const n=[];if(t.includes("Text()")&&!t.includes("//")&&n.push({range:{start:{line:e,character:t.indexOf("Text()")},end:{line:e,character:t.indexOf("Text()")+6}},severity:1,code:"missing-required-prop",source:"tachui",message:"Text component requires a content parameter",data:{template:"missing-required-prop",component:"Text",suggestions:["add-required-prop"]}}),t.includes("Button(")&&!t.includes(",")&&!t.includes("//")){const o=t.match(/Button\s*\(\s*"[^"]*"\s*\)/);o&&n.push({range:{start:{line:e,character:t.indexOf(o[0])},end:{line:e,character:t.indexOf(o[0])+o[0].length}},severity:2,code:"missing-button-action",source:"tachui",message:"Button should have an action handler for better user experience",data:{template:"missing-required-prop",component:"Button",suggestions:["add-button-action"]}})}return t.includes("VStack(")&&t.includes(".fontSize(")&&n.push({range:{start:{line:e,character:t.indexOf(".fontSize(")},end:{line:e,character:t.indexOf(".fontSize(")+10}},severity:1,code:"invalid-modifier-usage",source:"tachui",message:"fontSize modifier is not compatible with VStack component",data:{template:"invalid-modifier-usage",component:"VStack",modifier:"fontSize",suggestions:["remove-incompatible-modifier"]}}),n}getDiagnostics(t){return this.diagnostics.get(t)||[]}clearDiagnostics(t){this.diagnostics.delete(t),this.notifyListeners(t,[])}onDiagnosticsChanged(t){this.listeners.add(t)}notifyListeners(t,e){this.listeners.forEach(n=>n(t,e))}}class m{getCodeActions(t,e,n){const o=[];if(!d.enableCodeActions)return o;const r=b.DeveloperExperienceUtils.getSuggestions(t.code,t.data);for(const s of r)s.canAutoFix&&o.push({title:`Fix: ${s.title}`,kind:"quickfix",diagnostics:[t],edit:{changes:{[e]:[{range:t.range,newText:s.after}]}}});return t.data?.template&&o.push({title:"Learn more about this error",kind:"refactor",command:{title:"Open Documentation",command:"tachui.openDocumentation",arguments:[t.data.template]}}),o}}class p{getHover(t,e,n,o){if(!d.enableHoverInfo)return null;const s=e.split(`
3
- `)[n],a=this.detectComponentAtPosition(s,o);if(a)return this.createComponentHover(a);const l=this.detectModifierAtPosition(s,o);return l?this.createModifierHover(l):null}detectComponentAtPosition(t,e){const n=["Text","Button","VStack","HStack","ZStack","Image","List","Toggle"];for(const o of n){const r=t.indexOf(o);if(r!==-1&&e>=r&&e<=r+o.length)return{name:o,range:{start:r,end:r+o.length}}}return null}detectModifierAtPosition(t,e){const n=["padding","margin","background","foregroundColor","fontSize","frame","clipped"];for(const o of n){const r=new RegExp(`\\.(${o})\\s*\\(`,"g");let s;for(;(s=r.exec(t))!==null;){const a=s.index+1,l=a+o.length;if(e>=a&&e<=l)return{name:o,range:{start:a,end:l}}}}return null}createComponentHover(t){return{contents:{kind:"markdown",value:this.getComponentDocumentation(t.name)},range:{start:{line:0,character:t.range.start},end:{line:0,character:t.range.end}}}}createModifierHover(t){return{contents:{kind:"markdown",value:this.getModifierDocumentation(t.name)},range:{start:{line:0,character:t.range.start},end:{line:0,character:t.range.end}}}}getComponentDocumentation(t){return{Text:`
4
- # Text Component
5
- Display text content with optional reactive updates.
6
-
7
- ## Usage
8
- \`\`\`typescript
9
- Text("Hello World")
10
- Text(() => dynamicContent.value)
11
- \`\`\`
12
-
13
- ## Properties
14
- - **content** (required): string | Signal<string> | Function
15
-
16
- ## Supported Modifiers
17
- - fontSize, fontWeight, foregroundColor, textAlign
18
- - padding, margin, background, border
19
- - frame, position, opacity, clipped
20
-
21
- [📚 Full Documentation](/docs/components/text)
22
- `,Button:`
23
- # Button Component
24
- Interactive button with customizable appearance and actions.
25
-
26
- ## Usage
27
- \`\`\`typescript
28
- Button("Click me", handleClick)
29
- Button("Submit").background("blue")
30
- \`\`\`
31
-
32
- ## Properties
33
- - **title** (required): string
34
- - **action** (optional): Function
35
-
36
- ## Supported Modifiers
37
- - foregroundColor, background, padding, margin
38
- - border, shadow, opacity, disabled
39
- - frame, position, cursor
40
-
41
- [📚 Full Documentation](/docs/components/button)
42
- `}[t]||`# ${t} Component
43
-
44
- TachUI component for building user interfaces.
45
-
46
- [📚 Documentation](/docs/components/${t.toLowerCase()})`}getModifierDocumentation(t){return{padding:`
47
- # .padding() Modifier
48
- Add internal spacing to a component.
49
-
50
- ## Usage
51
- \`\`\`typescript
52
- .padding(16) // All sides
53
- .padding("1rem") // CSS units
54
- .padding({ top: 8, horizontal: 12 }) // Individual sides
55
- \`\`\`
56
-
57
- ## Compatible Components
58
- All components support padding modifier.
59
-
60
- [📚 Full Documentation](/docs/modifiers/padding)
61
- `,fontSize:`
62
- # .fontSize() Modifier
63
- Set the font size for text content.
64
-
65
- ## Usage
66
- \`\`\`typescript
67
- .fontSize(16) // Pixels
68
- .fontSize("1.2rem") // CSS units
69
- \`\`\`
70
-
71
- ## Compatible Components
72
- - Text, Button (text components only)
73
-
74
- [📚 Full Documentation](/docs/modifiers/fontSize)
75
- `}[t]||`# .${t}() Modifier
76
-
77
- TachUI modifier for styling components.
78
-
79
- [📚 Documentation](/docs/modifiers/${t})`}}class f{getCompletions(t,e,n,o){if(!d.enableAutoComplete)return[];const a=e.split(`
80
- `)[n].substring(0,o);return this.isComponentContext(a)?this.getComponentCompletions():this.isModifierContext(a)?this.getModifierCompletions(a):[]}isComponentContext(t){return/\s*$/.test(t)||/^\s*[A-Z]/.test(t)}isModifierContext(t){return t.includes(".")&&!t.endsWith(".")}getComponentCompletions(){return[{label:"Text",kind:3,detail:"Text Component",documentation:{kind:"markdown",value:"Display text content with optional reactive updates."},insertText:'Text("$1")',insertTextFormat:2},{label:"Button",kind:3,detail:"Button Component",documentation:{kind:"markdown",value:"Interactive button with customizable appearance and actions."},insertText:'Button("$1", $2)',insertTextFormat:2},{label:"VStack",kind:3,detail:"VStack Component",documentation:{kind:"markdown",value:"Vertical stack layout container."},insertText:"VStack({ children: [$1] })",insertTextFormat:2}]}getModifierCompletions(t){const e=t.match(/([A-Z][a-zA-Z]*)\s*\(/),n=e?e[1]:null;return[{label:"padding",kind:2,detail:"Add internal spacing",insertText:"padding($1)",insertTextFormat:2,compatible:["*"]},{label:"fontSize",kind:2,detail:"Set font size",insertText:"fontSize($1)",insertTextFormat:2,compatible:["Text","Button"]},{label:"background",kind:2,detail:"Set background color",insertText:'background("$1")',insertTextFormat:2,compatible:["*"]}].filter(r=>r.compatible.includes("*")||n&&r.compatible.includes(n)).map(r=>({label:r.label,kind:r.kind,detail:r.detail,insertText:r.insertText,insertTextFormat:r.insertTextFormat}))}}class h{constructor(){u(this,"diagnosticsProvider",new g),u(this,"codeActionsProvider",new m),u(this,"hoverProvider",new p),u(this,"completionProvider",new f)}initialize(){typeof globalThis<"u"&&(globalThis.__TACHUI_IDE_INTEGRATION__={diagnostics:this.diagnosticsProvider,codeActions:this.codeActionsProvider,hover:this.hoverProvider,completion:this.completionProvider,config:d})}async validateDocument(t,e){return this.diagnosticsProvider.validateDocument(t,e)}getCodeActions(t,e,n){return this.codeActionsProvider.getCodeActions(t,e,n)}getHover(t,e,n,o){return this.hoverProvider.getHover(t,e,n,o)}getCompletions(t,e,n,o){return this.completionProvider.getCompletions(t,e,n,o)}}function v(i){d={...d,...i}}function C(){return{...d}}const c=new h,S={initialize:()=>c.initialize(),validateDocument:(i,t)=>c.validateDocument(i,t),getCodeActions:(i,t,e)=>c.getCodeActions(i,t,e),getHover:(i,t,e,n)=>c.getHover(i,t,e,n),getCompletions:(i,t,e,n)=>c.getCompletions(i,t,e,n),configure:v,getConfig:C,test:async()=>{console.group("🎯 IDE Integration System Test");try{const i=`
81
- Text()
82
- Button("Click me")
83
- VStack({ children: [] }).fontSize(16)
84
- `,t=await c.validateDocument("test.ts",i);console.info("✅ Diagnostics found:",t.length);const e=c.getHover("test.ts",'Text("hello")',0,2);console.info("✅ Hover info available:",!!e);const n=c.getCompletions("test.ts","T",0,1);if(console.info("✅ Completions available:",n.length),t.length>0){const o=c.getCodeActions(t[0],"test.ts",i);console.info("✅ Code actions available:",o.length)}console.info("✅ IDE integration system is working correctly")}catch(i){console.error("❌ IDE integration test failed:",i)}console.groupEnd()}};c.initialize();exports.CodeActionsProvider=m;exports.CompletionProvider=f;exports.HoverProvider=p;exports.IDEIntegrationUtils=S;exports.VSCodeIntegration=h;exports.ValidationDiagnosticsProvider=g;exports.configureIDEIntegration=v;exports.getIDEIntegrationConfig=C;exports.vsCodeIntegration=c;
85
- //# sourceMappingURL=ide-integration.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ide-integration.cjs","sources":["../../src/validation/ide-integration.ts"],"sourcesContent":["/**\n * IDE Integration Foundation - Phase 1D\n * \n * VS Code extension foundation, language server protocol implementation,\n * and real-time validation feedback system.\n */\n\nimport { DeveloperExperienceUtils } from './developer-experience'\n\n/**\n * Language Server Protocol message types\n */\nexport interface LSPDiagnostic {\n range: {\n start: { line: number; character: number }\n end: { line: number; character: number }\n }\n severity: 1 | 2 | 3 | 4 // Error, Warning, Information, Hint\n code?: string | number\n source: string\n message: string\n relatedInformation?: {\n location: {\n uri: string\n range: {\n start: { line: number; character: number }\n end: { line: number; character: number }\n }\n }\n message: string\n }[]\n data?: any\n}\n\n/**\n * Code Action for IDE quick fixes\n */\nexport interface LSPCodeAction {\n title: string\n kind: string\n diagnostics?: LSPDiagnostic[]\n edit?: {\n changes?: Record<string, {\n range: {\n start: { line: number; character: number }\n end: { line: number; character: number }\n }\n newText: string\n }[]>\n }\n command?: {\n title: string\n command: string\n arguments?: any[]\n }\n}\n\n/**\n * Hover information for IntelliSense\n */\nexport interface LSPHover {\n contents: {\n kind: 'markdown' | 'plaintext'\n value: string\n }\n range?: {\n start: { line: number; character: number }\n end: { line: number; character: number }\n }\n}\n\n/**\n * Completion item for autocomplete\n */\nexport interface LSPCompletionItem {\n label: string\n kind: number // CompletionItemKind\n detail?: string\n documentation?: {\n kind: 'markdown' | 'plaintext'\n value: string\n }\n insertText?: string\n insertTextFormat?: 1 | 2 // PlainText, Snippet\n textEdit?: {\n range: {\n start: { line: number; character: number }\n end: { line: number; character: number }\n }\n newText: string\n }\n additionalTextEdits?: {\n range: {\n start: { line: number; character: number }\n end: { line: number; character: number }\n }\n newText: string\n }[]\n command?: {\n title: string\n command: string\n arguments?: any[]\n }\n}\n\n/**\n * IDE Integration configuration\n */\nexport interface IDEIntegrationConfig {\n // Language server\n enableLanguageServer: boolean\n serverPort: number\n \n // Diagnostics\n enableRealTimeDiagnostics: boolean\n diagnosticDelay: number\n maxDiagnostics: number\n \n // IntelliSense\n enableHoverInfo: boolean\n enableAutoComplete: boolean\n enableSignatureHelp: boolean\n \n // Quick fixes\n enableQuickFixes: boolean\n enableCodeActions: boolean\n enableRefactoring: boolean\n \n // VS Code specific\n enableStatusBar: boolean\n enableOutputChannel: boolean\n enableWebview: boolean\n}\n\n/**\n * Global IDE integration configuration\n */\nlet ideConfig: IDEIntegrationConfig = {\n enableLanguageServer: true,\n serverPort: 3579,\n enableRealTimeDiagnostics: true,\n diagnosticDelay: 500,\n maxDiagnostics: 100,\n enableHoverInfo: true,\n enableAutoComplete: true,\n enableSignatureHelp: true,\n enableQuickFixes: true,\n enableCodeActions: true,\n enableRefactoring: true,\n enableStatusBar: true,\n enableOutputChannel: true,\n enableWebview: false\n}\n\n/**\n * Real-time validation diagnostics provider\n */\nexport class ValidationDiagnosticsProvider {\n private diagnostics = new Map<string, LSPDiagnostic[]>()\n private listeners = new Set<(uri: string, diagnostics: LSPDiagnostic[]) => void>()\n\n /**\n * Validate document and return diagnostics\n */\n async validateDocument(uri: string, text: string): Promise<LSPDiagnostic[]> {\n if (!ideConfig.enableRealTimeDiagnostics) {\n return []\n }\n\n const diagnostics: LSPDiagnostic[] = []\n const lines = text.split('\\n')\n\n // Simple pattern-based validation for demo\n // In a real implementation, this would use the full validation system\n for (let lineIndex = 0; lineIndex < lines.length; lineIndex++) {\n const line = lines[lineIndex]\n \n // Check for common TachUI patterns\n const commonErrors = this.detectCommonErrors(line, lineIndex)\n diagnostics.push(...commonErrors)\n }\n\n // Limit diagnostics count\n const limitedDiagnostics = diagnostics.slice(0, ideConfig.maxDiagnostics)\n \n // Cache diagnostics\n this.diagnostics.set(uri, limitedDiagnostics)\n \n // Notify listeners\n this.notifyListeners(uri, limitedDiagnostics)\n \n return limitedDiagnostics\n }\n\n /**\n * Detect common TachUI errors in a line of code\n */\n private detectCommonErrors(line: string, lineIndex: number): LSPDiagnostic[] {\n const diagnostics: LSPDiagnostic[] = []\n \n // Missing required parameters\n if (line.includes('Text()') && !line.includes('//')) {\n diagnostics.push({\n range: {\n start: { line: lineIndex, character: line.indexOf('Text()') },\n end: { line: lineIndex, character: line.indexOf('Text()') + 6 }\n },\n severity: 1, // Error\n code: 'missing-required-prop',\n source: 'tachui',\n message: 'Text component requires a content parameter',\n data: {\n template: 'missing-required-prop',\n component: 'Text',\n suggestions: ['add-required-prop']\n }\n })\n }\n\n // Button without action\n if (line.includes('Button(') && !line.includes(',') && !line.includes('//')) {\n const match = line.match(/Button\\s*\\(\\s*\"[^\"]*\"\\s*\\)/)\n if (match) {\n diagnostics.push({\n range: {\n start: { line: lineIndex, character: line.indexOf(match[0]) },\n end: { line: lineIndex, character: line.indexOf(match[0]) + match[0].length }\n },\n severity: 2, // Warning\n code: 'missing-button-action',\n source: 'tachui',\n message: 'Button should have an action handler for better user experience',\n data: {\n template: 'missing-required-prop',\n component: 'Button',\n suggestions: ['add-button-action']\n }\n })\n }\n }\n\n // Invalid modifier usage\n if (line.includes('VStack(') && line.includes('.fontSize(')) {\n diagnostics.push({\n range: {\n start: { line: lineIndex, character: line.indexOf('.fontSize(') },\n end: { line: lineIndex, character: line.indexOf('.fontSize(') + 10 }\n },\n severity: 1, // Error\n code: 'invalid-modifier-usage',\n source: 'tachui',\n message: 'fontSize modifier is not compatible with VStack component',\n data: {\n template: 'invalid-modifier-usage',\n component: 'VStack',\n modifier: 'fontSize',\n suggestions: ['remove-incompatible-modifier']\n }\n })\n }\n\n return diagnostics\n }\n\n /**\n * Get diagnostics for a document\n */\n getDiagnostics(uri: string): LSPDiagnostic[] {\n return this.diagnostics.get(uri) || []\n }\n\n /**\n * Clear diagnostics for a document\n */\n clearDiagnostics(uri: string): void {\n this.diagnostics.delete(uri)\n this.notifyListeners(uri, [])\n }\n\n /**\n * Add diagnostic listener\n */\n onDiagnosticsChanged(listener: (uri: string, diagnostics: LSPDiagnostic[]) => void): void {\n this.listeners.add(listener)\n }\n\n /**\n * Notify all listeners of diagnostic changes\n */\n private notifyListeners(uri: string, diagnostics: LSPDiagnostic[]): void {\n this.listeners.forEach(listener => listener(uri, diagnostics))\n }\n}\n\n/**\n * Code actions provider for quick fixes\n */\nexport class CodeActionsProvider {\n /**\n * Get code actions for a diagnostic\n */\n getCodeActions(diagnostic: LSPDiagnostic, uri: string, _text: string): LSPCodeAction[] {\n const actions: LSPCodeAction[] = []\n\n if (!ideConfig.enableCodeActions) {\n return actions\n }\n\n // Get suggestions from developer experience system\n const suggestions = DeveloperExperienceUtils.getSuggestions(\n diagnostic.code as string,\n diagnostic.data\n )\n\n // Convert suggestions to code actions\n for (const suggestion of suggestions) {\n if (suggestion.canAutoFix) {\n actions.push({\n title: `Fix: ${suggestion.title}`,\n kind: 'quickfix',\n diagnostics: [diagnostic],\n edit: {\n changes: {\n [uri]: [{\n range: diagnostic.range,\n newText: suggestion.after\n }]\n }\n }\n })\n }\n }\n\n // Add learn more action\n if (diagnostic.data?.template) {\n actions.push({\n title: 'Learn more about this error',\n kind: 'refactor',\n command: {\n title: 'Open Documentation',\n command: 'tachui.openDocumentation',\n arguments: [diagnostic.data.template]\n }\n })\n }\n\n return actions\n }\n}\n\n/**\n * Hover information provider\n */\nexport class HoverProvider {\n /**\n * Get hover information for a position\n */\n getHover(_uri: string, text: string, line: number, character: number): LSPHover | null {\n if (!ideConfig.enableHoverInfo) {\n return null\n }\n\n const lines = text.split('\\n')\n const currentLine = lines[line]\n \n // Detect TachUI component or modifier at position\n const componentInfo = this.detectComponentAtPosition(currentLine, character)\n if (componentInfo) {\n return this.createComponentHover(componentInfo)\n }\n\n const modifierInfo = this.detectModifierAtPosition(currentLine, character)\n if (modifierInfo) {\n return this.createModifierHover(modifierInfo)\n }\n\n return null\n }\n\n /**\n * Detect component at cursor position\n */\n private detectComponentAtPosition(line: string, character: number): { name: string; range: { start: number; end: number } } | null {\n const components = ['Text', 'Button', 'VStack', 'HStack', 'ZStack', 'Image', 'List', 'Toggle']\n \n for (const component of components) {\n const index = line.indexOf(component)\n if (index !== -1 && character >= index && character <= index + component.length) {\n return {\n name: component,\n range: { start: index, end: index + component.length }\n }\n }\n }\n \n return null\n }\n\n /**\n * Detect modifier at cursor position\n */\n private detectModifierAtPosition(line: string, character: number): { name: string; range: { start: number; end: number } } | null {\n const modifiers = ['padding', 'margin', 'background', 'foregroundColor', 'fontSize', 'frame', 'clipped']\n \n for (const modifier of modifiers) {\n const pattern = new RegExp(`\\\\.(${modifier})\\\\s*\\\\(`, 'g')\n let match\n while ((match = pattern.exec(line)) !== null) {\n const start = match.index + 1\n const end = start + modifier.length\n if (character >= start && character <= end) {\n return {\n name: modifier,\n range: { start, end }\n }\n }\n }\n }\n \n return null\n }\n\n /**\n * Create hover information for component\n */\n private createComponentHover(componentInfo: { name: string; range: { start: number; end: number } }): LSPHover {\n const componentDocs = this.getComponentDocumentation(componentInfo.name)\n \n return {\n contents: {\n kind: 'markdown',\n value: componentDocs\n },\n range: {\n start: { line: 0, character: componentInfo.range.start },\n end: { line: 0, character: componentInfo.range.end }\n }\n }\n }\n\n /**\n * Create hover information for modifier\n */\n private createModifierHover(modifierInfo: { name: string; range: { start: number; end: number } }): LSPHover {\n const modifierDocs = this.getModifierDocumentation(modifierInfo.name)\n \n return {\n contents: {\n kind: 'markdown',\n value: modifierDocs\n },\n range: {\n start: { line: 0, character: modifierInfo.range.start },\n end: { line: 0, character: modifierInfo.range.end }\n }\n }\n }\n\n /**\n * Get component documentation\n */\n private getComponentDocumentation(componentName: string): string {\n const docs: Record<string, string> = {\n Text: `\n# Text Component\nDisplay text content with optional reactive updates.\n\n## Usage\n\\`\\`\\`typescript\nText(\"Hello World\")\nText(() => dynamicContent.value)\n\\`\\`\\`\n\n## Properties\n- **content** (required): string | Signal<string> | Function\n\n## Supported Modifiers\n- fontSize, fontWeight, foregroundColor, textAlign\n- padding, margin, background, border\n- frame, position, opacity, clipped\n\n[📚 Full Documentation](/docs/components/text)\n `,\n Button: `\n# Button Component\nInteractive button with customizable appearance and actions.\n\n## Usage\n\\`\\`\\`typescript\nButton(\"Click me\", handleClick)\nButton(\"Submit\").background(\"blue\")\n\\`\\`\\`\n\n## Properties\n- **title** (required): string\n- **action** (optional): Function\n\n## Supported Modifiers\n- foregroundColor, background, padding, margin\n- border, shadow, opacity, disabled\n- frame, position, cursor\n\n[📚 Full Documentation](/docs/components/button)\n `\n }\n\n return docs[componentName] || `# ${componentName} Component\\n\\nTachUI component for building user interfaces.\\n\\n[📚 Documentation](/docs/components/${componentName.toLowerCase()})`\n }\n\n /**\n * Get modifier documentation\n */\n private getModifierDocumentation(modifierName: string): string {\n const docs: Record<string, string> = {\n padding: `\n# .padding() Modifier\nAdd internal spacing to a component.\n\n## Usage\n\\`\\`\\`typescript\n.padding(16) // All sides\n.padding(\"1rem\") // CSS units\n.padding({ top: 8, horizontal: 12 }) // Individual sides\n\\`\\`\\`\n\n## Compatible Components\nAll components support padding modifier.\n\n[📚 Full Documentation](/docs/modifiers/padding)\n `,\n fontSize: `\n# .fontSize() Modifier\nSet the font size for text content.\n\n## Usage\n\\`\\`\\`typescript\n.fontSize(16) // Pixels\n.fontSize(\"1.2rem\") // CSS units\n\\`\\`\\`\n\n## Compatible Components\n- Text, Button (text components only)\n\n[📚 Full Documentation](/docs/modifiers/fontSize)\n `\n }\n\n return docs[modifierName] || `# .${modifierName}() Modifier\\n\\nTachUI modifier for styling components.\\n\\n[📚 Documentation](/docs/modifiers/${modifierName})`\n }\n}\n\n/**\n * Completion provider for autocomplete\n */\nexport class CompletionProvider {\n /**\n * Get completion items for a position\n */\n getCompletions(_uri: string, text: string, line: number, character: number): LSPCompletionItem[] {\n if (!ideConfig.enableAutoComplete) {\n return []\n }\n\n const lines = text.split('\\n')\n const currentLine = lines[line]\n const lineUpToCursor = currentLine.substring(0, character)\n\n // Component completions\n if (this.isComponentContext(lineUpToCursor)) {\n return this.getComponentCompletions()\n }\n\n // Modifier completions\n if (this.isModifierContext(lineUpToCursor)) {\n return this.getModifierCompletions(lineUpToCursor)\n }\n\n return []\n }\n\n /**\n * Check if we're in a component context\n */\n private isComponentContext(lineUpToCursor: string): boolean {\n // Simple heuristic - could be more sophisticated\n return /\\s*$/.test(lineUpToCursor) || /^\\s*[A-Z]/.test(lineUpToCursor)\n }\n\n /**\n * Check if we're in a modifier context\n */\n private isModifierContext(lineUpToCursor: string): boolean {\n return lineUpToCursor.includes('.') && !lineUpToCursor.endsWith('.')\n }\n\n /**\n * Get component completion items\n */\n private getComponentCompletions(): LSPCompletionItem[] {\n return [\n {\n label: 'Text',\n kind: 3, // Function\n detail: 'Text Component',\n documentation: {\n kind: 'markdown',\n value: 'Display text content with optional reactive updates.'\n },\n insertText: 'Text(\"$1\")',\n insertTextFormat: 2 // Snippet\n },\n {\n label: 'Button',\n kind: 3, // Function\n detail: 'Button Component',\n documentation: {\n kind: 'markdown',\n value: 'Interactive button with customizable appearance and actions.'\n },\n insertText: 'Button(\"$1\", $2)',\n insertTextFormat: 2 // Snippet\n },\n {\n label: 'VStack',\n kind: 3, // Function\n detail: 'VStack Component',\n documentation: {\n kind: 'markdown',\n value: 'Vertical stack layout container.'\n },\n insertText: 'VStack({ children: [$1] })',\n insertTextFormat: 2 // Snippet\n }\n ]\n }\n\n /**\n * Get modifier completion items\n */\n private getModifierCompletions(lineUpToCursor: string): LSPCompletionItem[] {\n // Determine component type for compatible modifiers\n const componentMatch = lineUpToCursor.match(/([A-Z][a-zA-Z]*)\\s*\\(/)\n const componentName = componentMatch ? componentMatch[1] : null\n\n const allModifiers = [\n {\n label: 'padding',\n kind: 2, // Method\n detail: 'Add internal spacing',\n insertText: 'padding($1)',\n insertTextFormat: 2,\n compatible: ['*']\n },\n {\n label: 'fontSize',\n kind: 2, // Method\n detail: 'Set font size',\n insertText: 'fontSize($1)',\n insertTextFormat: 2,\n compatible: ['Text', 'Button']\n },\n {\n label: 'background',\n kind: 2, // Method\n detail: 'Set background color',\n insertText: 'background(\"$1\")',\n insertTextFormat: 2,\n compatible: ['*']\n }\n ]\n\n // Filter by compatibility\n return allModifiers\n .filter(modifier => \n modifier.compatible.includes('*') || \n (componentName && modifier.compatible.includes(componentName))\n )\n .map(modifier => ({\n label: modifier.label,\n kind: modifier.kind,\n detail: modifier.detail,\n insertText: modifier.insertText,\n insertTextFormat: modifier.insertTextFormat as 1 | 2\n }))\n }\n}\n\n/**\n * VS Code integration manager\n */\nexport class VSCodeIntegration {\n private diagnosticsProvider = new ValidationDiagnosticsProvider()\n private codeActionsProvider = new CodeActionsProvider()\n private hoverProvider = new HoverProvider()\n private completionProvider = new CompletionProvider()\n\n /**\n * Initialize VS Code integration\n */\n initialize(): void {\n if (typeof globalThis !== 'undefined') {\n // Register providers globally for VS Code extension access\n ;(globalThis as any).__TACHUI_IDE_INTEGRATION__ = {\n diagnostics: this.diagnosticsProvider,\n codeActions: this.codeActionsProvider,\n hover: this.hoverProvider,\n completion: this.completionProvider,\n config: ideConfig\n }\n }\n }\n\n /**\n * Validate document and return diagnostics\n */\n async validateDocument(uri: string, text: string): Promise<LSPDiagnostic[]> {\n return this.diagnosticsProvider.validateDocument(uri, text)\n }\n\n /**\n * Get code actions for diagnostics\n */\n getCodeActions(diagnostic: LSPDiagnostic, uri: string, text: string): LSPCodeAction[] {\n return this.codeActionsProvider.getCodeActions(diagnostic, uri, text)\n }\n\n /**\n * Get hover information\n */\n getHover(uri: string, text: string, line: number, character: number): LSPHover | null {\n return this.hoverProvider.getHover(uri, text, line, character)\n }\n\n /**\n * Get completion items\n */\n getCompletions(uri: string, text: string, line: number, character: number): LSPCompletionItem[] {\n return this.completionProvider.getCompletions(uri, text, line, character)\n }\n}\n\n/**\n * Configure IDE integration\n */\nexport function configureIDEIntegration(config: Partial<IDEIntegrationConfig>): void {\n ideConfig = { ...ideConfig, ...config }\n}\n\n/**\n * Get current IDE configuration\n */\nexport function getIDEIntegrationConfig(): IDEIntegrationConfig {\n return { ...ideConfig }\n}\n\n// Global VS Code integration instance\nconst vsCodeIntegration = new VSCodeIntegration()\n\n/**\n * IDE Integration utilities\n */\nexport const IDEIntegrationUtils = {\n /**\n * Initialize IDE integration\n */\n initialize: () => vsCodeIntegration.initialize(),\n\n /**\n * Validate document\n */\n validateDocument: (uri: string, text: string) => vsCodeIntegration.validateDocument(uri, text),\n\n /**\n * Get code actions\n */\n getCodeActions: (diagnostic: LSPDiagnostic, uri: string, text: string) => \n vsCodeIntegration.getCodeActions(diagnostic, uri, text),\n\n /**\n * Get hover information\n */\n getHover: (uri: string, text: string, line: number, character: number) => \n vsCodeIntegration.getHover(uri, text, line, character),\n\n /**\n * Get completions\n */\n getCompletions: (uri: string, text: string, line: number, character: number) => \n vsCodeIntegration.getCompletions(uri, text, line, character),\n\n /**\n * Configure integration\n */\n configure: configureIDEIntegration,\n\n /**\n * Get configuration\n */\n getConfig: getIDEIntegrationConfig,\n\n /**\n * Test IDE integration system\n */\n test: async () => {\n console.group('🎯 IDE Integration System Test')\n \n try {\n // Test diagnostics\n const testCode = `\n Text()\n Button(\"Click me\")\n VStack({ children: [] }).fontSize(16)\n `\n \n const diagnostics = await vsCodeIntegration.validateDocument('test.ts', testCode)\n console.info('✅ Diagnostics found:', diagnostics.length)\n \n // Test hover\n const hover = vsCodeIntegration.getHover('test.ts', 'Text(\"hello\")', 0, 2)\n console.info('✅ Hover info available:', !!hover)\n \n // Test completions\n const completions = vsCodeIntegration.getCompletions('test.ts', 'T', 0, 1)\n console.info('✅ Completions available:', completions.length)\n \n if (diagnostics.length > 0) {\n const actions = vsCodeIntegration.getCodeActions(diagnostics[0], 'test.ts', testCode)\n console.info('✅ Code actions available:', actions.length)\n }\n \n console.info('✅ IDE integration system is working correctly')\n \n } catch (error) {\n console.error('❌ IDE integration test failed:', error)\n }\n \n console.groupEnd()\n }\n}\n\n// Auto-initialize on import\nvsCodeIntegration.initialize()\n\n// Export instances\nexport { vsCodeIntegration }"],"names":["ideConfig","ValidationDiagnosticsProvider","__publicField","uri","text","diagnostics","lines","lineIndex","line","commonErrors","limitedDiagnostics","match","listener","CodeActionsProvider","diagnostic","_text","actions","suggestions","DeveloperExperienceUtils","suggestion","HoverProvider","_uri","character","currentLine","componentInfo","modifierInfo","components","component","index","modifiers","modifier","pattern","start","end","componentName","modifierName","CompletionProvider","lineUpToCursor","componentMatch","VSCodeIntegration","configureIDEIntegration","config","getIDEIntegrationConfig","vsCodeIntegration","IDEIntegrationUtils","testCode","hover","completions","error"],"mappings":"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"}