@payloadcms/ui 3.0.0-beta.72 → 3.0.0-beta.74
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/ArrayAction/index.scss +0 -13
- package/dist/elements/Banner/index.scss +1 -1
- package/dist/elements/Button/index.js +1 -1
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/index.scss +112 -118
- package/dist/elements/Button/types.d.ts +1 -1
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/Card/index.scss +38 -9
- package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +2 -1
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/Collapsible/index.scss +61 -30
- package/dist/elements/ColumnSelector/index.scss +20 -2
- package/dist/elements/DocumentControls/index.scss +2 -2
- package/dist/elements/DocumentDrawer/index.scss +4 -6
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +4 -2
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/index.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js +10 -4
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +1 -0
- package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
- package/dist/elements/Drawer/index.scss +11 -7
- package/dist/elements/Dropzone/index.js +2 -2
- package/dist/elements/Dropzone/index.js.map +1 -1
- package/dist/elements/Dropzone/index.scss +7 -3
- package/dist/elements/EditMany/index.scss +2 -2
- package/dist/elements/EditUpload/index.scss +4 -1
- package/dist/elements/FileDetails/FileMeta/index.scss +1 -0
- package/dist/elements/FileDetails/index.d.ts.map +1 -1
- package/dist/elements/FileDetails/index.js +3 -1
- package/dist/elements/FileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/index.scss +28 -12
- package/dist/elements/Hamburger/index.d.ts.map +1 -1
- package/dist/elements/Hamburger/index.js +17 -41
- package/dist/elements/Hamburger/index.js.map +1 -1
- package/dist/elements/Hamburger/index.scss +22 -102
- package/dist/elements/IDLabel/index.js +1 -1
- package/dist/elements/IDLabel/index.js.map +1 -1
- package/dist/elements/IDLabel/index.scss +2 -2
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +5 -1
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/index.scss +6 -12
- package/dist/elements/NavGroup/index.scss +2 -2
- package/dist/elements/Pill/index.d.ts.map +1 -1
- package/dist/elements/Pill/index.js +1 -5
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/Pill/index.scss +8 -21
- package/dist/elements/Popup/index.scss +6 -0
- package/dist/elements/PreviewButton/index.d.ts.map +1 -1
- package/dist/elements/PreviewButton/index.js +3 -1
- package/dist/elements/PreviewButton/index.js.map +1 -1
- package/dist/elements/PublishButton/index.js +1 -1
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.scss +25 -3
- package/dist/elements/ReactSelect/MultiValueLabel/index.scss +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.scss +3 -3
- package/dist/elements/ReactSelect/ValueContainer/index.scss +5 -12
- package/dist/elements/ReactSelect/index.scss +2 -3
- package/dist/elements/RenderTitle/index.scss +1 -1
- package/dist/elements/SaveButton/index.d.ts.map +1 -1
- package/dist/elements/SaveButton/index.js +4 -2
- package/dist/elements/SaveButton/index.js.map +1 -1
- package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
- package/dist/elements/SaveDraftButton/index.js +4 -2
- package/dist/elements/SaveDraftButton/index.js.map +1 -1
- package/dist/elements/SearchFilter/index.d.ts.map +1 -1
- package/dist/elements/SearchFilter/index.js +11 -15
- package/dist/elements/SearchFilter/index.js.map +1 -1
- package/dist/elements/SearchFilter/index.scss +2 -1
- package/dist/elements/SelectRow/index.scss +1 -0
- package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +2 -0
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Code/index.scss +1 -1
- package/dist/elements/Table/DefaultCell/fields/JSON/index.scss +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +19 -3
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/index.scss +10 -1
- package/dist/elements/ThumbnailCard/index.scss +10 -1
- package/dist/elements/Upload/index.scss +2 -1
- package/dist/exports/client/{CodeEditor-OI35YO7H.js → CodeEditor-UPOVAXRP.js} +2 -2
- package/dist/exports/client/{CodeEditor-OI35YO7H.js.map → CodeEditor-UPOVAXRP.js.map} +2 -2
- package/dist/exports/client/{DatePicker-5IFHNQHA.js → DatePicker-XJHHMZP7.js} +2 -2
- package/dist/exports/client/chunk-TIH7OFW3.js +30 -0
- package/dist/exports/client/{chunk-WDFUZ6GL.js.map → chunk-TIH7OFW3.js.map} +2 -2
- package/dist/exports/client/index.d.ts +1 -0
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +27 -27
- package/dist/exports/client/index.js.map +4 -4
- package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
- package/dist/fields/Array/ArrayRow.js +4 -2
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.scss +3 -1
- package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.scss +3 -4
- package/dist/fields/Blocks/SectionTitle/index.scss +1 -0
- package/dist/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Checkbox/index.scss +7 -8
- package/dist/fields/Code/index.scss +6 -0
- package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
- package/dist/fields/ConfirmPassword/index.js +10 -16
- 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.map +1 -1
- package/dist/fields/Email/index.d.ts.map +1 -1
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/JSON/index.d.ts.map +1 -1
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Password/index.d.ts +2 -2
- package/dist/fields/Password/index.d.ts.map +1 -1
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Point/index.d.ts.map +1 -1
- package/dist/fields/Point/index.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.js +4 -1
- package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.scss +13 -6
- package/dist/fields/RadioGroup/index.scss +5 -1
- package/dist/fields/Relationship/AddNew/index.scss +3 -0
- package/dist/fields/Relationship/index.d.ts.map +1 -1
- package/dist/fields/Relationship/index.js +2 -1
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/index.scss +7 -0
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +8 -5
- package/dist/fields/Select/index.d.ts.map +1 -1
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Text/Input.d.ts.map +1 -1
- package/dist/fields/Text/Input.js +13 -17
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Text/index.d.ts.map +1 -1
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Text/index.scss +6 -0
- package/dist/fields/Textarea/index.d.ts.map +1 -1
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Textarea/index.scss +1 -6
- package/dist/fields/Upload/index.scss +10 -3
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +17 -9
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/RenderFields/index.scss +1 -1
- package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts +1 -0
- package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +2 -1
- package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
- package/dist/forms/buildStateFromSchema/index.d.ts +1 -0
- package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
- package/dist/forms/buildStateFromSchema/index.js +2 -1
- package/dist/forms/buildStateFromSchema/index.js.map +1 -1
- package/dist/forms/buildStateFromSchema/iterateFields.d.ts +2 -1
- package/dist/forms/buildStateFromSchema/iterateFields.d.ts.map +1 -1
- package/dist/forms/buildStateFromSchema/iterateFields.js +2 -1
- package/dist/forms/buildStateFromSchema/iterateFields.js.map +1 -1
- package/dist/forms/useField/index.d.ts.map +1 -1
- package/dist/forms/useField/index.js +13 -7
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/forms/useField/types.d.ts +2 -2
- package/dist/forms/useField/types.d.ts.map +1 -1
- package/dist/forms/useField/types.js.map +1 -1
- package/dist/icons/Calendar/index.d.ts.map +1 -1
- package/dist/icons/Calendar/index.js +8 -33
- package/dist/icons/Calendar/index.js.map +1 -1
- package/dist/icons/Calendar/index.scss +1 -1
- package/dist/icons/Check/index.d.ts.map +1 -1
- package/dist/icons/Check/index.js +8 -17
- package/dist/icons/Check/index.js.map +1 -1
- package/dist/icons/Check/index.scss +1 -1
- package/dist/icons/Chevron/index.js +5 -4
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/Chevron/index.scss +2 -5
- package/dist/icons/CloseMenu/index.d.ts.map +1 -1
- package/dist/icons/CloseMenu/index.js +8 -22
- package/dist/icons/CloseMenu/index.js.map +1 -1
- package/dist/icons/CloseMenu/index.scss +2 -2
- package/dist/icons/CodeBlock/index.d.ts.map +1 -1
- package/dist/icons/CodeBlock/index.js +8 -14
- package/dist/icons/CodeBlock/index.js.map +1 -1
- package/dist/icons/Copy/index.d.ts.map +1 -1
- package/dist/icons/Copy/index.js +12 -16
- package/dist/icons/Copy/index.js.map +1 -1
- package/dist/icons/Copy/index.scss +1 -1
- package/dist/icons/DragHandle/index.d.ts.map +1 -1
- package/dist/icons/DragHandle/index.js +19 -25
- package/dist/icons/DragHandle/index.js.map +1 -1
- package/dist/icons/DragHandle/index.scss +2 -0
- package/dist/icons/Edit/index.d.ts.map +1 -1
- package/dist/icons/Edit/index.js +8 -21
- package/dist/icons/Edit/index.js.map +1 -1
- package/dist/icons/Edit/index.scss +3 -3
- package/dist/icons/Line/index.d.ts.map +1 -1
- package/dist/icons/Line/index.js +7 -6
- package/dist/icons/Line/index.js.map +1 -1
- package/dist/icons/Line/index.scss +1 -1
- package/dist/icons/Link/index.d.ts.map +1 -1
- package/dist/icons/Link/index.js +11 -14
- package/dist/icons/Link/index.js.map +1 -1
- package/dist/icons/Link/index.scss +1 -1
- package/dist/icons/LogOut/index.d.ts.map +1 -1
- package/dist/icons/LogOut/index.js +9 -24
- package/dist/icons/LogOut/index.js.map +1 -1
- package/dist/icons/LogOut/index.scss +1 -1
- package/dist/icons/Menu/index.d.ts.map +1 -1
- package/dist/icons/Menu/index.js +10 -28
- package/dist/icons/Menu/index.js.map +1 -1
- package/dist/icons/Menu/index.scss +3 -2
- package/dist/icons/MinimizeMaximize/index.d.ts.map +1 -1
- package/dist/icons/MinimizeMaximize/index.js +8 -35
- package/dist/icons/MinimizeMaximize/index.js.map +1 -1
- package/dist/icons/More/index.d.ts.map +1 -1
- package/dist/icons/More/index.js +10 -13
- package/dist/icons/More/index.js.map +1 -1
- package/dist/icons/More/index.scss +1 -0
- package/dist/icons/Plus/index.d.ts.map +1 -1
- package/dist/icons/Plus/index.js +10 -20
- package/dist/icons/Plus/index.js.map +1 -1
- package/dist/icons/Plus/index.scss +1 -1
- package/dist/icons/Search/index.d.ts.map +1 -1
- package/dist/icons/Search/index.js +8 -18
- package/dist/icons/Search/index.js.map +1 -1
- package/dist/icons/Search/index.scss +1 -1
- package/dist/icons/Swap/index.d.ts.map +1 -1
- package/dist/icons/Swap/index.js +8 -28
- package/dist/icons/Swap/index.js.map +1 -1
- package/dist/icons/Swap/index.scss +2 -2
- package/dist/icons/X/index.d.ts.map +1 -1
- package/dist/icons/X/index.js +10 -21
- package/dist/icons/X/index.js.map +1 -1
- package/dist/icons/X/index.scss +3 -3
- package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +2 -1
- package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/collections.js +2 -1
- package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +2 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.js +21 -24
- package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +2 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.js +2 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/index.js +2 -0
- package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
- package/dist/scss/app.scss +2 -1
- package/dist/scss/toasts.scss +10 -3
- package/dist/scss/type.scss +14 -23
- package/dist/scss/vars.scss +26 -47
- package/dist/styles.css +1 -1
- package/dist/utilities/buildFormState.d.ts.map +1 -1
- package/dist/utilities/buildFormState.js +1 -4
- package/dist/utilities/buildFormState.js.map +1 -1
- package/package.json +5 -5
- package/dist/exports/client/chunk-WDFUZ6GL.js +0 -30
- /package/dist/exports/client/{DatePicker-5IFHNQHA.js.map → DatePicker-XJHHMZP7.js.map} +0 -0
|
@@ -8,8 +8,7 @@
|
|
|
8
8
|
.rs__control {
|
|
9
9
|
@include formInput;
|
|
10
10
|
height: auto;
|
|
11
|
-
padding
|
|
12
|
-
padding-bottom: base(0.25);
|
|
11
|
+
padding: base(0.4) base(0.6);
|
|
13
12
|
flex-wrap: nowrap;
|
|
14
13
|
}
|
|
15
14
|
|
|
@@ -73,6 +72,6 @@
|
|
|
73
72
|
}
|
|
74
73
|
|
|
75
74
|
&.rs--is-disabled .rs__control {
|
|
76
|
-
|
|
75
|
+
@include readOnly;
|
|
77
76
|
}
|
|
78
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/SaveButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAA;AASrC,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/SaveButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAA;AASrC,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAqC1D,CAAA;AAED,KAAK,KAAK,GAAG;IACX,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAGtC,CAAA"}
|
|
@@ -35,9 +35,11 @@ export const DefaultSaveButton = ({ label: labelProp })=>{
|
|
|
35
35
|
return /*#__PURE__*/ _jsx(FormSubmit, {
|
|
36
36
|
buttonId: "action-save",
|
|
37
37
|
disabled: forceDisable,
|
|
38
|
-
onClick: ()=>
|
|
38
|
+
onClick: ()=>{
|
|
39
|
+
return void submit();
|
|
40
|
+
},
|
|
39
41
|
ref: ref,
|
|
40
|
-
size: "
|
|
42
|
+
size: "medium",
|
|
41
43
|
type: "button",
|
|
42
44
|
children: label
|
|
43
45
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/SaveButton/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useRef } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nexport const DefaultSaveButton: React.FC<{ label?: string }> = ({ label: labelProp }) => {\n const { t } = useTranslation()\n const { submit } = useForm()\n const modified = useFormModified()\n const label = labelProp || t('general:save')\n const ref = useRef<HTMLButtonElement>(null)\n const editDepth = useEditDepth()\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n if (forceDisable) {\n // absorb the event\n }\n\n e.preventDefault()\n e.stopPropagation()\n if (ref?.current) {\n ref.current.click()\n }\n })\n\n return (\n <FormSubmit\n buttonId=\"action-save\"\n disabled={forceDisable}\n onClick={() => submit()}\n ref={ref}\n size=\"
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/SaveButton/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useRef } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nexport const DefaultSaveButton: React.FC<{ label?: string }> = ({ label: labelProp }) => {\n const { t } = useTranslation()\n const { submit } = useForm()\n const modified = useFormModified()\n const label = labelProp || t('general:save')\n const ref = useRef<HTMLButtonElement>(null)\n const editDepth = useEditDepth()\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n if (forceDisable) {\n // absorb the event\n }\n\n e.preventDefault()\n e.stopPropagation()\n if (ref?.current) {\n ref.current.click()\n }\n })\n\n return (\n <FormSubmit\n buttonId=\"action-save\"\n disabled={forceDisable}\n onClick={() => {\n return void submit()\n }}\n ref={ref}\n size=\"medium\"\n type=\"button\"\n >\n {label}\n </FormSubmit>\n )\n}\n\ntype Props = {\n CustomComponent?: React.ReactNode\n}\n\nexport const SaveButton: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) return CustomComponent\n return <DefaultSaveButton />\n}\n"],"names":["React","useRef","useForm","useFormModified","FormSubmit","useHotkey","useEditDepth","useOperation","useTranslation","DefaultSaveButton","label","labelProp","t","submit","modified","ref","editDepth","operation","forceDisable","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","current","click","buttonId","disabled","onClick","size","type","SaveButton","CustomComponent"],"mappings":"AAAA;;AAEA,OAAOA,SAASC,MAAM,QAAQ,QAAO;AAErC,SAASC,OAAO,EAAEC,eAAe,QAAQ,8BAA6B;AACtE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,2BAA0B;AACpD,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,cAAc,QAAQ,uCAAsC;AAErE,OAAO,MAAMC,oBAAkD,CAAC,EAAEC,OAAOC,SAAS,EAAE;IAClF,MAAM,EAAEC,CAAC,EAAE,GAAGJ;IACd,MAAM,EAAEK,MAAM,EAAE,GAAGX;IACnB,MAAMY,WAAWX;IACjB,MAAMO,QAAQC,aAAaC,EAAE;IAC7B,MAAMG,MAAMd,OAA0B;IACtC,MAAMe,YAAYV;IAClB,MAAMW,YAAYV;IAElB,MAAMW,eAAeD,cAAc,YAAY,CAACH;IAEhDT,UAAU;QAAEc,YAAY;QAAMH;QAAWI,UAAU;YAAC;SAAI;IAAC,GAAG,CAACC;QAC3D,IAAIH,cAAc;QAChB,mBAAmB;QACrB;QAEAG,EAAEC,cAAc;QAChBD,EAAEE,eAAe;QACjB,IAAIR,KAAKS,SAAS;YAChBT,IAAIS,OAAO,CAACC,KAAK;QACnB;IACF;IAEA,qBACE,KAACrB;QACCsB,UAAS;QACTC,UAAUT;QACVU,SAAS;YACP,OAAO,KAAKf;QACd;QACAE,KAAKA;QACLc,MAAK;QACLC,MAAK;kBAEJpB;;AAGP,EAAC;AAMD,OAAO,MAAMqB,aAA8B,CAAC,EAAEC,eAAe,EAAE;IAC7D,IAAIA,iBAAiB,OAAOA;IAC5B,qBAAO,KAACvB;AACV,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/SaveDraftButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAclD,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/SaveDraftButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAclD,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAsE1C,CAAA;AAED,KAAK,KAAK,GAAG;IACX,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAG3C,CAAA"}
|
|
@@ -73,9 +73,11 @@ export const DefaultSaveDraftButton = ()=>{
|
|
|
73
73
|
buttonStyle: "secondary",
|
|
74
74
|
className: baseClass,
|
|
75
75
|
disabled: forceDisable,
|
|
76
|
-
onClick:
|
|
76
|
+
onClick: ()=>{
|
|
77
|
+
return void saveDraft();
|
|
78
|
+
},
|
|
77
79
|
ref: ref,
|
|
78
|
-
size: "
|
|
80
|
+
size: "medium",
|
|
79
81
|
type: "button",
|
|
80
82
|
children: t('version:saveDraft')
|
|
81
83
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/SaveDraftButton/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useRef } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nconst baseClass = 'save-draft'\n\nexport const DefaultSaveDraftButton: React.FC = () => {\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n const modified = useFormModified()\n const { code: locale } = useLocale()\n const ref = useRef<HTMLButtonElement>(null)\n const editDepth = useEditDepth()\n const { t } = useTranslation()\n const { submit } = useForm()\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n const saveDraft = useCallback(async () => {\n if (forceDisable) return\n\n const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) method = 'PATCH'\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, locale, id, forceDisable])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n if (forceDisable) {\n // absorb the event\n }\n\n e.preventDefault()\n e.stopPropagation()\n if (ref?.current) {\n ref.current.click()\n }\n })\n\n return (\n <FormSubmit\n buttonId=\"action-save-draft\"\n buttonStyle=\"secondary\"\n className={baseClass}\n disabled={forceDisable}\n onClick={saveDraft}\n ref={ref}\n size=\"
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/SaveDraftButton/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useRef } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nconst baseClass = 'save-draft'\n\nexport const DefaultSaveDraftButton: React.FC = () => {\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n const modified = useFormModified()\n const { code: locale } = useLocale()\n const ref = useRef<HTMLButtonElement>(null)\n const editDepth = useEditDepth()\n const { t } = useTranslation()\n const { submit } = useForm()\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n const saveDraft = useCallback(async () => {\n if (forceDisable) return\n\n const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) method = 'PATCH'\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, locale, id, forceDisable])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n if (forceDisable) {\n // absorb the event\n }\n\n e.preventDefault()\n e.stopPropagation()\n if (ref?.current) {\n ref.current.click()\n }\n })\n\n return (\n <FormSubmit\n buttonId=\"action-save-draft\"\n buttonStyle=\"secondary\"\n className={baseClass}\n disabled={forceDisable}\n onClick={() => {\n return void saveDraft()\n }}\n ref={ref}\n size=\"medium\"\n type=\"button\"\n >\n {t('version:saveDraft')}\n </FormSubmit>\n )\n}\n\ntype Props = {\n CustomComponent?: React.ReactNode\n}\n\nexport const SaveDraftButton: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) return CustomComponent\n return <DefaultSaveDraftButton />\n}\n"],"names":["React","useCallback","useRef","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","baseClass","DefaultSaveDraftButton","routes","api","serverURL","id","collectionSlug","globalSlug","modified","code","locale","ref","editDepth","t","submit","operation","forceDisable","saveDraft","search","action","method","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","current","click","buttonId","buttonStyle","className","disabled","onClick","size","type","SaveDraftButton","CustomComponent"],"mappings":"AAAA;;AAEA,OAAOA,SAASC,WAAW,EAAEC,MAAM,QAAQ,QAAO;AAElD,SAASC,OAAO,EAAEC,eAAe,QAAQ,8BAA6B;AACtE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,2BAA0B;AACpD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,cAAc,QAAQ,uCAAsC;AAErE,MAAMC,YAAY;AAElB,OAAO,MAAMC,yBAAmC;IAC9C,MAAM,EACJC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGV;IACJ,MAAM,EAAEW,EAAE,EAAEC,cAAc,EAAEC,UAAU,EAAE,GAAGZ;IAC3C,MAAMa,WAAWjB;IACjB,MAAM,EAAEkB,MAAMC,MAAM,EAAE,GAAGb;IACzB,MAAMc,MAAMtB,OAA0B;IACtC,MAAMuB,YAAYhB;IAClB,MAAM,EAAEiB,CAAC,EAAE,GAAGd;IACd,MAAM,EAAEe,MAAM,EAAE,GAAGxB;IACnB,MAAMyB,YAAYjB;IAElB,MAAMkB,eAAeD,cAAc,YAAY,CAACP;IAEhD,MAAMS,YAAY7B,YAAY;QAC5B,IAAI4B,cAAc;QAElB,MAAME,SAAS,CAAC,QAAQ,EAAER,OAAO,wCAAwC,CAAC;QAC1E,IAAIS;QACJ,IAAIC,SAAS;QAEb,IAAId,gBAAgB;YAClBa,SAAS,CAAC,EAAEf,UAAU,EAAED,IAAI,CAAC,EAAEG,eAAe,EAAED,KAAK,CAAC,CAAC,EAAEA,GAAG,CAAC,GAAG,GAAG,EAAEa,OAAO,CAAC;YAC7E,IAAIb,IAAIe,SAAS;QACnB;QAEA,IAAIb,YAAY;YACdY,SAAS,CAAC,EAAEf,UAAU,EAAED,IAAI,SAAS,EAAEI,WAAW,EAAEW,OAAO,CAAC;QAC9D;QAEA,MAAMJ,OAAO;YACXK;YACAC;YACAC,WAAW;gBACTC,SAAS;YACX;YACAC,gBAAgB;QAClB;IACF,GAAG;QAACT;QAAQR;QAAgBC;QAAYH;QAAWD;QAAKO;QAAQL;QAAIW;KAAa;IAEjFvB,UAAU;QAAE+B,YAAY;QAAMZ;QAAWa,UAAU;YAAC;SAAI;IAAC,GAAG,CAACC;QAC3D,IAAIV,cAAc;QAChB,mBAAmB;QACrB;QAEAU,EAAEC,cAAc;QAChBD,EAAEE,eAAe;QACjB,IAAIjB,KAAKkB,SAAS;YAChBlB,IAAIkB,OAAO,CAACC,KAAK;QACnB;IACF;IAEA,qBACE,KAACtC;QACCuC,UAAS;QACTC,aAAY;QACZC,WAAWjC;QACXkC,UAAUlB;QACVmB,SAAS;YACP,OAAO,KAAKlB;QACd;QACAN,KAAKA;QACLyB,MAAK;QACLC,MAAK;kBAEJxB,EAAE;;AAGT,EAAC;AAMD,OAAO,MAAMyB,kBAAmC,CAAC,EAAEC,eAAe,EAAE;IAClE,IAAIA,iBAAiB,OAAOA;IAC5B,qBAAO,KAACtC;AACV,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/SearchFilter/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAEhD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,aAAa,CAAC,EAAE,QAAQ,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/SearchFilter/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAEhD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,aAAa,CAAC,EAAE,QAAQ,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAGtC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAiCpD,CAAA"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as _jsx
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
import React, { useEffect, useRef } from 'react';
|
|
4
4
|
import { useDebounce } from '../../hooks/useDebounce.js';
|
|
5
|
-
import { SearchIcon } from '../../icons/Search/index.js';
|
|
6
5
|
import './index.scss';
|
|
7
6
|
const baseClass = 'search-filter';
|
|
8
7
|
export const SearchFilter = (props)=>{
|
|
@@ -21,20 +20,17 @@ export const SearchFilter = (props)=>{
|
|
|
21
20
|
]);
|
|
22
21
|
// Cleans up the search input when the component is unmounted
|
|
23
22
|
useEffect(()=>()=>setValue(''), []);
|
|
24
|
-
return /*#__PURE__*/
|
|
23
|
+
return /*#__PURE__*/ _jsx("div", {
|
|
25
24
|
className: baseClass,
|
|
26
|
-
children:
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}),
|
|
36
|
-
/*#__PURE__*/ _jsx(SearchIcon, {})
|
|
37
|
-
]
|
|
25
|
+
children: /*#__PURE__*/ _jsx("input", {
|
|
26
|
+
"aria-label": label,
|
|
27
|
+
className: `${baseClass}__input`,
|
|
28
|
+
id: "search-filter-input",
|
|
29
|
+
onChange: (e)=>setValue(e.target.value),
|
|
30
|
+
placeholder: label,
|
|
31
|
+
type: "text",
|
|
32
|
+
value: value || ''
|
|
33
|
+
})
|
|
38
34
|
});
|
|
39
35
|
};
|
|
40
36
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/SearchFilter/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect, useRef } from 'react'\n\nexport type SearchFilterProps = {\n fieldName?: string\n handleChange?: (search: string) => void\n initialParams?: ParsedQs\n label: string\n setValue?: (arg: string) => void\n value?: string\n}\n\nimport type { ParsedQs } from 'qs-esm'\n\nimport { useDebounce } from '../../hooks/useDebounce.js'\nimport
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/SearchFilter/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect, useRef } from 'react'\n\nexport type SearchFilterProps = {\n fieldName?: string\n handleChange?: (search: string) => void\n initialParams?: ParsedQs\n label: string\n setValue?: (arg: string) => void\n value?: string\n}\n\nimport type { ParsedQs } from 'qs-esm'\n\nimport { useDebounce } from '../../hooks/useDebounce.js'\nimport './index.scss'\n\nconst baseClass = 'search-filter'\n\nexport const SearchFilter: React.FC<SearchFilterProps> = (props) => {\n const { handleChange, initialParams, label, setValue, value } = props\n\n const previousSearch = useRef(\n typeof initialParams?.search === 'string' ? initialParams?.search : '',\n )\n\n const debouncedSearch = useDebounce(value, 300)\n\n useEffect(() => {\n if (debouncedSearch !== previousSearch.current) {\n if (handleChange) handleChange(debouncedSearch)\n\n previousSearch.current = debouncedSearch\n }\n }, [debouncedSearch, previousSearch, handleChange])\n\n // Cleans up the search input when the component is unmounted\n useEffect(() => () => setValue(''), [])\n\n return (\n <div className={baseClass}>\n <input\n aria-label={label}\n className={`${baseClass}__input`}\n id=\"search-filter-input\"\n onChange={(e) => setValue(e.target.value)}\n placeholder={label}\n type=\"text\"\n value={value || ''}\n />\n </div>\n )\n}\n"],"names":["React","useEffect","useRef","useDebounce","baseClass","SearchFilter","props","handleChange","initialParams","label","setValue","value","previousSearch","search","debouncedSearch","current","div","className","input","aria-label","id","onChange","e","target","placeholder","type"],"mappings":"AAAA;;AACA,OAAOA,SAASC,SAAS,EAAEC,MAAM,QAAQ,QAAO;AAahD,SAASC,WAAW,QAAQ,6BAA4B;AACxD,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,eAA4C,CAACC;IACxD,MAAM,EAAEC,YAAY,EAAEC,aAAa,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,KAAK,EAAE,GAAGL;IAEhE,MAAMM,iBAAiBV,OACrB,OAAOM,eAAeK,WAAW,WAAWL,eAAeK,SAAS;IAGtE,MAAMC,kBAAkBX,YAAYQ,OAAO;IAE3CV,UAAU;QACR,IAAIa,oBAAoBF,eAAeG,OAAO,EAAE;YAC9C,IAAIR,cAAcA,aAAaO;YAE/BF,eAAeG,OAAO,GAAGD;QAC3B;IACF,GAAG;QAACA;QAAiBF;QAAgBL;KAAa;IAElD,6DAA6D;IAC7DN,UAAU,IAAM,IAAMS,SAAS,KAAK,EAAE;IAEtC,qBACE,KAACM;QAAIC,WAAWb;kBACd,cAAA,KAACc;YACCC,cAAYV;YACZQ,WAAW,CAAC,EAAEb,UAAU,OAAO,CAAC;YAChCgB,IAAG;YACHC,UAAU,CAACC,IAAMZ,SAASY,EAAEC,MAAM,CAACZ,KAAK;YACxCa,aAAaf;YACbgB,MAAK;YACLd,OAAOA,SAAS;;;AAIxB,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/StayLoggedIn/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,qBAAqB,mBAAmB,CAAA;AAErD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/StayLoggedIn/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,qBAAqB,mBAAmB,CAAA;AAErD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAoDrC,CAAA"}
|
|
@@ -48,6 +48,7 @@ export const StayLoggedInModal = ()=>{
|
|
|
48
48
|
path: logoutRoute
|
|
49
49
|
}));
|
|
50
50
|
},
|
|
51
|
+
size: "large",
|
|
51
52
|
children: t('authentication:logOut')
|
|
52
53
|
}),
|
|
53
54
|
/*#__PURE__*/ _jsx(Button, {
|
|
@@ -55,6 +56,7 @@ export const StayLoggedInModal = ()=>{
|
|
|
55
56
|
refreshCookie();
|
|
56
57
|
toggleModal(stayLoggedInModalSlug);
|
|
57
58
|
},
|
|
59
|
+
size: "large",
|
|
58
60
|
children: t('authentication:stayLoggedIn')
|
|
59
61
|
})
|
|
60
62
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/StayLoggedIn/index.tsx"],"sourcesContent":["'use client'\nimport { Modal, useModal } from '@faceless-ui/modal'\n// TODO: abstract the `next/navigation` dependency out from this component\nimport { useRouter } from 'next/navigation.js'\nimport React from 'react'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport './index.scss'\n\nconst baseClass = 'stay-logged-in'\n\nexport const stayLoggedInModalSlug = 'stay-logged-in'\n\nexport const StayLoggedInModal: React.FC = () => {\n const { refreshCookie } = useAuth()\n\n const router = useRouter()\n const config = useConfig()\n\n const {\n admin: {\n routes: { logout: logoutRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n const { toggleModal } = useModal()\n const { t } = useTranslation()\n\n return (\n <Modal className={baseClass} slug={stayLoggedInModalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('authentication:stayLoggedIn')}</h1>\n <p>{t('authentication:youAreInactive')}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n onClick={() => {\n toggleModal(stayLoggedInModalSlug)\n router.push(\n formatAdminURL({\n adminRoute,\n path: logoutRoute,\n }),\n )\n }}\n >\n {t('authentication:logOut')}\n </Button>\n <Button\n onClick={() => {\n refreshCookie()\n toggleModal(stayLoggedInModalSlug)\n }}\n >\n {t('authentication:stayLoggedIn')}\n </Button>\n </div>\n </div>\n </Modal>\n )\n}\n"],"names":["Modal","useModal","useRouter","React","Button","useAuth","useConfig","useTranslation","formatAdminURL","baseClass","stayLoggedInModalSlug","StayLoggedInModal","refreshCookie","router","config","admin","routes","logout","logoutRoute","adminRoute","toggleModal","t","className","slug","div","h1","p","buttonStyle","onClick","push","path"],"mappings":"AAAA;;AACA,SAASA,KAAK,EAAEC,QAAQ,QAAQ,qBAAoB;AACpD,0EAA0E;AAC1E,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,OAAOC,WAAW,QAAO;AAEzB,SAASC,MAAM,QAAQ,iCAAgC;AACvD,SAASC,OAAO,QAAQ,gCAA+B;AACvD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,cAAc,QAAQ,oCAAmC;AAClE,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,wBAAwB,iBAAgB;AAErD,OAAO,MAAMC,oBAA8B;IACzC,MAAM,EAAEC,aAAa,EAAE,GAAGP;IAE1B,MAAMQ,SAASX;IACf,MAAMY,SAASR;IAEf,MAAM,EACJS,OAAO,EACLC,QAAQ,EAAEC,QAAQC,WAAW,EAAE,EAChC,EACDF,QAAQ,EAAED,OAAOI,UAAU,EAAE,EAC9B,GAAGL;IAEJ,MAAM,EAAEM,WAAW,EAAE,GAAGnB;IACxB,MAAM,EAAEoB,CAAC,EAAE,GAAGd;IAEd,qBACE,KAACP;QAAMsB,WAAWb;QAAWc,MAAMb;kBACjC,cAAA,MAACc;YAAIF,WAAW,CAAC,EAAEb,UAAU,SAAS,CAAC;;8BACrC,MAACe;oBAAIF,WAAW,CAAC,EAAEb,UAAU,SAAS,CAAC;;sCACrC,KAACgB;sCAAIJ,EAAE;;sCACP,KAACK;sCAAGL,EAAE;;;;8BAER,MAACG;oBAAIF,WAAW,CAAC,EAAEb,UAAU,UAAU,CAAC;;sCACtC,KAACL;4BACCuB,aAAY;4BACZC,SAAS;gCACPR,YAAYV;gCACZG,OAAOgB,IAAI,CACTrB,eAAe;oCACbW;oCACAW,MAAMZ;gCACR;4BAEJ;
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/StayLoggedIn/index.tsx"],"sourcesContent":["'use client'\nimport { Modal, useModal } from '@faceless-ui/modal'\n// TODO: abstract the `next/navigation` dependency out from this component\nimport { useRouter } from 'next/navigation.js'\nimport React from 'react'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport './index.scss'\n\nconst baseClass = 'stay-logged-in'\n\nexport const stayLoggedInModalSlug = 'stay-logged-in'\n\nexport const StayLoggedInModal: React.FC = () => {\n const { refreshCookie } = useAuth()\n\n const router = useRouter()\n const config = useConfig()\n\n const {\n admin: {\n routes: { logout: logoutRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n const { toggleModal } = useModal()\n const { t } = useTranslation()\n\n return (\n <Modal className={baseClass} slug={stayLoggedInModalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('authentication:stayLoggedIn')}</h1>\n <p>{t('authentication:youAreInactive')}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n onClick={() => {\n toggleModal(stayLoggedInModalSlug)\n router.push(\n formatAdminURL({\n adminRoute,\n path: logoutRoute,\n }),\n )\n }}\n size=\"large\"\n >\n {t('authentication:logOut')}\n </Button>\n <Button\n onClick={() => {\n refreshCookie()\n toggleModal(stayLoggedInModalSlug)\n }}\n size=\"large\"\n >\n {t('authentication:stayLoggedIn')}\n </Button>\n </div>\n </div>\n </Modal>\n )\n}\n"],"names":["Modal","useModal","useRouter","React","Button","useAuth","useConfig","useTranslation","formatAdminURL","baseClass","stayLoggedInModalSlug","StayLoggedInModal","refreshCookie","router","config","admin","routes","logout","logoutRoute","adminRoute","toggleModal","t","className","slug","div","h1","p","buttonStyle","onClick","push","path","size"],"mappings":"AAAA;;AACA,SAASA,KAAK,EAAEC,QAAQ,QAAQ,qBAAoB;AACpD,0EAA0E;AAC1E,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,OAAOC,WAAW,QAAO;AAEzB,SAASC,MAAM,QAAQ,iCAAgC;AACvD,SAASC,OAAO,QAAQ,gCAA+B;AACvD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,cAAc,QAAQ,oCAAmC;AAClE,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,wBAAwB,iBAAgB;AAErD,OAAO,MAAMC,oBAA8B;IACzC,MAAM,EAAEC,aAAa,EAAE,GAAGP;IAE1B,MAAMQ,SAASX;IACf,MAAMY,SAASR;IAEf,MAAM,EACJS,OAAO,EACLC,QAAQ,EAAEC,QAAQC,WAAW,EAAE,EAChC,EACDF,QAAQ,EAAED,OAAOI,UAAU,EAAE,EAC9B,GAAGL;IAEJ,MAAM,EAAEM,WAAW,EAAE,GAAGnB;IACxB,MAAM,EAAEoB,CAAC,EAAE,GAAGd;IAEd,qBACE,KAACP;QAAMsB,WAAWb;QAAWc,MAAMb;kBACjC,cAAA,MAACc;YAAIF,WAAW,CAAC,EAAEb,UAAU,SAAS,CAAC;;8BACrC,MAACe;oBAAIF,WAAW,CAAC,EAAEb,UAAU,SAAS,CAAC;;sCACrC,KAACgB;sCAAIJ,EAAE;;sCACP,KAACK;sCAAGL,EAAE;;;;8BAER,MAACG;oBAAIF,WAAW,CAAC,EAAEb,UAAU,UAAU,CAAC;;sCACtC,KAACL;4BACCuB,aAAY;4BACZC,SAAS;gCACPR,YAAYV;gCACZG,OAAOgB,IAAI,CACTrB,eAAe;oCACbW;oCACAW,MAAMZ;gCACR;4BAEJ;4BACAa,MAAK;sCAEJV,EAAE;;sCAEL,KAACjB;4BACCwB,SAAS;gCACPhB;gCACAQ,YAAYV;4BACd;4BACAqB,MAAK;sCAEJV,EAAE;;;;;;;AAMf,EAAC"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
vertical-align: middle;
|
|
9
9
|
background: var(--theme-elevation-150);
|
|
10
10
|
color: var(--theme-elevation-800);
|
|
11
|
-
border-radius: $style-radius-
|
|
11
|
+
border-radius: $style-radius-m;
|
|
12
12
|
padding: 0 base(0.25);
|
|
13
13
|
background: var(--theme-elevation-100);
|
|
14
14
|
color: var(--theme-elevation-800);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/elements/Table/DefaultCell/fields/Relationship/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAG5E,OAAO,KAA8B,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/elements/Table/DefaultCell/fields/Relationship/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAG5E,OAAO,KAA8B,MAAM,OAAO,CAAA;AASlD,OAAO,cAAc,CAAA;AAMrB,MAAM,WAAW,qBAAsB,SAAQ,yBAAyB,CAAC,GAAG,CAAC;IAC3E,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAClC,UAAU,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAA;CAC7C;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAyG5D,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { getTranslation } from '@payloadcms/translations';
|
|
4
4
|
import React, { useEffect, useState } from 'react';
|
|
5
5
|
import { useIntersect } from '../../../../../hooks/useIntersect.js';
|
|
@@ -8,10 +8,11 @@ import { useTranslation } from '../../../../../providers/Translation/index.js';
|
|
|
8
8
|
import { canUseDOM } from '../../../../../utilities/canUseDOM.js';
|
|
9
9
|
import { formatDocTitle } from '../../../../../utilities/formatDocTitle.js';
|
|
10
10
|
import { useListRelationships } from '../../../RelationshipProvider/index.js';
|
|
11
|
+
import { FileCell } from '../File/index.js';
|
|
11
12
|
import './index.scss';
|
|
12
13
|
const baseClass = 'relationship-cell';
|
|
13
14
|
const totalToShow = 3;
|
|
14
|
-
export const RelationshipCell = ({ cellData, label, relationTo })=>{
|
|
15
|
+
export const RelationshipCell = ({ cellData, fieldType, label, relationTo, ...props })=>{
|
|
15
16
|
const config = useConfig();
|
|
16
17
|
const { collections, routes } = config;
|
|
17
18
|
const [intersectionRef, entry] = useIntersect();
|
|
@@ -71,11 +72,26 @@ export const RelationshipCell = ({ cellData, label, relationTo })=>{
|
|
|
71
72
|
fallback: `${t('general:untitled')} - ID: ${value}`,
|
|
72
73
|
i18n
|
|
73
74
|
});
|
|
75
|
+
let fileField = null;
|
|
76
|
+
if (fieldType === 'upload') {
|
|
77
|
+
const { name, customCellContext, displayPreview, schemaPath } = props;
|
|
78
|
+
const relatedCollectionPreview = !!relatedCollection.upload.displayPreview;
|
|
79
|
+
const previewAllowed = displayPreview || relatedCollectionPreview && displayPreview !== false;
|
|
80
|
+
if (previewAllowed && document) {
|
|
81
|
+
fileField = /*#__PURE__*/ _jsx(FileCell, {
|
|
82
|
+
cellData: label,
|
|
83
|
+
customCellContext: customCellContext,
|
|
84
|
+
name: name,
|
|
85
|
+
rowData: document,
|
|
86
|
+
schemaPath: schemaPath
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
}
|
|
74
90
|
return /*#__PURE__*/ _jsxs(React.Fragment, {
|
|
75
91
|
children: [
|
|
76
92
|
document === false && `${t('general:untitled')} - ID: ${value}`,
|
|
77
93
|
document === null && `${t('general:loading')}...`,
|
|
78
|
-
document ? label : null,
|
|
94
|
+
document ? fileField || label : null,
|
|
79
95
|
values.length > i + 1 && ', '
|
|
80
96
|
]
|
|
81
97
|
}, i);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/elements/Table/DefaultCell/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { CellComponentProps, DefaultCellComponentProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useState } from 'react'\n\nimport { useIntersect } from '../../../../../hooks/useIntersect.js'\nimport { useConfig } from '../../../../../providers/Config/index.js'\nimport { useTranslation } from '../../../../../providers/Translation/index.js'\nimport { canUseDOM } from '../../../../../utilities/canUseDOM.js'\nimport { formatDocTitle } from '../../../../../utilities/formatDocTitle.js'\nimport { useListRelationships } from '../../../RelationshipProvider/index.js'\nimport './index.scss'\n\ntype Value = { relationTo: string; value: number | string }\nconst baseClass = 'relationship-cell'\nconst totalToShow = 3\n\nexport interface RelationshipCellProps extends DefaultCellComponentProps<any> {\n label: CellComponentProps['label']\n relationTo: CellComponentProps['relationTo']\n}\n\nexport const RelationshipCell: React.FC<RelationshipCellProps> = ({\n cellData,\n label,\n relationTo,\n}) => {\n const config = useConfig()\n const { collections, routes } = config\n const [intersectionRef, entry] = useIntersect()\n const [values, setValues] = useState<Value[]>([])\n const { documents, getRelationships } = useListRelationships()\n const [hasRequested, setHasRequested] = useState(false)\n const { i18n, t } = useTranslation()\n\n const isAboveViewport = canUseDOM ? entry?.boundingClientRect?.top < window.innerHeight : false\n\n useEffect(() => {\n if ((cellData || typeof cellData === 'number') && isAboveViewport && !hasRequested) {\n const formattedValues: Value[] = []\n const arrayCellData = Array.isArray(cellData) ? cellData : [cellData]\n arrayCellData\n .slice(0, arrayCellData.length < totalToShow ? arrayCellData.length : totalToShow)\n .forEach((cell) => {\n if (typeof cell === 'object' && 'relationTo' in cell && 'value' in cell) {\n formattedValues.push(cell)\n }\n if (\n (typeof cell === 'number' || typeof cell === 'string') &&\n typeof relationTo === 'string'\n ) {\n formattedValues.push({\n relationTo,\n value: cell,\n })\n }\n })\n getRelationships(formattedValues)\n setHasRequested(true)\n setValues(formattedValues)\n }\n }, [\n cellData,\n relationTo,\n collections,\n isAboveViewport,\n routes.api,\n hasRequested,\n getRelationships,\n ])\n\n useEffect(() => {\n if (hasRequested) {\n setHasRequested(false)\n }\n }, [cellData])\n\n return (\n <div className={baseClass} ref={intersectionRef}>\n {values.map(({ relationTo, value }, i) => {\n const document = documents[relationTo][value]\n const relatedCollection = collections.find(({ slug }) => slug === relationTo)\n\n const label = formatDocTitle({\n collectionConfig: relatedCollection,\n data: document || null,\n dateFormat: config.admin.dateFormat,\n fallback: `${t('general:untitled')} - ID: ${value}`,\n i18n,\n })\n\n return (\n <React.Fragment key={i}>\n {document === false && `${t('general:untitled')} - ID: ${value}`}\n {document === null && `${t('general:loading')}...`}\n {document ? label : null}\n {values.length > i + 1 && ', '}\n </React.Fragment>\n )\n })}\n {Array.isArray(cellData) &&\n cellData.length > totalToShow &&\n t('fields:itemsAndMore', { count: cellData.length - totalToShow, items: '' })}\n {values.length === 0 && t('general:noLabel', { label: getTranslation(label || '', i18n) })}\n </div>\n )\n}\n"],"names":["getTranslation","React","useEffect","useState","useIntersect","useConfig","useTranslation","canUseDOM","formatDocTitle","useListRelationships","baseClass","totalToShow","RelationshipCell","cellData","label","relationTo","config","collections","routes","intersectionRef","entry","values","setValues","documents","getRelationships","hasRequested","setHasRequested","i18n","t","isAboveViewport","boundingClientRect","top","window","innerHeight","formattedValues","arrayCellData","Array","isArray","slice","length","forEach","cell","push","value","api","div","className","ref","map","i","document","relatedCollection","find","slug","collectionConfig","data","dateFormat","admin","fallback","Fragment","count","items"],"mappings":"AAAA;;AAGA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,SAASC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAElD,SAASC,YAAY,QAAQ,uCAAsC;AACnE,SAASC,SAAS,QAAQ,2CAA0C;AACpE,SAASC,cAAc,QAAQ,gDAA+C;AAC9E,SAASC,SAAS,QAAQ,wCAAuC;AACjE,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,SAASC,oBAAoB,QAAQ,yCAAwC;AAC7E,OAAO,eAAc;AAGrB,MAAMC,YAAY;AAClB,MAAMC,cAAc;AAOpB,OAAO,MAAMC,mBAAoD,CAAC,EAChEC,QAAQ,EACRC,KAAK,EACLC,UAAU,
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/elements/Table/DefaultCell/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { CellComponentProps, DefaultCellComponentProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useState } from 'react'\n\nimport { useIntersect } from '../../../../../hooks/useIntersect.js'\nimport { useConfig } from '../../../../../providers/Config/index.js'\nimport { useTranslation } from '../../../../../providers/Translation/index.js'\nimport { canUseDOM } from '../../../../../utilities/canUseDOM.js'\nimport { formatDocTitle } from '../../../../../utilities/formatDocTitle.js'\nimport { useListRelationships } from '../../../RelationshipProvider/index.js'\nimport { FileCell } from '../File/index.js'\nimport './index.scss'\n\ntype Value = { relationTo: string; value: number | string }\nconst baseClass = 'relationship-cell'\nconst totalToShow = 3\n\nexport interface RelationshipCellProps extends DefaultCellComponentProps<any> {\n label: CellComponentProps['label']\n relationTo: CellComponentProps['relationTo']\n}\n\nexport const RelationshipCell: React.FC<RelationshipCellProps> = ({\n cellData,\n fieldType,\n label,\n relationTo,\n ...props\n}) => {\n const config = useConfig()\n const { collections, routes } = config\n const [intersectionRef, entry] = useIntersect()\n const [values, setValues] = useState<Value[]>([])\n const { documents, getRelationships } = useListRelationships()\n const [hasRequested, setHasRequested] = useState(false)\n const { i18n, t } = useTranslation()\n\n const isAboveViewport = canUseDOM ? entry?.boundingClientRect?.top < window.innerHeight : false\n\n useEffect(() => {\n if ((cellData || typeof cellData === 'number') && isAboveViewport && !hasRequested) {\n const formattedValues: Value[] = []\n const arrayCellData = Array.isArray(cellData) ? cellData : [cellData]\n arrayCellData\n .slice(0, arrayCellData.length < totalToShow ? arrayCellData.length : totalToShow)\n .forEach((cell) => {\n if (typeof cell === 'object' && 'relationTo' in cell && 'value' in cell) {\n formattedValues.push(cell)\n }\n if (\n (typeof cell === 'number' || typeof cell === 'string') &&\n typeof relationTo === 'string'\n ) {\n formattedValues.push({\n relationTo,\n value: cell,\n })\n }\n })\n getRelationships(formattedValues)\n setHasRequested(true)\n setValues(formattedValues)\n }\n }, [\n cellData,\n relationTo,\n collections,\n isAboveViewport,\n routes.api,\n hasRequested,\n getRelationships,\n ])\n\n useEffect(() => {\n if (hasRequested) {\n setHasRequested(false)\n }\n }, [cellData])\n\n return (\n <div className={baseClass} ref={intersectionRef}>\n {values.map(({ relationTo, value }, i) => {\n const document = documents[relationTo][value]\n const relatedCollection = collections.find(({ slug }) => slug === relationTo)\n\n const label = formatDocTitle({\n collectionConfig: relatedCollection,\n data: document || null,\n dateFormat: config.admin.dateFormat,\n fallback: `${t('general:untitled')} - ID: ${value}`,\n i18n,\n })\n\n let fileField = null\n if (fieldType === 'upload') {\n const { name, customCellContext, displayPreview, schemaPath } = props\n const relatedCollectionPreview = !!relatedCollection.upload.displayPreview\n const previewAllowed =\n displayPreview || (relatedCollectionPreview && displayPreview !== false)\n if (previewAllowed && document) {\n fileField = (\n <FileCell\n cellData={label}\n customCellContext={customCellContext}\n name={name}\n rowData={document}\n schemaPath={schemaPath}\n />\n )\n }\n }\n\n return (\n <React.Fragment key={i}>\n {document === false && `${t('general:untitled')} - ID: ${value}`}\n {document === null && `${t('general:loading')}...`}\n {document ? fileField || label : null}\n {values.length > i + 1 && ', '}\n </React.Fragment>\n )\n })}\n {Array.isArray(cellData) &&\n cellData.length > totalToShow &&\n t('fields:itemsAndMore', { count: cellData.length - totalToShow, items: '' })}\n {values.length === 0 && t('general:noLabel', { label: getTranslation(label || '', i18n) })}\n </div>\n )\n}\n"],"names":["getTranslation","React","useEffect","useState","useIntersect","useConfig","useTranslation","canUseDOM","formatDocTitle","useListRelationships","FileCell","baseClass","totalToShow","RelationshipCell","cellData","fieldType","label","relationTo","props","config","collections","routes","intersectionRef","entry","values","setValues","documents","getRelationships","hasRequested","setHasRequested","i18n","t","isAboveViewport","boundingClientRect","top","window","innerHeight","formattedValues","arrayCellData","Array","isArray","slice","length","forEach","cell","push","value","api","div","className","ref","map","i","document","relatedCollection","find","slug","collectionConfig","data","dateFormat","admin","fallback","fileField","name","customCellContext","displayPreview","schemaPath","relatedCollectionPreview","upload","previewAllowed","rowData","Fragment","count","items"],"mappings":"AAAA;;AAGA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,SAASC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAElD,SAASC,YAAY,QAAQ,uCAAsC;AACnE,SAASC,SAAS,QAAQ,2CAA0C;AACpE,SAASC,cAAc,QAAQ,gDAA+C;AAC9E,SAASC,SAAS,QAAQ,wCAAuC;AACjE,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,SAASC,oBAAoB,QAAQ,yCAAwC;AAC7E,SAASC,QAAQ,QAAQ,mBAAkB;AAC3C,OAAO,eAAc;AAGrB,MAAMC,YAAY;AAClB,MAAMC,cAAc;AAOpB,OAAO,MAAMC,mBAAoD,CAAC,EAChEC,QAAQ,EACRC,SAAS,EACTC,KAAK,EACLC,UAAU,EACV,GAAGC,OACJ;IACC,MAAMC,SAASd;IACf,MAAM,EAAEe,WAAW,EAAEC,MAAM,EAAE,GAAGF;IAChC,MAAM,CAACG,iBAAiBC,MAAM,GAAGnB;IACjC,MAAM,CAACoB,QAAQC,UAAU,GAAGtB,SAAkB,EAAE;IAChD,MAAM,EAAEuB,SAAS,EAAEC,gBAAgB,EAAE,GAAGlB;IACxC,MAAM,CAACmB,cAAcC,gBAAgB,GAAG1B,SAAS;IACjD,MAAM,EAAE2B,IAAI,EAAEC,CAAC,EAAE,GAAGzB;IAEpB,MAAM0B,kBAAkBzB,YAAYgB,OAAOU,oBAAoBC,MAAMC,OAAOC,WAAW,GAAG;IAE1FlC,UAAU;QACR,IAAI,AAACY,CAAAA,YAAY,OAAOA,aAAa,QAAO,KAAMkB,mBAAmB,CAACJ,cAAc;YAClF,MAAMS,kBAA2B,EAAE;YACnC,MAAMC,gBAAgBC,MAAMC,OAAO,CAAC1B,YAAYA,WAAW;gBAACA;aAAS;YACrEwB,cACGG,KAAK,CAAC,GAAGH,cAAcI,MAAM,GAAG9B,cAAc0B,cAAcI,MAAM,GAAG9B,aACrE+B,OAAO,CAAC,CAACC;gBACR,IAAI,OAAOA,SAAS,YAAY,gBAAgBA,QAAQ,WAAWA,MAAM;oBACvEP,gBAAgBQ,IAAI,CAACD;gBACvB;gBACA,IACE,AAAC,CAAA,OAAOA,SAAS,YAAY,OAAOA,SAAS,QAAO,KACpD,OAAO3B,eAAe,UACtB;oBACAoB,gBAAgBQ,IAAI,CAAC;wBACnB5B;wBACA6B,OAAOF;oBACT;gBACF;YACF;YACFjB,iBAAiBU;YACjBR,gBAAgB;YAChBJ,UAAUY;QACZ;IACF,GAAG;QACDvB;QACAG;QACAG;QACAY;QACAX,OAAO0B,GAAG;QACVnB;QACAD;KACD;IAEDzB,UAAU;QACR,IAAI0B,cAAc;YAChBC,gBAAgB;QAClB;IACF,GAAG;QAACf;KAAS;IAEb,qBACE,MAACkC;QAAIC,WAAWtC;QAAWuC,KAAK5B;;YAC7BE,OAAO2B,GAAG,CAAC,CAAC,EAAElC,UAAU,EAAE6B,KAAK,EAAE,EAAEM;gBAClC,MAAMC,WAAW3B,SAAS,CAACT,WAAW,CAAC6B,MAAM;gBAC7C,MAAMQ,oBAAoBlC,YAAYmC,IAAI,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASvC;gBAElE,MAAMD,QAAQR,eAAe;oBAC3BiD,kBAAkBH;oBAClBI,MAAML,YAAY;oBAClBM,YAAYxC,OAAOyC,KAAK,CAACD,UAAU;oBACnCE,UAAU,CAAC,EAAE9B,EAAE,oBAAoB,OAAO,EAAEe,MAAM,CAAC;oBACnDhB;gBACF;gBAEA,IAAIgC,YAAY;gBAChB,IAAI/C,cAAc,UAAU;oBAC1B,MAAM,EAAEgD,IAAI,EAAEC,iBAAiB,EAAEC,cAAc,EAAEC,UAAU,EAAE,GAAGhD;oBAChE,MAAMiD,2BAA2B,CAAC,CAACb,kBAAkBc,MAAM,CAACH,cAAc;oBAC1E,MAAMI,iBACJJ,kBAAmBE,4BAA4BF,mBAAmB;oBACpE,IAAII,kBAAkBhB,UAAU;wBAC9BS,0BACE,KAACpD;4BACCI,UAAUE;4BACVgD,mBAAmBA;4BACnBD,MAAMA;4BACNO,SAASjB;4BACTa,YAAYA;;oBAGlB;gBACF;gBAEA,qBACE,MAACjE,MAAMsE,QAAQ;;wBACZlB,aAAa,SAAS,CAAC,EAAEtB,EAAE,oBAAoB,OAAO,EAAEe,MAAM,CAAC;wBAC/DO,aAAa,QAAQ,CAAC,EAAEtB,EAAE,mBAAmB,GAAG,CAAC;wBACjDsB,WAAWS,aAAa9C,QAAQ;wBAChCQ,OAAOkB,MAAM,GAAGU,IAAI,KAAK;;mBAJPA;YAOzB;YACCb,MAAMC,OAAO,CAAC1B,aACbA,SAAS4B,MAAM,GAAG9B,eAClBmB,EAAE,uBAAuB;gBAAEyC,OAAO1D,SAAS4B,MAAM,GAAG9B;gBAAa6D,OAAO;YAAG;YAC5EjD,OAAOkB,MAAM,KAAK,KAAKX,EAAE,mBAAmB;gBAAEf,OAAOhB,eAAegB,SAAS,IAAIc;YAAM;;;AAG9F,EAAC"}
|
|
@@ -19,14 +19,23 @@
|
|
|
19
19
|
|
|
20
20
|
th,
|
|
21
21
|
td {
|
|
22
|
-
padding: base(0.
|
|
22
|
+
padding: base(0.8) base(0.6);
|
|
23
23
|
min-width: 150px;
|
|
24
|
+
|
|
25
|
+
&:first-child {
|
|
26
|
+
padding-inline-start: base(0.8);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
&:last-child {
|
|
30
|
+
padding-inline-end: base(0.8);
|
|
31
|
+
}
|
|
24
32
|
}
|
|
25
33
|
|
|
26
34
|
tbody {
|
|
27
35
|
tr {
|
|
28
36
|
&:nth-child(odd) {
|
|
29
37
|
background: var(--theme-elevation-50);
|
|
38
|
+
border-radius: $style-radius-s;
|
|
30
39
|
}
|
|
31
40
|
}
|
|
32
41
|
}
|
|
@@ -2,9 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
.thumbnail-card {
|
|
4
4
|
@include btn-reset;
|
|
5
|
-
@include shadow;
|
|
5
|
+
@include shadow-m;
|
|
6
6
|
width: 100%;
|
|
7
7
|
background: var(--theme-input-bg);
|
|
8
|
+
border: 1px solid var(--theme-border-color);
|
|
9
|
+
border-radius: var(--style-radius-m);
|
|
10
|
+
transition: border 100ms cubic-bezier(0, 0.2, 0.2, 1);
|
|
8
11
|
|
|
9
12
|
&__label {
|
|
10
13
|
padding: base(0.5);
|
|
@@ -16,6 +19,12 @@
|
|
|
16
19
|
|
|
17
20
|
&--has-on-click {
|
|
18
21
|
cursor: pointer;
|
|
22
|
+
|
|
23
|
+
&:hover,
|
|
24
|
+
&:focus,
|
|
25
|
+
&:active {
|
|
26
|
+
border: 1px solid var(--theme-elevation-350);
|
|
27
|
+
}
|
|
19
28
|
}
|
|
20
29
|
|
|
21
30
|
&--align-label-center {
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
position: relative;
|
|
5
5
|
margin-bottom: var(--base);
|
|
6
6
|
background: var(--theme-elevation-50);
|
|
7
|
+
border-radius: var(--style-radius-s);
|
|
7
8
|
|
|
8
9
|
&__upload {
|
|
9
10
|
display: flex;
|
|
@@ -60,7 +61,7 @@
|
|
|
60
61
|
cursor: pointer;
|
|
61
62
|
background-color: var(--theme-elevation-150);
|
|
62
63
|
border: none;
|
|
63
|
-
border-radius: $style-radius-
|
|
64
|
+
border-radius: $style-radius-m;
|
|
64
65
|
padding: base(0.25) base(0.5);
|
|
65
66
|
text-wrap: nowrap;
|
|
66
67
|
overflow: hidden;
|
|
@@ -20,5 +20,5 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
20
20
|
monaco.config({ paths: { vs: '...' } })
|
|
21
21
|
|
|
22
22
|
For more please check the link https://github.com/suren-atoyan/monaco-loader#config
|
|
23
|
-
`},ye=ve(ut)(we),lt={config:at},Oe=lt;var st=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return function(o){return r.reduceRight(function(i,a){return a(i)},o)}},je=st;function Me(e,t){return Object.keys(t).forEach(function(r){t[r]instanceof Object&&e[r]&&Object.assign(t[r],Me(e[r],t[r]))}),ee(ee({},e),t)}var Pe=Me;var ft={type:"cancelation",msg:"operation is manually canceled"};function dt(e){var t=!1,r=new Promise(function(n,o){e.then(function(i){return t?o(ft):n(i)}),e.catch(o)});return r.cancel=function(){return t=!0},r}var F=dt;var pt=ge.create({config:he,isInitialized:!1,resolve:null,reject:null,monaco:null}),Se=de(pt,2),V=Se[0],$=Se[1];function mt(e){var t=Oe.config(e),r=t.monaco,n=fe(t,["monaco"]);$(function(o){return{config:Pe(o.config,n),monaco:r}})}function gt(){var e=V(function(t){var r=t.monaco,n=t.isInitialized,o=t.resolve;return{monaco:r,isInitialized:n,resolve:o}});if(!e.isInitialized){if($({isInitialized:!0}),e.monaco)return e.resolve(e.monaco),F(te);if(window.monaco&&window.monaco.editor)return Ee(window.monaco),e.resolve(window.monaco),F(te);je(ht,bt)(yt)}return F(te)}function ht(e){return document.body.appendChild(e)}function vt(e){var t=document.createElement("script");return e&&(t.src=e),t}function bt(e){var t=V(function(n){var o=n.config,i=n.reject;return{config:o,reject:i}}),r=vt("".concat(t.config.paths.vs,"/loader.js"));return r.onload=function(){return e()},r.onerror=t.reject,r}function yt(){var e=V(function(r){var n=r.config,o=r.resolve,i=r.reject;return{config:n,resolve:o,reject:i}}),t=window.require;t.config(e.config),t(["vs/editor/editor.main"],function(r){Ee(r),e.resolve(r)},function(r){e.reject(r)})}function Ee(e){V().monaco||$({monaco:e})}function wt(){return V(function(e){var t=e.monaco;return t})}var te=new Promise(function(e,t){return $({resolve:e,reject:t})}),Ot={config:mt,init:gt,__getMonacoInstance:wt},P=Ot;import{memo as jt}from"react";import Mt,{useState as Ie,useRef as I,useCallback as Te,useEffect as Ce}from"react";import{memo as Pt}from"react";import re from"react";import Et from"react";import{useEffect as Dt}from"react";import{useEffect as Wt,useRef as Nt}from"react";import{useState as Nr}from"react";import{memo as Ht}from"react";import _t,{useState as Le,useEffect as H,useRef as O,useCallback as kt}from"react";import{useEffect as Bt,useRef as Kt}from"react";var St={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},ne=St,It={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},Tt=It;function Ct({children:e}){return Et.createElement("div",{style:Tt.container},e)}var Lt=Ct,xt=Lt;function At({width:e,height:t,isEditorReady:r,loading:n,_ref:o,className:i,wrapperProps:a}){return re.createElement("section",{style:{...ne.wrapper,width:e,height:t},...a},!r&&re.createElement(xt,null,n),re.createElement("div",{ref:o,style:{...ne.fullWidth,...!r&&ne.hide},className:i}))}var Rt=At,xe=Pt(Rt);function Vt(e){Dt(e,[])}var Ae=Vt;function zt(e,t,r=!0){let n=Nt(!0);Wt(n.current||!r?()=>{n.current=!1}:e,t)}var y=zt;function W(){}function T(e,t,r,n){return Ut(e,n)||qt(e,t,r,n)}function Ut(e,t){return e.editor.getModel(Re(e,t))}function qt(e,t,r,n){return e.editor.createModel(t,r,n?Re(e,n):void 0)}function Re(e,t){return e.Uri.parse(t)}function Ft({original:e,modified:t,language:r,originalLanguage:n,modifiedLanguage:o,originalModelPath:i,modifiedModelPath:a,keepCurrentOriginalModel:s=!1,keepCurrentModifiedModel:f=!1,theme:v="light",loading:S="Loading...",options:w={},height:k="100%",width:B="100%",className:K,wrapperProps:G={},beforeMount:Y=W,onMount:J=W}){let[b,C]=Ie(!1),[L,d]=Ie(!0),p=I(null),l=I(null),x=I(null),g=I(J),c=I(Y),E=I(!1);Ae(()=>{let u=P.init();return u.then(m=>(l.current=m)&&d(!1)).catch(m=>m?.type!=="cancelation"&&console.error("Monaco initialization: error:",m)),()=>p.current?A():u.cancel()}),y(()=>{let u=p.current.getModifiedEditor();u.getOption(l.current.editor.EditorOption.readOnly)?u.setValue(t||""):t!==u.getValue()&&(u.executeEdits("",[{range:u.getModel().getFullModelRange(),text:t||"",forceMoveMarkers:!0}]),u.pushUndoStop())},[t],b),y(()=>{p.current?.getModel()?.original.setValue(e||"")},[e],b),y(()=>{let{original:u,modified:m}=p.current.getModel();l.current.editor.setModelLanguage(u,n||r||"text"),l.current.editor.setModelLanguage(m,o||r||"text")},[r,n,o],b),y(()=>{l.current?.editor.setTheme(v)},[v],b),y(()=>{p.current?.updateOptions(w)},[w],b);let N=Te(()=>{if(!l.current)return;c.current(l.current);let u=T(l.current,e||"",n||r||"text",i||""),m=T(l.current,t||"",o||r||"text",a||"");p.current?.setModel({original:u,modified:m})},[r,t,o,e,n,i,a]),z=Te(()=>{!E.current&&x.current&&(p.current=l.current.editor.createDiffEditor(x.current,{automaticLayout:!0,...w}),N(),l.current?.editor.setTheme(v),C(!0),E.current=!0)},[w,v,N]);Ce(()=>{b&&g.current(p.current,l.current)},[b]),Ce(()=>{!L&&!b&&z()},[L,b,z]),y(()=>{if(p.current&&l.current){let u=p.current.getOriginalEditor(),m=T(l.current,e||"",n||r||"text",i||"");m!==u.getModel()&&u.setModel(m)}},[i],b),y(()=>{if(p.current&&l.current){let u=p.current.getModifiedEditor(),m=T(l.current,t||"",o||r||"text",a||"");m!==u.getModel()&&u.setModel(m)}},[a],b);function A(){let u=p.current?.getModel();s||u?.original?.dispose(),f||u?.modified?.dispose(),p.current?.dispose()}return Mt.createElement(xe,{width:B,height:k,isEditorReady:b,loading:S,_ref:x,className:K,wrapperProps:G})}var $t=Ft,Vr=jt($t);function Gt(e){let t=Kt();return Bt(()=>{t.current=e},[e]),t.current}var Yt=Gt,_=new Map;function Jt({defaultValue:e,defaultLanguage:t,defaultPath:r,value:n,language:o,path:i,theme:a="light",line:s,loading:f="Loading...",options:v={},overrideServices:S={},saveViewState:w=!0,keepCurrentModel:k=!1,width:B="100%",height:K="100%",className:G,wrapperProps:Y={},beforeMount:J=W,onMount:b=W,onChange:C,onValidate:L=W}){let[d,p]=Le(!1),[l,x]=Le(!0),g=O(null),c=O(null),E=O(null),N=O(b),z=O(J),A=O(),u=O(n),m=Yt(i),ie=O(!1),Q=O(!1);Ae(()=>{let h=P.init();return h.then(j=>(g.current=j)&&x(!1)).catch(j=>j?.type!=="cancelation"&&console.error("Monaco initialization: error:",j)),()=>c.current?Ve():h.cancel()}),y(()=>{let h=T(g.current,e||n||"",t||o||"",i||r||"");h!==c.current?.getModel()&&(w&&_.set(m,c.current?.saveViewState()),c.current?.setModel(h),w&&c.current?.restoreViewState(_.get(i)))},[i],d),y(()=>{c.current?.updateOptions(v)},[v],d),y(()=>{!c.current||n===void 0||(c.current.getOption(g.current.editor.EditorOption.readOnly)?c.current.setValue(n):n!==c.current.getValue()&&(Q.current=!0,c.current.executeEdits("",[{range:c.current.getModel().getFullModelRange(),text:n,forceMoveMarkers:!0}]),c.current.pushUndoStop(),Q.current=!1))},[n],d),y(()=>{let h=c.current?.getModel();h&&o&&g.current?.editor.setModelLanguage(h,o)},[o],d),y(()=>{s!==void 0&&c.current?.revealLine(s)},[s],d),y(()=>{g.current?.editor.setTheme(a)},[a],d);let ae=kt(()=>{if(!(!E.current||!g.current)&&!ie.current){z.current(g.current);let h=i||r,j=T(g.current,n||e||"",t||o||"",h||"");c.current=g.current?.editor.create(E.current,{model:j,automaticLayout:!0,...v},S),w&&c.current.restoreViewState(_.get(h)),g.current.editor.setTheme(a),p(!0),ie.current=!0}},[e,t,r,n,o,i,v,S,w,a]);H(()=>{d&&N.current(c.current,g.current)},[d]),H(()=>{!l&&!d&&ae()},[l,d,ae]),u.current=n,H(()=>{d&&C&&(A.current?.dispose(),A.current=c.current?.onDidChangeModelContent(h=>{Q.current||C(c.current.getValue(),h)}))},[d,C]),H(()=>{if(d){let h=g.current.editor.onDidChangeMarkers(j=>{let X=c.current.getModel()?.uri;if(X&&j.find(Z=>Z.path===X.path)){let Z=g.current.editor.getModelMarkers({resource:X});L?.(Z)}});return()=>{h?.dispose()}}return()=>{}},[d,L]);function Ve(){A.current?.dispose(),k?w&&_.set(i,c.current.saveViewState()):c.current.getModel()?.dispose(),c.current.dispose()}return _t.createElement(xe,{width:B,height:K,isEditorReady:d,loading:f,_ref:E,className:G,wrapperProps:Y})}var Qt=Jt,Xt=Ht(Qt),oe=Xt;import De from"react";var Zt=oe.default||oe,er="code-editor",tr=e=>{let{className:t,height:r,options:n,readOnly:o,...i}=e,{theme:a}=ue(),s=[er,t,i?.defaultLanguage?`language--${i.defaultLanguage}`:""].filter(Boolean).join(" ");return De.createElement(Zt,{className:s,height:r,loading:De.createElement(ce,{height:r}),options:{detectIndentation:!0,minimap:{enabled:!1},readOnly:!!o,scrollBeyondLastLine:!1,tabSize:2,wordWrap:"on",...n},theme:a==="dark"?"vs-dark":"vs",...i})},Gr=tr;export{Gr as default};
|
|
24
|
-
//# sourceMappingURL=CodeEditor-
|
|
23
|
+
`},ye=ve(ut)(we),lt={config:at},Oe=lt;var st=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return function(o){return r.reduceRight(function(i,a){return a(i)},o)}},je=st;function Me(e,t){return Object.keys(t).forEach(function(r){t[r]instanceof Object&&e[r]&&Object.assign(t[r],Me(e[r],t[r]))}),ee(ee({},e),t)}var Pe=Me;var ft={type:"cancelation",msg:"operation is manually canceled"};function dt(e){var t=!1,r=new Promise(function(n,o){e.then(function(i){return t?o(ft):n(i)}),e.catch(o)});return r.cancel=function(){return t=!0},r}var F=dt;var pt=ge.create({config:he,isInitialized:!1,resolve:null,reject:null,monaco:null}),Se=de(pt,2),V=Se[0],$=Se[1];function mt(e){var t=Oe.config(e),r=t.monaco,n=fe(t,["monaco"]);$(function(o){return{config:Pe(o.config,n),monaco:r}})}function gt(){var e=V(function(t){var r=t.monaco,n=t.isInitialized,o=t.resolve;return{monaco:r,isInitialized:n,resolve:o}});if(!e.isInitialized){if($({isInitialized:!0}),e.monaco)return e.resolve(e.monaco),F(te);if(window.monaco&&window.monaco.editor)return Ee(window.monaco),e.resolve(window.monaco),F(te);je(ht,bt)(yt)}return F(te)}function ht(e){return document.body.appendChild(e)}function vt(e){var t=document.createElement("script");return e&&(t.src=e),t}function bt(e){var t=V(function(n){var o=n.config,i=n.reject;return{config:o,reject:i}}),r=vt("".concat(t.config.paths.vs,"/loader.js"));return r.onload=function(){return e()},r.onerror=t.reject,r}function yt(){var e=V(function(r){var n=r.config,o=r.resolve,i=r.reject;return{config:n,resolve:o,reject:i}}),t=window.require;t.config(e.config),t(["vs/editor/editor.main"],function(r){Ee(r),e.resolve(r)},function(r){e.reject(r)})}function Ee(e){V().monaco||$({monaco:e})}function wt(){return V(function(e){var t=e.monaco;return t})}var te=new Promise(function(e,t){return $({resolve:e,reject:t})}),Ot={config:mt,init:gt,__getMonacoInstance:wt},P=Ot;import{memo as jt}from"react";import Mt,{useState as Ie,useRef as I,useCallback as Te,useEffect as Ce}from"react";import{memo as Pt}from"react";import re from"react";import Et from"react";import{useEffect as Dt}from"react";import{useEffect as Wt,useRef as Nt}from"react";import{useState as Nr}from"react";import{memo as Ht}from"react";import _t,{useState as Le,useEffect as H,useRef as O,useCallback as kt}from"react";import{useEffect as Bt,useRef as Kt}from"react";var St={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},ne=St,It={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},Tt=It;function Ct({children:e}){return Et.createElement("div",{style:Tt.container},e)}var Lt=Ct,xt=Lt;function At({width:e,height:t,isEditorReady:r,loading:n,_ref:o,className:i,wrapperProps:a}){return re.createElement("section",{style:{...ne.wrapper,width:e,height:t},...a},!r&&re.createElement(xt,null,n),re.createElement("div",{ref:o,style:{...ne.fullWidth,...!r&&ne.hide},className:i}))}var Rt=At,xe=Pt(Rt);function Vt(e){Dt(e,[])}var Ae=Vt;function zt(e,t,r=!0){let n=Nt(!0);Wt(n.current||!r?()=>{n.current=!1}:e,t)}var y=zt;function W(){}function T(e,t,r,n){return Ut(e,n)||qt(e,t,r,n)}function Ut(e,t){return e.editor.getModel(Re(e,t))}function qt(e,t,r,n){return e.editor.createModel(t,r,n?Re(e,n):void 0)}function Re(e,t){return e.Uri.parse(t)}function Ft({original:e,modified:t,language:r,originalLanguage:n,modifiedLanguage:o,originalModelPath:i,modifiedModelPath:a,keepCurrentOriginalModel:s=!1,keepCurrentModifiedModel:f=!1,theme:v="light",loading:S="Loading...",options:w={},height:k="100%",width:B="100%",className:K,wrapperProps:G={},beforeMount:Y=W,onMount:J=W}){let[b,C]=Ie(!1),[L,d]=Ie(!0),p=I(null),l=I(null),x=I(null),g=I(J),c=I(Y),E=I(!1);Ae(()=>{let u=P.init();return u.then(m=>(l.current=m)&&d(!1)).catch(m=>m?.type!=="cancelation"&&console.error("Monaco initialization: error:",m)),()=>p.current?A():u.cancel()}),y(()=>{let u=p.current.getModifiedEditor();u.getOption(l.current.editor.EditorOption.readOnly)?u.setValue(t||""):t!==u.getValue()&&(u.executeEdits("",[{range:u.getModel().getFullModelRange(),text:t||"",forceMoveMarkers:!0}]),u.pushUndoStop())},[t],b),y(()=>{p.current?.getModel()?.original.setValue(e||"")},[e],b),y(()=>{let{original:u,modified:m}=p.current.getModel();l.current.editor.setModelLanguage(u,n||r||"text"),l.current.editor.setModelLanguage(m,o||r||"text")},[r,n,o],b),y(()=>{l.current?.editor.setTheme(v)},[v],b),y(()=>{p.current?.updateOptions(w)},[w],b);let N=Te(()=>{if(!l.current)return;c.current(l.current);let u=T(l.current,e||"",n||r||"text",i||""),m=T(l.current,t||"",o||r||"text",a||"");p.current?.setModel({original:u,modified:m})},[r,t,o,e,n,i,a]),z=Te(()=>{!E.current&&x.current&&(p.current=l.current.editor.createDiffEditor(x.current,{automaticLayout:!0,...w}),N(),l.current?.editor.setTheme(v),C(!0),E.current=!0)},[w,v,N]);Ce(()=>{b&&g.current(p.current,l.current)},[b]),Ce(()=>{!L&&!b&&z()},[L,b,z]),y(()=>{if(p.current&&l.current){let u=p.current.getOriginalEditor(),m=T(l.current,e||"",n||r||"text",i||"");m!==u.getModel()&&u.setModel(m)}},[i],b),y(()=>{if(p.current&&l.current){let u=p.current.getModifiedEditor(),m=T(l.current,t||"",o||r||"text",a||"");m!==u.getModel()&&u.setModel(m)}},[a],b);function A(){let u=p.current?.getModel();s||u?.original?.dispose(),f||u?.modified?.dispose(),p.current?.dispose()}return Mt.createElement(xe,{width:B,height:k,isEditorReady:b,loading:S,_ref:x,className:K,wrapperProps:G})}var $t=Ft,Vr=jt($t);function Gt(e){let t=Kt();return Bt(()=>{t.current=e},[e]),t.current}var Yt=Gt,_=new Map;function Jt({defaultValue:e,defaultLanguage:t,defaultPath:r,value:n,language:o,path:i,theme:a="light",line:s,loading:f="Loading...",options:v={},overrideServices:S={},saveViewState:w=!0,keepCurrentModel:k=!1,width:B="100%",height:K="100%",className:G,wrapperProps:Y={},beforeMount:J=W,onMount:b=W,onChange:C,onValidate:L=W}){let[d,p]=Le(!1),[l,x]=Le(!0),g=O(null),c=O(null),E=O(null),N=O(b),z=O(J),A=O(),u=O(n),m=Yt(i),ie=O(!1),Q=O(!1);Ae(()=>{let h=P.init();return h.then(j=>(g.current=j)&&x(!1)).catch(j=>j?.type!=="cancelation"&&console.error("Monaco initialization: error:",j)),()=>c.current?Ve():h.cancel()}),y(()=>{let h=T(g.current,e||n||"",t||o||"",i||r||"");h!==c.current?.getModel()&&(w&&_.set(m,c.current?.saveViewState()),c.current?.setModel(h),w&&c.current?.restoreViewState(_.get(i)))},[i],d),y(()=>{c.current?.updateOptions(v)},[v],d),y(()=>{!c.current||n===void 0||(c.current.getOption(g.current.editor.EditorOption.readOnly)?c.current.setValue(n):n!==c.current.getValue()&&(Q.current=!0,c.current.executeEdits("",[{range:c.current.getModel().getFullModelRange(),text:n,forceMoveMarkers:!0}]),c.current.pushUndoStop(),Q.current=!1))},[n],d),y(()=>{let h=c.current?.getModel();h&&o&&g.current?.editor.setModelLanguage(h,o)},[o],d),y(()=>{s!==void 0&&c.current?.revealLine(s)},[s],d),y(()=>{g.current?.editor.setTheme(a)},[a],d);let ae=kt(()=>{if(!(!E.current||!g.current)&&!ie.current){z.current(g.current);let h=i||r,j=T(g.current,n||e||"",t||o||"",h||"");c.current=g.current?.editor.create(E.current,{model:j,automaticLayout:!0,...v},S),w&&c.current.restoreViewState(_.get(h)),g.current.editor.setTheme(a),p(!0),ie.current=!0}},[e,t,r,n,o,i,v,S,w,a]);H(()=>{d&&N.current(c.current,g.current)},[d]),H(()=>{!l&&!d&&ae()},[l,d,ae]),u.current=n,H(()=>{d&&C&&(A.current?.dispose(),A.current=c.current?.onDidChangeModelContent(h=>{Q.current||C(c.current.getValue(),h)}))},[d,C]),H(()=>{if(d){let h=g.current.editor.onDidChangeMarkers(j=>{let X=c.current.getModel()?.uri;if(X&&j.find(Z=>Z.path===X.path)){let Z=g.current.editor.getModelMarkers({resource:X});L?.(Z)}});return()=>{h?.dispose()}}return()=>{}},[d,L]);function Ve(){A.current?.dispose(),k?w&&_.set(i,c.current.saveViewState()):c.current.getModel()?.dispose(),c.current.dispose()}return _t.createElement(xe,{width:B,height:K,isEditorReady:d,loading:f,_ref:E,className:G,wrapperProps:Y})}var Qt=Jt,Xt=Ht(Qt),oe=Xt;import De from"react";var Zt=oe.default||oe,er="code-editor",tr=e=>{let{className:t,height:r,options:n,readOnly:o,...i}=e,{theme:a}=ue(),s=[er,t,i?.defaultLanguage?`language--${i.defaultLanguage}`:"",o&&"read-only"].filter(Boolean).join(" ");return De.createElement(Zt,{className:s,height:r,loading:De.createElement(ce,{height:r}),options:{detectIndentation:!0,minimap:{enabled:!1},readOnly:!!o,scrollBeyondLastLine:!1,tabSize:2,wordWrap:"on",...n},theme:a==="dark"?"vs-dark":"vs",...i})},Gr=tr;export{Gr as default};
|
|
24
|
+
//# sourceMappingURL=CodeEditor-UPOVAXRP.js.map
|