@wix/auto-patterns 1.44.0 → 1.45.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/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.uni.driver.js +3 -0
- package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.uni.driver.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +3 -3
- package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/EditModeEntityPage.js +26 -14
- package/dist/cjs/components/AutoPatternsEntityPage/EditModeEntityPage.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/ViewModeEntityPage.js +38 -29
- package/dist/cjs/components/AutoPatternsEntityPage/ViewModeEntityPage.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/index.js +0 -6
- package/dist/cjs/components/AutoPatternsEntityPage/index.js.map +1 -1
- package/dist/cjs/components/AutoPatternsRoute/AutoPatternsPage.js +67 -12
- package/dist/cjs/components/AutoPatternsRoute/AutoPatternsPage.js.map +1 -1
- package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js +8 -7
- package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -1
- package/dist/cjs/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.js +165 -0
- package/dist/cjs/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.js.map +1 -0
- package/dist/cjs/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js +15 -0
- package/dist/cjs/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js.map +1 -0
- package/dist/cjs/components/AutoPatternsSettingsPage/index.js +10 -0
- package/dist/cjs/components/AutoPatternsSettingsPage/index.js.map +1 -0
- package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js +2 -3
- package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
- package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/Checkbox.js +1 -1
- package/dist/cjs/components/fields/Checkbox.js.map +1 -0
- package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/DateInput.js +9 -8
- package/dist/cjs/components/fields/DateInput.js.map +1 -0
- package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/DateTime.js +13 -12
- package/dist/cjs/components/fields/DateTime.js.map +1 -0
- package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/ImageInput.js +11 -10
- package/dist/cjs/components/fields/ImageInput.js.map +1 -0
- package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/LongText.js +9 -8
- package/dist/cjs/components/fields/LongText.js.map +1 -0
- package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/Number.js +9 -8
- package/dist/cjs/components/fields/Number.js.map +1 -0
- package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/ShortText.js +9 -8
- package/dist/cjs/components/fields/ShortText.js.map +1 -0
- package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/Url.js +11 -10
- package/dist/cjs/components/fields/Url.js.map +1 -0
- package/dist/cjs/components/fields/index.js +38 -0
- package/dist/cjs/components/fields/index.js.map +1 -0
- package/dist/cjs/components/fields/types.js.map +1 -0
- package/dist/cjs/components/fields/utils/dates.js.map +1 -0
- package/dist/cjs/components/{AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.js → layouts/ContentCard.js} +26 -15
- package/dist/cjs/components/layouts/ContentCard.js.map +1 -0
- package/dist/cjs/components/layouts/ContentCardLayout.js +157 -0
- package/dist/cjs/components/layouts/ContentCardLayout.js.map +1 -0
- package/dist/cjs/components/layouts/ContentSkeleton.js +98 -0
- package/dist/cjs/components/layouts/ContentSkeleton.js.map +1 -0
- package/dist/cjs/components/layouts/FormField.js +52 -0
- package/dist/cjs/components/layouts/FormField.js.map +1 -0
- package/dist/cjs/components/layouts/ViewField.js +68 -0
- package/dist/cjs/components/layouts/ViewField.js.map +1 -0
- package/dist/cjs/components/layouts/types.js +4 -0
- package/dist/cjs/components/layouts/types.js.map +1 -0
- package/dist/cjs/hooks/useBaseTableFeatures.js +2 -1
- package/dist/cjs/hooks/useBaseTableFeatures.js.map +1 -1
- package/dist/cjs/hooks/usePagePath.js +4 -1
- package/dist/cjs/hooks/usePagePath.js.map +1 -1
- package/dist/cjs/hooks/useSettingsPageMoreActions.js +36 -0
- package/dist/cjs/hooks/useSettingsPageMoreActions.js.map +1 -0
- package/dist/cjs/providers/AutoPatternsOverridesContext.js +1 -1
- package/dist/cjs/providers/AutoPatternsOverridesContext.js.map +1 -1
- package/dist/cjs/types/SettingsPageConfig.js +4 -0
- package/dist/cjs/types/SettingsPageConfig.js.map +1 -0
- package/dist/cjs/types/actions/base.js.map +1 -1
- package/dist/cjs/types/actions/entityPageActions.js.map +1 -1
- package/dist/cjs/types/actions/formPageActions.js +4 -0
- package/dist/cjs/types/actions/formPageActions.js.map +1 -0
- package/dist/cjs/types/actions/index.js +6 -0
- package/dist/cjs/types/actions/index.js.map +1 -1
- package/dist/cjs/types/index.js +6 -0
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/types.js.map +1 -1
- package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.uni.driver.js +4 -1
- package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.uni.driver.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +3 -3
- package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/EditModeEntityPage.js +21 -8
- package/dist/esm/components/AutoPatternsEntityPage/EditModeEntityPage.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/ViewModeEntityPage.js +21 -12
- package/dist/esm/components/AutoPatternsEntityPage/ViewModeEntityPage.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/index.js +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/index.js.map +1 -1
- package/dist/esm/components/AutoPatternsRoute/AutoPatternsPage.js +31 -6
- package/dist/esm/components/AutoPatternsRoute/AutoPatternsPage.js.map +1 -1
- package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js +2 -1
- package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -1
- package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.js +108 -0
- package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.js.map +1 -0
- package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js +10 -0
- package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js.map +1 -0
- package/dist/esm/components/AutoPatternsSettingsPage/index.js +2 -0
- package/dist/esm/components/AutoPatternsSettingsPage/index.js.map +1 -0
- package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js +0 -1
- package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
- package/dist/esm/components/fields/Checkbox.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/DateInput.js +7 -6
- package/dist/esm/components/fields/DateInput.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/DateTime.js +7 -6
- package/dist/esm/components/fields/DateTime.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/ImageInput.js +9 -8
- package/dist/esm/components/fields/ImageInput.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/LongText.js +7 -6
- package/dist/esm/components/fields/LongText.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/Number.js +7 -6
- package/dist/esm/components/fields/Number.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/ShortText.js +7 -6
- package/dist/esm/components/fields/ShortText.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/Url.js +7 -6
- package/dist/esm/components/fields/Url.js.map +1 -0
- package/dist/esm/components/fields/index.js +10 -0
- package/dist/esm/components/fields/index.js.map +1 -0
- package/dist/esm/components/fields/types.js.map +1 -0
- package/dist/esm/components/fields/utils/dates.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.js → layouts/ContentCard.js} +19 -8
- package/dist/esm/components/layouts/ContentCard.js.map +1 -0
- package/dist/esm/components/{AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.js → layouts/ContentCardLayout.js} +38 -19
- package/dist/esm/components/layouts/ContentCardLayout.js.map +1 -0
- package/dist/esm/components/layouts/ContentSkeleton.js +47 -0
- package/dist/esm/components/layouts/ContentSkeleton.js.map +1 -0
- package/dist/esm/components/layouts/FormField.js +40 -0
- package/dist/esm/components/layouts/FormField.js.map +1 -0
- package/dist/esm/components/layouts/ViewField.js +43 -0
- package/dist/esm/components/layouts/ViewField.js.map +1 -0
- package/dist/esm/components/layouts/types.js +2 -0
- package/dist/esm/components/layouts/types.js.map +1 -0
- package/dist/esm/hooks/useBaseTableFeatures.js +1 -0
- package/dist/esm/hooks/useBaseTableFeatures.js.map +1 -1
- package/dist/esm/hooks/usePagePath.js +4 -1
- package/dist/esm/hooks/usePagePath.js.map +1 -1
- package/dist/esm/hooks/useSettingsPageMoreActions.js +32 -0
- package/dist/esm/hooks/useSettingsPageMoreActions.js.map +1 -0
- package/dist/esm/providers/AutoPatternsOverridesContext.js.map +1 -1
- package/dist/esm/types/SettingsPageConfig.js +2 -0
- package/dist/esm/types/SettingsPageConfig.js.map +1 -0
- package/dist/esm/types/actions/base.js.map +1 -1
- package/dist/esm/types/actions/entityPageActions.js.map +1 -1
- package/dist/esm/types/actions/formPageActions.js +2 -0
- package/dist/esm/types/actions/formPageActions.js.map +1 -0
- package/dist/esm/types/actions/index.js +1 -0
- package/dist/esm/types/actions/index.js.map +1 -1
- package/dist/esm/types/index.js +1 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/types.js.map +1 -1
- package/dist/types/components/AutoPatternsApp/AutoPatternsApp.uni.driver.d.ts +4 -1
- package/dist/types/components/AutoPatternsApp/AutoPatternsApp.uni.driver.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/EditModeEntityPage.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/ViewModeEntityPage.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/index.d.ts +0 -1
- package/dist/types/components/AutoPatternsEntityPage/index.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsRoute/AutoPatternsPage.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsRoute/AutoPatternsRoutes.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.d.ts +6 -0
- package/dist/types/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.d.ts.map +1 -0
- package/dist/types/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.d.ts +145 -0
- package/dist/types/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.d.ts.map +1 -0
- package/dist/types/components/AutoPatternsSettingsPage/index.d.ts +2 -0
- package/dist/types/components/AutoPatternsSettingsPage/index.d.ts.map +1 -0
- package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts.map +1 -1
- package/dist/types/components/fields/Checkbox.d.ts.map +1 -0
- package/dist/types/components/fields/DateInput.d.ts.map +1 -0
- package/dist/types/components/fields/DateTime.d.ts.map +1 -0
- package/dist/types/components/fields/ImageInput.d.ts.map +1 -0
- package/dist/types/components/fields/LongText.d.ts.map +1 -0
- package/dist/types/components/fields/Number.d.ts.map +1 -0
- package/dist/types/components/fields/ShortText.d.ts.map +1 -0
- package/dist/types/components/fields/Url.d.ts.map +1 -0
- package/dist/types/components/fields/index.d.ts +10 -0
- package/dist/types/components/fields/index.d.ts.map +1 -0
- package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/types.d.ts +4 -1
- package/dist/types/components/fields/types.d.ts.map +1 -0
- package/dist/types/components/fields/utils/dates.d.ts.map +1 -0
- package/dist/types/components/layouts/ContentCard.d.ts +17 -0
- package/dist/types/components/layouts/ContentCard.d.ts.map +1 -0
- package/dist/types/components/layouts/ContentCardLayout.d.ts +18 -0
- package/dist/types/components/layouts/ContentCardLayout.d.ts.map +1 -0
- package/dist/types/components/layouts/ContentSkeleton.d.ts +9 -0
- package/dist/types/components/layouts/ContentSkeleton.d.ts.map +1 -0
- package/dist/types/components/layouts/FormField.d.ts +13 -0
- package/dist/types/components/layouts/FormField.d.ts.map +1 -0
- package/dist/types/components/layouts/ViewField.d.ts +8 -0
- package/dist/types/components/layouts/ViewField.d.ts.map +1 -0
- package/dist/types/components/layouts/types.d.ts +3 -0
- package/dist/types/components/layouts/types.d.ts.map +1 -0
- package/dist/types/hooks/useBaseTableFeatures.d.ts +2 -0
- package/dist/types/hooks/useBaseTableFeatures.d.ts.map +1 -1
- package/dist/types/hooks/usePagePath.d.ts.map +1 -1
- package/dist/types/hooks/useSettingsPageMoreActions.d.ts +5 -0
- package/dist/types/hooks/useSettingsPageMoreActions.d.ts.map +1 -0
- package/dist/types/providers/AutoPatternsOverridesContext.d.ts +2 -2
- package/dist/types/providers/AutoPatternsOverridesContext.d.ts.map +1 -1
- package/dist/types/testkit/enzyme.d.ts +1 -0
- package/dist/types/testkit/enzyme.d.ts.map +1 -1
- package/dist/types/testkit/jsdom.d.ts +1 -0
- package/dist/types/testkit/jsdom.d.ts.map +1 -1
- package/dist/types/testkit/playwright.d.ts +1 -0
- package/dist/types/testkit/playwright.d.ts.map +1 -1
- package/dist/types/testkit/puppeteer.d.ts +1 -0
- package/dist/types/testkit/puppeteer.d.ts.map +1 -1
- package/dist/types/types/SettingsPageConfig.d.ts +140 -0
- package/dist/types/types/SettingsPageConfig.d.ts.map +1 -0
- package/dist/types/types/actions/base.d.ts +1 -0
- package/dist/types/types/actions/base.d.ts.map +1 -1
- package/dist/types/types/actions/entityPageActions.d.ts +2 -7
- package/dist/types/types/actions/entityPageActions.d.ts.map +1 -1
- package/dist/types/types/actions/formPageActions.d.ts +8 -0
- package/dist/types/types/actions/formPageActions.d.ts.map +1 -0
- package/dist/types/types/actions/index.d.ts +1 -0
- package/dist/types/types/actions/index.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +1 -0
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/types/types.d.ts +20 -1
- package/dist/types/types/types.d.ts.map +1 -1
- package/docs/GETTING_STARTED.md +73 -18
- package/mcp-docs/app_config_structure.md +66 -3
- package/mcp-docs/auto-patterns-guide.md +86 -6
- package/mcp-docs/index.md +4 -0
- package/mcp-docs/pages_configuration.md +20 -3
- package/mcp-docs/settings_page.md +599 -0
- package/package.json +3 -3
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/Checkbox.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateInput.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateTime.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +0 -59
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/types.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/utils/dates.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.js +0 -119
- package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.js +0 -79
- package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/index.js +0 -16
- package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/index.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/SkeletonEntity.js +0 -198
- package/dist/cjs/components/AutoPatternsEntityPage/SkeletonEntity.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.js +0 -77
- package/dist/cjs/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.js.map +0 -1
- package/dist/cjs/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.js +0 -109
- package/dist/cjs/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/Checkbox.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/DateInput.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/DateTime.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +0 -46
- package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/LongText.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/Number.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/ShortText.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/Url.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/types.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/utils/dates.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.js +0 -48
- package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/index.js +0 -3
- package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/index.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/SkeletonEntity.js +0 -91
- package/dist/esm/components/AutoPatternsEntityPage/SkeletonEntity.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.js +0 -31
- package/dist/esm/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.js.map +0 -1
- package/dist/esm/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.js +0 -66
- package/dist/esm/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.js.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/Checkbox.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/DateInput.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/DateTime.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts +0 -10
- package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/ImageInput.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/LongText.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/Number.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/ShortText.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/Url.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/types.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/utils/dates.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.d.ts +0 -11
- package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.d.ts +0 -13
- package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.d.ts +0 -8
- package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/RenderLayout/index.d.ts +0 -3
- package/dist/types/components/AutoPatternsEntityPage/RenderLayout/index.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/SkeletonEntity.d.ts +0 -7
- package/dist/types/components/AutoPatternsEntityPage/SkeletonEntity.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.d.ts +0 -8
- package/dist/types/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.d.ts.map +0 -1
- package/dist/types/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.d.ts +0 -8
- package/dist/types/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.d.ts.map +0 -1
- /package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/types.js +0 -0
- /package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/utils/dates.js +0 -0
- /package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/Checkbox.js +0 -0
- /package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/types.js +0 -0
- /package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/utils/dates.js +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/Checkbox.d.ts +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/DateInput.d.ts +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/DateTime.d.ts +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/ImageInput.d.ts +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/LongText.d.ts +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/Number.d.ts +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/ShortText.d.ts +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/Url.d.ts +0 -0
- /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/utils/dates.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","useEffect","Page","Heading","Box","Layout","Cell","Badge","useParams","RenderViewLayoutCard","useSchema","useNavigation","MoreActions","useEntityPageActions","useEntityPageMoreActions","useActionsSDK","useNavigateEditEntityAction","useEntityPageHeaderTexts","SkeletonEntity","ViewModeEntityPage","_ref","_pageLayout$main","_pageLayout$sidebar","configuration","route","params","entityId","id","schema","layout","pageLayout","navigateToCollectionPage","entity","setEntity","undefined","isMounted","fetchEntity","fetchedEntity","actions","get","title","subtitle","config","isCreateMode","isViewMode","entityDisplayName","displayField","sdk","collectionId","entityPageActions","moreActions","displayName","resolvedMoreActions","renderTitle","text","badges","createElement","gap","verticalAlign","alignContent","size","length","map","badge","index","_extends","key","dataHook","entityPage","Header","showBackButton","onBackClicked","parentPageId","actionsBar","items","Content","span","sidebar","direction","main","layoutIndex","sectionId","cardIndex"],"sources":["../../../../src/components/AutoPatternsEntityPage/ViewModeEntityPage.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport { Page, Heading, Box, Layout, Cell, Badge } from '@wix/design-system';\nimport { useParams } from 'react-router-dom';\nimport { RenderViewLayoutCard } from './ViewEntityPage/RenderViewLayoutCard';\nimport { useSchema } from '../../providers/SchemaContext';\nimport { useNavigation } from '../../hooks';\nimport { MoreActions } from '@wix/patterns';\nimport { useEntityPageActions } from '../../hooks/useEntityPageActions';\nimport { useEntityPageMoreActions } from '../../hooks/useEntityPageMoreActions';\nimport { useActionsSDK } from '../../hooks/useActionsSDK';\nimport { useNavigateEditEntityAction } from '../../hooks/useNavigateEditEntityAction';\nimport { useEntityPageHeaderTexts } from '../../hooks/useEntityPageHeaderTexts';\nimport { ViewEntityPageConfig } from '../../types';\nimport { SkeletonEntity } from './SkeletonEntity';\n\ninterface ViewModeEntityPageProps {\n configuration: ViewEntityPageConfig;\n}\n\n// TODO: temp solution until we have a proper view mode entity page\nexport const ViewModeEntityPage: React.FC<ViewModeEntityPageProps> = ({\n configuration,\n}) => {\n const { route } = configuration;\n const params = useParams();\n const entityId = params[route.params.id];\n const schema = useSchema();\n const { layout: pageLayout } = configuration;\n const { navigateToCollectionPage } = useNavigation();\n\n const [entity, setEntity] = useState<any>(undefined);\n\n useEffect(() => {\n let isMounted = true;\n const fetchEntity = async () => {\n if (!entityId) {\n setEntity(undefined);\n return;\n }\n const fetchedEntity = await schema.actions.get(entityId);\n if (isMounted) {\n setEntity(fetchedEntity);\n }\n };\n fetchEntity();\n return () => {\n isMounted = false;\n };\n }, [entityId, schema]);\n\n const { title, subtitle } = useEntityPageHeaderTexts({\n config: configuration,\n isCreateMode: false,\n isViewMode: true,\n entityDisplayName: entity?.[schema.displayField],\n entity,\n });\n\n const sdk = useActionsSDK({\n collectionId: configuration.collectionId,\n });\n\n const actions = useEntityPageActions({\n entityPageActions: configuration.actions,\n entity,\n sdk,\n });\n\n // add OOTB navigate to edit action\n const moreActions = useNavigateEditEntityAction({\n displayName: entity?.[schema.displayField],\n configuration,\n });\n\n const resolvedMoreActions = useEntityPageMoreActions(\n moreActions,\n entity,\n sdk,\n );\n\n const renderTitle = () => {\n const { text, badges } = title;\n\n return (\n <Box gap=\"SP2\" verticalAlign=\"middle\" alignContent=\"center\">\n <Heading size=\"extraLarge\">{text}</Heading>\n {badges && badges.length > 0 && (\n <Box gap=\"SP2\">\n {badges.map((badge, index) => (\n <Badge\n key={index}\n {...badge}\n dataHook={`form-page-header-badge-${index}`}\n >\n {badge.text}\n </Badge>\n ))}\n </Box>\n )}\n </Box>\n );\n };\n\n if (!entity) {\n return <SkeletonEntity entityPage={configuration} />;\n }\n return (\n <Page dataHook=\"view-mode-entity-page\">\n <Page.Header\n dataHook=\"view-mode-entity-page-header\"\n title={renderTitle()}\n subtitle={subtitle?.text}\n showBackButton\n onBackClicked={() =>\n navigateToCollectionPage(configuration.parentPageId!)\n }\n actionsBar={\n <Box gap=\"SP2\">\n {resolvedMoreActions.length > 0 ? (\n <MoreActions\n dataHook=\"view-mode-entity-page-more-actions\"\n items={resolvedMoreActions}\n />\n ) : undefined}\n {actions}\n </Box>\n }\n />\n <Page.Content>\n <Layout>\n <Cell span={pageLayout?.sidebar ? 8 : 12}>\n <Box direction=\"vertical\" gap=\"SP4\">\n {pageLayout?.main?.map((layout, layoutIndex) => (\n <RenderViewLayoutCard\n key={`main-section-card-${layoutIndex}`}\n entity={entity}\n layout={layout}\n sectionId=\"main\"\n cardIndex={layoutIndex}\n />\n ))}\n </Box>\n </Cell>\n {pageLayout?.sidebar ? (\n <Cell span={4}>\n <Box direction=\"vertical\" gap=\"SP4\">\n {pageLayout.sidebar?.map((layout, layoutIndex) => (\n <RenderViewLayoutCard\n key={`sidebar-section-card-${layoutIndex}`}\n entity={entity}\n layout={layout}\n sectionId=\"sidebar\"\n cardIndex={layoutIndex}\n />\n ))}\n </Box>\n </Cell>\n ) : null}\n </Layout>\n </Page.Content>\n </Page>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useState","useEffect","Page","Heading","Box","Layout","Cell","Badge","useParams","useSchema","useNavigation","MoreActions","useEntityPageActions","useEntityPageMoreActions","useActionsSDK","useNavigateEditEntityAction","useEntityPageHeaderTexts","ContentSkeleton","ContentCard","ViewModeEntityPage","_ref","_pageLayout$main","_pageLayout$sidebar","configuration","route","params","entityId","id","schema","displayField","actions","schemaActions","fields","layout","pageLayout","navigateToCollectionPage","entity","setEntity","undefined","isMounted","fetchEntity","fetchedEntity","get","title","subtitle","config","isCreateMode","isViewMode","entityDisplayName","sdk","collectionId","entityPageActions","moreActions","displayName","resolvedMoreActions","renderTitle","text","badges","createElement","gap","verticalAlign","alignContent","size","length","map","badge","index","_extends","key","dataHook","pageConfig","Header","showBackButton","onBackClicked","parentPageId","actionsBar","items","Content","span","sidebar","direction","main","layoutIndex","mode","data","sectionId","cardIndex"],"sources":["../../../../src/components/AutoPatternsEntityPage/ViewModeEntityPage.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport { Page, Heading, Box, Layout, Cell, Badge } from '@wix/design-system';\nimport { useParams } from 'react-router-dom';\nimport { useSchema } from '../../providers/SchemaContext';\nimport { useNavigation } from '../../hooks';\nimport { MoreActions } from '@wix/patterns';\nimport { useEntityPageActions } from '../../hooks/useEntityPageActions';\nimport { useEntityPageMoreActions } from '../../hooks/useEntityPageMoreActions';\nimport { useActionsSDK } from '../../hooks/useActionsSDK';\nimport { useNavigateEditEntityAction } from '../../hooks/useNavigateEditEntityAction';\nimport { useEntityPageHeaderTexts } from '../../hooks/useEntityPageHeaderTexts';\nimport { ViewEntityPageConfig } from '../../types';\nimport { ContentSkeleton } from '../layouts/ContentSkeleton';\nimport { ContentCard } from '../layouts/ContentCard';\n\ninterface ViewModeEntityPageProps {\n configuration: ViewEntityPageConfig;\n}\n\n// TODO: temp solution until we have a proper view mode entity page\nexport const ViewModeEntityPage: React.FC<ViewModeEntityPageProps> = ({\n configuration,\n}) => {\n const { route } = configuration;\n const params = useParams();\n const entityId = params[route.params.id];\n const schema = useSchema();\n const { displayField, actions: schemaActions, fields } = schema;\n const { layout: pageLayout } = configuration;\n const { navigateToCollectionPage } = useNavigation();\n\n const [entity, setEntity] = useState<any>(undefined);\n\n useEffect(() => {\n let isMounted = true;\n const fetchEntity = async () => {\n if (!entityId) {\n setEntity(undefined);\n return;\n }\n const fetchedEntity = await schemaActions.get(entityId);\n if (isMounted) {\n setEntity(fetchedEntity);\n }\n };\n fetchEntity();\n return () => {\n isMounted = false;\n };\n }, [entityId, schemaActions]);\n\n const { title, subtitle } = useEntityPageHeaderTexts({\n config: configuration,\n isCreateMode: false,\n isViewMode: true,\n entityDisplayName: entity?.[displayField],\n entity,\n });\n\n const sdk = useActionsSDK({\n collectionId: configuration.collectionId,\n });\n\n const actions = useEntityPageActions({\n entityPageActions: configuration.actions,\n entity,\n sdk,\n });\n\n // add OOTB navigate to edit action\n const moreActions = useNavigateEditEntityAction({\n displayName: entity?.[displayField],\n configuration,\n });\n\n const resolvedMoreActions = useEntityPageMoreActions(\n moreActions,\n entity,\n sdk,\n );\n\n const renderTitle = () => {\n const { text, badges } = title;\n\n return (\n <Box gap=\"SP2\" verticalAlign=\"middle\" alignContent=\"center\">\n <Heading size=\"extraLarge\">{text}</Heading>\n {badges && badges.length > 0 && (\n <Box gap=\"SP2\">\n {badges.map((badge, index) => (\n <Badge\n key={index}\n {...badge}\n dataHook={`form-page-header-badge-${index}`}\n >\n {badge.text}\n </Badge>\n ))}\n </Box>\n )}\n </Box>\n );\n };\n\n if (!entity) {\n return <ContentSkeleton pageConfig={configuration} />;\n }\n return (\n <Page dataHook=\"view-mode-entity-page\">\n <Page.Header\n dataHook=\"view-mode-entity-page-header\"\n title={renderTitle()}\n subtitle={subtitle?.text}\n showBackButton\n onBackClicked={() =>\n navigateToCollectionPage(configuration.parentPageId!)\n }\n actionsBar={\n <Box gap=\"SP2\">\n {resolvedMoreActions.length > 0 ? (\n <MoreActions\n dataHook=\"view-mode-entity-page-more-actions\"\n items={resolvedMoreActions}\n />\n ) : undefined}\n {actions}\n </Box>\n }\n />\n <Page.Content>\n <Layout>\n <Cell span={pageLayout?.sidebar ? 8 : 12}>\n <Box direction=\"vertical\" gap=\"SP4\">\n {pageLayout?.main?.map((layout, layoutIndex) => (\n <ContentCard\n key={`main-section-card-${layoutIndex}`}\n mode=\"view\"\n fields={fields}\n data={entity}\n layout={layout}\n sectionId=\"main\"\n cardIndex={layoutIndex}\n />\n ))}\n </Box>\n </Cell>\n {pageLayout?.sidebar ? (\n <Cell span={4}>\n <Box direction=\"vertical\" gap=\"SP4\">\n {pageLayout.sidebar?.map((layout, layoutIndex) => (\n <ContentCard\n key={`sidebar-section-card-${layoutIndex}`}\n mode=\"view\"\n fields={fields}\n data={entity}\n layout={layout}\n sectionId=\"sidebar\"\n cardIndex={layoutIndex}\n />\n ))}\n </Box>\n </Cell>\n ) : null}\n </Layout>\n </Page.Content>\n </Page>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["../../../../src/components/AutoPatternsEntityPage/index.ts"],"sourcesContent":["export * from './AutoPatternsEntityPage';\nexport * from './ViewModeEntityPage';\
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/components/AutoPatternsEntityPage/index.ts"],"sourcesContent":["export * from './AutoPatternsEntityPage';\nexport * from './ViewModeEntityPage';\n"],"mappings":"AAAA,cAAc,0BAA0B;AACxC,cAAc,sBAAsB","ignoreList":[]}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import React, { lazy, Suspense } from 'react';
|
|
2
2
|
import { SchemaProvider } from '../../providers/SchemaContext';
|
|
3
|
-
import { SkeletonEntity } from '../AutoPatternsEntityPage/SkeletonEntity';
|
|
4
3
|
import { AutoPatternsCollectionPage } from '../AutoPatternsCollectionPage';
|
|
4
|
+
import { ContentSkeleton } from '../layouts/ContentSkeleton';
|
|
5
5
|
const AutoPatternsEntityPage = /*#__PURE__*/lazy(() => import('../AutoPatternsEntityPage').then(module => ({
|
|
6
6
|
default: module.AutoPatternsEntityPage
|
|
7
7
|
})));
|
|
8
|
+
const AutoPatternsSettingsPage = /*#__PURE__*/lazy(() => import('../AutoPatternsSettingsPage').then(module => ({
|
|
9
|
+
default: module.AutoPatternsSettingsPage
|
|
10
|
+
})));
|
|
8
11
|
export const AutoPatternsPage = _ref => {
|
|
9
12
|
let {
|
|
10
13
|
pageConfig
|
|
@@ -12,7 +15,8 @@ export const AutoPatternsPage = _ref => {
|
|
|
12
15
|
const {
|
|
13
16
|
type,
|
|
14
17
|
collectionPage,
|
|
15
|
-
entityPage
|
|
18
|
+
entityPage,
|
|
19
|
+
settingsPage
|
|
16
20
|
} = pageConfig;
|
|
17
21
|
switch (type) {
|
|
18
22
|
case 'collectionPage':
|
|
@@ -26,18 +30,39 @@ export const AutoPatternsPage = _ref => {
|
|
|
26
30
|
if (entityPage) {
|
|
27
31
|
return /*#__PURE__*/React.createElement(SchemaProvider, {
|
|
28
32
|
collection: entityPage,
|
|
29
|
-
skeleton: /*#__PURE__*/React.createElement(
|
|
30
|
-
|
|
33
|
+
skeleton: /*#__PURE__*/React.createElement(ContentSkeleton, {
|
|
34
|
+
pageConfig: entityPage
|
|
31
35
|
})
|
|
32
36
|
}, /*#__PURE__*/React.createElement(Suspense, {
|
|
33
|
-
fallback: /*#__PURE__*/React.createElement(
|
|
34
|
-
|
|
37
|
+
fallback: /*#__PURE__*/React.createElement(ContentSkeleton, {
|
|
38
|
+
pageConfig: entityPage
|
|
35
39
|
})
|
|
36
40
|
}, /*#__PURE__*/React.createElement(AutoPatternsEntityPage, {
|
|
37
41
|
configuration: entityPage
|
|
38
42
|
})));
|
|
39
43
|
}
|
|
40
44
|
break;
|
|
45
|
+
case 'settingsPage':
|
|
46
|
+
if (settingsPage) {
|
|
47
|
+
return /*#__PURE__*/React.createElement(SchemaProvider, {
|
|
48
|
+
collection: {
|
|
49
|
+
...settingsPage,
|
|
50
|
+
collectionId: 'app-settings'
|
|
51
|
+
},
|
|
52
|
+
skeleton: /*#__PURE__*/React.createElement(ContentSkeleton, {
|
|
53
|
+
type: "settings",
|
|
54
|
+
pageConfig: settingsPage
|
|
55
|
+
})
|
|
56
|
+
}, /*#__PURE__*/React.createElement(Suspense, {
|
|
57
|
+
fallback: /*#__PURE__*/React.createElement(ContentSkeleton, {
|
|
58
|
+
type: "settings",
|
|
59
|
+
pageConfig: settingsPage
|
|
60
|
+
})
|
|
61
|
+
}, /*#__PURE__*/React.createElement(AutoPatternsSettingsPage, {
|
|
62
|
+
configuration: settingsPage
|
|
63
|
+
})));
|
|
64
|
+
}
|
|
65
|
+
break;
|
|
41
66
|
default:
|
|
42
67
|
break;
|
|
43
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","lazy","Suspense","SchemaProvider","
|
|
1
|
+
{"version":3,"names":["React","lazy","Suspense","SchemaProvider","AutoPatternsCollectionPage","ContentSkeleton","AutoPatternsEntityPage","then","module","default","AutoPatternsSettingsPage","AutoPatternsPage","_ref","pageConfig","type","collectionPage","entityPage","settingsPage","createElement","configuration","collection","skeleton","fallback","collectionId"],"sources":["../../../../src/components/AutoPatternsRoute/AutoPatternsPage.tsx"],"sourcesContent":["import React, { lazy, Suspense } from 'react';\nimport { PageConfig } from '../../types';\nimport { SchemaProvider } from '../../providers/SchemaContext';\nimport { AutoPatternsCollectionPage } from '../AutoPatternsCollectionPage';\nimport { ContentSkeleton } from '../layouts/ContentSkeleton';\n\nconst AutoPatternsEntityPage = lazy(() =>\n import('../AutoPatternsEntityPage').then((module) => ({\n default: module.AutoPatternsEntityPage,\n })),\n);\n\nconst AutoPatternsSettingsPage = lazy(() =>\n import('../AutoPatternsSettingsPage').then((module) => ({\n default: module.AutoPatternsSettingsPage,\n })),\n);\n\nexport interface AutoPatternsPageProps {\n pageConfig: PageConfig;\n}\n\nexport const AutoPatternsPage = ({ pageConfig }: AutoPatternsPageProps) => {\n const { type, collectionPage, entityPage, settingsPage } = pageConfig;\n\n switch (type) {\n case 'collectionPage':\n if (collectionPage) {\n return <AutoPatternsCollectionPage configuration={collectionPage} />;\n }\n break;\n case 'entityPage':\n if (entityPage) {\n return (\n <SchemaProvider\n collection={entityPage}\n skeleton={<ContentSkeleton pageConfig={entityPage} />}\n >\n <Suspense fallback={<ContentSkeleton pageConfig={entityPage} />}>\n <AutoPatternsEntityPage configuration={entityPage} />\n </Suspense>\n </SchemaProvider>\n );\n }\n break;\n case 'settingsPage':\n if (settingsPage) {\n return (\n <SchemaProvider\n collection={{ ...settingsPage, collectionId: 'app-settings' }}\n skeleton={\n <ContentSkeleton type=\"settings\" pageConfig={settingsPage} />\n }\n >\n <Suspense\n fallback={\n <ContentSkeleton type=\"settings\" pageConfig={settingsPage} />\n }\n >\n <AutoPatternsSettingsPage configuration={settingsPage} />\n </Suspense>\n </SchemaProvider>\n );\n }\n break;\n default:\n break;\n }\n\n return null;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,IAAI,EAAEC,QAAQ,QAAQ,OAAO;AAE7C,SAASC,cAAc,QAAQ,+BAA+B;AAC9D,SAASC,0BAA0B,QAAQ,+BAA+B;AAC1E,SAASC,eAAe,QAAQ,4BAA4B;AAE5D,MAAMC,sBAAsB,gBAAGL,IAAI,CAAC,MAClC,MAAM,CAAC,2BAA2B,CAAC,CAACM,IAAI,CAAEC,MAAM,KAAM;EACpDC,OAAO,EAAED,MAAM,CAACF;AAClB,CAAC,CAAC,CACJ,CAAC;AAED,MAAMI,wBAAwB,gBAAGT,IAAI,CAAC,MACpC,MAAM,CAAC,6BAA6B,CAAC,CAACM,IAAI,CAAEC,MAAM,KAAM;EACtDC,OAAO,EAAED,MAAM,CAACE;AAClB,CAAC,CAAC,CACJ,CAAC;AAMD,OAAO,MAAMC,gBAAgB,GAAGC,IAAA,IAA2C;EAAA,IAA1C;IAAEC;EAAkC,CAAC,GAAAD,IAAA;EACpE,MAAM;IAAEE,IAAI;IAAEC,cAAc;IAAEC,UAAU;IAAEC;EAAa,CAAC,GAAGJ,UAAU;EAErE,QAAQC,IAAI;IACV,KAAK,gBAAgB;MACnB,IAAIC,cAAc,EAAE;QAClB,oBAAOf,KAAA,CAAAkB,aAAA,CAACd,0BAA0B;UAACe,aAAa,EAAEJ;QAAe,CAAE,CAAC;MACtE;MACA;IACF,KAAK,YAAY;MACf,IAAIC,UAAU,EAAE;QACd,oBACEhB,KAAA,CAAAkB,aAAA,CAACf,cAAc;UACbiB,UAAU,EAAEJ,UAAW;UACvBK,QAAQ,eAAErB,KAAA,CAAAkB,aAAA,CAACb,eAAe;YAACQ,UAAU,EAAEG;UAAW,CAAE;QAAE,gBAEtDhB,KAAA,CAAAkB,aAAA,CAAChB,QAAQ;UAACoB,QAAQ,eAAEtB,KAAA,CAAAkB,aAAA,CAACb,eAAe;YAACQ,UAAU,EAAEG;UAAW,CAAE;QAAE,gBAC9DhB,KAAA,CAAAkB,aAAA,CAACZ,sBAAsB;UAACa,aAAa,EAAEH;QAAW,CAAE,CAC5C,CACI,CAAC;MAErB;MACA;IACF,KAAK,cAAc;MACjB,IAAIC,YAAY,EAAE;QAChB,oBACEjB,KAAA,CAAAkB,aAAA,CAACf,cAAc;UACbiB,UAAU,EAAE;YAAE,GAAGH,YAAY;YAAEM,YAAY,EAAE;UAAe,CAAE;UAC9DF,QAAQ,eACNrB,KAAA,CAAAkB,aAAA,CAACb,eAAe;YAACS,IAAI,EAAC,UAAU;YAACD,UAAU,EAAEI;UAAa,CAAE;QAC7D,gBAEDjB,KAAA,CAAAkB,aAAA,CAAChB,QAAQ;UACPoB,QAAQ,eACNtB,KAAA,CAAAkB,aAAA,CAACb,eAAe;YAACS,IAAI,EAAC,UAAU;YAACD,UAAU,EAAEI;UAAa,CAAE;QAC7D,gBAEDjB,KAAA,CAAAkB,aAAA,CAACR,wBAAwB;UAACS,aAAa,EAAEF;QAAa,CAAE,CAChD,CACI,CAAC;MAErB;MACA;IACF;MACE;EACJ;EAEA,OAAO,IAAI;AACb,CAAC","ignoreList":[]}
|
|
@@ -6,7 +6,8 @@ import { Navigate } from 'react-router-dom';
|
|
|
6
6
|
import { useWixPatternsContainer } from '@wix/patterns';
|
|
7
7
|
const pageTypeToRouteType = {
|
|
8
8
|
collectionPage: 'collection',
|
|
9
|
-
entityPage: 'editEntity'
|
|
9
|
+
entityPage: 'editEntity',
|
|
10
|
+
settingsPage: 'other'
|
|
10
11
|
};
|
|
11
12
|
export const AutoPatternsRoutes = _ref => {
|
|
12
13
|
let {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","usePagePath","PatternsReactRoute","PatternsReactRouter","AutoPatternsPage","Navigate","useWixPatternsContainer","pageTypeToRouteType","collectionPage","entityPage","AutoPatternsRoutes","_ref","config","getPagePath","layoutType","createElement","Fragment","pages","map","page","key","id","pageConfig","mainPage","find","appMainPage","routes","routePath","type","path","element","filter","Boolean","mainPagePath","push","to"],"sources":["../../../../src/components/AutoPatternsRoute/AutoPatternsRoutes.tsx"],"sourcesContent":["import React from 'react';\nimport { usePagePath } from '../../hooks';\nimport { PatternsReactRoute, PatternsReactRouter } from '@wix/patterns/router';\nimport { AutoPatternsPage } from './AutoPatternsPage';\nimport type { RouteType } from '@wix/patterns/dist/types/components/Router/types';\nimport { Navigate } from 'react-router-dom';\nimport { AppConfig } from '../../types';\nimport { useWixPatternsContainer } from '@wix/patterns';\n\nconst pageTypeToRouteType: Record<string, RouteType> = {\n collectionPage: 'collection',\n entityPage: 'editEntity',\n};\n\nexport const AutoPatternsRoutes = ({ config }: { config: AppConfig }) => {\n const { getPagePath } = usePagePath(config);\n const { layoutType } = useWixPatternsContainer();\n\n if (layoutType === 'panel') {\n return (\n <>\n {config.pages.map((page) => {\n return <AutoPatternsPage key={page.id} pageConfig={page} />;\n })}\n </>\n );\n }\n\n const mainPage = config.pages.find((page) => page.appMainPage);\n\n const routes = config.pages\n .map((page) => {\n const routePath = getPagePath(page.id);\n\n if (!routePath) {\n return null;\n }\n\n return (\n <PatternsReactRoute\n key={page.id}\n type={pageTypeToRouteType[page.type] ?? 'other'}\n path={routePath}\n element={<AutoPatternsPage pageConfig={page} />}\n />\n );\n })\n .filter(Boolean);\n\n if (mainPage) {\n const mainPagePath = getPagePath(mainPage.id);\n\n if (mainPagePath) {\n routes.push(\n <PatternsReactRoute\n key=\"main-redirect\"\n type=\"other\"\n path=\"/\"\n element={<Navigate to={mainPagePath} />}\n />,\n );\n }\n }\n\n return <PatternsReactRouter>{routes}</PatternsReactRouter>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,kBAAkB,EAAEC,mBAAmB,QAAQ,sBAAsB;AAC9E,SAASC,gBAAgB,QAAQ,oBAAoB;AAErD,SAASC,QAAQ,QAAQ,kBAAkB;AAE3C,SAASC,uBAAuB,QAAQ,eAAe;AAEvD,MAAMC,mBAA8C,GAAG;EACrDC,cAAc,EAAE,YAAY;EAC5BC,UAAU,EAAE;
|
|
1
|
+
{"version":3,"names":["React","usePagePath","PatternsReactRoute","PatternsReactRouter","AutoPatternsPage","Navigate","useWixPatternsContainer","pageTypeToRouteType","collectionPage","entityPage","settingsPage","AutoPatternsRoutes","_ref","config","getPagePath","layoutType","createElement","Fragment","pages","map","page","key","id","pageConfig","mainPage","find","appMainPage","routes","routePath","type","path","element","filter","Boolean","mainPagePath","push","to"],"sources":["../../../../src/components/AutoPatternsRoute/AutoPatternsRoutes.tsx"],"sourcesContent":["import React from 'react';\nimport { usePagePath } from '../../hooks';\nimport { PatternsReactRoute, PatternsReactRouter } from '@wix/patterns/router';\nimport { AutoPatternsPage } from './AutoPatternsPage';\nimport type { RouteType } from '@wix/patterns/dist/types/components/Router/types';\nimport { Navigate } from 'react-router-dom';\nimport { AppConfig } from '../../types';\nimport { useWixPatternsContainer } from '@wix/patterns';\n\nconst pageTypeToRouteType: Record<string, RouteType> = {\n collectionPage: 'collection',\n entityPage: 'editEntity',\n settingsPage: 'other',\n};\n\nexport const AutoPatternsRoutes = ({ config }: { config: AppConfig }) => {\n const { getPagePath } = usePagePath(config);\n const { layoutType } = useWixPatternsContainer();\n\n if (layoutType === 'panel') {\n return (\n <>\n {config.pages.map((page) => {\n return <AutoPatternsPage key={page.id} pageConfig={page} />;\n })}\n </>\n );\n }\n\n const mainPage = config.pages.find((page) => page.appMainPage);\n\n const routes = config.pages\n .map((page) => {\n const routePath = getPagePath(page.id);\n\n if (!routePath) {\n return null;\n }\n\n return (\n <PatternsReactRoute\n key={page.id}\n type={pageTypeToRouteType[page.type] ?? 'other'}\n path={routePath}\n element={<AutoPatternsPage pageConfig={page} />}\n />\n );\n })\n .filter(Boolean);\n\n if (mainPage) {\n const mainPagePath = getPagePath(mainPage.id);\n\n if (mainPagePath) {\n routes.push(\n <PatternsReactRoute\n key=\"main-redirect\"\n type=\"other\"\n path=\"/\"\n element={<Navigate to={mainPagePath} />}\n />,\n );\n }\n }\n\n return <PatternsReactRouter>{routes}</PatternsReactRouter>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,kBAAkB,EAAEC,mBAAmB,QAAQ,sBAAsB;AAC9E,SAASC,gBAAgB,QAAQ,oBAAoB;AAErD,SAASC,QAAQ,QAAQ,kBAAkB;AAE3C,SAASC,uBAAuB,QAAQ,eAAe;AAEvD,MAAMC,mBAA8C,GAAG;EACrDC,cAAc,EAAE,YAAY;EAC5BC,UAAU,EAAE,YAAY;EACxBC,YAAY,EAAE;AAChB,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAGC,IAAA,IAAuC;EAAA,IAAtC;IAAEC;EAA8B,CAAC,GAAAD,IAAA;EAClE,MAAM;IAAEE;EAAY,CAAC,GAAGb,WAAW,CAACY,MAAM,CAAC;EAC3C,MAAM;IAAEE;EAAW,CAAC,GAAGT,uBAAuB,CAAC,CAAC;EAEhD,IAAIS,UAAU,KAAK,OAAO,EAAE;IAC1B,oBACEf,KAAA,CAAAgB,aAAA,CAAAhB,KAAA,CAAAiB,QAAA,QACGJ,MAAM,CAACK,KAAK,CAACC,GAAG,CAAEC,IAAI,IAAK;MAC1B,oBAAOpB,KAAA,CAAAgB,aAAA,CAACZ,gBAAgB;QAACiB,GAAG,EAAED,IAAI,CAACE,EAAG;QAACC,UAAU,EAAEH;MAAK,CAAE,CAAC;IAC7D,CAAC,CACD,CAAC;EAEP;EAEA,MAAMI,QAAQ,GAAGX,MAAM,CAACK,KAAK,CAACO,IAAI,CAAEL,IAAI,IAAKA,IAAI,CAACM,WAAW,CAAC;EAE9D,MAAMC,MAAM,GAAGd,MAAM,CAACK,KAAK,CACxBC,GAAG,CAAEC,IAAI,IAAK;IACb,MAAMQ,SAAS,GAAGd,WAAW,CAACM,IAAI,CAACE,EAAE,CAAC;IAEtC,IAAI,CAACM,SAAS,EAAE;MACd,OAAO,IAAI;IACb;IAEA,oBACE5B,KAAA,CAAAgB,aAAA,CAACd,kBAAkB;MACjBmB,GAAG,EAAED,IAAI,CAACE,EAAG;MACbO,IAAI,EAAEtB,mBAAmB,CAACa,IAAI,CAACS,IAAI,CAAC,IAAI,OAAQ;MAChDC,IAAI,EAAEF,SAAU;MAChBG,OAAO,eAAE/B,KAAA,CAAAgB,aAAA,CAACZ,gBAAgB;QAACmB,UAAU,EAAEH;MAAK,CAAE;IAAE,CACjD,CAAC;EAEN,CAAC,CAAC,CACDY,MAAM,CAACC,OAAO,CAAC;EAElB,IAAIT,QAAQ,EAAE;IACZ,MAAMU,YAAY,GAAGpB,WAAW,CAACU,QAAQ,CAACF,EAAE,CAAC;IAE7C,IAAIY,YAAY,EAAE;MAChBP,MAAM,CAACQ,IAAI,cACTnC,KAAA,CAAAgB,aAAA,CAACd,kBAAkB;QACjBmB,GAAG,EAAC,eAAe;QACnBQ,IAAI,EAAC,OAAO;QACZC,IAAI,EAAC,GAAG;QACRC,OAAO,eAAE/B,KAAA,CAAAgB,aAAA,CAACX,QAAQ;UAAC+B,EAAE,EAAEF;QAAa,CAAE;MAAE,CACzC,CACH,CAAC;IACH;EACF;EAEA,oBAAOlC,KAAA,CAAAgB,aAAA,CAACb,mBAAmB,QAAEwB,MAA4B,CAAC;AAC5D,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import React, { useRef } from 'react';
|
|
2
|
+
import { errorHandler } from '@wix/essentials';
|
|
3
|
+
import { MoreActions, SettingsPage, useSettingsPage, useSettings } from '@wix/patterns';
|
|
4
|
+
import { useForm } from '@wix/patterns/form';
|
|
5
|
+
import { ContentCard } from '../layouts/ContentCard';
|
|
6
|
+
import { useSettingsPageMoreActions } from '../../hooks/useSettingsPageMoreActions';
|
|
7
|
+
import { useBaseSDK } from '../../hooks/useBaseSDK';
|
|
8
|
+
import { useSchema } from '../../providers/SchemaContext';
|
|
9
|
+
export const AutoPatternsSettingsPage = _ref => {
|
|
10
|
+
var _pageLayout$main, _pageLayout$sidebar;
|
|
11
|
+
let {
|
|
12
|
+
configuration
|
|
13
|
+
} = _ref;
|
|
14
|
+
const {
|
|
15
|
+
title,
|
|
16
|
+
subtitle,
|
|
17
|
+
actions: pageActions,
|
|
18
|
+
layout: pageLayout
|
|
19
|
+
} = configuration;
|
|
20
|
+
const schema = useSchema();
|
|
21
|
+
const {
|
|
22
|
+
fields,
|
|
23
|
+
actions
|
|
24
|
+
} = schema;
|
|
25
|
+
const form = useForm({
|
|
26
|
+
mode: 'onChange'
|
|
27
|
+
});
|
|
28
|
+
const inputRefs = useRef({});
|
|
29
|
+
const setInputRef = (id, input) => {
|
|
30
|
+
inputRefs.current[id] = input;
|
|
31
|
+
};
|
|
32
|
+
const validate = () => {
|
|
33
|
+
const invalidFieldId = Object.keys(inputRefs.current).find(fieldId => {
|
|
34
|
+
var _inputRefs$current$fi;
|
|
35
|
+
// change to get
|
|
36
|
+
return (_inputRefs$current$fi = inputRefs.current[fieldId]) == null ? void 0 : _inputRefs$current$fi.invalid;
|
|
37
|
+
});
|
|
38
|
+
if (invalidFieldId) {
|
|
39
|
+
var _inputRefs$current$in;
|
|
40
|
+
(_inputRefs$current$in = inputRefs.current[invalidFieldId]) == null || _inputRefs$current$in.focus == null || _inputRefs$current$in.focus();
|
|
41
|
+
throw new Error('Invalid form');
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
const state = useSettingsPage({
|
|
45
|
+
form,
|
|
46
|
+
saveErrorToast: err => ({
|
|
47
|
+
message: errorHandler.getResolvedError(err).message
|
|
48
|
+
}),
|
|
49
|
+
onCancel: async () => {
|
|
50
|
+
form.reset();
|
|
51
|
+
},
|
|
52
|
+
onSave: async () => {
|
|
53
|
+
validate();
|
|
54
|
+
const formValues = form.getValues();
|
|
55
|
+
const currentSettings = state.settings || {};
|
|
56
|
+
const updatedSettings = {
|
|
57
|
+
...currentSettings,
|
|
58
|
+
...formValues
|
|
59
|
+
};
|
|
60
|
+
await actions.update(updatedSettings);
|
|
61
|
+
},
|
|
62
|
+
fetch: async () => {
|
|
63
|
+
const result = await actions.get('');
|
|
64
|
+
return {
|
|
65
|
+
settings: result
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
const settings = useSettings(state);
|
|
70
|
+
const baseSDK = useBaseSDK();
|
|
71
|
+
const resolvedMoreActions = useSettingsPageMoreActions(pageActions == null ? void 0 : pageActions.moreActions, baseSDK);
|
|
72
|
+
return /*#__PURE__*/React.createElement(SettingsPage, {
|
|
73
|
+
state: state,
|
|
74
|
+
dataHook: "auto-patterns-settings-page"
|
|
75
|
+
}, /*#__PURE__*/React.createElement(SettingsPage.Header, {
|
|
76
|
+
title: {
|
|
77
|
+
...title,
|
|
78
|
+
text: (title == null ? void 0 : title.text) ?? ''
|
|
79
|
+
},
|
|
80
|
+
subtitle: subtitle,
|
|
81
|
+
moreActions: resolvedMoreActions.length > 0 ? /*#__PURE__*/React.createElement(MoreActions, {
|
|
82
|
+
items: resolvedMoreActions
|
|
83
|
+
}) : undefined
|
|
84
|
+
}), /*#__PURE__*/React.createElement(SettingsPage.Content, null, /*#__PURE__*/React.createElement(SettingsPage.MainContent, {
|
|
85
|
+
dataHook: "settings-page-main-content"
|
|
86
|
+
}, pageLayout == null || (_pageLayout$main = pageLayout.main) == null ? void 0 : _pageLayout$main.map((layout, layoutIndex) => /*#__PURE__*/React.createElement(ContentCard, {
|
|
87
|
+
type: "settings",
|
|
88
|
+
key: `main-section-card-${layoutIndex}`,
|
|
89
|
+
layout: layout,
|
|
90
|
+
sectionId: "main",
|
|
91
|
+
cardIndex: layoutIndex,
|
|
92
|
+
setInputRef: setInputRef,
|
|
93
|
+
fields: fields,
|
|
94
|
+
form: form,
|
|
95
|
+
data: settings
|
|
96
|
+
}))), pageLayout != null && pageLayout.sidebar ? /*#__PURE__*/React.createElement(SettingsPage.AdditionalContent, null, (_pageLayout$sidebar = pageLayout.sidebar) == null ? void 0 : _pageLayout$sidebar.map((layout, layoutIndex) => /*#__PURE__*/React.createElement(ContentCard, {
|
|
97
|
+
type: "settings",
|
|
98
|
+
key: `sidebar-section-card-${layoutIndex}`,
|
|
99
|
+
layout: layout,
|
|
100
|
+
sectionId: "sidebar",
|
|
101
|
+
cardIndex: layoutIndex,
|
|
102
|
+
setInputRef: setInputRef,
|
|
103
|
+
fields: fields,
|
|
104
|
+
form: form,
|
|
105
|
+
data: settings
|
|
106
|
+
}))) : null));
|
|
107
|
+
};
|
|
108
|
+
//# sourceMappingURL=AutoPatternsSettingsPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useRef","errorHandler","MoreActions","SettingsPage","useSettingsPage","useSettings","useForm","ContentCard","useSettingsPageMoreActions","useBaseSDK","useSchema","AutoPatternsSettingsPage","_ref","_pageLayout$main","_pageLayout$sidebar","configuration","title","subtitle","actions","pageActions","layout","pageLayout","schema","fields","form","mode","inputRefs","setInputRef","id","input","current","validate","invalidFieldId","Object","keys","find","fieldId","_inputRefs$current$fi","invalid","_inputRefs$current$in","focus","Error","state","saveErrorToast","err","message","getResolvedError","onCancel","reset","onSave","formValues","getValues","currentSettings","settings","updatedSettings","update","fetch","result","get","baseSDK","resolvedMoreActions","moreActions","createElement","dataHook","Header","text","length","items","undefined","Content","MainContent","main","map","layoutIndex","type","key","sectionId","cardIndex","data","sidebar","AdditionalContent"],"sources":["../../../../src/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport { errorHandler } from '@wix/essentials';\nimport {\n MoreActions,\n SettingsPage,\n SettingsPageState,\n useSettingsPage,\n useSettings,\n} from '@wix/patterns';\nimport { useForm } from '@wix/patterns/form';\nimport { ContentCard } from '../layouts/ContentCard';\nimport { SettingsPageConfig, BaseInputRef } from '../../types';\nimport { useSettingsPageMoreActions } from '../../hooks/useSettingsPageMoreActions';\nimport { useBaseSDK } from '../../hooks/useBaseSDK';\nimport { useSchema } from '../../providers/SchemaContext';\n\nexport const AutoPatternsSettingsPage: React.FC<{\n configuration: SettingsPageConfig;\n}> = ({ configuration }) => {\n const {\n title,\n subtitle,\n actions: pageActions,\n layout: pageLayout,\n } = configuration;\n\n const schema = useSchema();\n const { fields, actions } = schema;\n\n const form = useForm<any>({\n mode: 'onChange',\n });\n\n const inputRefs = useRef<{ [fieldId: string]: BaseInputRef }>({});\n\n const setInputRef = (id: string, input: BaseInputRef) => {\n inputRefs.current[id] = input;\n };\n\n const validate = () => {\n const invalidFieldId = Object.keys(inputRefs.current).find((fieldId) => {\n // change to get\n return inputRefs.current[fieldId]?.invalid;\n });\n\n if (invalidFieldId) {\n inputRefs.current[invalidFieldId]?.focus?.();\n throw new Error('Invalid form');\n }\n };\n\n const state: SettingsPageState<any> = useSettingsPage<any, any>({\n form,\n saveErrorToast: (err) => ({\n message: errorHandler.getResolvedError(err).message,\n }),\n onCancel: async () => {\n form.reset();\n },\n onSave: async () => {\n validate();\n\n const formValues = form.getValues();\n const currentSettings = state.settings || {};\n const updatedSettings = {\n ...currentSettings,\n ...formValues,\n };\n\n await actions.update(updatedSettings);\n },\n fetch: async () => {\n const result = await actions.get('');\n return { settings: result };\n },\n });\n\n const settings = useSettings(state);\n\n const baseSDK = useBaseSDK();\n const resolvedMoreActions = useSettingsPageMoreActions(\n pageActions?.moreActions,\n baseSDK,\n );\n\n return (\n <SettingsPage state={state} dataHook=\"auto-patterns-settings-page\">\n <SettingsPage.Header\n title={{ ...title, text: title?.text ?? '' }}\n subtitle={subtitle}\n moreActions={\n resolvedMoreActions.length > 0 ? (\n <MoreActions items={resolvedMoreActions} />\n ) : undefined\n }\n />\n <SettingsPage.Content>\n <SettingsPage.MainContent dataHook=\"settings-page-main-content\">\n {pageLayout?.main?.map((layout, layoutIndex) => (\n <ContentCard\n type=\"settings\"\n key={`main-section-card-${layoutIndex}`}\n layout={layout}\n sectionId=\"main\"\n cardIndex={layoutIndex}\n setInputRef={setInputRef}\n fields={fields}\n form={form}\n data={settings}\n />\n ))}\n </SettingsPage.MainContent>\n {pageLayout?.sidebar ? (\n <SettingsPage.AdditionalContent>\n {pageLayout.sidebar?.map((layout, layoutIndex) => (\n <ContentCard\n type=\"settings\"\n key={`sidebar-section-card-${layoutIndex}`}\n layout={layout}\n sectionId=\"sidebar\"\n cardIndex={layoutIndex}\n setInputRef={setInputRef}\n fields={fields}\n form={form}\n data={settings}\n />\n ))}\n </SettingsPage.AdditionalContent>\n ) : null}\n </SettingsPage.Content>\n </SettingsPage>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SettingsPageUniDriver } from '@wix/patterns/testkit/unidriver';
|
|
2
|
+
import { baseUniDriverFactory } from '../AutoPatternsApp/AutoPatternsApp.uni.driver';
|
|
3
|
+
export const AutoPatternsSettingsPageUniDriver = (base, body) => {
|
|
4
|
+
const settingsPageDriver = SettingsPageUniDriver(base, body);
|
|
5
|
+
return {
|
|
6
|
+
...baseUniDriverFactory(base),
|
|
7
|
+
...settingsPageDriver
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=AutoPatternsSettingsPage.uni.driver.js.map
|
package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SettingsPageUniDriver","baseUniDriverFactory","AutoPatternsSettingsPageUniDriver","base","body","settingsPageDriver"],"sources":["../../../../src/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.ts"],"sourcesContent":["import { UniDriver } from '@wix/wix-ui-test-utils/unidriver';\nimport { SettingsPageUniDriver } from '@wix/patterns/testkit/unidriver';\nimport { baseUniDriverFactory } from '../AutoPatternsApp/AutoPatternsApp.uni.driver';\n\nexport const AutoPatternsSettingsPageUniDriver = (\n base: UniDriver,\n body: UniDriver,\n) => {\n const settingsPageDriver = SettingsPageUniDriver(base, body);\n\n return {\n ...baseUniDriverFactory(base),\n ...settingsPageDriver,\n };\n};\n"],"mappings":"AACA,SAASA,qBAAqB,QAAQ,iCAAiC;AACvE,SAASC,oBAAoB,QAAQ,+CAA+C;AAEpF,OAAO,MAAMC,iCAAiC,GAAGA,CAC/CC,IAAe,EACfC,IAAe,KACZ;EACH,MAAMC,kBAAkB,GAAGL,qBAAqB,CAACG,IAAI,EAAEC,IAAI,CAAC;EAE5D,OAAO;IACL,GAAGH,oBAAoB,CAACE,IAAI,CAAC;IAC7B,GAAGE;EACL,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/components/AutoPatternsSettingsPage/index.ts"],"sourcesContent":["export * from './AutoPatternsSettingsPage';\n"],"mappings":"AAAA,cAAc,4BAA4B","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useMemo","useState","Table","TableState","useCreateCollection","useSelector","useTableCollection","useWixPatternsContainer","useBasePatternsStateParams","useTableFeaturesAsync","useBaseCollectionComponentReadyFeatures","AutoPatternsTableLoaded","props","config","asyncFeaturesState","baseStateParams","dataHook","baseTableFeatures","sections","dragAndDrop","status","data","state","params","baseCollectionComponentReadyFeatures","collection","dragAndDropProps","useTableDragAndDrop","baseTableFeaturesProps","useBaseTableFeatures","sectionsProps","useTableSections","createElement","_extends","columns","
|
|
1
|
+
{"version":3,"names":["React","useMemo","useState","Table","TableState","useCreateCollection","useSelector","useTableCollection","useWixPatternsContainer","useBasePatternsStateParams","useTableFeaturesAsync","useBaseCollectionComponentReadyFeatures","AutoPatternsTableLoaded","props","config","asyncFeaturesState","baseStateParams","dataHook","baseTableFeatures","sections","dragAndDrop","status","data","state","params","baseCollectionComponentReadyFeatures","collection","dragAndDropProps","useTableDragAndDrop","baseTableFeaturesProps","useBaseTableFeatures","sectionsProps","useTableSections","createElement","_extends","columns","useNewInfiniteScrollLoader","AutoPatternsTable","visibleFieldIds","map","column","id","container","createCollection","isReady","isSuccess","isError"],"sources":["../../../../src/components/AutoPatternsTable/AutoPatternsTable.tsx"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport {\n Table,\n TableState,\n useCreateCollection,\n useSelector,\n useTableCollection,\n useWixPatternsContainer,\n} from '@wix/patterns';\nimport { TableConfig } from '../../types';\nimport { useBasePatternsStateParams } from '../../hooks/useBasePatternsStateParams';\nimport { useTableFeaturesAsync } from '../../hooks/useTableFeaturesAsync';\nimport { useBaseCollectionComponentReadyFeatures } from '../../hooks/useBaseCollectionComponentReadyFeatures';\n\nexport interface AutoPatternsTableContentProps {\n config: TableConfig;\n}\n\n/**\n * AutoPatternsTableLoaded - Step 4 in Table Flow\n *\n * FLOW 1: AutoPatternsCollectionComponent → AutoPatternsTable → useTableFeaturesAsync → [AutoPatternsTableLoaded] → useBaseCollectionComponentReadyFeatures → Table\n *\n * This component renders when all async features have been loaded and are ready.\n * It represents the \"loaded\" state of the table flow and handles:\n *\n * Key Responsibilities:\n * - Creates the table collection state using loaded async features\n * - Calls useBaseCollectionComponentReadyFeatures for final feature preparation\n * - Extracts and applies table-specific features (baseTableFeatures, sections, dragAndDrop)\n * - Renders the final Table component with all features combined\n * - Merges all feature props into a single props object for the Table\n */\nconst AutoPatternsTableLoaded = (\n props: NonNullable<ReturnType<typeof useTableFeaturesAsync>> &\n AutoPatternsTableContentProps & {\n baseStateParams: ReturnType<typeof useBasePatternsStateParams>;\n dataHook?: string;\n },\n) => {\n const { config, asyncFeaturesState, baseStateParams, dataHook } = props;\n\n // Extract loaded async features from the successful feature loading state\n const { baseTableFeatures, sections, dragAndDrop } = useSelector(() => ({\n ...asyncFeaturesState.status.data,\n }));\n\n // Create table collection state with the loaded async dependencies\n const state = useTableCollection<any>(baseStateParams.params);\n\n // STEP 5: Call shared hook that prepares final collection features\n // This hook is shared across all three flows (Table, Grid, TableGridSwitch)\n const baseCollectionComponentReadyFeatures =\n useBaseCollectionComponentReadyFeatures({\n config,\n collection: state.collection,\n asyncFeaturesState,\n baseStateParams,\n });\n\n // Extract feature-specific props from loaded features\n const dragAndDropProps = dragAndDrop?.useTableDragAndDrop?.(config);\n const baseTableFeaturesProps =\n baseTableFeatures?.useBaseTableFeatures(config);\n const sectionsProps = sections?.useTableSections(config);\n\n // FINAL STEP: Render the fully-featured Table component\n // Combines all loaded features into final table props\n return (\n <Table\n dataHook={dataHook}\n state={state}\n columns={[]}\n useNewInfiniteScrollLoader\n {...(sectionsProps && { sections: sectionsProps })}\n {...baseTableFeaturesProps}\n {...baseCollectionComponentReadyFeatures}\n {...dragAndDropProps}\n />\n );\n};\n\n/**\n * AutoPatternsTable - Step 2 in Table Flow\n *\n * FLOW 1: AutoPatternsCollectionComponent → [AutoPatternsTable] → useTableFeaturesAsync → AutoPatternsTableLoaded → useBaseCollectionComponentReadyFeatures → Table\n *\n * This is the main table component that orchestrates the table rendering flow.\n * It handles the loading states and coordinates between async feature loading and final rendering.\n *\n * Key Responsibilities:\n * - Prepares visible field IDs from table column configuration\n * - Calls useTableFeaturesAsync (Step 3) to load table-specific async features\n * - Creates initial table state with basic collection\n * - Monitors loading status and switches between loading/loaded states\n * - Renders skeleton table during loading or AutoPatternsTableLoaded when ready\n */\nexport const AutoPatternsTable = (props: AutoPatternsTableContentProps) => {\n const { config } = props;\n\n // Extract visible field IDs from table columns for data fetching optimization\n const visibleFieldIds = useMemo(\n () => config.columns.map((column) => column.id),\n [config],\n );\n\n // Initialize base state parameters with collection config and visible fields\n const baseStateParams = useBasePatternsStateParams(config, {\n visibleFieldIds,\n });\n\n // STEP 3: Load table-specific async features (drag&drop, sections, base table features)\n const { asyncFeaturesState } = useTableFeaturesAsync({ config });\n\n // Create patterns container and collection factory\n const container = useWixPatternsContainer();\n const createCollection = useCreateCollection();\n\n // Initialize table state with basic collection (used during loading)\n const [state] = useState(\n () =>\n new TableState<any, {}>({\n collection: createCollection<any, {}>(baseStateParams.params),\n container,\n }),\n );\n\n // Monitor async features loading status\n const isReady = useSelector(\n () =>\n asyncFeaturesState.status.isSuccess || asyncFeaturesState.status.isError,\n );\n\n const dataHook = 'auto-patterns-table';\n\n if (isReady) {\n // STEP 4: All features loaded - render the fully-featured table\n return (\n <AutoPatternsTableLoaded\n dataHook={dataHook}\n config={config}\n baseStateParams={baseStateParams}\n asyncFeaturesState={asyncFeaturesState}\n />\n );\n }\n\n // LOADING STATE: Render basic table skeleton while features are loading\n return (\n <Table\n dataHook={dataHook}\n useNewInfiniteScrollLoader\n state={state}\n columns={[]}\n />\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Checkbox","CheckboxWSR","props","field","onChange","value","createElement","checked","e","target","dataHook","id","displayName"],"sources":["../../../../src/components/fields/Checkbox.tsx"],"sourcesContent":["import React from 'react';\nimport { Checkbox as CheckboxWSR } from '@wix/design-system';\nimport { BaseInputProps } from './types';\n\nexport interface CheckboxProps extends BaseInputProps<boolean> {}\n\nexport const Checkbox = (props: CheckboxProps) => {\n const { field, onChange, value } = props;\n\n return (\n <CheckboxWSR\n checked={value}\n onChange={(e) => {\n onChange(e.target.checked);\n }}\n dataHook={`checkbox-${field.id}`}\n >\n {field.displayName}\n </CheckboxWSR>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,IAAIC,WAAW,QAAQ,oBAAoB;AAK5D,OAAO,MAAMD,QAAQ,GAAIE,KAAoB,IAAK;EAChD,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAGH,KAAK;EAExC,oBACEH,KAAA,CAAAO,aAAA,CAACL,WAAW;IACVM,OAAO,EAAEF,KAAM;IACfD,QAAQ,EAAGI,CAAC,IAAK;MACfJ,QAAQ,CAACI,CAAC,CAACC,MAAM,CAACF,OAAO,CAAC;IAC5B,CAAE;IACFG,QAAQ,EAAE,YAAYP,KAAK,CAACQ,EAAE;EAAG,GAEhCR,KAAK,CAACS,WACI,CAAC;AAElB,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useState, useRef } from 'react';
|
|
2
2
|
import { FormField, DatePicker } from '@wix/design-system';
|
|
3
3
|
import { getDateWithoutTimezone, getISODateStringWithFixedTimezone } from './utils/dates';
|
|
4
|
-
import { useSelector, useWixPatternsContainer
|
|
4
|
+
import { useSelector, useWixPatternsContainer } from '@wix/patterns';
|
|
5
5
|
import { useController } from '@wix/patterns/form';
|
|
6
6
|
function validateDateField(value, validation, t, format, validationType) {
|
|
7
7
|
if (validation != null && validation.required && (value === null || value === undefined || value === '')) {
|
|
@@ -14,22 +14,23 @@ function validateDateField(value, validation, t, format, validationType) {
|
|
|
14
14
|
return '';
|
|
15
15
|
}
|
|
16
16
|
export const DateInput = props => {
|
|
17
|
-
var
|
|
17
|
+
var _field$validation;
|
|
18
18
|
const {
|
|
19
19
|
field,
|
|
20
20
|
dataHook,
|
|
21
|
-
inputRef
|
|
21
|
+
inputRef,
|
|
22
|
+
formControl,
|
|
23
|
+
data
|
|
22
24
|
} = props;
|
|
23
25
|
const {
|
|
24
26
|
translate: t,
|
|
25
27
|
...container
|
|
26
28
|
} = useWixPatternsContainer();
|
|
27
29
|
useSelector(() => container.initTask.status);
|
|
28
|
-
const pageState = useEntityPageContext();
|
|
29
30
|
const controller = useController({
|
|
30
31
|
name: (field == null ? void 0 : field.id) ?? '',
|
|
31
|
-
control:
|
|
32
|
-
defaultValue:
|
|
32
|
+
control: formControl,
|
|
33
|
+
defaultValue: data == null ? void 0 : data[(field == null ? void 0 : field.id) ?? ''],
|
|
33
34
|
rules: {
|
|
34
35
|
validate: value => {
|
|
35
36
|
const error = validateDateField(value, field.validation, t);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useState","useRef","FormField","DatePicker","getDateWithoutTimezone","getISODateStringWithFixedTimezone","useSelector","useWixPatternsContainer","useController","validateDateField","value","validation","t","format","validationType","required","undefined","dateFormat","DateInput","props","_field$validation","field","dataHook","inputRef","formControl","data","translate","container","initTask","status","controller","name","id","control","defaultValue","rules","validate","error","date","setDate","ref","errorMessage","setErrorMessage","createElement","label","displayName","internalRef","current","focus","_internalRef$state","state","width","onChange","newValue","formattedDate","split","onValidate","_ref","invalid","statusMessage"],"sources":["../../../../src/components/fields/DateInput.tsx"],"sourcesContent":["import React, { useState, useRef } from 'react';\nimport { FormField, DatePicker } from '@wix/design-system';\nimport {\n getDateWithoutTimezone,\n getISODateStringWithFixedTimezone,\n} from './utils/dates';\nimport { BaseInputProps, BaseInputRef } from './types';\nimport { useSelector, useWixPatternsContainer } from '@wix/patterns';\nimport { useController } from '@wix/patterns/form';\nimport { Translate } from '@wix/patterns/core';\n\nexport interface DateProps extends BaseInputProps<string | null> {}\n\nfunction validateDateField(\n value: string | null | undefined,\n validation: DateProps['field']['validation'],\n t: Translate,\n format?: string,\n validationType?: 'outOfBoundsError' | 'formatError' | 'valid',\n) {\n if (\n validation?.required &&\n (value === null || value === undefined || value === '')\n ) {\n return t('cairo.fieldValidation.requiredField');\n } else if (validationType === 'formatError' && format) {\n return t('cairo.customFields.fieldType.date.invalid.value', {\n dateFormat: format,\n });\n }\n\n return '';\n}\n\nexport const DateInput = (props: DateProps) => {\n const { field, dataHook, inputRef, formControl, data } = props;\n const { translate: t, ...container } = useWixPatternsContainer();\n useSelector(() => container.initTask.status);\n\n const controller = useController({\n name: field?.id ?? '',\n control: formControl,\n defaultValue: data?.[field?.id ?? ''],\n rules: {\n validate: (value) => {\n const error = validateDateField(value, field.validation, t);\n return error || true;\n },\n },\n });\n\n const [date, setDate] = useState<Date | undefined>(() => {\n if (controller.field.value) {\n return getDateWithoutTimezone(\n getISODateStringWithFixedTimezone(controller.field.value),\n );\n }\n return undefined;\n });\n\n const ref = useRef<BaseInputRef>({});\n const [errorMessage, setErrorMessage] = useState<string>('');\n\n return (\n <FormField\n label={field.displayName}\n required={field.validation?.required}\n dataHook={dataHook}\n >\n <DatePicker\n ref={(internalRef) => {\n inputRef?.(ref.current);\n // @ts-expect-error: WSR internal API hack for focusing\n ref.current.focus = () => internalRef?.state?.inputRef?.focus?.();\n }}\n dataHook={`date-${field.id}`}\n width=\"100%\"\n value={date}\n onChange={(newValue: Date) => {\n setDate(newValue);\n if (newValue) {\n const formattedDate = getISODateStringWithFixedTimezone(newValue);\n controller.field.onChange(formattedDate.split('T')[0]);\n } else {\n controller.field.onChange(null);\n }\n }}\n onValidate={({ validationType, value: newValue, format }) => {\n const error = validateDateField(\n newValue,\n field.validation,\n t,\n format,\n validationType,\n );\n setErrorMessage(error);\n ref.current.invalid = !!error;\n\n if (validationType === 'formatError' && newValue === '') {\n setDate(undefined);\n controller.field.onChange(null);\n }\n }}\n status={errorMessage ? 'error' : undefined}\n statusMessage={errorMessage}\n />\n </FormField>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import React, { useRef, useMemo, useState, useEffect } from 'react';
|
|
2
2
|
import { Cell, DatePicker, FormField, Layout, TimeInput } from '@wix/design-system';
|
|
3
|
-
import { useWixPatternsContainer, useSelector
|
|
3
|
+
import { useWixPatternsContainer, useSelector } from '@wix/patterns';
|
|
4
4
|
import { useController } from '@wix/patterns/form';
|
|
5
5
|
export const DateTime = props => {
|
|
6
|
-
var
|
|
6
|
+
var _field$validation2;
|
|
7
7
|
const {
|
|
8
8
|
field,
|
|
9
9
|
dataHook,
|
|
10
|
-
inputRef
|
|
10
|
+
inputRef,
|
|
11
|
+
formControl,
|
|
12
|
+
data
|
|
11
13
|
} = props;
|
|
12
14
|
const {
|
|
13
15
|
translate: t,
|
|
14
16
|
...container
|
|
15
17
|
} = useWixPatternsContainer();
|
|
16
18
|
useSelector(() => container.initTask.status);
|
|
17
|
-
const pageState = useEntityPageContext();
|
|
18
19
|
const controller = useController({
|
|
19
20
|
name: (field == null ? void 0 : field.id) ?? '',
|
|
20
|
-
control:
|
|
21
|
-
defaultValue:
|
|
21
|
+
control: formControl,
|
|
22
|
+
defaultValue: data == null ? void 0 : data[(field == null ? void 0 : field.id) ?? ''],
|
|
22
23
|
rules: {
|
|
23
24
|
validate: v => {
|
|
24
25
|
var _field$validation;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useRef","useMemo","useState","useEffect","Cell","DatePicker","FormField","Layout","TimeInput","useWixPatternsContainer","useSelector","useController","DateTime","props","_field$validation2","field","dataHook","inputRef","formControl","data","translate","t","container","initTask","status","controller","name","id","control","defaultValue","rules","validate","v","_field$validation","validation","required","undefined","date","value","d","Date","isNaN","getTime","dateStatusMessage","setDateStatusMessage","timeStatusMessage","setTimeStatusMessage","ref","dateRef","timeRef","dateValue","setDateValue","getDate","timeValue","setTimeValue","current","focus","invalid","createElement","label","displayName","span","internalRef","_internalRef$state","state","width","onChange","onValidate","_ref","validationType","newValue","format","dateWithNewDate","_value","setFullYear","getFullYear","setMonth","getMonth","setDate","toISOString","_field$validation3","dateFormat","fieldState","error","statusMessage","onInvalid","_ref2","dateWithNewTime","setHours","getHours","setMinutes","getMinutes","setSeconds","getSeconds","setMilliseconds","getMilliseconds","_field$validation4"],"sources":["../../../../src/components/fields/DateTime.tsx"],"sourcesContent":["import React, { useRef, useMemo, useState, useEffect } from 'react';\nimport {\n Cell,\n DatePicker,\n FormField,\n Layout,\n TimeInput,\n} from '@wix/design-system';\nimport { BaseInputProps, BaseInputRef } from './types';\nimport { useWixPatternsContainer, useSelector } from '@wix/patterns';\nimport { useController } from '@wix/patterns/form';\n\nexport interface DateTimeProps extends BaseInputProps<string | null> {}\n\nexport const DateTime = (props: DateTimeProps) => {\n const { field, dataHook, inputRef, formControl, data } = props;\n const { translate: t, ...container } = useWixPatternsContainer();\n useSelector(() => container.initTask.status);\n\n const controller = useController({\n name: field?.id ?? '',\n control: formControl,\n defaultValue: data?.[field?.id ?? ''],\n rules: {\n validate: (v) => {\n if (\n field?.validation?.required &&\n (v === null || v === undefined || v === '')\n ) {\n return t('cairo.fieldValidation.requiredField');\n }\n return true;\n },\n },\n });\n\n const date = useMemo(() => {\n if (!controller.field.value) {\n return undefined;\n }\n const d = new Date(controller.field.value);\n return isNaN(d.getTime()) ? undefined : d;\n }, [controller.field.value]);\n\n const [dateStatusMessage, setDateStatusMessage] = useState('');\n const [timeStatusMessage, setTimeStatusMessage] = useState('');\n\n const ref = useRef<BaseInputRef>({});\n const dateRef = useRef<BaseInputRef>({});\n const timeRef = useRef<BaseInputRef>({});\n const [dateValue, setDateValue] = useState<number | string | undefined>(\n date?.getDate(),\n );\n const [timeValue, setTimeValue] = useState<number | string | undefined>(\n date?.getTime(),\n );\n\n useEffect(() => {\n ref.current.focus = () => {\n if (dateRef.current.invalid) {\n return dateRef.current.focus?.();\n }\n\n return timeRef.current.focus?.();\n };\n\n inputRef?.(ref.current);\n }, [inputRef]);\n\n return (\n <FormField\n label={field.displayName}\n required={field.validation?.required}\n dataHook={dataHook}\n >\n <Layout>\n <Cell span={6}>\n <DatePicker\n ref={(internalRef) => {\n dateRef.current.focus = () =>\n // TODO: PR to WSR needed to expose as public API\n // @ts-expect-error\n internalRef?.state?.inputRef?.focus?.();\n }}\n width=\"100%\"\n value={date}\n // onChange is triggered only when you have valid, non-empty value. and onValidate is triggered on every change so we use onValidate\n onChange={() => {}}\n onValidate={({ validationType, value: newValue, format }) => {\n if (validationType === 'valid') {\n const dateWithNewDate = date\n ? new Date(date)\n : new Date(newValue);\n const _value = new Date(newValue);\n dateWithNewDate.setFullYear(_value.getFullYear());\n dateWithNewDate.setMonth(_value.getMonth());\n dateWithNewDate.setDate(_value.getDate());\n controller.field.onChange(dateWithNewDate.toISOString());\n setDateValue(new Date(newValue).getDate());\n setDateStatusMessage('');\n dateRef.current.invalid = false;\n } else if (validationType === 'formatError' && newValue === '') {\n if (field.validation?.required) {\n setDateStatusMessage(\n t('cairo.fieldValidation.requiredField'),\n );\n dateRef.current.invalid = true;\n } else {\n setDateStatusMessage('');\n dateRef.current.invalid = false;\n }\n setDateValue(newValue);\n if (!timeValue) {\n controller.field.onChange(null);\n }\n } else {\n setDateStatusMessage(\n t('cairo.customFields.fieldType.date.invalid.value', {\n dateFormat: format ?? '',\n }),\n );\n dateRef.current.invalid = true;\n }\n\n ref.current.invalid =\n dateRef.current.invalid || timeRef.current.invalid;\n }}\n status={\n controller.fieldState.error || dateStatusMessage\n ? 'error'\n : undefined\n }\n statusMessage={controller.fieldState.error || dateStatusMessage}\n dataHook={`datetime-date-${field.id}`}\n />\n </Cell>\n <Cell span={6}>\n <TimeInput\n ref={(internalRef) => {\n timeRef.current.focus = () => internalRef?.focus();\n }}\n dataHook={`datetime-time-${field.id}`}\n value={date ?? null}\n status={\n controller.fieldState.error || timeStatusMessage\n ? 'error'\n : undefined\n }\n statusMessage={controller.fieldState.error || timeStatusMessage}\n onInvalid={() => {\n timeRef.current.invalid = true;\n setTimeStatusMessage(\n t('cairo.customFields.fieldType.dateAndTime.invalid.value'),\n );\n ref.current.invalid =\n dateRef.current.invalid || timeRef.current.invalid;\n }}\n onChange={({ date: newValue }) => {\n timeRef.current.invalid = false;\n ref.current.invalid =\n dateRef.current.invalid || timeRef.current.invalid;\n\n if (newValue) {\n const dateWithNewTime = date ? new Date(date) : newValue;\n dateWithNewTime.setHours(newValue.getHours());\n dateWithNewTime.setMinutes(newValue.getMinutes());\n dateWithNewTime.setSeconds(newValue.getSeconds());\n dateWithNewTime.setMilliseconds(newValue.getMilliseconds());\n controller.field.onChange(dateWithNewTime.toISOString());\n setTimeStatusMessage('');\n setDateStatusMessage('');\n } else {\n if (!newValue) {\n setTimeValue('');\n if (field.validation?.required) {\n setTimeStatusMessage(\n t('cairo.fieldValidation.requiredField'),\n );\n timeRef.current.invalid = true;\n } else {\n setTimeStatusMessage('');\n timeRef.current.invalid = false;\n }\n if (!ref.current.invalid) {\n if (!dateValue) {\n controller.field.onChange(null);\n }\n }\n }\n }\n }}\n />\n </Cell>\n </Layout>\n </FormField>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { FormField, ImageViewer } from '@wix/design-system';
|
|
3
|
-
import { useEntityPageContext, useIsMobile, useSelector, useWixPatternsContainer } from '@wix/patterns';
|
|
4
|
-
import { useController } from '@wix/patterns/form';
|
|
5
|
-
import { getImageUrl } from '../../../utils/media/getImageUrl';
|
|
6
3
|
import { dashboard } from '@wix/dashboard';
|
|
4
|
+
import { useIsMobile, useSelector, useWixPatternsContainer } from '@wix/patterns';
|
|
5
|
+
import { useController } from '@wix/patterns/form';
|
|
6
|
+
import { getImageUrl } from '../../utils/media/getImageUrl';
|
|
7
7
|
export const ImageInput = props => {
|
|
8
|
-
var
|
|
8
|
+
var _field$validation2, _controller$fieldStat;
|
|
9
9
|
const {
|
|
10
10
|
field,
|
|
11
|
-
dataHook
|
|
11
|
+
dataHook,
|
|
12
|
+
formControl,
|
|
13
|
+
data
|
|
12
14
|
} = props;
|
|
13
15
|
const {
|
|
14
16
|
translate: t,
|
|
@@ -16,7 +18,6 @@ export const ImageInput = props => {
|
|
|
16
18
|
} = useWixPatternsContainer();
|
|
17
19
|
useSelector(() => container.initTask.status);
|
|
18
20
|
const isMobile = useIsMobile();
|
|
19
|
-
const pageState = useEntityPageContext();
|
|
20
21
|
async function openMedia() {
|
|
21
22
|
try {
|
|
22
23
|
var _chosenMediaItems$ite;
|
|
@@ -32,8 +33,8 @@ export const ImageInput = props => {
|
|
|
32
33
|
}
|
|
33
34
|
const controller = useController({
|
|
34
35
|
name: (field == null ? void 0 : field.id) ?? '',
|
|
35
|
-
control:
|
|
36
|
-
defaultValue:
|
|
36
|
+
control: formControl,
|
|
37
|
+
defaultValue: data == null ? void 0 : data[(field == null ? void 0 : field.id) ?? ''],
|
|
37
38
|
rules: {
|
|
38
39
|
validate: value => {
|
|
39
40
|
var _field$validation;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","FormField","ImageViewer","dashboard","useIsMobile","useSelector","useWixPatternsContainer","useController","getImageUrl","ImageInput","props","_field$validation2","_controller$fieldStat","field","dataHook","formControl","data","translate","t","container","initTask","status","isMobile","openMedia","_chosenMediaItems$ite","chosenMediaItems","openMediaManager","multiSelect","category","newImage","items","media","image","controller","onChange","error","console","name","id","control","defaultValue","rules","validate","value","_field$validation","validation","required","undefined","imageUrl","createElement","label","displayName","fieldState","statusMessage","message","onAddImage","onUpdateImage","updateImageInfo","removeImageInfo","addImageInfo","height","width","fit","onRemoveImage"],"sources":["../../../../src/components/fields/ImageInput.tsx"],"sourcesContent":["import React from 'react';\nimport { FormField, ImageViewer } from '@wix/design-system';\nimport { dashboard } from '@wix/dashboard';\nimport {\n useIsMobile,\n useSelector,\n useWixPatternsContainer,\n} from '@wix/patterns';\nimport { useController } from '@wix/patterns/form';\nimport { getImageUrl } from '../../utils/media/getImageUrl';\nimport { BaseInputProps } from './types';\n\nexport interface ImageInputProps extends BaseInputProps<string> {}\n\nexport const ImageInput = (props: ImageInputProps) => {\n const { field, dataHook, formControl, data } = props;\n\n const { translate: t, ...container } = useWixPatternsContainer();\n useSelector(() => container.initTask.status);\n const isMobile = useIsMobile();\n\n async function openMedia() {\n try {\n const chosenMediaItems = await dashboard.openMediaManager({\n multiSelect: false,\n category: 'IMAGE',\n });\n\n const newImage = chosenMediaItems?.items[0]?.media?.image?.image;\n\n controller.field.onChange(newImage);\n } catch (error) {\n console.error('Error opening Media Manager or no files selected:', error);\n }\n }\n\n const controller = useController({\n name: field?.id ?? '',\n control: formControl,\n defaultValue: data?.[field?.id ?? ''],\n rules: {\n validate: (value) => {\n if (\n field.validation?.required &&\n (value === null || value === undefined || value === '')\n ) {\n return t('cairo.fieldValidation.requiredField');\n }\n\n return true;\n },\n },\n });\n\n const imageUrl =\n controller.field.value && getImageUrl(controller.field.value);\n\n return (\n <FormField\n label={field.displayName}\n required={field.validation?.required}\n status={controller.fieldState.error ? 'error' : undefined}\n statusMessage={controller.fieldState.error?.message}\n dataHook={dataHook}\n >\n <ImageViewer\n imageUrl={imageUrl}\n dataHook={`image-${field.id}`}\n onAddImage={isMobile ? undefined : () => openMedia()}\n onUpdateImage={isMobile ? undefined : () => openMedia()}\n updateImageInfo={t('cairo.replace-image.tooltip')}\n removeImageInfo={t('cairo.remove-image.tooltip')}\n addImageInfo={t('cairo.add-image.tooltip')}\n height=\"120px\"\n width=\"25%\"\n fit=\"cover\"\n onRemoveImage={() => controller.field.onChange(null)}\n />\n </FormField>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|