@webiny/app-headless-cms 0.0.0-unstable.78f581c1d2 → 0.0.0-unstable.97a151f74d
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 +17 -11
- 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/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/createValidators.d.ts +2 -2
- package/admin/components/ContentEntryForm/functions/createValidators.js +20 -15
- package/admin/components/ContentEntryForm/functions/createValidators.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 +10 -7
- 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/ContentModelEditorProvider.d.ts +40 -0
- package/admin/components/ContentModelEditor/ContentModelEditorProvider.js +323 -0
- package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -0
- package/admin/components/ContentModelEditor/Context.js +1 -1
- package/admin/components/ContentModelEditor/Context.js.map +1 -1
- package/admin/components/ContentModelEditor/Editor.js +5 -5
- package/admin/components/ContentModelEditor/Editor.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/useModelEditor.js +22 -0
- package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -0
- package/admin/components/DelayedOnChange.d.ts +42 -0
- package/admin/components/DelayedOnChange.js +135 -0
- package/admin/components/DelayedOnChange.js.map +1 -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 +47 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.d.ts +12 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js +150 -0
- package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/getValidators.d.ts +12 -0
- package/admin/components/FieldEditor/EditFieldDialog/getValidators.js +94 -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 +16 -13
- 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/components/IconPicker.js +234 -0
- 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/graphql/contentEntries.js +21 -15
- 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.js +5 -1
- package/admin/hooks/usePermission.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 +4 -4
- 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 +9 -8
- 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.js +30 -21
- package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
- package/admin/plugins/fieldValidators/dateLte.js +30 -21
- package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
- package/admin/plugins/fieldValidators/dynamicZone.d.ts +2 -0
- package/admin/plugins/fieldValidators/dynamicZone.js +80 -0
- package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -0
- package/admin/plugins/fieldValidators/gte.js +4 -3
- package/admin/plugins/fieldValidators/gte.js.map +1 -1
- package/admin/plugins/fieldValidators/in.js +4 -3
- package/admin/plugins/fieldValidators/in.js.map +1 -1
- package/admin/plugins/fieldValidators/lte.js +4 -3
- package/admin/plugins/fieldValidators/lte.js.map +1 -1
- package/admin/plugins/fieldValidators/maxLength.js +4 -3
- package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
- package/admin/plugins/fieldValidators/minLength.js +4 -3
- package/admin/plugins/fieldValidators/minLength.js.map +1 -1
- package/admin/plugins/fieldValidators/pattern.js +72 -62
- package/admin/plugins/fieldValidators/pattern.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.js +6 -5
- package/admin/plugins/fields/boolean.js.map +1 -1
- 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 +165 -0
- package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -0
- package/admin/plugins/fields/dynamicZone.d.ts +2 -0
- package/admin/plugins/fields/dynamicZone.js +94 -0
- package/admin/plugins/fields/dynamicZone.js.map +1 -0
- package/admin/plugins/fields/file.js +6 -5
- package/admin/plugins/fields/file.js.map +1 -1
- package/admin/plugins/fields/longText.js +4 -3
- package/admin/plugins/fields/longText.js.map +1 -1
- 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.js +9 -4
- package/admin/plugins/fields/object.js.map +1 -1
- package/admin/plugins/fields/ref.js +108 -100
- package/admin/plugins/fields/ref.js.map +1 -1
- package/admin/plugins/fields/richText.js +6 -5
- package/admin/plugins/fields/richText.js.map +1 -1
- 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/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/plugins/validators/dynamicZone.d.ts +2 -0
- package/admin/plugins/validators/dynamicZone.js +141 -0
- package/admin/plugins/validators/dynamicZone.js.map +1 -0
- 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/ContentEntry/ContentEntryContext.js +4 -1
- 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/prepareFormData.d.ts +2 -2
- package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/useRevision.js +6 -17
- 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.js +18 -11
- 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/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 +133 -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 +19 -19
- package/types.d.ts +72 -44
- package/types.js.map +1 -1
- package/utils/createTypeName.d.ts +1 -0
- package/utils/createTypeName.js +18 -0
- package/utils/createTypeName.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/HeadlessCMS.js
CHANGED
|
@@ -29,6 +29,8 @@ var _DefaultOnEntryDelete = require("./admin/plugins/entry/DefaultOnEntryDelete"
|
|
|
29
29
|
|
|
30
30
|
var _DefaultOnEntryPublish = require("./admin/plugins/entry/DefaultOnEntryPublish");
|
|
31
31
|
|
|
32
|
+
var _allPlugins = _interopRequireDefault(require("./allPlugins"));
|
|
33
|
+
|
|
32
34
|
var createHeadlessCMSProvider = function createHeadlessCMSProvider(createApolloClient) {
|
|
33
35
|
return function (Component) {
|
|
34
36
|
return function HeadlessCMSProvider(_ref) {
|
|
@@ -45,6 +47,8 @@ var HeadlessCMSExtension = function HeadlessCMSExtension(_ref2) {
|
|
|
45
47
|
|
|
46
48
|
_plugins.plugins.register(_apiInformation.default);
|
|
47
49
|
|
|
50
|
+
_plugins.plugins.register(_allPlugins.default);
|
|
51
|
+
|
|
48
52
|
_plugins.plugins.register(new _app.ApolloCacheObjectIdPlugin(function (obj) {
|
|
49
53
|
if (obj.__typename === "CmsContentModelField") {
|
|
50
54
|
return null;
|
package/HeadlessCMS.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createHeadlessCMSProvider","createApolloClient","Component","HeadlessCMSProvider","children","HeadlessCMSExtension","plugins","register","apiInformation","ApolloCacheObjectIdPlugin","obj","__typename","undefined","HeadlessCMS","memo"],"sources":["HeadlessCMS.tsx"],"sourcesContent":["import React, { Fragment, memo } from \"react\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Plugins, Provider } from \"@webiny/app-admin\";\nimport { ApolloCacheObjectIdPlugin } from \"@webiny/app\";\nimport { ApolloClient } from \"apollo-client\";\nimport { CmsProvider } from \"./admin/contexts/Cms\";\nimport { CmsMenuLoader } from \"~/admin/menus/CmsMenuLoader\";\nimport apiInformation from \"./admin/plugins/apiInformation\";\nimport { ContentEntriesModule } from \"./admin/views/contentEntries/experiment/ContentEntriesModule\";\nimport { DefaultOnEntryDelete } from \"./admin/plugins/entry/DefaultOnEntryDelete\";\nimport { DefaultOnEntryPublish } from \"~/admin/plugins/entry/DefaultOnEntryPublish\";\n\nconst createHeadlessCMSProvider =\n (createApolloClient: CreateApolloClient) =>\n (Component: React.FC): React.FC => {\n return function HeadlessCMSProvider({ children }) {\n return (\n <CmsProvider createApolloClient={createApolloClient}>\n <Component>{children}</Component>\n </CmsProvider>\n );\n };\n };\n\ninterface CreateApolloClientParams {\n uri: string;\n}\ninterface CreateApolloClient {\n (params: CreateApolloClientParams): ApolloClient<any>;\n}\n\nexport interface HeadlessCMSProps {\n createApolloClient: CreateApolloClient;\n}\n\nconst HeadlessCMSExtension = ({ createApolloClient }: HeadlessCMSProps) => {\n plugins.register(apiInformation);\n\n plugins.register(\n new ApolloCacheObjectIdPlugin(obj => {\n if (obj.__typename === \"CmsContentModelField\") {\n return null;\n }\n\n return undefined;\n })\n );\n\n return (\n <Fragment>\n <ContentEntriesModule />\n <Provider hoc={createHeadlessCMSProvider(createApolloClient)} />\n <Plugins>\n <CmsMenuLoader />\n <DefaultOnEntryDelete />\n <DefaultOnEntryPublish />\n </Plugins>\n </Fragment>\n );\n};\n\nexport const HeadlessCMS = memo(HeadlessCMSExtension);\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,yBAAyB,GAC3B,SADEA,yBACF,CAACC,kBAAD;EAAA,OACA,UAACC,SAAD,EAAmC;IAC/B,OAAO,SAASC,mBAAT,OAA2C;MAAA,IAAZC,QAAY,QAAZA,QAAY;MAC9C,oBACI,6BAAC,gBAAD;QAAa,kBAAkB,EAAEH;MAAjC,gBACI,6BAAC,SAAD,QAAYG,QAAZ,CADJ,CADJ;IAKH,CAND;EAOH,CATD;AAAA,CADJ;;AAuBA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,QAA8C;EAAA,IAA3CJ,kBAA2C,SAA3CA,kBAA2C;;EACvEK,gBAAA,CAAQC,QAAR,CAAiBC,uBAAjB;;
|
|
1
|
+
{"version":3,"names":["createHeadlessCMSProvider","createApolloClient","Component","HeadlessCMSProvider","children","HeadlessCMSExtension","plugins","register","apiInformation","allPlugins","ApolloCacheObjectIdPlugin","obj","__typename","undefined","HeadlessCMS","memo"],"sources":["HeadlessCMS.tsx"],"sourcesContent":["import React, { Fragment, memo } from \"react\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Plugins, Provider } from \"@webiny/app-admin\";\nimport { ApolloCacheObjectIdPlugin } from \"@webiny/app\";\nimport { ApolloClient } from \"apollo-client\";\nimport { CmsProvider } from \"./admin/contexts/Cms\";\nimport { CmsMenuLoader } from \"~/admin/menus/CmsMenuLoader\";\nimport apiInformation from \"./admin/plugins/apiInformation\";\nimport { ContentEntriesModule } from \"./admin/views/contentEntries/experiment/ContentEntriesModule\";\nimport { DefaultOnEntryDelete } from \"./admin/plugins/entry/DefaultOnEntryDelete\";\nimport { DefaultOnEntryPublish } from \"~/admin/plugins/entry/DefaultOnEntryPublish\";\nimport allPlugins from \"./allPlugins\";\n\nconst createHeadlessCMSProvider =\n (createApolloClient: CreateApolloClient) =>\n (Component: React.FC): React.FC => {\n return function HeadlessCMSProvider({ children }) {\n return (\n <CmsProvider createApolloClient={createApolloClient}>\n <Component>{children}</Component>\n </CmsProvider>\n );\n };\n };\n\ninterface CreateApolloClientParams {\n uri: string;\n}\ninterface CreateApolloClient {\n (params: CreateApolloClientParams): ApolloClient<any>;\n}\n\nexport interface HeadlessCMSProps {\n createApolloClient: CreateApolloClient;\n}\n\nconst HeadlessCMSExtension = ({ createApolloClient }: HeadlessCMSProps) => {\n plugins.register(apiInformation);\n plugins.register(allPlugins);\n\n plugins.register(\n new ApolloCacheObjectIdPlugin(obj => {\n if (obj.__typename === \"CmsContentModelField\") {\n return null;\n }\n\n return undefined;\n })\n );\n\n return (\n <Fragment>\n <ContentEntriesModule />\n <Provider hoc={createHeadlessCMSProvider(createApolloClient)} />\n <Plugins>\n <CmsMenuLoader />\n <DefaultOnEntryDelete />\n <DefaultOnEntryPublish />\n </Plugins>\n </Fragment>\n );\n};\n\nexport const HeadlessCMS = memo(HeadlessCMSExtension);\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,yBAAyB,GAC3B,SADEA,yBACF,CAACC,kBAAD;EAAA,OACA,UAACC,SAAD,EAAmC;IAC/B,OAAO,SAASC,mBAAT,OAA2C;MAAA,IAAZC,QAAY,QAAZA,QAAY;MAC9C,oBACI,6BAAC,gBAAD;QAAa,kBAAkB,EAAEH;MAAjC,gBACI,6BAAC,SAAD,QAAYG,QAAZ,CADJ,CADJ;IAKH,CAND;EAOH,CATD;AAAA,CADJ;;AAuBA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,QAA8C;EAAA,IAA3CJ,kBAA2C,SAA3CA,kBAA2C;;EACvEK,gBAAA,CAAQC,QAAR,CAAiBC,uBAAjB;;EACAF,gBAAA,CAAQC,QAAR,CAAiBE,mBAAjB;;EAEAH,gBAAA,CAAQC,QAAR,CACI,IAAIG,8BAAJ,CAA8B,UAAAC,GAAG,EAAI;IACjC,IAAIA,GAAG,CAACC,UAAJ,KAAmB,sBAAvB,EAA+C;MAC3C,OAAO,IAAP;IACH;;IAED,OAAOC,SAAP;EACH,CAND,CADJ;;EAUA,oBACI,6BAAC,eAAD,qBACI,6BAAC,0CAAD,OADJ,eAEI,6BAAC,kBAAD;IAAU,GAAG,EAAEb,yBAAyB,CAACC,kBAAD;EAAxC,EAFJ,eAGI,6BAAC,iBAAD,qBACI,6BAAC,4BAAD,OADJ,eAEI,6BAAC,0CAAD,OAFJ,eAGI,6BAAC,4CAAD,OAHJ,CAHJ,CADJ;AAWH,CAzBD;;AA2BO,IAAMa,WAAW,gBAAG,IAAAC,WAAA,EAAKV,oBAAL,CAApB"}
|
|
@@ -35,6 +35,8 @@ var _reactRouter = require("@webiny/react-router");
|
|
|
35
35
|
|
|
36
36
|
var _appAdmin = require("@webiny/app-admin");
|
|
37
37
|
|
|
38
|
+
var _ModelProvider = require("../ModelProvider");
|
|
39
|
+
|
|
38
40
|
var _excluded = ["onForm"];
|
|
39
41
|
var FormWrapper = /*#__PURE__*/(0, _styled.default)("div", {
|
|
40
42
|
target: "ejw5gwy0",
|
|
@@ -63,7 +65,6 @@ var isDifferent = function isDifferent(value, compare) {
|
|
|
63
65
|
var ContentEntryForm = function ContentEntryForm(_ref) {
|
|
64
66
|
var onForm = _ref.onForm,
|
|
65
67
|
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
66
|
-
var contentModel = props.contentModel;
|
|
67
68
|
|
|
68
69
|
var _useContentEntryForm = (0, _useContentEntryForm2.useContentEntryForm)(props),
|
|
69
70
|
loading = _useContentEntryForm.loading,
|
|
@@ -72,6 +73,9 @@ var ContentEntryForm = function ContentEntryForm(_ref) {
|
|
|
72
73
|
_onSubmit = _useContentEntryForm.onSubmit,
|
|
73
74
|
invalidFields = _useContentEntryForm.invalidFields;
|
|
74
75
|
|
|
76
|
+
var _useModel = (0, _ModelProvider.useModel)(),
|
|
77
|
+
model = _useModel.model;
|
|
78
|
+
|
|
75
79
|
var _React$useState = _react.default.useState(false),
|
|
76
80
|
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
|
|
77
81
|
isDirty = _React$useState2[0],
|
|
@@ -102,11 +106,11 @@ var ContentEntryForm = function ContentEntryForm(_ref) {
|
|
|
102
106
|
}, []);
|
|
103
107
|
|
|
104
108
|
var formRenderer = _plugins.plugins.byType("cms-content-form-renderer").find(function (pl) {
|
|
105
|
-
return pl.modelId ===
|
|
109
|
+
return pl.modelId === model.modelId;
|
|
106
110
|
});
|
|
107
111
|
|
|
108
112
|
var renderCustomLayout = (0, _react.useCallback)(function (formRenderProps) {
|
|
109
|
-
var fields =
|
|
113
|
+
var fields = model.fields.reduce(function (acc, field) {
|
|
110
114
|
/**
|
|
111
115
|
* TODO @ts-refactor
|
|
112
116
|
* Figure out type for Bind.
|
|
@@ -114,17 +118,17 @@ var ContentEntryForm = function ContentEntryForm(_ref) {
|
|
|
114
118
|
acc[field.fieldId] = /*#__PURE__*/_react.default.createElement(_RenderFieldElement.default, {
|
|
115
119
|
field: field,
|
|
116
120
|
Bind: formRenderProps.Bind,
|
|
117
|
-
contentModel:
|
|
121
|
+
contentModel: model
|
|
118
122
|
});
|
|
119
123
|
return acc;
|
|
120
124
|
}, {});
|
|
121
125
|
|
|
122
126
|
if (!formRenderer) {
|
|
123
|
-
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Missing form renderer for modelId \"".concat(
|
|
127
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Missing form renderer for modelId \"".concat(model.modelId, "\"."));
|
|
124
128
|
}
|
|
125
129
|
|
|
126
130
|
return formRenderer.render((0, _objectSpread2.default)((0, _objectSpread2.default)({}, formRenderProps), {}, {
|
|
127
|
-
contentModel:
|
|
131
|
+
contentModel: model,
|
|
128
132
|
fields: fields,
|
|
129
133
|
|
|
130
134
|
/**
|
|
@@ -153,18 +157,20 @@ var ContentEntryForm = function ContentEntryForm(_ref) {
|
|
|
153
157
|
invalidFields: invalidFields,
|
|
154
158
|
onInvalid: function onInvalid() {
|
|
155
159
|
setIsDirty(true);
|
|
156
|
-
showSnackbar("
|
|
160
|
+
showSnackbar("Some fields did not pass the validation. Please check the form.");
|
|
157
161
|
}
|
|
158
162
|
}, function (formProps) {
|
|
159
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
163
|
+
return /*#__PURE__*/_react.default.createElement(_ModelProvider.ModelProvider, {
|
|
164
|
+
model: model
|
|
165
|
+
}, /*#__PURE__*/_react.default.createElement(_reactRouter.Prompt, {
|
|
160
166
|
when: isDirty,
|
|
161
167
|
message: "There are some unsaved changes! Are you sure you want to navigate away and discard all changes?"
|
|
162
168
|
}), /*#__PURE__*/_react.default.createElement(FormWrapper, {
|
|
163
169
|
"data-testid": "cms-content-form"
|
|
164
170
|
}, loading && /*#__PURE__*/_react.default.createElement(_Progress.CircularProgress, null), formRenderer ? renderCustomLayout(formProps) : /*#__PURE__*/_react.default.createElement(_Fields.Fields, Object.assign({
|
|
165
|
-
contentModel:
|
|
166
|
-
fields:
|
|
167
|
-
layout:
|
|
171
|
+
contentModel: model,
|
|
172
|
+
fields: model.fields || [],
|
|
173
|
+
layout: model.layout || []
|
|
168
174
|
}, formProps, {
|
|
169
175
|
Bind: formProps.Bind
|
|
170
176
|
}))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FormWrapper","styled","height","overflow","omitTypename","key","value","undefined","stringify","JSON","isDifferent","compare","ContentEntryForm","onForm","props","
|
|
1
|
+
{"version":3,"names":["FormWrapper","styled","height","overflow","omitTypename","key","value","undefined","stringify","JSON","isDifferent","compare","ContentEntryForm","onForm","props","useContentEntryForm","loading","initialData","data","onChange","onSubmit","invalidFields","useModel","model","React","useState","isDirty","setIsDirty","useEffect","useSnackbar","showSnackbar","ref","useRef","current","formRenderer","plugins","byType","find","pl","modelId","renderCustomLayout","useCallback","formRenderProps","fields","reduce","acc","field","fieldId","Bind","render","contentModel","form","different","formProps","layout"],"sources":["ContentEntryForm.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from \"react\";\nimport RenderFieldElement from \"./RenderFieldElement\";\nimport styled from \"@emotion/styled\";\nimport { Form } from \"@webiny/form\";\nimport { FormAPI, FormRenderPropParams } from \"@webiny/form/types\";\nimport { plugins } from \"@webiny/plugins\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { CmsContentFormRendererPlugin } from \"~/types\";\nimport { useContentEntryForm, UseContentEntryFormParams } from \"./useContentEntryForm\";\nimport { Fields } from \"./Fields\";\nimport { Prompt } from \"@webiny/react-router\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { ModelProvider, useModel } from \"~/admin/components/ModelProvider\";\n\nconst FormWrapper = styled(\"div\")({\n height: \"calc(100vh - 260px)\",\n overflow: \"auto\"\n});\n\ninterface ContentEntryFormProps extends UseContentEntryFormParams {\n onForm?: (form: FormAPI) => void;\n}\n\nfunction omitTypename(key: string, value: string): string | undefined {\n return key === \"__typename\" ? undefined : value;\n}\n\nconst stringify = (value: any): string => {\n return JSON.stringify(value || {}, omitTypename);\n};\n\nconst isDifferent = (value: any, compare: any): boolean => {\n if (!value && !compare) {\n return false;\n }\n return stringify(value) !== stringify(compare);\n};\n\nexport const ContentEntryForm: React.FC<ContentEntryFormProps> = ({ onForm, ...props }) => {\n const {\n loading,\n data: initialData,\n onChange,\n onSubmit,\n invalidFields\n } = useContentEntryForm(props);\n const { model } = useModel();\n\n const [isDirty, setIsDirty] = React.useState<boolean>(false);\n /**\n * Reset isDirty when the loaded data changes.\n */\n useEffect(() => {\n if (!isDirty) {\n return;\n }\n setIsDirty(false);\n }, [initialData]);\n\n const { showSnackbar } = useSnackbar();\n\n const ref = useRef<FormAPI | null>(null);\n\n useEffect(() => {\n if (typeof onForm !== \"function\" || !ref.current) {\n return;\n }\n onForm(ref.current);\n }, []);\n\n const formRenderer = plugins\n .byType<CmsContentFormRendererPlugin>(\"cms-content-form-renderer\")\n .find(pl => pl.modelId === model.modelId);\n\n const renderCustomLayout = useCallback(\n (formRenderProps: FormRenderPropParams) => {\n const fields = model.fields.reduce((acc, field) => {\n /**\n * TODO @ts-refactor\n * Figure out type for Bind.\n */\n acc[field.fieldId] = (\n <RenderFieldElement\n field={field}\n Bind={formRenderProps.Bind as any}\n contentModel={model}\n />\n );\n\n return acc;\n }, {} as Record<string, React.ReactElement>);\n if (!formRenderer) {\n return <>{`Missing form renderer for modelId \"${model.modelId}\".`}</>;\n }\n return formRenderer.render({\n ...formRenderProps,\n contentModel: model,\n fields,\n /**\n * TODO @ts-refactor\n * Figure out type for Bind.\n */\n Bind: formRenderProps.Bind as any\n });\n },\n [formRenderer]\n );\n\n return (\n <Form\n onChange={(data, form) => {\n const different = isDifferent(data, initialData);\n if (isDirty !== different) {\n setIsDirty(different);\n }\n return onChange(data, form);\n }}\n onSubmit={(data, form) => {\n setIsDirty(false);\n return onSubmit(data, form);\n }}\n data={initialData}\n ref={ref}\n invalidFields={invalidFields}\n onInvalid={() => {\n setIsDirty(true);\n showSnackbar(\"Some fields did not pass the validation. Please check the form.\");\n }}\n >\n {formProps => {\n return (\n <ModelProvider model={model}>\n <Prompt\n when={isDirty}\n message={\n \"There are some unsaved changes! Are you sure you want to navigate away and discard all changes?\"\n }\n />\n <FormWrapper data-testid={\"cms-content-form\"}>\n {loading && <CircularProgress />}\n {formRenderer ? (\n renderCustomLayout(formProps)\n ) : (\n <Fields\n contentModel={model}\n fields={model.fields || []}\n layout={model.layout || []}\n {...formProps}\n Bind={formProps.Bind as any}\n />\n )}\n </FormWrapper>\n </ModelProvider>\n );\n }}\n </Form>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { CmsEditorContentModel,
|
|
2
|
+
import { CmsEditorContentModel, CmsModelField, CmsEditorFieldsLayout, BindComponent } from "../../../types";
|
|
3
3
|
interface FieldsProps {
|
|
4
4
|
Bind: BindComponent;
|
|
5
5
|
contentModel: CmsEditorContentModel;
|
|
6
|
-
fields:
|
|
6
|
+
fields: CmsModelField[];
|
|
7
7
|
layout: CmsEditorFieldsLayout;
|
|
8
8
|
gridClassName?: string;
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getFieldById","fields","id","find","field","Fields","Bind","layout","contentModel","gridClassName","map","row","rowIndex","fieldId","Math","floor","length"],"sources":["Fields.tsx"],"sourcesContent":["import React from \"react\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport RenderFieldElement from \"./RenderFieldElement\";\nimport {\n CmsEditorContentModel,\n
|
|
1
|
+
{"version":3,"names":["getFieldById","fields","id","find","field","Fields","Bind","layout","contentModel","gridClassName","map","row","rowIndex","fieldId","Math","floor","length"],"sources":["Fields.tsx"],"sourcesContent":["import React from \"react\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport RenderFieldElement from \"./RenderFieldElement\";\nimport {\n CmsEditorContentModel,\n CmsModelField,\n CmsEditorFieldsLayout,\n BindComponent\n} from \"~/types\";\n\ninterface FieldsProps {\n Bind: BindComponent;\n contentModel: CmsEditorContentModel;\n fields: CmsModelField[];\n layout: CmsEditorFieldsLayout;\n gridClassName?: string;\n}\n\nconst getFieldById = (fields: CmsModelField[], id: string): CmsModelField | null => {\n return fields.find(field => field.id === id) || null;\n};\n\nexport const Fields: React.FC<FieldsProps> = ({\n Bind,\n fields,\n layout,\n contentModel,\n gridClassName\n}) => {\n return (\n <Grid className={gridClassName}>\n {layout.map((row, rowIndex) => (\n <React.Fragment key={rowIndex}>\n {row.map(fieldId => (\n <Cell span={Math.floor(12 / row.length)} key={fieldId}>\n <RenderFieldElement\n field={getFieldById(fields, fieldId) as CmsModelField}\n Bind={Bind}\n contentModel={contentModel}\n />\n </Cell>\n ))}\n </React.Fragment>\n ))}\n </Grid>\n );\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AAgBA,IAAMA,YAAY,GAAG,SAAfA,YAAe,CAACC,MAAD,EAA0BC,EAA1B,EAA+D;EAChF,OAAOD,MAAM,CAACE,IAAP,CAAY,UAAAC,KAAK;IAAA,OAAIA,KAAK,CAACF,EAAN,KAAaA,EAAjB;EAAA,CAAjB,KAAyC,IAAhD;AACH,CAFD;;AAIO,IAAMG,MAA6B,GAAG,SAAhCA,MAAgC,OAMvC;EAAA,IALFC,IAKE,QALFA,IAKE;EAAA,IAJFL,MAIE,QAJFA,MAIE;EAAA,IAHFM,MAGE,QAHFA,MAGE;EAAA,IAFFC,YAEE,QAFFA,YAEE;EAAA,IADFC,aACE,QADFA,aACE;EACF,oBACI,6BAAC,UAAD;IAAM,SAAS,EAAEA;EAAjB,GACKF,MAAM,CAACG,GAAP,CAAW,UAACC,GAAD,EAAMC,QAAN;IAAA,oBACR,6BAAC,cAAD,CAAO,QAAP;MAAgB,GAAG,EAAEA;IAArB,GACKD,GAAG,CAACD,GAAJ,CAAQ,UAAAG,OAAO;MAAA,oBACZ,6BAAC,UAAD;QAAM,IAAI,EAAEC,IAAI,CAACC,KAAL,CAAW,KAAKJ,GAAG,CAACK,MAApB,CAAZ;QAAyC,GAAG,EAAEH;MAA9C,gBACI,6BAAC,2BAAD;QACI,KAAK,EAAEb,YAAY,CAACC,MAAD,EAASY,OAAT,CADvB;QAEI,IAAI,EAAEP,IAFV;QAGI,YAAY,EAAEE;MAHlB,EADJ,CADY;IAAA,CAAf,CADL,CADQ;EAAA,CAAX,CADL,CADJ;AAiBH,CAxBM"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import {
|
|
2
|
+
import { CmsModelField, CmsEditorContentModel, BindComponent } from "../../../types";
|
|
3
3
|
interface RenderFieldElementProps {
|
|
4
|
-
field:
|
|
4
|
+
field: CmsModelField;
|
|
5
5
|
Bind: BindComponent;
|
|
6
6
|
contentModel: CmsEditorContentModel;
|
|
7
7
|
}
|
|
@@ -21,6 +21,8 @@ var _useBind = require("./useBind");
|
|
|
21
21
|
|
|
22
22
|
var _useRenderPlugins = require("./useRenderPlugins");
|
|
23
23
|
|
|
24
|
+
var _ModelFieldProvider = require("../ModelFieldProvider");
|
|
25
|
+
|
|
24
26
|
var _templateObject;
|
|
25
27
|
|
|
26
28
|
var t = _i18n.i18n.ns("app-headless-cms/admin/components/content-form");
|
|
@@ -44,12 +46,14 @@ var RenderFieldElement = function RenderFieldElement(props) {
|
|
|
44
46
|
});
|
|
45
47
|
}
|
|
46
48
|
|
|
47
|
-
return
|
|
49
|
+
return /*#__PURE__*/_react.default.createElement(_ModelFieldProvider.ModelFieldProvider, {
|
|
50
|
+
field: field
|
|
51
|
+
}, renderPlugin.renderer.render({
|
|
48
52
|
field: field,
|
|
49
53
|
getBind: getBind,
|
|
50
54
|
Label: _Label.default,
|
|
51
55
|
contentModel: contentModel
|
|
52
|
-
});
|
|
56
|
+
}));
|
|
53
57
|
};
|
|
54
58
|
|
|
55
59
|
var _default = RenderFieldElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["t","i18n","ns","RenderFieldElement","props","renderPlugins","useRenderPlugins","field","Bind","contentModel","getBind","useBind","renderPlugin","find","plugin","renderer","rendererName","get","fieldName","fieldId","render","Label"],"sources":["RenderFieldElement.tsx"],"sourcesContent":["import React from \"react\";\nimport {
|
|
1
|
+
{"version":3,"names":["t","i18n","ns","RenderFieldElement","props","renderPlugins","useRenderPlugins","field","Bind","contentModel","getBind","useBind","renderPlugin","find","plugin","renderer","rendererName","get","fieldName","fieldId","render","Label"],"sources":["RenderFieldElement.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsModelField, CmsEditorContentModel, BindComponent } from \"~/types\";\nimport get from \"lodash/get\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport Label from \"./Label\";\nimport { useBind } from \"./useBind\";\nimport { useRenderPlugins } from \"./useRenderPlugins\";\nimport { ModelFieldProvider } from \"../ModelFieldProvider\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/components/content-form\");\n\ninterface RenderFieldElementProps {\n field: CmsModelField;\n Bind: BindComponent;\n contentModel: CmsEditorContentModel;\n}\n\nconst RenderFieldElement: React.FC<RenderFieldElementProps> = props => {\n const renderPlugins = useRenderPlugins();\n const { field, Bind, contentModel } = props;\n const getBind = useBind({ Bind, field });\n\n const renderPlugin = renderPlugins.find(\n plugin => plugin.renderer.rendererName === get(field, \"renderer.name\")\n );\n\n if (!renderPlugin) {\n return t`Cannot render \"{fieldName}\" field - field renderer missing.`({\n fieldName: <strong>{field.fieldId}</strong>\n });\n }\n\n return (\n <ModelFieldProvider field={field}>\n {renderPlugin.renderer.render({ field, getBind, Label, contentModel })}\n </ModelFieldProvider>\n );\n};\n\nexport default RenderFieldElement;\n"],"mappings":";;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,gDAAR,CAAV;;AAQA,IAAMC,kBAAqD,GAAG,SAAxDA,kBAAwD,CAAAC,KAAK,EAAI;EACnE,IAAMC,aAAa,GAAG,IAAAC,kCAAA,GAAtB;EACA,IAAQC,KAAR,GAAsCH,KAAtC,CAAQG,KAAR;EAAA,IAAeC,IAAf,GAAsCJ,KAAtC,CAAeI,IAAf;EAAA,IAAqBC,YAArB,GAAsCL,KAAtC,CAAqBK,YAArB;EACA,IAAMC,OAAO,GAAG,IAAAC,gBAAA,EAAQ;IAAEH,IAAI,EAAJA,IAAF;IAAQD,KAAK,EAALA;EAAR,CAAR,CAAhB;EAEA,IAAMK,YAAY,GAAGP,aAAa,CAACQ,IAAd,CACjB,UAAAC,MAAM;IAAA,OAAIA,MAAM,CAACC,QAAP,CAAgBC,YAAhB,KAAiC,IAAAC,YAAA,EAAIV,KAAJ,EAAW,eAAX,CAArC;EAAA,CADW,CAArB;;EAIA,IAAI,CAACK,YAAL,EAAmB;IACf,OAAOZ,CAAC,gJAAD,CAA+D;MAClEkB,SAAS,eAAE,6CAASX,KAAK,CAACY,OAAf;IADuD,CAA/D,CAAP;EAGH;;EAED,oBACI,6BAAC,sCAAD;IAAoB,KAAK,EAAEZ;EAA3B,GACKK,YAAY,CAACG,QAAb,CAAsBK,MAAtB,CAA6B;IAAEb,KAAK,EAALA,KAAF;IAASG,OAAO,EAAPA,OAAT;IAAkBW,KAAK,EAALA,cAAlB;IAAyBZ,YAAY,EAAZA;EAAzB,CAA7B,CADL,CADJ;AAKH,CApBD;;eAsBeN,kB"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { CmsEditorFieldValidator } from "../../../../types";
|
|
1
|
+
import { CmsModelField, CmsEditorFieldValidator } from "../../../../types";
|
|
2
2
|
import { Validator } from "@webiny/validation/types";
|
|
3
|
-
export declare const createValidators: (validation: CmsEditorFieldValidator[]) => Validator[];
|
|
3
|
+
export declare const createValidators: (field: CmsModelField, validation: CmsEditorFieldValidator[]) => Validator[];
|
|
@@ -13,7 +13,7 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
|
13
13
|
|
|
14
14
|
var _plugins = require("@webiny/plugins");
|
|
15
15
|
|
|
16
|
-
var createValidators = function createValidators(validation) {
|
|
16
|
+
var createValidators = function createValidators(field, validation) {
|
|
17
17
|
var validatorPlugins = _plugins.plugins.byType("cms-model-field-validator");
|
|
18
18
|
|
|
19
19
|
return validation.reduce(function (collection, item) {
|
|
@@ -27,40 +27,45 @@ var createValidators = function createValidators(validation) {
|
|
|
27
27
|
|
|
28
28
|
var validator = /*#__PURE__*/function () {
|
|
29
29
|
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(value) {
|
|
30
|
-
var isInvalid, result;
|
|
30
|
+
var isInvalid, message, result;
|
|
31
31
|
return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
|
32
32
|
while (1) {
|
|
33
33
|
switch (_context.prev = _context.next) {
|
|
34
34
|
case 0:
|
|
35
|
-
|
|
36
|
-
_context.
|
|
37
|
-
|
|
35
|
+
message = item.message;
|
|
36
|
+
_context.prev = 1;
|
|
37
|
+
_context.next = 4;
|
|
38
|
+
return validatorPlugin.validator.validate(value, item, field);
|
|
38
39
|
|
|
39
|
-
case
|
|
40
|
+
case 4:
|
|
40
41
|
result = _context.sent;
|
|
41
42
|
isInvalid = result === false;
|
|
42
|
-
_context.next =
|
|
43
|
+
_context.next = 12;
|
|
43
44
|
break;
|
|
44
45
|
|
|
45
|
-
case
|
|
46
|
-
_context.prev =
|
|
47
|
-
_context.t0 = _context["catch"](
|
|
46
|
+
case 8:
|
|
47
|
+
_context.prev = 8;
|
|
48
|
+
_context.t0 = _context["catch"](1);
|
|
48
49
|
isInvalid = true;
|
|
49
50
|
|
|
50
|
-
|
|
51
|
+
if (_context.t0.message && !item.message) {
|
|
52
|
+
message = _context.t0.message;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
case 12:
|
|
51
56
|
if (!isInvalid) {
|
|
52
|
-
_context.next =
|
|
57
|
+
_context.next = 14;
|
|
53
58
|
break;
|
|
54
59
|
}
|
|
55
60
|
|
|
56
|
-
throw new Error(
|
|
61
|
+
throw new Error(message || "Invalid value.");
|
|
57
62
|
|
|
58
|
-
case
|
|
63
|
+
case 14:
|
|
59
64
|
case "end":
|
|
60
65
|
return _context.stop();
|
|
61
66
|
}
|
|
62
67
|
}
|
|
63
|
-
}, _callee, null, [[
|
|
68
|
+
}, _callee, null, [[1, 8]]);
|
|
64
69
|
}));
|
|
65
70
|
|
|
66
71
|
return function validator(_x) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createValidators","validation","validatorPlugins","plugins","byType","reduce","collection","item","validatorPlugin","find","plugin","validator","name","validate","value","result","isInvalid","Error","
|
|
1
|
+
{"version":3,"names":["createValidators","field","validation","validatorPlugins","plugins","byType","reduce","collection","item","validatorPlugin","find","plugin","validator","name","validate","value","message","result","isInvalid","Error","push"],"sources":["createValidators.ts"],"sourcesContent":["import { plugins } from \"@webiny/plugins\";\nimport { CmsModelField, CmsEditorFieldValidator, CmsModelFieldValidatorPlugin } from \"~/types\";\nimport { Validator } from \"@webiny/validation/types\";\n\nexport const createValidators = (\n field: CmsModelField,\n validation: CmsEditorFieldValidator[]\n): Validator[] => {\n const validatorPlugins = plugins.byType<CmsModelFieldValidatorPlugin>(\n \"cms-model-field-validator\"\n );\n\n return validation.reduce((collection, item) => {\n const validatorPlugin = validatorPlugins.find(\n plugin => plugin.validator.name === item.name\n );\n\n if (!validatorPlugin || typeof validatorPlugin.validator.validate !== \"function\") {\n return collection;\n }\n\n const validator = async (value: any | any[]) => {\n let isInvalid;\n let message = item.message;\n try {\n const result = await validatorPlugin.validator.validate(value, item, field);\n isInvalid = result === false;\n } catch (e) {\n isInvalid = true;\n if (e.message && !item.message) {\n message = e.message;\n }\n }\n\n if (isInvalid) {\n throw new Error(message || \"Invalid value.\");\n }\n };\n collection.push(validator);\n return collection;\n }, [] as Validator[]);\n};\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAIO,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAC5BC,KAD4B,EAE5BC,UAF4B,EAGd;EACd,IAAMC,gBAAgB,GAAGC,gBAAA,CAAQC,MAAR,CACrB,2BADqB,CAAzB;;EAIA,OAAOH,UAAU,CAACI,MAAX,CAAkB,UAACC,UAAD,EAAaC,IAAb,EAAsB;IAC3C,IAAMC,eAAe,GAAGN,gBAAgB,CAACO,IAAjB,CACpB,UAAAC,MAAM;MAAA,OAAIA,MAAM,CAACC,SAAP,CAAiBC,IAAjB,KAA0BL,IAAI,CAACK,IAAnC;IAAA,CADc,CAAxB;;IAIA,IAAI,CAACJ,eAAD,IAAoB,OAAOA,eAAe,CAACG,SAAhB,CAA0BE,QAAjC,KAA8C,UAAtE,EAAkF;MAC9E,OAAOP,UAAP;IACH;;IAED,IAAMK,SAAS;MAAA,kGAAG,iBAAOG,KAAP;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEVC,OAFU,GAEAR,IAAI,CAACQ,OAFL;gBAAA;gBAAA;gBAAA,OAIWP,eAAe,CAACG,SAAhB,CAA0BE,QAA1B,CAAmCC,KAAnC,EAA0CP,IAA1C,EAAgDP,KAAhD,CAJX;;cAAA;gBAIJgB,MAJI;gBAKVC,SAAS,GAAGD,MAAM,KAAK,KAAvB;gBALU;gBAAA;;cAAA;gBAAA;gBAAA;gBAOVC,SAAS,GAAG,IAAZ;;gBACA,IAAI,YAAEF,OAAF,IAAa,CAACR,IAAI,CAACQ,OAAvB,EAAgC;kBAC5BA,OAAO,GAAG,YAAEA,OAAZ;gBACH;;cAVS;gBAAA,KAaVE,SAbU;kBAAA;kBAAA;gBAAA;;gBAAA,MAcJ,IAAIC,KAAJ,CAAUH,OAAO,IAAI,gBAArB,CAdI;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAAH;;MAAA,gBAATJ,SAAS;QAAA;MAAA;IAAA,GAAf;;IAiBAL,UAAU,CAACa,IAAX,CAAgBR,SAAhB;IACA,OAAOL,UAAP;EACH,CA5BM,EA4BJ,EA5BI,CAAP;AA6BH,CArCM"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CmsModelField } from "../../../../types";
|
|
2
2
|
import { BindComponentRenderProp } from "@webiny/form";
|
|
3
3
|
interface GetValueParams {
|
|
4
4
|
bind: BindComponentRenderProp;
|
|
5
|
-
field: Pick<
|
|
5
|
+
field: Pick<CmsModelField, "multipleValues">;
|
|
6
6
|
index: number;
|
|
7
7
|
}
|
|
8
8
|
export declare const getValue: (params: GetValueParams) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getValue","params","bind","field","index","value","multipleValues","Array","isArray"],"sources":["getValue.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"names":["getValue","params","bind","field","index","value","multipleValues","Array","isArray"],"sources":["getValue.ts"],"sourcesContent":["import { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface GetValueParams {\n bind: BindComponentRenderProp;\n field: Pick<CmsModelField, \"multipleValues\">;\n index: number;\n}\nexport const getValue = (params: GetValueParams): string => {\n const { bind, field, index } = params;\n let value = bind.value || null;\n\n if (field.multipleValues) {\n if (!Array.isArray(value)) {\n value = [];\n }\n\n if (index >= 0) {\n return value[index] || null;\n }\n\n return value;\n }\n\n return value;\n};\n"],"mappings":";;;;;;;AAQO,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAACC,MAAD,EAAoC;EACxD,IAAQC,IAAR,GAA+BD,MAA/B,CAAQC,IAAR;EAAA,IAAcC,KAAd,GAA+BF,MAA/B,CAAcE,KAAd;EAAA,IAAqBC,KAArB,GAA+BH,MAA/B,CAAqBG,KAArB;EACA,IAAIC,KAAK,GAAGH,IAAI,CAACG,KAAL,IAAc,IAA1B;;EAEA,IAAIF,KAAK,CAACG,cAAV,EAA0B;IACtB,IAAI,CAACC,KAAK,CAACC,OAAN,CAAcH,KAAd,CAAL,EAA2B;MACvBA,KAAK,GAAG,EAAR;IACH;;IAED,IAAID,KAAK,IAAI,CAAb,EAAgB;MACZ,OAAOC,KAAK,CAACD,KAAD,CAAL,IAAgB,IAAvB;IACH;;IAED,OAAOC,KAAP;EACH;;EAED,OAAOA,KAAP;AACH,CAjBM"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CmsModelField } from "../../../../types";
|
|
2
2
|
import { BindComponentRenderProp } from "@webiny/form";
|
|
3
3
|
interface setValueParams {
|
|
4
4
|
value: string[];
|
|
5
5
|
bind: BindComponentRenderProp;
|
|
6
|
-
field: Pick<
|
|
6
|
+
field: Pick<CmsModelField, "multipleValues">;
|
|
7
7
|
index: number;
|
|
8
8
|
}
|
|
9
9
|
export declare const setValue: (params: setValueParams) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["setValue","params","value","bind","field","index","newValue","multipleValues","onChange"],"sources":["setValue.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"names":["setValue","params","value","bind","field","index","newValue","multipleValues","onChange"],"sources":["setValue.ts"],"sourcesContent":["import { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface setValueParams {\n value: string[];\n bind: BindComponentRenderProp;\n field: Pick<CmsModelField, \"multipleValues\">;\n index: number;\n}\nexport const setValue = (params: setValueParams): void => {\n const { value, bind, field, index } = params;\n let newValue = field.multipleValues ? [...(bind.value || [])] : bind.value;\n\n if (field.multipleValues) {\n if (index >= 0) {\n newValue[index] = value;\n } else {\n newValue = value;\n }\n } else {\n newValue = value;\n }\n\n bind.onChange(newValue);\n};\n"],"mappings":";;;;;;;;;;;AASO,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAACC,MAAD,EAAkC;EACtD,IAAQC,KAAR,GAAsCD,MAAtC,CAAQC,KAAR;EAAA,IAAeC,IAAf,GAAsCF,MAAtC,CAAeE,IAAf;EAAA,IAAqBC,KAArB,GAAsCH,MAAtC,CAAqBG,KAArB;EAAA,IAA4BC,KAA5B,GAAsCJ,MAAtC,CAA4BI,KAA5B;EACA,IAAIC,QAAQ,GAAGF,KAAK,CAACG,cAAN,oCAA4BJ,IAAI,CAACD,KAAL,IAAc,EAA1C,IAAiDC,IAAI,CAACD,KAArE;;EAEA,IAAIE,KAAK,CAACG,cAAV,EAA0B;IACtB,IAAIF,KAAK,IAAI,CAAb,EAAgB;MACZC,QAAQ,CAACD,KAAD,CAAR,GAAkBH,KAAlB;IACH,CAFD,MAEO;MACHI,QAAQ,GAAGJ,KAAX;IACH;EACJ,CAND,MAMO;IACHI,QAAQ,GAAGJ,KAAX;EACH;;EAEDC,IAAI,CAACK,QAAL,CAAcF,QAAd;AACH,CAfM"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BindComponent,
|
|
1
|
+
import { BindComponent, CmsModelField } from "../../../types";
|
|
2
2
|
interface UseBindProps {
|
|
3
|
-
field:
|
|
3
|
+
field: CmsModelField;
|
|
4
4
|
Bind: BindComponent;
|
|
5
5
|
}
|
|
6
6
|
export interface GetBindCallable {
|
|
@@ -34,8 +34,8 @@ function useBind(_ref) {
|
|
|
34
34
|
return memoizedBindComponents.current[name];
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
var validators = (0, _createValidators.createValidators)(field.validation || []);
|
|
38
|
-
var listValidators = (0, _createValidators.createValidators)(field.listValidation || []);
|
|
37
|
+
var validators = (0, _createValidators.createValidators)(field, field.validation || []);
|
|
38
|
+
var listValidators = (0, _createValidators.createValidators)(field, field.listValidation || []);
|
|
39
39
|
var defaultValue = field.multipleValues ? [] : undefined;
|
|
40
40
|
var isMultipleValues = index === -1 && field.multipleValues;
|
|
41
41
|
var inputValidators = isMultipleValues ? listValidators : validators;
|
|
@@ -53,16 +53,18 @@ function useBind(_ref) {
|
|
|
53
53
|
var props = (0, _objectSpread2.default)({}, bind);
|
|
54
54
|
|
|
55
55
|
if (field.multipleValues && index === -1) {
|
|
56
|
-
props.appendValue = function (newValue) {
|
|
57
|
-
|
|
56
|
+
props.appendValue = function (newValue, index) {
|
|
57
|
+
var currentValue = bind.value || [];
|
|
58
|
+
var newIndex = index !== null && index !== void 0 ? index : currentValue.length;
|
|
59
|
+
bind.onChange([].concat((0, _toConsumableArray2.default)(currentValue.slice(0, newIndex)), [newValue], (0, _toConsumableArray2.default)(currentValue.slice(newIndex))));
|
|
58
60
|
};
|
|
59
61
|
|
|
60
62
|
props.prependValue = function (newValue) {
|
|
61
|
-
bind.onChange([newValue].concat((0, _toConsumableArray2.default)(bind.value)));
|
|
63
|
+
bind.onChange([newValue].concat((0, _toConsumableArray2.default)(bind.value || [])));
|
|
62
64
|
};
|
|
63
65
|
|
|
64
66
|
props.appendValues = function (newValues) {
|
|
65
|
-
bind.onChange([].concat((0, _toConsumableArray2.default)(bind.value), (0, _toConsumableArray2.default)(newValues)));
|
|
67
|
+
bind.onChange([].concat((0, _toConsumableArray2.default)(bind.value || []), (0, _toConsumableArray2.default)(newValues)));
|
|
66
68
|
};
|
|
67
69
|
|
|
68
70
|
props.removeValue = function (index) {
|
|
@@ -110,6 +112,7 @@ function useBind(_ref) {
|
|
|
110
112
|
|
|
111
113
|
|
|
112
114
|
memoizedBindComponents.current[name].parentName = name;
|
|
115
|
+
memoizedBindComponents.current[name].displayName = "ParentBind<".concat(name, ">");
|
|
113
116
|
return memoizedBindComponents.current[name];
|
|
114
117
|
}, [field.fieldId]);
|
|
115
|
-
}
|
|
118
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useBind","ParentBind","Bind","field","memoizedBindComponents","useRef","useCallback","index","parentName","name","fieldId","undefined","filter","v","join","current","validators","createValidators","validation","listValidators","listValidation","defaultValue","multipleValues","isMultipleValues","inputValidators","UseBind","params","childName","childValidators","children","bind","props","appendValue","newValue","onChange","value","prependValue","appendValues","newValues","removeValue","slice","form","validateInput","moveValueUp","splice","moveValueDown","length","cloneElement"],"sources":["useBind.tsx"],"sourcesContent":["import React, { useRef, useCallback, cloneElement } from \"react\";\nimport { createValidators } from \"./functions/createValidators\";\nimport { BindComponent, CmsEditorField } from \"~/types\";\nimport { Validator } from \"@webiny/validation/types\";\n\ninterface UseBindProps {\n field: CmsEditorField;\n Bind: BindComponent;\n}\n\ninterface UseBindParams {\n name?: string;\n validators?: Validator | Validator[];\n children?: any;\n}\n\nexport interface GetBindCallable {\n (index?: number): BindComponent;\n}\n\nexport function useBind({ Bind: ParentBind, field }: UseBindProps) {\n const memoizedBindComponents = useRef<Record<string, BindComponent>>({});\n\n return useCallback(\n (index = -1) => {\n const { parentName } = ParentBind;\n // If there's a parent name assigned to the given Bind component, we need to include it in the new field \"name\".\n // This allows us to have nested fields (like \"object\" field with nested properties)\n const name = [parentName, field.fieldId, index >= 0 ? index : undefined]\n .filter(v => v !== undefined)\n .join(\".\");\n\n if (memoizedBindComponents.current[name]) {\n return memoizedBindComponents.current[name];\n }\n\n const validators = createValidators(field.validation || []);\n const listValidators = createValidators(field.listValidation || []);\n const defaultValue: string[] | undefined = field.multipleValues ? [] : undefined;\n const isMultipleValues = index === -1 && field.multipleValues;\n const inputValidators = isMultipleValues ? listValidators : validators;\n\n memoizedBindComponents.current[name] = function UseBind(params: UseBindParams) {\n const { name: childName, validators: childValidators, children } = params;\n return (\n <ParentBind\n name={childName || name}\n validators={childValidators || inputValidators}\n defaultValue={index === -1 ? defaultValue : null}\n >\n {bind => {\n // Multiple-values functions below.\n const props = { ...bind };\n if (field.multipleValues && index === -1) {\n props.appendValue = (newValue: string) => {\n bind.onChange([...bind.value, newValue]);\n };\n props.prependValue = (newValue: string) => {\n bind.onChange([newValue, ...bind.value]);\n };\n props.appendValues = (newValues: string[]) => {\n bind.onChange([...bind.value, ...newValues]);\n };\n\n props.removeValue = (index: number) => {\n if (index < 0) {\n return;\n }\n let value = bind.value;\n value = [...value.slice(0, index), ...value.slice(index + 1)];\n\n bind.onChange(value);\n\n // To make sure the field is still valid, we must trigger validation.\n bind.form.validateInput(field.fieldId);\n };\n\n props.moveValueUp = (index: number) => {\n if (index <= 0) {\n return;\n }\n\n const value = [...bind.value];\n value.splice(index, 1);\n value.splice(index - 1, 0, bind.value[index]);\n\n bind.onChange(value);\n };\n\n props.moveValueDown = (index: number) => {\n if (index >= bind.value.length) {\n return;\n }\n\n const value = [...bind.value];\n value.splice(index, 1);\n value.splice(index + 1, 0, bind.value[index]);\n\n bind.onChange(value);\n };\n }\n\n if (typeof children === \"function\") {\n return children(props);\n }\n\n return cloneElement(children, props);\n }}\n </ParentBind>\n );\n };\n\n // We need to keep track of current field name, to support nested fields.\n memoizedBindComponents.current[name].parentName = name;\n\n return memoizedBindComponents.current[name];\n },\n [field.fieldId]\n );\n}\n\n// [0,1,2,3,4,5]\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["useBind","ParentBind","Bind","field","memoizedBindComponents","useRef","useCallback","index","parentName","name","fieldId","undefined","filter","v","join","current","validators","createValidators","validation","listValidators","listValidation","defaultValue","multipleValues","isMultipleValues","inputValidators","UseBind","params","childName","childValidators","children","bind","props","appendValue","newValue","currentValue","value","newIndex","length","onChange","slice","prependValue","appendValues","newValues","removeValue","form","validateInput","moveValueUp","splice","moveValueDown","cloneElement","displayName"],"sources":["useBind.tsx"],"sourcesContent":["import React, { useRef, useCallback, cloneElement } from \"react\";\nimport { createValidators } from \"./functions/createValidators\";\nimport { BindComponent, CmsModelField } from \"~/types\";\nimport { Validator } from \"@webiny/validation/types\";\n\ninterface UseBindProps {\n field: CmsModelField;\n Bind: BindComponent;\n}\n\ninterface UseBindParams {\n name?: string;\n validators?: Validator | Validator[];\n children?: any;\n}\n\nexport interface GetBindCallable {\n (index?: number): BindComponent;\n}\n\nexport function useBind({ Bind: ParentBind, field }: UseBindProps) {\n const memoizedBindComponents = useRef<Record<string, BindComponent>>({});\n\n return useCallback(\n (index = -1) => {\n const { parentName } = ParentBind;\n // If there's a parent name assigned to the given Bind component, we need to include it in the new field \"name\".\n // This allows us to have nested fields (like \"object\" field with nested properties)\n const name = [parentName, field.fieldId, index >= 0 ? index : undefined]\n .filter(v => v !== undefined)\n .join(\".\");\n\n if (memoizedBindComponents.current[name]) {\n return memoizedBindComponents.current[name];\n }\n\n const validators = createValidators(field, field.validation || []);\n const listValidators = createValidators(field, field.listValidation || []);\n const defaultValue: string[] | undefined = field.multipleValues ? [] : undefined;\n const isMultipleValues = index === -1 && field.multipleValues;\n const inputValidators = isMultipleValues ? listValidators : validators;\n\n memoizedBindComponents.current[name] = function UseBind(params: UseBindParams) {\n const { name: childName, validators: childValidators, children } = params;\n\n return (\n <ParentBind\n name={childName || name}\n validators={childValidators || inputValidators}\n defaultValue={index === -1 ? defaultValue : null}\n >\n {bind => {\n // Multiple-values functions below.\n const props = { ...bind };\n if (field.multipleValues && index === -1) {\n props.appendValue = (newValue: any, index?: number) => {\n const currentValue = bind.value || [];\n const newIndex = index ?? currentValue.length;\n\n bind.onChange([\n ...currentValue.slice(0, newIndex),\n newValue,\n ...currentValue.slice(newIndex)\n ]);\n };\n props.prependValue = (newValue: any) => {\n bind.onChange([newValue, ...(bind.value || [])]);\n };\n props.appendValues = (newValues: any[]) => {\n bind.onChange([...(bind.value || []), ...newValues]);\n };\n\n props.removeValue = (index: number) => {\n if (index < 0) {\n return;\n }\n let value = bind.value;\n value = [...value.slice(0, index), ...value.slice(index + 1)];\n\n bind.onChange(value);\n\n // To make sure the field is still valid, we must trigger validation.\n bind.form.validateInput(field.fieldId);\n };\n\n props.moveValueUp = (index: number) => {\n if (index <= 0) {\n return;\n }\n\n const value = [...bind.value];\n value.splice(index, 1);\n value.splice(index - 1, 0, bind.value[index]);\n\n bind.onChange(value);\n };\n\n props.moveValueDown = (index: number) => {\n if (index >= bind.value.length) {\n return;\n }\n\n const value = [...bind.value];\n value.splice(index, 1);\n value.splice(index + 1, 0, bind.value[index]);\n\n bind.onChange(value);\n };\n }\n\n if (typeof children === \"function\") {\n return children(props);\n }\n\n return cloneElement(children, props);\n }}\n </ParentBind>\n );\n };\n\n // We need to keep track of current field name, to support nested fields.\n memoizedBindComponents.current[name].parentName = name;\n memoizedBindComponents.current[name].displayName = `ParentBind<${name}>`;\n\n return memoizedBindComponents.current[name];\n },\n [field.fieldId]\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Dispatch, SetStateAction } from "react";
|
|
2
2
|
import { FormOnSubmit } from "@webiny/form";
|
|
3
|
-
import { CmsEditorContentEntry,
|
|
3
|
+
import { CmsEditorContentEntry, CmsEditorFieldRendererPlugin } from "../../../types";
|
|
4
4
|
interface UseContentEntryForm {
|
|
5
5
|
data: Record<string, any>;
|
|
6
6
|
loading: boolean;
|
|
@@ -11,7 +11,6 @@ interface UseContentEntryForm {
|
|
|
11
11
|
renderPlugins: CmsEditorFieldRendererPlugin[];
|
|
12
12
|
}
|
|
13
13
|
export interface UseContentEntryFormParams {
|
|
14
|
-
contentModel: CmsEditorContentModel;
|
|
15
14
|
entry: Partial<CmsEditorContentEntry>;
|
|
16
15
|
onChange?: FormOnSubmit;
|
|
17
16
|
onSubmit?: FormOnSubmit;
|