@payloadcms/ui 3.0.0-beta.34 → 3.0.0-beta.36
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/AppHeader/index.js +64 -39
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/ArrayAction/index.js +75 -41
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/Autosave/index.js +15 -8
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/Banner/index.js +16 -5
- package/dist/elements/Banner/index.js.map +1 -1
- package/dist/elements/Button/index.js +53 -31
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Card/index.js +23 -15
- package/dist/elements/Card/index.js.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +3 -2
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/CodeEditor/index.js +8 -6
- package/dist/elements/CodeEditor/index.js.map +1 -1
- package/dist/elements/Collapsible/index.js +63 -38
- package/dist/elements/Collapsible/index.js.map +1 -1
- package/dist/elements/Collapsible/provider.js +5 -3
- package/dist/elements/Collapsible/provider.js.map +1 -1
- package/dist/elements/ColumnSelector/index.js +24 -22
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/CopyToClipboard/index.js +21 -11
- package/dist/elements/CopyToClipboard/index.js.map +1 -1
- package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +29 -17
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DatePicker/index.js +7 -3
- package/dist/elements/DatePicker/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.js +57 -32
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.js +43 -23
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.d.ts +1 -0
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +180 -101
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +30 -24
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/index.js +14 -8
- package/dist/elements/DocumentDrawer/index.js.map +1 -1
- package/dist/elements/DocumentFields/index.js +52 -34
- package/dist/elements/DocumentFields/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +14 -11
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js +16 -5
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/index.js +64 -56
- package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +5 -3
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
- package/dist/elements/DocumentHeader/index.js +21 -11
- package/dist/elements/DocumentHeader/index.js.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +14 -11
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
- package/dist/elements/DraggableSortable/index.js +12 -8
- package/dist/elements/DraggableSortable/index.js.map +1 -1
- package/dist/elements/Drawer/index.js +58 -35
- package/dist/elements/Drawer/index.js.map +1 -1
- package/dist/elements/Dropzone/index.js +30 -18
- package/dist/elements/Dropzone/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.js +37 -17
- package/dist/elements/DuplicateDocument/index.js.map +1 -1
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js +112 -76
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditUpload/index.d.ts +2 -4
- package/dist/elements/EditUpload/index.d.ts.map +1 -1
- package/dist/elements/EditUpload/index.js +247 -162
- package/dist/elements/EditUpload/index.js.map +1 -1
- package/dist/elements/ErrorPill/index.js +14 -7
- package/dist/elements/ErrorPill/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.d.ts.map +1 -1
- package/dist/elements/FieldSelect/index.js +42 -25
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/FileDetails/FileMeta/index.js +54 -20
- package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
- package/dist/elements/FileDetails/index.js +42 -30
- package/dist/elements/FileDetails/index.js.map +1 -1
- package/dist/elements/GenerateConfirmation/index.js +48 -26
- package/dist/elements/GenerateConfirmation/index.js.map +1 -1
- package/dist/elements/Gutter/index.js +5 -3
- package/dist/elements/Gutter/index.js.map +1 -1
- package/dist/elements/Hamburger/index.js +48 -27
- package/dist/elements/Hamburger/index.js.map +1 -1
- package/dist/elements/IDLabel/index.js +9 -3
- package/dist/elements/IDLabel/index.js.map +1 -1
- package/dist/elements/ListControls/index.js +94 -62
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +97 -67
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/index.js +14 -8
- package/dist/elements/ListDrawer/index.js.map +1 -1
- package/dist/elements/ListSelection/index.js +31 -17
- package/dist/elements/ListSelection/index.js.map +1 -1
- package/dist/elements/Loading/index.js +31 -18
- package/dist/elements/Loading/index.js.map +1 -1
- package/dist/elements/LoadingOverlay/index.js +13 -8
- package/dist/elements/LoadingOverlay/index.js.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.js +19 -9
- package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
- package/dist/elements/Localizer/index.js +31 -24
- package/dist/elements/Localizer/index.js.map +1 -1
- package/dist/elements/Logout/index.js +9 -5
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/Nav/NavHamburger/index.js +7 -5
- package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
- package/dist/elements/Nav/NavToggler/index.js +5 -3
- package/dist/elements/Nav/NavToggler/index.js.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.js +9 -6
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
- package/dist/elements/Nav/context.d.ts +1 -1
- package/dist/elements/Nav/context.d.ts.map +1 -1
- package/dist/elements/Nav/context.js +5 -3
- package/dist/elements/Nav/context.js.map +1 -1
- package/dist/elements/Nav/index.client.js +43 -35
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.js +31 -19
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/elements/NavGroup/index.js +39 -24
- package/dist/elements/NavGroup/index.js.map +1 -1
- package/dist/elements/Pagination/ClickableArrow/index.js +5 -3
- package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
- package/dist/elements/Pagination/Page/index.js +5 -3
- package/dist/elements/Pagination/Page/index.js.map +1 -1
- package/dist/elements/Pagination/Separator/index.js +5 -3
- package/dist/elements/Pagination/Separator/index.js.map +1 -1
- package/dist/elements/Pagination/index.js +17 -17
- package/dist/elements/Pagination/index.js.map +1 -1
- package/dist/elements/PerPage/index.js +46 -28
- package/dist/elements/PerPage/index.js.map +1 -1
- package/dist/elements/Pill/index.js +25 -12
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +17 -12
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.js +9 -6
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/Popup/index.js +52 -35
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PreviewButton/index.js +6 -4
- package/dist/elements/PreviewButton/index.js.map +1 -1
- package/dist/elements/PreviewSizes/index.js +81 -49
- package/dist/elements/PreviewSizes/index.js.map +1 -1
- package/dist/elements/{Publish → PublishButton}/index.d.ts +1 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -0
- package/dist/elements/PublishButton/index.js +40 -0
- package/dist/elements/PublishButton/index.js.map +1 -0
- package/dist/elements/PublishMany/index.js +42 -22
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.js +9 -6
- package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/Control/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/Control/index.js +27 -23
- package/dist/elements/ReactSelect/Control/index.js.map +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.js +7 -5
- package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.js +20 -17
- package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.js +11 -9
- package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.js +14 -8
- package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
- package/dist/elements/ReactSelect/SingleValue/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/SingleValue/index.js +11 -7
- package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/ValueContainer/index.js +7 -3
- package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.js +15 -7
- package/dist/elements/ReactSelect/index.js.map +1 -1
- package/dist/elements/ReactSelect/types.d.ts +1 -1
- package/dist/elements/ReactSelect/types.d.ts.map +1 -1
- package/dist/elements/ReactSelect/types.js.map +1 -1
- package/dist/elements/RenderCustomComponent/index.js +3 -2
- package/dist/elements/RenderCustomComponent/index.js.map +1 -1
- package/dist/elements/RenderTitle/index.js +8 -6
- package/dist/elements/RenderTitle/index.js.map +1 -1
- package/dist/elements/{Save → SaveButton}/index.d.ts +1 -1
- package/dist/elements/SaveButton/index.d.ts.map +1 -0
- package/dist/elements/{Save → SaveButton}/index.js +10 -6
- package/dist/elements/SaveButton/index.js.map +1 -0
- package/dist/elements/{SaveDraft → SaveDraftButton}/index.d.ts +1 -1
- package/dist/elements/SaveDraftButton/index.d.ts.map +1 -0
- package/dist/elements/{SaveDraft → SaveDraftButton}/index.js +10 -6
- package/dist/elements/SaveDraftButton/index.js.map +1 -0
- package/dist/elements/SearchFilter/index.js +14 -9
- package/dist/elements/SearchFilter/index.js.map +1 -1
- package/dist/elements/SelectAll/index.js +2 -1
- package/dist/elements/SelectAll/index.js.map +1 -1
- package/dist/elements/SelectRow/index.js +2 -1
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/ShimmerEffect/index.js +23 -20
- package/dist/elements/ShimmerEffect/index.js.map +1 -1
- package/dist/elements/SortColumn/index.js +43 -31
- package/dist/elements/SortColumn/index.js.map +1 -1
- package/dist/elements/SortComplex/index.js +41 -23
- package/dist/elements/SortComplex/index.js.map +1 -1
- package/dist/elements/Status/index.js +94 -41
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +40 -20
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/StepNav/index.js +63 -41
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.js +4 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +4 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +7 -3
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Code/index.js +7 -3
- package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.js +8 -5
- package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.js +21 -15
- package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js +7 -3
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +40 -21
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js +4 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +4 -1
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +31 -15
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +5 -3
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/Table/TableCellProvider/index.js +5 -3
- package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
- package/dist/elements/Table/index.js +39 -24
- package/dist/elements/Table/index.js.map +1 -1
- package/dist/elements/TableColumns/buildColumnState.js +8 -5
- package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
- package/dist/elements/TableColumns/filterFields.js +1 -1
- package/dist/elements/TableColumns/filterFields.js.map +1 -1
- package/dist/elements/TableColumns/index.js +5 -3
- package/dist/elements/TableColumns/index.js.map +1 -1
- package/dist/elements/Thumbnail/index.js +14 -8
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/ThumbnailCard/index.js +14 -7
- package/dist/elements/ThumbnailCard/index.js.map +1 -1
- package/dist/elements/Tooltip/index.d.ts +5 -1
- package/dist/elements/Tooltip/index.d.ts.map +1 -1
- package/dist/elements/Tooltip/index.js +42 -27
- package/dist/elements/Tooltip/index.js.map +1 -1
- package/dist/elements/Tooltip/index.scss +12 -10
- package/dist/elements/Translation/index.js +19 -16
- package/dist/elements/Translation/index.js.map +1 -1
- package/dist/elements/UnpublishMany/index.js +42 -22
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +114 -82
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/ViewDescription/index.js +6 -4
- package/dist/elements/ViewDescription/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.js +10 -8
- package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.js +2 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +49 -43
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Select/index.js +2 -1
- package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Text/index.js +2 -1
- package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +84 -66
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.js +97 -69
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/elements/WithServerSideProps/index.js +7 -2
- package/dist/elements/WithServerSideProps/index.js.map +1 -1
- package/dist/elements/withMergedProps/index.js +4 -1
- package/dist/elements/withMergedProps/index.js.map +1 -1
- package/dist/fields/Array/ArrayRow.js +53 -47
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +135 -93
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Array/index.scss +0 -4
- package/dist/fields/Blocks/BlockRow.js +62 -53
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js +12 -7
- package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js +36 -28
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/RowActions.js +30 -24
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/SectionTitle/index.js +14 -12
- package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +154 -105
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Blocks/index.scss +0 -4
- package/dist/fields/Checkbox/Input.d.ts +3 -4
- package/dist/fields/Checkbox/Input.d.ts.map +1 -1
- package/dist/fields/Checkbox/Input.js +40 -25
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.d.ts +2 -1
- package/dist/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/fields/Checkbox/index.js +29 -23
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Checkbox/index.scss +0 -4
- package/dist/fields/Code/index.js +34 -18
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Collapsible/index.js +57 -42
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
- package/dist/fields/ConfirmPassword/index.js +28 -17
- package/dist/fields/ConfirmPassword/index.js.map +1 -1
- package/dist/fields/DateTime/index.d.ts.map +1 -1
- package/dist/fields/DateTime/index.js +36 -24
- package/dist/fields/DateTime/index.js.map +1 -1
- package/dist/fields/DateTime/index.scss +0 -6
- package/dist/fields/Email/index.js +37 -21
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/Group/index.js +58 -36
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Group/provider.js +5 -3
- package/dist/fields/Group/provider.js.map +1 -1
- package/dist/fields/HiddenInput/index.js +2 -1
- package/dist/fields/HiddenInput/index.js.map +1 -1
- package/dist/fields/JSON/index.d.ts.map +1 -1
- package/dist/fields/JSON/index.js +40 -19
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Number/index.d.ts.map +1 -1
- package/dist/fields/Number/index.js +75 -55
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/index.d.ts.map +1 -1
- package/dist/fields/Password/index.js +31 -20
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Point/index.js +67 -31
- package/dist/fields/Point/index.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.js +27 -18
- package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.scss +2 -1
- package/dist/fields/RadioGroup/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/index.js +60 -47
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.scss +0 -4
- package/dist/fields/Relationship/AddNew/index.js +67 -44
- package/dist/fields/Relationship/AddNew/index.js.map +1 -1
- package/dist/fields/Relationship/index.d.ts.map +1 -1
- package/dist/fields/Relationship/index.js +119 -100
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +49 -33
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.js +50 -30
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/Row/index.js +23 -19
- package/dist/fields/Row/index.js.map +1 -1
- package/dist/fields/Row/provider.js +5 -3
- package/dist/fields/Row/provider.js.map +1 -1
- package/dist/fields/Select/Input.d.ts +11 -0
- package/dist/fields/Select/Input.d.ts.map +1 -0
- package/dist/fields/Select/Input.js +87 -0
- package/dist/fields/Select/Input.js.map +1 -0
- package/dist/fields/Select/index.d.ts +3 -1
- package/dist/fields/Select/index.d.ts.map +1 -1
- package/dist/fields/Select/index.js +22 -53
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Tabs/Tab/index.js +26 -16
- package/dist/fields/Tabs/Tab/index.js.map +1 -1
- package/dist/fields/Tabs/index.js +47 -31
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Tabs/provider.js +5 -3
- package/dist/fields/Tabs/provider.js.map +1 -1
- package/dist/fields/Text/Input.d.ts.map +1 -1
- package/dist/fields/Text/Input.js +66 -46
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Text/index.js +2 -1
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Textarea/Input.d.ts.map +1 -1
- package/dist/fields/Textarea/Input.js +51 -30
- package/dist/fields/Textarea/Input.js.map +1 -1
- package/dist/fields/Textarea/index.js +2 -1
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +71 -41
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/index.js +2 -1
- package/dist/fields/Upload/index.js.map +1 -1
- package/dist/forms/FieldDescription/index.js +8 -4
- package/dist/forms/FieldDescription/index.js.map +1 -1
- package/dist/forms/FieldError/index.js +10 -5
- package/dist/forms/FieldError/index.js.map +1 -1
- package/dist/forms/FieldError/index.scss +1 -2
- package/dist/forms/FieldLabel/index.js +14 -6
- package/dist/forms/FieldLabel/index.js.map +1 -1
- package/dist/forms/FieldPropsProvider/index.js +5 -3
- package/dist/forms/FieldPropsProvider/index.js.map +1 -1
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +31 -18
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/NullifyField/index.js +8 -5
- package/dist/forms/NullifyField/index.js.map +1 -1
- package/dist/forms/RenderFields/RenderField.js +7 -3
- package/dist/forms/RenderFields/RenderField.js.map +1 -1
- package/dist/forms/RenderFields/index.js +23 -22
- package/dist/forms/RenderFields/index.js.map +1 -1
- package/dist/forms/RenderFields/index.scss +5 -0
- package/dist/forms/RowLabel/Context/index.js +5 -3
- package/dist/forms/RowLabel/Context/index.js.map +1 -1
- package/dist/forms/RowLabel/index.js +9 -6
- package/dist/forms/RowLabel/index.js.map +1 -1
- package/dist/forms/Submit/index.js +12 -9
- package/dist/forms/Submit/index.js.map +1 -1
- package/dist/forms/withCondition/WatchCondition.js +4 -1
- package/dist/forms/withCondition/WatchCondition.js.map +1 -1
- package/dist/forms/withCondition/index.js +7 -3
- package/dist/forms/withCondition/index.js.map +1 -1
- package/dist/graphics/Account/Default/index.js +22 -16
- package/dist/graphics/Account/Default/index.js.map +1 -1
- package/dist/graphics/Account/Gravatar/index.js +2 -1
- package/dist/graphics/Account/Gravatar/index.js.map +1 -1
- package/dist/graphics/Account/index.js +2 -1
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/graphics/DefaultBlockImage/index.js +32 -21
- package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
- package/dist/graphics/ExternalLink/index.js +9 -7
- package/dist/graphics/ExternalLink/index.js.map +1 -1
- package/dist/graphics/File/index.js +20 -14
- package/dist/graphics/File/index.js.map +1 -1
- package/dist/graphics/Icon/index.js +14 -9
- package/dist/graphics/Icon/index.js.map +1 -1
- package/dist/graphics/Logo/index.js +37 -22
- package/dist/graphics/Logo/index.js.map +1 -1
- package/dist/graphics/Search/index.js +23 -18
- package/dist/graphics/Search/index.js.map +1 -1
- package/dist/hooks/useDebouncedCallback.js +1 -1
- package/dist/hooks/useDebouncedCallback.js.map +1 -1
- package/dist/hooks/useDelay.js +1 -1
- package/dist/hooks/useDelay.js.map +1 -1
- package/dist/hooks/useDelayedRender.d.ts.map +1 -1
- package/dist/hooks/useDelayedRender.js +1 -1
- package/dist/hooks/useDelayedRender.js.map +1 -1
- package/dist/hooks/useIntersect.js +1 -1
- package/dist/hooks/useIntersect.js.map +1 -1
- package/dist/icons/Calendar/index.js +34 -27
- package/dist/icons/Calendar/index.js.map +1 -1
- package/dist/icons/Check/index.js +18 -13
- package/dist/icons/Check/index.js.map +1 -1
- package/dist/icons/Chevron/index.js +8 -6
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/CloseMenu/index.js +22 -17
- package/dist/icons/CloseMenu/index.js.map +1 -1
- package/dist/icons/CodeBlock/index.js +14 -9
- package/dist/icons/CodeBlock/index.js.map +1 -1
- package/dist/icons/Copy/index.js +17 -12
- package/dist/icons/Copy/index.js.map +1 -1
- package/dist/icons/DragHandle/index.js +42 -33
- package/dist/icons/DragHandle/index.js.map +1 -1
- package/dist/icons/Edit/index.js +22 -16
- package/dist/icons/Edit/index.js.map +1 -1
- package/dist/icons/Line/index.js +11 -9
- package/dist/icons/Line/index.js.map +1 -1
- package/dist/icons/Link/index.js +14 -9
- package/dist/icons/Link/index.js.map +1 -1
- package/dist/icons/LogOut/index.js +25 -15
- package/dist/icons/LogOut/index.js.map +1 -1
- package/dist/icons/Menu/index.js +27 -21
- package/dist/icons/Menu/index.js.map +1 -1
- package/dist/icons/MinimizeMaximize/index.js +35 -19
- package/dist/icons/MinimizeMaximize/index.js.map +1 -1
- package/dist/icons/More/index.js +24 -18
- package/dist/icons/More/index.js.map +1 -1
- package/dist/icons/Plus/index.js +20 -15
- package/dist/icons/Plus/index.js.map +1 -1
- package/dist/icons/Search/index.js +19 -14
- package/dist/icons/Search/index.js.map +1 -1
- package/dist/icons/Swap/index.js +29 -22
- package/dist/icons/Swap/index.js.map +1 -1
- package/dist/icons/X/index.js +20 -15
- package/dist/icons/X/index.js.map +1 -1
- package/dist/providers/Actions/index.js +5 -3
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/Auth/index.js +5 -3
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/ClientFunction/index.js +8 -5
- package/dist/providers/ClientFunction/index.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/actions.js +3 -2
- package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/collections.js +12 -11
- package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.js +19 -16
- package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.js +7 -6
- package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/index.js +18 -11
- package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
- package/dist/providers/ComponentMap/index.js +5 -3
- package/dist/providers/ComponentMap/index.js.map +1 -1
- package/dist/providers/Config/index.js +5 -3
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/providers/DocumentEvents/index.js +5 -3
- package/dist/providers/DocumentEvents/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +58 -28
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/types.d.ts +2 -1
- package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/types.js.map +1 -1
- package/dist/providers/EditDepth/index.js +5 -3
- package/dist/providers/EditDepth/index.js.map +1 -1
- package/dist/providers/EntityVisibility/index.js +5 -3
- package/dist/providers/EntityVisibility/index.js.map +1 -1
- package/dist/providers/FieldComponents/index.js +5 -3
- package/dist/providers/FieldComponents/index.js.map +1 -1
- package/dist/providers/FormQueryParams/index.js +5 -3
- package/dist/providers/FormQueryParams/index.js.map +1 -1
- package/dist/providers/ListInfo/index.js +5 -3
- package/dist/providers/ListInfo/index.js.map +1 -1
- package/dist/providers/ListQuery/index.js +5 -3
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/Locale/index.js +5 -3
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Operation/index.js +5 -3
- package/dist/providers/Operation/index.js.map +1 -1
- package/dist/providers/Params/index.js +5 -3
- package/dist/providers/Params/index.js.map +1 -1
- package/dist/providers/Preferences/index.js +5 -3
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/Root/index.d.ts +2 -0
- package/dist/providers/Root/index.d.ts.map +1 -1
- package/dist/providers/Root/index.js +75 -28
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/RouteCache/index.js +5 -3
- package/dist/providers/RouteCache/index.js.map +1 -1
- package/dist/providers/SearchParams/index.js +5 -3
- package/dist/providers/SearchParams/index.js.map +1 -1
- package/dist/providers/Selection/index.js +5 -3
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/Theme/index.d.ts +3 -0
- package/dist/providers/Theme/index.d.ts.map +1 -1
- package/dist/providers/Theme/index.js +31 -19
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/providers/Translation/index.js +5 -3
- package/dist/providers/Translation/index.js.map +1 -1
- package/dist/scss/app.scss +0 -6
- package/dist/templates/Default/NavHamburger/index.js +2 -1
- package/dist/templates/Default/NavHamburger/index.js.map +1 -1
- package/dist/templates/Default/Wrapper/index.js +5 -3
- package/dist/templates/Default/Wrapper/index.js.map +1 -1
- package/dist/templates/Default/index.js +43 -26
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/templates/Minimal/index.js +8 -5
- package/dist/templates/Minimal/index.js.map +1 -1
- package/package.json +16 -12
- package/dist/elements/Publish/index.d.ts.map +0 -1
- package/dist/elements/Publish/index.js +0 -87
- package/dist/elements/Publish/index.js.map +0 -1
- package/dist/elements/Save/index.d.ts.map +0 -1
- package/dist/elements/Save/index.js.map +0 -1
- package/dist/elements/SaveDraft/index.d.ts.map +0 -1
- package/dist/elements/SaveDraft/index.js.map +0 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
3
|
import React, { useCallback, useEffect, useState } from 'react';
|
|
3
4
|
import { CodeEditor } from '../../elements/CodeEditor/index.js';
|
|
4
5
|
import { FieldLabel } from '../../forms/FieldLabel/index.js';
|
|
@@ -73,7 +74,7 @@ const JSONFieldComponent = (props)=>{
|
|
|
73
74
|
value,
|
|
74
75
|
hasLoadedValue
|
|
75
76
|
]);
|
|
76
|
-
return /*#__PURE__*/
|
|
77
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
77
78
|
className: [
|
|
78
79
|
fieldBaseClass,
|
|
79
80
|
baseClass,
|
|
@@ -84,24 +85,44 @@ const JSONFieldComponent = (props)=>{
|
|
|
84
85
|
style: {
|
|
85
86
|
...style,
|
|
86
87
|
width
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
88
|
+
},
|
|
89
|
+
children: [
|
|
90
|
+
/*#__PURE__*/ _jsx(FieldLabel, {
|
|
91
|
+
CustomLabel: CustomLabel,
|
|
92
|
+
label: label,
|
|
93
|
+
required: required,
|
|
94
|
+
...labelProps || {}
|
|
95
|
+
}),
|
|
96
|
+
/*#__PURE__*/ _jsx(FieldError, {
|
|
97
|
+
CustomError: CustomError,
|
|
98
|
+
path: path,
|
|
99
|
+
...errorProps || {}
|
|
100
|
+
}),
|
|
101
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
102
|
+
className: `${fieldBaseClass}__wrap`,
|
|
103
|
+
children: [
|
|
104
|
+
/*#__PURE__*/ _jsx(FieldError, {
|
|
105
|
+
CustomError: CustomError,
|
|
106
|
+
path: path,
|
|
107
|
+
...errorProps || {}
|
|
108
|
+
}),
|
|
109
|
+
BeforeInput,
|
|
110
|
+
/*#__PURE__*/ _jsx(CodeEditor, {
|
|
111
|
+
defaultLanguage: "json",
|
|
112
|
+
onChange: handleChange,
|
|
113
|
+
onMount: handleMount,
|
|
114
|
+
options: editorOptions,
|
|
115
|
+
readOnly: readOnly,
|
|
116
|
+
value: stringValue
|
|
117
|
+
}),
|
|
118
|
+
AfterInput
|
|
119
|
+
]
|
|
120
|
+
}),
|
|
121
|
+
CustomDescription !== undefined ? CustomDescription : /*#__PURE__*/ _jsx(FieldDescription, {
|
|
122
|
+
...descriptionProps || {}
|
|
123
|
+
})
|
|
124
|
+
]
|
|
125
|
+
});
|
|
105
126
|
};
|
|
106
127
|
export const JSONField = withCondition(JSONFieldComponent);
|
|
107
128
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/fields/JSON/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate } from 'payload/types'\n\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { CodeEditor } from '../../elements/CodeEditor/index.js'\nimport { FieldLabel } from '../../forms/FieldLabel/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'json-field'\n\nimport type { JSONField as JSONFieldType } from 'payload/types'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { FieldDescription } from '../../forms/FieldDescription/index.js'\nimport { FieldError } from '../../forms/FieldError/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\n\nexport type JSONFieldProps = FormFieldBase & {\n editorOptions?: JSONFieldType['admin']['editorOptions']\n jsonSchema?: Record<string, unknown>\n name?: string\n path?: string\n width?: string\n}\n\nconst JSONFieldComponent: React.FC<JSONFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n editorOptions,\n errorProps,\n jsonSchema,\n label,\n labelProps,\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n required,\n style,\n validate,\n width,\n } = props\n\n const [stringValue, setStringValue] = useState<string>()\n const [jsonError, setJsonError] = useState<string>()\n const [hasLoadedValue, setHasLoadedValue] = useState(false)\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function')\n return validate(value, { ...options, jsonError, required })\n },\n [validate, required, jsonError],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n const readOnly = readOnlyFromProps || readOnlyFromContext\n\n const { initialValue, path, setValue, showError, value } = useField<string>({\n path: pathFromContext || pathFromProps || name,\n validate: memoizedValidate,\n })\n\n const handleMount = useCallback(\n (editor, monaco) => {\n if (!jsonSchema) return\n\n const existingSchemas = monaco.languages.json.jsonDefaults.diagnosticsOptions.schemas || []\n const modelUri = monaco.Uri.parse(jsonSchema.uri)\n\n const model = monaco.editor.createModel(JSON.stringify(value, null, 2), 'json', modelUri)\n monaco.languages.json.jsonDefaults.setDiagnosticsOptions({\n enableSchemaRequest: true,\n schemas: [...existingSchemas, jsonSchema],\n validate: true,\n })\n\n editor.setModel(model)\n },\n [jsonSchema, value],\n )\n\n const handleChange = useCallback(\n (val) => {\n if (readOnly) return\n setStringValue(val)\n\n try {\n setValue(val ? JSON.parse(val) : null)\n setJsonError(undefined)\n } catch (e) {\n setValue(val ? val : null)\n setJsonError(e)\n }\n },\n [readOnly, setValue, setStringValue],\n )\n\n useEffect(() => {\n if (hasLoadedValue) return\n setStringValue(\n value || initialValue ? JSON.stringify(value ? value : initialValue, null, 2) : '',\n )\n setHasLoadedValue(true)\n }, [initialValue, value, hasLoadedValue])\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n <
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/JSON/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate } from 'payload/types'\n\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { CodeEditor } from '../../elements/CodeEditor/index.js'\nimport { FieldLabel } from '../../forms/FieldLabel/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'json-field'\n\nimport type { JSONField as JSONFieldType } from 'payload/types'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { FieldDescription } from '../../forms/FieldDescription/index.js'\nimport { FieldError } from '../../forms/FieldError/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\n\nexport type JSONFieldProps = FormFieldBase & {\n editorOptions?: JSONFieldType['admin']['editorOptions']\n jsonSchema?: Record<string, unknown>\n name?: string\n path?: string\n width?: string\n}\n\nconst JSONFieldComponent: React.FC<JSONFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n editorOptions,\n errorProps,\n jsonSchema,\n label,\n labelProps,\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n required,\n style,\n validate,\n width,\n } = props\n\n const [stringValue, setStringValue] = useState<string>()\n const [jsonError, setJsonError] = useState<string>()\n const [hasLoadedValue, setHasLoadedValue] = useState(false)\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function')\n return validate(value, { ...options, jsonError, required })\n },\n [validate, required, jsonError],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n const readOnly = readOnlyFromProps || readOnlyFromContext\n\n const { initialValue, path, setValue, showError, value } = useField<string>({\n path: pathFromContext || pathFromProps || name,\n validate: memoizedValidate,\n })\n\n const handleMount = useCallback(\n (editor, monaco) => {\n if (!jsonSchema) return\n\n const existingSchemas = monaco.languages.json.jsonDefaults.diagnosticsOptions.schemas || []\n const modelUri = monaco.Uri.parse(jsonSchema.uri)\n\n const model = monaco.editor.createModel(JSON.stringify(value, null, 2), 'json', modelUri)\n monaco.languages.json.jsonDefaults.setDiagnosticsOptions({\n enableSchemaRequest: true,\n schemas: [...existingSchemas, jsonSchema],\n validate: true,\n })\n\n editor.setModel(model)\n },\n [jsonSchema, value],\n )\n\n const handleChange = useCallback(\n (val) => {\n if (readOnly) return\n setStringValue(val)\n\n try {\n setValue(val ? JSON.parse(val) : null)\n setJsonError(undefined)\n } catch (e) {\n setValue(val ? val : null)\n setJsonError(e)\n }\n },\n [readOnly, setValue, setStringValue],\n )\n\n useEffect(() => {\n if (hasLoadedValue) return\n setStringValue(\n value || initialValue ? JSON.stringify(value ? value : initialValue, null, 2) : '',\n )\n setHasLoadedValue(true)\n }, [initialValue, value, hasLoadedValue])\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n {BeforeInput}\n <CodeEditor\n defaultLanguage=\"json\"\n onChange={handleChange}\n onMount={handleMount}\n options={editorOptions}\n readOnly={readOnly}\n value={stringValue}\n />\n {AfterInput}\n </div>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n )\n}\n\nexport const JSONField = withCondition(JSONFieldComponent)\n"],"names":["React","useCallback","useEffect","useState","CodeEditor","FieldLabel","useField","withCondition","fieldBaseClass","baseClass","FieldDescription","FieldError","useFieldProps","JSONFieldComponent","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","editorOptions","errorProps","jsonSchema","label","labelProps","path","pathFromProps","readOnly","readOnlyFromProps","required","style","validate","width","stringValue","setStringValue","jsonError","setJsonError","hasLoadedValue","setHasLoadedValue","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","initialValue","setValue","showError","handleMount","editor","monaco","existingSchemas","languages","json","jsonDefaults","diagnosticsOptions","schemas","modelUri","Uri","parse","uri","model","createModel","JSON","stringify","setDiagnosticsOptions","enableSchemaRequest","setModel","handleChange","val","undefined","e","div","filter","Boolean","join","defaultLanguage","onChange","onMount","JSONField"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Number/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,eAAe,CAAA;AAInE,OAAO,KAA2C,MAAM,OAAO,CAAA;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAWvD,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAA;IACrD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Number/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,eAAe,CAAA;AAInE,OAAO,KAA2C,MAAM,OAAO,CAAA;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAWvD,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAA;IACrD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAgMD,eAAO,MAAM,WAAW,4BAAsC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/* eslint-disable react/destructuring-assignment */ 'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
3
|
import { getTranslation } from '@payloadcms/translations';
|
|
3
4
|
import { isNumber } from 'payload/utilities';
|
|
4
5
|
import React, { useCallback, useEffect, useState } from 'react';
|
|
@@ -87,7 +88,7 @@ const NumberFieldComponent = (props)=>{
|
|
|
87
88
|
value,
|
|
88
89
|
hasMany
|
|
89
90
|
]);
|
|
90
|
-
return /*#__PURE__*/
|
|
91
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
91
92
|
className: [
|
|
92
93
|
fieldBaseClass,
|
|
93
94
|
'number',
|
|
@@ -99,61 +100,80 @@ const NumberFieldComponent = (props)=>{
|
|
|
99
100
|
style: {
|
|
100
101
|
...style,
|
|
101
102
|
width
|
|
102
|
-
}
|
|
103
|
-
}, /*#__PURE__*/ React.createElement(FieldLabel, {
|
|
104
|
-
CustomLabel: CustomLabel,
|
|
105
|
-
label: label,
|
|
106
|
-
required: required,
|
|
107
|
-
...labelProps || {}
|
|
108
|
-
}), /*#__PURE__*/ React.createElement(FieldError, {
|
|
109
|
-
CustomError: CustomError,
|
|
110
|
-
path: path,
|
|
111
|
-
...errorProps || {}
|
|
112
|
-
}), hasMany ? /*#__PURE__*/ React.createElement(ReactSelect, {
|
|
113
|
-
className: `field-${path.replace(/\./g, '__')}`,
|
|
114
|
-
disabled: readOnly,
|
|
115
|
-
filterOption: (_, rawInput)=>{
|
|
116
|
-
// eslint-disable-next-line no-restricted-globals
|
|
117
|
-
const isOverHasMany = Array.isArray(value) && value.length >= maxRows;
|
|
118
|
-
return isNumber(rawInput) && !isOverHasMany;
|
|
119
|
-
},
|
|
120
|
-
isClearable: true,
|
|
121
|
-
isCreatable: true,
|
|
122
|
-
isMulti: true,
|
|
123
|
-
isSortable: true,
|
|
124
|
-
noOptionsMessage: ()=>{
|
|
125
|
-
const isOverHasMany = Array.isArray(value) && value.length >= maxRows;
|
|
126
|
-
if (isOverHasMany) {
|
|
127
|
-
return t('validation:limitReached', {
|
|
128
|
-
max: maxRows,
|
|
129
|
-
value: value.length + 1
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
return null;
|
|
133
103
|
},
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
104
|
+
children: [
|
|
105
|
+
/*#__PURE__*/ _jsx(FieldLabel, {
|
|
106
|
+
CustomLabel: CustomLabel,
|
|
107
|
+
label: label,
|
|
108
|
+
required: required,
|
|
109
|
+
...labelProps || {}
|
|
110
|
+
}),
|
|
111
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
112
|
+
className: `${fieldBaseClass}__wrap`,
|
|
113
|
+
children: [
|
|
114
|
+
/*#__PURE__*/ _jsx(FieldError, {
|
|
115
|
+
CustomError: CustomError,
|
|
116
|
+
path: path,
|
|
117
|
+
...errorProps || {}
|
|
118
|
+
}),
|
|
119
|
+
hasMany ? /*#__PURE__*/ _jsx(ReactSelect, {
|
|
120
|
+
className: `field-${path.replace(/\./g, '__')}`,
|
|
121
|
+
disabled: readOnly,
|
|
122
|
+
filterOption: (_, rawInput)=>{
|
|
123
|
+
// eslint-disable-next-line no-restricted-globals
|
|
124
|
+
const isOverHasMany = Array.isArray(value) && value.length >= maxRows;
|
|
125
|
+
return isNumber(rawInput) && !isOverHasMany;
|
|
126
|
+
},
|
|
127
|
+
isClearable: true,
|
|
128
|
+
isCreatable: true,
|
|
129
|
+
isMulti: true,
|
|
130
|
+
isSortable: true,
|
|
131
|
+
noOptionsMessage: ()=>{
|
|
132
|
+
const isOverHasMany = Array.isArray(value) && value.length >= maxRows;
|
|
133
|
+
if (isOverHasMany) {
|
|
134
|
+
return t('validation:limitReached', {
|
|
135
|
+
max: maxRows,
|
|
136
|
+
value: value.length + 1
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
return null;
|
|
140
|
+
},
|
|
141
|
+
// numberOnly
|
|
142
|
+
onChange: handleHasManyChange,
|
|
143
|
+
options: [],
|
|
144
|
+
placeholder: t('general:enterAValue'),
|
|
145
|
+
showError: showError,
|
|
146
|
+
value: valueToRender
|
|
147
|
+
}) : /*#__PURE__*/ _jsxs("div", {
|
|
148
|
+
children: [
|
|
149
|
+
BeforeInput,
|
|
150
|
+
/*#__PURE__*/ _jsx("input", {
|
|
151
|
+
disabled: readOnly,
|
|
152
|
+
id: `field-${path.replace(/\./g, '__')}`,
|
|
153
|
+
max: max,
|
|
154
|
+
min: min,
|
|
155
|
+
name: path,
|
|
156
|
+
onChange: handleChange,
|
|
157
|
+
onWheel: (e)=>{
|
|
158
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
159
|
+
// @ts-expect-error
|
|
160
|
+
e.target.blur();
|
|
161
|
+
},
|
|
162
|
+
placeholder: getTranslation(placeholder, i18n),
|
|
163
|
+
step: step,
|
|
164
|
+
type: "number",
|
|
165
|
+
value: typeof value === 'number' ? value : ''
|
|
166
|
+
}),
|
|
167
|
+
AfterInput
|
|
168
|
+
]
|
|
169
|
+
}),
|
|
170
|
+
CustomDescription !== undefined ? CustomDescription : /*#__PURE__*/ _jsx(FieldDescription, {
|
|
171
|
+
...descriptionProps || {}
|
|
172
|
+
})
|
|
173
|
+
]
|
|
174
|
+
})
|
|
175
|
+
]
|
|
176
|
+
});
|
|
157
177
|
};
|
|
158
178
|
export const NumberField = withCondition(NumberFieldComponent);
|
|
159
179
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/fields/Number/index.tsx"],"sourcesContent":["/* eslint-disable react/destructuring-assignment */\n'use client'\nimport type { NumberField as NumberFieldType } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { isNumber } from 'payload/utilities'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { Option } from '../../elements/ReactSelect/types.js'\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { ReactSelect } from '../../elements/ReactSelect/index.js'\nimport { FieldDescription } from '../../forms/FieldDescription/index.js'\nimport { FieldError } from '../../forms/FieldError/index.js'\nimport { FieldLabel } from '../../forms/FieldLabel/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type NumberFieldProps = FormFieldBase & {\n hasMany?: boolean\n max?: number\n maxRows?: number\n min?: number\n name?: string\n onChange?: (e: number) => void\n path?: string\n placeholder?: NumberFieldType['admin']['placeholder']\n step?: number\n width?: string\n}\n\nconst NumberFieldComponent: React.FC<NumberFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n hasMany = false,\n label,\n labelProps,\n max = Infinity,\n maxRows = Infinity,\n min = -Infinity,\n onChange: onChangeFromProps,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n step = 1,\n style,\n validate,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const memoizedValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, max, min, required })\n }\n },\n [validate, min, max, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n const readOnly = readOnlyFromProps || readOnlyFromContext\n\n const { path, setValue, showError, value } = useField<number | number[]>({\n path: pathFromContext || pathFromProps || name,\n validate: memoizedValidate,\n })\n\n const handleChange = useCallback(\n (e) => {\n const val = parseFloat(e.target.value)\n let newVal = val\n\n if (Number.isNaN(val)) {\n newVal = undefined\n }\n\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(newVal)\n }\n\n setValue(newVal)\n },\n [onChangeFromProps, setValue],\n )\n\n const [valueToRender, setValueToRender] = useState<\n { id: string; label: string; value: { value: number } }[]\n >([]) // Only for hasMany\n\n const handleHasManyChange = useCallback(\n (selectedOption) => {\n if (!readOnly) {\n let newValue\n if (!selectedOption) {\n newValue = []\n } else if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => Number(option.value?.value || option.value))\n } else {\n newValue = [Number(selectedOption.value?.value || selectedOption.value)]\n }\n\n setValue(newValue)\n }\n },\n [readOnly, setValue],\n )\n\n // useEffect update valueToRender:\n useEffect(() => {\n if (hasMany && Array.isArray(value)) {\n setValueToRender(\n value.map((val, index) => {\n return {\n id: `${val}${index}`, // append index to avoid duplicate keys but allow duplicate numbers\n label: `${val}`,\n value: {\n toString: () => `${val}${index}`,\n value: (val as unknown as Record<string, number>)?.value || val,\n }, // You're probably wondering, why the hell is this done that way? Well, React-select automatically uses \"label-value\" as a key, so we will get that react duplicate key warning if we just pass in the value as multiple values can be the same. So we need to append the index to the toString() of the value to avoid that warning, as it uses that as the key.\n }\n }),\n )\n }\n }, [value, hasMany])\n\n return (\n <div\n className={[\n fieldBaseClass,\n 'number',\n className,\n showError && 'error',\n readOnly && 'read-only',\n hasMany && 'has-many',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n {hasMany ? (\n <ReactSelect\n className={`field-${path.replace(/\\./g, '__')}`}\n disabled={readOnly}\n filterOption={(_, rawInput) => {\n // eslint-disable-next-line no-restricted-globals\n const isOverHasMany = Array.isArray(value) && value.length >= maxRows\n return isNumber(rawInput) && !isOverHasMany\n }}\n isClearable\n isCreatable\n isMulti\n isSortable\n noOptionsMessage={() => {\n const isOverHasMany = Array.isArray(value) && value.length >= maxRows\n if (isOverHasMany) {\n return t('validation:limitReached', { max: maxRows, value: value.length + 1 })\n }\n return null\n }}\n // numberOnly\n onChange={handleHasManyChange}\n options={[]}\n placeholder={t('general:enterAValue')}\n showError={showError}\n value={valueToRender as Option[]}\n />\n ) : (\n <div>\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-${path.replace(/\\./g, '__')}`}\n max={max}\n min={min}\n name={path}\n onChange={handleChange}\n onWheel={(e) => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n e.target.blur()\n }}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={typeof value === 'number' ? value : ''}\n />\n {AfterInput}\n </div>\n )}\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n )\n}\n\nexport const NumberField = withCondition(NumberFieldComponent)\n"],"names":["getTranslation","isNumber","React","useCallback","useEffect","useState","ReactSelect","FieldDescription","FieldError","FieldLabel","useFieldProps","useField","withCondition","useTranslation","fieldBaseClass","NumberFieldComponent","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","hasMany","label","labelProps","max","Infinity","maxRows","min","onChange","onChangeFromProps","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","step","style","validate","width","i18n","t","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","setValue","showError","handleChange","e","val","parseFloat","target","newVal","Number","isNaN","undefined","valueToRender","setValueToRender","handleHasManyChange","selectedOption","newValue","Array","isArray","map","option","index","id","toString","div","filter","Boolean","join","replace","disabled","filterOption","_","rawInput","isOverHasMany","length","isClearable","isCreatable","isMulti","isSortable","noOptionsMessage","input","onWheel","blur","type","NumberField"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/Number/index.tsx"],"sourcesContent":["/* eslint-disable react/destructuring-assignment */\n'use client'\nimport type { NumberField as NumberFieldType } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { isNumber } from 'payload/utilities'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { Option } from '../../elements/ReactSelect/types.js'\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { ReactSelect } from '../../elements/ReactSelect/index.js'\nimport { FieldDescription } from '../../forms/FieldDescription/index.js'\nimport { FieldError } from '../../forms/FieldError/index.js'\nimport { FieldLabel } from '../../forms/FieldLabel/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type NumberFieldProps = FormFieldBase & {\n hasMany?: boolean\n max?: number\n maxRows?: number\n min?: number\n name?: string\n onChange?: (e: number) => void\n path?: string\n placeholder?: NumberFieldType['admin']['placeholder']\n step?: number\n width?: string\n}\n\nconst NumberFieldComponent: React.FC<NumberFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n hasMany = false,\n label,\n labelProps,\n max = Infinity,\n maxRows = Infinity,\n min = -Infinity,\n onChange: onChangeFromProps,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n step = 1,\n style,\n validate,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const memoizedValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, max, min, required })\n }\n },\n [validate, min, max, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n const readOnly = readOnlyFromProps || readOnlyFromContext\n\n const { path, setValue, showError, value } = useField<number | number[]>({\n path: pathFromContext || pathFromProps || name,\n validate: memoizedValidate,\n })\n\n const handleChange = useCallback(\n (e) => {\n const val = parseFloat(e.target.value)\n let newVal = val\n\n if (Number.isNaN(val)) {\n newVal = undefined\n }\n\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(newVal)\n }\n\n setValue(newVal)\n },\n [onChangeFromProps, setValue],\n )\n\n const [valueToRender, setValueToRender] = useState<\n { id: string; label: string; value: { value: number } }[]\n >([]) // Only for hasMany\n\n const handleHasManyChange = useCallback(\n (selectedOption) => {\n if (!readOnly) {\n let newValue\n if (!selectedOption) {\n newValue = []\n } else if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => Number(option.value?.value || option.value))\n } else {\n newValue = [Number(selectedOption.value?.value || selectedOption.value)]\n }\n\n setValue(newValue)\n }\n },\n [readOnly, setValue],\n )\n\n // useEffect update valueToRender:\n useEffect(() => {\n if (hasMany && Array.isArray(value)) {\n setValueToRender(\n value.map((val, index) => {\n return {\n id: `${val}${index}`, // append index to avoid duplicate keys but allow duplicate numbers\n label: `${val}`,\n value: {\n toString: () => `${val}${index}`,\n value: (val as unknown as Record<string, number>)?.value || val,\n }, // You're probably wondering, why the hell is this done that way? Well, React-select automatically uses \"label-value\" as a key, so we will get that react duplicate key warning if we just pass in the value as multiple values can be the same. So we need to append the index to the toString() of the value to avoid that warning, as it uses that as the key.\n }\n }),\n )\n }\n }, [value, hasMany])\n\n return (\n <div\n className={[\n fieldBaseClass,\n 'number',\n className,\n showError && 'error',\n readOnly && 'read-only',\n hasMany && 'has-many',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n {hasMany ? (\n <ReactSelect\n className={`field-${path.replace(/\\./g, '__')}`}\n disabled={readOnly}\n filterOption={(_, rawInput) => {\n // eslint-disable-next-line no-restricted-globals\n const isOverHasMany = Array.isArray(value) && value.length >= maxRows\n return isNumber(rawInput) && !isOverHasMany\n }}\n isClearable\n isCreatable\n isMulti\n isSortable\n noOptionsMessage={() => {\n const isOverHasMany = Array.isArray(value) && value.length >= maxRows\n if (isOverHasMany) {\n return t('validation:limitReached', { max: maxRows, value: value.length + 1 })\n }\n return null\n }}\n // numberOnly\n onChange={handleHasManyChange}\n options={[]}\n placeholder={t('general:enterAValue')}\n showError={showError}\n value={valueToRender as Option[]}\n />\n ) : (\n <div>\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-${path.replace(/\\./g, '__')}`}\n max={max}\n min={min}\n name={path}\n onChange={handleChange}\n onWheel={(e) => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n e.target.blur()\n }}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={typeof value === 'number' ? value : ''}\n />\n {AfterInput}\n </div>\n )}\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n </div>\n )\n}\n\nexport const NumberField = withCondition(NumberFieldComponent)\n"],"names":["getTranslation","isNumber","React","useCallback","useEffect","useState","ReactSelect","FieldDescription","FieldError","FieldLabel","useFieldProps","useField","withCondition","useTranslation","fieldBaseClass","NumberFieldComponent","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","hasMany","label","labelProps","max","Infinity","maxRows","min","onChange","onChangeFromProps","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","step","style","validate","width","i18n","t","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","setValue","showError","handleChange","e","val","parseFloat","target","newVal","Number","isNaN","undefined","valueToRender","setValueToRender","handleHasManyChange","selectedOption","newValue","Array","isArray","map","option","index","id","toString","div","filter","Boolean","join","replace","disabled","filterOption","_","rawInput","isOverHasMany","length","isClearable","isCreatable","isMulti","isSortable","noOptionsMessage","input","onWheel","blur","type","NumberField"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Password/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE1E,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAOvD,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Password/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE1E,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAOvD,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAmED,eAAO,MAAM,QAAQ,8BAA+B,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
3
|
import React, { useCallback } from 'react';
|
|
3
4
|
import { FieldError } from '../../forms/FieldError/index.js';
|
|
4
5
|
import { FieldLabel } from '../../forms/FieldLabel/index.js';
|
|
@@ -22,7 +23,7 @@ const PasswordField = (props)=>{
|
|
|
22
23
|
path: pathFromProps || name,
|
|
23
24
|
validate: memoizedValidate
|
|
24
25
|
});
|
|
25
|
-
return /*#__PURE__*/
|
|
26
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
26
27
|
className: [
|
|
27
28
|
fieldBaseClass,
|
|
28
29
|
'password',
|
|
@@ -32,25 +33,35 @@ const PasswordField = (props)=>{
|
|
|
32
33
|
style: {
|
|
33
34
|
...style,
|
|
34
35
|
width
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
36
|
+
},
|
|
37
|
+
children: [
|
|
38
|
+
/*#__PURE__*/ _jsx(FieldLabel, {
|
|
39
|
+
CustomLabel: CustomLabel,
|
|
40
|
+
label: label,
|
|
41
|
+
required: required,
|
|
42
|
+
...labelProps || {}
|
|
43
|
+
}),
|
|
44
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
45
|
+
className: `${fieldBaseClass}__wrap`,
|
|
46
|
+
children: [
|
|
47
|
+
/*#__PURE__*/ _jsx(FieldError, {
|
|
48
|
+
CustomError: CustomError,
|
|
49
|
+
path: path,
|
|
50
|
+
...errorProps || {}
|
|
51
|
+
}),
|
|
52
|
+
/*#__PURE__*/ _jsx("input", {
|
|
53
|
+
autoComplete: autoComplete,
|
|
54
|
+
disabled: formProcessing || disabled,
|
|
55
|
+
id: `field-${path.replace(/\./g, '__')}`,
|
|
56
|
+
name: path,
|
|
57
|
+
onChange: setValue,
|
|
58
|
+
type: "password",
|
|
59
|
+
value: value || ''
|
|
60
|
+
})
|
|
61
|
+
]
|
|
62
|
+
})
|
|
63
|
+
]
|
|
64
|
+
});
|
|
54
65
|
};
|
|
55
66
|
export const Password = withCondition(PasswordField);
|
|
56
67
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/fields/Password/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate, Description, Validate } from 'payload/types'\n\nimport React, { useCallback } from 'react'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { FieldError } from '../../forms/FieldError/index.js'\nimport { FieldLabel } from '../../forms/FieldLabel/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type PasswordFieldProps = FormFieldBase & {\n autoComplete?: string\n className?: string\n description?: Description\n disabled?: boolean\n name: string\n path?: string\n required?: boolean\n style?: React.CSSProperties\n validate?: Validate\n width?: string\n}\n\nconst PasswordField: React.FC<PasswordFieldProps> = (props) => {\n const {\n name,\n CustomError,\n CustomLabel,\n autoComplete,\n className,\n disabled,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n required,\n style,\n validate,\n width,\n } = props\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { formProcessing, path, setValue, showError, value } = useField({\n path: pathFromProps || name,\n validate: memoizedValidate,\n })\n\n return (\n <div\n className={[fieldBaseClass, 'password', className, showError && 'error']\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/Password/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate, Description, Validate } from 'payload/types'\n\nimport React, { useCallback } from 'react'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { FieldError } from '../../forms/FieldError/index.js'\nimport { FieldLabel } from '../../forms/FieldLabel/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type PasswordFieldProps = FormFieldBase & {\n autoComplete?: string\n className?: string\n description?: Description\n disabled?: boolean\n name: string\n path?: string\n required?: boolean\n style?: React.CSSProperties\n validate?: Validate\n width?: string\n}\n\nconst PasswordField: React.FC<PasswordFieldProps> = (props) => {\n const {\n name,\n CustomError,\n CustomLabel,\n autoComplete,\n className,\n disabled,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n required,\n style,\n validate,\n width,\n } = props\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { formProcessing, path, setValue, showError, value } = useField({\n path: pathFromProps || name,\n validate: memoizedValidate,\n })\n\n return (\n <div\n className={[fieldBaseClass, 'password', className, showError && 'error']\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n\n <input\n autoComplete={autoComplete}\n disabled={formProcessing || disabled}\n id={`field-${path.replace(/\\./g, '__')}`}\n name={path}\n onChange={setValue}\n type=\"password\"\n value={(value as string) || ''}\n />\n </div>\n </div>\n )\n}\n\nexport const Password = withCondition(PasswordField)\n"],"names":["React","useCallback","FieldError","FieldLabel","useField","withCondition","fieldBaseClass","PasswordField","props","name","CustomError","CustomLabel","autoComplete","className","disabled","errorProps","label","labelProps","path","pathFromProps","required","style","validate","width","memoizedValidate","value","options","formProcessing","setValue","showError","div","filter","Boolean","join","input","id","replace","onChange","type","Password"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;;AAGA,OAAOA,SAASC,WAAW,QAAQ,QAAO;AAI1C,SAASC,UAAU,QAAQ,kCAAiC;AAC5D,SAASC,UAAU,QAAQ,kCAAiC;AAC5D,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,cAAc,QAAQ,qBAAoB;AAgBnD,MAAMC,gBAA8C,CAACC;IACnD,MAAM,EACJC,IAAI,EACJC,WAAW,EACXC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,QAAQ,EACRC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,MAAMC,aAAa,EACnBC,QAAQ,EACRC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACN,GAAGf;IAEJ,MAAMgB,mBAAmCvB,YACvC,CAACwB,OAAOC;QACN,IAAI,OAAOJ,aAAa,YAAY;YAClC,OAAOA,SAASG,OAAO;gBAAE,GAAGC,OAAO;gBAAEN;YAAS;QAChD;IACF,GACA;QAACE;QAAUF;KAAS;IAGtB,MAAM,EAAEO,cAAc,EAAET,IAAI,EAAEU,QAAQ,EAAEC,SAAS,EAAEJ,KAAK,EAAE,GAAGrB,SAAS;QACpEc,MAAMC,iBAAiBV;QACvBa,UAAUE;IACZ;IAEA,qBACE,MAACM;QACCjB,WAAW;YAACP;YAAgB;YAAYO;YAAWgB,aAAa;SAAQ,CACrEE,MAAM,CAACC,SACPC,IAAI,CAAC;QACRZ,OAAO;YACL,GAAGA,KAAK;YACRE;QACF;;0BAEA,KAACpB;gBACCQ,aAAaA;gBACbK,OAAOA;gBACPI,UAAUA;gBACT,GAAIH,cAAc,CAAC,CAAC;;0BAEvB,MAACa;gBAAIjB,WAAW,CAAC,EAAEP,eAAe,MAAM,CAAC;;kCACvC,KAACJ;wBAAWQ,aAAaA;wBAAaQ,MAAMA;wBAAO,GAAIH,cAAc,CAAC,CAAC;;kCAEvE,KAACmB;wBACCtB,cAAcA;wBACdE,UAAUa,kBAAkBb;wBAC5BqB,IAAI,CAAC,MAAM,EAAEjB,KAAKkB,OAAO,CAAC,OAAO,MAAM,CAAC;wBACxC3B,MAAMS;wBACNmB,UAAUT;wBACVU,MAAK;wBACLb,OAAO,AAACA,SAAoB;;;;;;AAKtC;AAEA,OAAO,MAAMc,WAAWlC,cAAcE,eAAc"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/* eslint-disable react/destructuring-assignment */ 'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
3
|
import { getTranslation } from '@payloadcms/translations';
|
|
3
4
|
import React, { useCallback } from 'react';
|
|
4
5
|
import { useField } from '../../forms/useField/index.js';
|
|
@@ -55,7 +56,7 @@ const PointField = (props)=>{
|
|
|
55
56
|
label: `${fieldLabel}${fieldLabel ? ' - ' : ''}${suffix}`
|
|
56
57
|
};
|
|
57
58
|
};
|
|
58
|
-
return /*#__PURE__*/
|
|
59
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
59
60
|
className: [
|
|
60
61
|
fieldBaseClass,
|
|
61
62
|
baseClass,
|
|
@@ -66,36 +67,71 @@ const PointField = (props)=>{
|
|
|
66
67
|
style: {
|
|
67
68
|
...style,
|
|
68
69
|
width
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
70
|
+
},
|
|
71
|
+
children: [
|
|
72
|
+
/*#__PURE__*/ _jsx(FieldError, {
|
|
73
|
+
CustomError: CustomError,
|
|
74
|
+
path: path,
|
|
75
|
+
...errorProps || {}
|
|
76
|
+
}),
|
|
77
|
+
/*#__PURE__*/ _jsxs("ul", {
|
|
78
|
+
className: `${baseClass}__wrap`,
|
|
79
|
+
children: [
|
|
80
|
+
/*#__PURE__*/ _jsxs("li", {
|
|
81
|
+
children: [
|
|
82
|
+
CustomLabel !== undefined ? CustomLabel : /*#__PURE__*/ _jsx(FieldLabel, {
|
|
83
|
+
...getCoordinateFieldLabel('longitude')
|
|
84
|
+
}),
|
|
85
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
86
|
+
className: "input-wrapper",
|
|
87
|
+
children: [
|
|
88
|
+
BeforeInput,
|
|
89
|
+
/*#__PURE__*/ _jsx("input", {
|
|
90
|
+
disabled: readOnly,
|
|
91
|
+
id: `field-longitude-${path.replace(/\./g, '__')}`,
|
|
92
|
+
name: `${path}.longitude`,
|
|
93
|
+
onChange: (e)=>handleChange(e, 0),
|
|
94
|
+
placeholder: getTranslation(placeholder, i18n),
|
|
95
|
+
step: step,
|
|
96
|
+
type: "number",
|
|
97
|
+
value: value && typeof value[0] === 'number' ? value[0] : ''
|
|
98
|
+
}),
|
|
99
|
+
AfterInput
|
|
100
|
+
]
|
|
101
|
+
})
|
|
102
|
+
]
|
|
103
|
+
}),
|
|
104
|
+
/*#__PURE__*/ _jsxs("li", {
|
|
105
|
+
children: [
|
|
106
|
+
CustomLabel !== undefined ? CustomLabel : /*#__PURE__*/ _jsx(FieldLabel, {
|
|
107
|
+
...getCoordinateFieldLabel('latitude')
|
|
108
|
+
}),
|
|
109
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
110
|
+
className: "input-wrapper",
|
|
111
|
+
children: [
|
|
112
|
+
BeforeInput,
|
|
113
|
+
/*#__PURE__*/ _jsx("input", {
|
|
114
|
+
disabled: readOnly,
|
|
115
|
+
id: `field-latitude-${path.replace(/\./g, '__')}`,
|
|
116
|
+
name: `${path}.latitude`,
|
|
117
|
+
onChange: (e)=>handleChange(e, 1),
|
|
118
|
+
placeholder: getTranslation(placeholder, i18n),
|
|
119
|
+
step: step,
|
|
120
|
+
type: "number",
|
|
121
|
+
value: value && typeof value[1] === 'number' ? value[1] : ''
|
|
122
|
+
}),
|
|
123
|
+
AfterInput
|
|
124
|
+
]
|
|
125
|
+
})
|
|
126
|
+
]
|
|
127
|
+
})
|
|
128
|
+
]
|
|
129
|
+
}),
|
|
130
|
+
CustomDescription !== undefined ? CustomDescription : /*#__PURE__*/ _jsx(FieldDescription, {
|
|
131
|
+
...descriptionProps || {}
|
|
132
|
+
})
|
|
133
|
+
]
|
|
134
|
+
});
|
|
99
135
|
};
|
|
100
136
|
export const Point = withCondition(PointField);
|
|
101
137
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/fields/Point/index.tsx"],"sourcesContent":["/* eslint-disable react/destructuring-assignment */\n'use client'\nimport type { ClientValidate } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback } from 'react'\n\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'point'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { FieldDescription } from '../../forms/FieldDescription/index.js'\nimport { FieldError } from '../../forms/FieldError/index.js'\nimport { FieldLabel } from '../../forms/FieldLabel/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\n\nexport type PointFieldProps = FormFieldBase & {\n name?: string\n path?: string\n placeholder?: string\n step?: number\n width?: string\n}\n\nconst PointField: React.FC<PointFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n step,\n style,\n validate,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n const readOnly = readOnlyFromProps || readOnlyFromContext\n\n const {\n path,\n setValue,\n showError,\n value = [null, null],\n } = useField<[number, number]>({\n path: pathFromContext || pathFromProps || name,\n validate: memoizedValidate,\n })\n\n const handleChange = useCallback(\n (e, index: 0 | 1) => {\n let val = parseFloat(e.target.value)\n if (Number.isNaN(val)) {\n val = e.target.value\n }\n const coordinates = [...value]\n coordinates[index] = val\n setValue(coordinates)\n },\n [setValue, value],\n )\n\n const getCoordinateFieldLabel = (type: 'latitude' | 'longitude') => {\n const suffix = type === 'longitude' ? t('fields:longitude') : t('fields:latitude')\n const fieldLabel = label ? getTranslation(label, i18n) : ''\n\n return {\n ...labelProps,\n label: `${fieldLabel}${fieldLabel ? ' - ' : ''}${suffix}`,\n }\n }\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n <ul className={`${baseClass}__wrap`}>\n <li>\n {CustomLabel !== undefined ? (\n CustomLabel\n ) : (\n <FieldLabel {...getCoordinateFieldLabel('longitude')} />\n )}\n <div className=\"input-wrapper\">\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-longitude-${path.replace(/\\./g, '__')}`}\n name={`${path}.longitude`}\n onChange={(e) => handleChange(e, 0)}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={value && typeof value[0] === 'number' ? value[0] : ''}\n />\n {AfterInput}\n </div>\n </li>\n <li>\n {CustomLabel !== undefined ? (\n CustomLabel\n ) : (\n <FieldLabel {...getCoordinateFieldLabel('latitude')} />\n )}\n <div className=\"input-wrapper\">\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-latitude-${path.replace(/\\./g, '__')}`}\n name={`${path}.latitude`}\n onChange={(e) => handleChange(e, 1)}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={value && typeof value[1] === 'number' ? value[1] : ''}\n />\n {AfterInput}\n </div>\n </li>\n </ul>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n )\n}\n\nexport const Point = withCondition(PointField)\n"],"names":["getTranslation","React","useCallback","useField","withCondition","useTranslation","fieldBaseClass","baseClass","FieldDescription","FieldError","FieldLabel","useFieldProps","PointField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","step","style","validate","width","i18n","t","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","setValue","showError","handleChange","e","index","val","parseFloat","target","Number","isNaN","coordinates","getCoordinateFieldLabel","type","suffix","fieldLabel","div","filter","Boolean","join","ul","li","undefined","input","disabled","id","replace","onChange","Point"],"rangeMappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/Point/index.tsx"],"sourcesContent":["/* eslint-disable react/destructuring-assignment */\n'use client'\nimport type { ClientValidate } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback } from 'react'\n\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'point'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { FieldDescription } from '../../forms/FieldDescription/index.js'\nimport { FieldError } from '../../forms/FieldError/index.js'\nimport { FieldLabel } from '../../forms/FieldLabel/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\n\nexport type PointFieldProps = FormFieldBase & {\n name?: string\n path?: string\n placeholder?: string\n step?: number\n width?: string\n}\n\nconst PointField: React.FC<PointFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n step,\n style,\n validate,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n const readOnly = readOnlyFromProps || readOnlyFromContext\n\n const {\n path,\n setValue,\n showError,\n value = [null, null],\n } = useField<[number, number]>({\n path: pathFromContext || pathFromProps || name,\n validate: memoizedValidate,\n })\n\n const handleChange = useCallback(\n (e, index: 0 | 1) => {\n let val = parseFloat(e.target.value)\n if (Number.isNaN(val)) {\n val = e.target.value\n }\n const coordinates = [...value]\n coordinates[index] = val\n setValue(coordinates)\n },\n [setValue, value],\n )\n\n const getCoordinateFieldLabel = (type: 'latitude' | 'longitude') => {\n const suffix = type === 'longitude' ? t('fields:longitude') : t('fields:latitude')\n const fieldLabel = label ? getTranslation(label, i18n) : ''\n\n return {\n ...labelProps,\n label: `${fieldLabel}${fieldLabel ? ' - ' : ''}${suffix}`,\n }\n }\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n <ul className={`${baseClass}__wrap`}>\n <li>\n {CustomLabel !== undefined ? (\n CustomLabel\n ) : (\n <FieldLabel {...getCoordinateFieldLabel('longitude')} />\n )}\n <div className=\"input-wrapper\">\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-longitude-${path.replace(/\\./g, '__')}`}\n name={`${path}.longitude`}\n onChange={(e) => handleChange(e, 0)}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={value && typeof value[0] === 'number' ? value[0] : ''}\n />\n {AfterInput}\n </div>\n </li>\n <li>\n {CustomLabel !== undefined ? (\n CustomLabel\n ) : (\n <FieldLabel {...getCoordinateFieldLabel('latitude')} />\n )}\n <div className=\"input-wrapper\">\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-latitude-${path.replace(/\\./g, '__')}`}\n name={`${path}.latitude`}\n onChange={(e) => handleChange(e, 1)}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={value && typeof value[1] === 'number' ? value[1] : ''}\n />\n {AfterInput}\n </div>\n </li>\n </ul>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n )\n}\n\nexport const Point = withCondition(PointField)\n"],"names":["getTranslation","React","useCallback","useField","withCondition","useTranslation","fieldBaseClass","baseClass","FieldDescription","FieldError","FieldLabel","useFieldProps","PointField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","step","style","validate","width","i18n","t","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","setValue","showError","handleChange","e","index","val","parseFloat","target","Number","isNaN","coordinates","getCoordinateFieldLabel","type","suffix","fieldLabel","div","filter","Boolean","join","ul","li","undefined","input","disabled","id","replace","onChange","Point"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|