@webiny/app-headless-cms 5.33.5 → 5.34.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HeadlessCMS.js +4 -0
- package/HeadlessCMS.js.map +1 -1
- package/admin/components/ContentEntryForm/ContentEntryForm.js +35 -32
- package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
- package/admin/components/ContentEntryForm/Fields.d.ts +2 -2
- package/admin/components/ContentEntryForm/Fields.js.map +1 -1
- package/admin/components/ContentEntryForm/Label.js +1 -1
- package/admin/components/ContentEntryForm/Label.js.map +1 -1
- package/admin/components/ContentEntryForm/RenderFieldElement.d.ts +2 -2
- package/admin/components/ContentEntryForm/RenderFieldElement.js +6 -2
- package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
- package/admin/components/ContentEntryForm/functions/getValue.d.ts +2 -2
- package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
- package/admin/components/ContentEntryForm/functions/setValue.d.ts +2 -2
- package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
- package/admin/components/ContentEntryForm/useBind.d.ts +2 -2
- package/admin/components/ContentEntryForm/useBind.js +11 -8
- package/admin/components/ContentEntryForm/useBind.js.map +1 -1
- package/admin/components/ContentEntryForm/useContentEntryForm.d.ts +1 -2
- package/admin/components/ContentEntryForm/useContentEntryForm.js +187 -147
- package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
- package/admin/components/ContentModelEditor/{Context.d.ts → ContentModelEditorProvider.d.ts} +10 -4
- package/admin/components/ContentModelEditor/{Context.js → ContentModelEditorProvider.js} +60 -116
- package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -0
- package/admin/components/ContentModelEditor/Editor.js +5 -5
- package/admin/components/ContentModelEditor/Editor.js.map +1 -1
- package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
- package/admin/components/ContentModelEditor/PreviewTab.js +3 -3
- package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
- package/admin/components/ContentModelEditor/index.d.ts +2 -0
- package/admin/components/ContentModelEditor/index.js +31 -0
- package/admin/components/ContentModelEditor/index.js.map +1 -0
- package/admin/components/ContentModelEditor/useModelEditor.d.ts +1 -0
- package/admin/components/ContentModelEditor/{useContentModelEditor.js → useModelEditor.js} +4 -4
- package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -0
- package/admin/{views/contentModelGroups → components}/DelayedOnChange.d.ts +0 -0
- package/admin/{views/contentModelGroups → components}/DelayedOnChange.js +0 -0
- package/admin/{views/contentModelGroups → components}/DelayedOnChange.js.map +0 -0
- package/admin/components/Dialog.d.ts +4 -0
- package/admin/components/Dialog.js +32 -0
- package/admin/components/Dialog.js.map +1 -0
- package/admin/components/DropZone/Center.d.ts +2 -1
- package/admin/components/DropZone/Center.js +38 -44
- package/admin/components/DropZone/Center.js.map +1 -1
- package/admin/components/Droppable.d.ts +1 -0
- package/admin/components/Droppable.js +12 -1
- package/admin/components/Droppable.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.d.ts +2 -8
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +20 -9
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.d.ts +2 -9
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +35 -21
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.d.ts +2 -9
- package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +14 -12
- package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.d.ts +10 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js +42 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.d.ts +8 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js +227 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/getValidators.d.ts +13 -0
- package/admin/components/FieldEditor/EditFieldDialog/getValidators.js +115 -0
- package/admin/components/FieldEditor/EditFieldDialog/getValidators.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog.d.ts +3 -3
- package/admin/components/FieldEditor/EditFieldDialog.js +117 -260
- package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
- package/admin/components/FieldEditor/Field.d.ts +5 -5
- package/admin/components/FieldEditor/Field.js +17 -14
- package/admin/components/FieldEditor/Field.js.map +1 -1
- package/admin/components/FieldEditor/FieldEditor.d.ts +4 -4
- package/admin/components/FieldEditor/FieldEditor.js +85 -31
- package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
- package/admin/components/FieldEditor/FieldEditorContext.d.ts +16 -16
- package/admin/components/FieldEditor/FieldEditorContext.js +18 -18
- package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
- package/admin/components/FieldEditor/Styled.js +4 -13
- package/admin/components/FieldEditor/Styled.js.map +1 -1
- package/admin/components/FieldEditor/index.d.ts +1 -1
- package/admin/components/FieldEditor/index.js +3 -3
- package/admin/components/FieldEditor/index.js.map +1 -1
- package/admin/components/FieldEditor/useModelFieldEditor.d.ts +2 -0
- package/admin/components/FieldEditor/useModelFieldEditor.js +20 -0
- package/admin/components/FieldEditor/useModelFieldEditor.js.map +1 -0
- package/admin/components/FieldEditor/utils/deleteField.d.ts +2 -2
- package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
- package/admin/components/FieldEditor/utils/getFieldPosition.d.ts +2 -2
- package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
- package/admin/components/FieldEditor/utils/moveField.d.ts +3 -3
- package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
- package/admin/components/IconPicker.d.ts +7 -0
- package/admin/{views/contentModelGroups → components}/IconPicker.js +34 -31
- package/admin/components/IconPicker.js.map +1 -0
- package/admin/components/ModelFieldProvider/ModelFieldContext.d.ts +36 -0
- package/admin/components/ModelFieldProvider/ModelFieldContext.js +24 -0
- package/admin/components/ModelFieldProvider/ModelFieldContext.js.map +1 -0
- package/admin/components/ModelFieldProvider/index.d.ts +2 -0
- package/admin/components/ModelFieldProvider/index.js +31 -0
- package/admin/components/ModelFieldProvider/index.js.map +1 -0
- package/admin/components/ModelFieldProvider/useModelField.d.ts +35 -0
- package/admin/components/ModelFieldProvider/useModelField.js +42 -0
- package/admin/components/ModelFieldProvider/useModelField.js.map +1 -0
- package/admin/components/ModelProvider/ModelContext.d.ts +9 -0
- package/admin/components/ModelProvider/ModelContext.js +24 -0
- package/admin/components/ModelProvider/ModelContext.js.map +1 -0
- package/admin/components/ModelProvider/index.d.ts +2 -0
- package/admin/components/ModelProvider/index.js +31 -0
- package/admin/components/ModelProvider/index.js.map +1 -0
- package/admin/components/ModelProvider/useModel.d.ts +9 -0
- package/admin/components/ModelProvider/useModel.js +25 -0
- package/admin/components/ModelProvider/useModel.js.map +1 -0
- package/admin/constants/statusLabels.js +2 -4
- package/admin/constants/statusLabels.js.map +1 -1
- package/admin/graphql/contentEntries.d.ts +2 -29
- package/admin/graphql/contentEntries.js +28 -42
- package/admin/graphql/contentEntries.js.map +1 -1
- package/admin/graphql/contentModels.d.ts +1 -1
- package/admin/graphql/contentModels.js +2 -2
- package/admin/graphql/contentModels.js.map +1 -1
- package/admin/graphql/createFieldsList.d.ts +7 -2
- package/admin/graphql/createFieldsList.js +5 -1
- package/admin/graphql/createFieldsList.js.map +1 -1
- package/admin/hooks/index.d.ts +5 -0
- package/admin/hooks/index.js +47 -2
- package/admin/hooks/index.js.map +1 -1
- package/admin/hooks/usePermission.d.ts +0 -2
- package/admin/hooks/usePermission.js +5 -37
- package/admin/hooks/usePermission.js.map +1 -1
- package/admin/menus/NothingToShowElement.js +4 -1
- package/admin/menus/NothingToShowElement.js.map +1 -1
- package/admin/plugins/arrayUtils.d.ts +12 -0
- package/admin/plugins/arrayUtils.js +53 -0
- package/admin/plugins/arrayUtils.js.map +1 -0
- package/admin/plugins/editor/defaultBar/CreateContentButton.js +4 -4
- package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +5 -5
- package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
- package/admin/plugins/editor/defaultBar/Name/Name.js +4 -4
- package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
- package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +3 -3
- package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
- package/admin/plugins/editor/formSettings/components/GeneralSettings.js +9 -1
- package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
- package/admin/plugins/fieldRenderers/DynamicSection.d.ts +3 -3
- package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateOnly.d.ts +2 -2
- package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.d.ts +2 -2
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.d.ts +2 -2
- package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Input.d.ts +2 -2
- package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/utils.d.ts +2 -2
- package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.d.ts +12 -0
- package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js +107 -0
- package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js.map +1 -0
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.d.ts +11 -0
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +139 -0
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -0
- package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.d.ts +11 -0
- package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js +68 -0
- package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.d.ts +8 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js +63 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js.map +1 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.d.ts +8 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js +53 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js.map +1 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.d.ts +6 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js +22 -0
- package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js.map +1 -0
- package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.d.ts +2 -0
- package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js +66 -0
- package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -0
- package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.d.ts +2 -2
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.d.ts +2 -2
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +10 -9
- package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/useReference.d.ts +2 -2
- package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/useReferences.d.ts +2 -2
- package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.d.ts +2 -2
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +15 -14
- package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
- package/admin/plugins/fieldValidators/date/createDateInputField.d.ts +2 -2
- package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
- package/admin/plugins/fieldValidators/dateGte.d.ts +2 -2
- package/admin/plugins/fieldValidators/dateGte.js +79 -23
- package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
- package/admin/plugins/fieldValidators/dateLte.d.ts +2 -2
- package/admin/plugins/fieldValidators/dateLte.js +79 -23
- package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
- package/admin/plugins/fieldValidators/dynamicZone.d.ts +2 -0
- package/admin/plugins/fieldValidators/dynamicZone.js +215 -0
- package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -0
- package/admin/plugins/fieldValidators/gte.d.ts +2 -2
- package/admin/plugins/fieldValidators/gte.js +44 -5
- package/admin/plugins/fieldValidators/gte.js.map +1 -1
- package/admin/plugins/fieldValidators/in.d.ts +2 -2
- package/admin/plugins/fieldValidators/in.js +44 -5
- package/admin/plugins/fieldValidators/in.js.map +1 -1
- package/admin/plugins/fieldValidators/lte.d.ts +2 -2
- package/admin/plugins/fieldValidators/lte.js +44 -5
- package/admin/plugins/fieldValidators/lte.js.map +1 -1
- package/admin/plugins/fieldValidators/maxLength.d.ts +2 -2
- package/admin/plugins/fieldValidators/maxLength.js +55 -6
- package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
- package/admin/plugins/fieldValidators/minLength.d.ts +2 -2
- package/admin/plugins/fieldValidators/minLength.js +55 -6
- package/admin/plugins/fieldValidators/minLength.js.map +1 -1
- package/admin/plugins/fieldValidators/pattern.d.ts +2 -2
- package/admin/plugins/fieldValidators/pattern.js +129 -60
- package/admin/plugins/fieldValidators/pattern.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/email.d.ts +2 -2
- package/admin/plugins/fieldValidators/patternPlugins/email.js +6 -4
- package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/lowerCase.d.ts +2 -2
- package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js +5 -3
- package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.d.ts +2 -2
- package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js +5 -3
- package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/upperCase.d.ts +2 -2
- package/admin/plugins/fieldValidators/patternPlugins/upperCase.js +5 -3
- package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.d.ts +2 -2
- package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js +5 -3
- package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
- package/admin/plugins/fieldValidators/patternPlugins/url.d.ts +2 -2
- package/admin/plugins/fieldValidators/patternPlugins/url.js +5 -3
- package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
- package/admin/plugins/fieldValidators/required.d.ts +2 -2
- package/admin/plugins/fieldValidators/required.js +8 -2
- package/admin/plugins/fieldValidators/required.js.map +1 -1
- package/admin/plugins/fieldValidators/unique.d.ts +2 -2
- package/admin/plugins/fieldValidators/unique.js +30 -2
- package/admin/plugins/fieldValidators/unique.js.map +1 -1
- package/admin/plugins/fields/PredefinedValuesDynamicFieldset.d.ts +1 -2
- package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js +25 -26
- package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
- package/admin/plugins/fields/boolean.d.ts +2 -2
- package/admin/plugins/fields/boolean.js +6 -5
- package/admin/plugins/fields/boolean.js.map +1 -1
- package/admin/plugins/fields/dateTime.d.ts +2 -2
- package/admin/plugins/fields/dateTime.js +58 -48
- package/admin/plugins/fields/dateTime.js.map +1 -1
- package/admin/plugins/fields/dynamicZone/AddTemplate.d.ts +11 -0
- package/admin/plugins/fields/dynamicZone/AddTemplate.js +114 -0
- package/admin/plugins/fields/dynamicZone/AddTemplate.js.map +1 -0
- package/admin/plugins/fields/dynamicZone/DynamicZone.d.ts +2 -0
- package/admin/plugins/fields/dynamicZone/DynamicZone.js +82 -0
- package/admin/plugins/fields/dynamicZone/DynamicZone.js.map +1 -0
- package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.d.ts +11 -0
- package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js +127 -0
- package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js.map +1 -0
- package/admin/plugins/fields/dynamicZone/TemplateDialog.d.ts +9 -0
- package/admin/plugins/fields/dynamicZone/TemplateDialog.js +174 -0
- package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -0
- package/admin/plugins/fields/dynamicZone/commonValidators.d.ts +2 -0
- package/admin/plugins/fields/dynamicZone/commonValidators.js +26 -0
- package/admin/plugins/fields/dynamicZone/commonValidators.js.map +1 -0
- package/admin/plugins/fields/dynamicZone.d.ts +2 -0
- package/admin/plugins/fields/dynamicZone.js +97 -0
- package/admin/plugins/fields/dynamicZone.js.map +1 -0
- package/admin/plugins/fields/file.d.ts +2 -2
- package/admin/plugins/fields/file.js +6 -5
- package/admin/plugins/fields/file.js.map +1 -1
- package/admin/plugins/fields/longText.d.ts +2 -2
- package/admin/plugins/fields/longText.js +4 -3
- package/admin/plugins/fields/longText.js.map +1 -1
- package/admin/plugins/fields/number.d.ts +2 -2
- package/admin/plugins/fields/number.js +6 -5
- package/admin/plugins/fields/number.js.map +1 -1
- package/admin/plugins/fields/object/ObjectFields.d.ts +2 -2
- package/admin/plugins/fields/object/ObjectFields.js +3 -3
- package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
- package/admin/plugins/fields/object.d.ts +2 -2
- package/admin/plugins/fields/object.js +9 -4
- package/admin/plugins/fields/object.js.map +1 -1
- package/admin/plugins/fields/ref.d.ts +2 -2
- package/admin/plugins/fields/ref.js +108 -100
- package/admin/plugins/fields/ref.js.map +1 -1
- package/admin/plugins/fields/richText.d.ts +2 -2
- package/admin/plugins/fields/richText.js +6 -5
- package/admin/plugins/fields/richText.js.map +1 -1
- package/admin/plugins/fields/text.d.ts +2 -2
- package/admin/plugins/fields/text.js +4 -3
- package/admin/plugins/fields/text.js.map +1 -1
- package/admin/plugins/index.d.ts +28 -1
- package/admin/plugins/permissionRenderer/CmsPermissions.js +2 -7
- package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +11 -17
- package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
- package/admin/plugins/transformers/dateTransformer.d.ts +1 -2
- package/admin/plugins/transformers/dateTransformer.js +3 -3
- package/admin/plugins/transformers/dateTransformer.js.map +1 -1
- package/admin/plugins/transformers/dynamicZoneTransformer.d.ts +2 -0
- package/admin/plugins/transformers/dynamicZoneTransformer.js +45 -0
- package/admin/plugins/transformers/dynamicZoneTransformer.js.map +1 -0
- package/admin/plugins/transformers/index.js +5 -5
- package/admin/plugins/transformers/index.js.map +1 -1
- package/admin/plugins/transformers/numberTransformer.d.ts +1 -2
- package/admin/plugins/transformers/numberTransformer.js +3 -3
- package/admin/plugins/transformers/numberTransformer.js.map +1 -1
- package/admin/views/contentEntries/ContentEntries.js +6 -2
- package/admin/views/contentEntries/ContentEntries.js.map +1 -1
- package/admin/views/contentEntries/ContentEntriesContext.d.ts +4 -4
- package/admin/views/contentEntries/ContentEntriesContext.js +1 -9
- package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
- package/admin/views/contentEntries/ContentEntriesList.js +23 -8
- package/admin/views/contentEntries/ContentEntriesList.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +19 -4
- package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +60 -60
- package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/cache.js +5 -1
- package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.d.ts +1 -1
- package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js +3 -80
- package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.d.ts +1 -1
- package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js +3 -84
- package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/prepareFormData.d.ts +2 -2
- package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/useRevision.d.ts +0 -8
- package/admin/views/contentEntries/ContentEntry/useRevision.js +10 -122
- package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry.js +0 -2
- package/admin/views/contentEntries/ContentEntry.js.map +1 -1
- package/admin/views/contentEntries/experiment/ContentEntriesModule.d.ts +2 -2
- package/admin/views/contentEntries/experiment/ContentEntriesModule.js +27 -14
- package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntries.js +7 -1
- package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +1 -1
- package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
- package/admin/views/contentModelGroups/ContentModelGroupsForm.js +2 -2
- package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
- package/admin/views/contentModels/CloneContentModelDialog.js +4 -17
- package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
- package/admin/views/contentModels/ContentModelEditor.js +2 -2
- package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
- package/admin/views/contentModels/NewContentModelDialog.js +5 -17
- package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
- package/admin/viewsGraphql.js +1 -1
- package/admin/viewsGraphql.js.map +1 -1
- package/allPlugins.d.ts +34 -0
- package/allPlugins.js +95 -0
- package/allPlugins.js.map +1 -0
- package/index.d.ts +1 -0
- package/index.js +15 -1
- package/index.js.map +1 -1
- package/package.json +29 -29
- package/{types.d.ts → types/index.d.ts} +59 -176
- package/types/index.js +44 -0
- package/types/index.js.map +1 -0
- package/types/model.d.ts +83 -0
- package/{types.js → types/model.js} +0 -0
- package/types/model.js.map +1 -0
- package/types/shared.d.ts +5 -0
- package/types/shared.js +5 -0
- package/types/shared.js.map +1 -0
- package/types/validation.d.ts +70 -0
- package/types/validation.js +5 -0
- package/types/validation.js.map +1 -0
- package/utils/CmsModelFieldValidatorConfigAdapter.d.ts +15 -0
- package/utils/CmsModelFieldValidatorConfigAdapter.js +91 -0
- package/utils/CmsModelFieldValidatorConfigAdapter.js.map +1 -0
- package/utils/createTypeName.d.ts +1 -0
- package/utils/createTypeName.js +18 -0
- package/utils/createTypeName.js.map +1 -0
- package/utils/createValidators.d.ts +3 -0
- package/{admin/components/ContentEntryForm/functions → utils}/createValidators.js +37 -16
- package/utils/createValidators.js.map +1 -0
- package/utils/getFetchPolicy.d.ts +6 -0
- package/utils/getFetchPolicy.js +19 -0
- package/utils/getFetchPolicy.js.map +1 -0
- package/utils/getModelTitleFieldId.d.ts +2 -0
- package/utils/getModelTitleFieldId.js +16 -0
- package/utils/getModelTitleFieldId.js.map +1 -0
- package/admin/components/ContentEntryForm/functions/createValidators.d.ts +0 -3
- package/admin/components/ContentEntryForm/functions/createValidators.js.map +0 -1
- package/admin/components/ContentModelEditor/Context.js.map +0 -1
- package/admin/components/ContentModelEditor/useContentModelEditor.d.ts +0 -1
- package/admin/components/ContentModelEditor/useContentModelEditor.js.map +0 -1
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.d.ts +0 -15
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js +0 -148
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js.map +0 -1
- package/admin/components/FieldEditor/useFieldEditor.d.ts +0 -1
- package/admin/components/FieldEditor/useFieldEditor.js +0 -14
- package/admin/components/FieldEditor/useFieldEditor.js.map +0 -1
- package/admin/plugins/validators/dateGte.d.ts +0 -3
- package/admin/plugins/validators/dateGte.js +0 -68
- package/admin/plugins/validators/dateGte.js.map +0 -1
- package/admin/plugins/validators/dateLte.d.ts +0 -3
- package/admin/plugins/validators/dateLte.js +0 -68
- package/admin/plugins/validators/dateLte.js.map +0 -1
- package/admin/plugins/validators/gte.d.ts +0 -3
- package/admin/plugins/validators/gte.js +0 -57
- package/admin/plugins/validators/gte.js.map +0 -1
- package/admin/plugins/validators/in.d.ts +0 -3
- package/admin/plugins/validators/in.js +0 -57
- package/admin/plugins/validators/in.js.map +0 -1
- package/admin/plugins/validators/lte.d.ts +0 -3
- package/admin/plugins/validators/lte.js +0 -57
- package/admin/plugins/validators/lte.js.map +0 -1
- package/admin/plugins/validators/maxLength.d.ts +0 -3
- package/admin/plugins/validators/maxLength.js +0 -57
- package/admin/plugins/validators/maxLength.js.map +0 -1
- package/admin/plugins/validators/minLength.d.ts +0 -3
- package/admin/plugins/validators/minLength.js +0 -57
- package/admin/plugins/validators/minLength.js.map +0 -1
- package/admin/plugins/validators/pattern.d.ts +0 -3
- package/admin/plugins/validators/pattern.js +0 -77
- package/admin/plugins/validators/pattern.js.map +0 -1
- package/admin/plugins/validators/patternPlugins/email.d.ts +0 -3
- package/admin/plugins/validators/patternPlugins/email.js +0 -17
- package/admin/plugins/validators/patternPlugins/email.js.map +0 -1
- package/admin/plugins/validators/patternPlugins/lowerCase.d.ts +0 -3
- package/admin/plugins/validators/patternPlugins/lowerCase.js +0 -17
- package/admin/plugins/validators/patternPlugins/lowerCase.js.map +0 -1
- package/admin/plugins/validators/patternPlugins/lowerCaseSpace.d.ts +0 -3
- package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js +0 -17
- package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
- package/admin/plugins/validators/patternPlugins/upperCase.d.ts +0 -3
- package/admin/plugins/validators/patternPlugins/upperCase.js +0 -17
- package/admin/plugins/validators/patternPlugins/upperCase.js.map +0 -1
- package/admin/plugins/validators/patternPlugins/upperCaseSpace.d.ts +0 -3
- package/admin/plugins/validators/patternPlugins/upperCaseSpace.js +0 -17
- package/admin/plugins/validators/patternPlugins/upperCaseSpace.js.map +0 -1
- package/admin/plugins/validators/patternPlugins/url.d.ts +0 -3
- package/admin/plugins/validators/patternPlugins/url.js +0 -17
- package/admin/plugins/validators/patternPlugins/url.js.map +0 -1
- package/admin/plugins/validators/required.d.ts +0 -3
- package/admin/plugins/validators/required.js +0 -21
- package/admin/plugins/validators/required.js.map +0 -1
- package/admin/plugins/validators/timeGte.d.ts +0 -3
- package/admin/plugins/validators/timeGte.js +0 -59
- package/admin/plugins/validators/timeGte.js.map +0 -1
- package/admin/plugins/validators/timeLte.d.ts +0 -3
- package/admin/plugins/validators/timeLte.js +0 -59
- package/admin/plugins/validators/timeLte.js.map +0 -1
- package/admin/plugins/validators/unique.d.ts +0 -7
- package/admin/plugins/validators/unique.js +0 -50
- package/admin/plugins/validators/unique.js.map +0 -1
- package/admin/views/contentEntries/ContentEntry/header/requestChanges/rule-24px.svg +0 -1
- package/admin/views/contentEntries/ContentEntry/header/requestReview/emoji_people-24px.svg +0 -1
- package/admin/views/contentModelGroups/IconPicker.d.ts +0 -8
- package/admin/views/contentModelGroups/IconPicker.js.map +0 -1
- package/types.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useReferences","bind","field","isMounted","useRef","allEntries","client","useApolloClient","useState","search","setSearch","loading","setLoading","entries","setEntries","latestEntries","setLatestEntries","valueEntries","setValueEntries","models","settings","modelsHash","join","values","value","searchEntries","query","SEARCH_CONTENT_ENTRIES","variables","modelIds","map","m","modelId","data","collection","convertReferenceEntriesToOptionCollection","content","current","useEffect","limit","fetchPolicy","then","Object","length","GET_CONTENT_ENTRIES","id","res","latest","reduce","item","entryId","published","existingItem","title","convertReferenceEntryToOption","onChange","useCallback","options","useMemo","defaultOptions"],"sources":["useReferences.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { useApolloClient } from \"~/admin/hooks\";\nimport { CmsEditorField, CmsModel } from \"~/types\";\nimport {\n SEARCH_CONTENT_ENTRIES,\n GET_CONTENT_ENTRIES,\n CmsEntrySearchQueryResponse,\n CmsEntrySearchQueryVariables,\n CmsEntryGetListResponse,\n CmsEntryGetListVariables,\n CmsEntryGetEntryVariable\n} from \"./graphql\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\nimport { CmsReferenceContentEntry, OptionItem, OptionItemCollection } from \"./types\";\nimport {\n convertReferenceEntriesToOptionCollection,\n convertReferenceEntryToOption\n} from \"~/admin/plugins/fieldRenderers/ref/components/helpers\";\n\ninterface UseReferencesParams {\n bind: BindComponentRenderProp;\n field: CmsEditorField;\n}\nexport const useReferences = ({ bind, field }: UseReferencesParams) => {\n const isMounted = useRef(true);\n const allEntries = useRef<OptionItemCollection>({});\n const client = useApolloClient();\n const [search, setSearch] = useState<string>(\"\");\n const [loading, setLoading] = useState<boolean>(false);\n const [entries, setEntries] = useState<OptionItemCollection>({});\n const [latestEntries, setLatestEntries] = useState<OptionItem[]>([]);\n const [valueEntries, setValueEntries] = useState<OptionItem[]>([]);\n\n const models = (field.settings ? field.settings.models || [] : []) as Pick<\n CmsModel,\n \"modelId\"\n >[];\n const modelsHash = models.join(\",\");\n const values: CmsEntryGetEntryVariable[] = bind.value ? bind.value : [];\n\n const searchEntries = async (): Promise<void> => {\n if (!search) {\n return;\n }\n\n setLoading(true);\n const { data } = await client.query<\n CmsEntrySearchQueryResponse,\n CmsEntrySearchQueryVariables\n >({\n query: SEARCH_CONTENT_ENTRIES,\n variables: {\n modelIds: models.map(m => m.modelId),\n query: search\n }\n });\n setLoading(false);\n\n const collection = convertReferenceEntriesToOptionCollection(data.content.data);\n\n allEntries.current = {\n ...allEntries.current,\n ...collection\n };\n\n setEntries(collection);\n };\n\n useEffect(() => {\n return () => {\n isMounted.current = false;\n };\n }, []);\n\n useEffect(() => {\n searchEntries();\n }, [search]);\n\n useEffect(() => {\n client\n .query<CmsEntrySearchQueryResponse, CmsEntrySearchQueryVariables>({\n query: SEARCH_CONTENT_ENTRIES,\n variables: {\n modelIds: models.map(m => m.modelId),\n limit: 10\n },\n /**\n * We cannot update this query response in cache after a reference entry being created/deleted,\n * which result in cached response being stale, therefore, we're setting the fetchPolicy to \"network-only\" to by passing cache.\n */\n fetchPolicy: \"network-only\"\n })\n .then(({ data }) => {\n if (!isMounted.current) {\n return;\n }\n\n const collection = convertReferenceEntriesToOptionCollection(data.content.data);\n setLatestEntries(Object.values(collection));\n allEntries.current = {\n ...collection\n };\n });\n }, [modelsHash]);\n\n useEffect(() => {\n if (!values || values.length == 0) {\n return;\n }\n\n setLoading(true);\n\n client\n .query<CmsEntryGetListResponse, CmsEntryGetListVariables>({\n query: GET_CONTENT_ENTRIES,\n variables: {\n /**\n * We need make sure nothing else other than modelId and id is passed to entries variable.\n */\n entries: values.map(value => {\n return {\n modelId: value.modelId,\n id: value.id\n };\n })\n }\n })\n .then(res => {\n if (!isMounted.current) {\n return;\n }\n\n setLoading(false);\n\n const latest = (res.data.latest.data || []).reduce((collection, item) => {\n collection[item.entryId] = item;\n return collection;\n }, {} as Record<string, CmsReferenceContentEntry>);\n\n const entries = (res.data.published.data || []).reduce((collection, item) => {\n const entryId = item.entryId;\n const existingItem = latest[entryId];\n if (existingItem) {\n collection[entryId] = {\n ...existingItem,\n published: {\n id: item.id,\n entryId: item.entryId,\n title: item.title\n }\n };\n return collection;\n }\n collection[entryId] = item;\n return collection;\n }, latest);\n\n // Calculate a couple of props for the Autocomplete component.\n setValueEntries(Object.values(entries).map(convertReferenceEntryToOption));\n });\n }, []);\n\n /**\n * onChange callback will update internal component state using the previously loaded entries by IDs.\n * It will also format the value to store to the DB.\n */\n const onChange = useCallback((values: OptionItem[]): void => {\n setSearch(\"\");\n setValueEntries(values);\n\n // Update parent form\n bind.onChange(\n values.map(item => ({\n modelId: item.modelId,\n id: item.id\n }))\n );\n }, []);\n\n // Format options for the Autocomplete component.\n const options = useMemo(() => Object.values(entries), [entries]);\n\n // Format default options for the Autocomplete component.\n const defaultOptions = useMemo(() => Object.values(latestEntries), [latestEntries]);\n\n return {\n onChange,\n loading,\n setSearch,\n // Selected entries\n entries: valueEntries,\n // Options to show when the autocomplete dropdown is visible\n options: search ? options : defaultOptions || []\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["useReferences","bind","field","isMounted","useRef","allEntries","client","useApolloClient","useState","search","setSearch","loading","setLoading","entries","setEntries","latestEntries","setLatestEntries","valueEntries","setValueEntries","models","settings","modelsHash","join","values","value","searchEntries","query","SEARCH_CONTENT_ENTRIES","variables","modelIds","map","m","modelId","data","collection","convertReferenceEntriesToOptionCollection","content","current","useEffect","limit","fetchPolicy","then","Object","length","GET_CONTENT_ENTRIES","id","res","latest","reduce","item","entryId","published","existingItem","title","convertReferenceEntryToOption","onChange","useCallback","options","useMemo","defaultOptions"],"sources":["useReferences.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { useApolloClient } from \"~/admin/hooks\";\nimport { CmsModelField, CmsModel } from \"~/types\";\nimport {\n SEARCH_CONTENT_ENTRIES,\n GET_CONTENT_ENTRIES,\n CmsEntrySearchQueryResponse,\n CmsEntrySearchQueryVariables,\n CmsEntryGetListResponse,\n CmsEntryGetListVariables,\n CmsEntryGetEntryVariable\n} from \"./graphql\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\nimport { CmsReferenceContentEntry, OptionItem, OptionItemCollection } from \"./types\";\nimport {\n convertReferenceEntriesToOptionCollection,\n convertReferenceEntryToOption\n} from \"~/admin/plugins/fieldRenderers/ref/components/helpers\";\n\ninterface UseReferencesParams {\n bind: BindComponentRenderProp;\n field: CmsModelField;\n}\nexport const useReferences = ({ bind, field }: UseReferencesParams) => {\n const isMounted = useRef(true);\n const allEntries = useRef<OptionItemCollection>({});\n const client = useApolloClient();\n const [search, setSearch] = useState<string>(\"\");\n const [loading, setLoading] = useState<boolean>(false);\n const [entries, setEntries] = useState<OptionItemCollection>({});\n const [latestEntries, setLatestEntries] = useState<OptionItem[]>([]);\n const [valueEntries, setValueEntries] = useState<OptionItem[]>([]);\n\n const models = (field.settings ? field.settings.models || [] : []) as Pick<\n CmsModel,\n \"modelId\"\n >[];\n const modelsHash = models.join(\",\");\n const values: CmsEntryGetEntryVariable[] = bind.value ? bind.value : [];\n\n const searchEntries = async (): Promise<void> => {\n if (!search) {\n return;\n }\n\n setLoading(true);\n const { data } = await client.query<\n CmsEntrySearchQueryResponse,\n CmsEntrySearchQueryVariables\n >({\n query: SEARCH_CONTENT_ENTRIES,\n variables: {\n modelIds: models.map(m => m.modelId),\n query: search\n }\n });\n setLoading(false);\n\n const collection = convertReferenceEntriesToOptionCollection(data.content.data);\n\n allEntries.current = {\n ...allEntries.current,\n ...collection\n };\n\n setEntries(collection);\n };\n\n useEffect(() => {\n return () => {\n isMounted.current = false;\n };\n }, []);\n\n useEffect(() => {\n searchEntries();\n }, [search]);\n\n useEffect(() => {\n client\n .query<CmsEntrySearchQueryResponse, CmsEntrySearchQueryVariables>({\n query: SEARCH_CONTENT_ENTRIES,\n variables: {\n modelIds: models.map(m => m.modelId),\n limit: 10\n },\n /**\n * We cannot update this query response in cache after a reference entry being created/deleted,\n * which result in cached response being stale, therefore, we're setting the fetchPolicy to \"network-only\" to by passing cache.\n */\n fetchPolicy: \"network-only\"\n })\n .then(({ data }) => {\n if (!isMounted.current) {\n return;\n }\n\n const collection = convertReferenceEntriesToOptionCollection(data.content.data);\n setLatestEntries(Object.values(collection));\n allEntries.current = {\n ...collection\n };\n });\n }, [modelsHash]);\n\n useEffect(() => {\n if (!values || values.length == 0) {\n return;\n }\n\n setLoading(true);\n\n client\n .query<CmsEntryGetListResponse, CmsEntryGetListVariables>({\n query: GET_CONTENT_ENTRIES,\n variables: {\n /**\n * We need make sure nothing else other than modelId and id is passed to entries variable.\n */\n entries: values.map(value => {\n return {\n modelId: value.modelId,\n id: value.id\n };\n })\n }\n })\n .then(res => {\n if (!isMounted.current) {\n return;\n }\n\n setLoading(false);\n\n const latest = (res.data.latest.data || []).reduce((collection, item) => {\n collection[item.entryId] = item;\n return collection;\n }, {} as Record<string, CmsReferenceContentEntry>);\n\n const entries = (res.data.published.data || []).reduce((collection, item) => {\n const entryId = item.entryId;\n const existingItem = latest[entryId];\n if (existingItem) {\n collection[entryId] = {\n ...existingItem,\n published: {\n id: item.id,\n entryId: item.entryId,\n title: item.title\n }\n };\n return collection;\n }\n collection[entryId] = item;\n return collection;\n }, latest);\n\n // Calculate a couple of props for the Autocomplete component.\n setValueEntries(Object.values(entries).map(convertReferenceEntryToOption));\n });\n }, []);\n\n /**\n * onChange callback will update internal component state using the previously loaded entries by IDs.\n * It will also format the value to store to the DB.\n */\n const onChange = useCallback((values: OptionItem[]): void => {\n setSearch(\"\");\n setValueEntries(values);\n\n // Update parent form\n bind.onChange(\n values.map(item => ({\n modelId: item.modelId,\n id: item.id\n }))\n );\n }, []);\n\n // Format options for the Autocomplete component.\n const options = useMemo(() => Object.values(entries), [entries]);\n\n // Format default options for the Autocomplete component.\n const defaultOptions = useMemo(() => Object.values(latestEntries), [latestEntries]);\n\n return {\n onChange,\n loading,\n setSearch,\n // Selected entries\n entries: valueEntries,\n // Options to show when the autocomplete dropdown is visible\n options: search ? options : defaultOptions || []\n };\n};\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import {
|
|
2
|
+
import { CmsModelField } from "../../../../../types";
|
|
3
3
|
interface UseNewRefEntryParams {
|
|
4
|
-
field:
|
|
4
|
+
field: CmsModelField;
|
|
5
5
|
}
|
|
6
6
|
interface UseNewRefEntry {
|
|
7
7
|
renderNewEntryModal: boolean;
|
|
@@ -11,12 +11,12 @@ exports.useNewRefEntry = void 0;
|
|
|
11
11
|
|
|
12
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
13
|
|
|
14
|
-
var _react =
|
|
15
|
-
|
|
16
|
-
var _ContentEntriesContext = require("../../../../views/contentEntries/ContentEntriesContext");
|
|
14
|
+
var _react = _interopRequireDefault(require("react"));
|
|
17
15
|
|
|
18
16
|
var _MissingEntryHelpText = _interopRequireWildcard(require("../components/MissingEntryHelpText"));
|
|
19
17
|
|
|
18
|
+
var _useContentEntries = require("../../../../views/contentEntries/hooks/useContentEntries");
|
|
19
|
+
|
|
20
20
|
var useNewRefEntry = function useNewRefEntry(_ref) {
|
|
21
21
|
var field = _ref.field;
|
|
22
22
|
var models = (field.settings && field.settings.models ? field.settings.models : null) || [];
|
|
@@ -25,36 +25,37 @@ var useNewRefEntry = function useNewRefEntry(_ref) {
|
|
|
25
25
|
refModelId = _models[0].modelId;
|
|
26
26
|
|
|
27
27
|
var referenceMultipleModels = models.length > 1;
|
|
28
|
-
var
|
|
28
|
+
var contentEntriesContext = null;
|
|
29
|
+
|
|
30
|
+
try {
|
|
31
|
+
contentEntriesContext = (0, _useContentEntries.useContentEntries)();
|
|
32
|
+
} catch (_unused) {// Means there's no `ContentEntriesContextProvider`, so we must be in model editor "preview".
|
|
33
|
+
}
|
|
29
34
|
/**
|
|
30
35
|
* We don't wrap the "ContentEntryForm" with "ContentEntriesContextProvider"
|
|
31
36
|
* when rendering it inside content model editor's preview tab.
|
|
32
37
|
*
|
|
33
38
|
* And we also don't want to have new ref field Dialog in the preview tab.
|
|
34
|
-
* Therefore, we check for "
|
|
39
|
+
* Therefore, we check for "contentEntriesContext" to know that we're inside preview tab.
|
|
35
40
|
*/
|
|
36
41
|
|
|
37
|
-
var renderedInPreviewTab = contentEntriesContextValue === null;
|
|
38
|
-
/**
|
|
39
|
-
* Set "renderNewEntryModal" value.
|
|
40
|
-
*/
|
|
41
42
|
|
|
42
|
-
var
|
|
43
|
+
var renderedInPreviewTab = contentEntriesContext === null;
|
|
44
|
+
var renderNewEntryModal = false;
|
|
43
45
|
|
|
44
46
|
if (renderedInPreviewTab) {
|
|
45
47
|
renderNewEntryModal = false;
|
|
46
48
|
} else if (referenceMultipleModels) {
|
|
47
49
|
renderNewEntryModal = false;
|
|
48
|
-
} else {
|
|
49
|
-
|
|
50
|
-
renderNewEntryModal = !insideDialog;
|
|
50
|
+
} else if (contentEntriesContext) {
|
|
51
|
+
renderNewEntryModal = !contentEntriesContext.insideDialog;
|
|
51
52
|
}
|
|
52
53
|
/**
|
|
53
54
|
* Set "helpText" value.
|
|
54
55
|
*/
|
|
55
56
|
|
|
56
57
|
|
|
57
|
-
var helpText
|
|
58
|
+
var helpText;
|
|
58
59
|
|
|
59
60
|
if (referenceMultipleModels) {
|
|
60
61
|
helpText = /*#__PURE__*/_react.default.createElement(_MissingEntryHelpText.ReferenceMultipleModelsHelpText, null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useNewRefEntry","field","models","settings","refModelId","modelId","referenceMultipleModels","length","
|
|
1
|
+
{"version":3,"names":["useNewRefEntry","field","models","settings","refModelId","modelId","referenceMultipleModels","length","contentEntriesContext","useContentEntries","renderedInPreviewTab","renderNewEntryModal","insideDialog","helpText"],"sources":["useNewRefEntry.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsModelField } from \"~/types\";\nimport MissingEntryHelpText, {\n ReferenceMultipleModelsHelpText\n} from \"../components/MissingEntryHelpText\";\nimport { useContentEntries } from \"~/admin/views/contentEntries/hooks/useContentEntries\";\n\ninterface UseNewRefEntryParams {\n field: CmsModelField;\n}\n\ninterface UseNewRefEntry {\n renderNewEntryModal: boolean;\n refModelId: string;\n helpText: React.ReactElement;\n}\n\nexport const useNewRefEntry = ({ field }: UseNewRefEntryParams): UseNewRefEntry => {\n const models = (field.settings && field.settings.models ? field.settings.models : null) || [];\n const [{ modelId: refModelId }] = models;\n const referenceMultipleModels = models.length > 1;\n\n let contentEntriesContext = null;\n try {\n contentEntriesContext = useContentEntries();\n } catch {\n // Means there's no `ContentEntriesContextProvider`, so we must be in model editor \"preview\".\n }\n\n /**\n * We don't wrap the \"ContentEntryForm\" with \"ContentEntriesContextProvider\"\n * when rendering it inside content model editor's preview tab.\n *\n * And we also don't want to have new ref field Dialog in the preview tab.\n * Therefore, we check for \"contentEntriesContext\" to know that we're inside preview tab.\n */\n const renderedInPreviewTab = contentEntriesContext === null;\n\n let renderNewEntryModal = false;\n\n if (renderedInPreviewTab) {\n renderNewEntryModal = false;\n } else if (referenceMultipleModels) {\n renderNewEntryModal = false;\n } else if (contentEntriesContext) {\n renderNewEntryModal = !contentEntriesContext.insideDialog;\n }\n /**\n * Set \"helpText\" value.\n */\n let helpText;\n if (referenceMultipleModels) {\n helpText = <ReferenceMultipleModelsHelpText />;\n } else {\n helpText = <MissingEntryHelpText refModelId={refModelId} />;\n }\n\n return {\n renderNewEntryModal,\n refModelId,\n helpText\n };\n};\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAEA;;AAGA;;AAYO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,OAAqD;EAAA,IAAlDC,KAAkD,QAAlDA,KAAkD;EAC/E,IAAMC,MAAM,GAAG,CAACD,KAAK,CAACE,QAAN,IAAkBF,KAAK,CAACE,QAAN,CAAeD,MAAjC,GAA0CD,KAAK,CAACE,QAAN,CAAeD,MAAzD,GAAkE,IAAnE,KAA4E,EAA3F;;EACA,2CAAkCA,MAAlC;EAAA,IAAkBE,UAAlB,cAASC,OAAT;;EACA,IAAMC,uBAAuB,GAAGJ,MAAM,CAACK,MAAP,GAAgB,CAAhD;EAEA,IAAIC,qBAAqB,GAAG,IAA5B;;EACA,IAAI;IACAA,qBAAqB,GAAG,IAAAC,oCAAA,GAAxB;EACH,CAFD,CAEE,gBAAM,CACJ;EACH;EAED;AACJ;AACA;AACA;AACA;AACA;AACA;;;EACI,IAAMC,oBAAoB,GAAGF,qBAAqB,KAAK,IAAvD;EAEA,IAAIG,mBAAmB,GAAG,KAA1B;;EAEA,IAAID,oBAAJ,EAA0B;IACtBC,mBAAmB,GAAG,KAAtB;EACH,CAFD,MAEO,IAAIL,uBAAJ,EAA6B;IAChCK,mBAAmB,GAAG,KAAtB;EACH,CAFM,MAEA,IAAIH,qBAAJ,EAA2B;IAC9BG,mBAAmB,GAAG,CAACH,qBAAqB,CAACI,YAA7C;EACH;EACD;AACJ;AACA;;;EACI,IAAIC,QAAJ;;EACA,IAAIP,uBAAJ,EAA6B;IACzBO,QAAQ,gBAAG,6BAAC,qDAAD,OAAX;EACH,CAFD,MAEO;IACHA,QAAQ,gBAAG,6BAAC,6BAAD;MAAsB,UAAU,EAAET;IAAlC,EAAX;EACH;;EAED,OAAO;IACHO,mBAAmB,EAAnBA,mBADG;IAEHP,UAAU,EAAVA,UAFG;IAGHS,QAAQ,EAARA;EAHG,CAAP;AAKH,CA7CM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","getKey","field","bind","form","data","id","fieldId","plugin","type","name","renderer","rendererName","description","canUse","multipleValues","render","props","Bind","getBind"],"sources":["refInputs.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsEditorContentEntry,
|
|
1
|
+
{"version":3,"names":["t","i18n","ns","getKey","field","bind","form","data","id","fieldId","plugin","type","name","renderer","rendererName","description","canUse","multipleValues","render","props","Bind","getBind"],"sources":["refInputs.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsEditorContentEntry, CmsModelField, CmsEditorFieldRendererPlugin } from \"~/types\";\nimport ContentEntriesMultiAutocomplete from \"./components/ContentEntriesMultiAutoComplete\";\nimport { NewRefEntryDialogContextProvider } from \"./hooks/useNewRefEntryDialog\";\n\nimport { i18n } from \"@webiny/app/i18n\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/ref\");\n\nconst getKey = (\n field: CmsModelField,\n bind: BindComponentRenderProp<string, CmsEditorContentEntry>\n): string => {\n return bind.form.data.id + \".\" + field.fieldId;\n};\n\nconst plugin: CmsEditorFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-ref-inputs\",\n renderer: {\n rendererName: \"ref-inputs\",\n name: t`Reference Inputs`,\n description: t`Renders an auto-complete input, allowing selection of multiple values.`,\n canUse({ field }) {\n return field.type === \"ref\" && !!field.multipleValues;\n },\n render(props) {\n const Bind = props.getBind();\n return (\n <Bind>\n {bind => (\n <NewRefEntryDialogContextProvider>\n <ContentEntriesMultiAutocomplete\n key={getKey(props.field, bind as any)}\n {...props}\n bind={bind}\n />\n </NewRefEntryDialogContextProvider>\n )}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;;;AAAA;;AAEA;;AACA;;AAEA;;;;AAGA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,mCAAR,CAAV;;AAEA,IAAMC,MAAM,GAAG,SAATA,MAAS,CACXC,KADW,EAEXC,IAFW,EAGF;EACT,OAAOA,IAAI,CAACC,IAAL,CAAUC,IAAV,CAAeC,EAAf,GAAoB,GAApB,GAA0BJ,KAAK,CAACK,OAAvC;AACH,CALD;;AAOA,IAAMC,MAAoC,GAAG;EACzCC,IAAI,EAAE,2BADmC;EAEzCC,IAAI,EAAE,sCAFmC;EAGzCC,QAAQ,EAAE;IACNC,YAAY,EAAE,YADR;IAENF,IAAI,EAAEZ,CAAF,mGAFE;IAGNe,WAAW,EAAEf,CAAF,2JAHL;IAINgB,MAJM,wBAIY;MAAA,IAATZ,KAAS,QAATA,KAAS;MACd,OAAOA,KAAK,CAACO,IAAN,KAAe,KAAf,IAAwB,CAAC,CAACP,KAAK,CAACa,cAAvC;IACH,CANK;IAONC,MAPM,kBAOCC,KAPD,EAOQ;MACV,IAAMC,IAAI,GAAGD,KAAK,CAACE,OAAN,EAAb;MACA,oBACI,6BAAC,IAAD,QACK,UAAAhB,IAAI;QAAA,oBACD,6BAAC,sDAAD,qBACI,6BAAC,wCAAD;UACI,GAAG,EAAEF,MAAM,CAACgB,KAAK,CAACf,KAAP,EAAcC,IAAd;QADf,GAEQc,KAFR;UAGI,IAAI,EAAEd;QAHV,GADJ,CADC;MAAA,CADT,CADJ;IAaH;EAtBK;AAH+B,CAA7C;eA6BeK,M"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","getKey","field","bind","formId","form","data","id","fieldId","plugin","type","name","renderer","rendererName","description","canUse","multipleValues","get","render","getBind","Bind","rteProps","useMemo","createPropsFromConfig","plugins","byType","map","pl","config","onChange","label","placeholderText","helpText"],"sources":["richTextInput.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport get from \"lodash/get\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { CmsEditorContentEntry,
|
|
1
|
+
{"version":3,"names":["t","i18n","ns","getKey","field","bind","formId","form","data","id","fieldId","plugin","type","name","renderer","rendererName","description","canUse","multipleValues","get","render","getBind","Bind","rteProps","useMemo","createPropsFromConfig","plugins","byType","map","pl","config","onChange","label","placeholderText","helpText"],"sources":["richTextInput.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport get from \"lodash/get\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { CmsEditorContentEntry, CmsModelField, CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { createPropsFromConfig, RichTextEditor } from \"@webiny/app-admin/components/RichTextEditor\";\nimport { plugins } from \"@webiny/plugins\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/rich-text\");\n\nconst getKey = (\n field: CmsModelField,\n bind: BindComponentRenderProp<string, CmsEditorContentEntry>\n): string => {\n const formId = bind.form.data.id || \"new\";\n return `${formId}.${field.fieldId}`;\n};\n\nconst plugin: CmsEditorFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-rich-text\",\n renderer: {\n rendererName: \"rich-text-input\",\n name: t`Rich Text Input`,\n description: t`Renders a rich text editor.`,\n canUse({ field }) {\n return (\n field.type === \"rich-text\" &&\n !field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n const rteProps = useMemo(() => {\n /**\n * TODO @ts-refactor\n * Missing cms-rte-config plugin type.\n */\n // @ts-ignore\n return createPropsFromConfig(plugins.byType(\"cms-rte-config\").map(pl => pl.config));\n }, []);\n\n return (\n <Bind>\n {bind => {\n return (\n <RichTextEditor\n key={getKey(field, bind as any)}\n {...rteProps}\n {...bind}\n onChange={bind.onChange}\n label={field.label}\n placeholder={field.placeholderText}\n description={field.helpText}\n data-testid={`fr.input.richtext.${field.label}`}\n />\n );\n }}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;;;AAGA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,yCAAR,CAAV;;AAEA,IAAMC,MAAM,GAAG,SAATA,MAAS,CACXC,KADW,EAEXC,IAFW,EAGF;EACT,IAAMC,MAAM,GAAGD,IAAI,CAACE,IAAL,CAAUC,IAAV,CAAeC,EAAf,IAAqB,KAApC;EACA,iBAAUH,MAAV,cAAoBF,KAAK,CAACM,OAA1B;AACH,CAND;;AAQA,IAAMC,MAAoC,GAAG;EACzCC,IAAI,EAAE,2BADmC;EAEzCC,IAAI,EAAE,qCAFmC;EAGzCC,QAAQ,EAAE;IACNC,YAAY,EAAE,iBADR;IAENF,IAAI,EAAEb,CAAF,kGAFE;IAGNgB,WAAW,EAAEhB,CAAF,gHAHL;IAINiB,MAJM,wBAIY;MAAA,IAATb,KAAS,QAATA,KAAS;MACd,OACIA,KAAK,CAACQ,IAAN,KAAe,WAAf,IACA,CAACR,KAAK,CAACc,cADP,IAEA,CAAC,IAAAC,YAAA,EAAIf,KAAJ,EAAW,0BAAX,CAHL;IAKH,CAVK;IAWNgB,MAXM,yBAWqB;MAAA,IAAlBhB,KAAkB,SAAlBA,KAAkB;MAAA,IAAXiB,OAAW,SAAXA,OAAW;MACvB,IAAMC,IAAI,GAAGD,OAAO,EAApB;MAEA,IAAME,QAAQ,GAAG,IAAAC,cAAA,EAAQ,YAAM;QAC3B;AAChB;AACA;AACA;QACgB;QACA,OAAO,IAAAC,qCAAA,EAAsBC,gBAAA,CAAQC,MAAR,CAAe,gBAAf,EAAiCC,GAAjC,CAAqC,UAAAC,EAAE;UAAA,OAAIA,EAAE,CAACC,MAAP;QAAA,CAAvC,CAAtB,CAAP;MACH,CAPgB,EAOd,EAPc,CAAjB;MASA,oBACI,6BAAC,IAAD,QACK,UAAAzB,IAAI,EAAI;QACL,oBACI,6BAAC,8BAAD;UACI,GAAG,EAAEF,MAAM,CAACC,KAAD,EAAQC,IAAR;QADf,GAEQkB,QAFR,EAGQlB,IAHR;UAII,QAAQ,EAAEA,IAAI,CAAC0B,QAJnB;UAKI,KAAK,EAAE3B,KAAK,CAAC4B,KALjB;UAMI,WAAW,EAAE5B,KAAK,CAAC6B,eANvB;UAOI,WAAW,EAAE7B,KAAK,CAAC8B,QAPvB;UAQI,2CAAkC9B,KAAK,CAAC4B,KAAxC;QARJ,GADJ;MAYH,CAdL,CADJ;IAkBH;EAzCK;AAH+B,CAA7C;eAgDerB,M"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","getKey","field","bind","index","formId","form","data","id","fieldId","emptyValue","type","textAlign","className","text","EditorWrapper","styled","position","top","right","plugin","name","renderer","rendererName","description","canUse","multipleValues","get","render","props","rteProps","useMemo","createPropsFromConfig","plugins","byType","map","pl","config","removeValue","placeholderText","helpText"],"sources":["richTextInputs.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport get from \"lodash/get\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport {
|
|
1
|
+
{"version":3,"names":["t","i18n","ns","getKey","field","bind","index","formId","form","data","id","fieldId","emptyValue","type","textAlign","className","text","EditorWrapper","styled","position","top","right","plugin","name","renderer","rendererName","description","canUse","multipleValues","get","render","props","rteProps","useMemo","createPropsFromConfig","plugins","byType","map","pl","config","removeValue","placeholderText","helpText"],"sources":["richTextInputs.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport get from \"lodash/get\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { CmsModelField, CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { ReactComponent as DeleteIcon } from \"~/admin/icons/close.svg\";\nimport DynamicSection, { DynamicSectionPropsChildrenParams } from \"../DynamicSection\";\nimport { RichTextEditor, createPropsFromConfig } from \"@webiny/app-admin/components/RichTextEditor\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { plugins } from \"@webiny/plugins\";\nimport styled from \"@emotion/styled\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/rich-text\");\n\nconst getKey = (\n field: CmsModelField,\n bind: DynamicSectionPropsChildrenParams[\"bind\"],\n index: number\n): string => {\n const formId = bind.index.form?.data?.id || \"new\";\n return `${formId}.${field.fieldId}.${index}`;\n};\n\nconst emptyValue: Record<string, any>[] = [\n {\n type: \"paragraph\",\n data: {\n textAlign: \"left\",\n className: null,\n text: \"\"\n }\n }\n];\n\nconst EditorWrapper = styled(\"div\")({\n position: \"relative\",\n \"> button\": {\n position: \"absolute\",\n top: 5,\n right: 5\n }\n});\n\nconst plugin: CmsEditorFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-rich-text-inputs\",\n renderer: {\n rendererName: \"rich-text-inputs\",\n name: t`Rich Text Inputs`,\n description: t`Renders a simple list of rich text editors.`,\n canUse({ field }) {\n return (\n field.type === \"rich-text\" &&\n !!field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render(props) {\n const { field } = props;\n\n const rteProps = useMemo(() => {\n /**\n * TODO @ts-refactor\n * Missing cms-rte-config plugin.\n */\n // @ts-ignore\n return createPropsFromConfig(plugins.byType(\"cms-rte-config\").map(pl => pl.config));\n }, []);\n\n return (\n <DynamicSection {...props} emptyValue={emptyValue}>\n {({ bind, index }) => (\n <EditorWrapper>\n {index > 0 && (\n <IconButton\n icon={<DeleteIcon />}\n onClick={() => bind.field.removeValue(index)}\n />\n )}\n <RichTextEditor\n key={getKey(field, bind, index)}\n {...rteProps}\n {...bind.index}\n label={`Value ${index + 1}`}\n placeholder={field.placeholderText}\n description={field.helpText}\n />\n </EditorWrapper>\n )}\n </DynamicSection>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,yCAAR,CAAV;;AAEA,IAAMC,MAAM,GAAG,SAATA,MAAS,CACXC,KADW,EAEXC,IAFW,EAGXC,KAHW,EAIF;EAAA;;EACT,IAAMC,MAAM,GAAG,qBAAAF,IAAI,CAACC,KAAL,CAAWE,IAAX,+FAAiBC,IAAjB,gFAAuBC,EAAvB,KAA6B,KAA5C;EACA,iBAAUH,MAAV,cAAoBH,KAAK,CAACO,OAA1B,cAAqCL,KAArC;AACH,CAPD;;AASA,IAAMM,UAAiC,GAAG,CACtC;EACIC,IAAI,EAAE,WADV;EAEIJ,IAAI,EAAE;IACFK,SAAS,EAAE,MADT;IAEFC,SAAS,EAAE,IAFT;IAGFC,IAAI,EAAE;EAHJ;AAFV,CADsC,CAA1C;AAWA,IAAMC,aAAa,oBAAGC,eAAH,EAAU,KAAV;EAAA;EAAA;AAAA,GAAiB;EAChCC,QAAQ,EAAE,UADsB;EAEhC,YAAY;IACRA,QAAQ,EAAE,UADF;IAERC,GAAG,EAAE,CAFG;IAGRC,KAAK,EAAE;EAHC;AAFoB,CAAjB,CAAnB;AASA,IAAMC,MAAoC,GAAG;EACzCT,IAAI,EAAE,2BADmC;EAEzCU,IAAI,EAAE,4CAFmC;EAGzCC,QAAQ,EAAE;IACNC,YAAY,EAAE,kBADR;IAENF,IAAI,EAAEvB,CAAF,mGAFE;IAGN0B,WAAW,EAAE1B,CAAF,gIAHL;IAIN2B,MAJM,wBAIY;MAAA,IAATvB,KAAS,QAATA,KAAS;MACd,OACIA,KAAK,CAACS,IAAN,KAAe,WAAf,IACA,CAAC,CAACT,KAAK,CAACwB,cADR,IAEA,CAAC,IAAAC,YAAA,EAAIzB,KAAJ,EAAW,0BAAX,CAHL;IAKH,CAVK;IAWN0B,MAXM,kBAWCC,KAXD,EAWQ;MACV,IAAQ3B,KAAR,GAAkB2B,KAAlB,CAAQ3B,KAAR;MAEA,IAAM4B,QAAQ,GAAG,IAAAC,cAAA,EAAQ,YAAM;QAC3B;AAChB;AACA;AACA;QACgB;QACA,OAAO,IAAAC,qCAAA,EAAsBC,gBAAA,CAAQC,MAAR,CAAe,gBAAf,EAAiCC,GAAjC,CAAqC,UAAAC,EAAE;UAAA,OAAIA,EAAE,CAACC,MAAP;QAAA,CAAvC,CAAtB,CAAP;MACH,CAPgB,EAOd,EAPc,CAAjB;MASA,oBACI,6BAAC,uBAAD,oBAAoBR,KAApB;QAA2B,UAAU,EAAEnB;MAAvC,IACK;QAAA,IAAGP,IAAH,SAAGA,IAAH;QAAA,IAASC,KAAT,SAASA,KAAT;QAAA,oBACG,6BAAC,aAAD,QACKA,KAAK,GAAG,CAAR,iBACG,6BAAC,kBAAD;UACI,IAAI,eAAE,6BAAC,qBAAD,OADV;UAEI,OAAO,EAAE;YAAA,OAAMD,IAAI,CAACD,KAAL,CAAWoC,WAAX,CAAuBlC,KAAvB,CAAN;UAAA;QAFb,EAFR,eAOI,6BAAC,8BAAD;UACI,GAAG,EAAEH,MAAM,CAACC,KAAD,EAAQC,IAAR,EAAcC,KAAd;QADf,GAEQ0B,QAFR,EAGQ3B,IAAI,CAACC,KAHb;UAII,KAAK,kBAAWA,KAAK,GAAG,CAAnB,CAJT;UAKI,WAAW,EAAEF,KAAK,CAACqC,eALvB;UAMI,WAAW,EAAErC,KAAK,CAACsC;QANvB,GAPJ,CADH;MAAA,CADL,CADJ;IAsBH;EA7CK;AAH+B,CAA7C;eAoDepB,M"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import {
|
|
2
|
+
import { CmsModelField } from "../../../../types";
|
|
3
3
|
import { BindComponentRenderProp } from "@webiny/form";
|
|
4
|
-
export declare const createInputField: (field:
|
|
4
|
+
export declare const createInputField: (field: CmsModelField, bind: BindComponentRenderProp) => JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createInputField","field","bind","type","settings"],"sources":["createDateInputField.tsx"],"sourcesContent":["import React from \"react\";\nimport { DateTimeWithoutTimezone } from \"../../fieldRenderers/dateTime/DateTimeWithoutTimezone\";\nimport { DateTimeWithTimezone } from \"../../fieldRenderers/dateTime/DateTimeWithTimezone\";\nimport { Time } from \"../../fieldRenderers/dateTime/Time\";\nimport {
|
|
1
|
+
{"version":3,"names":["createInputField","field","bind","type","settings"],"sources":["createDateInputField.tsx"],"sourcesContent":["import React from \"react\";\nimport { DateTimeWithoutTimezone } from \"../../fieldRenderers/dateTime/DateTimeWithoutTimezone\";\nimport { DateTimeWithTimezone } from \"../../fieldRenderers/dateTime/DateTimeWithTimezone\";\nimport { Time } from \"../../fieldRenderers/dateTime/Time\";\nimport { CmsModelField } from \"~/types\";\nimport { DateOnly } from \"~/admin/plugins/fieldRenderers/dateTime/DateOnly\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\nexport const createInputField = (field: CmsModelField, bind: BindComponentRenderProp) => {\n const type = field.settings ? field.settings.type : null;\n if (type === \"dateTimeWithoutTimezone\") {\n return <DateTimeWithoutTimezone field={field} bind={bind} />;\n } else if (type === \"dateTimeWithTimezone\") {\n return <DateTimeWithTimezone field={field} bind={bind} />;\n } else if (type === \"time\") {\n return <Time field={field} bind={bind} />;\n }\n return <DateOnly bind={bind} field={field} />;\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AAGO,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD,EAAuBC,IAAvB,EAAyD;EACrF,IAAMC,IAAI,GAAGF,KAAK,CAACG,QAAN,GAAiBH,KAAK,CAACG,QAAN,CAAeD,IAAhC,GAAuC,IAApD;;EACA,IAAIA,IAAI,KAAK,yBAAb,EAAwC;IACpC,oBAAO,6BAAC,gDAAD;MAAyB,KAAK,EAAEF,KAAhC;MAAuC,IAAI,EAAEC;IAA7C,EAAP;EACH,CAFD,MAEO,IAAIC,IAAI,KAAK,sBAAb,EAAqC;IACxC,oBAAO,6BAAC,0CAAD;MAAsB,KAAK,EAAEF,KAA7B;MAAoC,IAAI,EAAEC;IAA1C,EAAP;EACH,CAFM,MAEA,IAAIC,IAAI,KAAK,MAAb,EAAqB;IACxB,oBAAO,6BAAC,UAAD;MAAM,KAAK,EAAEF,KAAb;MAAoB,IAAI,EAAEC;IAA1B,EAAP;EACH;;EACD,oBAAO,6BAAC,kBAAD;IAAU,IAAI,EAAEA,IAAhB;IAAsB,KAAK,EAAED;EAA7B,EAAP;AACH,CAVM"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
declare const _default: () =>
|
|
1
|
+
import { CmsModelFieldValidatorPlugin } from "../../../types";
|
|
2
|
+
declare const _default: () => CmsModelFieldValidatorPlugin;
|
|
3
3
|
export default _default;
|
|
@@ -7,6 +7,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
+
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
11
|
+
|
|
12
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
+
|
|
10
14
|
var _react = _interopRequireDefault(require("react"));
|
|
11
15
|
|
|
12
16
|
var _Grid = require("@webiny/ui/Grid");
|
|
@@ -19,37 +23,89 @@ var _availableValidators = require("./date/availableValidators");
|
|
|
19
23
|
|
|
20
24
|
var _FormElementMessage = require("@webiny/ui/FormElementMessage");
|
|
21
25
|
|
|
26
|
+
var _hooks = require("../../hooks");
|
|
27
|
+
|
|
28
|
+
var _form = require("@webiny/form");
|
|
29
|
+
|
|
30
|
+
function DateGteSettings() {
|
|
31
|
+
var _useModelField = (0, _hooks.useModelField)(),
|
|
32
|
+
field = _useModelField.field;
|
|
33
|
+
|
|
34
|
+
var type = field.settings ? field.settings.type : undefined;
|
|
35
|
+
var availableValidators = (0, _availableValidators.getAvailableValidators)(type).join(",");
|
|
36
|
+
return /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
|
|
37
|
+
span: 12
|
|
38
|
+
}, /*#__PURE__*/_react.default.createElement(_form.Bind, {
|
|
39
|
+
name: "settings.type"
|
|
40
|
+
}, function (bind) {
|
|
41
|
+
if (bind.value !== type) {
|
|
42
|
+
bind.onChange(type);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
|
|
46
|
+
}), /*#__PURE__*/_react.default.createElement(_form.Bind, {
|
|
47
|
+
name: "settings.value",
|
|
48
|
+
validators: _validation.validation.create(availableValidators)
|
|
49
|
+
}, function (bind) {
|
|
50
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _createDateInputField.createInputField)(field, bind), /*#__PURE__*/_react.default.createElement(_FormElementMessage.FormElementMessage, null, "This is the earliest date/time that will be allowed."));
|
|
51
|
+
})));
|
|
52
|
+
}
|
|
53
|
+
|
|
22
54
|
var _default = function _default() {
|
|
23
55
|
return {
|
|
24
|
-
type: "cms-
|
|
56
|
+
type: "cms-model-field-validator",
|
|
25
57
|
name: "cms-editor-field-validator-date-gte",
|
|
26
58
|
validator: {
|
|
27
59
|
name: "dateGte",
|
|
28
60
|
label: "Later or equal",
|
|
29
61
|
description: "Entered date/time must be equal or later compared to the provided date.",
|
|
30
62
|
defaultMessage: "Date/time is earlier than the provided one.",
|
|
31
|
-
renderSettings: function renderSettings(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
var
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
63
|
+
renderSettings: function renderSettings() {
|
|
64
|
+
return /*#__PURE__*/_react.default.createElement(DateGteSettings, null);
|
|
65
|
+
},
|
|
66
|
+
validate: function () {
|
|
67
|
+
var _validate = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(value, _ref) {
|
|
68
|
+
var validator, _validator$settings, gteValue, type;
|
|
69
|
+
|
|
70
|
+
return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
|
71
|
+
while (1) {
|
|
72
|
+
switch (_context.prev = _context.next) {
|
|
73
|
+
case 0:
|
|
74
|
+
validator = _ref.validator;
|
|
75
|
+
_validator$settings = validator.settings, gteValue = _validator$settings.value, type = _validator$settings.type;
|
|
76
|
+
|
|
77
|
+
if (!(typeof gteValue === "undefined")) {
|
|
78
|
+
_context.next = 6;
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
return _context.abrupt("return", true);
|
|
83
|
+
|
|
84
|
+
case 6:
|
|
85
|
+
if (!(type === "time")) {
|
|
86
|
+
_context.next = 8;
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
return _context.abrupt("return", _validation.validation.validate(value, "timeGte:".concat(gteValue)));
|
|
91
|
+
|
|
92
|
+
case 8:
|
|
93
|
+
return _context.abrupt("return", _validation.validation.validate(value, "dateGte:".concat(gteValue)));
|
|
94
|
+
|
|
95
|
+
case 9:
|
|
96
|
+
case "end":
|
|
97
|
+
return _context.stop();
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}, _callee);
|
|
101
|
+
}));
|
|
102
|
+
|
|
103
|
+
function validate(_x, _x2) {
|
|
104
|
+
return _validate.apply(this, arguments);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
return validate;
|
|
108
|
+
}()
|
|
53
109
|
}
|
|
54
110
|
};
|
|
55
111
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["type","
|
|
1
|
+
{"version":3,"names":["DateGteSettings","useModelField","field","type","settings","undefined","availableValidators","getAvailableValidators","join","bind","value","onChange","validation","create","createInputField","name","validator","label","description","defaultMessage","renderSettings","validate","gteValue"],"sources":["dateGte.tsx"],"sourcesContent":["import React from \"react\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\nimport { createInputField } from \"./date/createDateInputField\";\nimport { getAvailableValidators } from \"./date/availableValidators\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { useModelField } from \"~/admin/hooks\";\nimport { Bind } from \"@webiny/form\";\n\nfunction DateGteSettings() {\n const { field } = useModelField();\n const type = field.settings ? field.settings.type : undefined;\n const availableValidators = getAvailableValidators(type).join(\",\");\n return (\n <Grid>\n <Cell span={12}>\n <Bind name={\"settings.type\"}>\n {bind => {\n if (bind.value !== type) {\n bind.onChange(type);\n }\n return <></>;\n }}\n </Bind>\n <Bind name={\"settings.value\"} validators={validation.create(availableValidators)}>\n {bind => {\n return (\n <>\n {createInputField(field, bind)}\n <FormElementMessage>\n This is the earliest date/time that will be allowed.\n </FormElementMessage>\n </>\n );\n }}\n </Bind>\n </Cell>\n </Grid>\n );\n}\n\nexport default (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-editor-field-validator-date-gte\",\n validator: {\n name: \"dateGte\",\n label: \"Later or equal\",\n description: \"Entered date/time must be equal or later compared to the provided date.\",\n defaultMessage: `Date/time is earlier than the provided one.`,\n renderSettings() {\n return <DateGteSettings />;\n },\n validate: async (value, { validator }) => {\n const { value: gteValue, type } = validator.settings;\n if (typeof gteValue === \"undefined\") {\n return true;\n } else if (type === \"time\") {\n return validation.validate(value, `timeGte:${gteValue}`);\n }\n return validation.validate(value, `dateGte:${gteValue}`);\n }\n }\n});\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAEA,SAASA,eAAT,GAA2B;EACvB,qBAAkB,IAAAC,oBAAA,GAAlB;EAAA,IAAQC,KAAR,kBAAQA,KAAR;;EACA,IAAMC,IAAI,GAAGD,KAAK,CAACE,QAAN,GAAiBF,KAAK,CAACE,QAAN,CAAeD,IAAhC,GAAuCE,SAApD;EACA,IAAMC,mBAAmB,GAAG,IAAAC,2CAAA,EAAuBJ,IAAvB,EAA6BK,IAA7B,CAAkC,GAAlC,CAA5B;EACA,oBACI,6BAAC,UAAD,qBACI,6BAAC,UAAD;IAAM,IAAI,EAAE;EAAZ,gBACI,6BAAC,UAAD;IAAM,IAAI,EAAE;EAAZ,GACK,UAAAC,IAAI,EAAI;IACL,IAAIA,IAAI,CAACC,KAAL,KAAeP,IAAnB,EAAyB;MACrBM,IAAI,CAACE,QAAL,CAAcR,IAAd;IACH;;IACD,oBAAO,2DAAP;EACH,CANL,CADJ,eASI,6BAAC,UAAD;IAAM,IAAI,EAAE,gBAAZ;IAA8B,UAAU,EAAES,sBAAA,CAAWC,MAAX,CAAkBP,mBAAlB;EAA1C,GACK,UAAAG,IAAI,EAAI;IACL,oBACI,4DACK,IAAAK,sCAAA,EAAiBZ,KAAjB,EAAwBO,IAAxB,CADL,eAEI,6BAAC,sCAAD,+DAFJ,CADJ;EAQH,CAVL,CATJ,CADJ,CADJ;AA0BH;;eAEc;EAAA,OAAqC;IAChDN,IAAI,EAAE,2BAD0C;IAEhDY,IAAI,EAAE,qCAF0C;IAGhDC,SAAS,EAAE;MACPD,IAAI,EAAE,SADC;MAEPE,KAAK,EAAE,gBAFA;MAGPC,WAAW,EAAE,yEAHN;MAIPC,cAAc,+CAJP;MAKPC,cALO,4BAKU;QACb,oBAAO,6BAAC,eAAD,OAAP;MACH,CAPM;MAQPC,QAAQ;QAAA,uGAAE,iBAAOX,KAAP;UAAA;;UAAA;YAAA;cAAA;gBAAA;kBAAgBM,SAAhB,QAAgBA,SAAhB;kBAAA,sBAC4BA,SAAS,CAACZ,QADtC,EACSkB,QADT,uBACEZ,KADF,EACmBP,IADnB,uBACmBA,IADnB;;kBAAA,MAEF,OAAOmB,QAAP,KAAoB,WAFlB;oBAAA;oBAAA;kBAAA;;kBAAA,iCAGK,IAHL;;gBAAA;kBAAA,MAIKnB,IAAI,KAAK,MAJd;oBAAA;oBAAA;kBAAA;;kBAAA,iCAKKS,sBAAA,CAAWS,QAAX,CAAoBX,KAApB,oBAAsCY,QAAtC,EALL;;gBAAA;kBAAA,iCAOCV,sBAAA,CAAWS,QAAX,CAAoBX,KAApB,oBAAsCY,QAAtC,EAPD;;gBAAA;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CAAF;;QAAA;UAAA;QAAA;;QAAA;MAAA;IARD;EAHqC,CAArC;AAAA,C"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
declare const _default: () =>
|
|
1
|
+
import { CmsModelFieldValidatorPlugin } from "../../../types";
|
|
2
|
+
declare const _default: () => CmsModelFieldValidatorPlugin;
|
|
3
3
|
export default _default;
|
|
@@ -7,6 +7,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
+
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
11
|
+
|
|
12
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
+
|
|
10
14
|
var _react = _interopRequireDefault(require("react"));
|
|
11
15
|
|
|
12
16
|
var _Grid = require("@webiny/ui/Grid");
|
|
@@ -19,37 +23,89 @@ var _FormElementMessage = require("@webiny/ui/FormElementMessage");
|
|
|
19
23
|
|
|
20
24
|
var _availableValidators = require("./date/availableValidators");
|
|
21
25
|
|
|
26
|
+
var _hooks = require("../../hooks");
|
|
27
|
+
|
|
28
|
+
var _form = require("@webiny/form");
|
|
29
|
+
|
|
30
|
+
function DateLteSettings() {
|
|
31
|
+
var _useModelField = (0, _hooks.useModelField)(),
|
|
32
|
+
field = _useModelField.field;
|
|
33
|
+
|
|
34
|
+
var type = field.settings ? field.settings.type : undefined;
|
|
35
|
+
var availableValidators = (0, _availableValidators.getAvailableValidators)(type).join(",");
|
|
36
|
+
return /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
|
|
37
|
+
span: 12
|
|
38
|
+
}, /*#__PURE__*/_react.default.createElement(_form.Bind, {
|
|
39
|
+
name: "settings.type"
|
|
40
|
+
}, function (bind) {
|
|
41
|
+
if (bind.value !== type) {
|
|
42
|
+
bind.onChange(type);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
|
|
46
|
+
}), /*#__PURE__*/_react.default.createElement(_form.Bind, {
|
|
47
|
+
name: "settings.value",
|
|
48
|
+
validators: _validation.validation.create(availableValidators)
|
|
49
|
+
}, function (bind) {
|
|
50
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _createDateInputField.createInputField)(field, bind), /*#__PURE__*/_react.default.createElement(_FormElementMessage.FormElementMessage, null, "This is the latest date/time that will be allowed."));
|
|
51
|
+
})));
|
|
52
|
+
}
|
|
53
|
+
|
|
22
54
|
var _default = function _default() {
|
|
23
55
|
return {
|
|
24
|
-
type: "cms-
|
|
56
|
+
type: "cms-model-field-validator",
|
|
25
57
|
name: "cms-editor-field-validator-date-lte",
|
|
26
58
|
validator: {
|
|
27
59
|
name: "dateLte",
|
|
28
60
|
label: "Earlier or equal",
|
|
29
61
|
description: "Entered date/time must be equal or earlier compared to the provided date.",
|
|
30
62
|
defaultMessage: "Date/time is later than the provided one.",
|
|
31
|
-
renderSettings: function renderSettings(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
var
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
63
|
+
renderSettings: function renderSettings() {
|
|
64
|
+
return /*#__PURE__*/_react.default.createElement(DateLteSettings, null);
|
|
65
|
+
},
|
|
66
|
+
validate: function () {
|
|
67
|
+
var _validate = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(value, _ref) {
|
|
68
|
+
var validator, _validator$settings, lteValue, type;
|
|
69
|
+
|
|
70
|
+
return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
|
71
|
+
while (1) {
|
|
72
|
+
switch (_context.prev = _context.next) {
|
|
73
|
+
case 0:
|
|
74
|
+
validator = _ref.validator;
|
|
75
|
+
_validator$settings = validator.settings, lteValue = _validator$settings.value, type = _validator$settings.type;
|
|
76
|
+
|
|
77
|
+
if (!(typeof lteValue === "undefined")) {
|
|
78
|
+
_context.next = 6;
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
return _context.abrupt("return", true);
|
|
83
|
+
|
|
84
|
+
case 6:
|
|
85
|
+
if (!(type === "time")) {
|
|
86
|
+
_context.next = 8;
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
return _context.abrupt("return", _validation.validation.validate(value, "timeLte:".concat(lteValue)));
|
|
91
|
+
|
|
92
|
+
case 8:
|
|
93
|
+
return _context.abrupt("return", _validation.validation.validate(value, "dateLte:".concat(lteValue)));
|
|
94
|
+
|
|
95
|
+
case 9:
|
|
96
|
+
case "end":
|
|
97
|
+
return _context.stop();
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}, _callee);
|
|
101
|
+
}));
|
|
102
|
+
|
|
103
|
+
function validate(_x, _x2) {
|
|
104
|
+
return _validate.apply(this, arguments);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
return validate;
|
|
108
|
+
}()
|
|
53
109
|
}
|
|
54
110
|
};
|
|
55
111
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["type","
|
|
1
|
+
{"version":3,"names":["DateLteSettings","useModelField","field","type","settings","undefined","availableValidators","getAvailableValidators","join","bind","value","onChange","validation","create","createInputField","name","validator","label","description","defaultMessage","renderSettings","validate","lteValue"],"sources":["dateLte.tsx"],"sourcesContent":["import React from \"react\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\nimport { createInputField } from \"./date/createDateInputField\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { getAvailableValidators } from \"./date/availableValidators\";\nimport { useModelField } from \"~/admin/hooks\";\nimport { Bind } from \"@webiny/form\";\n\nfunction DateLteSettings() {\n const { field } = useModelField();\n const type = field.settings ? field.settings.type : undefined;\n const availableValidators = getAvailableValidators(type).join(\",\");\n return (\n <Grid>\n <Cell span={12}>\n <Bind name={\"settings.type\"}>\n {bind => {\n if (bind.value !== type) {\n bind.onChange(type);\n }\n return <></>;\n }}\n </Bind>\n <Bind name={\"settings.value\"} validators={validation.create(availableValidators)}>\n {bind => {\n return (\n <>\n {createInputField(field, bind)}\n <FormElementMessage>\n This is the latest date/time that will be allowed.\n </FormElementMessage>\n </>\n );\n }}\n </Bind>\n </Cell>\n </Grid>\n );\n}\n\nexport default (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-editor-field-validator-date-lte\",\n validator: {\n name: \"dateLte\",\n label: \"Earlier or equal\",\n description: \"Entered date/time must be equal or earlier compared to the provided date.\",\n defaultMessage: `Date/time is later than the provided one.`,\n renderSettings() {\n return <DateLteSettings />;\n },\n validate: async (value, { validator }) => {\n const { value: lteValue, type } = validator.settings;\n if (typeof lteValue === \"undefined\") {\n return true;\n } else if (type === \"time\") {\n return validation.validate(value, `timeLte:${lteValue}`);\n }\n return validation.validate(value, `dateLte:${lteValue}`);\n }\n }\n});\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAEA,SAASA,eAAT,GAA2B;EACvB,qBAAkB,IAAAC,oBAAA,GAAlB;EAAA,IAAQC,KAAR,kBAAQA,KAAR;;EACA,IAAMC,IAAI,GAAGD,KAAK,CAACE,QAAN,GAAiBF,KAAK,CAACE,QAAN,CAAeD,IAAhC,GAAuCE,SAApD;EACA,IAAMC,mBAAmB,GAAG,IAAAC,2CAAA,EAAuBJ,IAAvB,EAA6BK,IAA7B,CAAkC,GAAlC,CAA5B;EACA,oBACI,6BAAC,UAAD,qBACI,6BAAC,UAAD;IAAM,IAAI,EAAE;EAAZ,gBACI,6BAAC,UAAD;IAAM,IAAI,EAAE;EAAZ,GACK,UAAAC,IAAI,EAAI;IACL,IAAIA,IAAI,CAACC,KAAL,KAAeP,IAAnB,EAAyB;MACrBM,IAAI,CAACE,QAAL,CAAcR,IAAd;IACH;;IACD,oBAAO,2DAAP;EACH,CANL,CADJ,eASI,6BAAC,UAAD;IAAM,IAAI,EAAE,gBAAZ;IAA8B,UAAU,EAAES,sBAAA,CAAWC,MAAX,CAAkBP,mBAAlB;EAA1C,GACK,UAAAG,IAAI,EAAI;IACL,oBACI,4DACK,IAAAK,sCAAA,EAAiBZ,KAAjB,EAAwBO,IAAxB,CADL,eAEI,6BAAC,sCAAD,6DAFJ,CADJ;EAQH,CAVL,CATJ,CADJ,CADJ;AA0BH;;eAEc;EAAA,OAAqC;IAChDN,IAAI,EAAE,2BAD0C;IAEhDY,IAAI,EAAE,qCAF0C;IAGhDC,SAAS,EAAE;MACPD,IAAI,EAAE,SADC;MAEPE,KAAK,EAAE,kBAFA;MAGPC,WAAW,EAAE,2EAHN;MAIPC,cAAc,6CAJP;MAKPC,cALO,4BAKU;QACb,oBAAO,6BAAC,eAAD,OAAP;MACH,CAPM;MAQPC,QAAQ;QAAA,uGAAE,iBAAOX,KAAP;UAAA;;UAAA;YAAA;cAAA;gBAAA;kBAAgBM,SAAhB,QAAgBA,SAAhB;kBAAA,sBAC4BA,SAAS,CAACZ,QADtC,EACSkB,QADT,uBACEZ,KADF,EACmBP,IADnB,uBACmBA,IADnB;;kBAAA,MAEF,OAAOmB,QAAP,KAAoB,WAFlB;oBAAA;oBAAA;kBAAA;;kBAAA,iCAGK,IAHL;;gBAAA;kBAAA,MAIKnB,IAAI,KAAK,MAJd;oBAAA;oBAAA;kBAAA;;kBAAA,iCAKKS,sBAAA,CAAWS,QAAX,CAAoBX,KAApB,oBAAsCY,QAAtC,EALL;;gBAAA;kBAAA,iCAOCV,sBAAA,CAAWS,QAAX,CAAoBX,KAApB,oBAAsCY,QAAtC,EAPD;;gBAAA;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CAAF;;QAAA;UAAA;QAAA;;QAAA;MAAA;IARD;EAHqC,CAArC;AAAA,C"}
|