@payloadcms/ui 3.29.0-internal.2984e42 → 3.29.0-internal.37e46b5
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/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js +8 -5
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js +127 -143
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditMany/index.js +1 -1
- package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.js +5 -5
- package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +3 -3
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/BulkUpload/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/index.js +4 -2
- package/dist/elements/BulkUpload/index.js.map +1 -1
- package/dist/elements/Collapsible/provider.d.ts.map +1 -1
- package/dist/elements/Collapsible/provider.js +5 -3
- package/dist/elements/Collapsible/provider.js.map +1 -1
- package/dist/elements/ColumnSelector/index.js +1 -1
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/ColumnSelector/index.scss +3 -2
- package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
- package/dist/elements/DeleteDocument/index.js +2 -1
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +1 -1
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +1 -2
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/Provider.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/Provider.js +3 -3
- package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +0 -4
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/DocumentFields/index.d.ts.map +1 -1
- package/dist/elements/DocumentFields/index.js +5 -1
- package/dist/elements/DocumentFields/index.js.map +1 -1
- package/dist/elements/Drawer/index.d.ts.map +1 -1
- package/dist/elements/Drawer/index.js +5 -3
- package/dist/elements/Drawer/index.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.d.ts +1 -2
- package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +120 -108
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js +5 -6
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.d.ts +2 -12
- package/dist/elements/FieldSelect/index.d.ts.map +1 -1
- package/dist/elements/FieldSelect/index.js +48 -31
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +1 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +1 -2
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
- package/dist/elements/ListControls/index.d.ts +24 -1
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +86 -115
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/index.scss +9 -5
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +2 -4
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/Provider.js +3 -3
- package/dist/elements/ListDrawer/Provider.js.map +1 -1
- package/dist/elements/ListDrawer/types.d.ts +2 -3
- package/dist/elements/ListDrawer/types.d.ts.map +1 -1
- package/dist/elements/ListDrawer/types.js.map +1 -1
- package/dist/elements/LoadingOverlay/index.js +3 -3
- package/dist/elements/LoadingOverlay/index.js.map +1 -1
- package/dist/elements/Nav/context.d.ts.map +1 -1
- package/dist/elements/Nav/context.js +4 -2
- package/dist/elements/Nav/context.js.map +1 -1
- package/dist/elements/Pill/index.d.ts +1 -1
- package/dist/elements/Pill/index.d.ts.map +1 -1
- package/dist/elements/Pill/index.js +0 -2
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/Pill/index.scss +6 -29
- package/dist/elements/Popup/PopupButtonList/index.d.ts +1 -1
- package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +0 -1
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +1 -1
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts +1 -2
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +1 -4
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +3 -3
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +1 -1
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +4 -3
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/StepNav/context.d.ts.map +1 -1
- package/dist/elements/StepNav/context.js +5 -3
- package/dist/elements/StepNav/context.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.js +1 -24
- package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +25 -32
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +5 -3
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/TableColumns/RenderDefaultCell/index.d.ts.map +1 -0
- package/dist/{providers → elements}/TableColumns/RenderDefaultCell/index.js +6 -4
- package/dist/elements/TableColumns/RenderDefaultCell/index.js.map +1 -0
- package/dist/{providers → elements}/TableColumns/buildColumnState.d.ts +1 -1
- package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -0
- package/dist/{providers → elements}/TableColumns/buildColumnState.js +2 -9
- package/dist/elements/TableColumns/buildColumnState.js.map +1 -0
- package/dist/{providers → elements}/TableColumns/buildPolymorphicColumnState.d.ts +1 -1
- package/dist/elements/TableColumns/buildPolymorphicColumnState.d.ts.map +1 -0
- package/dist/{providers → elements}/TableColumns/buildPolymorphicColumnState.js +1 -1
- package/dist/elements/TableColumns/buildPolymorphicColumnState.js.map +1 -0
- package/dist/elements/TableColumns/context.d.ts.map +1 -0
- package/dist/elements/TableColumns/context.js +4 -0
- package/dist/elements/TableColumns/context.js.map +1 -0
- package/dist/elements/TableColumns/filterFields.d.ts.map +1 -0
- package/dist/elements/TableColumns/filterFields.js.map +1 -0
- package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -0
- package/dist/elements/TableColumns/getInitialColumns.js.map +1 -0
- package/dist/elements/TableColumns/index.d.ts.map +1 -0
- package/dist/{providers → elements}/TableColumns/index.js +3 -5
- package/dist/elements/TableColumns/index.js.map +1 -0
- package/dist/{providers → elements}/TableColumns/types.d.ts +1 -1
- package/dist/elements/TableColumns/types.d.ts.map +1 -0
- package/dist/elements/TableColumns/types.js.map +1 -0
- package/dist/elements/Thumbnail/index.js +23 -25
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
- package/dist/elements/Toasts/fieldErrors.js +2 -2
- package/dist/elements/Toasts/fieldErrors.js.map +1 -1
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +52 -8
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/Upload/index.scss +1 -0
- package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/index.js +15 -18
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/elements/WhereBuilder/transformWhereQuery.d.ts +8 -0
- package/dist/elements/WhereBuilder/transformWhereQuery.d.ts.map +1 -0
- package/dist/elements/WhereBuilder/transformWhereQuery.js +45 -0
- package/dist/elements/WhereBuilder/transformWhereQuery.js.map +1 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.d.ts +4 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.d.ts.map +1 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.js +36 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.js.map +1 -0
- package/dist/exports/client/{DatePicker-DMHV2M2L.js → CodeEditor-TQ5ADFPC.js} +2 -2
- package/dist/exports/client/{CodeEditor-J4IKAVAK.js → DatePicker-HHQ6TPOW.js} +2 -2
- package/dist/exports/client/{chunk-3AA2TJQ5.js → chunk-IMEQ6NKQ.js} +2 -2
- package/dist/exports/client/{chunk-3AA2TJQ5.js.map → chunk-IMEQ6NKQ.js.map} +3 -3
- package/dist/exports/client/{chunk-PKQOCWZD.js → chunk-LMYT7O7U.js} +2 -2
- package/dist/exports/client/{chunk-PKQOCWZD.js.map → chunk-LMYT7O7U.js.map} +3 -3
- package/dist/exports/client/index.d.ts +3 -7
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +23 -23
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/shared/index.d.ts +3 -8
- package/dist/exports/shared/index.d.ts.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +4 -4
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +3 -4
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +20 -26
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +4 -5
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/index.d.ts +1 -1
- package/dist/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/fields/Checkbox/index.js +3 -4
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Code/index.d.ts.map +1 -1
- package/dist/fields/Code/index.js +3 -4
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Collapsible/index.d.ts.map +1 -1
- package/dist/fields/Collapsible/index.js +2 -3
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/ConfirmPassword/index.js +11 -13
- package/dist/fields/ConfirmPassword/index.js.map +1 -1
- package/dist/fields/DateTime/index.d.ts.map +1 -1
- package/dist/fields/DateTime/index.js +4 -5
- package/dist/fields/DateTime/index.js.map +1 -1
- package/dist/fields/Email/index.d.ts.map +1 -1
- package/dist/fields/Email/index.js +2 -3
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/Group/index.d.ts.map +1 -1
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Group/index.scss +6 -12
- package/dist/fields/Group/provider.d.ts.map +1 -1
- package/dist/fields/Group/provider.js +5 -3
- package/dist/fields/Group/provider.js.map +1 -1
- package/dist/fields/JSON/index.d.ts.map +1 -1
- package/dist/fields/JSON/index.js +4 -5
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Number/index.d.ts.map +1 -1
- package/dist/fields/Number/index.js +5 -6
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/index.d.ts.map +1 -1
- package/dist/fields/Password/index.js +4 -2
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Point/index.d.ts.map +1 -1
- package/dist/fields/Point/index.js +3 -4
- package/dist/fields/Point/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/index.js +3 -4
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/Relationship/index.d.ts.map +1 -1
- package/dist/fields/Relationship/index.js +4 -5
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Row/provider.d.ts.map +1 -1
- package/dist/fields/Row/provider.js +5 -3
- package/dist/fields/Row/provider.js.map +1 -1
- package/dist/fields/Select/index.d.ts.map +1 -1
- package/dist/fields/Select/index.js +3 -4
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Tabs/Tab/index.d.ts +0 -1
- package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
- package/dist/fields/Tabs/Tab/index.js +25 -29
- package/dist/fields/Tabs/Tab/index.js.map +1 -1
- package/dist/fields/Tabs/Tab/index.scss +0 -4
- package/dist/fields/Tabs/index.d.ts +1 -1
- package/dist/fields/Tabs/index.d.ts.map +1 -1
- package/dist/fields/Tabs/index.js +194 -285
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Tabs/index.scss +0 -8
- package/dist/fields/Tabs/provider.d.ts.map +1 -1
- package/dist/fields/Tabs/provider.js +5 -3
- package/dist/fields/Tabs/provider.js.map +1 -1
- package/dist/fields/Text/index.d.ts.map +1 -1
- package/dist/fields/Text/index.js +3 -4
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Textarea/index.d.ts.map +1 -1
- package/dist/fields/Textarea/index.js +1 -2
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Upload/index.d.ts.map +1 -1
- package/dist/fields/Upload/index.js +1 -2
- package/dist/fields/Upload/index.js.map +1 -1
- package/dist/forms/Form/context.d.ts.map +1 -1
- package/dist/forms/Form/context.js +25 -9
- package/dist/forms/Form/context.js.map +1 -1
- package/dist/forms/Form/fieldReducer.js +1 -1
- package/dist/forms/Form/fieldReducer.js.map +1 -1
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +8 -8
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
- package/dist/forms/RowLabel/Context/index.js +2 -2
- package/dist/forms/RowLabel/Context/index.js.map +1 -1
- package/dist/forms/RowLabel/index.d.ts.map +1 -1
- package/dist/forms/RowLabel/index.js +2 -2
- package/dist/forms/RowLabel/index.js.map +1 -1
- package/dist/forms/RowLabel/types.d.ts +1 -1
- package/dist/forms/RowLabel/types.d.ts.map +1 -1
- package/dist/forms/RowLabel/types.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +1 -3
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -45
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts +2 -4
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js +0 -4
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts +2 -4
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js +0 -4
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts +2 -4
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +2 -41
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/index.d.ts +2 -4
- package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/index.js +0 -6
- package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +2 -4
- package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/iterateFields.js +0 -16
- package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
- package/dist/forms/useField/index.d.ts.map +1 -1
- package/dist/forms/useField/index.js +67 -70
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/forms/useField/types.d.ts +0 -1
- package/dist/forms/useField/types.d.ts.map +1 -1
- package/dist/forms/useField/types.js.map +1 -1
- package/dist/hooks/useQueues.js +3 -3
- package/dist/hooks/useQueues.js.map +1 -1
- package/dist/icons/Chevron/index.d.ts +0 -1
- package/dist/icons/Chevron/index.d.ts.map +1 -1
- package/dist/icons/Chevron/index.js +0 -2
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/Dots/index.d.ts +0 -2
- package/dist/icons/Dots/index.d.ts.map +1 -1
- package/dist/icons/Dots/index.js +2 -5
- package/dist/icons/Dots/index.js.map +1 -1
- package/dist/icons/Dots/index.scss +0 -14
- package/dist/providers/Actions/index.d.ts.map +1 -1
- package/dist/providers/Actions/index.js +5 -3
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +5 -3
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/ClientFunction/index.d.ts.map +1 -1
- package/dist/providers/ClientFunction/index.js +4 -4
- package/dist/providers/ClientFunction/index.js.map +1 -1
- package/dist/providers/Config/index.d.ts.map +1 -1
- package/dist/providers/Config/index.js +5 -3
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/providers/DocumentEvents/index.d.ts.map +1 -1
- package/dist/providers/DocumentEvents/index.js +5 -3
- package/dist/providers/DocumentEvents/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +5 -3
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/types.d.ts +0 -1
- package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/types.js.map +1 -1
- package/dist/providers/EditDepth/index.d.ts.map +1 -1
- package/dist/providers/EditDepth/index.js +5 -3
- package/dist/providers/EditDepth/index.js.map +1 -1
- package/dist/providers/EntityVisibility/index.d.ts.map +1 -1
- package/dist/providers/EntityVisibility/index.js +5 -3
- package/dist/providers/EntityVisibility/index.js.map +1 -1
- package/dist/providers/ListQuery/context.d.ts +0 -2
- package/dist/providers/ListQuery/context.d.ts.map +1 -1
- package/dist/providers/ListQuery/context.js +2 -4
- package/dist/providers/ListQuery/context.js.map +1 -1
- package/dist/providers/ListQuery/index.d.ts.map +1 -1
- package/dist/providers/ListQuery/index.js +14 -30
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/ListQuery/types.d.ts +3 -6
- package/dist/providers/ListQuery/types.d.ts.map +1 -1
- package/dist/providers/ListQuery/types.js.map +1 -1
- package/dist/providers/Locale/index.d.ts.map +1 -1
- package/dist/providers/Locale/index.js +9 -5
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Operation/index.d.ts.map +1 -1
- package/dist/providers/Operation/index.js +5 -3
- package/dist/providers/Operation/index.js.map +1 -1
- package/dist/providers/Params/index.d.ts.map +1 -1
- package/dist/providers/Params/index.js +5 -3
- package/dist/providers/Params/index.js.map +1 -1
- package/dist/providers/Preferences/index.d.ts.map +1 -1
- package/dist/providers/Preferences/index.js +5 -3
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/RouteCache/index.d.ts.map +1 -1
- package/dist/providers/RouteCache/index.js +5 -3
- package/dist/providers/RouteCache/index.js.map +1 -1
- package/dist/providers/RouteTransition/index.d.ts.map +1 -1
- package/dist/providers/RouteTransition/index.js +4 -2
- package/dist/providers/RouteTransition/index.js.map +1 -1
- package/dist/providers/SearchParams/index.d.ts.map +1 -1
- package/dist/providers/SearchParams/index.js +5 -3
- package/dist/providers/SearchParams/index.js.map +1 -1
- package/dist/providers/Selection/index.d.ts.map +1 -1
- package/dist/providers/Selection/index.js +5 -3
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/ServerFunctions/index.d.ts +0 -1
- package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
- package/dist/providers/ServerFunctions/index.js +2 -2
- package/dist/providers/ServerFunctions/index.js.map +1 -1
- package/dist/providers/Theme/index.d.ts.map +1 -1
- package/dist/providers/Theme/index.js +5 -3
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/providers/Translation/index.d.ts.map +1 -1
- package/dist/providers/Translation/index.js +5 -3
- package/dist/providers/Translation/index.js.map +1 -1
- package/dist/providers/UploadControls/index.d.ts +12 -0
- package/dist/providers/UploadControls/index.d.ts.map +1 -0
- package/dist/providers/UploadControls/index.js +41 -0
- package/dist/providers/UploadControls/index.js.map +1 -0
- package/dist/providers/UploadEdits/index.d.ts.map +1 -1
- package/dist/providers/UploadEdits/index.js +4 -2
- package/dist/providers/UploadEdits/index.js.map +1 -1
- package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
- package/dist/providers/UploadHandlers/index.js +3 -3
- package/dist/providers/UploadHandlers/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/buildFormState.d.ts.map +1 -1
- package/dist/utilities/buildFormState.js +1 -5
- package/dist/utilities/buildFormState.js.map +1 -1
- package/dist/utilities/mergeListSearchAndWhere.d.ts +10 -0
- package/dist/utilities/mergeListSearchAndWhere.d.ts.map +1 -0
- package/dist/utilities/mergeListSearchAndWhere.js +47 -0
- package/dist/utilities/mergeListSearchAndWhere.js.map +1 -0
- package/dist/utilities/renderTable.js +4 -4
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/utilities/upsertPreferences.d.ts +2 -7
- package/dist/utilities/upsertPreferences.d.ts.map +1 -1
- package/dist/utilities/upsertPreferences.js +5 -11
- package/dist/utilities/upsertPreferences.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +10 -8
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +1 -7
- package/dist/views/List/index.js.map +1 -1
- package/package.json +5 -5
- package/dist/elements/ListControls/ActiveQueryPreset/index.d.ts +0 -8
- package/dist/elements/ListControls/ActiveQueryPreset/index.d.ts.map +0 -1
- package/dist/elements/ListControls/ActiveQueryPreset/index.js +0 -102
- package/dist/elements/ListControls/ActiveQueryPreset/index.js.map +0 -1
- package/dist/elements/ListControls/ActiveQueryPreset/index.scss +0 -21
- package/dist/elements/ListControls/types.d.ts +0 -28
- package/dist/elements/ListControls/types.d.ts.map +0 -1
- package/dist/elements/ListControls/types.js.map +0 -1
- package/dist/elements/ListControls/useQueryPresets.d.ts +0 -17
- package/dist/elements/ListControls/useQueryPresets.d.ts.map +0 -1
- package/dist/elements/ListControls/useQueryPresets.js +0 -259
- package/dist/elements/ListControls/useQueryPresets.js.map +0 -1
- package/dist/elements/Popup/PopupDivider/index.d.ts +0 -4
- package/dist/elements/Popup/PopupDivider/index.d.ts.map +0 -1
- package/dist/elements/Popup/PopupDivider/index.js +0 -10
- package/dist/elements/Popup/PopupDivider/index.js.map +0 -1
- package/dist/elements/Popup/PopupDivider/index.scss +0 -10
- package/dist/elements/QueryPresets/cells/AccessCell/index.d.ts +0 -4
- package/dist/elements/QueryPresets/cells/AccessCell/index.d.ts.map +0 -1
- package/dist/elements/QueryPresets/cells/AccessCell/index.js +0 -25
- package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +0 -1
- package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts +0 -4
- package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts.map +0 -1
- package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +0 -11
- package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +0 -1
- package/dist/elements/QueryPresets/cells/WhereCell/index.d.ts +0 -4
- package/dist/elements/QueryPresets/cells/WhereCell/index.d.ts.map +0 -1
- package/dist/elements/QueryPresets/cells/WhereCell/index.js +0 -29
- package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +0 -1
- package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +0 -4
- package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +0 -1
- package/dist/elements/QueryPresets/fields/ColumnsField/index.js +0 -64
- package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +0 -1
- package/dist/elements/QueryPresets/fields/ColumnsField/index.scss +0 -28
- package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +0 -4
- package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +0 -1
- package/dist/elements/QueryPresets/fields/WhereField/index.js +0 -121
- package/dist/elements/QueryPresets/fields/WhereField/index.js.map +0 -1
- package/dist/elements/QueryPresets/fields/WhereField/index.scss +0 -23
- package/dist/icons/People/index.d.ts +0 -6
- package/dist/icons/People/index.d.ts.map +0 -1
- package/dist/icons/People/index.js +0 -18
- package/dist/icons/People/index.js.map +0 -1
- package/dist/icons/People/index.scss +0 -11
- package/dist/providers/TableColumns/RenderDefaultCell/index.d.ts.map +0 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +0 -1
- package/dist/providers/TableColumns/buildColumnState.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState.js.map +0 -1
- package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildPolymorphicColumnState.js.map +0 -1
- package/dist/providers/TableColumns/context.d.ts.map +0 -1
- package/dist/providers/TableColumns/context.js +0 -4
- package/dist/providers/TableColumns/context.js.map +0 -1
- package/dist/providers/TableColumns/filterFields.d.ts.map +0 -1
- package/dist/providers/TableColumns/filterFields.js.map +0 -1
- package/dist/providers/TableColumns/getInitialColumns.d.ts.map +0 -1
- package/dist/providers/TableColumns/getInitialColumns.js.map +0 -1
- package/dist/providers/TableColumns/index.d.ts.map +0 -1
- package/dist/providers/TableColumns/index.js.map +0 -1
- package/dist/providers/TableColumns/types.d.ts.map +0 -1
- package/dist/providers/TableColumns/types.js +0 -2
- package/dist/providers/TableColumns/types.js.map +0 -1
- package/dist/utilities/getDisplayedFieldValue.d.ts +0 -13
- package/dist/utilities/getDisplayedFieldValue.d.ts.map +0 -1
- package/dist/utilities/getDisplayedFieldValue.js +0 -28
- package/dist/utilities/getDisplayedFieldValue.js.map +0 -1
- package/dist/utilities/hasOptionLabelJSXElement.d.ts +0 -3
- package/dist/utilities/hasOptionLabelJSXElement.d.ts.map +0 -1
- package/dist/utilities/hasOptionLabelJSXElement.js +0 -15
- package/dist/utilities/hasOptionLabelJSXElement.js.map +0 -1
- /package/dist/{providers → elements}/TableColumns/RenderDefaultCell/index.d.ts +0 -0
- /package/dist/{providers → elements}/TableColumns/RenderDefaultCell/index.scss +0 -0
- /package/dist/{providers → elements}/TableColumns/context.d.ts +0 -0
- /package/dist/{providers → elements}/TableColumns/filterFields.d.ts +0 -0
- /package/dist/{providers → elements}/TableColumns/filterFields.js +0 -0
- /package/dist/{providers → elements}/TableColumns/getInitialColumns.d.ts +0 -0
- /package/dist/{providers → elements}/TableColumns/getInitialColumns.js +0 -0
- /package/dist/{providers → elements}/TableColumns/index.d.ts +0 -0
- /package/dist/elements/{ListControls → TableColumns}/types.js +0 -0
- /package/dist/exports/client/{CodeEditor-J4IKAVAK.js.map → CodeEditor-TQ5ADFPC.js.map} +0 -0
- /package/dist/exports/client/{DatePicker-DMHV2M2L.js.map → DatePicker-HHQ6TPOW.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/EntityVisibility/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEhG,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/EntityVisibility/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEhG,OAAO,KAAiD,MAAM,OAAO,CAAA;AAErE,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,CAAC,EAChB,cAAc,EACd,UAAU,GACX,EAAE;QACD,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;QAClD,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;KAC3C,KAAK,OAAO,CAAA;IACb,eAAe,EAAE,eAAe,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,uBAAuB,2CAAkD,CAAA;AAEtF,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CA2BA,CAAA;AAED,eAAO,MAAM,mBAAmB,QAAO,0BACF,CAAA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
import React, { createContext,
|
|
5
|
+
import React, { createContext, useCallback, useContext } from 'react';
|
|
6
6
|
export const EntityVisibilityContext = /*#__PURE__*/createContext({});
|
|
7
7
|
export const EntityVisibilityProvider = t0 => {
|
|
8
8
|
const $ = _c(6);
|
|
@@ -33,7 +33,7 @@ export const EntityVisibilityProvider = t0 => {
|
|
|
33
33
|
const isEntityVisible = t1;
|
|
34
34
|
let t2;
|
|
35
35
|
if ($[2] !== children || $[3] !== isEntityVisible || $[4] !== visibleEntities) {
|
|
36
|
-
t2 = _jsx(EntityVisibilityContext, {
|
|
36
|
+
t2 = _jsx(EntityVisibilityContext.Provider, {
|
|
37
37
|
value: {
|
|
38
38
|
isEntityVisible,
|
|
39
39
|
visibleEntities
|
|
@@ -49,5 +49,7 @@ export const EntityVisibilityProvider = t0 => {
|
|
|
49
49
|
}
|
|
50
50
|
return t2;
|
|
51
51
|
};
|
|
52
|
-
export const useEntityVisibility = () =>
|
|
52
|
+
export const useEntityVisibility = () => {
|
|
53
|
+
return useContext(EntityVisibilityContext);
|
|
54
|
+
};
|
|
53
55
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","createContext","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","createContext","useCallback","useContext","EntityVisibilityContext","EntityVisibilityProvider","t0","$","children","visibleEntities","t1","t2","collectionSlug","globalSlug","collections","includes","globals","isEntityVisible","_jsx","Provider","value","useEntityVisibility"],"sources":["../../../src/providers/EntityVisibility/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig, SanitizedGlobalConfig, VisibleEntities } from 'payload'\n\nimport React, { createContext, useCallback, useContext } from 'react'\n\nexport type VisibleEntitiesContextType = {\n isEntityVisible: ({\n collectionSlug,\n globalSlug,\n }: {\n collectionSlug?: SanitizedCollectionConfig['slug']\n globalSlug?: SanitizedGlobalConfig['slug']\n }) => boolean\n visibleEntities: VisibleEntities\n}\n\nexport const EntityVisibilityContext = createContext({} as VisibleEntitiesContextType)\n\nexport const EntityVisibilityProvider: React.FC<{\n children: React.ReactNode\n visibleEntities?: VisibleEntities\n}> = ({ children, visibleEntities }) => {\n const isEntityVisible = useCallback(\n ({\n collectionSlug,\n globalSlug,\n }: {\n collectionSlug: SanitizedCollectionConfig['slug']\n globalSlug: SanitizedGlobalConfig['slug']\n }) => {\n if (collectionSlug) {\n return visibleEntities.collections.includes(collectionSlug)\n }\n\n if (globalSlug) {\n return visibleEntities.globals.includes(globalSlug)\n }\n\n return false\n },\n [visibleEntities],\n )\n\n return (\n <EntityVisibilityContext.Provider value={{ isEntityVisible, visibleEntities }}>\n {children}\n </EntityVisibilityContext.Provider>\n )\n}\n\nexport const useEntityVisibility = (): VisibleEntitiesContextType =>\n useContext(EntityVisibilityContext)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,IAASC,aAAa,EAAEC,WAAW,EAAEC,UAAU,QAAQ;AAa9D,OAAO,MAAMC,uBAAA,gBAA0BH,aAAA,CAAc,CAAC;AAEtD,OAAO,MAAMI,wBAAA,GAGRC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAC;IAAAS,QAAA;IAAAC;EAAA,IAAAH,EAA6B;EAAA,IAAAI,EAAA;EAAA,IAAAH,CAAA,QAAAE,eAAA;IAE/BC,EAAA,GAAAC,EAAA;MAAC;QAAAC,cAAA;QAAAC;MAAA,IAAAF,EAMA;MAAA,IACKC,cAAA;QAAA,OACKH,eAAA,CAAAK,WAAA,CAAAC,QAAA,CAAqCH,cAAA;MAAA;MAAA,IAG1CC,UAAA;QAAA,OACKJ,eAAA,CAAAO,OAAA,CAAAD,QAAA,CAAiCF,UAAA;MAAA;MAAA;IAAA;IAI5CN,CAAA,MAAAE,eAAA;IAAAF,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAjBF,MAAAU,eAAA,GAAwBP,EAkBL;EAAA,IAAAC,EAAA;EAAA,IAAAJ,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAU,eAAA,IAAAV,CAAA,QAAAE,eAAA;IAIjBE,EAAA,GAAAO,IAAA,CAAAd,uBAAA,CAAAe,QAAA;MAAAC,KAAA;QAAAH,eAAA;QAAAR;MAAA;MAAAD;IAAA,C;;;;;;;;SAAAG,E;CAIJ;AAEA,OAAO,MAAMU,mBAAA,GAAsBA,CAAA;EAAA,OACjClB,UAAA,CAAAC,uBAAW;AAAA","ignoreList":[]}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import type { IListQueryContext } from './types.js';
|
|
2
2
|
export declare const ListQueryContext: import("react").Context<IListQueryContext>;
|
|
3
3
|
export declare const useListQuery: () => IListQueryContext;
|
|
4
|
-
export declare const ListQueryModifiedContext: import("react").Context<boolean>;
|
|
5
|
-
export declare const useListQueryModified: () => boolean;
|
|
6
4
|
//# sourceMappingURL=context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/providers/ListQuery/context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,eAAO,MAAM,gBAAgB,4CAAyC,CAAA;AAEtE,eAAO,MAAM,YAAY,QAAO,
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/providers/ListQuery/context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,eAAO,MAAM,gBAAgB,4CAAyC,CAAA;AAEtE,eAAO,MAAM,YAAY,QAAO,iBAAiD,CAAA"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { createContext,
|
|
1
|
+
import { createContext, useContext } from 'react';
|
|
2
2
|
export const ListQueryContext = createContext({});
|
|
3
|
-
export const useListQuery = () =>
|
|
4
|
-
export const ListQueryModifiedContext = createContext(false);
|
|
5
|
-
export const useListQueryModified = () => use(ListQueryModifiedContext);
|
|
3
|
+
export const useListQuery = () => useContext(ListQueryContext);
|
|
6
4
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":["createContext","
|
|
1
|
+
{"version":3,"file":"context.js","names":["createContext","useContext","ListQueryContext","useListQuery"],"sources":["../../../src/providers/ListQuery/context.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\n\nimport type { IListQueryContext } from './types.js'\n\nexport const ListQueryContext = createContext({} as IListQueryContext)\n\nexport const useListQuery = (): IListQueryContext => useContext(ListQueryContext)\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ;AAI1C,OAAO,MAAMC,gBAAA,GAAmBF,aAAA,CAAc,CAAC;AAE/C,OAAO,MAAMG,YAAA,GAAeA,CAAA,KAAyBF,UAAA,CAAWC,gBAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListQuery/index.tsx"],"names":[],"mappings":"AAKA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListQuery/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAoD,MAAM,OAAO,CAAA;AAExE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAQhD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAkLtD,CAAA"}
|
|
@@ -4,16 +4,15 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
4
4
|
import { useRouter, useSearchParams } from 'next/navigation.js';
|
|
5
5
|
import { isNumber, transformColumnsToSearchParams } from 'payload/shared';
|
|
6
6
|
import * as qs from 'qs-esm';
|
|
7
|
-
import React, { useCallback, useEffect, useMemo,
|
|
7
|
+
import React, { useCallback, useEffect, useMemo, useState } from 'react';
|
|
8
8
|
import { useListDrawerContext } from '../../elements/ListDrawer/Provider.js';
|
|
9
9
|
import { useEffectEvent } from '../../hooks/useEffectEvent.js';
|
|
10
10
|
import { useRouteTransition } from '../../providers/RouteTransition/index.js';
|
|
11
11
|
import { parseSearchParams } from '../../utilities/parseSearchParams.js';
|
|
12
|
-
import { ListQueryContext
|
|
12
|
+
import { ListQueryContext } from './context.js';
|
|
13
13
|
export { useListQuery } from './context.js';
|
|
14
14
|
export const ListQueryProvider = ({
|
|
15
15
|
children,
|
|
16
|
-
collectionSlug,
|
|
17
16
|
columns,
|
|
18
17
|
data,
|
|
19
18
|
defaultLimit,
|
|
@@ -29,10 +28,7 @@ export const ListQueryProvider = ({
|
|
|
29
28
|
const {
|
|
30
29
|
startRouteTransition
|
|
31
30
|
} = useRouteTransition();
|
|
32
|
-
const [modified, setModified] = useState(false);
|
|
33
31
|
const searchParams = useMemo(() => parseSearchParams(rawSearchParams), [rawSearchParams]);
|
|
34
|
-
const contextRef = useRef({});
|
|
35
|
-
contextRef.current.modified = modified;
|
|
36
32
|
const {
|
|
37
33
|
onQueryChange
|
|
38
34
|
} = useListDrawerContext();
|
|
@@ -45,24 +41,18 @@ export const ListQueryProvider = ({
|
|
|
45
41
|
});
|
|
46
42
|
const refineListData = useCallback(
|
|
47
43
|
// eslint-disable-next-line @typescript-eslint/require-await
|
|
48
|
-
async
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
} else {
|
|
52
|
-
setModified(true);
|
|
53
|
-
}
|
|
54
|
-
let page = 'page' in incomingQuery ? incomingQuery.page : currentQuery?.page;
|
|
55
|
-
if ('where' in incomingQuery || 'search' in incomingQuery) {
|
|
44
|
+
async query => {
|
|
45
|
+
let page = 'page' in query ? query.page : currentQuery?.page;
|
|
46
|
+
if ('where' in query || 'search' in query) {
|
|
56
47
|
page = '1';
|
|
57
48
|
}
|
|
58
49
|
const newQuery = {
|
|
59
|
-
columns: 'columns' in
|
|
60
|
-
limit: 'limit' in
|
|
50
|
+
columns: 'columns' in query ? query.columns : currentQuery.columns,
|
|
51
|
+
limit: 'limit' in query ? query.limit : currentQuery?.limit ?? String(defaultLimit),
|
|
61
52
|
page,
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
where: 'where' in incomingQuery ? incomingQuery.where : currentQuery?.where
|
|
53
|
+
search: 'search' in query ? query.search : currentQuery?.search,
|
|
54
|
+
sort: 'sort' in query ? query.sort : currentQuery?.sort ?? defaultSort,
|
|
55
|
+
where: 'where' in query ? query.where : currentQuery?.where
|
|
66
56
|
};
|
|
67
57
|
if (modifySearchParams) {
|
|
68
58
|
startRouteTransition(() => router.replace(`${qs.stringify({
|
|
@@ -76,7 +66,7 @@ export const ListQueryProvider = ({
|
|
|
76
66
|
onChangeFn(newQuery);
|
|
77
67
|
}
|
|
78
68
|
setCurrentQuery(newQuery);
|
|
79
|
-
}, [currentQuery?.columns, currentQuery?.limit, currentQuery?.page, currentQuery?.search, currentQuery?.sort, currentQuery?.where,
|
|
69
|
+
}, [currentQuery?.columns, currentQuery?.limit, currentQuery?.page, currentQuery?.search, currentQuery?.sort, currentQuery?.where, startRouteTransition, defaultLimit, defaultSort, modifySearchParams, onQueryChange, onQueryChangeFromProps, router]);
|
|
80
70
|
const handlePageChange = useCallback(async arg => {
|
|
81
71
|
await refineListData({
|
|
82
72
|
page: String(arg)
|
|
@@ -141,9 +131,8 @@ export const ListQueryProvider = ({
|
|
|
141
131
|
syncQuery();
|
|
142
132
|
}
|
|
143
133
|
}, [defaultSort, defaultLimit, modifySearchParams, columns]);
|
|
144
|
-
return /*#__PURE__*/_jsx(ListQueryContext, {
|
|
134
|
+
return /*#__PURE__*/_jsx(ListQueryContext.Provider, {
|
|
145
135
|
value: {
|
|
146
|
-
collectionSlug,
|
|
147
136
|
data,
|
|
148
137
|
handlePageChange,
|
|
149
138
|
handlePerPageChange,
|
|
@@ -151,14 +140,9 @@ export const ListQueryProvider = ({
|
|
|
151
140
|
handleSortChange,
|
|
152
141
|
handleWhereChange,
|
|
153
142
|
query: currentQuery,
|
|
154
|
-
refineListData
|
|
155
|
-
setModified,
|
|
156
|
-
...contextRef.current
|
|
143
|
+
refineListData
|
|
157
144
|
},
|
|
158
|
-
children:
|
|
159
|
-
value: modified,
|
|
160
|
-
children: children
|
|
161
|
-
})
|
|
145
|
+
children: children
|
|
162
146
|
});
|
|
163
147
|
};
|
|
164
148
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["useRouter","useSearchParams","isNumber","transformColumnsToSearchParams","qs","React","useCallback","useEffect","useMemo","useRef","useState","useListDrawerContext","useEffectEvent","useRouteTransition","parseSearchParams","ListQueryContext","ListQueryModifiedContext","useListQuery","ListQueryProvider","children","collectionSlug","columns","data","defaultLimit","defaultSort","listPreferences","modifySearchParams","onQueryChange","onQueryChangeFromProps","router","rawSearchParams","startRouteTransition","modified","setModified","searchParams","contextRef","current","currentQuery","setCurrentQuery","refineListData","incomingQuery","undefined","page","newQuery","limit","String","preset","search","sort","where","replace","stringify","JSON","addQueryPrefix","onChangeFn","handlePageChange","arg","handlePerPageChange","handleSearchChange","handleSortChange","handleWhereChange","syncQuery","shouldUpdateQueryString","window","history","replaceState","_jsx","value","query"],"sources":["../../../src/providers/ListQuery/index.tsx"],"sourcesContent":["'use client'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport { type ListQuery, type Where } from 'payload'\nimport { isNumber, transformColumnsToSearchParams } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useMemo, useRef, useState } from 'react'\n\nimport type { IListQueryContext, ListQueryProps } from './types.js'\n\nimport { useListDrawerContext } from '../../elements/ListDrawer/Provider.js'\nimport { useEffectEvent } from '../../hooks/useEffectEvent.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\nimport { ListQueryContext, ListQueryModifiedContext } from './context.js'\n\nexport { useListQuery } from './context.js'\n\nexport const ListQueryProvider: React.FC<ListQueryProps> = ({\n children,\n collectionSlug,\n columns,\n data,\n defaultLimit,\n defaultSort,\n listPreferences,\n modifySearchParams,\n onQueryChange: onQueryChangeFromProps,\n}) => {\n 'use no memo'\n const router = useRouter()\n const rawSearchParams = useSearchParams()\n const { startRouteTransition } = useRouteTransition()\n const [modified, setModified] = useState(false)\n\n const searchParams = useMemo<ListQuery>(\n () => parseSearchParams(rawSearchParams),\n [rawSearchParams],\n )\n\n const contextRef = useRef({} as IListQueryContext)\n\n contextRef.current.modified = modified\n\n const { onQueryChange } = useListDrawerContext()\n\n const [currentQuery, setCurrentQuery] = useState<ListQuery>(() => {\n if (modifySearchParams) {\n return searchParams\n } else {\n return {}\n }\n })\n\n const refineListData = useCallback(\n // eslint-disable-next-line @typescript-eslint/require-await\n async (incomingQuery: ListQuery, modified?: boolean) => {\n if (modified !== undefined) {\n setModified(modified)\n } else {\n setModified(true)\n }\n\n let page = 'page' in incomingQuery ? incomingQuery.page : currentQuery?.page\n\n if ('where' in incomingQuery || 'search' in incomingQuery) {\n page = '1'\n }\n\n const newQuery: ListQuery = {\n columns: 'columns' in incomingQuery ? incomingQuery.columns : currentQuery.columns,\n limit:\n 'limit' in incomingQuery\n ? incomingQuery.limit\n : (currentQuery?.limit ?? String(defaultLimit)),\n page,\n preset: 'preset' in incomingQuery ? incomingQuery.preset : currentQuery?.preset,\n search: 'search' in incomingQuery ? incomingQuery.search : currentQuery?.search,\n sort:\n 'sort' in incomingQuery\n ? incomingQuery.sort\n : ((currentQuery?.sort as string) ?? defaultSort),\n where: 'where' in incomingQuery ? incomingQuery.where : currentQuery?.where,\n }\n\n if (modifySearchParams) {\n startRouteTransition(() =>\n router.replace(\n `${qs.stringify(\n { ...newQuery, columns: JSON.stringify(newQuery.columns) },\n { addQueryPrefix: true },\n )}`,\n ),\n )\n } else if (\n typeof onQueryChange === 'function' ||\n typeof onQueryChangeFromProps === 'function'\n ) {\n const onChangeFn = onQueryChange || onQueryChangeFromProps\n onChangeFn(newQuery)\n }\n\n setCurrentQuery(newQuery)\n },\n [\n currentQuery?.columns,\n currentQuery?.limit,\n currentQuery?.page,\n currentQuery?.search,\n currentQuery?.sort,\n currentQuery?.where,\n currentQuery?.preset,\n startRouteTransition,\n defaultLimit,\n defaultSort,\n modifySearchParams,\n onQueryChange,\n onQueryChangeFromProps,\n router,\n ],\n )\n\n const handlePageChange = useCallback(\n async (arg: number) => {\n await refineListData({ page: String(arg) })\n },\n [refineListData],\n )\n\n const handlePerPageChange = React.useCallback(\n async (arg: number) => {\n await refineListData({ limit: String(arg), page: '1' })\n },\n [refineListData],\n )\n\n const handleSearchChange = useCallback(\n async (arg: string) => {\n const search = arg === '' ? undefined : arg\n await refineListData({ search })\n },\n [refineListData],\n )\n\n const handleSortChange = useCallback(\n async (arg: string) => {\n await refineListData({ sort: arg })\n },\n [refineListData],\n )\n\n const handleWhereChange = useCallback(\n async (arg: Where) => {\n await refineListData({ where: arg })\n },\n [refineListData],\n )\n\n const syncQuery = useEffectEvent(() => {\n let shouldUpdateQueryString = false\n const newQuery = { ...(currentQuery || {}) }\n\n // Allow the URL to override the default limit\n if (isNumber(defaultLimit) && !('limit' in currentQuery)) {\n newQuery.limit = String(defaultLimit)\n shouldUpdateQueryString = true\n }\n\n // Allow the URL to override the default sort\n if (defaultSort && !('sort' in currentQuery)) {\n newQuery.sort = defaultSort\n shouldUpdateQueryString = true\n }\n\n // Only modify columns if they originated from preferences\n // We can assume they did if `listPreferences.columns` is defined\n if (columns && listPreferences?.columns && !('columns' in currentQuery)) {\n newQuery.columns = transformColumnsToSearchParams(columns)\n shouldUpdateQueryString = true\n }\n\n if (shouldUpdateQueryString) {\n setCurrentQuery(newQuery)\n // Do not use router.replace here to avoid re-rendering on initial load\n window.history.replaceState(\n null,\n '',\n `?${qs.stringify({ ...newQuery, columns: JSON.stringify(newQuery.columns) })}`,\n )\n }\n })\n\n // If `defaultLimit` or `defaultSort` are updated externally, update the query\n // I.e. when HMR runs, these properties may be different\n useEffect(() => {\n if (modifySearchParams) {\n syncQuery()\n }\n }, [defaultSort, defaultLimit, modifySearchParams, columns])\n\n return (\n <ListQueryContext\n value={{\n collectionSlug,\n data,\n handlePageChange,\n handlePerPageChange,\n handleSearchChange,\n handleSortChange,\n handleWhereChange,\n query: currentQuery,\n refineListData,\n setModified,\n ...contextRef.current,\n }}\n >\n <ListQueryModifiedContext value={modified}>{children}</ListQueryModifiedContext>\n </ListQueryContext>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["useRouter","useSearchParams","isNumber","transformColumnsToSearchParams","qs","React","useCallback","useEffect","useMemo","useState","useListDrawerContext","useEffectEvent","useRouteTransition","parseSearchParams","ListQueryContext","useListQuery","ListQueryProvider","children","columns","data","defaultLimit","defaultSort","listPreferences","modifySearchParams","onQueryChange","onQueryChangeFromProps","router","rawSearchParams","startRouteTransition","searchParams","currentQuery","setCurrentQuery","refineListData","query","page","newQuery","limit","String","search","sort","where","replace","stringify","JSON","addQueryPrefix","onChangeFn","handlePageChange","arg","handlePerPageChange","handleSearchChange","undefined","handleSortChange","handleWhereChange","syncQuery","shouldUpdateQueryString","window","history","replaceState","_jsx","Provider","value"],"sources":["../../../src/providers/ListQuery/index.tsx"],"sourcesContent":["'use client'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport { type ListQuery, type Where } from 'payload'\nimport { isNumber, transformColumnsToSearchParams } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\n\nimport type { ListQueryProps } from './types.js'\n\nimport { useListDrawerContext } from '../../elements/ListDrawer/Provider.js'\nimport { useEffectEvent } from '../../hooks/useEffectEvent.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\nimport { ListQueryContext } from './context.js'\n\nexport { useListQuery } from './context.js'\n\nexport const ListQueryProvider: React.FC<ListQueryProps> = ({\n children,\n columns,\n data,\n defaultLimit,\n defaultSort,\n listPreferences,\n modifySearchParams,\n onQueryChange: onQueryChangeFromProps,\n}) => {\n 'use no memo'\n const router = useRouter()\n const rawSearchParams = useSearchParams()\n const { startRouteTransition } = useRouteTransition()\n\n const searchParams = useMemo<ListQuery>(\n () => parseSearchParams(rawSearchParams),\n [rawSearchParams],\n )\n\n const { onQueryChange } = useListDrawerContext()\n\n const [currentQuery, setCurrentQuery] = useState<ListQuery>(() => {\n if (modifySearchParams) {\n return searchParams\n } else {\n return {}\n }\n })\n\n const refineListData = useCallback(\n // eslint-disable-next-line @typescript-eslint/require-await\n async (query: ListQuery) => {\n let page = 'page' in query ? query.page : currentQuery?.page\n\n if ('where' in query || 'search' in query) {\n page = '1'\n }\n\n const newQuery: ListQuery = {\n columns: 'columns' in query ? query.columns : currentQuery.columns,\n limit: 'limit' in query ? query.limit : (currentQuery?.limit ?? String(defaultLimit)),\n page,\n search: 'search' in query ? query.search : currentQuery?.search,\n sort: 'sort' in query ? query.sort : ((currentQuery?.sort as string) ?? defaultSort),\n where: 'where' in query ? query.where : currentQuery?.where,\n }\n\n if (modifySearchParams) {\n startRouteTransition(() =>\n router.replace(\n `${qs.stringify(\n { ...newQuery, columns: JSON.stringify(newQuery.columns) },\n { addQueryPrefix: true },\n )}`,\n ),\n )\n } else if (\n typeof onQueryChange === 'function' ||\n typeof onQueryChangeFromProps === 'function'\n ) {\n const onChangeFn = onQueryChange || onQueryChangeFromProps\n onChangeFn(newQuery)\n }\n\n setCurrentQuery(newQuery)\n },\n [\n currentQuery?.columns,\n currentQuery?.limit,\n currentQuery?.page,\n currentQuery?.search,\n currentQuery?.sort,\n currentQuery?.where,\n startRouteTransition,\n defaultLimit,\n defaultSort,\n modifySearchParams,\n onQueryChange,\n onQueryChangeFromProps,\n router,\n ],\n )\n\n const handlePageChange = useCallback(\n async (arg: number) => {\n await refineListData({ page: String(arg) })\n },\n [refineListData],\n )\n\n const handlePerPageChange = React.useCallback(\n async (arg: number) => {\n await refineListData({ limit: String(arg), page: '1' })\n },\n [refineListData],\n )\n\n const handleSearchChange = useCallback(\n async (arg: string) => {\n const search = arg === '' ? undefined : arg\n await refineListData({ search })\n },\n [refineListData],\n )\n\n const handleSortChange = useCallback(\n async (arg: string) => {\n await refineListData({ sort: arg })\n },\n [refineListData],\n )\n\n const handleWhereChange = useCallback(\n async (arg: Where) => {\n await refineListData({ where: arg })\n },\n [refineListData],\n )\n\n const syncQuery = useEffectEvent(() => {\n let shouldUpdateQueryString = false\n const newQuery = { ...(currentQuery || {}) }\n\n // Allow the URL to override the default limit\n if (isNumber(defaultLimit) && !('limit' in currentQuery)) {\n newQuery.limit = String(defaultLimit)\n shouldUpdateQueryString = true\n }\n\n // Allow the URL to override the default sort\n if (defaultSort && !('sort' in currentQuery)) {\n newQuery.sort = defaultSort\n shouldUpdateQueryString = true\n }\n\n // Only modify columns if they originated from preferences\n // We can assume they did if `listPreferences.columns` is defined\n if (columns && listPreferences?.columns && !('columns' in currentQuery)) {\n newQuery.columns = transformColumnsToSearchParams(columns)\n shouldUpdateQueryString = true\n }\n\n if (shouldUpdateQueryString) {\n setCurrentQuery(newQuery)\n // Do not use router.replace here to avoid re-rendering on initial load\n window.history.replaceState(\n null,\n '',\n `?${qs.stringify({ ...newQuery, columns: JSON.stringify(newQuery.columns) })}`,\n )\n }\n })\n\n // If `defaultLimit` or `defaultSort` are updated externally, update the query\n // I.e. when HMR runs, these properties may be different\n useEffect(() => {\n if (modifySearchParams) {\n syncQuery()\n }\n }, [defaultSort, defaultLimit, modifySearchParams, columns])\n\n return (\n <ListQueryContext.Provider\n value={{\n data,\n handlePageChange,\n handlePerPageChange,\n handleSearchChange,\n handleSortChange,\n handleWhereChange,\n query: currentQuery,\n refineListData,\n }}\n >\n {children}\n </ListQueryContext.Provider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ColumnPreference, ListPreferences, ListQuery, PaginatedDocs, Sort, Where } from 'payload';
|
|
2
2
|
type ContextHandlers = {
|
|
3
3
|
handlePageChange?: (page: number) => Promise<void>;
|
|
4
4
|
handlePerPageChange?: (limit: number) => Promise<void>;
|
|
@@ -9,7 +9,7 @@ type ContextHandlers = {
|
|
|
9
9
|
export type OnListQueryChange = (query: ListQuery) => void;
|
|
10
10
|
export type ListQueryProps = {
|
|
11
11
|
readonly children: React.ReactNode;
|
|
12
|
-
readonly collectionSlug?:
|
|
12
|
+
readonly collectionSlug?: string;
|
|
13
13
|
readonly columns?: ColumnPreference[];
|
|
14
14
|
readonly data: PaginatedDocs;
|
|
15
15
|
readonly defaultLimit?: number;
|
|
@@ -23,14 +23,11 @@ export type ListQueryProps = {
|
|
|
23
23
|
readonly preferenceKey?: string;
|
|
24
24
|
};
|
|
25
25
|
export type IListQueryContext = {
|
|
26
|
-
collectionSlug: ClientCollectionConfig['slug'];
|
|
27
26
|
data: PaginatedDocs;
|
|
28
27
|
defaultLimit?: number;
|
|
29
28
|
defaultSort?: Sort;
|
|
30
|
-
modified: boolean;
|
|
31
29
|
query: ListQuery;
|
|
32
|
-
refineListData: (args: ListQuery
|
|
33
|
-
setModified: (modified: boolean) => void;
|
|
30
|
+
refineListData: (args: ListQuery) => Promise<void>;
|
|
34
31
|
} & ContextHandlers;
|
|
35
32
|
export {};
|
|
36
33
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/ListQuery/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/ListQuery/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,aAAa,EACb,IAAI,EACJ,KAAK,EACN,MAAM,SAAS,CAAA;AAEhB,KAAK,eAAe,GAAG;IACrB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACpD,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAA;AAE1D,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IACrC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA;IAC3B,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAA;IAC1C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAA;IAC1C;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,aAAa,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,KAAK,EAAE,SAAS,CAAA;IAChB,cAAc,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACnD,GAAG,eAAe,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../src/providers/ListQuery/types.ts"],"sourcesContent":["import type {\n
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../src/providers/ListQuery/types.ts"],"sourcesContent":["import type {\n ColumnPreference,\n ListPreferences,\n ListQuery,\n PaginatedDocs,\n Sort,\n Where,\n} from 'payload'\n\ntype ContextHandlers = {\n handlePageChange?: (page: number) => Promise<void>\n handlePerPageChange?: (limit: number) => Promise<void>\n handleSearchChange?: (search: string) => Promise<void>\n handleSortChange?: (sort: string) => Promise<void>\n handleWhereChange?: (where: Where) => Promise<void>\n}\n\nexport type OnListQueryChange = (query: ListQuery) => void\n\nexport type ListQueryProps = {\n readonly children: React.ReactNode\n readonly collectionSlug?: string\n readonly columns?: ColumnPreference[]\n readonly data: PaginatedDocs\n readonly defaultLimit?: number\n readonly defaultSort?: Sort\n readonly listPreferences?: ListPreferences\n readonly modifySearchParams?: boolean\n readonly onQueryChange?: OnListQueryChange\n /**\n * @deprecated\n */\n readonly preferenceKey?: string\n}\n\nexport type IListQueryContext = {\n data: PaginatedDocs\n defaultLimit?: number\n defaultSort?: Sort\n query: ListQuery\n refineListData: (args: ListQuery) => Promise<void>\n} & ContextHandlers\n"],"mappings":"AAmCA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Locale/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAGrC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Locale/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAGrC,OAAO,KAAiE,MAAM,OAAO,CAAA;AASrF,eAAO,MAAM,oBAAoB;;4BAEP,OAAO;EAC/B,CAAA;AAcF,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;CAAE,CA2F5F,CAAA;AAED,eAAO,MAAM,gBAAgB;;4BA5GH,OAAO;CA4GqC,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,SAAS,QAAO,MAAmC,CAAA"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
5
|
import { useSearchParams } from 'next/navigation.js';
|
|
6
|
-
import React, { createContext,
|
|
6
|
+
import React, { createContext, useContext, useEffect, useRef, useState } from 'react';
|
|
7
7
|
import { findLocaleFromCode } from '../../utilities/findLocaleFromCode.js';
|
|
8
8
|
import { useAuth } from '../Auth/index.js';
|
|
9
9
|
import { useConfig } from '../Config/index.js';
|
|
@@ -133,9 +133,9 @@ export const LocaleProvider = t0 => {
|
|
|
133
133
|
useEffect(t9, t11);
|
|
134
134
|
let t12;
|
|
135
135
|
if ($[23] !== children || $[24] !== isLoading || $[25] !== locale) {
|
|
136
|
-
t12 = _jsx(LocaleContext, {
|
|
136
|
+
t12 = _jsx(LocaleContext.Provider, {
|
|
137
137
|
value: locale,
|
|
138
|
-
children: _jsx(LocaleLoadingContext, {
|
|
138
|
+
children: _jsx(LocaleLoadingContext.Provider, {
|
|
139
139
|
value: {
|
|
140
140
|
localeIsLoading: isLoading,
|
|
141
141
|
setLocaleIsLoading
|
|
@@ -152,12 +152,16 @@ export const LocaleProvider = t0 => {
|
|
|
152
152
|
}
|
|
153
153
|
return t12;
|
|
154
154
|
};
|
|
155
|
-
export const useLocaleLoading = () =>
|
|
155
|
+
export const useLocaleLoading = () => {
|
|
156
|
+
return useContext(LocaleLoadingContext);
|
|
157
|
+
};
|
|
156
158
|
/**
|
|
157
159
|
* TODO: V4
|
|
158
160
|
* The return type of the `useLocale` hook will change in v4. It will return `null | Locale` instead of `false | {} | Locale`.
|
|
159
161
|
*/
|
|
160
|
-
export const useLocale = () =>
|
|
162
|
+
export const useLocale = () => {
|
|
163
|
+
return useContext(LocaleContext);
|
|
164
|
+
};
|
|
161
165
|
function _temp(res) {
|
|
162
166
|
return res.value;
|
|
163
167
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","useSearchParams","React","createContext","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","useSearchParams","React","createContext","useContext","useEffect","useRef","useState","findLocaleFromCode","useAuth","useConfig","usePreferences","LocaleContext","LocaleLoadingContext","localeIsLoading","setLocaleIsLoading","_","undefined","fetchPreferences","key","baseURL","fetch","credentials","headers","method","then","res","json","LocaleProvider","t0","$","children","locale","initialLocaleFromPrefs","config","t1","localization","t2","routes","t3","serverURL","api","apiRoute","user","defaultLocale","getPreference","t4","t5","get","localeFromParams","t6","locales","length","code","setLocale","isLoading","prevLocale","t7","t8","current","fetchURL","t9","id","resetLocale","localeToUse","_temp","newLocale","t10","t11","t12","_jsx","Provider","value","useLocaleLoading","useLocale"],"sources":["../../../src/providers/Locale/index.tsx"],"sourcesContent":["'use client'\n\nimport type { Locale } from 'payload'\n\nimport { useSearchParams } from 'next/navigation.js'\nimport React, { createContext, useContext, useEffect, useRef, useState } from 'react'\n\nimport { findLocaleFromCode } from '../../utilities/findLocaleFromCode.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { usePreferences } from '../Preferences/index.js'\n\nconst LocaleContext = createContext({} as Locale)\n\nexport const LocaleLoadingContext = createContext({\n localeIsLoading: false,\n setLocaleIsLoading: (_: boolean) => undefined,\n})\n\nconst fetchPreferences = async <T extends Record<string, unknown> | string>(\n key: string,\n baseURL: string,\n): Promise<{ id: string; value: T }> =>\n await fetch(`${baseURL}/payload-preferences/${key}`, {\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'GET',\n })?.then((res) => res.json() as Promise<{ id: string; value: T }>)\n\nexport const LocaleProvider: React.FC<{ children?: React.ReactNode; locale?: Locale['code'] }> = ({\n children,\n /**\n The `locale` prop originates from the root layout, which does not have access to search params\n This component uses the `useSearchParams` hook to get the locale from the URL as precedence over this prop\n This prop does not update as the user navigates the site, because the root layout does not re-render\n */\n locale: initialLocaleFromPrefs,\n}) => {\n const {\n config: {\n localization = false,\n routes: { api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const { user } = useAuth()\n\n const defaultLocale = localization ? localization.defaultLocale : 'en'\n\n const { getPreference, setPreference } = usePreferences()\n const localeFromParams = useSearchParams().get('locale')\n\n const [locale, setLocale] = React.useState<Locale>(() => {\n if (!localization || (localization && !localization.locales.length)) {\n // TODO: return null V4\n return {} as Locale\n }\n\n return (\n findLocaleFromCode(localization, localeFromParams) ||\n findLocaleFromCode(localization, initialLocaleFromPrefs) ||\n findLocaleFromCode(localization, defaultLocale) ||\n findLocaleFromCode(localization, localization.locales[0].code)\n )\n })\n\n const [isLoading, setLocaleIsLoading] = useState(false)\n\n const prevLocale = useRef<Locale>(locale)\n\n useEffect(() => {\n /**\n * We need to set `isLoading` back to false once the locale is detected to be different\n * This happens when the user clicks an anchor link which appends the `?locale=` query param\n * This triggers a client-side navigation, which re-renders the page with the new locale\n * In Next.js, local state is persisted during this type of navigation because components are not unmounted\n */\n if (locale.code !== prevLocale.current.code) {\n setLocaleIsLoading(false)\n }\n\n prevLocale.current = locale\n }, [locale])\n\n const fetchURL = `${serverURL}${apiRoute}`\n\n useEffect(() => {\n /**\n * This effect should only run when `localeFromParams` changes, i.e. when the user clicks an anchor link\n * The root layout, which sends the initial locale from prefs, will not re-render as the user navigates the site\n * For this reason, we need to fetch the locale from prefs if the search params clears the `locale` query param\n */\n async function resetLocale() {\n if (localization && user?.id) {\n const localeToUse =\n localeFromParams ||\n (await fetchPreferences<Locale['code']>('locale', fetchURL)?.then((res) => res.value))\n\n const newLocale =\n findLocaleFromCode(localization, localeToUse) ||\n findLocaleFromCode(localization, defaultLocale) ||\n findLocaleFromCode(localization, localization?.locales?.[0]?.code)\n\n if (newLocale) {\n setLocale(newLocale)\n }\n }\n }\n\n void resetLocale()\n }, [defaultLocale, getPreference, localization, fetchURL, localeFromParams, user?.id])\n\n return (\n <LocaleContext.Provider value={locale}>\n <LocaleLoadingContext.Provider value={{ localeIsLoading: isLoading, setLocaleIsLoading }}>\n {children}\n </LocaleLoadingContext.Provider>\n </LocaleContext.Provider>\n )\n}\n\nexport const useLocaleLoading = () => useContext(LocaleLoadingContext)\n\n/**\n * TODO: V4\n * The return type of the `useLocale` hook will change in v4. It will return `null | Locale` instead of `false | {} | Locale`.\n */\nexport const useLocale = (): Locale => useContext(LocaleContext)\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Operation/index.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Operation/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,eAAO,MAAM,gBAAgB,0BAAiC,CAAA;AAE9D,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAE,CAGH,CAAA;AAEzF,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE3C,eAAO,MAAM,YAAY,QAAO,SAAS,GAAG,SAAyC,CAAA"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
3
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
-
import React, { createContext,
|
|
4
|
+
import React, { createContext, useContext } from 'react';
|
|
5
5
|
export const OperationContext = /*#__PURE__*/createContext('');
|
|
6
6
|
export const OperationProvider = ({
|
|
7
7
|
children,
|
|
8
8
|
operation
|
|
9
|
-
}) => /*#__PURE__*/_jsx(OperationContext, {
|
|
9
|
+
}) => /*#__PURE__*/_jsx(OperationContext.Provider, {
|
|
10
10
|
value: operation,
|
|
11
11
|
children: children
|
|
12
12
|
});
|
|
13
|
-
export const useOperation = () =>
|
|
13
|
+
export const useOperation = () => {
|
|
14
|
+
return useContext(OperationContext);
|
|
15
|
+
};
|
|
14
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","createContext","
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","createContext","useContext","OperationContext","OperationProvider","children","operation","_jsx","Provider","value","useOperation"],"sources":["../../../src/providers/Operation/index.tsx"],"sourcesContent":["'use client'\nimport React, { createContext, useContext } from 'react'\n\nexport const OperationContext = createContext('' as Operation)\n\nexport const OperationProvider: React.FC<{ children: React.ReactNode; operation: Operation }> = ({\n children,\n operation,\n}) => <OperationContext.Provider value={operation}>{children}</OperationContext.Provider>\n\nexport type Operation = 'create' | 'update'\n\nexport const useOperation = (): Operation | undefined => useContext(OperationContext)\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AAEjD,OAAO,MAAMC,gBAAA,gBAAmBF,aAAA,CAAc;AAE9C,OAAO,MAAMG,iBAAA,GAAmFA,CAAC;EAC/FC,QAAQ;EACRC;AAAS,CACV,kBAAKC,IAAA,CAACJ,gBAAA,CAAiBK,QAAQ;EAACC,KAAA,EAAOH,SAAA;YAAYD;;AAIpD,OAAO,MAAMK,YAAA,GAAeA,CAAA;EAAA,OAA6BR,UAAA,CAAAC,gBAAW;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Params/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Params/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA;AACrD,UAAU,cAAe,SAAQ,MAAM;CAAG;AAI1C;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAGnE,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,QAAO,cAAqC,CAAA"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
5
|
import { useParams as useNextParams } from 'next/navigation.js';
|
|
6
|
-
import React, { createContext,
|
|
6
|
+
import React, { createContext, useContext } from 'react';
|
|
7
7
|
const Context = /*#__PURE__*/createContext({});
|
|
8
8
|
/**
|
|
9
9
|
* @deprecated
|
|
@@ -21,7 +21,7 @@ export const ParamsProvider = t0 => {
|
|
|
21
21
|
const params = useNextParams();
|
|
22
22
|
let t1;
|
|
23
23
|
if ($[0] !== children || $[1] !== params) {
|
|
24
|
-
t1 = _jsx(Context, {
|
|
24
|
+
t1 = _jsx(Context.Provider, {
|
|
25
25
|
value: params,
|
|
26
26
|
children
|
|
27
27
|
});
|
|
@@ -41,5 +41,7 @@ export const ParamsProvider = t0 => {
|
|
|
41
41
|
* import { useParams } from 'next/navigation'
|
|
42
42
|
* ```
|
|
43
43
|
*/
|
|
44
|
-
export const useParams = () =>
|
|
44
|
+
export const useParams = () => {
|
|
45
|
+
return useContext(Context);
|
|
46
|
+
};
|
|
45
47
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","useParams","useNextParams","React","createContext","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","useParams","useNextParams","React","createContext","useContext","Context","ParamsProvider","t0","$","children","params","t1","_jsx","Provider","value"],"sources":["../../../src/providers/Params/index.tsx"],"sourcesContent":["'use client'\n\nimport { useParams as useNextParams } from 'next/navigation.js'\nimport React, { createContext, useContext } from 'react'\n\nexport type Params = ReturnType<typeof useNextParams>\ninterface IParamsContext extends Params {}\n\nconst Context = createContext<IParamsContext>({} as IParamsContext)\n\n/**\n * @deprecated\n * The ParamsProvider is deprecated and will be removed in the next major release. Instead, use the `useParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.\n * @example\n * ```tsx\n * import { useParams } from 'next/navigation'\n * ```\n */\nexport const ParamsProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const params = useNextParams()\n return <Context.Provider value={params}>{children}</Context.Provider>\n}\n\n/**\n * @deprecated\n * The `useParams` hook is deprecated and will be removed in the next major release. Instead, use the `useParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.\n * @example\n * ```tsx\n * import { useParams } from 'next/navigation'\n * ```\n */\nexport const useParams = (): IParamsContext => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,SAAA,IAAaC,aAAa,QAAQ;AAC3C,OAAOC,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AAKjD,MAAMC,OAAA,gBAAUF,aAAA,CAA8B,CAAC;AAE/C;;;;;;;;AAQA,OAAO,MAAMG,cAAA,GAA2DC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU;EAAA,IAAAF,EAAY;EACnF,MAAAG,MAAA,GAAeT,aAAA;EAAA,IAAAU,EAAA;EAAA,IAAAH,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAE,MAAA;IACRC,EAAA,GAAAC,IAAA,CAAAP,OAAA,CAAAQ,QAAA;MAAAC,KAAA,EAAyBJ,MAAA;MAAAD;IAAA,C;;;;;;;SAAzBE,E;CACT;AAEA;;;;;;;;AAQA,OAAO,MAAMX,SAAA,GAAYA,CAAA;EAAA,OAAsBI,UAAA,CAAAC,OAAW;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Preferences/index.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Preferences/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoE,MAAM,OAAO,CAAA;AAQxF,KAAK,kBAAkB,GAAG;IACxB,aAAa,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IACnD;;;;OAIG;IACH,aAAa,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAClF,CAAA;AAYD,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CA0HxE,CAAA;AAED,eAAO,MAAM,cAAc,QAAO,kBAAyC,CAAA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
4
|
import { dequal } from 'dequal/lite'; // lite: no need for Map and Set support
|
|
5
|
-
import React, { createContext,
|
|
5
|
+
import React, { createContext, useCallback, useContext, useEffect, useRef } from 'react';
|
|
6
6
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
7
7
|
import { requests } from '../../utilities/api.js';
|
|
8
8
|
import { deepMergeSimple } from '../../utilities/deepMerge.js';
|
|
@@ -115,10 +115,12 @@ export const PreferencesProvider = ({
|
|
|
115
115
|
}, [api, getPreference, i18n.language, pendingUpdate, serverURL]);
|
|
116
116
|
contextRef.current.getPreference = getPreference;
|
|
117
117
|
contextRef.current.setPreference = setPreference;
|
|
118
|
-
return /*#__PURE__*/_jsx(Context, {
|
|
118
|
+
return /*#__PURE__*/_jsx(Context.Provider, {
|
|
119
119
|
value: contextRef.current,
|
|
120
120
|
children: children
|
|
121
121
|
});
|
|
122
122
|
};
|
|
123
|
-
export const usePreferences = () =>
|
|
123
|
+
export const usePreferences = () => {
|
|
124
|
+
return useContext(Context);
|
|
125
|
+
};
|
|
124
126
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["dequal","React","createContext","
|
|
1
|
+
{"version":3,"file":"index.js","names":["dequal","React","createContext","useCallback","useContext","useEffect","useRef","useTranslation","requests","deepMergeSimple","useAuth","useConfig","Context","requestOptions","value","language","body","JSON","stringify","headers","PreferencesProvider","children","contextRef","preferencesRef","pendingUpdate","config","user","i18n","routes","api","serverURL","current","getPreference","key","prefs","promise","Promise","resolve","request","get","status","preference","json","setPreference","merge","post","newValue","currentPreference","updatePreference","setTimeout","_jsx","Provider","usePreferences"],"sources":["../../../src/providers/Preferences/index.tsx"],"sourcesContent":["'use client'\nimport { dequal } from 'dequal/lite' // lite: no need for Map and Set support\nimport React, { createContext, useCallback, useContext, useEffect, useRef } from 'react'\n\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { deepMergeSimple } from '../../utilities/deepMerge.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\n\ntype PreferencesContext = {\n getPreference: <T = any>(key: string) => Promise<T>\n /**\n * @param key - a string identifier for the property being set\n * @param value - preference data to store\n * @param merge - when true will combine the existing preference object batch the change into one request for objects, default = false\n */\n setPreference: <T = any>(key: string, value: T, merge?: boolean) => Promise<void>\n}\n\nconst Context = createContext({} as PreferencesContext)\n\nconst requestOptions = (value, language) => ({\n body: JSON.stringify({ value }),\n headers: {\n 'Accept-Language': language,\n 'Content-Type': 'application/json',\n },\n})\n\nexport const PreferencesProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const contextRef = useRef({} as PreferencesContext)\n const preferencesRef = useRef({})\n const pendingUpdate = useRef({})\n const { config } = useConfig()\n const { user } = useAuth()\n const { i18n } = useTranslation()\n\n const {\n routes: { api },\n serverURL,\n } = config\n\n useEffect(() => {\n if (!user) {\n // clear preferences between users\n preferencesRef.current = {}\n }\n }, [user])\n\n const getPreference = useCallback(\n async <T = any,>(key: string): Promise<T> => {\n const prefs = preferencesRef.current\n if (typeof prefs[key] !== 'undefined') {\n return prefs[key]\n }\n const promise = new Promise((resolve: (value: T) => void) => {\n void (async () => {\n const request = await requests.get(`${serverURL}${api}/payload-preferences/${key}`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n let value = null\n if (request.status === 200) {\n const preference = await request.json()\n value = preference.value\n }\n preferencesRef.current[key] = value\n resolve(value)\n })()\n })\n prefs[key] = promise\n return promise\n },\n [i18n.language, api, preferencesRef, serverURL],\n )\n\n const setPreference = useCallback(\n async (key: string, value: unknown, merge = false): Promise<void> => {\n if (merge === false) {\n preferencesRef.current[key] = value\n\n await requests.post(\n `${serverURL}${api}/payload-preferences/${key}`,\n requestOptions(value, i18n.language),\n )\n\n return\n }\n\n let newValue = value\n const currentPreference = await getPreference(key)\n\n // handle value objects where multiple values can be set under one key\n if (\n typeof value === 'object' &&\n typeof currentPreference === 'object' &&\n typeof newValue === 'object'\n ) {\n // merge the value with any existing preference for the key\n if (currentPreference) {\n newValue = deepMergeSimple(currentPreference, newValue)\n }\n\n if (dequal(newValue, currentPreference)) {\n return\n }\n\n // add the requested changes to a pendingUpdate batch for the key\n pendingUpdate.current[key] = {\n ...pendingUpdate.current[key],\n ...(newValue as Record<string, unknown>),\n }\n } else {\n if (newValue === currentPreference) {\n return\n }\n\n pendingUpdate.current[key] = newValue\n }\n\n const updatePreference = async () => {\n // compare the value stored in context before sending to eliminate duplicate requests\n if (dequal(pendingUpdate.current[key], preferencesRef.current[key])) {\n return\n }\n\n // preference set in context here to prevent other updatePreference at the same time\n preferencesRef.current[key] = pendingUpdate.current[key]\n\n await requests.post(\n `${serverURL}${api}/payload-preferences/${key}`,\n requestOptions(preferencesRef.current[key], i18n.language),\n )\n\n // reset any changes for this key after sending the request\n delete pendingUpdate.current[key]\n }\n\n // use timeout to allow multiple changes of different values using the same key in one request\n setTimeout(() => {\n void updatePreference()\n })\n },\n [api, getPreference, i18n.language, pendingUpdate, serverURL],\n )\n\n contextRef.current.getPreference = getPreference\n contextRef.current.setPreference = setPreference\n\n return <Context.Provider value={contextRef.current}>{children}</Context.Provider>\n}\n\nexport const usePreferences = (): PreferencesContext => useContext(Context)\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/RouteCache/index.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/RouteCache/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA4D,MAAM,OAAO,CAAA;AAEhF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,eAAe,EAAE,MAAM,IAAI,CAAA;CAC5B,CAAA;AAMD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAa9D,CAAA;AAED,eAAO,MAAM,aAAa,yBAA4B,CAAA"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
5
|
import { usePathname, useRouter } from 'next/navigation.js';
|
|
6
|
-
import React, { createContext,
|
|
6
|
+
import React, { createContext, useCallback, useContext, useEffect } from 'react';
|
|
7
7
|
const Context = /*#__PURE__*/createContext({
|
|
8
8
|
clearRouteCache: () => {}
|
|
9
9
|
});
|
|
@@ -47,7 +47,7 @@ export const RouteCache = t0 => {
|
|
|
47
47
|
useEffect(t2, t3);
|
|
48
48
|
let t4;
|
|
49
49
|
if ($[7] !== children || $[8] !== clearRouteCache) {
|
|
50
|
-
t4 = _jsx(Context, {
|
|
50
|
+
t4 = _jsx(Context.Provider, {
|
|
51
51
|
value: {
|
|
52
52
|
clearRouteCache
|
|
53
53
|
},
|
|
@@ -61,5 +61,7 @@ export const RouteCache = t0 => {
|
|
|
61
61
|
}
|
|
62
62
|
return t4;
|
|
63
63
|
};
|
|
64
|
-
export const useRouteCache = () =>
|
|
64
|
+
export const useRouteCache = () => {
|
|
65
|
+
return useContext(Context);
|
|
66
|
+
};
|
|
65
67
|
//# sourceMappingURL=index.js.map
|