@tachui/core 0.7.0-alpha1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +363 -0
- package/dist/assets/Asset.cjs +2 -0
- package/dist/assets/Asset.cjs.map +1 -0
- package/dist/assets/Asset.d.ts +11 -0
- package/dist/assets/Asset.d.ts.map +1 -0
- package/dist/assets/Asset.js +9 -0
- package/dist/assets/Asset.js.map +1 -0
- package/dist/assets/AssetCollection.cjs +2 -0
- package/dist/assets/AssetCollection.cjs.map +1 -0
- package/dist/assets/AssetCollection.d.ts +14 -0
- package/dist/assets/AssetCollection.d.ts.map +1 -0
- package/dist/assets/AssetCollection.js +44 -0
- package/dist/assets/AssetCollection.js.map +1 -0
- package/dist/assets/ColorAsset.cjs +2 -0
- package/dist/assets/ColorAsset.cjs.map +1 -0
- package/dist/assets/ColorAsset.d.ts +31 -0
- package/dist/assets/ColorAsset.d.ts.map +1 -0
- package/dist/assets/ColorAsset.js +114 -0
- package/dist/assets/ColorAsset.js.map +1 -0
- package/dist/assets/FontAsset.cjs +9 -0
- package/dist/assets/FontAsset.cjs.map +1 -0
- package/dist/assets/FontAsset.d.ts +114 -0
- package/dist/assets/FontAsset.d.ts.map +1 -0
- package/dist/assets/FontAsset.js +173 -0
- package/dist/assets/FontAsset.js.map +1 -0
- package/dist/assets/ImageAsset.cjs +2 -0
- package/dist/assets/ImageAsset.cjs.map +1 -0
- package/dist/assets/ImageAsset.d.ts +35 -0
- package/dist/assets/ImageAsset.d.ts.map +1 -0
- package/dist/assets/ImageAsset.js +39 -0
- package/dist/assets/ImageAsset.js.map +1 -0
- package/dist/assets/index.cjs +2 -0
- package/dist/assets/index.cjs.map +1 -0
- package/dist/assets/index.d.ts +26 -0
- package/dist/assets/index.d.ts.map +1 -0
- package/dist/assets/index.js +119 -0
- package/dist/assets/index.js.map +1 -0
- package/dist/assets/types.d.ts +70 -0
- package/dist/assets/types.d.ts.map +1 -0
- package/dist/bundles/common.d.ts +24 -0
- package/dist/bundles/common.d.ts.map +1 -0
- package/dist/bundles/complete.d.ts +27 -0
- package/dist/bundles/complete.d.ts.map +1 -0
- package/dist/bundles/essential.d.ts +24 -0
- package/dist/bundles/essential.d.ts.map +1 -0
- package/dist/bundles/minimal.d.ts +24 -0
- package/dist/bundles/minimal.d.ts.map +1 -0
- package/dist/bundles/production-minimal.d.ts +35 -0
- package/dist/bundles/production-minimal.d.ts.map +1 -0
- package/dist/common.cjs +2 -0
- package/dist/common.cjs.map +1 -0
- package/dist/common.js +985 -0
- package/dist/common.js.map +1 -0
- package/dist/compiler/advanced-parser.cjs +5 -0
- package/dist/compiler/advanced-parser.cjs.map +1 -0
- package/dist/compiler/advanced-parser.d.ts +113 -0
- package/dist/compiler/advanced-parser.d.ts.map +1 -0
- package/dist/compiler/advanced-parser.js +440 -0
- package/dist/compiler/advanced-parser.js.map +1 -0
- package/dist/compiler/codegen.cjs +6 -0
- package/dist/compiler/codegen.cjs.map +1 -0
- package/dist/compiler/codegen.d.ts +20 -0
- package/dist/compiler/codegen.d.ts.map +1 -0
- package/dist/compiler/codegen.js +241 -0
- package/dist/compiler/codegen.js.map +1 -0
- package/dist/compiler/enhanced-codegen.cjs +6 -0
- package/dist/compiler/enhanced-codegen.cjs.map +1 -0
- package/dist/compiler/enhanced-codegen.d.ts +121 -0
- package/dist/compiler/enhanced-codegen.d.ts.map +1 -0
- package/dist/compiler/enhanced-codegen.js +347 -0
- package/dist/compiler/enhanced-codegen.js.map +1 -0
- package/dist/compiler/index.cjs +2 -0
- package/dist/compiler/index.cjs.map +1 -0
- package/dist/compiler/index.d.ts +14 -0
- package/dist/compiler/index.d.ts.map +1 -0
- package/dist/compiler/index.js +13 -0
- package/dist/compiler/index.js.map +1 -0
- package/dist/compiler/parser.cjs +5 -0
- package/dist/compiler/parser.cjs.map +1 -0
- package/dist/compiler/parser.d.ts +12 -0
- package/dist/compiler/parser.d.ts.map +1 -0
- package/dist/compiler/parser.js +275 -0
- package/dist/compiler/parser.js.map +1 -0
- package/dist/compiler/plugin.cjs +33 -0
- package/dist/compiler/plugin.cjs.map +1 -0
- package/dist/compiler/plugin.d.ts +13 -0
- package/dist/compiler/plugin.d.ts.map +1 -0
- package/dist/compiler/plugin.js +103 -0
- package/dist/compiler/plugin.js.map +1 -0
- package/dist/compiler/types.d.ts +149 -0
- package/dist/compiler/types.d.ts.map +1 -0
- package/dist/components/BasicInput.cjs +2 -0
- package/dist/components/BasicInput.cjs.map +1 -0
- package/dist/components/BasicInput.d.ts +116 -0
- package/dist/components/BasicInput.d.ts.map +1 -0
- package/dist/components/BasicInput.js +182 -0
- package/dist/components/BasicInput.js.map +1 -0
- package/dist/components/Button.cjs +7 -0
- package/dist/components/Button.cjs.map +1 -0
- package/dist/components/Button.d.ts +252 -0
- package/dist/components/Button.d.ts.map +1 -0
- package/dist/components/Button.js +408 -0
- package/dist/components/Button.js.map +1 -0
- package/dist/components/Divider.cjs +2 -0
- package/dist/components/Divider.cjs.map +1 -0
- package/dist/components/Divider.d.ts +141 -0
- package/dist/components/Divider.d.ts.map +1 -0
- package/dist/components/Divider.js +187 -0
- package/dist/components/Divider.js.map +1 -0
- package/dist/components/EnhancedLink.cjs +2 -0
- package/dist/components/EnhancedLink.cjs.map +1 -0
- package/dist/components/EnhancedLink.d.ts +365 -0
- package/dist/components/EnhancedLink.d.ts.map +1 -0
- package/dist/components/EnhancedLink.js +345 -0
- package/dist/components/EnhancedLink.js.map +1 -0
- package/dist/components/Form.cjs +2 -0
- package/dist/components/Form.cjs.map +1 -0
- package/dist/components/Form.d.ts +141 -0
- package/dist/components/Form.d.ts.map +1 -0
- package/dist/components/Form.js +244 -0
- package/dist/components/Form.js.map +1 -0
- package/dist/components/Grid.cjs +2 -0
- package/dist/components/Grid.cjs.map +1 -0
- package/dist/components/Grid.d.ts +698 -0
- package/dist/components/Grid.d.ts.map +1 -0
- package/dist/components/Grid.js +1045 -0
- package/dist/components/Grid.js.map +1 -0
- package/dist/components/GridResponsive.cjs +2 -0
- package/dist/components/GridResponsive.cjs.map +1 -0
- package/dist/components/GridResponsive.d.ts +214 -0
- package/dist/components/GridResponsive.d.ts.map +1 -0
- package/dist/components/GridResponsive.js +382 -0
- package/dist/components/GridResponsive.js.map +1 -0
- package/dist/components/Image.cjs +2 -0
- package/dist/components/Image.cjs.map +1 -0
- package/dist/components/Image.d.ts +162 -0
- package/dist/components/Image.d.ts.map +1 -0
- package/dist/components/Image.js +212 -0
- package/dist/components/Image.js.map +1 -0
- package/dist/components/List.cjs +2 -0
- package/dist/components/List.cjs.map +1 -0
- package/dist/components/List.d.ts +287 -0
- package/dist/components/List.d.ts.map +1 -0
- package/dist/components/List.js +561 -0
- package/dist/components/List.js.map +1 -0
- package/dist/components/Menu.cjs +2 -0
- package/dist/components/Menu.cjs.map +1 -0
- package/dist/components/Menu.d.ts +159 -0
- package/dist/components/Menu.d.ts.map +1 -0
- package/dist/components/Menu.js +443 -0
- package/dist/components/Menu.js.map +1 -0
- package/dist/components/Picker.cjs +2 -0
- package/dist/components/Picker.cjs.map +1 -0
- package/dist/components/Picker.d.ts +153 -0
- package/dist/components/Picker.d.ts.map +1 -0
- package/dist/components/Picker.js +478 -0
- package/dist/components/Picker.js.map +1 -0
- package/dist/components/ScrollView.cjs +6 -0
- package/dist/components/ScrollView.cjs.map +1 -0
- package/dist/components/ScrollView.d.ts +222 -0
- package/dist/components/ScrollView.d.ts.map +1 -0
- package/dist/components/ScrollView.js +363 -0
- package/dist/components/ScrollView.js.map +1 -0
- package/dist/components/Section.cjs +2 -0
- package/dist/components/Section.cjs.map +1 -0
- package/dist/components/Section.d.ts +153 -0
- package/dist/components/Section.d.ts.map +1 -0
- package/dist/components/Section.js +323 -0
- package/dist/components/Section.js.map +1 -0
- package/dist/components/Show.cjs +2 -0
- package/dist/components/Show.cjs.map +1 -0
- package/dist/components/Show.d.ts +64 -0
- package/dist/components/Show.d.ts.map +1 -0
- package/dist/components/Show.js +112 -0
- package/dist/components/Show.js.map +1 -0
- package/dist/components/Spacer.cjs +2 -0
- package/dist/components/Spacer.cjs.map +1 -0
- package/dist/components/Spacer.d.ts +35 -0
- package/dist/components/Spacer.d.ts.map +1 -0
- package/dist/components/Spacer.js +53 -0
- package/dist/components/Spacer.js.map +1 -0
- package/dist/components/Text.cjs +2 -0
- package/dist/components/Text.cjs.map +1 -0
- package/dist/components/Text.d.ts +242 -0
- package/dist/components/Text.d.ts.map +1 -0
- package/dist/components/Text.js +193 -0
- package/dist/components/Text.js.map +1 -0
- package/dist/components/Toggle.cjs +2 -0
- package/dist/components/Toggle.cjs.map +1 -0
- package/dist/components/Toggle.d.ts +207 -0
- package/dist/components/Toggle.d.ts.map +1 -0
- package/dist/components/Toggle.js +477 -0
- package/dist/components/Toggle.js.map +1 -0
- package/dist/components/index.cjs +2 -0
- package/dist/components/index.cjs.map +1 -0
- package/dist/components/index.d.ts +45 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +104 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/wrapper.cjs +2 -0
- package/dist/components/wrapper.cjs.map +1 -0
- package/dist/components/wrapper.d.ts +249 -0
- package/dist/components/wrapper.d.ts.map +1 -0
- package/dist/components/wrapper.js +484 -0
- package/dist/components/wrapper.js.map +1 -0
- package/dist/concatenation/concatenatable.cjs +2 -0
- package/dist/concatenation/concatenatable.cjs.map +1 -0
- package/dist/concatenation/concatenatable.d.ts +63 -0
- package/dist/concatenation/concatenatable.d.ts.map +1 -0
- package/dist/concatenation/concatenatable.js +118 -0
- package/dist/concatenation/concatenatable.js.map +1 -0
- package/dist/concatenation/concatenated-component.cjs +2 -0
- package/dist/concatenation/concatenated-component.cjs.map +1 -0
- package/dist/concatenation/concatenated-component.d.ts +110 -0
- package/dist/concatenation/concatenated-component.d.ts.map +1 -0
- package/dist/concatenation/concatenated-component.js +276 -0
- package/dist/concatenation/concatenated-component.js.map +1 -0
- package/dist/concatenation/index.d.ts +13 -0
- package/dist/concatenation/index.d.ts.map +1 -0
- package/dist/concatenation/text-optimizer.cjs +2 -0
- package/dist/concatenation/text-optimizer.cjs.map +1 -0
- package/dist/concatenation/text-optimizer.d.ts +104 -0
- package/dist/concatenation/text-optimizer.d.ts.map +1 -0
- package/dist/concatenation/text-optimizer.js +236 -0
- package/dist/concatenation/text-optimizer.js.map +1 -0
- package/dist/concatenation/types.cjs +2 -0
- package/dist/concatenation/types.cjs.map +1 -0
- package/dist/concatenation/types.d.ts +88 -0
- package/dist/concatenation/types.d.ts.map +1 -0
- package/dist/concatenation/types.js +13 -0
- package/dist/concatenation/types.js.map +1 -0
- package/dist/constants/frame-utils.cjs +2 -0
- package/dist/constants/frame-utils.cjs.map +1 -0
- package/dist/constants/frame-utils.d.ts +68 -0
- package/dist/constants/frame-utils.d.ts.map +1 -0
- package/dist/constants/frame-utils.js +116 -0
- package/dist/constants/frame-utils.js.map +1 -0
- package/dist/constants/index.d.ts +8 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/layout.cjs +2 -0
- package/dist/constants/layout.cjs.map +1 -0
- package/dist/constants/layout.d.ts +60 -0
- package/dist/constants/layout.d.ts.map +1 -0
- package/dist/constants/layout.js +46 -0
- package/dist/constants/layout.js.map +1 -0
- package/dist/css-classes/component-base.cjs +2 -0
- package/dist/css-classes/component-base.cjs.map +1 -0
- package/dist/css-classes/component-base.d.ts +40 -0
- package/dist/css-classes/component-base.d.ts.map +1 -0
- package/dist/css-classes/component-base.js +62 -0
- package/dist/css-classes/component-base.js.map +1 -0
- package/dist/css-classes/css-class-manager.cjs +2 -0
- package/dist/css-classes/css-class-manager.cjs.map +1 -0
- package/dist/css-classes/css-class-manager.d.ts +89 -0
- package/dist/css-classes/css-class-manager.d.ts.map +1 -0
- package/dist/css-classes/css-class-manager.js +209 -0
- package/dist/css-classes/css-class-manager.js.map +1 -0
- package/dist/css-classes/dom-integration.cjs +2 -0
- package/dist/css-classes/dom-integration.cjs.map +1 -0
- package/dist/css-classes/dom-integration.d.ts +76 -0
- package/dist/css-classes/dom-integration.d.ts.map +1 -0
- package/dist/css-classes/dom-integration.js +67 -0
- package/dist/css-classes/dom-integration.js.map +1 -0
- package/dist/css-classes/enhanced-renderer.cjs +2 -0
- package/dist/css-classes/enhanced-renderer.cjs.map +1 -0
- package/dist/css-classes/enhanced-renderer.d.ts +42 -0
- package/dist/css-classes/enhanced-renderer.d.ts.map +1 -0
- package/dist/css-classes/enhanced-renderer.js +73 -0
- package/dist/css-classes/enhanced-renderer.js.map +1 -0
- package/dist/css-classes/index.d.ts +14 -0
- package/dist/css-classes/index.d.ts.map +1 -0
- package/dist/css-classes/types.d.ts +59 -0
- package/dist/css-classes/types.d.ts.map +1 -0
- package/dist/css-classes/utilities.cjs +2 -0
- package/dist/css-classes/utilities.cjs.map +1 -0
- package/dist/css-classes/utilities.d.ts +104 -0
- package/dist/css-classes/utilities.d.ts.map +1 -0
- package/dist/css-classes/utilities.js +41 -0
- package/dist/css-classes/utilities.js.map +1 -0
- package/dist/debug/index.d.ts +61 -0
- package/dist/debug/index.d.ts.map +1 -0
- package/dist/debug.cjs +52 -0
- package/dist/debug.cjs.map +1 -0
- package/dist/debug.js +179 -0
- package/dist/debug.js.map +1 -0
- package/dist/developer-experience/enhanced-errors.d.ts +128 -0
- package/dist/developer-experience/enhanced-errors.d.ts.map +1 -0
- package/dist/developer-experience/enhanced-types.d.ts +281 -0
- package/dist/developer-experience/enhanced-types.d.ts.map +1 -0
- package/dist/developer-experience/index.d.ts +44 -0
- package/dist/developer-experience/index.d.ts.map +1 -0
- package/dist/essential.cjs +2 -0
- package/dist/essential.cjs.map +1 -0
- package/dist/essential.js +968 -0
- package/dist/essential.js.map +1 -0
- package/dist/gradients/css-generator.cjs +2 -0
- package/dist/gradients/css-generator.cjs.map +1 -0
- package/dist/gradients/css-generator.d.ts +10 -0
- package/dist/gradients/css-generator.d.ts.map +1 -0
- package/dist/gradients/css-generator.js +100 -0
- package/dist/gradients/css-generator.js.map +1 -0
- package/dist/gradients/examples.cjs +2 -0
- package/dist/gradients/examples.cjs.map +1 -0
- package/dist/gradients/examples.d.ts +432 -0
- package/dist/gradients/examples.d.ts.map +1 -0
- package/dist/gradients/examples.js +555 -0
- package/dist/gradients/examples.js.map +1 -0
- package/dist/gradients/gradient-asset.cjs +2 -0
- package/dist/gradients/gradient-asset.cjs.map +1 -0
- package/dist/gradients/gradient-asset.d.ts +10 -0
- package/dist/gradients/gradient-asset.d.ts.map +1 -0
- package/dist/gradients/gradient-asset.js +22 -0
- package/dist/gradients/gradient-asset.js.map +1 -0
- package/dist/gradients/index.cjs +2 -0
- package/dist/gradients/index.cjs.map +1 -0
- package/dist/gradients/index.d.ts +19 -0
- package/dist/gradients/index.d.ts.map +1 -0
- package/dist/gradients/index.js +78 -0
- package/dist/gradients/index.js.map +1 -0
- package/dist/gradients/performance.cjs +2 -0
- package/dist/gradients/performance.cjs.map +1 -0
- package/dist/gradients/performance.d.ts +146 -0
- package/dist/gradients/performance.d.ts.map +1 -0
- package/dist/gradients/performance.js +237 -0
- package/dist/gradients/performance.js.map +1 -0
- package/dist/gradients/presets.cjs +2 -0
- package/dist/gradients/presets.cjs.map +1 -0
- package/dist/gradients/presets.d.ts +165 -0
- package/dist/gradients/presets.d.ts.map +1 -0
- package/dist/gradients/presets.js +254 -0
- package/dist/gradients/presets.js.map +1 -0
- package/dist/gradients/reactive.cjs +2 -0
- package/dist/gradients/reactive.cjs.map +1 -0
- package/dist/gradients/reactive.d.ts +167 -0
- package/dist/gradients/reactive.d.ts.map +1 -0
- package/dist/gradients/reactive.js +239 -0
- package/dist/gradients/reactive.js.map +1 -0
- package/dist/gradients/state-gradient-asset.cjs +2 -0
- package/dist/gradients/state-gradient-asset.cjs.map +1 -0
- package/dist/gradients/state-gradient-asset.d.ts +67 -0
- package/dist/gradients/state-gradient-asset.d.ts.map +1 -0
- package/dist/gradients/state-gradient-asset.js +111 -0
- package/dist/gradients/state-gradient-asset.js.map +1 -0
- package/dist/gradients/types.d.ts +94 -0
- package/dist/gradients/types.d.ts.map +1 -0
- package/dist/gradients/utils.cjs +2 -0
- package/dist/gradients/utils.cjs.map +1 -0
- package/dist/gradients/utils.d.ts +313 -0
- package/dist/gradients/utils.d.ts.map +1 -0
- package/dist/gradients/utils.js +385 -0
- package/dist/gradients/utils.js.map +1 -0
- package/dist/gradients/validation.cjs +2 -0
- package/dist/gradients/validation.cjs.map +1 -0
- package/dist/gradients/validation.d.ts +156 -0
- package/dist/gradients/validation.d.ts.map +1 -0
- package/dist/gradients/validation.js +209 -0
- package/dist/gradients/validation.js.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +965 -0
- package/dist/index.js.map +1 -0
- package/dist/index2.cjs +2 -0
- package/dist/index2.cjs.map +1 -0
- package/dist/index2.js +293 -0
- package/dist/index2.js.map +1 -0
- package/dist/lifecycle/hooks.cjs +2 -0
- package/dist/lifecycle/hooks.cjs.map +1 -0
- package/dist/lifecycle/hooks.d.ts +101 -0
- package/dist/lifecycle/hooks.d.ts.map +1 -0
- package/dist/lifecycle/hooks.js +159 -0
- package/dist/lifecycle/hooks.js.map +1 -0
- package/dist/minimal-prod.cjs +2 -0
- package/dist/minimal-prod.cjs.map +1 -0
- package/dist/minimal-prod.js +193 -0
- package/dist/minimal-prod.js.map +1 -0
- package/dist/minimal.cjs +2 -0
- package/dist/minimal.cjs.map +1 -0
- package/dist/minimal.js +968 -0
- package/dist/minimal.js.map +1 -0
- package/dist/modifiers/as-html-validator.cjs +2 -0
- package/dist/modifiers/as-html-validator.cjs.map +1 -0
- package/dist/modifiers/as-html-validator.d.ts +20 -0
- package/dist/modifiers/as-html-validator.d.ts.map +1 -0
- package/dist/modifiers/as-html-validator.js +47 -0
- package/dist/modifiers/as-html-validator.js.map +1 -0
- package/dist/modifiers/as-html.cjs +2 -0
- package/dist/modifiers/as-html.cjs.map +1 -0
- package/dist/modifiers/as-html.d.ts +65 -0
- package/dist/modifiers/as-html.d.ts.map +1 -0
- package/dist/modifiers/as-html.js +71 -0
- package/dist/modifiers/as-html.js.map +1 -0
- package/dist/modifiers/attributes.cjs +2 -0
- package/dist/modifiers/attributes.cjs.map +1 -0
- package/dist/modifiers/attributes.d.ts +203 -0
- package/dist/modifiers/attributes.d.ts.map +1 -0
- package/dist/modifiers/attributes.js +272 -0
- package/dist/modifiers/attributes.js.map +1 -0
- package/dist/modifiers/backdrop.cjs +2 -0
- package/dist/modifiers/backdrop.cjs.map +1 -0
- package/dist/modifiers/backdrop.d.ts +59 -0
- package/dist/modifiers/backdrop.d.ts.map +1 -0
- package/dist/modifiers/backdrop.js +109 -0
- package/dist/modifiers/backdrop.js.map +1 -0
- package/dist/modifiers/background.cjs +2 -0
- package/dist/modifiers/background.cjs.map +1 -0
- package/dist/modifiers/background.d.ts +21 -0
- package/dist/modifiers/background.d.ts.map +1 -0
- package/dist/modifiers/background.js +67 -0
- package/dist/modifiers/background.js.map +1 -0
- package/dist/modifiers/base.cjs +25 -0
- package/dist/modifiers/base.cjs.map +1 -0
- package/dist/modifiers/base.d.ts +156 -0
- package/dist/modifiers/base.d.ts.map +1 -0
- package/dist/modifiers/base.js +745 -0
- package/dist/modifiers/base.js.map +1 -0
- package/dist/modifiers/basic-sanitizer.cjs +2 -0
- package/dist/modifiers/basic-sanitizer.cjs.map +1 -0
- package/dist/modifiers/basic-sanitizer.d.ts +54 -0
- package/dist/modifiers/basic-sanitizer.d.ts.map +1 -0
- package/dist/modifiers/basic-sanitizer.js +162 -0
- package/dist/modifiers/basic-sanitizer.js.map +1 -0
- package/dist/modifiers/border.cjs +2 -0
- package/dist/modifiers/border.cjs.map +1 -0
- package/dist/modifiers/border.d.ts +217 -0
- package/dist/modifiers/border.d.ts.map +1 -0
- package/dist/modifiers/border.js +160 -0
- package/dist/modifiers/border.js.map +1 -0
- package/dist/modifiers/builder.cjs +2 -0
- package/dist/modifiers/builder.cjs.map +1 -0
- package/dist/modifiers/builder.d.ts +377 -0
- package/dist/modifiers/builder.d.ts.map +1 -0
- package/dist/modifiers/builder.js +930 -0
- package/dist/modifiers/builder.js.map +1 -0
- package/dist/modifiers/core.cjs +2 -0
- package/dist/modifiers/core.cjs.map +1 -0
- package/dist/modifiers/core.d.ts +407 -0
- package/dist/modifiers/core.d.ts.map +1 -0
- package/dist/modifiers/core.js +398 -0
- package/dist/modifiers/core.js.map +1 -0
- package/dist/modifiers/css.cjs +2 -0
- package/dist/modifiers/css.cjs.map +1 -0
- package/dist/modifiers/css.d.ts +86 -0
- package/dist/modifiers/css.d.ts.map +1 -0
- package/dist/modifiers/css.js +50 -0
- package/dist/modifiers/css.js.map +1 -0
- package/dist/modifiers/effects.cjs +2 -0
- package/dist/modifiers/effects.cjs.map +1 -0
- package/dist/modifiers/effects.d.ts +159 -0
- package/dist/modifiers/effects.d.ts.map +1 -0
- package/dist/modifiers/effects.js +178 -0
- package/dist/modifiers/effects.js.map +1 -0
- package/dist/modifiers/elements.cjs +2 -0
- package/dist/modifiers/elements.cjs.map +1 -0
- package/dist/modifiers/elements.d.ts +240 -0
- package/dist/modifiers/elements.d.ts.map +1 -0
- package/dist/modifiers/elements.js +216 -0
- package/dist/modifiers/elements.js.map +1 -0
- package/dist/modifiers/filters.cjs +2 -0
- package/dist/modifiers/filters.cjs.map +1 -0
- package/dist/modifiers/filters.d.ts +275 -0
- package/dist/modifiers/filters.d.ts.map +1 -0
- package/dist/modifiers/filters.js +223 -0
- package/dist/modifiers/filters.js.map +1 -0
- package/dist/modifiers/flexbox.cjs +2 -0
- package/dist/modifiers/flexbox.cjs.map +1 -0
- package/dist/modifiers/flexbox.d.ts +82 -0
- package/dist/modifiers/flexbox.d.ts.map +1 -0
- package/dist/modifiers/flexbox.js +56 -0
- package/dist/modifiers/flexbox.js.map +1 -0
- package/dist/modifiers/font.cjs +2 -0
- package/dist/modifiers/font.cjs.map +1 -0
- package/dist/modifiers/font.d.ts +71 -0
- package/dist/modifiers/font.d.ts.map +1 -0
- package/dist/modifiers/font.js +60 -0
- package/dist/modifiers/font.js.map +1 -0
- package/dist/modifiers/grid.cjs +2 -0
- package/dist/modifiers/grid.cjs.map +1 -0
- package/dist/modifiers/grid.d.ts +92 -0
- package/dist/modifiers/grid.d.ts.map +1 -0
- package/dist/modifiers/grid.js +92 -0
- package/dist/modifiers/grid.js.map +1 -0
- package/dist/modifiers/index.d.ts +58 -0
- package/dist/modifiers/index.d.ts.map +1 -0
- package/dist/modifiers/margin.cjs +2 -0
- package/dist/modifiers/margin.cjs.map +1 -0
- package/dist/modifiers/margin.d.ts +128 -0
- package/dist/modifiers/margin.d.ts.map +1 -0
- package/dist/modifiers/margin.js +65 -0
- package/dist/modifiers/margin.js.map +1 -0
- package/dist/modifiers/padding.cjs +2 -0
- package/dist/modifiers/padding.cjs.map +1 -0
- package/dist/modifiers/padding.d.ts +204 -0
- package/dist/modifiers/padding.d.ts.map +1 -0
- package/dist/modifiers/padding.js +109 -0
- package/dist/modifiers/padding.js.map +1 -0
- package/dist/modifiers/registry.cjs +2 -0
- package/dist/modifiers/registry.cjs.map +1 -0
- package/dist/modifiers/registry.d.ts +69 -0
- package/dist/modifiers/registry.d.ts.map +1 -0
- package/dist/modifiers/registry.js +163 -0
- package/dist/modifiers/registry.js.map +1 -0
- package/dist/modifiers/responsive/advanced-utilities.cjs +2 -0
- package/dist/modifiers/responsive/advanced-utilities.cjs.map +1 -0
- package/dist/modifiers/responsive/advanced-utilities.d.ts +118 -0
- package/dist/modifiers/responsive/advanced-utilities.d.ts.map +1 -0
- package/dist/modifiers/responsive/advanced-utilities.js +291 -0
- package/dist/modifiers/responsive/advanced-utilities.js.map +1 -0
- package/dist/modifiers/responsive/breakpoints.cjs +2 -0
- package/dist/modifiers/responsive/breakpoints.cjs.map +1 -0
- package/dist/modifiers/responsive/breakpoints.d.ts +81 -0
- package/dist/modifiers/responsive/breakpoints.d.ts.map +1 -0
- package/dist/modifiers/responsive/breakpoints.js +168 -0
- package/dist/modifiers/responsive/breakpoints.js.map +1 -0
- package/dist/modifiers/responsive/css-generator.cjs +5 -0
- package/dist/modifiers/responsive/css-generator.cjs.map +1 -0
- package/dist/modifiers/responsive/css-generator.d.ts +100 -0
- package/dist/modifiers/responsive/css-generator.d.ts.map +1 -0
- package/dist/modifiers/responsive/css-generator.js +261 -0
- package/dist/modifiers/responsive/css-generator.js.map +1 -0
- package/dist/modifiers/responsive/dev-tools.cjs +77 -0
- package/dist/modifiers/responsive/dev-tools.cjs.map +1 -0
- package/dist/modifiers/responsive/dev-tools.d.ts +107 -0
- package/dist/modifiers/responsive/dev-tools.d.ts.map +1 -0
- package/dist/modifiers/responsive/dev-tools.js +380 -0
- package/dist/modifiers/responsive/dev-tools.js.map +1 -0
- package/dist/modifiers/responsive/index.d.ts +28 -0
- package/dist/modifiers/responsive/index.d.ts.map +1 -0
- package/dist/modifiers/responsive/layout-patterns.cjs +2 -0
- package/dist/modifiers/responsive/layout-patterns.cjs.map +1 -0
- package/dist/modifiers/responsive/layout-patterns.d.ts +230 -0
- package/dist/modifiers/responsive/layout-patterns.d.ts.map +1 -0
- package/dist/modifiers/responsive/layout-patterns.js +254 -0
- package/dist/modifiers/responsive/layout-patterns.js.map +1 -0
- package/dist/modifiers/responsive/performance.cjs +3 -0
- package/dist/modifiers/responsive/performance.cjs.map +1 -0
- package/dist/modifiers/responsive/performance.d.ts +130 -0
- package/dist/modifiers/responsive/performance.d.ts.map +1 -0
- package/dist/modifiers/responsive/performance.js +212 -0
- package/dist/modifiers/responsive/performance.js.map +1 -0
- package/dist/modifiers/responsive/responsive-builder.cjs +2 -0
- package/dist/modifiers/responsive/responsive-builder.cjs.map +1 -0
- package/dist/modifiers/responsive/responsive-builder.d.ts +133 -0
- package/dist/modifiers/responsive/responsive-builder.d.ts.map +1 -0
- package/dist/modifiers/responsive/responsive-builder.js +272 -0
- package/dist/modifiers/responsive/responsive-builder.js.map +1 -0
- package/dist/modifiers/responsive/responsive-modifier.cjs +3 -0
- package/dist/modifiers/responsive/responsive-modifier.cjs.map +1 -0
- package/dist/modifiers/responsive/responsive-modifier.d.ts +123 -0
- package/dist/modifiers/responsive/responsive-modifier.d.ts.map +1 -0
- package/dist/modifiers/responsive/responsive-modifier.js +204 -0
- package/dist/modifiers/responsive/responsive-modifier.js.map +1 -0
- package/dist/modifiers/responsive/types.cjs +2 -0
- package/dist/modifiers/responsive/types.cjs.map +1 -0
- package/dist/modifiers/responsive/types.d.ts +183 -0
- package/dist/modifiers/responsive/types.d.ts.map +1 -0
- package/dist/modifiers/responsive/types.js +26 -0
- package/dist/modifiers/responsive/types.js.map +1 -0
- package/dist/modifiers/responsive/utilities.cjs +16 -0
- package/dist/modifiers/responsive/utilities.cjs.map +1 -0
- package/dist/modifiers/responsive/utilities.d.ts +149 -0
- package/dist/modifiers/responsive/utilities.d.ts.map +1 -0
- package/dist/modifiers/responsive/utilities.js +273 -0
- package/dist/modifiers/responsive/utilities.js.map +1 -0
- package/dist/modifiers/scroll.cjs +2 -0
- package/dist/modifiers/scroll.cjs.map +1 -0
- package/dist/modifiers/scroll.d.ts +143 -0
- package/dist/modifiers/scroll.d.ts.map +1 -0
- package/dist/modifiers/scroll.js +82 -0
- package/dist/modifiers/scroll.js.map +1 -0
- package/dist/modifiers/shadows.cjs +2 -0
- package/dist/modifiers/shadows.cjs.map +1 -0
- package/dist/modifiers/shadows.d.ts +114 -0
- package/dist/modifiers/shadows.d.ts.map +1 -0
- package/dist/modifiers/shadows.js +147 -0
- package/dist/modifiers/shadows.js.map +1 -0
- package/dist/modifiers/size.cjs +2 -0
- package/dist/modifiers/size.cjs.map +1 -0
- package/dist/modifiers/size.d.ts +113 -0
- package/dist/modifiers/size.d.ts.map +1 -0
- package/dist/modifiers/size.js +74 -0
- package/dist/modifiers/size.js.map +1 -0
- package/dist/modifiers/text.cjs +2 -0
- package/dist/modifiers/text.cjs.map +1 -0
- package/dist/modifiers/text.d.ts +147 -0
- package/dist/modifiers/text.d.ts.map +1 -0
- package/dist/modifiers/text.js +166 -0
- package/dist/modifiers/text.js.map +1 -0
- package/dist/modifiers/transformations.cjs +2 -0
- package/dist/modifiers/transformations.cjs.map +1 -0
- package/dist/modifiers/transformations.d.ts +329 -0
- package/dist/modifiers/transformations.d.ts.map +1 -0
- package/dist/modifiers/transformations.js +216 -0
- package/dist/modifiers/transformations.js.map +1 -0
- package/dist/modifiers/transitions.cjs +2 -0
- package/dist/modifiers/transitions.cjs.map +1 -0
- package/dist/modifiers/transitions.d.ts +98 -0
- package/dist/modifiers/transitions.d.ts.map +1 -0
- package/dist/modifiers/transitions.js +102 -0
- package/dist/modifiers/transitions.js.map +1 -0
- package/dist/modifiers/types.cjs +2 -0
- package/dist/modifiers/types.cjs.map +1 -0
- package/dist/modifiers/types.d.ts +655 -0
- package/dist/modifiers/types.d.ts.map +1 -0
- package/dist/modifiers/types.js +5 -0
- package/dist/modifiers/types.js.map +1 -0
- package/dist/modifiers/typography.cjs +2 -0
- package/dist/modifiers/typography.cjs.map +1 -0
- package/dist/modifiers/typography.d.ts +192 -0
- package/dist/modifiers/typography.d.ts.map +1 -0
- package/dist/modifiers/typography.js +76 -0
- package/dist/modifiers/typography.js.map +1 -0
- package/dist/modifiers/utility.cjs +2 -0
- package/dist/modifiers/utility.cjs.map +1 -0
- package/dist/modifiers/utility.d.ts +69 -0
- package/dist/modifiers/utility.d.ts.map +1 -0
- package/dist/modifiers/utility.js +71 -0
- package/dist/modifiers/utility.js.map +1 -0
- package/dist/modifiers/utils.cjs +2 -0
- package/dist/modifiers/utils.cjs.map +1 -0
- package/dist/modifiers/utils.d.ts +75 -0
- package/dist/modifiers/utils.d.ts.map +1 -0
- package/dist/modifiers/utils.js +250 -0
- package/dist/modifiers/utils.js.map +1 -0
- package/dist/plugins/component-loader-registry.d.ts +143 -0
- package/dist/plugins/component-loader-registry.d.ts.map +1 -0
- package/dist/plugins/index.cjs +2 -0
- package/dist/plugins/index.cjs.map +1 -0
- package/dist/plugins/index.d.ts +17 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +34 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/legacy-adapter.cjs +2 -0
- package/dist/plugins/legacy-adapter.cjs.map +1 -0
- package/dist/plugins/legacy-adapter.d.ts +35 -0
- package/dist/plugins/legacy-adapter.d.ts.map +1 -0
- package/dist/plugins/legacy-adapter.js +30 -0
- package/dist/plugins/legacy-adapter.js.map +1 -0
- package/dist/plugins/simplified-component-registry.cjs +2 -0
- package/dist/plugins/simplified-component-registry.cjs.map +1 -0
- package/dist/plugins/simplified-component-registry.d.ts +40 -0
- package/dist/plugins/simplified-component-registry.d.ts.map +1 -0
- package/dist/plugins/simplified-component-registry.js +71 -0
- package/dist/plugins/simplified-component-registry.js.map +1 -0
- package/dist/plugins/simplified-error-handler.cjs +2 -0
- package/dist/plugins/simplified-error-handler.cjs.map +1 -0
- package/dist/plugins/simplified-error-handler.d.ts +83 -0
- package/dist/plugins/simplified-error-handler.d.ts.map +1 -0
- package/dist/plugins/simplified-error-handler.js +154 -0
- package/dist/plugins/simplified-error-handler.js.map +1 -0
- package/dist/plugins/simplified-index.d.ts +17 -0
- package/dist/plugins/simplified-index.d.ts.map +1 -0
- package/dist/plugins/simplified-lazy-loader.cjs +2 -0
- package/dist/plugins/simplified-lazy-loader.cjs.map +1 -0
- package/dist/plugins/simplified-lazy-loader.d.ts +65 -0
- package/dist/plugins/simplified-lazy-loader.d.ts.map +1 -0
- package/dist/plugins/simplified-lazy-loader.js +129 -0
- package/dist/plugins/simplified-lazy-loader.js.map +1 -0
- package/dist/plugins/simplified-plugin-manager.cjs +2 -0
- package/dist/plugins/simplified-plugin-manager.cjs.map +1 -0
- package/dist/plugins/simplified-plugin-manager.d.ts +24 -0
- package/dist/plugins/simplified-plugin-manager.d.ts.map +1 -0
- package/dist/plugins/simplified-plugin-manager.js +51 -0
- package/dist/plugins/simplified-plugin-manager.js.map +1 -0
- package/dist/plugins/simplified-tachui-instance.cjs +2 -0
- package/dist/plugins/simplified-tachui-instance.cjs.map +1 -0
- package/dist/plugins/simplified-tachui-instance.d.ts +54 -0
- package/dist/plugins/simplified-tachui-instance.d.ts.map +1 -0
- package/dist/plugins/simplified-tachui-instance.js +88 -0
- package/dist/plugins/simplified-tachui-instance.js.map +1 -0
- package/dist/plugins/simplified-types.cjs +2 -0
- package/dist/plugins/simplified-types.cjs.map +1 -0
- package/dist/plugins/simplified-types.d.ts +63 -0
- package/dist/plugins/simplified-types.d.ts.map +1 -0
- package/dist/plugins/simplified-types.js +9 -0
- package/dist/plugins/simplified-types.js.map +1 -0
- package/dist/plugins/simplified-utils.cjs +2 -0
- package/dist/plugins/simplified-utils.cjs.map +1 -0
- package/dist/plugins/simplified-utils.d.ts +39 -0
- package/dist/plugins/simplified-utils.d.ts.map +1 -0
- package/dist/plugins/simplified-utils.js +40 -0
- package/dist/plugins/simplified-utils.js.map +1 -0
- package/dist/reactive/cleanup.cjs +2 -0
- package/dist/reactive/cleanup.cjs.map +1 -0
- package/dist/reactive/cleanup.d.ts +115 -0
- package/dist/reactive/cleanup.d.ts.map +1 -0
- package/dist/reactive/cleanup.js +62 -0
- package/dist/reactive/cleanup.js.map +1 -0
- package/dist/reactive/computed.cjs +2 -0
- package/dist/reactive/computed.cjs.map +1 -0
- package/dist/reactive/computed.d.ts +115 -0
- package/dist/reactive/computed.d.ts.map +1 -0
- package/dist/reactive/computed.js +121 -0
- package/dist/reactive/computed.js.map +1 -0
- package/dist/reactive/context.cjs +2 -0
- package/dist/reactive/context.cjs.map +1 -0
- package/dist/reactive/context.d.ts +82 -0
- package/dist/reactive/context.d.ts.map +1 -0
- package/dist/reactive/context.js +143 -0
- package/dist/reactive/context.js.map +1 -0
- package/dist/reactive/effect.cjs +2 -0
- package/dist/reactive/effect.cjs.map +1 -0
- package/dist/reactive/effect.d.ts +79 -0
- package/dist/reactive/effect.d.ts.map +1 -0
- package/dist/reactive/effect.js +67 -0
- package/dist/reactive/effect.js.map +1 -0
- package/dist/reactive/enhanced-effect.cjs +2 -0
- package/dist/reactive/enhanced-effect.cjs.map +1 -0
- package/dist/reactive/enhanced-effect.d.ts +108 -0
- package/dist/reactive/enhanced-effect.d.ts.map +1 -0
- package/dist/reactive/enhanced-effect.js +153 -0
- package/dist/reactive/enhanced-effect.js.map +1 -0
- package/dist/reactive/enhanced-signal.cjs +2 -0
- package/dist/reactive/enhanced-signal.cjs.map +1 -0
- package/dist/reactive/enhanced-signal.d.ts +91 -0
- package/dist/reactive/enhanced-signal.d.ts.map +1 -0
- package/dist/reactive/enhanced-signal.js +117 -0
- package/dist/reactive/enhanced-signal.js.map +1 -0
- package/dist/reactive/equality.cjs +2 -0
- package/dist/reactive/equality.cjs.map +1 -0
- package/dist/reactive/equality.d.ts +51 -0
- package/dist/reactive/equality.d.ts.map +1 -0
- package/dist/reactive/equality.js +66 -0
- package/dist/reactive/equality.js.map +1 -0
- package/dist/reactive/index.cjs +2 -0
- package/dist/reactive/index.cjs.map +1 -0
- package/dist/reactive/index.d.ts +21 -0
- package/dist/reactive/index.d.ts.map +1 -0
- package/dist/reactive/index.js +95 -0
- package/dist/reactive/index.js.map +1 -0
- package/dist/reactive/migration.cjs +18 -0
- package/dist/reactive/migration.cjs.map +1 -0
- package/dist/reactive/migration.d.ts +104 -0
- package/dist/reactive/migration.d.ts.map +1 -0
- package/dist/reactive/migration.js +164 -0
- package/dist/reactive/migration.js.map +1 -0
- package/dist/reactive/ownership.cjs +2 -0
- package/dist/reactive/ownership.cjs.map +1 -0
- package/dist/reactive/ownership.d.ts +75 -0
- package/dist/reactive/ownership.d.ts.map +1 -0
- package/dist/reactive/ownership.js +34 -0
- package/dist/reactive/ownership.js.map +1 -0
- package/dist/reactive/scheduler.cjs +2 -0
- package/dist/reactive/scheduler.cjs.map +1 -0
- package/dist/reactive/scheduler.d.ts +56 -0
- package/dist/reactive/scheduler.d.ts.map +1 -0
- package/dist/reactive/scheduler.js +111 -0
- package/dist/reactive/scheduler.js.map +1 -0
- package/dist/reactive/signal.cjs +2 -0
- package/dist/reactive/signal.cjs.map +1 -0
- package/dist/reactive/signal.d.ts +82 -0
- package/dist/reactive/signal.d.ts.map +1 -0
- package/dist/reactive/signal.js +96 -0
- package/dist/reactive/signal.js.map +1 -0
- package/dist/reactive/theme.cjs +2 -0
- package/dist/reactive/theme.cjs.map +1 -0
- package/dist/reactive/theme.d.ts +12 -0
- package/dist/reactive/theme.d.ts.map +1 -0
- package/dist/reactive/theme.js +27 -0
- package/dist/reactive/theme.js.map +1 -0
- package/dist/reactive/types.cjs +2 -0
- package/dist/reactive/types.cjs.map +1 -0
- package/dist/reactive/types.d.ts +93 -0
- package/dist/reactive/types.d.ts.map +1 -0
- package/dist/reactive/types.js +5 -0
- package/dist/reactive/types.js.map +1 -0
- package/dist/reactive/unified-scheduler.cjs +2 -0
- package/dist/reactive/unified-scheduler.cjs.map +1 -0
- package/dist/reactive/unified-scheduler.d.ts +112 -0
- package/dist/reactive/unified-scheduler.d.ts.map +1 -0
- package/dist/reactive/unified-scheduler.js +219 -0
- package/dist/reactive/unified-scheduler.js.map +1 -0
- package/dist/runtime/component-context.cjs +2 -0
- package/dist/runtime/component-context.cjs.map +1 -0
- package/dist/runtime/component-context.d.ts +73 -0
- package/dist/runtime/component-context.d.ts.map +1 -0
- package/dist/runtime/component-context.js +177 -0
- package/dist/runtime/component-context.js.map +1 -0
- package/dist/runtime/component.cjs +2 -0
- package/dist/runtime/component.cjs.map +1 -0
- package/dist/runtime/component.d.ts +112 -0
- package/dist/runtime/component.d.ts.map +1 -0
- package/dist/runtime/component.js +238 -0
- package/dist/runtime/component.js.map +1 -0
- package/dist/runtime/context.cjs +2 -0
- package/dist/runtime/context.cjs.map +1 -0
- package/dist/runtime/context.d.ts +138 -0
- package/dist/runtime/context.d.ts.map +1 -0
- package/dist/runtime/context.js +289 -0
- package/dist/runtime/context.js.map +1 -0
- package/dist/runtime/dev-tools.cjs +2 -0
- package/dist/runtime/dev-tools.cjs.map +1 -0
- package/dist/runtime/dev-tools.d.ts +240 -0
- package/dist/runtime/dev-tools.d.ts.map +1 -0
- package/dist/runtime/dev-tools.js +391 -0
- package/dist/runtime/dev-tools.js.map +1 -0
- package/dist/runtime/development-warnings.cjs +2 -0
- package/dist/runtime/development-warnings.cjs.map +1 -0
- package/dist/runtime/development-warnings.d.ts +42 -0
- package/dist/runtime/development-warnings.d.ts.map +1 -0
- package/dist/runtime/development-warnings.js +69 -0
- package/dist/runtime/development-warnings.js.map +1 -0
- package/dist/runtime/dom-bridge.cjs +2 -0
- package/dist/runtime/dom-bridge.cjs.map +1 -0
- package/dist/runtime/dom-bridge.d.ts +70 -0
- package/dist/runtime/dom-bridge.d.ts.map +1 -0
- package/dist/runtime/dom-bridge.js +241 -0
- package/dist/runtime/dom-bridge.js.map +1 -0
- package/dist/runtime/element-override.cjs +2 -0
- package/dist/runtime/element-override.cjs.map +1 -0
- package/dist/runtime/element-override.d.ts +82 -0
- package/dist/runtime/element-override.d.ts.map +1 -0
- package/dist/runtime/element-override.js +214 -0
- package/dist/runtime/element-override.js.map +1 -0
- package/dist/runtime/error-boundary.cjs +2 -0
- package/dist/runtime/error-boundary.cjs.map +1 -0
- package/dist/runtime/error-boundary.d.ts +302 -0
- package/dist/runtime/error-boundary.d.ts.map +1 -0
- package/dist/runtime/error-boundary.js +559 -0
- package/dist/runtime/error-boundary.js.map +1 -0
- package/dist/runtime/error-recovery.cjs +2 -0
- package/dist/runtime/error-recovery.cjs.map +1 -0
- package/dist/runtime/error-recovery.d.ts +267 -0
- package/dist/runtime/error-recovery.d.ts.map +1 -0
- package/dist/runtime/error-recovery.js +385 -0
- package/dist/runtime/error-recovery.js.map +1 -0
- package/dist/runtime/error-reporting.cjs +3 -0
- package/dist/runtime/error-reporting.cjs.map +1 -0
- package/dist/runtime/error-reporting.d.ts +287 -0
- package/dist/runtime/error-reporting.d.ts.map +1 -0
- package/dist/runtime/error-reporting.js +479 -0
- package/dist/runtime/error-reporting.js.map +1 -0
- package/dist/runtime/error-utils.cjs +3 -0
- package/dist/runtime/error-utils.cjs.map +1 -0
- package/dist/runtime/error-utils.d.ts +204 -0
- package/dist/runtime/error-utils.d.ts.map +1 -0
- package/dist/runtime/error-utils.js +352 -0
- package/dist/runtime/error-utils.js.map +1 -0
- package/dist/runtime/index.d.ts +29 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/lazy-component.cjs +2 -0
- package/dist/runtime/lazy-component.cjs.map +1 -0
- package/dist/runtime/lazy-component.d.ts +58 -0
- package/dist/runtime/lazy-component.d.ts.map +1 -0
- package/dist/runtime/lazy-component.js +129 -0
- package/dist/runtime/lazy-component.js.map +1 -0
- package/dist/runtime/lifecycle.cjs +2 -0
- package/dist/runtime/lifecycle.cjs.map +1 -0
- package/dist/runtime/lifecycle.d.ts +8 -0
- package/dist/runtime/lifecycle.d.ts.map +1 -0
- package/dist/runtime/lifecycle.js +7 -0
- package/dist/runtime/lifecycle.js.map +1 -0
- package/dist/runtime/mounting.cjs +2 -0
- package/dist/runtime/mounting.cjs.map +1 -0
- package/dist/runtime/mounting.d.ts +9 -0
- package/dist/runtime/mounting.d.ts.map +1 -0
- package/dist/runtime/mounting.js +12 -0
- package/dist/runtime/mounting.js.map +1 -0
- package/dist/runtime/optimization.cjs +2 -0
- package/dist/runtime/optimization.cjs.map +1 -0
- package/dist/runtime/optimization.d.ts +8 -0
- package/dist/runtime/optimization.d.ts.map +1 -0
- package/dist/runtime/optimization.js +6 -0
- package/dist/runtime/optimization.js.map +1 -0
- package/dist/runtime/performance.cjs +2 -0
- package/dist/runtime/performance.cjs.map +1 -0
- package/dist/runtime/performance.d.ts +217 -0
- package/dist/runtime/performance.d.ts.map +1 -0
- package/dist/runtime/performance.js +399 -0
- package/dist/runtime/performance.js.map +1 -0
- package/dist/runtime/props.cjs +2 -0
- package/dist/runtime/props.cjs.map +1 -0
- package/dist/runtime/props.d.ts +154 -0
- package/dist/runtime/props.d.ts.map +1 -0
- package/dist/runtime/props.js +265 -0
- package/dist/runtime/props.js.map +1 -0
- package/dist/runtime/refs.d.ts +8 -0
- package/dist/runtime/refs.d.ts.map +1 -0
- package/dist/runtime/renderer.cjs +2 -0
- package/dist/runtime/renderer.cjs.map +1 -0
- package/dist/runtime/renderer.d.ts +116 -0
- package/dist/runtime/renderer.d.ts.map +1 -0
- package/dist/runtime/renderer.js +390 -0
- package/dist/runtime/renderer.js.map +1 -0
- package/dist/runtime/semantic-role-manager.cjs +2 -0
- package/dist/runtime/semantic-role-manager.cjs.map +1 -0
- package/dist/runtime/semantic-role-manager.d.ts +37 -0
- package/dist/runtime/semantic-role-manager.d.ts.map +1 -0
- package/dist/runtime/semantic-role-manager.js +82 -0
- package/dist/runtime/semantic-role-manager.js.map +1 -0
- package/dist/runtime/types.d.ts +230 -0
- package/dist/runtime/types.d.ts.map +1 -0
- package/dist/state/binding.cjs +2 -0
- package/dist/state/binding.cjs.map +1 -0
- package/dist/state/binding.d.ts +96 -0
- package/dist/state/binding.d.ts.map +1 -0
- package/dist/state/binding.js +155 -0
- package/dist/state/binding.js.map +1 -0
- package/dist/state/environment-object.d.ts +130 -0
- package/dist/state/environment-object.d.ts.map +1 -0
- package/dist/state/environment.cjs +2 -0
- package/dist/state/environment.cjs.map +1 -0
- package/dist/state/environment.d.ts +178 -0
- package/dist/state/environment.d.ts.map +1 -0
- package/dist/state/environment.js +115 -0
- package/dist/state/environment.js.map +1 -0
- package/dist/state/index.cjs +2 -0
- package/dist/state/index.cjs.map +1 -0
- package/dist/state/index.d.ts +108 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +63 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/observed-object.cjs +2 -0
- package/dist/state/observed-object.cjs.map +1 -0
- package/dist/state/observed-object.d.ts +126 -0
- package/dist/state/observed-object.d.ts.map +1 -0
- package/dist/state/observed-object.js +163 -0
- package/dist/state/observed-object.js.map +1 -0
- package/dist/state/state-manager.cjs +2 -0
- package/dist/state/state-manager.cjs.map +1 -0
- package/dist/state/state-manager.d.ts +97 -0
- package/dist/state/state-manager.d.ts.map +1 -0
- package/dist/state/state-manager.js +233 -0
- package/dist/state/state-manager.js.map +1 -0
- package/dist/state/state.cjs +2 -0
- package/dist/state/state.cjs.map +1 -0
- package/dist/state/state.d.ts +78 -0
- package/dist/state/state.d.ts.map +1 -0
- package/dist/state/state.js +159 -0
- package/dist/state/state.js.map +1 -0
- package/dist/state/types.d.ts +159 -0
- package/dist/state/types.d.ts.map +1 -0
- package/dist/sui-compat.cjs +2 -0
- package/dist/sui-compat.cjs.map +1 -0
- package/dist/sui-compat.d.ts +110 -0
- package/dist/sui-compat.d.ts.map +1 -0
- package/dist/sui-compat.js +88 -0
- package/dist/sui-compat.js.map +1 -0
- package/dist/validation/advanced-debugging.cjs +44 -0
- package/dist/validation/advanced-debugging.cjs.map +1 -0
- package/dist/validation/advanced-debugging.d.ts +319 -0
- package/dist/validation/advanced-debugging.d.ts.map +1 -0
- package/dist/validation/advanced-debugging.js +455 -0
- package/dist/validation/advanced-debugging.js.map +1 -0
- package/dist/validation/build-time/detection.cjs +2 -0
- package/dist/validation/build-time/detection.cjs.map +1 -0
- package/dist/validation/build-time/detection.d.ts +32 -0
- package/dist/validation/build-time/detection.d.ts.map +1 -0
- package/dist/validation/build-time/detection.js +199 -0
- package/dist/validation/build-time/detection.js.map +1 -0
- package/dist/validation/build-time/index.cjs +2 -0
- package/dist/validation/build-time/index.cjs.map +1 -0
- package/dist/validation/build-time/index.d.ts +84 -0
- package/dist/validation/build-time/index.d.ts.map +1 -0
- package/dist/validation/build-time/index.js +122 -0
- package/dist/validation/build-time/index.js.map +1 -0
- package/dist/validation/build-time/plugins.cjs +3 -0
- package/dist/validation/build-time/plugins.cjs.map +1 -0
- package/dist/validation/build-time/plugins.d.ts +75 -0
- package/dist/validation/build-time/plugins.d.ts.map +1 -0
- package/dist/validation/build-time/plugins.js +282 -0
- package/dist/validation/build-time/plugins.js.map +1 -0
- package/dist/validation/build-time/rules.cjs +2 -0
- package/dist/validation/build-time/rules.cjs.map +1 -0
- package/dist/validation/build-time/rules.d.ts +73 -0
- package/dist/validation/build-time/rules.d.ts.map +1 -0
- package/dist/validation/build-time/rules.js +576 -0
- package/dist/validation/build-time/rules.js.map +1 -0
- package/dist/validation/build-time/transformer.cjs +3 -0
- package/dist/validation/build-time/transformer.cjs.map +1 -0
- package/dist/validation/build-time/transformer.d.ts +23 -0
- package/dist/validation/build-time/transformer.d.ts.map +1 -0
- package/dist/validation/build-time/transformer.js +177 -0
- package/dist/validation/build-time/transformer.js.map +1 -0
- package/dist/validation/build-time/types.d.ts +212 -0
- package/dist/validation/build-time/types.d.ts.map +1 -0
- package/dist/validation/comprehensive.cjs +9 -0
- package/dist/validation/comprehensive.cjs.map +1 -0
- package/dist/validation/comprehensive.d.ts +160 -0
- package/dist/validation/comprehensive.d.ts.map +1 -0
- package/dist/validation/comprehensive.js +916 -0
- package/dist/validation/comprehensive.js.map +1 -0
- package/dist/validation/debug-tools.cjs +16 -0
- package/dist/validation/debug-tools.cjs.map +1 -0
- package/dist/validation/debug-tools.d.ts +251 -0
- package/dist/validation/debug-tools.d.ts.map +1 -0
- package/dist/validation/debug-tools.js +405 -0
- package/dist/validation/debug-tools.js.map +1 -0
- package/dist/validation/developer-experience.cjs +17 -0
- package/dist/validation/developer-experience.cjs.map +1 -0
- package/dist/validation/developer-experience.d.ts +243 -0
- package/dist/validation/developer-experience.d.ts.map +1 -0
- package/dist/validation/developer-experience.js +433 -0
- package/dist/validation/developer-experience.js.map +1 -0
- package/dist/validation/documentation-integration.cjs +7 -0
- package/dist/validation/documentation-integration.cjs.map +1 -0
- package/dist/validation/documentation-integration.d.ts +269 -0
- package/dist/validation/documentation-integration.d.ts.map +1 -0
- package/dist/validation/documentation-integration.js +440 -0
- package/dist/validation/documentation-integration.js.map +1 -0
- package/dist/validation/enhanced-runtime.cjs +6 -0
- package/dist/validation/enhanced-runtime.cjs.map +1 -0
- package/dist/validation/enhanced-runtime.d.ts +279 -0
- package/dist/validation/enhanced-runtime.d.ts.map +1 -0
- package/dist/validation/enhanced-runtime.js +465 -0
- package/dist/validation/enhanced-runtime.js.map +1 -0
- package/dist/validation/error-reporting.cjs +32 -0
- package/dist/validation/error-reporting.cjs.map +1 -0
- package/dist/validation/error-reporting.d.ts +186 -0
- package/dist/validation/error-reporting.d.ts.map +1 -0
- package/dist/validation/error-reporting.js +370 -0
- package/dist/validation/error-reporting.js.map +1 -0
- package/dist/validation/ide-integration.cjs +85 -0
- package/dist/validation/ide-integration.cjs.map +1 -0
- package/dist/validation/ide-integration.d.ts +328 -0
- package/dist/validation/ide-integration.d.ts.map +1 -0
- package/dist/validation/ide-integration.js +557 -0
- package/dist/validation/ide-integration.js.map +1 -0
- package/dist/validation/index.cjs +6 -0
- package/dist/validation/index.cjs.map +1 -0
- package/dist/validation/index.d.ts +171 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +309 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/lifecycle-validation.cjs +2 -0
- package/dist/validation/lifecycle-validation.cjs.map +1 -0
- package/dist/validation/lifecycle-validation.d.ts +165 -0
- package/dist/validation/lifecycle-validation.d.ts.map +1 -0
- package/dist/validation/lifecycle-validation.js +314 -0
- package/dist/validation/lifecycle-validation.js.map +1 -0
- package/dist/validation/performance-optimizer.cjs +2 -0
- package/dist/validation/performance-optimizer.cjs.map +1 -0
- package/dist/validation/performance-optimizer.d.ts +218 -0
- package/dist/validation/performance-optimizer.d.ts.map +1 -0
- package/dist/validation/performance-optimizer.js +338 -0
- package/dist/validation/performance-optimizer.js.map +1 -0
- package/dist/validation/plugin-registration.cjs +2 -0
- package/dist/validation/plugin-registration.cjs.map +1 -0
- package/dist/validation/plugin-registration.d.ts +88 -0
- package/dist/validation/plugin-registration.d.ts.map +1 -0
- package/dist/validation/plugin-registration.js +126 -0
- package/dist/validation/plugin-registration.js.map +1 -0
- package/dist/validation/production-bypass.cjs +2 -0
- package/dist/validation/production-bypass.cjs.map +1 -0
- package/dist/validation/production-bypass.d.ts +175 -0
- package/dist/validation/production-bypass.d.ts.map +1 -0
- package/dist/validation/production-bypass.js +218 -0
- package/dist/validation/production-bypass.js.map +1 -0
- package/dist/validation/simple.cjs +9 -0
- package/dist/validation/simple.cjs.map +1 -0
- package/dist/validation/simple.d.ts +111 -0
- package/dist/validation/simple.d.ts.map +1 -0
- package/dist/validation/simple.js +146 -0
- package/dist/validation/simple.js.map +1 -0
- package/dist/viewport/adapters/web-adapter.cjs +70 -0
- package/dist/viewport/adapters/web-adapter.cjs.map +1 -0
- package/dist/viewport/adapters/web-adapter.d.ts +227 -0
- package/dist/viewport/adapters/web-adapter.d.ts.map +1 -0
- package/dist/viewport/adapters/web-adapter.js +823 -0
- package/dist/viewport/adapters/web-adapter.js.map +1 -0
- package/dist/viewport/components.cjs +2 -0
- package/dist/viewport/components.cjs.map +1 -0
- package/dist/viewport/components.d.ts +131 -0
- package/dist/viewport/components.d.ts.map +1 -0
- package/dist/viewport/components.js +298 -0
- package/dist/viewport/components.js.map +1 -0
- package/dist/viewport/environment.cjs +2 -0
- package/dist/viewport/environment.cjs.map +1 -0
- package/dist/viewport/environment.d.ts +75 -0
- package/dist/viewport/environment.d.ts.map +1 -0
- package/dist/viewport/environment.js +86 -0
- package/dist/viewport/environment.js.map +1 -0
- package/dist/viewport/index.cjs +2 -0
- package/dist/viewport/index.cjs.map +1 -0
- package/dist/viewport/index.d.ts +138 -0
- package/dist/viewport/index.d.ts.map +1 -0
- package/dist/viewport/index.js +166 -0
- package/dist/viewport/index.js.map +1 -0
- package/dist/viewport/platform-detection.cjs +2 -0
- package/dist/viewport/platform-detection.cjs.map +1 -0
- package/dist/viewport/platform-detection.d.ts +59 -0
- package/dist/viewport/platform-detection.d.ts.map +1 -0
- package/dist/viewport/platform-detection.js +205 -0
- package/dist/viewport/platform-detection.js.map +1 -0
- package/dist/viewport/types.cjs +2 -0
- package/dist/viewport/types.cjs.map +1 -0
- package/dist/viewport/types.d.ts +301 -0
- package/dist/viewport/types.d.ts.map +1 -0
- package/dist/viewport/types.js +13 -0
- package/dist/viewport/types.js.map +1 -0
- package/dist/viewport/viewport-manager.cjs +2 -0
- package/dist/viewport/viewport-manager.cjs.map +1 -0
- package/dist/viewport/viewport-manager.d.ts +118 -0
- package/dist/viewport/viewport-manager.d.ts.map +1 -0
- package/dist/viewport/viewport-manager.js +524 -0
- package/dist/viewport/viewport-manager.js.map +1 -0
- package/package.json +128 -0
- package/src/assets/Asset.ts +11 -0
- package/src/assets/AssetCollection.ts +99 -0
- package/src/assets/ColorAsset.ts +210 -0
- package/src/assets/FontAsset.ts +380 -0
- package/src/assets/ImageAsset.ts +91 -0
- package/src/assets/README.md +190 -0
- package/src/assets/index.ts +175 -0
- package/src/assets/test-assets.ts +69 -0
- package/src/assets/test-integration.ts +46 -0
- package/src/assets/test-simple.ts +28 -0
- package/src/assets/types.ts +79 -0
- package/src/bundles/common.ts +30 -0
- package/src/bundles/complete.ts +29 -0
- package/src/bundles/essential.ts +26 -0
- package/src/bundles/minimal.ts +26 -0
- package/src/bundles/production-minimal.ts +67 -0
- package/src/compiler/advanced-parser.ts +871 -0
- package/src/compiler/codegen.ts +450 -0
- package/src/compiler/enhanced-codegen.ts +729 -0
- package/src/compiler/index.ts +25 -0
- package/src/compiler/parser.ts +461 -0
- package/src/compiler/plugin.ts +181 -0
- package/src/compiler/types.ts +177 -0
- package/src/components/BasicInput.ts +352 -0
- package/src/components/Button.ts +963 -0
- package/src/components/Divider.ts +341 -0
- package/src/components/EnhancedLink.ts +676 -0
- package/src/components/Form.ts +414 -0
- package/src/components/Grid.ts +2507 -0
- package/src/components/GridResponsive.ts +637 -0
- package/src/components/Image.ts +426 -0
- package/src/components/List.ts +1084 -0
- package/src/components/Menu.ts +807 -0
- package/src/components/Picker.ts +678 -0
- package/src/components/ScrollView.ts +725 -0
- package/src/components/Section.ts +472 -0
- package/src/components/Show.ts +205 -0
- package/src/components/Spacer.ts +93 -0
- package/src/components/Text.ts +447 -0
- package/src/components/Toggle.ts +700 -0
- package/src/components/index.ts +231 -0
- package/src/components/wrapper.ts +828 -0
- package/src/concatenation/concatenatable.ts +211 -0
- package/src/concatenation/concatenated-component.ts +471 -0
- package/src/concatenation/index.ts +41 -0
- package/src/concatenation/styles.css +120 -0
- package/src/concatenation/text-optimizer.ts +440 -0
- package/src/concatenation/types.ts +116 -0
- package/src/constants/README.md +339 -0
- package/src/constants/__tests__/frame-utils.test.ts +276 -0
- package/src/constants/__tests__/layout.test.ts +215 -0
- package/src/constants/frame-utils.ts +174 -0
- package/src/constants/index.ts +8 -0
- package/src/constants/layout.ts +120 -0
- package/src/css-classes/component-base.ts +117 -0
- package/src/css-classes/css-class-manager.ts +372 -0
- package/src/css-classes/dom-integration.ts +162 -0
- package/src/css-classes/enhanced-renderer.ts +166 -0
- package/src/css-classes/index.ts +45 -0
- package/src/css-classes/types.ts +73 -0
- package/src/css-classes/utilities.ts +175 -0
- package/src/debug/index.ts +267 -0
- package/src/developer-experience/enhanced-errors.ts +556 -0
- package/src/developer-experience/enhanced-types.ts +427 -0
- package/src/developer-experience/index.ts +220 -0
- package/src/globals.d.ts +43 -0
- package/src/gradients/__tests__/angular-gradient.test.ts +111 -0
- package/src/gradients/__tests__/background-modifier.test.ts +81 -0
- package/src/gradients/__tests__/comprehensive-gradients.test.ts +296 -0
- package/src/gradients/__tests__/gradient-asset.test.ts +144 -0
- package/src/gradients/__tests__/linear-gradient.test.ts +92 -0
- package/src/gradients/__tests__/phase4-features.test.ts +386 -0
- package/src/gradients/__tests__/radial-gradient.test.ts +110 -0
- package/src/gradients/__tests__/repeating-gradients.test.ts +125 -0
- package/src/gradients/__tests__/state-background-modifier.test.ts +340 -0
- package/src/gradients/__tests__/state-gradient-asset.test.ts +262 -0
- package/src/gradients/__tests__/state-gradient-integration.test.ts +277 -0
- package/src/gradients/css-generator.ts +158 -0
- package/src/gradients/examples.ts +632 -0
- package/src/gradients/gradient-asset.ts +30 -0
- package/src/gradients/index.ts +85 -0
- package/src/gradients/performance.ts +521 -0
- package/src/gradients/presets.ts +422 -0
- package/src/gradients/reactive.ts +470 -0
- package/src/gradients/state-gradient-asset.ts +179 -0
- package/src/gradients/types.ts +148 -0
- package/src/gradients/utils.ts +579 -0
- package/src/gradients/validation.ts +489 -0
- package/src/index.ts +168 -0
- package/src/lifecycle/hooks.ts +332 -0
- package/src/modifiers/__tests__/as-html-integration.test.ts +204 -0
- package/src/modifiers/__tests__/as-html.test.ts +437 -0
- package/src/modifiers/__tests__/basic-sanitizer-security.test.ts +294 -0
- package/src/modifiers/__tests__/border.test.ts +371 -0
- package/src/modifiers/__tests__/margin-string-support.test.ts +41 -0
- package/src/modifiers/__tests__/padding-string-support.test.ts +41 -0
- package/src/modifiers/as-html-validator.ts +68 -0
- package/src/modifiers/as-html.ts +216 -0
- package/src/modifiers/attributes.ts +574 -0
- package/src/modifiers/backdrop.ts +290 -0
- package/src/modifiers/background.ts +165 -0
- package/src/modifiers/base.ts +1815 -0
- package/src/modifiers/basic-sanitizer.ts +227 -0
- package/src/modifiers/border.ts +574 -0
- package/src/modifiers/builder.ts +1747 -0
- package/src/modifiers/core.ts +521 -0
- package/src/modifiers/css.ts +148 -0
- package/src/modifiers/effects.ts +412 -0
- package/src/modifiers/elements.ts +541 -0
- package/src/modifiers/filters.ts +501 -0
- package/src/modifiers/flexbox.ts +180 -0
- package/src/modifiers/font.ts +149 -0
- package/src/modifiers/grid.ts +238 -0
- package/src/modifiers/index.ts +481 -0
- package/src/modifiers/margin.ts +218 -0
- package/src/modifiers/padding.ts +318 -0
- package/src/modifiers/registry.ts +444 -0
- package/src/modifiers/responsive/__tests__/advanced-media-queries.test.ts +392 -0
- package/src/modifiers/responsive/__tests__/advanced-utilities.test.ts +368 -0
- package/src/modifiers/responsive/__tests__/comprehensive-browser-tests.test.ts +556 -0
- package/src/modifiers/responsive/__tests__/layout-patterns.test.ts +558 -0
- package/src/modifiers/responsive/advanced-utilities.ts +562 -0
- package/src/modifiers/responsive/breakpoints.ts +330 -0
- package/src/modifiers/responsive/css-generator.ts +432 -0
- package/src/modifiers/responsive/dev-tools.ts +650 -0
- package/src/modifiers/responsive/index.ts +119 -0
- package/src/modifiers/responsive/layout-patterns.ts +592 -0
- package/src/modifiers/responsive/performance.ts +385 -0
- package/src/modifiers/responsive/responsive-builder.ts +620 -0
- package/src/modifiers/responsive/responsive-modifier.ts +410 -0
- package/src/modifiers/responsive/types.ts +226 -0
- package/src/modifiers/responsive/utilities.ts +478 -0
- package/src/modifiers/scroll.ts +297 -0
- package/src/modifiers/shadows.ts +321 -0
- package/src/modifiers/size.ts +208 -0
- package/src/modifiers/text.ts +416 -0
- package/src/modifiers/transformations.ts +640 -0
- package/src/modifiers/transitions.ts +218 -0
- package/src/modifiers/types.ts +889 -0
- package/src/modifiers/typography.ts +341 -0
- package/src/modifiers/utility.ts +209 -0
- package/src/modifiers/utils.ts +413 -0
- package/src/plugins/__tests__/simplified-plugin-system.test.ts +190 -0
- package/src/plugins/component-loader-registry.ts +371 -0
- package/src/plugins/index.ts +61 -0
- package/src/plugins/legacy-adapter.ts +84 -0
- package/src/plugins/simplified-component-registry.ts +130 -0
- package/src/plugins/simplified-error-handler.ts +372 -0
- package/src/plugins/simplified-index.ts +61 -0
- package/src/plugins/simplified-lazy-loader.ts +242 -0
- package/src/plugins/simplified-plugin-manager.ts +93 -0
- package/src/plugins/simplified-tachui-instance.ts +142 -0
- package/src/plugins/simplified-types.ts +79 -0
- package/src/plugins/simplified-utils.ts +118 -0
- package/src/reactive/cleanup.ts +241 -0
- package/src/reactive/computed.ts +281 -0
- package/src/reactive/context.ts +287 -0
- package/src/reactive/effect.ts +194 -0
- package/src/reactive/enhanced-effect.ts +318 -0
- package/src/reactive/enhanced-signal.ts +227 -0
- package/src/reactive/equality.ts +188 -0
- package/src/reactive/globals.d.ts +5 -0
- package/src/reactive/index.ts +150 -0
- package/src/reactive/migration.ts +335 -0
- package/src/reactive/ownership.ts +182 -0
- package/src/reactive/scheduler.ts +300 -0
- package/src/reactive/signal.ts +201 -0
- package/src/reactive/theme.ts +49 -0
- package/src/reactive/types.ts +103 -0
- package/src/reactive/unified-scheduler.ts +357 -0
- package/src/runtime/component-context.ts +343 -0
- package/src/runtime/component.ts +499 -0
- package/src/runtime/context.ts +527 -0
- package/src/runtime/dev-tools.ts +752 -0
- package/src/runtime/development-warnings.ts +114 -0
- package/src/runtime/dom-bridge.ts +570 -0
- package/src/runtime/element-override.ts +282 -0
- package/src/runtime/error-boundary.ts +955 -0
- package/src/runtime/error-recovery.ts +638 -0
- package/src/runtime/error-reporting.ts +808 -0
- package/src/runtime/error-utils.ts +698 -0
- package/src/runtime/index.ts +202 -0
- package/src/runtime/lazy-component.ts +268 -0
- package/src/runtime/lifecycle.ts +10 -0
- package/src/runtime/mounting.ts +17 -0
- package/src/runtime/optimization.ts +13 -0
- package/src/runtime/performance.ts +693 -0
- package/src/runtime/props.ts +434 -0
- package/src/runtime/refs.ts +13 -0
- package/src/runtime/renderer.ts +674 -0
- package/src/runtime/semantic-role-manager.ts +140 -0
- package/src/runtime/types.ts +282 -0
- package/src/state/binding.ts +381 -0
- package/src/state/environment-object.ts +444 -0
- package/src/state/environment.ts +351 -0
- package/src/state/index.ts +179 -0
- package/src/state/observed-object.ts +405 -0
- package/src/state/state-manager.ts +366 -0
- package/src/state/state.ts +339 -0
- package/src/state/types.ts +192 -0
- package/src/sui-compat.ts +163 -0
- package/src/validation/__tests__/phase-1d-integration.test.ts +558 -0
- package/src/validation/advanced-debugging.ts +860 -0
- package/src/validation/build-time/detection.ts +373 -0
- package/src/validation/build-time/index.ts +222 -0
- package/src/validation/build-time/plugins.ts +515 -0
- package/src/validation/build-time/rules.ts +624 -0
- package/src/validation/build-time/transformer.ts +372 -0
- package/src/validation/build-time/types.ts +232 -0
- package/src/validation/comprehensive.ts +1272 -0
- package/src/validation/debug-tools.ts +724 -0
- package/src/validation/developer-experience.ts +712 -0
- package/src/validation/documentation-integration.ts +835 -0
- package/src/validation/enhanced-runtime.ts +765 -0
- package/src/validation/error-reporting.ts +587 -0
- package/src/validation/ide-integration.ts +845 -0
- package/src/validation/index.ts +353 -0
- package/src/validation/lifecycle-validation.ts +636 -0
- package/src/validation/performance-optimizer.ts +599 -0
- package/src/validation/plugin-registration.ts +249 -0
- package/src/validation/production-bypass.ts +466 -0
- package/src/validation/simple.ts +465 -0
- package/src/viewport/adapters/web-adapter.ts +1385 -0
- package/src/viewport/components.ts +505 -0
- package/src/viewport/environment.ts +173 -0
- package/src/viewport/index.ts +290 -0
- package/src/viewport/platform-detection.ts +431 -0
- package/src/viewport/types.ts +371 -0
- package/src/viewport/viewport-manager.ts +979 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performance-optimizer.js","sources":["../../src/validation/performance-optimizer.ts"],"sourcesContent":["/**\n * Performance Optimization System - Phase 1C\n * \n * Advanced performance optimizations to reduce validation overhead\n * to <5% impact in development mode with smart caching and batching.\n */\n\nimport { ProductionModeManager } from './production-bypass'\nimport { validationDebugger } from './debug-tools'\n\n/**\n * Performance optimization configuration\n */\nexport interface PerformanceOptimizerConfig {\n enabled: boolean\n targetOverhead: number // percentage (5 = 5%)\n batchSize: number\n cacheStrategy: 'aggressive' | 'moderate' | 'conservative'\n asyncValidation: boolean\n throttleMs: number\n skipFrames: number // Skip validation every N frames\n}\n\n/**\n * Validation operation metrics\n */\nexport interface ValidationMetrics {\n operationCount: number\n totalTime: number\n averageTime: number\n maxTime: number\n cacheHitRate: number\n skipRate: number\n}\n\n/**\n * Performance optimization engine\n */\nexport class PerformanceOptimizer {\n private static instance: PerformanceOptimizer\n private config: PerformanceOptimizerConfig\n private metrics = new Map<string, ValidationMetrics>()\n private operationQueue: Array<() => void> = []\n private frameCounter = 0\n private lastBatchTime = 0\n private throttleTimers = new Map<string, number>()\n \n // Advanced caching\n private resultCache = new Map<string, { result: any; timestamp: number; hits: number }>()\n \n // Performance monitoring\n private performanceObserver?: PerformanceObserver\n private frameTimeTarget = 16.67 // 60fps target\n\n constructor(config: Partial<PerformanceOptimizerConfig> = {}) {\n this.config = {\n enabled: process.env.NODE_ENV !== 'production',\n targetOverhead: 5, // 5% overhead target\n batchSize: 10,\n cacheStrategy: 'moderate',\n asyncValidation: true,\n throttleMs: 16, // One frame\n skipFrames: 0, // Don't skip by default\n ...config\n }\n\n this.initializePerformanceMonitoring()\n }\n\n static getInstance(config?: Partial<PerformanceOptimizerConfig>): PerformanceOptimizer {\n if (!this.instance) {\n this.instance = new PerformanceOptimizer(config)\n }\n return this.instance\n }\n\n /**\n * Optimize validation function with caching and batching\n */\n optimizeValidation<T>(\n key: string,\n validationFn: () => T,\n options: {\n cache?: boolean\n batch?: boolean\n throttle?: boolean\n priority?: 'high' | 'medium' | 'low'\n } = {}\n ): T | Promise<T> {\n // Skip optimization in production\n if (ProductionModeManager.shouldBypassValidation()) {\n return validationFn()\n }\n\n const {\n cache = true,\n batch = false,\n throttle = false,\n priority = 'medium'\n } = options\n\n // Check cache first\n if (cache) {\n const cached = this.getCachedResult(key)\n if (cached !== undefined) {\n this.updateMetrics(key, 0, true, false) // Cache hit\n return cached\n }\n }\n\n // Apply frame skipping if configured\n if (this.shouldSkipFrame()) {\n this.updateMetrics(key, 0, false, true) // Skipped\n return this.getFallbackResult()\n }\n\n // Apply throttling\n if (throttle && this.isThrottled(key)) {\n return this.getFallbackResult()\n }\n\n const startTime = performance.now()\n\n try {\n let result: T\n\n if (batch && priority !== 'high') {\n // Add to batch queue for low priority operations\n return this.addToBatch(key, validationFn, cache) as Promise<T>\n } else {\n // Execute immediately\n result = validationFn()\n }\n\n const endTime = performance.now()\n const duration = endTime - startTime\n\n // Cache result if enabled\n if (cache) {\n this.cacheResult(key, result)\n }\n\n // Update metrics\n this.updateMetrics(key, duration, false, false)\n\n // Check performance impact\n this.checkPerformanceImpact(duration)\n\n return result\n\n } catch (error) {\n const endTime = performance.now()\n this.updateMetrics(key, endTime - startTime, false, false)\n throw error\n }\n }\n\n /**\n * Smart caching with TTL and popularity-based eviction\n */\n private getCachedResult(key: string): any {\n const cached = this.resultCache.get(key)\n if (!cached) return undefined\n\n // Check TTL based on cache strategy\n const ttl = this.getCacheTTL()\n if (Date.now() - cached.timestamp > ttl) {\n this.resultCache.delete(key)\n return undefined\n }\n\n // Update hit count\n cached.hits++\n return cached.result\n }\n\n /**\n * Cache result with intelligent eviction\n */\n private cacheResult(key: string, result: any): void {\n const maxCacheSize = this.getMaxCacheSize()\n \n // Evict least popular entries if cache is full\n if (this.resultCache.size >= maxCacheSize) {\n this.evictLeastPopular()\n }\n\n this.resultCache.set(key, {\n result,\n timestamp: Date.now(),\n hits: 1\n })\n }\n\n /**\n * Evict least popular cache entries\n */\n private evictLeastPopular(): void {\n const entries = Array.from(this.resultCache.entries())\n \n // Sort by hits (ascending) and timestamp (ascending)\n entries.sort((a, b) => {\n if (a[1].hits !== b[1].hits) {\n return a[1].hits - b[1].hits\n }\n return a[1].timestamp - b[1].timestamp\n })\n\n // Remove bottom 25%\n const removeCount = Math.floor(entries.length * 0.25)\n for (let i = 0; i < removeCount; i++) {\n this.resultCache.delete(entries[i][0])\n }\n }\n\n /**\n * Get cache TTL based on strategy\n */\n private getCacheTTL(): number {\n switch (this.config.cacheStrategy) {\n case 'aggressive': return 300000 // 5 minutes\n case 'moderate': return 60000 // 1 minute\n case 'conservative': return 10000 // 10 seconds\n default: return 60000\n }\n }\n\n /**\n * Get max cache size based on strategy\n */\n private getMaxCacheSize(): number {\n switch (this.config.cacheStrategy) {\n case 'aggressive': return 1000\n case 'moderate': return 500\n case 'conservative': return 100\n default: return 500\n }\n }\n\n /**\n * Check if operation should skip this frame\n */\n private shouldSkipFrame(): boolean {\n if (this.config.skipFrames === 0) return false\n \n this.frameCounter++\n return this.frameCounter % (this.config.skipFrames + 1) !== 0\n }\n\n /**\n * Check if operation is throttled\n */\n private isThrottled(key: string): boolean {\n const lastTime = this.throttleTimers.get(key) || 0\n const now = Date.now()\n \n if (now - lastTime < this.config.throttleMs) {\n return true\n }\n \n this.throttleTimers.set(key, now)\n return false\n }\n\n /**\n * Add operation to batch queue\n */\n private addToBatch<T>(key: string, fn: () => T, cache: boolean): Promise<T> {\n return new Promise((resolve, reject) => {\n this.operationQueue.push(() => {\n try {\n const result = fn()\n if (cache) {\n this.cacheResult(key, result)\n }\n resolve(result)\n } catch (error) {\n reject(error)\n }\n })\n\n // Process batch if it's full or enough time has passed\n this.processBatchIfReady()\n })\n }\n\n /**\n * Process batch queue if conditions are met\n */\n private processBatchIfReady(): void {\n const now = Date.now()\n const shouldProcess = \n this.operationQueue.length >= this.config.batchSize ||\n (this.operationQueue.length > 0 && now - this.lastBatchTime > this.config.throttleMs)\n\n if (shouldProcess) {\n this.processBatch()\n }\n }\n\n /**\n * Process batch queue\n */\n private processBatch(): void {\n if (this.operationQueue.length === 0) return\n\n const batch = this.operationQueue.splice(0, this.config.batchSize)\n this.lastBatchTime = Date.now()\n\n if (this.config.asyncValidation) {\n // Process asynchronously to not block the main thread\n setTimeout(() => {\n batch.forEach(operation => operation())\n }, 0)\n } else {\n // Process synchronously\n batch.forEach(operation => operation())\n }\n }\n\n /**\n * Update operation metrics\n */\n private updateMetrics(key: string, duration: number, cacheHit: boolean, skipped: boolean): void {\n let metrics = this.metrics.get(key)\n if (!metrics) {\n metrics = {\n operationCount: 0,\n totalTime: 0,\n averageTime: 0,\n maxTime: 0,\n cacheHitRate: 0,\n skipRate: 0\n }\n this.metrics.set(key, metrics)\n }\n\n metrics.operationCount++\n \n if (!cacheHit && !skipped) {\n metrics.totalTime += duration\n metrics.averageTime = metrics.totalTime / metrics.operationCount\n metrics.maxTime = Math.max(metrics.maxTime, duration)\n }\n\n // Update rates\n const totalOperations = metrics.operationCount\n const cacheHits = Math.floor(metrics.cacheHitRate * totalOperations) + (cacheHit ? 1 : 0)\n const skips = Math.floor(metrics.skipRate * totalOperations) + (skipped ? 1 : 0)\n \n metrics.cacheHitRate = cacheHits / totalOperations\n metrics.skipRate = skips / totalOperations\n }\n\n /**\n * Check if performance impact exceeds target\n */\n private checkPerformanceImpact(duration: number): void {\n const frameTime = this.frameTimeTarget\n const impactPercentage = (duration / frameTime) * 100\n\n if (impactPercentage > this.config.targetOverhead) {\n // Automatically adjust optimization settings\n this.autoOptimize(impactPercentage)\n \n validationDebugger.logEvent(\n 'performance-warning',\n `Validation overhead: ${impactPercentage.toFixed(1)}% (target: ${this.config.targetOverhead}%)`,\n { duration, target: this.config.targetOverhead, actual: impactPercentage }\n )\n }\n }\n\n /**\n * Automatically adjust optimization settings\n */\n private autoOptimize(currentImpact: number): void {\n const factor = currentImpact / this.config.targetOverhead\n\n if (factor > 2) {\n // Very high impact - aggressive optimization\n this.config.cacheStrategy = 'aggressive'\n this.config.skipFrames = Math.max(1, this.config.skipFrames)\n this.config.throttleMs = Math.max(this.config.throttleMs, 32)\n this.config.batchSize = Math.min(this.config.batchSize, 5)\n } else if (factor > 1.5) {\n // High impact - moderate optimization\n this.config.cacheStrategy = 'aggressive'\n this.config.throttleMs = Math.max(this.config.throttleMs, 16)\n }\n }\n\n /**\n * Get fallback result for skipped/throttled operations\n */\n private getFallbackResult(): any {\n // Return a safe default that won't cause errors\n // In practice, this would be context-specific\n return true\n }\n\n /**\n * Initialize performance monitoring\n */\n private initializePerformanceMonitoring(): void {\n if (typeof PerformanceObserver !== 'undefined') {\n try {\n this.performanceObserver = new PerformanceObserver((list) => {\n const entries = list.getEntries()\n entries.forEach((entry) => {\n if (entry.name.includes('tachui-validation')) {\n this.analyzePerformanceEntry(entry)\n }\n })\n })\n \n this.performanceObserver.observe({ entryTypes: ['measure', 'navigation', 'paint'] })\n } catch (_error) {\n // PerformanceObserver not supported\n }\n }\n }\n\n /**\n * Analyze performance entry\n */\n private analyzePerformanceEntry(entry: PerformanceEntry): void {\n if (entry.duration > this.frameTimeTarget) {\n console.warn(`⚠️ Slow validation operation: ${entry.name} took ${entry.duration.toFixed(2)}ms`)\n }\n }\n\n /**\n * Get performance statistics\n */\n getPerformanceStats() {\n const totalOperations = Array.from(this.metrics.values())\n .reduce((sum, metrics) => sum + metrics.operationCount, 0)\n \n const totalTime = Array.from(this.metrics.values())\n .reduce((sum, metrics) => sum + metrics.totalTime, 0)\n \n const averageTime = totalOperations > 0 ? totalTime / totalOperations : 0\n \n const cacheHitRate = Array.from(this.metrics.values())\n .reduce((sum, metrics) => sum + metrics.cacheHitRate, 0) / this.metrics.size || 0\n \n const skipRate = Array.from(this.metrics.values())\n .reduce((sum, metrics) => sum + metrics.skipRate, 0) / this.metrics.size || 0\n\n return {\n config: this.config,\n totalOperations,\n totalTime,\n averageTime,\n cacheHitRate,\n skipRate,\n cacheSize: this.resultCache.size,\n queueSize: this.operationQueue.length,\n frameImpact: (averageTime / this.frameTimeTarget) * 100,\n targetMet: (averageTime / this.frameTimeTarget) * 100 <= this.config.targetOverhead,\n operations: Object.fromEntries(this.metrics)\n }\n }\n\n /**\n * Clear all caches and reset metrics\n */\n reset(): void {\n this.resultCache.clear()\n this.metrics.clear()\n this.operationQueue = []\n this.throttleTimers.clear()\n this.frameCounter = 0\n this.lastBatchTime = 0\n }\n\n /**\n * Configure optimizer\n */\n configure(config: Partial<PerformanceOptimizerConfig>): void {\n this.config = { ...this.config, ...config }\n }\n\n /**\n * Force process all batched operations\n */\n flush(): void {\n while (this.operationQueue.length > 0) {\n this.processBatch()\n }\n }\n\n /**\n * Get cache statistics\n */\n getCacheStats() {\n const entries = Array.from(this.resultCache.values())\n const totalHits = entries.reduce((sum, entry) => sum + entry.hits, 0)\n const averageAge = entries.length > 0 \n ? entries.reduce((sum, entry) => sum + (Date.now() - entry.timestamp), 0) / entries.length\n : 0\n\n return {\n size: this.resultCache.size,\n maxSize: this.getMaxCacheSize(),\n totalHits,\n averageAge,\n strategy: this.config.cacheStrategy,\n ttl: this.getCacheTTL()\n }\n }\n}\n\n// Global optimizer instance\nexport const performanceOptimizer = PerformanceOptimizer.getInstance()\n\n// Performance optimization utilities\nexport const PerformanceOptimizationUtils = {\n /**\n * Configure performance optimizer\n */\n configure: (config: Partial<PerformanceOptimizerConfig>) => \n performanceOptimizer.configure(config),\n\n /**\n * Get performance statistics\n */\n getStats: () => performanceOptimizer.getPerformanceStats(),\n\n /**\n * Get cache statistics\n */\n getCacheStats: () => performanceOptimizer.getCacheStats(),\n\n /**\n * Reset optimizer\n */\n reset: () => performanceOptimizer.reset(),\n\n /**\n * Flush batched operations\n */\n flush: () => performanceOptimizer.flush(),\n\n /**\n * Optimize validation function\n */\n optimize: <T>(\n key: string,\n fn: () => T,\n options?: {\n cache?: boolean\n batch?: boolean\n throttle?: boolean\n priority?: 'high' | 'medium' | 'low'\n }\n ) => performanceOptimizer.optimizeValidation(key, fn, options),\n\n /**\n * Test performance optimization\n */\n test: () => {\n console.group('⚡ Performance Optimization Test')\n \n try {\n const startTime = performance.now()\n \n // Test optimization with different scenarios\n const results = []\n \n // Test caching\n for (let i = 0; i < 100; i++) {\n const result = performanceOptimizer.optimizeValidation(\n 'test-cache',\n () => Math.random(),\n { cache: true }\n )\n results.push(result)\n }\n \n const endTime = performance.now()\n const duration = endTime - startTime\n const stats = performanceOptimizer.getPerformanceStats()\n \n console.info('✅ Optimization system active:', stats.config.enabled)\n console.info('✅ Test duration:', `${duration.toFixed(2)}ms`)\n console.info('✅ Cache hit rate:', `${(stats.cacheHitRate * 100).toFixed(1)}%`)\n console.info('✅ Frame impact:', `${stats.frameImpact.toFixed(1)}% (target: ${stats.config.targetOverhead}%)`)\n console.info('✅ Target met:', stats.targetMet)\n console.info('✅ Performance optimization is working correctly')\n \n } catch (error) {\n console.error('❌ Performance optimization test failed:', error)\n }\n \n console.groupEnd()\n }\n}"],"names":["_PerformanceOptimizer","config","__publicField","key","validationFn","options","ProductionModeManager","cache","batch","throttle","priority","cached","startTime","result","duration","error","endTime","ttl","maxCacheSize","entries","a","b","removeCount","lastTime","now","fn","resolve","reject","operation","cacheHit","skipped","metrics","totalOperations","cacheHits","skips","frameTime","impactPercentage","validationDebugger","currentImpact","factor","list","entry","sum","totalTime","averageTime","cacheHitRate","skipRate","totalHits","averageAge","PerformanceOptimizer","performanceOptimizer","PerformanceOptimizationUtils","results","i","stats"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=new Map,a=new Map;function l(t){const e=`${t.packageName}:${t.componentName}`;r.set(e,t),a.has(t.packageName)||a.set(t.packageName,new Set),a.get(t.packageName).add(t.componentName)}function p(t,e){const o=`${t}:${e}`;r.delete(o);const n=a.get(t);n&&(n.delete(e),n.size===0&&a.delete(t)),process.env.NODE_ENV!=="production"&&console.info(`🔍 Unregistered validator: ${o}`)}function c(t,e){const o=`${t}:${e}`;return r.get(o)}function d(t){const{packageName:e,components:o}=t;for(const n of o){const i={packageName:e,componentName:n.name,validate:n.validate||g(e,n)};l(i)}process.env.NODE_ENV!=="production"&&console.info(`🔍 Registered ${o.length} validators for package: ${e}`)}function g(t,e){return o=>{const{TachUIValidationError:n}=require("./comprehensive");if(e.requiredProps?.length&&o.length===0)throw new n(`${e.name} component requires props`,{component:e.name,package:t,suggestion:`Add required props: ${e.requiredProps.join(", ")}`,documentation:e.documentation});if(o.length>0){const[i]=o;if(!i||typeof i!="object")throw new n(`${e.name} requires a props object`,{component:e.name,package:t,suggestion:"Pass a props object",documentation:e.documentation});if(e.requiredProps){const u=i;for(const s of e.requiredProps)if(u[s]===void 0)throw new n(`${e.name} ${s} property is required`,{component:e.name,package:t,suggestion:`Provide a value for ${s}`,documentation:e.documentation})}}}}function f(){const t=Array.from(a.entries()).map(([e,o])=>({name:e,componentCount:o.size}));return{totalValidators:r.size,packages:t}}function m(t,e,o){const n=c(t,e);n&&n.validate&&n.validate(o)}function V(t,e){return r.has(`${t}:${e}`)}function P(){return Array.from(a.keys())}function $(t){const e=a.get(t);return e?Array.from(e):[]}function k(){r.clear(),a.clear(),process.env.NODE_ENV!=="production"&&console.info("🔍 Cleared all plugin validators")}const h={registerPlugin(t,e){d({packageName:t,components:e.map(o=>({name:o.name,requiredProps:o.requiredProps,optionalProps:o.optionalProps}))})},createValidator(t,e,o){return{packageName:t,componentName:e,validate:o}}};exports.PluginValidationHelper=h;exports.clearAllValidators=k;exports.getComponentValidator=c;exports.getPackageComponents=$;exports.getRegisteredPackages=P;exports.getValidationStats=f;exports.hasValidator=V;exports.registerComponentValidator=l;exports.registerPluginValidation=d;exports.unregisterComponentValidator=p;exports.validateComponent=m;
|
|
2
|
+
//# sourceMappingURL=plugin-registration.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-registration.cjs","sources":["../../src/validation/plugin-registration.ts"],"sourcesContent":["/**\n * Plugin Validation Registration System\n *\n * Allows packages to register their own component validators with Core,\n * maintaining proper architectural separation and plugin independence.\n */\n\nimport type { ComponentValidator } from './comprehensive'\n\n/**\n * Plugin validation registry\n */\nconst pluginValidators = new Map<string, ComponentValidator>()\nconst packageValidators = new Map<string, Set<string>>()\n\n/**\n * Plugin validation interface for external packages\n */\nexport interface PluginValidationConfig {\n packageName: string\n components: ComponentValidationDefinition[]\n}\n\n/**\n * Component validation definition for registration\n */\nexport interface ComponentValidationDefinition {\n name: string\n requiredProps?: string[]\n optionalProps?: string[]\n validate?: (args: unknown[]) => void\n documentation?: string\n}\n\n/**\n * Register component validator from a plugin package\n */\nexport function registerComponentValidator(validator: ComponentValidator): void {\n const key = `${validator.packageName}:${validator.componentName}`\n pluginValidators.set(key, validator)\n\n // Track validators by package\n if (!packageValidators.has(validator.packageName)) {\n packageValidators.set(validator.packageName, new Set())\n }\n packageValidators.get(validator.packageName)!.add(validator.componentName)\n\n // if (process.env.NODE_ENV !== 'production') {\n // console.info(`🔍 Registered validator: ${key}`)\n // }\n}\n\n/**\n * Unregister component validator\n */\nexport function unregisterComponentValidator(packageName: string, componentName: string): void {\n const key = `${packageName}:${componentName}`\n pluginValidators.delete(key)\n\n const packageSet = packageValidators.get(packageName)\n if (packageSet) {\n packageSet.delete(componentName)\n if (packageSet.size === 0) {\n packageValidators.delete(packageName)\n }\n }\n\n if (process.env.NODE_ENV !== 'production') {\n console.info(`🔍 Unregistered validator: ${key}`)\n }\n}\n\n/**\n * Get component validator for validation\n */\nexport function getComponentValidator(packageName: string, componentName: string): ComponentValidator | undefined {\n const key = `${packageName}:${componentName}`\n return pluginValidators.get(key)\n}\n\n/**\n * Register multiple validators from a plugin package\n */\nexport function registerPluginValidation(config: PluginValidationConfig): void {\n const { packageName, components } = config\n\n for (const component of components) {\n const validator: ComponentValidator = {\n packageName,\n componentName: component.name,\n validate: component.validate || createDefaultValidator(packageName, component)\n }\n\n registerComponentValidator(validator)\n }\n\n if (process.env.NODE_ENV !== 'production') {\n console.info(`🔍 Registered ${components.length} validators for package: ${packageName}`)\n }\n}\n\n/**\n * Create default validator based on component definition\n */\nfunction createDefaultValidator(packageName: string, component: ComponentValidationDefinition) {\n return (args: unknown[]) => {\n // Import TachUIValidationError dynamically to avoid circular dependency\n const { TachUIValidationError } = require('./comprehensive')\n\n if (component.requiredProps?.length && args.length === 0) {\n throw new TachUIValidationError(`${component.name} component requires props`, {\n component: component.name,\n package: packageName,\n suggestion: `Add required props: ${component.requiredProps.join(', ')}`,\n documentation: component.documentation\n })\n }\n\n if (args.length > 0) {\n const [props] = args\n if (!props || typeof props !== 'object') {\n throw new TachUIValidationError(`${component.name} requires a props object`, {\n component: component.name,\n package: packageName,\n suggestion: 'Pass a props object',\n documentation: component.documentation\n })\n }\n\n // Check required props\n if (component.requiredProps) {\n const propsObj = props as any\n for (const requiredProp of component.requiredProps) {\n if (propsObj[requiredProp] === undefined) {\n throw new TachUIValidationError(`${component.name} ${requiredProp} property is required`, {\n component: component.name,\n package: packageName,\n suggestion: `Provide a value for ${requiredProp}`,\n documentation: component.documentation\n })\n }\n }\n }\n }\n }\n}\n\n/**\n * Get validation statistics\n */\nexport function getValidationStats(): {\n totalValidators: number\n packages: Array<{ name: string; componentCount: number }>\n} {\n const packages = Array.from(packageValidators.entries()).map(([name, components]) => ({\n name,\n componentCount: components.size\n }))\n\n return {\n totalValidators: pluginValidators.size,\n packages\n }\n}\n\n/**\n * Validate a component using registered validators\n */\nexport function validateComponent(packageName: string, componentName: string, args: unknown[]): void {\n const validator = getComponentValidator(packageName, componentName)\n if (validator && validator.validate) {\n validator.validate(args)\n }\n}\n\n/**\n * Check if a component has validation registered\n */\nexport function hasValidator(packageName: string, componentName: string): boolean {\n return pluginValidators.has(`${packageName}:${componentName}`)\n}\n\n/**\n * Get all registered packages\n */\nexport function getRegisteredPackages(): string[] {\n return Array.from(packageValidators.keys())\n}\n\n/**\n * Get all components for a package\n */\nexport function getPackageComponents(packageName: string): string[] {\n const components = packageValidators.get(packageName)\n return components ? Array.from(components) : []\n}\n\n/**\n * Clear all validators (for testing/cleanup)\n */\nexport function clearAllValidators(): void {\n pluginValidators.clear()\n packageValidators.clear()\n\n if (process.env.NODE_ENV !== 'production') {\n console.info('🔍 Cleared all plugin validators')\n }\n}\n\n/**\n * Plugin helper for easier registration\n */\nexport const PluginValidationHelper = {\n /**\n * Register a simple plugin with basic validation\n */\n registerPlugin(\n packageName: string,\n components: Array<{\n name: string\n requiredProps?: string[]\n optionalProps?: string[]\n }>\n ): void {\n registerPluginValidation({\n packageName,\n components: components.map(comp => ({\n name: comp.name,\n requiredProps: comp.requiredProps,\n optionalProps: comp.optionalProps\n }))\n })\n },\n\n /**\n * Create a custom validator\n */\n createValidator(\n packageName: string,\n componentName: string,\n validate: (args: unknown[]) => void\n ): ComponentValidator {\n return {\n packageName,\n componentName,\n validate\n }\n }\n}\n"],"names":["pluginValidators","packageValidators","registerComponentValidator","validator","key","unregisterComponentValidator","packageName","componentName","packageSet","getComponentValidator","registerPluginValidation","config","components","component","createDefaultValidator","args","TachUIValidationError","props","propsObj","requiredProp","getValidationStats","packages","name","validateComponent","hasValidator","getRegisteredPackages","getPackageComponents","clearAllValidators","PluginValidationHelper","comp","validate"],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plugin Validation Registration System
|
|
3
|
+
*
|
|
4
|
+
* Allows packages to register their own component validators with Core,
|
|
5
|
+
* maintaining proper architectural separation and plugin independence.
|
|
6
|
+
*/
|
|
7
|
+
import type { ComponentValidator } from './comprehensive';
|
|
8
|
+
/**
|
|
9
|
+
* Plugin validation interface for external packages
|
|
10
|
+
*/
|
|
11
|
+
export interface PluginValidationConfig {
|
|
12
|
+
packageName: string;
|
|
13
|
+
components: ComponentValidationDefinition[];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Component validation definition for registration
|
|
17
|
+
*/
|
|
18
|
+
export interface ComponentValidationDefinition {
|
|
19
|
+
name: string;
|
|
20
|
+
requiredProps?: string[];
|
|
21
|
+
optionalProps?: string[];
|
|
22
|
+
validate?: (args: unknown[]) => void;
|
|
23
|
+
documentation?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Register component validator from a plugin package
|
|
27
|
+
*/
|
|
28
|
+
export declare function registerComponentValidator(validator: ComponentValidator): void;
|
|
29
|
+
/**
|
|
30
|
+
* Unregister component validator
|
|
31
|
+
*/
|
|
32
|
+
export declare function unregisterComponentValidator(packageName: string, componentName: string): void;
|
|
33
|
+
/**
|
|
34
|
+
* Get component validator for validation
|
|
35
|
+
*/
|
|
36
|
+
export declare function getComponentValidator(packageName: string, componentName: string): ComponentValidator | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* Register multiple validators from a plugin package
|
|
39
|
+
*/
|
|
40
|
+
export declare function registerPluginValidation(config: PluginValidationConfig): void;
|
|
41
|
+
/**
|
|
42
|
+
* Get validation statistics
|
|
43
|
+
*/
|
|
44
|
+
export declare function getValidationStats(): {
|
|
45
|
+
totalValidators: number;
|
|
46
|
+
packages: Array<{
|
|
47
|
+
name: string;
|
|
48
|
+
componentCount: number;
|
|
49
|
+
}>;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Validate a component using registered validators
|
|
53
|
+
*/
|
|
54
|
+
export declare function validateComponent(packageName: string, componentName: string, args: unknown[]): void;
|
|
55
|
+
/**
|
|
56
|
+
* Check if a component has validation registered
|
|
57
|
+
*/
|
|
58
|
+
export declare function hasValidator(packageName: string, componentName: string): boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Get all registered packages
|
|
61
|
+
*/
|
|
62
|
+
export declare function getRegisteredPackages(): string[];
|
|
63
|
+
/**
|
|
64
|
+
* Get all components for a package
|
|
65
|
+
*/
|
|
66
|
+
export declare function getPackageComponents(packageName: string): string[];
|
|
67
|
+
/**
|
|
68
|
+
* Clear all validators (for testing/cleanup)
|
|
69
|
+
*/
|
|
70
|
+
export declare function clearAllValidators(): void;
|
|
71
|
+
/**
|
|
72
|
+
* Plugin helper for easier registration
|
|
73
|
+
*/
|
|
74
|
+
export declare const PluginValidationHelper: {
|
|
75
|
+
/**
|
|
76
|
+
* Register a simple plugin with basic validation
|
|
77
|
+
*/
|
|
78
|
+
registerPlugin(packageName: string, components: Array<{
|
|
79
|
+
name: string;
|
|
80
|
+
requiredProps?: string[];
|
|
81
|
+
optionalProps?: string[];
|
|
82
|
+
}>): void;
|
|
83
|
+
/**
|
|
84
|
+
* Create a custom validator
|
|
85
|
+
*/
|
|
86
|
+
createValidator(packageName: string, componentName: string, validate: (args: unknown[]) => void): ComponentValidator;
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=plugin-registration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-registration.d.ts","sourceRoot":"","sources":["../../src/validation/plugin-registration.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAQzD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,6BAA6B,EAAE,CAAA;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IACpC,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAa9E;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAe7F;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAGhH;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAgB7E;AAgDD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IACpC,eAAe,EAAE,MAAM,CAAA;IACvB,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAC1D,CAUA;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAKnG;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAEhF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAEhD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAGlE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAOzC;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB;IACjC;;OAEG;gCAEY,MAAM,cACP,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM,CAAA;QACZ,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;QACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;KACzB,CAAC,GACD,IAAI;IAWP;;OAEG;iCAEY,MAAM,iBACJ,MAAM,YACX,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAClC,kBAAkB;CAOtB,CAAA"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
const a = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
|
|
2
|
+
function u(o) {
|
|
3
|
+
const e = `${o.packageName}:${o.componentName}`;
|
|
4
|
+
a.set(e, o), r.has(o.packageName) || r.set(o.packageName, /* @__PURE__ */ new Set()), r.get(o.packageName).add(o.componentName);
|
|
5
|
+
}
|
|
6
|
+
function g(o, e) {
|
|
7
|
+
const t = `${o}:${e}`;
|
|
8
|
+
a.delete(t);
|
|
9
|
+
const n = r.get(o);
|
|
10
|
+
n && (n.delete(e), n.size === 0 && r.delete(o)), process.env.NODE_ENV !== "production" && console.info(`🔍 Unregistered validator: ${t}`);
|
|
11
|
+
}
|
|
12
|
+
function p(o, e) {
|
|
13
|
+
const t = `${o}:${e}`;
|
|
14
|
+
return a.get(t);
|
|
15
|
+
}
|
|
16
|
+
function d(o) {
|
|
17
|
+
const { packageName: e, components: t } = o;
|
|
18
|
+
for (const n of t) {
|
|
19
|
+
const i = {
|
|
20
|
+
packageName: e,
|
|
21
|
+
componentName: n.name,
|
|
22
|
+
validate: n.validate || l(e, n)
|
|
23
|
+
};
|
|
24
|
+
u(i);
|
|
25
|
+
}
|
|
26
|
+
process.env.NODE_ENV !== "production" && console.info(`🔍 Registered ${t.length} validators for package: ${e}`);
|
|
27
|
+
}
|
|
28
|
+
function l(o, e) {
|
|
29
|
+
return (t) => {
|
|
30
|
+
const { TachUIValidationError: n } = require("./comprehensive");
|
|
31
|
+
if (e.requiredProps?.length && t.length === 0)
|
|
32
|
+
throw new n(`${e.name} component requires props`, {
|
|
33
|
+
component: e.name,
|
|
34
|
+
package: o,
|
|
35
|
+
suggestion: `Add required props: ${e.requiredProps.join(", ")}`,
|
|
36
|
+
documentation: e.documentation
|
|
37
|
+
});
|
|
38
|
+
if (t.length > 0) {
|
|
39
|
+
const [i] = t;
|
|
40
|
+
if (!i || typeof i != "object")
|
|
41
|
+
throw new n(`${e.name} requires a props object`, {
|
|
42
|
+
component: e.name,
|
|
43
|
+
package: o,
|
|
44
|
+
suggestion: "Pass a props object",
|
|
45
|
+
documentation: e.documentation
|
|
46
|
+
});
|
|
47
|
+
if (e.requiredProps) {
|
|
48
|
+
const c = i;
|
|
49
|
+
for (const s of e.requiredProps)
|
|
50
|
+
if (c[s] === void 0)
|
|
51
|
+
throw new n(`${e.name} ${s} property is required`, {
|
|
52
|
+
component: e.name,
|
|
53
|
+
package: o,
|
|
54
|
+
suggestion: `Provide a value for ${s}`,
|
|
55
|
+
documentation: e.documentation
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function f() {
|
|
62
|
+
const o = Array.from(r.entries()).map(([e, t]) => ({
|
|
63
|
+
name: e,
|
|
64
|
+
componentCount: t.size
|
|
65
|
+
}));
|
|
66
|
+
return {
|
|
67
|
+
totalValidators: a.size,
|
|
68
|
+
packages: o
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
function m(o, e, t) {
|
|
72
|
+
const n = p(o, e);
|
|
73
|
+
n && n.validate && n.validate(t);
|
|
74
|
+
}
|
|
75
|
+
function V(o, e) {
|
|
76
|
+
return a.has(`${o}:${e}`);
|
|
77
|
+
}
|
|
78
|
+
function $() {
|
|
79
|
+
return Array.from(r.keys());
|
|
80
|
+
}
|
|
81
|
+
function P(o) {
|
|
82
|
+
const e = r.get(o);
|
|
83
|
+
return e ? Array.from(e) : [];
|
|
84
|
+
}
|
|
85
|
+
function k() {
|
|
86
|
+
a.clear(), r.clear(), process.env.NODE_ENV !== "production" && console.info("🔍 Cleared all plugin validators");
|
|
87
|
+
}
|
|
88
|
+
const q = {
|
|
89
|
+
/**
|
|
90
|
+
* Register a simple plugin with basic validation
|
|
91
|
+
*/
|
|
92
|
+
registerPlugin(o, e) {
|
|
93
|
+
d({
|
|
94
|
+
packageName: o,
|
|
95
|
+
components: e.map((t) => ({
|
|
96
|
+
name: t.name,
|
|
97
|
+
requiredProps: t.requiredProps,
|
|
98
|
+
optionalProps: t.optionalProps
|
|
99
|
+
}))
|
|
100
|
+
});
|
|
101
|
+
},
|
|
102
|
+
/**
|
|
103
|
+
* Create a custom validator
|
|
104
|
+
*/
|
|
105
|
+
createValidator(o, e, t) {
|
|
106
|
+
return {
|
|
107
|
+
packageName: o,
|
|
108
|
+
componentName: e,
|
|
109
|
+
validate: t
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
export {
|
|
114
|
+
q as PluginValidationHelper,
|
|
115
|
+
k as clearAllValidators,
|
|
116
|
+
p as getComponentValidator,
|
|
117
|
+
P as getPackageComponents,
|
|
118
|
+
$ as getRegisteredPackages,
|
|
119
|
+
f as getValidationStats,
|
|
120
|
+
V as hasValidator,
|
|
121
|
+
u as registerComponentValidator,
|
|
122
|
+
d as registerPluginValidation,
|
|
123
|
+
g as unregisterComponentValidator,
|
|
124
|
+
m as validateComponent
|
|
125
|
+
};
|
|
126
|
+
//# sourceMappingURL=plugin-registration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-registration.js","sources":["../../src/validation/plugin-registration.ts"],"sourcesContent":["/**\n * Plugin Validation Registration System\n *\n * Allows packages to register their own component validators with Core,\n * maintaining proper architectural separation and plugin independence.\n */\n\nimport type { ComponentValidator } from './comprehensive'\n\n/**\n * Plugin validation registry\n */\nconst pluginValidators = new Map<string, ComponentValidator>()\nconst packageValidators = new Map<string, Set<string>>()\n\n/**\n * Plugin validation interface for external packages\n */\nexport interface PluginValidationConfig {\n packageName: string\n components: ComponentValidationDefinition[]\n}\n\n/**\n * Component validation definition for registration\n */\nexport interface ComponentValidationDefinition {\n name: string\n requiredProps?: string[]\n optionalProps?: string[]\n validate?: (args: unknown[]) => void\n documentation?: string\n}\n\n/**\n * Register component validator from a plugin package\n */\nexport function registerComponentValidator(validator: ComponentValidator): void {\n const key = `${validator.packageName}:${validator.componentName}`\n pluginValidators.set(key, validator)\n\n // Track validators by package\n if (!packageValidators.has(validator.packageName)) {\n packageValidators.set(validator.packageName, new Set())\n }\n packageValidators.get(validator.packageName)!.add(validator.componentName)\n\n // if (process.env.NODE_ENV !== 'production') {\n // console.info(`🔍 Registered validator: ${key}`)\n // }\n}\n\n/**\n * Unregister component validator\n */\nexport function unregisterComponentValidator(packageName: string, componentName: string): void {\n const key = `${packageName}:${componentName}`\n pluginValidators.delete(key)\n\n const packageSet = packageValidators.get(packageName)\n if (packageSet) {\n packageSet.delete(componentName)\n if (packageSet.size === 0) {\n packageValidators.delete(packageName)\n }\n }\n\n if (process.env.NODE_ENV !== 'production') {\n console.info(`🔍 Unregistered validator: ${key}`)\n }\n}\n\n/**\n * Get component validator for validation\n */\nexport function getComponentValidator(packageName: string, componentName: string): ComponentValidator | undefined {\n const key = `${packageName}:${componentName}`\n return pluginValidators.get(key)\n}\n\n/**\n * Register multiple validators from a plugin package\n */\nexport function registerPluginValidation(config: PluginValidationConfig): void {\n const { packageName, components } = config\n\n for (const component of components) {\n const validator: ComponentValidator = {\n packageName,\n componentName: component.name,\n validate: component.validate || createDefaultValidator(packageName, component)\n }\n\n registerComponentValidator(validator)\n }\n\n if (process.env.NODE_ENV !== 'production') {\n console.info(`🔍 Registered ${components.length} validators for package: ${packageName}`)\n }\n}\n\n/**\n * Create default validator based on component definition\n */\nfunction createDefaultValidator(packageName: string, component: ComponentValidationDefinition) {\n return (args: unknown[]) => {\n // Import TachUIValidationError dynamically to avoid circular dependency\n const { TachUIValidationError } = require('./comprehensive')\n\n if (component.requiredProps?.length && args.length === 0) {\n throw new TachUIValidationError(`${component.name} component requires props`, {\n component: component.name,\n package: packageName,\n suggestion: `Add required props: ${component.requiredProps.join(', ')}`,\n documentation: component.documentation\n })\n }\n\n if (args.length > 0) {\n const [props] = args\n if (!props || typeof props !== 'object') {\n throw new TachUIValidationError(`${component.name} requires a props object`, {\n component: component.name,\n package: packageName,\n suggestion: 'Pass a props object',\n documentation: component.documentation\n })\n }\n\n // Check required props\n if (component.requiredProps) {\n const propsObj = props as any\n for (const requiredProp of component.requiredProps) {\n if (propsObj[requiredProp] === undefined) {\n throw new TachUIValidationError(`${component.name} ${requiredProp} property is required`, {\n component: component.name,\n package: packageName,\n suggestion: `Provide a value for ${requiredProp}`,\n documentation: component.documentation\n })\n }\n }\n }\n }\n }\n}\n\n/**\n * Get validation statistics\n */\nexport function getValidationStats(): {\n totalValidators: number\n packages: Array<{ name: string; componentCount: number }>\n} {\n const packages = Array.from(packageValidators.entries()).map(([name, components]) => ({\n name,\n componentCount: components.size\n }))\n\n return {\n totalValidators: pluginValidators.size,\n packages\n }\n}\n\n/**\n * Validate a component using registered validators\n */\nexport function validateComponent(packageName: string, componentName: string, args: unknown[]): void {\n const validator = getComponentValidator(packageName, componentName)\n if (validator && validator.validate) {\n validator.validate(args)\n }\n}\n\n/**\n * Check if a component has validation registered\n */\nexport function hasValidator(packageName: string, componentName: string): boolean {\n return pluginValidators.has(`${packageName}:${componentName}`)\n}\n\n/**\n * Get all registered packages\n */\nexport function getRegisteredPackages(): string[] {\n return Array.from(packageValidators.keys())\n}\n\n/**\n * Get all components for a package\n */\nexport function getPackageComponents(packageName: string): string[] {\n const components = packageValidators.get(packageName)\n return components ? Array.from(components) : []\n}\n\n/**\n * Clear all validators (for testing/cleanup)\n */\nexport function clearAllValidators(): void {\n pluginValidators.clear()\n packageValidators.clear()\n\n if (process.env.NODE_ENV !== 'production') {\n console.info('🔍 Cleared all plugin validators')\n }\n}\n\n/**\n * Plugin helper for easier registration\n */\nexport const PluginValidationHelper = {\n /**\n * Register a simple plugin with basic validation\n */\n registerPlugin(\n packageName: string,\n components: Array<{\n name: string\n requiredProps?: string[]\n optionalProps?: string[]\n }>\n ): void {\n registerPluginValidation({\n packageName,\n components: components.map(comp => ({\n name: comp.name,\n requiredProps: comp.requiredProps,\n optionalProps: comp.optionalProps\n }))\n })\n },\n\n /**\n * Create a custom validator\n */\n createValidator(\n packageName: string,\n componentName: string,\n validate: (args: unknown[]) => void\n ): ComponentValidator {\n return {\n packageName,\n componentName,\n validate\n }\n }\n}\n"],"names":["pluginValidators","packageValidators","registerComponentValidator","validator","key","unregisterComponentValidator","packageName","componentName","packageSet","getComponentValidator","registerPluginValidation","config","components","component","createDefaultValidator","args","TachUIValidationError","props","propsObj","requiredProp","getValidationStats","packages","name","validateComponent","hasValidator","getRegisteredPackages","getPackageComponents","clearAllValidators","PluginValidationHelper","comp","validate"],"mappings":"AAYA,MAAMA,wBAAuB,IAAA,GACvBC,wBAAwB,IAAA;AAwBvB,SAASC,EAA2BC,GAAqC;AAC9E,QAAMC,IAAM,GAAGD,EAAU,WAAW,IAAIA,EAAU,aAAa;AAC/D,EAAAH,EAAiB,IAAII,GAAKD,CAAS,GAG9BF,EAAkB,IAAIE,EAAU,WAAW,KAC9CF,EAAkB,IAAIE,EAAU,aAAa,oBAAI,KAAK,GAExDF,EAAkB,IAAIE,EAAU,WAAW,EAAG,IAAIA,EAAU,aAAa;AAK3E;AAKO,SAASE,EAA6BC,GAAqBC,GAA6B;AAC7F,QAAMH,IAAM,GAAGE,CAAW,IAAIC,CAAa;AAC3C,EAAAP,EAAiB,OAAOI,CAAG;AAE3B,QAAMI,IAAaP,EAAkB,IAAIK,CAAW;AACpD,EAAIE,MACFA,EAAW,OAAOD,CAAa,GAC3BC,EAAW,SAAS,KACtBP,EAAkB,OAAOK,CAAW,IAIpC,QAAQ,IAAI,aAAa,gBAC3B,QAAQ,KAAK,8BAA8BF,CAAG,EAAE;AAEpD;AAKO,SAASK,EAAsBH,GAAqBC,GAAuD;AAChH,QAAMH,IAAM,GAAGE,CAAW,IAAIC,CAAa;AAC3C,SAAOP,EAAiB,IAAII,CAAG;AACjC;AAKO,SAASM,EAAyBC,GAAsC;AAC7E,QAAM,EAAE,aAAAL,GAAa,YAAAM,EAAA,IAAeD;AAEpC,aAAWE,KAAaD,GAAY;AAClC,UAAMT,IAAgC;AAAA,MACpC,aAAAG;AAAA,MACA,eAAeO,EAAU;AAAA,MACzB,UAAUA,EAAU,YAAYC,EAAuBR,GAAaO,CAAS;AAAA,IAAA;AAG/E,IAAAX,EAA2BC,CAAS;AAAA,EACtC;AAEA,EAAI,QAAQ,IAAI,aAAa,gBAC3B,QAAQ,KAAK,iBAAiBS,EAAW,MAAM,4BAA4BN,CAAW,EAAE;AAE5F;AAKA,SAASQ,EAAuBR,GAAqBO,GAA0C;AAC7F,SAAO,CAACE,MAAoB;AAE1B,UAAM,EAAE,uBAAAC,EAAA,IAA0B,QAAQ,iBAAiB;AAE3D,QAAIH,EAAU,eAAe,UAAUE,EAAK,WAAW;AACrD,YAAM,IAAIC,EAAsB,GAAGH,EAAU,IAAI,6BAA6B;AAAA,QAC5E,WAAWA,EAAU;AAAA,QACrB,SAASP;AAAA,QACT,YAAY,uBAAuBO,EAAU,cAAc,KAAK,IAAI,CAAC;AAAA,QACrE,eAAeA,EAAU;AAAA,MAAA,CAC1B;AAGH,QAAIE,EAAK,SAAS,GAAG;AACnB,YAAM,CAACE,CAAK,IAAIF;AAChB,UAAI,CAACE,KAAS,OAAOA,KAAU;AAC7B,cAAM,IAAID,EAAsB,GAAGH,EAAU,IAAI,4BAA4B;AAAA,UAC3E,WAAWA,EAAU;AAAA,UACrB,SAASP;AAAA,UACT,YAAY;AAAA,UACZ,eAAeO,EAAU;AAAA,QAAA,CAC1B;AAIH,UAAIA,EAAU,eAAe;AAC3B,cAAMK,IAAWD;AACjB,mBAAWE,KAAgBN,EAAU;AACnC,cAAIK,EAASC,CAAY,MAAM;AAC7B,kBAAM,IAAIH,EAAsB,GAAGH,EAAU,IAAI,IAAIM,CAAY,yBAAyB;AAAA,cACxF,WAAWN,EAAU;AAAA,cACrB,SAASP;AAAA,cACT,YAAY,uBAAuBa,CAAY;AAAA,cAC/C,eAAeN,EAAU;AAAA,YAAA,CAC1B;AAAA,MAGP;AAAA,IACF;AAAA,EACF;AACF;AAKO,SAASO,IAGd;AACA,QAAMC,IAAW,MAAM,KAAKpB,EAAkB,SAAS,EAAE,IAAI,CAAC,CAACqB,GAAMV,CAAU,OAAO;AAAA,IACpF,MAAAU;AAAA,IACA,gBAAgBV,EAAW;AAAA,EAAA,EAC3B;AAEF,SAAO;AAAA,IACL,iBAAiBZ,EAAiB;AAAA,IAClC,UAAAqB;AAAA,EAAA;AAEJ;AAKO,SAASE,EAAkBjB,GAAqBC,GAAuBQ,GAAuB;AACnG,QAAMZ,IAAYM,EAAsBH,GAAaC,CAAa;AAClE,EAAIJ,KAAaA,EAAU,YACzBA,EAAU,SAASY,CAAI;AAE3B;AAKO,SAASS,EAAalB,GAAqBC,GAAgC;AAChF,SAAOP,EAAiB,IAAI,GAAGM,CAAW,IAAIC,CAAa,EAAE;AAC/D;AAKO,SAASkB,IAAkC;AAChD,SAAO,MAAM,KAAKxB,EAAkB,KAAA,CAAM;AAC5C;AAKO,SAASyB,EAAqBpB,GAA+B;AAClE,QAAMM,IAAaX,EAAkB,IAAIK,CAAW;AACpD,SAAOM,IAAa,MAAM,KAAKA,CAAU,IAAI,CAAA;AAC/C;AAKO,SAASe,IAA2B;AACzC,EAAA3B,EAAiB,MAAA,GACjBC,EAAkB,MAAA,GAEd,QAAQ,IAAI,aAAa,gBAC3B,QAAQ,KAAK,kCAAkC;AAEnD;AAKO,MAAM2B,IAAyB;AAAA;AAAA;AAAA;AAAA,EAIpC,eACEtB,GACAM,GAKM;AACN,IAAAF,EAAyB;AAAA,MACvB,aAAAJ;AAAA,MACA,YAAYM,EAAW,IAAI,CAAAiB,OAAS;AAAA,QAClC,MAAMA,EAAK;AAAA,QACX,eAAeA,EAAK;AAAA,QACpB,eAAeA,EAAK;AAAA,MAAA,EACpB;AAAA,IAAA,CACH;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKA,gBACEvB,GACAC,GACAuB,GACoB;AACpB,WAAO;AAAA,MACL,aAAAxB;AAAA,MACA,eAAAC;AAAA,MACA,UAAAuB;AAAA,IAAA;AAAA,EAEJ;AACF;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var f=Object.defineProperty,m=(o,i,n)=>i in o?f(o,i,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[i]=n,u=(o,i,n)=>m(o,typeof i!="symbol"?i+"":i,n);let t={enabled:process.env.NODE_ENV==="production",mode:process.env.NODE_ENV||"development",optimizationLevel:process.env.NODE_ENV==="production"?"aggressive":"basic",debugInfo:process.env.NODE_ENV!=="production"};class e{static isProduction(){return t.enabled||process.env.NODE_ENV==="production"}static shouldBypassValidation(){return this.isProduction()?(this.bypassCount++,!0):this.validationDisabled?(this.bypassCount++,!0):process.env.TACHUI_VALIDATION==="false"?(this.bypassCount++,!0):!1}static disableValidation(){this.validationDisabled=!0,t.debugInfo&&console.info("🚫 TachUI validation manually disabled")}static enableValidation(){if(this.isProduction()){console.warn("⚠️ Cannot enable validation in production mode");return}this.validationDisabled=!1,t.debugInfo&&console.info("✅ TachUI validation re-enabled")}static getBypassStats(){return{mode:t.mode,bypassCount:this.bypassCount,validationDisabled:this.validationDisabled,performanceGain:this.performanceGain,optimizationLevel:t.optimizationLevel}}static configure(i){t={...t,...i},i.enabled!==void 0&&(this.validationDisabled=!i.enabled)}static recordPerformanceGain(i){this.performanceGain+=i}}u(e,"validationDisabled",!1);u(e,"bypassCount",0);u(e,"performanceGain",0);function v(o,i){return i&&e.isProduction()?i:((...n)=>e.shouldBypassValidation()?i?i(...n):void 0:o(...n))}function _(o,i,n){return e.isProduction()?o:function(...a){const r=performance.now();if(e.shouldBypassValidation()){const d=performance.now();return e.recordPerformanceGain(d-r),o.apply(this,a)}if(i)try{i(a)}catch(d){throw t.debugInfo&&n&&console.error(`Validation failed for ${n}:`,d),d}const s=o.apply(this,a),p=performance.now()-r;return p>5&&console.warn(`⚠️ Validation overhead: ${p.toFixed(2)}ms for ${n||"component"}`),s}}function h(o,i,n){return e.isProduction()?o:function(...a){if(e.shouldBypassValidation())return o.apply(this,a);if(i)try{i(a)}catch(r){throw t.debugInfo&&n&&console.error(`Modifier validation failed for ${n}:`,r),r}return o.apply(this,a)}}const E={__DEVELOPMENT_ONLY__:process.env.NODE_ENV!=="production",WEBPACK_DEFINES:{__TACHUI_VALIDATION_ENABLED__:process.env.NODE_ENV!=="production",__TACHUI_PRODUCTION_MODE__:process.env.NODE_ENV==="production",__TACHUI_DEBUG_INFO__:process.env.NODE_ENV!=="production"},VITE_DEFINES:{"import.meta.env.TACHUI_VALIDATION":process.env.NODE_ENV!=="production","import.meta.env.TACHUI_PRODUCTION":process.env.NODE_ENV==="production"}};function O(o,i){return process.env.NODE_ENV!=="production"&&!e.shouldBypassValidation()?o():i}function b(o,i){if(process.env.NODE_ENV!=="production"&&!o&&!e.shouldBypassValidation())throw new Error(`TachUI Dev Assertion: ${i}`)}function N(o,i){process.env.NODE_ENV!=="production"&&!o&&!e.shouldBypassValidation()&&console.warn(`TachUI Dev Warning: ${i}`)}function V(o,i){return e.isProduction()?o:((...n)=>{if(e.shouldBypassValidation())return o(...n);const c=performance.now(),a=o(...n),s=performance.now()-c;return s>10&&console.info(`⏱️ ${i}: ${s.toFixed(2)}ms`),a})}const l={getValidationCodeSize(){const o={total:35e3};return e.isProduction()?0:o.total},getOptimizationReport(){const o=e.getBypassStats(),i=this.getValidationCodeSize();return{mode:o.mode,validationCodeSize:i,bypassCount:o.bypassCount,performanceGain:o.performanceGain,optimization:i===0?"Fully optimized (tree-shaken)":"Development mode",recommendations:this.getOptimizationRecommendations()}},getOptimizationRecommendations(){const o=[];return e.isProduction()||o.push("Enable production mode (NODE_ENV=production) to remove validation code"),t.optimizationLevel!=="aggressive"&&o.push("Use aggressive optimization level for maximum performance"),process.env.TACHUI_VALIDATION!=="false"&&o.push("Consider setting TACHUI_VALIDATION=false for production if not needed"),o}},D={configure:e.configure,isProduction:e.isProduction,disableValidation:e.disableValidation,enableValidation:e.enableValidation,getStats:e.getBypassStats,getBundleReport:l.getOptimizationReport,test(){console.group("🚀 Production Optimization Test");const o=e.getBypassStats(),i=l.getOptimizationReport();console.info("✅ Production mode detection:",e.isProduction()),console.info("✅ Validation bypass count:",o.bypassCount),console.info("✅ Performance gain:",`${o.performanceGain.toFixed(2)}ms`),console.info("✅ Bundle optimization:",i.optimization),console.info("✅ Code size:",i.validationCodeSize===0?"Removed":`${i.validationCodeSize} bytes`),i.recommendations.length>0&&(console.info("💡 Recommendations:"),i.recommendations.forEach(n=>console.info(` • ${n}`))),console.groupEnd()}};typeof window<"u"&&!window.location.hostname.includes("localhost")&&!window.location.hostname.includes("127.0.0.1")&&!window.location.hostname.includes("dev")&&e.configure({enabled:!0,mode:"production"});exports.BuildOptimizationHints=E;exports.BundleAnalysis=l;exports.ProductionModeManager=e;exports.ProductionOptimizationUtils=D;exports.conditionalValidation=O;exports.createOptimizedComponent=_;exports.createOptimizedModifier=h;exports.createProductionOptimizedFunction=v;exports.devAssert=b;exports.devWarn=N;exports.withPerformanceMonitoring=V;
|
|
2
|
+
//# sourceMappingURL=production-bypass.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"production-bypass.cjs","sources":["../../src/validation/production-bypass.ts"],"sourcesContent":["/**\n * Production Mode Bypass System - Phase 1C\n * \n * Zero-overhead validation bypass for production builds with smart\n * compile-time elimination and runtime optimization.\n */\n\nimport type { ComponentInstance } from '../runtime/types'\n\n/**\n * Production mode detection and configuration\n */\nexport interface ProductionConfig {\n enabled: boolean\n mode: 'development' | 'production' | 'test'\n optimizationLevel: 'none' | 'basic' | 'aggressive'\n debugInfo: boolean\n}\n\n/**\n * Global production configuration\n */\nlet productionConfig: ProductionConfig = {\n enabled: process.env.NODE_ENV === 'production',\n mode: (process.env.NODE_ENV as any) || 'development',\n optimizationLevel: process.env.NODE_ENV === 'production' ? 'aggressive' : 'basic',\n debugInfo: process.env.NODE_ENV !== 'production'\n}\n\n/**\n * Production mode utilities\n */\nexport class ProductionModeManager {\n private static validationDisabled = false\n private static bypassCount = 0\n private static performanceGain = 0\n\n /**\n * Check if we're in production mode\n */\n static isProduction(): boolean {\n return productionConfig.enabled || process.env.NODE_ENV === 'production'\n }\n\n /**\n * Check if validation should be bypassed\n */\n static shouldBypassValidation(): boolean {\n // Always bypass in production\n if (this.isProduction()) {\n this.bypassCount++\n return true\n }\n\n // Check if manually disabled\n if (this.validationDisabled) {\n this.bypassCount++\n return true\n }\n\n // Check environment variable override\n if (process.env.TACHUI_VALIDATION === 'false') {\n this.bypassCount++\n return true\n }\n\n return false\n }\n\n /**\n * Manually disable validation (for testing/debugging)\n */\n static disableValidation(): void {\n this.validationDisabled = true\n if (productionConfig.debugInfo) {\n console.info('🚫 TachUI validation manually disabled')\n }\n }\n\n /**\n * Re-enable validation (only works in development)\n */\n static enableValidation(): void {\n if (this.isProduction()) {\n console.warn('⚠️ Cannot enable validation in production mode')\n return\n }\n \n this.validationDisabled = false\n if (productionConfig.debugInfo) {\n console.info('✅ TachUI validation re-enabled')\n }\n }\n\n /**\n * Get bypass statistics\n */\n static getBypassStats() {\n return {\n mode: productionConfig.mode,\n bypassCount: this.bypassCount,\n validationDisabled: this.validationDisabled,\n performanceGain: this.performanceGain,\n optimizationLevel: productionConfig.optimizationLevel\n }\n }\n\n /**\n * Configure production mode settings\n */\n static configure(config: Partial<ProductionConfig>): void {\n productionConfig = { ...productionConfig, ...config }\n \n if (config.enabled !== undefined) {\n this.validationDisabled = !config.enabled\n }\n }\n\n /**\n * Measure performance gain from bypassing validation\n */\n static recordPerformanceGain(timeMs: number): void {\n this.performanceGain += timeMs\n }\n}\n\n/**\n * Zero-overhead function wrapper for production builds\n */\nexport function createProductionOptimizedFunction<T extends (...args: any[]) => any>(\n developmentFunction: T,\n productionFunction?: T\n): T {\n // If we have a specific production function, use it\n if (productionFunction && ProductionModeManager.isProduction()) {\n return productionFunction\n }\n\n // Return optimized wrapper\n return ((...args: any[]) => {\n if (ProductionModeManager.shouldBypassValidation()) {\n // In production, try to use the production function or skip entirely\n if (productionFunction) {\n return productionFunction(...args)\n }\n \n // If no production function, return a no-op that matches expected signature\n // This should be tree-shaken out by bundlers in production\n return undefined\n }\n\n // Development mode - run full function\n return developmentFunction(...args)\n }) as T\n}\n\n/**\n * Component constructor wrapper with production optimization\n */\nexport function createOptimizedComponent<T extends ComponentInstance>(\n originalConstructor: (...args: any[]) => T,\n validator?: (args: unknown[]) => void,\n componentType?: string\n): (...args: any[]) => T {\n \n // In production, return the original constructor without validation\n if (ProductionModeManager.isProduction()) {\n return originalConstructor\n }\n\n // Development mode with validation\n return function optimizedComponent(this: any, ...args: unknown[]): T {\n const startTime = performance.now()\n \n // Skip validation if bypassed\n if (ProductionModeManager.shouldBypassValidation()) {\n const endTime = performance.now()\n ProductionModeManager.recordPerformanceGain(endTime - startTime)\n return originalConstructor.apply(this, args as any)\n }\n\n // Run validation in development\n if (validator) {\n try {\n validator(args)\n } catch (error) {\n // In development, provide detailed error information\n if (productionConfig.debugInfo && componentType) {\n console.error(`Validation failed for ${componentType}:`, error)\n }\n throw error\n }\n }\n\n const result = originalConstructor.apply(this, args as any)\n const endTime = performance.now()\n \n // Record validation overhead for monitoring\n const overhead = endTime - startTime\n if (overhead > 5) { // More than 5ms is concerning\n console.warn(`⚠️ Validation overhead: ${overhead.toFixed(2)}ms for ${componentType || 'component'}`)\n }\n\n return result\n }\n}\n\n/**\n * Modifier validation wrapper with production bypass\n */\nexport function createOptimizedModifier(\n originalModifier: Function,\n validator?: (args: unknown[]) => void,\n modifierName?: string\n): Function {\n \n // In production, return original modifier without validation\n if (ProductionModeManager.isProduction()) {\n return originalModifier\n }\n\n return function optimizedModifier(this: any, ...args: unknown[]) {\n // Skip validation if bypassed\n if (ProductionModeManager.shouldBypassValidation()) {\n return originalModifier.apply(this, args)\n }\n\n // Run validation in development\n if (validator) {\n try {\n validator(args)\n } catch (error) {\n if (productionConfig.debugInfo && modifierName) {\n console.error(`Modifier validation failed for ${modifierName}:`, error)\n }\n throw error\n }\n }\n\n return originalModifier.apply(this, args)\n }\n}\n\n/**\n * Build-time optimization hints for bundlers\n */\nexport const BuildOptimizationHints = {\n /**\n * Mark validation code for tree-shaking in production\n */\n __DEVELOPMENT_ONLY__: process.env.NODE_ENV !== 'production',\n \n /**\n * Webpack DefinePlugin constants for dead code elimination\n */\n WEBPACK_DEFINES: {\n '__TACHUI_VALIDATION_ENABLED__': process.env.NODE_ENV !== 'production',\n '__TACHUI_PRODUCTION_MODE__': process.env.NODE_ENV === 'production',\n '__TACHUI_DEBUG_INFO__': process.env.NODE_ENV !== 'production'\n },\n \n /**\n * Rollup/Vite constants for dead code elimination\n */\n VITE_DEFINES: {\n 'import.meta.env.TACHUI_VALIDATION': process.env.NODE_ENV !== 'production',\n 'import.meta.env.TACHUI_PRODUCTION': process.env.NODE_ENV === 'production'\n }\n}\n\n/**\n * Conditional validation macro for tree-shaking\n */\nexport function conditionalValidation<T>(\n validationFn: () => T,\n fallbackValue?: T\n): T | undefined {\n // This will be completely removed in production builds by bundlers\n if (process.env.NODE_ENV !== 'production' && !ProductionModeManager.shouldBypassValidation()) {\n return validationFn()\n }\n \n return fallbackValue\n}\n\n/**\n * Development-only assertion macro\n */\nexport function devAssert(condition: boolean, message: string): void {\n // Tree-shaken out in production\n if (process.env.NODE_ENV !== 'production') {\n if (!condition && !ProductionModeManager.shouldBypassValidation()) {\n throw new Error(`TachUI Dev Assertion: ${message}`)\n }\n }\n}\n\n/**\n * Development-only warning macro\n */\nexport function devWarn(condition: boolean, message: string): void {\n // Tree-shaken out in production\n if (process.env.NODE_ENV !== 'production') {\n if (!condition && !ProductionModeManager.shouldBypassValidation()) {\n console.warn(`TachUI Dev Warning: ${message}`)\n }\n }\n}\n\n/**\n * Performance monitoring wrapper\n */\nexport function withPerformanceMonitoring<T extends (...args: any[]) => any>(\n fn: T,\n name: string\n): T {\n // In production, return function without monitoring\n if (ProductionModeManager.isProduction()) {\n return fn\n }\n\n return ((...args: any[]) => {\n if (ProductionModeManager.shouldBypassValidation()) {\n return fn(...args)\n }\n\n const start = performance.now()\n const result = fn(...args)\n const end = performance.now()\n \n const duration = end - start\n if (duration > 10) { // More than 10ms is worth noting\n console.info(`⏱️ ${name}: ${duration.toFixed(2)}ms`)\n }\n \n return result\n }) as T\n}\n\n/**\n * Bundle size analysis helper\n */\nexport const BundleAnalysis = {\n /**\n * Estimate validation code size for bundle analysis\n */\n getValidationCodeSize(): number {\n // This would be replaced with actual measurements in a real implementation\n const estimatedSize = {\n validation: 15000, // ~15KB\n errorReporting: 8000, // ~8KB\n enhancedRuntime: 12000, // ~12KB\n total: 35000 // ~35KB total\n }\n \n return ProductionModeManager.isProduction() ? 0 : estimatedSize.total\n },\n\n /**\n * Get optimization report\n */\n getOptimizationReport() {\n const stats = ProductionModeManager.getBypassStats()\n const codeSize = this.getValidationCodeSize()\n \n return {\n mode: stats.mode,\n validationCodeSize: codeSize,\n bypassCount: stats.bypassCount,\n performanceGain: stats.performanceGain,\n optimization: codeSize === 0 ? 'Fully optimized (tree-shaken)' : 'Development mode',\n recommendations: this.getOptimizationRecommendations()\n }\n },\n\n /**\n * Get optimization recommendations\n */\n getOptimizationRecommendations(): string[] {\n const recommendations: string[] = []\n \n if (!ProductionModeManager.isProduction()) {\n recommendations.push('Enable production mode (NODE_ENV=production) to remove validation code')\n }\n \n if (productionConfig.optimizationLevel !== 'aggressive') {\n recommendations.push('Use aggressive optimization level for maximum performance')\n }\n \n if (process.env.TACHUI_VALIDATION !== 'false') {\n recommendations.push('Consider setting TACHUI_VALIDATION=false for production if not needed')\n }\n \n return recommendations\n }\n}\n\n/**\n * Production optimization utilities\n */\nexport const ProductionOptimizationUtils = {\n /**\n * Configure production mode\n */\n configure: ProductionModeManager.configure,\n \n /**\n * Check if in production\n */\n isProduction: ProductionModeManager.isProduction,\n \n /**\n * Manually disable validation\n */\n disableValidation: ProductionModeManager.disableValidation,\n \n /**\n * Re-enable validation (development only)\n */\n enableValidation: ProductionModeManager.enableValidation,\n \n /**\n * Get performance statistics\n */\n getStats: ProductionModeManager.getBypassStats,\n \n /**\n * Get bundle optimization report\n */\n getBundleReport: BundleAnalysis.getOptimizationReport,\n \n /**\n * Test production optimization\n */\n test(): void {\n console.group('🚀 Production Optimization Test')\n \n const stats = ProductionModeManager.getBypassStats()\n const report = BundleAnalysis.getOptimizationReport()\n \n console.info('✅ Production mode detection:', ProductionModeManager.isProduction())\n console.info('✅ Validation bypass count:', stats.bypassCount)\n console.info('✅ Performance gain:', `${stats.performanceGain.toFixed(2)}ms`)\n console.info('✅ Bundle optimization:', report.optimization)\n console.info('✅ Code size:', report.validationCodeSize === 0 ? 'Removed' : `${report.validationCodeSize} bytes`)\n \n if (report.recommendations.length > 0) {\n console.info('💡 Recommendations:')\n report.recommendations.forEach(rec => console.info(` • ${rec}`))\n }\n \n console.groupEnd()\n }\n}\n\n// Auto-configure based on environment\nif (typeof window !== 'undefined') {\n // Browser environment\n const isProduction = !window.location.hostname.includes('localhost') && \n !window.location.hostname.includes('127.0.0.1') &&\n !window.location.hostname.includes('dev')\n \n if (isProduction) {\n ProductionModeManager.configure({ enabled: true, mode: 'production' })\n }\n}"],"names":["productionConfig","ProductionModeManager","config","timeMs","__publicField","createProductionOptimizedFunction","developmentFunction","productionFunction","args","createOptimizedComponent","originalConstructor","validator","componentType","startTime","endTime","error","result","overhead","createOptimizedModifier","originalModifier","modifierName","BuildOptimizationHints","conditionalValidation","validationFn","fallbackValue","devAssert","condition","message","devWarn","withPerformanceMonitoring","fn","name","start","duration","BundleAnalysis","estimatedSize","stats","codeSize","recommendations","ProductionOptimizationUtils","report","rec"],"mappings":"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"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Production Mode Bypass System - Phase 1C
|
|
3
|
+
*
|
|
4
|
+
* Zero-overhead validation bypass for production builds with smart
|
|
5
|
+
* compile-time elimination and runtime optimization.
|
|
6
|
+
*/
|
|
7
|
+
import type { ComponentInstance } from '../runtime/types';
|
|
8
|
+
/**
|
|
9
|
+
* Production mode detection and configuration
|
|
10
|
+
*/
|
|
11
|
+
export interface ProductionConfig {
|
|
12
|
+
enabled: boolean;
|
|
13
|
+
mode: 'development' | 'production' | 'test';
|
|
14
|
+
optimizationLevel: 'none' | 'basic' | 'aggressive';
|
|
15
|
+
debugInfo: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Production mode utilities
|
|
19
|
+
*/
|
|
20
|
+
export declare class ProductionModeManager {
|
|
21
|
+
private static validationDisabled;
|
|
22
|
+
private static bypassCount;
|
|
23
|
+
private static performanceGain;
|
|
24
|
+
/**
|
|
25
|
+
* Check if we're in production mode
|
|
26
|
+
*/
|
|
27
|
+
static isProduction(): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Check if validation should be bypassed
|
|
30
|
+
*/
|
|
31
|
+
static shouldBypassValidation(): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Manually disable validation (for testing/debugging)
|
|
34
|
+
*/
|
|
35
|
+
static disableValidation(): void;
|
|
36
|
+
/**
|
|
37
|
+
* Re-enable validation (only works in development)
|
|
38
|
+
*/
|
|
39
|
+
static enableValidation(): void;
|
|
40
|
+
/**
|
|
41
|
+
* Get bypass statistics
|
|
42
|
+
*/
|
|
43
|
+
static getBypassStats(): {
|
|
44
|
+
mode: "test" | "development" | "production";
|
|
45
|
+
bypassCount: number;
|
|
46
|
+
validationDisabled: boolean;
|
|
47
|
+
performanceGain: number;
|
|
48
|
+
optimizationLevel: "none" | "basic" | "aggressive";
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Configure production mode settings
|
|
52
|
+
*/
|
|
53
|
+
static configure(config: Partial<ProductionConfig>): void;
|
|
54
|
+
/**
|
|
55
|
+
* Measure performance gain from bypassing validation
|
|
56
|
+
*/
|
|
57
|
+
static recordPerformanceGain(timeMs: number): void;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Zero-overhead function wrapper for production builds
|
|
61
|
+
*/
|
|
62
|
+
export declare function createProductionOptimizedFunction<T extends (...args: any[]) => any>(developmentFunction: T, productionFunction?: T): T;
|
|
63
|
+
/**
|
|
64
|
+
* Component constructor wrapper with production optimization
|
|
65
|
+
*/
|
|
66
|
+
export declare function createOptimizedComponent<T extends ComponentInstance>(originalConstructor: (...args: any[]) => T, validator?: (args: unknown[]) => void, componentType?: string): (...args: any[]) => T;
|
|
67
|
+
/**
|
|
68
|
+
* Modifier validation wrapper with production bypass
|
|
69
|
+
*/
|
|
70
|
+
export declare function createOptimizedModifier(originalModifier: Function, validator?: (args: unknown[]) => void, modifierName?: string): Function;
|
|
71
|
+
/**
|
|
72
|
+
* Build-time optimization hints for bundlers
|
|
73
|
+
*/
|
|
74
|
+
export declare const BuildOptimizationHints: {
|
|
75
|
+
/**
|
|
76
|
+
* Mark validation code for tree-shaking in production
|
|
77
|
+
*/
|
|
78
|
+
__DEVELOPMENT_ONLY__: boolean;
|
|
79
|
+
/**
|
|
80
|
+
* Webpack DefinePlugin constants for dead code elimination
|
|
81
|
+
*/
|
|
82
|
+
WEBPACK_DEFINES: {
|
|
83
|
+
__TACHUI_VALIDATION_ENABLED__: boolean;
|
|
84
|
+
__TACHUI_PRODUCTION_MODE__: boolean;
|
|
85
|
+
__TACHUI_DEBUG_INFO__: boolean;
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Rollup/Vite constants for dead code elimination
|
|
89
|
+
*/
|
|
90
|
+
VITE_DEFINES: {
|
|
91
|
+
'import.meta.env.TACHUI_VALIDATION': boolean;
|
|
92
|
+
'import.meta.env.TACHUI_PRODUCTION': boolean;
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Conditional validation macro for tree-shaking
|
|
97
|
+
*/
|
|
98
|
+
export declare function conditionalValidation<T>(validationFn: () => T, fallbackValue?: T): T | undefined;
|
|
99
|
+
/**
|
|
100
|
+
* Development-only assertion macro
|
|
101
|
+
*/
|
|
102
|
+
export declare function devAssert(condition: boolean, message: string): void;
|
|
103
|
+
/**
|
|
104
|
+
* Development-only warning macro
|
|
105
|
+
*/
|
|
106
|
+
export declare function devWarn(condition: boolean, message: string): void;
|
|
107
|
+
/**
|
|
108
|
+
* Performance monitoring wrapper
|
|
109
|
+
*/
|
|
110
|
+
export declare function withPerformanceMonitoring<T extends (...args: any[]) => any>(fn: T, name: string): T;
|
|
111
|
+
/**
|
|
112
|
+
* Bundle size analysis helper
|
|
113
|
+
*/
|
|
114
|
+
export declare const BundleAnalysis: {
|
|
115
|
+
/**
|
|
116
|
+
* Estimate validation code size for bundle analysis
|
|
117
|
+
*/
|
|
118
|
+
getValidationCodeSize(): number;
|
|
119
|
+
/**
|
|
120
|
+
* Get optimization report
|
|
121
|
+
*/
|
|
122
|
+
getOptimizationReport(): {
|
|
123
|
+
mode: "test" | "development" | "production";
|
|
124
|
+
validationCodeSize: number;
|
|
125
|
+
bypassCount: number;
|
|
126
|
+
performanceGain: number;
|
|
127
|
+
optimization: string;
|
|
128
|
+
recommendations: string[];
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* Get optimization recommendations
|
|
132
|
+
*/
|
|
133
|
+
getOptimizationRecommendations(): string[];
|
|
134
|
+
};
|
|
135
|
+
/**
|
|
136
|
+
* Production optimization utilities
|
|
137
|
+
*/
|
|
138
|
+
export declare const ProductionOptimizationUtils: {
|
|
139
|
+
/**
|
|
140
|
+
* Configure production mode
|
|
141
|
+
*/
|
|
142
|
+
configure: typeof ProductionModeManager.configure;
|
|
143
|
+
/**
|
|
144
|
+
* Check if in production
|
|
145
|
+
*/
|
|
146
|
+
isProduction: typeof ProductionModeManager.isProduction;
|
|
147
|
+
/**
|
|
148
|
+
* Manually disable validation
|
|
149
|
+
*/
|
|
150
|
+
disableValidation: typeof ProductionModeManager.disableValidation;
|
|
151
|
+
/**
|
|
152
|
+
* Re-enable validation (development only)
|
|
153
|
+
*/
|
|
154
|
+
enableValidation: typeof ProductionModeManager.enableValidation;
|
|
155
|
+
/**
|
|
156
|
+
* Get performance statistics
|
|
157
|
+
*/
|
|
158
|
+
getStats: typeof ProductionModeManager.getBypassStats;
|
|
159
|
+
/**
|
|
160
|
+
* Get bundle optimization report
|
|
161
|
+
*/
|
|
162
|
+
getBundleReport: () => {
|
|
163
|
+
mode: "test" | "development" | "production";
|
|
164
|
+
validationCodeSize: number;
|
|
165
|
+
bypassCount: number;
|
|
166
|
+
performanceGain: number;
|
|
167
|
+
optimization: string;
|
|
168
|
+
recommendations: string[];
|
|
169
|
+
};
|
|
170
|
+
/**
|
|
171
|
+
* Test production optimization
|
|
172
|
+
*/
|
|
173
|
+
test(): void;
|
|
174
|
+
};
|
|
175
|
+
//# sourceMappingURL=production-bypass.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"production-bypass.d.ts","sourceRoot":"","sources":["../../src/validation/production-bypass.ts"],"names":[],"mappings":"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"}
|