@webiny/app-headless-cms 5.36.2 → 5.37.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HeadlessCMS.js +3 -2
- package/HeadlessCMS.js.map +1 -1
- package/admin/components/ContentEntries/Empty/index.d.ts +9 -0
- package/admin/components/ContentEntries/Empty/index.js +42 -0
- package/admin/components/ContentEntries/Empty/index.js.map +1 -0
- package/admin/components/ContentEntries/Empty/styled.d.ts +14 -0
- package/admin/components/ContentEntries/Empty/styled.js +19 -0
- package/admin/components/ContentEntries/Empty/styled.js.map +1 -0
- package/admin/components/ContentEntries/Filters/FilterByStatus.d.ts +2 -0
- package/admin/components/ContentEntries/Filters/FilterByStatus.js +54 -0
- package/admin/components/ContentEntries/Filters/FilterByStatus.js.map +1 -0
- package/admin/components/ContentEntries/Filters/Filters.d.ts +2 -0
- package/admin/components/ContentEntries/Filters/Filters.js +32 -0
- package/admin/components/ContentEntries/Filters/Filters.js.map +1 -0
- package/admin/components/ContentEntries/Filters/index.d.ts +2 -0
- package/admin/components/ContentEntries/Filters/index.js +27 -0
- package/admin/components/ContentEntries/Filters/index.js.map +1 -0
- package/admin/components/ContentEntries/Filters/styles.d.ts +15 -0
- package/admin/components/ContentEntries/Filters/styles.js +23 -0
- package/admin/components/ContentEntries/Filters/styles.js.map +1 -0
- package/admin/components/ContentEntries/Header/ButtonFilters/ButtonFilters.d.ts +2 -0
- package/admin/components/ContentEntries/Header/ButtonFilters/ButtonFilters.js +41 -0
- package/admin/components/ContentEntries/Header/ButtonFilters/ButtonFilters.js.map +1 -0
- package/admin/components/ContentEntries/Header/ButtonFilters/index.d.ts +1 -0
- package/admin/components/ContentEntries/Header/ButtonFilters/index.js +16 -0
- package/admin/components/ContentEntries/Header/ButtonFilters/index.js.map +1 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/ButtonsCreate.d.ts +7 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/ButtonsCreate.js +34 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/ButtonsCreate.js.map +1 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/index.d.ts +1 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/index.js +16 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/index.js.map +1 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/styled.d.ts +7 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/styled.js +13 -0
- package/admin/components/ContentEntries/Header/ButtonsCreate/styled.js.map +1 -0
- package/admin/components/ContentEntries/Header/Header.d.ts +11 -0
- package/admin/components/ContentEntries/Header/Header.js +41 -0
- package/admin/components/ContentEntries/Header/Header.js.map +1 -0
- package/admin/components/ContentEntries/Header/Title/Title.d.ts +6 -0
- package/admin/components/ContentEntries/Header/Title/Title.js +20 -0
- package/admin/components/ContentEntries/Header/Title/Title.js.map +1 -0
- package/admin/components/ContentEntries/Header/Title/index.d.ts +1 -0
- package/admin/components/ContentEntries/Header/Title/index.js +16 -0
- package/admin/components/ContentEntries/Header/Title/index.js.map +1 -0
- package/admin/components/ContentEntries/Header/Title/styled.d.ts +7 -0
- package/admin/components/ContentEntries/Header/Title/styled.js +14 -0
- package/admin/components/ContentEntries/Header/Title/styled.js.map +1 -0
- package/admin/components/ContentEntries/Header/index.d.ts +1 -0
- package/admin/components/ContentEntries/Header/index.js +16 -0
- package/admin/components/ContentEntries/Header/index.js.map +1 -0
- package/admin/components/ContentEntries/Header/styled.d.ts +11 -0
- package/admin/components/ContentEntries/Header/styled.js +18 -0
- package/admin/components/ContentEntries/Header/styled.js.map +1 -0
- package/admin/components/ContentEntries/LoadMoreButton/LoadMoreButton.d.ts +10 -0
- package/admin/components/ContentEntries/LoadMoreButton/LoadMoreButton.js +30 -0
- package/admin/components/ContentEntries/LoadMoreButton/LoadMoreButton.js.map +1 -0
- package/admin/components/ContentEntries/LoadMoreButton/index.d.ts +1 -0
- package/admin/components/ContentEntries/LoadMoreButton/index.js +16 -0
- package/admin/components/ContentEntries/LoadMoreButton/index.js.map +1 -0
- package/admin/components/ContentEntries/LoadMoreButton/styled.d.ts +7 -0
- package/admin/components/ContentEntries/LoadMoreButton/styled.js +13 -0
- package/admin/components/ContentEntries/LoadMoreButton/styled.js.map +1 -0
- package/admin/components/ContentEntries/LoadingMore/index.d.ts +2 -0
- package/admin/components/ContentEntries/LoadingMore/index.js +23 -0
- package/admin/components/ContentEntries/LoadingMore/index.js.map +1 -0
- package/admin/components/ContentEntries/LoadingMore/styled.d.ts +11 -0
- package/admin/components/ContentEntries/LoadingMore/styled.js +18 -0
- package/admin/components/ContentEntries/LoadingMore/styled.js.map +1 -0
- package/admin/components/ContentEntries/Table/Row/Folder/FolderActionDelete.d.ts +6 -0
- package/admin/components/ContentEntries/Table/Row/Folder/FolderActionDelete.js +25 -0
- package/admin/components/ContentEntries/Table/Row/Folder/FolderActionDelete.js.map +1 -0
- package/admin/components/ContentEntries/Table/Row/Folder/FolderActionEdit.d.ts +6 -0
- package/admin/components/ContentEntries/Table/Row/Folder/FolderActionEdit.js +25 -0
- package/admin/components/ContentEntries/Table/Row/Folder/FolderActionEdit.js.map +1 -0
- package/admin/components/ContentEntries/Table/Row/Name.d.ts +12 -0
- package/admin/components/ContentEntries/Table/Row/Name.js +49 -0
- package/admin/components/ContentEntries/Table/Row/Name.js.map +1 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionDelete.d.ts +7 -0
- package/admin/{views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js → components/ContentEntries/Table/Row/Record/RecordActionDelete.js} +45 -72
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionDelete.js.map +1 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionEdit.d.ts +11 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionEdit.js +30 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionEdit.js.map +1 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionMove.d.ts +6 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionMove.js +25 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionMove.js.map +1 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionPublish.d.ts +17 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionPublish.js +94 -0
- package/admin/components/ContentEntries/Table/Row/Record/RecordActionPublish.js.map +1 -0
- package/admin/components/ContentEntries/Table/index.d.ts +13 -0
- package/admin/components/ContentEntries/Table/index.js +235 -0
- package/admin/components/ContentEntries/Table/index.js.map +1 -0
- package/admin/components/ContentEntries/Table/styled.d.ts +4 -0
- package/admin/components/ContentEntries/Table/styled.js +17 -0
- package/admin/components/ContentEntries/Table/styled.js.map +1 -0
- package/admin/components/ContentEntries/Table/types.d.ts +24 -0
- package/admin/components/ContentEntries/Table/types.js.map +1 -0
- package/admin/components/ContentEntryForm/ContentEntryForm.js +2 -2
- package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
- package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +2 -2
- package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -1
- package/admin/components/ContentEntryForm/Fields.js +2 -2
- package/admin/components/ContentEntryForm/Fields.js.map +1 -1
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.d.ts +2 -0
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.js +20 -0
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.styles.d.ts +7 -0
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.styles.js +13 -0
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.styles.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/index.d.ts +1 -0
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/index.js +16 -0
- package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/index.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.d.ts +2 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.js +46 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/index.d.ts +1 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/index.js +16 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/index.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/useDeleteEntry.d.ts +9 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/useDeleteEntry.js +85 -0
- package/admin/components/ContentEntryForm/Header/DeleteEntry/useDeleteEntry.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/Header.d.ts +2 -0
- package/admin/{views/contentEntries/ContentEntry/header → components/ContentEntryForm/Header}/Header.js +13 -7
- package/admin/components/ContentEntryForm/Header/Header.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.d.ts +2 -0
- package/admin/{views/contentEntries/ContentEntry/header/revisionSelector → components/ContentEntryForm/Header/RevisionSelector}/RevisionSelector.js +14 -33
- package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.styles.d.ts +36 -0
- package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.styles.js +20 -0
- package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.styles.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/RevisionSelector/index.d.ts +1 -0
- package/admin/components/ContentEntryForm/Header/RevisionSelector/index.js +16 -0
- package/admin/components/ContentEntryForm/Header/RevisionSelector/index.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/SaveAndPublishContent.js +35 -0
- package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/SaveAndPublishContent.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/index.d.ts +1 -0
- package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/index.js +16 -0
- package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/index.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/useSaveAndPublish.d.ts +11 -0
- package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/useSaveAndPublish.js +68 -0
- package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/useSaveAndPublish.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/SaveContent/SaveContent.d.ts +2 -0
- package/admin/{views/contentEntries/ContentEntry/header/saveContent → components/ContentEntryForm/Header/SaveContent}/SaveContent.js +11 -13
- package/admin/components/ContentEntryForm/Header/SaveContent/SaveContent.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/SaveContent/index.d.ts +1 -0
- package/admin/components/ContentEntryForm/Header/SaveContent/index.js +16 -0
- package/admin/components/ContentEntryForm/Header/SaveContent/index.js.map +1 -0
- package/admin/components/ContentEntryForm/Header/index.d.ts +5 -0
- package/admin/components/ContentEntryForm/Header/index.js +60 -0
- package/admin/components/ContentEntryForm/Header/index.js.map +1 -0
- package/admin/components/ContentEntryForm/Label.js.map +1 -1
- package/admin/components/ContentEntryForm/RenderFieldElement.d.ts +2 -4
- package/admin/components/ContentEntryForm/RenderFieldElement.js +15 -5
- package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
- package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
- package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
- package/admin/components/ContentEntryForm/useBind.js.map +1 -1
- package/admin/components/ContentEntryForm/useContentEntryForm.d.ts +2 -2
- package/admin/components/ContentEntryForm/useContentEntryForm.js +47 -29
- package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
- package/admin/components/ContentEntryForm/useRenderPlugins.js.map +1 -1
- package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -1
- package/admin/components/ContentModelEditor/Editor.js.map +1 -1
- package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
- package/admin/components/ContentModelEditor/Header.js.map +1 -1
- package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
- package/admin/components/ContentModelEditor/index.js.map +1 -1
- package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -1
- package/admin/components/DelayedOnChange.js +9 -0
- package/admin/components/DelayedOnChange.js.map +1 -1
- package/admin/components/Dialog.js.map +1 -1
- package/admin/components/DragPreview.js.map +1 -1
- package/admin/components/Draggable.js.map +1 -1
- package/admin/components/DropZone/Center.js.map +1 -1
- package/admin/components/DropZone/Horizontal.d.ts +1 -1
- package/admin/components/DropZone/Horizontal.js.map +1 -1
- package/admin/components/DropZone/Vertical.d.ts +1 -1
- package/admin/components/DropZone/Vertical.js.map +1 -1
- package/admin/components/DropZone/index.js.map +1 -1
- package/admin/components/Droppable.d.ts +1 -1
- package/admin/components/Droppable.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +16 -2
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +3 -3
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js +5 -5
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/getValidators.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog.js +4 -1
- package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
- package/admin/components/FieldEditor/Field.js.map +1 -1
- package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
- package/admin/components/FieldEditor/FieldEditorContext.d.ts +2 -14
- package/admin/components/FieldEditor/FieldEditorContext.js +4 -0
- package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
- package/admin/components/FieldEditor/Styled.js.map +1 -1
- package/admin/components/FieldEditor/index.js.map +1 -1
- package/admin/components/FieldEditor/useModelFieldEditor.js.map +1 -1
- package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
- package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
- package/admin/components/FieldEditor/utils/index.js.map +1 -1
- package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
- package/admin/components/FieldEditor/utils/moveRow.js.map +1 -1
- package/admin/components/IconPicker.js.map +1 -1
- package/admin/components/LexicalCmsEditor/LexicalCmsEditor.d.ts +3 -0
- package/admin/components/LexicalCmsEditor/LexicalCmsEditor.js +45 -0
- package/admin/components/LexicalCmsEditor/LexicalCmsEditor.js.map +1 -0
- package/admin/components/LexicalCmsEditor/LexicalEditorCmsPlugin.d.ts +2 -0
- package/admin/components/LexicalCmsEditor/LexicalEditorCmsPlugin.js +98 -0
- package/admin/components/LexicalCmsEditor/LexicalEditorCmsPlugin.js.map +1 -0
- package/admin/components/LexicalCmsEditor/TypographyDropDown.d.ts +2 -0
- package/admin/components/LexicalCmsEditor/TypographyDropDown.js +105 -0
- package/admin/components/LexicalCmsEditor/TypographyDropDown.js.map +1 -0
- package/admin/components/ModelFieldProvider/ModelFieldContext.d.ts +3 -13
- package/admin/components/ModelFieldProvider/ModelFieldContext.js.map +1 -1
- package/admin/components/ModelFieldProvider/index.js.map +1 -1
- package/admin/components/ModelFieldProvider/useModelField.d.ts +4 -13
- package/admin/components/ModelFieldProvider/useModelField.js.map +1 -1
- package/admin/components/ModelProvider/ModelContext.js.map +1 -1
- package/admin/components/ModelProvider/index.js.map +1 -1
- package/admin/components/ModelProvider/useModel.js.map +1 -1
- package/admin/config/contentEntries/editor/Actions/BaseAction.d.ts +16 -0
- package/admin/config/contentEntries/editor/Actions/BaseAction.js +52 -0
- package/admin/config/contentEntries/editor/Actions/BaseAction.js.map +1 -0
- package/admin/config/contentEntries/editor/Actions/ButtonAction.d.ts +8 -0
- package/admin/config/contentEntries/editor/Actions/ButtonAction.js +20 -0
- package/admin/config/contentEntries/editor/Actions/ButtonAction.js.map +1 -0
- package/admin/config/contentEntries/editor/Actions/MenuItemAction.d.ts +8 -0
- package/admin/config/contentEntries/editor/Actions/MenuItemAction.js +20 -0
- package/admin/config/contentEntries/editor/Actions/MenuItemAction.js.map +1 -0
- package/admin/config/contentEntries/editor/Actions/index.d.ts +13 -0
- package/admin/config/contentEntries/editor/Actions/index.js +13 -0
- package/admin/config/contentEntries/editor/Actions/index.js.map +1 -0
- package/admin/config/contentEntries/editor/ContentEntryEditorConfig.d.ts +18 -0
- package/admin/config/contentEntries/editor/ContentEntryEditorConfig.js +33 -0
- package/admin/config/contentEntries/editor/ContentEntryEditorConfig.js.map +1 -0
- package/admin/config/contentEntries/editor/index.d.ts +1 -0
- package/admin/config/contentEntries/editor/index.js +16 -0
- package/admin/config/contentEntries/editor/index.js.map +1 -0
- package/admin/config/contentEntries/index.d.ts +2 -0
- package/admin/config/contentEntries/index.js +27 -0
- package/admin/config/contentEntries/index.js.map +1 -0
- package/admin/config/contentEntries/list/Browser/Filter.d.ts +20 -0
- package/admin/config/contentEntries/list/Browser/Filter.js +66 -0
- package/admin/config/contentEntries/list/Browser/Filter.js.map +1 -0
- package/admin/config/contentEntries/list/Browser/FiltersToWhere.d.ts +9 -0
- package/admin/config/contentEntries/list/Browser/FiltersToWhere.js +29 -0
- package/admin/config/contentEntries/list/Browser/FiltersToWhere.js.map +1 -0
- package/admin/config/contentEntries/list/Browser/index.d.ts +13 -0
- package/admin/config/contentEntries/list/Browser/index.js +13 -0
- package/admin/config/contentEntries/list/Browser/index.js.map +1 -0
- package/admin/config/contentEntries/list/ContentEntryListConfig.d.ts +18 -0
- package/admin/config/contentEntries/list/ContentEntryListConfig.js +32 -0
- package/admin/config/contentEntries/list/ContentEntryListConfig.js.map +1 -0
- package/admin/config/contentEntries/list/index.d.ts +1 -0
- package/admin/config/contentEntries/list/index.js +16 -0
- package/admin/config/contentEntries/list/index.js.map +1 -0
- package/admin/constants/folders.d.ts +1 -0
- package/admin/constants/folders.js +8 -0
- package/admin/constants/folders.js.map +1 -0
- package/admin/constants/statusLabels.d.ts +6 -2
- package/admin/constants/statusLabels.js +2 -3
- package/admin/constants/statusLabels.js.map +1 -1
- package/admin/constants.d.ts +3 -0
- package/admin/constants.js +17 -0
- package/admin/constants.js.map +1 -0
- package/admin/contexts/Cms/NetworkError.js.map +1 -1
- package/admin/contexts/Cms/index.d.ts +7 -12
- package/admin/contexts/Cms/index.js.map +1 -1
- package/admin/elements/ContentGroupMenuElement.js.map +1 -1
- package/admin/elements/ContentModelMenuElement.js.map +1 -1
- package/admin/elements/NothingToShowElement.js.map +1 -1
- package/admin/graphql/contentModels.js.map +1 -1
- package/admin/graphql/createFieldsList.js +0 -2
- package/admin/graphql/createFieldsList.js.map +1 -1
- package/admin/hooks/index.js.map +1 -1
- package/admin/hooks/useApolloClient.js.map +1 -1
- package/admin/hooks/useCms.js.map +1 -1
- package/admin/hooks/useContentModels.d.ts +3 -0
- package/admin/hooks/useContentModels.js +4 -2
- package/admin/hooks/useContentModels.js.map +1 -1
- package/admin/hooks/useLazyQuery.js.map +1 -1
- package/admin/hooks/useMutation.js.map +1 -1
- package/admin/hooks/usePermission.d.ts +3 -2
- package/admin/hooks/usePermission.js +131 -63
- package/admin/hooks/usePermission.js.map +1 -1
- package/admin/hooks/useQuery.js.map +1 -1
- package/admin/hooks/useQueryLocale.js.map +1 -1
- package/admin/lexicalConfig/LexicalEditorConfig.d.ts +12 -0
- package/admin/lexicalConfig/LexicalEditorConfig.js +37 -0
- package/admin/lexicalConfig/LexicalEditorConfig.js.map +1 -0
- package/admin/menus/CmsMenuLoader.js.map +1 -1
- package/admin/menus/ContentGroupsMenuItems.js.map +1 -1
- package/admin/menus/GlobalSearchPlugins.js.map +1 -1
- package/admin/menus/NothingToShowElement.js.map +1 -1
- package/admin/plugins/apiInformation/index.js.map +1 -1
- package/admin/plugins/arrayUtils.js.map +1 -1
- package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js +0 -3
- package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -1
- package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js +0 -2
- package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -1
- package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Divider.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Name/Name.js +4 -0
- package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Name/NameStyled.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Name/index.js.map +1 -1
- package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/index.js.map +1 -1
- package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
- package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -1
- package/admin/plugins/editor/formSettings/index.js.map +1 -1
- package/admin/plugins/entry/DefaultOnEntryDelete.js +15 -22
- package/admin/plugins/entry/DefaultOnEntryDelete.js.map +1 -1
- package/admin/plugins/entry/DefaultOnEntryPublish.js +2 -11
- package/admin/plugins/entry/DefaultOnEntryPublish.js.map +1 -1
- package/admin/plugins/fieldRenderers/Accordion.js.map +1 -1
- package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
- package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -1
- package/admin/plugins/fieldRenderers/boolean/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +2 -1
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/utils.d.ts +0 -4
- package/admin/plugins/fieldRenderers/dateTime/utils.js +1 -120
- package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/File.js +7 -2
- package/admin/plugins/fieldRenderers/file/File.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/fileField.js +44 -7
- package/admin/plugins/fieldRenderers/file/fileField.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/fileFields.d.ts +2 -2
- package/admin/plugins/fieldRenderers/file/fileFields.js +27 -4
- package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/file/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/file/utils.js +1 -1
- package/admin/plugins/fieldRenderers/file/utils.js.map +1 -1
- package/admin/plugins/fieldRenderers/lexicalText/index.d.ts +1 -0
- package/admin/plugins/fieldRenderers/lexicalText/index.js +13 -0
- package/admin/plugins/fieldRenderers/lexicalText/index.js.map +1 -0
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.d.ts +3 -0
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js +53 -0
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js.map +1 -0
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.d.ts +3 -0
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js +74 -0
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js.map +1 -0
- package/admin/plugins/fieldRenderers/lexicalText/utils.d.ts +2 -0
- package/admin/plugins/fieldRenderers/lexicalText/utils.js +12 -0
- package/admin/plugins/fieldRenderers/lexicalText/utils.js.map +1 -0
- package/admin/plugins/fieldRenderers/longText/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/longText/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/number/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/object/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/singleObjectInline.js.map +1 -1
- package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/Loader.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/NewReferencedEntryDialog.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/Options.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/Search.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/Dialog.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/DialogHeader.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js +6 -2
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveDown.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveUp.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Title.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js +3 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.d.ts +3 -0
- package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js +2 -2
- package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js +5 -1
- package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/graphql.js +5 -0
- package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/helpers.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/types.d.ts +3 -0
- package/admin/plugins/fieldRenderers/ref/components/types.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/ref/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/SimpleItems.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/SimpleMultipleRenderer.js +0 -2
- package/admin/plugins/fieldRenderers/ref/simple/components/SimpleMultipleRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/SimpleSingleRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/useContentModels.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/useReferences.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/simpleMultipleRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/simpleSingleRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/index.d.ts +1 -2
- package/admin/plugins/fieldRenderers/richText/index.js +5 -3
- package/admin/plugins/fieldRenderers/richText/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/richTextInput.js +22 -4
- package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js +22 -4
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/utils.d.ts +4 -0
- package/admin/plugins/fieldRenderers/richText/utils.js +18 -0
- package/admin/plugins/fieldRenderers/richText/utils.js.map +1 -0
- package/admin/plugins/fieldRenderers/select.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/index.d.ts +1 -1
- package/admin/plugins/fieldRenderers/text/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
- package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -1
- package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
- package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
- package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
- package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -1
- package/admin/plugins/fieldValidators/gte.js.map +1 -1
- package/admin/plugins/fieldValidators/in.js.map +1 -1
- package/admin/plugins/fieldValidators/lte.js.map +1 -1
- package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
- package/admin/plugins/fieldValidators/minLength.js.map +1 -1
- package/admin/plugins/fieldValidators/pattern.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
- package/admin/plugins/fieldValidators/required.js.map +1 -1
- package/admin/plugins/fieldValidators/unique.js.map +1 -1
- package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
- package/admin/plugins/fields/boolean.js.map +1 -1
- package/admin/plugins/fields/dateTime.js +2 -2
- package/admin/plugins/fields/dateTime.js.map +1 -1
- package/admin/plugins/fields/dynamicZone/AddTemplate.js.map +1 -1
- package/admin/plugins/fields/dynamicZone/DynamicZone.js.map +1 -1
- package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js.map +1 -1
- package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -1
- package/admin/plugins/fields/dynamicZone/commonValidators.js.map +1 -1
- package/admin/plugins/fields/dynamicZone.js.map +1 -1
- package/admin/plugins/fields/file.js.map +1 -1
- package/admin/plugins/fields/longText.js.map +1 -1
- package/admin/plugins/fields/number.js.map +1 -1
- package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
- package/admin/plugins/fields/object.js.map +1 -1
- package/admin/plugins/fields/ref/graphql.js.map +1 -1
- package/admin/plugins/fields/ref/renderInfo.js.map +1 -1
- package/admin/plugins/fields/ref.js.map +1 -1
- package/admin/plugins/fields/richText.js.map +1 -1
- package/admin/plugins/fields/text.js.map +1 -1
- package/admin/plugins/getObjectId.js.map +1 -1
- package/admin/plugins/icons.js.map +1 -1
- package/admin/plugins/index.d.ts +8 -18
- package/admin/plugins/index.js +1 -2
- package/admin/plugins/index.js.map +1 -1
- package/admin/plugins/install.js +1 -1
- package/admin/plugins/install.js.map +1 -1
- package/admin/plugins/permissionRenderer/CmsPermissions.js +21 -1
- package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.d.ts +1 -0
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +5 -4
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.d.ts +1 -0
- package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +6 -3
- package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentModelPermission.d.ts +1 -0
- package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +5 -3
- package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/PermissionSelector.d.ts +2 -0
- package/admin/plugins/permissionRenderer/components/PermissionSelector.js +7 -3
- package/admin/plugins/permissionRenderer/components/PermissionSelector.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/StyledComponents.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/useCmsData.js +5 -0
- package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -1
- package/admin/plugins/permissionRenderer/index.js.map +1 -1
- package/admin/plugins/routes.js +8 -3
- package/admin/plugins/routes.js.map +1 -1
- package/admin/plugins/transformers/dateTransformer.js.map +1 -1
- package/admin/plugins/transformers/dynamicZoneTransformer.js.map +1 -1
- package/admin/plugins/transformers/index.js.map +1 -1
- package/admin/plugins/transformers/numberTransformer.js.map +1 -1
- package/admin/plugins/welcomeScreenWidget.js.map +1 -1
- package/admin/views/contentEntries/ContentEntries.d.ts +1 -2
- package/admin/views/contentEntries/ContentEntries.js +5 -12
- package/admin/views/contentEntries/ContentEntries.js.map +1 -1
- package/admin/views/contentEntries/ContentEntriesContainer.d.ts +4 -2
- package/admin/views/contentEntries/ContentEntriesContainer.js +2 -2
- package/admin/views/contentEntries/ContentEntriesContainer.js.map +1 -1
- package/admin/views/contentEntries/ContentEntriesContext.d.ts +1 -15
- package/admin/views/contentEntries/ContentEntriesContext.js +1 -52
- package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
- package/admin/views/contentEntries/ContentEntriesModule.js +29 -0
- package/admin/views/contentEntries/ContentEntriesModule.js.map +1 -0
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.d.ts +4 -4
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +28 -15
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/PublishEntryRevisionListItem.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.d.ts +2 -2
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +4 -0
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/RevisionsList.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/useRevision.d.ts +4 -2
- package/admin/views/contentEntries/ContentEntry/useRevision.js +15 -16
- package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry.js +2 -2
- package/admin/views/contentEntries/ContentEntry.js.map +1 -1
- package/admin/views/contentEntries/Table/Main.d.ts +6 -0
- package/admin/views/contentEntries/Table/Main.js +130 -0
- package/admin/views/contentEntries/Table/Main.js.map +1 -0
- package/admin/views/contentEntries/Table/Sidebar.d.ts +6 -0
- package/admin/views/contentEntries/Table/Sidebar.js +63 -0
- package/admin/views/contentEntries/Table/Sidebar.js.map +1 -0
- package/admin/views/contentEntries/Table/index.d.ts +2 -0
- package/admin/views/contentEntries/Table/index.js +48 -0
- package/admin/views/contentEntries/Table/index.js.map +1 -0
- package/admin/views/contentEntries/Table/styled.d.ts +15 -0
- package/admin/views/contentEntries/Table/styled.js +23 -0
- package/admin/views/contentEntries/Table/styled.js.map +1 -0
- package/admin/views/contentEntries/hooks/index.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +23 -18
- package/admin/views/contentEntries/hooks/useContentEntriesList.js +82 -116
- package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -1
- package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -1
- package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +5 -1
- package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -1
- package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
- package/admin/views/contentModelGroups/graphql.js +6 -0
- package/admin/views/contentModelGroups/graphql.js.map +1 -1
- package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
- package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
- package/admin/views/contentModels/ContentModels.js.map +1 -1
- package/admin/views/contentModels/ContentModelsDataList.js +13 -4
- package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
- package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
- package/admin/views/contentModels/cache.js.map +1 -1
- package/admin/views/contentModels/helpers/apiNameValidator.js.map +1 -1
- package/admin/views/contentModels/helpers/nameValidator.js.map +1 -1
- package/admin/views/utils.js.map +1 -1
- package/admin/viewsGraphql.js.map +1 -1
- package/allPlugins.d.ts +8 -18
- package/allPlugins.js +3 -2
- package/allPlugins.js.map +1 -1
- package/index.d.ts +13 -9
- package/index.js +58 -5
- package/index.js.map +1 -1
- package/package.json +30 -26
- package/types.d.ts +1 -0
- package/types.js +16 -0
- package/types.js.map +1 -0
- package/utils/CmsModelFieldValidatorConfigAdapter.d.ts +2 -2
- package/utils/CmsModelFieldValidatorConfigAdapter.js +0 -4
- package/utils/CmsModelFieldValidatorConfigAdapter.js.map +1 -1
- package/utils/acoRecordTransform.d.ts +7 -0
- package/utils/acoRecordTransform.js +46 -0
- package/utils/acoRecordTransform.js.map +1 -0
- package/utils/allowCmsLegacyRichTextInput.d.ts +1 -0
- package/utils/allowCmsLegacyRichTextInput.js +10 -0
- package/utils/allowCmsLegacyRichTextInput.js.map +1 -0
- package/utils/createTypeName.js.map +1 -1
- package/utils/createValidators.js.map +1 -1
- package/utils/getFetchPolicy.js.map +1 -1
- package/utils/getModelTitleFieldId.js.map +1 -1
- package/admin/graphql/contentEntries.d.ts +0 -146
- package/admin/graphql/contentEntries.js +0 -112
- package/admin/graphql/contentEntries.js.map +0 -1
- package/admin/views/contentEntries/ContentEntriesList.d.ts +0 -3
- package/admin/views/contentEntries/ContentEntriesList.js +0 -199
- package/admin/views/contentEntries/ContentEntriesList.js.map +0 -1
- package/admin/views/contentEntries/ContentEntry/cache.d.ts +0 -9
- package/admin/views/contentEntries/ContentEntry/cache.js +0 -198
- package/admin/views/contentEntries/ContentEntry/cache.js.map +0 -1
- package/admin/views/contentEntries/ContentEntry/header/Header.d.ts +0 -3
- package/admin/views/contentEntries/ContentEntry/header/Header.js.map +0 -1
- package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.d.ts +0 -3
- package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js.map +0 -1
- package/admin/views/contentEntries/ContentEntry/header/index.d.ts +0 -3
- package/admin/views/contentEntries/ContentEntry/header/index.js +0 -40
- package/admin/views/contentEntries/ContentEntry/header/index.js.map +0 -1
- package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.d.ts +0 -3
- package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js.map +0 -1
- package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js +0 -80
- package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js.map +0 -1
- package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.d.ts +0 -3
- package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js.map +0 -1
- package/admin/views/contentEntries/experiment/ContentEntriesModule.js +0 -68
- package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +0 -1
- package/admin/views/contentEntries/experiment/ContentEntriesRenderer.d.ts +0 -2
- package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js +0 -24
- package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js.map +0 -1
- package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.d.ts +0 -37
- package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js +0 -128
- package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js.map +0 -1
- package/types/index.d.ts +0 -490
- package/types/index.js +0 -38
- package/types/index.js.map +0 -1
- package/types/model.d.ts +0 -88
- package/types/model.js.map +0 -1
- package/types/shared.d.ts +0 -5
- package/types/shared.js +0 -5
- package/types/shared.js.map +0 -1
- package/types/validation.d.ts +0 -70
- package/types/validation.js +0 -5
- package/types/validation.js.map +0 -1
- /package/{types/model.js → admin/components/ContentEntries/Table/types.js} +0 -0
- /package/admin/{views/contentEntries/ContentEntry/header/saveAndPublishContent → components/ContentEntryForm/Header/SaveAndPublishContent}/SaveAndPublishContent.d.ts +0 -0
- /package/admin/views/contentEntries/{experiment/ContentEntriesModule.d.ts → ContentEntriesModule.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","createAdvancedSingleRenderer","type","name","renderer","rendererName","description","canUse","field","multipleValues","render","props","getBind","Label","contentModel","Bind","bind"],"sources":["detailedReferenceRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { AdvancedSingleReferenceField } from \"./components/AdvancedSingleReferenceField\";\nimport { NewRefEntryDialogContextProvider } from \"~/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nexport const createAdvancedSingleRenderer = (): CmsEditorFieldRendererPlugin => {\n return {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-ref-single-advanced\",\n renderer: {\n rendererName: \"ref-advanced-single\",\n name: t`Detailed view with modal search`,\n description: t`Renders a preview card of the selected record and the user searches through records using a modal window.`,\n canUse({ field }) {\n return field.type === \"ref\" && !field.multipleValues;\n },\n render: props => {\n const { field, getBind, Label, contentModel } = props;\n\n const Bind = getBind();\n return (\n <Bind>\n {bind => {\n return (\n <NewRefEntryDialogContextProvider>\n <AdvancedSingleReferenceField\n field={field}\n getBind={getBind}\n bind={bind}\n Label={Label}\n contentModel={contentModel}\n />\n </NewRefEntryDialogContextProvider>\n );\n }}\n </Bind>\n );\n }\n }\n };\n};\n"],"mappings":";;;;;;;;AAAA;AAEA;AACA;AACA;AAAiH;AAEjH,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_i18n","_AdvancedSingleReferenceField","_useNewRefEntryDialog","_templateObject","_templateObject2","t","i18n","ns","createAdvancedSingleRenderer","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","render","props","getBind","Label","contentModel","Bind","createElement","bind","NewRefEntryDialogContextProvider","AdvancedSingleReferenceField","exports"],"sources":["detailedReferenceRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { AdvancedSingleReferenceField } from \"./components/AdvancedSingleReferenceField\";\nimport { NewRefEntryDialogContextProvider } from \"~/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nexport const createAdvancedSingleRenderer = (): CmsEditorFieldRendererPlugin => {\n return {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-ref-single-advanced\",\n renderer: {\n rendererName: \"ref-advanced-single\",\n name: t`Detailed view with modal search`,\n description: t`Renders a preview card of the selected record and the user searches through records using a modal window.`,\n canUse({ field }) {\n return field.type === \"ref\" && !field.multipleValues;\n },\n render: props => {\n const { field, getBind, Label, contentModel } = props;\n\n const Bind = getBind();\n return (\n <Bind>\n {bind => {\n return (\n <NewRefEntryDialogContextProvider>\n <AdvancedSingleReferenceField\n field={field}\n getBind={getBind}\n bind={bind}\n Label={Label}\n contentModel={contentModel}\n />\n </NewRefEntryDialogContextProvider>\n );\n }}\n </Bind>\n );\n }\n }\n };\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,6BAAA,GAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAH,OAAA;AAAiH,IAAAI,eAAA,EAAAC,gBAAA;AAEjH,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,mCAAmC,CAAC;AAE/C,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAA,EAAuC;EAC5E,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,+CAA+C;IACrDC,QAAQ,EAAE;MACNC,YAAY,EAAE,qBAAqB;MACnCF,IAAI,EAAEL,CAAC,CAAAF,eAAA,KAAAA,eAAA,OAAAU,uBAAA,CAAAC,OAAA,wCAAiC;MACxCC,WAAW,EAAEV,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAAS,uBAAA,CAAAC,OAAA,kHAA2G;MACzHE,MAAM,WAAAA,OAAAC,IAAA,EAAY;QAAA,IAATC,KAAK,GAAAD,IAAA,CAALC,KAAK;QACV,OAAOA,KAAK,CAACT,IAAI,KAAK,KAAK,IAAI,CAACS,KAAK,CAACC,cAAc;MACxD,CAAC;MACDC,MAAM,EAAE,SAAAA,OAAAC,KAAK,EAAI;QACb,IAAQH,KAAK,GAAmCG,KAAK,CAA7CH,KAAK;UAAEI,OAAO,GAA0BD,KAAK,CAAtCC,OAAO;UAAEC,KAAK,GAAmBF,KAAK,CAA7BE,KAAK;UAAEC,YAAY,GAAKH,KAAK,CAAtBG,YAAY;QAE3C,IAAMC,IAAI,GAAGH,OAAO,CAAC,CAAC;QACtB,oBACIzB,MAAA,CAAAiB,OAAA,CAAAY,aAAA,CAACD,IAAI,QACA,UAAAE,IAAI,EAAI;UACL,oBACI9B,MAAA,CAAAiB,OAAA,CAAAY,aAAA,CAACxB,qBAAA,CAAA0B,gCAAgC,qBAC7B/B,MAAA,CAAAiB,OAAA,CAAAY,aAAA,CAACzB,6BAAA,CAAA4B,4BAA4B;YACzBX,KAAK,EAAEA,KAAM;YACbI,OAAO,EAAEA,OAAQ;YACjBK,IAAI,EAAEA,IAAK;YACXJ,KAAK,EAAEA,KAAM;YACbC,YAAY,EAAEA;UAAa,CAC9B,CAC6B,CAAC;QAE3C,CACE,CAAC;MAEf;IACJ;EACJ,CAAC;AACL,CAAC;AAACM,OAAA,CAAAtB,4BAAA,GAAAA,4BAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","createAdvancedMultipleRenderer","type","name","renderer","rendererName","description","canUse","field","multipleValues","render","props","getBind","Label","contentModel","Bind","bind"],"sources":["detailedReferencesRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { AdvancedMultipleReferenceField } from \"./components/AdvancedMultipleReferenceField\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nexport const createAdvancedMultipleRenderer = (): CmsEditorFieldRendererPlugin => {\n return {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-ref-multiple-advanced\",\n renderer: {\n rendererName: \"ref-advanced-multiple\",\n name: t`Detailed view with modal search`,\n description: t`Renders a preview card of the selected record and the user searches through records using a modal window.`,\n canUse({ field }) {\n return field.type === \"ref\" && !!field.multipleValues;\n },\n render: props => {\n const { field, getBind, Label, contentModel } = props;\n\n const Bind = getBind();\n return (\n <Bind>\n {bind => {\n return (\n <AdvancedMultipleReferenceField\n field={field}\n getBind={getBind}\n bind={bind}\n Label={Label}\n contentModel={contentModel}\n />\n );\n }}\n </Bind>\n );\n }\n }\n };\n};\n"],"mappings":";;;;;;;;AAAA;AAEA;AACA;AAA6F;AAE7F,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_i18n","_AdvancedMultipleReferenceField","_templateObject","_templateObject2","t","i18n","ns","createAdvancedMultipleRenderer","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","render","props","getBind","Label","contentModel","Bind","createElement","bind","AdvancedMultipleReferenceField","exports"],"sources":["detailedReferencesRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { AdvancedMultipleReferenceField } from \"./components/AdvancedMultipleReferenceField\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nexport const createAdvancedMultipleRenderer = (): CmsEditorFieldRendererPlugin => {\n return {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-ref-multiple-advanced\",\n renderer: {\n rendererName: \"ref-advanced-multiple\",\n name: t`Detailed view with modal search`,\n description: t`Renders a preview card of the selected record and the user searches through records using a modal window.`,\n canUse({ field }) {\n return field.type === \"ref\" && !!field.multipleValues;\n },\n render: props => {\n const { field, getBind, Label, contentModel } = props;\n\n const Bind = getBind();\n return (\n <Bind>\n {bind => {\n return (\n <AdvancedMultipleReferenceField\n field={field}\n getBind={getBind}\n bind={bind}\n Label={Label}\n contentModel={contentModel}\n />\n );\n }}\n </Bind>\n );\n }\n }\n };\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,+BAAA,GAAAF,OAAA;AAA6F,IAAAG,eAAA,EAAAC,gBAAA;AAE7F,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,mCAAmC,CAAC;AAE/C,IAAMC,8BAA8B,GAAG,SAAjCA,8BAA8BA,CAAA,EAAuC;EAC9E,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,iDAAiD;IACvDC,QAAQ,EAAE;MACNC,YAAY,EAAE,uBAAuB;MACrCF,IAAI,EAAEL,CAAC,CAAAF,eAAA,KAAAA,eAAA,OAAAU,uBAAA,CAAAC,OAAA,wCAAiC;MACxCC,WAAW,EAAEV,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAAS,uBAAA,CAAAC,OAAA,kHAA2G;MACzHE,MAAM,WAAAA,OAAAC,IAAA,EAAY;QAAA,IAATC,KAAK,GAAAD,IAAA,CAALC,KAAK;QACV,OAAOA,KAAK,CAACT,IAAI,KAAK,KAAK,IAAI,CAAC,CAACS,KAAK,CAACC,cAAc;MACzD,CAAC;MACDC,MAAM,EAAE,SAAAA,OAAAC,KAAK,EAAI;QACb,IAAQH,KAAK,GAAmCG,KAAK,CAA7CH,KAAK;UAAEI,OAAO,GAA0BD,KAAK,CAAtCC,OAAO;UAAEC,KAAK,GAAmBF,KAAK,CAA7BE,KAAK;UAAEC,YAAY,GAAKH,KAAK,CAAtBG,YAAY;QAE3C,IAAMC,IAAI,GAAGH,OAAO,CAAC,CAAC;QACtB,oBACIxB,MAAA,CAAAgB,OAAA,CAAAY,aAAA,CAACD,IAAI,QACA,UAAAE,IAAI,EAAI;UACL,oBACI7B,MAAA,CAAAgB,OAAA,CAAAY,aAAA,CAACxB,+BAAA,CAAA0B,8BAA8B;YAC3BV,KAAK,EAAEA,KAAM;YACbI,OAAO,EAAEA,OAAQ;YACjBK,IAAI,EAAEA,IAAK;YACXJ,KAAK,EAAEA,KAAM;YACbC,YAAY,EAAEA;UAAa,CAC9B,CAAC;QAEV,CACE,CAAC;MAEf;IACJ;EACJ,CAAC;AACL,CAAC;AAACK,OAAA,CAAArB,8BAAA,GAAAA,8BAAA"}
|
|
@@ -8,10 +8,10 @@ exports.createSearchQuery = exports.LIST_LATEST_CONTENT_ENTRIES = void 0;
|
|
|
8
8
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
9
|
var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
|
|
10
10
|
var _templateObject, _templateObject2;
|
|
11
|
-
var fields = "\n data {\n id\n entryId\n title\n description\n image\n status\n createdOn\n savedOn\n model {\n name\n modelId\n }\n createdBy {\n id\n displayName\n type\n }\n modifiedBy {\n id\n displayName\n type\n }\n published {\n id\n }\n }\n error {\n message\n code\n data\n }\n";
|
|
11
|
+
var fields = "\n data {\n id\n entryId\n title\n description\n image\n status\n createdOn\n savedOn\n model {\n name\n modelId\n }\n createdBy {\n id\n displayName\n type\n }\n modifiedBy {\n id\n displayName\n type\n }\n published {\n id\n }\n wbyAco_location {\n folderId\n }\n }\n error {\n message\n code\n data\n }\n";
|
|
12
12
|
var LIST_LATEST_CONTENT_ENTRIES = (0, _graphqlTag.default)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n query CmsListLatestContentEntries($entries: [CmsModelEntryInput!]!) {\n entries: getLatestContentEntries(entries: $entries) {\n ", "\n }\n }\n"])), fields);
|
|
13
13
|
exports.LIST_LATEST_CONTENT_ENTRIES = LIST_LATEST_CONTENT_ENTRIES;
|
|
14
14
|
var createSearchQuery = function createSearchQuery(model) {
|
|
15
|
-
return (0, _graphqlTag.default)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n query Search", "($where: ", "ListWhereInput, $sort: [", "ListSorter], $limit: Int, $after: String) {\n content: list", "(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n entryId\n savedOn\n createdOn\n createdBy {\n id\n type\n displayName\n }\n ownedBy {\n id\n type\n displayName\n }\n modifiedBy {\n id\n type\n displayName\n }\n meta {\n title\n description\n image\n status\n }\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error {\n message\n code\n data\n }\n }\n }"])), model.pluralApiName, model.singularApiName, model.singularApiName, model.pluralApiName);
|
|
15
|
+
return (0, _graphqlTag.default)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n query Search", "($where: ", "ListWhereInput, $sort: [", "ListSorter], $limit: Int, $after: String) {\n content: list", "(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n entryId\n savedOn\n createdOn\n createdBy {\n id\n type\n displayName\n }\n ownedBy {\n id\n type\n displayName\n }\n modifiedBy {\n id\n type\n displayName\n }\n meta {\n title\n description\n image\n status\n }\n wbyAco_location {\n folderId\n }\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error {\n message\n code\n data\n }\n }\n }"])), model.pluralApiName, model.singularApiName, model.singularApiName, model.pluralApiName);
|
|
16
16
|
};
|
|
17
17
|
exports.createSearchQuery = createSearchQuery;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["fields","LIST_LATEST_CONTENT_ENTRIES","gql","createSearchQuery","model","pluralApiName","singularApiName"],"sources":["graphql.ts"],"sourcesContent":["import gql from \"graphql-tag\";\nimport {\n CmsContentEntryStatusType,\n CmsIdentity,\n CmsErrorResponse,\n CmsMetaResponse,\n CmsModel\n} from \"~/types\";\nimport { CmsReferenceContentEntry } from \"~/admin/plugins/fieldRenderers/ref/components/types\";\nimport { CmsEntryGetEntryVariable } from \"~/admin/plugins/fieldRenderers/ref/components/graphql\";\n\nconst fields = `\n data {\n id\n entryId\n title\n description\n image\n status\n createdOn\n savedOn\n model {\n name\n modelId\n }\n createdBy {\n id\n displayName\n type\n }\n modifiedBy {\n id\n displayName\n type\n }\n published {\n id\n }\n }\n error {\n message\n code\n data\n }\n`;\n\nexport interface ListLatestCmsEntriesResponse {\n entries: {\n data: CmsReferenceContentEntry[];\n error: CmsErrorResponse | null;\n };\n}\n\nexport interface ListLatestCmsEntriesVariables {\n entries: CmsEntryGetEntryVariable[];\n}\n\nexport const LIST_LATEST_CONTENT_ENTRIES = gql`\n query CmsListLatestContentEntries($entries: [CmsModelEntryInput!]!) {\n entries: getLatestContentEntries(entries: $entries) {\n ${fields}\n }\n }\n`;\n\nexport interface SearchQueryResponseEntry {\n id: string;\n entryId: string;\n savedOn: Date;\n createdOn: Date;\n createdBy: CmsIdentity;\n ownedBy: CmsIdentity;\n modifiedBy: CmsIdentity;\n meta: {\n title: string;\n description?: string;\n image?: string;\n status: CmsContentEntryStatusType;\n };\n}\n\nexport interface SearchQueryResponse {\n content: {\n data: SearchQueryResponseEntry[];\n error: CmsErrorResponse | null;\n meta: CmsMetaResponse;\n };\n}\n\nexport interface SearchQueryVariables {\n where?: {\n [key: string]: any;\n };\n sort?: string[];\n limit?: number;\n after?: string;\n}\n\nexport const createSearchQuery = (model: CmsModel) => {\n return gql`\n query Search${model.pluralApiName}($where: ${model.singularApiName}ListWhereInput, $sort: [${model.singularApiName}ListSorter], $limit: Int, $after: String) {\n content: list${model.pluralApiName}(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n entryId\n savedOn\n createdOn\n createdBy {\n id\n type\n displayName\n }\n ownedBy {\n id\n type\n displayName\n }\n modifiedBy {\n id\n type\n displayName\n }\n meta {\n title\n description\n image\n status\n }\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error {\n message\n code\n data\n }\n }\n }`;\n};\n"],"mappings":";;;;;;;;AAAA;AAA8B;AAW9B,
|
|
1
|
+
{"version":3,"names":["_graphqlTag","_interopRequireDefault","require","_templateObject","_templateObject2","fields","LIST_LATEST_CONTENT_ENTRIES","gql","_taggedTemplateLiteral2","default","exports","createSearchQuery","model","pluralApiName","singularApiName"],"sources":["graphql.ts"],"sourcesContent":["import gql from \"graphql-tag\";\nimport {\n CmsContentEntryStatusType,\n CmsIdentity,\n CmsErrorResponse,\n CmsMetaResponse,\n CmsModel\n} from \"~/types\";\nimport { CmsReferenceContentEntry } from \"~/admin/plugins/fieldRenderers/ref/components/types\";\nimport { CmsEntryGetEntryVariable } from \"~/admin/plugins/fieldRenderers/ref/components/graphql\";\n\nconst fields = `\n data {\n id\n entryId\n title\n description\n image\n status\n createdOn\n savedOn\n model {\n name\n modelId\n }\n createdBy {\n id\n displayName\n type\n }\n modifiedBy {\n id\n displayName\n type\n }\n published {\n id\n }\n wbyAco_location {\n folderId\n }\n }\n error {\n message\n code\n data\n }\n`;\n\nexport interface ListLatestCmsEntriesResponse {\n entries: {\n data: CmsReferenceContentEntry[];\n error: CmsErrorResponse | null;\n };\n}\n\nexport interface ListLatestCmsEntriesVariables {\n entries: CmsEntryGetEntryVariable[];\n}\n\nexport const LIST_LATEST_CONTENT_ENTRIES = gql`\n query CmsListLatestContentEntries($entries: [CmsModelEntryInput!]!) {\n entries: getLatestContentEntries(entries: $entries) {\n ${fields}\n }\n }\n`;\n\nexport interface SearchQueryResponseEntry {\n id: string;\n entryId: string;\n savedOn: Date;\n createdOn: Date;\n createdBy: CmsIdentity;\n ownedBy: CmsIdentity;\n modifiedBy: CmsIdentity;\n meta: {\n title: string;\n description?: string;\n image?: string;\n status: CmsContentEntryStatusType;\n };\n wbyAco_location?: {\n folderId?: string;\n };\n}\n\nexport interface SearchQueryResponse {\n content: {\n data: SearchQueryResponseEntry[];\n error: CmsErrorResponse | null;\n meta: CmsMetaResponse;\n };\n}\n\nexport interface SearchQueryVariables {\n where?: {\n [key: string]: any;\n };\n sort?: string[];\n limit?: number;\n after?: string;\n}\n\nexport const createSearchQuery = (model: CmsModel) => {\n return gql`\n query Search${model.pluralApiName}($where: ${model.singularApiName}ListWhereInput, $sort: [${model.singularApiName}ListSorter], $limit: Int, $after: String) {\n content: list${model.pluralApiName}(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n entryId\n savedOn\n createdOn\n createdBy {\n id\n type\n displayName\n }\n ownedBy {\n id\n type\n displayName\n }\n modifiedBy {\n id\n type\n displayName\n }\n meta {\n title\n description\n image\n status\n }\n wbyAco_location {\n folderId\n }\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error {\n message\n code\n data\n }\n }\n }`;\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA8B,IAAAC,eAAA,EAAAC,gBAAA;AAW9B,IAAMC,MAAM,qkBAoCX;AAaM,IAAMC,2BAA2B,OAAGC,mBAAG,EAAAJ,eAAA,KAAAA,eAAA,OAAAK,uBAAA,CAAAC,OAAA,0LAGhCJ,MAAM,CAGnB;AAACK,OAAA,CAAAJ,2BAAA,GAAAA,2BAAA;AAsCK,IAAMK,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAAe,EAAK;EAClD,WAAOL,mBAAG,EAAAH,gBAAA,KAAAA,gBAAA,OAAAI,uBAAA,CAAAC,OAAA,qwCACQG,KAAK,CAACC,aAAa,EAAYD,KAAK,CAACE,eAAe,EAA2BF,KAAK,CAACE,eAAe,EAC/FF,KAAK,CAACC,aAAa;AAgD9C,CAAC;AAACH,OAAA,CAAAC,iBAAA,GAAAA,iBAAA"}
|
|
@@ -106,6 +106,7 @@ var useEntries = function useEntries(params) {
|
|
|
106
106
|
return _context.abrupt("return");
|
|
107
107
|
case 22:
|
|
108
108
|
newItems = result.data.content.data.map(function (entry) {
|
|
109
|
+
var _entry$wbyAco_locatio;
|
|
109
110
|
return {
|
|
110
111
|
id: entry.id,
|
|
111
112
|
entryId: entry.entryId,
|
|
@@ -120,7 +121,10 @@ var useEntries = function useEntries(params) {
|
|
|
120
121
|
createdBy: entry.createdBy,
|
|
121
122
|
modifiedBy: entry.modifiedBy,
|
|
122
123
|
createdOn: entry.createdOn,
|
|
123
|
-
savedOn: entry.savedOn
|
|
124
|
+
savedOn: entry.savedOn,
|
|
125
|
+
location: {
|
|
126
|
+
folderId: (_entry$wbyAco_locatio = entry.wbyAco_location) === null || _entry$wbyAco_locatio === void 0 ? void 0 : _entry$wbyAco_locatio.folderId
|
|
127
|
+
}
|
|
124
128
|
};
|
|
125
129
|
});
|
|
126
130
|
setEntries(items.concat(newItems));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["searchableFieldTypes","isFieldSearchable","field","includes","type","useEntries","params","client","useApolloClient","model","limit","useState","entries","setEntries","loading","setLoading","error","setError","undefined","searchQuery","setSearchQuery","cursor","setCursor","SEARCH_QUERY","useMemo","createSearchQuery","modelId","createWhere","useCallback","query","conditions","fields","map","fieldId","filter","Boolean","length","OR","executeQuery","items","after","console","log","where","variables","sort","result","data","content","message","newItems","entry","id","entryId","title","meta","description","image","status","name","createdBy","modifiedBy","createdOn","savedOn","concat","JSON","stringify","runSearch","loadMore","hasMore"],"sources":["useEntries.ts"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\nimport { CmsModel, CmsModelField } from \"~/types\";\nimport { CmsReferenceContentEntry } from \"~/admin/plugins/fieldRenderers/ref/components/types\";\nimport { useApolloClient } from \"~/admin/hooks\";\nimport {\n createSearchQuery,\n SearchQueryResponse,\n SearchQueryVariables\n} from \"~/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql\";\n\nconst searchableFieldTypes = [\"text\", \"long-text\"];\nconst isFieldSearchable = (field: CmsModelField): boolean => {\n return searchableFieldTypes.includes(field.type);\n};\n\ninterface ExecuteQueryParams {\n items: CmsReferenceContentEntry[];\n query?: string;\n after?: string;\n}\n\ninterface Params {\n model: CmsModel;\n limit: number;\n}\n\nexport const useEntries = (params: Params) => {\n const client = useApolloClient();\n const { model, limit } = params;\n\n const [entries, setEntries] = useState<CmsReferenceContentEntry[]>([]);\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<string | null>(null);\n const [searchQuery, setSearchQuery] = useState<string | undefined>(undefined);\n const [cursor, setCursor] = useState<string | undefined>();\n\n const SEARCH_QUERY = useMemo(() => {\n return createSearchQuery(model);\n }, [model.modelId]);\n\n const createWhere = useCallback(\n (query?: string) => {\n if (!query) {\n return {};\n }\n const conditions = model.fields\n .map(field => {\n if (!isFieldSearchable(field)) {\n return null;\n }\n return {\n [`${field.fieldId}_contains`]: query\n };\n })\n .filter(Boolean);\n if (conditions.length === 0) {\n return {};\n }\n return {\n OR: conditions\n };\n },\n [model.modelId]\n );\n\n const executeQuery = useCallback(\n async (params: ExecuteQueryParams) => {\n const { query, items, after } = params;\n if (loading) {\n console.log(`Cannot run a new search. Please wait for the previous one to finish.`);\n return;\n }\n setLoading(true);\n\n const where = createWhere(query);\n\n try {\n const result = await client.query<SearchQueryResponse, SearchQueryVariables>({\n query: SEARCH_QUERY,\n variables: {\n where,\n sort: [\"savedOn_DESC\"],\n limit,\n after\n }\n });\n\n if (result.data.content.error) {\n setEntries([]);\n setError(result.data.content.error.message);\n return;\n } else if (!result.data.content.data) {\n setEntries([]);\n setError(\n `Unknown error while fetching entries for model ${model.modelId}. Please check your network requests tab.`\n );\n return;\n } else {\n const newItems = result.data.content.data.map(entry => {\n return {\n id: entry.id,\n entryId: entry.entryId,\n title: entry.meta.title,\n description: entry.meta.description,\n image: entry.meta.image,\n status: entry.meta.status,\n model: {\n modelId: model.modelId,\n name: model.name\n },\n createdBy: entry.createdBy,\n modifiedBy: entry.modifiedBy,\n createdOn: entry.createdOn,\n savedOn: entry.savedOn\n };\n });\n setEntries(items.concat(newItems));\n setCursor(result.data.content.meta.cursor || undefined);\n setError(null);\n }\n } catch (ex) {\n setEntries([]);\n console.log(`Error while fetching entries for model ${model.modelId}.`);\n console.log(JSON.stringify(ex));\n setError(ex.message);\n } finally {\n setLoading(false);\n }\n },\n [model.modelId, entries, loading, error]\n );\n\n const runSearch = useCallback(\n (query?: string) => {\n if (searchQuery === query) {\n console.log(`Skipping search as it is the same as the previous one.`);\n return;\n }\n setSearchQuery(query);\n executeQuery({\n query,\n items: []\n });\n },\n [executeQuery, searchQuery]\n );\n\n const loadMore = useCallback(() => {\n if (loading) {\n console.log(`Please wait until the loading finishes to start a new one.`);\n return;\n } else if (!cursor) {\n console.log(\n `Trying to load more results but there is no cursor defined. Probably there are no more results.`\n );\n return;\n }\n executeQuery({\n query: searchQuery,\n items: entries,\n after: cursor\n });\n }, [searchQuery, loading, cursor, entries]);\n\n return {\n runSearch,\n loadMore,\n loading,\n entries,\n error,\n hasMore: !!cursor\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","require","_hooks","_graphql","searchableFieldTypes","isFieldSearchable","field","includes","type","useEntries","params","client","useApolloClient","model","limit","_useState","useState","_useState2","_slicedToArray2","default","entries","setEntries","_useState3","_useState4","loading","setLoading","_useState5","_useState6","error","setError","_useState7","undefined","_useState8","searchQuery","setSearchQuery","_useState9","_useState10","cursor","setCursor","SEARCH_QUERY","useMemo","createSearchQuery","modelId","createWhere","useCallback","query","conditions","fields","map","_defineProperty2","concat","fieldId","filter","Boolean","length","OR","executeQuery","_ref2","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","items","after","where","result","newItems","wrap","_callee$","_context","prev","next","console","log","abrupt","variables","sort","sent","data","content","message","entry","_entry$wbyAco_locatio","id","entryId","title","meta","description","image","status","name","createdBy","modifiedBy","createdOn","savedOn","location","folderId","wbyAco_location","t0","JSON","stringify","finish","stop","_x","apply","arguments","runSearch","loadMore","hasMore","exports"],"sources":["useEntries.ts"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\nimport { CmsModel, CmsModelField } from \"~/types\";\nimport { CmsReferenceContentEntry } from \"~/admin/plugins/fieldRenderers/ref/components/types\";\nimport { useApolloClient } from \"~/admin/hooks\";\nimport {\n createSearchQuery,\n SearchQueryResponse,\n SearchQueryVariables\n} from \"~/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql\";\n\nconst searchableFieldTypes = [\"text\", \"long-text\"];\nconst isFieldSearchable = (field: CmsModelField): boolean => {\n return searchableFieldTypes.includes(field.type);\n};\n\ninterface ExecuteQueryParams {\n items: CmsReferenceContentEntry[];\n query?: string;\n after?: string;\n}\n\ninterface Params {\n model: CmsModel;\n limit: number;\n}\n\nexport const useEntries = (params: Params) => {\n const client = useApolloClient();\n const { model, limit } = params;\n\n const [entries, setEntries] = useState<CmsReferenceContentEntry[]>([]);\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<string | null>(null);\n const [searchQuery, setSearchQuery] = useState<string | undefined>(undefined);\n const [cursor, setCursor] = useState<string | undefined>();\n\n const SEARCH_QUERY = useMemo(() => {\n return createSearchQuery(model);\n }, [model.modelId]);\n\n const createWhere = useCallback(\n (query?: string) => {\n if (!query) {\n return {};\n }\n const conditions = model.fields\n .map(field => {\n if (!isFieldSearchable(field)) {\n return null;\n }\n return {\n [`${field.fieldId}_contains`]: query\n };\n })\n .filter(Boolean);\n if (conditions.length === 0) {\n return {};\n }\n return {\n OR: conditions\n };\n },\n [model.modelId]\n );\n\n const executeQuery = useCallback(\n async (params: ExecuteQueryParams) => {\n const { query, items, after } = params;\n if (loading) {\n console.log(`Cannot run a new search. Please wait for the previous one to finish.`);\n return;\n }\n setLoading(true);\n\n const where = createWhere(query);\n\n try {\n const result = await client.query<SearchQueryResponse, SearchQueryVariables>({\n query: SEARCH_QUERY,\n variables: {\n where,\n sort: [\"savedOn_DESC\"],\n limit,\n after\n }\n });\n\n if (result.data.content.error) {\n setEntries([]);\n setError(result.data.content.error.message);\n return;\n } else if (!result.data.content.data) {\n setEntries([]);\n setError(\n `Unknown error while fetching entries for model ${model.modelId}. Please check your network requests tab.`\n );\n return;\n } else {\n const newItems = result.data.content.data.map(entry => {\n return {\n id: entry.id,\n entryId: entry.entryId,\n title: entry.meta.title,\n description: entry.meta.description,\n image: entry.meta.image,\n status: entry.meta.status,\n model: {\n modelId: model.modelId,\n name: model.name\n },\n createdBy: entry.createdBy,\n modifiedBy: entry.modifiedBy,\n createdOn: entry.createdOn,\n savedOn: entry.savedOn,\n location: {\n folderId: entry.wbyAco_location?.folderId\n }\n };\n });\n setEntries(items.concat(newItems));\n setCursor(result.data.content.meta.cursor || undefined);\n setError(null);\n }\n } catch (ex) {\n setEntries([]);\n console.log(`Error while fetching entries for model ${model.modelId}.`);\n console.log(JSON.stringify(ex));\n setError(ex.message);\n } finally {\n setLoading(false);\n }\n },\n [model.modelId, entries, loading, error]\n );\n\n const runSearch = useCallback(\n (query?: string) => {\n if (searchQuery === query) {\n console.log(`Skipping search as it is the same as the previous one.`);\n return;\n }\n setSearchQuery(query);\n executeQuery({\n query,\n items: []\n });\n },\n [executeQuery, searchQuery]\n );\n\n const loadMore = useCallback(() => {\n if (loading) {\n console.log(`Please wait until the loading finishes to start a new one.`);\n return;\n } else if (!cursor) {\n console.log(\n `Trying to load more results but there is no cursor defined. Probably there are no more results.`\n );\n return;\n }\n executeQuery({\n query: searchQuery,\n items: entries,\n after: cursor\n });\n }, [searchQuery, loading, cursor, entries]);\n\n return {\n runSearch,\n loadMore,\n loading,\n entries,\n error,\n hasMore: !!cursor\n };\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["executeSearch","params","setLoading","setError","setEntries","client","values","query","LIST_LATEST_CONTENT_ENTRIES","variables","entries","map","value","id","modelId","result","error","data","message","reduce","collection","entry","entryId","useReferences","initialValues","perPage","useApolloClient","useState","loading","hash","setHash","currentPage","setCurrentPage","pages","useMemo","Array","isArray","lodashChunk","parseIdentifier","entriesToLoad","toLoad","p","page","length","push","filter","item","useEffect","sort","join","window","crypto","subtle","digest","TextEncoder","encode","then","encoded","decoded","TextDecoder","decode","items","prev","loadMore","useCallback","nextPage","loadedEntries"],"sources":["useReferences.ts"],"sourcesContent":["import ApolloClient from \"apollo-client\";\nimport lodashChunk from \"lodash/chunk\";\nimport { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { useApolloClient } from \"~/admin/hooks\";\nimport {\n CmsReferenceContentEntry,\n CmsReferenceValue as BaseCmsReferenceValue\n} from \"~/admin/plugins/fieldRenderers/ref/components/types\";\nimport {\n LIST_LATEST_CONTENT_ENTRIES,\n ListLatestCmsEntriesResponse,\n ListLatestCmsEntriesVariables\n} from \"~/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql\";\nimport { parseIdentifier } from \"@webiny/utils\";\n\ninterface ExecuteSearchParams {\n setLoading: (loading: boolean) => void;\n setError: (error: string | undefined | null) => void;\n setEntries: (entries: Record<string, CmsReferenceContentEntry>) => void;\n client: ApolloClient<any>;\n values: CmsReferenceValue[];\n}\n\nconst executeSearch = async (params: ExecuteSearchParams): Promise<void> => {\n const { setLoading, setError, setEntries, client, values } = params;\n setLoading(true);\n try {\n const result = await client.query<\n ListLatestCmsEntriesResponse,\n ListLatestCmsEntriesVariables\n >({\n query: LIST_LATEST_CONTENT_ENTRIES,\n variables: {\n entries: values.map(value => {\n return {\n id: value.id,\n modelId: value.modelId\n };\n })\n }\n });\n const error = result.data.entries?.error;\n if (error) {\n setError(error.message);\n return;\n }\n const entries = result.data.entries.data.reduce<Record<string, CmsReferenceContentEntry>>(\n (collection, entry) => {\n collection[entry.entryId] = entry;\n return collection;\n },\n {}\n );\n setError(null);\n setEntries(entries);\n } catch (ex) {\n setError(ex.message);\n } finally {\n setLoading(false);\n }\n};\n\ninterface CmsReferenceValue extends BaseCmsReferenceValue {\n entryId: string;\n}\n\ninterface UseReferencesParams {\n values?: BaseCmsReferenceValue[] | BaseCmsReferenceValue | null;\n perPage?: number;\n}\n\nexport const useReferences = ({ values: initialValues, perPage = 10 }: UseReferencesParams) => {\n const client = useApolloClient();\n const [entries, setEntries] = useState<Record<string, CmsReferenceContentEntry>>({});\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<string | undefined | null>(null);\n const [hash, setHash] = useState<string | null>(null);\n const [currentPage, setCurrentPage] = useState<number>(0);\n const pages = useMemo(() => {\n const values = Array.isArray(initialValues)\n ? initialValues\n : initialValues\n ? [initialValues]\n : [];\n return lodashChunk<CmsReferenceValue>(\n values.map(value => {\n const { id: entryId } = parseIdentifier(value.id);\n return {\n ...value,\n entryId\n };\n }),\n perPage\n );\n }, [initialValues, perPage]);\n\n const entriesToLoad = useMemo(() => {\n /**\n * We need to make sure that all the previous page entries are loaded\n * And we add the current page entries to the list.\n */\n const toLoad: CmsReferenceValue[] = [];\n for (let p = 0; p <= currentPage; p++) {\n const page = pages[p];\n if (!page || page.length === 0) {\n return toLoad;\n }\n toLoad.push(\n ...page.filter(item => {\n return !entries[item.entryId];\n })\n );\n }\n return toLoad;\n }, [pages, currentPage]);\n\n useEffect(() => {\n if (entriesToLoad.length === 0) {\n return;\n }\n const value = entriesToLoad\n .map(item => {\n return item.id;\n })\n .sort()\n .join(\"-\");\n if (value.length === 0) {\n return;\n }\n /**\n * If there is no crypto.subtle, lets skip this - but at this point the hash will be enormous.\n */\n if (!window.crypto?.subtle) {\n if (hash === value) {\n return;\n }\n setHash(value);\n return;\n }\n\n window.crypto.subtle.digest(\"SHA-1\", new TextEncoder().encode(value)).then(encoded => {\n const decoded = new TextDecoder().decode(encoded);\n if (hash === decoded) {\n return;\n }\n setHash(decoded);\n });\n }, [entriesToLoad]);\n\n useEffect(() => {\n if (!hash || entriesToLoad.length === 0) {\n return;\n }\n executeSearch({\n client,\n values: entriesToLoad,\n setLoading,\n setError,\n setEntries: items => {\n setEntries(prev => {\n return {\n ...prev,\n ...items\n };\n });\n }\n });\n }, [hash]);\n\n const loadMore = useCallback(() => {\n const nextPage = currentPage + 1;\n if (!pages[nextPage] || pages[nextPage].length === 0) {\n return;\n }\n setCurrentPage(nextPage);\n }, [pages, currentPage]);\n\n /**\n * This variable contains all the pages with entries, up to the current page, which is inlcuded.\n */\n const loadedEntries = useMemo<CmsReferenceContentEntry[]>(() => {\n const collection: CmsReferenceContentEntry[] = [];\n for (let page = 0; page <= currentPage; page++) {\n const items = pages[page] || [];\n for (const item of items) {\n const entry = entries[item.entryId];\n if (!entry) {\n continue;\n }\n collection.push(entry);\n }\n }\n return collection;\n }, [currentPage, entries, pages]);\n\n return {\n loading,\n entries: loadedEntries,\n error,\n loadMore\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_chunk","_interopRequireDefault","require","_react","_hooks","_graphql","_utils","executeSearch","_ref","_asyncToGenerator2","default","_regeneratorRuntime2","mark","_callee","params","setLoading","setError","setEntries","client","values","_result$data$entries","result","_error","_entries","wrap","_callee$","_context","prev","next","query","LIST_LATEST_CONTENT_ENTRIES","variables","entries","map","value","id","modelId","sent","error","data","message","abrupt","reduce","collection","entry","entryId","t0","finish","stop","_x","apply","arguments","useReferences","_ref2","initialValues","_ref2$perPage","perPage","useApolloClient","_useState","useState","_useState2","_slicedToArray2","_useState3","_useState4","loading","_useState5","_useState6","_useState7","_useState8","hash","setHash","_useState9","_useState10","currentPage","setCurrentPage","pages","useMemo","Array","isArray","lodashChunk","_parseIdentifier","parseIdentifier","_objectSpread2","entriesToLoad","toLoad","p","page","length","push","_toConsumableArray2","filter","item","useEffect","_window$crypto","sort","join","window","crypto","subtle","digest","TextEncoder","encode","then","encoded","decoded","TextDecoder","decode","items","loadMore","useCallback","nextPage","loadedEntries","_iterator","_createForOfIteratorHelper2","_step","s","n","done","err","e","f","exports"],"sources":["useReferences.ts"],"sourcesContent":["import ApolloClient from \"apollo-client\";\nimport lodashChunk from \"lodash/chunk\";\nimport { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { useApolloClient } from \"~/admin/hooks\";\nimport {\n CmsReferenceContentEntry,\n CmsReferenceValue as BaseCmsReferenceValue\n} from \"~/admin/plugins/fieldRenderers/ref/components/types\";\nimport {\n LIST_LATEST_CONTENT_ENTRIES,\n ListLatestCmsEntriesResponse,\n ListLatestCmsEntriesVariables\n} from \"~/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql\";\nimport { parseIdentifier } from \"@webiny/utils\";\n\ninterface ExecuteSearchParams {\n setLoading: (loading: boolean) => void;\n setError: (error: string | undefined | null) => void;\n setEntries: (entries: Record<string, CmsReferenceContentEntry>) => void;\n client: ApolloClient<any>;\n values: CmsReferenceValue[];\n}\n\nconst executeSearch = async (params: ExecuteSearchParams): Promise<void> => {\n const { setLoading, setError, setEntries, client, values } = params;\n setLoading(true);\n try {\n const result = await client.query<\n ListLatestCmsEntriesResponse,\n ListLatestCmsEntriesVariables\n >({\n query: LIST_LATEST_CONTENT_ENTRIES,\n variables: {\n entries: values.map(value => {\n return {\n id: value.id,\n modelId: value.modelId\n };\n })\n }\n });\n const error = result.data.entries?.error;\n if (error) {\n setError(error.message);\n return;\n }\n const entries = result.data.entries.data.reduce<Record<string, CmsReferenceContentEntry>>(\n (collection, entry) => {\n collection[entry.entryId] = entry;\n return collection;\n },\n {}\n );\n setError(null);\n setEntries(entries);\n } catch (ex) {\n setError(ex.message);\n } finally {\n setLoading(false);\n }\n};\n\ninterface CmsReferenceValue extends BaseCmsReferenceValue {\n entryId: string;\n}\n\ninterface UseReferencesParams {\n values?: BaseCmsReferenceValue[] | BaseCmsReferenceValue | null;\n perPage?: number;\n}\n\nexport const useReferences = ({ values: initialValues, perPage = 10 }: UseReferencesParams) => {\n const client = useApolloClient();\n const [entries, setEntries] = useState<Record<string, CmsReferenceContentEntry>>({});\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<string | undefined | null>(null);\n const [hash, setHash] = useState<string | null>(null);\n const [currentPage, setCurrentPage] = useState<number>(0);\n const pages = useMemo(() => {\n const values = Array.isArray(initialValues)\n ? initialValues\n : initialValues\n ? [initialValues]\n : [];\n return lodashChunk<CmsReferenceValue>(\n values.map(value => {\n const { id: entryId } = parseIdentifier(value.id);\n return {\n ...value,\n entryId\n };\n }),\n perPage\n );\n }, [initialValues, perPage]);\n\n const entriesToLoad = useMemo(() => {\n /**\n * We need to make sure that all the previous page entries are loaded\n * And we add the current page entries to the list.\n */\n const toLoad: CmsReferenceValue[] = [];\n for (let p = 0; p <= currentPage; p++) {\n const page = pages[p];\n if (!page || page.length === 0) {\n return toLoad;\n }\n toLoad.push(\n ...page.filter(item => {\n return !entries[item.entryId];\n })\n );\n }\n return toLoad;\n }, [pages, currentPage]);\n\n useEffect(() => {\n if (entriesToLoad.length === 0) {\n return;\n }\n const value = entriesToLoad\n .map(item => {\n return item.id;\n })\n .sort()\n .join(\"-\");\n if (value.length === 0) {\n return;\n }\n /**\n * If there is no crypto.subtle, lets skip this - but at this point the hash will be enormous.\n */\n if (!window.crypto?.subtle) {\n if (hash === value) {\n return;\n }\n setHash(value);\n return;\n }\n\n window.crypto.subtle.digest(\"SHA-1\", new TextEncoder().encode(value)).then(encoded => {\n const decoded = new TextDecoder().decode(encoded);\n if (hash === decoded) {\n return;\n }\n setHash(decoded);\n });\n }, [entriesToLoad]);\n\n useEffect(() => {\n if (!hash || entriesToLoad.length === 0) {\n return;\n }\n executeSearch({\n client,\n values: entriesToLoad,\n setLoading,\n setError,\n setEntries: items => {\n setEntries(prev => {\n return {\n ...prev,\n ...items\n };\n });\n }\n });\n }, [hash]);\n\n const loadMore = useCallback(() => {\n const nextPage = currentPage + 1;\n if (!pages[nextPage] || pages[nextPage].length === 0) {\n return;\n }\n setCurrentPage(nextPage);\n }, [pages, currentPage]);\n\n /**\n * This variable contains all the pages with entries, up to the current page, which is inlcuded.\n */\n const loadedEntries = useMemo<CmsReferenceContentEntry[]>(() => {\n const collection: CmsReferenceContentEntry[] = [];\n for (let page = 0; page <= currentPage; page++) {\n const items = pages[page] || [];\n for (const item of items) {\n const entry = entries[item.entryId];\n if (!entry) {\n continue;\n }\n collection.push(entry);\n }\n }\n return collection;\n }, [currentPage, entries, pages]);\n\n return {\n loading,\n entries: loadedEntries,\n error,\n loadMore\n };\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const createAdvancedRefRenderer: () => import("
|
|
1
|
+
export declare const createAdvancedRefRenderer: () => import("@webiny/app-headless-cms-common/types").CmsModelFieldRendererPlugin[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAdvancedRefRenderer","createAdvancedSingleRenderer","createAdvancedMultipleRenderer"],"sources":["index.ts"],"sourcesContent":["import { createAdvancedSingleRenderer } from \"./detailedReferenceRenderer\";\nimport { createAdvancedMultipleRenderer } from \"./detailedReferencesRenderer\";\n\nexport const createAdvancedRefRenderer = () => {\n return [createAdvancedSingleRenderer(), createAdvancedMultipleRenderer()];\n};\n"],"mappings":";;;;;;AAAA;AACA;AAEO,
|
|
1
|
+
{"version":3,"names":["_detailedReferenceRenderer","require","_detailedReferencesRenderer","createAdvancedRefRenderer","createAdvancedSingleRenderer","createAdvancedMultipleRenderer","exports"],"sources":["index.ts"],"sourcesContent":["import { createAdvancedSingleRenderer } from \"./detailedReferenceRenderer\";\nimport { createAdvancedMultipleRenderer } from \"./detailedReferencesRenderer\";\n\nexport const createAdvancedRefRenderer = () => {\n return [createAdvancedSingleRenderer(), createAdvancedMultipleRenderer()];\n};\n"],"mappings":";;;;;;AAAA,IAAAA,0BAAA,GAAAC,OAAA;AACA,IAAAC,2BAAA,GAAAD,OAAA;AAEO,IAAME,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAA,EAAS;EAC3C,OAAO,CAAC,IAAAC,uDAA4B,EAAC,CAAC,EAAE,IAAAC,0DAA8B,EAAC,CAAC,CAAC;AAC7E,CAAC;AAACC,OAAA,CAAAH,yBAAA,GAAAA,yBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","unpublishedLabel","publishedLabel","getItemOption","options","id","length","parseIdentifier","entryId","find","item","ContentEntriesAutocomplete","bind","field","useReference","setSearch","value","loading","onChange","entryInfo","published","link","createEntryUrl","publishItLink","here","useNewRefEntry","renderNewEntryModal","refModelId","helpText","entry","renderItem","undefined","label","debounce","search"],"sources":["ContentEntriesAutocomplete.tsx"],"sourcesContent":["import React from \"react\";\nimport debounce from \"lodash/debounce\";\nimport NewRefEntryFormDialog, { NewEntryButton } from \"./NewRefEntryFormDialog\";\nimport { AutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Link } from \"@webiny/react-router\";\nimport { useNewRefEntry } from \"../hooks/useNewRefEntry\";\nimport { useReference } from \"./useReference\";\nimport { renderItem } from \"./renderItem\";\nimport { createEntryUrl } from \"./createEntryUrl\";\nimport { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\nimport { OptionItem } from \"./types\";\nimport { EntryStatus } from \"./EntryStatus\";\nimport { parseIdentifier } from \"@webiny/utils\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst unpublishedLabel = t`Selected content entry is not published. Make sure to {publishItLink} before publishing the main content entry.`;\nconst publishedLabel = t`Selected content entry is published. You can view it {here}.`;\n\nconst getItemOption = (options: OptionItem[], id?: string | null): OptionItem | null => {\n if (!id || !options || options.length === 0) {\n return null;\n }\n const { id: entryId } = parseIdentifier(id);\n return options.find(item => item.entryId === entryId) || null;\n};\n\ninterface ContentEntriesAutocompleteProps {\n bind: BindComponentRenderProp;\n field: CmsModelField;\n}\nconst ContentEntriesAutocomplete: React.FC<ContentEntriesAutocompleteProps> = ({ bind, field }) => {\n const { options, setSearch, value, loading, onChange } = useReference({\n bind,\n field\n });\n\n let entryInfo: string | null = null;\n if (value && !value.published) {\n const link = createEntryUrl(value);\n entryInfo = unpublishedLabel({ publishItLink: <Link to={link}>{t`publish it`}</Link> });\n } else if (value) {\n const link = createEntryUrl(value);\n entryInfo = publishedLabel({\n here: <Link to={link}>{t`here`}</Link>\n });\n }\n const { renderNewEntryModal, refModelId, helpText } = useNewRefEntry({ field });\n\n const item = getItemOption(options, bind.value ? bind.value.id : null);\n /*\n * Wrap AutoComplete input in NewRefEntry modal.\n */\n if (renderNewEntryModal) {\n return (\n <NewRefEntryFormDialog\n modelId={refModelId}\n onChange={entry => {\n /**\n * TODO @ts-refactor @ashutosh\n * Need to figure out correct types.\n */\n // @ts-ignore\n return onChange(entry, entry);\n }}\n >\n <AutoComplete\n {...bind}\n renderItem={renderItem}\n onChange={onChange}\n loading={loading}\n value={value || undefined}\n options={options}\n label={field.label}\n data-testid={`fr.input.autocomplete.${field.label}`}\n description={\n <>\n {field.helpText}\n <EntryStatus item={item}>{entryInfo}</EntryStatus>\n </>\n }\n onInput={debounce(search => setSearch(search), 250)}\n noResultFound={<NewEntryButton />}\n />\n </NewRefEntryFormDialog>\n );\n }\n\n return (\n <AutoComplete\n {...bind}\n renderItem={renderItem}\n onChange={onChange}\n loading={loading}\n value={value || undefined}\n options={options}\n label={field.label}\n description={\n <>\n {field.helpText}\n <EntryStatus item={item}>{entryInfo}</EntryStatus>\n </>\n }\n onInput={debounce(search => setSearch(search), 250)}\n noResultFound={helpText}\n />\n );\n};\n\nexport default ContentEntriesAutocomplete;\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AAAgD;AAEhD,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_debounce","_NewRefEntryFormDialog","_interopRequireWildcard","_AutoComplete","_i18n","_reactRouter","_useNewRefEntry2","_useReference2","_renderItem","_createEntryUrl","_EntryStatus","_utils","_templateObject","_templateObject2","_templateObject3","_templateObject4","t","i18n","ns","unpublishedLabel","_taggedTemplateLiteral2","default","publishedLabel","getItemOption","options","id","length","_parseIdentifier","parseIdentifier","entryId","find","item","ContentEntriesAutocomplete","_ref","bind","field","_useReference","useReference","setSearch","value","loading","onChange","entryInfo","published","link","createEntryUrl","publishItLink","createElement","Link","to","here","_useNewRefEntry","useNewRefEntry","renderNewEntryModal","refModelId","helpText","modelId","entry","AutoComplete","Object","assign","renderItem","undefined","label","concat","description","Fragment","EntryStatus","onInput","debounce","search","noResultFound","NewEntryButton","_default","exports"],"sources":["ContentEntriesAutocomplete.tsx"],"sourcesContent":["import React from \"react\";\nimport debounce from \"lodash/debounce\";\nimport NewRefEntryFormDialog, { NewEntryButton } from \"./NewRefEntryFormDialog\";\nimport { AutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Link } from \"@webiny/react-router\";\nimport { useNewRefEntry } from \"../hooks/useNewRefEntry\";\nimport { useReference } from \"./useReference\";\nimport { renderItem } from \"./renderItem\";\nimport { createEntryUrl } from \"./createEntryUrl\";\nimport { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\nimport { OptionItem } from \"./types\";\nimport { EntryStatus } from \"./EntryStatus\";\nimport { parseIdentifier } from \"@webiny/utils\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst unpublishedLabel = t`Selected content entry is not published. Make sure to {publishItLink} before publishing the main content entry.`;\nconst publishedLabel = t`Selected content entry is published. You can view it {here}.`;\n\nconst getItemOption = (options: OptionItem[], id?: string | null): OptionItem | null => {\n if (!id || !options || options.length === 0) {\n return null;\n }\n const { id: entryId } = parseIdentifier(id);\n return options.find(item => item.entryId === entryId) || null;\n};\n\ninterface ContentEntriesAutocompleteProps {\n bind: BindComponentRenderProp;\n field: CmsModelField;\n}\nconst ContentEntriesAutocomplete: React.FC<ContentEntriesAutocompleteProps> = ({ bind, field }) => {\n const { options, setSearch, value, loading, onChange } = useReference({\n bind,\n field\n });\n\n let entryInfo: string | null = null;\n if (value && !value.published) {\n const link = createEntryUrl(value);\n entryInfo = unpublishedLabel({ publishItLink: <Link to={link}>{t`publish it`}</Link> });\n } else if (value) {\n const link = createEntryUrl(value);\n entryInfo = publishedLabel({\n here: <Link to={link}>{t`here`}</Link>\n });\n }\n const { renderNewEntryModal, refModelId, helpText } = useNewRefEntry({ field });\n\n const item = getItemOption(options, bind.value ? bind.value.id : null);\n /*\n * Wrap AutoComplete input in NewRefEntry modal.\n */\n if (renderNewEntryModal) {\n return (\n <NewRefEntryFormDialog\n modelId={refModelId}\n onChange={entry => {\n /**\n * TODO @ts-refactor @ashutosh\n * Need to figure out correct types.\n */\n // @ts-ignore\n return onChange(entry, entry);\n }}\n >\n <AutoComplete\n {...bind}\n renderItem={renderItem}\n onChange={onChange}\n loading={loading}\n value={value || undefined}\n options={options}\n label={field.label}\n data-testid={`fr.input.autocomplete.${field.label}`}\n description={\n <>\n {field.helpText}\n <EntryStatus item={item}>{entryInfo}</EntryStatus>\n </>\n }\n onInput={debounce(search => setSearch(search), 250)}\n noResultFound={<NewEntryButton />}\n />\n </NewRefEntryFormDialog>\n );\n }\n\n return (\n <AutoComplete\n {...bind}\n renderItem={renderItem}\n onChange={onChange}\n loading={loading}\n value={value || undefined}\n options={options}\n label={field.label}\n description={\n <>\n {field.helpText}\n <EntryStatus item={item}>{entryInfo}</EntryStatus>\n </>\n }\n onInput={debounce(search => setSearch(search), 250)}\n noResultFound={helpText}\n />\n );\n};\n\nexport default ContentEntriesAutocomplete;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","warn","ContentEntriesMultiAutocomplete","bind","field","useReferences","options","setSearch","entries","loading","onChange","useNewRefEntry","renderNewEntryModal","refModelId","helpText","entryWarning","entry","index","id","modelId","name","published","encodeURIComponent","warning","filter","item","length","map","refEntryOnChange","useCallback","value","renderItem","renderListItemOptions","label","debounce"],"sources":["ContentEntriesMultiAutoComplete.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport debounce from \"lodash/debounce\";\nimport { MultiAutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { Link } from \"@webiny/react-router\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useReferences } from \"./useReferences\";\nimport { renderItem, renderListItemOptions } from \"./renderItem\";\nimport NewRefEntryFormDialog, { NewEntryButton } from \"./NewRefEntryFormDialog\";\nimport { useNewRefEntry } from \"../hooks/useNewRefEntry\";\nimport { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\nimport { OptionItem } from \"./types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst warn = t`Before publishing the main content entry, make sure you publish the following referenced entries: {entries}`;\n\ninterface ContentEntriesMultiAutocompleteProps {\n bind: BindComponentRenderProp;\n field: CmsModelField;\n}\nconst ContentEntriesMultiAutocomplete: React.FC<ContentEntriesMultiAutocompleteProps> = ({\n bind,\n field\n}) => {\n const { options, setSearch, entries, loading, onChange } = useReferences({ bind, field });\n\n const { renderNewEntryModal, refModelId, helpText } = useNewRefEntry({ field });\n\n const entryWarning = (entry: OptionItem, index: number): React.ReactElement | null => {\n const { id, modelId, name, published } = entry;\n if (published) {\n return null;\n }\n return (\n <React.Fragment key={id}>\n {index > 0 && \", \"}\n <Link to={`/cms/content-entries/${modelId}?id=${encodeURIComponent(id)}`}>\n {name}\n </Link>\n </React.Fragment>\n );\n };\n\n let warning = entries.filter(item => !item.published);\n if (warning.length > 0) {\n warning = warn({\n entries: <>{warning.map(entryWarning)}</>\n });\n }\n\n const refEntryOnChange = useCallback(\n // TODO @ts-refactor figure out which type is this\n value => {\n /**\n * Append new selected entry at the end of existing entries.\n */\n onChange([...entries, value]);\n },\n [onChange, entries]\n );\n\n if (renderNewEntryModal) {\n return (\n <NewRefEntryFormDialog modelId={refModelId} onChange={refEntryOnChange}>\n <MultiAutoComplete\n {...bind}\n renderItem={renderItem}\n renderListItemLabel={renderItem}\n renderListItemOptions={renderListItemOptions}\n useMultipleSelectionList\n onChange={onChange}\n loading={loading}\n value={entries}\n options={options}\n label={field.label}\n onInput={debounce(setSearch, 250)}\n description={\n <>\n {field.helpText}\n {warning}\n </>\n }\n noResultFound={<NewEntryButton />}\n />\n </NewRefEntryFormDialog>\n );\n }\n\n return (\n <MultiAutoComplete\n {...bind}\n renderItem={renderItem}\n renderListItemLabel={renderItem}\n renderListItemOptions={renderListItemOptions}\n useMultipleSelectionList\n onChange={onChange}\n loading={loading}\n value={entries}\n options={options}\n label={field.label}\n onInput={debounce(setSearch, 250)}\n description={\n <>\n {field.helpText}\n {warning}\n </>\n }\n noResultFound={helpText}\n />\n );\n};\n\nexport default ContentEntriesMultiAutocomplete;\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAyD;AAKzD,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_debounce","_interopRequireDefault","_AutoComplete","_reactRouter","_i18n","_useReferences2","_renderItem","_NewRefEntryFormDialog","_useNewRefEntry2","_templateObject","t","i18n","ns","warn","_taggedTemplateLiteral2","default","ContentEntriesMultiAutocomplete","_ref","bind","field","_useReferences","useReferences","options","setSearch","entries","loading","onChange","_useNewRefEntry","useNewRefEntry","renderNewEntryModal","refModelId","helpText","entryWarning","entry","index","id","modelId","name","published","createElement","Fragment","key","Link","to","concat","encodeURIComponent","warning","filter","item","length","map","refEntryOnChange","useCallback","value","_toConsumableArray2","MultiAutoComplete","Object","assign","renderItem","renderListItemLabel","renderListItemOptions","useMultipleSelectionList","label","onInput","debounce","description","noResultFound","NewEntryButton","_default","exports"],"sources":["ContentEntriesMultiAutoComplete.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport debounce from \"lodash/debounce\";\nimport { MultiAutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { Link } from \"@webiny/react-router\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useReferences } from \"./useReferences\";\nimport { renderItem, renderListItemOptions } from \"./renderItem\";\nimport NewRefEntryFormDialog, { NewEntryButton } from \"./NewRefEntryFormDialog\";\nimport { useNewRefEntry } from \"../hooks/useNewRefEntry\";\nimport { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\nimport { OptionItem } from \"./types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst warn = t`Before publishing the main content entry, make sure you publish the following referenced entries: {entries}`;\n\ninterface ContentEntriesMultiAutocompleteProps {\n bind: BindComponentRenderProp;\n field: CmsModelField;\n}\nconst ContentEntriesMultiAutocomplete: React.FC<ContentEntriesMultiAutocompleteProps> = ({\n bind,\n field\n}) => {\n const { options, setSearch, entries, loading, onChange } = useReferences({ bind, field });\n\n const { renderNewEntryModal, refModelId, helpText } = useNewRefEntry({ field });\n\n const entryWarning = (entry: OptionItem, index: number): React.ReactElement | null => {\n const { id, modelId, name, published } = entry;\n if (published) {\n return null;\n }\n return (\n <React.Fragment key={id}>\n {index > 0 && \", \"}\n <Link to={`/cms/content-entries/${modelId}?id=${encodeURIComponent(id)}`}>\n {name}\n </Link>\n </React.Fragment>\n );\n };\n\n let warning = entries.filter(item => !item.published);\n if (warning.length > 0) {\n warning = warn({\n entries: <>{warning.map(entryWarning)}</>\n });\n }\n\n const refEntryOnChange = useCallback(\n // TODO @ts-refactor figure out which type is this\n value => {\n /**\n * Append new selected entry at the end of existing entries.\n */\n onChange([...entries, value]);\n },\n [onChange, entries]\n );\n\n if (renderNewEntryModal) {\n return (\n <NewRefEntryFormDialog modelId={refModelId} onChange={refEntryOnChange}>\n <MultiAutoComplete\n {...bind}\n renderItem={renderItem}\n renderListItemLabel={renderItem}\n renderListItemOptions={renderListItemOptions}\n useMultipleSelectionList\n onChange={onChange}\n loading={loading}\n value={entries}\n options={options}\n label={field.label}\n onInput={debounce(setSearch, 250)}\n description={\n <>\n {field.helpText}\n {warning}\n </>\n }\n noResultFound={<NewEntryButton />}\n />\n </NewRefEntryFormDialog>\n );\n }\n\n return (\n <MultiAutoComplete\n {...bind}\n renderItem={renderItem}\n renderListItemLabel={renderItem}\n renderListItemOptions={renderListItemOptions}\n useMultipleSelectionList\n onChange={onChange}\n loading={loading}\n value={entries}\n options={options}\n label={field.label}\n onInput={debounce(setSearch, 250)}\n description={\n <>\n {field.helpText}\n {warning}\n </>\n }\n noResultFound={helpText}\n />\n );\n};\n\nexport default ContentEntriesMultiAutocomplete;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["EntryStatusText","styled","display","verticalAlign","EntryStatusWrapper","EntryStatusTooltip","width","EntryStatus","props","item","children","placement","className","status","getEntryStatus","tooltipText","getItemStatusText","published","unpublished"],"sources":["EntryStatus.tsx"],"sourcesContent":["import { OptionItem } from \"~/admin/plugins/fieldRenderers/ref/components/types\";\nimport React from \"react\";\nimport {\n getEntryStatus,\n getItemStatusText\n} from \"~/admin/plugins/fieldRenderers/ref/components/helpers\";\nimport { Tooltip, TooltipProps } from \"@webiny/ui/Tooltip\";\nimport { ReactComponent as PublishedIcon } from \"~/admin/icons/published.svg\";\nimport { ReactComponent as UnpublishedIcon } from \"~/admin/icons/unpublished.svg\";\nimport { ReactComponent as DraftIcon } from \"~/admin/icons/draft.svg\";\nimport styled from \"@emotion/styled\";\n\nconst EntryStatusText = styled(\"div\")({\n display: \"table-cell\",\n verticalAlign: \"middle\"\n});\n\nconst EntryStatusWrapper = styled(\"div\")({\n display: \"table\"\n});\nconst EntryStatusTooltip = styled(\"div\")({\n display: \"table-cell\",\n width: \"30px\",\n verticalAlign: \"middle\"\n});\n\ninterface EntryStatusProps {\n item: OptionItem | null;\n placement?: TooltipProps[\"placement\"];\n className?: string;\n}\nexport const EntryStatus: React.FC<EntryStatusProps> = props => {\n const { item, children, placement = \"bottom\", className } = props;\n if (!item) {\n return <>{children}</>;\n }\n const status = getEntryStatus(item);\n const tooltipText = getItemStatusText(item);\n\n const published = status === \"published\";\n const unpublished = status === \"unpublished\";\n return (\n <EntryStatusWrapper className={className}>\n <EntryStatusTooltip>\n <Tooltip content={tooltipText} placement={placement}>\n {published && <PublishedIcon />}\n {unpublished && <UnpublishedIcon />}\n {!published && !unpublished && <DraftIcon />}\n </Tooltip>\n </EntryStatusTooltip>\n {children && <EntryStatusText>{children}</EntryStatusText>}\n </EntryStatusWrapper>\n );\n};\n"],"mappings":";;;;;;;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AAEA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_helpers","_Tooltip","_published","_unpublished","_draft","_styled","EntryStatusText","styled","target","label","display","verticalAlign","EntryStatusWrapper","EntryStatusTooltip","width","EntryStatus","props","item","children","_props$placement","placement","className","default","createElement","Fragment","status","getEntryStatus","tooltipText","getItemStatusText","published","unpublished","Tooltip","content","ReactComponent","exports"],"sources":["EntryStatus.tsx"],"sourcesContent":["import { OptionItem } from \"~/admin/plugins/fieldRenderers/ref/components/types\";\nimport React from \"react\";\nimport {\n getEntryStatus,\n getItemStatusText\n} from \"~/admin/plugins/fieldRenderers/ref/components/helpers\";\nimport { Tooltip, TooltipProps } from \"@webiny/ui/Tooltip\";\nimport { ReactComponent as PublishedIcon } from \"~/admin/icons/published.svg\";\nimport { ReactComponent as UnpublishedIcon } from \"~/admin/icons/unpublished.svg\";\nimport { ReactComponent as DraftIcon } from \"~/admin/icons/draft.svg\";\nimport styled from \"@emotion/styled\";\n\nconst EntryStatusText = styled(\"div\")({\n display: \"table-cell\",\n verticalAlign: \"middle\"\n});\n\nconst EntryStatusWrapper = styled(\"div\")({\n display: \"table\"\n});\nconst EntryStatusTooltip = styled(\"div\")({\n display: \"table-cell\",\n width: \"30px\",\n verticalAlign: \"middle\"\n});\n\ninterface EntryStatusProps {\n item: OptionItem | null;\n placement?: TooltipProps[\"placement\"];\n className?: string;\n}\nexport const EntryStatus: React.FC<EntryStatusProps> = props => {\n const { item, children, placement = \"bottom\", className } = props;\n if (!item) {\n return <>{children}</>;\n }\n const status = getEntryStatus(item);\n const tooltipText = getItemStatusText(item);\n\n const published = status === \"published\";\n const unpublished = status === \"unpublished\";\n return (\n <EntryStatusWrapper className={className}>\n <EntryStatusTooltip>\n <Tooltip content={tooltipText} placement={placement}>\n {published && <PublishedIcon />}\n {unpublished && <UnpublishedIcon />}\n {!published && !unpublished && <DraftIcon />}\n </Tooltip>\n </EntryStatusTooltip>\n {children && <EntryStatusText>{children}</EntryStatusText>}\n </EntryStatusWrapper>\n );\n};\n"],"mappings":";;;;;;;AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAIA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAP,sBAAA,CAAAC,OAAA;AAEA,IAAMO,eAAe,oBAAGC,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EAClCC,OAAO,EAAE,YAAY;EACrBC,aAAa,EAAE;AACnB,CAAC,CAAC;AAEF,IAAMC,kBAAkB,oBAAGL,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EACrCC,OAAO,EAAE;AACb,CAAC,CAAC;AACF,IAAMG,kBAAkB,oBAAGN,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EACrCC,OAAO,EAAE,YAAY;EACrBI,KAAK,EAAE,MAAM;EACbH,aAAa,EAAE;AACnB,CAAC,CAAC;AAOK,IAAMI,WAAuC,GAAG,SAA1CA,WAAuCA,CAAGC,KAAK,EAAI;EAC5D,IAAQC,IAAI,GAAgDD,KAAK,CAAzDC,IAAI;IAAEC,QAAQ,GAAsCF,KAAK,CAAnDE,QAAQ;IAAAC,gBAAA,GAAsCH,KAAK,CAAzCI,SAAS;IAATA,SAAS,GAAAD,gBAAA,cAAG,QAAQ,GAAAA,gBAAA;IAAEE,SAAS,GAAKL,KAAK,CAAnBK,SAAS;EACvD,IAAI,CAACJ,IAAI,EAAE;IACP,oBAAOpB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAAA1B,MAAA,CAAAyB,OAAA,CAAAE,QAAA,QAAGN,QAAW,CAAC;EAC1B;EACA,IAAMO,MAAM,GAAG,IAAAC,uBAAc,EAACT,IAAI,CAAC;EACnC,IAAMU,WAAW,GAAG,IAAAC,0BAAiB,EAACX,IAAI,CAAC;EAE3C,IAAMY,SAAS,GAAGJ,MAAM,KAAK,WAAW;EACxC,IAAMK,WAAW,GAAGL,MAAM,KAAK,aAAa;EAC5C,oBACI5B,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACX,kBAAkB;IAACS,SAAS,EAAEA;EAAU,gBACrCxB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACV,kBAAkB,qBACfhB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACtB,QAAA,CAAA8B,OAAO;IAACC,OAAO,EAAEL,WAAY;IAACP,SAAS,EAAEA;EAAU,GAC/CS,SAAS,iBAAIhC,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACrB,UAAA,CAAA+B,cAAa,MAAE,CAAC,EAC9BH,WAAW,iBAAIjC,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACpB,YAAA,CAAA8B,cAAe,MAAE,CAAC,EAClC,CAACJ,SAAS,IAAI,CAACC,WAAW,iBAAIjC,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACnB,MAAA,CAAA6B,cAAS,MAAE,CACtC,CACO,CAAC,EACpBf,QAAQ,iBAAIrB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACjB,eAAe,QAAEY,QAA0B,CACzC,CAAC;AAE7B,CAAC;AAACgB,OAAA,CAAAnB,WAAA,GAAAA,WAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","missingEntryLabel","referenceMultipleModelsLabel","HelpTextTypography","styled","Typography","ReferenceMultipleModelsHelpText","MissingEntryHelpText","refModelId","newEntryLink","createNewEntryUrl"],"sources":["MissingEntryHelpText.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Link } from \"@webiny/react-router\";\nimport { createNewEntryUrl } from \"./createEntryUrl\";\nimport { i18n } from \"@webiny/app/i18n\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst missingEntryLabel = t`If you can't find the intended reference value in the target model,\n please close this dialog and populate the {newEntryLink} in the target model first.`;\n\nconst referenceMultipleModelsLabel = t`The creation of reference values from within this view is only supported\n when a single reference model is selected. To reference values from multiple models,\n please make sure the referenced values exist before setting the reference.`;\n\nconst HelpTextTypography = styled(Typography)`\n & {\n display: inline-block;\n color: var(--mdc-theme-text-secondary-on-background) !important;\n }\n`;\n\nexport const ReferenceMultipleModelsHelpText = () => {\n return <HelpTextTypography use={\"caption\"}>{referenceMultipleModelsLabel}</HelpTextTypography>;\n};\n\ninterface MissingEntryHelpTextProps {\n refModelId: string;\n}\nconst MissingEntryHelpText: React.FC<MissingEntryHelpTextProps> = ({ refModelId }) => {\n return (\n <HelpTextTypography use={\"caption\"}>\n {missingEntryLabel({\n newEntryLink: (\n <Link to={createNewEntryUrl(refModelId)} target={\"_blank\"}>{t`entry`}</Link>\n )\n })}\n </HelpTextTypography>\n );\n};\n\nexport default MissingEntryHelpText;\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAAwC;AAExC,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_styled","_Typography","_reactRouter","_createEntryUrl","_i18n","_templateObject","_templateObject2","_templateObject3","t","i18n","ns","missingEntryLabel","_taggedTemplateLiteral2","default","referenceMultipleModelsLabel","HelpTextTypography","styled","Typography","label","target","ReferenceMultipleModelsHelpText","createElement","use","exports","MissingEntryHelpText","_ref","refModelId","newEntryLink","Link","to","createNewEntryUrl","_default"],"sources":["MissingEntryHelpText.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Link } from \"@webiny/react-router\";\nimport { createNewEntryUrl } from \"./createEntryUrl\";\nimport { i18n } from \"@webiny/app/i18n\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst missingEntryLabel = t`If you can't find the intended reference value in the target model,\n please close this dialog and populate the {newEntryLink} in the target model first.`;\n\nconst referenceMultipleModelsLabel = t`The creation of reference values from within this view is only supported\n when a single reference model is selected. To reference values from multiple models,\n please make sure the referenced values exist before setting the reference.`;\n\nconst HelpTextTypography = styled(Typography)`\n & {\n display: inline-block;\n color: var(--mdc-theme-text-secondary-on-background) !important;\n }\n`;\n\nexport const ReferenceMultipleModelsHelpText = () => {\n return <HelpTextTypography use={\"caption\"}>{referenceMultipleModelsLabel}</HelpTextTypography>;\n};\n\ninterface MissingEntryHelpTextProps {\n refModelId: string;\n}\nconst MissingEntryHelpText: React.FC<MissingEntryHelpTextProps> = ({ refModelId }) => {\n return (\n <HelpTextTypography use={\"caption\"}>\n {missingEntryLabel({\n newEntryLink: (\n <Link to={createNewEntryUrl(refModelId)} target={\"_blank\"}>{t`entry`}</Link>\n )\n })}\n </HelpTextTypography>\n );\n};\n\nexport default MissingEntryHelpText;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AAAwC,IAAAM,eAAA,EAAAC,gBAAA,EAAAC,gBAAA;AAExC,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,mCAAmC,CAAC;AAEtD,IAAMC,iBAAiB,GAAGH,CAAC,CAAAH,eAAA,KAAAA,eAAA,OAAAO,uBAAA,CAAAC,OAAA,0KACkE;AAE7F,IAAMC,4BAA4B,GAAGN,CAAC,CAAAF,gBAAA,KAAAA,gBAAA,OAAAM,uBAAA,CAAAC,OAAA,qPAEsC;AAE5E,IAAME,kBAAkB,oBAAGC,eAAM,EAACC,sBAAU;EAAAC,KAAA;EAAAC,MAAA;AAAA,6FAK3C;AAEM,IAAMC,+BAA+B,GAAG,SAAlCA,+BAA+BA,CAAA,EAAS;EACjD,oBAAOvB,MAAA,CAAAgB,OAAA,CAAAQ,aAAA,CAACN,kBAAkB;IAACO,GAAG,EAAE;EAAU,GAAER,4BAAiD,CAAC;AAClG,CAAC;AAACS,OAAA,CAAAH,+BAAA,GAAAA,+BAAA;AAKF,IAAMI,oBAAyD,GAAG,SAA5DA,oBAAyDA,CAAAC,IAAA,EAAuB;EAAA,IAAjBC,UAAU,GAAAD,IAAA,CAAVC,UAAU;EAC3E,oBACI7B,MAAA,CAAAgB,OAAA,CAAAQ,aAAA,CAACN,kBAAkB;IAACO,GAAG,EAAE;EAAU,GAC9BX,iBAAiB,CAAC;IACfgB,YAAY,eACR9B,MAAA,CAAAgB,OAAA,CAAAQ,aAAA,CAACnB,YAAA,CAAA0B,IAAI;MAACC,EAAE,EAAE,IAAAC,iCAAiB,EAACJ,UAAU,CAAE;MAACP,MAAM,EAAE;IAAS,GAAEX,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAAK,uBAAA,CAAAC,OAAA,cAAc;EAEnF,CAAC,CACe,CAAC;AAE7B,CAAC;AAAC,IAAAkB,QAAA,GAEaP,oBAAoB;AAAAD,OAAA,CAAAV,OAAA,GAAAkB,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","dialogContentStyles","css","dialogContainerStyles","EntryForm","onCreate","useContentEntry","setFormRef","contentModel","data","form","DialogSaveButton","current","submit","DefaultButton","styled","ButtonDefault","NewEntryButton","useNewRefEntryDialog","setOpen","NewRefEntryFormDialog","modelId","children","onChange","useState","undefined","setContentModel","useSnackbar","showSnackbar","useQuery","GET_CONTENT_MODEL","skip","variables","onCompleted","contentModelData","get","open","hideDialog","useCallback","entry","published","modelName","name"],"sources":["NewRefEntryFormDialog.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport { Dialog, DialogActions, DialogCancel, DialogContent, DialogTitle } from \"@webiny/ui/Dialog\";\nimport { ButtonDefault, ButtonIcon, ButtonPrimary } from \"@webiny/ui/Button\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { ContentEntriesProvider } from \"~/admin/views/contentEntries/ContentEntriesContext\";\nimport { ContentEntryProvider } from \"~/admin/views/contentEntries/ContentEntry/ContentEntryContext\";\nimport { ContentEntryForm } from \"~/admin/components/ContentEntryForm/ContentEntryForm\";\nimport { useQuery } from \"~/admin/hooks\";\nimport {\n GET_CONTENT_MODEL,\n GetCmsModelQueryResponse,\n GetCmsModelQueryVariables\n} from \"~/admin/graphql/contentModels\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport { useNewRefEntryDialog } from \"../hooks/useNewRefEntryDialog\";\nimport { CmsContentEntry, CmsModel } from \"~/types\";\nimport { ModelProvider } from \"~/admin/components/ModelProvider\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst dialogContentStyles = css`\n width: 786px;\n`;\n\nconst dialogContainerStyles = css`\n /*\n* By default, a Dialog component has the \"z-index\" value of 20.\n* As we are rendering the content entry form in a \"Dialog\", the File Manager view triggered by a \"file\" field\n* will render below the source form, rendering it useless for the user.\n*\n* To fix that issue, we're setting the \"z-index\" CSS property for this particular Dialog to less than 18,\n* which is the \"z-index\" value assigned to File Manager view, so that it will render below the File Manager view as expected.\n*/\n\n &.mdc-dialog {\n z-index: 17;\n }\n`;\n\ninterface EntryFormProps {\n onCreate: (entry: CmsContentEntry) => void;\n}\nconst EntryForm: React.FC<EntryFormProps> = ({ onCreate }) => {\n const { setFormRef, contentModel } = useContentEntry();\n\n return (\n <ModelProvider model={contentModel}>\n <ContentEntryForm\n onSubmit={data => {\n /**\n * We know that data is CmsContentEntry.\n */\n return onCreate(data as unknown as CmsContentEntry);\n }}\n onForm={form => setFormRef(form)}\n entry={{}}\n addEntryToListCache={false}\n />\n </ModelProvider>\n );\n};\n\nconst DialogSaveButton: React.FC = () => {\n const { form } = useContentEntry();\n\n return <ButtonPrimary onClick={form.current.submit}>{t`Create Entry`}</ButtonPrimary>;\n};\n\nconst DefaultButton = styled(ButtonDefault)`\n margin-left: 32px;\n`;\n\nexport const NewEntryButton = () => {\n const { setOpen } = useNewRefEntryDialog();\n return (\n <DefaultButton small={true} onClick={() => setOpen(true)}>\n <ButtonIcon icon={<AddIcon />} />\n {t`New Entry`}\n </DefaultButton>\n );\n};\n\ninterface NewRefEntryProps {\n modelId: string;\n children: React.ReactElement;\n onChange: (entry: CmsContentEntry) => void;\n}\n\nconst NewRefEntryFormDialog: React.FC<NewRefEntryProps> = ({ modelId, children, onChange }) => {\n const [contentModel, setContentModel] = useState<CmsModel | undefined>(undefined);\n\n const { showSnackbar } = useSnackbar();\n\n useQuery<GetCmsModelQueryResponse, GetCmsModelQueryVariables>(GET_CONTENT_MODEL, {\n skip: !modelId,\n variables: { modelId },\n onCompleted: data => {\n const contentModelData = get(data, \"getContentModel.data\") as unknown as CmsModel;\n if (contentModelData) {\n setContentModel(contentModelData);\n return;\n }\n\n showSnackbar(\n t`Could not load content for model \"{modelId}\". Redirecting...`({\n modelId\n })\n );\n }\n });\n\n const { open, setOpen } = useNewRefEntryDialog();\n const hideDialog = useCallback(() => setOpen(false), []);\n\n const onCreate = useCallback(\n (entry: CmsContentEntry) => {\n if (!contentModel) {\n setOpen(false);\n return;\n }\n onChange({\n ...entry,\n /*\n * Format data for AutoComplete.\n */\n published: get(entry, \"meta.status\") === \"published\",\n modelId: contentModel.modelId,\n modelName: contentModel.name\n });\n setOpen(false);\n },\n [onChange, contentModel]\n );\n\n if (!contentModel) {\n return children;\n }\n\n return (\n <ContentEntriesProvider\n contentModel={contentModel}\n key={contentModel.modelId}\n insideDialog={true}\n >\n <ContentEntryProvider isNewEntry={() => true} getContentId={() => null}>\n <Dialog open={open} onClose={hideDialog} className={dialogContainerStyles}>\n <DialogTitle>\n {t`New {modelName} Entry`({ modelName: contentModel.name })}\n </DialogTitle>\n <DialogContent className={dialogContentStyles}>\n <EntryForm onCreate={onCreate} />\n </DialogContent>\n <DialogActions>\n <DialogCancel>{t`Cancel`}</DialogCancel>\n <DialogSaveButton />\n </DialogActions>\n </Dialog>\n {children}\n </ContentEntryProvider>\n </ContentEntriesProvider>\n );\n};\n\nexport default NewRefEntryFormDialog;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_get","_interopRequireDefault","_emotion","_styled","_Dialog","_Button","_appAdmin","_i18n","_add18px","_ContentEntriesContext","_ContentEntryContext","_ContentEntryForm","_hooks","_contentModels","_useContentEntry3","_useNewRefEntryDialog3","_ModelProvider","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","t","i18n","ns","dialogContentStyles","css","dialogContainerStyles","EntryForm","_ref","onCreate","_useContentEntry","useContentEntry","setFormRef","contentModel","default","createElement","ModelProvider","model","ContentEntryForm","onSubmit","data","onForm","form","entry","addEntryToListCache","DialogSaveButton","_useContentEntry2","ButtonPrimary","onClick","current","submit","_taggedTemplateLiteral2","DefaultButton","styled","ButtonDefault","label","target","NewEntryButton","_useNewRefEntryDialog","useNewRefEntryDialog","setOpen","small","ButtonIcon","icon","ReactComponent","exports","NewRefEntryFormDialog","_ref2","modelId","children","onChange","_useState","useState","undefined","_useState2","_slicedToArray2","setContentModel","_useSnackbar","useSnackbar","showSnackbar","useQuery","GET_CONTENT_MODEL","skip","variables","onCompleted","contentModelData","get","_useNewRefEntryDialog2","open","hideDialog","useCallback","_objectSpread2","published","modelName","name","ContentEntriesProvider","key","insideDialog","ContentEntryProvider","isNewEntry","getContentId","Dialog","onClose","className","DialogTitle","DialogContent","DialogActions","DialogCancel","_default"],"sources":["NewRefEntryFormDialog.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport { Dialog, DialogActions, DialogCancel, DialogContent, DialogTitle } from \"@webiny/ui/Dialog\";\nimport { ButtonDefault, ButtonIcon, ButtonPrimary } from \"@webiny/ui/Button\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { ContentEntriesProvider } from \"~/admin/views/contentEntries/ContentEntriesContext\";\nimport { ContentEntryProvider } from \"~/admin/views/contentEntries/ContentEntry/ContentEntryContext\";\nimport { ContentEntryForm } from \"~/admin/components/ContentEntryForm/ContentEntryForm\";\nimport { useQuery } from \"~/admin/hooks\";\nimport {\n GET_CONTENT_MODEL,\n GetCmsModelQueryResponse,\n GetCmsModelQueryVariables\n} from \"~/admin/graphql/contentModels\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport { useNewRefEntryDialog } from \"../hooks/useNewRefEntryDialog\";\nimport { CmsContentEntry, CmsModel } from \"~/types\";\nimport { ModelProvider } from \"~/admin/components/ModelProvider\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst dialogContentStyles = css`\n width: 786px;\n`;\n\nconst dialogContainerStyles = css`\n /*\n* By default, a Dialog component has the \"z-index\" value of 20.\n* As we are rendering the content entry form in a \"Dialog\", the File Manager view triggered by a \"file\" field\n* will render below the source form, rendering it useless for the user.\n*\n* To fix that issue, we're setting the \"z-index\" CSS property for this particular Dialog to less than 18,\n* which is the \"z-index\" value assigned to File Manager view, so that it will render below the File Manager view as expected.\n*/\n\n &.mdc-dialog {\n z-index: 17;\n }\n`;\n\ninterface EntryFormProps {\n onCreate: (entry: CmsContentEntry) => void;\n}\nconst EntryForm: React.FC<EntryFormProps> = ({ onCreate }) => {\n const { setFormRef, contentModel } = useContentEntry();\n\n return (\n <ModelProvider model={contentModel}>\n <ContentEntryForm\n onSubmit={data => {\n /**\n * We know that data is CmsContentEntry.\n */\n return onCreate(data as unknown as CmsContentEntry);\n }}\n onForm={form => setFormRef(form)}\n entry={{}}\n addEntryToListCache={false}\n />\n </ModelProvider>\n );\n};\n\nconst DialogSaveButton: React.FC = () => {\n const { form } = useContentEntry();\n\n return <ButtonPrimary onClick={form.current.submit}>{t`Create Entry`}</ButtonPrimary>;\n};\n\nconst DefaultButton = styled(ButtonDefault)`\n margin-left: 32px;\n`;\n\nexport const NewEntryButton = () => {\n const { setOpen } = useNewRefEntryDialog();\n return (\n <DefaultButton small={true} onClick={() => setOpen(true)}>\n <ButtonIcon icon={<AddIcon />} />\n {t`New Entry`}\n </DefaultButton>\n );\n};\n\ninterface NewRefEntryProps {\n modelId: string;\n children: React.ReactElement;\n onChange: (entry: CmsContentEntry) => void;\n}\n\nconst NewRefEntryFormDialog: React.FC<NewRefEntryProps> = ({ modelId, children, onChange }) => {\n const [contentModel, setContentModel] = useState<CmsModel | undefined>(undefined);\n\n const { showSnackbar } = useSnackbar();\n\n useQuery<GetCmsModelQueryResponse, GetCmsModelQueryVariables>(GET_CONTENT_MODEL, {\n skip: !modelId,\n variables: { modelId },\n onCompleted: data => {\n const contentModelData = get(data, \"getContentModel.data\") as unknown as CmsModel;\n if (contentModelData) {\n setContentModel(contentModelData);\n return;\n }\n\n showSnackbar(\n t`Could not load content for model \"{modelId}\". Redirecting...`({\n modelId\n })\n );\n }\n });\n\n const { open, setOpen } = useNewRefEntryDialog();\n const hideDialog = useCallback(() => setOpen(false), []);\n\n const onCreate = useCallback(\n (entry: CmsContentEntry) => {\n if (!contentModel) {\n setOpen(false);\n return;\n }\n onChange({\n ...entry,\n /*\n * Format data for AutoComplete.\n */\n published: get(entry, \"meta.status\") === \"published\",\n modelId: contentModel.modelId,\n modelName: contentModel.name\n });\n setOpen(false);\n },\n [onChange, contentModel]\n );\n\n if (!contentModel) {\n return children;\n }\n\n return (\n <ContentEntriesProvider\n contentModel={contentModel}\n key={contentModel.modelId}\n insideDialog={true}\n >\n <ContentEntryProvider isNewEntry={() => true} getContentId={() => null}>\n <Dialog open={open} onClose={hideDialog} className={dialogContainerStyles}>\n <DialogTitle>\n {t`New {modelName} Entry`({ modelName: contentModel.name })}\n </DialogTitle>\n <DialogContent className={dialogContentStyles}>\n <EntryForm onCreate={onCreate} />\n </DialogContent>\n <DialogActions>\n <DialogCancel>{t`Cancel`}</DialogCancel>\n <DialogSaveButton />\n </DialogActions>\n </Dialog>\n {children}\n </ContentEntryProvider>\n </ContentEntriesProvider>\n );\n};\n\nexport default NewRefEntryFormDialog;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEntryUrl","modelId","id","encodeURIComponent","createNewEntryUrl"],"sources":["createEntryUrl.ts"],"sourcesContent":["export interface CreateEntryUrlParams {\n id: string;\n modelId: string;\n}\n\nexport const createEntryUrl = ({ modelId, id }: CreateEntryUrlParams): string => {\n return `/cms/content-entries/${modelId}?id=${encodeURIComponent(id)}`;\n};\n\nexport const createNewEntryUrl = (modelId: string): string => {\n return `/cms/content-entries/${modelId}?new=true`;\n};\n"],"mappings":";;;;;;AAKO,IAAMA,cAAc,GAAG,SAAjBA,
|
|
1
|
+
{"version":3,"names":["createEntryUrl","_ref","modelId","id","concat","encodeURIComponent","exports","createNewEntryUrl"],"sources":["createEntryUrl.ts"],"sourcesContent":["export interface CreateEntryUrlParams {\n id: string;\n modelId: string;\n}\n\nexport const createEntryUrl = ({ modelId, id }: CreateEntryUrlParams): string => {\n return `/cms/content-entries/${modelId}?id=${encodeURIComponent(id)}`;\n};\n\nexport const createNewEntryUrl = (modelId: string): string => {\n return `/cms/content-entries/${modelId}?new=true`;\n};\n"],"mappings":";;;;;;AAKO,IAAMA,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAAsD;EAAA,IAAhDC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,EAAE,GAAAF,IAAA,CAAFE,EAAE;EACxC,+BAAAC,MAAA,CAA+BF,OAAO,UAAAE,MAAA,CAAOC,kBAAkB,CAACF,EAAE,CAAC;AACvE,CAAC;AAACG,OAAA,CAAAN,cAAA,GAAAA,cAAA;AAEK,IAAMO,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIL,OAAe,EAAa;EAC1D,+BAAAE,MAAA,CAA+BF,OAAO;AAC1C,CAAC;AAACI,OAAA,CAAAC,iBAAA,GAAAA,iBAAA"}
|
|
@@ -15,6 +15,11 @@ var fields = "\ndata {\n id\n entryId\n status\n title\n descript
|
|
|
15
15
|
* Common variables
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
+
/**
|
|
19
|
+
* #########################
|
|
20
|
+
* Search Entries Query Response
|
|
21
|
+
*/
|
|
22
|
+
|
|
18
23
|
var SEARCH_CONTENT_ENTRIES = (0, _graphqlTag.default)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n query CmsSearchContentEntries($modelIds: [ID!]!, $query: String, $limit: Int) {\n content: searchContentEntries(modelIds: $modelIds, query: $query, limit: $limit) {\n ", "\n }\n }\n"])), fields);
|
|
19
24
|
/**
|
|
20
25
|
* #########################
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["fields","SEARCH_CONTENT_ENTRIES","gql","GET_CONTENT_ENTRIES","GET_CONTENT_ENTRY"],"sources":["graphql.ts"],"sourcesContent":["import gql from \"graphql-tag\";\nimport { CmsErrorResponse } from \"~/types\";\nimport { CmsReferenceContentEntry } from \"./types\";\n\nconst fields = `\ndata {\n id\n entryId\n status\n title\n description\n image\n createdOn\n savedOn\n createdBy {\n id\n type\n displayName\n }\n modifiedBy {\n id\n type\n displayName\n }\n model {\n modelId\n name\n }\n published {\n id\n entryId\n title\n }\n}\nerror {\n code\n message\n data\n}`;\n\n/**\n * #########################\n * Common variables\n */\nexport interface CmsEntryGetEntryVariable {\n modelId: string;\n id: string;\n}\n\n/**\n * #########################\n * Search Entries Query Response\n */\n\nexport interface CmsEntrySearchQueryResponse {\n content: {\n data: CmsReferenceContentEntry[];\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntrySearchQueryVariables {\n modelIds: string[];\n query?: string;\n limit?: number;\n}\nexport const SEARCH_CONTENT_ENTRIES = gql`\n query CmsSearchContentEntries($modelIds: [ID!]!, $query: String, $limit: Int) {\n content: searchContentEntries(modelIds: $modelIds, query: $query, limit: $limit) {\n ${fields}\n }\n }\n`;\n/**\n * #########################\n * Get Entries Query Response\n */\n\nexport interface CmsEntryGetListResponse {\n latest: {\n data: CmsReferenceContentEntry[];\n error: CmsErrorResponse | null;\n };\n published: {\n data: CmsReferenceContentEntry[];\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryGetListVariables {\n entries: CmsEntryGetEntryVariable[];\n}\nexport const GET_CONTENT_ENTRIES = gql`\n query CmsGetContentEntries($entries: [CmsModelEntryInput!]!) {\n latest: getLatestContentEntries(entries: $entries) {\n ${fields}\n }\n published: getPublishedContentEntries(entries: $entries) {\n ${fields}\n }\n }\n`;\n\n/**\n * #########################\n * Get Entry Query Response\n */\nexport interface CmsEntryGetQueryResponse {\n latest: {\n data: CmsReferenceContentEntry | null;\n error: CmsErrorResponse | null;\n };\n published: {\n data: CmsReferenceContentEntry | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryGetQueryVariables {\n entry: CmsEntryGetEntryVariable;\n}\n\nexport const GET_CONTENT_ENTRY = gql`\n query CmsGetContentEntry($entry: CmsModelEntryInput!) {\n latest: getLatestContentEntry(entry: $entry) {\n ${fields}\n }\n published: getPublishedContentEntry(entry: $entry) {\n ${fields}\n }\n }\n`;\n"],"mappings":";;;;;;;;AAAA;AAA8B;AAI9B,
|
|
1
|
+
{"version":3,"names":["_graphqlTag","_interopRequireDefault","require","_templateObject","_templateObject2","_templateObject3","fields","SEARCH_CONTENT_ENTRIES","gql","_taggedTemplateLiteral2","default","exports","GET_CONTENT_ENTRIES","GET_CONTENT_ENTRY"],"sources":["graphql.ts"],"sourcesContent":["import gql from \"graphql-tag\";\nimport { CmsErrorResponse } from \"~/types\";\nimport { CmsReferenceContentEntry } from \"./types\";\n\nconst fields = `\ndata {\n id\n entryId\n status\n title\n description\n image\n createdOn\n savedOn\n createdBy {\n id\n type\n displayName\n }\n modifiedBy {\n id\n type\n displayName\n }\n model {\n modelId\n name\n }\n published {\n id\n entryId\n title\n }\n}\nerror {\n code\n message\n data\n}`;\n\n/**\n * #########################\n * Common variables\n */\nexport interface CmsEntryGetEntryVariable {\n modelId: string;\n id: string;\n}\n\n/**\n * #########################\n * Search Entries Query Response\n */\n\nexport interface CmsEntrySearchQueryResponse {\n content: {\n data: CmsReferenceContentEntry[];\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntrySearchQueryVariables {\n modelIds: string[];\n query?: string;\n limit?: number;\n}\nexport const SEARCH_CONTENT_ENTRIES = gql`\n query CmsSearchContentEntries($modelIds: [ID!]!, $query: String, $limit: Int) {\n content: searchContentEntries(modelIds: $modelIds, query: $query, limit: $limit) {\n ${fields}\n }\n }\n`;\n/**\n * #########################\n * Get Entries Query Response\n */\n\nexport interface CmsEntryGetListResponse {\n latest: {\n data: CmsReferenceContentEntry[];\n error: CmsErrorResponse | null;\n };\n published: {\n data: CmsReferenceContentEntry[];\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryGetListVariables {\n entries: CmsEntryGetEntryVariable[];\n}\nexport const GET_CONTENT_ENTRIES = gql`\n query CmsGetContentEntries($entries: [CmsModelEntryInput!]!) {\n latest: getLatestContentEntries(entries: $entries) {\n ${fields}\n }\n published: getPublishedContentEntries(entries: $entries) {\n ${fields}\n }\n }\n`;\n\n/**\n * #########################\n * Get Entry Query Response\n */\nexport interface CmsEntryGetQueryResponse {\n latest: {\n data: CmsReferenceContentEntry | null;\n error: CmsErrorResponse | null;\n };\n published: {\n data: CmsReferenceContentEntry | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryGetQueryVariables {\n entry: CmsEntryGetEntryVariable;\n}\n\nexport const GET_CONTENT_ENTRY = gql`\n query CmsGetContentEntry($entry: CmsModelEntryInput!) {\n latest: getLatestContentEntry(entry: $entry) {\n ${fields}\n }\n published: getPublishedContentEntry(entry: $entry) {\n ${fields}\n }\n }\n`;\n"],"mappings":";;;;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA8B,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA;AAI9B,IAAMC,MAAM,uaAkCV;;AAEF;AACA;AACA;AACA;;AAMA;AACA;AACA;AACA;;AAaO,IAAMC,sBAAsB,OAAGC,mBAAG,EAAAL,eAAA,KAAAA,eAAA,OAAAM,uBAAA,CAAAC,OAAA,iOAG3BJ,MAAM,CAGnB;AACD;AACA;AACA;AACA;AAHAK,OAAA,CAAAJ,sBAAA,GAAAA,sBAAA;AAkBO,IAAMK,mBAAmB,OAAGJ,mBAAG,EAAAJ,gBAAA,KAAAA,gBAAA,OAAAK,uBAAA,CAAAC,OAAA,mRAGxBJ,MAAM,EAGNA,MAAM,CAGnB;;AAED;AACA;AACA;AACA;AAHAK,OAAA,CAAAC,mBAAA,GAAAA,mBAAA;AAkBO,IAAMC,iBAAiB,OAAGL,mBAAG,EAAAH,gBAAA,KAAAA,gBAAA,OAAAI,uBAAA,CAAAC,OAAA,gQAGtBJ,MAAM,EAGNA,MAAM,CAGnB;AAACK,OAAA,CAAAE,iBAAA,GAAAA,iBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["convertReferenceEntryToOption","entry","id","entryId","modelId","model","modelName","name","published","latest","status","title","convertReferenceEntriesToOptionCollection","entries","reduce","collection","getEntryStatus","item","getItemStatusText"],"sources":["helpers.ts"],"sourcesContent":["import { CmsReferenceContentEntry, OptionItem, OptionItemCollection } from \"./types\";\nimport { CmsContentEntryStatusType } from \"~/types\";\n\nexport const convertReferenceEntryToOption = (entry: CmsReferenceContentEntry): OptionItem => {\n return {\n id: entry.id,\n entryId: entry.entryId,\n modelId: entry.model.modelId,\n modelName: entry.model.name,\n published: entry.published ? entry.published.id : null,\n latest: entry.id,\n status: entry.status,\n name: entry.title\n };\n};\n\nexport const convertReferenceEntriesToOptionCollection = (\n entries: CmsReferenceContentEntry[]\n): OptionItemCollection => {\n return entries.reduce((collection, entry) => {\n collection[entry.entryId] = convertReferenceEntryToOption(entry);\n return collection;\n }, {} as OptionItemCollection);\n};\n\nexport const getEntryStatus = (item: OptionItem): CmsContentEntryStatusType => {\n if (item.status === \"published\") {\n return \"published\";\n } else if (item.status === \"unpublished\" || (!item.published && item.status === \"draft\")) {\n return \"unpublished\";\n }\n return \"draft\";\n};\n\nexport const getItemStatusText = (item: OptionItem): string => {\n const status = getEntryStatus(item);\n switch (status) {\n case \"published\":\n return \"This entry is published.\";\n case \"unpublished\":\n return \"This entry has not been published.\";\n default:\n return \"Latest revision of this entry is in draft stage.\";\n }\n};\n"],"mappings":";;;;;;AAGO,IAAMA,6BAA6B,GAAG,SAAhCA,
|
|
1
|
+
{"version":3,"names":["convertReferenceEntryToOption","entry","id","entryId","modelId","model","modelName","name","published","latest","status","title","exports","convertReferenceEntriesToOptionCollection","entries","reduce","collection","getEntryStatus","item","getItemStatusText"],"sources":["helpers.ts"],"sourcesContent":["import { CmsReferenceContentEntry, OptionItem, OptionItemCollection } from \"./types\";\nimport { CmsContentEntryStatusType } from \"~/types\";\n\nexport const convertReferenceEntryToOption = (entry: CmsReferenceContentEntry): OptionItem => {\n return {\n id: entry.id,\n entryId: entry.entryId,\n modelId: entry.model.modelId,\n modelName: entry.model.name,\n published: entry.published ? entry.published.id : null,\n latest: entry.id,\n status: entry.status,\n name: entry.title\n };\n};\n\nexport const convertReferenceEntriesToOptionCollection = (\n entries: CmsReferenceContentEntry[]\n): OptionItemCollection => {\n return entries.reduce((collection, entry) => {\n collection[entry.entryId] = convertReferenceEntryToOption(entry);\n return collection;\n }, {} as OptionItemCollection);\n};\n\nexport const getEntryStatus = (item: OptionItem): CmsContentEntryStatusType => {\n if (item.status === \"published\") {\n return \"published\";\n } else if (item.status === \"unpublished\" || (!item.published && item.status === \"draft\")) {\n return \"unpublished\";\n }\n return \"draft\";\n};\n\nexport const getItemStatusText = (item: OptionItem): string => {\n const status = getEntryStatus(item);\n switch (status) {\n case \"published\":\n return \"This entry is published.\";\n case \"unpublished\":\n return \"This entry has not been published.\";\n default:\n return \"Latest revision of this entry is in draft stage.\";\n }\n};\n"],"mappings":";;;;;;AAGO,IAAMA,6BAA6B,GAAG,SAAhCA,6BAA6BA,CAAIC,KAA+B,EAAiB;EAC1F,OAAO;IACHC,EAAE,EAAED,KAAK,CAACC,EAAE;IACZC,OAAO,EAAEF,KAAK,CAACE,OAAO;IACtBC,OAAO,EAAEH,KAAK,CAACI,KAAK,CAACD,OAAO;IAC5BE,SAAS,EAAEL,KAAK,CAACI,KAAK,CAACE,IAAI;IAC3BC,SAAS,EAAEP,KAAK,CAACO,SAAS,GAAGP,KAAK,CAACO,SAAS,CAACN,EAAE,GAAG,IAAI;IACtDO,MAAM,EAAER,KAAK,CAACC,EAAE;IAChBQ,MAAM,EAAET,KAAK,CAACS,MAAM;IACpBH,IAAI,EAAEN,KAAK,CAACU;EAChB,CAAC;AACL,CAAC;AAACC,OAAA,CAAAZ,6BAAA,GAAAA,6BAAA;AAEK,IAAMa,yCAAyC,GAAG,SAA5CA,yCAAyCA,CAClDC,OAAmC,EACZ;EACvB,OAAOA,OAAO,CAACC,MAAM,CAAC,UAACC,UAAU,EAAEf,KAAK,EAAK;IACzCe,UAAU,CAACf,KAAK,CAACE,OAAO,CAAC,GAAGH,6BAA6B,CAACC,KAAK,CAAC;IAChE,OAAOe,UAAU;EACrB,CAAC,EAAE,CAAC,CAAyB,CAAC;AAClC,CAAC;AAACJ,OAAA,CAAAC,yCAAA,GAAAA,yCAAA;AAEK,IAAMI,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,IAAgB,EAAgC;EAC3E,IAAIA,IAAI,CAACR,MAAM,KAAK,WAAW,EAAE;IAC7B,OAAO,WAAW;EACtB,CAAC,MAAM,IAAIQ,IAAI,CAACR,MAAM,KAAK,aAAa,IAAK,CAACQ,IAAI,CAACV,SAAS,IAAIU,IAAI,CAACR,MAAM,KAAK,OAAQ,EAAE;IACtF,OAAO,aAAa;EACxB;EACA,OAAO,OAAO;AAClB,CAAC;AAACE,OAAA,CAAAK,cAAA,GAAAA,cAAA;AAEK,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAID,IAAgB,EAAa;EAC3D,IAAMR,MAAM,GAAGO,cAAc,CAACC,IAAI,CAAC;EACnC,QAAQR,MAAM;IACV,KAAK,WAAW;MACZ,OAAO,0BAA0B;IACrC,KAAK,aAAa;MACd,OAAO,oCAAoC;IAC/C;MACI,OAAO,kDAAkD;EACjE;AACJ,CAAC;AAACE,OAAA,CAAAO,iBAAA,GAAAA,iBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ModelId","styled","color","iconButtonClassName","css","verticalAlign","renderItem","props","createEntryUrl","name","modelName","renderListItemOptions","item"],"sources":["renderItem.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { createEntryUrl } from \"./createEntryUrl\";\nimport { Link } from \"@webiny/react-router\";\nimport { OptionItem } from \"./types\";\nimport { EntryStatus } from \"./EntryStatus\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { css } from \"emotion\";\n\nconst ModelId = styled(\"span\")({\n color: \"var(--mdc-theme-text-secondary-on-background) !important\"\n});\n\nconst iconButtonClassName = css({\n verticalAlign: \"top\"\n});\n\nexport interface RenderItemProps {\n name: string;\n modelName: string;\n modelId: string;\n id: string;\n}\nexport const renderItem: React.FC<RenderItemProps> = props => {\n return (\n <Typography use={\"body2\"}>\n <Link to={createEntryUrl(props)}>{props.name}</Link>\n <br />\n <ModelId>Model: {props.modelName}</ModelId>\n </Typography>\n );\n};\n\nexport const renderListItemOptions = (item: OptionItem) => {\n return (\n <IconButton\n icon={<EntryStatus item={item} placement={\"top\"} />}\n className={iconButtonClassName}\n />\n );\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_styled","_Typography","_createEntryUrl","_reactRouter","_EntryStatus","_Button","_emotion","ModelId","styled","target","label","color","iconButtonClassName","css","verticalAlign","renderItem","props","default","createElement","Typography","use","Link","to","createEntryUrl","name","modelName","exports","renderListItemOptions","item","IconButton","icon","EntryStatus","placement","className"],"sources":["renderItem.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { createEntryUrl } from \"./createEntryUrl\";\nimport { Link } from \"@webiny/react-router\";\nimport { OptionItem } from \"./types\";\nimport { EntryStatus } from \"./EntryStatus\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { css } from \"emotion\";\n\nconst ModelId = styled(\"span\")({\n color: \"var(--mdc-theme-text-secondary-on-background) !important\"\n});\n\nconst iconButtonClassName = css({\n verticalAlign: \"top\"\n});\n\nexport interface RenderItemProps {\n name: string;\n modelName: string;\n modelId: string;\n id: string;\n}\nexport const renderItem: React.FC<RenderItemProps> = props => {\n return (\n <Typography use={\"body2\"}>\n <Link to={createEntryUrl(props)}>{props.name}</Link>\n <br />\n <ModelId>Model: {props.modelName}</ModelId>\n </Typography>\n );\n};\n\nexport const renderListItemOptions = (item: OptionItem) => {\n return (\n <IconButton\n icon={<EntryStatus item={item} placement={\"top\"} />}\n className={iconButtonClassName}\n />\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AAEA,IAAAK,YAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AAEA,IAAMQ,OAAO,oBAAGC,eAAM,EAAC,MAAM;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EAC3BC,KAAK,EAAE;AACX,CAAC,CAAC;AAEF,IAAMC,mBAAmB,gBAAG,IAAAC,YAAG,EAAC;EAC5BC,aAAa,EAAE;AACnB,CAAC,+BAAC;AAQK,IAAMC,UAAqC,GAAG,SAAxCA,UAAqCA,CAAGC,KAAK,EAAI;EAC1D,oBACInB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACjB,WAAA,CAAAkB,UAAU;IAACC,GAAG,EAAE;EAAQ,gBACrBvB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACf,YAAA,CAAAkB,IAAI;IAACC,EAAE,EAAE,IAAAC,8BAAc,EAACP,KAAK;EAAE,GAAEA,KAAK,CAACQ,IAAW,CAAC,eACpD3B,MAAA,CAAAoB,OAAA,CAAAC,aAAA,WAAK,CAAC,eACNrB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACX,OAAO,QAAC,SAAO,EAACS,KAAK,CAACS,SAAmB,CAClC,CAAC;AAErB,CAAC;AAACC,OAAA,CAAAX,UAAA,GAAAA,UAAA;AAEK,IAAMY,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,IAAgB,EAAK;EACvD,oBACI/B,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACb,OAAA,CAAAwB,UAAU;IACPC,IAAI,eAAEjC,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACd,YAAA,CAAA2B,WAAW;MAACH,IAAI,EAAEA,IAAK;MAACI,SAAS,EAAE;IAAM,CAAE,CAAE;IACpDC,SAAS,EAAErB;EAAoB,CAClC,CAAC;AAEV,CAAC;AAACc,OAAA,CAAAC,qBAAA,GAAAA,qBAAA"}
|