@qwickapps/react-framework 1.4.0 → 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 +231 -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
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Test for optional logging dependency fallback
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import { getLogger, loggers } from '../logger';
|
|
6
6
|
|
|
7
7
|
// Mock the require function to simulate missing @qwickapps/logging package
|
|
8
8
|
const originalRequire = require;
|
|
@@ -31,7 +31,7 @@ describe('Optional logging dependency', () => {
|
|
|
31
31
|
const consoleSpy = jest.spyOn(console, 'info').mockImplementation();
|
|
32
32
|
|
|
33
33
|
// Create a new logger (should use fallback)
|
|
34
|
-
const logger =
|
|
34
|
+
const logger = getLogger('TestLogger');
|
|
35
35
|
logger.info('Test message');
|
|
36
36
|
|
|
37
37
|
expect(consoleSpy).toHaveBeenCalledWith('[TestLogger] Test message');
|
|
@@ -72,7 +72,7 @@ describe('Optional logging dependency', () => {
|
|
|
72
72
|
|
|
73
73
|
const debugSpy = jest.spyOn(console, 'debug').mockImplementation();
|
|
74
74
|
|
|
75
|
-
const logger =
|
|
75
|
+
const logger = getLogger('TestLogger');
|
|
76
76
|
logger.debug('Debug message');
|
|
77
77
|
|
|
78
78
|
expect(debugSpy).not.toHaveBeenCalled();
|
package/src/components/Html.tsx
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
|
|
25
25
|
import { Box } from '@mui/material';
|
|
26
26
|
import React, { ReactElement } from 'react';
|
|
27
|
-
import type { WithDataBinding,
|
|
27
|
+
import type { WithDataBinding, SchemaProps } from '@qwickapps/schema';
|
|
28
28
|
import { QWICKAPP_COMPONENT, useBaseProps, useDataBinding } from '../hooks';
|
|
29
29
|
import { ComponentTransformer } from '../schemas/transformers/ComponentTransformer';
|
|
30
30
|
import HtmlModel from '../schemas/HtmlSchema';
|
|
@@ -39,7 +39,7 @@ export interface TransformConfig {
|
|
|
39
39
|
fallbackComponent?: (element: Element, key: string) => React.ReactNode;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
type HtmlViewProps =
|
|
42
|
+
type HtmlViewProps = SchemaProps<HtmlModel> & {
|
|
43
43
|
/** Custom transformation configuration (legacy - now handled by ComponentTransformer) */
|
|
44
44
|
transformConfig?: TransformConfig;
|
|
45
45
|
/** Whether to sanitize HTML (legacy - now handled internally) */
|
|
@@ -50,7 +50,7 @@ type HtmlViewProps = ModelProps<HtmlModel> & {
|
|
|
50
50
|
component?: React.ElementType;
|
|
51
51
|
};
|
|
52
52
|
|
|
53
|
-
export interface HtmlProps extends HtmlViewProps, WithDataBinding {}
|
|
53
|
+
export interface HtmlProps extends HtmlViewProps, WithDataBinding { }
|
|
54
54
|
|
|
55
55
|
// View component - handles the actual rendering
|
|
56
56
|
function HtmlView({
|
|
@@ -93,7 +93,7 @@ function HtmlView({
|
|
|
93
93
|
try {
|
|
94
94
|
// Process HTML content
|
|
95
95
|
let processedHtml = children;
|
|
96
|
-
|
|
96
|
+
|
|
97
97
|
if (stripHeaders) {
|
|
98
98
|
// Simple header stripping - remove h1, h2, etc. tags
|
|
99
99
|
processedHtml = processedHtml.replace(/<h[1-6][^>]*>.*?<\/h[1-6]>/gi, '');
|
|
@@ -102,7 +102,7 @@ function HtmlView({
|
|
|
102
102
|
// Note: transformConfig, sanitize, and sanitizeOptions are legacy props
|
|
103
103
|
// maintained for backward compatibility. The new ComponentTransformer system
|
|
104
104
|
// handles transformation through registered patterns automatically.
|
|
105
|
-
|
|
105
|
+
|
|
106
106
|
// Transform HTML to React components using ComponentTransformer
|
|
107
107
|
const components = ComponentTransformer.transformHTML(processedHtml);
|
|
108
108
|
|
|
@@ -143,7 +143,7 @@ function HtmlView({
|
|
|
143
143
|
|
|
144
144
|
} catch (error) {
|
|
145
145
|
console.error('Error transforming HTML content:', error);
|
|
146
|
-
|
|
146
|
+
|
|
147
147
|
// Fallback to SafeSpan in development, null in production
|
|
148
148
|
if (process.env.NODE_ENV !== 'production') {
|
|
149
149
|
return (
|
|
@@ -168,9 +168,9 @@ function HtmlView({
|
|
|
168
168
|
|
|
169
169
|
// Production fallback - use SafeSpan
|
|
170
170
|
return (
|
|
171
|
-
<SafeSpan
|
|
172
|
-
html={children}
|
|
173
|
-
placeholder={placeholder || "Content unavailable"}
|
|
171
|
+
<SafeSpan
|
|
172
|
+
html={children}
|
|
173
|
+
placeholder={placeholder || "Content unavailable"}
|
|
174
174
|
{...htmlProps}
|
|
175
175
|
{...styleProps}
|
|
176
176
|
{...otherProps}
|
|
@@ -184,12 +184,21 @@ export class Html extends ModelView<HtmlProps, HtmlModel> {
|
|
|
184
184
|
// Component self-declaration for serialization
|
|
185
185
|
static readonly tagName = 'Html';
|
|
186
186
|
static readonly version = '1.0.0';
|
|
187
|
-
|
|
187
|
+
|
|
188
188
|
// Deserialization: JSON data → React element
|
|
189
189
|
static fromJson(jsonData: any): ReactElement {
|
|
190
|
-
|
|
190
|
+
const { tagName, version, data } = jsonData;
|
|
191
|
+
if (tagName !== Html.tagName) {
|
|
192
|
+
throw new Error(`Cannot deserialize: Expected tagName 'Html' but got '${tagName}'`);
|
|
193
|
+
}
|
|
194
|
+
if (version !== Html.version) {
|
|
195
|
+
console.warn(`Version mismatch: Expected ${Html.version} but got ${version}`);
|
|
196
|
+
}
|
|
197
|
+
console.log(`TEST: Creating ${tagName} - ${version} from JSON:`, jsonData);
|
|
198
|
+
const { children, ...props } = data || {};
|
|
199
|
+
return <Html {...props} >{ComponentTransformer.deserialize(children)}</Html>;
|
|
191
200
|
}
|
|
192
|
-
|
|
201
|
+
|
|
193
202
|
// Component-specific serialization properties
|
|
194
203
|
protected getComponentSpecificProps(): any {
|
|
195
204
|
return {
|
|
@@ -216,7 +225,7 @@ export class Html extends ModelView<HtmlProps, HtmlModel> {
|
|
|
216
225
|
if (!registry.hasPattern('div.html-content')) {
|
|
217
226
|
registry.registerPattern('div.html-content', Html.transformHtmlDiv);
|
|
218
227
|
}
|
|
219
|
-
|
|
228
|
+
|
|
220
229
|
// Register elements with data-html attribute
|
|
221
230
|
if (!registry.hasPattern('[data-html]')) {
|
|
222
231
|
registry.registerPattern('[data-html]', Html.transformDataHtml);
|
|
@@ -227,7 +236,7 @@ export class Html extends ModelView<HtmlProps, HtmlModel> {
|
|
|
227
236
|
private static transformHtmlDiv(element: Element): any {
|
|
228
237
|
const stripHeaders = element.getAttribute('data-strip-headers') === 'true';
|
|
229
238
|
const placeholder = element.getAttribute('data-placeholder');
|
|
230
|
-
|
|
239
|
+
|
|
231
240
|
return {
|
|
232
241
|
tagName: 'Html',
|
|
233
242
|
props: {
|
|
@@ -243,7 +252,7 @@ export class Html extends ModelView<HtmlProps, HtmlModel> {
|
|
|
243
252
|
const htmlContent = element.getAttribute('data-html') || element.innerHTML;
|
|
244
253
|
const stripHeaders = element.getAttribute('data-strip-headers') === 'true';
|
|
245
254
|
const placeholder = element.getAttribute('data-placeholder');
|
|
246
|
-
|
|
255
|
+
|
|
247
256
|
return {
|
|
248
257
|
tagName: 'Html',
|
|
249
258
|
props: {
|
package/src/components/Logo.tsx
CHANGED
|
@@ -36,13 +36,13 @@
|
|
|
36
36
|
*/
|
|
37
37
|
|
|
38
38
|
import React, { useRef, useEffect, useState, useCallback } from 'react';
|
|
39
|
-
import type { WithDataBinding,
|
|
39
|
+
import type { WithDataBinding, SchemaProps } from '@qwickapps/schema';
|
|
40
40
|
import { QWICKAPP_COMPONENT, useBaseProps, useDataBinding } from '../hooks';
|
|
41
41
|
import LogoModel from '../schemas/LogoSchema';
|
|
42
42
|
import { LogoVariant, LogoSize, LogoBadgeShape, PositionType, BadgeOffset } from '../schemas/LogoSchema';
|
|
43
43
|
import './Logo.css';
|
|
44
44
|
|
|
45
|
-
type LogoViewProps =
|
|
45
|
+
type LogoViewProps = SchemaProps<LogoModel> & {
|
|
46
46
|
/** Click handler for the logo */
|
|
47
47
|
onClick?: (event: React.MouseEvent<SVGSVGElement | HTMLDivElement>) => void;
|
|
48
48
|
/** Additional inline styles */
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
import { Box } from '@mui/material';
|
|
24
24
|
import { marked } from 'marked';
|
|
25
25
|
import React, { ReactElement } from 'react';
|
|
26
|
-
import type { WithDataBinding,
|
|
26
|
+
import type { WithDataBinding, SchemaProps } from '@qwickapps/schema';
|
|
27
27
|
import { QWICKAPP_COMPONENT, useBaseProps, useDataBinding } from '../hooks';
|
|
28
28
|
import MarkdownModel from '../schemas/MarkdownSchema';
|
|
29
29
|
import { ModelView } from './base/ModelView';
|
|
@@ -31,7 +31,7 @@ import Html from './Html';
|
|
|
31
31
|
import SafeSpan from './SafeSpan';
|
|
32
32
|
import { TransformConfig, defaultMarkdownRules } from '../utils/htmlTransform';
|
|
33
33
|
|
|
34
|
-
type MarkdownViewProps =
|
|
34
|
+
type MarkdownViewProps = SchemaProps<MarkdownModel> & {
|
|
35
35
|
/** Custom transformation configuration for HTML conversion */
|
|
36
36
|
htmlTransformConfig?: TransformConfig;
|
|
37
37
|
/** Custom sanitization options */
|
|
@@ -191,11 +191,6 @@ export class Markdown extends ModelView<MarkdownProps, MarkdownModel> {
|
|
|
191
191
|
static readonly tagName = 'Markdown';
|
|
192
192
|
static readonly version = '1.0.0';
|
|
193
193
|
|
|
194
|
-
// Deserialization: JSON data → React element
|
|
195
|
-
static fromJson(jsonData: any): ReactElement {
|
|
196
|
-
return <Markdown {...jsonData} />;
|
|
197
|
-
}
|
|
198
|
-
|
|
199
194
|
// Component-specific serialization properties
|
|
200
195
|
protected getComponentSpecificProps(): any {
|
|
201
196
|
return {
|
|
@@ -11,13 +11,13 @@
|
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
import React, { ReactElement } from 'react';
|
|
14
|
-
import { WithDataBinding,
|
|
14
|
+
import { WithDataBinding, SchemaProps } from '@qwickapps/schema';
|
|
15
15
|
import sanitizeHtml from 'sanitize-html';
|
|
16
16
|
import { QWICKAPP_COMPONENT, useBaseProps, useDataBinding } from '../hooks';
|
|
17
17
|
import SafeSpanModel from '../schemas/SafeSpanSchema';
|
|
18
18
|
import { ModelView } from './base/ModelView';
|
|
19
19
|
|
|
20
|
-
type SafeSpanViewProps =
|
|
20
|
+
type SafeSpanViewProps = SchemaProps<SafeSpanModel>;
|
|
21
21
|
export interface SafeSpanProps extends SafeSpanViewProps, WithDataBinding {}
|
|
22
22
|
|
|
23
23
|
// View component - handles the actual rendering
|
|
@@ -100,11 +100,6 @@ export class SafeSpan extends ModelView<SafeSpanProps, SafeSpanModel> {
|
|
|
100
100
|
static readonly tagName = 'SafeSpan';
|
|
101
101
|
static readonly version = '1.0.0';
|
|
102
102
|
|
|
103
|
-
// Deserialization: JSON data → React element
|
|
104
|
-
static fromJson(jsonData: any): ReactElement {
|
|
105
|
-
return <SafeSpan {...jsonData} />;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
103
|
// Component-specific serialization properties
|
|
109
104
|
protected getComponentSpecificProps(): any {
|
|
110
105
|
return {
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Container - Factory-based implementation using createSerializableView
|
|
3
|
+
*
|
|
4
|
+
* Migrated from class-based ModelView to factory pattern for better
|
|
5
|
+
* schema-driven architecture while preserving all functionality.
|
|
6
|
+
*
|
|
7
|
+
* Key Features:
|
|
8
|
+
* - Factory-based component using createSerializableView
|
|
9
|
+
* - Uses ViewProps for normalized props handling
|
|
10
|
+
* - Integrates with existing useBaseProps utility
|
|
11
|
+
* - Processes all grid, dimension, spacing, and styling props
|
|
12
|
+
* - Supports children rendering and data binding
|
|
13
|
+
* - Full serialization support
|
|
14
|
+
*
|
|
15
|
+
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
import { Box } from '@mui/material';
|
|
19
|
+
import { SchemaProps } from '@qwickapps/schema';
|
|
20
|
+
import { ContainerSchema } from '../../schemas/ContainerSchema';
|
|
21
|
+
import { createSerializableView, SerializableComponent } from '../shared/createSerializableView';
|
|
22
|
+
import { ViewProps } from '../shared/viewProps';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Props interface for Container component - extends ViewProps
|
|
26
|
+
*/
|
|
27
|
+
export type ContainerProps = ViewProps & SchemaProps<typeof ContainerSchema>;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* ContainerView - Pure view component that renders the actual container
|
|
31
|
+
*
|
|
32
|
+
* This component receives fully processed props from createSerializableView
|
|
33
|
+
* and renders the container using Material-UI Box with all styling applied.
|
|
34
|
+
*/
|
|
35
|
+
function ContainerView({ children, gridProps, ...props }: ContainerProps & { gridProps?: any }) {
|
|
36
|
+
// Render the component as a Box with all processed props
|
|
37
|
+
return (
|
|
38
|
+
<Box
|
|
39
|
+
{...props}
|
|
40
|
+
{...(gridProps && { 'data-grid': JSON.stringify(gridProps) })}
|
|
41
|
+
component="div"
|
|
42
|
+
>
|
|
43
|
+
{children}
|
|
44
|
+
</Box>
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Create Container component using the factory pattern
|
|
50
|
+
*/
|
|
51
|
+
export const Container: SerializableComponent<ContainerProps> = createSerializableView<ContainerProps>({
|
|
52
|
+
tagName: 'Container',
|
|
53
|
+
version: '1.0.0',
|
|
54
|
+
role: 'container',
|
|
55
|
+
View: ContainerView
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Export the component as default
|
|
60
|
+
*/
|
|
61
|
+
export default Container;
|