@qwickapps/react-framework 1.3.4 → 1.4.0
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 +1688 -2
- package/dist/__tests__/schemas/transformers/MockSerializableComponent.d.ts +66 -0
- package/dist/__tests__/schemas/transformers/MockSerializableComponent.d.ts.map +1 -0
- package/dist/components/ErrorBoundary.d.ts +7 -0
- package/dist/components/ErrorBoundary.d.ts.map +1 -1
- package/dist/components/Html.d.ts +28 -18
- package/dist/components/Html.d.ts.map +1 -1
- package/dist/components/Logo.d.ts +12 -35
- package/dist/components/Logo.d.ts.map +1 -1
- package/dist/components/Markdown.d.ts +18 -13
- package/dist/components/Markdown.d.ts.map +1 -1
- package/dist/components/QwickApp.d.ts +16 -3
- package/dist/components/QwickApp.d.ts.map +1 -1
- package/dist/components/QwickIcon.d.ts +23 -0
- package/dist/components/QwickIcon.d.ts.map +1 -0
- package/dist/components/SafeSpan.d.ts +12 -5
- package/dist/components/SafeSpan.d.ts.map +1 -1
- package/dist/components/Scaffold.d.ts.map +1 -1
- package/dist/components/base/ModelView.d.ts +101 -0
- package/dist/components/base/ModelView.d.ts.map +1 -0
- package/dist/components/base/index.d.ts +11 -0
- package/dist/components/base/index.d.ts.map +1 -0
- package/dist/components/blocks/Article.d.ts +12 -2
- package/dist/components/blocks/Article.d.ts.map +1 -1
- package/dist/components/blocks/Code.d.ts +13 -2
- package/dist/components/blocks/Code.d.ts.map +1 -1
- package/dist/components/blocks/Content.d.ts.map +1 -1
- package/dist/components/blocks/CoverImageHeader.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/components/blocks/HeroBlock.d.ts +27 -13
- package/dist/components/blocks/HeroBlock.d.ts.map +1 -1
- package/dist/components/blocks/Image.d.ts +41 -0
- package/dist/components/blocks/Image.d.ts.map +1 -0
- package/dist/components/blocks/PageBannerHeader.d.ts.map +1 -1
- package/dist/components/blocks/ProductCard.d.ts.map +1 -1
- package/dist/components/blocks/Section.d.ts +16 -2
- package/dist/components/blocks/Section.d.ts.map +1 -1
- package/dist/components/blocks/Text.d.ts +41 -0
- package/dist/components/blocks/Text.d.ts.map +1 -0
- package/dist/components/blocks/index.d.ts +4 -0
- package/dist/components/blocks/index.d.ts.map +1 -1
- package/dist/components/buttons/Button.d.ts +23 -7
- package/dist/components/buttons/Button.d.ts.map +1 -1
- package/dist/components/forms/FormBlock.d.ts +19 -13
- package/dist/components/forms/FormBlock.d.ts.map +1 -1
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/input/ChoiceInputField.d.ts +17 -11
- package/dist/components/input/ChoiceInputField.d.ts.map +1 -1
- package/dist/components/input/HtmlInputField.d.ts +17 -11
- package/dist/components/input/HtmlInputField.d.ts.map +1 -1
- package/dist/components/input/SelectInputField.d.ts +16 -10
- package/dist/components/input/SelectInputField.d.ts.map +1 -1
- package/dist/components/input/SwitchInputField.d.ts +16 -10
- package/dist/components/input/SwitchInputField.d.ts.map +1 -1
- package/dist/components/input/TextField.d.ts.map +1 -1
- package/dist/components/input/TextInputField.d.ts +16 -11
- package/dist/components/input/TextInputField.d.ts.map +1 -1
- package/dist/components/layout/GridCell.d.ts +23 -6
- package/dist/components/layout/GridCell.d.ts.map +1 -1
- package/dist/components/layout/GridLayout.d.ts +24 -23
- package/dist/components/layout/GridLayout.d.ts.map +1 -1
- package/dist/components/pages/FormPage.d.ts.map +1 -1
- package/dist/components/pages/Page.d.ts +49 -87
- package/dist/components/pages/Page.d.ts.map +1 -1
- package/dist/components/pages/index.d.ts +2 -2
- package/dist/components/pages/index.d.ts.map +1 -1
- package/dist/config/AppConfig.d.ts +49 -0
- package/dist/config/AppConfig.d.ts.map +1 -0
- package/dist/config/AppConfigBuilder.d.ts +75 -0
- package/dist/config/AppConfigBuilder.d.ts.map +1 -0
- package/dist/config/index.d.ts +13 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/types.d.ts +130 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config.d.ts +15 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.esm.js +451 -0
- package/dist/config.js +455 -0
- package/dist/contexts/PrintModeContext.d.ts +27 -0
- package/dist/contexts/PrintModeContext.d.ts.map +1 -0
- package/dist/contexts/QwickAppContext.d.ts +2 -2
- package/dist/contexts/QwickAppContext.d.ts.map +1 -1
- package/dist/contexts/ThemeContext.d.ts.map +1 -1
- package/dist/contexts/index.d.ts +2 -0
- package/dist/contexts/index.d.ts.map +1 -1
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/usePrintMode.d.ts +39 -0
- package/dist/hooks/usePrintMode.d.ts.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.css +1 -1
- package/dist/index.esm.js +20722 -16021
- package/dist/index.js +20725 -16010
- package/dist/schemas/CodeSchema.d.ts +2 -1
- package/dist/schemas/CodeSchema.d.ts.map +1 -1
- package/dist/schemas/CollapsibleLayoutSchema.d.ts +2 -1
- package/dist/schemas/CollapsibleLayoutSchema.d.ts.map +1 -1
- package/dist/schemas/ContentSchema.d.ts +2 -1
- package/dist/schemas/ContentSchema.d.ts.map +1 -1
- package/dist/schemas/GridCellSchema.d.ts +25 -0
- package/dist/schemas/GridCellSchema.d.ts.map +1 -0
- package/dist/schemas/GridLayoutSchema.d.ts +23 -0
- package/dist/schemas/GridLayoutSchema.d.ts.map +1 -0
- package/dist/schemas/HtmlSchema.d.ts +14 -0
- package/dist/schemas/HtmlSchema.d.ts.map +1 -0
- package/dist/schemas/ImageSchema.d.ts +32 -0
- package/dist/schemas/ImageSchema.d.ts.map +1 -0
- package/dist/schemas/LogoSchema.d.ts +35 -0
- package/dist/schemas/LogoSchema.d.ts.map +1 -0
- package/dist/schemas/MarkdownSchema.d.ts +14 -0
- package/dist/schemas/MarkdownSchema.d.ts.map +1 -0
- package/dist/schemas/PageTemplateSchema.d.ts +31 -0
- package/dist/schemas/PageTemplateSchema.d.ts.map +1 -0
- package/dist/schemas/PrintConfigSchema.d.ts +31 -0
- package/dist/schemas/PrintConfigSchema.d.ts.map +1 -0
- package/dist/schemas/SectionSchema.d.ts +2 -1
- package/dist/schemas/SectionSchema.d.ts.map +1 -1
- package/dist/schemas/TextSchema.d.ts +37 -0
- package/dist/schemas/TextSchema.d.ts.map +1 -0
- package/dist/schemas/ViewModelSchema.d.ts +23 -0
- package/dist/schemas/ViewModelSchema.d.ts.map +1 -0
- package/dist/schemas/index.d.ts +15 -1
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/transformers/ComponentTransformer.d.ts +116 -0
- package/dist/schemas/transformers/ComponentTransformer.d.ts.map +1 -0
- package/dist/schemas/transformers/ReactNodeTransformer.d.ts +53 -0
- package/dist/schemas/transformers/ReactNodeTransformer.d.ts.map +1 -0
- package/dist/schemas/transformers/__tests__/MockSerializableComponent.d.ts +66 -0
- package/dist/schemas/transformers/__tests__/MockSerializableComponent.d.ts.map +1 -0
- package/dist/schemas/transformers/registry.d.ts +15 -0
- package/dist/schemas/transformers/registry.d.ts.map +1 -0
- package/dist/schemas/types/Serializable.d.ts +46 -0
- package/dist/schemas/types/Serializable.d.ts.map +1 -0
- package/dist/utils/htmlTransform.d.ts.map +1 -1
- package/dist/utils/reactUtils.d.ts +12 -3
- package/dist/utils/reactUtils.d.ts.map +1 -1
- package/package.json +17 -3
- package/src/{components/__tests__ → __tests__/components}/AccessibilityProvider.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/Article.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/Breadcrumbs.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/Button.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/CardListGrid.test.tsx +2 -2
- package/src/{components/__tests__ → __tests__/components}/ChoiceInputField.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/Code.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/Content.integration.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/Content.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/CoverImageHeader.test.tsx +2 -2
- package/src/{components/__tests__ → __tests__/components}/ErrorBoundary.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/FeatureCard.integration.test.tsx +2 -2
- package/src/{components/__tests__ → __tests__/components}/FeatureGrid.integration.test.tsx +2 -2
- package/src/{components/__tests__ → __tests__/components}/FeatureGrid.test.tsx +2 -2
- package/src/{components/__tests__ → __tests__/components}/Footer.test.tsx +4 -4
- package/src/{components/__tests__ → __tests__/components}/FormBlock.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/HeroBlock.integration.test.tsx +2 -2
- package/src/{components/__tests__ → __tests__/components}/HeroBlock.test.tsx +233 -7
- package/src/{components/__tests__ → __tests__/components}/Html.test.tsx +11 -2
- package/src/{components/__tests__ → __tests__/components}/HtmlInputField.test.tsx +3 -3
- package/src/__tests__/components/Logo.test.js +3 -3
- package/src/{components/__tests__ → __tests__/components}/Markdown.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/PageBannerHeader.test.tsx +3 -3
- package/src/{components/__tests__ → __tests__/components}/PaletteSwitcher.test.tsx +3 -3
- package/src/{components/__tests__ → __tests__/components}/ProductCard.test.tsx +4 -4
- package/src/{components/__tests__ → __tests__/components}/SafeSpan.integration.test.tsx +2 -2
- package/src/{components/__tests__ → __tests__/components}/SafeSpan.simple.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/SafeSpan.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/Section.integration.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/Section.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/SelectInputField.test.tsx +1 -1
- package/src/{components/__tests__ → __tests__/components}/TextInputField.test.tsx +3 -3
- package/src/{components/__tests__ → __tests__/components}/ThemeSwitcher.test.tsx +3 -3
- package/src/__tests__/components/base/ModelView.test.tsx +220 -0
- package/src/__tests__/components/blocks/Code.performance.test.tsx +625 -0
- package/src/__tests__/components/blocks/Code.serialization.test.tsx +507 -0
- package/src/__tests__/components/blocks/HeroBlock.serialization.test.tsx +414 -0
- package/src/__tests__/components/blocks/Image.serialization.test.tsx +257 -0
- package/src/__tests__/components/blocks/Section.serialization.test.tsx +553 -0
- package/src/__tests__/components/blocks/Text.performance.test.tsx +442 -0
- package/src/__tests__/components/blocks/Text.serialization.test.tsx +491 -0
- package/src/__tests__/components/buttons/Button.serialization.test.tsx +443 -0
- package/src/__tests__/components/input/FormComponents.serialization.test.tsx +482 -0
- package/src/__tests__/components/input/SelectInputField.serialization.test.tsx +439 -0
- package/src/__tests__/components/input/TextInputField.serialization.test.tsx +359 -0
- package/src/{components/layout/CollapsibleLayout/__tests__ → __tests__/components/layout}/CollapsibleLayout.test.tsx +4 -4
- package/src/__tests__/components/layout/GridCell.serialization.test.tsx +403 -0
- package/src/__tests__/components/layout/GridLayout.serialization.test.tsx +311 -0
- package/src/__tests__/hooks/usePrintMode.test.ts +89 -0
- package/src/__tests__/schemas/PageTemplateSchema.test.ts +161 -0
- package/src/__tests__/schemas/PrintConfigSchema.test.ts +127 -0
- package/src/__tests__/schemas/ViewModelSchema.test.ts +80 -0
- package/src/__tests__/schemas/transformers/ComponentSerializationPatterns.test.tsx +602 -0
- package/src/__tests__/schemas/transformers/ComponentTransformer.htmlPatterns.test.ts +301 -0
- package/src/__tests__/schemas/transformers/ComponentTransformer.test.ts +521 -0
- package/src/__tests__/schemas/transformers/CrossBrowserCompatibility.test.ts +586 -0
- package/src/__tests__/schemas/transformers/MockSerializableComponent.ts +103 -0
- package/src/__tests__/schemas/transformers/RealWorldScenarios.test.tsx +1165 -0
- package/src/__tests__/schemas/transformers/SerializationErrorHandling.test.ts +602 -0
- package/src/__tests__/schemas/transformers/SerializationIntegration.test.tsx +691 -0
- package/src/__tests__/schemas/transformers/SerializationPerformance.test.ts +460 -0
- package/src/__tests__/schemas/transformers/TestAutomation.test.ts +597 -0
- package/src/{utils/__tests__ → __tests__/utils}/nested-dom-fix.test.tsx +1 -1
- package/src/components/ErrorBoundary.tsx +8 -8
- package/src/components/Html.tsx +147 -44
- package/src/components/Logo.tsx +198 -100
- package/src/components/Markdown.tsx +125 -16
- package/src/components/QwickApp.tsx +64 -31
- package/src/components/QwickIcon.tsx +59 -0
- package/src/components/SafeSpan.tsx +65 -10
- package/src/components/Scaffold.tsx +2 -8
- package/src/components/base/ModelView.tsx +199 -0
- package/src/components/base/index.ts +11 -0
- package/src/components/blocks/Article.tsx +57 -18
- package/src/components/blocks/Code.md +529 -0
- package/src/components/blocks/Code.tsx +102 -15
- package/src/components/blocks/Content.tsx +25 -77
- package/src/components/blocks/CoverImageHeader.tsx +9 -4
- package/src/components/blocks/FeatureCard.tsx +1 -2
- package/src/components/blocks/FeatureGrid.tsx +19 -1
- package/src/components/blocks/Footer.tsx +13 -1
- package/src/components/blocks/HeroBlock.tsx +87 -20
- package/src/components/blocks/Image.tsx +395 -0
- package/src/components/blocks/PageBannerHeader.tsx +14 -12
- package/src/components/blocks/ProductCard.tsx +51 -52
- package/src/components/blocks/Section.tsx +113 -8
- package/src/components/blocks/Text.tsx +285 -0
- package/src/components/blocks/index.ts +4 -0
- package/src/components/buttons/Button.tsx +184 -15
- package/src/components/forms/FormBlock.tsx +70 -17
- package/src/components/index.ts +5 -0
- package/src/components/input/ChoiceInputField.tsx +48 -18
- package/src/components/input/HtmlInputField.tsx +48 -18
- package/src/components/input/SelectInputField.tsx +48 -16
- package/src/components/input/SwitchInputField.tsx +48 -17
- package/src/components/input/TextField.tsx +41 -1
- package/src/components/input/TextInputField.tsx +52 -18
- package/src/components/layout/GridCell.tsx +118 -9
- package/src/components/layout/GridLayout.tsx +125 -24
- package/src/components/pages/FormPage.tsx +0 -1
- package/src/components/pages/Page.css +304 -332
- package/src/components/pages/Page.tsx +307 -255
- package/src/components/pages/index.ts +2 -2
- package/src/config/AppConfig.ts +133 -0
- package/src/config/AppConfigBuilder.ts +421 -0
- package/src/config/__tests__/AppConfig.test.ts +385 -0
- package/src/config/__tests__/AppConfigBuilder.test.ts +432 -0
- package/src/config/index.ts +24 -0
- package/src/config/types.ts +170 -0
- package/src/config.ts +25 -0
- package/src/contexts/PrintModeContext.tsx +332 -0
- package/src/contexts/QwickAppContext.tsx +2 -2
- package/src/contexts/ThemeContext.tsx +1 -2
- package/src/contexts/index.ts +2 -0
- package/src/hooks/index.ts +5 -1
- package/src/hooks/usePrintMode.ts +73 -0
- package/src/index.ts +3 -0
- package/src/schemas/CodeSchema.ts +3 -3
- package/src/schemas/CollapsibleLayoutSchema.ts +2 -1
- package/src/schemas/ContentSchema.ts +2 -1
- package/src/schemas/GridCellSchema.ts +164 -0
- package/src/schemas/GridLayoutSchema.ts +133 -0
- package/src/schemas/HtmlSchema.ts +47 -0
- package/src/schemas/ImageSchema.ts +235 -0
- package/src/schemas/LogoSchema.ts +241 -0
- package/src/schemas/MarkdownSchema.ts +47 -0
- package/src/schemas/PageTemplateSchema.ts +186 -0
- package/src/schemas/PrintConfigSchema.ts +207 -0
- package/src/schemas/README.md +661 -0
- package/src/schemas/SectionSchema.ts +2 -1
- package/src/schemas/TextSchema.ts +329 -0
- package/src/schemas/ViewModelSchema.ts +115 -0
- package/src/schemas/index.ts +21 -2
- package/src/schemas/transformers/ComponentTransformer.ts +403 -0
- package/src/schemas/transformers/ReactNodeTransformer.ts +236 -0
- package/src/schemas/transformers/registry.ts +72 -0
- package/src/schemas/types/Serializable.ts +51 -0
- package/src/stories/AccessibilityProvider.stories.tsx +253 -253
- package/src/stories/Article.stories.tsx +433 -433
- package/src/stories/Button.stories.tsx +1 -1
- package/src/stories/CardListGrid.stories.tsx +451 -451
- package/src/stories/ChoiceInputField.stories.tsx +503 -503
- package/src/stories/Code.stories.tsx +1 -1
- package/src/stories/CollapsibleLayout.stories.tsx +1414 -1414
- package/src/stories/Content.stories.tsx +393 -393
- package/src/stories/CoverImageHeader.stories.tsx +701 -701
- package/src/stories/DataBinding.advanced.stories.tsx +432 -432
- package/src/stories/DataProvider.stories.tsx +1192 -1192
- package/src/stories/FeatureCard.stories.tsx +557 -557
- package/src/stories/FeatureGrid.stories.tsx +594 -594
- package/src/stories/Footer.stories.tsx +640 -640
- package/src/stories/FormBlock.stories.tsx +760 -760
- package/src/stories/FormComponents.stories.tsx +349 -541
- package/src/stories/GridCell.stories.tsx +417 -0
- package/src/stories/GridLayout.stories.tsx +353 -0
- package/src/stories/HeroBlock.stories.tsx +862 -373
- package/src/stories/HtmlInputField.stories.tsx +474 -474
- package/src/stories/Image.stories.tsx +819 -0
- package/src/stories/Introduction.stories.tsx +667 -667
- package/src/stories/LayoutBlocks.stories.tsx +324 -324
- package/src/stories/Logo.stories.tsx +165 -6
- package/src/stories/Markdown.stories.tsx +137 -137
- package/src/stories/ModelView.stories.tsx +477 -0
- package/src/stories/Page.stories.tsx +688 -688
- package/src/stories/PageBannerHeader.stories.tsx +864 -864
- package/src/stories/PaletteSwitcher.stories.tsx +119 -119
- package/src/stories/ProductCard.stories.tsx +424 -424
- package/src/stories/QwickApp.stories.tsx +368 -368
- package/src/stories/ResponsiveMenu.stories.tsx +249 -249
- package/src/stories/SafeSpan.stories.tsx +531 -531
- package/src/stories/Section.stories.tsx +90 -2
- package/src/stories/SelectInputField.stories.tsx +524 -524
- package/src/stories/Text.stories.tsx +560 -0
- package/src/stories/TextInputField.stories.tsx +443 -443
- package/src/stories/ThemeSwitcher.stories.tsx +123 -123
- package/src/utils/htmlTransform.tsx +74 -53
- package/src/utils/reactUtils.tsx +57 -6
- package/dist/index.bundled.css +0 -12
- /package/src/{hooks/__tests__ → __tests__/hooks}/useDataBinding.test.tsx.disabled +0 -0
- /package/src/{schemas/__tests__ → __tests__/schemas}/builders.test.ts +0 -0
- /package/src/{utils/__tests__ → __tests__/utils}/createDataDrivenComponent.test.tsx.disabled +0 -0
- /package/src/{utils/__tests__ → __tests__/utils}/htmlTransform.test.tsx +0 -0
- /package/src/{utils/__tests__ → __tests__/utils}/optional-logging.test.ts +0 -0
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* SwitchInputField - Switch toggle component with
|
|
2
|
+
* SwitchInputField - Switch toggle component with serialization support
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Complete switch toggle functionality
|
|
6
|
+
* - Form validation and error handling
|
|
7
|
+
* - Data binding support for dynamic content
|
|
8
|
+
* - Full serialization support via ModelView
|
|
5
9
|
* - Consistent Material-UI styling
|
|
6
|
-
* - Data binding capabilities
|
|
7
|
-
* - Label and helper text support
|
|
8
|
-
* - Focus and error handling
|
|
9
10
|
*
|
|
10
11
|
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
11
12
|
*/
|
|
13
|
+
import React, { ReactElement } from 'react';
|
|
12
14
|
import type { WithDataBinding, ModelProps } from '@qwickapps/schema';
|
|
13
15
|
import SwitchInputFieldModel from '../../schemas/SwitchInputFieldSchema';
|
|
16
|
+
import { ModelView } from '../base/ModelView';
|
|
14
17
|
type SwitchInputFieldViewProps = ModelProps<SwitchInputFieldModel> & {
|
|
15
18
|
/** Change handler */
|
|
16
19
|
onChange?: (checked: boolean) => void;
|
|
@@ -19,10 +22,13 @@ type SwitchInputFieldViewProps = ModelProps<SwitchInputFieldModel> & {
|
|
|
19
22
|
};
|
|
20
23
|
export interface SwitchInputFieldProps extends SwitchInputFieldViewProps, WithDataBinding {
|
|
21
24
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
export declare class SwitchInputField extends ModelView<SwitchInputFieldProps, SwitchInputFieldModel> {
|
|
26
|
+
static readonly tagName = "SwitchInputField";
|
|
27
|
+
static readonly version = "1.0.0";
|
|
28
|
+
static fromJson(jsonData: any): ReactElement;
|
|
29
|
+
protected getComponentSpecificProps(): any;
|
|
30
|
+
protected renderView(): React.ReactElement;
|
|
31
|
+
protected renderWithDataBinding(): React.ReactElement;
|
|
32
|
+
}
|
|
27
33
|
export default SwitchInputField;
|
|
28
34
|
//# sourceMappingURL=SwitchInputField.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwitchInputField.d.ts","sourceRoot":"","sources":["../../../src/components/input/SwitchInputField.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"SwitchInputField.d.ts","sourceRoot":"","sources":["../../../src/components/input/SwitchInputField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAS5C,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,qBAAqB,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,KAAK,yBAAyB,GAAG,UAAU,CAAC,qBAAqB,CAAC,GAAG;IACnE,qBAAqB;IACrB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,qBAAsB,SAAQ,yBAAyB,EAAE,eAAe;CAAG;AA4D5F,qBAAa,gBAAiB,SAAQ,SAAS,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAE3F,MAAM,CAAC,QAAQ,CAAC,OAAO,sBAAsB;IAC7C,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAGlC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY;IAK5C,SAAS,CAAC,yBAAyB,IAAI,GAAG;IAe1C,SAAS,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;IAM1C,SAAS,CAAC,qBAAqB,IAAI,KAAK,CAAC,YAAY;CAGtD;AAkED,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/components/input/TextField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAA6B,cAAc,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAgB,aAAa,EAAsB,MAAM,0BAA0B,CAAC;AAE3F,MAAM,WAAW,cAAe,SAAQ,aAAa,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,WAAW,GAAG,OAAO,CAAC,CAAC;CAE3G;AAED,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/components/input/TextField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAA6B,cAAc,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAgB,aAAa,EAAsB,MAAM,0BAA0B,CAAC;AAE3F,MAAM,WAAW,cAAe,SAAQ,aAAa,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,WAAW,GAAG,OAAO,CAAC,CAAC;CAE3G;AAED,eAAO,MAAM,SAAS,oGA+DpB,CAAC;AAIH,eAAe,SAAS,CAAC"}
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* TextInputField - Reusable text input component with
|
|
2
|
+
* TextInputField - Reusable text input component with serialization support
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Complete text field functionality (single/multiline, input types)
|
|
6
|
+
* - Form validation and error handling
|
|
7
|
+
* - Data binding support for dynamic content
|
|
8
|
+
* - Full serialization support via ModelView
|
|
5
9
|
* - Consistent Material-UI styling
|
|
6
|
-
* - Data binding support
|
|
7
|
-
* - Focus handling
|
|
8
|
-
* - Validation and error states
|
|
9
|
-
* - Support for multiline/textarea mode
|
|
10
10
|
*
|
|
11
11
|
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
12
12
|
*/
|
|
13
|
+
import React, { ReactElement } from 'react';
|
|
13
14
|
import { TextFieldProps } from '@mui/material';
|
|
14
15
|
import type { WithDataBinding, ModelProps } from '@qwickapps/schema';
|
|
15
16
|
import TextInputFieldModel from '../../schemas/TextInputFieldSchema';
|
|
17
|
+
import { ModelView } from '../base/ModelView';
|
|
16
18
|
type TextInputFieldViewProps = ModelProps<TextInputFieldModel> & {
|
|
17
19
|
/** Change handler */
|
|
18
20
|
onChange?: (value: string) => void;
|
|
@@ -23,10 +25,13 @@ type TextInputFieldViewProps = ModelProps<TextInputFieldModel> & {
|
|
|
23
25
|
};
|
|
24
26
|
export interface TextInputFieldProps extends TextInputFieldViewProps, WithDataBinding {
|
|
25
27
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
export declare class TextInputField extends ModelView<TextInputFieldProps, TextInputFieldModel> {
|
|
29
|
+
static readonly tagName = "TextInputField";
|
|
30
|
+
static readonly version = "1.0.0";
|
|
31
|
+
static fromJson(jsonData: any): ReactElement;
|
|
32
|
+
protected getComponentSpecificProps(): any;
|
|
33
|
+
protected renderView(): React.ReactElement;
|
|
34
|
+
protected renderWithDataBinding(): React.ReactElement;
|
|
35
|
+
}
|
|
31
36
|
export default TextInputField;
|
|
32
37
|
//# sourceMappingURL=TextInputField.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInputField.d.ts","sourceRoot":"","sources":["../../../src/components/input/TextInputField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"TextInputField.d.ts","sourceRoot":"","sources":["../../../src/components/input/TextInputField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAa,cAAc,EAAqB,MAAM,eAAe,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,mBAAmB,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,KAAK,uBAAuB,GAAG,UAAU,CAAC,mBAAmB,CAAC,GAAG;IAC/D,qBAAqB;IACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,iCAAiC;IACjC,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,YAAY,GAAG,aAAa,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;CAClM,CAAC;AAEF,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB,EAAE,eAAe;CAAG;AAkDxF,qBAAa,cAAe,SAAQ,SAAS,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAErF,MAAM,CAAC,QAAQ,CAAC,OAAO,oBAAoB;IAC3C,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAGlC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY;IAK5C,SAAS,CAAC,yBAAyB,IAAI,GAAG;IAmB1C,SAAS,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;IAM1C,SAAS,CAAC,qBAAqB,IAAI,KAAK,CAAC,YAAY;CAGtD;AA2DD,eAAe,cAAc,CAAC"}
|
|
@@ -1,16 +1,33 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* GridCell - Simple cell wrapper for GridLayout
|
|
2
|
+
* GridCell - Simple cell wrapper for GridLayout with serialization support
|
|
3
3
|
*
|
|
4
4
|
* A lightweight wrapper that applies grid props to any content
|
|
5
5
|
* Uses the base props pattern for consistency
|
|
6
|
+
* Full serialization support via ModelView including nested components
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* - Traditional: <GridCell span={6} background="primary">...</GridCell>
|
|
10
|
+
* - Data-driven: <GridCell dataSource="layout.cell" />
|
|
11
|
+
* - Serializable: ComponentTransformer.serialize(<GridCell ... />)
|
|
6
12
|
*
|
|
7
13
|
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
8
14
|
*/
|
|
9
|
-
import React from 'react';
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
15
|
+
import React, { ReactElement, ReactNode } from 'react';
|
|
16
|
+
import type { WithDataBinding, ModelProps } from '@qwickapps/schema';
|
|
17
|
+
import GridCellModel from '../../schemas/GridCellSchema';
|
|
18
|
+
import { ModelView } from '../base/ModelView';
|
|
19
|
+
type GridCellViewProps = ModelProps<GridCellModel>;
|
|
20
|
+
export interface GridCellProps extends GridCellViewProps, WithDataBinding {
|
|
21
|
+
}
|
|
22
|
+
export declare class GridCell extends ModelView<GridCellProps, GridCellModel> {
|
|
23
|
+
static readonly tagName = "GridCell";
|
|
24
|
+
static readonly version = "1.0.0";
|
|
25
|
+
static fromJson(jsonData: any): ReactElement;
|
|
26
|
+
protected getComponentSpecificProps(): any;
|
|
27
|
+
protected hasNestedComponents(children: ReactNode): boolean;
|
|
28
|
+
protected serializeChildren(children: ReactNode): any;
|
|
29
|
+
protected renderView(): React.ReactElement;
|
|
30
|
+
protected renderWithDataBinding(): React.ReactElement;
|
|
13
31
|
}
|
|
14
|
-
export declare const GridCell: React.FC<GridCellProps>;
|
|
15
32
|
export default GridCell;
|
|
16
33
|
//# sourceMappingURL=GridCell.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridCell.d.ts","sourceRoot":"","sources":["../../../src/components/layout/GridCell.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"GridCell.d.ts","sourceRoot":"","sources":["../../../src/components/layout/GridCell.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGrE,OAAO,aAAa,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,KAAK,iBAAiB,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;AAEnD,MAAM,WAAW,aAAc,SAAQ,iBAAiB,EAAE,eAAe;CAAG;AA8B5E,qBAAa,QAAS,SAAQ,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAEnE,MAAM,CAAC,QAAQ,CAAC,OAAO,cAAc;IACrC,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAGlC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY;IAK5C,SAAS,CAAC,yBAAyB,IAAI,GAAG;IAoB1C,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,SAAS,GAAG,OAAO;IAK3D,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,GAAG,GAAG;IAarD,SAAS,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;IAM1C,SAAS,CAAC,qBAAqB,IAAI,KAAK,CAAC,YAAY;CAGtD;AAwCD,eAAe,QAAQ,CAAC"}
|
|
@@ -1,38 +1,39 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* GridLayout - Flexible grid layout component
|
|
2
|
+
* GridLayout - Flexible grid layout component with serialization support
|
|
3
3
|
*
|
|
4
4
|
* Works with any component that has grid props (span, xs, sm, md, lg, xl)
|
|
5
5
|
* Automatically wraps components in Grid when grid props are detected
|
|
6
|
+
* Full serialization support via ModelView including nested components
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* - Traditional: <GridLayout columns={3} spacing="medium">...</GridLayout>
|
|
10
|
+
* - Data-driven: <GridLayout dataSource="layouts.main" />
|
|
11
|
+
* - Serializable: ComponentTransformer.serialize(<GridLayout ... />)
|
|
6
12
|
*
|
|
7
13
|
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
8
14
|
*/
|
|
9
|
-
import React from 'react';
|
|
15
|
+
import React, { ReactElement, ReactNode } from 'react';
|
|
10
16
|
import { SxProps, Theme } from '@mui/material';
|
|
11
|
-
import {
|
|
12
|
-
import
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
children: React.ReactNode;
|
|
16
|
-
/** Number of equal-width columns (auto-distribution) */
|
|
17
|
-
columns?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
18
|
-
/** Spacing between columns */
|
|
19
|
-
spacing?: SpacingValue;
|
|
20
|
-
/** Equal height columns */
|
|
21
|
-
equalHeight?: boolean;
|
|
22
|
-
/** Layout dimensions */
|
|
23
|
-
height?: DimensionValue;
|
|
24
|
-
width?: DimensionValue;
|
|
25
|
-
minHeight?: DimensionValue;
|
|
26
|
-
minWidth?: DimensionValue;
|
|
27
|
-
maxHeight?: DimensionValue;
|
|
28
|
-
maxWidth?: DimensionValue;
|
|
29
|
-
/** Additional CSS class */
|
|
30
|
-
className?: string;
|
|
17
|
+
import type { WithDataBinding, ModelProps } from '@qwickapps/schema';
|
|
18
|
+
import GridLayoutModel from '../../schemas/GridLayoutSchema';
|
|
19
|
+
import { ModelView } from '../base/ModelView';
|
|
20
|
+
type GridLayoutViewProps = ModelProps<GridLayoutModel> & {
|
|
31
21
|
/** Custom styles */
|
|
32
22
|
sx?: SxProps<Theme>;
|
|
33
23
|
/** Inline styles */
|
|
34
24
|
style?: React.CSSProperties;
|
|
25
|
+
};
|
|
26
|
+
export interface GridLayoutProps extends GridLayoutViewProps, WithDataBinding {
|
|
27
|
+
}
|
|
28
|
+
export declare class GridLayout extends ModelView<GridLayoutProps, GridLayoutModel> {
|
|
29
|
+
static readonly tagName = "GridLayout";
|
|
30
|
+
static readonly version = "1.0.0";
|
|
31
|
+
static fromJson(jsonData: any): ReactElement;
|
|
32
|
+
protected getComponentSpecificProps(): any;
|
|
33
|
+
protected hasNestedComponents(children: ReactNode): boolean;
|
|
34
|
+
protected serializeChildren(children: ReactNode): any;
|
|
35
|
+
protected renderView(): React.ReactElement;
|
|
36
|
+
protected renderWithDataBinding(): React.ReactElement;
|
|
35
37
|
}
|
|
36
|
-
export declare const GridLayout: React.FC<GridLayoutProps>;
|
|
37
38
|
export default GridLayout;
|
|
38
39
|
//# sourceMappingURL=GridLayout.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridLayout.d.ts","sourceRoot":"","sources":["../../../src/components/layout/GridLayout.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"GridLayout.d.ts","sourceRoot":"","sources":["../../../src/components/layout/GridLayout.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAQ,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAKrE,OAAO,eAAe,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,KAAK,mBAAmB,GAAG,UAAU,CAAC,eAAe,CAAC,GAAG;IACvD,oBAAoB;IACpB,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,oBAAoB;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,eAAgB,SAAQ,mBAAmB,EAAE,eAAe;CAAG;AAyIhF,qBAAa,UAAW,SAAQ,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAEzE,MAAM,CAAC,QAAQ,CAAC,OAAO,gBAAgB;IACvC,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAGlC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY;IAK5C,SAAS,CAAC,yBAAyB,IAAI,GAAG;IAkB1C,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,SAAS,GAAG,OAAO;IAK3D,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,GAAG,GAAG;IAarD,SAAS,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;IAM1C,SAAS,CAAC,qBAAqB,IAAI,KAAK,CAAC,YAAY;CAGtD;AA2CD,eAAe,UAAU,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormPage.d.ts","sourceRoot":"","sources":["../../../src/components/pages/FormPage.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAEtC;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IAEtB;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAElD;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAE9B;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;IAE9C;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"FormPage.d.ts","sourceRoot":"","sources":["../../../src/components/pages/FormPage.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAEtC;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IAEtB;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAElD;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAE9B;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;IAE9C;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA2B5C,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -1,55 +1,35 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Page
|
|
3
|
-
*
|
|
4
|
-
* The Page component is what developers primarily focus on when building applications.
|
|
5
|
-
* It provides:
|
|
6
|
-
* - Automatic page title management
|
|
7
|
-
* - Route-based configuration
|
|
8
|
-
* - Contextual menu items that appear in navigation
|
|
9
|
-
* - Proper content spacing and layout
|
|
10
|
-
* - SEO and accessibility features
|
|
11
|
-
*
|
|
12
|
-
* Page components automatically integrate with the AppScaffold to provide
|
|
13
|
-
* contextual actions and menu items specific to the current page.
|
|
2
|
+
* Page Architecture - Clean separation with functional controller
|
|
14
3
|
*
|
|
15
4
|
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
16
5
|
*/
|
|
17
6
|
import React from 'react';
|
|
7
|
+
import { WithBaseProps } from '../../hooks/useBaseProps';
|
|
8
|
+
import { PageTemplateSchema } from '../../schemas/PageTemplateSchema';
|
|
9
|
+
import { PrintConfigSchema } from '../../schemas/PrintConfigSchema';
|
|
18
10
|
import './Page.css';
|
|
19
11
|
export interface PageContextValue {
|
|
20
12
|
/** Current page route/path */
|
|
21
13
|
route?: string;
|
|
14
|
+
/** Whether the page is currently in print mode */
|
|
15
|
+
isPrintMode: boolean;
|
|
16
|
+
/** Current print configuration */
|
|
17
|
+
printConfig: PrintConfigSchema;
|
|
18
|
+
/** Trigger print mode and dialog */
|
|
19
|
+
triggerPrint: (config?: Partial<PrintConfigSchema>) => void;
|
|
20
|
+
/** Set page loading state */
|
|
21
|
+
setLoading: (loading: boolean) => void;
|
|
22
|
+
/** Set page error state */
|
|
23
|
+
setError: (error: string | null) => void;
|
|
24
|
+
/** Current page loading state */
|
|
25
|
+
isLoading: boolean;
|
|
26
|
+
/** Current page error state */
|
|
27
|
+
error: string | null;
|
|
22
28
|
}
|
|
23
29
|
export declare const usePageContext: () => PageContextValue;
|
|
24
|
-
export
|
|
25
|
-
export type LoadingType = 'spinner' | 'bar-top' | 'bar-bottom' | 'dots' | 'custom';
|
|
26
|
-
export interface MessageState {
|
|
27
|
-
/** Type of message to display */
|
|
28
|
-
type: MessageType;
|
|
29
|
-
/** Message content (string or custom JSX) */
|
|
30
|
-
content?: string | React.ReactNode;
|
|
31
|
-
/** Custom component to render instead of default */
|
|
32
|
-
customComponent?: React.ReactNode;
|
|
33
|
-
}
|
|
34
|
-
export interface LoadingState {
|
|
35
|
-
/** Type of loading indicator */
|
|
36
|
-
type?: LoadingType;
|
|
37
|
-
/** Loading message */
|
|
38
|
-
message?: string;
|
|
39
|
-
/** Custom loading component */
|
|
40
|
-
customComponent?: React.ReactNode;
|
|
41
|
-
}
|
|
42
|
-
export interface PageProps {
|
|
43
|
-
/** Page content */
|
|
44
|
-
children: React.ReactNode;
|
|
30
|
+
export interface PageProps extends WithBaseProps {
|
|
45
31
|
/** Current route/path for this page */
|
|
46
32
|
route?: string;
|
|
47
|
-
/** Optional header component */
|
|
48
|
-
header?: React.ReactNode;
|
|
49
|
-
/** Optional footer component */
|
|
50
|
-
footer?: React.ReactNode;
|
|
51
|
-
/** Additional CSS class */
|
|
52
|
-
className?: string;
|
|
53
33
|
/** Page layout variant */
|
|
54
34
|
variant?: 'default' | 'centered' | 'narrow' | 'wide' | 'fullwidth';
|
|
55
35
|
/** Padding around page content */
|
|
@@ -58,67 +38,49 @@ export interface PageProps {
|
|
|
58
38
|
background?: 'default' | 'surface' | 'alternate';
|
|
59
39
|
/** Maximum width for content */
|
|
60
40
|
maxWidth?: 'small' | 'medium' | 'large' | 'extra-large' | 'none';
|
|
61
|
-
/**
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
|
|
41
|
+
/** Print configuration for this page */
|
|
42
|
+
printConfig?: Partial<PrintConfigSchema>;
|
|
43
|
+
/** PageTemplate model instance */
|
|
44
|
+
template?: PageTemplateSchema;
|
|
45
|
+
/** Page title */
|
|
46
|
+
title?: string;
|
|
47
|
+
/** Page description for SEO */
|
|
48
|
+
description?: string;
|
|
49
|
+
/** Page name/heading */
|
|
50
|
+
name?: string;
|
|
51
|
+
/** Page slug for URL */
|
|
52
|
+
slug?: string;
|
|
65
53
|
}
|
|
66
|
-
declare const Page: React.FC<PageProps>;
|
|
67
|
-
export declare const usePage: () => {
|
|
68
|
-
setTitle: (newTitle: string) => void;
|
|
69
|
-
/** Current page route/path */
|
|
70
|
-
route?: string;
|
|
71
|
-
};
|
|
72
54
|
/**
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
* Usage:
|
|
76
|
-
* class MyPage extends BasePage {
|
|
77
|
-
* getPageProps() {
|
|
78
|
-
* return {
|
|
79
|
-
* route: '/my-page',
|
|
80
|
-
* variant: 'narrow',
|
|
81
|
-
* padding: 'large',
|
|
82
|
-
* // ... other page props
|
|
83
|
-
* };
|
|
84
|
-
* }
|
|
85
|
-
*
|
|
86
|
-
* renderContent() {
|
|
87
|
-
* return (
|
|
88
|
-
* <div>My page content</div>
|
|
89
|
-
* );
|
|
90
|
-
* }
|
|
91
|
-
* }
|
|
55
|
+
* Page - Functional component that controls print/normal view routing
|
|
92
56
|
*/
|
|
93
|
-
|
|
57
|
+
interface PageWithViewsProps extends PageProps {
|
|
58
|
+
/** Function to render normal view */
|
|
59
|
+
renderView: () => React.ReactNode;
|
|
60
|
+
/** Function to render print view */
|
|
61
|
+
renderPrintView: () => React.ReactNode;
|
|
62
|
+
}
|
|
63
|
+
declare const Page: React.FC<PageWithViewsProps>;
|
|
64
|
+
/**
|
|
65
|
+
* PageComponent - Base class for pages that provide view functions
|
|
66
|
+
*/
|
|
67
|
+
export declare abstract class PageComponent<P = {}, S = {}> extends React.Component<P, S> {
|
|
94
68
|
/**
|
|
95
69
|
* Override this method to provide page configuration
|
|
96
|
-
* This will be passed to the Page component wrapper
|
|
97
70
|
*/
|
|
98
|
-
abstract getPageProps():
|
|
71
|
+
abstract getPageProps(): PageProps;
|
|
99
72
|
/**
|
|
100
|
-
* Override this method to provide the
|
|
101
|
-
* This replaces the render() method in your page components
|
|
73
|
+
* Override this method to provide the normal view content
|
|
102
74
|
*/
|
|
103
|
-
abstract
|
|
75
|
+
abstract renderView(): React.ReactNode;
|
|
104
76
|
/**
|
|
105
|
-
* Override this method to
|
|
106
|
-
* Called after the page is mounted and context is available
|
|
77
|
+
* Override this method to provide the print view content
|
|
107
78
|
*/
|
|
108
|
-
|
|
79
|
+
abstract renderPrintView(): React.ReactNode;
|
|
109
80
|
/**
|
|
110
|
-
*
|
|
111
|
-
*/
|
|
112
|
-
onPageUnmount?(): void;
|
|
113
|
-
/**
|
|
114
|
-
* Internal render method - wraps content in Page component
|
|
81
|
+
* Render method - uses functional Page as controller
|
|
115
82
|
*/
|
|
116
83
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
117
|
-
/**
|
|
118
|
-
* Component lifecycle methods
|
|
119
|
-
*/
|
|
120
|
-
componentDidMount(): void;
|
|
121
|
-
componentWillUnmount(): void;
|
|
122
84
|
}
|
|
123
85
|
export default Page;
|
|
124
86
|
//# sourceMappingURL=Page.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../src/components/pages/Page.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../src/components/pages/Page.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAgG,MAAM,OAAO,CAAC;AAErH,OAAO,EAAgB,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,YAAY,CAAC;AAEpB,MAAM,WAAW,gBAAgB;IAC/B,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,WAAW,EAAE,OAAO,CAAC;IACrB,kCAAkC;IAClC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,oCAAoC;IACpC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC5D,6BAA6B;IAC7B,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,2BAA2B;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACzC,iCAAiC;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAKD,eAAO,MAAM,cAAc,QAAO,gBAMjC,CAAC;AAEF,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0BAA0B;IAC1B,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACnE,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAChD,yBAAyB;IACzB,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IACjD,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,aAAa,GAAG,MAAM,CAAC;IACjE,wCAAwC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACzC,kCAAkC;IAClC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,iBAAiB;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wBAAwB;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAuQD;;GAEG;AACH,UAAU,kBAAmB,SAAQ,SAAS;IAC5C,qCAAqC;IACrC,UAAU,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IAClC,oCAAoC;IACpC,eAAe,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;CACxC;AAED,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAQtC,CAAC;AAWF;;GAEG;AACH,8BAAsB,aAAa,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAE,SAAQ,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/E;;OAEG;IACH,QAAQ,CAAC,YAAY,IAAI,SAAS;IAElC;;OAEG;IACH,QAAQ,CAAC,UAAU,IAAI,KAAK,CAAC,SAAS;IAEtC;;OAEG;IACH,QAAQ,CAAC,eAAe,IAAI,KAAK,CAAC,SAAS;IAE3C;;OAEG;IACH,MAAM;CAWP;AAED,eAAe,IAAI,CAAC"}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
5
5
|
*/
|
|
6
|
-
export {
|
|
6
|
+
export { PageComponent, usePageContext } from './Page';
|
|
7
7
|
export { default as FormPage } from './FormPage';
|
|
8
8
|
export { default as Page } from './Page';
|
|
9
9
|
export type { FormPageProps } from './FormPage';
|
|
10
|
-
export type { PageProps } from './Page';
|
|
10
|
+
export type { PageProps, PageContextValue } from './Page';
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/pages/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/pages/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEzC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QwickApps AppConfig Implementation
|
|
3
|
+
*
|
|
4
|
+
* Immutable configuration object with computed properties for Vite and PWA.
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
7
|
+
*/
|
|
8
|
+
import type { UserConfig as ViteUserConfig } from 'vite';
|
|
9
|
+
import type { AppConfig as IAppConfig, AppIdentity, BuildConfig, PWAConfig, UIConfig, CopyrightConfig } from './types';
|
|
10
|
+
/**
|
|
11
|
+
* Immutable application configuration
|
|
12
|
+
*/
|
|
13
|
+
export declare class AppConfig implements IAppConfig {
|
|
14
|
+
readonly app: AppIdentity;
|
|
15
|
+
readonly build: BuildConfig;
|
|
16
|
+
readonly pwa: PWAConfig;
|
|
17
|
+
readonly ui: UIConfig;
|
|
18
|
+
readonly copyright: CopyrightConfig;
|
|
19
|
+
constructor(config: {
|
|
20
|
+
app: AppIdentity;
|
|
21
|
+
build: BuildConfig;
|
|
22
|
+
pwa: PWAConfig;
|
|
23
|
+
ui: UIConfig;
|
|
24
|
+
copyright: CopyrightConfig;
|
|
25
|
+
});
|
|
26
|
+
/**
|
|
27
|
+
* Generate complete Vite configuration
|
|
28
|
+
*/
|
|
29
|
+
get viteConfig(): ViteUserConfig;
|
|
30
|
+
/**
|
|
31
|
+
* Generate PWA manifest
|
|
32
|
+
*/
|
|
33
|
+
get pwaManifest(): Record<string, any>;
|
|
34
|
+
/**
|
|
35
|
+
* Convert to plain object (for serialization)
|
|
36
|
+
*/
|
|
37
|
+
toJSON(): Record<string, any>;
|
|
38
|
+
/**
|
|
39
|
+
* Create a copy with overrides (returns new immutable instance)
|
|
40
|
+
*/
|
|
41
|
+
with(overrides: Partial<{
|
|
42
|
+
app: Partial<AppIdentity>;
|
|
43
|
+
build: Partial<BuildConfig>;
|
|
44
|
+
pwa: Partial<PWAConfig>;
|
|
45
|
+
ui: Partial<UIConfig>;
|
|
46
|
+
copyright: Partial<CopyrightConfig>;
|
|
47
|
+
}>): AppConfig;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=AppConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppConfig.d.ts","sourceRoot":"","sources":["../../src/config/AppConfig.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,MAAM,CAAC;AACzD,OAAO,KAAK,EACV,SAAS,IAAI,UAAU,EACvB,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,EACR,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,qBAAa,SAAU,YAAW,UAAU;IAC1C,SAAgB,GAAG,EAAE,WAAW,CAAC;IACjC,SAAgB,KAAK,EAAE,WAAW,CAAC;IACnC,SAAgB,GAAG,EAAE,SAAS,CAAC;IAC/B,SAAgB,EAAE,EAAE,QAAQ,CAAC;IAC7B,SAAgB,SAAS,EAAE,eAAe,CAAC;gBAE/B,MAAM,EAAE;QAClB,GAAG,EAAE,WAAW,CAAC;QACjB,KAAK,EAAE,WAAW,CAAC;QACnB,GAAG,EAAE,SAAS,CAAC;QACf,EAAE,EAAE,QAAQ,CAAC;QACb,SAAS,EAAE,eAAe,CAAC;KAC5B;IAYD;;OAEG;IACH,IAAI,UAAU,IAAI,cAAc,CAqB/B;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAwBrC;IAED;;OAEG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAU7B;;OAEG;IACH,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;QACtB,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1B,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC5B,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACxB,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtB,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;KACrC,CAAC,GAAG,SAAS;CASf"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QwickApps AppConfigBuilder
|
|
3
|
+
*
|
|
4
|
+
* Builder pattern for creating validated, immutable AppConfig instances.
|
|
5
|
+
* Supports fluent API and deferred validation.
|
|
6
|
+
*
|
|
7
|
+
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
8
|
+
*/
|
|
9
|
+
import { AppConfig } from './AppConfig';
|
|
10
|
+
import type { AppConfigOptions } from './types';
|
|
11
|
+
/**
|
|
12
|
+
* Builder for creating AppConfig instances with validation
|
|
13
|
+
*/
|
|
14
|
+
export declare class AppConfigBuilder {
|
|
15
|
+
private config;
|
|
16
|
+
private options;
|
|
17
|
+
private constructor();
|
|
18
|
+
/**
|
|
19
|
+
* Create a new AppConfigBuilder instance
|
|
20
|
+
*/
|
|
21
|
+
static create(): AppConfigBuilder;
|
|
22
|
+
/**
|
|
23
|
+
* Load configuration from JSON file (Node.js only)
|
|
24
|
+
*/
|
|
25
|
+
withConfig(configPath: string): AppConfigBuilder;
|
|
26
|
+
/**
|
|
27
|
+
* Set builder options
|
|
28
|
+
*/
|
|
29
|
+
withOptions(options: AppConfigOptions): AppConfigBuilder;
|
|
30
|
+
withName(name: string): AppConfigBuilder;
|
|
31
|
+
withId(id: string): AppConfigBuilder;
|
|
32
|
+
withShortName(shortName: string): AppConfigBuilder;
|
|
33
|
+
withDescription(description: string): AppConfigBuilder;
|
|
34
|
+
withVersion(version: string): AppConfigBuilder;
|
|
35
|
+
withLogo(logo: string): AppConfigBuilder;
|
|
36
|
+
withAuthor(author: string): AppConfigBuilder;
|
|
37
|
+
withHomepage(homepage: string): AppConfigBuilder;
|
|
38
|
+
withPort(port: number): AppConfigBuilder;
|
|
39
|
+
withPreviewPort(previewPort: number): AppConfigBuilder;
|
|
40
|
+
withOutputDir(outputDir: string): AppConfigBuilder;
|
|
41
|
+
withPublicPath(publicPath: string): AppConfigBuilder;
|
|
42
|
+
withBase(base: string): AppConfigBuilder;
|
|
43
|
+
withThemeColor(themeColor: string): AppConfigBuilder;
|
|
44
|
+
withBackgroundColor(backgroundColor: string): AppConfigBuilder;
|
|
45
|
+
withStartUrl(startUrl: string): AppConfigBuilder;
|
|
46
|
+
withScope(scope: string): AppConfigBuilder;
|
|
47
|
+
withDisplay(display: 'standalone' | 'fullscreen' | 'minimal-ui' | 'browser'): AppConfigBuilder;
|
|
48
|
+
withOrientation(orientation: 'portrait' | 'landscape' | 'any'): AppConfigBuilder;
|
|
49
|
+
withDefaultTheme(defaultTheme: 'light' | 'dark' | 'system'): AppConfigBuilder;
|
|
50
|
+
withDefaultPalette(defaultPalette: string): AppConfigBuilder;
|
|
51
|
+
withScaffolding(enableScaffolding: boolean): AppConfigBuilder;
|
|
52
|
+
withThemeSwitcher(showThemeSwitcher: boolean): AppConfigBuilder;
|
|
53
|
+
withPaletteSwitcher(showPaletteSwitcher: boolean): AppConfigBuilder;
|
|
54
|
+
withCopyright(year: 'auto' | number, author: string, text?: string): AppConfigBuilder;
|
|
55
|
+
withCopyrightYear(year: 'auto' | number): AppConfigBuilder;
|
|
56
|
+
withCopyrightAuthor(author: string): AppConfigBuilder;
|
|
57
|
+
withCopyrightText(text: string): AppConfigBuilder;
|
|
58
|
+
/**
|
|
59
|
+
* Build and validate the configuration
|
|
60
|
+
*/
|
|
61
|
+
build(): AppConfig;
|
|
62
|
+
/**
|
|
63
|
+
* Validate the current configuration
|
|
64
|
+
*/
|
|
65
|
+
private validate;
|
|
66
|
+
/**
|
|
67
|
+
* Apply default values to configuration
|
|
68
|
+
*/
|
|
69
|
+
private applyDefaults;
|
|
70
|
+
/**
|
|
71
|
+
* Simple color validation
|
|
72
|
+
*/
|
|
73
|
+
private isValidColor;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=AppConfigBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppConfigBuilder.d.ts","sourceRoot":"","sources":["../../src/config/AppConfigBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAeH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAMV,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CA4CZ;IAEF,OAAO,CAAC,OAAO,CAAwB;IAEvC,OAAO;IAEP;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,gBAAgB;IAIjC;;OAEG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB;IA0BhD;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB;IAMxD,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAKxC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB;IAKpC,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB;IAKlD,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB;IAKtD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB;IAK9C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAKxC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAK5C,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB;IAMhD,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAKxC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB;IAKtD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB;IAKlD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB;IAKpD,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAMxC,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB;IAKpD,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,gBAAgB;IAK9D,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB;IAKhD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB;IAK1C,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,gBAAgB;IAK9F,eAAe,CAAC,WAAW,EAAE,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,gBAAgB;IAMhF,gBAAgB,CAAC,YAAY,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,gBAAgB;IAK7E,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,gBAAgB;IAK5D,eAAe,CAAC,iBAAiB,EAAE,OAAO,GAAG,gBAAgB;IAK7D,iBAAiB,CAAC,iBAAiB,EAAE,OAAO,GAAG,gBAAgB;IAK/D,mBAAmB,CAAC,mBAAmB,EAAE,OAAO,GAAG,gBAAgB;IAMnE,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,gBAAgB;IAOrF,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB;IAK1D,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAKrD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAKjD;;OAEG;IACH,KAAK,IAAI,SAAS;IAkBlB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAoDhB;;OAEG;IACH,OAAO,CAAC,aAAa;IAoDrB;;OAEG;IACH,OAAO,CAAC,YAAY;CAQrB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QwickApps Configuration Module
|
|
3
|
+
*
|
|
4
|
+
* Exports configuration types and utilities for QwickApp applications.
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2025 QwickApps.com. All rights reserved.
|
|
7
|
+
*/
|
|
8
|
+
export { AppConfig } from './AppConfig';
|
|
9
|
+
export { AppConfigBuilder } from './AppConfigBuilder';
|
|
10
|
+
export type { AppConfig as IAppConfig, AppIdentity, BuildConfig, PWAConfig, UIConfig, CopyrightConfig, AppConfigOptions, ValidationResult, } from './types';
|
|
11
|
+
import { AppConfigBuilder } from './AppConfigBuilder';
|
|
12
|
+
export declare const createAppConfig: typeof AppConfigBuilder.create;
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,SAAS,IAAI,UAAU,EACvB,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,eAAO,MAAM,eAAe,gCAA0B,CAAC"}
|