@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.
- package/README.md +195 -0
- package/dist/ScrollView-h-6wYMAm.js +515 -0
- package/dist/Spacer-BbteDQ9I.js +5337 -0
- package/dist/binding-CmdpowkI.js +2276 -0
- package/dist/bundles/minimal.d.ts +30 -4
- package/dist/bundles/minimal.d.ts.map +1 -1
- package/dist/common.js +825 -954
- package/dist/compiler/index.js +1386 -10
- package/dist/components/index.js +4166 -101
- package/dist/concatenated-component-DPcl2TEO.js +6779 -0
- package/dist/{runtime/context.js → context--zQFIImS.js} +65 -71
- package/dist/debug.js +0 -1
- package/dist/dom-bridge-Cx-s6Ihx.js +406 -0
- package/dist/effect-CytAc9em.js +66 -0
- package/dist/essential.js +825 -954
- package/dist/index-Nfi2SBQh.js +3268 -0
- package/dist/index.js +825 -954
- package/dist/minimal-prod.js +162 -191
- package/dist/minimal.js +183 -957
- package/dist/modifiers/responsive/index.d.ts +10 -9
- package/dist/modifiers/responsive/index.d.ts.map +1 -1
- package/dist/plugins/index.js +543 -32
- package/dist/reactive/index.js +490 -93
- package/dist/runtime/dom-bridge.js +12 -239
- package/dist/runtime/renderer.js +8 -388
- package/dist/scheduler-7SvC3a21.js +814 -0
- package/dist/validation/index.js +6614 -198
- package/dist/viewport/index.js +2002 -83
- package/package.json +3 -4
- package/dist/assets/Asset.cjs +0 -2
- package/dist/assets/Asset.cjs.map +0 -1
- package/dist/assets/Asset.js +0 -9
- package/dist/assets/Asset.js.map +0 -1
- package/dist/assets/AssetCollection.cjs +0 -2
- package/dist/assets/AssetCollection.cjs.map +0 -1
- package/dist/assets/AssetCollection.js +0 -44
- package/dist/assets/AssetCollection.js.map +0 -1
- package/dist/assets/ColorAsset.cjs +0 -2
- package/dist/assets/ColorAsset.cjs.map +0 -1
- package/dist/assets/ColorAsset.js +0 -114
- package/dist/assets/ColorAsset.js.map +0 -1
- package/dist/assets/FontAsset.cjs +0 -9
- package/dist/assets/FontAsset.cjs.map +0 -1
- package/dist/assets/FontAsset.js +0 -173
- package/dist/assets/FontAsset.js.map +0 -1
- package/dist/assets/ImageAsset.cjs +0 -2
- package/dist/assets/ImageAsset.cjs.map +0 -1
- package/dist/assets/ImageAsset.js +0 -39
- package/dist/assets/ImageAsset.js.map +0 -1
- package/dist/assets/index.cjs +0 -2
- package/dist/assets/index.cjs.map +0 -1
- package/dist/assets/index.js +0 -119
- package/dist/assets/index.js.map +0 -1
- package/dist/common.cjs +0 -2
- package/dist/common.cjs.map +0 -1
- package/dist/common.js.map +0 -1
- package/dist/compiler/advanced-parser.cjs +0 -5
- package/dist/compiler/advanced-parser.cjs.map +0 -1
- package/dist/compiler/advanced-parser.js +0 -440
- package/dist/compiler/advanced-parser.js.map +0 -1
- package/dist/compiler/codegen.cjs +0 -6
- package/dist/compiler/codegen.cjs.map +0 -1
- package/dist/compiler/codegen.js +0 -241
- package/dist/compiler/codegen.js.map +0 -1
- package/dist/compiler/enhanced-codegen.cjs +0 -6
- package/dist/compiler/enhanced-codegen.cjs.map +0 -1
- package/dist/compiler/enhanced-codegen.js +0 -347
- package/dist/compiler/enhanced-codegen.js.map +0 -1
- package/dist/compiler/index.cjs +0 -2
- package/dist/compiler/index.cjs.map +0 -1
- package/dist/compiler/index.js.map +0 -1
- package/dist/compiler/parser.cjs +0 -5
- package/dist/compiler/parser.cjs.map +0 -1
- package/dist/compiler/parser.js +0 -275
- package/dist/compiler/parser.js.map +0 -1
- package/dist/compiler/plugin.cjs +0 -33
- package/dist/compiler/plugin.cjs.map +0 -1
- package/dist/compiler/plugin.js +0 -103
- package/dist/compiler/plugin.js.map +0 -1
- package/dist/components/BasicInput.cjs +0 -2
- package/dist/components/BasicInput.cjs.map +0 -1
- package/dist/components/BasicInput.js +0 -182
- package/dist/components/BasicInput.js.map +0 -1
- package/dist/components/Button.cjs +0 -7
- package/dist/components/Button.cjs.map +0 -1
- package/dist/components/Button.js +0 -408
- package/dist/components/Button.js.map +0 -1
- package/dist/components/Divider.cjs +0 -2
- package/dist/components/Divider.cjs.map +0 -1
- package/dist/components/Divider.js +0 -187
- package/dist/components/Divider.js.map +0 -1
- package/dist/components/EnhancedLink.cjs +0 -2
- package/dist/components/EnhancedLink.cjs.map +0 -1
- package/dist/components/EnhancedLink.js +0 -345
- package/dist/components/EnhancedLink.js.map +0 -1
- package/dist/components/Form.cjs +0 -2
- package/dist/components/Form.cjs.map +0 -1
- package/dist/components/Form.js +0 -244
- package/dist/components/Form.js.map +0 -1
- package/dist/components/Grid.cjs +0 -2
- package/dist/components/Grid.cjs.map +0 -1
- package/dist/components/Grid.js +0 -1045
- package/dist/components/Grid.js.map +0 -1
- package/dist/components/GridResponsive.cjs +0 -2
- package/dist/components/GridResponsive.cjs.map +0 -1
- package/dist/components/GridResponsive.js +0 -382
- package/dist/components/GridResponsive.js.map +0 -1
- package/dist/components/Image.cjs +0 -2
- package/dist/components/Image.cjs.map +0 -1
- package/dist/components/Image.js +0 -212
- package/dist/components/Image.js.map +0 -1
- package/dist/components/List.cjs +0 -2
- package/dist/components/List.cjs.map +0 -1
- package/dist/components/List.js +0 -561
- package/dist/components/List.js.map +0 -1
- package/dist/components/Menu.cjs +0 -2
- package/dist/components/Menu.cjs.map +0 -1
- package/dist/components/Menu.js +0 -443
- package/dist/components/Menu.js.map +0 -1
- package/dist/components/Picker.cjs +0 -2
- package/dist/components/Picker.cjs.map +0 -1
- package/dist/components/Picker.js +0 -478
- package/dist/components/Picker.js.map +0 -1
- package/dist/components/ScrollView.cjs +0 -6
- package/dist/components/ScrollView.cjs.map +0 -1
- package/dist/components/ScrollView.js +0 -363
- package/dist/components/ScrollView.js.map +0 -1
- package/dist/components/Section.cjs +0 -2
- package/dist/components/Section.cjs.map +0 -1
- package/dist/components/Section.js +0 -323
- package/dist/components/Section.js.map +0 -1
- package/dist/components/Show.cjs +0 -2
- package/dist/components/Show.cjs.map +0 -1
- package/dist/components/Show.js +0 -112
- package/dist/components/Show.js.map +0 -1
- package/dist/components/Spacer.cjs +0 -2
- package/dist/components/Spacer.cjs.map +0 -1
- package/dist/components/Spacer.js +0 -53
- package/dist/components/Spacer.js.map +0 -1
- package/dist/components/Text.cjs +0 -2
- package/dist/components/Text.cjs.map +0 -1
- package/dist/components/Text.js +0 -193
- package/dist/components/Text.js.map +0 -1
- package/dist/components/Toggle.cjs +0 -2
- package/dist/components/Toggle.cjs.map +0 -1
- package/dist/components/Toggle.js +0 -477
- package/dist/components/Toggle.js.map +0 -1
- package/dist/components/index.cjs +0 -2
- package/dist/components/index.cjs.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/wrapper.cjs +0 -2
- package/dist/components/wrapper.cjs.map +0 -1
- package/dist/components/wrapper.js +0 -484
- package/dist/components/wrapper.js.map +0 -1
- package/dist/concatenation/concatenatable.cjs +0 -2
- package/dist/concatenation/concatenatable.cjs.map +0 -1
- package/dist/concatenation/concatenatable.js +0 -118
- package/dist/concatenation/concatenatable.js.map +0 -1
- package/dist/concatenation/concatenated-component.cjs +0 -2
- package/dist/concatenation/concatenated-component.cjs.map +0 -1
- package/dist/concatenation/concatenated-component.js +0 -276
- package/dist/concatenation/concatenated-component.js.map +0 -1
- package/dist/concatenation/text-optimizer.cjs +0 -2
- package/dist/concatenation/text-optimizer.cjs.map +0 -1
- package/dist/concatenation/text-optimizer.js +0 -236
- package/dist/concatenation/text-optimizer.js.map +0 -1
- package/dist/concatenation/types.cjs +0 -2
- package/dist/concatenation/types.cjs.map +0 -1
- package/dist/concatenation/types.js +0 -13
- package/dist/concatenation/types.js.map +0 -1
- package/dist/constants/frame-utils.cjs +0 -2
- package/dist/constants/frame-utils.cjs.map +0 -1
- package/dist/constants/frame-utils.js +0 -116
- package/dist/constants/frame-utils.js.map +0 -1
- package/dist/constants/layout.cjs +0 -2
- package/dist/constants/layout.cjs.map +0 -1
- package/dist/constants/layout.js +0 -46
- package/dist/constants/layout.js.map +0 -1
- package/dist/css-classes/component-base.cjs +0 -2
- package/dist/css-classes/component-base.cjs.map +0 -1
- package/dist/css-classes/component-base.js +0 -62
- package/dist/css-classes/component-base.js.map +0 -1
- package/dist/css-classes/css-class-manager.cjs +0 -2
- package/dist/css-classes/css-class-manager.cjs.map +0 -1
- package/dist/css-classes/css-class-manager.js +0 -209
- package/dist/css-classes/css-class-manager.js.map +0 -1
- package/dist/css-classes/dom-integration.cjs +0 -2
- package/dist/css-classes/dom-integration.cjs.map +0 -1
- package/dist/css-classes/dom-integration.js +0 -67
- package/dist/css-classes/dom-integration.js.map +0 -1
- package/dist/css-classes/enhanced-renderer.cjs +0 -2
- package/dist/css-classes/enhanced-renderer.cjs.map +0 -1
- package/dist/css-classes/enhanced-renderer.js +0 -73
- package/dist/css-classes/enhanced-renderer.js.map +0 -1
- package/dist/css-classes/utilities.cjs +0 -2
- package/dist/css-classes/utilities.cjs.map +0 -1
- package/dist/css-classes/utilities.js +0 -41
- package/dist/css-classes/utilities.js.map +0 -1
- package/dist/debug.cjs +0 -52
- package/dist/debug.cjs.map +0 -1
- package/dist/debug.js.map +0 -1
- package/dist/essential.cjs +0 -2
- package/dist/essential.cjs.map +0 -1
- package/dist/essential.js.map +0 -1
- package/dist/gradients/css-generator.cjs +0 -2
- package/dist/gradients/css-generator.cjs.map +0 -1
- package/dist/gradients/css-generator.js +0 -100
- package/dist/gradients/css-generator.js.map +0 -1
- package/dist/gradients/examples.cjs +0 -2
- package/dist/gradients/examples.cjs.map +0 -1
- package/dist/gradients/examples.js +0 -555
- package/dist/gradients/examples.js.map +0 -1
- package/dist/gradients/gradient-asset.cjs +0 -2
- package/dist/gradients/gradient-asset.cjs.map +0 -1
- package/dist/gradients/gradient-asset.js +0 -22
- package/dist/gradients/gradient-asset.js.map +0 -1
- package/dist/gradients/index.cjs +0 -2
- package/dist/gradients/index.cjs.map +0 -1
- package/dist/gradients/index.js +0 -78
- package/dist/gradients/index.js.map +0 -1
- package/dist/gradients/performance.cjs +0 -2
- package/dist/gradients/performance.cjs.map +0 -1
- package/dist/gradients/performance.js +0 -237
- package/dist/gradients/performance.js.map +0 -1
- package/dist/gradients/presets.cjs +0 -2
- package/dist/gradients/presets.cjs.map +0 -1
- package/dist/gradients/presets.js +0 -254
- package/dist/gradients/presets.js.map +0 -1
- package/dist/gradients/reactive.cjs +0 -2
- package/dist/gradients/reactive.cjs.map +0 -1
- package/dist/gradients/reactive.js +0 -239
- package/dist/gradients/reactive.js.map +0 -1
- package/dist/gradients/state-gradient-asset.cjs +0 -2
- package/dist/gradients/state-gradient-asset.cjs.map +0 -1
- package/dist/gradients/state-gradient-asset.js +0 -111
- package/dist/gradients/state-gradient-asset.js.map +0 -1
- package/dist/gradients/utils.cjs +0 -2
- package/dist/gradients/utils.cjs.map +0 -1
- package/dist/gradients/utils.js +0 -385
- package/dist/gradients/utils.js.map +0 -1
- package/dist/gradients/validation.cjs +0 -2
- package/dist/gradients/validation.cjs.map +0 -1
- package/dist/gradients/validation.js +0 -209
- package/dist/gradients/validation.js.map +0 -1
- package/dist/index.cjs +0 -2
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index2.cjs +0 -2
- package/dist/index2.cjs.map +0 -1
- package/dist/index2.js +0 -293
- package/dist/index2.js.map +0 -1
- package/dist/lifecycle/hooks.cjs +0 -2
- package/dist/lifecycle/hooks.cjs.map +0 -1
- package/dist/lifecycle/hooks.js +0 -159
- package/dist/lifecycle/hooks.js.map +0 -1
- package/dist/minimal-prod.cjs +0 -2
- package/dist/minimal-prod.cjs.map +0 -1
- package/dist/minimal-prod.js.map +0 -1
- package/dist/minimal.cjs +0 -2
- package/dist/minimal.cjs.map +0 -1
- package/dist/minimal.js.map +0 -1
- package/dist/modifiers/as-html-validator.cjs +0 -2
- package/dist/modifiers/as-html-validator.cjs.map +0 -1
- package/dist/modifiers/as-html-validator.js +0 -47
- package/dist/modifiers/as-html-validator.js.map +0 -1
- package/dist/modifiers/as-html.cjs +0 -2
- package/dist/modifiers/as-html.cjs.map +0 -1
- package/dist/modifiers/as-html.js +0 -71
- package/dist/modifiers/as-html.js.map +0 -1
- package/dist/modifiers/attributes.cjs +0 -2
- package/dist/modifiers/attributes.cjs.map +0 -1
- package/dist/modifiers/attributes.js +0 -272
- package/dist/modifiers/attributes.js.map +0 -1
- package/dist/modifiers/backdrop.cjs +0 -2
- package/dist/modifiers/backdrop.cjs.map +0 -1
- package/dist/modifiers/backdrop.js +0 -109
- package/dist/modifiers/backdrop.js.map +0 -1
- package/dist/modifiers/background.cjs +0 -2
- package/dist/modifiers/background.cjs.map +0 -1
- package/dist/modifiers/background.js +0 -67
- package/dist/modifiers/background.js.map +0 -1
- package/dist/modifiers/base.cjs +0 -25
- package/dist/modifiers/base.cjs.map +0 -1
- package/dist/modifiers/base.js +0 -745
- package/dist/modifiers/base.js.map +0 -1
- package/dist/modifiers/basic-sanitizer.cjs +0 -2
- package/dist/modifiers/basic-sanitizer.cjs.map +0 -1
- package/dist/modifiers/basic-sanitizer.js +0 -162
- package/dist/modifiers/basic-sanitizer.js.map +0 -1
- package/dist/modifiers/border.cjs +0 -2
- package/dist/modifiers/border.cjs.map +0 -1
- package/dist/modifiers/border.js +0 -160
- package/dist/modifiers/border.js.map +0 -1
- package/dist/modifiers/builder.cjs +0 -2
- package/dist/modifiers/builder.cjs.map +0 -1
- package/dist/modifiers/builder.js +0 -930
- package/dist/modifiers/builder.js.map +0 -1
- package/dist/modifiers/core.cjs +0 -2
- package/dist/modifiers/core.cjs.map +0 -1
- package/dist/modifiers/core.js +0 -398
- package/dist/modifiers/core.js.map +0 -1
- package/dist/modifiers/css.cjs +0 -2
- package/dist/modifiers/css.cjs.map +0 -1
- package/dist/modifiers/css.js +0 -50
- package/dist/modifiers/css.js.map +0 -1
- package/dist/modifiers/effects.cjs +0 -2
- package/dist/modifiers/effects.cjs.map +0 -1
- package/dist/modifiers/effects.js +0 -178
- package/dist/modifiers/effects.js.map +0 -1
- package/dist/modifiers/elements.cjs +0 -2
- package/dist/modifiers/elements.cjs.map +0 -1
- package/dist/modifiers/elements.js +0 -216
- package/dist/modifiers/elements.js.map +0 -1
- package/dist/modifiers/filters.cjs +0 -2
- package/dist/modifiers/filters.cjs.map +0 -1
- package/dist/modifiers/filters.js +0 -223
- package/dist/modifiers/filters.js.map +0 -1
- package/dist/modifiers/flexbox.cjs +0 -2
- package/dist/modifiers/flexbox.cjs.map +0 -1
- package/dist/modifiers/flexbox.js +0 -56
- package/dist/modifiers/flexbox.js.map +0 -1
- package/dist/modifiers/font.cjs +0 -2
- package/dist/modifiers/font.cjs.map +0 -1
- package/dist/modifiers/font.js +0 -60
- package/dist/modifiers/font.js.map +0 -1
- package/dist/modifiers/grid.cjs +0 -2
- package/dist/modifiers/grid.cjs.map +0 -1
- package/dist/modifiers/grid.js +0 -92
- package/dist/modifiers/grid.js.map +0 -1
- package/dist/modifiers/margin.cjs +0 -2
- package/dist/modifiers/margin.cjs.map +0 -1
- package/dist/modifiers/margin.js +0 -65
- package/dist/modifiers/margin.js.map +0 -1
- package/dist/modifiers/padding.cjs +0 -2
- package/dist/modifiers/padding.cjs.map +0 -1
- package/dist/modifiers/padding.js +0 -109
- package/dist/modifiers/padding.js.map +0 -1
- package/dist/modifiers/registry.cjs +0 -2
- package/dist/modifiers/registry.cjs.map +0 -1
- package/dist/modifiers/registry.js +0 -163
- package/dist/modifiers/registry.js.map +0 -1
- package/dist/modifiers/responsive/advanced-utilities.cjs +0 -2
- package/dist/modifiers/responsive/advanced-utilities.cjs.map +0 -1
- package/dist/modifiers/responsive/advanced-utilities.js +0 -291
- package/dist/modifiers/responsive/advanced-utilities.js.map +0 -1
- package/dist/modifiers/responsive/breakpoints.cjs +0 -2
- package/dist/modifiers/responsive/breakpoints.cjs.map +0 -1
- package/dist/modifiers/responsive/breakpoints.js +0 -168
- package/dist/modifiers/responsive/breakpoints.js.map +0 -1
- package/dist/modifiers/responsive/css-generator.cjs +0 -5
- package/dist/modifiers/responsive/css-generator.cjs.map +0 -1
- package/dist/modifiers/responsive/css-generator.js +0 -261
- package/dist/modifiers/responsive/css-generator.js.map +0 -1
- package/dist/modifiers/responsive/dev-tools.cjs +0 -77
- package/dist/modifiers/responsive/dev-tools.cjs.map +0 -1
- package/dist/modifiers/responsive/dev-tools.js +0 -380
- package/dist/modifiers/responsive/dev-tools.js.map +0 -1
- package/dist/modifiers/responsive/layout-patterns.cjs +0 -2
- package/dist/modifiers/responsive/layout-patterns.cjs.map +0 -1
- package/dist/modifiers/responsive/layout-patterns.js +0 -254
- package/dist/modifiers/responsive/layout-patterns.js.map +0 -1
- package/dist/modifiers/responsive/performance.cjs +0 -3
- package/dist/modifiers/responsive/performance.cjs.map +0 -1
- package/dist/modifiers/responsive/performance.js +0 -212
- package/dist/modifiers/responsive/performance.js.map +0 -1
- package/dist/modifiers/responsive/responsive-builder.cjs +0 -2
- package/dist/modifiers/responsive/responsive-builder.cjs.map +0 -1
- package/dist/modifiers/responsive/responsive-builder.js +0 -272
- package/dist/modifiers/responsive/responsive-builder.js.map +0 -1
- package/dist/modifiers/responsive/responsive-modifier.cjs +0 -3
- package/dist/modifiers/responsive/responsive-modifier.cjs.map +0 -1
- package/dist/modifiers/responsive/responsive-modifier.js +0 -204
- package/dist/modifiers/responsive/responsive-modifier.js.map +0 -1
- package/dist/modifiers/responsive/types.cjs +0 -2
- package/dist/modifiers/responsive/types.cjs.map +0 -1
- package/dist/modifiers/responsive/types.js +0 -26
- package/dist/modifiers/responsive/types.js.map +0 -1
- package/dist/modifiers/responsive/utilities.cjs +0 -16
- package/dist/modifiers/responsive/utilities.cjs.map +0 -1
- package/dist/modifiers/responsive/utilities.js +0 -273
- package/dist/modifiers/responsive/utilities.js.map +0 -1
- package/dist/modifiers/scroll.cjs +0 -2
- package/dist/modifiers/scroll.cjs.map +0 -1
- package/dist/modifiers/scroll.js +0 -82
- package/dist/modifiers/scroll.js.map +0 -1
- package/dist/modifiers/shadows.cjs +0 -2
- package/dist/modifiers/shadows.cjs.map +0 -1
- package/dist/modifiers/shadows.js +0 -147
- package/dist/modifiers/shadows.js.map +0 -1
- package/dist/modifiers/size.cjs +0 -2
- package/dist/modifiers/size.cjs.map +0 -1
- package/dist/modifiers/size.js +0 -74
- package/dist/modifiers/size.js.map +0 -1
- package/dist/modifiers/text.cjs +0 -2
- package/dist/modifiers/text.cjs.map +0 -1
- package/dist/modifiers/text.js +0 -166
- package/dist/modifiers/text.js.map +0 -1
- package/dist/modifiers/transformations.cjs +0 -2
- package/dist/modifiers/transformations.cjs.map +0 -1
- package/dist/modifiers/transformations.js +0 -216
- package/dist/modifiers/transformations.js.map +0 -1
- package/dist/modifiers/transitions.cjs +0 -2
- package/dist/modifiers/transitions.cjs.map +0 -1
- package/dist/modifiers/transitions.js +0 -102
- package/dist/modifiers/transitions.js.map +0 -1
- package/dist/modifiers/types.cjs +0 -2
- package/dist/modifiers/types.cjs.map +0 -1
- package/dist/modifiers/types.js +0 -5
- package/dist/modifiers/types.js.map +0 -1
- package/dist/modifiers/typography.cjs +0 -2
- package/dist/modifiers/typography.cjs.map +0 -1
- package/dist/modifiers/typography.js +0 -76
- package/dist/modifiers/typography.js.map +0 -1
- package/dist/modifiers/utility.cjs +0 -2
- package/dist/modifiers/utility.cjs.map +0 -1
- package/dist/modifiers/utility.js +0 -71
- package/dist/modifiers/utility.js.map +0 -1
- package/dist/modifiers/utils.cjs +0 -2
- package/dist/modifiers/utils.cjs.map +0 -1
- package/dist/modifiers/utils.js +0 -250
- package/dist/modifiers/utils.js.map +0 -1
- package/dist/plugins/index.cjs +0 -2
- package/dist/plugins/index.cjs.map +0 -1
- package/dist/plugins/index.js.map +0 -1
- package/dist/plugins/legacy-adapter.cjs +0 -2
- package/dist/plugins/legacy-adapter.cjs.map +0 -1
- package/dist/plugins/legacy-adapter.js +0 -30
- package/dist/plugins/legacy-adapter.js.map +0 -1
- package/dist/plugins/simplified-component-registry.cjs +0 -2
- package/dist/plugins/simplified-component-registry.cjs.map +0 -1
- package/dist/plugins/simplified-component-registry.js +0 -71
- package/dist/plugins/simplified-component-registry.js.map +0 -1
- package/dist/plugins/simplified-error-handler.cjs +0 -2
- package/dist/plugins/simplified-error-handler.cjs.map +0 -1
- package/dist/plugins/simplified-error-handler.js +0 -154
- package/dist/plugins/simplified-error-handler.js.map +0 -1
- package/dist/plugins/simplified-lazy-loader.cjs +0 -2
- package/dist/plugins/simplified-lazy-loader.cjs.map +0 -1
- package/dist/plugins/simplified-lazy-loader.js +0 -129
- package/dist/plugins/simplified-lazy-loader.js.map +0 -1
- package/dist/plugins/simplified-plugin-manager.cjs +0 -2
- package/dist/plugins/simplified-plugin-manager.cjs.map +0 -1
- package/dist/plugins/simplified-plugin-manager.js +0 -51
- package/dist/plugins/simplified-plugin-manager.js.map +0 -1
- package/dist/plugins/simplified-tachui-instance.cjs +0 -2
- package/dist/plugins/simplified-tachui-instance.cjs.map +0 -1
- package/dist/plugins/simplified-tachui-instance.js +0 -88
- package/dist/plugins/simplified-tachui-instance.js.map +0 -1
- package/dist/plugins/simplified-types.cjs +0 -2
- package/dist/plugins/simplified-types.cjs.map +0 -1
- package/dist/plugins/simplified-types.js +0 -9
- package/dist/plugins/simplified-types.js.map +0 -1
- package/dist/plugins/simplified-utils.cjs +0 -2
- package/dist/plugins/simplified-utils.cjs.map +0 -1
- package/dist/plugins/simplified-utils.js +0 -40
- package/dist/plugins/simplified-utils.js.map +0 -1
- package/dist/reactive/cleanup.cjs +0 -2
- package/dist/reactive/cleanup.cjs.map +0 -1
- package/dist/reactive/cleanup.js +0 -62
- package/dist/reactive/cleanup.js.map +0 -1
- package/dist/reactive/computed.cjs +0 -2
- package/dist/reactive/computed.cjs.map +0 -1
- package/dist/reactive/computed.js +0 -121
- package/dist/reactive/computed.js.map +0 -1
- package/dist/reactive/context.cjs +0 -2
- package/dist/reactive/context.cjs.map +0 -1
- package/dist/reactive/context.js +0 -143
- package/dist/reactive/context.js.map +0 -1
- package/dist/reactive/effect.cjs +0 -2
- package/dist/reactive/effect.cjs.map +0 -1
- package/dist/reactive/effect.js +0 -67
- package/dist/reactive/effect.js.map +0 -1
- package/dist/reactive/enhanced-effect.cjs +0 -2
- package/dist/reactive/enhanced-effect.cjs.map +0 -1
- package/dist/reactive/enhanced-effect.js +0 -153
- package/dist/reactive/enhanced-effect.js.map +0 -1
- package/dist/reactive/enhanced-signal.cjs +0 -2
- package/dist/reactive/enhanced-signal.cjs.map +0 -1
- package/dist/reactive/enhanced-signal.js +0 -117
- package/dist/reactive/enhanced-signal.js.map +0 -1
- package/dist/reactive/equality.cjs +0 -2
- package/dist/reactive/equality.cjs.map +0 -1
- package/dist/reactive/equality.js +0 -66
- package/dist/reactive/equality.js.map +0 -1
- package/dist/reactive/index.cjs +0 -2
- package/dist/reactive/index.cjs.map +0 -1
- package/dist/reactive/index.js.map +0 -1
- package/dist/reactive/migration.cjs +0 -18
- package/dist/reactive/migration.cjs.map +0 -1
- package/dist/reactive/migration.js +0 -164
- package/dist/reactive/migration.js.map +0 -1
- package/dist/reactive/ownership.cjs +0 -2
- package/dist/reactive/ownership.cjs.map +0 -1
- package/dist/reactive/ownership.js +0 -34
- package/dist/reactive/ownership.js.map +0 -1
- package/dist/reactive/scheduler.cjs +0 -2
- package/dist/reactive/scheduler.cjs.map +0 -1
- package/dist/reactive/scheduler.js +0 -111
- package/dist/reactive/scheduler.js.map +0 -1
- package/dist/reactive/signal.cjs +0 -2
- package/dist/reactive/signal.cjs.map +0 -1
- package/dist/reactive/signal.js +0 -96
- package/dist/reactive/signal.js.map +0 -1
- package/dist/reactive/theme.cjs +0 -2
- package/dist/reactive/theme.cjs.map +0 -1
- package/dist/reactive/theme.js +0 -27
- package/dist/reactive/theme.js.map +0 -1
- package/dist/reactive/types.cjs +0 -2
- package/dist/reactive/types.cjs.map +0 -1
- package/dist/reactive/types.js +0 -5
- package/dist/reactive/types.js.map +0 -1
- package/dist/reactive/unified-scheduler.cjs +0 -2
- package/dist/reactive/unified-scheduler.cjs.map +0 -1
- package/dist/reactive/unified-scheduler.js +0 -219
- package/dist/reactive/unified-scheduler.js.map +0 -1
- package/dist/runtime/component-context.cjs +0 -2
- package/dist/runtime/component-context.cjs.map +0 -1
- package/dist/runtime/component-context.js +0 -177
- package/dist/runtime/component-context.js.map +0 -1
- package/dist/runtime/component.cjs +0 -2
- package/dist/runtime/component.cjs.map +0 -1
- package/dist/runtime/component.js +0 -238
- package/dist/runtime/component.js.map +0 -1
- package/dist/runtime/context.cjs +0 -2
- package/dist/runtime/context.cjs.map +0 -1
- package/dist/runtime/context.js.map +0 -1
- package/dist/runtime/dev-tools.cjs +0 -2
- package/dist/runtime/dev-tools.cjs.map +0 -1
- package/dist/runtime/dev-tools.js +0 -391
- package/dist/runtime/dev-tools.js.map +0 -1
- package/dist/runtime/development-warnings.cjs +0 -2
- package/dist/runtime/development-warnings.cjs.map +0 -1
- package/dist/runtime/development-warnings.js +0 -69
- package/dist/runtime/development-warnings.js.map +0 -1
- package/dist/runtime/dom-bridge.cjs +0 -2
- package/dist/runtime/dom-bridge.cjs.map +0 -1
- package/dist/runtime/dom-bridge.js.map +0 -1
- package/dist/runtime/element-override.cjs +0 -2
- package/dist/runtime/element-override.cjs.map +0 -1
- package/dist/runtime/element-override.js +0 -214
- package/dist/runtime/element-override.js.map +0 -1
- package/dist/runtime/error-boundary.cjs +0 -2
- package/dist/runtime/error-boundary.cjs.map +0 -1
- package/dist/runtime/error-boundary.js +0 -559
- package/dist/runtime/error-boundary.js.map +0 -1
- package/dist/runtime/error-recovery.cjs +0 -2
- package/dist/runtime/error-recovery.cjs.map +0 -1
- package/dist/runtime/error-recovery.js +0 -385
- package/dist/runtime/error-recovery.js.map +0 -1
- package/dist/runtime/error-reporting.cjs +0 -3
- package/dist/runtime/error-reporting.cjs.map +0 -1
- package/dist/runtime/error-reporting.js +0 -479
- package/dist/runtime/error-reporting.js.map +0 -1
- package/dist/runtime/error-utils.cjs +0 -3
- package/dist/runtime/error-utils.cjs.map +0 -1
- package/dist/runtime/error-utils.js +0 -352
- package/dist/runtime/error-utils.js.map +0 -1
- package/dist/runtime/lazy-component.cjs +0 -2
- package/dist/runtime/lazy-component.cjs.map +0 -1
- package/dist/runtime/lazy-component.js +0 -129
- package/dist/runtime/lazy-component.js.map +0 -1
- package/dist/runtime/lifecycle.cjs +0 -2
- package/dist/runtime/lifecycle.cjs.map +0 -1
- package/dist/runtime/lifecycle.js +0 -7
- package/dist/runtime/lifecycle.js.map +0 -1
- package/dist/runtime/mounting.cjs +0 -2
- package/dist/runtime/mounting.cjs.map +0 -1
- package/dist/runtime/mounting.js +0 -12
- package/dist/runtime/mounting.js.map +0 -1
- package/dist/runtime/optimization.cjs +0 -2
- package/dist/runtime/optimization.cjs.map +0 -1
- package/dist/runtime/optimization.js +0 -6
- package/dist/runtime/optimization.js.map +0 -1
- package/dist/runtime/performance.cjs +0 -2
- package/dist/runtime/performance.cjs.map +0 -1
- package/dist/runtime/performance.js +0 -399
- package/dist/runtime/performance.js.map +0 -1
- package/dist/runtime/props.cjs +0 -2
- package/dist/runtime/props.cjs.map +0 -1
- package/dist/runtime/props.js +0 -265
- package/dist/runtime/props.js.map +0 -1
- package/dist/runtime/renderer.cjs +0 -2
- package/dist/runtime/renderer.cjs.map +0 -1
- package/dist/runtime/renderer.js.map +0 -1
- package/dist/runtime/semantic-role-manager.cjs +0 -2
- package/dist/runtime/semantic-role-manager.cjs.map +0 -1
- package/dist/runtime/semantic-role-manager.js +0 -82
- package/dist/runtime/semantic-role-manager.js.map +0 -1
- package/dist/state/binding.cjs +0 -2
- package/dist/state/binding.cjs.map +0 -1
- package/dist/state/binding.js +0 -155
- package/dist/state/binding.js.map +0 -1
- package/dist/state/environment.cjs +0 -2
- package/dist/state/environment.cjs.map +0 -1
- package/dist/state/environment.js +0 -115
- package/dist/state/environment.js.map +0 -1
- package/dist/state/index.cjs +0 -2
- package/dist/state/index.cjs.map +0 -1
- package/dist/state/index.js +0 -63
- package/dist/state/index.js.map +0 -1
- package/dist/state/observed-object.cjs +0 -2
- package/dist/state/observed-object.cjs.map +0 -1
- package/dist/state/observed-object.js +0 -163
- package/dist/state/observed-object.js.map +0 -1
- package/dist/state/state-manager.cjs +0 -2
- package/dist/state/state-manager.cjs.map +0 -1
- package/dist/state/state-manager.js +0 -233
- package/dist/state/state-manager.js.map +0 -1
- package/dist/state/state.cjs +0 -2
- package/dist/state/state.cjs.map +0 -1
- package/dist/state/state.js +0 -159
- package/dist/state/state.js.map +0 -1
- package/dist/sui-compat.cjs +0 -2
- package/dist/sui-compat.cjs.map +0 -1
- package/dist/sui-compat.js +0 -88
- package/dist/sui-compat.js.map +0 -1
- package/dist/validation/advanced-debugging.cjs +0 -44
- package/dist/validation/advanced-debugging.cjs.map +0 -1
- package/dist/validation/advanced-debugging.js +0 -455
- package/dist/validation/advanced-debugging.js.map +0 -1
- package/dist/validation/build-time/detection.cjs +0 -2
- package/dist/validation/build-time/detection.cjs.map +0 -1
- package/dist/validation/build-time/detection.js +0 -199
- package/dist/validation/build-time/detection.js.map +0 -1
- package/dist/validation/build-time/index.cjs +0 -2
- package/dist/validation/build-time/index.cjs.map +0 -1
- package/dist/validation/build-time/index.js +0 -122
- package/dist/validation/build-time/index.js.map +0 -1
- package/dist/validation/build-time/plugins.cjs +0 -3
- package/dist/validation/build-time/plugins.cjs.map +0 -1
- package/dist/validation/build-time/plugins.js +0 -282
- package/dist/validation/build-time/plugins.js.map +0 -1
- package/dist/validation/build-time/rules.cjs +0 -2
- package/dist/validation/build-time/rules.cjs.map +0 -1
- package/dist/validation/build-time/rules.js +0 -576
- package/dist/validation/build-time/rules.js.map +0 -1
- package/dist/validation/build-time/transformer.cjs +0 -3
- package/dist/validation/build-time/transformer.cjs.map +0 -1
- package/dist/validation/build-time/transformer.js +0 -177
- package/dist/validation/build-time/transformer.js.map +0 -1
- package/dist/validation/comprehensive.cjs +0 -9
- package/dist/validation/comprehensive.cjs.map +0 -1
- package/dist/validation/comprehensive.js +0 -916
- package/dist/validation/comprehensive.js.map +0 -1
- package/dist/validation/debug-tools.cjs +0 -16
- package/dist/validation/debug-tools.cjs.map +0 -1
- package/dist/validation/debug-tools.js +0 -405
- package/dist/validation/debug-tools.js.map +0 -1
- package/dist/validation/developer-experience.cjs +0 -17
- package/dist/validation/developer-experience.cjs.map +0 -1
- package/dist/validation/developer-experience.js +0 -433
- package/dist/validation/developer-experience.js.map +0 -1
- package/dist/validation/documentation-integration.cjs +0 -7
- package/dist/validation/documentation-integration.cjs.map +0 -1
- package/dist/validation/documentation-integration.js +0 -440
- package/dist/validation/documentation-integration.js.map +0 -1
- package/dist/validation/enhanced-runtime.cjs +0 -6
- package/dist/validation/enhanced-runtime.cjs.map +0 -1
- package/dist/validation/enhanced-runtime.js +0 -465
- package/dist/validation/enhanced-runtime.js.map +0 -1
- package/dist/validation/error-reporting.cjs +0 -32
- package/dist/validation/error-reporting.cjs.map +0 -1
- package/dist/validation/error-reporting.js +0 -370
- package/dist/validation/error-reporting.js.map +0 -1
- package/dist/validation/ide-integration.cjs +0 -85
- package/dist/validation/ide-integration.cjs.map +0 -1
- package/dist/validation/ide-integration.js +0 -557
- package/dist/validation/ide-integration.js.map +0 -1
- package/dist/validation/index.cjs +0 -6
- package/dist/validation/index.cjs.map +0 -1
- package/dist/validation/index.js.map +0 -1
- package/dist/validation/lifecycle-validation.cjs +0 -2
- package/dist/validation/lifecycle-validation.cjs.map +0 -1
- package/dist/validation/lifecycle-validation.js +0 -314
- package/dist/validation/lifecycle-validation.js.map +0 -1
- package/dist/validation/performance-optimizer.cjs +0 -2
- package/dist/validation/performance-optimizer.cjs.map +0 -1
- package/dist/validation/performance-optimizer.js +0 -338
- package/dist/validation/performance-optimizer.js.map +0 -1
- package/dist/validation/plugin-registration.cjs +0 -2
- package/dist/validation/plugin-registration.cjs.map +0 -1
- package/dist/validation/plugin-registration.js +0 -126
- package/dist/validation/plugin-registration.js.map +0 -1
- package/dist/validation/production-bypass.cjs +0 -2
- package/dist/validation/production-bypass.cjs.map +0 -1
- package/dist/validation/production-bypass.js +0 -218
- package/dist/validation/production-bypass.js.map +0 -1
- package/dist/validation/simple.cjs +0 -9
- package/dist/validation/simple.cjs.map +0 -1
- package/dist/validation/simple.js +0 -146
- package/dist/validation/simple.js.map +0 -1
- package/dist/viewport/adapters/web-adapter.cjs +0 -70
- package/dist/viewport/adapters/web-adapter.cjs.map +0 -1
- package/dist/viewport/adapters/web-adapter.js +0 -823
- package/dist/viewport/adapters/web-adapter.js.map +0 -1
- package/dist/viewport/components.cjs +0 -2
- package/dist/viewport/components.cjs.map +0 -1
- package/dist/viewport/components.js +0 -298
- package/dist/viewport/components.js.map +0 -1
- package/dist/viewport/environment.cjs +0 -2
- package/dist/viewport/environment.cjs.map +0 -1
- package/dist/viewport/environment.js +0 -86
- package/dist/viewport/environment.js.map +0 -1
- package/dist/viewport/index.cjs +0 -2
- package/dist/viewport/index.cjs.map +0 -1
- package/dist/viewport/index.js.map +0 -1
- package/dist/viewport/platform-detection.cjs +0 -2
- package/dist/viewport/platform-detection.cjs.map +0 -1
- package/dist/viewport/platform-detection.js +0 -205
- package/dist/viewport/platform-detection.js.map +0 -1
- package/dist/viewport/types.cjs +0 -2
- package/dist/viewport/types.cjs.map +0 -1
- package/dist/viewport/types.js +0 -13
- package/dist/viewport/types.js.map +0 -1
- package/dist/viewport/viewport-manager.cjs +0 -2
- package/dist/viewport/viewport-manager.cjs.map +0 -1
- package/dist/viewport/viewport-manager.js +0 -524
- package/dist/viewport/viewport-manager.js.map +0 -1
- package/src/assets/Asset.ts +0 -11
- package/src/assets/AssetCollection.ts +0 -99
- package/src/assets/ColorAsset.ts +0 -210
- package/src/assets/FontAsset.ts +0 -380
- package/src/assets/ImageAsset.ts +0 -91
- package/src/assets/README.md +0 -190
- package/src/assets/index.ts +0 -175
- package/src/assets/test-assets.ts +0 -69
- package/src/assets/test-integration.ts +0 -46
- package/src/assets/test-simple.ts +0 -28
- package/src/assets/types.ts +0 -79
- package/src/bundles/common.ts +0 -30
- package/src/bundles/complete.ts +0 -29
- package/src/bundles/essential.ts +0 -26
- package/src/bundles/minimal.ts +0 -26
- package/src/bundles/production-minimal.ts +0 -67
- package/src/compiler/advanced-parser.ts +0 -871
- package/src/compiler/codegen.ts +0 -450
- package/src/compiler/enhanced-codegen.ts +0 -729
- package/src/compiler/index.ts +0 -25
- package/src/compiler/parser.ts +0 -461
- package/src/compiler/plugin.ts +0 -181
- package/src/compiler/types.ts +0 -177
- package/src/components/BasicInput.ts +0 -352
- package/src/components/Button.ts +0 -963
- package/src/components/Divider.ts +0 -341
- package/src/components/EnhancedLink.ts +0 -676
- package/src/components/Form.ts +0 -414
- package/src/components/Grid.ts +0 -2507
- package/src/components/GridResponsive.ts +0 -637
- package/src/components/Image.ts +0 -426
- package/src/components/List.ts +0 -1084
- package/src/components/Menu.ts +0 -807
- package/src/components/Picker.ts +0 -678
- package/src/components/ScrollView.ts +0 -725
- package/src/components/Section.ts +0 -472
- package/src/components/Show.ts +0 -205
- package/src/components/Spacer.ts +0 -93
- package/src/components/Text.ts +0 -447
- package/src/components/Toggle.ts +0 -700
- package/src/components/index.ts +0 -231
- package/src/components/wrapper.ts +0 -828
- package/src/concatenation/concatenatable.ts +0 -211
- package/src/concatenation/concatenated-component.ts +0 -471
- package/src/concatenation/index.ts +0 -41
- package/src/concatenation/styles.css +0 -120
- package/src/concatenation/text-optimizer.ts +0 -440
- package/src/concatenation/types.ts +0 -116
- package/src/constants/README.md +0 -339
- package/src/constants/__tests__/frame-utils.test.ts +0 -276
- package/src/constants/__tests__/layout.test.ts +0 -215
- package/src/constants/frame-utils.ts +0 -174
- package/src/constants/index.ts +0 -8
- package/src/constants/layout.ts +0 -120
- package/src/css-classes/component-base.ts +0 -117
- package/src/css-classes/css-class-manager.ts +0 -372
- package/src/css-classes/dom-integration.ts +0 -162
- package/src/css-classes/enhanced-renderer.ts +0 -166
- package/src/css-classes/index.ts +0 -45
- package/src/css-classes/types.ts +0 -73
- package/src/css-classes/utilities.ts +0 -175
- package/src/debug/index.ts +0 -267
- package/src/developer-experience/enhanced-errors.ts +0 -556
- package/src/developer-experience/enhanced-types.ts +0 -427
- package/src/developer-experience/index.ts +0 -220
- package/src/globals.d.ts +0 -43
- package/src/gradients/__tests__/angular-gradient.test.ts +0 -111
- package/src/gradients/__tests__/background-modifier.test.ts +0 -81
- package/src/gradients/__tests__/comprehensive-gradients.test.ts +0 -296
- package/src/gradients/__tests__/gradient-asset.test.ts +0 -144
- package/src/gradients/__tests__/linear-gradient.test.ts +0 -92
- package/src/gradients/__tests__/phase4-features.test.ts +0 -386
- package/src/gradients/__tests__/radial-gradient.test.ts +0 -110
- package/src/gradients/__tests__/repeating-gradients.test.ts +0 -125
- package/src/gradients/__tests__/state-background-modifier.test.ts +0 -340
- package/src/gradients/__tests__/state-gradient-asset.test.ts +0 -262
- package/src/gradients/__tests__/state-gradient-integration.test.ts +0 -277
- package/src/gradients/css-generator.ts +0 -158
- package/src/gradients/examples.ts +0 -632
- package/src/gradients/gradient-asset.ts +0 -30
- package/src/gradients/index.ts +0 -85
- package/src/gradients/performance.ts +0 -521
- package/src/gradients/presets.ts +0 -422
- package/src/gradients/reactive.ts +0 -470
- package/src/gradients/state-gradient-asset.ts +0 -179
- package/src/gradients/types.ts +0 -148
- package/src/gradients/utils.ts +0 -579
- package/src/gradients/validation.ts +0 -489
- package/src/index.ts +0 -168
- package/src/lifecycle/hooks.ts +0 -332
- package/src/modifiers/__tests__/as-html-integration.test.ts +0 -204
- package/src/modifiers/__tests__/as-html.test.ts +0 -437
- package/src/modifiers/__tests__/basic-sanitizer-security.test.ts +0 -294
- package/src/modifiers/__tests__/border.test.ts +0 -371
- package/src/modifiers/__tests__/margin-string-support.test.ts +0 -41
- package/src/modifiers/__tests__/padding-string-support.test.ts +0 -41
- package/src/modifiers/as-html-validator.ts +0 -68
- package/src/modifiers/as-html.ts +0 -216
- package/src/modifiers/attributes.ts +0 -574
- package/src/modifiers/backdrop.ts +0 -290
- package/src/modifiers/background.ts +0 -165
- package/src/modifiers/base.ts +0 -1815
- package/src/modifiers/basic-sanitizer.ts +0 -227
- package/src/modifiers/border.ts +0 -574
- package/src/modifiers/builder.ts +0 -1747
- package/src/modifiers/core.ts +0 -521
- package/src/modifiers/css.ts +0 -148
- package/src/modifiers/effects.ts +0 -412
- package/src/modifiers/elements.ts +0 -541
- package/src/modifiers/filters.ts +0 -501
- package/src/modifiers/flexbox.ts +0 -180
- package/src/modifiers/font.ts +0 -149
- package/src/modifiers/grid.ts +0 -238
- package/src/modifiers/index.ts +0 -481
- package/src/modifiers/margin.ts +0 -218
- package/src/modifiers/padding.ts +0 -318
- package/src/modifiers/registry.ts +0 -444
- package/src/modifiers/responsive/__tests__/advanced-media-queries.test.ts +0 -392
- package/src/modifiers/responsive/__tests__/advanced-utilities.test.ts +0 -368
- package/src/modifiers/responsive/__tests__/comprehensive-browser-tests.test.ts +0 -556
- package/src/modifiers/responsive/__tests__/layout-patterns.test.ts +0 -558
- package/src/modifiers/responsive/advanced-utilities.ts +0 -562
- package/src/modifiers/responsive/breakpoints.ts +0 -330
- package/src/modifiers/responsive/css-generator.ts +0 -432
- package/src/modifiers/responsive/dev-tools.ts +0 -650
- package/src/modifiers/responsive/index.ts +0 -119
- package/src/modifiers/responsive/layout-patterns.ts +0 -592
- package/src/modifiers/responsive/performance.ts +0 -385
- package/src/modifiers/responsive/responsive-builder.ts +0 -620
- package/src/modifiers/responsive/responsive-modifier.ts +0 -410
- package/src/modifiers/responsive/types.ts +0 -226
- package/src/modifiers/responsive/utilities.ts +0 -478
- package/src/modifiers/scroll.ts +0 -297
- package/src/modifiers/shadows.ts +0 -321
- package/src/modifiers/size.ts +0 -208
- package/src/modifiers/text.ts +0 -416
- package/src/modifiers/transformations.ts +0 -640
- package/src/modifiers/transitions.ts +0 -218
- package/src/modifiers/types.ts +0 -889
- package/src/modifiers/typography.ts +0 -341
- package/src/modifiers/utility.ts +0 -209
- package/src/modifiers/utils.ts +0 -413
- package/src/plugins/__tests__/simplified-plugin-system.test.ts +0 -190
- package/src/plugins/component-loader-registry.ts +0 -371
- package/src/plugins/index.ts +0 -61
- package/src/plugins/legacy-adapter.ts +0 -84
- package/src/plugins/simplified-component-registry.ts +0 -130
- package/src/plugins/simplified-error-handler.ts +0 -372
- package/src/plugins/simplified-index.ts +0 -61
- package/src/plugins/simplified-lazy-loader.ts +0 -242
- package/src/plugins/simplified-plugin-manager.ts +0 -93
- package/src/plugins/simplified-tachui-instance.ts +0 -142
- package/src/plugins/simplified-types.ts +0 -79
- package/src/plugins/simplified-utils.ts +0 -118
- package/src/reactive/cleanup.ts +0 -241
- package/src/reactive/computed.ts +0 -281
- package/src/reactive/context.ts +0 -287
- package/src/reactive/effect.ts +0 -194
- package/src/reactive/enhanced-effect.ts +0 -318
- package/src/reactive/enhanced-signal.ts +0 -227
- package/src/reactive/equality.ts +0 -188
- package/src/reactive/globals.d.ts +0 -5
- package/src/reactive/index.ts +0 -150
- package/src/reactive/migration.ts +0 -335
- package/src/reactive/ownership.ts +0 -182
- package/src/reactive/scheduler.ts +0 -300
- package/src/reactive/signal.ts +0 -201
- package/src/reactive/theme.ts +0 -49
- package/src/reactive/types.ts +0 -103
- package/src/reactive/unified-scheduler.ts +0 -357
- package/src/runtime/component-context.ts +0 -343
- package/src/runtime/component.ts +0 -499
- package/src/runtime/context.ts +0 -527
- package/src/runtime/dev-tools.ts +0 -752
- package/src/runtime/development-warnings.ts +0 -114
- package/src/runtime/dom-bridge.ts +0 -570
- package/src/runtime/element-override.ts +0 -282
- package/src/runtime/error-boundary.ts +0 -955
- package/src/runtime/error-recovery.ts +0 -638
- package/src/runtime/error-reporting.ts +0 -808
- package/src/runtime/error-utils.ts +0 -698
- package/src/runtime/index.ts +0 -202
- package/src/runtime/lazy-component.ts +0 -268
- package/src/runtime/lifecycle.ts +0 -10
- package/src/runtime/mounting.ts +0 -17
- package/src/runtime/optimization.ts +0 -13
- package/src/runtime/performance.ts +0 -693
- package/src/runtime/props.ts +0 -434
- package/src/runtime/refs.ts +0 -13
- package/src/runtime/renderer.ts +0 -674
- package/src/runtime/semantic-role-manager.ts +0 -140
- package/src/runtime/types.ts +0 -282
- package/src/state/binding.ts +0 -381
- package/src/state/environment-object.ts +0 -444
- package/src/state/environment.ts +0 -351
- package/src/state/index.ts +0 -179
- package/src/state/observed-object.ts +0 -405
- package/src/state/state-manager.ts +0 -366
- package/src/state/state.ts +0 -339
- package/src/state/types.ts +0 -192
- package/src/sui-compat.ts +0 -163
- package/src/validation/__tests__/phase-1d-integration.test.ts +0 -558
- package/src/validation/advanced-debugging.ts +0 -860
- package/src/validation/build-time/detection.ts +0 -373
- package/src/validation/build-time/index.ts +0 -222
- package/src/validation/build-time/plugins.ts +0 -515
- package/src/validation/build-time/rules.ts +0 -624
- package/src/validation/build-time/transformer.ts +0 -372
- package/src/validation/build-time/types.ts +0 -232
- package/src/validation/comprehensive.ts +0 -1272
- package/src/validation/debug-tools.ts +0 -724
- package/src/validation/developer-experience.ts +0 -712
- package/src/validation/documentation-integration.ts +0 -835
- package/src/validation/enhanced-runtime.ts +0 -765
- package/src/validation/error-reporting.ts +0 -587
- package/src/validation/ide-integration.ts +0 -845
- package/src/validation/index.ts +0 -353
- package/src/validation/lifecycle-validation.ts +0 -636
- package/src/validation/performance-optimizer.ts +0 -599
- package/src/validation/plugin-registration.ts +0 -249
- package/src/validation/production-bypass.ts +0 -466
- package/src/validation/simple.ts +0 -465
- package/src/viewport/adapters/web-adapter.ts +0 -1385
- package/src/viewport/components.ts +0 -505
- package/src/viewport/environment.ts +0 -173
- package/src/viewport/index.ts +0 -290
- package/src/viewport/platform-detection.ts +0 -431
- package/src/viewport/types.ts +0 -371
- 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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"}
|