@payloadcms/ui 3.2.2 → 3.2.3-canary.3e78927
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/AddNewRelation/index.js +40 -40
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/AddNewRelation/useRelatedCollections.js +3 -3
- package/dist/elements/AddNewRelation/useRelatedCollections.js.map +1 -1
- package/dist/elements/AnimateHeight/index.d.ts.map +1 -1
- package/dist/elements/AnimateHeight/index.js +4 -1
- package/dist/elements/AnimateHeight/index.js.map +1 -1
- package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts +2 -1
- package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts.map +1 -1
- package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +67 -79
- package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
- package/dist/elements/ArrayAction/index.js +10 -10
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js +13 -13
- package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.js +14 -14
- package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +4 -4
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
- package/dist/elements/BulkUpload/DrawerCloseButton/index.js +3 -3
- package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.js +29 -26
- package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +2 -0
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/BulkUpload/index.js +8 -8
- package/dist/elements/BulkUpload/index.js.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +28 -32
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/Collapsible/index.js +13 -13
- package/dist/elements/Collapsible/index.js.map +1 -1
- package/dist/elements/ColumnSelector/index.js +10 -10
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +4 -4
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +10 -14
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.js +9 -9
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js +4 -4
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/index.js +47 -47
- package/dist/elements/DocumentDrawer/index.js.map +1 -1
- package/dist/elements/DocumentLocked/index.js +21 -21
- package/dist/elements/DocumentLocked/index.js.map +1 -1
- package/dist/elements/DocumentTakeOver/index.js +10 -10
- package/dist/elements/DocumentTakeOver/index.js.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +9 -9
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
- package/dist/elements/DraggableSortable/index.js +11 -11
- package/dist/elements/DraggableSortable/index.js.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js +8 -8
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
- package/dist/elements/Drawer/index.js +38 -38
- package/dist/elements/Drawer/index.js.map +1 -1
- package/dist/elements/Drawer/useDrawerSlug.js +3 -3
- package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js +32 -33
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.js +17 -16
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/FileDetails/DraggableFileDetails/index.js +15 -15
- package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/FileMeta/index.js +15 -15
- package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
- package/dist/elements/FullscreenModal/index.js +4 -4
- package/dist/elements/FullscreenModal/index.js.map +1 -1
- package/dist/elements/Hamburger/index.js +4 -4
- package/dist/elements/Hamburger/index.js.map +1 -1
- package/dist/elements/HydrateAuthProvider/index.js +3 -3
- package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/index.js +11 -11
- package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
- package/dist/elements/ListDrawer/index.js +19 -18
- package/dist/elements/ListDrawer/index.js.map +1 -1
- package/dist/elements/ListSelection/index.js +3 -3
- package/dist/elements/ListSelection/index.js.map +1 -1
- package/dist/elements/Loading/index.js +15 -15
- package/dist/elements/Loading/index.js.map +1 -1
- package/dist/elements/LoadingOverlay/index.js +18 -16
- package/dist/elements/LoadingOverlay/index.js.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.js +5 -5
- package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
- package/dist/elements/Localizer/index.d.ts.map +1 -1
- package/dist/elements/Localizer/index.js +20 -19
- package/dist/elements/Localizer/index.js.map +1 -1
- package/dist/elements/Locked/index.js +3 -3
- package/dist/elements/Locked/index.js.map +1 -1
- package/dist/elements/Logout/index.js +7 -7
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/Nav/NavToggler/index.js +13 -13
- package/dist/elements/Nav/NavToggler/index.js.map +1 -1
- package/dist/elements/NavGroup/index.js +12 -12
- package/dist/elements/NavGroup/index.js.map +1 -1
- package/dist/elements/PerPage/index.js +7 -7
- package/dist/elements/PerPage/index.js.map +1 -1
- package/dist/elements/Pill/index.js +8 -8
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/Popup/index.js +1 -0
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PreviewButton/index.js +3 -3
- package/dist/elements/PreviewButton/index.js.map +1 -1
- package/dist/elements/PublishButton/index.js +28 -28
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishMany/index.d.ts.map +1 -1
- package/dist/elements/PublishMany/index.js +10 -10
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/ReactSelect/Input/index.d.ts +2 -2
- package/dist/elements/ReactSelect/Input/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/Input/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.js +10 -10
- package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.js +5 -5
- package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.js.map +1 -1
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +4 -4
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.js +278 -142
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/RenderIfInViewport/index.js +3 -3
- package/dist/elements/RenderIfInViewport/index.js.map +1 -1
- package/dist/elements/RenderTitle/index.js +6 -6
- package/dist/elements/RenderTitle/index.js.map +1 -1
- package/dist/elements/SelectAll/index.js +3 -3
- package/dist/elements/SelectAll/index.js.map +1 -1
- package/dist/elements/SelectRow/index.js +6 -6
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/ShimmerEffect/index.js +7 -7
- package/dist/elements/ShimmerEffect/index.js.map +1 -1
- package/dist/elements/SortColumn/index.js +16 -16
- package/dist/elements/SortColumn/index.js.map +1 -1
- package/dist/elements/SortComplex/index.d.ts.map +1 -1
- package/dist/elements/SortComplex/index.js +38 -51
- package/dist/elements/SortComplex/index.js.map +1 -1
- package/dist/elements/Status/index.js +38 -35
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +12 -12
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/StepNav/SetStepNav.js +3 -3
- package/dist/elements/StepNav/SetStepNav.js.map +1 -1
- package/dist/elements/StepNav/context.js +3 -3
- package/dist/elements/StepNav/context.js.map +1 -1
- package/dist/elements/StepNav/index.js +9 -9
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.js +3 -3
- package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +31 -31
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js +3 -3
- package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +15 -15
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +12 -9
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/TableColumns/RenderDefaultCell/index.js +6 -6
- package/dist/elements/TableColumns/RenderDefaultCell/index.js.map +1 -1
- package/dist/elements/Thumbnail/index.js +27 -27
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/ThumbnailCard/index.js +10 -10
- package/dist/elements/ThumbnailCard/index.js.map +1 -1
- package/dist/elements/Tooltip/index.js +29 -24
- package/dist/elements/Tooltip/index.js.map +1 -1
- package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
- package/dist/elements/UnpublishMany/index.js +11 -11
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/Upload/index.js +5 -5
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.js +3 -3
- package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Select/index.js +13 -10
- package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Text/index.js +5 -5
- package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +45 -45
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.js +11 -11
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/exports/client/{DatePicker-QST7QHAX.js → CodeEditor-RZ32B2QF.js} +2 -2
- package/dist/exports/client/DatePicker-QW5V4BQV.js +14 -0
- package/dist/exports/client/DatePicker-QW5V4BQV.js.map +8 -0
- package/dist/exports/client/chunk-CKHKQPOO.js +26 -0
- package/dist/exports/client/{CodeEditor-5MCGR4GL.js.map → chunk-CKHKQPOO.js.map} +4 -4
- package/dist/exports/client/chunk-KZPVHMBR.js +29 -0
- package/dist/exports/client/chunk-KZPVHMBR.js.map +8 -0
- package/dist/exports/client/index.d.ts +8 -1
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +16 -16
- package/dist/exports/client/index.js.map +4 -4
- package/dist/fields/Array/ArrayRow.js +38 -38
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +27 -25
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +51 -49
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js +3 -3
- package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js +13 -13
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/RowActions.js +25 -25
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/SectionTitle/index.js +8 -8
- package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +26 -24
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Collapsible/index.d.ts.map +1 -1
- package/dist/fields/Collapsible/index.js +4 -2
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/ConfirmPassword/index.js +6 -6
- package/dist/fields/ConfirmPassword/index.js.map +1 -1
- package/dist/fields/FieldLabel/index.js +18 -18
- package/dist/fields/FieldLabel/index.js.map +1 -1
- package/dist/fields/Group/index.d.ts.map +1 -1
- package/dist/fields/Group/index.js +6 -4
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Hidden/index.js +7 -7
- package/dist/fields/Hidden/index.js.map +1 -1
- package/dist/fields/Number/index.js +5 -5
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/input.js +24 -24
- package/dist/fields/Password/input.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.js +9 -9
- package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/index.js +4 -2
- 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 -2
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +18 -18
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.js +18 -18
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/Select/Input.js +28 -28
- package/dist/fields/Select/Input.js.map +1 -1
- package/dist/fields/Tabs/Tab/index.js +10 -10
- package/dist/fields/Tabs/Tab/index.js.map +1 -1
- package/dist/fields/Tabs/index.d.ts +15 -0
- package/dist/fields/Tabs/index.d.ts.map +1 -1
- package/dist/fields/Tabs/index.js +71 -71
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Text/Input.js +24 -24
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Textarea/Input.js +19 -19
- package/dist/fields/Textarea/Input.js.map +1 -1
- package/dist/fields/Upload/HasMany/index.js +11 -11
- package/dist/fields/Upload/HasMany/index.js.map +1 -1
- package/dist/fields/Upload/Input.js +109 -104
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/RelationshipContent/index.js +20 -20
- package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
- package/dist/forms/NullifyField/index.js +3 -3
- package/dist/forms/NullifyField/index.js.map +1 -1
- package/dist/forms/RenderFields/RenderField.js +9 -9
- package/dist/forms/RenderFields/RenderField.js.map +1 -1
- package/dist/forms/RenderFields/index.js +16 -16
- package/dist/forms/RenderFields/index.js.map +1 -1
- package/dist/forms/WatchChildErrors/index.js +10 -10
- package/dist/forms/WatchChildErrors/index.js.map +1 -1
- package/dist/forms/useField/index.js +44 -44
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/hooks/useDebounce.js +3 -3
- package/dist/hooks/useDebounce.js.map +1 -1
- package/dist/hooks/useDebouncedEffect.js +6 -6
- package/dist/hooks/useDebouncedEffect.js.map +1 -1
- package/dist/hooks/useDelay.js +3 -3
- package/dist/hooks/useDelay.js.map +1 -1
- package/dist/hooks/useHotkey.js +18 -14
- package/dist/hooks/useHotkey.js.map +1 -1
- package/dist/hooks/usePayloadAPI.js +13 -13
- package/dist/hooks/usePayloadAPI.js.map +1 -1
- package/dist/hooks/useThrottledEffect.js +3 -3
- package/dist/hooks/useThrottledEffect.js.map +1 -1
- package/dist/providers/Actions/index.js +4 -4
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/ClientFunction/index.js +3 -3
- package/dist/providers/ClientFunction/index.js.map +1 -1
- package/dist/providers/Config/index.js +9 -10
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/providers/DocumentEvents/index.js +3 -3
- package/dist/providers/DocumentEvents/index.js.map +1 -1
- package/dist/providers/EditDepth/index.js +3 -3
- package/dist/providers/EditDepth/index.js.map +1 -1
- package/dist/providers/EntityVisibility/index.js +9 -10
- package/dist/providers/EntityVisibility/index.js.map +1 -1
- package/dist/providers/ListQuery/index.js +2 -2
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/Locale/index.d.ts.map +1 -1
- package/dist/providers/Locale/index.js +65 -59
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Params/index.d.ts +16 -0
- package/dist/providers/Params/index.d.ts.map +1 -1
- package/dist/providers/Params/index.js +19 -4
- package/dist/providers/Params/index.js.map +1 -1
- package/dist/providers/RouteCache/index.js +6 -6
- package/dist/providers/RouteCache/index.js.map +1 -1
- package/dist/providers/SearchParams/index.d.ts +22 -4
- package/dist/providers/SearchParams/index.d.ts.map +1 -1
- package/dist/providers/SearchParams/index.js +28 -14
- 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 +7 -8
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/Theme/index.js +7 -7
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/providers/Translation/index.js +12 -12
- package/dist/providers/Translation/index.js.map +1 -1
- package/dist/providers/UploadEdits/index.js +3 -3
- package/dist/providers/UploadEdits/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/index.js +2 -0
- package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/index.js +2 -0
- package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
- package/dist/utilities/groupNavItems.js +3 -3
- package/dist/utilities/groupNavItems.js.map +1 -1
- package/dist/utilities/parseSearchParams.d.ts +4 -0
- package/dist/utilities/parseSearchParams.d.ts.map +1 -0
- package/dist/utilities/parseSearchParams.js +9 -0
- package/dist/utilities/parseSearchParams.js.map +1 -0
- package/dist/views/Edit/Auth/index.js +47 -47
- package/dist/views/Edit/Auth/index.js.map +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.d.ts.map +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.js +16 -14
- package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
- package/dist/views/Edit/SetDocumentTitle/index.js +5 -5
- package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
- package/dist/views/List/index.js +20 -24
- package/dist/views/List/index.js.map +1 -1
- package/package.json +16 -17
- package/dist/exports/client/CodeEditor-5MCGR4GL.js +0 -26
- package/dist/exports/client/chunk-4SO5UCQD.js +0 -14
- package/dist/exports/client/chunk-4SO5UCQD.js.map +0 -8
- package/dist/exports/client/chunk-5LUHGAPX.js +0 -30
- package/dist/exports/client/chunk-5LUHGAPX.js.map +0 -8
- /package/dist/exports/client/{DatePicker-QST7QHAX.js.map → CodeEditor-RZ32B2QF.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","names":["c","_c","useModal","qs","React","useCallback","useEffect","useMemo","useBulkUpload","Button","useDocumentDrawer","Dropzone","useListDrawer","RenderCustomComponent","ShimmerEffect","FieldDescription","FieldError","FieldLabel","useAuth","useLocale","useTranslation","fieldBaseClass","UploadComponentHasMany","UploadComponentHasOne","baseClass","UploadInput","props","$","AfterInput","allowCreate","api","BeforeInput","className","Description","description","Error","filterOptions","filterOptionsFromProps","hasMany","isSortable","Label","label","localized","maxRows","onChange","onChangeFromProps","path","readOnly","relationTo","required","serverURL","showError","style","value","populatedDocs","setPopulatedDocs","useState","activeRelationTo","Array","isArray","openModal","drawerSlug","setCollectionSlug","setInitialFiles","setMaxFiles","setOnSuccess","permissions","code","i18n","t","t0","t1","t2","id","t3","not_in","t4","concat","t5","t6","t7","t8","t9","collectionSlugs","ListDrawer","t10","closeDrawer","closeListDrawer","openDrawer","openListDrawer","t11","collectionSlug","CreateDocDrawer","t12","closeCreateDocDrawer","openCreateDocDrawer","loadedValueDocsRef","useRef","t13","bb0","collections","create","canCreate","t14","newValue","t15","language","ids","relatedCollectionSlug","query","depth","draft","limit","length","locale","where","and","in","response","fetch","body","stringify","credentials","headers","method","ok","json","sortedDocs","map","docs","find","doc","String","populateDocs","t16","newDocs","mergedValue","doc_0","currentDocs","doc_1","firstDoc","onUploadSuccess","t17","fileList","fileListToUse","dataTransfer","DataTransfer","items","add","files","onLocalFileSelection","t18","selectedDocIDs","id_0","isSelected","push","loadedDocs","currentDocs_0","doc_2","onListBulkSelect","t19","data","currentDocs_1","onDocCreate","t20","t21","docID","loadedDocs_0","selectedDoc","currentDocs_2","onListSelect","docID_0","collectionSlug_0","docs_0","currentDocs_3","existingDocIndex","findIndex","doc_3","updatedDocs","reloadDoc","t22","newValue_0","newValueIDs","t23","value_0","onReorder","newValue_1","newValueIDs_0","t24","value_1","onRemove","t25","loadInitialDocs","current","loadedDocs_1","doc_4","showDropzone","t26","t27","t28","filter","Boolean","t29","join","t30","replace","t31","_jsxs","children","_jsx","CustomComponent","Fallback","_Fragment","fileDocs","readonly","_temp","fileDoc","height","disabled","multipleFiles","buttonStyle","onClick","size","onSave","enableRowSelections","onBulkSelect","onSelect","id_1"],"sources":["../../../src/fields/Upload/Input.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientCollectionConfig,\n FieldLabelClientProps,\n FilterOptionsResult,\n JsonObject,\n StaticDescription,\n StaticLabel,\n UploadFieldClient,\n UploadField as UploadFieldType,\n Where,\n} from 'payload'\nimport type { MarkOptional } from 'ts-essentials'\n\nimport { useModal } from '@faceless-ui/modal'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useMemo } from 'react'\n\nimport type { ListDrawerProps } from '../../elements/ListDrawer/types.js'\nimport type { PopulateDocs, ReloadDoc } from './types.js'\n\nimport { useBulkUpload } from '../../elements/BulkUpload/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { useDocumentDrawer } from '../../elements/DocumentDrawer/index.js'\nimport { Dropzone } from '../../elements/Dropzone/index.js'\nimport { useListDrawer } from '../../elements/ListDrawer/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { ShimmerEffect } from '../../elements/ShimmerEffect/index.js'\nimport { FieldDescription } from '../../fields/FieldDescription/index.js'\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { UploadComponentHasMany } from './HasMany/index.js'\nimport { UploadComponentHasOne } from './HasOne/index.js'\nimport './index.scss'\n\nexport const baseClass = 'upload'\n\ntype PopulatedDocs = { relationTo: string; value: JsonObject }[]\n\nexport type UploadInputProps = {\n readonly AfterInput?: React.ReactNode\n readonly allowCreate?: boolean\n /**\n * Controls the visibility of the \"Create new collection\" button\n */\n readonly api?: string\n readonly BeforeInput?: React.ReactNode\n readonly className?: string\n readonly collection?: ClientCollectionConfig\n readonly customUploadActions?: React.ReactNode[]\n readonly Description?: React.ReactNode\n readonly description?: StaticDescription\n readonly Error?: React.ReactNode\n readonly filterOptions?: FilterOptionsResult\n readonly hasMany?: boolean\n readonly isSortable?: boolean\n readonly Label?: React.ReactNode\n readonly label?: StaticLabel\n readonly labelProps?: FieldLabelClientProps<MarkOptional<UploadFieldClient, 'type'>>\n readonly localized?: boolean\n readonly maxRows?: number\n readonly onChange?: (e) => void\n readonly path: string\n readonly readOnly?: boolean\n readonly relationTo: UploadFieldType['relationTo']\n readonly required?: boolean\n readonly serverURL?: string\n readonly showError?: boolean\n readonly style?: React.CSSProperties\n readonly value?: (number | string)[] | (number | string)\n}\n\nexport function UploadInput(props: UploadInputProps) {\n const {\n AfterInput,\n allowCreate,\n api,\n BeforeInput,\n className,\n Description,\n description,\n Error,\n filterOptions: filterOptionsFromProps,\n hasMany,\n isSortable,\n Label,\n label,\n localized,\n maxRows,\n onChange: onChangeFromProps,\n path,\n readOnly,\n relationTo,\n required,\n serverURL,\n showError,\n style,\n value,\n } = props\n\n const [populatedDocs, setPopulatedDocs] = React.useState<\n {\n relationTo: string\n value: JsonObject\n }[]\n >()\n\n const [activeRelationTo, setActiveRelationTo] = React.useState<string>(\n Array.isArray(relationTo) ? relationTo[0] : relationTo,\n )\n\n const { openModal } = useModal()\n const { drawerSlug, setCollectionSlug, setInitialFiles, setMaxFiles, setOnSuccess } =\n useBulkUpload()\n const { permissions } = useAuth()\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const filterOptions: FilterOptionsResult = useMemo(() => {\n return {\n ...filterOptionsFromProps,\n [activeRelationTo]: {\n ...((filterOptionsFromProps?.[activeRelationTo] as any) || {}),\n id: {\n ...((filterOptionsFromProps?.[activeRelationTo] as any)?.id || {}),\n not_in: ((filterOptionsFromProps?.[activeRelationTo] as any)?.id?.not_in || []).concat(\n ...(Array.isArray(value) || value ? [value] : []),\n ),\n },\n },\n }\n }, [value, activeRelationTo, filterOptionsFromProps])\n\n const [ListDrawer, , { closeDrawer: closeListDrawer, openDrawer: openListDrawer }] =\n useListDrawer({\n collectionSlugs: typeof relationTo === 'string' ? [relationTo] : relationTo,\n filterOptions,\n })\n\n const [\n CreateDocDrawer,\n ,\n { closeDrawer: closeCreateDocDrawer, openDrawer: openCreateDocDrawer },\n ] = useDocumentDrawer({\n collectionSlug: activeRelationTo,\n })\n\n /**\n * Prevent initial retrieval of documents from running more than once\n */\n const loadedValueDocsRef = React.useRef<boolean>(false)\n\n const canCreate = useMemo(() => {\n if (!allowCreate) {\n return false\n }\n\n if (typeof activeRelationTo === 'string') {\n if (permissions?.collections && permissions.collections?.[activeRelationTo]?.create) {\n return true\n }\n }\n\n return false\n }, [activeRelationTo, permissions, allowCreate])\n\n const onChange = React.useCallback(\n (newValue) => {\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(newValue)\n }\n },\n [onChangeFromProps],\n )\n\n const populateDocs = React.useCallback<PopulateDocs>(\n async (ids, relatedCollectionSlug) => {\n const query: {\n [key: string]: unknown\n where: Where\n } = {\n depth: 0,\n draft: true,\n limit: ids.length,\n locale: code,\n where: {\n and: [\n {\n id: {\n in: ids,\n },\n },\n ],\n },\n }\n\n const response = await fetch(`${serverURL}${api}/${relatedCollectionSlug}`, {\n body: qs.stringify(query),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'X-HTTP-Method-Override': 'GET',\n },\n method: 'POST',\n })\n if (response.ok) {\n const json = await response.json()\n const sortedDocs = ids.map((id) =>\n json.docs.find((doc) => {\n return String(doc.id) === String(id)\n }),\n )\n\n return { ...json, docs: sortedDocs }\n }\n\n return null\n },\n [code, serverURL, api, i18n.language],\n )\n\n const onUploadSuccess = useCallback(\n (newDocs: JsonObject[]) => {\n if (hasMany) {\n const mergedValue = [\n ...(Array.isArray(value) ? value : []),\n ...newDocs.map((doc) => doc.id),\n ]\n onChange(mergedValue)\n setPopulatedDocs((currentDocs) => [\n ...(currentDocs || []),\n ...newDocs.map((doc) => ({\n relationTo: activeRelationTo,\n value: doc,\n })),\n ])\n } else {\n const firstDoc = newDocs[0]\n onChange(firstDoc.id)\n setPopulatedDocs([\n {\n relationTo: activeRelationTo,\n value: firstDoc,\n },\n ])\n }\n },\n [value, onChange, activeRelationTo, hasMany],\n )\n\n const onLocalFileSelection = React.useCallback(\n (fileList?: FileList) => {\n let fileListToUse = fileList\n if (!hasMany && fileList && fileList.length > 1) {\n const dataTransfer = new DataTransfer()\n dataTransfer.items.add(fileList[0])\n fileListToUse = dataTransfer.files\n }\n if (fileListToUse) {\n setInitialFiles(fileListToUse)\n }\n setCollectionSlug(relationTo)\n setOnSuccess(onUploadSuccess)\n if (typeof maxRows === 'number') {\n setMaxFiles(maxRows)\n }\n openModal(drawerSlug)\n },\n [\n drawerSlug,\n hasMany,\n onUploadSuccess,\n openModal,\n relationTo,\n setCollectionSlug,\n setInitialFiles,\n setOnSuccess,\n maxRows,\n setMaxFiles,\n ],\n )\n\n // only hasMany can bulk select\n const onListBulkSelect = React.useCallback<NonNullable<ListDrawerProps['onBulkSelect']>>(\n async (docs) => {\n const selectedDocIDs = []\n\n for (const [id, isSelected] of docs) {\n if (isSelected) {\n selectedDocIDs.push(id)\n }\n }\n\n const loadedDocs = await populateDocs(selectedDocIDs, activeRelationTo)\n if (loadedDocs) {\n setPopulatedDocs((currentDocs) => [\n ...(currentDocs || []),\n ...loadedDocs.docs.map((doc) => ({\n relationTo: activeRelationTo,\n value: doc,\n })),\n ])\n }\n onChange([...(Array.isArray(value) ? value : []), ...selectedDocIDs])\n closeListDrawer()\n },\n [activeRelationTo, closeListDrawer, onChange, populateDocs, value],\n )\n\n const onDocCreate = React.useCallback(\n (data) => {\n if (data.doc) {\n setPopulatedDocs((currentDocs) => [\n ...(currentDocs || []),\n {\n relationTo: activeRelationTo,\n value: data.doc,\n },\n ])\n\n onChange(data.doc.id)\n }\n closeCreateDocDrawer()\n },\n [closeCreateDocDrawer, activeRelationTo, onChange],\n )\n\n const onListSelect = React.useCallback<NonNullable<ListDrawerProps['onSelect']>>(\n async ({ collectionSlug, docID }) => {\n const loadedDocs = await populateDocs([docID], collectionSlug)\n const selectedDoc = loadedDocs ? loadedDocs.docs?.[0] : null\n setPopulatedDocs((currentDocs) => {\n if (selectedDoc) {\n if (hasMany) {\n return [\n ...(currentDocs || []),\n {\n relationTo: activeRelationTo,\n value: selectedDoc,\n },\n ]\n }\n return [\n {\n relationTo: activeRelationTo,\n value: selectedDoc,\n },\n ]\n }\n return currentDocs\n })\n if (hasMany) {\n onChange([...(Array.isArray(value) ? value : []), docID])\n } else {\n onChange(docID)\n }\n closeListDrawer()\n },\n [closeListDrawer, hasMany, populateDocs, onChange, value, activeRelationTo],\n )\n\n const reloadDoc = React.useCallback<ReloadDoc>(\n async (docID, collectionSlug) => {\n const { docs } = await populateDocs([docID], collectionSlug)\n\n if (docs[0]) {\n setPopulatedDocs((currentDocs) => {\n const existingDocIndex = currentDocs?.findIndex((doc) => {\n return doc.value.id === docs[0].id && doc.relationTo === collectionSlug\n })\n if (existingDocIndex > -1) {\n const updatedDocs = [...currentDocs]\n updatedDocs[existingDocIndex] = {\n relationTo: collectionSlug,\n value: docs[0],\n }\n return updatedDocs\n }\n })\n }\n },\n [populateDocs],\n )\n\n // only hasMany can reorder\n const onReorder = React.useCallback(\n (newValue) => {\n const newValueIDs = newValue.map(({ value }) => value.id)\n onChange(newValueIDs)\n setPopulatedDocs(newValue)\n },\n [onChange],\n )\n\n const onRemove = React.useCallback(\n (newValue?: PopulatedDocs) => {\n const newValueIDs = newValue ? newValue.map(({ value }) => value.id) : null\n onChange(hasMany ? newValueIDs : newValueIDs ? newValueIDs[0] : null)\n setPopulatedDocs(newValue ? newValue : [])\n },\n [onChange, hasMany],\n )\n\n useEffect(() => {\n async function loadInitialDocs() {\n if (value) {\n loadedValueDocsRef.current = true\n const loadedDocs = await populateDocs(\n Array.isArray(value) ? value : [value],\n activeRelationTo,\n )\n if (loadedDocs) {\n setPopulatedDocs(\n loadedDocs.docs.map((doc) => ({ relationTo: activeRelationTo, value: doc })),\n )\n }\n }\n }\n\n if (!loadedValueDocsRef.current) {\n void loadInitialDocs()\n }\n }, [populateDocs, activeRelationTo, value])\n\n const showDropzone =\n !value ||\n (hasMany && Array.isArray(value) && (typeof maxRows !== 'number' || value.length < maxRows)) ||\n (!hasMany && populatedDocs?.[0] && typeof populatedDocs[0].value === 'undefined')\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path?.replace(/\\./g, '__')}`}\n style={style}\n >\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel label={label} localized={localized} path={path} required={required} />\n }\n />\n <div className={`${baseClass}__wrap`}>\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n </div>\n {BeforeInput}\n <div className={`${baseClass}__dropzoneAndUpload`}>\n {hasMany && Array.isArray(value) && value.length > 0 ? (\n <>\n {populatedDocs && populatedDocs?.length > 0 ? (\n <UploadComponentHasMany\n fileDocs={populatedDocs}\n isSortable={isSortable && !readOnly}\n onRemove={onRemove}\n onReorder={onReorder}\n readonly={readOnly}\n reloadDoc={reloadDoc}\n serverURL={serverURL}\n />\n ) : (\n <div className={`${baseClass}__loadingRows`}>\n {value.map((id) => (\n <ShimmerEffect height=\"40px\" key={id} />\n ))}\n </div>\n )}\n </>\n ) : null}\n {!hasMany && value ? (\n <>\n {populatedDocs && populatedDocs?.length > 0 && populatedDocs[0].value ? (\n <UploadComponentHasOne\n fileDoc={populatedDocs[0]}\n onRemove={onRemove}\n readonly={readOnly}\n reloadDoc={reloadDoc}\n serverURL={serverURL}\n />\n ) : populatedDocs && value && !populatedDocs?.[0]?.value ? (\n <>\n {t('general:untitled')} - ID: {value}\n </>\n ) : (\n <ShimmerEffect height=\"62px\" />\n )}\n </>\n ) : null}\n {showDropzone ? (\n <Dropzone\n disabled={readOnly || !canCreate}\n multipleFiles={hasMany}\n onChange={onLocalFileSelection}\n >\n <div className={`${baseClass}__dropzoneContent`}>\n <div className={`${baseClass}__dropzoneContent__buttons`}>\n {canCreate && (\n <>\n <Button\n buttonStyle=\"pill\"\n className={`${baseClass}__createNewToggler`}\n disabled={readOnly || !canCreate}\n onClick={() => {\n if (!readOnly) {\n if (hasMany) {\n onLocalFileSelection()\n } else {\n openCreateDocDrawer()\n }\n }\n }}\n size=\"small\"\n >\n {t('general:createNew')}\n </Button>\n <span className={`${baseClass}__dropzoneContent__orText`}>\n {t('general:or')}\n </span>\n </>\n )}\n <Button\n buttonStyle=\"pill\"\n className={`${baseClass}__listToggler`}\n disabled={readOnly}\n onClick={openListDrawer}\n size=\"small\"\n >\n {t('fields:chooseFromExisting')}\n </Button>\n <CreateDocDrawer onSave={onDocCreate} />\n <ListDrawer\n allowCreate={canCreate}\n enableRowSelections={hasMany}\n onBulkSelect={onListBulkSelect}\n onSelect={onListSelect}\n />\n </div>\n\n {canCreate && !readOnly && (\n <p className={`${baseClass}__dragAndDropText`}>\n {t('general:or')} {t('upload:dragAndDrop')}\n </p>\n )}\n </div>\n </Dropzone>\n ) : (\n <>\n {!readOnly &&\n !populatedDocs &&\n (!value ||\n typeof maxRows !== 'number' ||\n (Array.isArray(value) && value.length < maxRows)) ? (\n <ShimmerEffect height=\"40px\" />\n ) : null}\n </>\n )}\n </div>\n {AfterInput}\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Input.js","names":["c","_c","useModal","qs","React","useCallback","useEffect","useMemo","useBulkUpload","Button","useDocumentDrawer","Dropzone","useListDrawer","RenderCustomComponent","ShimmerEffect","FieldDescription","FieldError","FieldLabel","useAuth","useLocale","useTranslation","fieldBaseClass","UploadComponentHasMany","UploadComponentHasOne","baseClass","UploadInput","props","$","AfterInput","allowCreate","api","BeforeInput","className","Description","description","Error","filterOptions","filterOptionsFromProps","hasMany","isSortable","Label","label","localized","maxRows","onChange","onChangeFromProps","path","readOnly","relationTo","required","serverURL","showError","style","value","populatedDocs","setPopulatedDocs","useState","activeRelationTo","Array","isArray","openModal","drawerSlug","setCollectionSlug","setInitialFiles","setMaxFiles","setOnSuccess","permissions","code","i18n","t","t0","t1","t2","id","t3","not_in","t4","concat","t5","t6","t7","t8","t9","collectionSlugs","ListDrawer","t10","closeDrawer","closeListDrawer","openDrawer","openListDrawer","t11","collectionSlug","CreateDocDrawer","t12","closeCreateDocDrawer","openCreateDocDrawer","loadedValueDocsRef","useRef","t13","bb0","collections","create","canCreate","t14","newValue","t15","language","ids","relatedCollectionSlug","query","depth","draft","limit","length","locale","where","and","in","response","fetch","body","stringify","credentials","headers","method","ok","json","sortedDocs","map","docs","find","doc","String","populateDocs","t16","newDocs","mergedValue","_temp","currentDocs","doc_1","firstDoc","onUploadSuccess","t17","fileList","fileListToUse","dataTransfer","DataTransfer","items","add","files","onLocalFileSelection","t18","selectedDocIDs","id_0","isSelected","push","loadedDocs","currentDocs_0","doc_2","onListBulkSelect","t19","data","currentDocs_1","onDocCreate","t20","t21","docID","loadedDocs_0","selectedDoc","currentDocs_2","onListSelect","docID_0","collectionSlug_0","docs_0","currentDocs_3","existingDocIndex","findIndex","doc_3","updatedDocs","reloadDoc","t22","newValue_0","newValueIDs","_temp2","onReorder","t23","newValue_1","newValueIDs_0","_temp3","onRemove","t24","t25","loadInitialDocs","current","loadedDocs_1","doc_4","showDropzone","t26","t27","t28","filter","Boolean","t29","join","t30","replace","t31","_jsxs","children","_jsx","CustomComponent","Fallback","_Fragment","fileDocs","readonly","_temp4","fileDoc","height","disabled","multipleFiles","buttonStyle","onClick","size","onSave","enableRowSelections","onBulkSelect","onSelect","id_1","value_1","value_0","doc_0"],"sources":["../../../src/fields/Upload/Input.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientCollectionConfig,\n FieldLabelClientProps,\n FilterOptionsResult,\n JsonObject,\n StaticDescription,\n StaticLabel,\n UploadFieldClient,\n UploadField as UploadFieldType,\n Where,\n} from 'payload'\nimport type { MarkOptional } from 'ts-essentials'\n\nimport { useModal } from '@faceless-ui/modal'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useMemo } from 'react'\n\nimport type { ListDrawerProps } from '../../elements/ListDrawer/types.js'\nimport type { PopulateDocs, ReloadDoc } from './types.js'\n\nimport { useBulkUpload } from '../../elements/BulkUpload/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { useDocumentDrawer } from '../../elements/DocumentDrawer/index.js'\nimport { Dropzone } from '../../elements/Dropzone/index.js'\nimport { useListDrawer } from '../../elements/ListDrawer/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { ShimmerEffect } from '../../elements/ShimmerEffect/index.js'\nimport { FieldDescription } from '../../fields/FieldDescription/index.js'\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { UploadComponentHasMany } from './HasMany/index.js'\nimport { UploadComponentHasOne } from './HasOne/index.js'\nimport './index.scss'\n\nexport const baseClass = 'upload'\n\ntype PopulatedDocs = { relationTo: string; value: JsonObject }[]\n\nexport type UploadInputProps = {\n readonly AfterInput?: React.ReactNode\n readonly allowCreate?: boolean\n /**\n * Controls the visibility of the \"Create new collection\" button\n */\n readonly api?: string\n readonly BeforeInput?: React.ReactNode\n readonly className?: string\n readonly collection?: ClientCollectionConfig\n readonly customUploadActions?: React.ReactNode[]\n readonly Description?: React.ReactNode\n readonly description?: StaticDescription\n readonly Error?: React.ReactNode\n readonly filterOptions?: FilterOptionsResult\n readonly hasMany?: boolean\n readonly isSortable?: boolean\n readonly Label?: React.ReactNode\n readonly label?: StaticLabel\n readonly labelProps?: FieldLabelClientProps<MarkOptional<UploadFieldClient, 'type'>>\n readonly localized?: boolean\n readonly maxRows?: number\n readonly onChange?: (e) => void\n readonly path: string\n readonly readOnly?: boolean\n readonly relationTo: UploadFieldType['relationTo']\n readonly required?: boolean\n readonly serverURL?: string\n readonly showError?: boolean\n readonly style?: React.CSSProperties\n readonly value?: (number | string)[] | (number | string)\n}\n\nexport function UploadInput(props: UploadInputProps) {\n const {\n AfterInput,\n allowCreate,\n api,\n BeforeInput,\n className,\n Description,\n description,\n Error,\n filterOptions: filterOptionsFromProps,\n hasMany,\n isSortable,\n Label,\n label,\n localized,\n maxRows,\n onChange: onChangeFromProps,\n path,\n readOnly,\n relationTo,\n required,\n serverURL,\n showError,\n style,\n value,\n } = props\n\n const [populatedDocs, setPopulatedDocs] = React.useState<\n {\n relationTo: string\n value: JsonObject\n }[]\n >()\n\n const [activeRelationTo, setActiveRelationTo] = React.useState<string>(\n Array.isArray(relationTo) ? relationTo[0] : relationTo,\n )\n\n const { openModal } = useModal()\n const { drawerSlug, setCollectionSlug, setInitialFiles, setMaxFiles, setOnSuccess } =\n useBulkUpload()\n const { permissions } = useAuth()\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const filterOptions: FilterOptionsResult = useMemo(() => {\n return {\n ...filterOptionsFromProps,\n [activeRelationTo]: {\n ...((filterOptionsFromProps?.[activeRelationTo] as any) || {}),\n id: {\n ...((filterOptionsFromProps?.[activeRelationTo] as any)?.id || {}),\n not_in: ((filterOptionsFromProps?.[activeRelationTo] as any)?.id?.not_in || []).concat(\n ...(Array.isArray(value) || value ? [value] : []),\n ),\n },\n },\n }\n }, [value, activeRelationTo, filterOptionsFromProps])\n\n const [ListDrawer, , { closeDrawer: closeListDrawer, openDrawer: openListDrawer }] =\n useListDrawer({\n collectionSlugs: typeof relationTo === 'string' ? [relationTo] : relationTo,\n filterOptions,\n })\n\n const [\n CreateDocDrawer,\n ,\n { closeDrawer: closeCreateDocDrawer, openDrawer: openCreateDocDrawer },\n ] = useDocumentDrawer({\n collectionSlug: activeRelationTo,\n })\n\n /**\n * Prevent initial retrieval of documents from running more than once\n */\n const loadedValueDocsRef = React.useRef<boolean>(false)\n\n const canCreate = useMemo(() => {\n if (!allowCreate) {\n return false\n }\n\n if (typeof activeRelationTo === 'string') {\n if (permissions?.collections && permissions.collections?.[activeRelationTo]?.create) {\n return true\n }\n }\n\n return false\n }, [activeRelationTo, permissions, allowCreate])\n\n const onChange = React.useCallback(\n (newValue) => {\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(newValue)\n }\n },\n [onChangeFromProps],\n )\n\n const populateDocs = React.useCallback<PopulateDocs>(\n async (ids, relatedCollectionSlug) => {\n const query: {\n [key: string]: unknown\n where: Where\n } = {\n depth: 0,\n draft: true,\n limit: ids.length,\n locale: code,\n where: {\n and: [\n {\n id: {\n in: ids,\n },\n },\n ],\n },\n }\n\n const response = await fetch(`${serverURL}${api}/${relatedCollectionSlug}`, {\n body: qs.stringify(query),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'X-HTTP-Method-Override': 'GET',\n },\n method: 'POST',\n })\n if (response.ok) {\n const json = await response.json()\n const sortedDocs = ids.map((id) =>\n json.docs.find((doc) => {\n return String(doc.id) === String(id)\n }),\n )\n\n return { ...json, docs: sortedDocs }\n }\n\n return null\n },\n [code, serverURL, api, i18n.language],\n )\n\n const onUploadSuccess = useCallback(\n (newDocs: JsonObject[]) => {\n if (hasMany) {\n const mergedValue = [\n ...(Array.isArray(value) ? value : []),\n ...newDocs.map((doc) => doc.id),\n ]\n onChange(mergedValue)\n setPopulatedDocs((currentDocs) => [\n ...(currentDocs || []),\n ...newDocs.map((doc) => ({\n relationTo: activeRelationTo,\n value: doc,\n })),\n ])\n } else {\n const firstDoc = newDocs[0]\n onChange(firstDoc.id)\n setPopulatedDocs([\n {\n relationTo: activeRelationTo,\n value: firstDoc,\n },\n ])\n }\n },\n [value, onChange, activeRelationTo, hasMany],\n )\n\n const onLocalFileSelection = React.useCallback(\n (fileList?: FileList) => {\n let fileListToUse = fileList\n if (!hasMany && fileList && fileList.length > 1) {\n const dataTransfer = new DataTransfer()\n dataTransfer.items.add(fileList[0])\n fileListToUse = dataTransfer.files\n }\n if (fileListToUse) {\n setInitialFiles(fileListToUse)\n }\n setCollectionSlug(relationTo)\n setOnSuccess(onUploadSuccess)\n if (typeof maxRows === 'number') {\n setMaxFiles(maxRows)\n }\n openModal(drawerSlug)\n },\n [\n drawerSlug,\n hasMany,\n onUploadSuccess,\n openModal,\n relationTo,\n setCollectionSlug,\n setInitialFiles,\n setOnSuccess,\n maxRows,\n setMaxFiles,\n ],\n )\n\n // only hasMany can bulk select\n const onListBulkSelect = React.useCallback<NonNullable<ListDrawerProps['onBulkSelect']>>(\n async (docs) => {\n const selectedDocIDs = []\n\n for (const [id, isSelected] of docs) {\n if (isSelected) {\n selectedDocIDs.push(id)\n }\n }\n\n const loadedDocs = await populateDocs(selectedDocIDs, activeRelationTo)\n if (loadedDocs) {\n setPopulatedDocs((currentDocs) => [\n ...(currentDocs || []),\n ...loadedDocs.docs.map((doc) => ({\n relationTo: activeRelationTo,\n value: doc,\n })),\n ])\n }\n onChange([...(Array.isArray(value) ? value : []), ...selectedDocIDs])\n closeListDrawer()\n },\n [activeRelationTo, closeListDrawer, onChange, populateDocs, value],\n )\n\n const onDocCreate = React.useCallback(\n (data) => {\n if (data.doc) {\n setPopulatedDocs((currentDocs) => [\n ...(currentDocs || []),\n {\n relationTo: activeRelationTo,\n value: data.doc,\n },\n ])\n\n onChange(data.doc.id)\n }\n closeCreateDocDrawer()\n },\n [closeCreateDocDrawer, activeRelationTo, onChange],\n )\n\n const onListSelect = React.useCallback<NonNullable<ListDrawerProps['onSelect']>>(\n async ({ collectionSlug, docID }) => {\n const loadedDocs = await populateDocs([docID], collectionSlug)\n const selectedDoc = loadedDocs ? loadedDocs.docs?.[0] : null\n setPopulatedDocs((currentDocs) => {\n if (selectedDoc) {\n if (hasMany) {\n return [\n ...(currentDocs || []),\n {\n relationTo: activeRelationTo,\n value: selectedDoc,\n },\n ]\n }\n return [\n {\n relationTo: activeRelationTo,\n value: selectedDoc,\n },\n ]\n }\n return currentDocs\n })\n if (hasMany) {\n onChange([...(Array.isArray(value) ? value : []), docID])\n } else {\n onChange(docID)\n }\n closeListDrawer()\n },\n [closeListDrawer, hasMany, populateDocs, onChange, value, activeRelationTo],\n )\n\n const reloadDoc = React.useCallback<ReloadDoc>(\n async (docID, collectionSlug) => {\n const { docs } = await populateDocs([docID], collectionSlug)\n\n if (docs[0]) {\n setPopulatedDocs((currentDocs) => {\n const existingDocIndex = currentDocs?.findIndex((doc) => {\n return doc.value.id === docs[0].id && doc.relationTo === collectionSlug\n })\n if (existingDocIndex > -1) {\n const updatedDocs = [...currentDocs]\n updatedDocs[existingDocIndex] = {\n relationTo: collectionSlug,\n value: docs[0],\n }\n return updatedDocs\n }\n })\n }\n },\n [populateDocs],\n )\n\n // only hasMany can reorder\n const onReorder = React.useCallback(\n (newValue) => {\n const newValueIDs = newValue.map(({ value }) => value.id)\n onChange(newValueIDs)\n setPopulatedDocs(newValue)\n },\n [onChange],\n )\n\n const onRemove = React.useCallback(\n (newValue?: PopulatedDocs) => {\n const newValueIDs = newValue ? newValue.map(({ value }) => value.id) : null\n onChange(hasMany ? newValueIDs : newValueIDs ? newValueIDs[0] : null)\n setPopulatedDocs(newValue ? newValue : [])\n },\n [onChange, hasMany],\n )\n\n useEffect(() => {\n async function loadInitialDocs() {\n if (value) {\n loadedValueDocsRef.current = true\n const loadedDocs = await populateDocs(\n Array.isArray(value) ? value : [value],\n activeRelationTo,\n )\n if (loadedDocs) {\n setPopulatedDocs(\n loadedDocs.docs.map((doc) => ({ relationTo: activeRelationTo, value: doc })),\n )\n }\n }\n }\n\n if (!loadedValueDocsRef.current) {\n void loadInitialDocs()\n }\n }, [populateDocs, activeRelationTo, value])\n\n const showDropzone =\n !value ||\n (hasMany && Array.isArray(value) && (typeof maxRows !== 'number' || value.length < maxRows)) ||\n (!hasMany && populatedDocs?.[0] && typeof populatedDocs[0].value === 'undefined')\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path?.replace(/\\./g, '__')}`}\n style={style}\n >\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel label={label} localized={localized} path={path} required={required} />\n }\n />\n <div className={`${baseClass}__wrap`}>\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n </div>\n {BeforeInput}\n <div className={`${baseClass}__dropzoneAndUpload`}>\n {hasMany && Array.isArray(value) && value.length > 0 ? (\n <>\n {populatedDocs && populatedDocs?.length > 0 ? (\n <UploadComponentHasMany\n fileDocs={populatedDocs}\n isSortable={isSortable && !readOnly}\n onRemove={onRemove}\n onReorder={onReorder}\n readonly={readOnly}\n reloadDoc={reloadDoc}\n serverURL={serverURL}\n />\n ) : (\n <div className={`${baseClass}__loadingRows`}>\n {value.map((id) => (\n <ShimmerEffect height=\"40px\" key={id} />\n ))}\n </div>\n )}\n </>\n ) : null}\n {!hasMany && value ? (\n <>\n {populatedDocs && populatedDocs?.length > 0 && populatedDocs[0].value ? (\n <UploadComponentHasOne\n fileDoc={populatedDocs[0]}\n onRemove={onRemove}\n readonly={readOnly}\n reloadDoc={reloadDoc}\n serverURL={serverURL}\n />\n ) : populatedDocs && value && !populatedDocs?.[0]?.value ? (\n <>\n {t('general:untitled')} - ID: {value}\n </>\n ) : (\n <ShimmerEffect height=\"62px\" />\n )}\n </>\n ) : null}\n {showDropzone ? (\n <Dropzone\n disabled={readOnly || !canCreate}\n multipleFiles={hasMany}\n onChange={onLocalFileSelection}\n >\n <div className={`${baseClass}__dropzoneContent`}>\n <div className={`${baseClass}__dropzoneContent__buttons`}>\n {canCreate && (\n <>\n <Button\n buttonStyle=\"pill\"\n className={`${baseClass}__createNewToggler`}\n disabled={readOnly || !canCreate}\n onClick={() => {\n if (!readOnly) {\n if (hasMany) {\n onLocalFileSelection()\n } else {\n openCreateDocDrawer()\n }\n }\n }}\n size=\"small\"\n >\n {t('general:createNew')}\n </Button>\n <span className={`${baseClass}__dropzoneContent__orText`}>\n {t('general:or')}\n </span>\n </>\n )}\n <Button\n buttonStyle=\"pill\"\n className={`${baseClass}__listToggler`}\n disabled={readOnly}\n onClick={openListDrawer}\n size=\"small\"\n >\n {t('fields:chooseFromExisting')}\n </Button>\n <CreateDocDrawer onSave={onDocCreate} />\n <ListDrawer\n allowCreate={canCreate}\n enableRowSelections={hasMany}\n onBulkSelect={onListBulkSelect}\n onSelect={onListSelect}\n />\n </div>\n\n {canCreate && !readOnly && (\n <p className={`${baseClass}__dragAndDropText`}>\n {t('general:or')} {t('upload:dragAndDrop')}\n </p>\n )}\n </div>\n </Dropzone>\n ) : (\n <>\n {!readOnly &&\n !populatedDocs &&\n (!value ||\n typeof maxRows !== 'number' ||\n (Array.isArray(value) && value.length < maxRows)) ? (\n <ShimmerEffect height=\"40px\" />\n ) : null}\n </>\n )}\n </div>\n {AfterInput}\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -30,33 +30,33 @@ export function RelationshipContent(props) {
|
|
|
30
30
|
} = props;
|
|
31
31
|
const withMeta = t0 === undefined ? true : t0;
|
|
32
32
|
let t1;
|
|
33
|
-
if ($[0] !==
|
|
33
|
+
if ($[0] !== collectionSlug || $[1] !== reloadDoc) {
|
|
34
34
|
t1 = async t2 => {
|
|
35
35
|
const {
|
|
36
36
|
doc
|
|
37
37
|
} = t2;
|
|
38
38
|
return reloadDoc(doc.id, collectionSlug);
|
|
39
39
|
};
|
|
40
|
-
$[0] =
|
|
41
|
-
$[1] =
|
|
40
|
+
$[0] = collectionSlug;
|
|
41
|
+
$[1] = reloadDoc;
|
|
42
42
|
$[2] = t1;
|
|
43
43
|
} else {
|
|
44
44
|
t1 = $[2];
|
|
45
45
|
}
|
|
46
46
|
const onSave = t1;
|
|
47
47
|
let t2;
|
|
48
|
-
if ($[3] !==
|
|
48
|
+
if ($[3] !== collectionSlug || $[4] !== id) {
|
|
49
49
|
t2 = {
|
|
50
50
|
id,
|
|
51
51
|
collectionSlug
|
|
52
52
|
};
|
|
53
|
-
$[3] =
|
|
54
|
-
$[4] =
|
|
53
|
+
$[3] = collectionSlug;
|
|
54
|
+
$[4] = id;
|
|
55
55
|
$[5] = t2;
|
|
56
56
|
} else {
|
|
57
57
|
t2 = $[5];
|
|
58
58
|
}
|
|
59
|
-
const [DocumentDrawer
|
|
59
|
+
const [DocumentDrawer,, t3] = useDocumentDrawer(t2);
|
|
60
60
|
const {
|
|
61
61
|
openDrawer
|
|
62
62
|
} = t3;
|
|
@@ -93,7 +93,7 @@ export function RelationshipContent(props) {
|
|
|
93
93
|
}
|
|
94
94
|
const t6 = t5.join(" ");
|
|
95
95
|
let t7;
|
|
96
|
-
if ($[11] !==
|
|
96
|
+
if ($[11] !== DocumentDrawer || $[12] !== allowEdit || $[13] !== allowRemove || $[14] !== alt || $[15] !== filename || $[16] !== metaText || $[17] !== onRemove || $[18] !== onSave || $[19] !== openDrawer || $[20] !== src || $[21] !== t6 || $[22] !== withMeta) {
|
|
97
97
|
t7 = _jsxs("div", {
|
|
98
98
|
className: t6,
|
|
99
99
|
children: [_jsxs("div", {
|
|
@@ -137,18 +137,18 @@ export function RelationshipContent(props) {
|
|
|
137
137
|
})]
|
|
138
138
|
}) : null]
|
|
139
139
|
});
|
|
140
|
-
$[11] =
|
|
141
|
-
$[12] =
|
|
142
|
-
$[13] =
|
|
143
|
-
$[14] =
|
|
144
|
-
$[15] =
|
|
145
|
-
$[16] =
|
|
146
|
-
$[17] =
|
|
147
|
-
$[18] =
|
|
148
|
-
$[19] =
|
|
149
|
-
$[20] =
|
|
150
|
-
$[21] =
|
|
151
|
-
$[22] =
|
|
140
|
+
$[11] = DocumentDrawer;
|
|
141
|
+
$[12] = allowEdit;
|
|
142
|
+
$[13] = allowRemove;
|
|
143
|
+
$[14] = alt;
|
|
144
|
+
$[15] = filename;
|
|
145
|
+
$[16] = metaText;
|
|
146
|
+
$[17] = onRemove;
|
|
147
|
+
$[18] = onSave;
|
|
148
|
+
$[19] = openDrawer;
|
|
149
|
+
$[20] = src;
|
|
150
|
+
$[21] = t6;
|
|
151
|
+
$[22] = withMeta;
|
|
152
152
|
$[23] = t7;
|
|
153
153
|
} else {
|
|
154
154
|
t7 = $[23];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","formatFilesize","React","Button","useDocumentDrawer","ThumbnailComponent","baseClass","RelationshipContent","props","$","id","allowEdit","allowRemove","alt","byteSize","className","collectionSlug","filename","mimeType","onRemove","reloadDoc","src","withMeta","t0","x","y","undefined","t1","t2","doc","onSave","DocumentDrawer","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","formatFilesize","React","Button","useDocumentDrawer","ThumbnailComponent","baseClass","RelationshipContent","props","$","id","allowEdit","allowRemove","alt","byteSize","className","collectionSlug","filename","mimeType","onRemove","reloadDoc","src","withMeta","t0","x","y","undefined","t1","t2","doc","onSave","DocumentDrawer","t3","openDrawer","t4","generateMetaText","mimeType_0","size","sections","includes","push","join","metaText","t5","filter","Boolean","t6","t7","_jsxs","children","_jsx","fileSrc","href","target","buttonStyle","icon","iconStyle","onClick"],"sources":["../../../../src/fields/Upload/RelationshipContent/index.tsx"],"sourcesContent":["'use client'\n\nimport type { TypeWithID } from 'payload'\n\nimport { formatFilesize } from 'payload/shared'\nimport React from 'react'\n\nimport type { ReloadDoc } from '../types.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { useDocumentDrawer } from '../../../elements/DocumentDrawer/index.js'\nimport { ThumbnailComponent } from '../../../elements/Thumbnail/index.js'\nimport './index.scss'\n\nconst baseClass = 'upload-relationship-details'\n\ntype Props = {\n readonly allowEdit?: boolean\n readonly allowRemove?: boolean\n readonly alt: string\n readonly byteSize: number\n readonly className?: string\n readonly collectionSlug: string\n readonly filename: string\n readonly id: number | string\n readonly mimeType: string\n readonly onRemove: () => void\n readonly reloadDoc: ReloadDoc\n readonly src: string\n readonly withMeta?: boolean\n readonly x?: number\n readonly y?: number\n}\nexport function RelationshipContent(props: Props) {\n const {\n id,\n allowEdit,\n allowRemove,\n alt,\n byteSize,\n className,\n collectionSlug,\n filename,\n mimeType,\n onRemove,\n reloadDoc,\n src,\n withMeta = true,\n x,\n y,\n } = props\n\n const onSave = React.useCallback(\n async ({ doc }: { doc: TypeWithID }) => reloadDoc(doc.id, collectionSlug),\n [reloadDoc, collectionSlug],\n )\n\n const [DocumentDrawer, _, { openDrawer }] = useDocumentDrawer({\n id,\n collectionSlug,\n })\n\n function generateMetaText(mimeType: string, size: number): string {\n const sections: string[] = []\n if (mimeType.includes('image')) {\n sections.push(formatFilesize(size))\n }\n\n if (x && y) {\n sections.push(`${x}x${y}`)\n }\n\n if (mimeType) {\n sections.push(mimeType)\n }\n\n return sections.join(' — ')\n }\n\n const metaText = withMeta ? generateMetaText(mimeType, byteSize) : ''\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <div className={`${baseClass}__imageAndDetails`}>\n <ThumbnailComponent\n alt={alt}\n className={`${baseClass}__thumbnail`}\n filename={filename}\n fileSrc={src}\n size=\"small\"\n />\n <div className={`${baseClass}__details`}>\n <p className={`${baseClass}__filename`}>\n <a href={src} target=\"_blank\">\n {filename}\n </a>\n </p>\n {withMeta ? <p className={`${baseClass}__meta`}>{metaText}</p> : null}\n </div>\n </div>\n\n {allowEdit !== false || allowRemove !== false ? (\n <div className={`${baseClass}__actions`}>\n {allowEdit !== false ? (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__edit`}\n icon=\"edit\"\n iconStyle=\"none\"\n onClick={openDrawer}\n />\n ) : null}\n {allowRemove !== false ? (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n iconStyle=\"none\"\n onClick={() => onRemove()}\n />\n ) : null}\n <DocumentDrawer onSave={onSave} />\n </div>\n ) : null}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -48,7 +48,7 @@ export const NullifyLocaleField = t0 => {
|
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
let t2;
|
|
51
|
-
if ($[0] !==
|
|
51
|
+
if ($[0] !== checked || $[1] !== path || $[2] !== t) {
|
|
52
52
|
t2 = _jsx(Banner, {
|
|
53
53
|
children: _jsx(CheckboxField, {
|
|
54
54
|
checked,
|
|
@@ -61,9 +61,9 @@ export const NullifyLocaleField = t0 => {
|
|
|
61
61
|
schemaPath: ""
|
|
62
62
|
})
|
|
63
63
|
});
|
|
64
|
-
$[0] =
|
|
64
|
+
$[0] = checked;
|
|
65
65
|
$[1] = path;
|
|
66
|
-
$[2] =
|
|
66
|
+
$[2] = t;
|
|
67
67
|
$[3] = t2;
|
|
68
68
|
} else {
|
|
69
69
|
t2 = $[3];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","Banner","CheckboxField","useConfig","useLocale","useTranslation","NullifyLocaleField","t0","$","fieldValue","localized","path","code","currentLocale","config","t1","localization","checked","setChecked","useState","defaultLocale","t","fallback","hideCheckbox","Array","isArray","length","t2","_jsx","children","field","name","label","id","replace","schemaPath"],"sources":["../../../src/forms/NullifyField/index.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { CheckboxField } from '../../fields/Checkbox/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\ntype NullifyLocaleFieldProps = {\n readonly fieldValue?: [] | null | number\n readonly localized: boolean\n readonly path: string\n}\n\nexport const NullifyLocaleField: React.FC<NullifyLocaleFieldProps> = ({\n fieldValue,\n localized,\n path,\n}) => {\n const { code: currentLocale } = useLocale()\n const {\n config: { localization },\n } = useConfig()\n const [checked, setChecked] = React.useState<boolean>(typeof fieldValue !== 'number')\n const defaultLocale =\n localization && localization.defaultLocale ? localization.defaultLocale : 'en'\n const { t } = useTranslation()\n\n if (!localized || currentLocale === defaultLocale || (localization && !localization.fallback)) {\n // hide when field is not localized or editing default locale or when fallback is disabled\n return null\n }\n\n if (fieldValue) {\n let hideCheckbox = false\n if (typeof fieldValue === 'number' && fieldValue > 0) {\n hideCheckbox = true\n }\n if (Array.isArray(fieldValue) && fieldValue.length > 0) {\n hideCheckbox = true\n }\n\n if (hideCheckbox) {\n if (checked) {\n setChecked(false)\n } // uncheck when field has value\n return null\n }\n }\n\n return (\n <Banner>\n <CheckboxField\n checked={checked}\n field={{\n name: '',\n label: t('general:fallbackToDefaultLocale'),\n }}\n id={`field-${path.replace(/\\./g, '__')}`}\n path={path}\n schemaPath=\"\"\n // onToggle={onChange}\n />\n </Banner>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,YAAYC,KAAA,MAAW;AAEvB,SAASC,MAAM,QAAQ;AACvB,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAQ/B,OAAO,MAAMC,kBAAA,GAAwDC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU,UAAA;IAAAC,SAAA;IAAAC;EAAA,IAAAJ,EAIrE;EACC;IAAAK,IAAA,EAAAC;EAAA,IAAgCT,SAAA;EAChC;IAAAU,MAAA,EAAAC;EAAA,IAEIZ,SAAA;EADM;IAAAa;EAAA,IAAAD,EAAgB;EAE1B,OAAAE,OAAA,EAAAC,UAAA,IAA8BlB,KAAA,CAAAmB,QAAA,CAAwB,OAAOV,UAAA,KAAe;EAC5E,MAAAW,aAAA,GACEJ,YAAA,IAAgBA,YAAA,CAAAI,aAA0B,GAAGJ,YAAA,CAAAI,aAAA,GAA6B;EAC5E;IAAAC;EAAA,IAAchB,cAAA;EAAA,IAEV,CAACK,SAAA,IAAaG,aAAA,KAAkBO,aAAA,IAAkBJ,YAAA,KAAiBA,YAAA,CAAAM,QAAqB;IAAA;EAAA;EAAA,IAKxFb,UAAA;IACF,IAAAc,YAAA;IAAmB,IACf,OAAOd,UAAA,KAAe,YAAYA,UAAA,IAAa;MACjDc,YAAA,CAAAA,CAAA,CAAAA,IAAA;IAAA;IAAA,IAEEC,KAAA,CAAAC,OAAA,CAAchB,UAAA,KAAeA,UAAA,CAAAiB,MAAA,IAAoB;MACnDH,YAAA,CAAAA,CAAA,CAAAA,IAAA;IAAA;IAAA,IAGEA,YAAA;MAAA,IACEN,OAAA;QACFC,UAAA,MAAW;MAAA;MAAA;IAAA;EAAA;EAAA,IAAAS,EAAA;EAAA,IAAAnB,CAAA,
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","Banner","CheckboxField","useConfig","useLocale","useTranslation","NullifyLocaleField","t0","$","fieldValue","localized","path","code","currentLocale","config","t1","localization","checked","setChecked","useState","defaultLocale","t","fallback","hideCheckbox","Array","isArray","length","t2","_jsx","children","field","name","label","id","replace","schemaPath"],"sources":["../../../src/forms/NullifyField/index.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { CheckboxField } from '../../fields/Checkbox/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\ntype NullifyLocaleFieldProps = {\n readonly fieldValue?: [] | null | number\n readonly localized: boolean\n readonly path: string\n}\n\nexport const NullifyLocaleField: React.FC<NullifyLocaleFieldProps> = ({\n fieldValue,\n localized,\n path,\n}) => {\n const { code: currentLocale } = useLocale()\n const {\n config: { localization },\n } = useConfig()\n const [checked, setChecked] = React.useState<boolean>(typeof fieldValue !== 'number')\n const defaultLocale =\n localization && localization.defaultLocale ? localization.defaultLocale : 'en'\n const { t } = useTranslation()\n\n if (!localized || currentLocale === defaultLocale || (localization && !localization.fallback)) {\n // hide when field is not localized or editing default locale or when fallback is disabled\n return null\n }\n\n if (fieldValue) {\n let hideCheckbox = false\n if (typeof fieldValue === 'number' && fieldValue > 0) {\n hideCheckbox = true\n }\n if (Array.isArray(fieldValue) && fieldValue.length > 0) {\n hideCheckbox = true\n }\n\n if (hideCheckbox) {\n if (checked) {\n setChecked(false)\n } // uncheck when field has value\n return null\n }\n }\n\n return (\n <Banner>\n <CheckboxField\n checked={checked}\n field={{\n name: '',\n label: t('general:fallbackToDefaultLocale'),\n }}\n id={`field-${path.replace(/\\./g, '__')}`}\n path={path}\n schemaPath=\"\"\n // onToggle={onChange}\n />\n </Banner>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,YAAYC,KAAA,MAAW;AAEvB,SAASC,MAAM,QAAQ;AACvB,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAQ/B,OAAO,MAAMC,kBAAA,GAAwDC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU,UAAA;IAAAC,SAAA;IAAAC;EAAA,IAAAJ,EAIrE;EACC;IAAAK,IAAA,EAAAC;EAAA,IAAgCT,SAAA;EAChC;IAAAU,MAAA,EAAAC;EAAA,IAEIZ,SAAA;EADM;IAAAa;EAAA,IAAAD,EAAgB;EAE1B,OAAAE,OAAA,EAAAC,UAAA,IAA8BlB,KAAA,CAAAmB,QAAA,CAAwB,OAAOV,UAAA,KAAe;EAC5E,MAAAW,aAAA,GACEJ,YAAA,IAAgBA,YAAA,CAAAI,aAA0B,GAAGJ,YAAA,CAAAI,aAAA,GAA6B;EAC5E;IAAAC;EAAA,IAAchB,cAAA;EAAA,IAEV,CAACK,SAAA,IAAaG,aAAA,KAAkBO,aAAA,IAAkBJ,YAAA,KAAiBA,YAAA,CAAAM,QAAqB;IAAA;EAAA;EAAA,IAKxFb,UAAA;IACF,IAAAc,YAAA;IAAmB,IACf,OAAOd,UAAA,KAAe,YAAYA,UAAA,IAAa;MACjDc,YAAA,CAAAA,CAAA,CAAAA,IAAA;IAAA;IAAA,IAEEC,KAAA,CAAAC,OAAA,CAAchB,UAAA,KAAeA,UAAA,CAAAiB,MAAA,IAAoB;MACnDH,YAAA,CAAAA,CAAA,CAAAA,IAAA;IAAA;IAAA,IAGEA,YAAA;MAAA,IACEN,OAAA;QACFC,UAAA,MAAW;MAAA;MAAA;IAAA;EAAA;EAAA,IAAAS,EAAA;EAAA,IAAAnB,CAAA,QAAAS,OAAA,IAAAT,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAa,CAAA;IAOfM,EAAA,GAAAC,IAAA,CAAA3B,MAAA;MAAA4B,QAAA,EACED,IAAA,CAAA1B,aAAA;QAAAe,OAAA;QAAAa,KAAA;UAAAC,IAAA,EAGU;UAAAC,KAAA,EACCX,CAAA,CAAE;QAAA;QAAAY,EAAA,EAEP,SAAStB,IAAA,CAAAuB,OAAA,QAAoB,OAAO;QAAAvB,IAAA;QAAAwB,UAAA,EAE7B;MAAA,C;;;;;;;;;SATfR,E;CAcJ","ignoreList":[]}
|
|
@@ -56,7 +56,7 @@ export function RenderField(t0) {
|
|
|
56
56
|
return Field || null;
|
|
57
57
|
}
|
|
58
58
|
let t2;
|
|
59
|
-
if ($[2] !==
|
|
59
|
+
if ($[2] !== clientFieldConfig || $[3] !== forceRender || $[4] !== indexPath || $[5] !== parentPath || $[6] !== parentSchemaPath || $[7] !== path || $[8] !== permissions || $[9] !== readOnly || $[10] !== schemaPath) {
|
|
60
60
|
t2 = Symbol.for("react.early_return_sentinel");
|
|
61
61
|
bb0: {
|
|
62
62
|
const baseFieldProps = {
|
|
@@ -281,15 +281,15 @@ export function RenderField(t0) {
|
|
|
281
281
|
}
|
|
282
282
|
}
|
|
283
283
|
}
|
|
284
|
-
$[2] =
|
|
285
|
-
$[3] =
|
|
286
|
-
$[4] =
|
|
287
|
-
$[5] =
|
|
288
|
-
$[6] =
|
|
289
|
-
$[7] =
|
|
284
|
+
$[2] = clientFieldConfig;
|
|
285
|
+
$[3] = forceRender;
|
|
286
|
+
$[4] = indexPath;
|
|
287
|
+
$[5] = parentPath;
|
|
288
|
+
$[6] = parentSchemaPath;
|
|
289
|
+
$[7] = path;
|
|
290
290
|
$[8] = permissions;
|
|
291
|
-
$[9] =
|
|
292
|
-
$[10] =
|
|
291
|
+
$[9] = readOnly;
|
|
292
|
+
$[10] = schemaPath;
|
|
293
293
|
$[11] = t2;
|
|
294
294
|
} else {
|
|
295
295
|
t2 = $[11];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderField.js","names":["c","_c","React","ArrayField","BlocksField","CheckboxField","CodeField","CollapsibleField","DateTimeField","EmailField","GroupField","HiddenField","JoinField","JSONField","NumberField","PointField","RadioGroupField","RelationshipField","RichTextField","RowField","SelectField","TabsField","TextField","TextareaField","UIField","UploadField","useFormFields","RenderField","t0","$","clientFieldConfig","forceRender","indexPath","parentPath","parentSchemaPath","path","permissions","readOnly","schemaPath","t1","t2","fields","customComponents","Field","undefined","Symbol","for","baseFieldProps","iterableFieldProps","admin","hidden","_jsx","type","field","t3","bb0"],"sources":["../../../src/forms/RenderFields/RenderField.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n SanitizedFieldPermissions,\n} from 'payload'\n\nimport React from 'react'\n\nimport { ArrayField } from '../../fields/Array/index.js'\nimport { BlocksField } from '../../fields/Blocks/index.js'\nimport { CheckboxField } from '../../fields/Checkbox/index.js'\nimport { CodeField } from '../../fields/Code/index.js'\nimport { CollapsibleField } from '../../fields/Collapsible/index.js'\nimport { DateTimeField } from '../../fields/DateTime/index.js'\nimport { EmailField } from '../../fields/Email/index.js'\nimport { GroupField } from '../../fields/Group/index.js'\nimport { HiddenField } from '../../fields/Hidden/index.js'\nimport { JoinField } from '../../fields/Join/index.js'\nimport { JSONField } from '../../fields/JSON/index.js'\nimport { NumberField } from '../../fields/Number/index.js'\nimport { PointField } from '../../fields/Point/index.js'\nimport { RadioGroupField } from '../../fields/RadioGroup/index.js'\nimport { RelationshipField } from '../../fields/Relationship/index.js'\nimport { RichTextField } from '../../fields/RichText/index.js'\nimport { RowField } from '../../fields/Row/index.js'\nimport { SelectField } from '../../fields/Select/index.js'\nimport { TabsField } from '../../fields/Tabs/index.js'\nimport { TextField } from '../../fields/Text/index.js'\nimport { TextareaField } from '../../fields/Textarea/index.js'\nimport { UIField } from '../../fields/UI/index.js'\nimport { UploadField } from '../../fields/Upload/index.js'\nimport { useFormFields } from '../../forms/Form/index.js'\n\ntype RenderFieldProps = {\n clientFieldConfig: ClientField\n permissions: SanitizedFieldPermissions\n} & FieldPaths &\n Pick<ClientComponentProps, 'forceRender' | 'readOnly' | 'schemaPath'>\n\nexport function RenderField({\n clientFieldConfig,\n forceRender,\n indexPath,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n readOnly,\n schemaPath,\n}: RenderFieldProps) {\n const Field = useFormFields(([fields]) => fields && fields?.[path]?.customComponents?.Field)\n\n if (Field !== undefined) {\n return Field || null\n }\n\n const baseFieldProps: Pick<ClientComponentProps, 'forceRender' | 'readOnly' | 'schemaPath'> = {\n forceRender,\n readOnly,\n schemaPath,\n }\n\n const iterableFieldProps = {\n ...baseFieldProps,\n indexPath,\n parentPath,\n parentSchemaPath,\n permissions,\n }\n\n if (clientFieldConfig.admin?.hidden) {\n return <HiddenField {...baseFieldProps} path={path} />\n }\n\n switch (clientFieldConfig.type) {\n case 'array':\n return <ArrayField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'blocks':\n return <BlocksField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'checkbox':\n return <CheckboxField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'code':\n return <CodeField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'collapsible':\n return <CollapsibleField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'date':\n return <DateTimeField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'email':\n return <EmailField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'group':\n return <GroupField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'join':\n return <JoinField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'json':\n return <JSONField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'number':\n return <NumberField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'point':\n return <PointField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'radio':\n return <RadioGroupField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'relationship':\n return <RelationshipField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'richText':\n return <RichTextField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'row':\n return <RowField {...iterableFieldProps} field={clientFieldConfig} />\n\n case 'select':\n return <SelectField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'tabs':\n return <TabsField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'text':\n return <TextField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'textarea':\n return <TextareaField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'ui':\n return <UIField />\n\n case 'upload':\n return <UploadField {...baseFieldProps} field={clientFieldConfig} path={path} />\n }\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AASA,OAAOC,KAAA,MAAW;AAElB,SAASC,UAAU,QAAQ;AAC3B,SAASC,WAAW,QAAQ;AAC5B,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,aAAa,QAAQ;AAC9B,SAASC,UAAU,QAAQ;AAC3B,SAASC,UAAU,QAAQ;AAC3B,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,WAAW,QAAQ;AAC5B,SAASC,UAAU,QAAQ;AAC3B,SAASC,eAAe,QAAQ;AAChC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,aAAa,QAAQ;AAC9B,SAASC,QAAQ,QAAQ;AACzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,aAAa,QAAQ;AAC9B,SAASC,OAAO,QAAQ;AACxB,SAASC,WAAW,QAAQ;AAC5B,SAASC,aAAa,QAAQ;AAQ9B,OAAO,SAAAC,YAAAC,EAAA;EAAA,MAAAC,CAAA,GAAA5B,EAAA;EAAqB;IAAA6B,iBAAA;IAAAC,WAAA;IAAAC,SAAA;IAAAC,UAAA;IAAAC,gBAAA;IAAAC,IAAA;IAAAC,WAAA;IAAAC,QAAA;IAAAC;EAAA,IAAAV,EAUT;EAAA,IAAAW,EAAA;EAAA,IAAAV,CAAA,QAAAM,IAAA;IACWI,EAAA,GAAAC,EAAA;MAAC,OAAAC,MAAA,IAAAD,EAAQ;MAAA,OAAKC,MAAA,IAAUA,MAAA,GAASN,IAAA,GAAAO,gBAAA,EAAAC,KAAyB;IAAA;IAAAd,CAAA,MAAAM,IAAA;IAAAN,CAAA,MAAAU,EAAA;EAAA;IAAAA,EAAA,GAAAV,CAAA;EAAA;EAAtF,MAAAc,KAAA,GAAcjB,aAAA,CAAca,EAA0D;EAAA,IAElFI,KAAA,KAAAC,SAAU;IAAA,OACLD,KAAA,QAAS;EAAA;EAAA,IAAAH,EAAA;EAAA,IAAAX,CAAA,
|
|
1
|
+
{"version":3,"file":"RenderField.js","names":["c","_c","React","ArrayField","BlocksField","CheckboxField","CodeField","CollapsibleField","DateTimeField","EmailField","GroupField","HiddenField","JoinField","JSONField","NumberField","PointField","RadioGroupField","RelationshipField","RichTextField","RowField","SelectField","TabsField","TextField","TextareaField","UIField","UploadField","useFormFields","RenderField","t0","$","clientFieldConfig","forceRender","indexPath","parentPath","parentSchemaPath","path","permissions","readOnly","schemaPath","t1","t2","fields","customComponents","Field","undefined","Symbol","for","baseFieldProps","iterableFieldProps","admin","hidden","_jsx","type","field","t3","bb0"],"sources":["../../../src/forms/RenderFields/RenderField.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n SanitizedFieldPermissions,\n} from 'payload'\n\nimport React from 'react'\n\nimport { ArrayField } from '../../fields/Array/index.js'\nimport { BlocksField } from '../../fields/Blocks/index.js'\nimport { CheckboxField } from '../../fields/Checkbox/index.js'\nimport { CodeField } from '../../fields/Code/index.js'\nimport { CollapsibleField } from '../../fields/Collapsible/index.js'\nimport { DateTimeField } from '../../fields/DateTime/index.js'\nimport { EmailField } from '../../fields/Email/index.js'\nimport { GroupField } from '../../fields/Group/index.js'\nimport { HiddenField } from '../../fields/Hidden/index.js'\nimport { JoinField } from '../../fields/Join/index.js'\nimport { JSONField } from '../../fields/JSON/index.js'\nimport { NumberField } from '../../fields/Number/index.js'\nimport { PointField } from '../../fields/Point/index.js'\nimport { RadioGroupField } from '../../fields/RadioGroup/index.js'\nimport { RelationshipField } from '../../fields/Relationship/index.js'\nimport { RichTextField } from '../../fields/RichText/index.js'\nimport { RowField } from '../../fields/Row/index.js'\nimport { SelectField } from '../../fields/Select/index.js'\nimport { TabsField } from '../../fields/Tabs/index.js'\nimport { TextField } from '../../fields/Text/index.js'\nimport { TextareaField } from '../../fields/Textarea/index.js'\nimport { UIField } from '../../fields/UI/index.js'\nimport { UploadField } from '../../fields/Upload/index.js'\nimport { useFormFields } from '../../forms/Form/index.js'\n\ntype RenderFieldProps = {\n clientFieldConfig: ClientField\n permissions: SanitizedFieldPermissions\n} & FieldPaths &\n Pick<ClientComponentProps, 'forceRender' | 'readOnly' | 'schemaPath'>\n\nexport function RenderField({\n clientFieldConfig,\n forceRender,\n indexPath,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n readOnly,\n schemaPath,\n}: RenderFieldProps) {\n const Field = useFormFields(([fields]) => fields && fields?.[path]?.customComponents?.Field)\n\n if (Field !== undefined) {\n return Field || null\n }\n\n const baseFieldProps: Pick<ClientComponentProps, 'forceRender' | 'readOnly' | 'schemaPath'> = {\n forceRender,\n readOnly,\n schemaPath,\n }\n\n const iterableFieldProps = {\n ...baseFieldProps,\n indexPath,\n parentPath,\n parentSchemaPath,\n permissions,\n }\n\n if (clientFieldConfig.admin?.hidden) {\n return <HiddenField {...baseFieldProps} path={path} />\n }\n\n switch (clientFieldConfig.type) {\n case 'array':\n return <ArrayField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'blocks':\n return <BlocksField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'checkbox':\n return <CheckboxField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'code':\n return <CodeField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'collapsible':\n return <CollapsibleField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'date':\n return <DateTimeField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'email':\n return <EmailField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'group':\n return <GroupField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'join':\n return <JoinField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'json':\n return <JSONField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'number':\n return <NumberField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'point':\n return <PointField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'radio':\n return <RadioGroupField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'relationship':\n return <RelationshipField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'richText':\n return <RichTextField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'row':\n return <RowField {...iterableFieldProps} field={clientFieldConfig} />\n\n case 'select':\n return <SelectField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'tabs':\n return <TabsField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'text':\n return <TextField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'textarea':\n return <TextareaField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'ui':\n return <UIField />\n\n case 'upload':\n return <UploadField {...baseFieldProps} field={clientFieldConfig} path={path} />\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -38,9 +38,9 @@ export const RenderFields = props => {
|
|
|
38
38
|
}
|
|
39
39
|
const t3 = t2.join(" ");
|
|
40
40
|
let t4;
|
|
41
|
-
if ($[4] !==
|
|
41
|
+
if ($[4] !== fields || $[5] !== forceRender || $[6] !== operation || $[7] !== parentIndexPath || $[8] !== parentPath || $[9] !== parentSchemaPath || $[10] !== permissions || $[11] !== readOnlyFromParent || $[12] !== t3) {
|
|
42
42
|
let t5;
|
|
43
|
-
if ($[14] !==
|
|
43
|
+
if ($[14] !== forceRender || $[15] !== operation || $[16] !== parentIndexPath || $[17] !== parentPath || $[18] !== parentSchemaPath || $[19] !== permissions || $[20] !== readOnlyFromParent) {
|
|
44
44
|
t5 = (field, i) => {
|
|
45
45
|
if (!field || field?.admin?.disabled) {
|
|
46
46
|
return null;
|
|
@@ -81,13 +81,13 @@ export const RenderFields = props => {
|
|
|
81
81
|
schemaPath
|
|
82
82
|
}, `${path}-${i}`);
|
|
83
83
|
};
|
|
84
|
-
$[14] =
|
|
85
|
-
$[15] =
|
|
86
|
-
$[16] =
|
|
87
|
-
$[17] =
|
|
88
|
-
$[18] =
|
|
89
|
-
$[19] =
|
|
90
|
-
$[20] =
|
|
84
|
+
$[14] = forceRender;
|
|
85
|
+
$[15] = operation;
|
|
86
|
+
$[16] = parentIndexPath;
|
|
87
|
+
$[17] = parentPath;
|
|
88
|
+
$[18] = parentSchemaPath;
|
|
89
|
+
$[19] = permissions;
|
|
90
|
+
$[20] = readOnlyFromParent;
|
|
91
91
|
$[21] = t5;
|
|
92
92
|
} else {
|
|
93
93
|
t5 = $[21];
|
|
@@ -97,14 +97,14 @@ export const RenderFields = props => {
|
|
|
97
97
|
forceRender,
|
|
98
98
|
children: fields.map(t5)
|
|
99
99
|
});
|
|
100
|
-
$[4] =
|
|
101
|
-
$[5] =
|
|
102
|
-
$[6] =
|
|
103
|
-
$[7] =
|
|
104
|
-
$[8] =
|
|
100
|
+
$[4] = fields;
|
|
101
|
+
$[5] = forceRender;
|
|
102
|
+
$[6] = operation;
|
|
103
|
+
$[7] = parentIndexPath;
|
|
104
|
+
$[8] = parentPath;
|
|
105
105
|
$[9] = parentSchemaPath;
|
|
106
|
-
$[10] =
|
|
107
|
-
$[11] =
|
|
106
|
+
$[10] = permissions;
|
|
107
|
+
$[11] = readOnlyFromParent;
|
|
108
108
|
$[12] = t3;
|
|
109
109
|
$[13] = t4;
|
|
110
110
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getFieldPaths","React","RenderIfInViewport","useOperation","RenderField","baseClass","RenderFields","props","$","className","fields","forceRender","margins","parentIndexPath","parentPath","parentSchemaPath","permissions","readOnly","readOnlyFromParent","operation","length","t0","t1","t2","filter","Boolean","t3","join","t4","t5","field","i","admin","disabled","parentName","includes","split","hasReadPermission","name","read","isReadOnly","hasOperationPermission","indexPath","path","schemaPath","index","_jsx","clientFieldConfig","undefined","children","map"],"sources":["../../../src/forms/RenderFields/index.tsx"],"sourcesContent":["'use client'\n\nimport { getFieldPaths } from 'payload/shared'\nimport React from 'react'\n\nimport type { RenderFieldsProps } from './types.js'\n\nimport { RenderIfInViewport } from '../../elements/RenderIfInViewport/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport './index.scss'\nimport { RenderField } from './RenderField.js'\n\nconst baseClass = 'render-fields'\n\nexport { RenderFieldsProps as Props }\n\nexport const RenderFields: React.FC<RenderFieldsProps> = (props) => {\n const {\n className,\n fields,\n forceRender,\n margins,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n permissions,\n readOnly: readOnlyFromParent,\n } = props\n\n const operation = useOperation()\n\n if (fields && fields.length > 0) {\n return (\n <RenderIfInViewport\n className={[\n baseClass,\n className,\n margins && `${baseClass}--margins-${margins}`,\n margins === false && `${baseClass}--margins-none`,\n ]\n .filter(Boolean)\n .join(' ')}\n forceRender={forceRender}\n >\n {fields.map((field, i) => {\n // For sidebar fields in the main fields array, `field` will be `null`, and visa versa\n // This is to keep the order of the fields consistent and maintain the correct index paths for the main fields (i)\n if (!field || field?.admin?.disabled) {\n return null\n }\n\n const parentName = parentPath?.includes('.')\n ? parentPath.split('.')[parentPath.split('.').length - 1]\n : parentPath\n\n // If the user cannot read the field, then filter it out\n // This is different from `admin.readOnly` which is executed based on `operation`\n const hasReadPermission =\n permissions === true ||\n permissions?.[parentName] === true ||\n ('name' in field &&\n typeof permissions === 'object' &&\n permissions?.[field.name] &&\n (permissions[field.name] === true ||\n ('read' in permissions[field.name] && permissions[field.name].read)))\n\n if ('name' in field && !hasReadPermission) {\n return null\n }\n\n // `admin.readOnly` displays the value but prevents the field from being edited\n let isReadOnly = readOnlyFromParent || field?.admin?.readOnly\n\n // If parent field is `readOnly: true`, but this field is `readOnly: false`, the field should still be editable\n if (isReadOnly && field.admin?.readOnly === false) {\n isReadOnly = false\n }\n\n // If the user does not have access control to begin with, force it to be read-only\n const hasOperationPermission =\n permissions === true ||\n permissions?.[parentName] === true ||\n ('name' in field &&\n typeof permissions === 'object' &&\n permissions?.[field.name] &&\n (permissions[field.name] === true ||\n (operation in permissions[field.name] && permissions[field.name][operation])))\n\n if ('name' in field && !hasOperationPermission) {\n isReadOnly = true\n }\n\n const { indexPath, path, schemaPath } = getFieldPaths({\n field,\n index: i,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n })\n\n return (\n <RenderField\n clientFieldConfig={field}\n forceRender={forceRender}\n indexPath={indexPath}\n key={`${path}-${i}`}\n parentPath={parentPath}\n parentSchemaPath={parentSchemaPath}\n path={path}\n permissions={\n permissions === undefined || permissions === null || permissions === true\n ? true\n : 'name' in field\n ? permissions?.[field.name]\n : permissions\n }\n readOnly={isReadOnly}\n schemaPath={schemaPath}\n />\n )\n })}\n </RenderIfInViewport>\n )\n }\n\n return null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,aAAa,QAAQ;AAC9B,OAAOC,KAAA,MAAW;AAIlB,SAASC,kBAAkB,QAAQ;AACnC,SAASC,YAAY,QAAQ;AAC7B,OAAO;AACP,SAASC,WAAW,QAAQ;AAE5B,MAAMC,SAAA,GAAY;AAIlB,OAAO,MAAMC,YAAA,GAA4CC,KAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EACvD;IAAAU,SAAA;IAAAC,MAAA;IAAAC,WAAA;IAAAC,OAAA;IAAAC,eAAA;IAAAC,UAAA;IAAAC,gBAAA;IAAAC,WAAA;IAAAC,QAAA,EAAAC;EAAA,IAUIX,KAAA;EAEJ,MAAAY,SAAA,GAAkBhB,YAAA;EAAA,IAEdO,MAAA,IAAUA,MAAA,CAAAU,MAAA,IAAgB;IAMtB,MAAAC,EAAA,GAAAT,OAAA,IAAW,GAAAP,SAAA,aAAyBO,OAAA,EAAS;IAC7C,MAAAU,EAAA,GAAAV,OAAA,UAAY,IAAS,GAAAP,SAAA,gBAA4B;IAAA,IAAAkB,EAAA;IAAA,IAAAf,CAAA,QAAAC,SAAA,IAAAD,CAAA,QAAAa,EAAA,IAAAb,CAAA,QAAAc,EAAA;MAJxCC,EAAA,IAAAlB,SAAA,EAETI,SAAA,EACAY,EAA6C,EAC7CC,EAAiD,EAAAE,MAAA,CAAAC,OAEzC;MAAAjB,CAAA,MAAAC,SAAA;MAAAD,CAAA,MAAAa,EAAA;MAAAb,CAAA,MAAAc,EAAA;MAAAd,CAAA,MAAAe,EAAA;IAAA;MAAAA,EAAA,GAAAf,CAAA;IAAA;IANC,MAAAkB,EAAA,GAAAH,EAMD,CAAAI,IAAA,CACF;IAAA,IAAAC,EAAA;IAAA,IAAApB,CAAA,
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getFieldPaths","React","RenderIfInViewport","useOperation","RenderField","baseClass","RenderFields","props","$","className","fields","forceRender","margins","parentIndexPath","parentPath","parentSchemaPath","permissions","readOnly","readOnlyFromParent","operation","length","t0","t1","t2","filter","Boolean","t3","join","t4","t5","field","i","admin","disabled","parentName","includes","split","hasReadPermission","name","read","isReadOnly","hasOperationPermission","indexPath","path","schemaPath","index","_jsx","clientFieldConfig","undefined","children","map"],"sources":["../../../src/forms/RenderFields/index.tsx"],"sourcesContent":["'use client'\n\nimport { getFieldPaths } from 'payload/shared'\nimport React from 'react'\n\nimport type { RenderFieldsProps } from './types.js'\n\nimport { RenderIfInViewport } from '../../elements/RenderIfInViewport/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport './index.scss'\nimport { RenderField } from './RenderField.js'\n\nconst baseClass = 'render-fields'\n\nexport { RenderFieldsProps as Props }\n\nexport const RenderFields: React.FC<RenderFieldsProps> = (props) => {\n const {\n className,\n fields,\n forceRender,\n margins,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n permissions,\n readOnly: readOnlyFromParent,\n } = props\n\n const operation = useOperation()\n\n if (fields && fields.length > 0) {\n return (\n <RenderIfInViewport\n className={[\n baseClass,\n className,\n margins && `${baseClass}--margins-${margins}`,\n margins === false && `${baseClass}--margins-none`,\n ]\n .filter(Boolean)\n .join(' ')}\n forceRender={forceRender}\n >\n {fields.map((field, i) => {\n // For sidebar fields in the main fields array, `field` will be `null`, and visa versa\n // This is to keep the order of the fields consistent and maintain the correct index paths for the main fields (i)\n if (!field || field?.admin?.disabled) {\n return null\n }\n\n const parentName = parentPath?.includes('.')\n ? parentPath.split('.')[parentPath.split('.').length - 1]\n : parentPath\n\n // If the user cannot read the field, then filter it out\n // This is different from `admin.readOnly` which is executed based on `operation`\n const hasReadPermission =\n permissions === true ||\n permissions?.[parentName] === true ||\n ('name' in field &&\n typeof permissions === 'object' &&\n permissions?.[field.name] &&\n (permissions[field.name] === true ||\n ('read' in permissions[field.name] && permissions[field.name].read)))\n\n if ('name' in field && !hasReadPermission) {\n return null\n }\n\n // `admin.readOnly` displays the value but prevents the field from being edited\n let isReadOnly = readOnlyFromParent || field?.admin?.readOnly\n\n // If parent field is `readOnly: true`, but this field is `readOnly: false`, the field should still be editable\n if (isReadOnly && field.admin?.readOnly === false) {\n isReadOnly = false\n }\n\n // If the user does not have access control to begin with, force it to be read-only\n const hasOperationPermission =\n permissions === true ||\n permissions?.[parentName] === true ||\n ('name' in field &&\n typeof permissions === 'object' &&\n permissions?.[field.name] &&\n (permissions[field.name] === true ||\n (operation in permissions[field.name] && permissions[field.name][operation])))\n\n if ('name' in field && !hasOperationPermission) {\n isReadOnly = true\n }\n\n const { indexPath, path, schemaPath } = getFieldPaths({\n field,\n index: i,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n })\n\n return (\n <RenderField\n clientFieldConfig={field}\n forceRender={forceRender}\n indexPath={indexPath}\n key={`${path}-${i}`}\n parentPath={parentPath}\n parentSchemaPath={parentSchemaPath}\n path={path}\n permissions={\n permissions === undefined || permissions === null || permissions === true\n ? true\n : 'name' in field\n ? permissions?.[field.name]\n : permissions\n }\n readOnly={isReadOnly}\n schemaPath={schemaPath}\n />\n )\n })}\n </RenderIfInViewport>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -15,17 +15,17 @@ export const WatchChildErrors = t0 => {
|
|
|
15
15
|
const [formState] = useAllFormFields();
|
|
16
16
|
const hasSubmitted = useFormSubmitted();
|
|
17
17
|
let t1;
|
|
18
|
-
if ($[0] !==
|
|
18
|
+
if ($[0] !== fields || $[1] !== path) {
|
|
19
19
|
t1 = buildPathSegments(path, fields);
|
|
20
|
-
$[0] =
|
|
21
|
-
$[1] =
|
|
20
|
+
$[0] = fields;
|
|
21
|
+
$[1] = path;
|
|
22
22
|
$[2] = t1;
|
|
23
23
|
} else {
|
|
24
24
|
t1 = $[2];
|
|
25
25
|
}
|
|
26
26
|
const pathSegments = t1;
|
|
27
27
|
let t2;
|
|
28
|
-
if ($[3] !==
|
|
28
|
+
if ($[3] !== formState || $[4] !== hasSubmitted || $[5] !== pathSegments || $[6] !== setErrorCount) {
|
|
29
29
|
t2 = () => {
|
|
30
30
|
if (hasSubmitted) {
|
|
31
31
|
const {
|
|
@@ -37,8 +37,8 @@ export const WatchChildErrors = t0 => {
|
|
|
37
37
|
setErrorCount(errorCount);
|
|
38
38
|
}
|
|
39
39
|
};
|
|
40
|
-
$[3] =
|
|
41
|
-
$[4] =
|
|
40
|
+
$[3] = formState;
|
|
41
|
+
$[4] = hasSubmitted;
|
|
42
42
|
$[5] = pathSegments;
|
|
43
43
|
$[6] = setErrorCount;
|
|
44
44
|
$[7] = t2;
|
|
@@ -46,11 +46,11 @@ export const WatchChildErrors = t0 => {
|
|
|
46
46
|
t2 = $[7];
|
|
47
47
|
}
|
|
48
48
|
let t3;
|
|
49
|
-
if ($[8] !==
|
|
49
|
+
if ($[8] !== fields || $[9] !== formState || $[10] !== hasSubmitted) {
|
|
50
50
|
t3 = [formState, hasSubmitted, fields];
|
|
51
|
-
$[8] =
|
|
52
|
-
$[9] =
|
|
53
|
-
$[10] =
|
|
51
|
+
$[8] = fields;
|
|
52
|
+
$[9] = formState;
|
|
53
|
+
$[10] = hasSubmitted;
|
|
54
54
|
$[11] = t3;
|
|
55
55
|
} else {
|
|
56
56
|
t3 = $[11];
|