@wix/auto-patterns 1.26.0 → 1.28.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 +16 -7
- package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.js.map +1 -1
- package/dist/cjs/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.js +2 -2
- package/dist/cjs/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.js.map +1 -1
- package/dist/cjs/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.js +58 -4
- package/dist/cjs/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.js.map +1 -1
- package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js +19 -5
- package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -1
- package/dist/cjs/dataSourceAdapters/cms/cmsAdapter.js +1 -1
- package/dist/cjs/dataSourceAdapters/cms/cmsAdapter.js.map +1 -1
- package/dist/cjs/dataSourceAdapters/cms/fetchCmsData.js +1 -1
- package/dist/cjs/dataSourceAdapters/cms/fetchCmsData.js.map +1 -1
- package/dist/cjs/hooks/index.js +19 -0
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/useAutoPatternsOptimisticActions.js +13 -6
- package/dist/cjs/hooks/useAutoPatternsOptimisticActions.js.map +1 -1
- package/dist/cjs/hooks/useBaseCollectionParams.js +38 -0
- package/dist/cjs/hooks/useBaseCollectionParams.js.map +1 -0
- package/dist/cjs/hooks/useCommonCollectionFeatures.js +13 -6
- package/dist/cjs/hooks/useCommonCollectionFeatures.js.map +1 -1
- package/dist/cjs/hooks/useFetchData.js +4 -5
- package/dist/cjs/hooks/useFetchData.js.map +1 -1
- package/dist/cjs/hooks/useGridFeatures.js +9 -26
- package/dist/cjs/hooks/useGridFeatures.js.map +1 -1
- package/dist/cjs/hooks/useNavigationUtils.js +21 -6
- package/dist/cjs/hooks/useNavigationUtils.js.map +1 -1
- package/dist/cjs/hooks/useTableFeatures.js +9 -26
- package/dist/cjs/hooks/useTableFeatures.js.map +1 -1
- package/dist/cjs/hooks/useTableGridSwitchFeatures.js +11 -28
- package/dist/cjs/hooks/useTableGridSwitchFeatures.js.map +1 -1
- package/dist/cjs/hooks/useUpdateAppContextItems.js +18 -0
- package/dist/cjs/hooks/useUpdateAppContextItems.js.map +1 -0
- package/dist/cjs/providers/AppContext.js +58 -0
- package/dist/cjs/providers/AppContext.js.map +1 -0
- package/dist/cjs/providers/ItemsContext.js +37 -0
- package/dist/cjs/providers/ItemsContext.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/index.js +12 -0
- package/dist/cjs/providers/index.js.map +1 -1
- package/dist/cjs/types/CollectionPageConfig.js.map +1 -1
- package/dist/cjs/types/fetchData.js +4 -0
- package/dist/cjs/types/fetchData.js.map +1 -0
- 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/docs/app_config_structure.md +1 -0
- package/dist/docs/auto-patterns-guide.md +270 -40
- package/dist/docs/bulk_actions.md +2 -5
- package/dist/docs/collection_page_actions.md +3 -12
- package/dist/docs/custom_overrides.md +1 -15
- package/dist/docs/entity_page_actions.md +3 -3
- package/dist/docs/entity_page_view_actions.md +2 -2
- package/dist/docs/error_handling.md +135 -0
- package/dist/docs/index.md +8 -0
- package/dist/docs/resolved_action.md +106 -0
- package/dist/docs/schema_config.md +11 -3
- package/dist/docs/wix_fqdn_custom_data_source.md +49 -7
- package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.js +5 -3
- package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.js.map +1 -1
- package/dist/esm/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.js +2 -2
- package/dist/esm/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.js.map +1 -1
- package/dist/esm/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.js +24 -0
- package/dist/esm/components/AutoPatternsCollectionPage/AutoPatternsCollectionPage.js.map +1 -1
- package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js +8 -0
- package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -1
- package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js +1 -1
- package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js.map +1 -1
- package/dist/esm/dataSourceAdapters/cms/fetchCmsData.js +1 -1
- package/dist/esm/dataSourceAdapters/cms/fetchCmsData.js.map +1 -1
- package/dist/esm/hooks/index.js +2 -0
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/hooks/useAutoPatternsOptimisticActions.js +14 -9
- package/dist/esm/hooks/useAutoPatternsOptimisticActions.js.map +1 -1
- package/dist/esm/hooks/useBaseCollectionParams.js +37 -0
- package/dist/esm/hooks/useBaseCollectionParams.js.map +1 -0
- package/dist/esm/hooks/useCommonCollectionFeatures.js +9 -2
- package/dist/esm/hooks/useCommonCollectionFeatures.js.map +1 -1
- package/dist/esm/hooks/useFetchData.js +2 -2
- package/dist/esm/hooks/useFetchData.js.map +1 -1
- package/dist/esm/hooks/useGridFeatures.js +10 -30
- package/dist/esm/hooks/useGridFeatures.js.map +1 -1
- package/dist/esm/hooks/useNavigationUtils.js +21 -6
- package/dist/esm/hooks/useNavigationUtils.js.map +1 -1
- package/dist/esm/hooks/useTableFeatures.js +10 -30
- package/dist/esm/hooks/useTableFeatures.js.map +1 -1
- package/dist/esm/hooks/useTableGridSwitchFeatures.js +12 -32
- package/dist/esm/hooks/useTableGridSwitchFeatures.js.map +1 -1
- package/dist/esm/hooks/useUpdateAppContextItems.js +13 -0
- package/dist/esm/hooks/useUpdateAppContextItems.js.map +1 -0
- package/dist/esm/providers/AppContext.js +31 -0
- package/dist/esm/providers/AppContext.js.map +1 -0
- package/dist/esm/providers/ItemsContext.js +23 -0
- package/dist/esm/providers/ItemsContext.js.map +1 -0
- package/dist/esm/providers/PatternsWizardOverridesContext.js.map +1 -1
- package/dist/esm/providers/index.js +1 -0
- package/dist/esm/providers/index.js.map +1 -1
- package/dist/esm/types/CollectionPageConfig.js.map +1 -1
- package/dist/esm/types/fetchData.js +2 -0
- package/dist/esm/types/fetchData.js.map +1 -0
- 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.d.ts +1 -0
- 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/AutoPatternsRoute/AutoPatternsRoutes.d.ts.map +1 -1
- package/dist/types/hooks/index.d.ts +2 -0
- package/dist/types/hooks/index.d.ts.map +1 -1
- package/dist/types/hooks/useAutoPatternsOptimisticActions.d.ts +7 -1
- package/dist/types/hooks/useAutoPatternsOptimisticActions.d.ts.map +1 -1
- package/dist/types/hooks/useBaseCollectionParams.d.ts +27 -0
- package/dist/types/hooks/useBaseCollectionParams.d.ts.map +1 -0
- package/dist/types/hooks/useCommonCollectionFeatures.d.ts +4 -3
- package/dist/types/hooks/useCommonCollectionFeatures.d.ts.map +1 -1
- package/dist/types/hooks/useFetchData.d.ts +3 -13
- package/dist/types/hooks/useFetchData.d.ts.map +1 -1
- package/dist/types/hooks/useGridFeatures.d.ts +1 -1
- package/dist/types/hooks/useGridFeatures.d.ts.map +1 -1
- package/dist/types/hooks/useNavigationUtils.d.ts +5 -1
- package/dist/types/hooks/useNavigationUtils.d.ts.map +1 -1
- package/dist/types/hooks/useTableFeatures.d.ts +1 -1
- package/dist/types/hooks/useTableFeatures.d.ts.map +1 -1
- package/dist/types/hooks/useTableGridSwitchFeatures.d.ts +1 -1
- package/dist/types/hooks/useTableGridSwitchFeatures.d.ts.map +1 -1
- package/dist/types/hooks/useUpdateAppContextItems.d.ts +2 -0
- package/dist/types/hooks/useUpdateAppContextItems.d.ts.map +1 -0
- package/dist/types/providers/AppContext.d.ts +11 -0
- package/dist/types/providers/AppContext.d.ts.map +1 -0
- package/dist/types/providers/ItemsContext.d.ts +11 -0
- package/dist/types/providers/ItemsContext.d.ts.map +1 -0
- package/dist/types/providers/PatternsWizardOverridesContext.d.ts +2 -1
- package/dist/types/providers/PatternsWizardOverridesContext.d.ts.map +1 -1
- package/dist/types/providers/index.d.ts +1 -0
- package/dist/types/providers/index.d.ts.map +1 -1
- package/dist/types/types/CollectionPageConfig.d.ts +4 -0
- package/dist/types/types/CollectionPageConfig.d.ts.map +1 -1
- package/dist/types/types/fetchData.d.ts +21 -0
- package/dist/types/types/fetchData.d.ts.map +1 -0
- 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 +6 -5
- package/dist/types/types/types.d.ts.map +1 -1
- package/package.json +14 -14
|
@@ -31,7 +31,7 @@ export async function fetchCmsData(collectionId, query, fields, options) {
|
|
|
31
31
|
if (referenceFieldIds.length > 0) {
|
|
32
32
|
dataQuery = dataQuery.include(...referenceFieldIds);
|
|
33
33
|
}
|
|
34
|
-
const res = await dataQuery.skip(query.offset).limit(query.limit).find({
|
|
34
|
+
const res = await dataQuery.skip(query.offset ?? 0).limit(query.limit).find({
|
|
35
35
|
returnTotalCount: true
|
|
36
36
|
});
|
|
37
37
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["items","addFiltersToDataQuery","addSearchToDataQuery","addSortToDataQuery","fetchCmsData","collectionId","query","fields","options","searchableFieldIds","filterFieldMapping","dataQuery","referenceFieldIds","Object","values","filter","field","type","includes","id","map","length","include","res","skip","offset","limit","find","returnTotalCount","total","totalCount"],"sources":["../../../../src/dataSourceAdapters/cms/fetchCmsData.ts"],"sourcesContent":["import { items } from '@wix/data';\nimport { Field, Query } from '../../types';\nimport { addFiltersToDataQuery, addSearchToDataQuery } from './filterUtils';\nimport { addSortToDataQuery } from './sortUtils';\n\nexport async function fetchCmsData(\n collectionId: string,\n query: Query,\n fields: Record<string, Field | undefined>,\n options: {\n searchableFieldIds?: string[];\n filterFieldMapping?: Record<string, { fieldId: string }>;\n } = {},\n) {\n const { searchableFieldIds = [], filterFieldMapping } = options;\n\n let dataQuery = items.query(collectionId);\n dataQuery = addSearchToDataQuery({\n dataQuery,\n query,\n fields,\n searchableFieldIds,\n });\n dataQuery = addFiltersToDataQuery({\n dataQuery,\n query,\n fields,\n filterFieldMapping,\n });\n dataQuery = addSortToDataQuery({\n dataQuery,\n query,\n fields,\n });\n\n const referenceFieldIds = Object.values(fields)\n .filter(\n (field): field is Field =>\n !!field &&\n field.type === 'REFERENCE' &&\n searchableFieldIds.includes(field.id),\n )\n .map((field) => field.id);\n\n if (referenceFieldIds.length > 0) {\n dataQuery = dataQuery.include(...referenceFieldIds);\n }\n\n const res = await dataQuery\n .skip(query.offset)\n .limit(query.limit)\n .find({ returnTotalCount: true });\n\n return {\n items: res.items,\n total: res.totalCount ?? 0,\n };\n}\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,WAAW;AAEjC,SAASC,qBAAqB,EAAEC,oBAAoB,QAAQ,eAAe;AAC3E,SAASC,kBAAkB,QAAQ,aAAa;AAEhD,OAAO,eAAeC,YAAYA,CAChCC,YAAoB,EACpBC,KAAY,EACZC,MAAyC,EACzCC,OAGC,EACD;EAAA,IAJAA,OAGC;IAHDA,OAGC,GAAG,CAAC,CAAC;EAAA;EAEN,MAAM;IAAEC,kBAAkB,GAAG,EAAE;IAAEC;EAAmB,CAAC,GAAGF,OAAO;EAE/D,IAAIG,SAAS,GAAGX,KAAK,CAACM,KAAK,CAACD,YAAY,CAAC;EACzCM,SAAS,GAAGT,oBAAoB,CAAC;IAC/BS,SAAS;IACTL,KAAK;IACLC,MAAM;IACNE;EACF,CAAC,CAAC;EACFE,SAAS,GAAGV,qBAAqB,CAAC;IAChCU,SAAS;IACTL,KAAK;IACLC,MAAM;IACNG;EACF,CAAC,CAAC;EACFC,SAAS,GAAGR,kBAAkB,CAAC;IAC7BQ,SAAS;IACTL,KAAK;IACLC;EACF,CAAC,CAAC;EAEF,MAAMK,iBAAiB,GAAGC,MAAM,CAACC,MAAM,CAACP,MAAM,CAAC,CAC5CQ,MAAM,CACJC,KAAK,IACJ,CAAC,CAACA,KAAK,IACPA,KAAK,CAACC,IAAI,KAAK,WAAW,IAC1BR,kBAAkB,CAACS,QAAQ,CAACF,KAAK,CAACG,EAAE,CACxC,CAAC,CACAC,GAAG,CAAEJ,KAAK,IAAKA,KAAK,CAACG,EAAE,CAAC;EAE3B,IAAIP,iBAAiB,CAACS,MAAM,GAAG,CAAC,EAAE;IAChCV,SAAS,GAAGA,SAAS,CAACW,OAAO,CAAC,GAAGV,iBAAiB,CAAC;EACrD;EAEA,MAAMW,GAAG,GAAG,MAAMZ,SAAS,CACxBa,IAAI,CAAClB,KAAK,CAACmB,MAAM,CAAC,
|
|
1
|
+
{"version":3,"names":["items","addFiltersToDataQuery","addSearchToDataQuery","addSortToDataQuery","fetchCmsData","collectionId","query","fields","options","searchableFieldIds","filterFieldMapping","dataQuery","referenceFieldIds","Object","values","filter","field","type","includes","id","map","length","include","res","skip","offset","limit","find","returnTotalCount","total","totalCount"],"sources":["../../../../src/dataSourceAdapters/cms/fetchCmsData.ts"],"sourcesContent":["import { items } from '@wix/data';\nimport { Field, Query } from '../../types';\nimport { addFiltersToDataQuery, addSearchToDataQuery } from './filterUtils';\nimport { addSortToDataQuery } from './sortUtils';\n\nexport async function fetchCmsData(\n collectionId: string,\n query: Query,\n fields: Record<string, Field | undefined>,\n options: {\n searchableFieldIds?: string[];\n filterFieldMapping?: Record<string, { fieldId: string }>;\n } = {},\n) {\n const { searchableFieldIds = [], filterFieldMapping } = options;\n\n let dataQuery = items.query(collectionId);\n dataQuery = addSearchToDataQuery({\n dataQuery,\n query,\n fields,\n searchableFieldIds,\n });\n dataQuery = addFiltersToDataQuery({\n dataQuery,\n query,\n fields,\n filterFieldMapping,\n });\n dataQuery = addSortToDataQuery({\n dataQuery,\n query,\n fields,\n });\n\n const referenceFieldIds = Object.values(fields)\n .filter(\n (field): field is Field =>\n !!field &&\n field.type === 'REFERENCE' &&\n searchableFieldIds.includes(field.id),\n )\n .map((field) => field.id);\n\n if (referenceFieldIds.length > 0) {\n dataQuery = dataQuery.include(...referenceFieldIds);\n }\n\n const res = await dataQuery\n .skip(query.offset ?? 0)\n .limit(query.limit)\n .find({ returnTotalCount: true });\n\n return {\n items: res.items,\n total: res.totalCount ?? 0,\n };\n}\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,WAAW;AAEjC,SAASC,qBAAqB,EAAEC,oBAAoB,QAAQ,eAAe;AAC3E,SAASC,kBAAkB,QAAQ,aAAa;AAEhD,OAAO,eAAeC,YAAYA,CAChCC,YAAoB,EACpBC,KAAY,EACZC,MAAyC,EACzCC,OAGC,EACD;EAAA,IAJAA,OAGC;IAHDA,OAGC,GAAG,CAAC,CAAC;EAAA;EAEN,MAAM;IAAEC,kBAAkB,GAAG,EAAE;IAAEC;EAAmB,CAAC,GAAGF,OAAO;EAE/D,IAAIG,SAAS,GAAGX,KAAK,CAACM,KAAK,CAACD,YAAY,CAAC;EACzCM,SAAS,GAAGT,oBAAoB,CAAC;IAC/BS,SAAS;IACTL,KAAK;IACLC,MAAM;IACNE;EACF,CAAC,CAAC;EACFE,SAAS,GAAGV,qBAAqB,CAAC;IAChCU,SAAS;IACTL,KAAK;IACLC,MAAM;IACNG;EACF,CAAC,CAAC;EACFC,SAAS,GAAGR,kBAAkB,CAAC;IAC7BQ,SAAS;IACTL,KAAK;IACLC;EACF,CAAC,CAAC;EAEF,MAAMK,iBAAiB,GAAGC,MAAM,CAACC,MAAM,CAACP,MAAM,CAAC,CAC5CQ,MAAM,CACJC,KAAK,IACJ,CAAC,CAACA,KAAK,IACPA,KAAK,CAACC,IAAI,KAAK,WAAW,IAC1BR,kBAAkB,CAACS,QAAQ,CAACF,KAAK,CAACG,EAAE,CACxC,CAAC,CACAC,GAAG,CAAEJ,KAAK,IAAKA,KAAK,CAACG,EAAE,CAAC;EAE3B,IAAIP,iBAAiB,CAACS,MAAM,GAAG,CAAC,EAAE;IAChCV,SAAS,GAAGA,SAAS,CAACW,OAAO,CAAC,GAAGV,iBAAiB,CAAC;EACrD;EAEA,MAAMW,GAAG,GAAG,MAAMZ,SAAS,CACxBa,IAAI,CAAClB,KAAK,CAACmB,MAAM,IAAI,CAAC,CAAC,CACvBC,KAAK,CAACpB,KAAK,CAACoB,KAAK,CAAC,CAClBC,IAAI,CAAC;IAAEC,gBAAgB,EAAE;EAAK,CAAC,CAAC;EAEnC,OAAO;IACL5B,KAAK,EAAEuB,GAAG,CAACvB,KAAK;IAChB6B,KAAK,EAAEN,GAAG,CAACO,UAAU,IAAI;EAC3B,CAAC;AACH","ignoreList":[]}
|
package/dist/esm/hooks/index.js
CHANGED
|
@@ -4,4 +4,6 @@ export * from './useGridFeatures';
|
|
|
4
4
|
export * from './useNavigationUtils';
|
|
5
5
|
export * from './usePagePath';
|
|
6
6
|
export * from './useEntityPageHeaderTexts';
|
|
7
|
+
export * from './useUpdateAppContextItems';
|
|
8
|
+
export { useAppContext } from '../providers/AppContext';
|
|
7
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["../../../src/hooks/index.ts"],"sourcesContent":["export * from './useTableFeatures';\nexport * from './useFilters';\nexport * from './useGridFeatures';\nexport * from './useNavigationUtils';\nexport * from './usePagePath';\nexport * from './useEntityPageHeaderTexts';\n"],"mappings":"AAAA,cAAc,oBAAoB;AAClC,cAAc,cAAc;AAC5B,cAAc,mBAAmB;AACjC,cAAc,sBAAsB;AACpC,cAAc,eAAe;AAC7B,cAAc,4BAA4B","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useAppContext"],"sources":["../../../src/hooks/index.ts"],"sourcesContent":["export * from './useTableFeatures';\nexport * from './useFilters';\nexport * from './useGridFeatures';\nexport * from './useNavigationUtils';\nexport * from './usePagePath';\nexport * from './useEntityPageHeaderTexts';\nexport * from './useUpdateAppContextItems';\nexport { useAppContext } from '../providers/AppContext';\n"],"mappings":"AAAA,cAAc,oBAAoB;AAClC,cAAc,cAAc;AAC5B,cAAc,mBAAmB;AACjC,cAAc,sBAAsB;AACpC,cAAc,eAAe;AAC7B,cAAc,4BAA4B;AAC1C,cAAc,4BAA4B;AAC1C,SAASA,aAAa,QAAQ,yBAAyB","ignoreList":[]}
|
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
import { useOptimisticActions } from '@wix/patterns';
|
|
2
2
|
import { useEffect } from 'react';
|
|
3
3
|
import { useOptimisticActionsContext } from '../providers/OptimisticActionsContext';
|
|
4
|
-
|
|
4
|
+
import { usePatternsWizardOverridesContext } from '../providers/PatternsWizardOverridesContext';
|
|
5
|
+
export const useAutoPatternsOptimisticActions = _ref => {
|
|
6
|
+
var _overrides$optimistic;
|
|
7
|
+
let {
|
|
8
|
+
collectionConfig,
|
|
9
|
+
collectionState
|
|
10
|
+
} = _ref;
|
|
5
11
|
const {
|
|
6
12
|
registerOptimisticActions
|
|
7
13
|
} = useOptimisticActionsContext();
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
});
|
|
14
|
+
const overrides = usePatternsWizardOverridesContext();
|
|
15
|
+
const {
|
|
16
|
+
collectionId,
|
|
17
|
+
optimisticActions: optimisticActionsConfig
|
|
18
|
+
} = collectionConfig;
|
|
19
|
+
const optimisticActionsParams = overrides == null || (_overrides$optimistic = overrides.optimisticActions) == null ? void 0 : _overrides$optimistic[(optimisticActionsConfig == null ? void 0 : optimisticActionsConfig.id) ?? ''];
|
|
20
|
+
const optimisticActions = useOptimisticActions(collectionState, optimisticActionsParams);
|
|
16
21
|
useEffect(() => {
|
|
17
22
|
if (optimisticActions && collectionId) {
|
|
18
23
|
registerOptimisticActions(collectionId, optimisticActions);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useOptimisticActions","useEffect","useOptimisticActionsContext","useAutoPatternsOptimisticActions","
|
|
1
|
+
{"version":3,"names":["useOptimisticActions","useEffect","useOptimisticActionsContext","usePatternsWizardOverridesContext","useAutoPatternsOptimisticActions","_ref","_overrides$optimistic","collectionConfig","collectionState","registerOptimisticActions","overrides","collectionId","optimisticActions","optimisticActionsConfig","optimisticActionsParams","id"],"sources":["../../../src/hooks/useAutoPatternsOptimisticActions.ts"],"sourcesContent":["import { CollectionState, useOptimisticActions } from '@wix/patterns';\nimport { useEffect } from 'react';\nimport { useOptimisticActionsContext } from '../providers/OptimisticActionsContext';\nimport { CollectionConfig } from '../types/CollectionPageConfig';\nimport { usePatternsWizardOverridesContext } from '../providers/PatternsWizardOverridesContext';\n\ninterface UseAutoPatternsOptimisticActionParams {\n collectionConfig: CollectionConfig;\n collectionState: CollectionState<any>;\n}\n\nexport const useAutoPatternsOptimisticActions = ({\n collectionConfig,\n collectionState,\n}: UseAutoPatternsOptimisticActionParams) => {\n const { registerOptimisticActions } = useOptimisticActionsContext();\n const overrides = usePatternsWizardOverridesContext();\n const { collectionId, optimisticActions: optimisticActionsConfig } =\n collectionConfig;\n const optimisticActionsParams =\n overrides?.optimisticActions?.[optimisticActionsConfig?.id ?? ''];\n\n const optimisticActions = useOptimisticActions(\n collectionState,\n optimisticActionsParams,\n );\n\n useEffect(() => {\n if (optimisticActions && collectionId) {\n registerOptimisticActions(collectionId, optimisticActions);\n }\n }, [optimisticActions, collectionId, registerOptimisticActions]);\n\n return optimisticActions;\n};\n"],"mappings":"AAAA,SAA0BA,oBAAoB,QAAQ,eAAe;AACrE,SAASC,SAAS,QAAQ,OAAO;AACjC,SAASC,2BAA2B,QAAQ,uCAAuC;AAEnF,SAASC,iCAAiC,QAAQ,6CAA6C;AAO/F,OAAO,MAAMC,gCAAgC,GAAGC,IAAA,IAGH;EAAA,IAAAC,qBAAA;EAAA,IAHI;IAC/CC,gBAAgB;IAChBC;EACqC,CAAC,GAAAH,IAAA;EACtC,MAAM;IAAEI;EAA0B,CAAC,GAAGP,2BAA2B,CAAC,CAAC;EACnE,MAAMQ,SAAS,GAAGP,iCAAiC,CAAC,CAAC;EACrD,MAAM;IAAEQ,YAAY;IAAEC,iBAAiB,EAAEC;EAAwB,CAAC,GAChEN,gBAAgB;EAClB,MAAMO,uBAAuB,GAC3BJ,SAAS,aAAAJ,qBAAA,GAATI,SAAS,CAAEE,iBAAiB,qBAA5BN,qBAAA,CAA+B,CAAAO,uBAAuB,oBAAvBA,uBAAuB,CAAEE,EAAE,KAAI,EAAE,CAAC;EAEnE,MAAMH,iBAAiB,GAAGZ,oBAAoB,CAC5CQ,eAAe,EACfM,uBACF,CAAC;EAEDb,SAAS,CAAC,MAAM;IACd,IAAIW,iBAAiB,IAAID,YAAY,EAAE;MACrCF,yBAAyB,CAACE,YAAY,EAAEC,iBAAiB,CAAC;IAC5D;EACF,CAAC,EAAE,CAACA,iBAAiB,EAAED,YAAY,EAAEF,yBAAyB,CAAC,CAAC;EAEhE,OAAOG,iBAAiB;AAC1B,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { useSchema } from '../providers/SchemaContext';
|
|
2
|
+
export const useBaseCollectionParams = _ref => {
|
|
3
|
+
let {
|
|
4
|
+
config,
|
|
5
|
+
fetchData,
|
|
6
|
+
filters
|
|
7
|
+
} = _ref;
|
|
8
|
+
const {
|
|
9
|
+
collectionId,
|
|
10
|
+
limit,
|
|
11
|
+
reflectQueryInUrl,
|
|
12
|
+
selectAllScope,
|
|
13
|
+
selectionUpdateMode,
|
|
14
|
+
paginationMode
|
|
15
|
+
} = config;
|
|
16
|
+
const schema = useSchema();
|
|
17
|
+
return {
|
|
18
|
+
queryName: `${collectionId}`,
|
|
19
|
+
paginationMode: paginationMode,
|
|
20
|
+
itemKey: item => item[schema.idField],
|
|
21
|
+
itemName: item => item[schema.displayField],
|
|
22
|
+
toExtendedFields: item => item.extendedFields,
|
|
23
|
+
fetchErrorMessage: _ref2 => {
|
|
24
|
+
let {
|
|
25
|
+
err
|
|
26
|
+
} = _ref2;
|
|
27
|
+
return String(err);
|
|
28
|
+
},
|
|
29
|
+
fetchData,
|
|
30
|
+
filters,
|
|
31
|
+
limit,
|
|
32
|
+
persistQueryToUrl: reflectQueryInUrl,
|
|
33
|
+
disableAutoSelectAllCount: selectAllScope === 'page',
|
|
34
|
+
selectionConsistencyMode: selectionUpdateMode
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=useBaseCollectionParams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useSchema","useBaseCollectionParams","_ref","config","fetchData","filters","collectionId","limit","reflectQueryInUrl","selectAllScope","selectionUpdateMode","paginationMode","schema","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","_ref2","err","String","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode"],"sources":["../../../src/hooks/useBaseCollectionParams.tsx"],"sourcesContent":["import { Filter } from '@wix/patterns';\nimport { useSchema } from '../providers/SchemaContext';\nimport { CollectionConfig, FetchDataFn } from '../types';\n\nexport const useBaseCollectionParams = ({\n config,\n fetchData,\n filters,\n}: {\n config: CollectionConfig;\n fetchData: FetchDataFn<any>;\n filters: {\n [key: string]: Filter<any>;\n };\n}) => {\n const {\n collectionId,\n limit,\n reflectQueryInUrl,\n selectAllScope,\n selectionUpdateMode,\n paginationMode,\n } = config;\n\n const schema = useSchema();\n\n return {\n queryName: `${collectionId}`,\n paginationMode: paginationMode as any,\n itemKey: (item: any) => item[schema.idField],\n itemName: (item: any) => item[schema.displayField],\n toExtendedFields: (item: any) => item.extendedFields,\n fetchErrorMessage: ({ err }: { err: unknown }) => String(err),\n fetchData,\n filters,\n limit,\n persistQueryToUrl: reflectQueryInUrl,\n disableAutoSelectAllCount: selectAllScope === 'page',\n selectionConsistencyMode: selectionUpdateMode,\n };\n};\n"],"mappings":"AACA,SAASA,SAAS,QAAQ,4BAA4B;AAGtD,OAAO,MAAMC,uBAAuB,GAAGC,IAAA,IAUjC;EAAA,IAVkC;IACtCC,MAAM;IACNC,SAAS;IACTC;EAOF,CAAC,GAAAH,IAAA;EACC,MAAM;IACJI,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,cAAc;IACdC,mBAAmB;IACnBC;EACF,CAAC,GAAGR,MAAM;EAEV,MAAMS,MAAM,GAAGZ,SAAS,CAAC,CAAC;EAE1B,OAAO;IACLa,SAAS,EAAE,GAAGP,YAAY,EAAE;IAC5BK,cAAc,EAAEA,cAAqB;IACrCG,OAAO,EAAGC,IAAS,IAAKA,IAAI,CAACH,MAAM,CAACI,OAAO,CAAC;IAC5CC,QAAQ,EAAGF,IAAS,IAAKA,IAAI,CAACH,MAAM,CAACM,YAAY,CAAC;IAClDC,gBAAgB,EAAGJ,IAAS,IAAKA,IAAI,CAACK,cAAc;IACpDC,iBAAiB,EAAEC,KAAA;MAAA,IAAC;QAAEC;MAAsB,CAAC,GAAAD,KAAA;MAAA,OAAKE,MAAM,CAACD,GAAG,CAAC;IAAA;IAC7DnB,SAAS;IACTC,OAAO;IACPE,KAAK;IACLkB,iBAAiB,EAAEjB,iBAAiB;IACpCkB,yBAAyB,EAAEjB,cAAc,KAAK,MAAM;IACpDkB,wBAAwB,EAAEjB;EAC5B,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -4,6 +4,7 @@ import { ToolbarTitle } from '@wix/patterns';
|
|
|
4
4
|
import { Box, Text, TextButton } from '@wix/design-system';
|
|
5
5
|
import { useActionCell } from './useActionCell';
|
|
6
6
|
import { useBulkActionToolbar } from './useBulkActionToolbar';
|
|
7
|
+
import { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';
|
|
7
8
|
export const useCommonCollectionFeatures = _ref => {
|
|
8
9
|
var _toolbarTitle$subtitl, _toolbarTitle$subtitl2, _toolbarTitle$subtitl3, _toolbarTitle$subtitl4, _toolbarTitle$subtitl5, _toolbarTitle$subtitl6, _toolbarTitle$subtitl7;
|
|
9
10
|
let {
|
|
@@ -12,8 +13,13 @@ export const useCommonCollectionFeatures = _ref => {
|
|
|
12
13
|
toolbarTitle,
|
|
13
14
|
search,
|
|
14
15
|
emptyState: emptyStateConfig,
|
|
15
|
-
collection
|
|
16
|
+
collection,
|
|
17
|
+
collectionState
|
|
16
18
|
} = _ref;
|
|
19
|
+
const optimisticActions = useAutoPatternsOptimisticActions({
|
|
20
|
+
collectionConfig: collection,
|
|
21
|
+
collectionState
|
|
22
|
+
});
|
|
17
23
|
const {
|
|
18
24
|
emptyState
|
|
19
25
|
} = useEmptyStates(emptyStateConfig);
|
|
@@ -58,7 +64,8 @@ export const useCommonCollectionFeatures = _ref => {
|
|
|
58
64
|
title,
|
|
59
65
|
emptyState,
|
|
60
66
|
actionCell,
|
|
61
|
-
bulkActionToolbar
|
|
67
|
+
bulkActionToolbar,
|
|
68
|
+
optimisticActions
|
|
62
69
|
};
|
|
63
70
|
};
|
|
64
71
|
//# sourceMappingURL=useCommonCollectionFeatures.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEmptyStates","ToolbarTitle","Box","Text","TextButton","useActionCell","useBulkActionToolbar","useCommonCollectionFeatures","_ref","_toolbarTitle$subtitl","_toolbarTitle$subtitl2","_toolbarTitle$subtitl3","_toolbarTitle$subtitl4","_toolbarTitle$subtitl5","_toolbarTitle$subtitl6","_toolbarTitle$subtitl7","actionCell","actionCellConfig","bulkActionToolbar","bulkActionToolbarConfig","toolbarTitle","search","emptyState","emptyStateConfig","collection","config","collectionId","title","createElement","subtitle","text","learnMore","info","content","direction","gap","dataHook","light","size","link","underline","skin","as","rel","target","href","url","label","itemsLimit","showTotal","shown"],"sources":["../../../src/hooks/useCommonCollectionFeatures.tsx"],"sourcesContent":["import React from 'react';\nimport { useEmptyStates } from './useEmptyStates';\n\nimport {
|
|
1
|
+
{"version":3,"names":["React","useEmptyStates","ToolbarTitle","Box","Text","TextButton","useActionCell","useBulkActionToolbar","useAutoPatternsOptimisticActions","useCommonCollectionFeatures","_ref","_toolbarTitle$subtitl","_toolbarTitle$subtitl2","_toolbarTitle$subtitl3","_toolbarTitle$subtitl4","_toolbarTitle$subtitl5","_toolbarTitle$subtitl6","_toolbarTitle$subtitl7","actionCell","actionCellConfig","bulkActionToolbar","bulkActionToolbarConfig","toolbarTitle","search","emptyState","emptyStateConfig","collection","collectionState","optimisticActions","collectionConfig","config","collectionId","title","createElement","subtitle","text","learnMore","info","content","direction","gap","dataHook","light","size","link","underline","skin","as","rel","target","href","url","label","itemsLimit","showTotal","shown"],"sources":["../../../src/hooks/useCommonCollectionFeatures.tsx"],"sourcesContent":["import React from 'react';\nimport { useEmptyStates } from './useEmptyStates';\n\nimport { CollectionState, ToolbarTitle } from '@wix/patterns';\n\nimport { Box, Text, TextButton } from '@wix/design-system';\nimport { BaseCollectionComponentConfig } from '../types';\nimport { useActionCell } from './useActionCell';\nimport { useBulkActionToolbar } from './useBulkActionToolbar';\nimport { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';\n\nexport type UseCommonCollectionFeaturesParams = Pick<\n BaseCollectionComponentConfig,\n | 'actionCell'\n | 'toolbarTitle'\n | 'search'\n | 'emptyState'\n | 'collection'\n | 'bulkActionToolbar'\n | 'entityPageId'\n> & {\n collectionState: CollectionState<any>;\n};\n\nexport const useCommonCollectionFeatures = ({\n actionCell: actionCellConfig,\n bulkActionToolbar: bulkActionToolbarConfig,\n toolbarTitle,\n search,\n emptyState: emptyStateConfig,\n collection,\n collectionState,\n}: UseCommonCollectionFeaturesParams) => {\n const optimisticActions = useAutoPatternsOptimisticActions({\n collectionConfig: collection,\n collectionState,\n });\n\n const { emptyState } = useEmptyStates(emptyStateConfig);\n const actionCell = useActionCell({\n config: actionCellConfig,\n collectionId: collection.collectionId,\n });\n\n const bulkActionToolbar = useBulkActionToolbar({\n config: bulkActionToolbarConfig,\n collectionId: collection.collectionId,\n });\n\n const title = toolbarTitle && (\n <ToolbarTitle\n title={toolbarTitle.title}\n subtitle={{\n text: toolbarTitle.subtitle?.text ?? '',\n learnMore: toolbarTitle.subtitle?.learnMore,\n info: toolbarTitle.subtitle?.info && {\n content: (\n <Box direction=\"vertical\" gap=\"6px\">\n <Text\n dataHook=\"toolbar-title-subtitle-info-content\"\n light\n size=\"small\"\n >\n {toolbarTitle.subtitle?.info?.content.text}\n </Text>\n {toolbarTitle.subtitle?.info?.content.link && (\n <TextButton\n dataHook=\"toolbar-title-subtitle-info-link\"\n size=\"small\"\n underline=\"always\"\n skin=\"light\"\n as=\"a\"\n rel=\"noopener\"\n target=\"_blank\"\n href={toolbarTitle.subtitle?.info?.content.link.url}\n >\n {toolbarTitle.subtitle?.info?.content.link.label}\n </TextButton>\n )}\n </Box>\n ),\n },\n }}\n itemsLimit={toolbarTitle.itemsLimit}\n showTotal={toolbarTitle.showTotal}\n />\n );\n\n return {\n search: search?.shown !== false,\n title,\n emptyState,\n actionCell,\n bulkActionToolbar,\n optimisticActions,\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { useSchema } from '../providers/SchemaContext';
|
|
3
|
-
export
|
|
3
|
+
export function useFetchData(_ref) {
|
|
4
4
|
let {
|
|
5
5
|
searchableFieldIds,
|
|
6
6
|
filterFieldMapping
|
|
@@ -17,5 +17,5 @@ export const useFetchData = _ref => {
|
|
|
17
17
|
return {
|
|
18
18
|
fetchData
|
|
19
19
|
};
|
|
20
|
-
}
|
|
20
|
+
}
|
|
21
21
|
//# sourceMappingURL=useFetchData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useSchema","useFetchData","_ref","searchableFieldIds","filterFieldMapping","schema","fetchData","useMemo","query","actions","find"],"sources":["../../../src/hooks/useFetchData.tsx"],"sourcesContent":["import React from 'react';\nimport { useSchema } from '../providers/SchemaContext';\nimport {
|
|
1
|
+
{"version":3,"names":["React","useSchema","useFetchData","_ref","searchableFieldIds","filterFieldMapping","schema","fetchData","useMemo","query","actions","find"],"sources":["../../../src/hooks/useFetchData.tsx"],"sourcesContent":["import React from 'react';\nimport { useSchema } from '../providers/SchemaContext';\nimport { CursorQuery, OffsetQuery } from '@wix/patterns';\nimport { FetchDataFn, Mode, UseFetchDataProps } from '../types';\n\nexport function useFetchData<M extends Mode>({\n searchableFieldIds,\n filterFieldMapping,\n}: UseFetchDataProps<M>): { fetchData: FetchDataFn<M> } {\n const schema = useSchema();\n\n const fetchData = React.useMemo(() => {\n return (query: CursorQuery<any> | OffsetQuery<any>) => {\n return schema.actions.find(query, {\n searchableFieldIds: searchableFieldIds || [],\n filterFieldMapping,\n });\n };\n }, [schema, searchableFieldIds, filterFieldMapping]);\n\n return { fetchData };\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAQ,4BAA4B;AAItD,OAAO,SAASC,YAAYA,CAAAC,IAAA,EAG4B;EAAA,IAHX;IAC3CC,kBAAkB;IAClBC;EACoB,CAAC,GAAAF,IAAA;EACrB,MAAMG,MAAM,GAAGL,SAAS,CAAC,CAAC;EAE1B,MAAMM,SAAS,GAAGP,KAAK,CAACQ,OAAO,CAAC,MAAM;IACpC,OAAQC,KAA0C,IAAK;MACrD,OAAOH,MAAM,CAACI,OAAO,CAACC,IAAI,CAACF,KAAK,EAAE;QAChCL,kBAAkB,EAAEA,kBAAkB,IAAI,EAAE;QAC5CC;MACF,CAAC,CAAC;IACJ,CAAC;EACH,CAAC,EAAE,CAACC,MAAM,EAAEF,kBAAkB,EAAEC,kBAAkB,CAAC,CAAC;EAEpD,OAAO;IAAEE;EAAU,CAAC;AACtB","ignoreList":[]}
|
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
import { useFetchData } from './useFetchData';
|
|
2
|
-
import { useGridCollection } from '@wix/patterns';
|
|
2
|
+
import { useGridCollection, useSelector } from '@wix/patterns';
|
|
3
3
|
import { useCommonCollectionFeatures } from './useCommonCollectionFeatures';
|
|
4
4
|
import { useFilters } from './useFilters';
|
|
5
|
-
import { useSchema } from '../providers/SchemaContext';
|
|
6
|
-
import { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';
|
|
7
5
|
import { useBaseGridFeatures } from './useBaseGridFeatures';
|
|
6
|
+
import { useBaseCollectionParams } from './useBaseCollectionParams';
|
|
7
|
+
import { useUpdateAppContextItems } from './useUpdateAppContextItems';
|
|
8
8
|
export const useGridFeatures = configuration => {
|
|
9
|
-
const {
|
|
10
|
-
collectionId,
|
|
11
|
-
limit,
|
|
12
|
-
reflectQueryInUrl,
|
|
13
|
-
selectAllScope,
|
|
14
|
-
selectionUpdateMode
|
|
15
|
-
} = configuration.collection;
|
|
16
9
|
const {
|
|
17
10
|
renderItem,
|
|
18
11
|
imagePlacement,
|
|
@@ -30,36 +23,23 @@ export const useGridFeatures = configuration => {
|
|
|
30
23
|
searchableFieldIds: visibleFieldIds,
|
|
31
24
|
filterFieldMapping
|
|
32
25
|
});
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
queryName: `${collectionId}`,
|
|
36
|
-
itemKey: gridItem => gridItem[schema.idField],
|
|
37
|
-
itemName: gridItem => gridItem[schema.displayField],
|
|
38
|
-
filters: filtersObject,
|
|
39
|
-
toExtendedFields: gridItem => gridItem.extendedFields,
|
|
40
|
-
fetchErrorMessage: _ref => {
|
|
41
|
-
let {
|
|
42
|
-
err
|
|
43
|
-
} = _ref;
|
|
44
|
-
return String(err);
|
|
45
|
-
},
|
|
26
|
+
const params = useBaseCollectionParams({
|
|
27
|
+
config: configuration.collection,
|
|
46
28
|
fetchData,
|
|
47
|
-
|
|
48
|
-
persistQueryToUrl: reflectQueryInUrl,
|
|
49
|
-
disableAutoSelectAllCount: selectAllScope === 'page',
|
|
50
|
-
selectionConsistencyMode: selectionUpdateMode
|
|
29
|
+
filters: filtersObject
|
|
51
30
|
});
|
|
52
|
-
const
|
|
31
|
+
const state = useGridCollection(params);
|
|
32
|
+
const items = useSelector(() => state.collection.result.items);
|
|
33
|
+
useUpdateAppContextItems(items);
|
|
53
34
|
const commonFeatures = useCommonCollectionFeatures({
|
|
54
35
|
...configuration,
|
|
55
|
-
|
|
36
|
+
collectionState: state.collection
|
|
56
37
|
});
|
|
57
38
|
return {
|
|
58
39
|
...commonFeatures,
|
|
59
40
|
state,
|
|
60
41
|
imagePlacement,
|
|
61
42
|
preset,
|
|
62
|
-
optimisticActions,
|
|
63
43
|
renderItem,
|
|
64
44
|
filters: filterComponent
|
|
65
45
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useFetchData","useGridCollection","useCommonCollectionFeatures","useFilters","
|
|
1
|
+
{"version":3,"names":["useFetchData","useGridCollection","useSelector","useCommonCollectionFeatures","useFilters","useBaseGridFeatures","useBaseCollectionParams","useUpdateAppContextItems","useGridFeatures","configuration","renderItem","imagePlacement","preset","visibleFieldIds","filterComponent","filtersObject","filterFieldMapping","filters","fetchData","searchableFieldIds","params","config","collection","state","items","result","commonFeatures","collectionState"],"sources":["../../../src/hooks/useGridFeatures.tsx"],"sourcesContent":["import { GridConfig } from '../types';\nimport { useFetchData } from './useFetchData';\nimport { useGridCollection, useSelector } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useBaseGridFeatures } from './useBaseGridFeatures';\nimport { useBaseCollectionParams } from './useBaseCollectionParams';\nimport { useUpdateAppContextItems } from './useUpdateAppContextItems';\n\nexport const useGridFeatures = (configuration: GridConfig) => {\n const { renderItem, imagePlacement, preset, visibleFieldIds } =\n useBaseGridFeatures(configuration);\n\n const { filterComponent, filtersObject, filterFieldMapping } = useFilters(\n configuration.filters,\n );\n\n const { fetchData } = useFetchData({\n searchableFieldIds: visibleFieldIds,\n filterFieldMapping,\n });\n\n const params = useBaseCollectionParams({\n config: configuration.collection,\n fetchData,\n filters: filtersObject,\n });\n\n const state = useGridCollection<any>(params);\n const items = useSelector(() => state.collection.result.items);\n useUpdateAppContextItems(items);\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n collectionState: state.collection,\n });\n\n return {\n ...commonFeatures,\n state,\n imagePlacement,\n preset,\n renderItem,\n filters: filterComponent,\n };\n};\n"],"mappings":"AACA,SAASA,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,iBAAiB,EAAEC,WAAW,QAAQ,eAAe;AAC9D,SAASC,2BAA2B,QAAQ,+BAA+B;AAC3E,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,wBAAwB,QAAQ,4BAA4B;AAErE,OAAO,MAAMC,eAAe,GAAIC,aAAyB,IAAK;EAC5D,MAAM;IAAEC,UAAU;IAAEC,cAAc;IAAEC,MAAM;IAAEC;EAAgB,CAAC,GAC3DR,mBAAmB,CAACI,aAAa,CAAC;EAEpC,MAAM;IAAEK,eAAe;IAAEC,aAAa;IAAEC;EAAmB,CAAC,GAAGZ,UAAU,CACvEK,aAAa,CAACQ,OAChB,CAAC;EAED,MAAM;IAAEC;EAAU,CAAC,GAAGlB,YAAY,CAAC;IACjCmB,kBAAkB,EAAEN,eAAe;IACnCG;EACF,CAAC,CAAC;EAEF,MAAMI,MAAM,GAAGd,uBAAuB,CAAC;IACrCe,MAAM,EAAEZ,aAAa,CAACa,UAAU;IAChCJ,SAAS;IACTD,OAAO,EAAEF;EACX,CAAC,CAAC;EAEF,MAAMQ,KAAK,GAAGtB,iBAAiB,CAAMmB,MAAM,CAAC;EAC5C,MAAMI,KAAK,GAAGtB,WAAW,CAAC,MAAMqB,KAAK,CAACD,UAAU,CAACG,MAAM,CAACD,KAAK,CAAC;EAC9DjB,wBAAwB,CAACiB,KAAK,CAAC;EAE/B,MAAME,cAAc,GAAGvB,2BAA2B,CAAC;IACjD,GAAGM,aAAa;IAChBkB,eAAe,EAAEJ,KAAK,CAACD;EACzB,CAAC,CAAC;EAEF,OAAO;IACL,GAAGI,cAAc;IACjBH,KAAK;IACLZ,cAAc;IACdC,MAAM;IACNF,UAAU;IACVO,OAAO,EAAEH;EACX,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -4,10 +4,19 @@ import { useAppConfigContext, useSchemaRegistry } from '../providers';
|
|
|
4
4
|
import { generatePath } from 'react-router-dom';
|
|
5
5
|
import { usePagePath } from './usePagePath';
|
|
6
6
|
export const useNavigation = () => {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
let navigateToEntityPagePatterns;
|
|
8
|
+
let navigateToCollectionPagePatterns;
|
|
9
|
+
let isNavigationAvailable = true;
|
|
10
|
+
try {
|
|
11
|
+
const navigation = usePatternsNavigate();
|
|
12
|
+
navigateToEntityPagePatterns = navigation.navigateToEntityPage;
|
|
13
|
+
navigateToCollectionPagePatterns = navigation.navigateToCollectionPage;
|
|
14
|
+
} catch (error) {
|
|
15
|
+
// Navigation context not available (e.g., when rendering components without routes)
|
|
16
|
+
isNavigationAvailable = false;
|
|
17
|
+
navigateToEntityPagePatterns = () => {};
|
|
18
|
+
navigateToCollectionPagePatterns = () => {};
|
|
19
|
+
}
|
|
11
20
|
const appConfig = useAppConfigContext();
|
|
12
21
|
const {
|
|
13
22
|
getSchema
|
|
@@ -21,6 +30,9 @@ export const useNavigation = () => {
|
|
|
21
30
|
item,
|
|
22
31
|
entityPageId
|
|
23
32
|
} = _ref;
|
|
33
|
+
if (!isNavigationAvailable || !appConfig.pages) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
24
36
|
const entityPage = entityPageId ? appConfig.pages.find(page => page.id === entityPageId) : null;
|
|
25
37
|
if (!entityPage) {
|
|
26
38
|
return;
|
|
@@ -39,8 +51,11 @@ export const useNavigation = () => {
|
|
|
39
51
|
entity: item
|
|
40
52
|
});
|
|
41
53
|
}
|
|
42
|
-
}, [appConfig, navigateToEntityPagePatterns, getSchema]);
|
|
54
|
+
}, [appConfig, navigateToEntityPagePatterns, getSchema, isNavigationAvailable]);
|
|
43
55
|
const navigateToCollectionPage = useCallback(parentPageId => {
|
|
56
|
+
if (!isNavigationAvailable) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
44
59
|
const parentPagePath = getPagePath(parentPageId);
|
|
45
60
|
if (!parentPagePath) {
|
|
46
61
|
return;
|
|
@@ -48,7 +63,7 @@ export const useNavigation = () => {
|
|
|
48
63
|
navigateToCollectionPagePatterns({
|
|
49
64
|
path: parentPagePath
|
|
50
65
|
});
|
|
51
|
-
}, [navigateToCollectionPagePatterns, getPagePath]);
|
|
66
|
+
}, [navigateToCollectionPagePatterns, getPagePath, isNavigationAvailable]);
|
|
52
67
|
const getParentPagePath = useCallback(parentPageId => {
|
|
53
68
|
return getPagePath(parentPageId);
|
|
54
69
|
}, [getPagePath]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","usePatternsNavigate","useAppConfigContext","useSchemaRegistry","generatePath","usePagePath","useNavigation","
|
|
1
|
+
{"version":3,"names":["useCallback","usePatternsNavigate","useAppConfigContext","useSchemaRegistry","generatePath","usePagePath","useNavigation","navigateToEntityPagePatterns","navigateToCollectionPagePatterns","isNavigationAvailable","navigation","navigateToEntityPage","navigateToCollectionPage","error","appConfig","getSchema","getPagePath","_ref","_route$params","item","entityPageId","pages","entityPage","find","page","id","route","collectionId","schema","path","params","idField","entity","parentPageId","parentPagePath","getParentPagePath"],"sources":["../../../src/hooks/useNavigationUtils.tsx"],"sourcesContent":["import { useCallback } from 'react';\nimport { usePatternsNavigate } from '@wix/patterns/router';\nimport { useAppConfigContext, useSchemaRegistry } from '../providers';\nimport { generatePath } from 'react-router-dom';\nimport { EntityPageConfig, EntityProps } from '../types';\nimport { usePagePath } from './usePagePath';\n\nexport type NavigateToEntityPageFunc = (args: {\n item: any;\n entityPageId?: string;\n}) => void;\n\nexport const useNavigation = () => {\n let navigateToEntityPagePatterns: ({\n path,\n entity,\n }: {\n path: string;\n entity: EntityProps;\n }) => void;\n let navigateToCollectionPagePatterns: ({ path }: { path: string }) => void;\n let isNavigationAvailable = true;\n\n try {\n const navigation = usePatternsNavigate();\n navigateToEntityPagePatterns = navigation.navigateToEntityPage;\n navigateToCollectionPagePatterns = navigation.navigateToCollectionPage;\n } catch (error) {\n // Navigation context not available (e.g., when rendering components without routes)\n isNavigationAvailable = false;\n navigateToEntityPagePatterns = () => {};\n navigateToCollectionPagePatterns = () => {};\n }\n\n const appConfig = useAppConfigContext();\n const { getSchema } = useSchemaRegistry();\n const { getPagePath } = usePagePath(appConfig);\n\n const navigateToEntityPage = useCallback(\n ({ item, entityPageId }: { item: EntityProps; entityPageId?: string }) => {\n if (!isNavigationAvailable || !appConfig.pages) {\n return;\n }\n\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, isNavigationAvailable],\n );\n\n const navigateToCollectionPage = useCallback(\n (parentPageId: string) => {\n if (!isNavigationAvailable) {\n return;\n }\n const parentPagePath = getPagePath(parentPageId);\n if (!parentPagePath) {\n return;\n }\n navigateToCollectionPagePatterns({\n path: parentPagePath,\n });\n },\n [navigateToCollectionPagePatterns, getPagePath, isNavigationAvailable],\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 navigateToCollectionPage,\n getParentPagePath,\n getPagePath,\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
import { useFetchData } from './useFetchData';
|
|
2
|
-
import { TableSections, useTableCollection } from '@wix/patterns';
|
|
2
|
+
import { TableSections, useSelector, useTableCollection } from '@wix/patterns';
|
|
3
3
|
import { useCommonCollectionFeatures } from './useCommonCollectionFeatures';
|
|
4
4
|
import { useFilters } from './useFilters';
|
|
5
|
-
import { useSchema } from '../providers/SchemaContext';
|
|
6
|
-
import { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';
|
|
7
5
|
import { useBaseTableFeatures } from './useBaseTableFeatures';
|
|
8
6
|
import { usePatternsWizardOverridesContext } from '../providers/PatternsWizardOverridesContext';
|
|
7
|
+
import { useBaseCollectionParams } from './useBaseCollectionParams';
|
|
8
|
+
import { useUpdateAppContextItems } from './useUpdateAppContextItems';
|
|
9
9
|
export const useTableFeatures = configuration => {
|
|
10
10
|
var _configuration$sectio, _overrides$sections;
|
|
11
|
-
const {
|
|
12
|
-
collectionId,
|
|
13
|
-
limit,
|
|
14
|
-
reflectQueryInUrl,
|
|
15
|
-
selectAllScope,
|
|
16
|
-
selectionUpdateMode
|
|
17
|
-
} = configuration.collection;
|
|
18
11
|
const {
|
|
19
12
|
filterComponent,
|
|
20
13
|
filtersObject,
|
|
@@ -35,30 +28,18 @@ export const useTableFeatures = configuration => {
|
|
|
35
28
|
searchableFieldIds: visibleFieldIds,
|
|
36
29
|
filterFieldMapping
|
|
37
30
|
});
|
|
38
|
-
const schema = useSchema();
|
|
39
31
|
const overrides = usePatternsWizardOverridesContext();
|
|
40
|
-
const
|
|
41
|
-
|
|
42
|
-
itemKey: item => item[schema.idField],
|
|
43
|
-
itemName: item => item[schema.displayField],
|
|
44
|
-
filters: filtersObject,
|
|
45
|
-
toExtendedFields: item => item.extendedFields,
|
|
46
|
-
fetchErrorMessage: _ref => {
|
|
47
|
-
let {
|
|
48
|
-
err
|
|
49
|
-
} = _ref;
|
|
50
|
-
return String(err);
|
|
51
|
-
},
|
|
32
|
+
const params = useBaseCollectionParams({
|
|
33
|
+
config: configuration.collection,
|
|
52
34
|
fetchData,
|
|
53
|
-
|
|
54
|
-
persistQueryToUrl: reflectQueryInUrl,
|
|
55
|
-
disableAutoSelectAllCount: selectAllScope === 'page',
|
|
56
|
-
selectionConsistencyMode: selectionUpdateMode
|
|
35
|
+
filters: filtersObject
|
|
57
36
|
});
|
|
58
|
-
const
|
|
37
|
+
const state = useTableCollection(params);
|
|
38
|
+
const items = useSelector(() => state.collection.result.items);
|
|
39
|
+
useUpdateAppContextItems(items);
|
|
59
40
|
const commonFeatures = useCommonCollectionFeatures({
|
|
60
41
|
...configuration,
|
|
61
|
-
|
|
42
|
+
collectionState: state.collection
|
|
62
43
|
});
|
|
63
44
|
const sections = (_configuration$sectio = configuration.sections) != null && _configuration$sectio.id && overrides != null && (_overrides$sections = overrides.sections) != null && _overrides$sections[configuration.sections.id] ? {
|
|
64
45
|
renderSection: overrides.sections[configuration.sections.id],
|
|
@@ -69,7 +50,6 @@ export const useTableFeatures = configuration => {
|
|
|
69
50
|
state,
|
|
70
51
|
columns,
|
|
71
52
|
filters: filterComponent,
|
|
72
|
-
optimisticActions,
|
|
73
53
|
customColumns,
|
|
74
54
|
onRowClick,
|
|
75
55
|
stickyColumns,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useFetchData","TableSections","useTableCollection","useCommonCollectionFeatures","useFilters","
|
|
1
|
+
{"version":3,"names":["useFetchData","TableSections","useSelector","useTableCollection","useCommonCollectionFeatures","useFilters","useBaseTableFeatures","usePatternsWizardOverridesContext","useBaseCollectionParams","useUpdateAppContextItems","useTableFeatures","configuration","_configuration$sectio","_overrides$sections","filterComponent","filtersObject","filterFieldMapping","filters","customColumns","visibleFieldIds","columns","onRowClick","stickyColumns","stickySelectionColumn","showTitleBar","fetchData","searchableFieldIds","overrides","params","config","collection","state","items","result","commonFeatures","collectionState","sections","id","renderSection","undefined"],"sources":["../../../src/hooks/useTableFeatures.tsx"],"sourcesContent":["import { TableConfig } from '../types';\nimport { useFetchData } from './useFetchData';\nimport { TableSections, useSelector, useTableCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useBaseTableFeatures } from './useBaseTableFeatures';\nimport { usePatternsWizardOverridesContext } from '../providers/PatternsWizardOverridesContext';\nimport { useBaseCollectionParams } from './useBaseCollectionParams';\nimport { useUpdateAppContextItems } from './useUpdateAppContextItems';\n\nexport const useTableFeatures = (configuration: TableConfig) => {\n const { filterComponent, filtersObject, filterFieldMapping } = useFilters(\n configuration.filters,\n );\n const {\n customColumns,\n visibleFieldIds,\n columns,\n onRowClick,\n stickyColumns,\n stickySelectionColumn,\n showTitleBar,\n } = useBaseTableFeatures(configuration);\n\n const { fetchData } = useFetchData({\n searchableFieldIds: visibleFieldIds,\n filterFieldMapping,\n });\n\n const overrides = usePatternsWizardOverridesContext();\n\n const params = useBaseCollectionParams({\n config: configuration.collection,\n fetchData,\n filters: filtersObject,\n });\n\n const state = useTableCollection<any>(params);\n const items = useSelector(() => state.collection.result.items);\n useUpdateAppContextItems(items);\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n collectionState: state.collection,\n });\n\n const sections =\n configuration.sections?.id &&\n overrides?.sections?.[configuration.sections.id]\n ? {\n renderSection: overrides.sections[configuration.sections.id],\n TableSections,\n }\n : undefined;\n\n return {\n ...commonFeatures,\n state,\n columns,\n filters: filterComponent,\n customColumns,\n onRowClick,\n stickyColumns,\n stickySelectionColumn,\n showTitleBar,\n sections,\n };\n};\n"],"mappings":"AACA,SAASA,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,aAAa,EAAEC,WAAW,EAAEC,kBAAkB,QAAQ,eAAe;AAC9E,SAASC,2BAA2B,QAAQ,+BAA+B;AAC3E,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,iCAAiC,QAAQ,6CAA6C;AAC/F,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,wBAAwB,QAAQ,4BAA4B;AAErE,OAAO,MAAMC,gBAAgB,GAAIC,aAA0B,IAAK;EAAA,IAAAC,qBAAA,EAAAC,mBAAA;EAC9D,MAAM;IAAEC,eAAe;IAAEC,aAAa;IAAEC;EAAmB,CAAC,GAAGX,UAAU,CACvEM,aAAa,CAACM,OAChB,CAAC;EACD,MAAM;IACJC,aAAa;IACbC,eAAe;IACfC,OAAO;IACPC,UAAU;IACVC,aAAa;IACbC,qBAAqB;IACrBC;EACF,CAAC,GAAGlB,oBAAoB,CAACK,aAAa,CAAC;EAEvC,MAAM;IAAEc;EAAU,CAAC,GAAGzB,YAAY,CAAC;IACjC0B,kBAAkB,EAAEP,eAAe;IACnCH;EACF,CAAC,CAAC;EAEF,MAAMW,SAAS,GAAGpB,iCAAiC,CAAC,CAAC;EAErD,MAAMqB,MAAM,GAAGpB,uBAAuB,CAAC;IACrCqB,MAAM,EAAElB,aAAa,CAACmB,UAAU;IAChCL,SAAS;IACTR,OAAO,EAAEF;EACX,CAAC,CAAC;EAEF,MAAMgB,KAAK,GAAG5B,kBAAkB,CAAMyB,MAAM,CAAC;EAC7C,MAAMI,KAAK,GAAG9B,WAAW,CAAC,MAAM6B,KAAK,CAACD,UAAU,CAACG,MAAM,CAACD,KAAK,CAAC;EAC9DvB,wBAAwB,CAACuB,KAAK,CAAC;EAE/B,MAAME,cAAc,GAAG9B,2BAA2B,CAAC;IACjD,GAAGO,aAAa;IAChBwB,eAAe,EAAEJ,KAAK,CAACD;EACzB,CAAC,CAAC;EAEF,MAAMM,QAAQ,GACZ,CAAAxB,qBAAA,GAAAD,aAAa,CAACyB,QAAQ,aAAtBxB,qBAAA,CAAwByB,EAAE,IAC1BV,SAAS,aAAAd,mBAAA,GAATc,SAAS,CAAES,QAAQ,aAAnBvB,mBAAA,CAAsBF,aAAa,CAACyB,QAAQ,CAACC,EAAE,CAAC,GAC5C;IACEC,aAAa,EAAEX,SAAS,CAACS,QAAQ,CAACzB,aAAa,CAACyB,QAAQ,CAACC,EAAE,CAAC;IAC5DpC;EACF,CAAC,GACDsC,SAAS;EAEf,OAAO;IACL,GAAGL,cAAc;IACjBH,KAAK;IACLX,OAAO;IACPH,OAAO,EAAEH,eAAe;IACxBI,aAAa;IACbG,UAAU;IACVC,aAAa;IACbC,qBAAqB;IACrBC,YAAY;IACZY;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -1,20 +1,12 @@
|
|
|
1
1
|
import { useFetchData } from './useFetchData';
|
|
2
|
-
import { useTableGridSwitchCollection } from '@wix/patterns';
|
|
2
|
+
import { useSelector, useTableGridSwitchCollection } from '@wix/patterns';
|
|
3
3
|
import { useCommonCollectionFeatures } from './useCommonCollectionFeatures';
|
|
4
4
|
import { useFilters } from './useFilters';
|
|
5
|
-
import { useSchema } from '../providers/SchemaContext';
|
|
6
|
-
import { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';
|
|
7
5
|
import { useBaseGridFeatures } from './useBaseGridFeatures';
|
|
8
6
|
import { useBaseTableFeatures } from './useBaseTableFeatures';
|
|
7
|
+
import { useBaseCollectionParams } from './useBaseCollectionParams';
|
|
8
|
+
import { useUpdateAppContextItems } from './useUpdateAppContextItems';
|
|
9
9
|
export const useTableGridSwitchFeatures = config => {
|
|
10
|
-
const schema = useSchema();
|
|
11
|
-
const {
|
|
12
|
-
collectionId,
|
|
13
|
-
limit,
|
|
14
|
-
reflectQueryInUrl,
|
|
15
|
-
selectAllScope,
|
|
16
|
-
selectionUpdateMode
|
|
17
|
-
} = config.collection;
|
|
18
10
|
const {
|
|
19
11
|
filterComponent,
|
|
20
12
|
filtersObject,
|
|
@@ -36,40 +28,28 @@ export const useTableGridSwitchFeatures = config => {
|
|
|
36
28
|
showTitleBar
|
|
37
29
|
} = useBaseTableFeatures(config);
|
|
38
30
|
const {
|
|
39
|
-
fetchData
|
|
31
|
+
fetchData
|
|
40
32
|
} = useFetchData({
|
|
41
33
|
searchableFieldIds: Array.from(new Set([...tableVisibleFieldIds, ...gridVisibleFieldIds])),
|
|
42
34
|
filterFieldMapping
|
|
43
35
|
});
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
filters: filtersObject,
|
|
49
|
-
toExtendedFields: item => item.extendedFields,
|
|
50
|
-
fetchErrorMessage: _ref => {
|
|
51
|
-
let {
|
|
52
|
-
err
|
|
53
|
-
} = _ref;
|
|
54
|
-
return String(err);
|
|
55
|
-
},
|
|
56
|
-
fetchData: tableFetchData,
|
|
57
|
-
limit,
|
|
58
|
-
persistQueryToUrl: reflectQueryInUrl,
|
|
59
|
-
disableAutoSelectAllCount: selectAllScope === 'page',
|
|
60
|
-
selectionConsistencyMode: selectionUpdateMode
|
|
36
|
+
const params = useBaseCollectionParams({
|
|
37
|
+
config: config.collection,
|
|
38
|
+
fetchData,
|
|
39
|
+
filters: filtersObject
|
|
61
40
|
});
|
|
62
|
-
const
|
|
41
|
+
const state = useTableGridSwitchCollection(params);
|
|
42
|
+
const items = useSelector(() => state.collection.result.items);
|
|
43
|
+
useUpdateAppContextItems(items);
|
|
63
44
|
const commonFeatures = useCommonCollectionFeatures({
|
|
64
45
|
...config,
|
|
65
|
-
|
|
46
|
+
collectionState: state.collection
|
|
66
47
|
});
|
|
67
48
|
return {
|
|
68
49
|
...commonFeatures,
|
|
69
50
|
state,
|
|
70
51
|
columns: tableColumns,
|
|
71
52
|
filters: filterComponent,
|
|
72
|
-
optimisticActions,
|
|
73
53
|
customColumns,
|
|
74
54
|
onRowClick,
|
|
75
55
|
stickyColumns,
|