@webiny/app-headless-cms 5.24.0 → 5.25.0-beta.2
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.d.ts +4 -3
- package/HeadlessCMS.js.map +1 -0
- package/admin/components/ContentEntryForm/ContentEntryForm.js +27 -6
- package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -0
- package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +18 -2
- package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -0
- package/admin/components/ContentEntryForm/Fields.d.ts +1 -2
- package/admin/components/ContentEntryForm/Fields.js +1 -1
- package/admin/components/ContentEntryForm/Fields.js.map +1 -0
- package/admin/components/ContentEntryForm/Label.js.map +1 -0
- package/admin/components/ContentEntryForm/RenderFieldElement.d.ts +1 -2
- package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -0
- package/admin/components/ContentEntryForm/functions/createValidators.d.ts +2 -1
- package/admin/components/ContentEntryForm/functions/createValidators.js +8 -5
- package/admin/components/ContentEntryForm/functions/createValidators.js.map +1 -0
- package/admin/components/ContentEntryForm/functions/getValue.d.ts +4 -3
- package/admin/components/ContentEntryForm/functions/getValue.js +0 -1
- package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -0
- package/admin/components/ContentEntryForm/functions/setValue.d.ts +4 -3
- package/admin/components/ContentEntryForm/functions/setValue.js +0 -1
- package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -0
- package/admin/components/ContentEntryForm/useBind.d.ts +3 -7
- package/admin/components/ContentEntryForm/useBind.js +6 -0
- package/admin/components/ContentEntryForm/useBind.js.map +1 -0
- package/admin/components/ContentEntryForm/useContentEntryForm.d.ts +2 -4
- package/admin/components/ContentEntryForm/useContentEntryForm.js +75 -26
- package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -0
- package/admin/components/ContentEntryForm/useRenderPlugins.js.map +1 -0
- package/admin/components/ContentModelEditor/Context.d.ts +9 -7
- package/admin/components/ContentModelEditor/Context.js +158 -36
- package/admin/components/ContentModelEditor/Context.js.map +1 -0
- package/admin/components/ContentModelEditor/Editor.d.ts +1 -1
- package/admin/components/ContentModelEditor/Editor.js +5 -3
- package/admin/components/ContentModelEditor/Editor.js.map +1 -0
- package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -0
- package/admin/components/ContentModelEditor/Header.js.map +1 -0
- package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -0
- package/admin/components/ContentModelEditor/useContentModelEditor.d.ts +1 -1
- package/admin/components/ContentModelEditor/useContentModelEditor.js.map +1 -0
- package/admin/components/DragPreview.js +6 -1
- package/admin/components/DragPreview.js.map +1 -0
- package/admin/components/Draggable.js.map +1 -0
- package/admin/components/DropZone/Center.js.map +1 -0
- package/admin/components/DropZone/Horizontal.js +1 -1
- package/admin/components/DropZone/Horizontal.js.map +1 -0
- package/admin/components/DropZone/Vertical.js +1 -1
- package/admin/components/DropZone/Vertical.js.map +1 -0
- package/admin/components/DropZone/index.js.map +1 -0
- package/admin/components/Droppable.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +14 -4
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +5 -1
- package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.d.ts +9 -4
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js +13 -6
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.d.ts +2 -1
- package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.d.ts +2 -1
- package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js +0 -1
- package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog.d.ts +1 -1
- package/admin/components/FieldEditor/EditFieldDialog.js +35 -18
- package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -0
- package/admin/components/FieldEditor/Field.js +2 -2
- package/admin/components/FieldEditor/Field.js.map +1 -0
- package/admin/components/FieldEditor/FieldEditor.js.map +1 -0
- package/admin/components/FieldEditor/FieldEditorContext.d.ts +9 -9
- package/admin/components/FieldEditor/FieldEditorContext.js +43 -15
- package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -0
- package/admin/components/FieldEditor/Styled.d.ts +2 -3
- package/admin/components/FieldEditor/Styled.js.map +1 -0
- package/admin/components/FieldEditor/index.js.map +1 -0
- package/admin/components/FieldEditor/useFieldEditor.js.map +1 -0
- package/admin/components/FieldEditor/utils/deleteField.d.ts +5 -5
- package/admin/components/FieldEditor/utils/deleteField.js +4 -0
- package/admin/components/FieldEditor/utils/deleteField.js.map +1 -0
- package/admin/components/FieldEditor/utils/getFieldPosition.d.ts +2 -2
- package/admin/components/FieldEditor/utils/getFieldPosition.js +3 -2
- package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -0
- package/admin/components/FieldEditor/utils/index.js.map +1 -0
- package/admin/components/FieldEditor/utils/moveField.d.ts +2 -2
- package/admin/components/FieldEditor/utils/moveField.js +3 -1
- package/admin/components/FieldEditor/utils/moveField.js.map +1 -0
- package/admin/components/FieldEditor/utils/moveRow.js.map +1 -0
- package/admin/constants/statusLabels.js.map +1 -0
- package/admin/contexts/Cms/NetworkError.js.map +1 -0
- package/admin/contexts/Cms/index.js +22 -7
- package/admin/contexts/Cms/index.js.map +1 -0
- package/admin/elements/ContentGroupMenuElement.js.map +1 -0
- package/admin/elements/ContentModelMenuElement.js.map +1 -0
- package/admin/elements/NothingToShowElement.js.map +1 -0
- package/admin/graphql/contentEntries.d.ts +8 -8
- package/admin/graphql/contentEntries.js.map +1 -0
- package/admin/graphql/contentModels.d.ts +2 -2
- package/admin/graphql/contentModels.js.map +1 -0
- package/admin/graphql/createFieldsList.js.map +1 -0
- package/admin/hooks/index.js.map +1 -0
- package/admin/hooks/useApolloClient.js.map +1 -0
- package/admin/hooks/useCms.js.map +1 -0
- package/admin/hooks/useLazyQuery.d.ts +2 -1
- package/admin/hooks/useLazyQuery.js.map +1 -0
- package/admin/hooks/useMutation.d.ts +2 -1
- package/admin/hooks/useMutation.js.map +1 -0
- package/admin/hooks/usePermission.js +20 -19
- package/admin/hooks/usePermission.js.map +1 -0
- package/admin/hooks/useQuery.d.ts +2 -2
- package/admin/hooks/useQuery.js.map +1 -0
- package/admin/hooks/useQueryLocale.d.ts +2 -2
- package/admin/hooks/useQueryLocale.js.map +1 -0
- package/admin/menus/CmsMenuLoader.js.map +1 -0
- package/admin/menus/ContentGroupsMenuItems.js +1 -1
- package/admin/menus/ContentGroupsMenuItems.js.map +1 -0
- package/admin/menus/GlobalSearchPlugins.d.ts +0 -1
- package/admin/menus/GlobalSearchPlugins.js +1 -1
- package/admin/menus/GlobalSearchPlugins.js.map +1 -0
- package/admin/menus/NothingToShowElement.js.map +1 -0
- package/admin/plugins/apiInformation/index.js +3 -3
- package/admin/plugins/apiInformation/index.js.map +1 -0
- package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -0
- package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -0
- package/admin/plugins/editor/defaultBar/BackButton.js +4 -2
- package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -0
- package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -0
- package/admin/plugins/editor/defaultBar/Divider.d.ts +1 -2
- package/admin/plugins/editor/defaultBar/Divider.js.map +1 -0
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +11 -1
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -0
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -0
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.d.ts +2 -2
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -0
- package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +1 -0
- package/admin/plugins/editor/defaultBar/Name/Name.js +1 -1
- package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -0
- package/admin/plugins/editor/defaultBar/Name/NameStyled.d.ts +3 -4
- package/admin/plugins/editor/defaultBar/Name/NameStyled.js.map +1 -0
- package/admin/plugins/editor/defaultBar/Name/index.js.map +1 -0
- package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +37 -32
- package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -0
- package/admin/plugins/editor/defaultBar/index.d.ts +0 -1
- package/admin/plugins/editor/defaultBar/index.js.map +1 -0
- package/admin/plugins/editor/formSettings/components/GeneralSettings.d.ts +0 -1
- package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -0
- package/admin/plugins/editor/formSettings/components/GroupSelect.d.ts +0 -1
- package/admin/plugins/editor/formSettings/components/GroupSelect.js +1 -1
- package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -0
- package/admin/plugins/editor/formSettings/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/Accordion.d.ts +1 -1
- package/admin/plugins/fieldRenderers/Accordion.js +1 -1
- package/admin/plugins/fieldRenderers/Accordion.js.map +1 -0
- package/admin/plugins/fieldRenderers/DynamicSection.d.ts +7 -1
- package/admin/plugins/fieldRenderers/DynamicSection.js +7 -4
- package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -0
- package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js +0 -1
- package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -0
- package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/checkboxes.js +11 -6
- package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/DateOnly.d.ts +2 -1
- package/admin/plugins/fieldRenderers/dateTime/DateOnly.js +40 -9
- package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.d.ts +2 -2
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +74 -18
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.d.ts +2 -2
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js +72 -16
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js +4 -4
- package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js +15 -10
- package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/dateTime/utils.d.ts +3 -3
- package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -0
- package/admin/plugins/fieldRenderers/file/File.d.ts +4 -4
- package/admin/plugins/fieldRenderers/file/File.js +9 -3
- package/admin/plugins/fieldRenderers/file/File.js.map +1 -0
- package/admin/plugins/fieldRenderers/file/fileField.js +4 -4
- package/admin/plugins/fieldRenderers/file/fileField.js.map +1 -0
- package/admin/plugins/fieldRenderers/file/fileFields.js +10 -5
- package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -0
- package/admin/plugins/fieldRenderers/file/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/file/utils.d.ts +0 -1
- package/admin/plugins/fieldRenderers/file/utils.js +2 -2
- package/admin/plugins/fieldRenderers/file/utils.js.map +1 -0
- package/admin/plugins/fieldRenderers/longText/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/longText/longText.js +0 -1
- package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -0
- package/admin/plugins/fieldRenderers/longText/longTexts.js +1 -1
- package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -0
- package/admin/plugins/fieldRenderers/number/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/number/numberInput.js +0 -1
- package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -0
- package/admin/plugins/fieldRenderers/number/numberInputs.js +1 -1
- package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -0
- package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -0
- package/admin/plugins/fieldRenderers/object/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/object/multipleObjects.js +5 -5
- package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -0
- package/admin/plugins/fieldRenderers/object/singleObject.js +3 -2
- package/admin/plugins/fieldRenderers/object/singleObject.js.map +1 -0
- package/admin/plugins/fieldRenderers/radioButtons.js +11 -5
- package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.d.ts +2 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js +2 -4
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.d.ts +2 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.d.ts +3 -2
- package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +14 -8
- package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/getOptions.d.ts +4 -3
- package/admin/plugins/fieldRenderers/ref/components/getOptions.js +1 -1
- package/admin/plugins/fieldRenderers/ref/components/getOptions.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/graphql.d.ts +4 -14
- package/admin/plugins/fieldRenderers/ref/components/graphql.js +1 -1
- package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/useReference.d.ts +6 -11
- package/admin/plugins/fieldRenderers/ref/components/useReference.js +4 -3
- package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/components/useReferences.d.ts +3 -9
- package/admin/plugins/fieldRenderers/ref/components/useReferences.js +1 -2
- package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +4 -3
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js +6 -1
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/refInput.js +0 -1
- package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -0
- package/admin/plugins/fieldRenderers/ref/refInputs.js +1 -2
- package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -0
- package/admin/plugins/fieldRenderers/richText/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/richText/richTextInput.js +5 -1
- package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -0
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js +9 -3
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -0
- package/admin/plugins/fieldRenderers/select.js +28 -7
- package/admin/plugins/fieldRenderers/select.js.map +1 -0
- package/admin/plugins/fieldRenderers/text/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/text/textInput.js +0 -1
- package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -0
- package/admin/plugins/fieldRenderers/text/textInputs.js +1 -1
- package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -0
- package/admin/plugins/fieldValidators/date/availableValidators.d.ts +1 -1
- package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -0
- package/admin/plugins/fieldValidators/date/createDateInputField.d.ts +0 -1
- package/admin/plugins/fieldValidators/date/createDateInputField.js +5 -3
- package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -0
- package/admin/plugins/fieldValidators/dateGte.js +1 -1
- package/admin/plugins/fieldValidators/dateGte.js.map +1 -0
- package/admin/plugins/fieldValidators/dateLte.js +1 -1
- package/admin/plugins/fieldValidators/dateLte.js.map +1 -0
- package/admin/plugins/fieldValidators/gte.js.map +1 -0
- package/admin/plugins/fieldValidators/in.js.map +1 -0
- package/admin/plugins/fieldValidators/lte.js.map +1 -0
- package/admin/plugins/fieldValidators/maxLength.js.map +1 -0
- package/admin/plugins/fieldValidators/minLength.js.map +1 -0
- package/admin/plugins/fieldValidators/pattern.js +6 -0
- package/admin/plugins/fieldValidators/pattern.js.map +1 -0
- package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -0
- package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -0
- package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -0
- package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -0
- package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -0
- package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -0
- package/admin/plugins/fieldValidators/required.js.map +1 -0
- package/admin/plugins/fieldValidators/unique.js.map +1 -0
- package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -0
- package/admin/plugins/fields/boolean.js.map +1 -0
- package/admin/plugins/fields/dateTime.js.map +1 -0
- package/admin/plugins/fields/file.js +2 -2
- package/admin/plugins/fields/file.js.map +1 -0
- package/admin/plugins/fields/longText.js.map +1 -0
- package/admin/plugins/fields/number.js.map +1 -0
- package/admin/plugins/fields/object/ObjectFields.js +2 -2
- package/admin/plugins/fields/object/ObjectFields.js.map +1 -0
- package/admin/plugins/fields/object.js +1 -1
- package/admin/plugins/fields/object.js.map +1 -0
- package/admin/plugins/fields/ref.js +5 -5
- package/admin/plugins/fields/ref.js.map +1 -0
- package/admin/plugins/fields/richText.js.map +1 -0
- package/admin/plugins/fields/text.js.map +1 -0
- package/admin/plugins/getObjectId.js.map +1 -0
- package/admin/plugins/icons.js +10 -3
- package/admin/plugins/icons.js.map +1 -0
- package/admin/plugins/index.d.ts +0 -1
- package/admin/plugins/index.js.map +1 -0
- package/admin/plugins/install.js +11 -7
- package/admin/plugins/install.js.map +1 -0
- package/admin/plugins/permissionRenderer/CmsPermissions.js +14 -9
- package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.d.ts +2 -2
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +7 -6
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.d.ts +2 -2
- package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +7 -6
- package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/ContentModelPermission.d.ts +2 -2
- package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +7 -6
- package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/PermissionSelector.d.ts +1 -1
- package/admin/plugins/permissionRenderer/components/PermissionSelector.js +13 -1
- package/admin/plugins/permissionRenderer/components/PermissionSelector.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/StyledComponents.d.ts +1 -2
- package/admin/plugins/permissionRenderer/components/StyledComponents.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/types.js.map +1 -0
- package/admin/plugins/permissionRenderer/components/useCmsData.js +4 -6
- package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -0
- package/admin/plugins/permissionRenderer/index.js.map +1 -0
- package/admin/plugins/routes.js.map +1 -0
- package/admin/plugins/transformers/dateTransformer.js +20 -24
- package/admin/plugins/transformers/dateTransformer.js.map +1 -0
- package/admin/plugins/transformers/index.js.map +1 -0
- package/admin/plugins/transformers/numberTransformer.js.map +1 -0
- package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.d.ts +1 -1
- package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.js.map +1 -0
- package/admin/plugins/upgrades/5.19.0/createCmsApolloClient.d.ts +2 -2
- package/admin/plugins/upgrades/5.19.0/createCmsApolloClient.js.map +1 -0
- package/admin/plugins/upgrades/5.19.0/createListEntriesQuery.js.map +1 -0
- package/admin/plugins/upgrades/5.19.0/createListModelsQuery.js.map +1 -0
- package/admin/plugins/upgrades/5.19.0/createRepublishMutation.js.map +1 -0
- package/admin/plugins/upgrades/5.19.0/createUpgradeMutation.js.map +1 -0
- package/admin/plugins/upgrades/5.19.0/fetchModelEntries.d.ts +2 -2
- package/admin/plugins/upgrades/5.19.0/fetchModelEntries.js.map +1 -0
- package/admin/plugins/upgrades/5.19.0/types.js.map +1 -0
- package/admin/plugins/upgrades/v5.0.0.d.ts +0 -1
- package/admin/plugins/upgrades/v5.0.0.js.map +1 -0
- package/admin/plugins/upgrades/v5.19.0.d.ts +0 -1
- package/admin/plugins/upgrades/v5.19.0.js.map +1 -0
- package/admin/plugins/upgrades/v5.5.0.d.ts +0 -1
- package/admin/plugins/upgrades/v5.5.0.js.map +1 -0
- package/admin/plugins/upgrades/v5.8.0.d.ts +0 -1
- package/admin/plugins/upgrades/v5.8.0.js.map +1 -0
- package/admin/plugins/validators/dateGte.js.map +1 -0
- package/admin/plugins/validators/dateLte.js.map +1 -0
- package/admin/plugins/validators/gte.js.map +1 -0
- package/admin/plugins/validators/in.js.map +1 -0
- package/admin/plugins/validators/lte.js.map +1 -0
- package/admin/plugins/validators/maxLength.js.map +1 -0
- package/admin/plugins/validators/minLength.js.map +1 -0
- package/admin/plugins/validators/pattern.js.map +1 -0
- package/admin/plugins/validators/patternPlugins/email.js.map +1 -0
- package/admin/plugins/validators/patternPlugins/lowerCase.js.map +1 -0
- package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js.map +1 -0
- package/admin/plugins/validators/patternPlugins/upperCase.js.map +1 -0
- package/admin/plugins/validators/patternPlugins/upperCaseSpace.js.map +1 -0
- package/admin/plugins/validators/patternPlugins/url.js.map +1 -0
- package/admin/plugins/validators/required.js.map +1 -0
- package/admin/plugins/validators/timeGte.js.map +1 -0
- package/admin/plugins/validators/timeLte.js.map +1 -0
- package/admin/plugins/validators/unique.js.map +1 -0
- package/admin/plugins/welcomeScreenWidget.js.map +1 -0
- package/admin/views/contentEntries/ContentEntries.js +2 -2
- package/admin/views/contentEntries/ContentEntries.js.map +1 -0
- package/admin/views/contentEntries/ContentEntriesContext.js +13 -4
- package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -0
- package/admin/views/contentEntries/ContentEntriesList.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.d.ts +10 -7
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +85 -4
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +4 -2
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/RevisionsList.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/cache.js +19 -23
- package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/header/Header.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js +15 -8
- package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/header/index.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.d.ts +1 -2
- package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js +8 -7
- package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js +2 -2
- package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js +2 -2
- package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/prepareFormData.js +2 -1
- package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/useRevision.js +105 -47
- package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry.js.map +1 -0
- package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -0
- package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +1 -2
- package/admin/views/contentEntries/hooks/useContentEntriesList.js +4 -4
- package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -0
- package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -0
- package/admin/views/contentModelGroups/ContentModelGroups.js +4 -3
- package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -0
- package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +6 -3
- package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -0
- package/admin/views/contentModelGroups/ContentModelGroupsForm.js +23 -8
- package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -0
- package/admin/views/contentModelGroups/DelayedOnChange.js.map +1 -0
- package/admin/views/contentModelGroups/IconPicker.js +11 -3
- package/admin/views/contentModelGroups/IconPicker.js.map +1 -0
- package/admin/views/contentModelGroups/graphql.js.map +1 -0
- package/admin/views/contentModels/CloneContentModelDialog.js +25 -34
- package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -0
- package/admin/views/contentModels/ContentModelEditor.js +2 -2
- package/admin/views/contentModels/ContentModelEditor.js.map +1 -0
- package/admin/views/contentModels/ContentModels.js +5 -4
- package/admin/views/contentModels/ContentModels.js.map +1 -0
- package/admin/views/contentModels/ContentModelsDataList.js +9 -2
- package/admin/views/contentModels/ContentModelsDataList.js.map +1 -0
- package/admin/views/contentModels/NewContentModelDialog.js +17 -3
- package/admin/views/contentModels/NewContentModelDialog.js.map +1 -0
- package/admin/views/contentModels/cache.js +38 -12
- package/admin/views/contentModels/cache.js.map +1 -0
- package/admin/views/contentModels/types.js.map +1 -0
- package/admin/views/utils.js.map +1 -0
- package/admin/viewsGraphql.js.map +1 -0
- package/index.js.map +1 -0
- package/package.json +26 -25
- package/types.d.ts +41 -7
- package/types.js.map +1 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { BindComponent } from "@webiny/form/types";
|
|
3
|
-
import {
|
|
3
|
+
import { CmsSecurityPermission } from "../../../../types";
|
|
4
4
|
interface ContentEntryPermissionProps {
|
|
5
5
|
Bind: BindComponent;
|
|
6
|
-
data:
|
|
6
|
+
data: CmsSecurityPermission;
|
|
7
7
|
entity: string;
|
|
8
8
|
setValue: (name: string, value: string) => void;
|
|
9
9
|
title: string;
|
|
@@ -37,7 +37,8 @@ export var ContentEntryPermission = function ContentEntryPermission(_ref) {
|
|
|
37
37
|
setValue("".concat(entity, "AccessScope"), "own");
|
|
38
38
|
}
|
|
39
39
|
}, [data]);
|
|
40
|
-
var
|
|
40
|
+
var endpoints = data.endpoints || [];
|
|
41
|
+
var disabledPrimaryActions = [undefined, "own", "no"].includes(data["".concat(entity, "AccessScope")]) || !endpoints.includes("manage");
|
|
41
42
|
return /*#__PURE__*/React.createElement(Elevation, {
|
|
42
43
|
z: 1,
|
|
43
44
|
style: {
|
|
@@ -71,9 +72,9 @@ export var ContentEntryPermission = function ContentEntryPermission(_ref) {
|
|
|
71
72
|
disabled: data["contentModelAccessScope"] === "own"
|
|
72
73
|
}, /*#__PURE__*/React.createElement("option", {
|
|
73
74
|
value: "full"
|
|
74
|
-
}, t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["All entries"])))),
|
|
75
|
+
}, t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["All entries"])))), endpoints.includes("manage") && /*#__PURE__*/React.createElement("option", {
|
|
75
76
|
value: "own"
|
|
76
|
-
}, t(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["Only entries created by the user"])))))), data["contentModelAccessScope"] === "own" && /*#__PURE__*/React.createElement(Note, null, /*#__PURE__*/React.createElement(Typography, {
|
|
77
|
+
}, t(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["Only entries created by the user"])))) || /*#__PURE__*/React.createElement(React.Fragment, null))), data["contentModelAccessScope"] === "own" && /*#__PURE__*/React.createElement(Note, null, /*#__PURE__*/React.createElement(Typography, {
|
|
77
78
|
use: "caption"
|
|
78
79
|
}, /*#__PURE__*/React.createElement("span", {
|
|
79
80
|
className: "highlight"
|
|
@@ -88,11 +89,11 @@ export var ContentEntryPermission = function ContentEntryPermission(_ref) {
|
|
|
88
89
|
disabled: disabledPrimaryActions
|
|
89
90
|
}, /*#__PURE__*/React.createElement("option", {
|
|
90
91
|
value: "r"
|
|
91
|
-
}, t(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["Read"])))),
|
|
92
|
+
}, t(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["Read"])))), endpoints.includes("manage") ? /*#__PURE__*/React.createElement("option", {
|
|
92
93
|
value: "rw"
|
|
93
|
-
}, t(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["Read, write"])))) : null,
|
|
94
|
+
}, t(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["Read, write"])))) : /*#__PURE__*/React.createElement(React.Fragment, null), endpoints.includes("manage") ? /*#__PURE__*/React.createElement("option", {
|
|
94
95
|
value: "rwd"
|
|
95
|
-
}, t(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["Read, write, delete"])))) : null))),
|
|
96
|
+
}, t(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["Read, write, delete"])))) : /*#__PURE__*/React.createElement(React.Fragment, null)))), endpoints.includes("manage") ? /*#__PURE__*/React.createElement(Cell, {
|
|
96
97
|
span: 12
|
|
97
98
|
}, /*#__PURE__*/React.createElement(Bind, {
|
|
98
99
|
name: "".concat(entity, "PW")
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["ContentEntryPermission.tsx"],"names":["React","useEffect","get","Grid","Cell","Typography","Select","i18n","Elevation","Checkbox","CheckboxGroup","Note","t","ns","pwOptions","id","name","ContentEntryPermission","Bind","data","entity","setValue","title","endpoints","disabledPrimaryActions","undefined","includes","marginTop","padding","paddingBottom","value","cb","getValue","onChange","map"],"mappings":"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","sourcesContent":["import React, { useEffect } from \"react\";\nimport get from \"lodash/get\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { Checkbox, CheckboxGroup } from \"@webiny/ui/Checkbox\";\nimport { Note } from \"./StyledComponents\";\nimport { BindComponent } from \"@webiny/form/types\";\nimport { CmsSecurityPermission } from \"~/types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/permissionRenderer\");\n\ninterface PermissionOption {\n id: string;\n name: string;\n}\nconst pwOptions: PermissionOption[] = [\n { id: \"p\", name: t`Publish` },\n { id: \"u\", name: t`Unpublish` },\n { id: \"r\", name: t`Request review` },\n { id: \"c\", name: t`Request changes` }\n];\n\ninterface ContentEntryPermissionProps {\n Bind: BindComponent;\n data: CmsSecurityPermission;\n entity: string;\n setValue: (name: string, value: string) => void;\n title: string;\n}\nexport const ContentEntryPermission: React.FC<ContentEntryPermissionProps> = ({\n Bind,\n data,\n entity,\n setValue,\n title\n}) => {\n // Set \"cms.contentEntry\" access scope to \"own\" if \"cms.contentModel\" === \"own\".\n useEffect(() => {\n if (\n get(data, `contentModelAccessScope`) === \"own\" &&\n get(data, `${entity}AccessScope`) !== \"own\"\n ) {\n setValue(`${entity}AccessScope`, \"own\");\n }\n }, [data]);\n\n const endpoints = data.endpoints || [];\n\n const disabledPrimaryActions =\n [undefined, \"own\", \"no\"].includes(data[`${entity}AccessScope`]) ||\n !endpoints.includes(\"manage\");\n\n return (\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{title}</Typography>\n </Cell>\n <Cell span={12}>\n <Grid style={{ padding: 0, paddingBottom: 24 }}>\n <Cell span={12}>\n <Bind\n defaultValue={\"full\"}\n name={`${entity}AccessScope`}\n beforeChange={(value, cb) => {\n if (value === \"own\") {\n setValue(`${entity}RWD`, \"rwd\");\n }\n cb(value);\n }}\n >\n <Select\n label={t`Access Scope`}\n disabled={data[`contentModelAccessScope`] === \"own\"}\n >\n <option value={\"full\"}>{t`All entries`}</option>\n {(endpoints.includes(\"manage\") && (\n <option\n value={\"own\"}\n >{t`Only entries created by the user`}</option>\n )) || <></>}\n </Select>\n </Bind>\n {data[`contentModelAccessScope`] === \"own\" && (\n <Note>\n <Typography use={\"caption\"}>\n <span className={\"highlight\"}>Content Entry</span>\n {t`access depends upon`} \n <span className={\"highlight\"}>Content Model</span>\n </Typography>\n </Note>\n )}\n </Cell>\n\n <Cell span={12}>\n <Bind name={`${entity}RWD`}>\n <Select\n label={t`Primary Actions`}\n disabled={disabledPrimaryActions}\n >\n <option value={\"r\"}>{t`Read`}</option>\n {endpoints.includes(\"manage\") ? (\n <option value={\"rw\"}>{t`Read, write`}</option>\n ) : (\n <></>\n )}\n {endpoints.includes(\"manage\") ? (\n <option value={\"rwd\"}>{t`Read, write, delete`}</option>\n ) : (\n <></>\n )}\n </Select>\n </Bind>\n </Cell>\n {endpoints.includes(\"manage\") ? (\n <Cell span={12}>\n <Bind name={`${entity}PW`}>\n <CheckboxGroup\n label={t`Publishing actions`}\n description={t`Publishing-related actions that can be performed on content entries.`}\n >\n {({ getValue, onChange }) =>\n pwOptions.map(({ id, name }) => (\n <Checkbox\n disabled={[undefined, \"no\"].includes(\n data[`${entity}AccessScope`]\n )}\n key={id}\n label={name}\n value={getValue(id)}\n onChange={onChange(id)}\n />\n ))\n }\n </CheckboxGroup>\n </Bind>\n </Cell>\n ) : null}\n </Grid>\n </Cell>\n </Grid>\n </Elevation>\n );\n};\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { BindComponent } from "@webiny/form/types";
|
|
3
|
-
import {
|
|
3
|
+
import { CmsSecurityPermission } from "../../../../types";
|
|
4
4
|
interface ContentModelGroupPermissionProps {
|
|
5
5
|
Bind: BindComponent;
|
|
6
|
-
data:
|
|
6
|
+
data: CmsSecurityPermission;
|
|
7
7
|
entity: string;
|
|
8
8
|
title: string;
|
|
9
9
|
locales: string[];
|
|
@@ -22,7 +22,8 @@ var ContentModelGroupPermission = function ContentModelGroupPermission(_ref) {
|
|
|
22
22
|
var getItems = useCallback(function (code) {
|
|
23
23
|
return modelsGroups[code]["groups"];
|
|
24
24
|
}, [modelsGroups]);
|
|
25
|
-
var
|
|
25
|
+
var endpoints = data.endpoints || [];
|
|
26
|
+
var disabledPrimaryActions = [undefined, "own", "no"].includes(data["".concat(entity, "AccessScope")]) || !endpoints.includes("manage");
|
|
26
27
|
return /*#__PURE__*/React.createElement(Elevation, {
|
|
27
28
|
z: 1,
|
|
28
29
|
style: {
|
|
@@ -50,9 +51,9 @@ var ContentModelGroupPermission = function ContentModelGroupPermission(_ref) {
|
|
|
50
51
|
value: "full"
|
|
51
52
|
}, t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["All groups"])))), /*#__PURE__*/React.createElement("option", {
|
|
52
53
|
value: "groups"
|
|
53
|
-
}, t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["Only specific groups"])))),
|
|
54
|
+
}, t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["Only specific groups"])))), endpoints.includes("manage") && /*#__PURE__*/React.createElement("option", {
|
|
54
55
|
value: "own"
|
|
55
|
-
}, t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["Only groups created by the user"]))))))), data["".concat(entity, "AccessScope")] === "groups" && /*#__PURE__*/React.createElement(PermissionSelectorWrapper, null, /*#__PURE__*/React.createElement(PermissionSelector, {
|
|
56
|
+
}, t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["Only groups created by the user"])))) || /*#__PURE__*/React.createElement(React.Fragment, null)))), data["".concat(entity, "AccessScope")] === "groups" && /*#__PURE__*/React.createElement(PermissionSelectorWrapper, null, /*#__PURE__*/React.createElement(PermissionSelector, {
|
|
56
57
|
locales: locales,
|
|
57
58
|
Bind: Bind,
|
|
58
59
|
entity: entity,
|
|
@@ -67,11 +68,11 @@ var ContentModelGroupPermission = function ContentModelGroupPermission(_ref) {
|
|
|
67
68
|
disabled: disabledPrimaryActions
|
|
68
69
|
}, /*#__PURE__*/React.createElement("option", {
|
|
69
70
|
value: "r"
|
|
70
|
-
}, t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["Read"])))),
|
|
71
|
+
}, t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["Read"])))), endpoints.includes("manage") ? /*#__PURE__*/React.createElement("option", {
|
|
71
72
|
value: "rw"
|
|
72
|
-
}, t(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["Read, write"])))) : null,
|
|
73
|
+
}, t(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["Read, write"])))) : /*#__PURE__*/React.createElement(React.Fragment, null), endpoints.includes("manage") ? /*#__PURE__*/React.createElement("option", {
|
|
73
74
|
value: "rwd"
|
|
74
|
-
}, t(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["Read, write, delete"])))) : null)))))));
|
|
75
|
+
}, t(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["Read, write, delete"])))) : /*#__PURE__*/React.createElement(React.Fragment, null))))))));
|
|
75
76
|
};
|
|
76
77
|
|
|
77
78
|
export default ContentModelGroupPermission;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["ContentModelGroupPermission.tsx"],"names":["React","useCallback","Grid","Cell","Select","i18n","Elevation","Typography","PermissionSelector","PermissionSelectorWrapper","useCmsData","t","ns","ContentModelGroupPermission","Bind","data","entity","title","locales","modelsGroups","getItems","code","endpoints","disabledPrimaryActions","undefined","includes","marginTop","padding","paddingBottom"],"mappings":"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","sourcesContent":["import React, { useCallback } from \"react\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { PermissionSelector, PermissionSelectorWrapper } from \"./PermissionSelector\";\nimport { useCmsData } from \"./useCmsData\";\nimport { BindComponent } from \"@webiny/form/types\";\nimport { CmsSecurityPermission } from \"~/types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/permissionRenderer\");\n\ninterface ContentModelGroupPermissionProps {\n Bind: BindComponent;\n data: CmsSecurityPermission;\n entity: string;\n title: string;\n locales: string[];\n}\nconst ContentModelGroupPermission: React.FC<ContentModelGroupPermissionProps> = ({\n Bind,\n data,\n entity,\n title,\n locales\n}) => {\n const modelsGroups = useCmsData(locales);\n\n const getItems = useCallback(\n (code: string) => {\n return modelsGroups[code][\"groups\"];\n },\n [modelsGroups]\n );\n\n const endpoints = data.endpoints || [];\n\n const disabledPrimaryActions =\n [undefined, \"own\", \"no\"].includes(data[`${entity}AccessScope`]) ||\n !endpoints.includes(\"manage\");\n\n return (\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{title}</Typography>\n </Cell>\n <Cell span={12}>\n <Grid style={{ padding: 0, paddingBottom: 24 }}>\n <Cell span={12}>\n <Bind name={`${entity}AccessScope`} defaultValue={\"full\"}>\n <Select label={t`Access Scope`}>\n <option value={\"full\"}>{t`All groups`}</option>\n <option value={\"groups\"}>{t`Only specific groups`}</option>\n {(endpoints.includes(\"manage\") && (\n <option\n value={\"own\"}\n >{t`Only groups created by the user`}</option>\n )) || <></>}\n </Select>\n </Bind>\n </Cell>\n {data[`${entity}AccessScope`] === \"groups\" && (\n <PermissionSelectorWrapper>\n <PermissionSelector\n locales={locales}\n Bind={Bind}\n entity={entity}\n selectorKey={\"groups\"}\n getItems={getItems}\n />\n </PermissionSelectorWrapper>\n )}\n <Cell span={12}>\n <Bind name={`${entity}RWD`}>\n <Select\n label={t`Primary Actions`}\n disabled={disabledPrimaryActions}\n >\n <option value={\"r\"}>{t`Read`}</option>\n {endpoints.includes(\"manage\") ? (\n <option value={\"rw\"}>{t`Read, write`}</option>\n ) : (\n <></>\n )}\n {endpoints.includes(\"manage\") ? (\n <option value={\"rwd\"}>{t`Read, write, delete`}</option>\n ) : (\n <></>\n )}\n </Select>\n </Bind>\n </Cell>\n </Grid>\n </Cell>\n </Grid>\n </Elevation>\n );\n};\n\nexport default ContentModelGroupPermission;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["ContentModelList.tsx"],"names":["React","css","groupBy","get","Typography","Checkbox","groupStyles","marginLeft","labelStyles","display","color","fontWeight","ContentModelList","items","onChange","getValue","list","Object","entries","map","item","groupName","key","value","id","label"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,GAAT,QAAoB,SAApB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,OAAOC,GAAP,MAAgB,YAAhB;AACA,SAASC,UAAT,QAA2B,uBAA3B;AACA,SAASC,QAAT,QAAyB,qBAAzB;AAGA,IAAMC,WAAW,gBAAGL,GAAG,CAAC;AACpBM,EAAAA,UAAU,EAAE;AADQ,CAAD,uBAAvB;AAIA,IAAMC,WAAW,gBAAGP,GAAG,CAAC;AACpBQ,EAAAA,OAAO,EAAE,OADW;AAEpBC,EAAAA,KAAK,EAAE,0CAFa;AAGpBC,EAAAA,UAAU,EAAE;AAHQ,CAAD,uBAAvB;;AAeA,IAAMC,gBAAiD,GAAG,SAApDA,gBAAoD,OAAmC;AAAA,MAAhCC,KAAgC,QAAhCA,KAAgC;AAAA,MAAzBC,QAAyB,QAAzBA,QAAyB;AAAA,MAAfC,QAAe,QAAfA,QAAe;AACzF,MAAMC,IAA6B,GAAGC,MAAM,CAACC,OAAP,CAClChB,OAAO,CACHW,KAAK,CAACM,GAAN,CAAU,UAACC,IAAD,EAAqB;AAC3B,2CACOA,IADP;AAEIC,MAAAA,SAAS,EAAElB,GAAG,CAACiB,IAAD,EAAO,aAAP;AAFlB;AAIH,GALD,CADG,EAOH,WAPG,CAD2B,CAAtC;AAYA,sBACI,oBAAC,KAAD,CAAO,QAAP,QACKJ,IAAI,CAACG,GAAL,CAAS,iBAAkB;AAAA;AAAA,QAAhBG,GAAgB;AAAA,QAAXC,KAAW;;AACxB,wBACI;AAAK,MAAA,GAAG,EAAED,GAAV;AAAe,MAAA,SAAS,EAAEhB;AAA1B,oBACI,oBAAC,UAAD;AAAY,MAAA,GAAG,EAAE,SAAjB;AAA4B,MAAA,SAAS,EAAEE;AAAvC,OACKc,GADL,CADJ,EAIMC,KAAD,CAAiBJ,GAAjB,CAAqB;AAAA,UAAGK,EAAH,SAAGA,EAAH;AAAA,UAAOC,KAAP,SAAOA,KAAP;AAAA,0BAClB;AAAK,QAAA,GAAG,EAAED;AAAV,sBACI,oBAAC,QAAD;AACI,QAAA,GAAG,EAAEA,EADT;AAEI,QAAA,KAAK,EAAEC,KAFX;AAGI,QAAA,KAAK,EAAEV,QAAQ,CAACS,EAAD,CAHnB;AAII,QAAA,QAAQ,EAAEV,QAAQ,CAACU,EAAD;AAJtB,QADJ,CADkB;AAAA,KAArB,CAJL,CADJ;AAiBH,GAlBA,CADL,CADJ;AAuBH,CApCD;;AAsCA,eAAeZ,gBAAf","sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport groupBy from \"lodash/groupBy\";\nimport get from \"lodash/get\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Checkbox } from \"@webiny/ui/Checkbox\";\nimport { GetValueCallable, OnChangeCallable, PermissionSelectorCmsGroup } from \"./types\";\n\nconst groupStyles = css({\n marginLeft: 20\n});\n\nconst labelStyles = css({\n display: \"block\",\n color: \"var(--mdc-theme-text-secondary-on-light)\",\n fontWeight: \"bold\"\n});\n\ninterface GroupItem extends PermissionSelectorCmsGroup {\n groupName: string;\n}\n\ninterface ContentModelListProps {\n items: PermissionSelectorCmsGroup[];\n onChange: OnChangeCallable;\n getValue: GetValueCallable;\n}\nconst ContentModelList: React.FC<ContentModelListProps> = ({ items, onChange, getValue }) => {\n const list: [string, GroupItem[]][] = Object.entries(\n groupBy(\n items.map((item): GroupItem => {\n return {\n ...item,\n groupName: get(item, \"group.label\")\n };\n }),\n \"groupName\"\n )\n );\n\n return (\n <React.Fragment>\n {list.map(([key, value]) => {\n return (\n <div key={key} className={groupStyles}>\n <Typography use={\"caption\"} className={labelStyles}>\n {key}\n </Typography>\n {(value as any[]).map(({ id, label }) => (\n <div key={id}>\n <Checkbox\n key={id}\n label={label}\n value={getValue(id)}\n onChange={onChange(id)}\n />\n </div>\n ))}\n </div>\n );\n })}\n </React.Fragment>\n );\n};\n\nexport default ContentModelList;\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { BindComponent } from "@webiny/form/types";
|
|
3
|
-
import {
|
|
3
|
+
import { CmsSecurityPermission } from "../../../../types";
|
|
4
4
|
interface ContentModelPermissionProps {
|
|
5
5
|
Bind: BindComponent;
|
|
6
|
-
data:
|
|
6
|
+
data: CmsSecurityPermission;
|
|
7
7
|
setValue: (name: string, value: string) => void;
|
|
8
8
|
entity: string;
|
|
9
9
|
title: string;
|
|
@@ -43,7 +43,8 @@ export var ContentModelPermission = function ContentModelPermission(_ref) {
|
|
|
43
43
|
|
|
44
44
|
return list;
|
|
45
45
|
}, [modelsGroups]);
|
|
46
|
-
var
|
|
46
|
+
var endpoints = data.endpoints || [];
|
|
47
|
+
var disabledPrimaryActions = [undefined, "own", "no"].includes(data["".concat(entity, "AccessScope")]) || !endpoints.includes("manage");
|
|
47
48
|
return /*#__PURE__*/React.createElement(Elevation, {
|
|
48
49
|
z: 1,
|
|
49
50
|
style: {
|
|
@@ -73,9 +74,9 @@ export var ContentModelPermission = function ContentModelPermission(_ref) {
|
|
|
73
74
|
value: "full"
|
|
74
75
|
}, t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["All models"])))), /*#__PURE__*/React.createElement("option", {
|
|
75
76
|
value: "models"
|
|
76
|
-
}, t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["Only specific models"])))),
|
|
77
|
+
}, t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["Only specific models"])))), endpoints.includes("manage") && /*#__PURE__*/React.createElement("option", {
|
|
77
78
|
value: "own"
|
|
78
|
-
}, t(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["Only models created by the user"])))))), data["contentModelGroupAccessScope"] === "own" && /*#__PURE__*/React.createElement(Note, null, /*#__PURE__*/React.createElement(Typography, {
|
|
79
|
+
}, t(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["Only models created by the user"])))) || /*#__PURE__*/React.createElement(React.Fragment, null))), data["contentModelGroupAccessScope"] === "own" && /*#__PURE__*/React.createElement(Note, null, /*#__PURE__*/React.createElement(Typography, {
|
|
79
80
|
use: "caption"
|
|
80
81
|
}, /*#__PURE__*/React.createElement("span", {
|
|
81
82
|
className: "highlight"
|
|
@@ -97,9 +98,9 @@ export var ContentModelPermission = function ContentModelPermission(_ref) {
|
|
|
97
98
|
disabled: disabledPrimaryActions
|
|
98
99
|
}, /*#__PURE__*/React.createElement("option", {
|
|
99
100
|
value: "r"
|
|
100
|
-
}, t(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["Read"])))),
|
|
101
|
+
}, t(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["Read"])))), endpoints.includes("manage") ? /*#__PURE__*/React.createElement("option", {
|
|
101
102
|
value: "rw"
|
|
102
|
-
}, t(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["Read, write"])))) : null,
|
|
103
|
+
}, t(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["Read, write"])))) : /*#__PURE__*/React.createElement(React.Fragment, null), endpoints.includes("manage") ? /*#__PURE__*/React.createElement("option", {
|
|
103
104
|
value: "rwd"
|
|
104
|
-
}, t(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["Read, write, delete"])))) : null)))))));
|
|
105
|
+
}, t(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["Read, write, delete"])))) : /*#__PURE__*/React.createElement(React.Fragment, null))))))));
|
|
105
106
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["ContentModelPermission.tsx"],"names":["React","useCallback","useEffect","get","Grid","Cell","Typography","Select","i18n","Elevation","PermissionSelector","PermissionSelectorWrapper","useCmsData","Note","ContentModelList","t","ns","ContentModelPermission","Bind","data","setValue","entity","title","locales","selectedContentModelGroups","modelsGroups","getItems","code","list","groups","length","filter","item","includes","group","id","endpoints","disabledPrimaryActions","undefined","marginTop","padding","paddingBottom"],"mappings":"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","sourcesContent":["import React, { useCallback, useEffect } from \"react\";\nimport get from \"lodash/get\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { PermissionSelector, PermissionSelectorWrapper } from \"./PermissionSelector\";\nimport { useCmsData, CmsDataCmsModel } from \"./useCmsData\";\nimport { Note } from \"./StyledComponents\";\nimport ContentModelList from \"./ContentModelList\";\nimport { BindComponent } from \"@webiny/form/types\";\nimport { CmsSecurityPermission } from \"~/types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/permissionRenderer\");\n\ninterface ContentModelPermissionProps {\n Bind: BindComponent;\n data: CmsSecurityPermission;\n setValue: (name: string, value: string) => void;\n entity: string;\n title: string;\n locales: string[];\n selectedContentModelGroups?: Record<string, string[]>;\n}\nexport const ContentModelPermission: React.FC<ContentModelPermissionProps> = ({\n Bind,\n data,\n setValue,\n entity,\n title,\n locales,\n selectedContentModelGroups = {}\n}) => {\n const modelsGroups = useCmsData(locales);\n // Set \"cms.contentModel\" access scope to \"own\" if \"cms.contentModelGroup\" === \"own\".\n useEffect(() => {\n if (\n get(data, `contentModelGroupAccessScope`) === \"own\" &&\n get(data, `${entity}AccessScope`) !== \"own\"\n ) {\n setValue(`${entity}AccessScope`, \"own\");\n }\n }, [data]);\n\n const getItems = useCallback(\n (code: string): CmsDataCmsModel[] => {\n let list = get(modelsGroups, `${code}.models`, []) as CmsDataCmsModel[];\n\n const groups: string[] = selectedContentModelGroups[code] || [];\n if (groups.length) {\n // Filter by groups\n list = list.filter(item => groups.includes(item.group.id));\n }\n\n return list;\n },\n [modelsGroups]\n );\n\n const endpoints = data.endpoints || [];\n\n const disabledPrimaryActions =\n [undefined, \"own\", \"no\"].includes(data[`${entity}AccessScope`]) ||\n !endpoints.includes(\"manage\");\n\n return (\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{title}</Typography>\n </Cell>\n <Cell span={12}>\n <Grid style={{ padding: 0, paddingBottom: 24 }}>\n <Cell span={12}>\n <Bind name={`${entity}AccessScope`} defaultValue={\"full\"}>\n <Select\n label={t`Access Scope`}\n disabled={data[`contentModelGroupAccessScope`] === \"own\"}\n description={t`The list of available models is defined by the options set in the content model groups section above.`}\n >\n <option value={\"full\"}>{t`All models`}</option>\n <option value={\"models\"}>{t`Only specific models`}</option>\n {(endpoints.includes(\"manage\") && (\n <option\n value={\"own\"}\n >{t`Only models created by the user`}</option>\n )) || <></>}\n </Select>\n </Bind>\n {data[`contentModelGroupAccessScope`] === \"own\" && (\n <Note>\n <Typography use={\"caption\"}>\n <span className={\"highlight\"}>Content Model</span>\n {t`access depends upon`} \n <span className={\"highlight\"}>Content Model Group</span>\n </Typography>\n </Note>\n )}\n </Cell>\n {data[`${entity}AccessScope`] === \"models\" && (\n <PermissionSelectorWrapper>\n <PermissionSelector\n locales={locales}\n Bind={Bind}\n entity={entity}\n selectorKey={\"models\"}\n getItems={getItems}\n RenderItems={ContentModelList}\n />\n </PermissionSelectorWrapper>\n )}\n\n <Cell span={12}>\n <Bind name={`${entity}RWD`}>\n <Select\n label={t`Primary Actions`}\n disabled={disabledPrimaryActions}\n >\n <option value={\"r\"}>{t`Read`}</option>\n {endpoints.includes(\"manage\") ? (\n <option value={\"rw\"}>{t`Read, write`}</option>\n ) : (\n <></>\n )}\n {endpoints.includes(\"manage\") ? (\n <option value={\"rwd\"}>{t`Read, write, delete`}</option>\n ) : (\n <></>\n )}\n </Select>\n </Bind>\n </Cell>\n </Grid>\n </Cell>\n </Grid>\n </Elevation>\n );\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["PermissionRendererWrapper.tsx"],"names":["React","Elevation","Cell","Grid","Typography","PermissionRendererWrapper","label","children","marginTop","padding","paddingBottom"],"mappings":"AAAA;AACA;AACA;AACA;AACA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,SAAT,QAA0B,sBAA1B;AACA,SAASC,IAAT,EAAeC,IAAf,QAA2B,iBAA3B;AACA,SAASC,UAAT,QAA2B,uBAA3B;AAKA,OAAO,IAAMC,yBAAmE,GAAG,SAAtEA,yBAAsE;AAAA,MAC/EC,KAD+E,QAC/EA,KAD+E;AAAA,MAE/EC,QAF+E,QAE/EA,QAF+E;AAAA,sBAI/E,oBAAC,SAAD;AAAW,IAAA,CAAC,EAAE,CAAd;AAAiB,IAAA,SAAS,EAAE;AAA5B,kBACI,oBAAC,IAAD;AAAM,IAAA,SAAS,EAAE,EAAjB;AAAqB,IAAA,KAAK,EAAE;AAAEC,MAAAA,SAAS,EAAE;AAAb;AAA5B,kBACI,oBAAC,IAAD;AAAM,IAAA,IAAI,EAAE;AAAZ,kBACI,oBAAC,UAAD;AAAY,IAAA,GAAG,EAAE;AAAjB,KAA8BF,KAA9B,CADJ,CADJ,eAII,oBAAC,IAAD;AAAM,IAAA,IAAI,EAAE;AAAZ,kBACI,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEG,MAAAA,OAAO,EAAE,CAAX;AAAcC,MAAAA,aAAa,EAAE;AAA7B;AAAb,KAAiDH,QAAjD,CADJ,CAJJ,CADJ,CAJ+E;AAAA,CAA5E","sourcesContent":["/**\n * Verify that this is used somewhere.\n * // TODO @ts-refactor\n */\nimport React from \"react\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\ninterface PermissionRendererWrapperProps {\n label: string;\n}\nexport const PermissionRendererWrapper: React.FC<PermissionRendererWrapperProps> = ({\n label,\n children\n}) => (\n <Elevation z={1} className={\"\"}>\n <Grid className={\"\"} style={{ marginTop: 36 }}>\n <Cell span={12}>\n <Typography use={\"overline\"}>{label}</Typography>\n </Cell>\n <Cell span={12}>\n <Grid style={{ padding: 0, paddingBottom: 24 }}>{children}</Grid>\n </Cell>\n </Grid>\n </Elevation>\n);\n"]}
|
|
@@ -12,7 +12,7 @@ export interface PermissionSelectorProps {
|
|
|
12
12
|
locales: string[];
|
|
13
13
|
entity: string;
|
|
14
14
|
getItems: (code: string) => PermissionSelectorCmsModel[] | PermissionSelectorCmsGroup[];
|
|
15
|
-
RenderItems?: React.
|
|
15
|
+
RenderItems?: React.FC<RenderItemsProps>;
|
|
16
16
|
}
|
|
17
17
|
export declare const PermissionSelector: React.FC<PermissionSelectorProps>;
|
|
18
18
|
export declare const PermissionSelectorWrapper: React.FC;
|
|
@@ -40,10 +40,22 @@ export var PermissionSelector = function PermissionSelector(_ref3) {
|
|
|
40
40
|
});
|
|
41
41
|
return /*#__PURE__*/React.createElement(Fragment, null, locales.map(function (code) {
|
|
42
42
|
var items = getItems(code);
|
|
43
|
+
/**
|
|
44
|
+
* Lets have two different outputs, depending on if there are any items.
|
|
45
|
+
* Checkbox group is not showing when no items.
|
|
46
|
+
*/
|
|
47
|
+
|
|
48
|
+
if (items.length === 0) {
|
|
49
|
+
return /*#__PURE__*/React.createElement(Bind, {
|
|
50
|
+
key: code,
|
|
51
|
+
name: "".concat(entity, "Props.").concat(selectorKey, ".").concat(code)
|
|
52
|
+
}, /*#__PURE__*/React.createElement(React.Fragment, null));
|
|
53
|
+
}
|
|
54
|
+
|
|
43
55
|
return /*#__PURE__*/React.createElement(Bind, {
|
|
44
56
|
key: code,
|
|
45
57
|
name: "".concat(entity, "Props.").concat(selectorKey, ".").concat(code)
|
|
46
|
-
},
|
|
58
|
+
}, /*#__PURE__*/React.createElement(CheckboxGroup, {
|
|
47
59
|
label: code
|
|
48
60
|
}, function (_ref4) {
|
|
49
61
|
var onChange = _ref4.onChange,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["PermissionSelector.tsx"],"names":["React","Fragment","i18n","Checkbox","CheckboxGroup","Cell","FormElementMessage","t","ns","DefaultRenderItems","items","getValue","onChange","map","id","label","PermissionSelector","Bind","entity","locales","selectorKey","getItems","RenderItems","description","code","length","PermissionSelectorWrapper","children"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,SAASC,IAAT,QAAqB,kBAArB;AACA,SAASC,QAAT,EAAmBC,aAAnB,QAAwC,qBAAxC;AACA,SAASC,IAAT,QAAqB,iBAArB;AAEA,SAASC,kBAAT,QAAmC,+BAAnC;AAQA,IAAMC,CAAC,GAAGL,IAAI,CAACM,EAAL,CAAQ,mDAAR,CAAV;;AAiBA,IAAMC,kBAA8C,GAAG,SAAjDA,kBAAiD,OAAmC;AAAA,MAAhCC,KAAgC,QAAhCA,KAAgC;AAAA,MAAzBC,QAAyB,QAAzBA,QAAyB;AAAA,MAAfC,QAAe,QAAfA,QAAe;AACtF,sBACI,oBAAC,KAAD,CAAO,QAAP,QACKF,KAAK,CAACG,GAAN,CAAU;AAAA,QAAGC,EAAH,SAAGA,EAAH;AAAA,QAAOC,KAAP,SAAOA,KAAP;AAAA,wBACP;AAAK,MAAA,GAAG,EAAED;AAAV,oBACI,oBAAC,QAAD;AAAU,MAAA,GAAG,EAAEA,EAAf;AAAmB,MAAA,KAAK,EAAEC,KAA1B;AAAiC,MAAA,KAAK,EAAEJ,QAAQ,CAACG,EAAD,CAAhD;AAAsD,MAAA,QAAQ,EAAEF,QAAQ,CAACE,EAAD;AAAxE,MADJ,CADO;AAAA,GAAV,CADL,CADJ;AASH,CAVD;;AAYA,OAAO,IAAME,kBAAqD,GAAG,SAAxDA,kBAAwD,QAO/D;AAAA,MANFC,IAME,SANFA,IAME;AAAA,MALFC,MAKE,SALFA,MAKE;AAAA,MAJFC,OAIE,SAJFA,OAIE;AAAA,MAHFC,WAGE,SAHFA,WAGE;AAAA,MAFFC,QAEE,SAFFA,QAEE;AAAA,gCADFC,WACE;AAAA,MADFA,WACE,kCADYb,kBACZ;AACF,MAAMc,WAAW,GAAGhB,CAAC,6HAAD,CAA4D;AAC5Ea,IAAAA,WAAW,EAAXA;AAD4E,GAA5D,CAApB;AAIA,sBACI,oBAAC,QAAD,QACKD,OAAO,CAACN,GAAR,CAAY,UAAAW,IAAI,EAAI;AACjB,QAAMd,KAAK,GAAGW,QAAQ,CAACG,IAAD,CAAtB;AAEA;AAChB;AACA;AACA;;AACgB,QAAId,KAAK,CAACe,MAAN,KAAiB,CAArB,EAAwB;AACpB,0BACI,oBAAC,IAAD;AAAM,QAAA,GAAG,EAAED,IAAX;AAAiB,QAAA,IAAI,YAAKN,MAAL,mBAAoBE,WAApB,cAAmCI,IAAnC;AAArB,sBACI,yCADJ,CADJ;AAKH;;AACD,wBACI,oBAAC,IAAD;AAAM,MAAA,GAAG,EAAEA,IAAX;AAAiB,MAAA,IAAI,YAAKN,MAAL,mBAAoBE,WAApB,cAAmCI,IAAnC;AAArB,oBACI,oBAAC,aAAD;AAAe,MAAA,KAAK,EAAEA;AAAtB,OACK,iBAA4B;AAAA,UAAzBZ,QAAyB,SAAzBA,QAAyB;AAAA,UAAfD,QAAe,SAAfA,QAAe;AACzB,0BACI,oBAAC,WAAD;AACI,QAAA,KAAK,EAAED,KADX;AAEI,QAAA,QAAQ,EAAEE,QAFd;AAGI,QAAA,QAAQ,EAAED;AAHd,QADJ;AAOH,KATL,CADJ,CADJ;AAeH,GA7BA,CADL,eA+BI,oBAAC,kBAAD,QAAqBY,WAArB,CA/BJ,CADJ;AAmCH,CA/CM;AAiDP,OAAO,IAAMG,yBAAmC,GAAG,SAAtCA,yBAAsC;AAAA,MAAGC,QAAH,SAAGA,QAAH;AAAA,sBAC/C,oBAAC,QAAD,qBACI,oBAAC,IAAD;AAAM,IAAA,IAAI,EAAE;AAAZ,IADJ,eAEI,oBAAC,IAAD;AAAM,IAAA,IAAI,EAAE;AAAZ,KAAiBA,QAAjB,CAFJ,CAD+C;AAAA,CAA5C","sourcesContent":["import React, { Fragment } from \"react\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Checkbox, CheckboxGroup } from \"@webiny/ui/Checkbox\";\nimport { Cell } from \"@webiny/ui/Grid\";\nimport { BindComponent } from \"@webiny/form\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport {\n GetValueCallable,\n OnChangeCallable,\n PermissionSelectorCmsGroup,\n PermissionSelectorCmsModel\n} from \"./types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/permissionRenderer\");\n\ninterface RenderItemsProps {\n onChange: OnChangeCallable;\n getValue: GetValueCallable;\n items: PermissionSelectorCmsModel[] | PermissionSelectorCmsGroup[];\n}\n\nexport interface PermissionSelectorProps {\n Bind: BindComponent;\n selectorKey: string;\n locales: string[];\n entity: string;\n getItems: (code: string) => PermissionSelectorCmsModel[] | PermissionSelectorCmsGroup[];\n RenderItems?: React.FC<RenderItemsProps>;\n}\n\nconst DefaultRenderItems: React.FC<RenderItemsProps> = ({ items, getValue, onChange }) => {\n return (\n <React.Fragment>\n {items.map(({ id, label }) => (\n <div key={id}>\n <Checkbox key={id} label={label} value={getValue(id)} onChange={onChange(id)} />\n </div>\n ))}\n </React.Fragment>\n );\n};\n\nexport const PermissionSelector: React.FC<PermissionSelectorProps> = ({\n Bind,\n entity,\n locales,\n selectorKey,\n getItems,\n RenderItems = DefaultRenderItems\n}) => {\n const description = t`Select the {selectorKey} user will be allowed to access.`({\n selectorKey\n });\n\n return (\n <Fragment>\n {locales.map(code => {\n const items = getItems(code);\n\n /**\n * Lets have two different outputs, depending on if there are any items.\n * Checkbox group is not showing when no items.\n */\n if (items.length === 0) {\n return (\n <Bind key={code} name={`${entity}Props.${selectorKey}.${code}`}>\n <></>\n </Bind>\n );\n }\n return (\n <Bind key={code} name={`${entity}Props.${selectorKey}.${code}`}>\n <CheckboxGroup label={code}>\n {({ onChange, getValue }) => {\n return (\n <RenderItems\n items={items}\n onChange={onChange}\n getValue={getValue}\n />\n );\n }}\n </CheckboxGroup>\n </Bind>\n );\n })}\n <FormElementMessage>{description}</FormElementMessage>\n </Fragment>\n );\n};\n\nexport const PermissionSelectorWrapper: React.FC = ({ children }) => (\n <Fragment>\n <Cell span={1} />\n <Cell span={11}>{children}</Cell>\n </Fragment>\n);\n"]}
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const Note: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "hidden" | "dir" | "slot" | "style" | "title" | "color" | "translate" | "children" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">, object>;
|
|
1
|
+
export declare const Note: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, keyof import("react").HTMLAttributes<HTMLDivElement>>, object>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["StyledComponents.tsx"],"names":["styled","Note","color","fontWeight"],"mappings":"AAAA,OAAOA,MAAP,MAAmB,iBAAnB;AAEA,OAAO,IAAMC,IAAI,gBAAGD,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AAC9BE,EAAAA,KAAK,EAAE,+CADuB;AAG9B,kBAAgB;AACZC,IAAAA,UAAU,EAAE;AADA;AAHc,CAAjB,CAAV","sourcesContent":["import styled from \"@emotion/styled\";\n\nexport const Note = styled(\"div\")({\n color: \"var(--mdc-theme-text-secondary-on-background)\",\n\n \"& .highlight\": {\n fontWeight: \"bold\"\n }\n});\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
|
|
@@ -43,12 +43,10 @@ export var useCmsData = function useCmsData(locales) {
|
|
|
43
43
|
query: LIST_DATA
|
|
44
44
|
}).then(function (_ref2) {
|
|
45
45
|
var data = _ref2.data;
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
groups: groups
|
|
51
|
-
})));
|
|
46
|
+
setState(_defineProperty({}, code, {
|
|
47
|
+
models: data.listContentModels.data,
|
|
48
|
+
groups: data.listContentModelGroups.data
|
|
49
|
+
}));
|
|
52
50
|
});
|
|
53
51
|
}
|
|
54
52
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["useCmsData.ts"],"names":["useEffect","useReducer","gql","useCms","LIST_DATA","useCmsData","locales","getApolloClient","prev","next","state","setState","loadData","code","client","query","then","data","models","listContentModels","groups","listContentModelGroups","sort","join","reduce","acc"],"mappings":";;;;;;;;;;AAAA,SAASA,SAAT,EAAoBC,UAApB,QAAsC,OAAtC;AACA,OAAOC,GAAP,MAAgB,aAAhB;AACA,SAASC,MAAT;AA0BA,IAAMC,SAAS,GAAGF,GAAH,y5BAAf;AAuDA,OAAO,IAAMG,UAAU,GAAG,SAAbA,UAAa,CAACC,OAAD,EAA2C;AACjE,gBAA4BH,MAAM,EAAlC;AAAA,MAAQI,eAAR,WAAQA,eAAR;;AACA,oBAA0BN,UAAU,CAAU,UAACO,IAAD,EAAOC,IAAP,EAAgB;AAC1D,2CACOD,IADP,GAEOC,IAFP;AAIH,GALmC,EAKjC,EALiC,CAApC;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AAOA,MAAMC,QAAQ;AAAA,wEAAG;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,qDACMN,OADN;;AAAA;AAAA;AAAA,sBACFO,IADE;AAET,sBAAMC,MAAM,GAAGP,eAAe,CAACM,IAAD,CAA9B;;AAEA,sBAAI,CAACH,KAAK,CAACG,IAAD,CAAV,EAAkB;AACdC,oBAAAA,MAAM,CAACC,KAAP,CAAyC;AAAEA,sBAAAA,KAAK,EAAEX;AAAT,qBAAzC,EAA+DY,IAA/D,CAAoE,iBAAc;AAAA,0BAAXC,IAAW,SAAXA,IAAW;AAC9EN,sBAAAA,QAAQ,qBACHE,IADG,EACI;AACJK,wBAAAA,MAAM,EAAED,IAAI,CAACE,iBAAL,CAAuBF,IAD3B;AAEJG,wBAAAA,MAAM,EAAEH,IAAI,CAACI,sBAAL,CAA4BJ;AAFhC,uBADJ,EAAR;AAMH,qBAPD;AAQH;AAbQ;;AACb,oEAA4B;AAAA;AAa3B;AAdY;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAH;;AAAA,oBAARL,QAAQ;AAAA;AAAA;AAAA,KAAd;;AAiBAZ,EAAAA,SAAS,CAAC,YAAM;AACZY,IAAAA,QAAQ;AACX,GAFQ,EAEN,CAACN,OAAO,CAACgB,IAAR,GAAeC,IAAf,CAAoB,GAApB,CAAD,CAFM,CAAT;AAIA,SAAOjB,OAAO,CAACkB,MAAR,CAAe,UAACC,GAAD,EAAMZ,IAAN,EAAe;AACjC,QAAI,CAACH,KAAK,CAACG,IAAD,CAAV,EAAkB;AACdY,MAAAA,GAAG,CAACZ,IAAD,CAAH,GAAY;AACRK,QAAAA,MAAM,EAAE,EADA;AAERE,QAAAA,MAAM,EAAE;AAFA,OAAZ;AAIA,aAAOK,GAAP;AACH;;AACDA,IAAAA,GAAG,CAACZ,IAAD,CAAH,GAAYH,KAAK,CAACG,IAAD,CAAjB;AACA,WAAOY,GAAP;AACH,GAVM,EAUJ,EAVI,CAAP;AAWH,CAzCM","sourcesContent":["import { useEffect, useReducer } from \"react\";\nimport gql from \"graphql-tag\";\nimport { useCms } from \"../../../hooks\";\nimport { CmsErrorResponse } from \"~/types\";\n\nexport interface CmsDataCmsGroup {\n id: string;\n label: string;\n}\nexport interface CmsDataCmsModel {\n id: string;\n label: string;\n group: CmsDataCmsGroup;\n}\n/**\n * ########################\n * List CMS Models And Groups for Permissions\n */\ninterface ListCmsPermissionsResponse {\n listContentModels: {\n data: CmsDataCmsModel[];\n error?: CmsErrorResponse;\n };\n listContentModelGroups: {\n data: CmsDataCmsGroup[];\n error?: CmsErrorResponse;\n };\n}\nconst LIST_DATA = gql`\n query CmsLoadPermissionsData {\n listContentModels {\n data {\n id: modelId\n label: name\n group {\n id\n label: name\n }\n }\n meta {\n totalCount\n cursor\n hasMoreItems\n }\n error {\n code\n message\n data\n }\n }\n listContentModelGroups {\n data {\n id\n label: name\n }\n meta {\n totalCount\n cursor\n hasMoreItems\n }\n error {\n code\n message\n data\n }\n }\n }\n`;\n\nexport interface UseCmsDataResponseRecords {\n models: CmsDataCmsModel[];\n groups: CmsDataCmsGroup[];\n}\ninterface State {\n [key: string]: UseCmsDataResponseRecords;\n}\ninterface Reducer {\n (prev: State, next: State): State;\n}\n\nexport interface UseCmsDataResponse {\n [locale: string]: UseCmsDataResponseRecords;\n}\nexport const useCmsData = (locales: string[]): UseCmsDataResponse => {\n const { getApolloClient } = useCms();\n const [state, setState] = useReducer<Reducer>((prev, next) => {\n return {\n ...prev,\n ...next\n };\n }, {});\n\n const loadData = async () => {\n for (const code of locales) {\n const client = getApolloClient(code);\n\n if (!state[code]) {\n client.query<ListCmsPermissionsResponse>({ query: LIST_DATA }).then(({ data }) => {\n setState({\n [code]: {\n models: data.listContentModels.data,\n groups: data.listContentModelGroups.data\n }\n });\n });\n }\n }\n };\n\n useEffect(() => {\n loadData();\n }, [locales.sort().join(\":\")]);\n\n return locales.reduce((acc, code) => {\n if (!state[code]) {\n acc[code] = {\n models: [],\n groups: []\n };\n return acc;\n }\n acc[code] = state[code];\n return acc;\n }, {} as UseCmsDataResponse);\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["index.tsx"],"names":["React","AccordionItem","ReactComponent","HeadlessCMSIcon","CMSPermissions","plugin","type","name","render","props"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,aAAT,QAA8B,sBAA9B;AAEA,SAASC,cAAc,IAAIC,eAA3B;AACA,SAASC,cAAT;AAEA,IAAMC,MAAwC,GAAG;AAC7CC,EAAAA,IAAI,EAAE,gCADuC;AAE7CC,EAAAA,IAAI,EAAE,oCAFuC;AAG7CC,EAAAA,MAH6C,kBAGtCC,KAHsC,EAG/B;AACV,wBACI,oBAAC,aAAD;AACI,MAAA,IAAI,eAAE,oBAAC,eAAD,OADV;AAEI,MAAA,KAAK,EAAE,cAFX;AAGI,MAAA,WAAW,EAAE,6CAHjB;AAII,qBAAa;AAJjB,oBAMI,oBAAC,cAAD,EAAoBA,KAApB,CANJ,CADJ;AAUH;AAd4C,CAAjD;AAgBA,eAAeJ,MAAf","sourcesContent":["import React from \"react\";\nimport { AccordionItem } from \"@webiny/ui/Accordion\";\nimport { AdminAppPermissionRendererPlugin } from \"@webiny/app-admin/types\";\nimport { ReactComponent as HeadlessCMSIcon } from \"../../icons/devices_other-black-24px.svg\";\nimport { CMSPermissions } from \"./CmsPermissions\";\n\nconst plugin: AdminAppPermissionRendererPlugin = {\n type: \"admin-app-permissions-renderer\",\n name: \"admin-app-permissions-renderer-cms\",\n render(props) {\n return (\n <AccordionItem\n icon={<HeadlessCMSIcon />}\n title={\"Headless CMS\"}\n description={\"Manage Headless CMS app access permissions.\"}\n data-testid={\"permission.cms\"}\n >\n <CMSPermissions {...props} />\n </AccordionItem>\n );\n }\n};\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["routes.tsx"],"names":["React","Suspense","lazy","Helmet","SecureRoute","CircularProgress","Route","AdminLayout","i18n","t","ns","Loader","children","props","cloneElement","ContentModelEditor","ContentModelsView","ContentModelGroupsView","ContentEntiesView","plugins","name","type","route"],"mappings":"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","sourcesContent":["import React, { Suspense, lazy } from \"react\";\nimport Helmet from \"react-helmet\";\nimport { SecureRoute } from \"@webiny/app-security/components\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { Route } from \"@webiny/react-router\";\nimport { AdminLayout } from \"@webiny/app-admin/components/AdminLayout\";\nimport { RoutePlugin } from \"@webiny/app/types\";\nimport { i18n } from \"@webiny/app/i18n\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/routes\");\n\nconst Loader: React.FC = ({ children, ...props }) => (\n <Suspense fallback={<CircularProgress />}>\n {React.cloneElement(children as unknown as React.ReactElement, props)}\n </Suspense>\n);\n\nconst ContentModelEditor = lazy(() => import(\"../views/contentModels/ContentModelEditor\"));\nconst ContentModelsView = lazy(() => import(\"../views/contentModels/ContentModels\"));\nconst ContentModelGroupsView = lazy(() => import(\"../views/contentModelGroups/ContentModelGroups\"));\nconst ContentEntiesView = lazy(() => import(\"../views/contentEntries/ContentEntries\"));\n\nconst plugins: RoutePlugin[] = [\n {\n name: \"route-cms-content-models-groups\",\n type: \"route\",\n route: (\n <Route\n exact\n path={\"/cms/content-model-groups\"}\n render={() => (\n <SecureRoute permission={\"cms.contentModelGroup\"}>\n <AdminLayout>\n <Helmet>\n <title>{t`Content Model Groups`}</title>\n </Helmet>\n <Loader>\n <ContentModelGroupsView />\n </Loader>\n </AdminLayout>\n </SecureRoute>\n )}\n />\n )\n },\n {\n name: \"route-cms-content-models-manage\",\n type: \"route\",\n route: (\n <Route\n exact\n path={\"/cms/content-entries/:modelId\"}\n render={() => (\n <SecureRoute permission={\"cms.contentModel\"}>\n <AdminLayout>\n <Helmet>\n <title>{t`Content`}</title>\n </Helmet>\n <Loader>\n <ContentEntiesView />\n </Loader>\n </AdminLayout>\n </SecureRoute>\n )}\n />\n )\n },\n {\n name: \"route-cms-content-models-editor\",\n type: \"route\",\n route: (\n <Route\n exact\n path={\"/cms/content-models/:modelId\"}\n render={() => (\n <SecureRoute permission={\"cms.contentModel\"}>\n <Helmet>\n <title>{t`Edit Content Model`}</title>\n </Helmet>\n <Loader>\n <ContentModelEditor />\n </Loader>\n </SecureRoute>\n )}\n />\n )\n },\n {\n name: \"route-cms-content-models\",\n type: \"route\",\n route: (\n <Route\n exact\n path=\"/cms/content-models\"\n render={() => (\n <SecureRoute permission={\"cms.contentModel\"}>\n <AdminLayout>\n <Helmet title={t`Content Models`} />\n <Loader>\n <ContentModelsView />\n </Loader>\n </AdminLayout>\n </SecureRoute>\n )}\n />\n )\n }\n];\n\nexport default plugins;\n"]}
|
|
@@ -1,17 +1,6 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
2
|
import WebinyError from "@webiny/error";
|
|
3
3
|
|
|
4
|
-
var throwTransformError = function throwTransformError(params) {
|
|
5
|
-
var type = params.type,
|
|
6
|
-
value = params.value,
|
|
7
|
-
error = params.ex;
|
|
8
|
-
return new WebinyError("Could not transform value to a date.", "TRANSFORM_ERROR", {
|
|
9
|
-
error: error,
|
|
10
|
-
type: type,
|
|
11
|
-
value: value
|
|
12
|
-
});
|
|
13
|
-
};
|
|
14
|
-
|
|
15
4
|
var dateOnly = function dateOnly(value) {
|
|
16
5
|
if (!value) {
|
|
17
6
|
return null;
|
|
@@ -20,11 +9,11 @@ var dateOnly = function dateOnly(value) {
|
|
|
20
9
|
try {
|
|
21
10
|
var date = new Date(value).toISOString();
|
|
22
11
|
return date.substr(0, 10);
|
|
23
|
-
} catch (
|
|
24
|
-
throw
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
12
|
+
} catch (error) {
|
|
13
|
+
throw new WebinyError("Could not transform value to a date.", "TRANSFORM_ERROR", {
|
|
14
|
+
error: error,
|
|
15
|
+
type: "date",
|
|
16
|
+
value: value
|
|
28
17
|
});
|
|
29
18
|
}
|
|
30
19
|
};
|
|
@@ -50,6 +39,8 @@ var extractTimeZone = function extractTimeZone(value) {
|
|
|
50
39
|
};
|
|
51
40
|
|
|
52
41
|
var extractTime = function extractTime(value) {
|
|
42
|
+
var def = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
43
|
+
|
|
53
44
|
if (!value) {
|
|
54
45
|
return null;
|
|
55
46
|
} else if (value.includes(":") === false) {
|
|
@@ -66,7 +57,7 @@ var extractTime = function extractTime(value) {
|
|
|
66
57
|
return "".concat(value, ":00");
|
|
67
58
|
}
|
|
68
59
|
|
|
69
|
-
return
|
|
60
|
+
return def;
|
|
70
61
|
};
|
|
71
62
|
|
|
72
63
|
var dateTimeWithTimezone = function dateTimeWithTimezone(value) {
|
|
@@ -98,7 +89,7 @@ var dateTimeWithTimezone = function dateTimeWithTimezone(value) {
|
|
|
98
89
|
_extractTimeZone2 = _slicedToArray(_extractTimeZone, 1),
|
|
99
90
|
initialTime = _extractTimeZone2[0];
|
|
100
91
|
|
|
101
|
-
var time = extractTime(initialTime);
|
|
92
|
+
var time = extractTime(initialTime, "00:00:00");
|
|
102
93
|
return value.replace(initialDate, date).replace(initialTime, time);
|
|
103
94
|
};
|
|
104
95
|
|
|
@@ -111,11 +102,11 @@ var dateTimeWithoutTimezone = function dateTimeWithoutTimezone(value) {
|
|
|
111
102
|
|
|
112
103
|
try {
|
|
113
104
|
return new Date("".concat(value.replace(" ", "T"), ".000Z")).toISOString();
|
|
114
|
-
} catch (
|
|
115
|
-
throw
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
105
|
+
} catch (error) {
|
|
106
|
+
throw new WebinyError("Could not transform value to a date.", "TRANSFORM_ERROR", {
|
|
107
|
+
error: error,
|
|
108
|
+
type: "dateTimeWithoutTimezone",
|
|
109
|
+
value: value
|
|
119
110
|
});
|
|
120
111
|
}
|
|
121
112
|
};
|
|
@@ -141,7 +132,12 @@ export default (function () {
|
|
|
141
132
|
fieldType: "datetime",
|
|
142
133
|
transform: function transform(value, field) {
|
|
143
134
|
// check types in packages/app-headless-cms/src/admin/plugins/fieldRenderers/dateTime/dateTimeField.tsx
|
|
144
|
-
var type = field.settings.type;
|
|
135
|
+
var type = field.settings && field.settings.type ? String(field.settings.type) : null;
|
|
136
|
+
|
|
137
|
+
if (!type) {
|
|
138
|
+
return value;
|
|
139
|
+
}
|
|
140
|
+
|
|
145
141
|
var transform = transformers[type];
|
|
146
142
|
|
|
147
143
|
if (!transform) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["dateTransformer.ts"],"names":["WebinyError","dateOnly","value","date","Date","toISOString","substr","error","type","extractTimeZone","result","includes","split","length","extractTime","def","dateTimeWithTimezone","initialDate","initialTimeZone","dateObj","ex","time","initialTime","replace","dateTimeWithoutTimezone","transformers","name","fieldType","transform","field","settings","String"],"mappings":"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","sourcesContent":["import { CmsFieldValueTransformer } from \"~/types\";\nimport WebinyError from \"@webiny/error\";\n\ninterface TransformerCallable<T> {\n (value?: T): string | null;\n}\nconst dateOnly: TransformerCallable<string> = value => {\n if (!value) {\n return null;\n }\n try {\n const date = new Date(value).toISOString();\n return date.substr(0, 10);\n } catch (error) {\n throw new WebinyError(`Could not transform value to a date.`, \"TRANSFORM_ERROR\", {\n error,\n type: \"date\",\n value\n });\n }\n};\n\nconst extractTimeZone = (value?: string): [string, string] => {\n let result: string[];\n if (!value) {\n return [new Date().toISOString(), \"00:00\"];\n } else if (value.includes(\"+\")) {\n result = value.split(\"+\");\n } else {\n result = value.split(\"-\");\n }\n if (!result || result.length !== 2) {\n throw new WebinyError(\n `Could not determine time and timezone out of given value.`,\n \"TIME_ZONE_ERROR\",\n {\n value\n }\n );\n }\n return result as [string, string];\n};\n\nconst extractTime = (value?: string, def: string | null = null): string | null => {\n if (!value) {\n return null;\n } else if (value.includes(\":\") === false) {\n throw new WebinyError(\"Time value is missing : separators.\", \"TIME_ERROR\", {\n value\n });\n }\n const result = value.split(\":\");\n if (result.length === 3) {\n return value;\n } else if (result.length === 2) {\n return `${value}:00`;\n }\n return def;\n};\n\nconst dateTimeWithTimezone: TransformerCallable<string> = value => {\n if (!value) {\n return null;\n } else if (value.includes(\"T\") === false) {\n return value;\n }\n\n const [initialDate, initialTimeZone] = value.split(\"T\");\n\n let date: string;\n\n try {\n const dateObj = new Date(initialDate);\n date = dateObj.toISOString().substr(0, 10);\n } catch (ex) {\n throw new WebinyError(\n \"Could not transform received date into Date object.\",\n \"DATE_TRANSFORM_ERROR\",\n {\n value,\n date: initialDate,\n time: initialTimeZone\n }\n );\n }\n const [initialTime] = extractTimeZone(initialTimeZone);\n\n const time = extractTime(initialTime, \"00:00:00\") as string;\n\n return value.replace(initialDate, date).replace(initialTime, time);\n};\n\nconst dateTimeWithoutTimezone: TransformerCallable<string> = (value): string | null => {\n if (!value) {\n return null;\n } else if (value.includes(\" \") === false) {\n return value;\n }\n try {\n return new Date(`${value.replace(\" \", \"T\")}.000Z`).toISOString();\n } catch (error) {\n throw new WebinyError(`Could not transform value to a date.`, \"TRANSFORM_ERROR\", {\n error,\n type: \"dateTimeWithoutTimezone\",\n value\n });\n }\n};\n\nconst time: TransformerCallable<string> = value => {\n if (!value) {\n return null;\n }\n return extractTime(value);\n};\n\nconst transformers: Record<string, TransformerCallable<string>> = {\n time,\n date: dateOnly,\n dateTimeWithoutTimezone,\n dateTimeWithTimezone\n};\n\nexport default (): CmsFieldValueTransformer => ({\n type: \"cms-field-value-transformer\",\n name: \"cms-field-value-transformer-date\",\n fieldType: \"datetime\",\n transform: (value: any, field) => {\n // check types in packages/app-headless-cms/src/admin/plugins/fieldRenderers/dateTime/dateTimeField.tsx\n const type = field.settings && field.settings.type ? String(field.settings.type) : null;\n if (!type) {\n return value;\n }\n const transform = transformers[type];\n\n if (!transform) {\n return value;\n }\n\n return transform(value);\n }\n});\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["dateTransformer","numberTransformer"],"mappings":"AAAA,OAAOA,eAAP;AACA,OAAOC,iBAAP;AAGA,gBAAe;AAAA,SAAkC,CAACD,eAAe,EAAhB,EAAoBC,iBAAiB,EAArC,CAAlC;AAAA,CAAf","sourcesContent":["import dateTransformer from \"./dateTransformer\";\nimport numberTransformer from \"./numberTransformer\";\nimport { CmsFieldValueTransformer } from \"~/types\";\n\nexport default (): CmsFieldValueTransformer[] => [dateTransformer(), numberTransformer()];\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["numberTransformer.ts"],"names":["type","name","fieldType","transform","value","Array","isArray","map","Number"],"mappings":"AAEA,gBAAe;AAAA,SAAiC;AAC5CA,IAAAA,IAAI,EAAE,6BADsC;AAE5CC,IAAAA,IAAI,EAAE,oCAFsC;AAG5CC,IAAAA,SAAS,EAAE,QAHiC;AAI5CC,IAAAA,SAAS,EAAE,mBAAAC,KAAK,EAAI;AAChB,UAAIC,KAAK,CAACC,OAAN,CAAcF,KAAd,MAAyB,IAA7B,EAAmC;AAC/B,eAAQA,KAAD,CAAoBG,GAApB,CAAwBC,MAAxB,CAAP;AACH;;AACD,aAAOA,MAAM,CAACJ,KAAD,CAAb;AACH;AAT2C,GAAjC;AAAA,CAAf","sourcesContent":["import { CmsFieldValueTransformer } from \"~/types\";\n\nexport default (): CmsFieldValueTransformer => ({\n type: \"cms-field-value-transformer\",\n name: \"cms-field-value-transformer-number\",\n fieldType: \"number\",\n transform: value => {\n if (Array.isArray(value) === true) {\n return (value as string[]).map(Number);\n }\n return Number(value as string);\n }\n});\n"]}
|
|
@@ -3,5 +3,5 @@ import { UpgradeItems } from "./types";
|
|
|
3
3
|
interface UpgradeItemsInfoProps {
|
|
4
4
|
upgradeItems: UpgradeItems | null;
|
|
5
5
|
}
|
|
6
|
-
export declare const UpgradeItemsInfo: React.
|
|
6
|
+
export declare const UpgradeItemsInfo: React.FC<UpgradeItemsInfoProps>;
|
|
7
7
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["UpgradeItemsInfo.tsx"],"names":["React","Typography","findUpgradingModel","locales","locale","modelsData","Object","values","modelId","upgrading","model","total","entries","length","current","filter","item","done","UpgradeItemsInfo","props","upgradeItems","loadedModels","result","name"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,QAA2B,uBAA3B;;AAUA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,OAAD,EAAqE;AAC5F,OAAK,IAAMC,MAAX,IAAqBD,OAArB,EAA8B;AAC1B,QAAI,CAACA,OAAO,CAACC,MAAD,CAAZ,EAAsB;AAClB;AACH;;AACD,QAAMC,UAAU,GAAGC,MAAM,CAACC,MAAP,CAAcJ,OAAO,CAACC,MAAD,CAArB,CAAnB;;AACA,SAAK,IAAMI,OAAX,IAAsBH,UAAtB,EAAkC;AAC9B,UAAIA,UAAU,CAACG,OAAD,CAAV,CAAoBC,SAApB,KAAkC,IAAtC,EAA4C;AACxC;AACH;;AACD,aAAO;AACHL,QAAAA,MAAM,EAANA,MADG;AAEHM,QAAAA,KAAK,EAAEL,UAAU,CAACG,OAAD,CAAV,CAAoBE,KAFxB;AAGHC,QAAAA,KAAK,EAAEN,UAAU,CAACG,OAAD,CAAV,CAAoBI,OAApB,CAA4BC,MAHhC;AAIHC,QAAAA,OAAO,EAAET,UAAU,CAACG,OAAD,CAAV,CAAoBI,OAApB,CAA4BG,MAA5B,CAAmC,UAAAC,IAAI;AAAA,iBAAIA,IAAI,CAACC,IAAT;AAAA,SAAvC,EAAsDJ;AAJ5D,OAAP;AAMH;AACJ;;AACD,SAAO,IAAP;AACH,CAnBD;;AAwBA,OAAO,IAAMK,gBAAiD,GAAG,SAApDA,gBAAoD,CAAAC,KAAK,EAAI;AACtE,MAAQC,YAAR,GAAyBD,KAAzB,CAAQC,YAAR;;AACA,MAAI,CAACA,YAAD,IAAiBA,YAAY,CAACC,YAAb,KAA8B,IAA/C,IAAuD,CAACD,YAAY,CAACjB,OAAzE,EAAkF;AAC9E,WAAO,IAAP;AACH;;AACD,MAAQA,OAAR,GAAoBiB,YAApB,CAAQjB,OAAR;AAEA,MAAMmB,MAAM,GAAGpB,kBAAkB,CAACC,OAAD,CAAjC;;AACA,MAAI,CAACmB,MAAL,EAAa;AACT,wBAAO,yCAAP;AACH;;AACD,MAAQlB,MAAR,GAA0CkB,MAA1C,CAAQlB,MAAR;AAAA,MAAgBM,KAAhB,GAA0CY,MAA1C,CAAgBZ,KAAhB;AAAA,MAAuBI,OAAvB,GAA0CQ,MAA1C,CAAuBR,OAAvB;AAAA,MAAgCH,KAAhC,GAA0CW,MAA1C,CAAgCX,KAAhC;AACA,sBACI,oBAAC,UAAD;AAAY,IAAA,GAAG,EAAE,OAAjB;AAA0B,IAAA,GAAG,EAAE;AAA/B,sCACoB,oCAASD,KAAK,CAACa,IAAf,CADpB,8BAC4D,oCAASnB,MAAT,CAD5D,QAEKU,OAFL,UAEkBH,KAFlB,cADJ;AAMH,CAlBM","sourcesContent":["import React from \"react\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { UpgradeItems } from \"./types\";\nimport { CmsEditorContentModel } from \"~/types\";\n\ninterface UpgradingModelResponse {\n model: CmsEditorContentModel;\n total: number;\n current: number;\n locale: string;\n}\nconst findUpgradingModel = (locales: UpgradeItems[\"locales\"]): UpgradingModelResponse | null => {\n for (const locale in locales) {\n if (!locales[locale]) {\n continue;\n }\n const modelsData = Object.values(locales[locale]);\n for (const modelId in modelsData) {\n if (modelsData[modelId].upgrading !== true) {\n continue;\n }\n return {\n locale,\n model: modelsData[modelId].model,\n total: modelsData[modelId].entries.length,\n current: modelsData[modelId].entries.filter(item => item.done).length\n };\n }\n }\n return null;\n};\n\ninterface UpgradeItemsInfoProps {\n upgradeItems: UpgradeItems | null;\n}\nexport const UpgradeItemsInfo: React.FC<UpgradeItemsInfoProps> = props => {\n const { upgradeItems } = props;\n if (!upgradeItems || upgradeItems.loadedModels !== true || !upgradeItems.locales) {\n return null;\n }\n const { locales } = upgradeItems;\n\n const result = findUpgradingModel(locales);\n if (!result) {\n return <></>;\n }\n const { locale, model, current, total } = result;\n return (\n <Typography use={\"body1\"} tag={\"div\"}>\n Upgrading model <strong>{model.name}</strong> in locale <strong>{locale}</strong> (\n {current} of {total} updated)\n </Typography>\n );\n};\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import ApolloClient from "apollo-client";
|
|
2
|
-
export interface
|
|
2
|
+
export interface CreateCmsApolloClientParams {
|
|
3
3
|
locale: string;
|
|
4
4
|
apiUrl: string;
|
|
5
5
|
endpoint: "manage" | "read";
|
|
6
6
|
}
|
|
7
|
-
export declare const createCmsApolloClient: ({ locale, apiUrl, endpoint }:
|
|
7
|
+
export declare const createCmsApolloClient: ({ locale, apiUrl, endpoint }: CreateCmsApolloClientParams) => ApolloClient<import("apollo-cache-inmemory").NormalizedCacheObject>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["createCmsApolloClient.ts"],"names":["ApolloClient","ApolloLink","ApolloDynamicLink","InMemoryCache","plugins","ApolloCacheObjectIdPlugin","BatchHttpLink","createCmsApolloClient","locale","apiUrl","endpoint","link","from","uri","cache","addTypename","dataIdFromObject","obj","getters","byType","type","i","length","id","getObjectId"],"mappings":"AAAA,OAAOA,YAAP,MAAyB,eAAzB;AACA,SAASC,UAAT,QAA2B,aAA3B;AACA,SAASC,iBAAT,QAAkC,uCAAlC;AACA,SAASC,aAAT,QAA8B,yCAA9B;AACA,SAASC,OAAT,QAAwB,iBAAxB;AACA,SAASC,yBAAT,QAA0C,+CAA1C;AACA,SAASC,aAAT,QAA8B,wBAA9B;AAOA,OAAO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,OAIF;AAAA,MAH/BC,MAG+B,QAH/BA,MAG+B;AAAA,MAF/BC,MAE+B,QAF/BA,MAE+B;AAAA,MAD/BC,QAC+B,QAD/BA,QAC+B;AAC/B,SAAO,IAAIV,YAAJ,CAAiB;AACpBW,IAAAA,IAAI,EAAEV,UAAU,CAACW,IAAX,CAAgB;AAClB;AACZ;AACA;AACY,QAAIV,iBAAJ,EAJkB;AAKlB;AACZ;AACA;AACY,QAAII,aAAJ,CAAkB;AACdO,MAAAA,GAAG,YAAKJ,MAAL,kBAAmBC,QAAnB,cAA+BF,MAA/B;AADW,KAAlB,CARkB,CAAhB,CADc;AAapBM,IAAAA,KAAK,EAAE,IAAIX,aAAJ,CAAkB;AACrBY,MAAAA,WAAW,EAAE,IADQ;AAErBC,MAAAA,gBAAgB,EAAE,0BAAAC,GAAG,EAAI;AACrB;AAChB;AACA;AACA;AACgB,YAAMC,OAAO,GAAGd,OAAO,CAACe,MAAR,CACZd,yBAAyB,CAACe,IADd,CAAhB;;AAIA,aAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,OAAO,CAACI,MAA5B,EAAoCD,CAAC,EAArC,EAAyC;AACrC,cAAME,EAAE,GAAGL,OAAO,CAACG,CAAD,CAAP,CAAWG,WAAX,CAAuBP,GAAvB,CAAX;;AACA,cAAI,OAAOM,EAAP,KAAc,WAAlB,EAA+B;AAC3B,mBAAOA,EAAP;AACH;AACJ;AAED;AAChB;AACA;;;AACgB,eAAON,GAAG,CAACM,EAAJ,IAAU,IAAjB;AACH;AAtBoB,KAAlB;AAba,GAAjB,CAAP;AAsCH,CA3CM","sourcesContent":["import ApolloClient from \"apollo-client\";\nimport { ApolloLink } from \"apollo-link\";\nimport { ApolloDynamicLink } from \"@webiny/app/plugins/ApolloDynamicLink\";\nimport { InMemoryCache } from \"@webiny/app/apollo-client/InMemoryCache\";\nimport { plugins } from \"@webiny/plugins\";\nimport { ApolloCacheObjectIdPlugin } from \"@webiny/app/plugins/ApolloCacheObjectIdPlugin\";\nimport { BatchHttpLink } from \"apollo-link-batch-http\";\n\nexport interface CreateCmsApolloClientParams {\n locale: string;\n apiUrl: string;\n endpoint: \"manage\" | \"read\";\n}\nexport const createCmsApolloClient = ({\n locale,\n apiUrl,\n endpoint\n}: CreateCmsApolloClientParams) => {\n return new ApolloClient({\n link: ApolloLink.from([\n /**\n * This will process links from plugins on every request.\n */\n new ApolloDynamicLink(),\n /**\n * This batches requests made to the API to pack multiple requests into a single HTTP request.\n */\n new BatchHttpLink({\n uri: `${apiUrl}/cms/${endpoint}/${locale}`\n })\n ]),\n cache: new InMemoryCache({\n addTypename: true,\n dataIdFromObject: obj => {\n /**\n * Since every data type coming from API can have a different data structure,\n * we cannot rely on having an `id` field.\n */\n const getters = plugins.byType<ApolloCacheObjectIdPlugin>(\n ApolloCacheObjectIdPlugin.type\n );\n\n for (let i = 0; i < getters.length; i++) {\n const id = getters[i].getObjectId(obj);\n if (typeof id !== \"undefined\") {\n return id;\n }\n }\n\n /**\n * As a fallback, try getting object's `id`.\n */\n return obj.id || null;\n }\n })\n });\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["createListEntriesQuery.ts"],"names":["upperFirst","pluralize","gql","createListEntriesQuery","model","ucFirstPluralizedModelId","modelId","ucFirstModelId"],"mappings":";;;;AACA,OAAOA,UAAP,MAAuB,mBAAvB;AACA,OAAOC,SAAP,MAAsB,WAAtB;AACA,OAAOC,GAAP,MAAgB,aAAhB;AAEA,OAAO,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,KAAD,EAAkC;AACpE,MAAMC,wBAAwB,GAAGL,UAAU,CAACC,SAAS,CAACG,KAAK,CAACE,OAAP,CAAV,CAA3C;AACA,MAAMC,cAAc,GAAGP,UAAU,CAACI,KAAK,CAACE,OAAP,CAAjC;AAEA,SAAOJ,GAAP,woBAC0BG,wBAD1B,EAC8DE,cAD9D,EACuGA,cADvG,EAEuBF,wBAFvB;AAwBH,CA5BM","sourcesContent":["import { CmsEditorContentModel } from \"~/types\";\nimport upperFirst from \"lodash/upperFirst\";\nimport pluralize from \"pluralize\";\nimport gql from \"graphql-tag\";\n\nexport const createListEntriesQuery = (model: CmsEditorContentModel) => {\n const ucFirstPluralizedModelId = upperFirst(pluralize(model.modelId));\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesList${ucFirstPluralizedModelId}($where: ${ucFirstModelId}ListWhereInput, $sort: [${ucFirstModelId}ListSorter], $limit: Int, $after: String) {\n content: list${ucFirstPluralizedModelId}(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error {\n message\n code\n data\n }\n }\n }\n `;\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["createListModelsQuery.ts"],"names":["gql","createListModelsQuery"],"mappings":";;;;AAAA,OAAOA,GAAP,MAAgB,aAAhB;AAEA,OAAO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;AACvC,SAAOD,GAAP;AAmBH,CApBM","sourcesContent":["import gql from \"graphql-tag\";\n\nexport const createListModelsQuery = () => {\n return gql`\n query CmsListContentModels {\n listContentModels {\n data {\n modelId\n name\n fields {\n id\n type\n }\n }\n error {\n message\n code\n data\n }\n }\n }\n `;\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["createRepublishMutation.ts"],"names":["upperFirst","gql","createRepublishMutation","model","ucFirstModelId","modelId"],"mappings":";;;;AAAA,OAAOA,UAAP,MAAuB,mBAAvB;AACA,OAAOC,GAAP,MAAgB,aAAhB;AAGA,OAAO,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,KAAD,EAAqB;AACxD,MAAMC,cAAc,GAAGJ,UAAU,CAACG,KAAK,CAACE,OAAP,CAAjC;AAEA,SAAOJ,GAAP,wWAC2BG,cAD3B,EAE4BA,cAF5B;AAaH,CAhBM","sourcesContent":["import upperFirst from \"lodash/upperFirst\";\nimport gql from \"graphql-tag\";\nimport { CmsModel } from \"~/types\";\n\nexport const createRepublishMutation = (model: CmsModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsRepublish${ucFirstModelId}($revision: ID!) {\n content: republish${ucFirstModelId}(revision: $revision) {\n data {\n id\n }\n error {\n message\n data\n code\n }\n }\n }`;\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["createUpgradeMutation.ts"],"names":["gql","createUpgradeMutation"],"mappings":";;;;AAAA,OAAOA,GAAP,MAAgB,aAAhB;AAEA,OAAO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;AACvC,SAAOD,GAAP;AAcH,CAfM","sourcesContent":["import gql from \"graphql-tag\";\n\nexport const createUpgradeMutation = () => {\n return gql`\n mutation UpgradeCMS($version: String!) {\n cms {\n upgrade(version: $version) {\n data\n error {\n code\n message\n data\n }\n }\n }\n }\n `;\n};\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CmsEditorContentModel } from "../../../../types";
|
|
2
2
|
import { ApolloClient } from "apollo-client";
|
|
3
|
-
export interface
|
|
3
|
+
export interface FetchModelEntriesParams {
|
|
4
4
|
model: CmsEditorContentModel;
|
|
5
5
|
client: ApolloClient<any>;
|
|
6
6
|
}
|
|
7
|
-
export declare const fetchModelEntries: (params:
|
|
7
|
+
export declare const fetchModelEntries: (params: FetchModelEntriesParams) => Promise<string[]>;
|