@payloadcms/ui 3.0.0-canary.a5aaf21 → 3.0.0-canary.a6e7305
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.scss +36 -34
- package/dist/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +1 -0
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/AppHeader/index.scss +151 -150
- package/dist/elements/ArrayAction/index.scss +23 -21
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +1 -3
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/Autosave/index.scss +4 -2
- package/dist/elements/Banner/index.scss +51 -49
- package/dist/elements/BulkUpload/ActionsBar/index.scss +49 -43
- package/dist/elements/BulkUpload/AddFilesView/index.d.ts +2 -1
- package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +2 -0
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.scss +23 -21
- package/dist/elements/BulkUpload/AddingFilesView/index.scss +16 -14
- package/dist/elements/BulkUpload/DrawerCloseButton/index.scss +23 -21
- package/dist/elements/BulkUpload/EditForm/index.scss +6 -4
- package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.js +34 -25
- package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.scss +250 -210
- package/dist/elements/BulkUpload/FormsManager/index.d.ts +1 -0
- package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +60 -25
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/BulkUpload/Header/index.scss +11 -9
- package/dist/elements/BulkUpload/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/index.js +32 -42
- package/dist/elements/BulkUpload/index.js.map +1 -1
- package/dist/elements/Button/index.d.ts.map +1 -1
- package/dist/elements/Button/index.js +13 -4
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/index.scss +205 -199
- package/dist/elements/Button/types.d.ts +3 -1
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/Card/index.scss +58 -56
- package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +32 -27
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/CodeEditor/index.scss +16 -14
- package/dist/elements/CodeEditor/types.d.ts +1 -0
- package/dist/elements/CodeEditor/types.d.ts.map +1 -1
- package/dist/elements/CodeEditor/types.js.map +1 -1
- package/dist/elements/Collapsible/index.scss +125 -123
- package/dist/elements/ColumnSelector/index.scss +36 -34
- package/dist/elements/CopyToClipboard/index.scss +21 -19
- package/dist/elements/DatePicker/DatePicker.d.ts +1 -1
- package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +1 -1
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DatePicker/index.scss +309 -307
- package/dist/elements/DatePicker/library.scss +859 -0
- package/dist/elements/DeleteDocument/index.scss +32 -30
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +16 -5
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.scss +29 -27
- package/dist/elements/DocumentControls/index.d.ts +1 -1
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +6 -6
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.scss +190 -188
- package/dist/elements/DocumentDrawer/index.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/index.js +29 -23
- package/dist/elements/DocumentDrawer/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/index.scss +55 -53
- package/dist/elements/DocumentDrawer/types.d.ts +1 -0
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/DocumentFields/index.scss +144 -142
- package/dist/elements/Drawer/index.scss +111 -109
- package/dist/elements/Dropzone/index.d.ts +2 -1
- package/dist/elements/Dropzone/index.d.ts.map +1 -1
- package/dist/elements/Dropzone/index.js +3 -2
- package/dist/elements/Dropzone/index.js.map +1 -1
- package/dist/elements/Dropzone/index.scss +32 -30
- package/dist/elements/DuplicateDocument/index.scss +31 -29
- package/dist/elements/EditMany/index.js +3 -2
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditMany/index.scss +162 -160
- package/dist/elements/EditUpload/index.scss +180 -178
- package/dist/elements/ErrorPill/index.scss +27 -25
- package/dist/elements/FieldSelect/index.js +2 -2
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.scss +4 -2
- package/dist/elements/FileDetails/DraggableFileDetails/index.scss +25 -23
- package/dist/elements/FileDetails/FileMeta/index.scss +21 -19
- package/dist/elements/FileDetails/StaticFileDetails/index.scss +104 -102
- package/dist/elements/GenerateConfirmation/index.scss +29 -27
- package/dist/elements/Gutter/index.scss +14 -12
- package/dist/elements/Hamburger/index.scss +38 -36
- package/dist/elements/IDLabel/index.scss +11 -9
- package/dist/elements/ListControls/index.scss +71 -69
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +193 -187
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/index.d.ts.map +1 -1
- package/dist/elements/ListDrawer/index.js +2 -0
- package/dist/elements/ListDrawer/index.js.map +1 -1
- package/dist/elements/ListDrawer/index.scss +93 -91
- package/dist/elements/ListDrawer/types.d.ts +3 -2
- package/dist/elements/ListDrawer/types.d.ts.map +1 -1
- package/dist/elements/ListDrawer/types.js.map +1 -1
- package/dist/elements/ListHeader/index.scss +9 -7
- package/dist/elements/ListSelection/index.scss +14 -12
- package/dist/elements/Loading/index.scss +108 -106
- package/dist/elements/Localizer/LocalizerLabel/index.scss +44 -42
- package/dist/elements/Localizer/index.scss +7 -5
- package/dist/elements/Locked/index.d.ts +1 -1
- package/dist/elements/Locked/index.d.ts.map +1 -1
- package/dist/elements/Locked/index.js +2 -5
- package/dist/elements/Locked/index.js.map +1 -1
- package/dist/elements/Locked/index.scss +11 -9
- package/dist/elements/Logout/index.d.ts.map +1 -1
- package/dist/elements/Logout/index.js +15 -10
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/Nav/NavToggler/index.scss +9 -7
- package/dist/elements/NavGroup/index.scss +43 -41
- package/dist/elements/Pagination/ClickableArrow/index.scss +34 -32
- package/dist/elements/Pagination/index.scss +40 -38
- package/dist/elements/PerPage/index.scss +37 -35
- package/dist/elements/Pill/index.scss +103 -101
- package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +1 -0
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.scss +45 -43
- package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -0
- package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.js +3 -2
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.scss +26 -12
- package/dist/elements/Popup/index.d.ts +1 -0
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +6 -3
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/Popup/index.scss +194 -175
- package/dist/elements/PreviewSizes/index.scss +115 -113
- package/dist/elements/PublishButton/index.js +31 -18
- 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 +16 -5
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/PublishMany/index.scss +28 -26
- package/dist/elements/ReactSelect/ClearIndicator/index.scss +6 -4
- package/dist/elements/ReactSelect/DropdownIndicator/index.scss +11 -9
- package/dist/elements/ReactSelect/MultiValue/index.scss +26 -24
- package/dist/elements/ReactSelect/MultiValueLabel/index.scss +16 -14
- package/dist/elements/ReactSelect/MultiValueRemove/index.scss +20 -18
- package/dist/elements/ReactSelect/ValueContainer/index.scss +22 -20
- package/dist/elements/ReactSelect/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/index.js +2 -0
- package/dist/elements/ReactSelect/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.scss +69 -59
- package/dist/elements/ReactSelect/types.d.ts +2 -1
- package/dist/elements/ReactSelect/types.d.ts.map +1 -1
- package/dist/elements/ReactSelect/types.js.map +1 -1
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.scss +5 -3
- package/dist/elements/RelationshipTable/index.d.ts +1 -0
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +94 -92
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.scss +21 -19
- package/dist/elements/RenderTitle/index.scss +7 -5
- package/dist/elements/SearchFilter/index.scss +31 -28
- package/dist/elements/SelectAll/index.scss +5 -3
- package/dist/elements/SelectRow/index.scss +6 -4
- package/dist/elements/ShimmerEffect/index.scss +26 -24
- package/dist/elements/SortColumn/index.scss +51 -49
- package/dist/elements/SortComplex/index.scss +27 -25
- package/dist/elements/Status/index.js +1 -1
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/Status/index.scss +45 -43
- package/dist/elements/StayLoggedIn/index.scss +29 -26
- package/dist/elements/StepNav/index.d.ts.map +1 -1
- package/dist/elements/StepNav/index.js +21 -14
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/StepNav/index.scss +62 -61
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.scss +20 -18
- package/dist/elements/Table/DefaultCell/fields/Code/index.scss +22 -20
- package/dist/elements/Table/DefaultCell/fields/File/index.scss +18 -16
- package/dist/elements/Table/DefaultCell/fields/JSON/index.scss +20 -18
- package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +30 -30
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/TableCellProvider/index.js +9 -9
- package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
- package/dist/elements/Table/index.scss +74 -72
- package/dist/elements/TableColumns/buildColumnState.js +1 -0
- package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
- package/dist/elements/Thumbnail/createThumbnail.d.ts +5 -0
- package/dist/elements/Thumbnail/createThumbnail.d.ts.map +1 -0
- package/dist/elements/Thumbnail/createThumbnail.js +50 -0
- package/dist/elements/Thumbnail/createThumbnail.js.map +1 -0
- package/dist/elements/Thumbnail/index.d.ts.map +1 -1
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/Thumbnail/index.scss +37 -35
- package/dist/elements/ThumbnailCard/index.scss +31 -29
- package/dist/elements/Tooltip/index.scss +77 -75
- package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
- package/dist/elements/UnpublishMany/index.js +16 -5
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/UnpublishMany/index.scss +28 -26
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +2 -0
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/Upload/index.scss +117 -121
- package/dist/elements/WhereBuilder/Condition/Number/index.scss +4 -2
- package/dist/elements/WhereBuilder/Condition/Relationship/index.scss +9 -7
- package/dist/elements/WhereBuilder/Condition/Text/index.scss +4 -2
- package/dist/elements/WhereBuilder/Condition/index.scss +43 -41
- package/dist/elements/WhereBuilder/index.scss +28 -26
- package/dist/exports/client/{CodeEditor-CXCLJBIQ.js → CodeEditor-LZ2347XA.js} +6 -6
- package/dist/exports/client/CodeEditor-LZ2347XA.js.map +8 -0
- package/dist/exports/client/{DatePicker-NBYDOP2X.js → DatePicker-FUJV23KL.js} +2 -2
- package/dist/exports/client/chunk-6IWEPNUV.js +14 -0
- package/dist/exports/client/chunk-6IWEPNUV.js.map +8 -0
- package/dist/exports/client/{chunk-6MRITTMD.js → chunk-UMJJTMDP.js} +2 -2
- package/dist/exports/client/{chunk-6MRITTMD.js.map → chunk-UMJJTMDP.js.map} +4 -4
- package/dist/exports/client/index.d.ts +4 -1
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +22 -19
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/shared/index.d.ts +4 -0
- package/dist/exports/shared/index.d.ts.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +4 -4
- package/dist/fields/Array/index.scss +74 -72
- package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.scss +25 -23
- package/dist/fields/Blocks/BlocksDrawer/index.scss +36 -34
- package/dist/fields/Blocks/SectionTitle/index.scss +51 -49
- package/dist/fields/Blocks/index.scss +89 -87
- package/dist/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/fields/Checkbox/index.js +1 -0
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Checkbox/index.scss +107 -105
- package/dist/fields/Code/index.scss +18 -16
- package/dist/fields/Collapsible/index.d.ts.map +1 -1
- package/dist/fields/Collapsible/index.scss +8 -6
- package/dist/fields/ConfirmPassword/index.scss +18 -16
- package/dist/fields/DateTime/index.scss +13 -11
- package/dist/fields/Email/index.scss +21 -19
- package/dist/fields/FieldDescription/index.scss +9 -7
- package/dist/fields/FieldError/index.scss +13 -11
- package/dist/fields/FieldLabel/index.d.ts.map +1 -1
- package/dist/fields/FieldLabel/index.js +58 -30
- package/dist/fields/FieldLabel/index.js.map +1 -1
- package/dist/fields/FieldLabel/index.scss +34 -10
- package/dist/fields/Group/index.scss +107 -105
- package/dist/fields/JSON/index.d.ts.map +1 -1
- package/dist/fields/JSON/index.js +2 -0
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/JSON/index.scss +11 -9
- package/dist/fields/Join/index.d.ts.map +1 -1
- package/dist/fields/Join/index.js +14 -4
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/fields/Number/index.js +1 -1
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Number/index.scss +19 -17
- package/dist/fields/Password/index.scss +18 -16
- package/dist/fields/Point/index.scss +33 -31
- package/dist/fields/RadioGroup/Radio/index.scss +58 -56
- package/dist/fields/RadioGroup/index.d.ts +1 -0
- package/dist/fields/RadioGroup/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/index.js +33 -30
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.scss +57 -55
- package/dist/fields/Relationship/findOptionsByValue.d.ts +2 -1
- package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
- package/dist/fields/Relationship/findOptionsByValue.js +9 -2
- package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
- package/dist/fields/Relationship/index.d.ts.map +1 -1
- package/dist/fields/Relationship/index.js +2 -0
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/index.scss +44 -42
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +23 -20
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +40 -38
- package/dist/fields/Relationship/select-components/SingleValue/index.js +24 -21
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.scss +43 -41
- package/dist/fields/Relationship/types.d.ts +1 -0
- package/dist/fields/Relationship/types.d.ts.map +1 -1
- package/dist/fields/Relationship/types.js.map +1 -1
- package/dist/fields/Row/index.scss +31 -29
- package/dist/fields/Select/index.scss +16 -14
- package/dist/fields/Tabs/Tab/index.scss +58 -56
- package/dist/fields/Tabs/index.d.ts.map +1 -1
- package/dist/fields/Tabs/index.js +69 -53
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Tabs/index.scss +46 -44
- package/dist/fields/Text/index.scss +23 -21
- package/dist/fields/Textarea/index.d.ts.map +1 -1
- package/dist/fields/Textarea/index.js +3 -1
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Textarea/index.scss +89 -87
- package/dist/fields/Upload/HasMany/index.d.ts +2 -0
- package/dist/fields/Upload/HasMany/index.d.ts.map +1 -1
- package/dist/fields/Upload/HasMany/index.js +20 -16
- package/dist/fields/Upload/HasMany/index.js.map +1 -1
- package/dist/fields/Upload/HasMany/index.scss +20 -18
- package/dist/fields/Upload/HasOne/index.d.ts +2 -0
- package/dist/fields/Upload/HasOne/index.d.ts.map +1 -1
- package/dist/fields/Upload/HasOne/index.js +3 -1
- package/dist/fields/Upload/HasOne/index.js.map +1 -1
- package/dist/fields/Upload/HasOne/index.scss +5 -3
- package/dist/fields/Upload/Input.d.ts +0 -1
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +170 -130
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/RelationshipContent/index.d.ts +2 -0
- package/dist/fields/Upload/RelationshipContent/index.d.ts.map +1 -1
- package/dist/fields/Upload/RelationshipContent/index.js +61 -42
- package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
- package/dist/fields/Upload/RelationshipContent/index.scss +44 -42
- package/dist/fields/Upload/UploadCard/index.scss +21 -19
- package/dist/fields/Upload/index.scss +49 -47
- package/dist/fields/Upload/types.d.ts +4 -0
- package/dist/fields/Upload/types.d.ts.map +1 -0
- package/dist/fields/Upload/types.js +2 -0
- package/dist/fields/Upload/types.js.map +1 -0
- package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
- package/dist/forms/Form/fieldReducer.js +7 -0
- package/dist/forms/Form/fieldReducer.js.map +1 -1
- package/dist/forms/Form/index.scss +5 -3
- package/dist/forms/NullifyField/index.d.ts.map +1 -1
- package/dist/forms/NullifyField/index.js +1 -0
- package/dist/forms/NullifyField/index.js.map +1 -1
- package/dist/forms/RenderFields/index.scss +47 -45
- package/dist/forms/Submit/index.scss +5 -3
- package/dist/forms/useField/index.d.ts.map +1 -1
- package/dist/forms/useField/index.js +1 -1
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/graphics/Account/Default/index.scss +43 -41
- package/dist/icons/Calendar/index.scss +8 -6
- package/dist/icons/Check/index.scss +9 -7
- package/dist/icons/Chevron/index.scss +18 -16
- package/dist/icons/CloseMenu/index.scss +7 -5
- package/dist/icons/Copy/index.scss +9 -7
- package/dist/icons/DragHandle/index.scss +9 -7
- package/dist/icons/Edit/index.scss +9 -7
- package/dist/icons/Line/index.scss +8 -6
- package/dist/icons/Link/index.scss +8 -6
- package/dist/icons/Lock/index.scss +6 -4
- package/dist/icons/LogOut/index.scss +8 -6
- package/dist/icons/Menu/index.scss +6 -4
- package/dist/icons/More/index.scss +8 -6
- package/dist/icons/Plus/index.scss +6 -4
- package/dist/icons/Search/index.scss +8 -6
- package/dist/icons/Swap/index.scss +9 -7
- package/dist/icons/X/index.scss +6 -4
- package/dist/providers/Auth/index.d.ts +9 -4
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +51 -56
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
- package/dist/providers/Config/createClientConfig/collections.js +10 -0
- package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
- package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
- package/dist/providers/Config/createClientConfig/fields.js +22 -7
- package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +25 -15
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/types.d.ts +3 -2
- package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/types.js.map +1 -1
- package/dist/providers/ListQuery/index.js +1 -1
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/Root/index.js +0 -1
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/ScrollInfo/index.d.ts +1 -3
- package/dist/providers/ScrollInfo/index.d.ts.map +1 -1
- package/dist/providers/ScrollInfo/index.js +1 -12
- package/dist/providers/ScrollInfo/index.js.map +1 -1
- package/dist/providers/Selection/index.js +3 -3
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/Theme/index.d.ts +0 -1
- package/dist/providers/Theme/index.d.ts.map +1 -1
- package/dist/providers/Theme/index.js +29 -21
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/scss/app.scss +166 -162
- package/dist/scss/colors.scss +256 -254
- package/dist/scss/resets.scss +9 -7
- package/dist/scss/toastify.scss +42 -40
- package/dist/scss/toasts.scss +105 -103
- package/dist/scss/type.scss +81 -79
- package/dist/styles.css +1 -1
- package/dist/utilities/buildFormState.d.ts.map +1 -1
- package/dist/utilities/buildFormState.js +53 -5
- package/dist/utilities/buildFormState.js.map +1 -1
- package/dist/utilities/getFormState.d.ts.map +1 -1
- package/dist/utilities/getFormState.js.map +1 -1
- package/dist/utilities/handleBackToDashboard.d.ts +8 -0
- package/dist/utilities/handleBackToDashboard.d.ts.map +1 -0
- package/dist/utilities/handleBackToDashboard.js +12 -0
- package/dist/utilities/handleBackToDashboard.js.map +1 -0
- package/dist/utilities/handleGoBack.d.ts +9 -0
- package/dist/utilities/handleGoBack.d.ts.map +1 -0
- package/dist/utilities/handleGoBack.js +13 -0
- package/dist/utilities/handleGoBack.js.map +1 -0
- package/dist/utilities/handleTakeOver.d.ts +7 -0
- package/dist/utilities/handleTakeOver.d.ts.map +1 -0
- package/dist/utilities/handleTakeOver.js +27 -0
- package/dist/utilities/handleTakeOver.js.map +1 -0
- package/dist/utilities/isClientUserObject.d.ts +3 -0
- package/dist/utilities/isClientUserObject.d.ts.map +1 -0
- package/dist/utilities/isClientUserObject.js +4 -0
- package/dist/utilities/isClientUserObject.js.map +1 -0
- package/package.json +10 -10
- package/dist/exports/client/CodeEditor-CXCLJBIQ.js.map +0 -8
- package/dist/exports/client/chunk-W2YIQDPJ.js +0 -14
- package/dist/exports/client/chunk-W2YIQDPJ.js.map +0 -8
- /package/dist/exports/client/{DatePicker-NBYDOP2X.js.map → DatePicker-FUJV23KL.js.map} +0 -0
|
@@ -1,99 +1,101 @@
|
|
|
1
1
|
@import '../../scss/styles.scss';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
opacity: 0;
|
|
7
|
-
background-color: var(--theme-elevation-800);
|
|
8
|
-
position: absolute;
|
|
9
|
-
z-index: 3;
|
|
10
|
-
left: 50%;
|
|
11
|
-
padding: base(0.2) base(0.4);
|
|
12
|
-
color: var(--theme-elevation-0);
|
|
13
|
-
line-height: base(0.75);
|
|
14
|
-
font-weight: normal;
|
|
15
|
-
white-space: nowrap;
|
|
16
|
-
border-radius: 2px;
|
|
17
|
-
visibility: hidden;
|
|
18
|
-
|
|
19
|
-
&::after {
|
|
20
|
-
content: ' ';
|
|
21
|
-
display: block;
|
|
22
|
-
position: absolute;
|
|
23
|
-
transform: translate3d(-50%, 100%, 0);
|
|
24
|
-
width: 0;
|
|
25
|
-
height: 0;
|
|
26
|
-
border-left: var(--caret-size) solid transparent;
|
|
27
|
-
border-right: var(--caret-size) solid transparent;
|
|
28
|
-
}
|
|
3
|
+
@layer payload-default {
|
|
4
|
+
.tooltip {
|
|
5
|
+
--caret-size: 6px;
|
|
29
6
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
7
|
+
opacity: 0;
|
|
8
|
+
background-color: var(--theme-elevation-800);
|
|
9
|
+
position: absolute;
|
|
10
|
+
z-index: 3;
|
|
11
|
+
left: 50%;
|
|
12
|
+
padding: base(0.2) base(0.4);
|
|
13
|
+
color: var(--theme-elevation-0);
|
|
14
|
+
line-height: base(0.75);
|
|
15
|
+
font-weight: normal;
|
|
16
|
+
white-space: nowrap;
|
|
17
|
+
border-radius: 2px;
|
|
18
|
+
visibility: hidden;
|
|
36
19
|
|
|
37
|
-
&--caret-center {
|
|
38
20
|
&::after {
|
|
39
|
-
|
|
21
|
+
content: ' ';
|
|
22
|
+
display: block;
|
|
23
|
+
position: absolute;
|
|
24
|
+
transform: translate3d(-50%, 100%, 0);
|
|
25
|
+
width: 0;
|
|
26
|
+
height: 0;
|
|
27
|
+
border-left: var(--caret-size) solid transparent;
|
|
28
|
+
border-right: var(--caret-size) solid transparent;
|
|
40
29
|
}
|
|
41
|
-
}
|
|
42
30
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
31
|
+
&--show {
|
|
32
|
+
visibility: visible;
|
|
33
|
+
opacity: 1;
|
|
34
|
+
transition: opacity 0.2s ease-in-out;
|
|
35
|
+
cursor: default;
|
|
46
36
|
}
|
|
47
|
-
}
|
|
48
37
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
38
|
+
&--caret-center {
|
|
39
|
+
&::after {
|
|
40
|
+
left: 50%;
|
|
41
|
+
}
|
|
52
42
|
}
|
|
53
|
-
}
|
|
54
43
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
44
|
+
&--caret-left {
|
|
45
|
+
&::after {
|
|
46
|
+
left: calc(var(--base) * 0.5);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
58
49
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
50
|
+
&--caret-right {
|
|
51
|
+
&::after {
|
|
52
|
+
right: calc(var(--base) * 0.5);
|
|
53
|
+
}
|
|
62
54
|
}
|
|
63
|
-
}
|
|
64
55
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
56
|
+
&--position-top {
|
|
57
|
+
top: calc(var(--base) * -1.25);
|
|
58
|
+
transform: translate3d(-50%, calc(var(--caret-size) * -1), 0);
|
|
68
59
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
60
|
+
&::after {
|
|
61
|
+
bottom: 1px;
|
|
62
|
+
border-top: var(--caret-size) solid var(--theme-elevation-800);
|
|
63
|
+
}
|
|
72
64
|
}
|
|
73
|
-
}
|
|
74
65
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
width: 100%;
|
|
79
|
-
}
|
|
66
|
+
&--position-bottom {
|
|
67
|
+
bottom: calc(var(--base) * -1.25);
|
|
68
|
+
transform: translate3d(-50%, var(--caret-size), 0);
|
|
80
69
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
70
|
+
&::after {
|
|
71
|
+
bottom: calc(100% + var(--caret-size) - 1px);
|
|
72
|
+
border-bottom: var(--caret-size) solid var(--theme-elevation-800);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
85
75
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
76
|
+
.tooltip-content {
|
|
77
|
+
overflow: hidden;
|
|
78
|
+
text-overflow: ellipsis;
|
|
79
|
+
width: 100%;
|
|
80
|
+
}
|
|
91
81
|
|
|
92
|
-
|
|
93
|
-
|
|
82
|
+
@include mid-break {
|
|
83
|
+
display: none;
|
|
84
|
+
}
|
|
94
85
|
}
|
|
95
86
|
|
|
96
|
-
|
|
97
|
-
|
|
87
|
+
html[data-theme='light'] {
|
|
88
|
+
.tooltip:not(.field-error) {
|
|
89
|
+
background-color: var(--theme-elevation-100);
|
|
90
|
+
color: var(--theme-elevation-1000);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.tooltip--position-top:not(.field-error):after {
|
|
94
|
+
border-top-color: var(--theme-elevation-100);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.tooltip--position-bottom:not(.field-error):after {
|
|
98
|
+
border-bottom-color: var(--theme-elevation-100);
|
|
99
|
+
}
|
|
98
100
|
}
|
|
99
101
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/UnpublishMany/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAgC,MAAM,OAAO,CAAA;AAWpD,OAAO,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAIrD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,sBAAsB,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/UnpublishMany/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAgC,MAAM,OAAO,CAAA;AAWpD,OAAO,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAIrD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,sBAAsB,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA8ItD,CAAA"}
|
|
@@ -22,7 +22,8 @@ export const UnpublishMany = props => {
|
|
|
22
22
|
collection: {
|
|
23
23
|
slug,
|
|
24
24
|
labels: {
|
|
25
|
-
plural
|
|
25
|
+
plural,
|
|
26
|
+
singular
|
|
26
27
|
},
|
|
27
28
|
versions
|
|
28
29
|
} = {}
|
|
@@ -81,8 +82,18 @@ export const UnpublishMany = props => {
|
|
|
81
82
|
try {
|
|
82
83
|
const json = await res.json();
|
|
83
84
|
toggleModal(modalSlug);
|
|
84
|
-
|
|
85
|
-
|
|
85
|
+
const deletedDocs = json?.docs.length || 0;
|
|
86
|
+
const successLabel = deletedDocs > 1 ? plural : singular;
|
|
87
|
+
if (res.status < 400 || deletedDocs > 0) {
|
|
88
|
+
toast.success(t('general:updatedCountSuccessfully', {
|
|
89
|
+
count: deletedDocs,
|
|
90
|
+
label: getTranslation(successLabel, i18n)
|
|
91
|
+
}));
|
|
92
|
+
if (json?.errors.length > 0) {
|
|
93
|
+
toast.error(json.message, {
|
|
94
|
+
description: json.errors.map(error => error.message).join('\n')
|
|
95
|
+
});
|
|
96
|
+
}
|
|
86
97
|
router.replace(stringifyParams({
|
|
87
98
|
params: {
|
|
88
99
|
page: selectAll ? '1' : undefined
|
|
@@ -93,7 +104,7 @@ export const UnpublishMany = props => {
|
|
|
93
104
|
return null;
|
|
94
105
|
}
|
|
95
106
|
if (json.errors) {
|
|
96
|
-
json.errors.forEach(
|
|
107
|
+
json.errors.forEach(error_0 => toast.error(error_0.message));
|
|
97
108
|
} else {
|
|
98
109
|
addDefaultError();
|
|
99
110
|
}
|
|
@@ -102,7 +113,7 @@ export const UnpublishMany = props => {
|
|
|
102
113
|
return addDefaultError();
|
|
103
114
|
}
|
|
104
115
|
});
|
|
105
|
-
}, [addDefaultError, api, getQueryParams, i18n
|
|
116
|
+
}, [addDefaultError, api, getQueryParams, i18n, modalSlug, plural, selectAll, serverURL, singular, slug, t, toggleModal, router, clearRouteCache, stringifyParams]);
|
|
106
117
|
if (!versions?.drafts || selectAll === SelectAllStatus.None || !hasPermission) {
|
|
107
118
|
return null;
|
|
108
119
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Modal","useModal","getTranslation","useRouter","React","useCallback","useState","useAuth","useConfig","useRouteCache","useSearchParams","SelectAllStatus","useSelection","useTranslation","requests","Button","Pill","baseClass","toast","UnpublishMany","props","collection","slug","labels","plural","versions","config","routes","api","serverURL","permissions","toggleModal","i18n","t","getQueryParams","selectAll","submitted","setSubmitted","stringifyParams","router","clearRouteCache","collectionPermissions","collections","hasPermission","update","permission","modalSlug","addDefaultError","error","handleUnpublish","patch","_status","not_equals","body","JSON","stringify","headers","language","then","res","json","status","success","replace","params","page","undefined","errors","forEach","message","e","drafts","None","_jsxs","Fragment","_jsx","className","onClick","label","buttonStyle","id","size","type"],"sources":["../../../src/elements/UnpublishMany/index.tsx"],"sourcesContent":["'use client'\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { SelectAllStatus, useSelection } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { Pill } from '../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'unpublish-many'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { toast } from 'sonner'\n\nexport type UnpublishManyProps = {\n collection: ClientCollectionConfig\n}\n\nexport const UnpublishMany: React.FC<UnpublishManyProps> = (props) => {\n const { collection: { slug, labels: { plural }, versions } = {} } = props\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const { permissions } = useAuth()\n const { toggleModal } = useModal()\n const { i18n, t } = useTranslation()\n const { getQueryParams, selectAll } = useSelection()\n const [submitted, setSubmitted] = useState(false)\n const { stringifyParams } = useSearchParams()\n const router = useRouter()\n const { clearRouteCache } = useRouteCache()\n\n const collectionPermissions = permissions?.collections?.[slug]\n const hasPermission = collectionPermissions?.update?.permission\n\n const modalSlug = `unpublish-${slug}`\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const handleUnpublish = useCallback(async () => {\n setSubmitted(true)\n await requests\n .patch(`${serverURL}${api}/${slug}${getQueryParams({ _status: { not_equals: 'draft' } })}`, {\n body: JSON.stringify({\n _status: 'draft',\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\n toggleModal(modalSlug)\n if (res.status < 400) {\n toast.success(t('general:updatedSuccessfully'))\n router.replace(\n stringifyParams({\n params: {\n page: selectAll ? '1' : undefined,\n },\n }),\n )\n clearRouteCache() // Use clearRouteCache instead of router.refresh, as we only need to clear the cache if the user has route caching enabled - clearRouteCache checks for this\n return null\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n return false\n } catch (e) {\n return addDefaultError()\n }\n })\n }, [\n addDefaultError,\n api,\n getQueryParams,\n i18n.language,\n modalSlug,\n selectAll,\n serverURL,\n slug,\n t,\n toggleModal,\n router,\n clearRouteCache,\n stringifyParams,\n ])\n\n if (!versions?.drafts || selectAll === SelectAllStatus.None || !hasPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <Pill\n className={`${baseClass}__toggle`}\n onClick={() => {\n setSubmitted(false)\n toggleModal(modalSlug)\n }}\n >\n {t('version:unpublish')}\n </Pill>\n <Modal className={baseClass} slug={modalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('version:confirmUnpublish')}</h1>\n <p>{t('version:aboutToUnpublishSelection', { label: getTranslation(plural, i18n) })}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n id=\"confirm-cancel\"\n onClick={submitted ? undefined : () => toggleModal(modalSlug)}\n size=\"large\"\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button\n id=\"confirm-unpublish\"\n onClick={submitted ? undefined : handleUnpublish}\n size=\"large\"\n >\n {submitted ? t('version:unpublishing') : t('general:confirm')}\n </Button>\n </div>\n </div>\n </Modal>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["Modal","useModal","getTranslation","useRouter","React","useCallback","useState","useAuth","useConfig","useRouteCache","useSearchParams","SelectAllStatus","useSelection","useTranslation","requests","Button","Pill","baseClass","toast","UnpublishMany","props","collection","slug","labels","plural","singular","versions","config","routes","api","serverURL","permissions","toggleModal","i18n","t","getQueryParams","selectAll","submitted","setSubmitted","stringifyParams","router","clearRouteCache","collectionPermissions","collections","hasPermission","update","permission","modalSlug","addDefaultError","error","handleUnpublish","patch","_status","not_equals","body","JSON","stringify","headers","language","then","res","json","deletedDocs","docs","length","successLabel","status","success","count","label","errors","message","description","map","join","replace","params","page","undefined","forEach","e","drafts","None","_jsxs","Fragment","_jsx","className","onClick","buttonStyle","id","size","type"],"sources":["../../../src/elements/UnpublishMany/index.tsx"],"sourcesContent":["'use client'\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { SelectAllStatus, useSelection } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { Pill } from '../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'unpublish-many'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { toast } from 'sonner'\n\nexport type UnpublishManyProps = {\n collection: ClientCollectionConfig\n}\n\nexport const UnpublishMany: React.FC<UnpublishManyProps> = (props) => {\n const { collection: { slug, labels: { plural, singular }, versions } = {} } = props\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const { permissions } = useAuth()\n const { toggleModal } = useModal()\n const { i18n, t } = useTranslation()\n const { getQueryParams, selectAll } = useSelection()\n const [submitted, setSubmitted] = useState(false)\n const { stringifyParams } = useSearchParams()\n const router = useRouter()\n const { clearRouteCache } = useRouteCache()\n\n const collectionPermissions = permissions?.collections?.[slug]\n const hasPermission = collectionPermissions?.update?.permission\n\n const modalSlug = `unpublish-${slug}`\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const handleUnpublish = useCallback(async () => {\n setSubmitted(true)\n await requests\n .patch(`${serverURL}${api}/${slug}${getQueryParams({ _status: { not_equals: 'draft' } })}`, {\n body: JSON.stringify({\n _status: 'draft',\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\n toggleModal(modalSlug)\n\n const deletedDocs = json?.docs.length || 0\n const successLabel = deletedDocs > 1 ? plural : singular\n\n if (res.status < 400 || deletedDocs > 0) {\n toast.success(\n t('general:updatedCountSuccessfully', {\n count: deletedDocs,\n label: getTranslation(successLabel, i18n),\n }),\n )\n if (json?.errors.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n }\n router.replace(\n stringifyParams({\n params: {\n page: selectAll ? '1' : undefined,\n },\n }),\n )\n clearRouteCache() // Use clearRouteCache instead of router.refresh, as we only need to clear the cache if the user has route caching enabled - clearRouteCache checks for this\n return null\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n return false\n } catch (e) {\n return addDefaultError()\n }\n })\n }, [\n addDefaultError,\n api,\n getQueryParams,\n i18n,\n modalSlug,\n plural,\n selectAll,\n serverURL,\n singular,\n slug,\n t,\n toggleModal,\n router,\n clearRouteCache,\n stringifyParams,\n ])\n\n if (!versions?.drafts || selectAll === SelectAllStatus.None || !hasPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <Pill\n className={`${baseClass}__toggle`}\n onClick={() => {\n setSubmitted(false)\n toggleModal(modalSlug)\n }}\n >\n {t('version:unpublish')}\n </Pill>\n <Modal className={baseClass} slug={modalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('version:confirmUnpublish')}</h1>\n <p>{t('version:aboutToUnpublishSelection', { label: getTranslation(plural, i18n) })}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n id=\"confirm-cancel\"\n onClick={submitted ? undefined : () => toggleModal(modalSlug)}\n size=\"large\"\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button\n id=\"confirm-unpublish\"\n onClick={submitted ? undefined : handleUnpublish}\n size=\"large\"\n >\n {submitted ? t('version:unpublishing') : t('general:confirm')}\n </Button>\n </div>\n </div>\n </Modal>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,37 +1,39 @@
|
|
|
1
1
|
@import '../../scss/styles.scss';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
align-items: center;
|
|
7
|
-
justify-content: center;
|
|
8
|
-
height: 100%;
|
|
9
|
-
|
|
10
|
-
&__wrapper {
|
|
11
|
-
z-index: 1;
|
|
12
|
-
position: relative;
|
|
3
|
+
@layer payload-default {
|
|
4
|
+
.unpublish-many {
|
|
5
|
+
@include blur-bg;
|
|
13
6
|
display: flex;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
7
|
+
align-items: center;
|
|
8
|
+
justify-content: center;
|
|
9
|
+
height: 100%;
|
|
18
10
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
11
|
+
&__wrapper {
|
|
12
|
+
z-index: 1;
|
|
13
|
+
position: relative;
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
gap: base(0.8);
|
|
17
|
+
padding: base(2);
|
|
18
|
+
}
|
|
23
19
|
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
&__content {
|
|
21
|
+
display: flex;
|
|
22
|
+
flex-direction: column;
|
|
23
|
+
gap: base(0.4);
|
|
24
|
+
|
|
25
|
+
> * {
|
|
26
|
+
margin: 0;
|
|
27
|
+
}
|
|
26
28
|
}
|
|
27
|
-
}
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
&__controls {
|
|
31
|
+
display: flex;
|
|
32
|
+
gap: base(0.4);
|
|
32
33
|
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
.btn {
|
|
35
|
+
margin: 0;
|
|
36
|
+
}
|
|
35
37
|
}
|
|
36
38
|
}
|
|
37
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Upload/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,yBAAyB,EAAe,MAAM,SAAS,CAAA;AAGhF,OAAO,KAAmD,MAAM,OAAO,CAAA;AAiBvE,OAAO,cAAc,CAAA;AAGrB,eAAO,MAAM,cAAc,gBAAgB,CAAA;AAC3C,eAAO,MAAM,eAAe,kBAAkB,CAAA;AAU9C,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAA;IACnC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,aAAa,wEAKvB,iBAAiB,sBAgCnB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,IAAI,CAAA;IACzC,QAAQ,CAAC,YAAY,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAA;CAC3D,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Upload/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,yBAAyB,EAAe,MAAM,SAAS,CAAA;AAGhF,OAAO,KAAmD,MAAM,OAAO,CAAA;AAiBvE,OAAO,cAAc,CAAA;AAGrB,eAAO,MAAM,cAAc,gBAAgB,CAAA;AAC3C,eAAO,MAAM,eAAe,kBAAkB,CAAA;AAU9C,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAA;IACnC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,aAAa,wEAKvB,iBAAiB,sBAgCnB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,IAAI,CAAA;IACzC,QAAQ,CAAC,YAAY,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAA;CAC3D,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CA2SxC,CAAA"}
|
|
@@ -209,6 +209,7 @@ export const Upload = props => {
|
|
|
209
209
|
focalPoint = true
|
|
210
210
|
} = uploadConfig;
|
|
211
211
|
const showFocalPoint = focalPoint && (hasImageSizes || hasResizeOptions || focalPointEnabled);
|
|
212
|
+
const acceptMimeTypes = uploadConfig.mimeTypes?.join(', ');
|
|
212
213
|
return /*#__PURE__*/_jsxs("div", {
|
|
213
214
|
className: [fieldBaseClass, baseClass].filter(Boolean).join(' '),
|
|
214
215
|
children: [/*#__PURE__*/_jsx(FieldError, {
|
|
@@ -242,6 +243,7 @@ export const Upload = props => {
|
|
|
242
243
|
size: "small",
|
|
243
244
|
children: t('upload:selectFile')
|
|
244
245
|
}), /*#__PURE__*/_jsx("input", {
|
|
246
|
+
accept: acceptMimeTypes,
|
|
245
247
|
"aria-hidden": "true",
|
|
246
248
|
className: `${baseClass}__hidden-input`,
|
|
247
249
|
hidden: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","isImage","reduceFieldsToValues","React","useCallback","useEffect","useRef","useState","toast","FieldError","fieldBaseClass","useForm","useField","useDocumentInfo","useTranslation","useUploadEdits","Button","Drawer","DrawerToggler","Dropzone","EditUpload","FileDetails","PreviewSizes","Thumbnail","baseClass","editDrawerSlug","sizePreviewSlug","validate","value","undefined","UploadActions","t0","$","customActions","enableAdjustments","enablePreviewSizes","mimeType","t","t1","t2","Symbol","for","bb0","fileTypeIsAdjustable","length","t3","map","_temp","_jsxs","className","children","Fragment","_jsx","slug","Upload","props","collectionSlug","initialState","onChange","uploadConfig","setModified","resetUploadEdits","updateUploadEdits","uploadEdits","docPermissions","errorMessage","setValue","showError","path","doc","setDoc","fileSrc","setFileSrc","replacingFile","setReplacingFile","filename","setFilename","name","showUrlInput","setShowUrlInput","fileUrl","setFileUrl","urlInputRef","inputRef","handleFileChange","newFile","File","URL","createObjectURL","renameFile","fileToChange","newName","type","lastModified","handleFileNameChange","e","updatedFileName","target","handleFileSelection","files","fileToUpload","handleFileRemoval","onEditsSave","args","handleUrlSubmit","response","fetch","data","blob","fileName","split","pop","file","error","message","current","canRemoveUpload","update","permission","delete","hasImageSizes","imageSizes","hasResizeOptions","Boolean","resizeOptions","focalPointEnabled","focalPoint","crop","showCrop","showFocalPoint","filter","join","field","customUploadActions","handleRemove","imageCacheTag","updatedAt","buttonStyle","onClick","click","size","hidden","ref","icon","iconStyle","round","tooltip","Header","url","initialCrop","initialFocalPoint","x","focalX","y","focalY","onSave","hoverTitle","title","label","CustomAction","i"],"sources":["../../../src/elements/Upload/index.tsx"],"sourcesContent":["'use client'\nimport type { FormState, SanitizedCollectionConfig, UploadEdits } from 'payload'\n\nimport { isImage, reduceFieldsToValues } from 'payload/shared'\nimport React, { useCallback, useEffect, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { fieldBaseClass } from '../../fields/shared/index.js'\nimport { useForm } from '../../forms/Form/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useUploadEdits } from '../../providers/UploadEdits/index.js'\nimport { Button } from '../Button/index.js'\nimport { Drawer, DrawerToggler } from '../Drawer/index.js'\nimport { Dropzone } from '../Dropzone/index.js'\nimport { EditUpload } from '../EditUpload/index.js'\nimport { FileDetails } from '../FileDetails/index.js'\nimport { PreviewSizes } from '../PreviewSizes/index.js'\nimport { Thumbnail } from '../Thumbnail/index.js'\nimport './index.scss'\n\nconst baseClass = 'file-field'\nexport const editDrawerSlug = 'edit-upload'\nexport const sizePreviewSlug = 'preview-sizes'\n\nconst validate = (value) => {\n if (!value && value !== undefined) {\n return 'A file is required.'\n }\n\n return true\n}\n\ntype UploadActionsArgs = {\n readonly customActions?: React.ReactNode[]\n readonly enableAdjustments: boolean\n readonly enablePreviewSizes: boolean\n readonly mimeType: string\n}\n\nexport const UploadActions = ({\n customActions,\n enableAdjustments,\n enablePreviewSizes,\n mimeType,\n}: UploadActionsArgs) => {\n const { t } = useTranslation()\n\n const fileTypeIsAdjustable = isImage(mimeType) && mimeType !== 'image/svg+xml'\n\n if (!fileTypeIsAdjustable && (!customActions || customActions.length === 0)) {\n return null\n }\n\n return (\n <div className={`${baseClass}__upload-actions`}>\n {fileTypeIsAdjustable && (\n <React.Fragment>\n {enablePreviewSizes && (\n <DrawerToggler className={`${baseClass}__previewSizes`} slug={sizePreviewSlug}>\n {t('upload:previewSizes')}\n </DrawerToggler>\n )}\n {enableAdjustments && (\n <DrawerToggler className={`${baseClass}__edit`} slug={editDrawerSlug}>\n {t('upload:editImage')}\n </DrawerToggler>\n )}\n </React.Fragment>\n )}\n\n {customActions &&\n customActions.map((CustomAction, i) => {\n return <React.Fragment key={i}>{CustomAction}</React.Fragment>\n })}\n </div>\n )\n}\n\nexport type UploadProps = {\n readonly collectionSlug: string\n readonly customActions?: React.ReactNode[]\n readonly initialState?: FormState\n readonly onChange?: (file?: File) => void\n readonly uploadConfig: SanitizedCollectionConfig['upload']\n}\n\nexport const Upload: React.FC<UploadProps> = (props) => {\n const { collectionSlug, customActions, initialState, onChange, uploadConfig } = props\n\n const { t } = useTranslation()\n const { setModified } = useForm()\n const { resetUploadEdits, updateUploadEdits, uploadEdits } = useUploadEdits()\n const { docPermissions } = useDocumentInfo()\n const { errorMessage, setValue, showError, value } = useField<File>({\n path: 'file',\n validate,\n })\n\n const [doc, setDoc] = useState(reduceFieldsToValues(initialState || {}, true))\n const [fileSrc, setFileSrc] = useState<null | string>(null)\n const [replacingFile, setReplacingFile] = useState(false)\n const [filename, setFilename] = useState<string>(value?.name || '')\n const [showUrlInput, setShowUrlInput] = useState(false)\n const [fileUrl, setFileUrl] = useState<string>('')\n\n const urlInputRef = useRef<HTMLInputElement>(null)\n const inputRef = useRef<HTMLInputElement>(null)\n\n const handleFileChange = useCallback(\n (newFile: File) => {\n if (newFile instanceof File) {\n setFileSrc(URL.createObjectURL(newFile))\n }\n\n setValue(newFile)\n setShowUrlInput(false)\n\n if (typeof onChange === 'function') {\n onChange(newFile)\n }\n },\n [onChange, setValue],\n )\n\n const renameFile = (fileToChange: File, newName: string): File => {\n // Creating a new File object with updated properties\n const newFile = new File([fileToChange], newName, {\n type: fileToChange.type,\n lastModified: fileToChange.lastModified,\n })\n return newFile\n }\n\n const handleFileNameChange = React.useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const updatedFileName = e.target.value\n\n if (value) {\n handleFileChange(renameFile(value, updatedFileName))\n setFilename(updatedFileName)\n }\n },\n [handleFileChange, value],\n )\n\n const handleFileSelection = useCallback(\n (files: FileList) => {\n const fileToUpload = files?.[0]\n handleFileChange(fileToUpload)\n },\n [handleFileChange],\n )\n\n const handleFileRemoval = useCallback(() => {\n setReplacingFile(true)\n handleFileChange(null)\n setFileSrc('')\n setFileUrl('')\n setDoc({})\n resetUploadEdits()\n setShowUrlInput(false)\n }, [handleFileChange, resetUploadEdits])\n\n const onEditsSave = useCallback(\n (args: UploadEdits) => {\n setModified(true)\n updateUploadEdits(args)\n },\n [setModified, updateUploadEdits],\n )\n\n const handleUrlSubmit = async () => {\n if (fileUrl) {\n try {\n const response = await fetch(fileUrl)\n const data = await response.blob()\n\n // Extract the file name from the URL\n const fileName = fileUrl.split('/').pop()\n\n // Create a new File object from the Blob data\n const file = new File([data], fileName, { type: data.type })\n handleFileChange(file)\n } catch (e) {\n toast.error(e.message)\n }\n }\n }\n\n useEffect(() => {\n setDoc(reduceFieldsToValues(initialState || {}, true))\n if (initialState?.file?.value instanceof File) {\n setFileSrc(URL.createObjectURL(initialState.file.value))\n }\n setReplacingFile(false)\n }, [initialState])\n\n useEffect(() => {\n if (showUrlInput && urlInputRef.current) {\n // urlInputRef.current.focus() // Focus on the remote-url input field when showUrlInput is true\n }\n }, [showUrlInput])\n\n const canRemoveUpload =\n docPermissions?.update?.permission &&\n 'delete' in docPermissions &&\n docPermissions?.delete?.permission\n\n const hasImageSizes = uploadConfig?.imageSizes?.length > 0\n const hasResizeOptions = Boolean(uploadConfig?.resizeOptions)\n // Explicity check if set to true, default is undefined\n const focalPointEnabled = uploadConfig?.focalPoint === true\n\n const { crop: showCrop = true, focalPoint = true } = uploadConfig\n\n const showFocalPoint = focalPoint && (hasImageSizes || hasResizeOptions || focalPointEnabled)\n\n return (\n <div className={[fieldBaseClass, baseClass].filter(Boolean).join(' ')}>\n <FieldError field={null} message={errorMessage} showError={showError} />\n {doc.filename && !replacingFile && (\n <FileDetails\n collectionSlug={collectionSlug}\n customUploadActions={customActions}\n doc={doc}\n enableAdjustments={showCrop || showFocalPoint}\n handleRemove={canRemoveUpload ? handleFileRemoval : undefined}\n hasImageSizes={hasImageSizes}\n imageCacheTag={doc.updatedAt}\n uploadConfig={uploadConfig}\n />\n )}\n {(!doc.filename || replacingFile) && (\n <div className={`${baseClass}__upload`}>\n {!value && !showUrlInput && (\n <Dropzone onChange={handleFileSelection}>\n <div className={`${baseClass}__dropzoneContent`}>\n <div className={`${baseClass}__dropzoneButtons`}>\n <Button\n buttonStyle=\"pill\"\n onClick={() => {\n if (inputRef.current) {\n inputRef.current.click()\n }\n }}\n size=\"small\"\n >\n {t('upload:selectFile')}\n </Button>\n <input\n aria-hidden=\"true\"\n className={`${baseClass}__hidden-input`}\n hidden\n onChange={(e) => {\n if (e.target.files && e.target.files.length > 0) {\n handleFileSelection(e.target.files)\n }\n }}\n ref={inputRef}\n type=\"file\"\n />\n <span className={`${baseClass}__orText`}>{t('general:or')}</span>\n <Button\n buttonStyle=\"pill\"\n onClick={() => {\n setShowUrlInput(true)\n }}\n size=\"small\"\n >\n {t('upload:pasteURL')}\n </Button>\n </div>\n\n <p className={`${baseClass}__dragAndDropText`}>\n {t('general:or')} {t('upload:dragAndDrop')}\n </p>\n </div>\n </Dropzone>\n )}\n {showUrlInput && (\n <React.Fragment>\n <div className={`${baseClass}__remote-file-wrap`}>\n {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}\n <input\n className={`${baseClass}__remote-file`}\n onChange={(e) => {\n setFileUrl(e.target.value)\n }}\n ref={urlInputRef}\n type=\"text\"\n value={fileUrl}\n />\n <div className={`${baseClass}__add-file-wrap`}>\n <button\n className={`${baseClass}__add-file`}\n onClick={() => {\n void handleUrlSubmit()\n }}\n type=\"button\"\n >\n {t('upload:addFile')}\n </button>\n </div>\n </div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n iconStyle=\"with-border\"\n onClick={() => {\n setShowUrlInput(false)\n }}\n round\n tooltip={t('general:cancel')}\n />\n </React.Fragment>\n )}\n {value && fileSrc && (\n <React.Fragment>\n <div className={`${baseClass}__thumbnail-wrap`}>\n <Thumbnail\n collectionSlug={collectionSlug}\n fileSrc={isImage(value.type) ? fileSrc : null}\n />\n </div>\n <div className={`${baseClass}__file-adjustments`}>\n {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}\n <input\n className={`${baseClass}__filename`}\n onChange={handleFileNameChange}\n type=\"text\"\n value={filename || value.name}\n />\n <UploadActions\n customActions={customActions}\n enableAdjustments={showCrop || showFocalPoint}\n enablePreviewSizes={hasImageSizes && doc.filename && !replacingFile}\n mimeType={value.type}\n />\n </div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n iconStyle=\"with-border\"\n onClick={handleFileRemoval}\n round\n tooltip={t('general:cancel')}\n />\n </React.Fragment>\n )}\n </div>\n )}\n {(value || doc.filename) && (\n <Drawer Header={null} slug={editDrawerSlug}>\n <EditUpload\n fileName={value?.name || doc?.filename}\n fileSrc={doc?.url || fileSrc}\n imageCacheTag={doc.updatedAt}\n initialCrop={uploadEdits?.crop ?? undefined}\n initialFocalPoint={{\n x: uploadEdits?.focalPoint?.x || doc.focalX || 50,\n y: uploadEdits?.focalPoint?.y || doc.focalY || 50,\n }}\n onSave={onEditsSave}\n showCrop={showCrop}\n showFocalPoint={showFocalPoint}\n />\n </Drawer>\n )}\n {doc && hasImageSizes && (\n <Drawer\n className={`${baseClass}__previewDrawer`}\n hoverTitle\n slug={sizePreviewSlug}\n title={t('upload:sizesFor', { label: doc?.filename })}\n >\n <PreviewSizes doc={doc} imageCacheTag={doc.updatedAt} uploadConfig={uploadConfig} />\n </Drawer>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","isImage","reduceFieldsToValues","React","useCallback","useEffect","useRef","useState","toast","FieldError","fieldBaseClass","useForm","useField","useDocumentInfo","useTranslation","useUploadEdits","Button","Drawer","DrawerToggler","Dropzone","EditUpload","FileDetails","PreviewSizes","Thumbnail","baseClass","editDrawerSlug","sizePreviewSlug","validate","value","undefined","UploadActions","t0","$","customActions","enableAdjustments","enablePreviewSizes","mimeType","t","t1","t2","Symbol","for","bb0","fileTypeIsAdjustable","length","t3","map","_temp","_jsxs","className","children","Fragment","_jsx","slug","Upload","props","collectionSlug","initialState","onChange","uploadConfig","setModified","resetUploadEdits","updateUploadEdits","uploadEdits","docPermissions","errorMessage","setValue","showError","path","doc","setDoc","fileSrc","setFileSrc","replacingFile","setReplacingFile","filename","setFilename","name","showUrlInput","setShowUrlInput","fileUrl","setFileUrl","urlInputRef","inputRef","handleFileChange","newFile","File","URL","createObjectURL","renameFile","fileToChange","newName","type","lastModified","handleFileNameChange","e","updatedFileName","target","handleFileSelection","files","fileToUpload","handleFileRemoval","onEditsSave","args","handleUrlSubmit","response","fetch","data","blob","fileName","split","pop","file","error","message","current","canRemoveUpload","update","permission","delete","hasImageSizes","imageSizes","hasResizeOptions","Boolean","resizeOptions","focalPointEnabled","focalPoint","crop","showCrop","showFocalPoint","acceptMimeTypes","mimeTypes","join","filter","field","customUploadActions","handleRemove","imageCacheTag","updatedAt","buttonStyle","onClick","click","size","accept","hidden","ref","icon","iconStyle","round","tooltip","Header","url","initialCrop","initialFocalPoint","x","focalX","y","focalY","onSave","hoverTitle","title","label","CustomAction","i"],"sources":["../../../src/elements/Upload/index.tsx"],"sourcesContent":["'use client'\nimport type { FormState, SanitizedCollectionConfig, UploadEdits } from 'payload'\n\nimport { isImage, reduceFieldsToValues } from 'payload/shared'\nimport React, { useCallback, useEffect, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { fieldBaseClass } from '../../fields/shared/index.js'\nimport { useForm } from '../../forms/Form/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useUploadEdits } from '../../providers/UploadEdits/index.js'\nimport { Button } from '../Button/index.js'\nimport { Drawer, DrawerToggler } from '../Drawer/index.js'\nimport { Dropzone } from '../Dropzone/index.js'\nimport { EditUpload } from '../EditUpload/index.js'\nimport { FileDetails } from '../FileDetails/index.js'\nimport { PreviewSizes } from '../PreviewSizes/index.js'\nimport { Thumbnail } from '../Thumbnail/index.js'\nimport './index.scss'\n\nconst baseClass = 'file-field'\nexport const editDrawerSlug = 'edit-upload'\nexport const sizePreviewSlug = 'preview-sizes'\n\nconst validate = (value) => {\n if (!value && value !== undefined) {\n return 'A file is required.'\n }\n\n return true\n}\n\ntype UploadActionsArgs = {\n readonly customActions?: React.ReactNode[]\n readonly enableAdjustments: boolean\n readonly enablePreviewSizes: boolean\n readonly mimeType: string\n}\n\nexport const UploadActions = ({\n customActions,\n enableAdjustments,\n enablePreviewSizes,\n mimeType,\n}: UploadActionsArgs) => {\n const { t } = useTranslation()\n\n const fileTypeIsAdjustable = isImage(mimeType) && mimeType !== 'image/svg+xml'\n\n if (!fileTypeIsAdjustable && (!customActions || customActions.length === 0)) {\n return null\n }\n\n return (\n <div className={`${baseClass}__upload-actions`}>\n {fileTypeIsAdjustable && (\n <React.Fragment>\n {enablePreviewSizes && (\n <DrawerToggler className={`${baseClass}__previewSizes`} slug={sizePreviewSlug}>\n {t('upload:previewSizes')}\n </DrawerToggler>\n )}\n {enableAdjustments && (\n <DrawerToggler className={`${baseClass}__edit`} slug={editDrawerSlug}>\n {t('upload:editImage')}\n </DrawerToggler>\n )}\n </React.Fragment>\n )}\n\n {customActions &&\n customActions.map((CustomAction, i) => {\n return <React.Fragment key={i}>{CustomAction}</React.Fragment>\n })}\n </div>\n )\n}\n\nexport type UploadProps = {\n readonly collectionSlug: string\n readonly customActions?: React.ReactNode[]\n readonly initialState?: FormState\n readonly onChange?: (file?: File) => void\n readonly uploadConfig: SanitizedCollectionConfig['upload']\n}\n\nexport const Upload: React.FC<UploadProps> = (props) => {\n const { collectionSlug, customActions, initialState, onChange, uploadConfig } = props\n\n const { t } = useTranslation()\n const { setModified } = useForm()\n const { resetUploadEdits, updateUploadEdits, uploadEdits } = useUploadEdits()\n const { docPermissions } = useDocumentInfo()\n const { errorMessage, setValue, showError, value } = useField<File>({\n path: 'file',\n validate,\n })\n\n const [doc, setDoc] = useState(reduceFieldsToValues(initialState || {}, true))\n const [fileSrc, setFileSrc] = useState<null | string>(null)\n const [replacingFile, setReplacingFile] = useState(false)\n const [filename, setFilename] = useState<string>(value?.name || '')\n const [showUrlInput, setShowUrlInput] = useState(false)\n const [fileUrl, setFileUrl] = useState<string>('')\n\n const urlInputRef = useRef<HTMLInputElement>(null)\n const inputRef = useRef<HTMLInputElement>(null)\n\n const handleFileChange = useCallback(\n (newFile: File) => {\n if (newFile instanceof File) {\n setFileSrc(URL.createObjectURL(newFile))\n }\n\n setValue(newFile)\n setShowUrlInput(false)\n\n if (typeof onChange === 'function') {\n onChange(newFile)\n }\n },\n [onChange, setValue],\n )\n\n const renameFile = (fileToChange: File, newName: string): File => {\n // Creating a new File object with updated properties\n const newFile = new File([fileToChange], newName, {\n type: fileToChange.type,\n lastModified: fileToChange.lastModified,\n })\n return newFile\n }\n\n const handleFileNameChange = React.useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const updatedFileName = e.target.value\n\n if (value) {\n handleFileChange(renameFile(value, updatedFileName))\n setFilename(updatedFileName)\n }\n },\n [handleFileChange, value],\n )\n\n const handleFileSelection = useCallback(\n (files: FileList) => {\n const fileToUpload = files?.[0]\n handleFileChange(fileToUpload)\n },\n [handleFileChange],\n )\n\n const handleFileRemoval = useCallback(() => {\n setReplacingFile(true)\n handleFileChange(null)\n setFileSrc('')\n setFileUrl('')\n setDoc({})\n resetUploadEdits()\n setShowUrlInput(false)\n }, [handleFileChange, resetUploadEdits])\n\n const onEditsSave = useCallback(\n (args: UploadEdits) => {\n setModified(true)\n updateUploadEdits(args)\n },\n [setModified, updateUploadEdits],\n )\n\n const handleUrlSubmit = async () => {\n if (fileUrl) {\n try {\n const response = await fetch(fileUrl)\n const data = await response.blob()\n\n // Extract the file name from the URL\n const fileName = fileUrl.split('/').pop()\n\n // Create a new File object from the Blob data\n const file = new File([data], fileName, { type: data.type })\n handleFileChange(file)\n } catch (e) {\n toast.error(e.message)\n }\n }\n }\n\n useEffect(() => {\n setDoc(reduceFieldsToValues(initialState || {}, true))\n if (initialState?.file?.value instanceof File) {\n setFileSrc(URL.createObjectURL(initialState.file.value))\n }\n setReplacingFile(false)\n }, [initialState])\n\n useEffect(() => {\n if (showUrlInput && urlInputRef.current) {\n // urlInputRef.current.focus() // Focus on the remote-url input field when showUrlInput is true\n }\n }, [showUrlInput])\n\n const canRemoveUpload =\n docPermissions?.update?.permission &&\n 'delete' in docPermissions &&\n docPermissions?.delete?.permission\n\n const hasImageSizes = uploadConfig?.imageSizes?.length > 0\n const hasResizeOptions = Boolean(uploadConfig?.resizeOptions)\n // Explicity check if set to true, default is undefined\n const focalPointEnabled = uploadConfig?.focalPoint === true\n\n const { crop: showCrop = true, focalPoint = true } = uploadConfig\n\n const showFocalPoint = focalPoint && (hasImageSizes || hasResizeOptions || focalPointEnabled)\n\n const acceptMimeTypes = uploadConfig.mimeTypes?.join(', ')\n\n return (\n <div className={[fieldBaseClass, baseClass].filter(Boolean).join(' ')}>\n <FieldError field={null} message={errorMessage} showError={showError} />\n {doc.filename && !replacingFile && (\n <FileDetails\n collectionSlug={collectionSlug}\n customUploadActions={customActions}\n doc={doc}\n enableAdjustments={showCrop || showFocalPoint}\n handleRemove={canRemoveUpload ? handleFileRemoval : undefined}\n hasImageSizes={hasImageSizes}\n imageCacheTag={doc.updatedAt}\n uploadConfig={uploadConfig}\n />\n )}\n {(!doc.filename || replacingFile) && (\n <div className={`${baseClass}__upload`}>\n {!value && !showUrlInput && (\n <Dropzone onChange={handleFileSelection}>\n <div className={`${baseClass}__dropzoneContent`}>\n <div className={`${baseClass}__dropzoneButtons`}>\n <Button\n buttonStyle=\"pill\"\n onClick={() => {\n if (inputRef.current) {\n inputRef.current.click()\n }\n }}\n size=\"small\"\n >\n {t('upload:selectFile')}\n </Button>\n <input\n accept={acceptMimeTypes}\n aria-hidden=\"true\"\n className={`${baseClass}__hidden-input`}\n hidden\n onChange={(e) => {\n if (e.target.files && e.target.files.length > 0) {\n handleFileSelection(e.target.files)\n }\n }}\n ref={inputRef}\n type=\"file\"\n />\n <span className={`${baseClass}__orText`}>{t('general:or')}</span>\n <Button\n buttonStyle=\"pill\"\n onClick={() => {\n setShowUrlInput(true)\n }}\n size=\"small\"\n >\n {t('upload:pasteURL')}\n </Button>\n </div>\n\n <p className={`${baseClass}__dragAndDropText`}>\n {t('general:or')} {t('upload:dragAndDrop')}\n </p>\n </div>\n </Dropzone>\n )}\n {showUrlInput && (\n <React.Fragment>\n <div className={`${baseClass}__remote-file-wrap`}>\n {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}\n <input\n className={`${baseClass}__remote-file`}\n onChange={(e) => {\n setFileUrl(e.target.value)\n }}\n ref={urlInputRef}\n type=\"text\"\n value={fileUrl}\n />\n <div className={`${baseClass}__add-file-wrap`}>\n <button\n className={`${baseClass}__add-file`}\n onClick={() => {\n void handleUrlSubmit()\n }}\n type=\"button\"\n >\n {t('upload:addFile')}\n </button>\n </div>\n </div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n iconStyle=\"with-border\"\n onClick={() => {\n setShowUrlInput(false)\n }}\n round\n tooltip={t('general:cancel')}\n />\n </React.Fragment>\n )}\n {value && fileSrc && (\n <React.Fragment>\n <div className={`${baseClass}__thumbnail-wrap`}>\n <Thumbnail\n collectionSlug={collectionSlug}\n fileSrc={isImage(value.type) ? fileSrc : null}\n />\n </div>\n <div className={`${baseClass}__file-adjustments`}>\n {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}\n <input\n className={`${baseClass}__filename`}\n onChange={handleFileNameChange}\n type=\"text\"\n value={filename || value.name}\n />\n <UploadActions\n customActions={customActions}\n enableAdjustments={showCrop || showFocalPoint}\n enablePreviewSizes={hasImageSizes && doc.filename && !replacingFile}\n mimeType={value.type}\n />\n </div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n iconStyle=\"with-border\"\n onClick={handleFileRemoval}\n round\n tooltip={t('general:cancel')}\n />\n </React.Fragment>\n )}\n </div>\n )}\n {(value || doc.filename) && (\n <Drawer Header={null} slug={editDrawerSlug}>\n <EditUpload\n fileName={value?.name || doc?.filename}\n fileSrc={doc?.url || fileSrc}\n imageCacheTag={doc.updatedAt}\n initialCrop={uploadEdits?.crop ?? undefined}\n initialFocalPoint={{\n x: uploadEdits?.focalPoint?.x || doc.focalX || 50,\n y: uploadEdits?.focalPoint?.y || doc.focalY || 50,\n }}\n onSave={onEditsSave}\n showCrop={showCrop}\n showFocalPoint={showFocalPoint}\n />\n </Drawer>\n )}\n {doc && hasImageSizes && (\n <Drawer\n className={`${baseClass}__previewDrawer`}\n hoverTitle\n slug={sizePreviewSlug}\n title={t('upload:sizesFor', { label: doc?.filename })}\n >\n <PreviewSizes doc={doc} imageCacheTag={doc.updatedAt} uploadConfig={uploadConfig} />\n </Drawer>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|