@qwickapps/react-framework 1.4.1 → 1.4.2
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/QUICK_START_GUIDE.md +82 -0
- package/README.md +221 -21
- package/dist/components/Html.d.ts.map +1 -1
- package/dist/components/Markdown.d.ts +1 -2
- package/dist/components/Markdown.d.ts.map +1 -1
- package/dist/components/SafeSpan.d.ts +1 -2
- package/dist/components/SafeSpan.d.ts.map +1 -1
- package/dist/components/base/Container.d.ts +32 -0
- package/dist/components/base/Container.d.ts.map +1 -0
- package/dist/components/base/ContainerView.d.ts +65 -0
- package/dist/components/base/ContainerView.d.ts.map +1 -0
- package/dist/components/base/ModelView.d.ts +37 -46
- package/dist/components/base/ModelView.d.ts.map +1 -1
- package/dist/components/base/index.d.ts +3 -2
- package/dist/components/base/index.d.ts.map +1 -1
- package/dist/components/blocks/Article.d.ts +1 -2
- package/dist/components/blocks/Article.d.ts.map +1 -1
- package/dist/components/blocks/Code-factory.d.ts +22 -0
- package/dist/components/blocks/Code-factory.d.ts.map +1 -0
- package/dist/components/blocks/Code-old.d.ts +31 -0
- package/dist/components/blocks/Code-old.d.ts.map +1 -0
- package/dist/components/blocks/Code.d.ts +30 -18
- package/dist/components/blocks/Code.d.ts.map +1 -1
- package/dist/components/blocks/HeroBlock.d.ts +1 -2
- package/dist/components/blocks/HeroBlock.d.ts.map +1 -1
- package/dist/components/blocks/Image.d.ts +1 -2
- package/dist/components/blocks/Image.d.ts.map +1 -1
- package/dist/components/blocks/Section.d.ts +1 -2
- package/dist/components/blocks/Section.d.ts.map +1 -1
- package/dist/components/blocks/Text.d.ts +35 -27
- package/dist/components/blocks/Text.d.ts.map +1 -1
- package/dist/components/buttons/Button.d.ts +1 -2
- package/dist/components/buttons/Button.d.ts.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/input/ChoiceInputField.d.ts +1 -2
- package/dist/components/input/ChoiceInputField.d.ts.map +1 -1
- package/dist/components/input/HtmlInputField.d.ts +1 -2
- package/dist/components/input/HtmlInputField.d.ts.map +1 -1
- package/dist/components/input/SelectInputField.d.ts +1 -2
- package/dist/components/input/SelectInputField.d.ts.map +1 -1
- package/dist/components/pages/Page.d.ts +29 -47
- package/dist/components/pages/Page.d.ts.map +1 -1
- package/dist/components/pages/index.d.ts +2 -3
- package/dist/components/pages/index.d.ts.map +1 -1
- package/dist/components/shared/createSerializableView.d.ts +68 -0
- package/dist/components/shared/createSerializableView.d.ts.map +1 -0
- package/dist/components/shared/viewProps.d.ts +37 -0
- package/dist/components/shared/viewProps.d.ts.map +1 -0
- package/dist/index.esm.js +21782 -22580
- package/dist/index.js +21782 -22579
- package/dist/qa/ConsoleWarningTest.d.ts +5 -0
- package/dist/qa/ConsoleWarningTest.d.ts.map +1 -0
- package/dist/qa/StorageKeyTest.d.ts +6 -0
- package/dist/qa/StorageKeyTest.d.ts.map +1 -0
- package/dist/qa/ThemeStorageKeyTest.d.ts +6 -0
- package/dist/qa/ThemeStorageKeyTest.d.ts.map +1 -0
- package/dist/schemas/CodeSchema.d.ts +2 -2
- package/dist/schemas/CodeSchema.d.ts.map +1 -1
- package/dist/schemas/ContainerSchema.d.ts +12 -0
- package/dist/schemas/ContainerSchema.d.ts.map +1 -0
- package/dist/schemas/PageTemplateSchema.d.ts +3 -3
- package/dist/schemas/PageTemplateSchema.d.ts.map +1 -1
- package/dist/schemas/ViewModelSchema.d.ts +46 -6
- package/dist/schemas/ViewModelSchema.d.ts.map +1 -1
- package/dist/schemas/ViewSchema.d.ts +65 -0
- package/dist/schemas/ViewSchema.d.ts.map +1 -0
- package/dist/schemas/index.d.ts +1 -1
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/transformers/ComponentTransformer.d.ts +27 -15
- package/dist/schemas/transformers/ComponentTransformer.d.ts.map +1 -1
- package/dist/schemas/transformers/ReactNodeTransformer.d.ts.map +1 -1
- package/dist/schemas/transformers/registry.d.ts +3 -0
- package/dist/schemas/transformers/registry.d.ts.map +1 -1
- package/dist/src/__tests__/schemas/transformers/MockSerializableComponent.d.ts +66 -0
- package/dist/src/__tests__/schemas/transformers/MockSerializableComponent.d.ts.map +1 -0
- package/dist/src/components/AccessibilityChecker.d.ts +12 -0
- package/dist/src/components/AccessibilityChecker.d.ts.map +1 -0
- package/dist/src/components/AccessibilityProvider.d.ts +64 -0
- package/dist/src/components/AccessibilityProvider.d.ts.map +1 -0
- package/dist/src/components/Breadcrumbs.d.ts +39 -0
- package/dist/src/components/Breadcrumbs.d.ts.map +1 -0
- package/dist/src/components/ErrorBoundary.d.ts +46 -0
- package/dist/src/components/ErrorBoundary.d.ts.map +1 -0
- package/dist/src/components/Html.d.ts +58 -0
- package/dist/src/components/Html.d.ts.map +1 -0
- package/dist/src/components/Logo.d.ts +56 -0
- package/dist/src/components/Logo.d.ts.map +1 -0
- package/dist/src/components/Markdown.d.ts +51 -0
- package/dist/src/components/Markdown.d.ts.map +1 -0
- package/dist/src/components/QwickApp.d.ts +69 -0
- package/dist/src/components/QwickApp.d.ts.map +1 -0
- package/dist/src/components/QwickAppsLogo.d.ts +25 -0
- package/dist/src/components/QwickAppsLogo.d.ts.map +1 -0
- package/dist/src/components/QwickIcon.d.ts +23 -0
- package/dist/src/components/QwickIcon.d.ts.map +1 -0
- package/dist/src/components/ResponsiveMenu.d.ts +38 -0
- package/dist/src/components/ResponsiveMenu.d.ts.map +1 -0
- package/dist/src/components/SafeSpan.d.ts +29 -0
- package/dist/src/components/SafeSpan.d.ts.map +1 -0
- package/dist/src/components/Scaffold.d.ts +57 -0
- package/dist/src/components/Scaffold.d.ts.map +1 -0
- package/dist/src/components/base/Container.d.ts +33 -0
- package/dist/src/components/base/Container.d.ts.map +1 -0
- package/dist/src/components/base/ModelView.d.ts +92 -0
- package/dist/src/components/base/ModelView.d.ts.map +1 -0
- package/dist/src/components/base/index.d.ts +12 -0
- package/dist/src/components/base/index.d.ts.map +1 -0
- package/dist/src/components/blocks/Article.d.ts +32 -0
- package/dist/src/components/blocks/Article.d.ts.map +1 -0
- package/dist/src/components/blocks/CardListGrid.d.ts +23 -0
- package/dist/src/components/blocks/CardListGrid.d.ts.map +1 -0
- package/dist/src/components/blocks/Code.d.ts +37 -0
- package/dist/src/components/blocks/Code.d.ts.map +1 -0
- package/dist/src/components/blocks/Content.d.ts +24 -0
- package/dist/src/components/blocks/Content.d.ts.map +1 -0
- package/dist/src/components/blocks/CoverImageHeader.d.ts +44 -0
- package/dist/src/components/blocks/CoverImageHeader.d.ts.map +1 -0
- package/dist/src/components/blocks/FeatureCard.d.ts +66 -0
- package/dist/src/components/blocks/FeatureCard.d.ts.map +1 -0
- package/dist/src/components/blocks/FeatureGrid.d.ts +48 -0
- package/dist/src/components/blocks/FeatureGrid.d.ts.map +1 -0
- package/dist/src/components/blocks/Footer.d.ts +56 -0
- package/dist/src/components/blocks/Footer.d.ts.map +1 -0
- package/dist/src/components/blocks/HeroBlock.d.ts +55 -0
- package/dist/src/components/blocks/HeroBlock.d.ts.map +1 -0
- package/dist/src/components/blocks/Image.d.ts +40 -0
- package/dist/src/components/blocks/Image.d.ts.map +1 -0
- package/dist/src/components/blocks/PageBannerHeader.d.ts +30 -0
- package/dist/src/components/blocks/PageBannerHeader.d.ts.map +1 -0
- package/dist/src/components/blocks/ProductCard.d.ts +57 -0
- package/dist/src/components/blocks/ProductCard.d.ts.map +1 -0
- package/dist/src/components/blocks/Section.d.ts +45 -0
- package/dist/src/components/blocks/Section.d.ts.map +1 -0
- package/dist/src/components/blocks/Text.d.ts +34 -0
- package/dist/src/components/blocks/Text.d.ts.map +1 -0
- package/dist/src/components/blocks/index.d.ts +41 -0
- package/dist/src/components/blocks/index.d.ts.map +1 -0
- package/dist/src/components/buttons/Button.d.ts +41 -0
- package/dist/src/components/buttons/Button.d.ts.map +1 -0
- package/dist/src/components/buttons/PaletteSwitcher.d.ts +24 -0
- package/dist/src/components/buttons/PaletteSwitcher.d.ts.map +1 -0
- package/dist/src/components/buttons/ThemeSwitcher.d.ts +24 -0
- package/dist/src/components/buttons/ThemeSwitcher.d.ts.map +1 -0
- package/dist/src/components/buttons/index.d.ts +11 -0
- package/dist/src/components/buttons/index.d.ts.map +1 -0
- package/dist/src/components/forms/FormBlock.d.ts +51 -0
- package/dist/src/components/forms/FormBlock.d.ts.map +1 -0
- package/dist/src/components/forms/index.d.ts +8 -0
- package/dist/src/components/forms/index.d.ts.map +1 -0
- package/dist/src/components/index.d.ts +41 -0
- package/dist/src/components/index.d.ts.map +1 -0
- package/dist/src/components/input/ChoiceInputField.d.ts +29 -0
- package/dist/src/components/input/ChoiceInputField.d.ts.map +1 -0
- package/dist/src/components/input/HtmlInputField.d.ts +33 -0
- package/dist/src/components/input/HtmlInputField.d.ts.map +1 -0
- package/dist/src/components/input/SelectInputField.d.ts +31 -0
- package/dist/src/components/input/SelectInputField.d.ts.map +1 -0
- package/dist/src/components/input/SwitchInputField.d.ts +27 -0
- package/dist/src/components/input/SwitchInputField.d.ts.map +1 -0
- package/dist/src/components/input/TextField.d.ts +18 -0
- package/dist/src/components/input/TextField.d.ts.map +1 -0
- package/dist/src/components/input/TextInputField.d.ts +34 -0
- package/dist/src/components/input/TextInputField.d.ts.map +1 -0
- package/dist/src/components/input/index.d.ts +19 -0
- package/dist/src/components/input/index.d.ts.map +1 -0
- package/dist/src/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts +34 -0
- package/dist/src/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts.map +1 -0
- package/dist/src/components/layout/CollapsibleLayout/index.d.ts +9 -0
- package/dist/src/components/layout/CollapsibleLayout/index.d.ts.map +1 -0
- package/dist/src/components/layout/GridCell.d.ts +32 -0
- package/dist/src/components/layout/GridCell.d.ts.map +1 -0
- package/dist/src/components/layout/GridCellWrapper.d.ts +46 -0
- package/dist/src/components/layout/GridCellWrapper.d.ts.map +1 -0
- package/dist/src/components/layout/GridLayout.d.ts +50 -0
- package/dist/src/components/layout/GridLayout.d.ts.map +1 -0
- package/dist/src/components/layout/index.d.ts +14 -0
- package/dist/src/components/layout/index.d.ts.map +1 -0
- package/dist/src/components/menu/Menu.d.ts +1 -0
- package/dist/src/components/menu/Menu.d.ts.map +1 -0
- package/dist/src/components/menu/MenuItem.d.ts +31 -0
- package/dist/src/components/menu/MenuItem.d.ts.map +1 -0
- package/dist/src/components/menu/index.d.ts +7 -0
- package/dist/src/components/menu/index.d.ts.map +1 -0
- package/dist/src/components/pages/FormPage.d.ts +66 -0
- package/dist/src/components/pages/FormPage.d.ts.map +1 -0
- package/dist/src/components/pages/Page.d.ts +68 -0
- package/dist/src/components/pages/Page.d.ts.map +1 -0
- package/dist/src/components/pages/index.d.ts +10 -0
- package/dist/src/components/pages/index.d.ts.map +1 -0
- package/dist/src/components/shared/createSerializableView.d.ts +81 -0
- package/dist/src/components/shared/createSerializableView.d.ts.map +1 -0
- package/dist/src/components/shared/viewProps.d.ts +37 -0
- package/dist/src/components/shared/viewProps.d.ts.map +1 -0
- package/dist/src/config/AppConfig.d.ts +49 -0
- package/dist/src/config/AppConfig.d.ts.map +1 -0
- package/dist/src/config/AppConfigBuilder.d.ts +75 -0
- package/dist/src/config/AppConfigBuilder.d.ts.map +1 -0
- package/dist/src/config/index.d.ts +13 -0
- package/dist/src/config/index.d.ts.map +1 -0
- package/dist/src/config/types.d.ts +130 -0
- package/dist/src/config/types.d.ts.map +1 -0
- package/dist/src/config.d.ts +15 -0
- package/dist/src/config.d.ts.map +1 -0
- package/dist/src/contexts/DataContext.d.ts +139 -0
- package/dist/src/contexts/DataContext.d.ts.map +1 -0
- package/dist/src/contexts/DimensionsContext.d.ts +42 -0
- package/dist/src/contexts/DimensionsContext.d.ts.map +1 -0
- package/dist/src/contexts/PaletteContext.d.ts +53 -0
- package/dist/src/contexts/PaletteContext.d.ts.map +1 -0
- package/dist/src/contexts/PrintModeContext.d.ts +27 -0
- package/dist/src/contexts/PrintModeContext.d.ts.map +1 -0
- package/dist/src/contexts/QwickAppContext.d.ts +71 -0
- package/dist/src/contexts/QwickAppContext.d.ts.map +1 -0
- package/dist/src/contexts/ThemeContext.d.ts +65 -0
- package/dist/src/contexts/ThemeContext.d.ts.map +1 -0
- package/dist/src/contexts/index.d.ts +11 -0
- package/dist/src/contexts/index.d.ts.map +1 -0
- package/dist/src/hooks/index.d.ts +12 -0
- package/dist/src/hooks/index.d.ts.map +1 -0
- package/dist/src/hooks/useBaseProps.d.ts +101 -0
- package/dist/src/hooks/useBaseProps.d.ts.map +1 -0
- package/dist/src/hooks/useDataBinding.d.ts +22 -0
- package/dist/src/hooks/useDataBinding.d.ts.map +1 -0
- package/dist/src/hooks/usePrintMode.d.ts +39 -0
- package/dist/src/hooks/usePrintMode.d.ts.map +1 -0
- package/dist/src/index.d.ts +9 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/palettes/PaletteAutumn.d.ts +10 -0
- package/dist/src/palettes/PaletteAutumn.d.ts.map +1 -0
- package/dist/src/palettes/PaletteCosmic.d.ts +10 -0
- package/dist/src/palettes/PaletteCosmic.d.ts.map +1 -0
- package/dist/src/palettes/PaletteDefault.d.ts +10 -0
- package/dist/src/palettes/PaletteDefault.d.ts.map +1 -0
- package/dist/src/palettes/PaletteOcean.d.ts +10 -0
- package/dist/src/palettes/PaletteOcean.d.ts.map +1 -0
- package/dist/src/palettes/PaletteSpring.d.ts +10 -0
- package/dist/src/palettes/PaletteSpring.d.ts.map +1 -0
- package/dist/src/palettes/PaletteWinter.d.ts +10 -0
- package/dist/src/palettes/PaletteWinter.d.ts.map +1 -0
- package/dist/src/palettes/index.d.ts +13 -0
- package/dist/src/palettes/index.d.ts.map +1 -0
- package/dist/src/schemas/ActionSchema.d.ts +21 -0
- package/dist/src/schemas/ActionSchema.d.ts.map +1 -0
- package/dist/src/schemas/ArticleSchema.d.ts +13 -0
- package/dist/src/schemas/ArticleSchema.d.ts.map +1 -0
- package/dist/src/schemas/ButtonSchema.d.ts +19 -0
- package/dist/src/schemas/ButtonSchema.d.ts.map +1 -0
- package/dist/src/schemas/CardListGridSchema.d.ts +17 -0
- package/dist/src/schemas/CardListGridSchema.d.ts.map +1 -0
- package/dist/src/schemas/ChoiceInputFieldSchema.d.ts +18 -0
- package/dist/src/schemas/ChoiceInputFieldSchema.d.ts.map +1 -0
- package/dist/src/schemas/CodeSchema.d.ts +18 -0
- package/dist/src/schemas/CodeSchema.d.ts.map +1 -0
- package/dist/src/schemas/CollapsibleLayoutSchema.d.ts +32 -0
- package/dist/src/schemas/CollapsibleLayoutSchema.d.ts.map +1 -0
- package/dist/src/schemas/ContainerSchema.d.ts +12 -0
- package/dist/src/schemas/ContainerSchema.d.ts.map +1 -0
- package/dist/src/schemas/ContentSchema.d.ts +21 -0
- package/dist/src/schemas/ContentSchema.d.ts.map +1 -0
- package/dist/src/schemas/CoverImageHeaderSchema.d.ts +28 -0
- package/dist/src/schemas/CoverImageHeaderSchema.d.ts.map +1 -0
- package/dist/src/schemas/FeatureCardSchema.d.ts +28 -0
- package/dist/src/schemas/FeatureCardSchema.d.ts.map +1 -0
- package/dist/src/schemas/FeatureGridSchema.d.ts +17 -0
- package/dist/src/schemas/FeatureGridSchema.d.ts.map +1 -0
- package/dist/src/schemas/FeatureItemSchema.d.ts +16 -0
- package/dist/src/schemas/FeatureItemSchema.d.ts.map +1 -0
- package/dist/src/schemas/FooterItemSchema.d.ts +15 -0
- package/dist/src/schemas/FooterItemSchema.d.ts.map +1 -0
- package/dist/src/schemas/FooterSchema.d.ts +20 -0
- package/dist/src/schemas/FooterSchema.d.ts.map +1 -0
- package/dist/src/schemas/FooterSectionSchema.d.ts +15 -0
- package/dist/src/schemas/FooterSectionSchema.d.ts.map +1 -0
- package/dist/src/schemas/FormBlockSchema.d.ts +19 -0
- package/dist/src/schemas/FormBlockSchema.d.ts.map +1 -0
- package/dist/src/schemas/GridCellSchema.d.ts +23 -0
- package/dist/src/schemas/GridCellSchema.d.ts.map +1 -0
- package/dist/src/schemas/GridLayoutSchema.d.ts +21 -0
- package/dist/src/schemas/GridLayoutSchema.d.ts.map +1 -0
- package/dist/src/schemas/HeaderActionSchema.d.ts +17 -0
- package/dist/src/schemas/HeaderActionSchema.d.ts.map +1 -0
- package/dist/src/schemas/HeroBlockSchema.d.ts +22 -0
- package/dist/src/schemas/HeroBlockSchema.d.ts.map +1 -0
- package/dist/src/schemas/HtmlInputFieldSchema.d.ts +18 -0
- package/dist/src/schemas/HtmlInputFieldSchema.d.ts.map +1 -0
- package/dist/src/schemas/HtmlSchema.d.ts +14 -0
- package/dist/src/schemas/HtmlSchema.d.ts.map +1 -0
- package/dist/src/schemas/ImageSchema.d.ts +32 -0
- package/dist/src/schemas/ImageSchema.d.ts.map +1 -0
- package/dist/src/schemas/LogoSchema.d.ts +35 -0
- package/dist/src/schemas/LogoSchema.d.ts.map +1 -0
- package/dist/src/schemas/MarkdownSchema.d.ts +14 -0
- package/dist/src/schemas/MarkdownSchema.d.ts.map +1 -0
- package/dist/src/schemas/MetadataItemSchema.d.ts +13 -0
- package/dist/src/schemas/MetadataItemSchema.d.ts.map +1 -0
- package/dist/src/schemas/PageBannerHeaderSchema.d.ts +28 -0
- package/dist/src/schemas/PageBannerHeaderSchema.d.ts.map +1 -0
- package/dist/src/schemas/PageTemplateSchema.d.ts +31 -0
- package/dist/src/schemas/PageTemplateSchema.d.ts.map +1 -0
- package/dist/src/schemas/PaletteSwitcherSchema.d.ts +16 -0
- package/dist/src/schemas/PaletteSwitcherSchema.d.ts.map +1 -0
- package/dist/src/schemas/PrintConfigSchema.d.ts +31 -0
- package/dist/src/schemas/PrintConfigSchema.d.ts.map +1 -0
- package/dist/src/schemas/ProductCardSchema.d.ts +39 -0
- package/dist/src/schemas/ProductCardSchema.d.ts.map +1 -0
- package/dist/src/schemas/SafeSpanSchema.d.ts +13 -0
- package/dist/src/schemas/SafeSpanSchema.d.ts.map +1 -0
- package/dist/src/schemas/SectionSchema.d.ts +16 -0
- package/dist/src/schemas/SectionSchema.d.ts.map +1 -0
- package/dist/src/schemas/SelectInputFieldSchema.d.ts +27 -0
- package/dist/src/schemas/SelectInputFieldSchema.d.ts.map +1 -0
- package/dist/src/schemas/SwitchInputFieldSchema.d.ts +18 -0
- package/dist/src/schemas/SwitchInputFieldSchema.d.ts.map +1 -0
- package/dist/src/schemas/TextInputFieldSchema.d.ts +22 -0
- package/dist/src/schemas/TextInputFieldSchema.d.ts.map +1 -0
- package/dist/src/schemas/TextSchema.d.ts +37 -0
- package/dist/src/schemas/TextSchema.d.ts.map +1 -0
- package/dist/src/schemas/ThemeSwitcherSchema.d.ts +19 -0
- package/dist/src/schemas/ThemeSwitcherSchema.d.ts.map +1 -0
- package/dist/src/schemas/ViewSchema.d.ts +66 -0
- package/dist/src/schemas/ViewSchema.d.ts.map +1 -0
- package/dist/src/schemas/index.d.ts +47 -0
- package/dist/src/schemas/index.d.ts.map +1 -0
- package/dist/src/schemas/transformers/ComponentTransformer.d.ts +128 -0
- package/dist/src/schemas/transformers/ComponentTransformer.d.ts.map +1 -0
- package/dist/src/schemas/transformers/ReactNodeTransformer.d.ts +53 -0
- package/dist/src/schemas/transformers/ReactNodeTransformer.d.ts.map +1 -0
- package/dist/src/schemas/transformers/registry.d.ts +18 -0
- package/dist/src/schemas/transformers/registry.d.ts.map +1 -0
- package/dist/src/schemas/types/Serializable.d.ts +46 -0
- package/dist/src/schemas/types/Serializable.d.ts.map +1 -0
- package/dist/src/stories/_templates/SerializationTemplate.d.ts +44 -0
- package/dist/src/stories/_templates/SerializationTemplate.d.ts.map +1 -0
- package/dist/src/templates/TemplateResolver.d.ts +52 -0
- package/dist/src/templates/TemplateResolver.d.ts.map +1 -0
- package/dist/src/templates/index.d.ts +7 -0
- package/dist/src/templates/index.d.ts.map +1 -0
- package/dist/src/types/CacheProvider.d.ts +18 -0
- package/dist/src/types/CacheProvider.d.ts.map +1 -0
- package/dist/src/types/CollapsibleLayout.d.ts +142 -0
- package/dist/src/types/CollapsibleLayout.d.ts.map +1 -0
- package/dist/src/types/ContentProxy.d.ts +47 -0
- package/dist/src/types/ContentProxy.d.ts.map +1 -0
- package/dist/src/types/DataTypes.d.ts +185 -0
- package/dist/src/types/DataTypes.d.ts.map +1 -0
- package/dist/src/types/TemplateProvider.d.ts +10 -0
- package/dist/src/types/TemplateProvider.d.ts.map +1 -0
- package/dist/src/types/TemplateResolver.d.ts +23 -0
- package/dist/src/types/TemplateResolver.d.ts.map +1 -0
- package/dist/src/types/index.d.ts +82 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/utils/breakpoints.d.ts +35 -0
- package/dist/src/utils/breakpoints.d.ts.map +1 -0
- package/dist/src/utils/cssUtils.d.ts +17 -0
- package/dist/src/utils/cssUtils.d.ts.map +1 -0
- package/dist/src/utils/customPaletteManager.d.ts +8 -0
- package/dist/src/utils/customPaletteManager.d.ts.map +1 -0
- package/dist/src/utils/dimensions.d.ts +34 -0
- package/dist/src/utils/dimensions.d.ts.map +1 -0
- package/dist/src/utils/htmlTransform.d.ts +44 -0
- package/dist/src/utils/htmlTransform.d.ts.map +1 -0
- package/dist/src/utils/index.d.ts +16 -0
- package/dist/src/utils/index.d.ts.map +1 -0
- package/dist/src/utils/logger.d.ts +26 -0
- package/dist/src/utils/logger.d.ts.map +1 -0
- package/dist/src/utils/paletteUtils.d.ts +38 -0
- package/dist/src/utils/paletteUtils.d.ts.map +1 -0
- package/dist/src/utils/persistenceUtils.d.ts +31 -0
- package/dist/src/utils/persistenceUtils.d.ts.map +1 -0
- package/dist/src/utils/reactUtils.d.ts +33 -0
- package/dist/src/utils/reactUtils.d.ts.map +1 -0
- package/dist/src/utils/spacing.d.ts +34 -0
- package/dist/src/utils/spacing.d.ts.map +1 -0
- package/dist/src/utils/themePerformanceMonitor.d.ts +32 -0
- package/dist/src/utils/themePerformanceMonitor.d.ts.map +1 -0
- package/dist/src/utils/themeUtils.d.ts +27 -0
- package/dist/src/utils/themeUtils.d.ts.map +1 -0
- package/dist/utils/cssUtils.d.ts +17 -0
- package/dist/utils/cssUtils.d.ts.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +5 -2
- package/scripts/bundle-css.cjs +27 -0
- package/scripts/create-project.sh +28 -0
- package/scripts/create-qwickapps-project.js +284 -0
- package/src/__tests__/components/base/Container.test.tsx +966 -0
- package/src/__tests__/schemas/PageTemplateSchema.test.ts +1 -1
- package/src/__tests__/schemas/ViewSchema.test.ts +805 -0
- package/src/__tests__/schemas/builders.test.ts +2 -2
- package/src/__tests__/schemas/transformers/ComponentTransformer.test.ts +19 -19
- package/src/__tests__/schemas/transformers/CrossBrowserCompatibility.test.ts +13 -13
- package/src/__tests__/schemas/transformers/SerializationErrorHandling.test.ts +39 -39
- package/src/__tests__/schemas/transformers/SerializationPerformance.test.ts +14 -14
- package/src/__tests__/schemas/transformers/TestAutomation.test.ts +8 -8
- package/src/__tests__/schemas/transformers/nested-serialization.test.tsx +181 -0
- package/src/__tests__/schemas/transformers/round-trip-component-serialization.test.tsx +458 -0
- package/src/__tests__/test_image_accessibility.test.tsx +226 -0
- package/src/__tests__/utils/optional-logging.test.ts +3 -3
- package/src/components/Html.tsx +24 -15
- package/src/components/Logo.tsx +2 -2
- package/src/components/Markdown.tsx +2 -7
- package/src/components/SafeSpan.tsx +2 -7
- package/src/components/base/Container.tsx +61 -0
- package/src/components/base/ModelView.tsx +225 -91
- package/src/components/base/index.ts +3 -2
- package/src/components/blocks/Article.tsx +2 -7
- package/src/components/blocks/CardListGrid.tsx +2 -2
- package/src/components/blocks/Code.tsx +91 -179
- package/src/components/blocks/Content.tsx +2 -2
- package/src/components/blocks/CoverImageHeader.tsx +2 -2
- package/src/components/blocks/HeroBlock.tsx +54 -146
- package/src/components/blocks/Image.tsx +82 -196
- package/src/components/blocks/PageBannerHeader.tsx +2 -2
- package/src/components/blocks/Section.tsx +79 -181
- package/src/components/blocks/Text.tsx +100 -198
- package/src/components/buttons/Button.tsx +85 -183
- package/src/components/buttons/PaletteSwitcher.tsx +2 -2
- package/src/components/buttons/ThemeSwitcher.tsx +2 -2
- package/src/components/forms/FormBlock.tsx +2 -2
- package/src/components/index.ts +5 -0
- package/src/components/input/ChoiceInputField.tsx +76 -160
- package/src/components/input/HtmlInputField.tsx +141 -264
- package/src/components/input/SelectInputField.tsx +48 -153
- package/src/components/input/SwitchInputField.tsx +41 -139
- package/src/components/input/TextInputField.tsx +39 -116
- package/src/components/layout/GridCell.tsx +36 -122
- package/src/components/layout/GridLayout.tsx +55 -127
- package/src/components/pages/Page.tsx +268 -276
- package/src/components/pages/index.ts +2 -3
- package/src/components/shared/createSerializableView.tsx +280 -0
- package/src/components/shared/viewProps.ts +207 -0
- package/src/config/__tests__/AppConfigBuilder.test.ts +2 -2
- package/src/contexts/DataContext.tsx +1 -1
- package/src/schemas/ButtonSchema.ts +3 -2
- package/src/schemas/CardListGridSchema.ts +3 -2
- package/src/schemas/ChoiceInputFieldSchema.ts +3 -2
- package/src/schemas/CodeSchema.ts +8 -6
- package/src/schemas/ContainerSchema.ts +25 -0
- package/src/schemas/FeatureCardSchema.ts +1 -1
- package/src/schemas/FormBlockSchema.ts +3 -2
- package/src/schemas/GridCellSchema.ts +4 -10
- package/src/schemas/GridLayoutSchema.ts +8 -14
- package/src/schemas/HeroBlockSchema.ts +3 -2
- package/src/schemas/HtmlInputFieldSchema.ts +3 -2
- package/src/schemas/ImageSchema.ts +3 -2
- package/src/schemas/PageTemplateSchema.ts +5 -5
- package/src/schemas/SectionSchema.ts +4 -12
- package/src/schemas/SelectInputFieldSchema.ts +3 -2
- package/src/schemas/SwitchInputFieldSchema.ts +2 -2
- package/src/schemas/TextInputFieldSchema.ts +3 -2
- package/src/schemas/ViewSchema.ts +570 -0
- package/src/schemas/index.ts +1 -1
- package/src/schemas/transformers/ComponentTransformer.ts +185 -163
- package/src/schemas/transformers/ReactNodeTransformer.ts +31 -28
- package/src/schemas/transformers/registry.ts +17 -10
- package/src/stories/Button.stories.tsx +24 -0
- package/src/stories/ChoiceInputField.stories.tsx +28 -1
- package/src/stories/Code.stories.tsx +61 -1
- package/src/stories/Container.stories.tsx +954 -0
- package/src/stories/FormBlock.stories.tsx +54 -0
- package/src/stories/FormComponents.stories.tsx +8 -13
- package/src/stories/GridCell.stories.tsx +23 -64
- package/src/stories/GridLayout.stories.tsx +22 -47
- package/src/stories/HeroBlock.stories.tsx +28 -0
- package/src/stories/HtmlInputField.stories.tsx +23 -1
- package/src/stories/Image.stories.tsx +45 -233
- package/src/stories/Markdown.stories.tsx +1 -1
- package/src/stories/Section.stories.tsx +38 -4
- package/src/stories/SelectInputField.stories.tsx +26 -1
- package/src/stories/Text.stories.tsx +22 -54
- package/src/stories/TextInputField.stories.tsx +24 -1
- package/src/stories/_templates/SerializationTemplate.tsx +165 -0
- package/src/templates/TemplateResolver.ts +2 -2
- package/src/types/CollapsibleLayout.ts +2 -2
- package/src/utils/cssUtils.ts +49 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/logger.ts +13 -13
- package/src/__tests__/components/base/ModelView.test.tsx +0 -220
- package/src/__tests__/schemas/ViewModelSchema.test.ts +0 -80
- package/src/components/blocks/Code.md +0 -529
- package/src/schemas/README.md +0 -661
- package/src/schemas/ViewModelSchema.ts +0 -115
- package/src/tests/ConsoleWarningTest.tsx +0 -30
- package/src/tests/StorageKeyTest.tsx +0 -110
- package/src/tests/ThemeStorageKeyTest.tsx +0 -114
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsoleWarningTest.d.ts","sourceRoot":"","sources":["../../qa/ConsoleWarningTest.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,CAAC,OAAO,UAAU,kBAAkB,4CAqBzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StorageKeyTest.d.ts","sourceRoot":"","sources":["../../qa/StorageKeyTest.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAqDH,MAAM,CAAC,OAAO,UAAU,cAAc,4CAqDrC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Theme Storage Key Strategy Test Component
|
|
3
|
+
* Demonstrates the three different storage strategies for ThemeProvider
|
|
4
|
+
*/
|
|
5
|
+
export default function ThemeStorageKeyTest(): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
//# sourceMappingURL=ThemeStorageKeyTest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThemeStorageKeyTest.d.ts","sourceRoot":"","sources":["../../qa/ThemeStorageKeyTest.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAwDH,MAAM,CAAC,OAAO,UAAU,mBAAmB,4CAsD1C"}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { ReactNode } from 'react';
|
|
7
7
|
import 'reflect-metadata';
|
|
8
|
-
import
|
|
9
|
-
export declare class CodeModel extends
|
|
8
|
+
import ViewSchema from './ViewSchema';
|
|
9
|
+
export declare class CodeModel extends ViewSchema {
|
|
10
10
|
children?: ReactNode;
|
|
11
11
|
language?: string;
|
|
12
12
|
showCopy?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/CodeSchema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"CodeSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/CodeSchema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,kBAAkB,CAAC;AAE1B,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,qBACa,SAAU,SAAQ,UAAU;IASvC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAWrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAUlB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAUnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAW1B,KAAK,CAAC,EAAE,MAAM,CAAC;IAUf,SAAS,CAAC,EAAE,OAAO,CAAC;IAWpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ContainerSchema - Comprehensive base class for all container components
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
5
|
+
*/
|
|
6
|
+
import type { ReactNode } from 'react';
|
|
7
|
+
import 'reflect-metadata';
|
|
8
|
+
import ViewSchema from './ViewSchema';
|
|
9
|
+
export declare class ContainerSchema extends ViewSchema {
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=ContainerSchema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContainerSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/ContainerSchema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,kBAAkB,CAAC;AAC1B,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,qBACa,eAAgB,SAAQ,UAAU;IAU3C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* PageTemplate Schema - Complete page template configuration
|
|
3
3
|
*
|
|
4
|
-
* Extends
|
|
4
|
+
* Extends ViewSchema to provide comprehensive page-level configuration
|
|
5
5
|
* including metadata, print settings, and content structure.
|
|
6
6
|
*
|
|
7
7
|
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
8
8
|
*/
|
|
9
9
|
import 'reflect-metadata';
|
|
10
|
-
import { ViewModelSchema } from './ViewModelSchema';
|
|
11
10
|
import { PrintConfigSchema } from './PrintConfigSchema';
|
|
12
|
-
|
|
11
|
+
import { ViewSchema } from './ViewSchema';
|
|
12
|
+
export declare class PageTemplateSchema extends ViewSchema {
|
|
13
13
|
slug?: string;
|
|
14
14
|
name?: string;
|
|
15
15
|
description?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageTemplateSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/PageTemplateSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"PageTemplateSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/PageTemplateSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,qBACa,kBAAmB,SAAQ,UAAU;IAUhD,IAAI,CAAC,EAAE,MAAM,CAAC;IAWd,IAAI,CAAC,EAAE,MAAM,CAAC;IAWd,WAAW,CAAC,EAAE,MAAM,CAAC;IAWrB,KAAK,CAAC,EAAE,MAAM,CAAC;IAWf,YAAY,CAAC,EAAE,MAAM,CAAC;IAWtB,UAAU,CAAC,EAAE,MAAM,CAAC;IAWpB,YAAY,CAAC,EAAE,MAAM,CAAC;IAStB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC;IAWpC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAWhC,MAAM,CAAC,EAAE,MAAM,CAAC;IAWhB,IAAI,CAAC,EAAE,MAAM,CAAC;IASd,YAAY,CAAC,EAAE,OAAO,CAAC;IAWvB,aAAa,CAAC,EAAE,MAAM,CAAC;IASvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAS3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAS5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -1,23 +1,63 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* ViewModel Schema -
|
|
2
|
+
* ViewModel Schema - Comprehensive base class for all view components
|
|
3
3
|
*
|
|
4
|
-
* Provides
|
|
5
|
-
*
|
|
4
|
+
* Provides ALL props from BaseComponentProps as schema fields including:
|
|
5
|
+
* - Grid layout props (span, breakpoints)
|
|
6
|
+
* - Dimension props (width, height with t-shirt sizing)
|
|
7
|
+
* - Spacing props (padding, margin with t-shirt sizing)
|
|
8
|
+
* - Background and styling props
|
|
9
|
+
* - Accessibility and HTML attributes
|
|
10
|
+
* - Event handlers
|
|
6
11
|
*
|
|
7
12
|
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
8
13
|
*/
|
|
9
14
|
import 'reflect-metadata';
|
|
10
15
|
import { Model } from '@qwickapps/schema';
|
|
11
16
|
export declare class ViewModelSchema extends Model {
|
|
17
|
+
span?: string;
|
|
18
|
+
xs?: string;
|
|
19
|
+
sm?: string;
|
|
20
|
+
md?: string;
|
|
21
|
+
lg?: string;
|
|
22
|
+
xl?: string;
|
|
12
23
|
className?: string;
|
|
24
|
+
sx?: string;
|
|
13
25
|
style?: string;
|
|
26
|
+
width?: string;
|
|
27
|
+
height?: string;
|
|
28
|
+
minWidth?: string;
|
|
29
|
+
minHeight?: string;
|
|
30
|
+
maxWidth?: string;
|
|
31
|
+
maxHeight?: string;
|
|
32
|
+
padding?: string;
|
|
33
|
+
paddingTop?: string;
|
|
34
|
+
paddingRight?: string;
|
|
35
|
+
paddingBottom?: string;
|
|
36
|
+
paddingLeft?: string;
|
|
37
|
+
paddingX?: string;
|
|
38
|
+
paddingY?: string;
|
|
39
|
+
margin?: string;
|
|
40
|
+
marginTop?: string;
|
|
41
|
+
marginRight?: string;
|
|
42
|
+
marginBottom?: string;
|
|
43
|
+
marginLeft?: string;
|
|
44
|
+
marginX?: string;
|
|
45
|
+
marginY?: string;
|
|
46
|
+
background?: string;
|
|
47
|
+
backgroundImage?: string;
|
|
48
|
+
backgroundGradient?: string;
|
|
49
|
+
textAlign?: 'left' | 'center' | 'right' | 'justify';
|
|
14
50
|
id?: string;
|
|
15
|
-
|
|
51
|
+
role?: string;
|
|
16
52
|
'aria-label'?: string;
|
|
17
|
-
'aria-describedby'?: string;
|
|
18
53
|
'aria-labelledby'?: string;
|
|
54
|
+
'aria-describedby'?: string;
|
|
19
55
|
'data-testid'?: string;
|
|
20
|
-
|
|
56
|
+
onClick?: string;
|
|
57
|
+
onMouseEnter?: string;
|
|
58
|
+
onMouseLeave?: string;
|
|
59
|
+
onFocus?: string;
|
|
60
|
+
onBlur?: string;
|
|
21
61
|
}
|
|
22
62
|
export default ViewModelSchema;
|
|
23
63
|
//# sourceMappingURL=ViewModelSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewModelSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/ViewModelSchema.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ViewModelSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/ViewModelSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAA4B,KAAK,EAAU,MAAM,mBAAmB,CAAC;AAE5E,qBACa,eAAgB,SAAQ,KAAK;IAexC,IAAI,CAAC,EAAE,MAAM,CAAC;IAWd,EAAE,CAAC,EAAE,MAAM,CAAC;IAWZ,EAAE,CAAC,EAAE,MAAM,CAAC;IAWZ,EAAE,CAAC,EAAE,MAAM,CAAC;IAWZ,EAAE,CAAC,EAAE,MAAM,CAAC;IAWZ,EAAE,CAAC,EAAE,MAAM,CAAC;IAeZ,SAAS,CAAC,EAAE,MAAM,CAAC;IAWnB,EAAE,CAAC,EAAE,MAAM,CAAC;IAWZ,KAAK,CAAC,EAAE,MAAM,CAAC;IAef,KAAK,CAAC,EAAE,MAAM,CAAC;IAWf,MAAM,CAAC,EAAE,MAAM,CAAC;IAWhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAWlB,SAAS,CAAC,EAAE,MAAM,CAAC;IAWnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAWlB,SAAS,CAAC,EAAE,MAAM,CAAC;IAenB,OAAO,CAAC,EAAE,MAAM,CAAC;IAWjB,UAAU,CAAC,EAAE,MAAM,CAAC;IAWpB,YAAY,CAAC,EAAE,MAAM,CAAC;IAWtB,aAAa,CAAC,EAAE,MAAM,CAAC;IAWvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAWrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAWlB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAWlB,MAAM,CAAC,EAAE,MAAM,CAAC;IAWhB,SAAS,CAAC,EAAE,MAAM,CAAC;IAWnB,WAAW,CAAC,EAAE,MAAM,CAAC;IAWrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAWtB,UAAU,CAAC,EAAE,MAAM,CAAC;IAWpB,OAAO,CAAC,EAAE,MAAM,CAAC;IAWjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAejB,UAAU,CAAC,EAAE,MAAM,CAAC;IAWpB,eAAe,CAAC,EAAE,MAAM,CAAC;IAWzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAe5B,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAepD,EAAE,CAAC,EAAE,MAAM,CAAC;IAWZ,IAAI,CAAC,EAAE,MAAM,CAAC;IAWd,YAAY,CAAC,EAAE,MAAM,CAAC;IAWtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAW3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAW5B,aAAa,CAAC,EAAE,MAAM,CAAC;IAevB,OAAO,CAAC,EAAE,MAAM,CAAC;IAWjB,YAAY,CAAC,EAAE,MAAM,CAAC;IAWtB,YAAY,CAAC,EAAE,MAAM,CAAC;IAWtB,OAAO,CAAC,EAAE,MAAM,CAAC;IAWjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ViewSchema - Comprehensive base class for all view components
|
|
3
|
+
*
|
|
4
|
+
* Provides ALL props from BaseComponentProps as schema fields including:
|
|
5
|
+
* - Grid layout props (span, breakpoints)
|
|
6
|
+
* - Dimension props (width, height with t-shirt sizing)
|
|
7
|
+
* - Spacing props (padding, margin with t-shirt sizing)
|
|
8
|
+
* - Background and styling props
|
|
9
|
+
* - Accessibility and HTML attributes
|
|
10
|
+
* - Event handlers
|
|
11
|
+
*
|
|
12
|
+
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
13
|
+
*/
|
|
14
|
+
import { Model } from '@qwickapps/schema';
|
|
15
|
+
import type { SxProps, Theme } from '@mui/material/styles';
|
|
16
|
+
import 'reflect-metadata';
|
|
17
|
+
import type { FocusEventHandler, MouseEventHandler } from 'react';
|
|
18
|
+
export declare class ViewSchema extends Model {
|
|
19
|
+
span?: number | 'auto' | 'grow';
|
|
20
|
+
xs?: number | 'auto';
|
|
21
|
+
sm?: number | 'auto';
|
|
22
|
+
md?: number | 'auto';
|
|
23
|
+
lg?: number | 'auto';
|
|
24
|
+
xl?: number | 'auto';
|
|
25
|
+
className?: string;
|
|
26
|
+
sx?: string | SxProps<Theme>;
|
|
27
|
+
style?: string | React.CSSProperties;
|
|
28
|
+
width?: string | number;
|
|
29
|
+
height?: string | number;
|
|
30
|
+
minWidth?: string | number;
|
|
31
|
+
minHeight?: string | number;
|
|
32
|
+
maxWidth?: string | number;
|
|
33
|
+
maxHeight?: string | number;
|
|
34
|
+
padding?: string | number;
|
|
35
|
+
paddingTop?: string | number;
|
|
36
|
+
paddingRight?: string | number;
|
|
37
|
+
paddingBottom?: string | number;
|
|
38
|
+
paddingLeft?: string | number;
|
|
39
|
+
paddingX?: string | number;
|
|
40
|
+
paddingY?: string | number;
|
|
41
|
+
margin?: string | number;
|
|
42
|
+
marginTop?: string | number;
|
|
43
|
+
marginRight?: string | number;
|
|
44
|
+
marginBottom?: string | number;
|
|
45
|
+
marginLeft?: string | number;
|
|
46
|
+
marginX?: string | number;
|
|
47
|
+
marginY?: string | number;
|
|
48
|
+
background?: string;
|
|
49
|
+
backgroundImage?: string;
|
|
50
|
+
backgroundGradient?: string;
|
|
51
|
+
textAlign?: 'left' | 'center' | 'right' | 'justify';
|
|
52
|
+
id?: string;
|
|
53
|
+
role?: string;
|
|
54
|
+
'aria-label'?: string;
|
|
55
|
+
'aria-labelledby'?: string;
|
|
56
|
+
'aria-describedby'?: string;
|
|
57
|
+
'data-testid'?: string;
|
|
58
|
+
onClick?: MouseEventHandler<any>;
|
|
59
|
+
onMouseEnter?: MouseEventHandler<any>;
|
|
60
|
+
onMouseLeave?: MouseEventHandler<any>;
|
|
61
|
+
onFocus?: FocusEventHandler<any>;
|
|
62
|
+
onBlur?: FocusEventHandler<any>;
|
|
63
|
+
}
|
|
64
|
+
export default ViewSchema;
|
|
65
|
+
//# sourceMappingURL=ViewSchema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ViewSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/ViewSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAA4B,KAAK,EAAU,MAAM,mBAAmB,CAAC;AAE5E,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAElE,qBACa,UAAW,SAAQ,KAAK;IAkBnC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAchC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAcrB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAcrB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAcrB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAcrB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAerB,SAAS,CAAC,EAAE,MAAM,CAAC;IAWnB,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAW7B,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;IAerC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAWxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAWzB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW3B,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW5B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW3B,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAe5B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW1B,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW7B,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW/B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAWhC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW9B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW3B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW3B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAWzB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW5B,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW9B,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW/B,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW7B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAW1B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAe1B,UAAU,CAAC,EAAE,MAAM,CAAC;IAWpB,eAAe,CAAC,EAAE,MAAM,CAAC;IAWzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAe5B,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAepD,EAAE,CAAC,EAAE,MAAM,CAAC;IAWZ,IAAI,CAAC,EAAE,MAAM,CAAC;IAWd,YAAY,CAAC,EAAE,MAAM,CAAC;IAWtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAW3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAW5B,aAAa,CAAC,EAAE,MAAM,CAAC;IAevB,OAAO,CAAC,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAWjC,YAAY,CAAC,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAWtC,YAAY,CAAC,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAWtC,OAAO,CAAC,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAWjC,MAAM,CAAC,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;CACjC;AAED,eAAe,UAAU,CAAC"}
|
package/dist/schemas/index.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ export * from './SectionSchema';
|
|
|
41
41
|
export * from './TextInputFieldSchema';
|
|
42
42
|
export * from './TextSchema';
|
|
43
43
|
export * from './ThemeSwitcherSchema';
|
|
44
|
-
export * from './
|
|
44
|
+
export * from './ViewSchema';
|
|
45
45
|
export * from './PrintConfigSchema';
|
|
46
46
|
export * from './PageTemplateSchema';
|
|
47
47
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,YAAY,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,yBAAyB,CAAC;AAGjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AAGtC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,YAAY,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,yBAAyB,CAAC;AAGjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AAGtC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC"}
|
|
@@ -19,6 +19,16 @@ export type PatternHandler = (element: Element) => any;
|
|
|
19
19
|
* Provides static methods for component registration and transformation
|
|
20
20
|
*/
|
|
21
21
|
export declare class ComponentTransformer {
|
|
22
|
+
/**
|
|
23
|
+
* Enable or disable strict mode
|
|
24
|
+
* @param enabled - Whether to enable strict mode (throws on unregistered components)
|
|
25
|
+
*/
|
|
26
|
+
static setStrictMode(enabled: boolean): void;
|
|
27
|
+
/**
|
|
28
|
+
* Check if strict mode is enabled
|
|
29
|
+
* @returns True if strict mode is enabled
|
|
30
|
+
*/
|
|
31
|
+
static isStrictMode(): boolean;
|
|
22
32
|
/**
|
|
23
33
|
* Register a component class for serialization
|
|
24
34
|
* Component must declare its own tagName and version via static properties
|
|
@@ -27,22 +37,24 @@ export declare class ComponentTransformer {
|
|
|
27
37
|
static registerComponent(componentClass: SerializableConstructor): void;
|
|
28
38
|
/**
|
|
29
39
|
* Serialize React node(s) to JSON string
|
|
30
|
-
*
|
|
31
|
-
*
|
|
40
|
+
* In strict mode: throws on unregistered components
|
|
41
|
+
* In legacy mode: uses fallback tag for unregistered components/html/text
|
|
32
42
|
*/
|
|
33
43
|
static serialize(node: ReactNode | ReactNode[]): string;
|
|
34
44
|
/**
|
|
35
45
|
* Deserialize JSON input to React node(s)
|
|
36
|
-
*
|
|
37
|
-
*
|
|
46
|
+
* In strict mode: throws on unregistered components
|
|
47
|
+
* In legacy mode: never throws; always returns a valid ReactNode (or array) or null
|
|
48
|
+
* - Strings: try JSON.parse; if fails, return the string as a text node
|
|
49
|
+
* - Objects/arrays: only schema objects are transformed; non-schema become text via JSON.stringify
|
|
38
50
|
*/
|
|
39
51
|
static deserialize(input: string | object | object[]): ReactNode | ReactNode[];
|
|
40
52
|
/**
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
private static
|
|
53
|
+
* Type guard for serialized component schema objects
|
|
54
|
+
* Requires: { tagName: string; version: string; data: any }
|
|
55
|
+
* Optional: key?: string
|
|
56
|
+
*/
|
|
57
|
+
private static isSerializedComponent;
|
|
46
58
|
/**
|
|
47
59
|
* Internal method to deserialize data back to React nodes
|
|
48
60
|
* @param data - Data to deserialize
|
|
@@ -50,14 +62,14 @@ export declare class ComponentTransformer {
|
|
|
50
62
|
*/
|
|
51
63
|
private static deserializeData;
|
|
52
64
|
/**
|
|
53
|
-
*
|
|
54
|
-
* @param
|
|
55
|
-
* @returns Serializable data structure
|
|
65
|
+
* Internal method to serialize a single React node
|
|
66
|
+
* @param node - React node to serialize
|
|
67
|
+
* @returns Serializable data structure { tagName, version, data }
|
|
56
68
|
*/
|
|
57
|
-
private static
|
|
69
|
+
private static serializeNode;
|
|
58
70
|
/**
|
|
59
|
-
* Deserialize unregistered
|
|
60
|
-
* @param data - Serialized data
|
|
71
|
+
* Deserialize unregistered nodes using ReactNodeTransformer
|
|
72
|
+
* @param data - Serialized data from ReactNodeTransformer
|
|
61
73
|
* @returns React node
|
|
62
74
|
*/
|
|
63
75
|
private static deserializeUnregisteredComponent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentTransformer.d.ts","sourceRoot":"","sources":["../../../src/schemas/transformers/ComponentTransformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAc,EAAE,SAAS,EAAgB,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAahE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"ComponentTransformer.d.ts","sourceRoot":"","sources":["../../../src/schemas/transformers/ComponentTransformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAc,EAAE,SAAS,EAAgB,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAahE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,GAAG,CAAC;AAcvD;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B;;;OAGG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAI5C;;;OAGG;IACH,MAAM,CAAC,YAAY,IAAI,OAAO;IAI9B;;;;OAIG;IACH,MAAM,CAAC,iBAAiB,CAAC,cAAc,EAAE,uBAAuB,GAAG,IAAI;IA4BvE;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,MAAM;IAKvD;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GAAG,SAAS,EAAE;IAe9E;;;;KAIC;IACD,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAQpC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAsC9B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IA8D5B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,gCAAgC;IAI/C;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IA4BtC;;;OAGG;IACH,MAAM,CAAC,uBAAuB,IAAI,MAAM,EAAE;IAI1C;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;IAO5B;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI;IAOtE;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI3C;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI;IAe/D;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE;IAS/C;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAsC/B;;;OAGG;IACH,MAAM,CAAC,qBAAqB,IAAI,MAAM,EAAE;CAGzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactNodeTransformer.d.ts","sourceRoot":"","sources":["../../../src/schemas/transformers/ReactNodeTransformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"ReactNodeTransformer.d.ts","sourceRoot":"","sources":["../../../src/schemas/transformers/ReactNodeTransformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAgB,SAAS,EAAiC,MAAM,OAAO,CAAC;AAG/E;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,GAAG;IAqEtC;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,SAAS;IA2CxC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAqB7B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAkBtC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAkB/B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;CAqBlC"}
|
|
@@ -10,6 +10,9 @@
|
|
|
10
10
|
/**
|
|
11
11
|
* Register all serializable components with the ComponentTransformer
|
|
12
12
|
* This function should be called once during application initialization
|
|
13
|
+
*
|
|
14
|
+
* Phase 0: Foundation in place - ready for component migration
|
|
15
|
+
* Phase 1+: Components will be migrated to createSerializableView factory
|
|
13
16
|
*/
|
|
14
17
|
export declare function registerSerializableComponents(): void;
|
|
15
18
|
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/schemas/transformers/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/schemas/transformers/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAmBH;;;;;;GAMG;AACH,wBAAgB,8BAA8B,IAAI,IAAI,CAsCrD"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MockSerializableComponent - Test helper component implementing new SerializableConstructor interface
|
|
3
|
+
*
|
|
4
|
+
* NOTE: This is not a test file - it's a helper module for testing.
|
|
5
|
+
* Jest should not run this as a test suite.
|
|
6
|
+
*
|
|
7
|
+
* Demonstrates component self-declaration pattern with static tagName and version properties
|
|
8
|
+
* Used for testing the updated ComponentTransformer architecture
|
|
9
|
+
*
|
|
10
|
+
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
11
|
+
*/
|
|
12
|
+
import React, { ReactElement } from 'react';
|
|
13
|
+
import { Serializable, SerializableConstructor } from '../../../schemas';
|
|
14
|
+
/**
|
|
15
|
+
* Mock component implementing the new Serializable interface with self-declaration
|
|
16
|
+
*/
|
|
17
|
+
export declare class MockSerializableComponent implements Serializable {
|
|
18
|
+
props: {
|
|
19
|
+
title?: string;
|
|
20
|
+
content?: string;
|
|
21
|
+
variant?: string;
|
|
22
|
+
children?: React.ReactNode;
|
|
23
|
+
};
|
|
24
|
+
static readonly tagName = "MockComponent";
|
|
25
|
+
static readonly version = "1.0.0";
|
|
26
|
+
constructor(props: {
|
|
27
|
+
title?: string;
|
|
28
|
+
content?: string;
|
|
29
|
+
variant?: string;
|
|
30
|
+
children?: React.ReactNode;
|
|
31
|
+
});
|
|
32
|
+
static fromJson(jsonData: any): ReactElement;
|
|
33
|
+
toJson(): any;
|
|
34
|
+
}
|
|
35
|
+
export declare const MockSerializableComponentClass: SerializableConstructor;
|
|
36
|
+
/**
|
|
37
|
+
* Alternative mock component with different tagName and version for testing conflicts
|
|
38
|
+
*/
|
|
39
|
+
export declare class AlternativeMockComponent implements Serializable {
|
|
40
|
+
props: {
|
|
41
|
+
label?: string;
|
|
42
|
+
type?: string;
|
|
43
|
+
active?: boolean;
|
|
44
|
+
};
|
|
45
|
+
static readonly tagName = "AlternativeComponent";
|
|
46
|
+
static readonly version = "2.1.0";
|
|
47
|
+
constructor(props: {
|
|
48
|
+
label?: string;
|
|
49
|
+
type?: string;
|
|
50
|
+
active?: boolean;
|
|
51
|
+
});
|
|
52
|
+
static fromJson(jsonData: any): ReactElement;
|
|
53
|
+
toJson(): any;
|
|
54
|
+
}
|
|
55
|
+
export declare const AlternativeMockComponentClass: SerializableConstructor;
|
|
56
|
+
/**
|
|
57
|
+
* Mock component missing required static properties (for error testing)
|
|
58
|
+
*/
|
|
59
|
+
export declare class InvalidMockComponent implements Serializable {
|
|
60
|
+
props: any;
|
|
61
|
+
constructor(props: any);
|
|
62
|
+
static fromJson(jsonData: any): ReactElement;
|
|
63
|
+
toJson(): any;
|
|
64
|
+
}
|
|
65
|
+
export declare const InvalidMockComponentClass: any;
|
|
66
|
+
//# sourceMappingURL=MockSerializableComponent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MockSerializableComponent.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/schemas/transformers/MockSerializableComponent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;GAEG;AACH,qBAAa,yBAA0B,YAAW,YAAY;IAIzC,KAAK,EAAE;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;KAC5B;IARD,MAAM,CAAC,QAAQ,CAAC,OAAO,mBAAmB;IAC1C,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;gBAEf,KAAK,EAAE;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;KAC5B;IAED,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY;IAW5C,MAAM,IAAI,GAAG;CAQd;AAGD,eAAO,MAAM,8BAA8B,EAA2C,uBAAuB,CAAC;AAE9G;;GAEG;AACH,qBAAa,wBAAyB,YAAW,YAAY;IAIxC,KAAK,EAAE;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB;IAPD,MAAM,CAAC,QAAQ,CAAC,OAAO,0BAA0B;IACjD,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;gBAEf,KAAK,EAAE;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB;IAED,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY;IAQ5C,MAAM,IAAI,GAAG;CAOd;AAED,eAAO,MAAM,6BAA6B,EAA0C,uBAAuB,CAAC;AAE5G;;GAEG;AACH,qBAAa,oBAAqB,YAAW,YAAY;IAGpC,KAAK,EAAE,GAAG;gBAAV,KAAK,EAAE,GAAG;IAE7B,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY;IAI5C,MAAM,IAAI,GAAG;CAGd;AAED,eAAO,MAAM,yBAAyB,EAA2B,GAAG,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AccessibilityChecker Component - Development tool for checking theme accessibility
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
5
|
+
*
|
|
6
|
+
* This component is only rendered in development mode and provides
|
|
7
|
+
* accessibility insights for the current theme/palette combination.
|
|
8
|
+
*/
|
|
9
|
+
import React from 'react';
|
|
10
|
+
declare const AccessibilityChecker: React.FC;
|
|
11
|
+
export default AccessibilityChecker;
|
|
12
|
+
//# sourceMappingURL=AccessibilityChecker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccessibilityChecker.d.ts","sourceRoot":"","sources":["../../../src/components/AccessibilityChecker.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAwCnD,QAAA,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAoNjC,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
export interface AccessibilityState {
|
|
3
|
+
highContrast: boolean;
|
|
4
|
+
reducedMotion: boolean;
|
|
5
|
+
largeText: boolean;
|
|
6
|
+
focusVisible: boolean;
|
|
7
|
+
isKeyboardUser: boolean;
|
|
8
|
+
issues: AccessibilityIssue[];
|
|
9
|
+
lastAnnouncement: Announcement | null;
|
|
10
|
+
preferences: Record<string, any>;
|
|
11
|
+
}
|
|
12
|
+
export interface AccessibilityIssue {
|
|
13
|
+
type: string;
|
|
14
|
+
message: string;
|
|
15
|
+
level: 'error' | 'warning' | 'info';
|
|
16
|
+
element?: Element;
|
|
17
|
+
}
|
|
18
|
+
export interface Announcement {
|
|
19
|
+
message: string;
|
|
20
|
+
level: 'polite' | 'assertive';
|
|
21
|
+
timestamp: number;
|
|
22
|
+
}
|
|
23
|
+
export interface AccessibilityContextValue extends AccessibilityState {
|
|
24
|
+
setHighContrast: (enabled: boolean) => void;
|
|
25
|
+
setReducedMotion: (enabled: boolean) => void;
|
|
26
|
+
setLargeText: (enabled: boolean) => void;
|
|
27
|
+
setFocusVisible: (enabled: boolean) => void;
|
|
28
|
+
announce: (message: string, level?: 'polite' | 'assertive') => void;
|
|
29
|
+
announcePolite: (message: string) => void;
|
|
30
|
+
announceAssertive: (message: string) => void;
|
|
31
|
+
addIssue: (issue: AccessibilityIssue) => void;
|
|
32
|
+
clearIssues: () => void;
|
|
33
|
+
runAudit: () => void;
|
|
34
|
+
}
|
|
35
|
+
export interface AccessibilityProviderProps {
|
|
36
|
+
children: ReactNode;
|
|
37
|
+
enableAudit?: boolean;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Accessibility Provider Component
|
|
41
|
+
* Provides comprehensive accessibility context and utilities
|
|
42
|
+
*
|
|
43
|
+
* Features:
|
|
44
|
+
* - System preference detection (high contrast, reduced motion)
|
|
45
|
+
* - Keyboard navigation detection
|
|
46
|
+
* - ARIA live announcements
|
|
47
|
+
* - Focus management
|
|
48
|
+
* - Accessibility auditing
|
|
49
|
+
* - Settings persistence
|
|
50
|
+
*/
|
|
51
|
+
export declare const AccessibilityProvider: React.FC<AccessibilityProviderProps>;
|
|
52
|
+
/**
|
|
53
|
+
* Hook to access accessibility context
|
|
54
|
+
*/
|
|
55
|
+
export declare const useAccessibility: () => AccessibilityContextValue;
|
|
56
|
+
/**
|
|
57
|
+
* Higher-Order Component for accessibility enhancements
|
|
58
|
+
*/
|
|
59
|
+
export declare const withAccessibility: <P extends object>(WrappedComponent: React.ComponentType<P>) => {
|
|
60
|
+
(props: P): import("react/jsx-runtime").JSX.Element;
|
|
61
|
+
displayName: string;
|
|
62
|
+
};
|
|
63
|
+
export default AccessibilityProvider;
|
|
64
|
+
//# sourceMappingURL=AccessibilityProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccessibilityProvider.d.ts","sourceRoot":"","sources":["../../../src/components/AccessibilityProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAoD,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3F,MAAM,WAAW,kBAAkB;IAClC,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,gBAAgB,EAAE,YAAY,GAAG,IAAI,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CAClB;AAcD,MAAM,WAAW,yBAA0B,SAAQ,kBAAkB;IACpE,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,WAAW,KAAK,IAAI,CAAC;IACpE,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,iBAAiB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9C,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AAqHD,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAoPtE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAAO,yBAQnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,MAAM,EACjD,kBAAkB,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;YAEO,CAAC;;CAchD,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface BreadcrumbItem {
|
|
3
|
+
label: string;
|
|
4
|
+
href?: string;
|
|
5
|
+
icon?: React.ReactNode;
|
|
6
|
+
current?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface BreadcrumbsProps {
|
|
9
|
+
items: BreadcrumbItem[];
|
|
10
|
+
separator?: React.ReactNode;
|
|
11
|
+
className?: string;
|
|
12
|
+
onNavigate?: (item: BreadcrumbItem, index: number) => void;
|
|
13
|
+
maxItems?: number;
|
|
14
|
+
showRoot?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Generic Breadcrumbs component for navigation hierarchy
|
|
18
|
+
*
|
|
19
|
+
* Features:
|
|
20
|
+
* - Accessible navigation with proper ARIA labels
|
|
21
|
+
* - Customizable separators and icons
|
|
22
|
+
* - Responsive design with item truncation
|
|
23
|
+
* - Support for custom navigation handlers
|
|
24
|
+
* - Keyboard navigation support
|
|
25
|
+
* - Screen reader friendly
|
|
26
|
+
*/
|
|
27
|
+
export declare const Breadcrumbs: React.FC<BreadcrumbsProps>;
|
|
28
|
+
/**
|
|
29
|
+
* Hook for managing breadcrumb state
|
|
30
|
+
*/
|
|
31
|
+
export declare const useBreadcrumbs: () => {
|
|
32
|
+
breadcrumbs: BreadcrumbItem[];
|
|
33
|
+
addBreadcrumb: (item: BreadcrumbItem) => void;
|
|
34
|
+
removeBreadcrumb: (index: number) => void;
|
|
35
|
+
setBreadcrumbs: (items: BreadcrumbItem[]) => void;
|
|
36
|
+
clearBreadcrumbs: () => void;
|
|
37
|
+
};
|
|
38
|
+
export default Breadcrumbs;
|
|
39
|
+
//# sourceMappingURL=Breadcrumbs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.d.ts","sourceRoot":"","sources":["../../../src/components/Breadcrumbs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,cAAc;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA+IlD,CAAC;AAmBF;;GAEG;AACH,eAAO,MAAM,cAAc;;0BAGqB,cAAc;8BAIV,MAAM;4BAID,cAAc,EAAE;;CAexE,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import React, { Component, ErrorInfo, ReactNode } from 'react';
|
|
2
|
+
declare global {
|
|
3
|
+
interface Window {
|
|
4
|
+
qwickapps?: {
|
|
5
|
+
logError?: (error: Error, errorInfo: ErrorInfo) => void;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
interface Props {
|
|
10
|
+
children: ReactNode;
|
|
11
|
+
fallback?: ReactNode;
|
|
12
|
+
onError?: (error: Error, errorInfo: ErrorInfo) => void;
|
|
13
|
+
showErrorDetails?: boolean;
|
|
14
|
+
}
|
|
15
|
+
interface State {
|
|
16
|
+
hasError: boolean;
|
|
17
|
+
error: Error | null;
|
|
18
|
+
errorInfo: ErrorInfo | null;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Generic ErrorBoundary component for catching and handling React errors
|
|
22
|
+
*
|
|
23
|
+
* Features:
|
|
24
|
+
* - Catches JavaScript errors anywhere in child component tree
|
|
25
|
+
* - Displays fallback UI with retry functionality
|
|
26
|
+
* - Shows error details in development mode
|
|
27
|
+
* - Customizable error handling and fallback UI
|
|
28
|
+
* - Automatic error logging
|
|
29
|
+
*/
|
|
30
|
+
export declare class ErrorBoundary extends Component<Props, State> {
|
|
31
|
+
constructor(props: Props);
|
|
32
|
+
static getDerivedStateFromError(error: Error): State;
|
|
33
|
+
componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
|
|
34
|
+
handleRetry: () => void;
|
|
35
|
+
handleRefresh: () => void;
|
|
36
|
+
render(): string | number | boolean | Iterable<React.ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Higher-order component that wraps a component with ErrorBoundary
|
|
40
|
+
*/
|
|
41
|
+
export declare function withErrorBoundary<P extends object>(WrappedComponent: React.ComponentType<P>, errorBoundaryProps?: Omit<Props, 'children'>): {
|
|
42
|
+
(props: P): import("react/jsx-runtime").JSX.Element;
|
|
43
|
+
displayName: string;
|
|
44
|
+
};
|
|
45
|
+
export default ErrorBoundary;
|
|
46
|
+
//# sourceMappingURL=ErrorBoundary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorBoundary.d.ts","sourceRoot":"","sources":["../../../src/components/ErrorBoundary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG/D,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,SAAS,CAAC,EAAE;YACX,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;SACxD,CAAC;KACF;CACD;AAED,UAAU,KAAK;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IACvD,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,UAAU,KAAK;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;CAC5B;AAED;;;;;;;;;GASG;AACH,qBAAa,aAAc,SAAQ,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;gBAC7C,KAAK,EAAE,KAAK;IASxB,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IASpD,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS;IAwBpD,WAAW,aAMT;IAEF,aAAa,aAIX;IAEF,MAAM;CAwGN;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EACjD,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EACxC,kBAAkB,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC;YAED,CAAC;;EAS5C;AAED,eAAe,aAAa,CAAC"}
|