@qwickapps/react-framework 1.4.9 → 1.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -0
- package/dist/__tests__/schemas/transformers/MockSerializableComponent.d.ts +9 -9
- package/dist/__tests__/schemas/transformers/MockSerializableComponent.d.ts.map +1 -1
- package/dist/components/AccessibilityProvider.d.ts +1 -1
- package/dist/components/AccessibilityProvider.d.ts.map +1 -1
- package/dist/components/ErrorBoundary.d.ts +1 -1
- package/dist/components/Html.d.ts +8 -8
- package/dist/components/Html.d.ts.map +1 -1
- package/dist/components/Logo.d.ts +2 -2
- package/dist/components/Logo.d.ts.map +1 -1
- package/dist/components/Markdown.d.ts +5 -5
- package/dist/components/Markdown.d.ts.map +1 -1
- package/dist/components/ProductLogo.d.ts +60 -0
- package/dist/components/ProductLogo.d.ts.map +1 -0
- package/dist/components/QwickAppsLogo.d.ts +1 -1
- package/dist/components/QwickAppsLogo.d.ts.map +1 -1
- package/dist/components/ResponsiveMenu.d.ts.map +1 -1
- package/dist/components/SafeSpan.d.ts +4 -4
- package/dist/components/SafeSpan.d.ts.map +1 -1
- package/dist/components/Scaffold.d.ts.map +1 -1
- package/dist/components/base/Container.d.ts +3 -2
- package/dist/components/base/Container.d.ts.map +1 -1
- package/dist/components/base/ModelView.d.ts +16 -16
- package/dist/components/base/ModelView.d.ts.map +1 -1
- package/dist/components/base/index.d.ts +1 -1
- package/dist/components/base/index.d.ts.map +1 -1
- package/dist/components/blocks/Article.d.ts +4 -18
- package/dist/components/blocks/Article.d.ts.map +1 -1
- package/dist/components/blocks/CardListGrid.d.ts +3 -3
- package/dist/components/blocks/CardListGrid.d.ts.map +1 -1
- package/dist/components/blocks/Code.d.ts +5 -31
- package/dist/components/blocks/Code.d.ts.map +1 -1
- package/dist/components/blocks/Content.d.ts +2 -17
- package/dist/components/blocks/Content.d.ts.map +1 -1
- package/dist/components/blocks/CoverImageHeader.d.ts +2 -12
- package/dist/components/blocks/CoverImageHeader.d.ts.map +1 -1
- package/dist/components/blocks/FeatureCard.d.ts +0 -17
- package/dist/components/blocks/FeatureCard.d.ts.map +1 -1
- package/dist/components/blocks/FeatureGrid.d.ts.map +1 -1
- package/dist/components/blocks/Footer.d.ts +2 -14
- package/dist/components/blocks/Footer.d.ts.map +1 -1
- package/dist/components/blocks/HeroBlock.d.ts +35 -26
- package/dist/components/blocks/HeroBlock.d.ts.map +1 -1
- package/dist/components/blocks/Image.d.ts +23 -23
- package/dist/components/blocks/Image.d.ts.map +1 -1
- package/dist/components/blocks/PageBannerHeader.d.ts +2 -13
- package/dist/components/blocks/PageBannerHeader.d.ts.map +1 -1
- package/dist/components/blocks/ProductCard.d.ts +0 -9
- package/dist/components/blocks/ProductCard.d.ts.map +1 -1
- package/dist/components/blocks/Section.d.ts +16 -24
- package/dist/components/blocks/Section.d.ts.map +1 -1
- package/dist/components/blocks/Text.d.ts +5 -20
- package/dist/components/blocks/Text.d.ts.map +1 -1
- package/dist/components/buttons/Button.d.ts +19 -23
- package/dist/components/buttons/Button.d.ts.map +1 -1
- package/dist/components/buttons/PaletteSwitcher.d.ts +2 -2
- package/dist/components/buttons/PaletteSwitcher.d.ts.map +1 -1
- package/dist/components/buttons/ThemeSwitcher.d.ts +2 -2
- package/dist/components/buttons/ThemeSwitcher.d.ts.map +1 -1
- package/dist/components/dialogs/Dialog.d.ts +35 -0
- package/dist/components/dialogs/Dialog.d.ts.map +1 -0
- package/dist/components/dialogs/index.d.ts +8 -0
- package/dist/components/dialogs/index.d.ts.map +1 -0
- package/dist/components/forms/Captcha.d.ts +55 -0
- package/dist/components/forms/Captcha.d.ts.map +1 -0
- package/dist/components/forms/FormBlock.d.ts +6 -6
- package/dist/components/forms/FormBlock.d.ts.map +1 -1
- package/dist/components/forms/FormCheckbox.d.ts +27 -0
- package/dist/components/forms/FormCheckbox.d.ts.map +1 -0
- package/dist/components/forms/FormField.d.ts +43 -0
- package/dist/components/forms/FormField.d.ts.map +1 -0
- package/dist/components/forms/FormSelect.d.ts +35 -0
- package/dist/components/forms/FormSelect.d.ts.map +1 -0
- package/dist/components/forms/index.d.ts +8 -0
- package/dist/components/forms/index.d.ts.map +1 -1
- package/dist/components/index.d.ts +10 -2
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/input/ChoiceInputField.d.ts +13 -19
- package/dist/components/input/ChoiceInputField.d.ts.map +1 -1
- package/dist/components/input/HtmlInputField.d.ts +16 -17
- package/dist/components/input/HtmlInputField.d.ts.map +1 -1
- package/dist/components/input/SelectInputField.d.ts +14 -17
- package/dist/components/input/SelectInputField.d.ts.map +1 -1
- package/dist/components/input/SwitchInputField.d.ts +11 -18
- package/dist/components/input/SwitchInputField.d.ts.map +1 -1
- package/dist/components/input/TextInputField.d.ts +16 -19
- package/dist/components/input/TextInputField.d.ts.map +1 -1
- package/dist/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts.map +1 -1
- package/dist/components/layout/GridCell.d.ts +18 -19
- package/dist/components/layout/GridCell.d.ts.map +1 -1
- package/dist/components/layout/GridLayout.d.ts +36 -25
- package/dist/components/layout/GridLayout.d.ts.map +1 -1
- package/dist/components/menu/MenuItem.d.ts +2 -2
- package/dist/components/menu/MenuItem.d.ts.map +1 -1
- package/dist/components/pages/FormPage.d.ts.map +1 -1
- package/dist/components/pages/Page.d.ts +1 -1
- package/dist/components/pages/Page.d.ts.map +1 -1
- package/dist/components/shared/createSerializableView.d.ts +22 -10
- package/dist/components/shared/createSerializableView.d.ts.map +1 -1
- package/dist/components/shared/viewProps.d.ts +3 -3
- package/dist/components/shared/viewProps.d.ts.map +1 -1
- package/dist/config/AppConfig.d.ts +2 -2
- package/dist/config/AppConfig.d.ts.map +1 -1
- package/dist/config/types.d.ts +1 -1
- package/dist/config/types.d.ts.map +1 -1
- package/dist/contexts/DataContext.d.ts +3 -3
- package/dist/contexts/DataContext.d.ts.map +1 -1
- package/dist/contexts/PaletteContext.d.ts.map +1 -1
- package/dist/contexts/ThemeContext.d.ts.map +1 -1
- package/dist/hooks/useDataBinding.d.ts +2 -2
- package/dist/hooks/useDataBinding.d.ts.map +1 -1
- package/dist/hooks/usePrintMode.d.ts +2 -2
- package/dist/hooks/usePrintMode.d.ts.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.css +1 -1
- package/dist/index.esm.js +4143 -2318
- package/dist/index.js +4169 -2315
- package/dist/palettes/manifest.json +90 -0
- package/dist/palettes/palette-autumn.1.4.9.min.css +1 -0
- package/dist/palettes/palette-autumn.1.5.0.css +172 -0
- package/dist/palettes/palette-autumn.1.5.0.min.css +1 -0
- package/dist/palettes/palette-autumn.1.5.1.css +172 -0
- package/dist/palettes/palette-autumn.1.5.1.min.css +1 -0
- package/dist/palettes/palette-autumn.latest.css +172 -0
- package/dist/palettes/palette-autumn.latest.min.css +1 -0
- package/dist/palettes/palette-cosmic.1.4.9.min.css +1 -0
- package/dist/palettes/palette-cosmic.1.5.0.css +172 -0
- package/dist/palettes/palette-cosmic.1.5.0.min.css +1 -0
- package/dist/palettes/palette-cosmic.1.5.1.css +172 -0
- package/dist/palettes/palette-cosmic.1.5.1.min.css +1 -0
- package/dist/palettes/palette-cosmic.latest.css +172 -0
- package/dist/palettes/palette-cosmic.latest.min.css +1 -0
- package/dist/palettes/palette-default.1.4.9.min.css +1 -0
- package/dist/palettes/palette-default.1.5.0.css +178 -0
- package/dist/palettes/palette-default.1.5.0.min.css +1 -0
- package/dist/palettes/palette-default.1.5.1.css +178 -0
- package/dist/palettes/palette-default.1.5.1.min.css +1 -0
- package/dist/palettes/palette-default.latest.css +178 -0
- package/dist/palettes/palette-default.latest.min.css +1 -0
- package/dist/palettes/palette-ocean.1.4.9.min.css +1 -0
- package/dist/palettes/palette-ocean.1.5.0.css +172 -0
- package/dist/palettes/palette-ocean.1.5.0.min.css +1 -0
- package/dist/palettes/palette-ocean.1.5.1.css +172 -0
- package/dist/palettes/palette-ocean.1.5.1.min.css +1 -0
- package/dist/palettes/palette-ocean.latest.css +172 -0
- package/dist/palettes/palette-ocean.latest.min.css +1 -0
- package/dist/palettes/palette-spring.1.4.9.min.css +1 -0
- package/dist/palettes/palette-spring.1.5.0.css +160 -0
- package/dist/palettes/palette-spring.1.5.0.min.css +1 -0
- package/dist/palettes/palette-spring.1.5.1.css +160 -0
- package/dist/palettes/palette-spring.1.5.1.min.css +1 -0
- package/dist/palettes/palette-spring.latest.css +160 -0
- package/dist/palettes/palette-spring.latest.min.css +1 -0
- package/dist/palettes/palette-winter.1.4.9.min.css +1 -0
- package/dist/palettes/palette-winter.1.5.0.css +172 -0
- package/dist/palettes/palette-winter.1.5.0.min.css +1 -0
- package/dist/palettes/palette-winter.1.5.1.css +172 -0
- package/dist/palettes/palette-winter.1.5.1.min.css +1 -0
- package/dist/palettes/palette-winter.latest.css +172 -0
- package/dist/palettes/palette-winter.latest.min.css +1 -0
- package/dist/schemas/ButtonSchema.d.ts +5 -2
- package/dist/schemas/ButtonSchema.d.ts.map +1 -1
- package/dist/schemas/CardListGridSchema.d.ts +4 -4
- package/dist/schemas/CardListGridSchema.d.ts.map +1 -1
- package/dist/schemas/ChoiceInputFieldSchema.d.ts +2 -2
- package/dist/schemas/ChoiceInputFieldSchema.d.ts.map +1 -1
- package/dist/schemas/CodeSchema.d.ts +1 -2
- package/dist/schemas/CodeSchema.d.ts.map +1 -1
- package/dist/schemas/FormBlockSchema.d.ts +2 -2
- package/dist/schemas/FormBlockSchema.d.ts.map +1 -1
- package/dist/schemas/GridCellSchema.d.ts +2 -4
- package/dist/schemas/GridCellSchema.d.ts.map +1 -1
- package/dist/schemas/GridLayoutSchema.d.ts +3 -5
- package/dist/schemas/GridLayoutSchema.d.ts.map +1 -1
- package/dist/schemas/HeroBlockSchema.d.ts +2 -2
- package/dist/schemas/HeroBlockSchema.d.ts.map +1 -1
- package/dist/schemas/HtmlInputFieldSchema.d.ts +2 -2
- package/dist/schemas/HtmlInputFieldSchema.d.ts.map +1 -1
- package/dist/schemas/ImageSchema.d.ts +2 -2
- package/dist/schemas/ImageSchema.d.ts.map +1 -1
- package/dist/schemas/SectionSchema.d.ts +2 -4
- package/dist/schemas/SectionSchema.d.ts.map +1 -1
- package/dist/schemas/SelectInputFieldSchema.d.ts +2 -2
- package/dist/schemas/SelectInputFieldSchema.d.ts.map +1 -1
- package/dist/schemas/SwitchInputFieldSchema.d.ts +2 -2
- package/dist/schemas/SwitchInputFieldSchema.d.ts.map +1 -1
- package/dist/schemas/TextInputFieldSchema.d.ts +2 -2
- package/dist/schemas/TextInputFieldSchema.d.ts.map +1 -1
- package/dist/schemas/ViewSchema.d.ts +8 -7
- package/dist/schemas/ViewSchema.d.ts.map +1 -1
- package/dist/schemas/transformers/ComponentTransformer.d.ts +2 -2
- package/dist/schemas/transformers/ComponentTransformer.d.ts.map +1 -1
- package/dist/schemas/transformers/ReactNodeTransformer.d.ts +2 -2
- package/dist/schemas/transformers/ReactNodeTransformer.d.ts.map +1 -1
- package/dist/schemas/transformers/registry.d.ts +0 -7
- package/dist/schemas/transformers/registry.d.ts.map +1 -1
- package/dist/schemas/types/Serializable.d.ts +3 -3
- package/dist/schemas/types/Serializable.d.ts.map +1 -1
- package/dist/stories/_templates/SerializationTemplate.d.ts.map +1 -0
- package/dist/types/CollapsibleLayout.d.ts +3 -3
- package/dist/types/CollapsibleLayout.d.ts.map +1 -1
- package/dist/types/ContentProxy.d.ts +4 -4
- package/dist/types/ContentProxy.d.ts.map +1 -1
- package/dist/types/DataTypes.d.ts +4 -4
- package/dist/types/DataTypes.d.ts.map +1 -1
- package/dist/types/TemplateProvider.d.ts +1 -1
- package/dist/types/TemplateProvider.d.ts.map +1 -1
- package/dist/types/TemplateResolver.d.ts +1 -1
- package/dist/types/TemplateResolver.d.ts.map +1 -1
- package/dist/utils/htmlTransform.d.ts +1 -1
- package/dist/utils/htmlTransform.d.ts.map +1 -1
- package/dist/utils/iconMap.d.ts +48 -0
- package/dist/utils/iconMap.d.ts.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/logger.d.ts +11 -7
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/paletteLoader.d.ts +34 -0
- package/dist/utils/paletteLoader.d.ts.map +1 -0
- package/dist/utils/paletteManifest.d.ts +51 -0
- package/dist/utils/paletteManifest.d.ts.map +1 -0
- package/dist/utils/paletteUtils.d.ts.map +1 -1
- package/dist/utils/reactUtils.d.ts +12 -6
- package/dist/utils/reactUtils.d.ts.map +1 -1
- package/dist/utils/spacing.d.ts +2 -2
- package/dist/utils/spacing.d.ts.map +1 -1
- package/dist/utils/themePerformanceMonitor.d.ts.map +1 -1
- package/dist/utils/themeUtils.d.ts.map +1 -1
- package/package.json +20 -9
- package/scripts/build-palettes.cjs +120 -0
- package/src/__tests__/components/Article.test.tsx +1 -1
- package/src/__tests__/components/Breadcrumbs.test.tsx +2 -2
- package/src/__tests__/components/Button.test.tsx +3 -3
- package/src/__tests__/components/CardListGrid.test.tsx +5 -5
- package/src/__tests__/components/ChoiceInputField.test.tsx +2 -2
- package/src/__tests__/components/Code.test.tsx +2 -2
- package/src/__tests__/components/Content.integration.test.tsx +1 -1
- package/src/__tests__/components/Content.test.tsx +5 -5
- package/src/__tests__/components/CoverImageHeader.test.tsx +3 -3
- package/src/__tests__/components/FeatureCard.integration.test.tsx +1 -1
- package/src/__tests__/components/FeatureGrid.integration.test.tsx +1 -1
- package/src/__tests__/components/FeatureGrid.test.tsx +3 -3
- package/src/__tests__/components/Footer.test.tsx +3 -3
- package/src/__tests__/components/FormBlock.test.tsx +2 -2
- package/src/__tests__/components/HeroBlock.integration.test.tsx +1 -1
- package/src/__tests__/components/HeroBlock.test.tsx +4 -4
- package/src/__tests__/components/HtmlInputField.test.tsx +8 -8
- package/src/__tests__/components/PageBannerHeader.test.tsx +7 -7
- package/src/__tests__/components/PaletteSwitcher.test.tsx +3 -3
- package/src/__tests__/components/ProductCard.test.tsx +1 -1
- package/src/__tests__/components/Section.integration.test.tsx +1 -1
- package/src/__tests__/components/Section.test.tsx +1 -1
- package/src/__tests__/components/SelectInputField.test.tsx +2 -2
- package/src/__tests__/components/TextInputField.test.tsx +4 -4
- package/src/__tests__/components/ThemeSwitcher.test.tsx +3 -3
- package/src/__tests__/components/base/Container.test.tsx +22 -21
- package/src/__tests__/components/blocks/Code.performance.test.tsx +10 -10
- package/src/__tests__/components/blocks/Code.serialization.test.tsx +9 -9
- package/src/__tests__/components/blocks/HeroBlock.serialization.test.tsx +2 -3
- package/src/__tests__/components/blocks/Image.serialization.test.tsx +8 -7
- package/src/__tests__/components/blocks/Section.serialization.test.tsx +8 -8
- package/src/__tests__/components/blocks/Text.performance.test.tsx +5 -5
- package/src/__tests__/components/blocks/Text.serialization.test.tsx +9 -9
- package/src/__tests__/components/buttons/Button.serialization.test.tsx +4 -4
- package/src/__tests__/components/input/FormComponents.serialization.test.tsx +9 -9
- package/src/__tests__/components/input/SelectInputField.serialization.test.tsx +16 -18
- package/src/__tests__/components/input/TextInputField.serialization.test.tsx +9 -9
- package/src/__tests__/components/layout/CollapsibleLayout.test.tsx +5 -9
- package/src/__tests__/components/layout/GridCell.serialization.test.tsx +5 -5
- package/src/__tests__/components/layout/GridLayout.serialization.test.tsx +5 -5
- package/src/__tests__/hooks/usePrintMode.test.ts +1 -0
- package/src/__tests__/schemas/builders.test.ts +2 -2
- package/src/__tests__/schemas/transformers/ComponentSerializationPatterns.test.tsx +28 -28
- package/src/__tests__/schemas/transformers/ComponentTransformer.htmlPatterns.test.ts +5 -5
- package/src/__tests__/schemas/transformers/ComponentTransformer.test.ts +11 -11
- package/src/__tests__/schemas/transformers/CrossBrowserCompatibility.test.ts +10 -10
- package/src/__tests__/schemas/transformers/MockSerializableComponent.ts +15 -15
- package/src/__tests__/schemas/transformers/RealWorldScenarios.test.tsx +19 -19
- package/src/__tests__/schemas/transformers/SerializationErrorHandling.test.ts +15 -15
- package/src/__tests__/schemas/transformers/SerializationIntegration.test.tsx +19 -21
- package/src/__tests__/schemas/transformers/SerializationPerformance.test.ts +15 -15
- package/src/__tests__/schemas/transformers/TestAutomation.test.ts +3 -3
- package/src/__tests__/schemas/transformers/nested-serialization.test.tsx +1 -1
- package/src/__tests__/schemas/transformers/round-trip-component-serialization.test.tsx +10 -10
- package/src/__tests__/utils/optional-logging.test.ts +3 -3
- package/src/components/AccessibilityProvider.tsx +4 -2
- package/src/components/ErrorBoundary.tsx +1 -1
- package/src/components/Html.tsx +13 -16
- package/src/components/Logo.tsx +42 -29
- package/src/components/Markdown.tsx +9 -9
- package/src/components/ProductLogo.tsx +118 -0
- package/src/components/QwickApp.css +37 -1060
- package/src/components/QwickApp.tsx +1 -1
- package/src/components/QwickAppsLogo.tsx +1 -1
- package/src/components/ResponsiveMenu.tsx +1 -1
- package/src/components/SafeSpan.tsx +8 -8
- package/src/components/Scaffold.css +11 -1
- package/src/components/Scaffold.tsx +55 -25
- package/src/components/base/Container.tsx +2 -2
- package/src/components/base/ModelView.tsx +28 -27
- package/src/components/base/index.ts +1 -1
- package/src/components/blocks/Article.tsx +213 -69
- package/src/components/blocks/CardListGrid.tsx +18 -14
- package/src/components/blocks/Code.tsx +18 -13
- package/src/components/blocks/Content.tsx +15 -10
- package/src/components/blocks/CoverImageHeader.tsx +14 -9
- package/src/components/blocks/FeatureCard.tsx +16 -11
- package/src/components/blocks/FeatureGrid.tsx +13 -8
- package/src/components/blocks/Footer.tsx +25 -16
- package/src/components/blocks/HeroBlock.tsx +12 -13
- package/src/components/blocks/Image.tsx +16 -8
- package/src/components/blocks/PageBannerHeader.tsx +15 -11
- package/src/components/blocks/ProductCard.tsx +32 -25
- package/src/components/blocks/Section.tsx +21 -13
- package/src/components/blocks/Text.tsx +26 -11
- package/src/components/buttons/Button.tsx +22 -118
- package/src/components/buttons/PaletteSwitcher.tsx +11 -8
- package/src/components/buttons/ThemeSwitcher.tsx +20 -16
- package/src/components/dialogs/Dialog.tsx +126 -0
- package/src/components/dialogs/index.ts +15 -0
- package/src/components/forms/Captcha.tsx +291 -0
- package/src/components/forms/FormBlock.tsx +22 -15
- package/src/components/forms/FormCheckbox.tsx +116 -0
- package/src/components/forms/FormField.tsx +180 -0
- package/src/components/forms/FormSelect.tsx +140 -0
- package/src/components/forms/index.ts +13 -1
- package/src/components/index.ts +13 -2
- package/src/components/input/ChoiceInputField.tsx +1 -2
- package/src/components/input/HtmlInputField.tsx +2 -3
- package/src/components/input/SelectInputField.tsx +31 -5
- package/src/components/input/SwitchInputField.tsx +3 -4
- package/src/components/input/TextField.tsx +2 -2
- package/src/components/input/TextInputField.tsx +32 -6
- package/src/components/layout/CollapsibleLayout/CollapsibleLayout.tsx +13 -13
- package/src/components/layout/GridCell.tsx +10 -9
- package/src/components/layout/GridCellWrapper.tsx +1 -1
- package/src/components/layout/GridLayout.tsx +29 -32
- package/src/components/pages/FormPage.tsx +0 -1
- package/src/components/pages/Page.tsx +2 -2
- package/src/components/shared/createSerializableView.tsx +24 -23
- package/src/components/shared/viewProps.ts +11 -11
- package/src/config/AppConfig.ts +2 -2
- package/src/config/__tests__/AppConfig.test.ts +3 -3
- package/src/config/__tests__/AppConfigBuilder.test.ts +10 -11
- package/src/config/types.ts +1 -1
- package/src/contexts/DataContext.tsx +58 -52
- package/src/contexts/PaletteContext.tsx +22 -9
- package/src/contexts/PrintModeContext.tsx +4 -4
- package/src/contexts/ThemeContext.tsx +2 -1
- package/src/hooks/useBaseProps.ts +10 -10
- package/src/hooks/useDataBinding.ts +15 -18
- package/src/hooks/usePrintMode.ts +3 -3
- package/src/index.ts +2 -0
- package/src/palettes/manifest.json +72 -0
- package/src/palettes/manifest.schema.json +74 -0
- package/src/schemas/CardListGridSchema.ts +3 -3
- package/src/schemas/CodeSchema.ts +0 -1
- package/src/schemas/FeatureGridSchema.ts +1 -1
- package/src/schemas/FormBlockSchema.ts +1 -1
- package/src/schemas/GridCellSchema.ts +0 -1
- package/src/schemas/GridLayoutSchema.ts +0 -1
- package/src/schemas/SectionSchema.ts +0 -1
- package/src/schemas/ViewSchema.ts +6 -6
- package/src/schemas/transformers/ComponentTransformer.ts +37 -20
- package/src/schemas/transformers/ReactNodeTransformer.ts +18 -16
- package/src/schemas/transformers/registry.ts +28 -24
- package/src/schemas/types/Serializable.ts +3 -3
- package/src/setupTests.js +9 -0
- package/src/stories/AccessibilityProvider.stories.tsx +0 -1
- package/src/stories/CardListGrid.stories.tsx +1 -1
- package/src/stories/Code.stories.tsx +2 -3
- package/src/stories/CollapsibleLayout.stories.tsx +41 -37
- package/src/stories/Container.stories.tsx +1 -2
- package/src/stories/DataBinding.advanced.stories.tsx +15 -9
- package/src/stories/DataProvider.stories.tsx +33 -16
- package/src/stories/ErrorBoundary.stories.tsx +28 -26
- package/src/stories/FeatureGrid.stories.tsx +0 -1
- package/src/stories/FormBlock.stories.tsx +8 -8
- package/src/stories/FormComponents.stories.tsx +15 -11
- package/src/stories/GridCell.stories.tsx +5 -5
- package/src/stories/GridLayout.stories.tsx +5 -5
- package/src/stories/Image.stories.tsx +5 -7
- package/src/stories/Introduction.stories.tsx +0 -1
- package/src/stories/ModelView.stories.tsx +7 -7
- package/src/stories/SafeSpan.stories.tsx +7 -3
- package/src/stories/Section.stories.tsx +2 -2
- package/src/stories/Text.stories.tsx +1 -3
- package/src/stories/_templates/SerializationTemplate.tsx +0 -1
- package/src/templates/TemplateResolver.ts +2 -2
- package/src/types/CollapsibleLayout.ts +2 -2
- package/src/types/ContentProxy.ts +6 -6
- package/src/types/DataTypes.ts +4 -4
- package/src/types/TemplateProvider.ts +1 -1
- package/src/types/TemplateResolver.ts +1 -1
- package/src/utils/htmlTransform.tsx +17 -11
- package/src/utils/iconMap.tsx +244 -0
- package/src/utils/index.ts +4 -1
- package/src/utils/logger.ts +20 -14
- package/src/utils/paletteLoader.ts +218 -0
- package/src/utils/paletteManifest.ts +268 -0
- package/src/utils/paletteUtils.ts +19 -1
- package/src/utils/reactUtils.tsx +34 -33
- package/src/utils/spacing.ts +16 -17
- package/src/utils/themePerformanceMonitor.js +14 -6
- package/src/utils/themeUtils.ts +17 -2
- package/dist/components/base/ContainerView.d.ts +0 -65
- package/dist/components/base/ContainerView.d.ts.map +0 -1
- package/dist/components/blocks/Code-factory.d.ts +0 -22
- package/dist/components/blocks/Code-factory.d.ts.map +0 -1
- package/dist/components/blocks/Code-old.d.ts +0 -31
- package/dist/components/blocks/Code-old.d.ts.map +0 -1
- package/dist/qa/ConsoleWarningTest.d.ts +0 -5
- package/dist/qa/ConsoleWarningTest.d.ts.map +0 -1
- package/dist/qa/StorageKeyTest.d.ts +0 -6
- package/dist/qa/StorageKeyTest.d.ts.map +0 -1
- package/dist/qa/ThemeStorageKeyTest.d.ts +0 -6
- package/dist/qa/ThemeStorageKeyTest.d.ts.map +0 -1
- package/dist/schemas/ViewModelSchema.d.ts +0 -63
- package/dist/schemas/ViewModelSchema.d.ts.map +0 -1
- package/dist/schemas/transformers/__tests__/MockSerializableComponent.d.ts +0 -66
- package/dist/schemas/transformers/__tests__/MockSerializableComponent.d.ts.map +0 -1
- package/dist/src/__tests__/schemas/transformers/MockSerializableComponent.d.ts +0 -66
- package/dist/src/__tests__/schemas/transformers/MockSerializableComponent.d.ts.map +0 -1
- package/dist/src/components/AccessibilityChecker.d.ts +0 -12
- package/dist/src/components/AccessibilityChecker.d.ts.map +0 -1
- package/dist/src/components/AccessibilityProvider.d.ts +0 -64
- package/dist/src/components/AccessibilityProvider.d.ts.map +0 -1
- package/dist/src/components/Breadcrumbs.d.ts +0 -39
- package/dist/src/components/Breadcrumbs.d.ts.map +0 -1
- package/dist/src/components/ErrorBoundary.d.ts +0 -46
- package/dist/src/components/ErrorBoundary.d.ts.map +0 -1
- package/dist/src/components/Html.d.ts +0 -58
- package/dist/src/components/Html.d.ts.map +0 -1
- package/dist/src/components/Logo.d.ts +0 -56
- package/dist/src/components/Logo.d.ts.map +0 -1
- package/dist/src/components/Markdown.d.ts +0 -51
- package/dist/src/components/Markdown.d.ts.map +0 -1
- package/dist/src/components/QwickApp.d.ts +0 -69
- package/dist/src/components/QwickApp.d.ts.map +0 -1
- package/dist/src/components/QwickAppsLogo.d.ts +0 -25
- package/dist/src/components/QwickAppsLogo.d.ts.map +0 -1
- package/dist/src/components/QwickIcon.d.ts +0 -23
- package/dist/src/components/QwickIcon.d.ts.map +0 -1
- package/dist/src/components/ResponsiveMenu.d.ts +0 -38
- package/dist/src/components/ResponsiveMenu.d.ts.map +0 -1
- package/dist/src/components/SafeSpan.d.ts +0 -29
- package/dist/src/components/SafeSpan.d.ts.map +0 -1
- package/dist/src/components/Scaffold.d.ts +0 -57
- package/dist/src/components/Scaffold.d.ts.map +0 -1
- package/dist/src/components/base/Container.d.ts +0 -33
- package/dist/src/components/base/Container.d.ts.map +0 -1
- package/dist/src/components/base/ModelView.d.ts +0 -92
- package/dist/src/components/base/ModelView.d.ts.map +0 -1
- package/dist/src/components/base/index.d.ts +0 -12
- package/dist/src/components/base/index.d.ts.map +0 -1
- package/dist/src/components/blocks/Article.d.ts +0 -32
- package/dist/src/components/blocks/Article.d.ts.map +0 -1
- package/dist/src/components/blocks/CardListGrid.d.ts +0 -23
- package/dist/src/components/blocks/CardListGrid.d.ts.map +0 -1
- package/dist/src/components/blocks/Code.d.ts +0 -37
- package/dist/src/components/blocks/Code.d.ts.map +0 -1
- package/dist/src/components/blocks/Content.d.ts +0 -24
- package/dist/src/components/blocks/Content.d.ts.map +0 -1
- package/dist/src/components/blocks/CoverImageHeader.d.ts +0 -44
- package/dist/src/components/blocks/CoverImageHeader.d.ts.map +0 -1
- package/dist/src/components/blocks/FeatureCard.d.ts +0 -66
- package/dist/src/components/blocks/FeatureCard.d.ts.map +0 -1
- package/dist/src/components/blocks/FeatureGrid.d.ts +0 -48
- package/dist/src/components/blocks/FeatureGrid.d.ts.map +0 -1
- package/dist/src/components/blocks/Footer.d.ts +0 -56
- package/dist/src/components/blocks/Footer.d.ts.map +0 -1
- package/dist/src/components/blocks/HeroBlock.d.ts +0 -55
- package/dist/src/components/blocks/HeroBlock.d.ts.map +0 -1
- package/dist/src/components/blocks/Image.d.ts +0 -40
- package/dist/src/components/blocks/Image.d.ts.map +0 -1
- package/dist/src/components/blocks/PageBannerHeader.d.ts +0 -30
- package/dist/src/components/blocks/PageBannerHeader.d.ts.map +0 -1
- package/dist/src/components/blocks/ProductCard.d.ts +0 -57
- package/dist/src/components/blocks/ProductCard.d.ts.map +0 -1
- package/dist/src/components/blocks/Section.d.ts +0 -45
- package/dist/src/components/blocks/Section.d.ts.map +0 -1
- package/dist/src/components/blocks/Text.d.ts +0 -34
- package/dist/src/components/blocks/Text.d.ts.map +0 -1
- package/dist/src/components/blocks/index.d.ts +0 -41
- package/dist/src/components/blocks/index.d.ts.map +0 -1
- package/dist/src/components/buttons/Button.d.ts +0 -57
- package/dist/src/components/buttons/Button.d.ts.map +0 -1
- package/dist/src/components/buttons/PaletteSwitcher.d.ts +0 -24
- package/dist/src/components/buttons/PaletteSwitcher.d.ts.map +0 -1
- package/dist/src/components/buttons/ThemeSwitcher.d.ts +0 -24
- package/dist/src/components/buttons/ThemeSwitcher.d.ts.map +0 -1
- package/dist/src/components/buttons/index.d.ts +0 -11
- package/dist/src/components/buttons/index.d.ts.map +0 -1
- package/dist/src/components/forms/FormBlock.d.ts +0 -51
- package/dist/src/components/forms/FormBlock.d.ts.map +0 -1
- package/dist/src/components/forms/index.d.ts +0 -8
- package/dist/src/components/forms/index.d.ts.map +0 -1
- package/dist/src/components/index.d.ts +0 -41
- package/dist/src/components/index.d.ts.map +0 -1
- package/dist/src/components/input/ChoiceInputField.d.ts +0 -29
- package/dist/src/components/input/ChoiceInputField.d.ts.map +0 -1
- package/dist/src/components/input/HtmlInputField.d.ts +0 -33
- package/dist/src/components/input/HtmlInputField.d.ts.map +0 -1
- package/dist/src/components/input/SelectInputField.d.ts +0 -31
- package/dist/src/components/input/SelectInputField.d.ts.map +0 -1
- package/dist/src/components/input/SwitchInputField.d.ts +0 -27
- package/dist/src/components/input/SwitchInputField.d.ts.map +0 -1
- package/dist/src/components/input/TextField.d.ts +0 -18
- package/dist/src/components/input/TextField.d.ts.map +0 -1
- package/dist/src/components/input/TextInputField.d.ts +0 -34
- package/dist/src/components/input/TextInputField.d.ts.map +0 -1
- package/dist/src/components/input/index.d.ts +0 -19
- package/dist/src/components/input/index.d.ts.map +0 -1
- package/dist/src/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts +0 -34
- package/dist/src/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts.map +0 -1
- package/dist/src/components/layout/CollapsibleLayout/index.d.ts +0 -9
- package/dist/src/components/layout/CollapsibleLayout/index.d.ts.map +0 -1
- package/dist/src/components/layout/GridCell.d.ts +0 -32
- package/dist/src/components/layout/GridCell.d.ts.map +0 -1
- package/dist/src/components/layout/GridCellWrapper.d.ts +0 -46
- package/dist/src/components/layout/GridCellWrapper.d.ts.map +0 -1
- package/dist/src/components/layout/GridLayout.d.ts +0 -50
- package/dist/src/components/layout/GridLayout.d.ts.map +0 -1
- package/dist/src/components/layout/index.d.ts +0 -14
- package/dist/src/components/layout/index.d.ts.map +0 -1
- package/dist/src/components/menu/Menu.d.ts +0 -1
- package/dist/src/components/menu/Menu.d.ts.map +0 -1
- package/dist/src/components/menu/MenuItem.d.ts +0 -31
- package/dist/src/components/menu/MenuItem.d.ts.map +0 -1
- package/dist/src/components/menu/index.d.ts +0 -7
- package/dist/src/components/menu/index.d.ts.map +0 -1
- package/dist/src/components/pages/FormPage.d.ts +0 -66
- package/dist/src/components/pages/FormPage.d.ts.map +0 -1
- package/dist/src/components/pages/Page.d.ts +0 -68
- package/dist/src/components/pages/Page.d.ts.map +0 -1
- package/dist/src/components/pages/index.d.ts +0 -10
- package/dist/src/components/pages/index.d.ts.map +0 -1
- package/dist/src/components/shared/createSerializableView.d.ts +0 -81
- package/dist/src/components/shared/createSerializableView.d.ts.map +0 -1
- package/dist/src/components/shared/viewProps.d.ts +0 -37
- package/dist/src/components/shared/viewProps.d.ts.map +0 -1
- package/dist/src/config/AppConfig.d.ts +0 -49
- package/dist/src/config/AppConfig.d.ts.map +0 -1
- package/dist/src/config/AppConfigBuilder.d.ts +0 -75
- package/dist/src/config/AppConfigBuilder.d.ts.map +0 -1
- package/dist/src/config/index.d.ts +0 -13
- package/dist/src/config/index.d.ts.map +0 -1
- package/dist/src/config/types.d.ts +0 -130
- package/dist/src/config/types.d.ts.map +0 -1
- package/dist/src/config.d.ts +0 -15
- package/dist/src/config.d.ts.map +0 -1
- package/dist/src/contexts/DataContext.d.ts +0 -139
- package/dist/src/contexts/DataContext.d.ts.map +0 -1
- package/dist/src/contexts/DimensionsContext.d.ts +0 -42
- package/dist/src/contexts/DimensionsContext.d.ts.map +0 -1
- package/dist/src/contexts/PaletteContext.d.ts +0 -53
- package/dist/src/contexts/PaletteContext.d.ts.map +0 -1
- package/dist/src/contexts/PrintModeContext.d.ts +0 -27
- package/dist/src/contexts/PrintModeContext.d.ts.map +0 -1
- package/dist/src/contexts/QwickAppContext.d.ts +0 -71
- package/dist/src/contexts/QwickAppContext.d.ts.map +0 -1
- package/dist/src/contexts/ThemeContext.d.ts +0 -65
- package/dist/src/contexts/ThemeContext.d.ts.map +0 -1
- package/dist/src/contexts/index.d.ts +0 -11
- package/dist/src/contexts/index.d.ts.map +0 -1
- package/dist/src/hooks/index.d.ts +0 -12
- package/dist/src/hooks/index.d.ts.map +0 -1
- package/dist/src/hooks/useBaseProps.d.ts +0 -101
- package/dist/src/hooks/useBaseProps.d.ts.map +0 -1
- package/dist/src/hooks/useDataBinding.d.ts +0 -22
- package/dist/src/hooks/useDataBinding.d.ts.map +0 -1
- package/dist/src/hooks/usePrintMode.d.ts +0 -39
- package/dist/src/hooks/usePrintMode.d.ts.map +0 -1
- package/dist/src/index.d.ts +0 -9
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/palettes/PaletteAutumn.d.ts +0 -10
- package/dist/src/palettes/PaletteAutumn.d.ts.map +0 -1
- package/dist/src/palettes/PaletteCosmic.d.ts +0 -10
- package/dist/src/palettes/PaletteCosmic.d.ts.map +0 -1
- package/dist/src/palettes/PaletteDefault.d.ts +0 -10
- package/dist/src/palettes/PaletteDefault.d.ts.map +0 -1
- package/dist/src/palettes/PaletteOcean.d.ts +0 -10
- package/dist/src/palettes/PaletteOcean.d.ts.map +0 -1
- package/dist/src/palettes/PaletteSpring.d.ts +0 -10
- package/dist/src/palettes/PaletteSpring.d.ts.map +0 -1
- package/dist/src/palettes/PaletteWinter.d.ts +0 -10
- package/dist/src/palettes/PaletteWinter.d.ts.map +0 -1
- package/dist/src/palettes/index.d.ts +0 -13
- package/dist/src/palettes/index.d.ts.map +0 -1
- package/dist/src/schemas/ActionSchema.d.ts +0 -21
- package/dist/src/schemas/ActionSchema.d.ts.map +0 -1
- package/dist/src/schemas/ArticleSchema.d.ts +0 -13
- package/dist/src/schemas/ArticleSchema.d.ts.map +0 -1
- package/dist/src/schemas/ButtonSchema.d.ts +0 -22
- package/dist/src/schemas/ButtonSchema.d.ts.map +0 -1
- package/dist/src/schemas/CardListGridSchema.d.ts +0 -17
- package/dist/src/schemas/CardListGridSchema.d.ts.map +0 -1
- package/dist/src/schemas/ChoiceInputFieldSchema.d.ts +0 -18
- package/dist/src/schemas/ChoiceInputFieldSchema.d.ts.map +0 -1
- package/dist/src/schemas/CodeSchema.d.ts +0 -18
- package/dist/src/schemas/CodeSchema.d.ts.map +0 -1
- package/dist/src/schemas/CollapsibleLayoutSchema.d.ts +0 -32
- package/dist/src/schemas/CollapsibleLayoutSchema.d.ts.map +0 -1
- package/dist/src/schemas/ContainerSchema.d.ts +0 -12
- package/dist/src/schemas/ContainerSchema.d.ts.map +0 -1
- package/dist/src/schemas/ContentSchema.d.ts +0 -21
- package/dist/src/schemas/ContentSchema.d.ts.map +0 -1
- package/dist/src/schemas/CoverImageHeaderSchema.d.ts +0 -28
- package/dist/src/schemas/CoverImageHeaderSchema.d.ts.map +0 -1
- package/dist/src/schemas/FeatureCardSchema.d.ts +0 -28
- package/dist/src/schemas/FeatureCardSchema.d.ts.map +0 -1
- package/dist/src/schemas/FeatureGridSchema.d.ts +0 -17
- package/dist/src/schemas/FeatureGridSchema.d.ts.map +0 -1
- package/dist/src/schemas/FeatureItemSchema.d.ts +0 -16
- package/dist/src/schemas/FeatureItemSchema.d.ts.map +0 -1
- package/dist/src/schemas/FooterItemSchema.d.ts +0 -15
- package/dist/src/schemas/FooterItemSchema.d.ts.map +0 -1
- package/dist/src/schemas/FooterSchema.d.ts +0 -20
- package/dist/src/schemas/FooterSchema.d.ts.map +0 -1
- package/dist/src/schemas/FooterSectionSchema.d.ts +0 -15
- package/dist/src/schemas/FooterSectionSchema.d.ts.map +0 -1
- package/dist/src/schemas/FormBlockSchema.d.ts +0 -19
- package/dist/src/schemas/FormBlockSchema.d.ts.map +0 -1
- package/dist/src/schemas/GridCellSchema.d.ts +0 -23
- package/dist/src/schemas/GridCellSchema.d.ts.map +0 -1
- package/dist/src/schemas/GridLayoutSchema.d.ts +0 -21
- package/dist/src/schemas/GridLayoutSchema.d.ts.map +0 -1
- package/dist/src/schemas/HeaderActionSchema.d.ts +0 -17
- package/dist/src/schemas/HeaderActionSchema.d.ts.map +0 -1
- package/dist/src/schemas/HeroBlockSchema.d.ts +0 -22
- package/dist/src/schemas/HeroBlockSchema.d.ts.map +0 -1
- package/dist/src/schemas/HtmlInputFieldSchema.d.ts +0 -18
- package/dist/src/schemas/HtmlInputFieldSchema.d.ts.map +0 -1
- package/dist/src/schemas/HtmlSchema.d.ts +0 -14
- package/dist/src/schemas/HtmlSchema.d.ts.map +0 -1
- package/dist/src/schemas/ImageSchema.d.ts +0 -32
- package/dist/src/schemas/ImageSchema.d.ts.map +0 -1
- package/dist/src/schemas/LogoSchema.d.ts +0 -35
- package/dist/src/schemas/LogoSchema.d.ts.map +0 -1
- package/dist/src/schemas/MarkdownSchema.d.ts +0 -14
- package/dist/src/schemas/MarkdownSchema.d.ts.map +0 -1
- package/dist/src/schemas/MetadataItemSchema.d.ts +0 -13
- package/dist/src/schemas/MetadataItemSchema.d.ts.map +0 -1
- package/dist/src/schemas/PageBannerHeaderSchema.d.ts +0 -28
- package/dist/src/schemas/PageBannerHeaderSchema.d.ts.map +0 -1
- package/dist/src/schemas/PageTemplateSchema.d.ts +0 -31
- package/dist/src/schemas/PageTemplateSchema.d.ts.map +0 -1
- package/dist/src/schemas/PaletteSwitcherSchema.d.ts +0 -16
- package/dist/src/schemas/PaletteSwitcherSchema.d.ts.map +0 -1
- package/dist/src/schemas/PrintConfigSchema.d.ts +0 -31
- package/dist/src/schemas/PrintConfigSchema.d.ts.map +0 -1
- package/dist/src/schemas/ProductCardSchema.d.ts +0 -39
- package/dist/src/schemas/ProductCardSchema.d.ts.map +0 -1
- package/dist/src/schemas/SafeSpanSchema.d.ts +0 -13
- package/dist/src/schemas/SafeSpanSchema.d.ts.map +0 -1
- package/dist/src/schemas/SectionSchema.d.ts +0 -16
- package/dist/src/schemas/SectionSchema.d.ts.map +0 -1
- package/dist/src/schemas/SelectInputFieldSchema.d.ts +0 -27
- package/dist/src/schemas/SelectInputFieldSchema.d.ts.map +0 -1
- package/dist/src/schemas/SwitchInputFieldSchema.d.ts +0 -18
- package/dist/src/schemas/SwitchInputFieldSchema.d.ts.map +0 -1
- package/dist/src/schemas/TextInputFieldSchema.d.ts +0 -22
- package/dist/src/schemas/TextInputFieldSchema.d.ts.map +0 -1
- package/dist/src/schemas/TextSchema.d.ts +0 -37
- package/dist/src/schemas/TextSchema.d.ts.map +0 -1
- package/dist/src/schemas/ThemeSwitcherSchema.d.ts +0 -19
- package/dist/src/schemas/ThemeSwitcherSchema.d.ts.map +0 -1
- package/dist/src/schemas/ViewSchema.d.ts +0 -66
- package/dist/src/schemas/ViewSchema.d.ts.map +0 -1
- package/dist/src/schemas/index.d.ts +0 -47
- package/dist/src/schemas/index.d.ts.map +0 -1
- package/dist/src/schemas/transformers/ComponentTransformer.d.ts +0 -128
- package/dist/src/schemas/transformers/ComponentTransformer.d.ts.map +0 -1
- package/dist/src/schemas/transformers/ReactNodeTransformer.d.ts +0 -53
- package/dist/src/schemas/transformers/ReactNodeTransformer.d.ts.map +0 -1
- package/dist/src/schemas/transformers/registry.d.ts +0 -18
- package/dist/src/schemas/transformers/registry.d.ts.map +0 -1
- package/dist/src/schemas/types/Serializable.d.ts +0 -46
- package/dist/src/schemas/types/Serializable.d.ts.map +0 -1
- package/dist/src/stories/_templates/SerializationTemplate.d.ts.map +0 -1
- package/dist/src/templates/TemplateResolver.d.ts +0 -52
- package/dist/src/templates/TemplateResolver.d.ts.map +0 -1
- package/dist/src/templates/index.d.ts +0 -7
- package/dist/src/templates/index.d.ts.map +0 -1
- package/dist/src/types/CacheProvider.d.ts +0 -18
- package/dist/src/types/CacheProvider.d.ts.map +0 -1
- package/dist/src/types/CollapsibleLayout.d.ts +0 -142
- package/dist/src/types/CollapsibleLayout.d.ts.map +0 -1
- package/dist/src/types/ContentProxy.d.ts +0 -47
- package/dist/src/types/ContentProxy.d.ts.map +0 -1
- package/dist/src/types/DataTypes.d.ts +0 -185
- package/dist/src/types/DataTypes.d.ts.map +0 -1
- package/dist/src/types/TemplateProvider.d.ts +0 -10
- package/dist/src/types/TemplateProvider.d.ts.map +0 -1
- package/dist/src/types/TemplateResolver.d.ts +0 -23
- package/dist/src/types/TemplateResolver.d.ts.map +0 -1
- package/dist/src/types/index.d.ts +0 -82
- package/dist/src/types/index.d.ts.map +0 -1
- package/dist/src/utils/breakpoints.d.ts +0 -35
- package/dist/src/utils/breakpoints.d.ts.map +0 -1
- package/dist/src/utils/cssUtils.d.ts +0 -17
- package/dist/src/utils/cssUtils.d.ts.map +0 -1
- package/dist/src/utils/customPaletteManager.d.ts +0 -8
- package/dist/src/utils/customPaletteManager.d.ts.map +0 -1
- package/dist/src/utils/dimensions.d.ts +0 -34
- package/dist/src/utils/dimensions.d.ts.map +0 -1
- package/dist/src/utils/htmlTransform.d.ts +0 -44
- package/dist/src/utils/htmlTransform.d.ts.map +0 -1
- package/dist/src/utils/index.d.ts +0 -16
- package/dist/src/utils/index.d.ts.map +0 -1
- package/dist/src/utils/logger.d.ts +0 -26
- package/dist/src/utils/logger.d.ts.map +0 -1
- package/dist/src/utils/paletteUtils.d.ts +0 -38
- package/dist/src/utils/paletteUtils.d.ts.map +0 -1
- package/dist/src/utils/persistenceUtils.d.ts +0 -31
- package/dist/src/utils/persistenceUtils.d.ts.map +0 -1
- package/dist/src/utils/reactUtils.d.ts +0 -33
- package/dist/src/utils/reactUtils.d.ts.map +0 -1
- package/dist/src/utils/spacing.d.ts +0 -34
- package/dist/src/utils/spacing.d.ts.map +0 -1
- package/dist/src/utils/themePerformanceMonitor.d.ts +0 -32
- package/dist/src/utils/themePerformanceMonitor.d.ts.map +0 -1
- package/dist/src/utils/themeUtils.d.ts +0 -27
- package/dist/src/utils/themeUtils.d.ts.map +0 -1
- package/dist/tests/ConsoleWarningTest.d.ts +0 -5
- package/dist/tests/ConsoleWarningTest.d.ts.map +0 -1
- package/dist/tests/StorageKeyTest.d.ts +0 -6
- package/dist/tests/StorageKeyTest.d.ts.map +0 -1
- package/dist/tests/ThemeStorageKeyTest.d.ts +0 -6
- package/dist/tests/ThemeStorageKeyTest.d.ts.map +0 -1
- /package/dist/palettes/{PaletteAutumn.css → palette-autumn.1.4.9.css} +0 -0
- /package/dist/palettes/{PaletteCosmic.css → palette-cosmic.1.4.9.css} +0 -0
- /package/dist/palettes/{PaletteDefault.css → palette-default.1.4.9.css} +0 -0
- /package/dist/palettes/{PaletteOcean.css → palette-ocean.1.4.9.css} +0 -0
- /package/dist/palettes/{PaletteSpring.css → palette-spring.1.4.9.css} +0 -0
- /package/dist/palettes/{PaletteWinter.css → palette-winter.1.4.9.css} +0 -0
- /package/dist/{src/stories → stories}/_templates/SerializationTemplate.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactUtils.d.ts","sourceRoot":"","sources":["../../src/utils/reactUtils.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"reactUtils.d.ts","sourceRoot":"","sources":["../../src/utils/reactUtils.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,gCAAgC;AAChC,KAAK,YAAY,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAO,YAAY,GAAG,SAUjD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAEhF;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAO,gBAalC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CA2BhE"}
|
package/dist/utils/spacing.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export type SpacingContext = 'padding' | 'margin' | 'gap';
|
|
|
11
11
|
/**
|
|
12
12
|
* Resolves a spacing value to MUI spacing units or CSS value
|
|
13
13
|
*/
|
|
14
|
-
export declare function resolveSpacing(value: SpacingValue
|
|
14
|
+
export declare function resolveSpacing(value: SpacingValue): number | string | undefined;
|
|
15
15
|
/**
|
|
16
16
|
* Resolves spacing props with support for directional values
|
|
17
17
|
*/
|
|
@@ -30,5 +30,5 @@ export declare function resolveSpacingProps(props: {
|
|
|
30
30
|
marginLeft?: SpacingValue;
|
|
31
31
|
marginX?: SpacingValue;
|
|
32
32
|
marginY?: SpacingValue;
|
|
33
|
-
}):
|
|
33
|
+
}): Record<string, string | number | undefined>;
|
|
34
34
|
//# sourceMappingURL=spacing.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spacing.d.ts","sourceRoot":"","sources":["../../src/utils/spacing.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAEjH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,CAAC;AAoB1D;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"spacing.d.ts","sourceRoot":"","sources":["../../src/utils/spacing.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAEjH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,CAAC;AAoB1D;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,YAAY,GAClB,MAAM,GAAG,MAAM,GAAG,SAAS,CA+C7B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB,+CAkDA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"themePerformanceMonitor.d.ts","sourceRoot":"","sources":["../../src/utils/themePerformanceMonitor.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"themePerformanceMonitor.d.ts","sourceRoot":"","sources":["../../src/utils/themePerformanceMonitor.js"],"names":[],"mappings":"AAmHO;;;;;;SAA8E;AAC9E,iDAA8E;AAC9E,mDAAwE;;AAL/E,+DAA8D;AAhH9D;;;;GAIG;AAEH;IAEI,oBAAsB;IACtB,mBAAuD;IAOzD,4BAeC;IAED,gDAqCC;IAED;;;;;;aAiBC;IAED,sBAaC;IAED,cAEC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"themeUtils.d.ts","sourceRoot":"","sources":["../../src/utils/themeUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAGtE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3E;;GAEG;AACH,eAAO,MAAM,eAAe,QAAO,
|
|
1
|
+
{"version":3,"file":"themeUtils.d.ts","sourceRoot":"","sources":["../../src/utils/themeUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAGtE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3E;;GAEG;AACH,eAAO,MAAM,eAAe,QAAO,SAOlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,SAAS,KAAG,IAS3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,QAAO,eAKjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAO,SAA6B,KAAG,eAKvE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,QAAO,IAclC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,SAAS,KAAG,IAMtD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@qwickapps/react-framework",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -37,18 +37,20 @@
|
|
|
37
37
|
"QUICK_START_GUIDE.md"
|
|
38
38
|
],
|
|
39
39
|
"scripts": {
|
|
40
|
-
"build": "rollup -c && npm run
|
|
41
|
-
"
|
|
42
|
-
"build:dev": "NODE_ENV=development rollup -c && npm run
|
|
43
|
-
"build:prod": "NODE_ENV=production STRIP_LOGS=true rollup -c && npm run
|
|
40
|
+
"build": "rollup -c && npm run build-palettes",
|
|
41
|
+
"build-palettes": "node scripts/build-palettes.cjs",
|
|
42
|
+
"build:dev": "NODE_ENV=development rollup -c && npm run build-palettes",
|
|
43
|
+
"build:prod": "NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes",
|
|
44
44
|
"dev": "rollup -c -w",
|
|
45
45
|
"test": "jest",
|
|
46
46
|
"test:watch": "jest --watch",
|
|
47
47
|
"test:coverage": "jest --coverage",
|
|
48
48
|
"clean": "rm -rf dist node_modules .rollup.cache storybook-static",
|
|
49
49
|
"create-project": "node scripts/create-qwickapps-project.js",
|
|
50
|
-
"
|
|
50
|
+
"validate:clean-install": "./qa/clean-install/validate.sh",
|
|
51
|
+
"prepublishOnly": "npm run build && npm run validate:clean-install",
|
|
51
52
|
"publish": "npm publish",
|
|
53
|
+
"publish:palettes": "../../products/qwickapps/anvil/publish-palettes.sh",
|
|
52
54
|
"storybook": "storybook dev -p 6006",
|
|
53
55
|
"build-storybook": "storybook build"
|
|
54
56
|
},
|
|
@@ -69,7 +71,7 @@
|
|
|
69
71
|
"author": "QwickApps",
|
|
70
72
|
"license": "PolyForm-Shield-1.0.0",
|
|
71
73
|
"dependencies": {
|
|
72
|
-
"@qwickapps/schema": "^1.3.
|
|
74
|
+
"@qwickapps/schema": "^1.3.2",
|
|
73
75
|
"marked": "^4.3.0",
|
|
74
76
|
"md5": "^2.3.0",
|
|
75
77
|
"sanitize-html": "^2.17.0"
|
|
@@ -112,8 +114,8 @@
|
|
|
112
114
|
"@types/md5": "^2.3.5",
|
|
113
115
|
"@types/mustache": "^4.2.5",
|
|
114
116
|
"@types/node": "^24.1.0",
|
|
115
|
-
"@types/react": "^
|
|
116
|
-
"@types/react-dom": "^
|
|
117
|
+
"@types/react": "^19.0.0",
|
|
118
|
+
"@types/react-dom": "^19.0.0",
|
|
117
119
|
"@types/react-router-dom": "^5.3.3",
|
|
118
120
|
"@types/sanitize-html": "^2.16.0",
|
|
119
121
|
"babel-jest": "^29.0.0",
|
|
@@ -141,6 +143,15 @@
|
|
|
141
143
|
"moduleNameMapper": {
|
|
142
144
|
"\\.(css|less|scss|sass)$": "identity-obj-proxy"
|
|
143
145
|
},
|
|
146
|
+
"globals": {
|
|
147
|
+
"import.meta": {
|
|
148
|
+
"env": {
|
|
149
|
+
"DEV": false,
|
|
150
|
+
"PROD": true,
|
|
151
|
+
"MODE": "test"
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
},
|
|
144
155
|
"transform": {
|
|
145
156
|
"^.+\\.(js|jsx)$": "babel-jest",
|
|
146
157
|
"^.+\\.(ts|tsx)$": "ts-jest"
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Build Palettes Script
|
|
5
|
+
* - Adds version numbers to filenames
|
|
6
|
+
* - Generates minified versions
|
|
7
|
+
* - Updates manifest.json with new filenames
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
const fs = require('fs');
|
|
11
|
+
const path = require('path');
|
|
12
|
+
|
|
13
|
+
const SRC_DIR = path.join(__dirname, '../src/palettes');
|
|
14
|
+
const DIST_DIR = path.join(__dirname, '../dist/palettes');
|
|
15
|
+
const PACKAGE_JSON = path.join(__dirname, '../package.json');
|
|
16
|
+
|
|
17
|
+
// Read version from package.json
|
|
18
|
+
const packageJson = JSON.parse(fs.readFileSync(PACKAGE_JSON, 'utf-8'));
|
|
19
|
+
const VERSION = packageJson.version;
|
|
20
|
+
|
|
21
|
+
console.log(`Building palettes v${VERSION}...`);
|
|
22
|
+
|
|
23
|
+
// Ensure dist directory exists
|
|
24
|
+
if (!fs.existsSync(DIST_DIR)) {
|
|
25
|
+
fs.mkdirSync(DIST_DIR, { recursive: true });
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
// Simple CSS minifier
|
|
29
|
+
function minifyCSS(css) {
|
|
30
|
+
return css
|
|
31
|
+
// Remove comments
|
|
32
|
+
.replace(/\/\*[\s\S]*?\*\//g, '')
|
|
33
|
+
// Remove whitespace around selectors and braces
|
|
34
|
+
.replace(/\s*([{}:;,])\s*/g, '$1')
|
|
35
|
+
// Remove trailing semicolons
|
|
36
|
+
.replace(/;}/g, '}')
|
|
37
|
+
// Remove empty rules
|
|
38
|
+
.replace(/[^{}]+\{\}/g, '')
|
|
39
|
+
// Trim
|
|
40
|
+
.trim();
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// Convert PascalCase to kebab-case (PaletteAutumn -> palette-autumn)
|
|
44
|
+
function toKebabCase(str) {
|
|
45
|
+
return str
|
|
46
|
+
.replace(/^Palette/, '') // Remove 'Palette' prefix
|
|
47
|
+
.replace(/([a-z])([A-Z])/g, '$1-$2') // Add hyphen before capitals
|
|
48
|
+
.toLowerCase();
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// Process palette files
|
|
52
|
+
const files = fs.readdirSync(SRC_DIR).filter(f => f.endsWith('.css') && f.startsWith('Palette'));
|
|
53
|
+
|
|
54
|
+
files.forEach(file => {
|
|
55
|
+
const baseName = file.replace('.css', '');
|
|
56
|
+
const paletteId = toKebabCase(baseName); // e.g., 'autumn'
|
|
57
|
+
const content = fs.readFileSync(path.join(SRC_DIR, file), 'utf-8');
|
|
58
|
+
|
|
59
|
+
// Generate filenames using kebab-case pattern
|
|
60
|
+
const versionedName = `palette-${paletteId}.${VERSION}.css`;
|
|
61
|
+
const versionedMinName = `palette-${paletteId}.${VERSION}.min.css`;
|
|
62
|
+
const latestName = `palette-${paletteId}.latest.css`;
|
|
63
|
+
const latestMinName = `palette-${paletteId}.latest.min.css`;
|
|
64
|
+
|
|
65
|
+
// Write versioned files
|
|
66
|
+
fs.writeFileSync(path.join(DIST_DIR, versionedName), content);
|
|
67
|
+
console.log(`✓ ${versionedName}`);
|
|
68
|
+
|
|
69
|
+
const minified = minifyCSS(content);
|
|
70
|
+
fs.writeFileSync(path.join(DIST_DIR, versionedMinName), minified);
|
|
71
|
+
console.log(`✓ ${versionedMinName}`);
|
|
72
|
+
|
|
73
|
+
// Write latest aliases (same content as versioned)
|
|
74
|
+
fs.writeFileSync(path.join(DIST_DIR, latestName), content);
|
|
75
|
+
console.log(`✓ ${latestName}`);
|
|
76
|
+
|
|
77
|
+
fs.writeFileSync(path.join(DIST_DIR, latestMinName), minified);
|
|
78
|
+
console.log(`✓ ${latestMinName}`);
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
// Copy and update manifest.json
|
|
82
|
+
const manifestPath = path.join(SRC_DIR, 'manifest.json');
|
|
83
|
+
const manifest = JSON.parse(fs.readFileSync(manifestPath, 'utf-8'));
|
|
84
|
+
|
|
85
|
+
// Update version
|
|
86
|
+
manifest.version = VERSION;
|
|
87
|
+
|
|
88
|
+
// Update file references with kebab-case versioned names
|
|
89
|
+
manifest.palettes = manifest.palettes.map(palette => {
|
|
90
|
+
const paletteId = palette.id; // e.g., 'autumn', 'default'
|
|
91
|
+
return {
|
|
92
|
+
...palette,
|
|
93
|
+
version: VERSION,
|
|
94
|
+
file: `palette-${paletteId}.${VERSION}.css`,
|
|
95
|
+
fileMinified: `palette-${paletteId}.${VERSION}.min.css`,
|
|
96
|
+
fileLatest: `palette-${paletteId}.latest.css`,
|
|
97
|
+
fileLatestMinified: `palette-${paletteId}.latest.min.css`
|
|
98
|
+
};
|
|
99
|
+
});
|
|
100
|
+
|
|
101
|
+
// Write updated manifest
|
|
102
|
+
fs.writeFileSync(
|
|
103
|
+
path.join(DIST_DIR, 'manifest.json'),
|
|
104
|
+
JSON.stringify(manifest, null, 2)
|
|
105
|
+
);
|
|
106
|
+
console.log(`✓ manifest.json (updated with kebab-case versioned filenames)`);
|
|
107
|
+
|
|
108
|
+
// Copy index.css if it exists
|
|
109
|
+
const indexCss = path.join(SRC_DIR, 'index.css');
|
|
110
|
+
if (fs.existsSync(indexCss)) {
|
|
111
|
+
fs.copyFileSync(indexCss, path.join(DIST_DIR, 'index.css'));
|
|
112
|
+
console.log(`✓ index.css`);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
console.log('\n✅ Palette build complete!');
|
|
116
|
+
console.log(` ${files.length} palettes × 4 versions each:`);
|
|
117
|
+
console.log(` - palette-{id}.${VERSION}.css (versioned)`);
|
|
118
|
+
console.log(` - palette-{id}.${VERSION}.min.css (versioned minified)`);
|
|
119
|
+
console.log(` - palette-{id}.latest.css (latest alias)`);
|
|
120
|
+
console.log(` - palette-{id}.latest.min.css (latest minified alias)`);
|
|
@@ -81,7 +81,7 @@ const sampleCmsData = {
|
|
|
81
81
|
};
|
|
82
82
|
|
|
83
83
|
// Wrapper component for tests that need providers
|
|
84
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
84
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
85
85
|
children,
|
|
86
86
|
dataProvider
|
|
87
87
|
}) => (
|
|
@@ -191,8 +191,8 @@ describe('Breadcrumbs', () => {
|
|
|
191
191
|
it('handles default link behavior when no onNavigate is provided', () => {
|
|
192
192
|
// Create a mock for window.location.href
|
|
193
193
|
const originalLocation = window.location;
|
|
194
|
-
delete (window as
|
|
195
|
-
window.location = { ...originalLocation, href: '' } as
|
|
194
|
+
delete (window as Window & typeof globalThis).location;
|
|
195
|
+
window.location = { ...originalLocation, href: '' } as Location;
|
|
196
196
|
|
|
197
197
|
const itemsWithHref: BreadcrumbItem[] = [
|
|
198
198
|
{ label: 'Home', href: '/' },
|
|
@@ -74,7 +74,7 @@ const sampleCmsData = {
|
|
|
74
74
|
};
|
|
75
75
|
|
|
76
76
|
// Wrapper component for tests that need providers
|
|
77
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
77
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
78
78
|
children,
|
|
79
79
|
dataProvider
|
|
80
80
|
}) => (
|
|
@@ -573,7 +573,7 @@ describe('Button', () => {
|
|
|
573
573
|
it.skip('preserves component marking for QwickApp framework', () => {
|
|
574
574
|
// The component should be marked as a QwickApp component
|
|
575
575
|
// This is important for framework identification - test skipped due to test environment limitations
|
|
576
|
-
const buttonComponent = Button as
|
|
576
|
+
const buttonComponent = Button as unknown as { QWICKAPP_COMPONENT?: boolean };
|
|
577
577
|
expect(buttonComponent.QWICKAPP_COMPONENT).toBeTruthy();
|
|
578
578
|
});
|
|
579
579
|
});
|
|
@@ -665,7 +665,7 @@ describe('Button', () => {
|
|
|
665
665
|
it('handles invalid variant gracefully', () => {
|
|
666
666
|
render(
|
|
667
667
|
<TestWrapper>
|
|
668
|
-
<Button label="Invalid Variant" variant={'invalid' as
|
|
668
|
+
<Button label="Invalid Variant" variant={'invalid' as 'primary' | 'secondary' | 'outlined' | 'text' | 'contained'} />
|
|
669
669
|
</TestWrapper>
|
|
670
670
|
);
|
|
671
671
|
|
|
@@ -84,7 +84,7 @@ const sampleCmsData = {
|
|
|
84
84
|
};
|
|
85
85
|
|
|
86
86
|
// Wrapper component for tests that need providers
|
|
87
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
87
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
88
88
|
children,
|
|
89
89
|
dataProvider
|
|
90
90
|
}) => (
|
|
@@ -104,9 +104,9 @@ const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: any }> =
|
|
|
104
104
|
describe('CardListGrid', () => {
|
|
105
105
|
describe('Traditional Props Usage', () => {
|
|
106
106
|
it('renders with custom render function', () => {
|
|
107
|
-
const customRenderItem = (item:
|
|
107
|
+
const customRenderItem = (item: Record<string, unknown>, index: number) => (
|
|
108
108
|
<div key={index} data-testid={`custom-item-${index}`}>
|
|
109
|
-
{item.name}
|
|
109
|
+
{item.name as string}
|
|
110
110
|
</div>
|
|
111
111
|
);
|
|
112
112
|
|
|
@@ -188,11 +188,11 @@ describe('CardListGrid', () => {
|
|
|
188
188
|
});
|
|
189
189
|
|
|
190
190
|
it('handles empty items array gracefully', () => {
|
|
191
|
-
const customRenderItem = (item:
|
|
191
|
+
const customRenderItem = (item: Record<string, unknown>, index: number) => (
|
|
192
192
|
<div key={index}>Empty</div>
|
|
193
193
|
);
|
|
194
194
|
|
|
195
|
-
|
|
195
|
+
render(
|
|
196
196
|
<TestWrapper>
|
|
197
197
|
<CardListGrid
|
|
198
198
|
items={[]}
|
|
@@ -100,7 +100,7 @@ const sampleCmsData = {
|
|
|
100
100
|
};
|
|
101
101
|
|
|
102
102
|
// Wrapper component for tests that need providers
|
|
103
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
103
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
104
104
|
children,
|
|
105
105
|
dataProvider
|
|
106
106
|
}) => (
|
|
@@ -641,7 +641,7 @@ describe('ChoiceInputField', () => {
|
|
|
641
641
|
it.skip('preserves component marking for QwickApp framework', () => {
|
|
642
642
|
// The component should be marked as a QwickApp component
|
|
643
643
|
// This is important for framework identification - test skipped due to test environment limitations
|
|
644
|
-
const choiceInputFieldComponent = ChoiceInputField as
|
|
644
|
+
const choiceInputFieldComponent = ChoiceInputField as unknown as { QWICKAPP_COMPONENT?: boolean };
|
|
645
645
|
expect(choiceInputFieldComponent.QWICKAPP_COMPONENT).toBeTruthy();
|
|
646
646
|
});
|
|
647
647
|
});
|
|
@@ -80,7 +80,7 @@ const sampleCmsData = {
|
|
|
80
80
|
};
|
|
81
81
|
|
|
82
82
|
// Wrapper component for tests that need providers
|
|
83
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
83
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
84
84
|
children,
|
|
85
85
|
dataProvider
|
|
86
86
|
}) => (
|
|
@@ -508,7 +508,7 @@ describe('Code', () => {
|
|
|
508
508
|
it.skip('preserves component marking for QwickApp framework', () => {
|
|
509
509
|
// The component should be marked as a QwickApp component
|
|
510
510
|
// This is important for framework identification - test skipped due to test environment limitations
|
|
511
|
-
const codeComponent = Code as
|
|
511
|
+
const codeComponent = Code as unknown as { QWICKAPP_COMPONENT?: boolean };
|
|
512
512
|
expect(codeComponent.QWICKAPP_COMPONENT).toBeTruthy();
|
|
513
513
|
});
|
|
514
514
|
});
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import React from 'react';
|
|
8
|
-
import { render, waitFor
|
|
8
|
+
import { render, waitFor } from '@testing-library/react';
|
|
9
9
|
import Content from '../../components/blocks/Content';
|
|
10
10
|
import { DataProvider } from '../../contexts/DataContext';
|
|
11
11
|
import { JsonDataProvider } from '@qwickapps/schema';
|
|
@@ -52,7 +52,7 @@ const sampleCmsData = {
|
|
|
52
52
|
};
|
|
53
53
|
|
|
54
54
|
// Wrapper component for tests that need providers
|
|
55
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
55
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
56
56
|
children,
|
|
57
57
|
dataProvider
|
|
58
58
|
}) => (
|
|
@@ -121,9 +121,9 @@ describe.skip('Content', () => {
|
|
|
121
121
|
const variants = ['default', 'elevated', 'outlined', 'filled'] as const;
|
|
122
122
|
|
|
123
123
|
variants.forEach(variant => {
|
|
124
|
-
const {
|
|
124
|
+
const { unmount } = render(
|
|
125
125
|
<TestWrapper>
|
|
126
|
-
<Content
|
|
126
|
+
<Content
|
|
127
127
|
title={`${variant} variant`}
|
|
128
128
|
variant={variant}
|
|
129
129
|
/>
|
|
@@ -470,9 +470,9 @@ describe.skip('Content', () => {
|
|
|
470
470
|
});
|
|
471
471
|
|
|
472
472
|
it('handles custom CSS classes and styles', () => {
|
|
473
|
-
|
|
473
|
+
render(
|
|
474
474
|
<TestWrapper>
|
|
475
|
-
<Content
|
|
475
|
+
<Content
|
|
476
476
|
title="Custom Styled"
|
|
477
477
|
className="custom-content"
|
|
478
478
|
sx={{ border: '1px solid red' }}
|
|
@@ -77,7 +77,7 @@ const mockActions = [
|
|
|
77
77
|
];
|
|
78
78
|
|
|
79
79
|
// Wrapper component for tests that need providers
|
|
80
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
80
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
81
81
|
children,
|
|
82
82
|
dataProvider
|
|
83
83
|
}) => {
|
|
@@ -430,9 +430,9 @@ describe('CoverImageHeader', () => {
|
|
|
430
430
|
});
|
|
431
431
|
|
|
432
432
|
it('handles custom CSS classes and styles', () => {
|
|
433
|
-
|
|
433
|
+
render(
|
|
434
434
|
<TestWrapper>
|
|
435
|
-
<CoverImageHeader
|
|
435
|
+
<CoverImageHeader
|
|
436
436
|
title="Custom Styled"
|
|
437
437
|
className="custom-header"
|
|
438
438
|
sx={{ border: '1px solid red' }}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import React from 'react';
|
|
8
|
-
import { render, waitFor
|
|
8
|
+
import { render, waitFor } from '@testing-library/react';
|
|
9
9
|
import FeatureCard from '../../blocks/FeatureCard';
|
|
10
10
|
import { DataProvider } from '../../../contexts/DataContext';
|
|
11
11
|
import { JsonDataProvider } from '@qwickapps/schema';
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import React from 'react';
|
|
8
|
-
import { render, waitFor
|
|
8
|
+
import { render, waitFor } from '@testing-library/react';
|
|
9
9
|
import FeatureGrid from '../../blocks/FeatureGrid';
|
|
10
10
|
import { DataProvider } from '../../../contexts/DataContext';
|
|
11
11
|
import { JsonDataProvider } from '@qwickapps/schema';
|
|
@@ -99,7 +99,7 @@ const sampleFeatures: FeatureItem[] = [
|
|
|
99
99
|
];
|
|
100
100
|
|
|
101
101
|
// Wrapper component for tests that need providers
|
|
102
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
102
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
103
103
|
children,
|
|
104
104
|
dataProvider
|
|
105
105
|
}) => (
|
|
@@ -206,9 +206,9 @@ describe.skip('FeatureGrid', () => {
|
|
|
206
206
|
});
|
|
207
207
|
|
|
208
208
|
it('supports grid props', () => {
|
|
209
|
-
|
|
209
|
+
render(
|
|
210
210
|
<TestWrapper>
|
|
211
|
-
<FeatureGrid
|
|
211
|
+
<FeatureGrid
|
|
212
212
|
features={sampleFeatures}
|
|
213
213
|
span={12}
|
|
214
214
|
xs={12}
|
|
@@ -105,7 +105,7 @@ const sampleItems: FooterItem[] = [
|
|
|
105
105
|
];
|
|
106
106
|
|
|
107
107
|
// Wrapper component for tests that need providers
|
|
108
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
108
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
109
109
|
children,
|
|
110
110
|
dataProvider
|
|
111
111
|
}) => (
|
|
@@ -314,9 +314,9 @@ describe.skip('Footer', () => {
|
|
|
314
314
|
});
|
|
315
315
|
|
|
316
316
|
it('renders with custom CSS classes and styles', () => {
|
|
317
|
-
|
|
317
|
+
render(
|
|
318
318
|
<TestWrapper>
|
|
319
|
-
<Footer
|
|
319
|
+
<Footer
|
|
320
320
|
sections={sampleSections}
|
|
321
321
|
className="custom-footer"
|
|
322
322
|
sx={{ backgroundColor: 'red' }}
|
|
@@ -97,7 +97,7 @@ const MockFooter: React.FC = () => (
|
|
|
97
97
|
);
|
|
98
98
|
|
|
99
99
|
// Wrapper component for tests that need providers
|
|
100
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
100
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown; appName?: string }> = ({
|
|
101
101
|
children,
|
|
102
102
|
dataProvider,
|
|
103
103
|
appName = 'Test App'
|
|
@@ -652,7 +652,7 @@ describe('FormBlock', () => {
|
|
|
652
652
|
it.skip('preserves component marking for QwickApp framework', () => {
|
|
653
653
|
// The component should be marked as a QwickApp component
|
|
654
654
|
// This is important for framework identification - test skipped due to test environment limitations
|
|
655
|
-
const formBlockComponent = FormBlock as
|
|
655
|
+
const formBlockComponent = FormBlock as unknown as { QWICKAPP_COMPONENT?: boolean };
|
|
656
656
|
expect(formBlockComponent.QWICKAPP_COMPONENT).toBeTruthy();
|
|
657
657
|
});
|
|
658
658
|
});
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import React from 'react';
|
|
8
|
-
import { render, waitFor
|
|
8
|
+
import { render, waitFor } from '@testing-library/react';
|
|
9
9
|
import HeroBlock from '../../blocks/HeroBlock';
|
|
10
10
|
import { DataProvider } from '../../../contexts/DataContext';
|
|
11
11
|
import { JsonDataProvider } from '@qwickapps/schema';
|
|
@@ -58,7 +58,7 @@ const sampleActions: ButtonProps[] = [
|
|
|
58
58
|
];
|
|
59
59
|
|
|
60
60
|
// Wrapper component for tests that need providers
|
|
61
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
61
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
62
62
|
children,
|
|
63
63
|
dataProvider
|
|
64
64
|
}) => (
|
|
@@ -242,9 +242,9 @@ describe('HeroBlock', () => {
|
|
|
242
242
|
});
|
|
243
243
|
|
|
244
244
|
it('renders with custom CSS classes and styles', () => {
|
|
245
|
-
|
|
245
|
+
render(
|
|
246
246
|
<TestWrapper>
|
|
247
|
-
<HeroBlock
|
|
247
|
+
<HeroBlock
|
|
248
248
|
title="Custom Hero"
|
|
249
249
|
className="custom-hero"
|
|
250
250
|
sx={{ backgroundColor: 'red' }}
|
|
@@ -680,7 +680,7 @@ describe('HeroBlock', () => {
|
|
|
680
680
|
|
|
681
681
|
expect(parsedData.data).toHaveProperty('title', 'Minimal Hero');
|
|
682
682
|
// undefined properties should be either excluded or set to undefined
|
|
683
|
-
expect(parsedData.data.subtitle === undefined || !
|
|
683
|
+
expect(parsedData.data.subtitle === undefined || !Object.prototype.hasOwnProperty.call(parsedData.data, 'subtitle')).toBe(true);
|
|
684
684
|
|
|
685
685
|
const deserializedComponent = ComponentTransformer.deserialize(serializedData);
|
|
686
686
|
expect(React.isValidElement(deserializedComponent)).toBe(true);
|
|
@@ -81,7 +81,7 @@ const sampleCmsData = {
|
|
|
81
81
|
};
|
|
82
82
|
|
|
83
83
|
// Wrapper component for tests that need providers
|
|
84
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
84
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
85
85
|
children,
|
|
86
86
|
dataProvider
|
|
87
87
|
}) => (
|
|
@@ -316,7 +316,7 @@ describe.skip('HtmlInputField', () => {
|
|
|
316
316
|
selectionEnd: 5,
|
|
317
317
|
setSelectionRange: jest.fn(),
|
|
318
318
|
focus: jest.fn()
|
|
319
|
-
} as
|
|
319
|
+
} as unknown as HTMLTextAreaElement;
|
|
320
320
|
|
|
321
321
|
jest.spyOn(document, 'getElementById').mockReturnValue(mockTextarea);
|
|
322
322
|
|
|
@@ -345,7 +345,7 @@ describe.skip('HtmlInputField', () => {
|
|
|
345
345
|
selectionEnd: 5,
|
|
346
346
|
setSelectionRange: jest.fn(),
|
|
347
347
|
focus: jest.fn()
|
|
348
|
-
} as
|
|
348
|
+
} as unknown as HTMLTextAreaElement;
|
|
349
349
|
|
|
350
350
|
jest.spyOn(document, 'getElementById').mockReturnValue(mockTextarea);
|
|
351
351
|
|
|
@@ -475,8 +475,8 @@ describe.skip('HtmlInputField', () => {
|
|
|
475
475
|
selectionEnd: 4,
|
|
476
476
|
setSelectionRange: jest.fn(),
|
|
477
477
|
focus: jest.fn()
|
|
478
|
-
} as
|
|
479
|
-
|
|
478
|
+
} as unknown as HTMLTextAreaElement;
|
|
479
|
+
|
|
480
480
|
jest.spyOn(document, 'getElementById').mockReturnValue(mockTextarea);
|
|
481
481
|
|
|
482
482
|
const handleChange = jest.fn();
|
|
@@ -644,7 +644,7 @@ describe.skip('HtmlInputField', () => {
|
|
|
644
644
|
it.skip('preserves component marking for QwickApp framework', () => {
|
|
645
645
|
// The component should be marked as a QwickApp component
|
|
646
646
|
// This is important for framework identification - test skipped due to test environment limitations
|
|
647
|
-
const htmlInputFieldComponent = HtmlInputField as
|
|
647
|
+
const htmlInputFieldComponent = HtmlInputField as unknown as { QWICKAPP_COMPONENT?: boolean };
|
|
648
648
|
expect(htmlInputFieldComponent.QWICKAPP_COMPONENT).toBeTruthy();
|
|
649
649
|
});
|
|
650
650
|
});
|
|
@@ -707,8 +707,8 @@ describe.skip('HtmlInputField', () => {
|
|
|
707
707
|
selectionEnd: 4,
|
|
708
708
|
setSelectionRange: jest.fn(),
|
|
709
709
|
focus: jest.fn()
|
|
710
|
-
} as
|
|
711
|
-
|
|
710
|
+
} as unknown as HTMLTextAreaElement;
|
|
711
|
+
|
|
712
712
|
jest.spyOn(document, 'getElementById').mockReturnValue(mockTextarea);
|
|
713
713
|
|
|
714
714
|
const handleChange = jest.fn();
|
|
@@ -79,7 +79,7 @@ const mockActions = [
|
|
|
79
79
|
];
|
|
80
80
|
|
|
81
81
|
// Wrapper component for tests that need providers
|
|
82
|
-
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?:
|
|
82
|
+
const TestWrapper: React.FC<{ children: React.ReactNode; dataProvider?: unknown }> = ({
|
|
83
83
|
children,
|
|
84
84
|
dataProvider
|
|
85
85
|
}) => (
|
|
@@ -247,9 +247,9 @@ describe('PageBannerHeader', () => {
|
|
|
247
247
|
});
|
|
248
248
|
|
|
249
249
|
it('renders with custom height', () => {
|
|
250
|
-
|
|
250
|
+
render(
|
|
251
251
|
<TestWrapper>
|
|
252
|
-
<PageBannerHeader
|
|
252
|
+
<PageBannerHeader
|
|
253
253
|
title="Custom Height"
|
|
254
254
|
coverImage="/test-cover.jpg"
|
|
255
255
|
height={400}
|
|
@@ -505,8 +505,8 @@ describe('PageBannerHeader', () => {
|
|
|
505
505
|
process.env.NODE_ENV = 'production';
|
|
506
506
|
|
|
507
507
|
const emptyDataProvider = new JsonDataProvider({ data: {} });
|
|
508
|
-
|
|
509
|
-
|
|
508
|
+
|
|
509
|
+
render(
|
|
510
510
|
<TestWrapper dataProvider={emptyDataProvider}>
|
|
511
511
|
<PageBannerHeader dataSource="pageBannerHeaders.nonexistentData" />
|
|
512
512
|
</TestWrapper>
|
|
@@ -588,9 +588,9 @@ describe('PageBannerHeader', () => {
|
|
|
588
588
|
});
|
|
589
589
|
|
|
590
590
|
it('handles custom CSS classes and styles', () => {
|
|
591
|
-
|
|
591
|
+
render(
|
|
592
592
|
<TestWrapper>
|
|
593
|
-
<PageBannerHeader
|
|
593
|
+
<PageBannerHeader
|
|
594
594
|
title="Custom Styled"
|
|
595
595
|
className="custom-header"
|
|
596
596
|
sx={{ border: '1px solid red' }}
|