@webiny/app-headless-cms 5.27.0-beta.0 → 5.28.0
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/HeadlessCMS.js +33 -13
- package/HeadlessCMS.js.map +1 -1
- package/admin/components/ContentEntryForm/ContentEntryForm.js +61 -34
- package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
- package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +41 -18
- package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -1
- package/admin/components/ContentEntryForm/Fields.js +22 -9
- package/admin/components/ContentEntryForm/Fields.js.map +1 -1
- package/admin/components/ContentEntryForm/Label.js +23 -9
- package/admin/components/ContentEntryForm/Label.js.map +1 -1
- package/admin/components/ContentEntryForm/RenderFieldElement.js +31 -15
- package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
- package/admin/components/ContentEntryForm/functions/createValidators.js +23 -8
- package/admin/components/ContentEntryForm/functions/createValidators.js.map +1 -1
- package/admin/components/ContentEntryForm/functions/getValue.js +11 -2
- package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
- package/admin/components/ContentEntryForm/functions/setValue.js +16 -4
- package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
- package/admin/components/ContentEntryForm/useBind.js +31 -27
- package/admin/components/ContentEntryForm/useBind.js.map +1 -1
- package/admin/components/ContentEntryForm/useContentEntryForm.js +77 -52
- package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
- package/admin/components/ContentEntryForm/useRenderPlugins.js +14 -5
- package/admin/components/ContentEntryForm/useRenderPlugins.js.map +1 -1
- package/admin/components/ContentModelEditor/Context.js +73 -43
- package/admin/components/ContentModelEditor/Context.js.map +1 -1
- package/admin/components/ContentModelEditor/Editor.js +85 -50
- package/admin/components/ContentModelEditor/Editor.js.map +1 -1
- package/admin/components/ContentModelEditor/FieldsSidebar.js +37 -19
- package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
- package/admin/components/ContentModelEditor/Header.js +24 -10
- package/admin/components/ContentModelEditor/Header.js.map +1 -1
- package/admin/components/ContentModelEditor/PreviewTab.js +36 -17
- package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
- package/admin/components/ContentModelEditor/useContentModelEditor.js +15 -4
- package/admin/components/ContentModelEditor/useContentModelEditor.js.map +1 -1
- package/admin/components/DragPreview.js +27 -12
- package/admin/components/DragPreview.js.map +1 -1
- package/admin/components/Draggable.js +22 -8
- package/admin/components/Draggable.js.map +1 -1
- package/admin/components/DropZone/Center.js +26 -12
- package/admin/components/DropZone/Center.js.map +1 -1
- package/admin/components/DropZone/Horizontal.js +31 -17
- package/admin/components/DropZone/Horizontal.js.map +1 -1
- package/admin/components/DropZone/Vertical.js +29 -15
- package/admin/components/DropZone/Vertical.js.map +1 -1
- package/admin/components/DropZone/index.js +31 -4
- package/admin/components/DropZone/index.js.map +1 -1
- package/admin/components/Droppable.js +20 -6
- package/admin/components/Droppable.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +50 -27
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +55 -36
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +60 -21
- package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js +50 -32
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js +13 -3
- package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js +16 -6
- package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog.js +105 -69
- package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
- package/admin/components/FieldEditor/Field.js +86 -51
- package/admin/components/FieldEditor/Field.js.map +1 -1
- package/admin/components/FieldEditor/FieldEditor.js +66 -40
- package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
- package/admin/components/FieldEditor/FieldEditorContext.js +51 -27
- package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
- package/admin/components/FieldEditor/Styled.js +24 -8
- package/admin/components/FieldEditor/Styled.js.map +1 -1
- package/admin/components/FieldEditor/index.js +21 -2
- package/admin/components/FieldEditor/index.js.map +1 -1
- package/admin/components/FieldEditor/useFieldEditor.js +13 -4
- package/admin/components/FieldEditor/useFieldEditor.js.map +1 -1
- package/admin/components/FieldEditor/utils/deleteField.js +19 -5
- package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
- package/admin/components/FieldEditor/utils/getFieldPosition.js +11 -2
- package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
- package/admin/components/FieldEditor/utils/index.js +39 -4
- package/admin/components/FieldEditor/utils/index.js.map +1 -1
- package/admin/components/FieldEditor/utils/moveField.js +30 -20
- package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
- package/admin/components/FieldEditor/utils/moveRow.js +19 -6
- package/admin/components/FieldEditor/utils/moveRow.js.map +1 -1
- package/admin/constants/statusLabels.js +21 -9
- package/admin/constants/statusLabels.js.map +1 -1
- package/admin/contexts/Cms/NetworkError.js +14 -4
- package/admin/contexts/Cms/NetworkError.js.map +1 -1
- package/admin/contexts/Cms/index.js +29 -11
- package/admin/contexts/Cms/index.js.map +1 -1
- package/admin/elements/ContentGroupMenuElement.js +27 -12
- package/admin/elements/ContentGroupMenuElement.js.map +1 -1
- package/admin/elements/ContentModelMenuElement.js +27 -12
- package/admin/elements/ContentModelMenuElement.js.map +1 -1
- package/admin/elements/NothingToShowElement.js +51 -30
- package/admin/elements/NothingToShowElement.js.map +1 -1
- package/admin/graphql/contentEntries.js +84 -40
- package/admin/graphql/contentEntries.js.map +1 -1
- package/admin/graphql/contentModels.js +20 -6
- package/admin/graphql/contentModels.js.map +1 -1
- package/admin/graphql/createFieldsList.js +19 -6
- package/admin/graphql/createFieldsList.js.map +1 -1
- package/admin/hooks/index.js +68 -6
- package/admin/hooks/index.js.map +1 -1
- package/admin/hooks/useApolloClient.js +13 -3
- package/admin/hooks/useApolloClient.js.map +1 -1
- package/admin/hooks/useCms.js +13 -4
- package/admin/hooks/useCms.js.map +1 -1
- package/admin/hooks/useLazyQuery.js +18 -6
- package/admin/hooks/useLazyQuery.js.map +1 -1
- package/admin/hooks/useMutation.js +18 -6
- package/admin/hooks/useMutation.js.map +1 -1
- package/admin/hooks/usePermission.js +39 -23
- package/admin/hooks/usePermission.js.map +1 -1
- package/admin/hooks/useQuery.js +18 -6
- package/admin/hooks/useQuery.js.map +1 -1
- package/admin/hooks/useQueryLocale.js +21 -7
- package/admin/hooks/useQueryLocale.js.map +1 -1
- package/admin/menus/CmsMenuLoader.js +32 -14
- package/admin/menus/CmsMenuLoader.js.map +1 -1
- package/admin/menus/ContentGroupsMenuItems.js +43 -24
- package/admin/menus/ContentGroupsMenuItems.js.map +1 -1
- package/admin/menus/GlobalSearchPlugins.js +31 -15
- package/admin/menus/GlobalSearchPlugins.js.map +1 -1
- package/admin/menus/NothingToShowElement.js +26 -11
- package/admin/menus/NothingToShowElement.js.map +1 -1
- package/admin/plugins/apiInformation/index.js +17 -5
- package/admin/plugins/apiInformation/index.js.map +1 -1
- package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js +33 -21
- package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -1
- package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js +33 -20
- package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -1
- package/admin/plugins/editor/defaultBar/BackButton.js +28 -11
- package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/CreateContentButton.js +39 -20
- package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Divider.js +14 -3
- package/admin/plugins/editor/defaultBar/Divider.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +67 -39
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js +29 -13
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js +30 -10
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/index.js +15 -1
- package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Name/Name.js +47 -30
- package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Name/NameStyled.js +22 -7
- package/admin/plugins/editor/defaultBar/Name/NameStyled.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Name/index.js +13 -1
- package/admin/plugins/editor/defaultBar/Name/index.js.map +1 -1
- package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +40 -20
- package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/index.js +32 -15
- package/admin/plugins/editor/defaultBar/index.js.map +1 -1
- package/admin/plugins/editor/formSettings/components/GeneralSettings.js +33 -19
- package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
- package/admin/plugins/editor/formSettings/components/GroupSelect.js +27 -10
- package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -1
- package/admin/plugins/editor/formSettings/index.js +21 -6
- package/admin/plugins/editor/formSettings/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/Accordion.js +43 -25
- package/admin/plugins/fieldRenderers/Accordion.js.map +1 -1
- package/admin/plugins/fieldRenderers/DynamicSection.js +42 -24
- package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
- package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js +27 -12
- package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -1
- package/admin/plugins/fieldRenderers/boolean/index.js +13 -2
- package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/checkboxes.js +30 -15
- package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateOnly.js +34 -15
- package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +59 -36
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js +50 -30
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Input.js +24 -8
- package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Select.js +18 -5
- package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Time.js +34 -15
- package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js +36 -18
- package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js +47 -26
- package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/index.js +15 -3
- package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/utils.js +48 -17
- package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/File.js +34 -16
- package/admin/plugins/fieldRenderers/file/File.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/fileField.js +30 -14
- package/admin/plugins/fieldRenderers/file/fileField.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/fileFields.js +54 -33
- package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/index.js +15 -3
- package/admin/plugins/fieldRenderers/file/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/utils.js +27 -10
- package/admin/plugins/fieldRenderers/file/utils.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/index.js +15 -3
- package/admin/plugins/fieldRenderers/longText/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/longText.js +27 -12
- package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/longTexts.js +33 -16
- package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/index.js +15 -3
- package/admin/plugins/fieldRenderers/number/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/numberInput.js +27 -12
- package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/numberInputs.js +33 -16
- package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/StyledComponents.js +17 -5
- package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/index.js +15 -3
- package/admin/plugins/fieldRenderers/object/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/multipleObjects.js +51 -29
- package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/singleObject.js +35 -17
- package/admin/plugins/fieldRenderers/object/singleObject.js.map +1 -1
- package/admin/plugins/fieldRenderers/radioButtons.js +29 -14
- package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js +61 -36
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js +58 -35
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js +37 -18
- package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js +38 -18
- package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +87 -53
- package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js +15 -3
- package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/graphql.js +18 -5
- package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/helpers.js +23 -5
- package/admin/plugins/fieldRenderers/ref/components/helpers.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/renderItem.js +42 -19
- package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/types.js +5 -1
- package/admin/plugins/fieldRenderers/ref/components/types.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/useReference.js +59 -41
- package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/useReferences.js +60 -41
- package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +27 -10
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js +30 -10
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/index.js +15 -3
- package/admin/plugins/fieldRenderers/ref/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/refInput.js +26 -11
- package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/refInputs.js +25 -11
- package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/index.js +15 -3
- package/admin/plugins/fieldRenderers/richText/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/richTextInput.js +32 -15
- package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js +43 -22
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/select.js +26 -12
- package/admin/plugins/fieldRenderers/select.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/index.js +15 -3
- package/admin/plugins/fieldRenderers/text/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/textInput.js +27 -12
- package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/textInputs.js +33 -16
- package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
- package/admin/plugins/fieldValidators/date/availableValidators.js +11 -2
- package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -1
- package/admin/plugins/fieldValidators/date/createDateInputField.js +27 -11
- package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
- package/admin/plugins/fieldValidators/dateGte.js +32 -15
- package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
- package/admin/plugins/fieldValidators/dateLte.js +32 -15
- package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
- package/admin/plugins/fieldValidators/gte.js +23 -9
- package/admin/plugins/fieldValidators/gte.js.map +1 -1
- package/admin/plugins/fieldValidators/in.js +23 -9
- package/admin/plugins/fieldValidators/in.js.map +1 -1
- package/admin/plugins/fieldValidators/lte.js +23 -9
- package/admin/plugins/fieldValidators/lte.js.map +1 -1
- package/admin/plugins/fieldValidators/maxLength.js +23 -9
- package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
- package/admin/plugins/fieldValidators/minLength.js +23 -9
- package/admin/plugins/fieldValidators/minLength.js.map +1 -1
- package/admin/plugins/fieldValidators/pattern.js +40 -22
- package/admin/plugins/fieldValidators/pattern.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/email.js +8 -1
- package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js +8 -1
- package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js +8 -1
- package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/upperCase.js +8 -1
- package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js +8 -1
- package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/url.js +8 -1
- package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
- package/admin/plugins/fieldValidators/required.js +8 -1
- package/admin/plugins/fieldValidators/required.js.map +1 -1
- package/admin/plugins/fieldValidators/unique.js +11 -2
- package/admin/plugins/fieldValidators/unique.js.map +1 -1
- package/admin/plugins/fields/PredefinedValuesDynamicFieldset.d.ts +1 -2
- package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js +72 -46
- package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
- package/admin/plugins/fields/boolean.js +34 -18
- package/admin/plugins/fields/boolean.js.map +1 -1
- package/admin/plugins/fields/dateTime.js +60 -44
- package/admin/plugins/fields/dateTime.js.map +1 -1
- package/admin/plugins/fields/file.js +33 -17
- package/admin/plugins/fields/file.js.map +1 -1
- package/admin/plugins/fields/longText.js +33 -17
- package/admin/plugins/fields/longText.js.map +1 -1
- package/admin/plugins/fields/number.js +39 -22
- package/admin/plugins/fields/number.js.map +1 -1
- package/admin/plugins/fields/object/ObjectFields.js +28 -11
- package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
- package/admin/plugins/fields/object.js +30 -14
- package/admin/plugins/fields/object.js.map +1 -1
- package/admin/plugins/fields/ref.js +60 -34
- package/admin/plugins/fields/ref.js.map +1 -1
- package/admin/plugins/fields/richText.js +33 -17
- package/admin/plugins/fields/richText.js.map +1 -1
- package/admin/plugins/fields/text.js +37 -20
- package/admin/plugins/fields/text.js.map +1 -1
- package/admin/plugins/getObjectId.js +8 -1
- package/admin/plugins/getObjectId.js.map +1 -1
- package/admin/plugins/icons.js +25 -10
- package/admin/plugins/icons.js.map +1 -1
- package/admin/plugins/index.d.ts +1 -1
- package/admin/plugins/index.js +32 -12
- package/admin/plugins/index.js.map +1 -1
- package/admin/plugins/install.js +55 -30
- package/admin/plugins/install.js.map +1 -1
- package/admin/plugins/permissionRenderer/CmsPermissions.js +74 -50
- package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +70 -46
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +54 -34
- package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentModelList.js +38 -20
- package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +71 -46
- package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js +27 -12
- package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/PermissionSelector.js +44 -23
- package/admin/plugins/permissionRenderer/components/PermissionSelector.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/StyledComponents.js +14 -3
- package/admin/plugins/permissionRenderer/components/StyledComponents.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/types.js +5 -1
- package/admin/plugins/permissionRenderer/components/types.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/useCmsData.js +43 -22
- package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -1
- package/admin/plugins/permissionRenderer/index.js +22 -8
- package/admin/plugins/permissionRenderer/index.js.map +1 -1
- package/admin/plugins/routes.js +66 -37
- package/admin/plugins/routes.js.map +1 -1
- package/admin/plugins/transformers/dateTransformer.js +24 -11
- package/admin/plugins/transformers/dateTransformer.js.map +1 -1
- package/admin/plugins/transformers/index.js +18 -5
- package/admin/plugins/transformers/index.js.map +1 -1
- package/admin/plugins/transformers/numberTransformer.js +11 -2
- package/admin/plugins/transformers/numberTransformer.js.map +1 -1
- package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.js +19 -7
- package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.js.map +1 -1
- package/admin/plugins/upgrades/5.19.0/createCmsApolloClient.js +33 -15
- package/admin/plugins/upgrades/5.19.0/createCmsApolloClient.js.map +1 -1
- package/admin/plugins/upgrades/5.19.0/createListEntriesQuery.js +23 -9
- package/admin/plugins/upgrades/5.19.0/createListEntriesQuery.js.map +1 -1
- package/admin/plugins/upgrades/5.19.0/createListModelsQuery.js +17 -5
- package/admin/plugins/upgrades/5.19.0/createListModelsQuery.js.map +1 -1
- package/admin/plugins/upgrades/5.19.0/createRepublishMutation.js +20 -7
- package/admin/plugins/upgrades/5.19.0/createRepublishMutation.js.map +1 -1
- package/admin/plugins/upgrades/5.19.0/createUpgradeMutation.js +17 -5
- package/admin/plugins/upgrades/5.19.0/createUpgradeMutation.js.map +1 -1
- package/admin/plugins/upgrades/5.19.0/fetchModelEntries.js +27 -13
- package/admin/plugins/upgrades/5.19.0/fetchModelEntries.js.map +1 -1
- package/admin/plugins/upgrades/5.19.0/types.js +5 -1
- package/admin/plugins/upgrades/5.19.0/types.js.map +1 -1
- package/admin/plugins/upgrades/v5.0.0.js +58 -33
- package/admin/plugins/upgrades/v5.0.0.js.map +1 -1
- package/admin/plugins/upgrades/v5.19.0.js +118 -82
- package/admin/plugins/upgrades/v5.19.0.js.map +1 -1
- package/admin/plugins/upgrades/v5.5.0.js +58 -33
- package/admin/plugins/upgrades/v5.5.0.js.map +1 -1
- package/admin/plugins/upgrades/v5.8.0.js +58 -33
- package/admin/plugins/upgrades/v5.8.0.js.map +1 -1
- package/admin/plugins/validators/dateGte.js +23 -9
- package/admin/plugins/validators/dateGte.js.map +1 -1
- package/admin/plugins/validators/dateLte.js +23 -9
- package/admin/plugins/validators/dateLte.js.map +1 -1
- package/admin/plugins/validators/gte.js +20 -7
- package/admin/plugins/validators/gte.js.map +1 -1
- package/admin/plugins/validators/in.js +20 -7
- package/admin/plugins/validators/in.js.map +1 -1
- package/admin/plugins/validators/lte.js +20 -7
- package/admin/plugins/validators/lte.js.map +1 -1
- package/admin/plugins/validators/maxLength.js +20 -7
- package/admin/plugins/validators/maxLength.js.map +1 -1
- package/admin/plugins/validators/minLength.js +20 -7
- package/admin/plugins/validators/minLength.js.map +1 -1
- package/admin/plugins/validators/pattern.js +20 -7
- package/admin/plugins/validators/pattern.js.map +1 -1
- package/admin/plugins/validators/patternPlugins/email.js +8 -1
- package/admin/plugins/validators/patternPlugins/email.js.map +1 -1
- package/admin/plugins/validators/patternPlugins/lowerCase.js +8 -1
- package/admin/plugins/validators/patternPlugins/lowerCase.js.map +1 -1
- package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js +8 -1
- package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
- package/admin/plugins/validators/patternPlugins/upperCase.js +8 -1
- package/admin/plugins/validators/patternPlugins/upperCase.js.map +1 -1
- package/admin/plugins/validators/patternPlugins/upperCaseSpace.js +8 -1
- package/admin/plugins/validators/patternPlugins/upperCaseSpace.js.map +1 -1
- package/admin/plugins/validators/patternPlugins/url.js +8 -1
- package/admin/plugins/validators/patternPlugins/url.js.map +1 -1
- package/admin/plugins/validators/required.js +12 -3
- package/admin/plugins/validators/required.js.map +1 -1
- package/admin/plugins/validators/timeGte.js +22 -8
- package/admin/plugins/validators/timeGte.js.map +1 -1
- package/admin/plugins/validators/timeLte.js +22 -8
- package/admin/plugins/validators/timeLte.js.map +1 -1
- package/admin/plugins/validators/unique.js +18 -6
- package/admin/plugins/validators/unique.js.map +1 -1
- package/admin/plugins/welcomeScreenWidget.js +23 -9
- package/admin/plugins/welcomeScreenWidget.js.map +1 -1
- package/admin/views/contentEntries/ContentEntries.js +57 -31
- package/admin/views/contentEntries/ContentEntries.js.map +1 -1
- package/admin/views/contentEntries/ContentEntriesContext.js +43 -21
- package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
- package/admin/views/contentEntries/ContentEntriesList.js +102 -75
- package/admin/views/contentEntries/ContentEntriesList.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +72 -41
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +95 -67
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/RevisionsList.js +38 -19
- package/admin/views/contentEntries/ContentEntry/RevisionsList.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/cache.js +65 -31
- package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/Header.js +31 -16
- package/admin/views/contentEntries/ContentEntry/header/Header.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js +90 -55
- package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/index.js +33 -14
- package/admin/views/contentEntries/ContentEntry/header/index.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js +47 -26
- package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js +50 -27
- package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js +47 -26
- package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js +45 -24
- package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js +27 -12
- package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/prepareFormData.js +19 -7
- package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/useRevision.js +57 -36
- package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry.js +62 -35
- package/admin/views/contentEntries/ContentEntry.js.map +1 -1
- package/admin/views/contentEntries/experiment/ContentEntriesModule.js +42 -25
- package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +1 -1
- package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js +29 -9
- package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js.map +1 -1
- package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js +51 -29
- package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js.map +1 -1
- package/admin/views/contentEntries/experiment/Property.js +74 -58
- package/admin/views/contentEntries/experiment/Property.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntries.js +13 -4
- package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntriesList.js +59 -39
- package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntry.js +13 -4
- package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -1
- package/admin/views/contentModelGroups/ContentModelGroups.js +28 -12
- package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -1
- package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +114 -77
- package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -1
- package/admin/views/contentModelGroups/ContentModelGroupsForm.js +117 -78
- package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
- package/admin/views/contentModelGroups/DelayedOnChange.js +49 -48
- package/admin/views/contentModelGroups/DelayedOnChange.js.map +1 -1
- package/admin/views/contentModelGroups/IconPicker.js +56 -33
- package/admin/views/contentModelGroups/IconPicker.js.map +1 -1
- package/admin/views/contentModelGroups/graphql.js +22 -7
- package/admin/views/contentModelGroups/graphql.js.map +1 -1
- package/admin/views/contentModels/CloneContentModelDialog.js +104 -71
- package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
- package/admin/views/contentModels/ContentModelEditor.js +30 -14
- package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
- package/admin/views/contentModels/ContentModels.js +49 -30
- package/admin/views/contentModels/ContentModels.js.map +1 -1
- package/admin/views/contentModels/ContentModelsDataList.js +144 -108
- package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
- package/admin/views/contentModels/NewContentModelDialog.js +107 -70
- package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
- package/admin/views/contentModels/cache.js +41 -19
- package/admin/views/contentModels/cache.js.map +1 -1
- package/admin/views/contentModels/types.js +5 -1
- package/admin/views/contentModels/types.js.map +1 -1
- package/admin/views/utils.js +16 -4
- package/admin/views/utils.js.map +1 -1
- package/admin/viewsGraphql.js +22 -7
- package/admin/viewsGraphql.js.map +1 -1
- package/index.js +30 -11
- package/index.js.map +1 -1
- package/package.json +22 -22
- package/types.d.ts +3 -3
- package/types.js +5 -1
- package/types.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["useMutation","mutation","options","useCms","apolloClient","apolloUseMutation","client"],"sources":["useMutation.ts"],"sourcesContent":["import useCms from \"./useCms\";\nimport { useMutation as apolloUseMutation } from \"@apollo/react-hooks\";\nimport { DocumentNode } from \"graphql\";\nimport { OperationVariables } from \"@apollo/react-common\";\nimport { MutationHookOptions, MutationTuple } from \"@apollo/react-hooks/lib/types\";\n\nconst useMutation = function <TData = any, TVariables = OperationVariables>(\n mutation: DocumentNode,\n options: MutationHookOptions<TData, TVariables> = {}\n): MutationTuple<TData, TVariables> {\n const { apolloClient } = useCms();\n\n return apolloUseMutation<TData, TVariables>(mutation, {\n client: apolloClient,\n ...options\n });\n};\n\nexport default useMutation;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAKA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAChBC,QADgB,EAGgB;EAAA,IADhCC,OACgC,uEADkB,EAClB;;EAChC,cAAyB,IAAAC,gBAAA,GAAzB;EAAA,IAAQC,YAAR,WAAQA,YAAR;;EAEA,OAAO,IAAAC,uBAAA,EAAqCJ,QAArC;IACHK,MAAM,EAAEF;EADL,GAEAF,OAFA,EAAP;AAIH,CAVD;;eAYeF,W"}
|
|
@@ -1,20 +1,33 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.usePermission = exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
|
|
12
|
+
var _appSecurity = require("@webiny/app-security");
|
|
13
|
+
|
|
14
|
+
var _get = _interopRequireDefault(require("lodash/get"));
|
|
15
|
+
|
|
16
|
+
var _useI18N2 = require("@webiny/app-i18n/hooks/useI18N");
|
|
17
|
+
|
|
18
|
+
var usePermission = function usePermission() {
|
|
19
|
+
var _useSecurity = (0, _appSecurity.useSecurity)(),
|
|
7
20
|
identity = _useSecurity.identity,
|
|
8
21
|
getPermission = _useSecurity.getPermission;
|
|
9
22
|
|
|
10
|
-
var _useI18N = useI18N(),
|
|
23
|
+
var _useI18N = (0, _useI18N2.useI18N)(),
|
|
11
24
|
getCurrentLocale = _useI18N.getCurrentLocale;
|
|
12
25
|
|
|
13
26
|
var currentLocale = getCurrentLocale("content");
|
|
14
|
-
var hasFullAccess = useMemo(function () {
|
|
27
|
+
var hasFullAccess = (0, _react.useMemo)(function () {
|
|
15
28
|
return getPermission("cms.*");
|
|
16
29
|
}, [identity]);
|
|
17
|
-
var canRead = useCallback(function (permissionName) {
|
|
30
|
+
var canRead = (0, _react.useCallback)(function (permissionName) {
|
|
18
31
|
var permission = getPermission(permissionName);
|
|
19
32
|
|
|
20
33
|
if (!permission) {
|
|
@@ -27,7 +40,7 @@ export var usePermission = function usePermission() {
|
|
|
27
40
|
|
|
28
41
|
return permission.rwd.includes("r");
|
|
29
42
|
}, [identity]);
|
|
30
|
-
var canReadEntries = useCallback(function (_ref) {
|
|
43
|
+
var canReadEntries = (0, _react.useCallback)(function (_ref) {
|
|
31
44
|
var contentModelGroup = _ref.contentModelGroup,
|
|
32
45
|
contentModel = _ref.contentModel;
|
|
33
46
|
|
|
@@ -44,14 +57,14 @@ export var usePermission = function usePermission() {
|
|
|
44
57
|
} // Check "contentModel" list.
|
|
45
58
|
|
|
46
59
|
|
|
47
|
-
var models =
|
|
60
|
+
var models = (0, _get.default)(contentModelPermission, "models.".concat(currentLocale));
|
|
48
61
|
|
|
49
62
|
if (Array.isArray(models)) {
|
|
50
63
|
return models.includes(contentModel.modelId);
|
|
51
64
|
} // Check "contentModelGroup" list.
|
|
52
65
|
|
|
53
66
|
|
|
54
|
-
var groups =
|
|
67
|
+
var groups = (0, _get.default)(contentModelGroupPermission, "groups.".concat(currentLocale));
|
|
55
68
|
|
|
56
69
|
if (Array.isArray(groups)) {
|
|
57
70
|
return groups.includes(contentModelGroup.id);
|
|
@@ -63,7 +76,7 @@ export var usePermission = function usePermission() {
|
|
|
63
76
|
|
|
64
77
|
return true;
|
|
65
78
|
}, [identity, hasFullAccess, currentLocale]);
|
|
66
|
-
var canEdit = useCallback(function (item, permissionName) {
|
|
79
|
+
var canEdit = (0, _react.useCallback)(function (item, permissionName) {
|
|
67
80
|
var permission = getPermission(permissionName);
|
|
68
81
|
|
|
69
82
|
if (!permission || !identity) {
|
|
@@ -78,7 +91,7 @@ export var usePermission = function usePermission() {
|
|
|
78
91
|
return true;
|
|
79
92
|
}
|
|
80
93
|
|
|
81
|
-
return
|
|
94
|
+
return (0, _get.default)(item, "createdBy.id") === identity.login;
|
|
82
95
|
}
|
|
83
96
|
|
|
84
97
|
if (typeof permission.rwd === "string") {
|
|
@@ -93,7 +106,7 @@ export var usePermission = function usePermission() {
|
|
|
93
106
|
* @param {string} permissionName
|
|
94
107
|
* */
|
|
95
108
|
|
|
96
|
-
var canCreate = useCallback(function (permissionName) {
|
|
109
|
+
var canCreate = (0, _react.useCallback)(function (permissionName) {
|
|
97
110
|
var permission = getPermission(permissionName);
|
|
98
111
|
|
|
99
112
|
if (!permission) {
|
|
@@ -106,7 +119,7 @@ export var usePermission = function usePermission() {
|
|
|
106
119
|
|
|
107
120
|
return permission.rwd.includes("w");
|
|
108
121
|
}, [identity]);
|
|
109
|
-
var canDelete = useCallback(function (item, permissionName) {
|
|
122
|
+
var canDelete = (0, _react.useCallback)(function (item, permissionName) {
|
|
110
123
|
var permission = getPermission(permissionName);
|
|
111
124
|
|
|
112
125
|
if (!permission) {
|
|
@@ -114,7 +127,7 @@ export var usePermission = function usePermission() {
|
|
|
114
127
|
}
|
|
115
128
|
|
|
116
129
|
if (permission.own) {
|
|
117
|
-
return
|
|
130
|
+
return (0, _get.default)(item, "createdBy.id") === (identity ? identity.login : null);
|
|
118
131
|
}
|
|
119
132
|
|
|
120
133
|
if (typeof permission.rwd === "string") {
|
|
@@ -123,7 +136,7 @@ export var usePermission = function usePermission() {
|
|
|
123
136
|
|
|
124
137
|
return true;
|
|
125
138
|
}, [identity]);
|
|
126
|
-
var canPublish = useCallback(function (permissionName) {
|
|
139
|
+
var canPublish = (0, _react.useCallback)(function (permissionName) {
|
|
127
140
|
if (hasFullAccess) {
|
|
128
141
|
return true;
|
|
129
142
|
}
|
|
@@ -140,7 +153,7 @@ export var usePermission = function usePermission() {
|
|
|
140
153
|
|
|
141
154
|
return false;
|
|
142
155
|
}, [identity, hasFullAccess]);
|
|
143
|
-
var canUnpublish = useCallback(function (permissionName) {
|
|
156
|
+
var canUnpublish = (0, _react.useCallback)(function (permissionName) {
|
|
144
157
|
if (hasFullAccess) {
|
|
145
158
|
return true;
|
|
146
159
|
}
|
|
@@ -157,7 +170,7 @@ export var usePermission = function usePermission() {
|
|
|
157
170
|
|
|
158
171
|
return false;
|
|
159
172
|
}, [identity, hasFullAccess]);
|
|
160
|
-
var canRequestReview = useCallback(function (permissionName) {
|
|
173
|
+
var canRequestReview = (0, _react.useCallback)(function (permissionName) {
|
|
161
174
|
if (hasFullAccess) {
|
|
162
175
|
return true;
|
|
163
176
|
}
|
|
@@ -174,7 +187,7 @@ export var usePermission = function usePermission() {
|
|
|
174
187
|
|
|
175
188
|
return false;
|
|
176
189
|
}, [identity, hasFullAccess]);
|
|
177
|
-
var canRequestChange = useCallback(function (permissionName) {
|
|
190
|
+
var canRequestChange = (0, _react.useCallback)(function (permissionName) {
|
|
178
191
|
if (hasFullAccess) {
|
|
179
192
|
return true;
|
|
180
193
|
}
|
|
@@ -195,7 +208,7 @@ export var usePermission = function usePermission() {
|
|
|
195
208
|
var canReadContentModelGroups = canRead("cms.contentModelGroup");
|
|
196
209
|
var canCreateContentModels = canCreate("cms.contentModel");
|
|
197
210
|
var canCreateContentModelGroups = canCreate("cms.contentModelGroup");
|
|
198
|
-
var canAccessManageEndpoint = useMemo(function () {
|
|
211
|
+
var canAccessManageEndpoint = (0, _react.useMemo)(function () {
|
|
199
212
|
return getPermission("cms.endpoint.manage") !== undefined;
|
|
200
213
|
}, [identity]);
|
|
201
214
|
return {
|
|
@@ -219,4 +232,7 @@ export var usePermission = function usePermission() {
|
|
|
219
232
|
* @deprecated
|
|
220
233
|
*/
|
|
221
234
|
|
|
222
|
-
|
|
235
|
+
|
|
236
|
+
exports.usePermission = usePermission;
|
|
237
|
+
var _default = usePermission;
|
|
238
|
+
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["usePermission.ts"],"names":["useCallback","useMemo","useSecurity","get","useI18N","usePermission","identity","getPermission","getCurrentLocale","currentLocale","hasFullAccess","canRead","permissionName","permission","rwd","includes","canReadEntries","contentModelGroup","contentModel","contentModelPermission","contentModelGroupPermission","models","Array","isArray","modelId","groups","id","canEdit","item","own","createdBy","login","canCreate","canDelete","canPublish","pw","canUnpublish","canRequestReview","canRequestChange","canReadContentModels","canReadContentModelGroups","canCreateContentModels","canCreateContentModelGroups","canAccessManageEndpoint","undefined"],"mappings":"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","sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport get from \"lodash/get\";\nimport { useI18N } from \"@webiny/app-i18n/hooks/useI18N\";\nimport { CmsCreatedBy, CmsGroup, CmsModel, CmsSecurityPermission } from \"~/types\";\n\ninterface CreatableItem {\n createdBy: Pick<CmsCreatedBy, \"id\">;\n}\n\ninterface CanReadEntriesCallableParams {\n contentModelGroup: CmsGroup;\n contentModel: CmsModel;\n}\n\nexport const usePermission = () => {\n const { identity, getPermission } = useSecurity();\n const { getCurrentLocale } = useI18N();\n\n const currentLocale = getCurrentLocale(\"content\");\n\n const hasFullAccess = useMemo((): CmsSecurityPermission | null => {\n return getPermission(\"cms.*\");\n }, [identity]);\n\n const canRead = useCallback(\n (permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"r\");\n },\n [identity]\n );\n\n const canReadEntries = useCallback(\n ({ contentModelGroup, contentModel }: CanReadEntriesCallableParams): boolean => {\n if (hasFullAccess) {\n return true;\n }\n\n const permission = getPermission<CmsSecurityPermission>(\"cms.contentEntry\");\n const contentModelPermission = getPermission(\"cms.contentModel\");\n const contentModelGroupPermission = getPermission(\"cms.contentModelGroup\");\n\n if (!permission) {\n return false;\n }\n\n // Check \"contentModel\" list.\n const models = get(contentModelPermission, `models.${currentLocale}`);\n if (Array.isArray(models)) {\n return models.includes(contentModel.modelId);\n }\n // Check \"contentModelGroup\" list.\n const groups = get(contentModelGroupPermission, `groups.${currentLocale}`);\n if (Array.isArray(groups)) {\n return groups.includes(contentModelGroup.id);\n }\n\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"r\");\n }\n\n return true;\n },\n [identity, hasFullAccess, currentLocale]\n );\n\n const canEdit = useCallback(\n (item: CreatableItem, permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission || !identity) {\n return false;\n }\n if (permission.own) {\n /**\n * There will be no \"createdBy\" field for a new entry therefore we enable the access.\n */\n if (!item.createdBy) {\n return true;\n }\n return get(item, \"createdBy.id\") === identity.login;\n }\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"w\");\n }\n return true;\n },\n [identity]\n );\n\n /**\n * @description This checks whether the user has the \"write\" access for given permission;\n * without talking the \"own\" property in account.\n * @param {string} permissionName\n * */\n const canCreate = useCallback(\n (permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"w\");\n },\n [identity]\n );\n\n const canDelete = useCallback(\n (item: CreatableItem, permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (permission.own) {\n return get(item, \"createdBy.id\") === (identity ? identity.login : null);\n }\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"d\");\n }\n return true;\n },\n [identity]\n );\n\n const canPublish = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"p\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canUnpublish = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"u\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canRequestReview = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"r\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canRequestChange = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"c\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canReadContentModels = canRead(\"cms.contentModel\");\n const canReadContentModelGroups = canRead(\"cms.contentModelGroup\");\n const canCreateContentModels = canCreate(\"cms.contentModel\");\n const canCreateContentModelGroups = canCreate(\"cms.contentModelGroup\");\n const canAccessManageEndpoint = useMemo(() => {\n return getPermission(\"cms.endpoint.manage\") !== undefined;\n }, [identity]);\n\n return {\n canReadEntries,\n canEdit,\n canCreate,\n canDelete,\n canPublish,\n canUnpublish,\n canRequestReview,\n canRequestChange,\n canReadContentModels,\n canReadContentModelGroups,\n canCreateContentModels,\n canCreateContentModelGroups,\n canAccessManageEndpoint\n };\n};\n/**\n * Default export is deprecated, use the named one.\n * @deprecated\n */\nexport default usePermission;\n"]}
|
|
1
|
+
{"version":3,"names":["usePermission","useSecurity","identity","getPermission","useI18N","getCurrentLocale","currentLocale","hasFullAccess","useMemo","canRead","useCallback","permissionName","permission","rwd","includes","canReadEntries","contentModelGroup","contentModel","contentModelPermission","contentModelGroupPermission","models","get","Array","isArray","modelId","groups","id","canEdit","item","own","createdBy","login","canCreate","canDelete","canPublish","pw","canUnpublish","canRequestReview","canRequestChange","canReadContentModels","canReadContentModelGroups","canCreateContentModels","canCreateContentModelGroups","canAccessManageEndpoint","undefined"],"sources":["usePermission.ts"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport get from \"lodash/get\";\nimport { useI18N } from \"@webiny/app-i18n/hooks/useI18N\";\nimport { CmsCreatedBy, CmsGroup, CmsModel, CmsSecurityPermission } from \"~/types\";\n\ninterface CreatableItem {\n createdBy: Pick<CmsCreatedBy, \"id\">;\n}\n\ninterface CanReadEntriesCallableParams {\n contentModelGroup: CmsGroup;\n contentModel: CmsModel;\n}\n\nexport const usePermission = () => {\n const { identity, getPermission } = useSecurity();\n const { getCurrentLocale } = useI18N();\n\n const currentLocale = getCurrentLocale(\"content\");\n\n const hasFullAccess = useMemo((): CmsSecurityPermission | null => {\n return getPermission(\"cms.*\");\n }, [identity]);\n\n const canRead = useCallback(\n (permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"r\");\n },\n [identity]\n );\n\n const canReadEntries = useCallback(\n ({ contentModelGroup, contentModel }: CanReadEntriesCallableParams): boolean => {\n if (hasFullAccess) {\n return true;\n }\n\n const permission = getPermission<CmsSecurityPermission>(\"cms.contentEntry\");\n const contentModelPermission = getPermission(\"cms.contentModel\");\n const contentModelGroupPermission = getPermission(\"cms.contentModelGroup\");\n\n if (!permission) {\n return false;\n }\n\n // Check \"contentModel\" list.\n const models = get(contentModelPermission, `models.${currentLocale}`);\n if (Array.isArray(models)) {\n return models.includes(contentModel.modelId);\n }\n // Check \"contentModelGroup\" list.\n const groups = get(contentModelGroupPermission, `groups.${currentLocale}`);\n if (Array.isArray(groups)) {\n return groups.includes(contentModelGroup.id);\n }\n\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"r\");\n }\n\n return true;\n },\n [identity, hasFullAccess, currentLocale]\n );\n\n const canEdit = useCallback(\n (item: CreatableItem, permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission || !identity) {\n return false;\n }\n if (permission.own) {\n /**\n * There will be no \"createdBy\" field for a new entry therefore we enable the access.\n */\n if (!item.createdBy) {\n return true;\n }\n return get(item, \"createdBy.id\") === identity.login;\n }\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"w\");\n }\n return true;\n },\n [identity]\n );\n\n /**\n * @description This checks whether the user has the \"write\" access for given permission;\n * without talking the \"own\" property in account.\n * @param {string} permissionName\n * */\n const canCreate = useCallback(\n (permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"w\");\n },\n [identity]\n );\n\n const canDelete = useCallback(\n (item: CreatableItem, permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (permission.own) {\n return get(item, \"createdBy.id\") === (identity ? identity.login : null);\n }\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"d\");\n }\n return true;\n },\n [identity]\n );\n\n const canPublish = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"p\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canUnpublish = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"u\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canRequestReview = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"r\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canRequestChange = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"c\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canReadContentModels = canRead(\"cms.contentModel\");\n const canReadContentModelGroups = canRead(\"cms.contentModelGroup\");\n const canCreateContentModels = canCreate(\"cms.contentModel\");\n const canCreateContentModelGroups = canCreate(\"cms.contentModelGroup\");\n const canAccessManageEndpoint = useMemo(() => {\n return getPermission(\"cms.endpoint.manage\") !== undefined;\n }, [identity]);\n\n return {\n canReadEntries,\n canEdit,\n canCreate,\n canDelete,\n canPublish,\n canUnpublish,\n canRequestReview,\n canRequestChange,\n canReadContentModels,\n canReadContentModelGroups,\n canCreateContentModels,\n canCreateContentModelGroups,\n canAccessManageEndpoint\n };\n};\n/**\n * Default export is deprecated, use the named one.\n * @deprecated\n */\nexport default usePermission;\n"],"mappings":"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"}
|
package/admin/hooks/useQuery.js
CHANGED
|
@@ -1,17 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
|
+
|
|
12
|
+
var _reactHooks = require("@apollo/react-hooks");
|
|
13
|
+
|
|
14
|
+
var _useCms2 = _interopRequireDefault(require("./useCms"));
|
|
4
15
|
|
|
5
16
|
var useQuery = function useQuery(query) {
|
|
6
17
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
7
18
|
|
|
8
|
-
var _useCms =
|
|
19
|
+
var _useCms = (0, _useCms2.default)(),
|
|
9
20
|
apolloClient = _useCms.apolloClient;
|
|
10
21
|
|
|
11
|
-
return
|
|
22
|
+
return (0, _reactHooks.useQuery)(query, (0, _objectSpread2.default)({
|
|
12
23
|
client: apolloClient,
|
|
13
24
|
skip: !apolloClient
|
|
14
25
|
}, options));
|
|
15
26
|
};
|
|
16
27
|
|
|
17
|
-
|
|
28
|
+
var _default = useQuery;
|
|
29
|
+
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["useQuery","query","options","useCms","apolloClient","apolloUseQuery","client","skip"],"sources":["useQuery.ts"],"sourcesContent":["import { useQuery as apolloUseQuery } from \"@apollo/react-hooks\";\nimport useCms from \"./useCms\";\nimport { DocumentNode } from \"graphql\";\nimport { OperationVariables, QueryResult } from \"@apollo/react-common\";\nimport { QueryHookOptions } from \"@apollo/react-hooks/lib/types\";\n\nconst useQuery = function <TData = any, TVariables = OperationVariables>(\n query: DocumentNode,\n options: QueryHookOptions<TData, TVariables> = {}\n): QueryResult<TData, TVariables> {\n const { apolloClient } = useCms();\n\n return apolloUseQuery<TData, TVariables>(query, {\n client: apolloClient,\n skip: !apolloClient,\n ...options\n });\n};\n\nexport default useQuery;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAKA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CACbC,KADa,EAGiB;EAAA,IAD9BC,OAC8B,uEADiB,EACjB;;EAC9B,cAAyB,IAAAC,gBAAA,GAAzB;EAAA,IAAQC,YAAR,WAAQA,YAAR;;EAEA,OAAO,IAAAC,oBAAA,EAAkCJ,KAAlC;IACHK,MAAM,EAAEF,YADL;IAEHG,IAAI,EAAE,CAACH;EAFJ,GAGAF,OAHA,EAAP;AAKH,CAXD;;eAaeF,Q"}
|
|
@@ -1,15 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.useQueryLocale = void 0;
|
|
9
|
+
|
|
10
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
|
+
|
|
12
|
+
var _useCms2 = _interopRequireDefault(require("./useCms"));
|
|
13
|
+
|
|
14
|
+
var _reactHooks = require("@apollo/react-hooks");
|
|
15
|
+
|
|
16
|
+
var useQueryLocale = function useQueryLocale(query, locale) {
|
|
5
17
|
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
6
18
|
|
|
7
|
-
var _useCms =
|
|
19
|
+
var _useCms = (0, _useCms2.default)(),
|
|
8
20
|
getApolloClient = _useCms.getApolloClient;
|
|
9
21
|
|
|
10
22
|
var client = getApolloClient(locale);
|
|
11
|
-
return
|
|
23
|
+
return (0, _reactHooks.useQuery)(query, (0, _objectSpread2.default)({
|
|
12
24
|
client: client,
|
|
13
25
|
skip: !client
|
|
14
26
|
}, options));
|
|
15
|
-
};
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
exports.useQueryLocale = useQueryLocale;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["useQueryLocale","query","locale","options","useCms","getApolloClient","client","apolloUseQuery","skip"],"sources":["useQueryLocale.ts"],"sourcesContent":["import useCms from \"./useCms\";\nimport { useQuery as apolloUseQuery } from \"@apollo/react-hooks\";\nimport { DocumentNode } from \"graphql\";\nimport { OperationVariables, QueryResult } from \"@apollo/react-common\";\nimport { QueryHookOptions } from \"@apollo/react-hooks/lib/types\";\n\nexport const useQueryLocale = function <TData = any, TVariables = OperationVariables>(\n query: DocumentNode,\n locale: string,\n options: QueryHookOptions<TData, TVariables> = {}\n): QueryResult<TData, TVariables> {\n const { getApolloClient } = useCms();\n const client = getApolloClient(locale);\n\n return apolloUseQuery<TData, TVariables>(query, {\n client,\n skip: !client,\n ...options\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAKO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAC1BC,KAD0B,EAE1BC,MAF0B,EAII;EAAA,IAD9BC,OAC8B,uEADiB,EACjB;;EAC9B,cAA4B,IAAAC,gBAAA,GAA5B;EAAA,IAAQC,eAAR,WAAQA,eAAR;;EACA,IAAMC,MAAM,GAAGD,eAAe,CAACH,MAAD,CAA9B;EAEA,OAAO,IAAAK,oBAAA,EAAkCN,KAAlC;IACHK,MAAM,EAANA,MADG;IAEHE,IAAI,EAAE,CAACF;EAFJ,GAGAH,OAHA,EAAP;AAKH,CAbM"}
|
|
@@ -1,12 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.CmsMenuLoader = void 0;
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
|
|
14
|
+
var _appAdmin = require("@webiny/app-admin");
|
|
15
|
+
|
|
16
|
+
var _devices_otherBlack24px = require("../icons/devices_other-black-24px.svg");
|
|
17
|
+
|
|
18
|
+
var _GlobalSearchPlugins = _interopRequireDefault(require("./GlobalSearchPlugins"));
|
|
19
|
+
|
|
20
|
+
var _usePermission2 = _interopRequireDefault(require("../hooks/usePermission"));
|
|
21
|
+
|
|
22
|
+
var _ContentGroupsMenuItems = require("./ContentGroupsMenuItems");
|
|
7
23
|
|
|
8
24
|
var CmsMenuLoaderComponent = function CmsMenuLoaderComponent() {
|
|
9
|
-
var _usePermission =
|
|
25
|
+
var _usePermission = (0, _usePermission2.default)(),
|
|
10
26
|
canAccessManageEndpoint = _usePermission.canAccessManageEndpoint,
|
|
11
27
|
canReadContentModels = _usePermission.canReadContentModels,
|
|
12
28
|
canReadContentModelGroups = _usePermission.canReadContentModelGroups,
|
|
@@ -19,24 +35,26 @@ var CmsMenuLoaderComponent = function CmsMenuLoaderComponent() {
|
|
|
19
35
|
return null;
|
|
20
36
|
}
|
|
21
37
|
|
|
22
|
-
return /*#__PURE__*/
|
|
38
|
+
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_appAdmin.AddMenu, {
|
|
23
39
|
name: "headlessCMS",
|
|
24
40
|
label: "Headless CMS",
|
|
25
|
-
icon: /*#__PURE__*/
|
|
26
|
-
}, (canCreateContentModels || canCreateContentModelGroups) && /*#__PURE__*/
|
|
41
|
+
icon: /*#__PURE__*/_react.default.createElement(_devices_otherBlack24px.ReactComponent, null)
|
|
42
|
+
}, (canCreateContentModels || canCreateContentModelGroups) && /*#__PURE__*/_react.default.createElement(_appAdmin.AddMenu, {
|
|
27
43
|
name: "headlessCMS.contentModels",
|
|
28
44
|
label: "Content Models",
|
|
29
45
|
pin: "first"
|
|
30
|
-
}, canCreateContentModels && /*#__PURE__*/
|
|
46
|
+
}, canCreateContentModels && /*#__PURE__*/_react.default.createElement(_appAdmin.AddMenu, {
|
|
31
47
|
name: "headlessCMS.contentModels.models",
|
|
32
48
|
label: "Models",
|
|
33
49
|
path: "/cms/content-models"
|
|
34
|
-
}), canCreateContentModelGroups && /*#__PURE__*/
|
|
50
|
+
}), canCreateContentModelGroups && /*#__PURE__*/_react.default.createElement(_appAdmin.AddMenu, {
|
|
35
51
|
name: "headlessCMS.contentModels.groups",
|
|
36
52
|
label: "Groups",
|
|
37
53
|
path: "/cms/content-model-groups"
|
|
38
|
-
})), /*#__PURE__*/
|
|
54
|
+
})), /*#__PURE__*/_react.default.createElement(_ContentGroupsMenuItems.ContentGroupsMenuItems, null)), /*#__PURE__*/_react.default.createElement(_GlobalSearchPlugins.default, null));
|
|
39
55
|
};
|
|
40
56
|
|
|
41
|
-
|
|
57
|
+
var CmsMenuLoader = /*#__PURE__*/_react.default.memo(CmsMenuLoaderComponent);
|
|
58
|
+
|
|
59
|
+
exports.CmsMenuLoader = CmsMenuLoader;
|
|
42
60
|
CmsMenuLoader.displayName = "CmsMenuLoader";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["CmsMenuLoaderComponent","usePermission","canAccessManageEndpoint","canReadContentModels","canReadContentModelGroups","canCreateContentModels","canCreateContentModelGroups","hasAccess","CmsMenuLoader","React","memo","displayName"],"sources":["CmsMenuLoader.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport { AddMenu as Menu } from \"@webiny/app-admin\";\nimport { ReactComponent as HeadlessCmsIcon } from \"~/admin/icons/devices_other-black-24px.svg\";\nimport GlobalSearchPlugins from \"./GlobalSearchPlugins\";\nimport usePermission from \"~/admin/hooks/usePermission\";\nimport { ContentGroupsMenuItems } from \"./ContentGroupsMenuItems\";\n\nconst CmsMenuLoaderComponent: React.FC = () => {\n const {\n canAccessManageEndpoint,\n canReadContentModels,\n canReadContentModelGroups,\n canCreateContentModels,\n canCreateContentModelGroups\n } = usePermission();\n\n const hasAccess =\n canAccessManageEndpoint && (canReadContentModels || canReadContentModelGroups);\n\n if (!hasAccess) {\n return null;\n }\n\n return (\n <Fragment>\n <Menu name={\"headlessCMS\"} label={\"Headless CMS\"} icon={<HeadlessCmsIcon />}>\n {(canCreateContentModels || canCreateContentModelGroups) && (\n <Menu name={\"headlessCMS.contentModels\"} label={\"Content Models\"} pin={\"first\"}>\n {canCreateContentModels && (\n <Menu\n name={\"headlessCMS.contentModels.models\"}\n label={\"Models\"}\n path={\"/cms/content-models\"}\n />\n )}\n {canCreateContentModelGroups && (\n <Menu\n name={\"headlessCMS.contentModels.groups\"}\n label={\"Groups\"}\n path={\"/cms/content-model-groups\"}\n />\n )}\n </Menu>\n )}\n <ContentGroupsMenuItems />\n </Menu>\n <GlobalSearchPlugins />\n </Fragment>\n );\n};\n\nexport const CmsMenuLoader: React.FC = React.memo(CmsMenuLoaderComponent);\n\nCmsMenuLoader.displayName = \"CmsMenuLoader\";\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,sBAAgC,GAAG,SAAnCA,sBAAmC,GAAM;EAC3C,qBAMI,IAAAC,uBAAA,GANJ;EAAA,IACIC,uBADJ,kBACIA,uBADJ;EAAA,IAEIC,oBAFJ,kBAEIA,oBAFJ;EAAA,IAGIC,yBAHJ,kBAGIA,yBAHJ;EAAA,IAIIC,sBAJJ,kBAIIA,sBAJJ;EAAA,IAKIC,2BALJ,kBAKIA,2BALJ;;EAQA,IAAMC,SAAS,GACXL,uBAAuB,KAAKC,oBAAoB,IAAIC,yBAA7B,CAD3B;;EAGA,IAAI,CAACG,SAAL,EAAgB;IACZ,OAAO,IAAP;EACH;;EAED,oBACI,6BAAC,eAAD,qBACI,6BAAC,iBAAD;IAAM,IAAI,EAAE,aAAZ;IAA2B,KAAK,EAAE,cAAlC;IAAkD,IAAI,eAAE,6BAAC,sCAAD;EAAxD,GACK,CAACF,sBAAsB,IAAIC,2BAA3B,kBACG,6BAAC,iBAAD;IAAM,IAAI,EAAE,2BAAZ;IAAyC,KAAK,EAAE,gBAAhD;IAAkE,GAAG,EAAE;EAAvE,GACKD,sBAAsB,iBACnB,6BAAC,iBAAD;IACI,IAAI,EAAE,kCADV;IAEI,KAAK,EAAE,QAFX;IAGI,IAAI,EAAE;EAHV,EAFR,EAQKC,2BAA2B,iBACxB,6BAAC,iBAAD;IACI,IAAI,EAAE,kCADV;IAEI,KAAK,EAAE,QAFX;IAGI,IAAI,EAAE;EAHV,EATR,CAFR,eAmBI,6BAAC,8CAAD,OAnBJ,CADJ,eAsBI,6BAAC,4BAAD,OAtBJ,CADJ;AA0BH,CA1CD;;AA4CO,IAAME,aAAuB,gBAAGC,cAAA,CAAMC,IAAN,CAAWV,sBAAX,CAAhC;;;AAEPQ,aAAa,CAACG,WAAd,GAA4B,eAA5B"}
|
|
@@ -1,19 +1,36 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.ContentGroupsMenuItems = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _get = _interopRequireDefault(require("lodash/get"));
|
|
13
|
+
|
|
14
|
+
var _pluralize = _interopRequireDefault(require("pluralize"));
|
|
15
|
+
|
|
16
|
+
var _reactFontawesome = require("@fortawesome/react-fontawesome");
|
|
17
|
+
|
|
18
|
+
var _viewsGraphql = require("../viewsGraphql");
|
|
19
|
+
|
|
20
|
+
var _useQuery = _interopRequireDefault(require("../hooks/useQuery"));
|
|
21
|
+
|
|
22
|
+
var _usePermission2 = _interopRequireDefault(require("../hooks/usePermission"));
|
|
23
|
+
|
|
24
|
+
var _appAdmin = require("@webiny/app-admin");
|
|
25
|
+
|
|
26
|
+
var _NothingToShowElement = require("./NothingToShowElement");
|
|
10
27
|
|
|
11
28
|
var HasContentEntryPermissions = function HasContentEntryPermissions(_ref) {
|
|
12
29
|
var group = _ref.group,
|
|
13
30
|
contentModel = _ref.contentModel,
|
|
14
31
|
children = _ref.children;
|
|
15
32
|
|
|
16
|
-
var _usePermission =
|
|
33
|
+
var _usePermission = (0, _usePermission2.default)(),
|
|
17
34
|
canReadEntries = _usePermission.canReadEntries;
|
|
18
35
|
|
|
19
36
|
if (contentModel) {
|
|
@@ -41,7 +58,7 @@ var HasContentEntryPermissions = function HasContentEntryPermissions(_ref) {
|
|
|
41
58
|
|
|
42
59
|
var Icon = function Icon(_ref2) {
|
|
43
60
|
var group = _ref2.group;
|
|
44
|
-
return /*#__PURE__*/
|
|
61
|
+
return /*#__PURE__*/_react.default.createElement(_reactFontawesome.FontAwesomeIcon, {
|
|
45
62
|
style: {
|
|
46
63
|
color: "var(--mdc-theme-text-secondary-on-background)"
|
|
47
64
|
},
|
|
@@ -49,38 +66,40 @@ var Icon = function Icon(_ref2) {
|
|
|
49
66
|
});
|
|
50
67
|
};
|
|
51
68
|
|
|
52
|
-
|
|
53
|
-
var response =
|
|
54
|
-
var groups =
|
|
69
|
+
var ContentGroupsMenuItems = function ContentGroupsMenuItems() {
|
|
70
|
+
var response = (0, _useQuery.default)(_viewsGraphql.LIST_MENU_CONTENT_GROUPS_MODELS);
|
|
71
|
+
var groups = (0, _get.default)(response, "data.listContentModelGroups.data") || [];
|
|
55
72
|
|
|
56
73
|
if (!groups || groups.length === 0) {
|
|
57
74
|
return null;
|
|
58
75
|
}
|
|
59
76
|
|
|
60
|
-
return /*#__PURE__*/
|
|
61
|
-
return /*#__PURE__*/
|
|
77
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, groups.map(function (group) {
|
|
78
|
+
return /*#__PURE__*/_react.default.createElement(HasContentEntryPermissions, {
|
|
62
79
|
key: group.id,
|
|
63
80
|
group: group
|
|
64
|
-
}, /*#__PURE__*/
|
|
81
|
+
}, /*#__PURE__*/_react.default.createElement(_appAdmin.AddMenu, {
|
|
65
82
|
name: group.id,
|
|
66
83
|
label: group.name,
|
|
67
84
|
tags: ["headlessCMS"],
|
|
68
|
-
icon: /*#__PURE__*/
|
|
85
|
+
icon: /*#__PURE__*/_react.default.createElement(Icon, {
|
|
69
86
|
group: group
|
|
70
87
|
})
|
|
71
|
-
}, group.contentModels.length === 0 && /*#__PURE__*/
|
|
88
|
+
}, group.contentModels.length === 0 && /*#__PURE__*/_react.default.createElement(_appAdmin.AddMenu, {
|
|
72
89
|
name: "".concat(group.id, "-empty"),
|
|
73
|
-
element: /*#__PURE__*/
|
|
90
|
+
element: /*#__PURE__*/_react.default.createElement(_NothingToShowElement.NothingToShow, null)
|
|
74
91
|
}), group.contentModels.length > 0 && group.contentModels.map(function (contentModel) {
|
|
75
|
-
return /*#__PURE__*/
|
|
92
|
+
return /*#__PURE__*/_react.default.createElement(HasContentEntryPermissions, {
|
|
76
93
|
key: contentModel.modelId,
|
|
77
94
|
group: group,
|
|
78
95
|
contentModel: contentModel
|
|
79
|
-
}, /*#__PURE__*/
|
|
96
|
+
}, /*#__PURE__*/_react.default.createElement(_appAdmin.AddMenu, {
|
|
80
97
|
name: contentModel.modelId,
|
|
81
|
-
label:
|
|
98
|
+
label: (0, _pluralize.default)(contentModel.name),
|
|
82
99
|
path: "/cms/content-entries/".concat(contentModel.modelId)
|
|
83
100
|
}));
|
|
84
101
|
})));
|
|
85
102
|
}));
|
|
86
|
-
};
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
exports.ContentGroupsMenuItems = ContentGroupsMenuItems;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["HasContentEntryPermissions","group","contentModel","children","usePermission","canReadEntries","contentModelGroup","hasContentEntryPermission","contentModels","some","length","Icon","color","icon","split","ContentGroupsMenuItems","response","useQuery","LIST_MENU_CONTENT_GROUPS_MODELS","groups","get","map","id","name","modelId","pluralize"],"sources":["ContentGroupsMenuItems.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport pluralize from \"pluralize\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport {\n LIST_MENU_CONTENT_GROUPS_MODELS,\n ListMenuCmsGroupsQueryResponse\n} from \"~/admin/viewsGraphql\";\nimport useQuery from \"~/admin/hooks/useQuery\";\nimport usePermission from \"~/admin/hooks/usePermission\";\nimport { AddMenu as Menu } from \"@webiny/app-admin\";\nimport { NothingToShow } from \"./NothingToShowElement\";\nimport { CmsGroup, CmsModel } from \"~/types\";\nimport { IconProp } from \"@fortawesome/fontawesome-svg-core\";\n\ninterface HasContentEntryPermissionsProps {\n group: CmsGroup;\n contentModel?: CmsModel;\n children: JSX.Element;\n}\n\nconst HasContentEntryPermissions: React.FC<HasContentEntryPermissionsProps> = ({\n group,\n contentModel,\n children\n}) => {\n const { canReadEntries } = usePermission();\n\n if (contentModel) {\n if (!canReadEntries({ contentModelGroup: group, contentModel })) {\n return null;\n }\n } else {\n const hasContentEntryPermission = group.contentModels.some(contentModel =>\n canReadEntries({\n contentModelGroup: group,\n contentModel\n })\n );\n\n if (group.contentModels.length > 0 && !hasContentEntryPermission) {\n return null;\n }\n }\n\n return children;\n};\n\ninterface IconProps {\n group: CmsGroup;\n}\nconst Icon: React.FC<IconProps> = ({ group }) => {\n return (\n <FontAwesomeIcon\n style={{ color: \"var(--mdc-theme-text-secondary-on-background)\" }}\n icon={(group.icon || \"\").split(\"/\") as IconProp}\n />\n );\n};\n\nexport const ContentGroupsMenuItems: React.FC = () => {\n const response = useQuery<ListMenuCmsGroupsQueryResponse>(LIST_MENU_CONTENT_GROUPS_MODELS);\n const groups: CmsGroup[] = get(response, \"data.listContentModelGroups.data\") || [];\n\n if (!groups || groups.length === 0) {\n return null;\n }\n\n return (\n <>\n {groups.map(group => {\n return (\n <HasContentEntryPermissions key={group.id} group={group}>\n <Menu\n name={group.id}\n label={group.name}\n tags={[\"headlessCMS\"]}\n icon={<Icon group={group} />}\n >\n {group.contentModels.length === 0 && (\n <Menu name={`${group.id}-empty`} element={<NothingToShow />} />\n )}\n {group.contentModels.length > 0 &&\n group.contentModels.map(contentModel => (\n <HasContentEntryPermissions\n key={contentModel.modelId}\n group={group}\n contentModel={contentModel}\n >\n <Menu\n name={contentModel.modelId}\n label={pluralize(contentModel.name)}\n path={`/cms/content-entries/${contentModel.modelId}`}\n />\n </HasContentEntryPermissions>\n ))}\n </Menu>\n </HasContentEntryPermissions>\n );\n })}\n </>\n );\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AACA;;AAUA,IAAMA,0BAAqE,GAAG,SAAxEA,0BAAwE,OAIxE;EAAA,IAHFC,KAGE,QAHFA,KAGE;EAAA,IAFFC,YAEE,QAFFA,YAEE;EAAA,IADFC,QACE,QADFA,QACE;;EACF,qBAA2B,IAAAC,uBAAA,GAA3B;EAAA,IAAQC,cAAR,kBAAQA,cAAR;;EAEA,IAAIH,YAAJ,EAAkB;IACd,IAAI,CAACG,cAAc,CAAC;MAAEC,iBAAiB,EAAEL,KAArB;MAA4BC,YAAY,EAAZA;IAA5B,CAAD,CAAnB,EAAiE;MAC7D,OAAO,IAAP;IACH;EACJ,CAJD,MAIO;IACH,IAAMK,yBAAyB,GAAGN,KAAK,CAACO,aAAN,CAAoBC,IAApB,CAAyB,UAAAP,YAAY;MAAA,OACnEG,cAAc,CAAC;QACXC,iBAAiB,EAAEL,KADR;QAEXC,YAAY,EAAZA;MAFW,CAAD,CADqD;IAAA,CAArC,CAAlC;;IAOA,IAAID,KAAK,CAACO,aAAN,CAAoBE,MAApB,GAA6B,CAA7B,IAAkC,CAACH,yBAAvC,EAAkE;MAC9D,OAAO,IAAP;IACH;EACJ;;EAED,OAAOJ,QAAP;AACH,CAzBD;;AA8BA,IAAMQ,IAAyB,GAAG,SAA5BA,IAA4B,QAAe;EAAA,IAAZV,KAAY,SAAZA,KAAY;EAC7C,oBACI,6BAAC,iCAAD;IACI,KAAK,EAAE;MAAEW,KAAK,EAAE;IAAT,CADX;IAEI,IAAI,EAAE,CAACX,KAAK,CAACY,IAAN,IAAc,EAAf,EAAmBC,KAAnB,CAAyB,GAAzB;EAFV,EADJ;AAMH,CAPD;;AASO,IAAMC,sBAAgC,GAAG,SAAnCA,sBAAmC,GAAM;EAClD,IAAMC,QAAQ,GAAG,IAAAC,iBAAA,EAAyCC,6CAAzC,CAAjB;EACA,IAAMC,MAAkB,GAAG,IAAAC,YAAA,EAAIJ,QAAJ,EAAc,kCAAd,KAAqD,EAAhF;;EAEA,IAAI,CAACG,MAAD,IAAWA,MAAM,CAACT,MAAP,KAAkB,CAAjC,EAAoC;IAChC,OAAO,IAAP;EACH;;EAED,oBACI,4DACKS,MAAM,CAACE,GAAP,CAAW,UAAApB,KAAK,EAAI;IACjB,oBACI,6BAAC,0BAAD;MAA4B,GAAG,EAAEA,KAAK,CAACqB,EAAvC;MAA2C,KAAK,EAAErB;IAAlD,gBACI,6BAAC,iBAAD;MACI,IAAI,EAAEA,KAAK,CAACqB,EADhB;MAEI,KAAK,EAAErB,KAAK,CAACsB,IAFjB;MAGI,IAAI,EAAE,CAAC,aAAD,CAHV;MAII,IAAI,eAAE,6BAAC,IAAD;QAAM,KAAK,EAAEtB;MAAb;IAJV,GAMKA,KAAK,CAACO,aAAN,CAAoBE,MAApB,KAA+B,CAA/B,iBACG,6BAAC,iBAAD;MAAM,IAAI,YAAKT,KAAK,CAACqB,EAAX,WAAV;MAAiC,OAAO,eAAE,6BAAC,mCAAD;IAA1C,EAPR,EASKrB,KAAK,CAACO,aAAN,CAAoBE,MAApB,GAA6B,CAA7B,IACGT,KAAK,CAACO,aAAN,CAAoBa,GAApB,CAAwB,UAAAnB,YAAY;MAAA,oBAChC,6BAAC,0BAAD;QACI,GAAG,EAAEA,YAAY,CAACsB,OADtB;QAEI,KAAK,EAAEvB,KAFX;QAGI,YAAY,EAAEC;MAHlB,gBAKI,6BAAC,iBAAD;QACI,IAAI,EAAEA,YAAY,CAACsB,OADvB;QAEI,KAAK,EAAE,IAAAC,kBAAA,EAAUvB,YAAY,CAACqB,IAAvB,CAFX;QAGI,IAAI,iCAA0BrB,YAAY,CAACsB,OAAvC;MAHR,EALJ,CADgC;IAAA,CAApC,CAVR,CADJ,CADJ;EA4BH,CA7BA,CADL,CADJ;AAkCH,CA1CM"}
|