@wix/auto-patterns 1.7.0 → 1.9.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.js +10 -25
- package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.js.map +1 -1
- package/dist/cjs/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.js +11 -25
- package/dist/cjs/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.js.map +1 -1
- package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +3 -2
- package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +255 -77
- package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateInput.js +66 -21
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateInput.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateTime.js +100 -29
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateTime.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +9 -4
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js +83 -0
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +1 -0
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.js +34 -6
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.js +49 -6
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.js +48 -6
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.js +47 -34
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.js.map +1 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/types.js.map +1 -1
- package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGrid.js +8 -10
- package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGrid.js.map +1 -1
- package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js +84 -0
- package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -0
- package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js +8 -10
- package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
- package/dist/cjs/components/AutoPatternsTable/AutoPatternsTableContent.js +7 -8
- package/dist/cjs/components/AutoPatternsTable/AutoPatternsTableContent.js.map +1 -1
- package/dist/cjs/components/DynamicIcon.js +71 -0
- package/dist/cjs/components/DynamicIcon.js.map +1 -0
- package/dist/cjs/components/ModalRenderer.js +40 -0
- package/dist/cjs/components/ModalRenderer.js.map +1 -0
- package/dist/cjs/components/filters/DynamicCollectionFilter.js +63 -0
- package/dist/cjs/components/filters/DynamicCollectionFilter.js.map +1 -0
- package/dist/cjs/components/filters/StaticCollectionFilter.js +31 -0
- package/dist/cjs/components/filters/StaticCollectionFilter.js.map +1 -0
- package/dist/cjs/components/filters/index.js +9 -0
- package/dist/cjs/components/filters/index.js.map +1 -0
- package/dist/cjs/components/modals/actions/BulkDeleteModal.js +97 -0
- package/dist/cjs/components/modals/actions/BulkDeleteModal.js.map +1 -0
- package/dist/cjs/components/modals/actions/CreateModal.js +138 -0
- package/dist/cjs/components/modals/actions/CreateModal.js.map +1 -0
- package/dist/cjs/components/modals/actions/EditModal.js +140 -0
- package/dist/cjs/components/modals/actions/EditModal.js.map +1 -0
- package/dist/cjs/components/modals/actions/index.js +22 -0
- package/dist/cjs/components/modals/actions/index.js.map +1 -0
- package/dist/cjs/{collectionData/CollectionData.js → components/modals/actions/types.js} +1 -1
- package/dist/cjs/components/modals/actions/types.js.map +1 -0
- package/dist/cjs/components/modals/index.js +10 -0
- package/dist/cjs/components/modals/index.js.map +1 -0
- package/dist/cjs/{collectionData/cms/CmsCollectionData.js → dataSourceAdapters/cms/cmsAdapter.js} +58 -18
- package/dist/cjs/dataSourceAdapters/cms/cmsAdapter.js.map +1 -0
- package/dist/cjs/{collectionData → dataSourceAdapters}/cms/filterUtils.js +18 -11
- package/dist/cjs/dataSourceAdapters/cms/filterUtils.js.map +1 -0
- package/dist/cjs/dataSourceAdapters/cms/sortUtils.js.map +1 -0
- package/dist/cjs/dataSourceAdapters/constants.js.map +1 -0
- package/dist/cjs/dataSourceAdapters/factory.js +34 -0
- package/dist/cjs/dataSourceAdapters/factory.js.map +1 -0
- package/dist/cjs/exports/form.js +10 -0
- package/dist/cjs/exports/form.js.map +1 -0
- package/dist/cjs/hooks/index.js +18 -0
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/useActionCell.js +107 -0
- package/dist/cjs/hooks/useActionCell.js.map +1 -0
- package/dist/cjs/hooks/useActionsSDK.js +34 -0
- package/dist/cjs/hooks/useActionsSDK.js.map +1 -0
- package/dist/cjs/hooks/useAutoPatternsOptimisticActions.js +25 -0
- package/dist/cjs/hooks/useAutoPatternsOptimisticActions.js.map +1 -0
- package/dist/cjs/hooks/useBaseSDK.js +35 -0
- package/dist/cjs/hooks/useBaseSDK.js.map +1 -0
- package/dist/cjs/hooks/useBulkActionToolbar.js +86 -0
- package/dist/cjs/hooks/useBulkActionToolbar.js.map +1 -0
- package/dist/cjs/hooks/useCollectionPageActions.js +124 -0
- package/dist/cjs/hooks/useCollectionPageActions.js.map +1 -0
- package/dist/cjs/hooks/useColumns.js +90 -37
- package/dist/cjs/hooks/useColumns.js.map +1 -1
- package/dist/cjs/hooks/useCommonCollectionFeatures.js +24 -35
- package/dist/cjs/hooks/useCommonCollectionFeatures.js.map +1 -1
- package/dist/cjs/hooks/useEntityPageHeaderTexts.js +27 -0
- package/dist/cjs/hooks/useEntityPageHeaderTexts.js.map +1 -0
- package/dist/cjs/hooks/useFetchData.js +33 -9
- package/dist/cjs/hooks/useFetchData.js.map +1 -1
- package/dist/cjs/hooks/useFilters.js +83 -92
- package/dist/cjs/hooks/useFilters.js.map +1 -1
- package/dist/cjs/hooks/useGridFeatures.js +32 -21
- package/dist/cjs/hooks/useGridFeatures.js.map +1 -1
- package/dist/cjs/hooks/useNavigationUtils.js +55 -0
- package/dist/cjs/hooks/useNavigationUtils.js.map +1 -0
- package/dist/cjs/hooks/usePagePath.js +35 -0
- package/dist/cjs/hooks/usePagePath.js.map +1 -0
- package/dist/cjs/hooks/useTableFeatures.js +23 -15
- package/dist/cjs/hooks/useTableFeatures.js.map +1 -1
- package/dist/cjs/providers/AppConfigContext.js +33 -0
- package/dist/cjs/providers/AppConfigContext.js.map +1 -0
- package/dist/cjs/providers/ModalContext.js +58 -0
- package/dist/cjs/providers/ModalContext.js.map +1 -0
- package/dist/cjs/providers/OptimisticActionsContext.js +43 -0
- package/dist/cjs/providers/OptimisticActionsContext.js.map +1 -0
- package/dist/cjs/providers/PatternsWizardOverridesContext.js +1 -1
- package/dist/cjs/providers/PatternsWizardOverridesContext.js.map +1 -1
- package/dist/cjs/providers/RootAppProvider.js +48 -0
- package/dist/cjs/providers/RootAppProvider.js.map +1 -0
- package/dist/cjs/providers/SchemaContext.js +49 -5
- package/dist/cjs/providers/SchemaContext.js.map +1 -1
- package/dist/cjs/providers/SchemaRegistryContext.js +49 -0
- package/dist/cjs/providers/SchemaRegistryContext.js.map +1 -0
- package/dist/cjs/providers/index.js +22 -4
- package/dist/cjs/providers/index.js.map +1 -1
- package/dist/cjs/types/BaseSDK.js +4 -0
- package/dist/cjs/types/BaseSDK.js.map +1 -0
- package/dist/cjs/types/CollectionPageConfig.js.map +1 -1
- package/dist/cjs/types/EntityPageConfig.js.map +1 -1
- package/dist/cjs/types/actions/actionCell.js +4 -0
- package/dist/cjs/types/actions/actionCell.js.map +1 -0
- package/dist/cjs/types/actions/base.js +4 -0
- package/dist/cjs/types/actions/base.js.map +1 -0
- package/dist/cjs/types/actions/bulkActions.js +4 -0
- package/dist/cjs/types/actions/bulkActions.js.map +1 -0
- package/dist/cjs/types/actions/collectionPageActions.js +4 -0
- package/dist/cjs/types/actions/collectionPageActions.js.map +1 -0
- package/dist/cjs/types/actions/index.js +28 -0
- package/dist/cjs/types/actions/index.js.map +1 -0
- package/dist/cjs/types/index.js +18 -0
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/types.js.map +1 -1
- package/dist/cjs/utils/actions/bulkDeleteAction.js +26 -0
- package/dist/cjs/utils/actions/bulkDeleteAction.js.map +1 -0
- package/dist/cjs/utils/actions/createAction.js +38 -0
- package/dist/cjs/utils/actions/createAction.js.map +1 -0
- package/dist/cjs/utils/actions/customAction.js +23 -0
- package/dist/cjs/utils/actions/customAction.js.map +1 -0
- package/dist/cjs/utils/actions/customModalAction.js +22 -0
- package/dist/cjs/utils/actions/customModalAction.js.map +1 -0
- package/dist/cjs/utils/actions/deleteAction.js +63 -0
- package/dist/cjs/utils/actions/deleteAction.js.map +1 -0
- package/dist/cjs/utils/actions/index.js +46 -0
- package/dist/cjs/utils/actions/index.js.map +1 -0
- package/dist/cjs/utils/actions/resolveAction.js +27 -0
- package/dist/cjs/utils/actions/resolveAction.js.map +1 -0
- package/dist/cjs/utils/actions/types.js +4 -0
- package/dist/cjs/utils/actions/types.js.map +1 -0
- package/dist/cjs/utils/actions/updateAction.js +40 -0
- package/dist/cjs/utils/actions/updateAction.js.map +1 -0
- package/dist/cjs/utils/filterCreators.js +137 -0
- package/dist/cjs/utils/filterCreators.js.map +1 -0
- package/dist/cjs/utils/media/getImageUrl.js +22 -0
- package/dist/cjs/utils/media/getImageUrl.js.map +1 -0
- package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.js +6 -14
- package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.js.map +1 -1
- package/dist/esm/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.js +6 -5
- package/dist/esm/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.js.map +1 -1
- package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +1 -0
- package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +168 -40
- package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/DateInput.js +66 -21
- package/dist/esm/components/AutoPatternsEntityPage/Fields/DateInput.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/DateTime.js +96 -25
- package/dist/esm/components/AutoPatternsEntityPage/Fields/DateTime.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +9 -4
- package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js +64 -0
- package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +1 -0
- package/dist/esm/components/AutoPatternsEntityPage/Fields/LongText.js +33 -5
- package/dist/esm/components/AutoPatternsEntityPage/Fields/LongText.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/Number.js +48 -5
- package/dist/esm/components/AutoPatternsEntityPage/Fields/Number.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/ShortText.js +48 -6
- package/dist/esm/components/AutoPatternsEntityPage/Fields/ShortText.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/Url.js +43 -27
- package/dist/esm/components/AutoPatternsEntityPage/Fields/Url.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/types.js.map +1 -1
- package/dist/esm/components/AutoPatternsGrid/AutoPatternsGrid.js +5 -6
- package/dist/esm/components/AutoPatternsGrid/AutoPatternsGrid.js.map +1 -1
- package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js +47 -0
- package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -0
- package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js +5 -6
- package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
- package/dist/esm/components/AutoPatternsTable/AutoPatternsTableContent.js +9 -10
- package/dist/esm/components/AutoPatternsTable/AutoPatternsTableContent.js.map +1 -1
- package/dist/esm/components/DynamicIcon.js +33 -0
- package/dist/esm/components/DynamicIcon.js.map +1 -0
- package/dist/esm/components/ModalRenderer.js +25 -0
- package/dist/esm/components/ModalRenderer.js.map +1 -0
- package/dist/esm/components/filters/DynamicCollectionFilter.js +50 -0
- package/dist/esm/components/filters/DynamicCollectionFilter.js.map +1 -0
- package/dist/esm/components/filters/StaticCollectionFilter.js +18 -0
- package/dist/esm/components/filters/StaticCollectionFilter.js.map +1 -0
- package/dist/esm/components/filters/index.js +3 -0
- package/dist/esm/components/filters/index.js.map +1 -0
- package/dist/esm/components/modals/actions/BulkDeleteModal.js +59 -0
- package/dist/esm/components/modals/actions/BulkDeleteModal.js.map +1 -0
- package/dist/esm/components/modals/actions/CreateModal.js +80 -0
- package/dist/esm/components/modals/actions/CreateModal.js.map +1 -0
- package/dist/esm/components/modals/actions/EditModal.js +82 -0
- package/dist/esm/components/modals/actions/EditModal.js.map +1 -0
- package/dist/esm/components/modals/actions/index.js +4 -0
- package/dist/esm/components/modals/actions/index.js.map +1 -0
- package/dist/esm/components/modals/actions/types.js +2 -0
- package/dist/esm/components/modals/actions/types.js.map +1 -0
- package/dist/esm/components/modals/index.js +2 -0
- package/dist/esm/components/modals/index.js.map +1 -0
- package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js +132 -0
- package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js.map +1 -0
- package/dist/esm/{collectionData → dataSourceAdapters}/cms/filterUtils.js +18 -11
- package/dist/esm/dataSourceAdapters/cms/filterUtils.js.map +1 -0
- package/dist/esm/dataSourceAdapters/cms/sortUtils.js.map +1 -0
- package/dist/esm/dataSourceAdapters/constants.js.map +1 -0
- package/dist/esm/dataSourceAdapters/factory.js +30 -0
- package/dist/esm/dataSourceAdapters/factory.js.map +1 -0
- package/dist/esm/exports/form.js +2 -0
- package/dist/esm/exports/form.js.map +1 -0
- package/dist/esm/hooks/index.js +3 -0
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/hooks/useActionCell.js +103 -0
- package/dist/esm/hooks/useActionCell.js.map +1 -0
- package/dist/esm/hooks/useActionsSDK.js +30 -0
- package/dist/esm/hooks/useActionsSDK.js.map +1 -0
- package/dist/esm/hooks/useAutoPatternsOptimisticActions.js +23 -0
- package/dist/esm/hooks/useAutoPatternsOptimisticActions.js.map +1 -0
- package/dist/esm/hooks/useBaseSDK.js +30 -0
- package/dist/esm/hooks/useBaseSDK.js.map +1 -0
- package/dist/esm/hooks/useBulkActionToolbar.js +73 -0
- package/dist/esm/hooks/useBulkActionToolbar.js.map +1 -0
- package/dist/esm/hooks/useCollectionPageActions.js +101 -0
- package/dist/esm/hooks/useCollectionPageActions.js.map +1 -0
- package/dist/esm/hooks/useColumns.js +70 -38
- package/dist/esm/hooks/useColumns.js.map +1 -1
- package/dist/esm/hooks/useCommonCollectionFeatures.js +20 -24
- package/dist/esm/hooks/useCommonCollectionFeatures.js.map +1 -1
- package/dist/esm/hooks/useEntityPageHeaderTexts.js +23 -0
- package/dist/esm/hooks/useEntityPageHeaderTexts.js.map +1 -0
- package/dist/esm/hooks/useFetchData.js +34 -10
- package/dist/esm/hooks/useFetchData.js.map +1 -1
- package/dist/esm/hooks/useFilters.js +75 -85
- package/dist/esm/hooks/useFilters.js.map +1 -1
- package/dist/esm/hooks/useGridFeatures.js +32 -21
- package/dist/esm/hooks/useGridFeatures.js.map +1 -1
- package/dist/esm/hooks/useNavigationUtils.js +51 -0
- package/dist/esm/hooks/useNavigationUtils.js.map +1 -0
- package/dist/esm/hooks/usePagePath.js +30 -0
- package/dist/esm/hooks/usePagePath.js.map +1 -0
- package/dist/esm/hooks/useTableFeatures.js +20 -13
- package/dist/esm/hooks/useTableFeatures.js.map +1 -1
- package/dist/esm/providers/AppConfigContext.js +19 -0
- package/dist/esm/providers/AppConfigContext.js.map +1 -0
- package/dist/esm/providers/ModalContext.js +37 -0
- package/dist/esm/providers/ModalContext.js.map +1 -0
- package/dist/esm/providers/OptimisticActionsContext.js +29 -0
- package/dist/esm/providers/OptimisticActionsContext.js.map +1 -0
- package/dist/esm/providers/PatternsWizardOverridesContext.js.map +1 -1
- package/dist/esm/providers/RootAppProvider.js +15 -0
- package/dist/esm/providers/RootAppProvider.js.map +1 -0
- package/dist/esm/providers/SchemaContext.js +48 -4
- package/dist/esm/providers/SchemaContext.js.map +1 -1
- package/dist/esm/providers/SchemaRegistryContext.js +35 -0
- package/dist/esm/providers/SchemaRegistryContext.js.map +1 -0
- package/dist/esm/providers/index.js +4 -1
- package/dist/esm/providers/index.js.map +1 -1
- package/dist/esm/types/BaseSDK.js +2 -0
- package/dist/esm/types/BaseSDK.js.map +1 -0
- package/dist/esm/types/CollectionPageConfig.js.map +1 -1
- package/dist/esm/types/EntityPageConfig.js.map +1 -1
- package/dist/esm/types/actions/actionCell.js +2 -0
- package/dist/esm/types/actions/actionCell.js.map +1 -0
- package/dist/esm/types/actions/base.js +2 -0
- package/dist/esm/types/actions/base.js.map +1 -0
- package/dist/esm/types/actions/bulkActions.js +2 -0
- package/dist/esm/types/actions/bulkActions.js.map +1 -0
- package/dist/esm/types/actions/collectionPageActions.js +2 -0
- package/dist/esm/types/actions/collectionPageActions.js.map +1 -0
- package/dist/esm/types/actions/index.js +5 -0
- package/dist/esm/types/actions/index.js.map +1 -0
- package/dist/esm/types/index.js +3 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/types.js.map +1 -1
- package/dist/esm/utils/actions/bulkDeleteAction.js +21 -0
- package/dist/esm/utils/actions/bulkDeleteAction.js.map +1 -0
- package/dist/esm/utils/actions/createAction.js +33 -0
- package/dist/esm/utils/actions/createAction.js.map +1 -0
- package/dist/esm/utils/actions/customAction.js +18 -0
- package/dist/esm/utils/actions/customAction.js.map +1 -0
- package/dist/esm/utils/actions/customModalAction.js +17 -0
- package/dist/esm/utils/actions/customModalAction.js.map +1 -0
- package/dist/esm/utils/actions/deleteAction.js +58 -0
- package/dist/esm/utils/actions/deleteAction.js.map +1 -0
- package/dist/esm/utils/actions/index.js +9 -0
- package/dist/esm/utils/actions/index.js.map +1 -0
- package/dist/esm/utils/actions/resolveAction.js +13 -0
- package/dist/esm/utils/actions/resolveAction.js.map +1 -0
- package/dist/esm/utils/actions/types.js +2 -0
- package/dist/esm/utils/actions/types.js.map +1 -0
- package/dist/esm/utils/actions/updateAction.js +35 -0
- package/dist/esm/utils/actions/updateAction.js.map +1 -0
- package/dist/esm/utils/filterCreators.js +139 -0
- package/dist/esm/utils/filterCreators.js.map +1 -0
- package/dist/esm/utils/media/getImageUrl.js +16 -0
- package/dist/esm/utils/media/getImageUrl.js.map +1 -0
- package/dist/types/components/AutoPatternsApp/AutoPatternsApp.d.ts +2 -2
- package/dist/types/components/AutoPatternsApp/AutoPatternsApp.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/AutoPatternsEntityPage.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/Checkbox.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/DateInput.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/DateTime.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts +3 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/ImageInput.d.ts +6 -0
- package/dist/types/components/AutoPatternsEntityPage/Fields/ImageInput.d.ts.map +1 -0
- package/dist/types/components/AutoPatternsEntityPage/Fields/LongText.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/Number.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/ShortText.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/Url.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/types.d.ts +2 -0
- package/dist/types/components/AutoPatternsEntityPage/Fields/types.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/utils/dates.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsGrid/AutoPatternsGrid.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsGrid/AutoPatternsGridContent.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsRoute/AutoPatternsPage.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsRoute/AutoPatternsRoutes.d.ts +6 -0
- package/dist/types/components/AutoPatternsRoute/AutoPatternsRoutes.d.ts.map +1 -0
- package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsTable/AutoPatternsTableContent.d.ts.map +1 -1
- package/dist/types/components/DynamicIcon.d.ts +6 -0
- package/dist/types/components/DynamicIcon.d.ts.map +1 -0
- package/dist/types/components/ModalRenderer.d.ts +3 -0
- package/dist/types/components/ModalRenderer.d.ts.map +1 -0
- package/dist/types/components/filters/DynamicCollectionFilter.d.ts +12 -0
- package/dist/types/components/filters/DynamicCollectionFilter.d.ts.map +1 -0
- package/dist/types/components/filters/StaticCollectionFilter.d.ts +14 -0
- package/dist/types/components/filters/StaticCollectionFilter.d.ts.map +1 -0
- package/dist/types/components/filters/index.d.ts +3 -0
- package/dist/types/components/filters/index.d.ts.map +1 -0
- package/dist/types/components/modals/actions/BulkDeleteModal.d.ts +9 -0
- package/dist/types/components/modals/actions/BulkDeleteModal.d.ts.map +1 -0
- package/dist/types/components/modals/actions/CreateModal.d.ts +8 -0
- package/dist/types/components/modals/actions/CreateModal.d.ts.map +1 -0
- package/dist/types/components/modals/actions/EditModal.d.ts +11 -0
- package/dist/types/components/modals/actions/EditModal.d.ts.map +1 -0
- package/dist/types/components/modals/actions/index.d.ts +4 -0
- package/dist/types/components/modals/actions/index.d.ts.map +1 -0
- package/dist/types/components/modals/actions/types.d.ts +7 -0
- package/dist/types/components/modals/actions/types.d.ts.map +1 -0
- package/dist/types/components/modals/index.d.ts +2 -0
- package/dist/types/components/modals/index.d.ts.map +1 -0
- package/dist/types/dataSourceAdapters/cms/cmsAdapter.d.ts +14 -0
- package/dist/types/dataSourceAdapters/cms/cmsAdapter.d.ts.map +1 -0
- package/dist/types/{collectionData → dataSourceAdapters}/cms/filterUtils.d.ts +3 -2
- package/dist/types/dataSourceAdapters/cms/filterUtils.d.ts.map +1 -0
- package/dist/types/dataSourceAdapters/cms/sortUtils.d.ts.map +1 -0
- package/dist/types/dataSourceAdapters/constants.d.ts.map +1 -0
- package/dist/types/dataSourceAdapters/factory.d.ts +13 -0
- package/dist/types/dataSourceAdapters/factory.d.ts.map +1 -0
- package/dist/types/exports/form.d.ts +2 -0
- package/dist/types/exports/form.d.ts.map +1 -0
- package/dist/types/hooks/index.d.ts +3 -0
- package/dist/types/hooks/index.d.ts.map +1 -1
- package/dist/types/hooks/useActionCell.d.ts +9 -0
- package/dist/types/hooks/useActionCell.d.ts.map +1 -0
- package/dist/types/hooks/useActionsSDK.d.ts +6 -0
- package/dist/types/hooks/useActionsSDK.d.ts.map +1 -0
- package/dist/types/hooks/useAutoPatternsOptimisticActions.d.ts +3 -0
- package/dist/types/hooks/useAutoPatternsOptimisticActions.d.ts.map +1 -0
- package/dist/types/hooks/useBaseSDK.d.ts +3 -0
- package/dist/types/hooks/useBaseSDK.d.ts.map +1 -0
- package/dist/types/hooks/useBulkActionToolbar.d.ts +10 -0
- package/dist/types/hooks/useBulkActionToolbar.d.ts.map +1 -0
- package/dist/types/hooks/useCollectionPageActions.d.ts +10 -0
- package/dist/types/hooks/useCollectionPageActions.d.ts.map +1 -0
- package/dist/types/hooks/useColumns.d.ts.map +1 -1
- package/dist/types/hooks/useCommonCollectionFeatures.d.ts +9 -9
- package/dist/types/hooks/useCommonCollectionFeatures.d.ts.map +1 -1
- package/dist/types/hooks/useEmptyStates.d.ts.map +1 -1
- package/dist/types/hooks/useEntityPageHeaderTexts.d.ts +18 -0
- package/dist/types/hooks/useEntityPageHeaderTexts.d.ts.map +1 -0
- package/dist/types/hooks/useFetchData.d.ts +6 -2
- package/dist/types/hooks/useFetchData.d.ts.map +1 -1
- package/dist/types/hooks/useFilters.d.ts +5 -1
- package/dist/types/hooks/useFilters.d.ts.map +1 -1
- package/dist/types/hooks/useGridFeatures.d.ts +3 -8
- package/dist/types/hooks/useGridFeatures.d.ts.map +1 -1
- package/dist/types/hooks/useNavigationUtils.d.ts +10 -0
- package/dist/types/hooks/useNavigationUtils.d.ts.map +1 -0
- package/dist/types/hooks/usePagePath.d.ts +5 -0
- package/dist/types/hooks/usePagePath.d.ts.map +1 -0
- package/dist/types/hooks/useTableFeatures.d.ts +3 -7
- package/dist/types/hooks/useTableFeatures.d.ts.map +1 -1
- package/dist/types/providers/AppConfigContext.d.ts +8 -0
- package/dist/types/providers/AppConfigContext.d.ts.map +1 -0
- package/dist/types/providers/ModalContext.d.ts +20 -0
- package/dist/types/providers/ModalContext.d.ts.map +1 -0
- package/dist/types/providers/OptimisticActionsContext.d.ts +12 -0
- package/dist/types/providers/OptimisticActionsContext.d.ts.map +1 -0
- package/dist/types/providers/PatternsWizardOverridesContext.d.ts +5 -4
- package/dist/types/providers/PatternsWizardOverridesContext.d.ts.map +1 -1
- package/dist/types/providers/RootAppProvider.d.ts +7 -0
- package/dist/types/providers/RootAppProvider.d.ts.map +1 -0
- package/dist/types/providers/SchemaContext.d.ts.map +1 -1
- package/dist/types/providers/SchemaRegistryContext.d.ts +13 -0
- package/dist/types/providers/SchemaRegistryContext.d.ts.map +1 -0
- package/dist/types/providers/index.d.ts +4 -1
- package/dist/types/providers/index.d.ts.map +1 -1
- package/dist/types/types/BaseSDK.d.ts +12 -0
- package/dist/types/types/BaseSDK.d.ts.map +1 -0
- package/dist/types/types/CollectionPageConfig.d.ts +37 -32
- package/dist/types/types/CollectionPageConfig.d.ts.map +1 -1
- package/dist/types/types/EntityPageConfig.d.ts +51 -2
- package/dist/types/types/EntityPageConfig.d.ts.map +1 -1
- package/dist/types/types/actions/actionCell.d.ts +24 -0
- package/dist/types/types/actions/actionCell.d.ts.map +1 -0
- package/dist/types/types/actions/base.d.ts +102 -0
- package/dist/types/types/actions/base.d.ts.map +1 -0
- package/dist/types/types/actions/bulkActions.d.ts +28 -0
- package/dist/types/types/actions/bulkActions.d.ts.map +1 -0
- package/dist/types/types/actions/collectionPageActions.d.ts +27 -0
- package/dist/types/types/actions/collectionPageActions.d.ts.map +1 -0
- package/dist/types/types/actions/index.d.ts +5 -0
- package/dist/types/types/actions/index.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +3 -0
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/types/types.d.ts +47 -12
- package/dist/types/types/types.d.ts.map +1 -1
- package/dist/types/utils/actions/bulkDeleteAction.d.ts +7 -0
- package/dist/types/utils/actions/bulkDeleteAction.d.ts.map +1 -0
- package/dist/types/utils/actions/createAction.d.ts +7 -0
- package/dist/types/utils/actions/createAction.d.ts.map +1 -0
- package/dist/types/utils/actions/customAction.d.ts +3 -0
- package/dist/types/utils/actions/customAction.d.ts.map +1 -0
- package/dist/types/utils/actions/customModalAction.d.ts +5 -0
- package/dist/types/utils/actions/customModalAction.d.ts.map +1 -0
- package/dist/types/utils/actions/deleteAction.d.ts +7 -0
- package/dist/types/utils/actions/deleteAction.d.ts.map +1 -0
- package/dist/types/utils/actions/index.d.ts +9 -0
- package/dist/types/utils/actions/index.d.ts.map +1 -0
- package/dist/types/utils/actions/resolveAction.d.ts +11 -0
- package/dist/types/utils/actions/resolveAction.d.ts.map +1 -0
- package/dist/types/utils/actions/types.d.ts +61 -0
- package/dist/types/utils/actions/types.d.ts.map +1 -0
- package/dist/types/utils/actions/updateAction.d.ts +7 -0
- package/dist/types/utils/actions/updateAction.d.ts.map +1 -0
- package/dist/types/utils/filterCreators.d.ts +48 -0
- package/dist/types/utils/filterCreators.d.ts.map +1 -0
- package/dist/types/utils/media/getImageUrl.d.ts +3 -0
- package/dist/types/utils/media/getImageUrl.d.ts.map +1 -0
- package/form/package.json +6 -0
- package/package.json +11 -8
- package/dist/cjs/collectionData/CollectionData.js.map +0 -1
- package/dist/cjs/collectionData/CollectionDataFactory.js +0 -12
- package/dist/cjs/collectionData/CollectionDataFactory.js.map +0 -1
- package/dist/cjs/collectionData/SchemaFactory.js +0 -12
- package/dist/cjs/collectionData/SchemaFactory.js.map +0 -1
- package/dist/cjs/collectionData/cms/CmsCollectionData.js.map +0 -1
- package/dist/cjs/collectionData/cms/filterUtils.js.map +0 -1
- package/dist/cjs/collectionData/cms/sortUtils.js.map +0 -1
- package/dist/cjs/collectionData/constants.js.map +0 -1
- package/dist/cjs/collectionData/index.js +0 -10
- package/dist/cjs/collectionData/index.js.map +0 -1
- package/dist/cjs/providers/CollectionDataContext.js +0 -44
- package/dist/cjs/providers/CollectionDataContext.js.map +0 -1
- package/dist/cjs/utils/filters.js +0 -53
- package/dist/cjs/utils/filters.js.map +0 -1
- package/dist/esm/collectionData/CollectionData.js +0 -2
- package/dist/esm/collectionData/CollectionData.js.map +0 -1
- package/dist/esm/collectionData/CollectionDataFactory.js +0 -8
- package/dist/esm/collectionData/CollectionDataFactory.js.map +0 -1
- package/dist/esm/collectionData/SchemaFactory.js +0 -8
- package/dist/esm/collectionData/SchemaFactory.js.map +0 -1
- package/dist/esm/collectionData/cms/CmsCollectionData.js +0 -91
- package/dist/esm/collectionData/cms/CmsCollectionData.js.map +0 -1
- package/dist/esm/collectionData/cms/filterUtils.js.map +0 -1
- package/dist/esm/collectionData/cms/sortUtils.js.map +0 -1
- package/dist/esm/collectionData/constants.js.map +0 -1
- package/dist/esm/collectionData/index.js +0 -2
- package/dist/esm/collectionData/index.js.map +0 -1
- package/dist/esm/providers/CollectionDataContext.js +0 -30
- package/dist/esm/providers/CollectionDataContext.js.map +0 -1
- package/dist/esm/utils/filters.js +0 -49
- package/dist/esm/utils/filters.js.map +0 -1
- package/dist/types/collectionData/CollectionData.d.ts +0 -9
- package/dist/types/collectionData/CollectionData.d.ts.map +0 -1
- package/dist/types/collectionData/CollectionDataFactory.d.ts +0 -4
- package/dist/types/collectionData/CollectionDataFactory.d.ts.map +0 -1
- package/dist/types/collectionData/SchemaFactory.d.ts +0 -3
- package/dist/types/collectionData/SchemaFactory.d.ts.map +0 -1
- package/dist/types/collectionData/cms/CmsCollectionData.d.ts +0 -8
- package/dist/types/collectionData/cms/CmsCollectionData.d.ts.map +0 -1
- package/dist/types/collectionData/cms/filterUtils.d.ts.map +0 -1
- package/dist/types/collectionData/cms/sortUtils.d.ts.map +0 -1
- package/dist/types/collectionData/constants.d.ts.map +0 -1
- package/dist/types/collectionData/index.d.ts +0 -2
- package/dist/types/collectionData/index.d.ts.map +0 -1
- package/dist/types/providers/CollectionDataContext.d.ts +0 -12
- package/dist/types/providers/CollectionDataContext.d.ts.map +0 -1
- package/dist/types/utils/filters.d.ts +0 -7
- package/dist/types/utils/filters.d.ts.map +0 -1
- /package/dist/cjs/{collectionData → dataSourceAdapters}/cms/sortUtils.js +0 -0
- /package/dist/cjs/{collectionData → dataSourceAdapters}/constants.js +0 -0
- /package/dist/esm/{collectionData → dataSourceAdapters}/cms/sortUtils.js +0 -0
- /package/dist/esm/{collectionData → dataSourceAdapters}/constants.js +0 -0
- /package/dist/types/{collectionData → dataSourceAdapters}/cms/sortUtils.d.ts +0 -0
- /package/dist/types/{collectionData → dataSourceAdapters}/constants.d.ts +0 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { useCallback } from 'react';
|
|
2
|
+
import { usePatternsNavigate } from '@wix/patterns';
|
|
3
|
+
import { useAppConfigContext, useSchemaRegistry } from '../providers';
|
|
4
|
+
import { generatePath } from 'react-router-dom';
|
|
5
|
+
import { usePagePath } from './usePagePath';
|
|
6
|
+
export const useNavigation = () => {
|
|
7
|
+
const {
|
|
8
|
+
navigateToEntityPage: navigateToEntityPagePatterns
|
|
9
|
+
} = usePatternsNavigate();
|
|
10
|
+
const appConfig = useAppConfigContext();
|
|
11
|
+
const {
|
|
12
|
+
getSchema
|
|
13
|
+
} = useSchemaRegistry();
|
|
14
|
+
const {
|
|
15
|
+
getPagePath
|
|
16
|
+
} = usePagePath(appConfig);
|
|
17
|
+
const navigateToEntityPage = useCallback(_ref => {
|
|
18
|
+
var _route$params;
|
|
19
|
+
let {
|
|
20
|
+
item,
|
|
21
|
+
entityPageId
|
|
22
|
+
} = _ref;
|
|
23
|
+
const entityPage = entityPageId ? appConfig.pages.find(page => page.id === entityPageId) : null;
|
|
24
|
+
if (!entityPage) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const {
|
|
28
|
+
route,
|
|
29
|
+
collectionId
|
|
30
|
+
} = entityPage.entityPage;
|
|
31
|
+
const schema = getSchema(collectionId);
|
|
32
|
+
if (route.path && (_route$params = route.params) != null && _route$params.id && schema) {
|
|
33
|
+
const path = generatePath(route.path, {
|
|
34
|
+
[route.params.id]: (item == null ? void 0 : item[schema.idField]) ?? ''
|
|
35
|
+
});
|
|
36
|
+
navigateToEntityPagePatterns({
|
|
37
|
+
path,
|
|
38
|
+
entity: item
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}, [appConfig, navigateToEntityPagePatterns, getSchema]);
|
|
42
|
+
const getParentPagePath = useCallback(parentPageId => {
|
|
43
|
+
return getPagePath(parentPageId);
|
|
44
|
+
}, [getPagePath]);
|
|
45
|
+
return {
|
|
46
|
+
navigateToEntityPage,
|
|
47
|
+
getParentPagePath,
|
|
48
|
+
getPagePath
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=useNavigationUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useCallback","usePatternsNavigate","useAppConfigContext","useSchemaRegistry","generatePath","usePagePath","useNavigation","navigateToEntityPage","navigateToEntityPagePatterns","appConfig","getSchema","getPagePath","_ref","_route$params","item","entityPageId","entityPage","pages","find","page","id","route","collectionId","schema","path","params","idField","entity","getParentPagePath","parentPageId"],"sources":["../../../src/hooks/useNavigationUtils.tsx"],"sourcesContent":["import { useCallback } from 'react';\nimport { usePatternsNavigate } from '@wix/patterns';\nimport { useAppConfigContext, useSchemaRegistry } from '../providers';\nimport { generatePath } from 'react-router-dom';\nimport { EntityPageConfig } from '../types';\nimport { usePagePath } from './usePagePath';\n\nexport type NavigateToEntityPageFunc = (args: {\n item: any;\n entityPageId?: string;\n}) => void;\n\nexport const useNavigation = () => {\n const { navigateToEntityPage: navigateToEntityPagePatterns } =\n usePatternsNavigate();\n const appConfig = useAppConfigContext();\n const { getSchema } = useSchemaRegistry();\n const { getPagePath } = usePagePath(appConfig);\n\n const navigateToEntityPage = useCallback(\n ({ item, entityPageId }) => {\n const entityPage = entityPageId\n ? appConfig.pages.find((page) => page.id === entityPageId)\n : null;\n\n if (!entityPage) {\n return;\n }\n\n const { route, collectionId } = entityPage.entityPage as EntityPageConfig;\n const schema = getSchema(collectionId);\n if (route.path && route.params?.id && schema) {\n const path = generatePath(route.path, {\n [route.params.id]: item?.[schema.idField] ?? '',\n });\n navigateToEntityPagePatterns({\n path,\n entity: item,\n });\n }\n },\n [appConfig, navigateToEntityPagePatterns, getSchema],\n );\n\n const getParentPagePath = useCallback(\n (parentPageId?: string): string | undefined => {\n return getPagePath(parentPageId);\n },\n [getPagePath],\n );\n\n return {\n navigateToEntityPage,\n getParentPagePath,\n getPagePath,\n };\n};\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,OAAO;AACnC,SAASC,mBAAmB,QAAQ,eAAe;AACnD,SAASC,mBAAmB,EAAEC,iBAAiB,QAAQ,cAAc;AACrE,SAASC,YAAY,QAAQ,kBAAkB;AAE/C,SAASC,WAAW,QAAQ,eAAe;AAO3C,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EACjC,MAAM;IAAEC,oBAAoB,EAAEC;EAA6B,CAAC,GAC1DP,mBAAmB,CAAC,CAAC;EACvB,MAAMQ,SAAS,GAAGP,mBAAmB,CAAC,CAAC;EACvC,MAAM;IAAEQ;EAAU,CAAC,GAAGP,iBAAiB,CAAC,CAAC;EACzC,MAAM;IAAEQ;EAAY,CAAC,GAAGN,WAAW,CAACI,SAAS,CAAC;EAE9C,MAAMF,oBAAoB,GAAGP,WAAW,CACtCY,IAAA,IAA4B;IAAA,IAAAC,aAAA;IAAA,IAA3B;MAAEC,IAAI;MAAEC;IAAa,CAAC,GAAAH,IAAA;IACrB,MAAMI,UAAU,GAAGD,YAAY,GAC3BN,SAAS,CAACQ,KAAK,CAACC,IAAI,CAAEC,IAAI,IAAKA,IAAI,CAACC,EAAE,KAAKL,YAAY,CAAC,GACxD,IAAI;IAER,IAAI,CAACC,UAAU,EAAE;MACf;IACF;IAEA,MAAM;MAAEK,KAAK;MAAEC;IAAa,CAAC,GAAGN,UAAU,CAACA,UAA8B;IACzE,MAAMO,MAAM,GAAGb,SAAS,CAACY,YAAY,CAAC;IACtC,IAAID,KAAK,CAACG,IAAI,KAAAX,aAAA,GAAIQ,KAAK,CAACI,MAAM,aAAZZ,aAAA,CAAcO,EAAE,IAAIG,MAAM,EAAE;MAC5C,MAAMC,IAAI,GAAGpB,YAAY,CAACiB,KAAK,CAACG,IAAI,EAAE;QACpC,CAACH,KAAK,CAACI,MAAM,CAACL,EAAE,GAAG,CAAAN,IAAI,oBAAJA,IAAI,CAAGS,MAAM,CAACG,OAAO,CAAC,KAAI;MAC/C,CAAC,CAAC;MACFlB,4BAA4B,CAAC;QAC3BgB,IAAI;QACJG,MAAM,EAAEb;MACV,CAAC,CAAC;IACJ;EACF,CAAC,EACD,CAACL,SAAS,EAAED,4BAA4B,EAAEE,SAAS,CACrD,CAAC;EAED,MAAMkB,iBAAiB,GAAG5B,WAAW,CAClC6B,YAAqB,IAAyB;IAC7C,OAAOlB,WAAW,CAACkB,YAAY,CAAC;EAClC,CAAC,EACD,CAAClB,WAAW,CACd,CAAC;EAED,OAAO;IACLJ,oBAAoB;IACpBqB,iBAAiB;IACjBjB;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { useCallback } from 'react';
|
|
2
|
+
export const usePagePath = configuration => {
|
|
3
|
+
const getPagePath = useCallback(pageId => {
|
|
4
|
+
var _currentPage$collecti, _currentPage$entityPa;
|
|
5
|
+
if (!pageId) {
|
|
6
|
+
return '/';
|
|
7
|
+
}
|
|
8
|
+
const currentPage = configuration.pages.find(page => page.id === pageId);
|
|
9
|
+
let path;
|
|
10
|
+
switch (currentPage == null ? void 0 : currentPage.type) {
|
|
11
|
+
case 'collectionPage':
|
|
12
|
+
path = (_currentPage$collecti = currentPage.collectionPage) == null ? void 0 : _currentPage$collecti.route.path;
|
|
13
|
+
break;
|
|
14
|
+
case 'entityPage':
|
|
15
|
+
path = (_currentPage$entityPa = currentPage.entityPage) == null ? void 0 : _currentPage$entityPa.route.path;
|
|
16
|
+
break;
|
|
17
|
+
default:
|
|
18
|
+
path = undefined;
|
|
19
|
+
}
|
|
20
|
+
if (process.env.NODE_ENV === 'test') {
|
|
21
|
+
// in test mode we sometime override pages so we need to return the path or '/'
|
|
22
|
+
return path || '/';
|
|
23
|
+
}
|
|
24
|
+
return path;
|
|
25
|
+
}, [configuration]);
|
|
26
|
+
return {
|
|
27
|
+
getPagePath
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=usePagePath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useCallback","usePagePath","configuration","getPagePath","pageId","_currentPage$collecti","_currentPage$entityPa","currentPage","pages","find","page","id","path","type","collectionPage","route","entityPage","undefined","process","env","NODE_ENV"],"sources":["../../../src/hooks/usePagePath.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport { AppConfig } from '../types';\n\nexport const usePagePath = (configuration: AppConfig) => {\n const getPagePath = useCallback(\n (pageId?: string) => {\n if (!pageId) {\n return '/';\n }\n\n const currentPage = configuration.pages.find(\n (page) => page.id === pageId,\n );\n\n let path;\n switch (currentPage?.type) {\n case 'collectionPage':\n path = currentPage.collectionPage?.route.path;\n break;\n case 'entityPage':\n path = currentPage.entityPage?.route.path;\n break;\n default:\n path = undefined;\n }\n\n if (process.env.NODE_ENV === 'test') {\n // in test mode we sometime override pages so we need to return the path or '/'\n return path || '/';\n }\n\n return path;\n },\n [configuration],\n );\n\n return { getPagePath };\n};\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,OAAO;AAGnC,OAAO,MAAMC,WAAW,GAAIC,aAAwB,IAAK;EACvD,MAAMC,WAAW,GAAGH,WAAW,CAC5BI,MAAe,IAAK;IAAA,IAAAC,qBAAA,EAAAC,qBAAA;IACnB,IAAI,CAACF,MAAM,EAAE;MACX,OAAO,GAAG;IACZ;IAEA,MAAMG,WAAW,GAAGL,aAAa,CAACM,KAAK,CAACC,IAAI,CACzCC,IAAI,IAAKA,IAAI,CAACC,EAAE,KAAKP,MACxB,CAAC;IAED,IAAIQ,IAAI;IACR,QAAQL,WAAW,oBAAXA,WAAW,CAAEM,IAAI;MACvB,KAAK,gBAAgB;QACnBD,IAAI,IAAAP,qBAAA,GAAGE,WAAW,CAACO,cAAc,qBAA1BT,qBAAA,CAA4BU,KAAK,CAACH,IAAI;QAC7C;MACF,KAAK,YAAY;QACfA,IAAI,IAAAN,qBAAA,GAAGC,WAAW,CAACS,UAAU,qBAAtBV,qBAAA,CAAwBS,KAAK,CAACH,IAAI;QACzC;MACF;QACEA,IAAI,GAAGK,SAAS;IACpB;IAEA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;MACnC;MACA,OAAOR,IAAI,IAAI,GAAG;IACpB;IAEA,OAAOA,IAAI;EACb,CAAC,EACD,CAACV,aAAa,CAChB,CAAC;EAED,OAAO;IAAEC;EAAY,CAAC;AACxB,CAAC","ignoreList":[]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { useMemo } from 'react';
|
|
2
2
|
import { useColumns } from './useColumns';
|
|
3
3
|
import { useFetchData } from './useFetchData';
|
|
4
4
|
import { CustomColumns, useTableCollection } from '@wix/patterns';
|
|
5
5
|
import { useCommonCollectionFeatures } from './useCommonCollectionFeatures';
|
|
6
6
|
import { useFilters } from './useFilters';
|
|
7
|
-
import {
|
|
7
|
+
import { useSchema } from '../providers/SchemaContext';
|
|
8
|
+
import { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';
|
|
8
9
|
export const useTableFeatures = configuration => {
|
|
9
10
|
var _configuration$custom;
|
|
10
11
|
const {
|
|
@@ -14,25 +15,25 @@ export const useTableFeatures = configuration => {
|
|
|
14
15
|
disableAutoSelectAllCount,
|
|
15
16
|
selectionConsistencyMode
|
|
16
17
|
} = configuration.collection;
|
|
17
|
-
const commonFeatures = useCommonCollectionFeatures({
|
|
18
|
-
...configuration
|
|
19
|
-
});
|
|
20
18
|
const {
|
|
21
19
|
filterComponent,
|
|
22
|
-
filtersObject
|
|
20
|
+
filtersObject,
|
|
21
|
+
filtersMapping
|
|
23
22
|
} = useFilters(configuration.filters);
|
|
24
23
|
const columns = useColumns(configuration.columns);
|
|
24
|
+
const visibleFieldIds = useMemo(() => configuration.columns.map(column => column.id), [configuration]);
|
|
25
25
|
const {
|
|
26
26
|
fetchData
|
|
27
|
-
} = useFetchData(
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
27
|
+
} = useFetchData({
|
|
28
|
+
collectionConfig: configuration.collection,
|
|
29
|
+
visibleFieldIds,
|
|
30
|
+
filtersMapping
|
|
31
|
+
});
|
|
32
|
+
const schema = useSchema();
|
|
32
33
|
const state = useTableCollection({
|
|
33
34
|
queryName: `${collectionId}`,
|
|
34
|
-
itemKey: item => item[
|
|
35
|
-
itemName: item => item[
|
|
35
|
+
itemKey: item => item[schema.idField],
|
|
36
|
+
itemName: item => item[schema.displayField],
|
|
36
37
|
filters: filtersObject,
|
|
37
38
|
toExtendedFields: item => item.extendedFields,
|
|
38
39
|
fetchErrorMessage: _ref => {
|
|
@@ -47,11 +48,17 @@ export const useTableFeatures = configuration => {
|
|
|
47
48
|
disableAutoSelectAllCount,
|
|
48
49
|
selectionConsistencyMode
|
|
49
50
|
});
|
|
51
|
+
const optimisticActions = useAutoPatternsOptimisticActions(collectionId, state.collection);
|
|
52
|
+
const commonFeatures = useCommonCollectionFeatures({
|
|
53
|
+
...configuration,
|
|
54
|
+
optimisticActions
|
|
55
|
+
});
|
|
50
56
|
return {
|
|
51
57
|
...commonFeatures,
|
|
52
58
|
state,
|
|
53
59
|
columns,
|
|
54
60
|
filters: filterComponent,
|
|
61
|
+
optimisticActions,
|
|
55
62
|
customColumns: (_configuration$custom = configuration.customColumns) != null && _configuration$custom.enabled ? /*#__PURE__*/React.createElement(CustomColumns, null) : undefined
|
|
56
63
|
};
|
|
57
64
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useColumns","useFetchData","CustomColumns","useTableCollection","useCommonCollectionFeatures","useFilters","
|
|
1
|
+
{"version":3,"names":["React","useMemo","useColumns","useFetchData","CustomColumns","useTableCollection","useCommonCollectionFeatures","useFilters","useSchema","useAutoPatternsOptimisticActions","useTableFeatures","configuration","_configuration$custom","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","filters","columns","visibleFieldIds","map","column","id","fetchData","collectionConfig","schema","state","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","_ref","err","String","optimisticActions","commonFeatures","customColumns","enabled","createElement","undefined"],"sources":["../../../src/hooks/useTableFeatures.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { TableConfig } from '../types';\nimport { useColumns } from './useColumns';\nimport { useFetchData } from './useFetchData';\nimport { CustomColumns, useTableCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useSchema } from '../providers/SchemaContext';\nimport { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';\n\nexport const useTableFeatures = (configuration: TableConfig) => {\n const {\n collectionId,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n } = configuration.collection;\n\n const { filterComponent, filtersObject, filtersMapping } = useFilters(\n configuration.filters,\n );\n const columns = useColumns(configuration.columns);\n const visibleFieldIds = useMemo(\n () => configuration.columns.map((column) => column.id),\n [configuration],\n );\n\n const { fetchData } = useFetchData({\n collectionConfig: configuration.collection,\n visibleFieldIds,\n filtersMapping,\n });\n\n const schema = useSchema();\n\n const state = useTableCollection<any>({\n queryName: `${collectionId}`,\n itemKey: (item) => item[schema.idField],\n itemName: (item) => item[schema.displayField],\n filters: filtersObject,\n toExtendedFields: (item) => item.extendedFields,\n fetchErrorMessage: ({ err }) => String(err),\n fetchData,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n });\n\n const optimisticActions = useAutoPatternsOptimisticActions(\n collectionId,\n state.collection,\n );\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n optimisticActions,\n });\n\n return {\n ...commonFeatures,\n state,\n columns,\n filters: filterComponent,\n optimisticActions,\n customColumns: configuration.customColumns?.enabled ? (\n <CustomColumns />\n ) : undefined,\n };\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AAEtC,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,eAAe;AACjE,SAASC,2BAA2B,QAAQ,+BAA+B;AAC3E,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,4BAA4B;AACtD,SAASC,gCAAgC,QAAQ,oCAAoC;AAErF,OAAO,MAAMC,gBAAgB,GAAIC,aAA0B,IAAK;EAAA,IAAAC,qBAAA;EAC9D,MAAM;IACJC,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,GAAGN,aAAa,CAACO,UAAU;EAE5B,MAAM;IAAEC,eAAe;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAGd,UAAU,CACnEI,aAAa,CAACW,OAChB,CAAC;EACD,MAAMC,OAAO,GAAGrB,UAAU,CAACS,aAAa,CAACY,OAAO,CAAC;EACjD,MAAMC,eAAe,GAAGvB,OAAO,CAC7B,MAAMU,aAAa,CAACY,OAAO,CAACE,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAACC,EAAE,CAAC,EACtD,CAAChB,aAAa,CAChB,CAAC;EAED,MAAM;IAAEiB;EAAU,CAAC,GAAGzB,YAAY,CAAC;IACjC0B,gBAAgB,EAAElB,aAAa,CAACO,UAAU;IAC1CM,eAAe;IACfH;EACF,CAAC,CAAC;EAEF,MAAMS,MAAM,GAAGtB,SAAS,CAAC,CAAC;EAE1B,MAAMuB,KAAK,GAAG1B,kBAAkB,CAAM;IACpC2B,SAAS,EAAE,GAAGnB,YAAY,EAAE;IAC5BoB,OAAO,EAAGC,IAAI,IAAKA,IAAI,CAACJ,MAAM,CAACK,OAAO,CAAC;IACvCC,QAAQ,EAAGF,IAAI,IAAKA,IAAI,CAACJ,MAAM,CAACO,YAAY,CAAC;IAC7Cf,OAAO,EAAEF,aAAa;IACtBkB,gBAAgB,EAAGJ,IAAI,IAAKA,IAAI,CAACK,cAAc;IAC/CC,iBAAiB,EAAEC,IAAA;MAAA,IAAC;QAAEC;MAAI,CAAC,GAAAD,IAAA;MAAA,OAAKE,MAAM,CAACD,GAAG,CAAC;IAAA;IAC3Cd,SAAS;IACTd,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,CAAC;EAEF,MAAM2B,iBAAiB,GAAGnC,gCAAgC,CACxDI,YAAY,EACZkB,KAAK,CAACb,UACR,CAAC;EAED,MAAM2B,cAAc,GAAGvC,2BAA2B,CAAC;IACjD,GAAGK,aAAa;IAChBiC;EACF,CAAC,CAAC;EAEF,OAAO;IACL,GAAGC,cAAc;IACjBd,KAAK;IACLR,OAAO;IACPD,OAAO,EAAEH,eAAe;IACxByB,iBAAiB;IACjBE,aAAa,EAAE,CAAAlC,qBAAA,GAAAD,aAAa,CAACmC,aAAa,aAA3BlC,qBAAA,CAA6BmC,OAAO,gBACjD/C,KAAA,CAAAgD,aAAA,CAAC5C,aAAa,MAAE,CAAC,GACf6C;EACN,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React, { createContext, useContext } from 'react';
|
|
2
|
+
const AppConfigContext = /*#__PURE__*/createContext(null);
|
|
3
|
+
export const AppConfigProvider = _ref => {
|
|
4
|
+
let {
|
|
5
|
+
appConfig,
|
|
6
|
+
children
|
|
7
|
+
} = _ref;
|
|
8
|
+
return /*#__PURE__*/React.createElement(AppConfigContext.Provider, {
|
|
9
|
+
value: appConfig
|
|
10
|
+
}, children);
|
|
11
|
+
};
|
|
12
|
+
export const useAppConfigContext = () => {
|
|
13
|
+
const context = useContext(AppConfigContext);
|
|
14
|
+
if (!context) {
|
|
15
|
+
throw new Error('useAppConfigContext must be used within AppConfigProvider');
|
|
16
|
+
}
|
|
17
|
+
return context;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=AppConfigContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","createContext","useContext","AppConfigContext","AppConfigProvider","_ref","appConfig","children","createElement","Provider","value","useAppConfigContext","context","Error"],"sources":["../../../src/providers/AppConfigContext.tsx"],"sourcesContent":["import React, { createContext, ReactNode, useContext } from 'react';\nimport { AppConfig } from '../types';\n\nconst AppConfigContext = createContext<AppConfig | null>(null);\n\nexport const AppConfigProvider = ({\n appConfig,\n children,\n}: {\n appConfig: AppConfig;\n children: ReactNode;\n}) => {\n return (\n <AppConfigContext.Provider value={appConfig}>\n {children}\n </AppConfigContext.Provider>\n );\n};\n\nexport const useAppConfigContext = () => {\n const context = useContext(AppConfigContext);\n if (!context) {\n throw new Error(\n 'useAppConfigContext must be used within AppConfigProvider',\n );\n }\n return context;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAaC,UAAU,QAAQ,OAAO;AAGnE,MAAMC,gBAAgB,gBAAGF,aAAa,CAAmB,IAAI,CAAC;AAE9D,OAAO,MAAMG,iBAAiB,GAAGC,IAAA,IAM3B;EAAA,IAN4B;IAChCC,SAAS;IACTC;EAIF,CAAC,GAAAF,IAAA;EACC,oBACEL,KAAA,CAAAQ,aAAA,CAACL,gBAAgB,CAACM,QAAQ;IAACC,KAAK,EAAEJ;EAAU,GACzCC,QACwB,CAAC;AAEhC,CAAC;AAED,OAAO,MAAMI,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,OAAO,GAAGV,UAAU,CAACC,gBAAgB,CAAC;EAC5C,IAAI,CAACS,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CACb,2DACF,CAAC;EACH;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ModalRenderer } from '../components/ModalRenderer';
|
|
2
|
+
import React, { createContext, useCallback, useContext, useState } from 'react';
|
|
3
|
+
const ModalContext = /*#__PURE__*/createContext(null);
|
|
4
|
+
export const ModalProvider = _ref => {
|
|
5
|
+
let {
|
|
6
|
+
children
|
|
7
|
+
} = _ref;
|
|
8
|
+
const [modal, setModal] = useState({
|
|
9
|
+
id: null
|
|
10
|
+
});
|
|
11
|
+
const openModal = useCallback((id, props) => {
|
|
12
|
+
setModal({
|
|
13
|
+
id,
|
|
14
|
+
props
|
|
15
|
+
});
|
|
16
|
+
}, []);
|
|
17
|
+
const closeModal = useCallback(() => {
|
|
18
|
+
setModal({
|
|
19
|
+
id: null
|
|
20
|
+
});
|
|
21
|
+
}, []);
|
|
22
|
+
return /*#__PURE__*/React.createElement(ModalContext.Provider, {
|
|
23
|
+
value: {
|
|
24
|
+
modal,
|
|
25
|
+
openModal,
|
|
26
|
+
closeModal
|
|
27
|
+
}
|
|
28
|
+
}, children, /*#__PURE__*/React.createElement(ModalRenderer, null));
|
|
29
|
+
};
|
|
30
|
+
export const useModalContext = () => {
|
|
31
|
+
const context = useContext(ModalContext);
|
|
32
|
+
if (!context) {
|
|
33
|
+
throw new Error('useModalContext must be used within ModalProvider');
|
|
34
|
+
}
|
|
35
|
+
return context;
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=ModalContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ModalRenderer","React","createContext","useCallback","useContext","useState","ModalContext","ModalProvider","_ref","children","modal","setModal","id","openModal","props","closeModal","createElement","Provider","value","useModalContext","context","Error"],"sources":["../../../src/providers/ModalContext.tsx"],"sourcesContent":["import { ModalRenderer } from '../components/ModalRenderer';\nimport * as modals from '../components/modals';\n\nimport React, {\n createContext,\n useCallback,\n useContext,\n useState,\n ReactNode,\n} from 'react';\n\nexport type KnownModals = typeof modals;\nexport type KnownModalId = keyof KnownModals;\nexport type ModalId = KnownModalId | (string & {});\n\ninterface ModalState {\n id: ModalId | null;\n props?: Record<string, any>;\n}\n\ninterface ModalContextValue {\n modal: ModalState;\n openModal: (id: ModalId, props?: Record<string, any>) => void;\n closeModal: () => void;\n}\n\nconst ModalContext = createContext<ModalContextValue | null>(null);\n\nexport const ModalProvider = ({ children }: { children: ReactNode }) => {\n const [modal, setModal] = useState<ModalState>({ id: null });\n\n const openModal = useCallback((id: ModalId, props?: Record<string, any>) => {\n setModal({ id, props });\n }, []);\n\n const closeModal = useCallback(() => {\n setModal({ id: null });\n }, []);\n\n return (\n <ModalContext.Provider value={{ modal, openModal, closeModal }}>\n {children}\n <ModalRenderer />\n </ModalContext.Provider>\n );\n};\n\nexport const useModalContext = () => {\n const context = useContext(ModalContext);\n if (!context) {\n throw new Error('useModalContext must be used within ModalProvider');\n }\n return context;\n};\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,6BAA6B;AAG3D,OAAOC,KAAK,IACVC,aAAa,EACbC,WAAW,EACXC,UAAU,EACVC,QAAQ,QAEH,OAAO;AAiBd,MAAMC,YAAY,gBAAGJ,aAAa,CAA2B,IAAI,CAAC;AAElE,OAAO,MAAMK,aAAa,GAAGC,IAAA,IAA2C;EAAA,IAA1C;IAAEC;EAAkC,CAAC,GAAAD,IAAA;EACjE,MAAM,CAACE,KAAK,EAAEC,QAAQ,CAAC,GAAGN,QAAQ,CAAa;IAAEO,EAAE,EAAE;EAAK,CAAC,CAAC;EAE5D,MAAMC,SAAS,GAAGV,WAAW,CAAC,CAACS,EAAW,EAAEE,KAA2B,KAAK;IAC1EH,QAAQ,CAAC;MAAEC,EAAE;MAAEE;IAAM,CAAC,CAAC;EACzB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,UAAU,GAAGZ,WAAW,CAAC,MAAM;IACnCQ,QAAQ,CAAC;MAAEC,EAAE,EAAE;IAAK,CAAC,CAAC;EACxB,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEX,KAAA,CAAAe,aAAA,CAACV,YAAY,CAACW,QAAQ;IAACC,KAAK,EAAE;MAAER,KAAK;MAAEG,SAAS;MAAEE;IAAW;EAAE,GAC5DN,QAAQ,eACTR,KAAA,CAAAe,aAAA,CAAChB,aAAa,MAAE,CACK,CAAC;AAE5B,CAAC;AAED,OAAO,MAAMmB,eAAe,GAAGA,CAAA,KAAM;EACnC,MAAMC,OAAO,GAAGhB,UAAU,CAACE,YAAY,CAAC;EACxC,IAAI,CAACc,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,mDAAmD,CAAC;EACtE;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React, { createContext, useCallback, useContext, useState } from 'react';
|
|
2
|
+
const OptimisticActionsContext = /*#__PURE__*/createContext(undefined);
|
|
3
|
+
export const OptimisticActionsProvider = _ref => {
|
|
4
|
+
let {
|
|
5
|
+
children
|
|
6
|
+
} = _ref;
|
|
7
|
+
const [optimisticActionsMap, setOptimisticActionsMap] = useState({});
|
|
8
|
+
const registerOptimisticActions = useCallback((collectionId, actions) => {
|
|
9
|
+
setOptimisticActionsMap(prev => ({
|
|
10
|
+
...prev,
|
|
11
|
+
[collectionId]: actions
|
|
12
|
+
}));
|
|
13
|
+
}, []);
|
|
14
|
+
const getOptimisticActions = useCallback(collectionId => optimisticActionsMap[collectionId], [optimisticActionsMap]);
|
|
15
|
+
return /*#__PURE__*/React.createElement(OptimisticActionsContext.Provider, {
|
|
16
|
+
value: {
|
|
17
|
+
registerOptimisticActions,
|
|
18
|
+
getOptimisticActions
|
|
19
|
+
}
|
|
20
|
+
}, children);
|
|
21
|
+
};
|
|
22
|
+
export const useOptimisticActionsContext = () => {
|
|
23
|
+
const context = useContext(OptimisticActionsContext);
|
|
24
|
+
if (!context) {
|
|
25
|
+
throw new Error('useOptimisticActionsContext must be used within an OptimisticActionsProvider');
|
|
26
|
+
}
|
|
27
|
+
return context;
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=OptimisticActionsContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","createContext","useCallback","useContext","useState","OptimisticActionsContext","undefined","OptimisticActionsProvider","_ref","children","optimisticActionsMap","setOptimisticActionsMap","registerOptimisticActions","collectionId","actions","prev","getOptimisticActions","createElement","Provider","value","useOptimisticActionsContext","context","Error"],"sources":["../../../src/providers/OptimisticActionsContext.tsx"],"sourcesContent":["import React, { createContext, useCallback, useContext, useState } from 'react';\nimport { CollectionOptimisticActions } from '@wix/patterns';\n\ninterface OptimisticActionsContextValue {\n registerOptimisticActions: (\n collectionId: string,\n actions: CollectionOptimisticActions<any, any>,\n ) => void;\n getOptimisticActions: (\n collectionId: string,\n ) => CollectionOptimisticActions<any, any>;\n}\n\nconst OptimisticActionsContext = createContext<\n OptimisticActionsContextValue | undefined\n>(undefined);\n\nexport const OptimisticActionsProvider: React.FC<{\n children: React.ReactNode;\n}> = ({ children }) => {\n const [optimisticActionsMap, setOptimisticActionsMap] = useState<\n Record<string, CollectionOptimisticActions<any, any>>\n >({});\n\n const registerOptimisticActions = useCallback(\n (collectionId: string, actions: CollectionOptimisticActions<any, any>) => {\n setOptimisticActionsMap((prev) => ({\n ...prev,\n [collectionId]: actions,\n }));\n },\n [],\n );\n\n const getOptimisticActions = useCallback(\n (collectionId: string) => optimisticActionsMap[collectionId],\n [optimisticActionsMap],\n );\n\n return (\n <OptimisticActionsContext.Provider\n value={{ registerOptimisticActions, getOptimisticActions }}\n >\n {children}\n </OptimisticActionsContext.Provider>\n );\n};\n\nexport const useOptimisticActionsContext = () => {\n const context = useContext(OptimisticActionsContext);\n if (!context) {\n throw new Error(\n 'useOptimisticActionsContext must be used within an OptimisticActionsProvider',\n );\n }\n return context;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,WAAW,EAAEC,UAAU,EAAEC,QAAQ,QAAQ,OAAO;AAa/E,MAAMC,wBAAwB,gBAAGJ,aAAa,CAE5CK,SAAS,CAAC;AAEZ,OAAO,MAAMC,yBAEX,GAAGC,IAAA,IAAkB;EAAA,IAAjB;IAAEC;EAAS,CAAC,GAAAD,IAAA;EAChB,MAAM,CAACE,oBAAoB,EAAEC,uBAAuB,CAAC,GAAGP,QAAQ,CAE9D,CAAC,CAAC,CAAC;EAEL,MAAMQ,yBAAyB,GAAGV,WAAW,CAC3C,CAACW,YAAoB,EAAEC,OAA8C,KAAK;IACxEH,uBAAuB,CAAEI,IAAI,KAAM;MACjC,GAAGA,IAAI;MACP,CAACF,YAAY,GAAGC;IAClB,CAAC,CAAC,CAAC;EACL,CAAC,EACD,EACF,CAAC;EAED,MAAME,oBAAoB,GAAGd,WAAW,CACrCW,YAAoB,IAAKH,oBAAoB,CAACG,YAAY,CAAC,EAC5D,CAACH,oBAAoB,CACvB,CAAC;EAED,oBACEV,KAAA,CAAAiB,aAAA,CAACZ,wBAAwB,CAACa,QAAQ;IAChCC,KAAK,EAAE;MAAEP,yBAAyB;MAAEI;IAAqB;EAAE,GAE1DP,QACgC,CAAC;AAExC,CAAC;AAED,OAAO,MAAMW,2BAA2B,GAAGA,CAAA,KAAM;EAC/C,MAAMC,OAAO,GAAGlB,UAAU,CAACE,wBAAwB,CAAC;EACpD,IAAI,CAACgB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CACb,8EACF,CAAC;EACH;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","useContext","PatternsWizardOverridesContext","undefined","PatternsWizardOverridesProvider","_ref","children","value","createElement","Provider","usePatternsWizardOverridesContext"],"sources":["../../../src/providers/PatternsWizardOverridesContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode } from 'react';\nimport {
|
|
1
|
+
{"version":3,"names":["React","createContext","useContext","PatternsWizardOverridesContext","undefined","PatternsWizardOverridesProvider","_ref","children","value","createElement","Provider","usePatternsWizardOverridesContext"],"sources":["../../../src/providers/PatternsWizardOverridesContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode } from 'react';\nimport { CustomComponentProps, IColumnValue } from '../types';\nimport { CollectionConfig } from '@wix/patterns';\nimport { CustomActionParams, ResolvedAction } from '../utils/actions/types';\n\nexport interface PatternsWizardOverridesContextProps {\n actions?: Record<string, (props: CustomActionParams) => ResolvedAction>;\n columns?: Record<string, (props: IColumnValue<any>) => void>;\n modals?: Record<string, React.FC<any>>;\n HeaderAddon?: React.FC;\n emptyState?: Record<string, () => void>;\n fetchData?: Record<string, CollectionConfig<any, any>['fetchData']>;\n components?: Record<string, React.FC<CustomComponentProps>>;\n}\n\nconst PatternsWizardOverridesContext = createContext<\n PatternsWizardOverridesContextProps | undefined\n>(undefined);\n\nexport const PatternsWizardOverridesProvider: React.FC<{\n children: ReactNode;\n value: PatternsWizardOverridesContextProps;\n}> = ({ children, value }) => {\n return (\n <PatternsWizardOverridesContext.Provider value={value}>\n {children}\n </PatternsWizardOverridesContext.Provider>\n );\n};\n\nexport const usePatternsWizardOverridesContext = ():\n | PatternsWizardOverridesContextProps\n | undefined => {\n return useContext(PatternsWizardOverridesContext);\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,QAAmB,OAAO;AAenE,MAAMC,8BAA8B,gBAAGF,aAAa,CAElDG,SAAS,CAAC;AAEZ,OAAO,MAAMC,+BAGX,GAAGC,IAAA,IAAyB;EAAA,IAAxB;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAAF,IAAA;EACvB,oBACEN,KAAA,CAAAS,aAAA,CAACN,8BAA8B,CAACO,QAAQ;IAACF,KAAK,EAAEA;EAAM,GACnDD,QACsC,CAAC;AAE9C,CAAC;AAED,OAAO,MAAMI,iCAAiC,GAAGA,CAAA,KAEhC;EACf,OAAOT,UAAU,CAACC,8BAA8B,CAAC;AACnD,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { AppConfigProvider } from './AppConfigContext';
|
|
3
|
+
import { ModalProvider } from './ModalContext';
|
|
4
|
+
import { SchemaRegistryProvider } from './SchemaRegistryContext';
|
|
5
|
+
import { OptimisticActionsProvider } from './OptimisticActionsContext';
|
|
6
|
+
export const RootAppProvider = _ref => {
|
|
7
|
+
let {
|
|
8
|
+
appConfig,
|
|
9
|
+
children
|
|
10
|
+
} = _ref;
|
|
11
|
+
return /*#__PURE__*/React.createElement(AppConfigProvider, {
|
|
12
|
+
appConfig: appConfig
|
|
13
|
+
}, /*#__PURE__*/React.createElement(SchemaRegistryProvider, null, /*#__PURE__*/React.createElement(OptimisticActionsProvider, null, /*#__PURE__*/React.createElement(ModalProvider, null, children))));
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=RootAppProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","AppConfigProvider","ModalProvider","SchemaRegistryProvider","OptimisticActionsProvider","RootAppProvider","_ref","appConfig","children","createElement"],"sources":["../../../src/providers/RootAppProvider.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { AppConfig } from '../types';\nimport { AppConfigProvider } from './AppConfigContext';\nimport { ModalProvider } from './ModalContext';\nimport { SchemaRegistryProvider } from './SchemaRegistryContext';\nimport { OptimisticActionsProvider } from './OptimisticActionsContext';\n\nexport const RootAppProvider = ({\n appConfig,\n children,\n}: {\n appConfig: AppConfig;\n children: ReactNode;\n}) => {\n return (\n <AppConfigProvider appConfig={appConfig}>\n <SchemaRegistryProvider>\n <OptimisticActionsProvider>\n <ModalProvider>{children}</ModalProvider>\n </OptimisticActionsProvider>\n </SchemaRegistryProvider>\n </AppConfigProvider>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAqB,OAAO;AAExC,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,SAASC,aAAa,QAAQ,gBAAgB;AAC9C,SAASC,sBAAsB,QAAQ,yBAAyB;AAChE,SAASC,yBAAyB,QAAQ,4BAA4B;AAEtE,OAAO,MAAMC,eAAe,GAAGC,IAAA,IAMzB;EAAA,IAN0B;IAC9BC,SAAS;IACTC;EAIF,CAAC,GAAAF,IAAA;EACC,oBACEN,KAAA,CAAAS,aAAA,CAACR,iBAAiB;IAACM,SAAS,EAAEA;EAAU,gBACtCP,KAAA,CAAAS,aAAA,CAACN,sBAAsB,qBACrBH,KAAA,CAAAS,aAAA,CAACL,yBAAyB,qBACxBJ,KAAA,CAAAS,aAAA,CAACP,aAAa,QAAEM,QAAwB,CACf,CACL,CACP,CAAC;AAExB,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { createContext, useContext, useEffect, useState } from 'react';
|
|
2
|
-
import { getSchema } from '../
|
|
2
|
+
import { getSchema } from '../dataSourceAdapters/factory';
|
|
3
|
+
import { useSchemaRegistry } from './SchemaRegistryContext';
|
|
3
4
|
const SchemaContext = /*#__PURE__*/createContext(null);
|
|
4
5
|
export const SchemaProvider = _ref => {
|
|
5
6
|
let {
|
|
@@ -7,13 +8,56 @@ export const SchemaProvider = _ref => {
|
|
|
7
8
|
entityTypeSource,
|
|
8
9
|
children
|
|
9
10
|
} = _ref;
|
|
11
|
+
const {
|
|
12
|
+
getSchema: getSchemaFromRegistry,
|
|
13
|
+
addSchema: addSchemaToRegistry
|
|
14
|
+
} = useSchemaRegistry();
|
|
10
15
|
const [schema, setSchema] = useState(null);
|
|
16
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
11
17
|
useEffect(() => {
|
|
12
|
-
|
|
18
|
+
const fetchReferencedSchemas = async referencedSchema => {
|
|
19
|
+
const referencedCollectionIds = new Set();
|
|
20
|
+
Object.values(referencedSchema.fields).forEach(field => {
|
|
21
|
+
if (field && field.type === 'REFERENCE' && field.referenceMetadata) {
|
|
22
|
+
const {
|
|
23
|
+
referencedCollectionId
|
|
24
|
+
} = field.referenceMetadata;
|
|
25
|
+
if (referencedCollectionId && !getSchemaFromRegistry(referencedCollectionId)) {
|
|
26
|
+
referencedCollectionIds.add(referencedCollectionId);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
if (referencedCollectionIds.size === 0) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const fetchPromises = Array.from(referencedCollectionIds).map(async refCollectionId => {
|
|
34
|
+
try {
|
|
35
|
+
const refSchema = await getSchema(refCollectionId, entityTypeSource);
|
|
36
|
+
addSchemaToRegistry(refCollectionId, refSchema);
|
|
37
|
+
await fetchReferencedSchemas(refSchema);
|
|
38
|
+
} catch (error) {
|
|
39
|
+
console.error(`Error fetching referenced schema ${refCollectionId}:`, error);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
await Promise.all(fetchPromises);
|
|
43
|
+
};
|
|
44
|
+
const cachedSchema = getSchemaFromRegistry(collectionId);
|
|
45
|
+
if (cachedSchema) {
|
|
46
|
+
setSchema(cachedSchema);
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
setIsLoading(true);
|
|
50
|
+
getSchema(collectionId, entityTypeSource).then(async fetchedSchema => {
|
|
51
|
+
setSchema(fetchedSchema);
|
|
52
|
+
addSchemaToRegistry(collectionId, fetchedSchema);
|
|
53
|
+
await fetchReferencedSchemas(fetchedSchema);
|
|
54
|
+
}).catch(error => {
|
|
13
55
|
console.error('Error fetching schema config:', error);
|
|
56
|
+
}).finally(() => {
|
|
57
|
+
setIsLoading(false);
|
|
14
58
|
});
|
|
15
|
-
}, [collectionId, entityTypeSource]);
|
|
16
|
-
if (!schema) {
|
|
59
|
+
}, [collectionId, entityTypeSource, addSchemaToRegistry, getSchemaFromRegistry]);
|
|
60
|
+
if (!schema || isLoading) {
|
|
17
61
|
return null;
|
|
18
62
|
}
|
|
19
63
|
return /*#__PURE__*/React.createElement(SchemaContext.Provider, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","useContext","useEffect","useState","getSchema","SchemaContext","SchemaProvider","_ref","collectionId","entityTypeSource","children","schema","setSchema","
|
|
1
|
+
{"version":3,"names":["React","createContext","useContext","useEffect","useState","getSchema","useSchemaRegistry","SchemaContext","SchemaProvider","_ref","collectionId","entityTypeSource","children","getSchemaFromRegistry","addSchema","addSchemaToRegistry","schema","setSchema","isLoading","setIsLoading","fetchReferencedSchemas","referencedSchema","referencedCollectionIds","Set","Object","values","fields","forEach","field","type","referenceMetadata","referencedCollectionId","add","size","fetchPromises","Array","from","map","refCollectionId","refSchema","error","console","Promise","all","cachedSchema","then","fetchedSchema","catch","finally","createElement","Provider","value","useSchema","context","Error"],"sources":["../../../src/providers/SchemaContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useEffect,\n useState,\n ReactNode,\n} from 'react';\n\nimport { SchemaConfig } from '../types';\nimport { getSchema } from '../dataSourceAdapters/factory';\nimport { useSchemaRegistry } from './SchemaRegistryContext';\n\nconst SchemaContext = createContext<SchemaConfig | null>(null);\n\ninterface SchemaProviderProps {\n collectionId: string;\n entityTypeSource: string;\n children: ReactNode;\n}\n\nexport const SchemaProvider = ({\n collectionId,\n entityTypeSource,\n children,\n}: SchemaProviderProps) => {\n const { getSchema: getSchemaFromRegistry, addSchema: addSchemaToRegistry } =\n useSchemaRegistry();\n const [schema, setSchema] = useState<SchemaConfig | null>(null);\n const [isLoading, setIsLoading] = useState<boolean>(false);\n\n useEffect(() => {\n const fetchReferencedSchemas = async (referencedSchema: SchemaConfig) => {\n const referencedCollectionIds = new Set<string>();\n\n Object.values(referencedSchema.fields).forEach((field) => {\n if (field && field.type === 'REFERENCE' && field.referenceMetadata) {\n const { referencedCollectionId } = field.referenceMetadata;\n if (\n referencedCollectionId &&\n !getSchemaFromRegistry(referencedCollectionId)\n ) {\n referencedCollectionIds.add(referencedCollectionId);\n }\n }\n });\n\n if (referencedCollectionIds.size === 0) {\n return;\n }\n\n const fetchPromises = Array.from(referencedCollectionIds).map(\n async (refCollectionId) => {\n try {\n const refSchema = await getSchema(\n refCollectionId,\n entityTypeSource,\n );\n\n addSchemaToRegistry(refCollectionId, refSchema);\n\n await fetchReferencedSchemas(refSchema);\n } catch (error) {\n console.error(\n `Error fetching referenced schema ${refCollectionId}:`,\n error,\n );\n }\n },\n );\n\n await Promise.all(fetchPromises);\n };\n\n const cachedSchema = getSchemaFromRegistry(collectionId);\n if (cachedSchema) {\n setSchema(cachedSchema);\n return;\n }\n\n setIsLoading(true);\n getSchema(collectionId, entityTypeSource)\n .then(async (fetchedSchema) => {\n setSchema(fetchedSchema);\n addSchemaToRegistry(collectionId, fetchedSchema);\n\n await fetchReferencedSchemas(fetchedSchema);\n })\n .catch((error) => {\n console.error('Error fetching schema config:', error);\n })\n .finally(() => {\n setIsLoading(false);\n });\n }, [\n collectionId,\n entityTypeSource,\n addSchemaToRegistry,\n getSchemaFromRegistry,\n ]);\n\n if (!schema || isLoading) {\n return null;\n }\n\n return (\n <SchemaContext.Provider value={schema}>{children}</SchemaContext.Provider>\n );\n};\n\nexport const useSchema = (): SchemaConfig => {\n const context = useContext(SchemaContext);\n if (!context) {\n throw new Error('useSchema must be used within a SchemaProvider');\n }\n return context;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IACVC,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,QAAQ,QAEH,OAAO;AAGd,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,iBAAiB,QAAQ,yBAAyB;AAE3D,MAAMC,aAAa,gBAAGN,aAAa,CAAsB,IAAI,CAAC;AAQ9D,OAAO,MAAMO,cAAc,GAAGC,IAAA,IAIH;EAAA,IAJI;IAC7BC,YAAY;IACZC,gBAAgB;IAChBC;EACmB,CAAC,GAAAH,IAAA;EACpB,MAAM;IAAEJ,SAAS,EAAEQ,qBAAqB;IAAEC,SAAS,EAAEC;EAAoB,CAAC,GACxET,iBAAiB,CAAC,CAAC;EACrB,MAAM,CAACU,MAAM,EAAEC,SAAS,CAAC,GAAGb,QAAQ,CAAsB,IAAI,CAAC;EAC/D,MAAM,CAACc,SAAS,EAAEC,YAAY,CAAC,GAAGf,QAAQ,CAAU,KAAK,CAAC;EAE1DD,SAAS,CAAC,MAAM;IACd,MAAMiB,sBAAsB,GAAG,MAAOC,gBAA8B,IAAK;MACvE,MAAMC,uBAAuB,GAAG,IAAIC,GAAG,CAAS,CAAC;MAEjDC,MAAM,CAACC,MAAM,CAACJ,gBAAgB,CAACK,MAAM,CAAC,CAACC,OAAO,CAAEC,KAAK,IAAK;QACxD,IAAIA,KAAK,IAAIA,KAAK,CAACC,IAAI,KAAK,WAAW,IAAID,KAAK,CAACE,iBAAiB,EAAE;UAClE,MAAM;YAAEC;UAAuB,CAAC,GAAGH,KAAK,CAACE,iBAAiB;UAC1D,IACEC,sBAAsB,IACtB,CAAClB,qBAAqB,CAACkB,sBAAsB,CAAC,EAC9C;YACAT,uBAAuB,CAACU,GAAG,CAACD,sBAAsB,CAAC;UACrD;QACF;MACF,CAAC,CAAC;MAEF,IAAIT,uBAAuB,CAACW,IAAI,KAAK,CAAC,EAAE;QACtC;MACF;MAEA,MAAMC,aAAa,GAAGC,KAAK,CAACC,IAAI,CAACd,uBAAuB,CAAC,CAACe,GAAG,CAC3D,MAAOC,eAAe,IAAK;QACzB,IAAI;UACF,MAAMC,SAAS,GAAG,MAAMlC,SAAS,CAC/BiC,eAAe,EACf3B,gBACF,CAAC;UAEDI,mBAAmB,CAACuB,eAAe,EAAEC,SAAS,CAAC;UAE/C,MAAMnB,sBAAsB,CAACmB,SAAS,CAAC;QACzC,CAAC,CAAC,OAAOC,KAAK,EAAE;UACdC,OAAO,CAACD,KAAK,CACX,oCAAoCF,eAAe,GAAG,EACtDE,KACF,CAAC;QACH;MACF,CACF,CAAC;MAED,MAAME,OAAO,CAACC,GAAG,CAACT,aAAa,CAAC;IAClC,CAAC;IAED,MAAMU,YAAY,GAAG/B,qBAAqB,CAACH,YAAY,CAAC;IACxD,IAAIkC,YAAY,EAAE;MAChB3B,SAAS,CAAC2B,YAAY,CAAC;MACvB;IACF;IAEAzB,YAAY,CAAC,IAAI,CAAC;IAClBd,SAAS,CAACK,YAAY,EAAEC,gBAAgB,CAAC,CACtCkC,IAAI,CAAC,MAAOC,aAAa,IAAK;MAC7B7B,SAAS,CAAC6B,aAAa,CAAC;MACxB/B,mBAAmB,CAACL,YAAY,EAAEoC,aAAa,CAAC;MAEhD,MAAM1B,sBAAsB,CAAC0B,aAAa,CAAC;IAC7C,CAAC,CAAC,CACDC,KAAK,CAAEP,KAAK,IAAK;MAChBC,OAAO,CAACD,KAAK,CAAC,+BAA+B,EAAEA,KAAK,CAAC;IACvD,CAAC,CAAC,CACDQ,OAAO,CAAC,MAAM;MACb7B,YAAY,CAAC,KAAK,CAAC;IACrB,CAAC,CAAC;EACN,CAAC,EAAE,CACDT,YAAY,EACZC,gBAAgB,EAChBI,mBAAmB,EACnBF,qBAAqB,CACtB,CAAC;EAEF,IAAI,CAACG,MAAM,IAAIE,SAAS,EAAE;IACxB,OAAO,IAAI;EACb;EAEA,oBACElB,KAAA,CAAAiD,aAAA,CAAC1C,aAAa,CAAC2C,QAAQ;IAACC,KAAK,EAAEnC;EAAO,GAAEJ,QAAiC,CAAC;AAE9E,CAAC;AAED,OAAO,MAAMwC,SAAS,GAAGA,CAAA,KAAoB;EAC3C,MAAMC,OAAO,GAAGnD,UAAU,CAACK,aAAa,CAAC;EACzC,IAAI,CAAC8C,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,gDAAgD,CAAC;EACnE;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React, { createContext, useContext, useState, useCallback, useMemo } from 'react';
|
|
2
|
+
const SchemaRegistryContext = /*#__PURE__*/createContext({
|
|
3
|
+
getSchema: () => undefined,
|
|
4
|
+
addSchema: () => {}
|
|
5
|
+
});
|
|
6
|
+
export const SchemaRegistryProvider = _ref => {
|
|
7
|
+
let {
|
|
8
|
+
children
|
|
9
|
+
} = _ref;
|
|
10
|
+
const [registry, setRegistry] = useState({});
|
|
11
|
+
const addSchema = useCallback((collectionId, schema) => {
|
|
12
|
+
setRegistry(prevRegistry => ({
|
|
13
|
+
...prevRegistry,
|
|
14
|
+
[collectionId]: schema
|
|
15
|
+
}));
|
|
16
|
+
}, []);
|
|
17
|
+
const getSchema = useCallback(collectionId => {
|
|
18
|
+
return registry == null ? void 0 : registry[collectionId];
|
|
19
|
+
}, [registry]);
|
|
20
|
+
const contextValue = useMemo(() => ({
|
|
21
|
+
getSchema,
|
|
22
|
+
addSchema
|
|
23
|
+
}), [getSchema, addSchema]);
|
|
24
|
+
return /*#__PURE__*/React.createElement(SchemaRegistryContext.Provider, {
|
|
25
|
+
value: contextValue
|
|
26
|
+
}, children);
|
|
27
|
+
};
|
|
28
|
+
export const useSchemaRegistry = () => {
|
|
29
|
+
const context = useContext(SchemaRegistryContext);
|
|
30
|
+
if (!context) {
|
|
31
|
+
throw new Error('useSchemaRegistry must be used within a UseRegistryProvider');
|
|
32
|
+
}
|
|
33
|
+
return context;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=SchemaRegistryContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","createContext","useContext","useState","useCallback","useMemo","SchemaRegistryContext","getSchema","undefined","addSchema","SchemaRegistryProvider","_ref","children","registry","setRegistry","collectionId","schema","prevRegistry","contextValue","createElement","Provider","value","useSchemaRegistry","context","Error"],"sources":["../../../src/providers/SchemaRegistryContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useState,\n ReactNode,\n useCallback,\n useMemo,\n} from 'react';\n\nimport { SchemaConfig } from '../types';\n\nexport interface SchemaRegistryContextValue {\n getSchema: (collectionId: string) => SchemaConfig | undefined;\n addSchema: (collectionId: string, schema: SchemaConfig) => void;\n}\n\nexport type SchemaRegistry = Record<string, SchemaConfig>;\n\nconst SchemaRegistryContext = createContext<SchemaRegistryContextValue>({\n getSchema: () => undefined,\n addSchema: () => {},\n});\n\nexport interface SchemaRegistryProviderProps {\n children: ReactNode;\n}\n\nexport const SchemaRegistryProvider = ({\n children,\n}: SchemaRegistryProviderProps) => {\n const [registry, setRegistry] = useState<SchemaRegistry>({});\n\n const addSchema = useCallback(\n (collectionId: string, schema: SchemaConfig) => {\n setRegistry((prevRegistry) => ({\n ...prevRegistry,\n [collectionId]: schema,\n }));\n },\n [],\n );\n\n const getSchema = useCallback(\n (collectionId: string) => {\n return registry?.[collectionId];\n },\n [registry],\n );\n\n const contextValue = useMemo(\n () => ({\n getSchema,\n addSchema,\n }),\n [getSchema, addSchema],\n );\n\n return (\n <SchemaRegistryContext.Provider value={contextValue}>\n {children}\n </SchemaRegistryContext.Provider>\n );\n};\n\nexport const useSchemaRegistry = (): SchemaRegistryContextValue => {\n const context = useContext(SchemaRegistryContext);\n if (!context) {\n throw new Error(\n 'useSchemaRegistry must be used within a UseRegistryProvider',\n );\n }\n return context;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IACVC,aAAa,EACbC,UAAU,EACVC,QAAQ,EAERC,WAAW,EACXC,OAAO,QACF,OAAO;AAWd,MAAMC,qBAAqB,gBAAGL,aAAa,CAA6B;EACtEM,SAAS,EAAEA,CAAA,KAAMC,SAAS;EAC1BC,SAAS,EAAEA,CAAA,KAAM,CAAC;AACpB,CAAC,CAAC;AAMF,OAAO,MAAMC,sBAAsB,GAAGC,IAAA,IAEH;EAAA,IAFI;IACrCC;EAC2B,CAAC,GAAAD,IAAA;EAC5B,MAAM,CAACE,QAAQ,EAAEC,WAAW,CAAC,GAAGX,QAAQ,CAAiB,CAAC,CAAC,CAAC;EAE5D,MAAMM,SAAS,GAAGL,WAAW,CAC3B,CAACW,YAAoB,EAAEC,MAAoB,KAAK;IAC9CF,WAAW,CAAEG,YAAY,KAAM;MAC7B,GAAGA,YAAY;MACf,CAACF,YAAY,GAAGC;IAClB,CAAC,CAAC,CAAC;EACL,CAAC,EACD,EACF,CAAC;EAED,MAAMT,SAAS,GAAGH,WAAW,CAC1BW,YAAoB,IAAK;IACxB,OAAOF,QAAQ,oBAARA,QAAQ,CAAGE,YAAY,CAAC;EACjC,CAAC,EACD,CAACF,QAAQ,CACX,CAAC;EAED,MAAMK,YAAY,GAAGb,OAAO,CAC1B,OAAO;IACLE,SAAS;IACTE;EACF,CAAC,CAAC,EACF,CAACF,SAAS,EAAEE,SAAS,CACvB,CAAC;EAED,oBACET,KAAA,CAAAmB,aAAA,CAACb,qBAAqB,CAACc,QAAQ;IAACC,KAAK,EAAEH;EAAa,GACjDN,QAC6B,CAAC;AAErC,CAAC;AAED,OAAO,MAAMU,iBAAiB,GAAGA,CAAA,KAAkC;EACjE,MAAMC,OAAO,GAAGrB,UAAU,CAACI,qBAAqB,CAAC;EACjD,IAAI,CAACiB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CACb,6DACF,CAAC;EACH;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
-
export * from './
|
|
1
|
+
export * from './SchemaContext';
|
|
2
2
|
export * from './PatternsWizardOverridesContext';
|
|
3
|
+
export * from './ModalContext';
|
|
4
|
+
export * from './SchemaRegistryContext';
|
|
5
|
+
export * from './AppConfigContext';
|
|
3
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["../../../src/providers/index.ts"],"sourcesContent":["export * from './
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/providers/index.ts"],"sourcesContent":["export * from './SchemaContext';\nexport * from './PatternsWizardOverridesContext';\nexport * from './ModalContext';\nexport * from './SchemaRegistryContext';\nexport * from './AppConfigContext';\n"],"mappings":"AAAA,cAAc,iBAAiB;AAC/B,cAAc,kCAAkC;AAChD,cAAc,gBAAgB;AAC9B,cAAc,yBAAyB;AACvC,cAAc,oBAAoB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/types/BaseSDK.ts"],"sourcesContent":["import { ModalId } from '../providers/ModalContext';\nimport { PatternsWizardOverridesContextProps } from '../providers';\nimport { AppConfig } from './types';\nimport { NavigateToEntityPageFunc } from '../hooks';\n\nexport interface BaseSDK {\n appConfig: AppConfig;\n openModal: (id: ModalId, props?: Record<string, any>) => void;\n closeModal: () => void;\n overrides?: PatternsWizardOverridesContextProps;\n navigateToEntityPage?: NavigateToEntityPageFunc;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ComponentTypeEnum"],"sources":["../../../src/types/CollectionPageConfig.ts"],"sourcesContent":["import { CollectionToolbarFiltersProps } from '@wix/patterns';\nimport { DateRangeFilterMode, DateRangeOptions } from '@wix/patterns/core';\n\nexport interface CollectionPageConfig {\n title: { text: string; hideTotal?: boolean };\n subtitle?: {\n text: string;\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n components: ComponentConfig[];\n}\n\
|
|
1
|
+
{"version":3,"names":["ComponentTypeEnum"],"sources":["../../../src/types/CollectionPageConfig.ts"],"sourcesContent":["import { CollectionToolbarFiltersProps } from '@wix/patterns';\nimport { DateRangeFilterMode, DateRangeOptions } from '@wix/patterns/core';\nimport { BaseCollectionConfig } from './types';\nimport {\n ActionCellConfig,\n BulkActionsConfig,\n CollectionPagePrimaryActions,\n CollectionPageSecondaryActions,\n} from './actions';\n\nexport interface CollectionPageConfig {\n route: {\n path: string;\n };\n title: { text: string; hideTotal?: boolean };\n subtitle?: {\n text: string;\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n actions?: {\n primaryActions?: CollectionPagePrimaryActions;\n secondaryActions?: CollectionPageSecondaryActions;\n };\n components: ComponentConfig[];\n}\n\nexport interface ComponentConfig {\n type: 'Table' | 'Grid' | 'TableGridSwitch';\n table?: TableConfig;\n grid?: GridConfig;\n}\n\nexport interface CollectionConfig extends BaseCollectionConfig {\n fetchData?: FetchData;\n limit?: number;\n persistQueryToUrl?: boolean;\n disableAutoSelectAllCount?: boolean;\n selectionConsistencyMode?: 'preserve' | 'clear';\n}\n\nexport interface BaseCollectionComponentConfig {\n collection: CollectionConfig;\n entityPageId?: string;\n search?: { shown?: boolean };\n toolbarTitle?: ToolbarTitle;\n actionCell?: ActionCellConfig;\n emptyState?: EmptyState;\n filters?: FiltersConfig;\n bulkActionToolbar?: BulkActionsConfig;\n}\n\nexport interface TableConfig extends BaseCollectionComponentConfig {\n columns: Column[];\n customColumns?: {\n enabled: boolean;\n };\n}\n\nexport interface GridConfig extends BaseCollectionComponentConfig {\n item: GridItem;\n}\n\nexport interface ToolbarTitle {\n title: string;\n subtitle?: {\n text: string;\n info?: {\n content: {\n text: string;\n link?: {\n url: string;\n label: string;\n };\n };\n };\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n showTotal?: boolean;\n itemsLimit?: number;\n}\n\nexport interface Column {\n id: string;\n name: string;\n width?: string;\n sortable?: boolean;\n defaultSortOrder?: 'asc' | 'desc';\n sortMode?: 'asc' | 'desc';\n defaultHidden?: boolean;\n hiddenFromCustomColumnsSelection?: boolean;\n hideable?: boolean;\n reorderDisabled?: boolean;\n}\n\nexport interface GridItem {\n titleFieldId: string;\n subtitleFieldId?: string;\n imageFieldId?: string;\n cardContentMode?: 'full' | 'title' | 'empty'; // Footer is not supported in auto-patterns\n imagePlacement?: 'top' | 'side';\n}\n\nexport interface EmptyState {\n title?: string;\n subtitle?: string;\n image?: {\n id: string;\n };\n addNewCta?: {\n id?: string;\n text?: string;\n };\n customCta?: {\n id?: string;\n };\n}\n\ninterface FetchData {\n id: string;\n}\n\nexport interface FilterOption {\n value: string;\n label: string;\n}\n\nexport type FilterSelectionMode = 'single' | 'multiple';\nexport type FilterOptionType =\n | 'checkbox'\n | 'inlineCheckbox'\n | 'radio'\n | 'select';\n\nexport enum ComponentTypeEnum {\n SINGLE = 'single',\n MULTI_SELECT = 'multi-select',\n RADIO_GROUP = 'radio-group',\n NUMBER = 'number',\n DATE_RANGE = 'date-range',\n}\n\nexport interface FiltersConfig {\n items: Filter[];\n maxInlineFilters?: CollectionToolbarFiltersProps['inline'];\n panelTitle?: string;\n}\n\nexport interface BaseOptionsFilterConfig {\n selectionMode: FilterSelectionMode;\n}\n\nexport interface DateFilterConfig {\n mode?: DateRangeFilterMode;\n presets?: DateRangeOptions;\n includeTime?: boolean;\n}\n\nexport interface NumberFilterConfig {\n min?: number;\n max?: number;\n allowedDecimals?: boolean;\n}\n\nexport interface BooleanFilterConfig {\n trueLabel?: string;\n falseLabel?: string;\n}\n\nexport interface EnumFilterConfig extends BaseOptionsFilterConfig {\n options: FilterOption[];\n optionType?: FilterOptionType;\n}\n\nexport interface DynamicOptionsFilterConfig extends BaseOptionsFilterConfig {}\n\nexport interface Filter {\n id: string;\n fieldId: string;\n displayName?: string;\n sectionTitle?: string;\n openByDefault?: boolean;\n tagLabel?: string;\n numberConfig?: NumberFilterConfig;\n dateConfig?: DateFilterConfig;\n booleanConfig?: BooleanFilterConfig;\n enumConfig?: EnumFilterConfig;\n dynamicOptionsConfig?: DynamicOptionsFilterConfig;\n}\n"],"mappings":"AA2IA,WAAYA,iBAAiB,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["../../../src/types/EntityPageConfig.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/types/EntityPageConfig.ts"],"sourcesContent":["import { FieldValues, UseFormReturn } from '@wix/patterns/form';\n\nexport interface EntityPageConfig {\n route: {\n path: string;\n params: {\n id: string;\n };\n };\n title?: {\n text: string;\n };\n subtitle?: {\n text: string;\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n collectionId: string;\n entityTypeSource: string;\n parentPageId?: string;\n layout?: {\n main: CardLayout[];\n sidebar?: CardLayout[];\n };\n}\n\nexport interface CardLayout {\n type: 'card';\n card: {\n title: {\n text: string;\n };\n subtitle?: {\n text: string;\n };\n children: LayoutContent[];\n };\n}\n\nexport type LayoutContent =\n | FieldContent\n | ContainerContent\n | ComponentItemContent;\n\ninterface FieldContent {\n type: 'field';\n field: {\n span?: number;\n fieldId: string;\n };\n}\n\ninterface ContainerContent {\n type: 'container';\n container: {\n span?: number;\n children: LayoutContent[];\n };\n}\n\ninterface ComponentItemContent {\n type: 'component';\n component: {\n span?: number;\n componentId: string;\n };\n}\n\nexport interface CustomComponentProps {\n entity?: Record<string, any>;\n form: UseFormReturn<FieldValues, any, undefined>;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/types/actions/actionCell.ts"],"sourcesContent":["import {\n BaseActionParams,\n CustomActionModalProps,\n ResolvedAction,\n} from '../../exports/types';\nimport {\n CustomActionConfig,\n CustomModalActionConfig,\n DeleteActionConfig,\n UpdateActionConfig,\n} from './base';\n\nexport type ActionCellItemConfig =\n | UpdateActionConfig\n | CustomModalActionConfig\n | CustomActionConfig\n | DeleteActionConfig;\n\nexport interface ActionCellPrimaryAction {\n item: ActionCellItemConfig;\n}\n\nexport interface ActionCellSecondaryActions {\n items: ActionCellItemConfig[];\n}\n\nexport interface ActionCellConfig {\n primaryAction?: ActionCellPrimaryAction;\n secondaryActions?: ActionCellSecondaryActions;\n}\n\nexport interface ActionCellActionParams {\n item: any;\n}\n\nexport interface CustomActionCellActionParams extends BaseActionParams {\n actionParams: ActionCellActionParams;\n}\nexport type CustomActionCellActionResolver = (\n params: CustomActionCellActionParams,\n) => ResolvedAction;\n\nexport interface CustomActionCellActionModalProps\n extends CustomActionModalProps {\n actionParams: ActionCellActionParams;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/types/actions/base.ts"],"sourcesContent":["export type BaseActionItemConfig = {\n id: string;\n label?: string;\n icon?: string;\n};\n\nexport interface Feedback {\n successToast?: { text: string };\n errorToast?: { text: string };\n}\n\nexport interface BaseActionModal {\n title?: { text: string };\n actions?: {\n submit?: { text: string };\n cancel?: { text: string };\n };\n feedback?: Feedback;\n}\n\nexport interface ActionModalField {\n id: string;\n label?: string;\n}\n\nexport interface DeleteActionModal extends BaseActionModal {\n description?: { text: string };\n}\n\nexport interface BulkDeleteActionModal extends DeleteActionModal {}\n\nexport type BulkDeleteAction =\n | {\n mode: 'modal';\n modal: BulkDeleteActionModal;\n custom?: never;\n }\n | {\n mode: 'custom';\n custom: CustomAction;\n modal?: never;\n };\n\nexport type DeleteAction = {\n mode: 'modal';\n modal: DeleteActionModal;\n};\n\nexport interface BaseActionPage {\n id: string;\n}\n\nexport type CustomAction = {};\n\nexport type CustomModalAction = {\n id: string;\n};\n\nexport interface ActionModalWithFields extends BaseActionModal {\n fields: ActionModalField[];\n}\n\nexport interface UpdateActionModal extends ActionModalWithFields {}\n\nexport interface CreateActionModal extends ActionModalWithFields {}\n\nexport interface UpdateActionPage extends BaseActionPage {}\n\nexport interface CreateActionPage extends BaseActionPage {}\n\nexport type UpdateAction = {\n mode: 'page';\n page: UpdateActionPage;\n};\n\nexport type CreateAction = {\n mode: 'page';\n page: CreateActionPage;\n};\n\nexport type CreateActionConfig = BaseActionItemConfig & {\n type: 'create';\n create: CreateAction;\n};\n\nexport type UpdateActionConfig = BaseActionItemConfig & {\n type: 'update';\n update: UpdateAction;\n};\n\nexport type DeleteActionConfig = BaseActionItemConfig & {\n type: 'delete';\n delete: DeleteAction;\n};\n\nexport type BulkDeleteActionConfig = BaseActionItemConfig & {\n type: 'bulkDelete';\n bulkDelete: BulkDeleteAction;\n};\n\nexport type CustomModalActionConfig = BaseActionItemConfig & {\n type: 'customModal';\n customModal: CustomModalAction;\n};\n\nexport type CustomActionConfig = BaseActionItemConfig & {\n type: 'custom';\n custom: CustomAction;\n};\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/types/actions/bulkActions.ts"],"sourcesContent":["import {\n BaseActionParams,\n CustomActionModalProps,\n ResolvedAction,\n} from '../../exports/types';\nimport {\n BulkDeleteActionConfig,\n CustomActionConfig,\n CustomModalActionConfig,\n} from './base';\n\nexport type BulkActionItemConfig =\n | BulkDeleteActionConfig\n | CustomModalActionConfig\n | CustomActionConfig;\n\nexport interface BulkActionsPrimaryActions {\n items: BulkActionItemConfig[];\n}\n\nexport interface BulkActionSection {\n items: BulkActionItemConfig[];\n}\n\nexport interface BulkActionsSecondaryActions {\n sections: BulkActionSection[];\n}\n\nexport interface BulkActionsConfig {\n primaryActions?: BulkActionsPrimaryActions;\n secondaryActions?: BulkActionsSecondaryActions;\n}\n\nexport interface BulkActionsActionParams {\n selectedValues: any[];\n total: number;\n}\n\nexport interface CustomBulkActionsActionParams extends BaseActionParams {\n actionParams: BulkActionsActionParams;\n}\nexport type CustomBulkActionsActionResolver = (\n params: CustomBulkActionsActionParams,\n) => ResolvedAction;\n\nexport interface CustomBulkActionsActionModalProps\n extends CustomActionModalProps {\n actionParams: CustomBulkActionsActionParams;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/types/actions/collectionPageActions.ts"],"sourcesContent":["import {\n CreateActionConfig,\n CustomActionConfig,\n CustomModalActionConfig,\n} from './base';\n\nexport type CollectionPageActionConfig = (\n | CreateActionConfig\n | CustomModalActionConfig\n | CustomActionConfig\n) & {\n collection: {\n collectionId: string;\n entityTypeSource: 'cms';\n };\n};\n\ntype CollectionPageSingleAction = {\n type: 'single';\n single: {\n item: CollectionPageActionConfig;\n };\n multi?: never;\n};\n\ntype CollectionPageMultiAction = {\n type: 'multi';\n multi: {\n label: string;\n icon?: string;\n items: CollectionPageActionConfig[];\n };\n single?: never;\n};\n\nexport type CollectionPagePrimaryActions =\n | CollectionPageSingleAction\n | CollectionPageMultiAction;\n\nexport type CollectionPageSecondaryActions =\n | CollectionPageSingleAction\n | CollectionPageMultiAction;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/types/actions/index.ts"],"sourcesContent":["export * from './base';\nexport * from './actionCell';\nexport * from './bulkActions';\nexport * from './collectionPageActions';\n"],"mappings":"AAAA,cAAc,QAAQ;AACtB,cAAc,cAAc;AAC5B,cAAc,eAAe;AAC7B,cAAc,yBAAyB","ignoreList":[]}
|
package/dist/esm/types/index.js
CHANGED