@payloadcms/ui 3.68.0-internal-debug.591ab42 → 3.68.0-internal-debug.e9b66ee
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 +37 -126
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/AnimateHeight/index.js +17 -33
- package/dist/elements/AnimateHeight/index.js.map +1 -1
- package/dist/elements/AppHeader/index.js +35 -147
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/ArrayAction/index.js +57 -183
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/Autosave/index.js +12 -28
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/Banner/index.js +5 -34
- package/dist/elements/Banner/index.js.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js +56 -160
- package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +23 -80
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.js +13 -78
- package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +1 -14
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
- package/dist/elements/BulkUpload/DrawerCloseButton/index.js +3 -17
- package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js +19 -89
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js +35 -134
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/index.js +10 -44
- package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.js +91 -326
- package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +25 -42
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/BulkUpload/Header/index.js +4 -26
- package/dist/elements/BulkUpload/Header/index.js.map +1 -1
- package/dist/elements/BulkUpload/index.js +43 -94
- package/dist/elements/BulkUpload/index.js.map +1 -1
- package/dist/elements/Button/index.js +38 -155
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Card/index.js +5 -40
- package/dist/elements/Card/index.js.map +1 -1
- package/dist/elements/CheckboxPopup/index.js +15 -41
- package/dist/elements/CheckboxPopup/index.js.map +1 -1
- package/dist/elements/ClipboardAction/ClipboardActionLabel.js +3 -20
- package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
- package/dist/elements/ClipboardAction/index.js +14 -64
- package/dist/elements/ClipboardAction/index.js.map +1 -1
- package/dist/elements/CloseModalButton/index.js +8 -21
- package/dist/elements/CloseModalButton/index.js.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +27 -48
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/CodeEditor/index.js +5 -21
- package/dist/elements/CodeEditor/index.js.map +1 -1
- package/dist/elements/Collapsible/index.js +40 -128
- package/dist/elements/Collapsible/index.js.map +1 -1
- package/dist/elements/Collapsible/provider.js +2 -10
- package/dist/elements/Collapsible/provider.js.map +1 -1
- package/dist/elements/ColumnSelector/index.js +12 -28
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/Combobox/index.js +23 -71
- package/dist/elements/Combobox/index.js.map +1 -1
- package/dist/elements/ConfirmationModal/index.js +22 -81
- package/dist/elements/ConfirmationModal/index.js.map +1 -1
- package/dist/elements/CopyLocaleData/index.js +56 -148
- package/dist/elements/CopyLocaleData/index.js.map +1 -1
- package/dist/elements/CopyToClipboard/index.js +17 -41
- package/dist/elements/CopyToClipboard/index.js.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +11 -56
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DatePicker/index.js +5 -23
- package/dist/elements/DatePicker/index.js.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.js +22 -62
- package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.js +19 -79
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.js +45 -131
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.js +95 -442
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +4 -18
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js +15 -76
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/Provider.js +4 -12
- package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
- package/dist/elements/DocumentDrawer/index.js +14 -62
- package/dist/elements/DocumentDrawer/index.js.map +1 -1
- package/dist/elements/DocumentFields/index.js +22 -86
- package/dist/elements/DocumentFields/index.js.map +1 -1
- package/dist/elements/DocumentLocked/index.js +41 -126
- package/dist/elements/DocumentLocked/index.js.map +1 -1
- package/dist/elements/DocumentTakeOver/index.js +24 -81
- package/dist/elements/DocumentTakeOver/index.js.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +16 -21
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
- package/dist/elements/DraggableSortable/index.js +8 -29
- package/dist/elements/DraggableSortable/index.js.map +1 -1
- package/dist/elements/Drawer/index.js +38 -135
- package/dist/elements/Drawer/index.js.map +1 -1
- package/dist/elements/DrawerActionHeader/index.js +18 -57
- package/dist/elements/DrawerActionHeader/index.js.map +1 -1
- package/dist/elements/DrawerContentContainer/index.js +4 -13
- package/dist/elements/DrawerContentContainer/index.js.map +1 -1
- package/dist/elements/Dropzone/index.js +15 -22
- package/dist/elements/Dropzone/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +22 -98
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.js +15 -46
- package/dist/elements/DuplicateDocument/index.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +49 -204
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/index.js +18 -66
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditUpload/index.js +105 -388
- package/dist/elements/EditUpload/index.js.map +1 -1
- package/dist/elements/EmailAndUsername/index.js +25 -64
- package/dist/elements/EmailAndUsername/index.js.map +1 -1
- package/dist/elements/ErrorPill/index.js +6 -27
- package/dist/elements/ErrorPill/index.js.map +1 -1
- package/dist/elements/FieldDiffContainer/index.js +17 -47
- package/dist/elements/FieldDiffContainer/index.js.map +1 -1
- package/dist/elements/FieldDiffLabel/index.js +1 -10
- package/dist/elements/FieldDiffLabel/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.js +14 -37
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/FileDetails/DraggableFileDetails/index.js +26 -107
- package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/FileMeta/index.js +19 -69
- package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
- package/dist/elements/FileDetails/StaticFileDetails/index.js +12 -72
- package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/index.js +2 -16
- package/dist/elements/FileDetails/index.js.map +1 -1
- package/dist/elements/FolderView/Breadcrumbs/index.js +15 -51
- package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
- package/dist/elements/FolderView/BrowseByFolderButton/index.js +10 -26
- package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
- package/dist/elements/FolderView/Cell/index.client.js +4 -22
- package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
- package/dist/elements/FolderView/Cell/index.server.js +1 -14
- package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
- package/dist/elements/FolderView/ColoredFolderIcon/index.js +1 -8
- package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
- package/dist/elements/FolderView/CurrentFolderActions/index.js +58 -138
- package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
- package/dist/elements/FolderView/DragOverlaySelection/index.js +18 -56
- package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
- package/dist/elements/FolderView/DraggableTableRow/index.js +20 -47
- package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
- package/dist/elements/FolderView/DraggableWithClick/index.js +16 -28
- package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
- package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +10 -24
- package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +105 -327
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
- package/dist/elements/FolderView/FilterFolderTypePill/index.js +11 -39
- package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
- package/dist/elements/FolderView/FolderField/index.server.js +1 -10
- package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
- package/dist/elements/FolderView/FolderFileCard/index.js +50 -168
- package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
- package/dist/elements/FolderView/FolderFileTable/index.js +97 -166
- package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
- package/dist/elements/FolderView/FolderTypeField/index.js +1 -30
- package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
- package/dist/elements/FolderView/ItemCardGrid/index.js +10 -34
- package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
- package/dist/elements/FolderView/MoveDocToFolder/index.js +54 -104
- package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
- package/dist/elements/FolderView/SimpleTable/index.js +31 -98
- package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
- package/dist/elements/FolderView/SortByPill/index.js +46 -135
- package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
- package/dist/elements/FolderView/ToggleViewButtons/index.js +14 -45
- package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
- package/dist/elements/FullscreenModal/index.js +5 -15
- package/dist/elements/FullscreenModal/index.js.map +1 -1
- package/dist/elements/GenerateConfirmation/index.js +10 -48
- package/dist/elements/GenerateConfirmation/index.js.map +1 -1
- package/dist/elements/GroupByBuilder/index.js +54 -113
- package/dist/elements/GroupByBuilder/index.js.map +1 -1
- package/dist/elements/Gutter/index.js +10 -18
- package/dist/elements/Gutter/index.js.map +1 -1
- package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
- package/dist/elements/HTMLDiff/index.js +6 -22
- package/dist/elements/HTMLDiff/index.js.map +1 -1
- package/dist/elements/Hamburger/index.js +9 -48
- package/dist/elements/Hamburger/index.js.map +1 -1
- package/dist/elements/IDLabel/index.js +8 -25
- package/dist/elements/IDLabel/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/index.js +2 -23
- package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
- package/dist/elements/Link/index.js +26 -36
- package/dist/elements/Link/index.js.map +1 -1
- package/dist/elements/ListControls/index.js +32 -199
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +6 -34
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/Provider.js +7 -13
- package/dist/elements/ListDrawer/Provider.js.map +1 -1
- package/dist/elements/ListDrawer/index.js +12 -59
- package/dist/elements/ListDrawer/index.js.map +1 -1
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +10 -34
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +3 -16
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +3 -12
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +5 -17
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +52 -110
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +16 -64
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
- package/dist/elements/ListHeader/index.js +15 -64
- package/dist/elements/ListHeader/index.js.map +1 -1
- package/dist/elements/ListSelection/index.js +20 -79
- package/dist/elements/ListSelection/index.js.map +1 -1
- package/dist/elements/LivePreview/Device/index.js +13 -26
- package/dist/elements/LivePreview/Device/index.js.map +1 -1
- package/dist/elements/LivePreview/DeviceContainer/index.js +8 -15
- package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
- package/dist/elements/LivePreview/IFrame/index.js +5 -18
- package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
- package/dist/elements/LivePreview/Toggler/index.js +8 -26
- package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/Controls/index.js +50 -197
- package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +1 -14
- package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/index.js +23 -75
- package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
- package/dist/elements/LivePreview/ToolbarArea/index.js +3 -11
- package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
- package/dist/elements/LivePreview/Window/index.js +13 -53
- package/dist/elements/LivePreview/Window/index.js.map +1 -1
- package/dist/elements/Loading/index.js +18 -79
- package/dist/elements/Loading/index.js.map +1 -1
- package/dist/elements/LoadingOverlay/index.js +8 -25
- package/dist/elements/LoadingOverlay/index.js.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.js +12 -51
- package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
- package/dist/elements/Localizer/index.js +39 -88
- package/dist/elements/Localizer/index.js.map +1 -1
- package/dist/elements/Locked/index.js +8 -34
- package/dist/elements/Locked/index.js.map +1 -1
- package/dist/elements/Logout/index.js +6 -22
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/Nav/NavToggler/index.js +16 -28
- package/dist/elements/Nav/NavToggler/index.js.map +1 -1
- package/dist/elements/Nav/context.js +10 -16
- package/dist/elements/Nav/context.js.map +1 -1
- package/dist/elements/NavGroup/index.js +19 -76
- package/dist/elements/NavGroup/index.js.map +1 -1
- package/dist/elements/NoListResults/index.js +6 -25
- package/dist/elements/NoListResults/index.js.map +1 -1
- package/dist/elements/PageControls/GroupByPageControls.js +2 -13
- package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
- package/dist/elements/PageControls/index.js +14 -73
- package/dist/elements/PageControls/index.js.map +1 -1
- package/dist/elements/Pagination/ClickableArrow/index.js +3 -17
- package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
- package/dist/elements/Pagination/Page/index.js +3 -12
- package/dist/elements/Pagination/Page/index.js.map +1 -1
- package/dist/elements/Pagination/Separator/index.js +1 -10
- package/dist/elements/Pagination/Separator/index.js.map +1 -1
- package/dist/elements/Pagination/index.js +9 -30
- package/dist/elements/Pagination/index.js.map +1 -1
- package/dist/elements/PerPage/index.js +25 -90
- package/dist/elements/PerPage/index.js.map +1 -1
- package/dist/elements/PermanentlyDeleteButton/index.js +14 -53
- package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
- package/dist/elements/Pill/index.js +16 -68
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/PillSelector/index.js +21 -63
- package/dist/elements/PillSelector/index.js.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +18 -50
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
- package/dist/elements/Popup/PopupDivider/index.js +1 -9
- package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
- package/dist/elements/Popup/PopupGroupLabel/index.js +1 -10
- package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.js +13 -33
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/Popup/index.js +40 -102
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PreviewButton/index.js +3 -19
- package/dist/elements/PreviewButton/index.js.map +1 -1
- package/dist/elements/PreviewSizes/index.js +43 -160
- package/dist/elements/PreviewSizes/index.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +24 -96
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +44 -244
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/PublishButton/index.js +26 -78
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishMany/DrawerContent.js +3 -16
- package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/PublishMany/index.js +9 -43
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/QueryPresets/QueryPresetBar/index.js +68 -202
- package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
- package/dist/elements/QueryPresets/QueryPresetToggler/index.js +28 -75
- package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
- package/dist/elements/QueryPresets/cells/AccessCell/index.js +15 -40
- package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
- package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +12 -25
- package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
- package/dist/elements/QueryPresets/cells/GroupByCell/index.js +5 -21
- package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
- package/dist/elements/QueryPresets/cells/WhereCell/index.js +1 -9
- package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/ColumnsField/index.js +11 -40
- package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/GroupByField/index.js +8 -49
- package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/WhereField/index.js +21 -110
- package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.js +9 -27
- package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/Control/index.js +25 -36
- package/dist/elements/ReactSelect/Control/index.js.map +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.js +7 -24
- package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/Input/index.js +4 -16
- package/dist/elements/ReactSelect/Input/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.js +19 -32
- package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.js +7 -22
- package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.js +16 -44
- package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
- package/dist/elements/ReactSelect/SingleValue/index.js +8 -19
- package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/ValueContainer/index.js +4 -28
- package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.js +36 -127
- package/dist/elements/ReactSelect/index.js.map +1 -1
- package/dist/elements/RelationshipTable/AddNewButton.js +20 -60
- package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
- package/dist/elements/RelationshipTable/Pagination.js +3 -19
- package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +8 -37
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.js +39 -189
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/RenderComponent/index.js +3 -24
- package/dist/elements/RenderComponent/index.js.map +1 -1
- package/dist/elements/RenderIfInViewport/index.js +3 -10
- package/dist/elements/RenderIfInViewport/index.js.map +1 -1
- package/dist/elements/RenderServerComponent/index.js +2 -16
- package/dist/elements/RenderServerComponent/index.js.map +1 -1
- package/dist/elements/RenderTitle/index.js +11 -36
- package/dist/elements/RenderTitle/index.js.map +1 -1
- package/dist/elements/RestoreButton/index.js +19 -80
- package/dist/elements/RestoreButton/index.js.map +1 -1
- package/dist/elements/RestoreMany/index.js +16 -62
- package/dist/elements/RestoreMany/index.js.map +1 -1
- package/dist/elements/SaveButton/index.js +4 -15
- package/dist/elements/SaveButton/index.js.map +1 -1
- package/dist/elements/SaveDraftButton/index.js +6 -19
- package/dist/elements/SaveDraftButton/index.js.map +1 -1
- package/dist/elements/SearchBar/index.js +8 -35
- package/dist/elements/SearchBar/index.js.map +1 -1
- package/dist/elements/SearchFilter/index.js +7 -25
- package/dist/elements/SearchFilter/index.js.map +1 -1
- package/dist/elements/SelectAll/index.js +4 -18
- package/dist/elements/SelectAll/index.js.map +1 -1
- package/dist/elements/SelectMany/index.js +7 -20
- package/dist/elements/SelectMany/index.js.map +1 -1
- package/dist/elements/SelectRow/index.js +5 -21
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/ShimmerEffect/index.js +18 -51
- package/dist/elements/ShimmerEffect/index.js.map +1 -1
- package/dist/elements/SortColumn/index.js +28 -83
- package/dist/elements/SortColumn/index.js.map +1 -1
- package/dist/elements/SortComplex/index.js +16 -77
- package/dist/elements/SortComplex/index.js.map +1 -1
- package/dist/elements/SortHeader/index.js +13 -37
- package/dist/elements/SortHeader/index.js.map +1 -1
- package/dist/elements/SortRow/index.js +3 -18
- package/dist/elements/SortRow/index.js.map +1 -1
- package/dist/elements/Status/index.js +20 -99
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +2 -15
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/StepNav/context.js +8 -14
- package/dist/elements/StepNav/context.js.map +1 -1
- package/dist/elements/StepNav/index.js +36 -139
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/StickyToolbar/index.js +1 -10
- package/dist/elements/StickyToolbar/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.js +1 -9
- package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -9
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +3 -16
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Code/index.js +3 -17
- package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.js +8 -14
- package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.js +8 -37
- package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js +3 -16
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +36 -62
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -9
- package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +1 -9
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +20 -76
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/OrderableRow.js +18 -40
- package/dist/elements/Table/OrderableRow.js.map +1 -1
- package/dist/elements/Table/OrderableRowDragPreview.js +5 -23
- package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
- package/dist/elements/Table/OrderableTable.js +37 -120
- package/dist/elements/Table/OrderableTable.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +6 -14
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/Table/index.js +28 -79
- package/dist/elements/Table/index.js.map +1 -1
- package/dist/elements/Thumbnail/index.js +18 -69
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/ThumbnailCard/index.js +4 -30
- package/dist/elements/ThumbnailCard/index.js.map +1 -1
- package/dist/elements/TimezonePicker/index.js +8 -38
- package/dist/elements/TimezonePicker/index.js.map +1 -1
- package/dist/elements/Toasts/fieldErrors.js +8 -33
- package/dist/elements/Toasts/fieldErrors.js.map +1 -1
- package/dist/elements/Tooltip/index.js +21 -56
- package/dist/elements/Tooltip/index.js.map +1 -1
- package/dist/elements/Translation/index.js +16 -39
- package/dist/elements/Translation/index.js.map +1 -1
- package/dist/elements/TrashBanner/index.js +8 -25
- package/dist/elements/TrashBanner/index.js.map +1 -1
- package/dist/elements/UnpublishMany/DrawerContent.js +3 -14
- package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/UnpublishMany/index.js +9 -43
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/Upload/index.js +109 -401
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/ViewDescription/index.js +2 -10
- package/dist/elements/ViewDescription/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.js +3 -20
- package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +6 -72
- package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.js +1 -28
- package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +25 -52
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Select/index.js +4 -17
- package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Text/index.js +1 -27
- package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +30 -128
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.js +54 -159
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/elements/WithServerSideProps/index.js +1 -9
- package/dist/elements/WithServerSideProps/index.js.map +1 -1
- package/dist/elements/withMergedProps/index.js +1 -9
- package/dist/elements/withMergedProps/index.js.map +1 -1
- package/dist/fields/Array/ArrayRow.js +16 -100
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.js +69 -290
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +22 -130
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +4 -25
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
- package/dist/fields/Blocks/BlockSelector/index.js +29 -101
- package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js +8 -23
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/RowActions.js +12 -44
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/SectionTitle/index.js +3 -24
- package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
- package/dist/fields/Blocks/index.js +83 -326
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/Input.js +21 -83
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.js +13 -68
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Code/index.js +18 -92
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Collapsible/index.js +21 -103
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/ConfirmPassword/index.js +11 -54
- package/dist/fields/ConfirmPassword/index.js.map +1 -1
- package/dist/fields/DateTime/index.js +19 -102
- package/dist/fields/DateTime/index.js.map +1 -1
- package/dist/fields/Email/index.js +19 -91
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/FieldDescription/index.js +8 -15
- package/dist/fields/FieldDescription/index.js.map +1 -1
- package/dist/fields/FieldError/index.js +3 -13
- package/dist/fields/FieldError/index.js.map +1 -1
- package/dist/fields/FieldLabel/index.js +7 -32
- package/dist/fields/FieldLabel/index.js.map +1 -1
- package/dist/fields/Group/index.js +31 -132
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Group/provider.js +3 -11
- package/dist/fields/Group/provider.js.map +1 -1
- package/dist/fields/Hidden/index.js +2 -13
- package/dist/fields/Hidden/index.js.map +1 -1
- package/dist/fields/JSON/index.js +18 -93
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Join/index.js +20 -88
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/fields/Number/index.js +36 -134
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/index.js +4 -29
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Password/input.js +21 -105
- package/dist/fields/Password/input.js.map +1 -1
- package/dist/fields/Point/index.js +33 -157
- package/dist/fields/Point/index.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.js +13 -51
- package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.js +42 -124
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/Relationship/Input.js +119 -242
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/fields/Relationship/index.js +11 -44
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +33 -85
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.js +32 -88
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/Row/index.js +9 -35
- package/dist/fields/Row/index.js.map +1 -1
- package/dist/fields/Row/provider.js +3 -11
- package/dist/fields/Row/provider.js.map +1 -1
- package/dist/fields/Select/Input.js +19 -98
- package/dist/fields/Select/Input.js.map +1 -1
- package/dist/fields/Select/index.js +1 -30
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Slug/index.js +13 -58
- package/dist/fields/Slug/index.js.map +1 -1
- package/dist/fields/Tabs/Tab/index.js +12 -43
- package/dist/fields/Tabs/Tab/index.js.map +1 -1
- package/dist/fields/Tabs/index.js +31 -117
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Tabs/provider.js +3 -11
- package/dist/fields/Tabs/provider.js.map +1 -1
- package/dist/fields/Text/Input.js +31 -129
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Text/index.js +6 -36
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Textarea/Input.js +20 -101
- package/dist/fields/Textarea/Input.js.map +1 -1
- package/dist/fields/Textarea/index.js +4 -29
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Upload/HasMany/index.js +52 -117
- package/dist/fields/Upload/HasMany/index.js.map +1 -1
- package/dist/fields/Upload/HasOne/index.js +6 -34
- package/dist/fields/Upload/HasOne/index.js.map +1 -1
- package/dist/fields/Upload/Input.js +60 -248
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/RelationshipContent/index.js +23 -112
- package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
- package/dist/fields/Upload/UploadCard/index.js +7 -14
- package/dist/fields/Upload/UploadCard/index.js.map +1 -1
- package/dist/fields/Upload/index.js +3 -39
- package/dist/fields/Upload/index.js.map +1 -1
- package/dist/forms/Form/index.js +26 -87
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/NullifyField/index.js +6 -23
- package/dist/forms/NullifyField/index.js.map +1 -1
- package/dist/forms/RenderFields/RenderField.js +23 -203
- package/dist/forms/RenderFields/RenderField.js.map +1 -1
- package/dist/forms/RenderFields/index.js +45 -72
- package/dist/forms/RenderFields/index.js.map +1 -1
- package/dist/forms/RowLabel/Context/index.js +2 -10
- package/dist/forms/RowLabel/Context/index.js.map +1 -1
- package/dist/forms/RowLabel/index.js +10 -31
- package/dist/forms/RowLabel/index.js.map +1 -1
- package/dist/forms/Submit/index.js +5 -22
- package/dist/forms/Submit/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js +26 -44
- package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
- package/dist/forms/useField/index.js +1 -1
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/forms/withCondition/index.js +3 -16
- package/dist/forms/withCondition/index.js.map +1 -1
- package/dist/graphics/Account/Default/index.js +8 -46
- package/dist/graphics/Account/Default/index.js.map +1 -1
- package/dist/graphics/Account/Gravatar/index.js +3 -16
- package/dist/graphics/Account/Gravatar/index.js.map +1 -1
- package/dist/graphics/Account/index.js +2 -14
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/graphics/DefaultBlockImage/index.js +16 -115
- package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
- package/dist/graphics/File/index.js +6 -33
- package/dist/graphics/File/index.js.map +1 -1
- package/dist/graphics/Icon/index.js +4 -31
- package/dist/graphics/Icon/index.js.map +1 -1
- package/dist/graphics/Logo/index.js +17 -112
- package/dist/graphics/Logo/index.js.map +1 -1
- package/dist/icons/Calendar/index.js +3 -20
- package/dist/icons/Calendar/index.js.map +1 -1
- package/dist/icons/Check/index.js +3 -20
- package/dist/icons/Check/index.js.map +1 -1
- package/dist/icons/Chevron/index.js +9 -30
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/CloseMenu/index.js +3 -20
- package/dist/icons/CloseMenu/index.js.map +1 -1
- package/dist/icons/CodeBlock/index.js +3 -22
- package/dist/icons/CodeBlock/index.js.map +1 -1
- package/dist/icons/Copy/index.js +3 -24
- package/dist/icons/Copy/index.js.map +1 -1
- package/dist/icons/Document/index.js +3 -24
- package/dist/icons/Document/index.js.map +1 -1
- package/dist/icons/Dots/index.js +10 -32
- package/dist/icons/Dots/index.js.map +1 -1
- package/dist/icons/DragHandle/index.js +11 -70
- package/dist/icons/DragHandle/index.js.map +1 -1
- package/dist/icons/Edit/index.js +6 -23
- package/dist/icons/Edit/index.js.map +1 -1
- package/dist/icons/ExternalLink/index.js +6 -23
- package/dist/icons/ExternalLink/index.js.map +1 -1
- package/dist/icons/Eye/index.js +12 -53
- package/dist/icons/Eye/index.js.map +1 -1
- package/dist/icons/Folder/index.js +6 -25
- package/dist/icons/Folder/index.js.map +1 -1
- package/dist/icons/Gear/index.js +8 -34
- package/dist/icons/Gear/index.js.map +1 -1
- package/dist/icons/GridView/index.js +6 -56
- package/dist/icons/GridView/index.js.map +1 -1
- package/dist/icons/Line/index.js +3 -23
- package/dist/icons/Line/index.js.map +1 -1
- package/dist/icons/Link/index.js +3 -25
- package/dist/icons/Link/index.js.map +1 -1
- package/dist/icons/ListView/index.js +3 -24
- package/dist/icons/ListView/index.js.map +1 -1
- package/dist/icons/Lock/index.js +7 -41
- package/dist/icons/Lock/index.js.map +1 -1
- package/dist/icons/LogOut/index.js +3 -23
- package/dist/icons/LogOut/index.js.map +1 -1
- package/dist/icons/Menu/index.js +3 -23
- package/dist/icons/Menu/index.js.map +1 -1
- package/dist/icons/MinimizeMaximize/index.js +3 -27
- package/dist/icons/MinimizeMaximize/index.js.map +1 -1
- package/dist/icons/More/index.js +8 -43
- package/dist/icons/More/index.js.map +1 -1
- package/dist/icons/MoveFolder/index.js +10 -62
- package/dist/icons/MoveFolder/index.js.map +1 -1
- package/dist/icons/People/index.js +7 -28
- package/dist/icons/People/index.js.map +1 -1
- package/dist/icons/Plus/index.js +3 -22
- package/dist/icons/Plus/index.js.map +1 -1
- package/dist/icons/Search/index.js +3 -21
- package/dist/icons/Search/index.js.map +1 -1
- package/dist/icons/Sort/index.js +6 -48
- package/dist/icons/Sort/index.js.map +1 -1
- package/dist/icons/Swap/index.js +3 -20
- package/dist/icons/Swap/index.js.map +1 -1
- package/dist/icons/ThreeDots/index.js +5 -26
- package/dist/icons/ThreeDots/index.js.map +1 -1
- package/dist/icons/Trash/index.js +6 -27
- package/dist/icons/Trash/index.js.map +1 -1
- package/dist/icons/X/index.js +6 -25
- package/dist/icons/X/index.js.map +1 -1
- package/dist/providers/Actions/index.js +10 -16
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/Auth/index.js +16 -22
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/ClickOutside/index.js +6 -14
- package/dist/providers/ClickOutside/index.js.map +1 -1
- package/dist/providers/ClientFunction/index.js +8 -21
- package/dist/providers/ClientFunction/index.js.map +1 -1
- package/dist/providers/Config/index.js +4 -19
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/providers/DocumentEvents/index.js +6 -14
- package/dist/providers/DocumentEvents/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.js +7 -29
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentTitle/index.js +5 -13
- package/dist/providers/DocumentTitle/index.js.map +1 -1
- package/dist/providers/EditDepth/index.js +3 -11
- package/dist/providers/EditDepth/index.js.map +1 -1
- package/dist/providers/EntityVisibility/index.js +8 -14
- package/dist/providers/EntityVisibility/index.js.map +1 -1
- package/dist/providers/Folders/index.js +42 -48
- package/dist/providers/Folders/index.js.map +1 -1
- package/dist/providers/ListQuery/index.js +17 -30
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/LivePreview/index.js +39 -51
- package/dist/providers/LivePreview/index.js.map +1 -1
- package/dist/providers/Locale/index.js +10 -21
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Operation/index.js +3 -11
- package/dist/providers/Operation/index.js.map +1 -1
- package/dist/providers/Params/index.js +3 -11
- package/dist/providers/Params/index.js.map +1 -1
- package/dist/providers/Preferences/index.js +3 -11
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/Root/index.js +54 -187
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/RouteCache/index.js +6 -14
- package/dist/providers/RouteCache/index.js.map +1 -1
- package/dist/providers/RouteTransition/ProgressBar/index.js +11 -25
- package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
- package/dist/providers/RouteTransition/index.js +8 -14
- package/dist/providers/RouteTransition/index.js.map +1 -1
- package/dist/providers/SearchParams/index.js +5 -13
- package/dist/providers/SearchParams/index.js.map +1 -1
- package/dist/providers/Selection/index.js +3 -11
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/ServerFunctions/index.js +15 -21
- package/dist/providers/ServerFunctions/index.js.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js +4 -16
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/index.js +1 -13
- package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/renderCell.js +1 -18
- package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
- package/dist/providers/TableColumns/index.js +11 -17
- package/dist/providers/TableColumns/index.js.map +1 -1
- package/dist/providers/Theme/index.js +7 -15
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/providers/ToastContainer/icons/Error.js +4 -33
- package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
- package/dist/providers/ToastContainer/icons/Info.js +4 -33
- package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
- package/dist/providers/ToastContainer/icons/Success.js +4 -33
- package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
- package/dist/providers/ToastContainer/icons/Warning.js +4 -33
- package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
- package/dist/providers/ToastContainer/index.js +19 -53
- package/dist/providers/ToastContainer/index.js.map +1 -1
- package/dist/providers/Translation/index.js +15 -21
- package/dist/providers/Translation/index.js.map +1 -1
- package/dist/providers/UploadControls/index.js +12 -18
- package/dist/providers/UploadControls/index.js.map +1 -1
- package/dist/providers/UploadEdits/index.js +9 -15
- package/dist/providers/UploadEdits/index.js.map +1 -1
- package/dist/providers/UploadHandlers/index.js +5 -13
- package/dist/providers/UploadHandlers/index.js.map +1 -1
- package/dist/utilities/combineFieldLabel.js +13 -51
- package/dist/utilities/combineFieldLabel.js.map +1 -1
- package/dist/utilities/getFolderResultsComponentAndData.js +10 -39
- package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
- package/dist/utilities/renderTable.js +23 -113
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/views/BrowseByFolder/index.js +74 -273
- package/dist/views/BrowseByFolder/index.js.map +1 -1
- package/dist/views/CollectionFolder/ListSelection/index.js +44 -130
- package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
- package/dist/views/CollectionFolder/index.js +84 -268
- package/dist/views/CollectionFolder/index.js.map +1 -1
- package/dist/views/Edit/Auth/APIKey.js +23 -103
- package/dist/views/Edit/Auth/APIKey.js.map +1 -1
- package/dist/views/Edit/Auth/index.js +48 -165
- package/dist/views/Edit/Auth/index.js.map +1 -1
- package/dist/views/Edit/index.js +85 -272
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/List/GroupByHeader/index.js +10 -34
- package/dist/views/List/GroupByHeader/index.js.map +1 -1
- package/dist/views/List/ListHeader/index.js +18 -103
- package/dist/views/List/ListHeader/index.js.map +1 -1
- package/dist/views/List/ListSelection/index.js +20 -93
- package/dist/views/List/ListSelection/index.js.map +1 -1
- package/dist/views/List/index.js +58 -243
- package/dist/views/List/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/EditUpload/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UploadEdits } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useRef, useState } from 'react'\nimport ReactCrop from 'react-image-crop'\nimport 'react-image-crop/dist/ReactCrop.css'\n\nimport { editDrawerSlug } from '../../elements/Upload/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'edit-upload'\n\ntype Props = {\n name: string\n onChange: (value: string) => void\n ref?: React.RefObject<HTMLInputElement>\n value: string\n}\n\nconst Input: React.FC<Props> = (props) => {\n const { name, onChange, ref, value } = props\n\n return (\n <div className={`${baseClass}__input`}>\n {name}\n <input\n name={name}\n onChange={(e) => onChange(e.target.value)}\n ref={ref}\n type=\"number\"\n value={value}\n />\n </div>\n )\n}\n\ntype FocalPosition = {\n x: number\n y: number\n}\n\nexport type EditUploadProps = {\n fileName: string\n fileSrc: string\n imageCacheTag?: string\n initialCrop?: UploadEdits['crop']\n initialFocalPoint?: FocalPosition\n onSave?: (uploadEdits: UploadEdits) => void\n showCrop?: boolean\n showFocalPoint?: boolean\n}\n\nconst defaultCrop: UploadEdits['crop'] = {\n height: 100,\n unit: '%',\n width: 100,\n x: 0,\n y: 0,\n}\n\nexport const EditUpload: React.FC<EditUploadProps> = ({\n fileName,\n fileSrc,\n imageCacheTag,\n initialCrop,\n initialFocalPoint,\n onSave,\n showCrop,\n showFocalPoint,\n}) => {\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const [crop, setCrop] = useState<UploadEdits['crop']>(() => ({\n ...defaultCrop,\n ...(initialCrop || {}),\n }))\n\n const defaultFocalPosition: FocalPosition = {\n x: 50,\n y: 50,\n }\n\n const [focalPosition, setFocalPosition] = useState<FocalPosition>(() => ({\n ...defaultFocalPosition,\n ...initialFocalPoint,\n }))\n\n const [checkBounds, setCheckBounds] = useState<boolean>(false)\n const [uncroppedPixelHeight, setUncroppedPixelHeight] = useState<number>(0)\n const [uncroppedPixelWidth, setUncroppedPixelWidth] = useState<number>(0)\n\n const focalWrapRef = useRef<HTMLDivElement | undefined>(undefined)\n const imageRef = useRef<HTMLImageElement | undefined>(undefined)\n const cropRef = useRef<HTMLDivElement | undefined>(undefined)\n\n const heightInputRef = useRef<HTMLInputElement | null>(null)\n const widthInputRef = useRef<HTMLInputElement | null>(null)\n\n const [imageLoaded, setImageLoaded] = useState<boolean>(false)\n\n const onImageLoad = (e) => {\n // set the default image height/width on load\n setUncroppedPixelHeight(e.currentTarget.naturalHeight)\n setUncroppedPixelWidth(e.currentTarget.naturalWidth)\n setImageLoaded(true)\n }\n\n const fineTuneCrop = ({ dimension, value }: { dimension: 'height' | 'width'; value: string }) => {\n const intValue = parseInt(value)\n if (dimension === 'width' && intValue >= uncroppedPixelWidth) {\n return null\n }\n if (dimension === 'height' && intValue >= uncroppedPixelHeight) {\n return null\n }\n\n const percentage =\n 100 * (intValue / (dimension === 'width' ? uncroppedPixelWidth : uncroppedPixelHeight))\n\n if (percentage === 100 || percentage === 0) {\n return null\n }\n\n setCrop({\n ...crop,\n [dimension]: percentage,\n })\n }\n\n const fineTuneFocalPosition = ({\n coordinate,\n value,\n }: {\n coordinate: 'x' | 'y'\n value: string\n }) => {\n const intValue = parseInt(value)\n if (intValue >= 0 && intValue <= 100) {\n setFocalPosition((prevPosition) => ({ ...prevPosition, [coordinate]: intValue }))\n }\n }\n\n const saveEdits = () => {\n if (typeof onSave === 'function') {\n onSave({\n crop: crop ? crop : undefined,\n focalPoint: focalPosition,\n heightInPixels: Number(heightInputRef?.current?.value ?? uncroppedPixelHeight),\n widthInPixels: Number(widthInputRef?.current?.value ?? uncroppedPixelWidth),\n })\n }\n closeModal(editDrawerSlug)\n }\n\n const onDragEnd = React.useCallback(({ x, y }) => {\n setFocalPosition({ x, y })\n setCheckBounds(false)\n }, [])\n\n const centerFocalPoint = () => {\n const containerRect = focalWrapRef.current.getBoundingClientRect()\n const boundsRect = showCrop\n ? cropRef.current.getBoundingClientRect()\n : imageRef.current.getBoundingClientRect()\n const xCenter =\n ((boundsRect.left - containerRect.left + boundsRect.width / 2) / containerRect.width) * 100\n const yCenter =\n ((boundsRect.top - containerRect.top + boundsRect.height / 2) / containerRect.height) * 100\n setFocalPosition({ x: xCenter, y: yCenter })\n }\n\n const fileSrcToUse = imageCacheTag ? `${fileSrc}?${encodeURIComponent(imageCacheTag)}` : fileSrc\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n <h2 title={`${t('general:editing')} ${fileName}`}>\n {t('general:editing')} {fileName}\n </h2>\n <div className={`${baseClass}__actions`}>\n <Button\n aria-label={t('general:cancel')}\n buttonStyle=\"secondary\"\n className={`${baseClass}__cancel`}\n onClick={() => closeModal(editDrawerSlug)}\n >\n {t('general:cancel')}\n </Button>\n <Button\n aria-label={t('general:applyChanges')}\n buttonStyle=\"primary\"\n className={`${baseClass}__save`}\n disabled={!imageLoaded}\n onClick={saveEdits}\n >\n {t('general:applyChanges')}\n </Button>\n </div>\n </div>\n <div className={`${baseClass}__toolWrap`}>\n <div className={`${baseClass}__crop`}>\n <div\n className={`${baseClass}__focal-wrapper`}\n ref={focalWrapRef}\n style={{\n aspectRatio: `${uncroppedPixelWidth / uncroppedPixelHeight}`,\n }}\n >\n {showCrop ? (\n <ReactCrop\n className={`${baseClass}__reactCrop`}\n crop={crop}\n onChange={(_, c) => setCrop(c)}\n onComplete={() => setCheckBounds(true)}\n renderSelectionAddon={() => {\n return <div className={`${baseClass}__crop-window`} ref={cropRef} />\n }}\n >\n <img\n alt={t('upload:setCropArea')}\n onLoad={onImageLoad}\n ref={imageRef}\n src={fileSrcToUse}\n />\n </ReactCrop>\n ) : (\n <img\n alt={t('upload:setFocalPoint')}\n onLoad={onImageLoad}\n ref={imageRef}\n src={fileSrcToUse}\n />\n )}\n {showFocalPoint && (\n <DraggableElement\n boundsRef={showCrop ? cropRef : imageRef}\n checkBounds={showCrop ? checkBounds : false}\n className={`${baseClass}__focalPoint`}\n containerRef={focalWrapRef}\n initialPosition={focalPosition}\n onDragEnd={onDragEnd}\n setCheckBounds={showCrop ? setCheckBounds : false}\n >\n <PlusIcon />\n </DraggableElement>\n )}\n </div>\n </div>\n {(showCrop || showFocalPoint) && (\n <div className={`${baseClass}__sidebar`}>\n {showCrop && (\n <div className={`${baseClass}__groupWrap`}>\n <div>\n <div className={`${baseClass}__titleWrap`}>\n <h3>{t('upload:crop')}</h3>\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__reset`}\n onClick={() =>\n setCrop({\n height: 100,\n unit: '%',\n width: 100,\n x: 0,\n y: 0,\n })\n }\n >\n {t('general:reset')}\n </Button>\n </div>\n </div>\n <span className={`${baseClass}__description`}>\n {t('upload:cropToolDescription')}\n </span>\n <div className={`${baseClass}__inputsWrap`}>\n <Input\n name={`${t('upload:width')} (px)`}\n onChange={(value) => fineTuneCrop({ dimension: 'width', value })}\n ref={widthInputRef}\n value={((crop.width / 100) * uncroppedPixelWidth).toFixed(0)}\n />\n <Input\n name={`${t('upload:height')} (px)`}\n onChange={(value) => fineTuneCrop({ dimension: 'height', value })}\n ref={heightInputRef}\n value={((crop.height / 100) * uncroppedPixelHeight).toFixed(0)}\n />\n </div>\n </div>\n )}\n\n {showFocalPoint && (\n <div className={`${baseClass}__groupWrap`}>\n <div>\n <div className={`${baseClass}__titleWrap`}>\n <h3>{t('upload:focalPoint')}</h3>\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__reset`}\n onClick={centerFocalPoint}\n >\n {t('general:reset')}\n </Button>\n </div>\n </div>\n <span className={`${baseClass}__description`}>\n {t('upload:focalPointDescription')}\n </span>\n <div className={`${baseClass}__inputsWrap`}>\n <Input\n name=\"X %\"\n onChange={(value) => fineTuneFocalPosition({ coordinate: 'x', value })}\n value={focalPosition.x.toFixed(0)}\n />\n <Input\n name=\"Y %\"\n onChange={(value) => fineTuneFocalPosition({ coordinate: 'y', value })}\n value={focalPosition.y.toFixed(0)}\n />\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n )\n}\n\nconst DraggableElement = ({\n boundsRef,\n checkBounds,\n children,\n className,\n containerRef,\n initialPosition = { x: 50, y: 50 },\n onDragEnd,\n setCheckBounds,\n}) => {\n const [position, setPosition] = useState({ x: initialPosition.x, y: initialPosition.y })\n const [isDragging, setIsDragging] = useState(false)\n const dragRef = useRef<HTMLButtonElement | undefined>(undefined)\n\n const getCoordinates = React.useCallback(\n (mouseXArg?: number, mouseYArg?: number, recenter?: boolean) => {\n const containerRect = containerRef.current.getBoundingClientRect()\n const boundsRect = boundsRef.current.getBoundingClientRect()\n const mouseX = mouseXArg ?? boundsRect.left\n const mouseY = mouseYArg ?? boundsRect.top\n\n const xOutOfBounds = mouseX < boundsRect.left || mouseX > boundsRect.right\n const yOutOfBounds = mouseY < boundsRect.top || mouseY > boundsRect.bottom\n\n let x = ((mouseX - containerRect.left) / containerRect.width) * 100\n let y = ((mouseY - containerRect.top) / containerRect.height) * 100\n const xCenter =\n ((boundsRect.left - containerRect.left + boundsRect.width / 2) / containerRect.width) * 100\n const yCenter =\n ((boundsRect.top - containerRect.top + boundsRect.height / 2) / containerRect.height) * 100\n if (xOutOfBounds || yOutOfBounds) {\n setIsDragging(false)\n if (mouseX < boundsRect.left) {\n x = ((boundsRect.left - containerRect.left) / containerRect.width) * 100\n } else if (mouseX > boundsRect.right) {\n x =\n ((containerRect.width - (containerRect.right - boundsRect.right)) /\n containerRect.width) *\n 100\n }\n\n if (mouseY < boundsRect.top) {\n y = ((boundsRect.top - containerRect.top) / containerRect.height) * 100\n } else if (mouseY > boundsRect.bottom) {\n y =\n ((containerRect.height - (containerRect.bottom - boundsRect.bottom)) /\n containerRect.height) *\n 100\n }\n\n if (recenter) {\n x = xOutOfBounds ? xCenter : x\n y = yOutOfBounds ? yCenter : y\n }\n }\n\n return { x, y }\n },\n [boundsRef, containerRef],\n )\n\n const handleMouseDown = (event) => {\n event.preventDefault()\n setIsDragging(true)\n }\n\n const handleMouseMove = (event) => {\n if (!isDragging) {\n return null\n }\n const { x, y } = getCoordinates(event.clientX, event.clientY)\n\n setPosition({ x, y })\n }\n\n const onDrop = () => {\n setIsDragging(false)\n onDragEnd(position)\n }\n\n React.useEffect(() => {\n if (isDragging || !dragRef.current) {\n return\n }\n if (checkBounds) {\n const { height, left, top, width } = dragRef.current.getBoundingClientRect()\n const { x, y } = getCoordinates(left + width / 2, top + height / 2, true)\n onDragEnd({ x, y })\n setPosition({ x, y })\n setCheckBounds(false)\n return\n }\n }, [getCoordinates, isDragging, checkBounds, setCheckBounds, position.x, position.y, onDragEnd])\n\n React.useEffect(() => {\n setPosition({ x: initialPosition.x, y: initialPosition.y })\n }, [initialPosition.x, initialPosition.y])\n\n return (\n <div\n className={[\n `${baseClass}__draggable-container`,\n isDragging && `${baseClass}__draggable-container--dragging`,\n ]\n .filter(Boolean)\n .join(' ')}\n onMouseMove={handleMouseMove}\n >\n <button\n className={[`${baseClass}__draggable`, className].filter(Boolean).join(' ')}\n onMouseDown={handleMouseDown}\n onMouseUp={onDrop}\n ref={dragRef}\n style={{ left: `${position.x}%`, top: `${position.y}%` }}\n type=\"button\"\n >\n {children}\n </button>\n <div />\n </div>\n )\n}\n"],"names":["useModal","React","useRef","useState","ReactCrop","editDrawerSlug","PlusIcon","useTranslation","Button","baseClass","Input","props","name","onChange","ref","value","div","className","input","e","target","type","defaultCrop","height","unit","width","x","y","EditUpload","fileName","fileSrc","imageCacheTag","initialCrop","initialFocalPoint","onSave","showCrop","showFocalPoint","closeModal","t","crop","setCrop","defaultFocalPosition","focalPosition","setFocalPosition","checkBounds","setCheckBounds","uncroppedPixelHeight","setUncroppedPixelHeight","uncroppedPixelWidth","setUncroppedPixelWidth","focalWrapRef","undefined","imageRef","cropRef","heightInputRef","widthInputRef","imageLoaded","setImageLoaded","onImageLoad","currentTarget","naturalHeight","naturalWidth","fineTuneCrop","dimension","intValue","parseInt","percentage","fineTuneFocalPosition","coordinate","prevPosition","saveEdits","focalPoint","heightInPixels","Number","current","widthInPixels","onDragEnd","useCallback","centerFocalPoint","containerRect","getBoundingClientRect","boundsRect","xCenter","left","yCenter","top","fileSrcToUse","encodeURIComponent","h2","title","aria-label","buttonStyle","onClick","disabled","style","aspectRatio","_","c","onComplete","renderSelectionAddon","img","alt","onLoad","src","DraggableElement","boundsRef","containerRef","initialPosition","h3","span","toFixed","children","position","setPosition","isDragging","setIsDragging","dragRef","getCoordinates","mouseXArg","mouseYArg","recenter","mouseX","mouseY","xOutOfBounds","right","yOutOfBounds","bottom","handleMouseDown","event","preventDefault","handleMouseMove","clientX","clientY","onDrop","useEffect","filter","Boolean","join","onMouseMove","button","onMouseDown","onMouseUp"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/EditUpload/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UploadEdits } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useRef, useState } from 'react'\nimport ReactCrop from 'react-image-crop'\nimport 'react-image-crop/dist/ReactCrop.css'\n\nimport { editDrawerSlug } from '../../elements/Upload/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'edit-upload'\n\ntype Props = {\n name: string\n onChange: (value: string) => void\n ref?: React.RefObject<HTMLInputElement>\n value: string\n}\n\nconst Input: React.FC<Props> = (props) => {\n const { name, onChange, ref, value } = props\n\n return (\n <div className={`${baseClass}__input`}>\n {name}\n <input\n name={name}\n onChange={(e) => onChange(e.target.value)}\n ref={ref}\n type=\"number\"\n value={value}\n />\n </div>\n )\n}\n\ntype FocalPosition = {\n x: number\n y: number\n}\n\nexport type EditUploadProps = {\n fileName: string\n fileSrc: string\n imageCacheTag?: string\n initialCrop?: UploadEdits['crop']\n initialFocalPoint?: FocalPosition\n onSave?: (uploadEdits: UploadEdits) => void\n showCrop?: boolean\n showFocalPoint?: boolean\n}\n\nconst defaultCrop: UploadEdits['crop'] = {\n height: 100,\n unit: '%',\n width: 100,\n x: 0,\n y: 0,\n}\n\nexport const EditUpload: React.FC<EditUploadProps> = ({\n fileName,\n fileSrc,\n imageCacheTag,\n initialCrop,\n initialFocalPoint,\n onSave,\n showCrop,\n showFocalPoint,\n}) => {\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const [crop, setCrop] = useState<UploadEdits['crop']>(() => ({\n ...defaultCrop,\n ...(initialCrop || {}),\n }))\n\n const defaultFocalPosition: FocalPosition = {\n x: 50,\n y: 50,\n }\n\n const [focalPosition, setFocalPosition] = useState<FocalPosition>(() => ({\n ...defaultFocalPosition,\n ...initialFocalPoint,\n }))\n\n const [checkBounds, setCheckBounds] = useState<boolean>(false)\n const [uncroppedPixelHeight, setUncroppedPixelHeight] = useState<number>(0)\n const [uncroppedPixelWidth, setUncroppedPixelWidth] = useState<number>(0)\n\n const focalWrapRef = useRef<HTMLDivElement | undefined>(undefined)\n const imageRef = useRef<HTMLImageElement | undefined>(undefined)\n const cropRef = useRef<HTMLDivElement | undefined>(undefined)\n\n const heightInputRef = useRef<HTMLInputElement | null>(null)\n const widthInputRef = useRef<HTMLInputElement | null>(null)\n\n const [imageLoaded, setImageLoaded] = useState<boolean>(false)\n\n const onImageLoad = (e) => {\n // set the default image height/width on load\n setUncroppedPixelHeight(e.currentTarget.naturalHeight)\n setUncroppedPixelWidth(e.currentTarget.naturalWidth)\n setImageLoaded(true)\n }\n\n const fineTuneCrop = ({ dimension, value }: { dimension: 'height' | 'width'; value: string }) => {\n const intValue = parseInt(value)\n if (dimension === 'width' && intValue >= uncroppedPixelWidth) {\n return null\n }\n if (dimension === 'height' && intValue >= uncroppedPixelHeight) {\n return null\n }\n\n const percentage =\n 100 * (intValue / (dimension === 'width' ? uncroppedPixelWidth : uncroppedPixelHeight))\n\n if (percentage === 100 || percentage === 0) {\n return null\n }\n\n setCrop({\n ...crop,\n [dimension]: percentage,\n })\n }\n\n const fineTuneFocalPosition = ({\n coordinate,\n value,\n }: {\n coordinate: 'x' | 'y'\n value: string\n }) => {\n const intValue = parseInt(value)\n if (intValue >= 0 && intValue <= 100) {\n setFocalPosition((prevPosition) => ({ ...prevPosition, [coordinate]: intValue }))\n }\n }\n\n const saveEdits = () => {\n if (typeof onSave === 'function') {\n onSave({\n crop: crop ? crop : undefined,\n focalPoint: focalPosition,\n heightInPixels: Number(heightInputRef?.current?.value ?? uncroppedPixelHeight),\n widthInPixels: Number(widthInputRef?.current?.value ?? uncroppedPixelWidth),\n })\n }\n closeModal(editDrawerSlug)\n }\n\n const onDragEnd = React.useCallback(({ x, y }) => {\n setFocalPosition({ x, y })\n setCheckBounds(false)\n }, [])\n\n const centerFocalPoint = () => {\n const containerRect = focalWrapRef.current.getBoundingClientRect()\n const boundsRect = showCrop\n ? cropRef.current.getBoundingClientRect()\n : imageRef.current.getBoundingClientRect()\n const xCenter =\n ((boundsRect.left - containerRect.left + boundsRect.width / 2) / containerRect.width) * 100\n const yCenter =\n ((boundsRect.top - containerRect.top + boundsRect.height / 2) / containerRect.height) * 100\n setFocalPosition({ x: xCenter, y: yCenter })\n }\n\n const fileSrcToUse = imageCacheTag ? `${fileSrc}?${encodeURIComponent(imageCacheTag)}` : fileSrc\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n <h2 title={`${t('general:editing')} ${fileName}`}>\n {t('general:editing')} {fileName}\n </h2>\n <div className={`${baseClass}__actions`}>\n <Button\n aria-label={t('general:cancel')}\n buttonStyle=\"secondary\"\n className={`${baseClass}__cancel`}\n onClick={() => closeModal(editDrawerSlug)}\n >\n {t('general:cancel')}\n </Button>\n <Button\n aria-label={t('general:applyChanges')}\n buttonStyle=\"primary\"\n className={`${baseClass}__save`}\n disabled={!imageLoaded}\n onClick={saveEdits}\n >\n {t('general:applyChanges')}\n </Button>\n </div>\n </div>\n <div className={`${baseClass}__toolWrap`}>\n <div className={`${baseClass}__crop`}>\n <div\n className={`${baseClass}__focal-wrapper`}\n ref={focalWrapRef}\n style={{\n aspectRatio: `${uncroppedPixelWidth / uncroppedPixelHeight}`,\n }}\n >\n {showCrop ? (\n <ReactCrop\n className={`${baseClass}__reactCrop`}\n crop={crop}\n onChange={(_, c) => setCrop(c)}\n onComplete={() => setCheckBounds(true)}\n renderSelectionAddon={() => {\n return <div className={`${baseClass}__crop-window`} ref={cropRef} />\n }}\n >\n <img\n alt={t('upload:setCropArea')}\n onLoad={onImageLoad}\n ref={imageRef}\n src={fileSrcToUse}\n />\n </ReactCrop>\n ) : (\n <img\n alt={t('upload:setFocalPoint')}\n onLoad={onImageLoad}\n ref={imageRef}\n src={fileSrcToUse}\n />\n )}\n {showFocalPoint && (\n <DraggableElement\n boundsRef={showCrop ? cropRef : imageRef}\n checkBounds={showCrop ? checkBounds : false}\n className={`${baseClass}__focalPoint`}\n containerRef={focalWrapRef}\n initialPosition={focalPosition}\n onDragEnd={onDragEnd}\n setCheckBounds={showCrop ? setCheckBounds : false}\n >\n <PlusIcon />\n </DraggableElement>\n )}\n </div>\n </div>\n {(showCrop || showFocalPoint) && (\n <div className={`${baseClass}__sidebar`}>\n {showCrop && (\n <div className={`${baseClass}__groupWrap`}>\n <div>\n <div className={`${baseClass}__titleWrap`}>\n <h3>{t('upload:crop')}</h3>\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__reset`}\n onClick={() =>\n setCrop({\n height: 100,\n unit: '%',\n width: 100,\n x: 0,\n y: 0,\n })\n }\n >\n {t('general:reset')}\n </Button>\n </div>\n </div>\n <span className={`${baseClass}__description`}>\n {t('upload:cropToolDescription')}\n </span>\n <div className={`${baseClass}__inputsWrap`}>\n <Input\n name={`${t('upload:width')} (px)`}\n onChange={(value) => fineTuneCrop({ dimension: 'width', value })}\n ref={widthInputRef}\n value={((crop.width / 100) * uncroppedPixelWidth).toFixed(0)}\n />\n <Input\n name={`${t('upload:height')} (px)`}\n onChange={(value) => fineTuneCrop({ dimension: 'height', value })}\n ref={heightInputRef}\n value={((crop.height / 100) * uncroppedPixelHeight).toFixed(0)}\n />\n </div>\n </div>\n )}\n\n {showFocalPoint && (\n <div className={`${baseClass}__groupWrap`}>\n <div>\n <div className={`${baseClass}__titleWrap`}>\n <h3>{t('upload:focalPoint')}</h3>\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__reset`}\n onClick={centerFocalPoint}\n >\n {t('general:reset')}\n </Button>\n </div>\n </div>\n <span className={`${baseClass}__description`}>\n {t('upload:focalPointDescription')}\n </span>\n <div className={`${baseClass}__inputsWrap`}>\n <Input\n name=\"X %\"\n onChange={(value) => fineTuneFocalPosition({ coordinate: 'x', value })}\n value={focalPosition.x.toFixed(0)}\n />\n <Input\n name=\"Y %\"\n onChange={(value) => fineTuneFocalPosition({ coordinate: 'y', value })}\n value={focalPosition.y.toFixed(0)}\n />\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n )\n}\n\nconst DraggableElement = ({\n boundsRef,\n checkBounds,\n children,\n className,\n containerRef,\n initialPosition = { x: 50, y: 50 },\n onDragEnd,\n setCheckBounds,\n}) => {\n const [position, setPosition] = useState({ x: initialPosition.x, y: initialPosition.y })\n const [isDragging, setIsDragging] = useState(false)\n const dragRef = useRef<HTMLButtonElement | undefined>(undefined)\n\n const getCoordinates = React.useCallback(\n (mouseXArg?: number, mouseYArg?: number, recenter?: boolean) => {\n const containerRect = containerRef.current.getBoundingClientRect()\n const boundsRect = boundsRef.current.getBoundingClientRect()\n const mouseX = mouseXArg ?? boundsRect.left\n const mouseY = mouseYArg ?? boundsRect.top\n\n const xOutOfBounds = mouseX < boundsRect.left || mouseX > boundsRect.right\n const yOutOfBounds = mouseY < boundsRect.top || mouseY > boundsRect.bottom\n\n let x = ((mouseX - containerRect.left) / containerRect.width) * 100\n let y = ((mouseY - containerRect.top) / containerRect.height) * 100\n const xCenter =\n ((boundsRect.left - containerRect.left + boundsRect.width / 2) / containerRect.width) * 100\n const yCenter =\n ((boundsRect.top - containerRect.top + boundsRect.height / 2) / containerRect.height) * 100\n if (xOutOfBounds || yOutOfBounds) {\n setIsDragging(false)\n if (mouseX < boundsRect.left) {\n x = ((boundsRect.left - containerRect.left) / containerRect.width) * 100\n } else if (mouseX > boundsRect.right) {\n x =\n ((containerRect.width - (containerRect.right - boundsRect.right)) /\n containerRect.width) *\n 100\n }\n\n if (mouseY < boundsRect.top) {\n y = ((boundsRect.top - containerRect.top) / containerRect.height) * 100\n } else if (mouseY > boundsRect.bottom) {\n y =\n ((containerRect.height - (containerRect.bottom - boundsRect.bottom)) /\n containerRect.height) *\n 100\n }\n\n if (recenter) {\n x = xOutOfBounds ? xCenter : x\n y = yOutOfBounds ? yCenter : y\n }\n }\n\n return { x, y }\n },\n [boundsRef, containerRef],\n )\n\n const handleMouseDown = (event) => {\n event.preventDefault()\n setIsDragging(true)\n }\n\n const handleMouseMove = (event) => {\n if (!isDragging) {\n return null\n }\n const { x, y } = getCoordinates(event.clientX, event.clientY)\n\n setPosition({ x, y })\n }\n\n const onDrop = () => {\n setIsDragging(false)\n onDragEnd(position)\n }\n\n React.useEffect(() => {\n if (isDragging || !dragRef.current) {\n return\n }\n if (checkBounds) {\n const { height, left, top, width } = dragRef.current.getBoundingClientRect()\n const { x, y } = getCoordinates(left + width / 2, top + height / 2, true)\n onDragEnd({ x, y })\n setPosition({ x, y })\n setCheckBounds(false)\n return\n }\n }, [getCoordinates, isDragging, checkBounds, setCheckBounds, position.x, position.y, onDragEnd])\n\n React.useEffect(() => {\n setPosition({ x: initialPosition.x, y: initialPosition.y })\n }, [initialPosition.x, initialPosition.y])\n\n return (\n <div\n className={[\n `${baseClass}__draggable-container`,\n isDragging && `${baseClass}__draggable-container--dragging`,\n ]\n .filter(Boolean)\n .join(' ')}\n onMouseMove={handleMouseMove}\n >\n <button\n className={[`${baseClass}__draggable`, className].filter(Boolean).join(' ')}\n onMouseDown={handleMouseDown}\n onMouseUp={onDrop}\n ref={dragRef}\n style={{ left: `${position.x}%`, top: `${position.y}%` }}\n type=\"button\"\n >\n {children}\n </button>\n <div />\n </div>\n )\n}\n"],"names":["useModal","React","useRef","useState","ReactCrop","editDrawerSlug","PlusIcon","useTranslation","Button","baseClass","Input","props","name","onChange","ref","value","div","className","input","e","target","type","defaultCrop","height","unit","width","x","y","EditUpload","fileName","fileSrc","imageCacheTag","initialCrop","initialFocalPoint","onSave","showCrop","showFocalPoint","closeModal","t","crop","setCrop","defaultFocalPosition","focalPosition","setFocalPosition","checkBounds","setCheckBounds","uncroppedPixelHeight","setUncroppedPixelHeight","uncroppedPixelWidth","setUncroppedPixelWidth","focalWrapRef","undefined","imageRef","cropRef","heightInputRef","widthInputRef","imageLoaded","setImageLoaded","onImageLoad","currentTarget","naturalHeight","naturalWidth","fineTuneCrop","dimension","intValue","parseInt","percentage","fineTuneFocalPosition","coordinate","prevPosition","saveEdits","focalPoint","heightInPixels","Number","current","widthInPixels","onDragEnd","useCallback","centerFocalPoint","containerRect","getBoundingClientRect","boundsRect","xCenter","left","yCenter","top","fileSrcToUse","encodeURIComponent","h2","title","aria-label","buttonStyle","onClick","disabled","style","aspectRatio","_","c","onComplete","renderSelectionAddon","img","alt","onLoad","src","DraggableElement","boundsRef","containerRef","initialPosition","h3","span","toFixed","children","position","setPosition","isDragging","setIsDragging","dragRef","getCoordinates","mouseXArg","mouseYArg","recenter","mouseX","mouseY","xOutOfBounds","right","yOutOfBounds","bottom","handleMouseDown","event","preventDefault","handleMouseMove","clientX","clientY","onDrop","useEffect","filter","Boolean","join","onMouseMove","button","onMouseDown","onMouseUp"],"mappings":"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"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
3
2
|
import { email, getFieldPermissions, username } from 'payload/shared';
|
|
4
|
-
import React from 'react';
|
|
5
3
|
import { EmailField } from '../../fields/Email/index.js';
|
|
6
4
|
import { TextField } from '../../fields/Text/index.js';
|
|
7
5
|
import './index.scss';
|
|
@@ -40,68 +38,31 @@ export function EmailAndUsernameFields(props) {
|
|
|
40
38
|
const showEmailField = (!loginWithUsername || loginWithUsername?.requireEmail || loginWithUsername?.allowEmailLogin) && emailPermissions.read;
|
|
41
39
|
const showUsernameField = Boolean(loginWithUsername) && usernamePermissions.read;
|
|
42
40
|
if (showEmailField || showUsernameField) {
|
|
43
|
-
return
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}, this)
|
|
69
|
-
}, void 0, false, {
|
|
70
|
-
fileName: "src/elements/EmailAndUsername/index.tsx",
|
|
71
|
-
lineNumber: 83,
|
|
72
|
-
columnNumber: 11
|
|
73
|
-
}, this) : null,
|
|
74
|
-
showUsernameField && /*#__PURE__*/ _jsxDEV(FieldPathContext, {
|
|
75
|
-
value: "username",
|
|
76
|
-
children: /*#__PURE__*/ _jsxDEV(TextField, {
|
|
77
|
-
field: {
|
|
78
|
-
name: 'username',
|
|
79
|
-
admin: {
|
|
80
|
-
autoComplete: 'off'
|
|
81
|
-
},
|
|
82
|
-
label: t('authentication:username'),
|
|
83
|
-
required: loginWithUsername && loginWithUsername.requireUsername
|
|
84
|
-
},
|
|
85
|
-
path: "username",
|
|
86
|
-
readOnly: readOnly || !usernamePermissions.update,
|
|
87
|
-
schemaPath: "username",
|
|
88
|
-
validate: username
|
|
89
|
-
}, void 0, false, {
|
|
90
|
-
fileName: "src/elements/EmailAndUsername/index.tsx",
|
|
91
|
-
lineNumber: 103,
|
|
92
|
-
columnNumber: 13
|
|
93
|
-
}, this)
|
|
94
|
-
}, void 0, false, {
|
|
95
|
-
fileName: "src/elements/EmailAndUsername/index.tsx",
|
|
96
|
-
lineNumber: 102,
|
|
97
|
-
columnNumber: 11
|
|
98
|
-
}, this)
|
|
99
|
-
]
|
|
100
|
-
}, void 0, true, {
|
|
101
|
-
fileName: "src/elements/EmailAndUsername/index.tsx",
|
|
102
|
-
lineNumber: 81,
|
|
103
|
-
columnNumber: 7
|
|
104
|
-
}, this);
|
|
41
|
+
return <div className={[
|
|
42
|
+
baseClass,
|
|
43
|
+
className && className
|
|
44
|
+
].filter(Boolean).join(' ')}>
|
|
45
|
+
{showEmailField ? <FieldPathContext value="email">
|
|
46
|
+
<EmailField field={{
|
|
47
|
+
name: 'email',
|
|
48
|
+
admin: {
|
|
49
|
+
autoComplete: 'off'
|
|
50
|
+
},
|
|
51
|
+
label: t('general:email'),
|
|
52
|
+
required: !loginWithUsername || loginWithUsername && loginWithUsername.requireEmail
|
|
53
|
+
}} path="email" readOnly={readOnly || !emailPermissions.update} schemaPath="email" validate={email}/>
|
|
54
|
+
</FieldPathContext> : null}
|
|
55
|
+
{showUsernameField && <FieldPathContext value="username">
|
|
56
|
+
<TextField field={{
|
|
57
|
+
name: 'username',
|
|
58
|
+
admin: {
|
|
59
|
+
autoComplete: 'off'
|
|
60
|
+
},
|
|
61
|
+
label: t('authentication:username'),
|
|
62
|
+
required: loginWithUsername && loginWithUsername.requireUsername
|
|
63
|
+
}} path="username" readOnly={readOnly || !usernamePermissions.update} schemaPath="username" validate={username}/>
|
|
64
|
+
</FieldPathContext>}
|
|
65
|
+
</div>;
|
|
105
66
|
}
|
|
106
67
|
}
|
|
107
68
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/EmailAndUsername/index.tsx"],"sourcesContent":["'use client'\n\nimport type { TFunction } from '@payloadcms/translations'\nimport type { LoginWithUsernameOptions, SanitizedFieldPermissions } from 'payload'\n\nimport { email, getFieldPermissions, username } from 'payload/shared'\nimport React from 'react'\n\nimport { EmailField } from '../../fields/Email/index.js'\nimport { TextField } from '../../fields/Text/index.js'\nimport './index.scss'\nimport { FieldPathContext } from '../../forms/RenderFields/context.js'\n\nconst baseClass = 'login-fields'\ntype RenderEmailAndUsernameFieldsProps = {\n className?: string\n loginWithUsername?: false | LoginWithUsernameOptions\n operation?: 'create' | 'update'\n permissions?:\n | {\n [fieldName: string]: SanitizedFieldPermissions\n }\n | true\n readOnly: boolean\n t: TFunction\n}\n\nexport function EmailAndUsernameFields(props: RenderEmailAndUsernameFieldsProps) {\n const {\n className,\n loginWithUsername,\n operation: operationFromProps,\n permissions,\n readOnly,\n t,\n } = props\n\n function getAuthFieldPermission(fieldName: string, operation: 'read' | 'update') {\n const permissionsResult = getFieldPermissions({\n field: { name: fieldName, type: 'text' },\n operation: operationFromProps === 'create' ? 'create' : operation,\n parentName: '',\n permissions,\n })\n return permissionsResult.operation\n }\n\n const hasEmailFieldOverride =\n typeof permissions === 'object' && 'email' in permissions && permissions.email\n const hasUsernameFieldOverride =\n typeof permissions === 'object' && 'username' in permissions && permissions.username\n\n const emailPermissions = hasEmailFieldOverride\n ? {\n read: getAuthFieldPermission('email', 'read'),\n update: getAuthFieldPermission('email', 'update'),\n }\n : {\n read: true,\n update: true,\n }\n\n const usernamePermissions = hasUsernameFieldOverride\n ? {\n read: getAuthFieldPermission('username', 'read'),\n update: getAuthFieldPermission('username', 'update'),\n }\n : {\n read: true,\n update: true,\n }\n\n const showEmailField =\n (!loginWithUsername || loginWithUsername?.requireEmail || loginWithUsername?.allowEmailLogin) &&\n emailPermissions.read\n\n const showUsernameField = Boolean(loginWithUsername) && usernamePermissions.read\n\n if (showEmailField || showUsernameField) {\n return (\n <div className={[baseClass, className && className].filter(Boolean).join(' ')}>\n {showEmailField ? (\n <FieldPathContext value=\"email\">\n <EmailField\n field={{\n name: 'email',\n admin: {\n autoComplete: 'off',\n },\n label: t('general:email'),\n required:\n !loginWithUsername || (loginWithUsername && loginWithUsername.requireEmail),\n }}\n path=\"email\"\n readOnly={readOnly || !emailPermissions.update}\n schemaPath=\"email\"\n validate={email}\n />\n </FieldPathContext>\n ) : null}\n {showUsernameField && (\n <FieldPathContext value=\"username\">\n <TextField\n field={{\n name: 'username',\n admin: {\n autoComplete: 'off',\n },\n label: t('authentication:username'),\n required: loginWithUsername && loginWithUsername.requireUsername,\n }}\n path=\"username\"\n readOnly={readOnly || !usernamePermissions.update}\n schemaPath=\"username\"\n validate={username}\n />\n </FieldPathContext>\n )}\n </div>\n )\n }\n}\n"],"names":["email","getFieldPermissions","username","
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/EmailAndUsername/index.tsx"],"sourcesContent":["'use client'\n\nimport type { TFunction } from '@payloadcms/translations'\nimport type { LoginWithUsernameOptions, SanitizedFieldPermissions } from 'payload'\n\nimport { email, getFieldPermissions, username } from 'payload/shared'\nimport React from 'react'\n\nimport { EmailField } from '../../fields/Email/index.js'\nimport { TextField } from '../../fields/Text/index.js'\nimport './index.scss'\nimport { FieldPathContext } from '../../forms/RenderFields/context.js'\n\nconst baseClass = 'login-fields'\ntype RenderEmailAndUsernameFieldsProps = {\n className?: string\n loginWithUsername?: false | LoginWithUsernameOptions\n operation?: 'create' | 'update'\n permissions?:\n | {\n [fieldName: string]: SanitizedFieldPermissions\n }\n | true\n readOnly: boolean\n t: TFunction\n}\n\nexport function EmailAndUsernameFields(props: RenderEmailAndUsernameFieldsProps) {\n const {\n className,\n loginWithUsername,\n operation: operationFromProps,\n permissions,\n readOnly,\n t,\n } = props\n\n function getAuthFieldPermission(fieldName: string, operation: 'read' | 'update') {\n const permissionsResult = getFieldPermissions({\n field: { name: fieldName, type: 'text' },\n operation: operationFromProps === 'create' ? 'create' : operation,\n parentName: '',\n permissions,\n })\n return permissionsResult.operation\n }\n\n const hasEmailFieldOverride =\n typeof permissions === 'object' && 'email' in permissions && permissions.email\n const hasUsernameFieldOverride =\n typeof permissions === 'object' && 'username' in permissions && permissions.username\n\n const emailPermissions = hasEmailFieldOverride\n ? {\n read: getAuthFieldPermission('email', 'read'),\n update: getAuthFieldPermission('email', 'update'),\n }\n : {\n read: true,\n update: true,\n }\n\n const usernamePermissions = hasUsernameFieldOverride\n ? {\n read: getAuthFieldPermission('username', 'read'),\n update: getAuthFieldPermission('username', 'update'),\n }\n : {\n read: true,\n update: true,\n }\n\n const showEmailField =\n (!loginWithUsername || loginWithUsername?.requireEmail || loginWithUsername?.allowEmailLogin) &&\n emailPermissions.read\n\n const showUsernameField = Boolean(loginWithUsername) && usernamePermissions.read\n\n if (showEmailField || showUsernameField) {\n return (\n <div className={[baseClass, className && className].filter(Boolean).join(' ')}>\n {showEmailField ? (\n <FieldPathContext value=\"email\">\n <EmailField\n field={{\n name: 'email',\n admin: {\n autoComplete: 'off',\n },\n label: t('general:email'),\n required:\n !loginWithUsername || (loginWithUsername && loginWithUsername.requireEmail),\n }}\n path=\"email\"\n readOnly={readOnly || !emailPermissions.update}\n schemaPath=\"email\"\n validate={email}\n />\n </FieldPathContext>\n ) : null}\n {showUsernameField && (\n <FieldPathContext value=\"username\">\n <TextField\n field={{\n name: 'username',\n admin: {\n autoComplete: 'off',\n },\n label: t('authentication:username'),\n required: loginWithUsername && loginWithUsername.requireUsername,\n }}\n path=\"username\"\n readOnly={readOnly || !usernamePermissions.update}\n schemaPath=\"username\"\n validate={username}\n />\n </FieldPathContext>\n )}\n </div>\n )\n }\n}\n"],"names":["email","getFieldPermissions","username","EmailField","TextField","FieldPathContext","baseClass","EmailAndUsernameFields","props","className","loginWithUsername","operation","operationFromProps","permissions","readOnly","t","getAuthFieldPermission","fieldName","permissionsResult","field","name","type","parentName","hasEmailFieldOverride","hasUsernameFieldOverride","emailPermissions","read","update","usernamePermissions","showEmailField","requireEmail","allowEmailLogin","showUsernameField","Boolean","div","filter","join","value","admin","autoComplete","label","required","path","schemaPath","validate","requireUsername"],"mappings":"AAAA;AAKA,SAASA,KAAK,EAAEC,mBAAmB,EAAEC,QAAQ,QAAQ,iBAAgB;AAGrE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,6BAA4B;AACtD,OAAO,eAAc;AACrB,SAASC,gBAAgB,QAAQ,sCAAqC;AAEtE,MAAMC,YAAY;AAclB,OAAO,SAASC,uBAAuBC,KAAwC;IAC7E,MAAM,EACJC,SAAS,EACTC,iBAAiB,EACjBC,WAAWC,kBAAkB,EAC7BC,WAAW,EACXC,QAAQ,EACRC,CAAC,EACF,GAAGP;IAEJ,SAASQ,uBAAuBC,SAAiB,EAAEN,SAA4B;QAC7E,MAAMO,oBAAoBjB,oBAAoB;YAC5CkB,OAAO;gBAAEC,MAAMH;gBAAWI,MAAM;YAAO;YACvCV,WAAWC,uBAAuB,WAAW,WAAWD;YACxDW,YAAY;YACZT;QACF;QACA,OAAOK,kBAAkBP,SAAS;IACpC;IAEA,MAAMY,wBACJ,OAAOV,gBAAgB,YAAY,WAAWA,eAAeA,YAAYb,KAAK;IAChF,MAAMwB,2BACJ,OAAOX,gBAAgB,YAAY,cAAcA,eAAeA,YAAYX,QAAQ;IAEtF,MAAMuB,mBAAmBF,wBACrB;QACEG,MAAMV,uBAAuB,SAAS;QACtCW,QAAQX,uBAAuB,SAAS;IAC1C,IACA;QACEU,MAAM;QACNC,QAAQ;IACV;IAEJ,MAAMC,sBAAsBJ,2BACxB;QACEE,MAAMV,uBAAuB,YAAY;QACzCW,QAAQX,uBAAuB,YAAY;IAC7C,IACA;QACEU,MAAM;QACNC,QAAQ;IACV;IAEJ,MAAME,iBACJ,AAAC,CAAA,CAACnB,qBAAqBA,mBAAmBoB,gBAAgBpB,mBAAmBqB,eAAc,KAC3FN,iBAAiBC,IAAI;IAEvB,MAAMM,oBAAoBC,QAAQvB,sBAAsBkB,oBAAoBF,IAAI;IAEhF,IAAIG,kBAAkBG,mBAAmB;QACvC,QACGE,IAAIzB,WAAW;YAACH;YAAWG,aAAaA;SAAU,CAAC0B,MAAM,CAACF,SAASG,IAAI,CAAC,MAAM;QAC7E,CAACP,kBACExB,iBAAiBgC,MAAM,QAAQ;YAC9B,CAAClC,WACCgB,OAAO;YACLC,MAAM;YACNkB,OAAO;gBACLC,cAAc;YAChB;YACAC,OAAOzB,EAAE;YACT0B,UACE,CAAC/B,qBAAsBA,qBAAqBA,kBAAkBoB,YAAY;QAC9E,GACAY,KAAK,QACL5B,UAAUA,YAAY,CAACW,iBAAiBE,MAAM,EAC9CgB,WAAW,QACXC,UAAU5C,QACV;UACJ,EAAEK,oBACA,KAAK;QACT,CAAC2B,sBACE3B,iBAAiBgC,MAAM,WAAW;YACjC,CAACjC,UACCe,OAAO;YACLC,MAAM;YACNkB,OAAO;gBACLC,cAAc;YAChB;YACAC,OAAOzB,EAAE;YACT0B,UAAU/B,qBAAqBA,kBAAkBmC,eAAe;QAClE,GACAH,KAAK,WACL5B,UAAUA,YAAY,CAACc,oBAAoBD,MAAM,EACjDgB,WAAW,WACXC,UAAU1C,WACV;UACJ,EAAEG,kBACF;MACJ,EAAE6B;IAEN;AACF"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
3
|
-
import React from 'react';
|
|
4
2
|
import './index.scss';
|
|
5
3
|
const baseClass = 'error-pill';
|
|
6
4
|
export const ErrorPill = (props)=>{
|
|
@@ -14,31 +12,12 @@ export const ErrorPill = (props)=>{
|
|
|
14
12
|
if (count === 0) {
|
|
15
13
|
return null;
|
|
16
14
|
}
|
|
17
|
-
return
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
className: `${baseClass}__count`,
|
|
24
|
-
children: count
|
|
25
|
-
}, void 0, false, {
|
|
26
|
-
fileName: "src/elements/ErrorPill/index.tsx",
|
|
27
|
-
lineNumber: 32,
|
|
28
|
-
columnNumber: 9
|
|
29
|
-
}, this),
|
|
30
|
-
withMessage && ` ${count > 1 ? i18n.t('general:errors') : i18n.t('general:error')}`
|
|
31
|
-
]
|
|
32
|
-
}, void 0, true, {
|
|
33
|
-
fileName: "src/elements/ErrorPill/index.tsx",
|
|
34
|
-
lineNumber: 31,
|
|
35
|
-
columnNumber: 7
|
|
36
|
-
}, this)
|
|
37
|
-
}, void 0, false, {
|
|
38
|
-
fileName: "src/elements/ErrorPill/index.tsx",
|
|
39
|
-
lineNumber: 30,
|
|
40
|
-
columnNumber: 5
|
|
41
|
-
}, this);
|
|
15
|
+
return <div className={classes}>
|
|
16
|
+
<div className={`${baseClass}__content`}>
|
|
17
|
+
<span className={`${baseClass}__count`}>{count}</span>
|
|
18
|
+
{withMessage && ` ${count > 1 ? i18n.t('general:errors') : i18n.t('general:error')}`}
|
|
19
|
+
</div>
|
|
20
|
+
</div>;
|
|
42
21
|
};
|
|
43
22
|
|
|
44
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ErrorPill/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'error-pill'\n\nexport type ErrorPillProps = {\n className?: string\n count: number\n i18n: I18nClient\n withMessage?: boolean\n}\n\nexport const ErrorPill: React.FC<ErrorPillProps> = (props) => {\n const { className, count, i18n, withMessage } = props\n const lessThan3Chars = !withMessage && count < 99\n\n const classes = [baseClass, lessThan3Chars && `${baseClass}--fixed-width`, className && className]\n .filter(Boolean)\n .join(' ')\n\n if (count === 0) {\n return null\n }\n\n return (\n <div className={classes}>\n <div className={`${baseClass}__content`}>\n <span className={`${baseClass}__count`}>{count}</span>\n {withMessage && ` ${count > 1 ? i18n.t('general:errors') : i18n.t('general:error')}`}\n </div>\n </div>\n )\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ErrorPill/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'error-pill'\n\nexport type ErrorPillProps = {\n className?: string\n count: number\n i18n: I18nClient\n withMessage?: boolean\n}\n\nexport const ErrorPill: React.FC<ErrorPillProps> = (props) => {\n const { className, count, i18n, withMessage } = props\n const lessThan3Chars = !withMessage && count < 99\n\n const classes = [baseClass, lessThan3Chars && `${baseClass}--fixed-width`, className && className]\n .filter(Boolean)\n .join(' ')\n\n if (count === 0) {\n return null\n }\n\n return (\n <div className={classes}>\n <div className={`${baseClass}__content`}>\n <span className={`${baseClass}__count`}>{count}</span>\n {withMessage && ` ${count > 1 ? i18n.t('general:errors') : i18n.t('general:error')}`}\n </div>\n </div>\n )\n}\n"],"names":["baseClass","ErrorPill","props","className","count","i18n","withMessage","lessThan3Chars","classes","filter","Boolean","join","div","span","t"],"mappings":"AAAA;AAKA,OAAO,eAAc;AAErB,MAAMA,YAAY;AASlB,OAAO,MAAMC,YAAsC,CAACC;IAClD,MAAM,EAAEC,SAAS,EAAEC,KAAK,EAAEC,IAAI,EAAEC,WAAW,EAAE,GAAGJ;IAChD,MAAMK,iBAAiB,CAACD,eAAeF,QAAQ;IAE/C,MAAMI,UAAU;QAACR;QAAWO,kBAAkB,GAAGP,UAAU,aAAa,CAAC;QAAEG,aAAaA;KAAU,CAC/FM,MAAM,CAACC,SACPC,IAAI,CAAC;IAER,IAAIP,UAAU,GAAG;QACf,OAAO;IACT;IAEA,QACGQ,IAAIT,WAAWK,SAAS;MACvB,CAACI,IAAIT,WAAW,GAAGH,UAAU,SAAS,CAAC,EAAE;QACvC,CAACa,KAAKV,WAAW,GAAGH,UAAU,OAAO,CAAC,GAAGI,QAAQS,KAAK;QACtD,CAACP,eAAe,CAAC,CAAC,EAAEF,QAAQ,IAAIC,KAAKS,CAAC,CAAC,oBAAoBT,KAAKS,CAAC,CAAC,kBAAkB,CAAC;MACvF,EAAEF,IAAI;IACR,EAAEA;AAEN,EAAC"}
|
|
@@ -1,56 +1,26 @@
|
|
|
1
|
-
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
2
1
|
import './index.scss';
|
|
3
2
|
import { getTranslation } from '@payloadcms/translations';
|
|
4
3
|
import { FieldDiffLabel } from '../FieldDiffLabel/index.js';
|
|
5
4
|
const baseClass = 'field-diff';
|
|
6
5
|
export const FieldDiffContainer = (args)=>{
|
|
7
6
|
const { className, From, i18n, label: { label, locale }, nestingLevel = 0, To } = args;
|
|
8
|
-
return
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
columnNumber: 20
|
|
26
|
-
}, this),
|
|
27
|
-
typeof label !== 'function' && getTranslation(label || '', i18n)
|
|
28
|
-
]
|
|
29
|
-
}, void 0, true, {
|
|
30
|
-
fileName: "src/elements/FieldDiffContainer/index.tsx",
|
|
31
|
-
lineNumber: 45,
|
|
32
|
-
columnNumber: 7
|
|
33
|
-
}, this),
|
|
34
|
-
/*#__PURE__*/ _jsxDEV("div", {
|
|
35
|
-
className: `${baseClass}-content`,
|
|
36
|
-
style: nestingLevel ? {
|
|
37
|
-
gridTemplateColumns: `calc(var(--left-offset) - calc(var(--base)*0.5) ) calc(50% - calc(var(--base)*0.5) + calc(50% - var(--left-offset)))`
|
|
38
|
-
} : undefined,
|
|
39
|
-
children: [
|
|
40
|
-
From,
|
|
41
|
-
To
|
|
42
|
-
]
|
|
43
|
-
}, void 0, true, {
|
|
44
|
-
fileName: "src/elements/FieldDiffContainer/index.tsx",
|
|
45
|
-
lineNumber: 49,
|
|
46
|
-
columnNumber: 7
|
|
47
|
-
}, this)
|
|
48
|
-
]
|
|
49
|
-
}, void 0, true, {
|
|
50
|
-
fileName: "src/elements/FieldDiffContainer/index.tsx",
|
|
51
|
-
lineNumber: 32,
|
|
52
|
-
columnNumber: 5
|
|
53
|
-
}, this);
|
|
7
|
+
return <div className={`${baseClass}-container${className ? ` ${className}` : ''} nested-level-${nestingLevel}`} style={nestingLevel ? {
|
|
8
|
+
// Need to use % instead of fr, as calc() doesn't work with fr when this is used in gridTemplateColumns
|
|
9
|
+
'--left-offset': `calc(50% - (${nestingLevel} * calc( calc(var(--base)* 0.5) - 2.5px )))`
|
|
10
|
+
} : {
|
|
11
|
+
'--left-offset': '50%'
|
|
12
|
+
}}>
|
|
13
|
+
<FieldDiffLabel>
|
|
14
|
+
{locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}
|
|
15
|
+
{typeof label !== 'function' && getTranslation(label || '', i18n)}
|
|
16
|
+
</FieldDiffLabel>
|
|
17
|
+
<div className={`${baseClass}-content`} style={nestingLevel ? {
|
|
18
|
+
gridTemplateColumns: `calc(var(--left-offset) - calc(var(--base)*0.5) ) calc(50% - calc(var(--base)*0.5) + calc(50% - var(--left-offset)))`
|
|
19
|
+
} : undefined}>
|
|
20
|
+
{From}
|
|
21
|
+
{To}
|
|
22
|
+
</div>
|
|
23
|
+
</div>;
|
|
54
24
|
};
|
|
55
25
|
|
|
56
26
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/FieldDiffContainer/index.tsx"],"sourcesContent":["import type { LabelFunction, StaticLabel } from 'payload'\n\nimport './index.scss'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\n\nimport { FieldDiffLabel } from '../FieldDiffLabel/index.js'\n\nconst baseClass = 'field-diff'\n\nexport const FieldDiffContainer: React.FC<{\n className?: string\n From: React.ReactNode\n i18n: I18nClient\n label: {\n label?: false | LabelFunction | StaticLabel\n locale?: string\n }\n nestingLevel?: number\n To: React.ReactNode\n}> = (args) => {\n const {\n className,\n From,\n i18n,\n label: { label, locale },\n nestingLevel = 0,\n To,\n } = args\n\n return (\n <div\n className={`${baseClass}-container${className ? ` ${className}` : ''} nested-level-${nestingLevel}`}\n style={\n nestingLevel\n ? ({\n // Need to use % instead of fr, as calc() doesn't work with fr when this is used in gridTemplateColumns\n '--left-offset': `calc(50% - (${nestingLevel} * calc( calc(var(--base)* 0.5) - 2.5px )))`,\n } as React.CSSProperties)\n : ({\n '--left-offset': '50%',\n } as React.CSSProperties)\n }\n >\n <FieldDiffLabel>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {typeof label !== 'function' && getTranslation(label || '', i18n)}\n </FieldDiffLabel>\n <div\n className={`${baseClass}-content`}\n style={\n nestingLevel\n ? {\n gridTemplateColumns: `calc(var(--left-offset) - calc(var(--base)*0.5) ) calc(50% - calc(var(--base)*0.5) + calc(50% - var(--left-offset)))`,\n }\n : undefined\n }\n >\n {From}\n {To}\n </div>\n </div>\n )\n}\n"],"names":["getTranslation","FieldDiffLabel","baseClass","FieldDiffContainer","args","className","From","i18n","label","locale","nestingLevel","To","div","style","span","gridTemplateColumns","undefined"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/FieldDiffContainer/index.tsx"],"sourcesContent":["import type { LabelFunction, StaticLabel } from 'payload'\n\nimport './index.scss'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\n\nimport { FieldDiffLabel } from '../FieldDiffLabel/index.js'\n\nconst baseClass = 'field-diff'\n\nexport const FieldDiffContainer: React.FC<{\n className?: string\n From: React.ReactNode\n i18n: I18nClient\n label: {\n label?: false | LabelFunction | StaticLabel\n locale?: string\n }\n nestingLevel?: number\n To: React.ReactNode\n}> = (args) => {\n const {\n className,\n From,\n i18n,\n label: { label, locale },\n nestingLevel = 0,\n To,\n } = args\n\n return (\n <div\n className={`${baseClass}-container${className ? ` ${className}` : ''} nested-level-${nestingLevel}`}\n style={\n nestingLevel\n ? ({\n // Need to use % instead of fr, as calc() doesn't work with fr when this is used in gridTemplateColumns\n '--left-offset': `calc(50% - (${nestingLevel} * calc( calc(var(--base)* 0.5) - 2.5px )))`,\n } as React.CSSProperties)\n : ({\n '--left-offset': '50%',\n } as React.CSSProperties)\n }\n >\n <FieldDiffLabel>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {typeof label !== 'function' && getTranslation(label || '', i18n)}\n </FieldDiffLabel>\n <div\n className={`${baseClass}-content`}\n style={\n nestingLevel\n ? {\n gridTemplateColumns: `calc(var(--left-offset) - calc(var(--base)*0.5) ) calc(50% - calc(var(--base)*0.5) + calc(50% - var(--left-offset)))`,\n }\n : undefined\n }\n >\n {From}\n {To}\n </div>\n </div>\n )\n}\n"],"names":["getTranslation","FieldDiffLabel","baseClass","FieldDiffContainer","args","className","From","i18n","label","locale","nestingLevel","To","div","style","span","gridTemplateColumns","undefined"],"mappings":"AAEA,OAAO,eAAc;AAErB,SAASA,cAAc,QAAyB,2BAA0B;AAE1E,SAASC,cAAc,QAAQ,6BAA4B;AAE3D,MAAMC,YAAY;AAElB,OAAO,MAAMC,qBAUR,CAACC;IACJ,MAAM,EACJC,SAAS,EACTC,IAAI,EACJC,IAAI,EACJC,OAAO,EAAEA,KAAK,EAAEC,MAAM,EAAE,EACxBC,eAAe,CAAC,EAChBC,EAAE,EACH,GAAGP;IAEJ,QACGQ,IACCP,WAAW,GAAGH,UAAU,UAAU,EAAEG,YAAY,CAAC,CAAC,EAAEA,WAAW,GAAG,GAAG,cAAc,EAAEK,cAAc,EACnGG,OACEH,eACK;QACC,uGAAuG;QACvG,iBAAiB,CAAC,aAAa,EAAEA,aAAa,4CAA4C,CAAC;IAC7F,IACC;QACC,iBAAiB;IACnB,GAEP;MACC,CAACT,eAAe;QACd,CAACQ,WAAWK,KAAKT,WAAW,GAAGH,UAAU,cAAc,CAAC,GAAGO,SAASK,MAAM;QAC1E,CAAC,OAAON,UAAU,cAAcR,eAAeQ,SAAS,IAAID,MAAM;MACpE,EAAEN,eAAe;MACjB,CAACW,IACCP,WAAW,GAAGH,UAAU,QAAQ,CAAC,EACjCW,OACEH,eACI;QACEK,qBAAqB,CAAC,wHAAwH,CAAC;IACjJ,IACAC,WAEP;QACC,CAACV,KAAK;QACN,CAACK,GAAG;MACN,EAAEC,IAAI;IACR,EAAEA;AAEN,EAAC"}
|
|
@@ -1,14 +1,5 @@
|
|
|
1
|
-
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
2
|
-
import React from 'react';
|
|
3
1
|
import './index.scss';
|
|
4
2
|
const baseClass = 'field-diff-label';
|
|
5
|
-
export const FieldDiffLabel = ({ children })
|
|
6
|
-
className: baseClass,
|
|
7
|
-
children: children
|
|
8
|
-
}, void 0, false, {
|
|
9
|
-
fileName: "src/elements/FieldDiffLabel/index.tsx",
|
|
10
|
-
lineNumber: 8,
|
|
11
|
-
columnNumber: 3
|
|
12
|
-
}, this);
|
|
3
|
+
export const FieldDiffLabel = ({ children })=><div className={baseClass}>{children}</div>;
|
|
13
4
|
|
|
14
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/FieldDiffLabel/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'field-diff-label'\n\nexport const FieldDiffLabel: React.FC<{ children?: React.ReactNode }> = ({ children }) => (\n <div className={baseClass}>{children}</div>\n)\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/FieldDiffLabel/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'field-diff-label'\n\nexport const FieldDiffLabel: React.FC<{ children?: React.ReactNode }> = ({ children }) => (\n <div className={baseClass}>{children}</div>\n)\n"],"names":["baseClass","FieldDiffLabel","children","div","className"],"mappings":"AAEA,OAAO,eAAc;AAErB,MAAMA,YAAY;AAElB,OAAO,MAAMC,iBAA2D,CAAC,EAAEC,QAAQ,EAAE,IAClFC,IAAIC,WAAWJ,YAAYE,WAAWC,KACxC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
3
|
-
import React, { useState } from 'react';
|
|
2
|
+
import { useState } from 'react';
|
|
4
3
|
import { FieldLabel } from '../../fields/FieldLabel/index.js';
|
|
5
4
|
import { useForm } from '../../forms/Form/context.js';
|
|
6
5
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
@@ -17,41 +16,19 @@ export const FieldSelect = ({ fields, onChange, permissions })=>{
|
|
|
17
16
|
formState: getFields(),
|
|
18
17
|
permissions
|
|
19
18
|
}));
|
|
20
|
-
return
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return String(option.value.path);
|
|
34
|
-
}
|
|
35
|
-
return String(option.value);
|
|
36
|
-
},
|
|
37
|
-
isMulti: true,
|
|
38
|
-
onChange: (selected)=>onChange({
|
|
39
|
-
dispatchFields,
|
|
40
|
-
formState: getFields(),
|
|
41
|
-
selected
|
|
42
|
-
}),
|
|
43
|
-
options: options
|
|
44
|
-
}, void 0, false, {
|
|
45
|
-
fileName: "src/elements/FieldSelect/index.tsx",
|
|
46
|
-
lineNumber: 54,
|
|
47
|
-
columnNumber: 7
|
|
48
|
-
}, this)
|
|
49
|
-
]
|
|
50
|
-
}, void 0, true, {
|
|
51
|
-
fileName: "src/elements/FieldSelect/index.tsx",
|
|
52
|
-
lineNumber: 52,
|
|
53
|
-
columnNumber: 5
|
|
54
|
-
}, this);
|
|
19
|
+
return <div className={baseClass}>
|
|
20
|
+
<FieldLabel label={t('fields:selectFieldsToEdit')}/>
|
|
21
|
+
<ReactSelect getOptionValue={(option)=>{
|
|
22
|
+
if (typeof option.value === 'object' && 'path' in option.value) {
|
|
23
|
+
return String(option.value.path);
|
|
24
|
+
}
|
|
25
|
+
return String(option.value);
|
|
26
|
+
}} isMulti onChange={(selected)=>onChange({
|
|
27
|
+
dispatchFields,
|
|
28
|
+
formState: getFields(),
|
|
29
|
+
selected
|
|
30
|
+
})} options={options}/>
|
|
31
|
+
</div>;
|
|
55
32
|
};
|
|
56
33
|
|
|
57
34
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/FieldSelect/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, FormState, SanitizedFieldPermissions } from 'payload'\n\nimport React, { useState } from 'react'\n\nimport type { FieldAction } from '../../forms/Form/types.js'\nimport type { FieldOption } from './reduceFieldOptions.js'\n\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { filterOutUploadFields } from '../../utilities/filterOutUploadFields.js'\nimport { ReactSelect } from '../ReactSelect/index.js'\nimport { reduceFieldOptions } from './reduceFieldOptions.js'\nimport './index.scss'\n\nconst baseClass = 'field-select'\n\nexport type OnFieldSelect = ({\n dispatchFields,\n formState,\n selected,\n}: {\n dispatchFields: React.Dispatch<FieldAction>\n formState: FormState\n selected: FieldOption[]\n}) => void\n\nexport type FieldSelectProps = {\n readonly fields: ClientField[]\n readonly onChange: OnFieldSelect\n readonly permissions:\n | {\n [fieldName: string]: SanitizedFieldPermissions\n }\n | SanitizedFieldPermissions\n}\n\nexport const FieldSelect: React.FC<FieldSelectProps> = ({ fields, onChange, permissions }) => {\n const { t } = useTranslation()\n const { dispatchFields, getFields } = useForm()\n\n const [options] = useState<FieldOption[]>(() =>\n reduceFieldOptions({\n fields: filterOutUploadFields(fields),\n formState: getFields(),\n permissions,\n }),\n )\n\n return (\n <div className={baseClass}>\n <FieldLabel label={t('fields:selectFieldsToEdit')} />\n <ReactSelect\n getOptionValue={(option) => {\n if (typeof option.value === 'object' && 'path' in option.value) {\n return String(option.value.path)\n }\n return String(option.value)\n }}\n isMulti\n onChange={(selected: FieldOption[]) =>\n onChange({ dispatchFields, formState: getFields(), selected })\n }\n options={options}\n />\n </div>\n )\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/FieldSelect/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, FormState, SanitizedFieldPermissions } from 'payload'\n\nimport React, { useState } from 'react'\n\nimport type { FieldAction } from '../../forms/Form/types.js'\nimport type { FieldOption } from './reduceFieldOptions.js'\n\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { filterOutUploadFields } from '../../utilities/filterOutUploadFields.js'\nimport { ReactSelect } from '../ReactSelect/index.js'\nimport { reduceFieldOptions } from './reduceFieldOptions.js'\nimport './index.scss'\n\nconst baseClass = 'field-select'\n\nexport type OnFieldSelect = ({\n dispatchFields,\n formState,\n selected,\n}: {\n dispatchFields: React.Dispatch<FieldAction>\n formState: FormState\n selected: FieldOption[]\n}) => void\n\nexport type FieldSelectProps = {\n readonly fields: ClientField[]\n readonly onChange: OnFieldSelect\n readonly permissions:\n | {\n [fieldName: string]: SanitizedFieldPermissions\n }\n | SanitizedFieldPermissions\n}\n\nexport const FieldSelect: React.FC<FieldSelectProps> = ({ fields, onChange, permissions }) => {\n const { t } = useTranslation()\n const { dispatchFields, getFields } = useForm()\n\n const [options] = useState<FieldOption[]>(() =>\n reduceFieldOptions({\n fields: filterOutUploadFields(fields),\n formState: getFields(),\n permissions,\n }),\n )\n\n return (\n <div className={baseClass}>\n <FieldLabel label={t('fields:selectFieldsToEdit')} />\n <ReactSelect\n getOptionValue={(option) => {\n if (typeof option.value === 'object' && 'path' in option.value) {\n return String(option.value.path)\n }\n return String(option.value)\n }}\n isMulti\n onChange={(selected: FieldOption[]) =>\n onChange({ dispatchFields, formState: getFields(), selected })\n }\n options={options}\n />\n </div>\n )\n}\n"],"names":["useState","FieldLabel","useForm","useTranslation","filterOutUploadFields","ReactSelect","reduceFieldOptions","baseClass","FieldSelect","fields","onChange","permissions","t","dispatchFields","getFields","options","formState","div","className","label","getOptionValue","option","value","String","path","isMulti","selected"],"mappings":"AAAA;AAGA,SAAgBA,QAAQ,QAAQ,QAAO;AAKvC,SAASC,UAAU,QAAQ,mCAAkC;AAC7D,SAASC,OAAO,QAAQ,8BAA6B;AACrD,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,qBAAqB,QAAQ,2CAA0C;AAChF,SAASC,WAAW,QAAQ,0BAAyB;AACrD,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,OAAO,eAAc;AAErB,MAAMC,YAAY;AAsBlB,OAAO,MAAMC,cAA0C,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,WAAW,EAAE;IACvF,MAAM,EAAEC,CAAC,EAAE,GAAGT;IACd,MAAM,EAAEU,cAAc,EAAEC,SAAS,EAAE,GAAGZ;IAEtC,MAAM,CAACa,QAAQ,GAAGf,SAAwB,IACxCM,mBAAmB;YACjBG,QAAQL,sBAAsBK;YAC9BO,WAAWF;YACXH;QACF;IAGF,QACGM,IAAIC,WAAWX,WAAW;MACzB,CAACN,WAAWkB,OAAOP,EAAE,+BAAgC;MACrD,CAACP,YACCe,gBAAgB,CAACC;QACf,IAAI,OAAOA,OAAOC,KAAK,KAAK,YAAY,UAAUD,OAAOC,KAAK,EAAE;YAC9D,OAAOC,OAAOF,OAAOC,KAAK,CAACE,IAAI;QACjC;QACA,OAAOD,OAAOF,OAAOC,KAAK;IAC5B,GACAG,QACAf,UAAU,CAACgB,WACThB,SAAS;YAAEG;YAAgBG,WAAWF;YAAaY;QAAS,IAE9DX,SAASA,UACT;IACJ,EAAEE;AAEN,EAAC"}
|