@webiny/app-headless-cms 5.42.2-beta.0 → 5.42.2-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ContentEntryEditorConfig.d.ts +38 -14
- package/ContentEntryEditorConfig.js +14 -7
- package/ContentEntryEditorConfig.js.map +1 -1
- package/admin/components/ContentEntryForm/ContentEntryForm.d.ts +8 -7
- package/admin/components/ContentEntryForm/ContentEntryForm.js +4 -2
- package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
- package/admin/components/ContentEntryForm/ContentEntryFormProvider.d.ts +3 -2
- package/admin/components/ContentEntryForm/ContentEntryFormProvider.js +2 -0
- package/admin/components/ContentEntryForm/ContentEntryFormProvider.js.map +1 -1
- package/admin/components/ContentEntryForm/FieldElement.js +1 -2
- package/admin/components/ContentEntryForm/FieldElement.js.map +1 -1
- package/admin/components/ContentEntryForm/Header/Header.js +9 -3
- package/admin/components/ContentEntryForm/Header/Header.js.map +1 -1
- package/admin/components/ContentEntryForm/createValidationScope.d.ts +18 -0
- package/admin/components/ContentEntryForm/createValidationScope.js +31 -0
- package/admin/components/ContentEntryForm/createValidationScope.js.map +1 -0
- package/admin/components/ContentEntryForm/useBind.d.ts +2 -3
- package/admin/components/ContentEntryForm/useBind.js +15 -7
- package/admin/components/ContentEntryForm/useBind.js.map +1 -1
- package/admin/config/contentEntries/editor/ContentEntryEditorConfig.d.ts +1 -0
- package/admin/config/contentEntries/editor/ContentEntryEditorConfig.js +3 -1
- package/admin/config/contentEntries/editor/ContentEntryEditorConfig.js.map +1 -1
- package/admin/config/contentEntries/editor/ValidationIndicators.d.ts +5 -0
- package/admin/config/contentEntries/editor/ValidationIndicators.js +22 -0
- package/admin/config/contentEntries/editor/ValidationIndicators.js.map +1 -0
- package/admin/plugins/fieldRenderers/Accordion.d.ts +2 -1
- package/admin/plugins/fieldRenderers/Accordion.js +28 -28
- package/admin/plugins/fieldRenderers/Accordion.js.map +1 -1
- package/admin/plugins/fieldRenderers/DynamicSection.d.ts +3 -1
- package/admin/plugins/fieldRenderers/DynamicSection.js +21 -9
- package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
- package/admin/plugins/fieldRenderers/MultiValueRendererSettings.d.ts +8 -0
- package/admin/plugins/fieldRenderers/MultiValueRendererSettings.js +33 -0
- package/admin/plugins/fieldRenderers/MultiValueRendererSettings.js.map +1 -0
- package/admin/plugins/fieldRenderers/checkboxes.js +17 -15
- package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js +14 -18
- package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js +6 -2
- package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +23 -21
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js +2 -2
- package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js +1 -1
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js +7 -3
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/longText.js +2 -2
- package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/longTexts.js +6 -2
- package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/numberInput.js +2 -2
- package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/numberInputs.js +6 -2
- package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/MultiValueContainer.d.ts +10 -0
- package/admin/plugins/fieldRenderers/object/MultiValueContainer.js +118 -0
- package/admin/plugins/fieldRenderers/object/MultiValueContainer.js.map +1 -0
- package/admin/plugins/fieldRenderers/object/MultiValueItemContainer.d.ts +33 -0
- package/admin/plugins/fieldRenderers/object/MultiValueItemContainer.js +54 -0
- package/admin/plugins/fieldRenderers/object/MultiValueItemContainer.js.map +1 -0
- package/admin/plugins/fieldRenderers/object/index.d.ts +22 -0
- package/admin/plugins/fieldRenderers/object/index.js +5 -1
- package/admin/plugins/fieldRenderers/object/index.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/multipleObjects.js +15 -104
- package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js +15 -108
- package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js +2 -2
- package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/singleObjectInline.js +25 -14
- package/admin/plugins/fieldRenderers/object/singleObjectInline.js.map +1 -1
- package/admin/plugins/fieldRenderers/radioButtons.js +18 -16
- package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.js +6 -3
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js +2 -2
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js +6 -6
- package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js +2 -2
- package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js +2 -2
- package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/refInput.js +2 -2
- package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/refInputs.js +2 -2
- package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/simpleMultipleRenderer.js +2 -2
- package/admin/plugins/fieldRenderers/ref/simple/simpleMultipleRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/simpleSingleRenderer.js +2 -2
- package/admin/plugins/fieldRenderers/ref/simple/simpleSingleRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/richTextInput.js +10 -8
- package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js +7 -3
- package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/select.js +9 -7
- package/admin/plugins/fieldRenderers/select.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/tags.js +7 -5
- package/admin/plugins/fieldRenderers/text/tags.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/textInput.js +2 -2
- package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/textInputs.js +6 -2
- package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
- package/admin/views/contentEntries/ContentEntriesModule.js +1 -1
- package/admin/views/contentEntries/ContentEntriesModule.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.js +5 -5
- package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.styled.d.ts +9 -9
- package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.styled.js +25 -25
- package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.styled.js.map +1 -1
- package/admin/views/contentEntries/ContentEntry.js +17 -5
- package/admin/views/contentEntries/ContentEntry.js.map +1 -1
- package/admin/views/contentEntries/ValidationIndicators.d.ts +25 -0
- package/admin/views/contentEntries/ValidationIndicators.js +45 -0
- package/admin/views/contentEntries/ValidationIndicators.js.map +1 -0
- package/allPlugins.d.ts +2 -2
- package/package.json +29 -30
|
@@ -12,8 +12,8 @@ var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
|
12
12
|
var _Accordion = require("@webiny/ui/Accordion");
|
|
13
13
|
var _delete_outline = require("@material-design-icons/svg/outlined/delete_outline.svg");
|
|
14
14
|
var _library_add = require("@material-design-icons/svg/outlined/library_add.svg");
|
|
15
|
-
var
|
|
16
|
-
var
|
|
15
|
+
var _arrow_drop_up = require("@material-design-icons/svg/outlined/arrow_drop_up.svg");
|
|
16
|
+
var _arrow_drop_down = require("@material-design-icons/svg/outlined/arrow_drop_down.svg");
|
|
17
17
|
var _AddTemplate = require("./AddTemplate");
|
|
18
18
|
var _TemplateIcon = require("./TemplateIcon");
|
|
19
19
|
var _hooks = require("../../../hooks");
|
|
@@ -35,18 +35,18 @@ var BottomMargin = /*#__PURE__*/(0, _base.default)("div", process.env.NODE_ENV =
|
|
|
35
35
|
} : {
|
|
36
36
|
name: "1azpx8r",
|
|
37
37
|
styles: "margin-bottom:20px",
|
|
38
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk11bHRpVmFsdWVEeW5hbWljWm9uZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEIrQiIsImZpbGUiOiJNdWx0aVZhbHVlRHluYW1pY1pvbmUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgY2xvbmVEZWVwIGZyb20gXCJsb2Rhc2gvY2xvbmVEZWVwXCI7XG5pbXBvcnQgeyBBY2NvcmRpb24sIEFjY29yZGlvbkl0ZW0gfSBmcm9tIFwiQHdlYmlueS91aS9BY2NvcmRpb25cIjtcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIERlbGV0ZUljb24gfSBmcm9tIFwiQG1hdGVyaWFsLWRlc2lnbi1pY29ucy9zdmcvb3V0bGluZWQvZGVsZXRlX291dGxpbmUuc3ZnXCI7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBDbG9uZUljb24gfSBmcm9tIFwiQG1hdGVyaWFsLWRlc2lnbi1pY29ucy9zdmcvb3V0bGluZWQvbGlicmFyeV9hZGQuc3ZnXCI7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBBcnJvd1VwSWNvbiB9IGZyb20gXCJAbWF0ZXJpYWwtZGVzaWduLWljb25zL3N2Zy9yb3VuZC9leHBhbmRfbGVzcy5zdmdcIjtcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIEFycm93RG93bkljb24gfSBmcm9tIFwiQG1hdGVyaWFsLWRlc2lnbi1pY29ucy9zdmcvcm91bmQvZXhwYW5kX21vcmUuc3ZnXCI7XG5pbXBvcnQgeyBBZGRUZW1wbGF0ZUJ1dHRvbiwgQWRkVGVtcGxhdGVJY29uIH0gZnJvbSBcIi4vQWRkVGVtcGxhdGVcIjtcbmltcG9ydCB7IFRlbXBsYXRlSWNvbiB9IGZyb20gXCIuL1RlbXBsYXRlSWNvblwiO1xuaW1wb3J0IHsgUGFyZW50RmllbGRQcm92aWRlciwgdXNlTW9kZWxGaWVsZCB9IGZyb20gXCJ+L2FkbWluL2hvb2tzXCI7XG5pbXBvcnQgeyBGaWVsZHMgfSBmcm9tIFwifi9hZG1pbi9jb21wb25lbnRzL0NvbnRlbnRFbnRyeUZvcm0vRmllbGRzXCI7XG5pbXBvcnQge1xuICAgIEJpbmRDb21wb25lbnQsXG4gICAgQmluZENvbXBvbmVudFJlbmRlclByb3AsXG4gICAgQ21zRHluYW1pY1pvbmVUZW1wbGF0ZSxcbiAgICBDbXNNb2RlbEZpZWxkUmVuZGVyZXJQcm9wcyxcbiAgICBDbXNNb2RlbCxcbiAgICBDbXNNb2RlbEZpZWxkLFxuICAgIENtc0R5bmFtaWNab25lVGVtcGxhdGVXaXRoVHlwZW5hbWVcbn0gZnJvbSBcIn4vdHlwZXNcIjtcbmltcG9ydCB7IG1ha2VEZWNvcmF0YWJsZSB9IGZyb20gXCJAd2ViaW55L3JlYWN0LWNvbXBvc2l0aW9uXCI7XG5pbXBvcnQgeyBUZW1wbGF0ZVByb3ZpZGVyIH0gZnJvbSBcIn4vYWRtaW4vcGx1Z2lucy9maWVsZFJlbmRlcmVycy9keW5hbWljWm9uZS9UZW1wbGF0ZVByb3ZpZGVyXCI7XG5pbXBvcnQgeyBQYXJlbnRWYWx1ZUluZGV4UHJvdmlkZXIgfSBmcm9tIFwifi9hZG1pbi9jb21wb25lbnRzL01vZGVsRmllbGRQcm92aWRlclwiO1xuaW1wb3J0IHsgdXNlQ29uZmlybWF0aW9uRGlhbG9nIH0gZnJvbSBcIkB3ZWJpbnkvYXBwLWFkbWluXCI7XG5cbmNvbnN0IEJvdHRvbU1hcmdpbiA9IHN0eWxlZC5kaXZgXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbmA7XG5cbnR5cGUgR2V0QmluZCA9IENtc01vZGVsRmllbGRSZW5kZXJlclByb3BzW1wiZ2V0QmluZFwiXTtcblxuZXhwb3J0IGludGVyZmFjZSBNdWx0aVZhbHVlSXRlbUNvbnRhaW5lclByb3BzIHtcbiAgICB2YWx1ZTogVGVtcGxhdGVWYWx1ZTtcbiAgICBjb250ZW50TW9kZWw6IENtc01vZGVsO1xuICAgIGlzRmlyc3Q6IGJvb2xlYW47XG4gICAgaXNMYXN0OiBib29sZWFuO1xuICAgIG9uTW92ZVVwOiAoKSA9PiB2b2lkO1xuICAgIG9uTW92ZURvd246ICgpID0+IHZvaWQ7XG4gICAgb25EZWxldGU6ICgpID0+IHZvaWQ7XG4gICAgb25DbG9uZTogKHZhbHVlOiBUZW1wbGF0ZVZhbHVlKSA9PiB2b2lkO1xuICAgIHRpdGxlOiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBpY29uOiBKU1guRWxlbWVudDtcbiAgICB0ZW1wbGF0ZTogQ21zRHluYW1pY1pvbmVUZW1wbGF0ZTtcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufVxuXG5leHBvcnQgY29uc3QgTXVsdGlWYWx1ZUl0ZW1Db250YWluZXIgPSBtYWtlRGVjb3JhdGFibGUoXG4gICAgXCJNdWx0aVZhbHVlSXRlbUNvbnRhaW5lclwiLFxuICAgICh7IGNoaWxkcmVuLCAuLi5wcm9wcyB9OiBNdWx0aVZhbHVlSXRlbUNvbnRhaW5lclByb3BzKSA9PiB7XG4gICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoXG4gICAgICAgICAgICA8QWNjb3JkaW9uSXRlbS5BY3Rpb25zPlxuICAgICAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtLkFjdGlvblxuICAgICAgICAgICAgICAgICAgICBpY29uPXs8QXJyb3dVcEljb24gLz59XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3Byb3BzLm9uTW92ZVVwfVxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNGaXJzdH1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtLkFjdGlvblxuICAgICAgICAgICAgICAgICAgICBpY29uPXs8QXJyb3dEb3duSWNvbiAvPn1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17cHJvcHMub25Nb3ZlRG93bn1cbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e3Byb3BzLmlzTGFzdH1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtLkRpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICA8QWNjb3JkaW9uSXRlbS5BY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgaWNvbj17PENsb25lSWNvbiAvPn1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gcHJvcHMub25DbG9uZShwcm9wcy52YWx1ZSl9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8QWNjb3JkaW9uSXRlbS5BY3Rpb24gaWNvbj17PERlbGV0ZUljb24gLz59IG9uQ2xpY2s9e3Byb3BzLm9uRGVsZXRlfSAvPlxuICAgICAgICAgICAgPC9BY2NvcmRpb25JdGVtLkFjdGlvbnM+XG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtXG4gICAgICAgICAgICAgICAgdGl0bGU9e3Byb3BzLnRpdGxlfVxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPXtwcm9wcy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgICAgICBpY29uPXtwcm9wcy5pY29ufVxuICAgICAgICAgICAgICAgIGFjdGlvbnM9e2FjdGlvbnN9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC9BY2NvcmRpb25JdGVtPlxuICAgICAgICApO1xuICAgIH1cbik7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGlWYWx1ZUl0ZW1JdGVtUHJvcHMge1xuICAgIHRlbXBsYXRlOiBDbXNEeW5hbWljWm9uZVRlbXBsYXRlO1xuICAgIGNvbnRlbnRNb2RlbDogQ21zTW9kZWw7XG4gICAgQmluZDogQmluZENvbXBvbmVudDtcbn1cblxuZXhwb3J0IGNvbnN0IE11bHRpVmFsdWVJdGVtID0gbWFrZURlY29yYXRhYmxlKFxuICAgIFwiTXVsdGlWYWx1ZUl0ZW1cIixcbiAgICAocHJvcHM6IE11bHRpVmFsdWVJdGVtSXRlbVByb3BzKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgdGVtcGxhdGUsIEJpbmQsIGNvbnRlbnRNb2RlbCB9ID0gcHJvcHM7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxUZW1wbGF0ZVByb3ZpZGVyIHRlbXBsYXRlPXt0ZW1wbGF0ZX0+XG4gICAgICAgICAgICAgICAgPEZpZWxkc1xuICAgICAgICAgICAgICAgICAgICBmaWVsZHM9e3RlbXBsYXRlLmZpZWxkc31cbiAgICAgICAgICAgICAgICAgICAgbGF5b3V0PXt0ZW1wbGF0ZS5sYXlvdXQgfHwgW119XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRNb2RlbD17Y29udGVudE1vZGVsfVxuICAgICAgICAgICAgICAgICAgICBCaW5kPXtCaW5kfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L1RlbXBsYXRlUHJvdmlkZXI+XG4gICAgICAgICk7XG4gICAgfVxuKTtcblxuaW50ZXJmYWNlIFRlbXBsYXRlVmFsdWUge1xuICAgIF90ZW1wbGF0ZUlkOiBzdHJpbmc7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5pbnRlcmZhY2UgVGVtcGxhdGVWYWx1ZUZvcm1Qcm9wcyB7XG4gICAgdmFsdWU6IFRlbXBsYXRlVmFsdWU7XG4gICAgY29udGVudE1vZGVsOiBDbXNNb2RlbDtcbiAgICBCaW5kOiBCaW5kQ29tcG9uZW50O1xuICAgIGlzRmlyc3Q6IGJvb2xlYW47XG4gICAgaXNMYXN0OiBib29sZWFuO1xuICAgIG9uTW92ZVVwOiAoKSA9PiB2b2lkO1xuICAgIG9uTW92ZURvd246ICgpID0+IHZvaWQ7XG4gICAgb25EZWxldGU6ICgpID0+IHZvaWQ7XG4gICAgb25DbG9uZTogKHZhbHVlOiBUZW1wbGF0ZVZhbHVlKSA9PiB2b2lkO1xufVxuXG5jb25zdCBUZW1wbGF0ZVZhbHVlRm9ybSA9ICh7XG4gICAgdmFsdWUsXG4gICAgY29udGVudE1vZGVsLFxuICAgIEJpbmQsXG4gICAgaXNMYXN0LFxuICAgIGlzRmlyc3QsXG4gICAgb25Nb3ZlVXAsXG4gICAgb25Nb3ZlRG93bixcbiAgICBvbkRlbGV0ZSxcbiAgICBvbkNsb25lXG59OiBUZW1wbGF0ZVZhbHVlRm9ybVByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBmaWVsZCB9ID0gdXNlTW9kZWxGaWVsZCgpO1xuICAgIGNvbnN0IHRlbXBsYXRlcyA9IGZpZWxkLnNldHRpbmdzPy50ZW1wbGF0ZXMgfHwgW107XG5cbiAgICBjb25zdCB0ZW1wbGF0ZTogQ21zRHluYW1pY1pvbmVUZW1wbGF0ZSB8IHVuZGVmaW5lZCA9IHRlbXBsYXRlcy5maW5kKFxuICAgICAgICB0cGwgPT4gdHBsLmlkID09PSB2YWx1ZS5fdGVtcGxhdGVJZFxuICAgICk7XG5cbiAgICBpZiAoIXRlbXBsYXRlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICAgIDxNdWx0aVZhbHVlSXRlbUNvbnRhaW5lclxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgY29udGVudE1vZGVsPXtjb250ZW50TW9kZWx9XG4gICAgICAgICAgICBpc0ZpcnN0PXtpc0ZpcnN0fVxuICAgICAgICAgICAgaXNMYXN0PXtpc0xhc3R9XG4gICAgICAgICAgICBvbkNsb25lPXtvbkNsb25lfVxuICAgICAgICAgICAgb25EZWxldGU9e29uRGVsZXRlfVxuICAgICAgICAgICAgb25Nb3ZlVXA9e29uTW92ZVVwfVxuICAgICAgICAgICAgb25Nb3ZlRG93bj17b25Nb3ZlRG93bn1cbiAgICAgICAgICAgIHRpdGxlPXt0ZW1wbGF0ZS5uYW1lfVxuICAgICAgICAgICAgZGVzY3JpcHRpb249e3RlbXBsYXRlLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgaWNvbj17PFRlbXBsYXRlSWNvbiBpY29uPXt0ZW1wbGF0ZS5pY29ufSAvPn1cbiAgICAgICAgICAgIHRlbXBsYXRlPXt0ZW1wbGF0ZX1cbiAgICAgICAgPlxuICAgICAgICAgICAgPE11bHRpVmFsdWVJdGVtIHRlbXBsYXRlPXt0ZW1wbGF0ZX0gY29udGVudE1vZGVsPXtjb250ZW50TW9kZWx9IEJpbmQ9e0JpbmR9IC8+XG4gICAgICAgIDwvTXVsdGlWYWx1ZUl0ZW1Db250YWluZXI+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGlWYWx1ZUNvbnRhaW5lclByb3BzIGV4dGVuZHMgTXVsdGlWYWx1ZUR5bmFtaWNab25lUHJvcHMge1xuICAgIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG59XG5cbmV4cG9ydCBjb25zdCBNdWx0aVZhbHVlQ29udGFpbmVyID0gbWFrZURlY29yYXRhYmxlKFxuICAgIFwiTXVsdGlWYWx1ZUNvbnRhaW5lclwiLFxuICAgICh7IGNoaWxkcmVuIH06IE11bHRpVmFsdWVDb250YWluZXJQcm9wcykgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPEFjY29yZGlvbj5cbiAgICAgICAgICAgICAgICA8PntjaGlsZHJlbn08Lz5cbiAgICAgICAgICAgIDwvQWNjb3JkaW9uPlxuICAgICAgICApO1xuICAgIH1cbik7XG5cbmludGVyZmFjZSBNdWx0aVZhbHVlRHluYW1pY1pvbmVQcm9wcyB7XG4gICAgLy8gVE9ETzogdGhpcyBwcm9wIG1pZ2h0IGJlIHVzZWxlc3MsIGJlY2F1c2Ugd2Ugbm93IGhhdmUgYSBgdXNlTW9kZWxGaWVsZGAgaG9vay5cbiAgICBmaWVsZDogQ21zTW9kZWxGaWVsZDtcbiAgICBiaW5kOiBCaW5kQ29tcG9uZW50UmVuZGVyUHJvcDtcbiAgICBjb250ZW50TW9kZWw6IENtc01vZGVsO1xuICAgIGdldEJpbmQ6IEdldEJpbmQ7XG59XG5cbmV4cG9ydCBjb25zdCBNdWx0aVZhbHVlRHluYW1pY1pvbmUgPSAocHJvcHM6IE11bHRpVmFsdWVEeW5hbWljWm9uZVByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBzaG93Q29uZmlybWF0aW9uIH0gPSB1c2VDb25maXJtYXRpb25EaWFsb2coe1xuICAgICAgICBtZXNzYWdlOiBgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGl0ZW0/IFRoaXMgYWN0aW9uIGlzIG5vdCByZXZlcnNpYmxlLmAsXG4gICAgICAgIGFjY2VwdExhYmVsOiBgWWVzLCBJJ20gc3VyZSFgLFxuICAgICAgICBjYW5jZWxMYWJlbDogYE5vLCBsZWF2ZSBpdC5gXG4gICAgfSk7XG5cbiAgICBjb25zdCB7IGJpbmQsIGdldEJpbmQsIGNvbnRlbnRNb2RlbCB9ID0gcHJvcHM7XG4gICAgY29uc3Qgb25UZW1wbGF0ZSA9ICh0ZW1wbGF0ZTogQ21zRHluYW1pY1pvbmVUZW1wbGF0ZVdpdGhUeXBlbmFtZSkgPT4ge1xuICAgICAgICBiaW5kLmFwcGVuZFZhbHVlKHsgX3RlbXBsYXRlSWQ6IHRlbXBsYXRlLmlkLCBfX3R5cGVuYW1lOiB0ZW1wbGF0ZS5fX3R5cGVuYW1lIH0pO1xuICAgIH07XG5cbiAgICBjb25zdCBjbG9uZVZhbHVlID0gKHZhbHVlOiBUZW1wbGF0ZVZhbHVlLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGJpbmQuYXBwZW5kVmFsdWUoY2xvbmVEZWVwKHZhbHVlKSwgaW5kZXggKyAxKTtcbiAgICB9O1xuXG4gICAgY29uc3QgdmFsdWVzOiBUZW1wbGF0ZVZhbHVlW10gPSBiaW5kLnZhbHVlIHx8IFtdO1xuICAgIGNvbnN0IGhhc1ZhbHVlcyA9IHZhbHVlcy5sZW5ndGggPiAwO1xuXG4gICAgY29uc3QgQmluZCA9IGdldEJpbmQoKTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgICB7aGFzVmFsdWVzID8gKFxuICAgICAgICAgICAgICAgIDxQYXJlbnRGaWVsZFByb3ZpZGVyIHZhbHVlPXtiaW5kLnZhbHVlfSBwYXRoPXtCaW5kLnBhcmVudE5hbWV9PlxuICAgICAgICAgICAgICAgICAgICA8TXVsdGlWYWx1ZUNvbnRhaW5lciB7Li4ucHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbHVlcy5tYXAoKHZhbHVlLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEJpbmQgPSBnZXRCaW5kKGluZGV4KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9uRGVsZXRlID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93Q29uZmlybWF0aW9uKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJpbmQucmVtb3ZlVmFsdWUoaW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFBhcmVudFZhbHVlSW5kZXhQcm92aWRlciBrZXk9e2luZGV4fSBpbmRleD17aW5kZXh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRlbXBsYXRlVmFsdWVGb3JtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRNb2RlbD17Y29udGVudE1vZGVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJpbmQ9e0JpbmR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNGaXJzdD17aW5kZXggPT09IDB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0PXtpbmRleCA9PT0gdmFsdWVzLmxlbmd0aCAtIDF9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25Nb3ZlVXA9eygpID0+IGJpbmQubW92ZVZhbHVlVXAoaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTW92ZURvd249eygpID0+IGJpbmQubW92ZVZhbHVlRG93bihpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25EZWxldGU9e29uRGVsZXRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xvbmU9e3ZhbHVlID0+IGNsb25lVmFsdWUodmFsdWUsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUGFyZW50VmFsdWVJbmRleFByb3ZpZGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgPC9NdWx0aVZhbHVlQ29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvUGFyZW50RmllbGRQcm92aWRlcj5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAge2hhc1ZhbHVlcyA/IChcbiAgICAgICAgICAgICAgICA8QWRkVGVtcGxhdGVJY29uIG9uVGVtcGxhdGU9e29uVGVtcGxhdGV9IC8+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgIDxCb3R0b21NYXJnaW4+XG4gICAgICAgICAgICAgICAgICAgIDxBZGRUZW1wbGF0ZUJ1dHRvbiBvblRlbXBsYXRlPXtvblRlbXBsYXRlfSAvPlxuICAgICAgICAgICAgICAgIDwvQm90dG9tTWFyZ2luPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgPC8+XG4gICAgKTtcbn07XG4iXX0= */",
|
|
38
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk11bHRpVmFsdWVEeW5hbWljWm9uZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEIrQiIsImZpbGUiOiJNdWx0aVZhbHVlRHluYW1pY1pvbmUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgY2xvbmVEZWVwIGZyb20gXCJsb2Rhc2gvY2xvbmVEZWVwXCI7XG5pbXBvcnQgeyBBY2NvcmRpb24sIEFjY29yZGlvbkl0ZW0gfSBmcm9tIFwiQHdlYmlueS91aS9BY2NvcmRpb25cIjtcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIERlbGV0ZUljb24gfSBmcm9tIFwiQG1hdGVyaWFsLWRlc2lnbi1pY29ucy9zdmcvb3V0bGluZWQvZGVsZXRlX291dGxpbmUuc3ZnXCI7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBDbG9uZUljb24gfSBmcm9tIFwiQG1hdGVyaWFsLWRlc2lnbi1pY29ucy9zdmcvb3V0bGluZWQvbGlicmFyeV9hZGQuc3ZnXCI7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBBcnJvd1VwSWNvbiB9IGZyb20gXCJAbWF0ZXJpYWwtZGVzaWduLWljb25zL3N2Zy9vdXRsaW5lZC9hcnJvd19kcm9wX3VwLnN2Z1wiO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgQXJyb3dEb3duSWNvbiB9IGZyb20gXCJAbWF0ZXJpYWwtZGVzaWduLWljb25zL3N2Zy9vdXRsaW5lZC9hcnJvd19kcm9wX2Rvd24uc3ZnXCI7XG5pbXBvcnQgeyBBZGRUZW1wbGF0ZUJ1dHRvbiwgQWRkVGVtcGxhdGVJY29uIH0gZnJvbSBcIi4vQWRkVGVtcGxhdGVcIjtcbmltcG9ydCB7IFRlbXBsYXRlSWNvbiB9IGZyb20gXCIuL1RlbXBsYXRlSWNvblwiO1xuaW1wb3J0IHsgUGFyZW50RmllbGRQcm92aWRlciwgdXNlTW9kZWxGaWVsZCB9IGZyb20gXCJ+L2FkbWluL2hvb2tzXCI7XG5pbXBvcnQgeyBGaWVsZHMgfSBmcm9tIFwifi9hZG1pbi9jb21wb25lbnRzL0NvbnRlbnRFbnRyeUZvcm0vRmllbGRzXCI7XG5pbXBvcnQge1xuICAgIEJpbmRDb21wb25lbnQsXG4gICAgQmluZENvbXBvbmVudFJlbmRlclByb3AsXG4gICAgQ21zRHluYW1pY1pvbmVUZW1wbGF0ZSxcbiAgICBDbXNNb2RlbEZpZWxkUmVuZGVyZXJQcm9wcyxcbiAgICBDbXNNb2RlbCxcbiAgICBDbXNNb2RlbEZpZWxkLFxuICAgIENtc0R5bmFtaWNab25lVGVtcGxhdGVXaXRoVHlwZW5hbWVcbn0gZnJvbSBcIn4vdHlwZXNcIjtcbmltcG9ydCB7IG1ha2VEZWNvcmF0YWJsZSB9IGZyb20gXCJAd2ViaW55L3JlYWN0LWNvbXBvc2l0aW9uXCI7XG5pbXBvcnQgeyBUZW1wbGF0ZVByb3ZpZGVyIH0gZnJvbSBcIn4vYWRtaW4vcGx1Z2lucy9maWVsZFJlbmRlcmVycy9keW5hbWljWm9uZS9UZW1wbGF0ZVByb3ZpZGVyXCI7XG5pbXBvcnQgeyBQYXJlbnRWYWx1ZUluZGV4UHJvdmlkZXIgfSBmcm9tIFwifi9hZG1pbi9jb21wb25lbnRzL01vZGVsRmllbGRQcm92aWRlclwiO1xuaW1wb3J0IHsgdXNlQ29uZmlybWF0aW9uRGlhbG9nIH0gZnJvbSBcIkB3ZWJpbnkvYXBwLWFkbWluXCI7XG5cbmNvbnN0IEJvdHRvbU1hcmdpbiA9IHN0eWxlZC5kaXZgXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbmA7XG5cbnR5cGUgR2V0QmluZCA9IENtc01vZGVsRmllbGRSZW5kZXJlclByb3BzW1wiZ2V0QmluZFwiXTtcblxuZXhwb3J0IGludGVyZmFjZSBNdWx0aVZhbHVlSXRlbUNvbnRhaW5lclByb3BzIHtcbiAgICB2YWx1ZTogVGVtcGxhdGVWYWx1ZTtcbiAgICBjb250ZW50TW9kZWw6IENtc01vZGVsO1xuICAgIGlzRmlyc3Q6IGJvb2xlYW47XG4gICAgaXNMYXN0OiBib29sZWFuO1xuICAgIG9uTW92ZVVwOiAoKSA9PiB2b2lkO1xuICAgIG9uTW92ZURvd246ICgpID0+IHZvaWQ7XG4gICAgb25EZWxldGU6ICgpID0+IHZvaWQ7XG4gICAgb25DbG9uZTogKHZhbHVlOiBUZW1wbGF0ZVZhbHVlKSA9PiB2b2lkO1xuICAgIHRpdGxlOiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBpY29uOiBKU1guRWxlbWVudDtcbiAgICB0ZW1wbGF0ZTogQ21zRHluYW1pY1pvbmVUZW1wbGF0ZTtcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufVxuXG5leHBvcnQgY29uc3QgTXVsdGlWYWx1ZUl0ZW1Db250YWluZXIgPSBtYWtlRGVjb3JhdGFibGUoXG4gICAgXCJNdWx0aVZhbHVlSXRlbUNvbnRhaW5lclwiLFxuICAgICh7IGNoaWxkcmVuLCAuLi5wcm9wcyB9OiBNdWx0aVZhbHVlSXRlbUNvbnRhaW5lclByb3BzKSA9PiB7XG4gICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoXG4gICAgICAgICAgICA8QWNjb3JkaW9uSXRlbS5BY3Rpb25zPlxuICAgICAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtLkFjdGlvblxuICAgICAgICAgICAgICAgICAgICBpY29uPXs8QXJyb3dVcEljb24gLz59XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3Byb3BzLm9uTW92ZVVwfVxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNGaXJzdH1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtLkFjdGlvblxuICAgICAgICAgICAgICAgICAgICBpY29uPXs8QXJyb3dEb3duSWNvbiAvPn1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17cHJvcHMub25Nb3ZlRG93bn1cbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e3Byb3BzLmlzTGFzdH1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtLkRpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICA8QWNjb3JkaW9uSXRlbS5BY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgaWNvbj17PENsb25lSWNvbiAvPn1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gcHJvcHMub25DbG9uZShwcm9wcy52YWx1ZSl9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8QWNjb3JkaW9uSXRlbS5BY3Rpb24gaWNvbj17PERlbGV0ZUljb24gLz59IG9uQ2xpY2s9e3Byb3BzLm9uRGVsZXRlfSAvPlxuICAgICAgICAgICAgPC9BY2NvcmRpb25JdGVtLkFjdGlvbnM+XG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtXG4gICAgICAgICAgICAgICAgdGl0bGU9e3Byb3BzLnRpdGxlfVxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPXtwcm9wcy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgICAgICBpY29uPXtwcm9wcy5pY29ufVxuICAgICAgICAgICAgICAgIGFjdGlvbnM9e2FjdGlvbnN9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC9BY2NvcmRpb25JdGVtPlxuICAgICAgICApO1xuICAgIH1cbik7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGlWYWx1ZUl0ZW1JdGVtUHJvcHMge1xuICAgIHRlbXBsYXRlOiBDbXNEeW5hbWljWm9uZVRlbXBsYXRlO1xuICAgIGNvbnRlbnRNb2RlbDogQ21zTW9kZWw7XG4gICAgQmluZDogQmluZENvbXBvbmVudDtcbn1cblxuZXhwb3J0IGNvbnN0IE11bHRpVmFsdWVJdGVtID0gbWFrZURlY29yYXRhYmxlKFxuICAgIFwiTXVsdGlWYWx1ZUl0ZW1cIixcbiAgICAocHJvcHM6IE11bHRpVmFsdWVJdGVtSXRlbVByb3BzKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgdGVtcGxhdGUsIEJpbmQsIGNvbnRlbnRNb2RlbCB9ID0gcHJvcHM7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxUZW1wbGF0ZVByb3ZpZGVyIHRlbXBsYXRlPXt0ZW1wbGF0ZX0+XG4gICAgICAgICAgICAgICAgPEZpZWxkc1xuICAgICAgICAgICAgICAgICAgICBmaWVsZHM9e3RlbXBsYXRlLmZpZWxkc31cbiAgICAgICAgICAgICAgICAgICAgbGF5b3V0PXt0ZW1wbGF0ZS5sYXlvdXQgfHwgW119XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRNb2RlbD17Y29udGVudE1vZGVsfVxuICAgICAgICAgICAgICAgICAgICBCaW5kPXtCaW5kfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L1RlbXBsYXRlUHJvdmlkZXI+XG4gICAgICAgICk7XG4gICAgfVxuKTtcblxuaW50ZXJmYWNlIFRlbXBsYXRlVmFsdWUge1xuICAgIF90ZW1wbGF0ZUlkOiBzdHJpbmc7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5pbnRlcmZhY2UgVGVtcGxhdGVWYWx1ZUZvcm1Qcm9wcyB7XG4gICAgdmFsdWU6IFRlbXBsYXRlVmFsdWU7XG4gICAgY29udGVudE1vZGVsOiBDbXNNb2RlbDtcbiAgICBCaW5kOiBCaW5kQ29tcG9uZW50O1xuICAgIGlzRmlyc3Q6IGJvb2xlYW47XG4gICAgaXNMYXN0OiBib29sZWFuO1xuICAgIG9uTW92ZVVwOiAoKSA9PiB2b2lkO1xuICAgIG9uTW92ZURvd246ICgpID0+IHZvaWQ7XG4gICAgb25EZWxldGU6ICgpID0+IHZvaWQ7XG4gICAgb25DbG9uZTogKHZhbHVlOiBUZW1wbGF0ZVZhbHVlKSA9PiB2b2lkO1xufVxuXG5jb25zdCBUZW1wbGF0ZVZhbHVlRm9ybSA9ICh7XG4gICAgdmFsdWUsXG4gICAgY29udGVudE1vZGVsLFxuICAgIEJpbmQsXG4gICAgaXNMYXN0LFxuICAgIGlzRmlyc3QsXG4gICAgb25Nb3ZlVXAsXG4gICAgb25Nb3ZlRG93bixcbiAgICBvbkRlbGV0ZSxcbiAgICBvbkNsb25lXG59OiBUZW1wbGF0ZVZhbHVlRm9ybVByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBmaWVsZCB9ID0gdXNlTW9kZWxGaWVsZCgpO1xuICAgIGNvbnN0IHRlbXBsYXRlcyA9IGZpZWxkLnNldHRpbmdzPy50ZW1wbGF0ZXMgfHwgW107XG5cbiAgICBjb25zdCB0ZW1wbGF0ZTogQ21zRHluYW1pY1pvbmVUZW1wbGF0ZSB8IHVuZGVmaW5lZCA9IHRlbXBsYXRlcy5maW5kKFxuICAgICAgICB0cGwgPT4gdHBsLmlkID09PSB2YWx1ZS5fdGVtcGxhdGVJZFxuICAgICk7XG5cbiAgICBpZiAoIXRlbXBsYXRlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICAgIDxNdWx0aVZhbHVlSXRlbUNvbnRhaW5lclxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgY29udGVudE1vZGVsPXtjb250ZW50TW9kZWx9XG4gICAgICAgICAgICBpc0ZpcnN0PXtpc0ZpcnN0fVxuICAgICAgICAgICAgaXNMYXN0PXtpc0xhc3R9XG4gICAgICAgICAgICBvbkNsb25lPXtvbkNsb25lfVxuICAgICAgICAgICAgb25EZWxldGU9e29uRGVsZXRlfVxuICAgICAgICAgICAgb25Nb3ZlVXA9e29uTW92ZVVwfVxuICAgICAgICAgICAgb25Nb3ZlRG93bj17b25Nb3ZlRG93bn1cbiAgICAgICAgICAgIHRpdGxlPXt0ZW1wbGF0ZS5uYW1lfVxuICAgICAgICAgICAgZGVzY3JpcHRpb249e3RlbXBsYXRlLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgaWNvbj17PFRlbXBsYXRlSWNvbiBpY29uPXt0ZW1wbGF0ZS5pY29ufSAvPn1cbiAgICAgICAgICAgIHRlbXBsYXRlPXt0ZW1wbGF0ZX1cbiAgICAgICAgPlxuICAgICAgICAgICAgPE11bHRpVmFsdWVJdGVtIHRlbXBsYXRlPXt0ZW1wbGF0ZX0gY29udGVudE1vZGVsPXtjb250ZW50TW9kZWx9IEJpbmQ9e0JpbmR9IC8+XG4gICAgICAgIDwvTXVsdGlWYWx1ZUl0ZW1Db250YWluZXI+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGlWYWx1ZUNvbnRhaW5lclByb3BzIGV4dGVuZHMgTXVsdGlWYWx1ZUR5bmFtaWNab25lUHJvcHMge1xuICAgIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG59XG5cbmV4cG9ydCBjb25zdCBNdWx0aVZhbHVlQ29udGFpbmVyID0gbWFrZURlY29yYXRhYmxlKFxuICAgIFwiTXVsdGlWYWx1ZUNvbnRhaW5lclwiLFxuICAgICh7IGNoaWxkcmVuIH06IE11bHRpVmFsdWVDb250YWluZXJQcm9wcykgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPEFjY29yZGlvbj5cbiAgICAgICAgICAgICAgICA8PntjaGlsZHJlbn08Lz5cbiAgICAgICAgICAgIDwvQWNjb3JkaW9uPlxuICAgICAgICApO1xuICAgIH1cbik7XG5cbmludGVyZmFjZSBNdWx0aVZhbHVlRHluYW1pY1pvbmVQcm9wcyB7XG4gICAgLy8gVE9ETzogdGhpcyBwcm9wIG1pZ2h0IGJlIHVzZWxlc3MsIGJlY2F1c2Ugd2Ugbm93IGhhdmUgYSBgdXNlTW9kZWxGaWVsZGAgaG9vay5cbiAgICBmaWVsZDogQ21zTW9kZWxGaWVsZDtcbiAgICBiaW5kOiBCaW5kQ29tcG9uZW50UmVuZGVyUHJvcDtcbiAgICBjb250ZW50TW9kZWw6IENtc01vZGVsO1xuICAgIGdldEJpbmQ6IEdldEJpbmQ7XG59XG5cbmV4cG9ydCBjb25zdCBNdWx0aVZhbHVlRHluYW1pY1pvbmUgPSAocHJvcHM6IE11bHRpVmFsdWVEeW5hbWljWm9uZVByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBzaG93Q29uZmlybWF0aW9uIH0gPSB1c2VDb25maXJtYXRpb25EaWFsb2coe1xuICAgICAgICBtZXNzYWdlOiBgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGl0ZW0/IFRoaXMgYWN0aW9uIGlzIG5vdCByZXZlcnNpYmxlLmAsXG4gICAgICAgIGFjY2VwdExhYmVsOiBgWWVzLCBJJ20gc3VyZSFgLFxuICAgICAgICBjYW5jZWxMYWJlbDogYE5vLCBsZWF2ZSBpdC5gXG4gICAgfSk7XG5cbiAgICBjb25zdCB7IGJpbmQsIGdldEJpbmQsIGNvbnRlbnRNb2RlbCB9ID0gcHJvcHM7XG4gICAgY29uc3Qgb25UZW1wbGF0ZSA9ICh0ZW1wbGF0ZTogQ21zRHluYW1pY1pvbmVUZW1wbGF0ZVdpdGhUeXBlbmFtZSkgPT4ge1xuICAgICAgICBiaW5kLmFwcGVuZFZhbHVlKHsgX3RlbXBsYXRlSWQ6IHRlbXBsYXRlLmlkLCBfX3R5cGVuYW1lOiB0ZW1wbGF0ZS5fX3R5cGVuYW1lIH0pO1xuICAgIH07XG5cbiAgICBjb25zdCBjbG9uZVZhbHVlID0gKHZhbHVlOiBUZW1wbGF0ZVZhbHVlLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGJpbmQuYXBwZW5kVmFsdWUoY2xvbmVEZWVwKHZhbHVlKSwgaW5kZXggKyAxKTtcbiAgICB9O1xuXG4gICAgY29uc3QgdmFsdWVzOiBUZW1wbGF0ZVZhbHVlW10gPSBiaW5kLnZhbHVlIHx8IFtdO1xuICAgIGNvbnN0IGhhc1ZhbHVlcyA9IHZhbHVlcy5sZW5ndGggPiAwO1xuXG4gICAgY29uc3QgQmluZCA9IGdldEJpbmQoKTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgICB7aGFzVmFsdWVzID8gKFxuICAgICAgICAgICAgICAgIDxQYXJlbnRGaWVsZFByb3ZpZGVyIHZhbHVlPXtiaW5kLnZhbHVlfSBwYXRoPXtCaW5kLnBhcmVudE5hbWV9PlxuICAgICAgICAgICAgICAgICAgICA8TXVsdGlWYWx1ZUNvbnRhaW5lciB7Li4ucHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbHVlcy5tYXAoKHZhbHVlLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEJpbmQgPSBnZXRCaW5kKGluZGV4KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9uRGVsZXRlID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93Q29uZmlybWF0aW9uKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJpbmQucmVtb3ZlVmFsdWUoaW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFBhcmVudFZhbHVlSW5kZXhQcm92aWRlciBrZXk9e2luZGV4fSBpbmRleD17aW5kZXh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJpbmQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeygpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJpbmQuVmFsaWRhdGlvblNjb3BlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRlbXBsYXRlVmFsdWVGb3JtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRNb2RlbD17Y29udGVudE1vZGVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJpbmQ9e0JpbmR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNGaXJzdD17aW5kZXggPT09IDB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0PXtpbmRleCA9PT0gdmFsdWVzLmxlbmd0aCAtIDF9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25Nb3ZlVXA9eygpID0+IGJpbmQubW92ZVZhbHVlVXAoaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTW92ZURvd249eygpID0+IGJpbmQubW92ZVZhbHVlRG93bihpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25EZWxldGU9e29uRGVsZXRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xvbmU9e3ZhbHVlID0+IGNsb25lVmFsdWUodmFsdWUsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmluZC5WYWxpZGF0aW9uU2NvcGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmluZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9QYXJlbnRWYWx1ZUluZGV4UHJvdmlkZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICA8L011bHRpVmFsdWVDb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9QYXJlbnRGaWVsZFByb3ZpZGVyPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICB7aGFzVmFsdWVzID8gKFxuICAgICAgICAgICAgICAgIDxBZGRUZW1wbGF0ZUljb24gb25UZW1wbGF0ZT17b25UZW1wbGF0ZX0gLz5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgPEJvdHRvbU1hcmdpbj5cbiAgICAgICAgICAgICAgICAgICAgPEFkZFRlbXBsYXRlQnV0dG9uIG9uVGVtcGxhdGU9e29uVGVtcGxhdGV9IC8+XG4gICAgICAgICAgICAgICAgPC9Cb3R0b21NYXJnaW4+XG4gICAgICAgICAgICApfVxuICAgICAgICA8Lz5cbiAgICApO1xufTtcbiJdfQ== */",
|
|
39
39
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
40
40
|
});
|
|
41
41
|
var MultiValueItemContainer = exports.MultiValueItemContainer = (0, _reactComposition.makeDecoratable)("MultiValueItemContainer", function (_ref) {
|
|
42
42
|
var children = _ref.children,
|
|
43
43
|
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
44
44
|
var actions = /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Actions, null, /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Action, {
|
|
45
|
-
icon: /*#__PURE__*/_react.default.createElement(
|
|
45
|
+
icon: /*#__PURE__*/_react.default.createElement(_arrow_drop_up.ReactComponent, null),
|
|
46
46
|
onClick: props.onMoveUp,
|
|
47
47
|
disabled: props.isFirst
|
|
48
48
|
}), /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Action, {
|
|
49
|
-
icon: /*#__PURE__*/_react.default.createElement(
|
|
49
|
+
icon: /*#__PURE__*/_react.default.createElement(_arrow_drop_down.ReactComponent, null),
|
|
50
50
|
onClick: props.onMoveDown,
|
|
51
51
|
disabled: props.isLast
|
|
52
52
|
}), /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Divider, null), /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Action, {
|
|
@@ -157,22 +157,24 @@ var MultiValueDynamicZone = exports.MultiValueDynamicZone = function MultiValueD
|
|
|
157
157
|
return /*#__PURE__*/_react.default.createElement(_ModelFieldProvider.ParentValueIndexProvider, {
|
|
158
158
|
key: index,
|
|
159
159
|
index: index
|
|
160
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
160
|
+
}, /*#__PURE__*/_react.default.createElement(Bind, null, function () {
|
|
161
|
+
return /*#__PURE__*/_react.default.createElement(Bind.ValidationScope, null, /*#__PURE__*/_react.default.createElement(TemplateValueForm, {
|
|
162
|
+
value: value,
|
|
163
|
+
contentModel: contentModel,
|
|
164
|
+
Bind: Bind,
|
|
165
|
+
isFirst: index === 0,
|
|
166
|
+
isLast: index === values.length - 1,
|
|
167
|
+
onMoveUp: function onMoveUp() {
|
|
168
|
+
return bind.moveValueUp(index);
|
|
169
|
+
},
|
|
170
|
+
onMoveDown: function onMoveDown() {
|
|
171
|
+
return bind.moveValueDown(index);
|
|
172
|
+
},
|
|
173
|
+
onDelete: onDelete,
|
|
174
|
+
onClone: function onClone(value) {
|
|
175
|
+
return cloneValue(value, index);
|
|
176
|
+
}
|
|
177
|
+
}));
|
|
176
178
|
}));
|
|
177
179
|
}))) : null, hasValues ? /*#__PURE__*/_react.default.createElement(_AddTemplate.AddTemplateIcon, {
|
|
178
180
|
onTemplate: onTemplate
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_cloneDeep","_Accordion","_delete_outline","_library_add","_expand_less","_expand_more","_AddTemplate","_TemplateIcon","_hooks","_Fields","_reactComposition","_TemplateProvider","_ModelFieldProvider","_appAdmin","_excluded","_EMOTION_STRINGIFIED_CSS_ERROR__","BottomMargin","_base","default","process","env","NODE_ENV","target","label","name","styles","map","toString","MultiValueItemContainer","exports","makeDecoratable","_ref","children","props","_objectWithoutProperties2","actions","createElement","AccordionItem","Actions","Action","icon","ReactComponent","onClick","onMoveUp","disabled","isFirst","onMoveDown","isLast","Divider","onClone","value","onDelete","title","description","MultiValueItem","template","Bind","contentModel","TemplateProvider","Fields","fields","layout","TemplateValueForm","_ref2","_useModelField","useModelField","field","templates","settings","find","tpl","id","_templateId","TemplateIcon","MultiValueContainer","_ref3","Accordion","Fragment","MultiValueDynamicZone","_useConfirmationDialo","useConfirmationDialog","message","acceptLabel","cancelLabel","showConfirmation","bind","getBind","onTemplate","appendValue","__typename","cloneValue","index","cloneDeep","values","hasValues","length","ParentFieldProvider","path","parentName","removeValue","ParentValueIndexProvider","key","moveValueUp","moveValueDown","AddTemplateIcon","AddTemplateButton"],"sources":["MultiValueDynamicZone.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport { ReactComponent as DeleteIcon } from \"@material-design-icons/svg/outlined/delete_outline.svg\";\nimport { ReactComponent as CloneIcon } from \"@material-design-icons/svg/outlined/library_add.svg\";\nimport { ReactComponent as ArrowUpIcon } from \"@material-design-icons/svg/round/expand_less.svg\";\nimport { ReactComponent as ArrowDownIcon } from \"@material-design-icons/svg/round/expand_more.svg\";\nimport { AddTemplateButton, AddTemplateIcon } from \"./AddTemplate\";\nimport { TemplateIcon } from \"./TemplateIcon\";\nimport { ParentFieldProvider, useModelField } from \"~/admin/hooks\";\nimport { Fields } from \"~/admin/components/ContentEntryForm/Fields\";\nimport {\n BindComponent,\n BindComponentRenderProp,\n CmsDynamicZoneTemplate,\n CmsModelFieldRendererProps,\n CmsModel,\n CmsModelField,\n CmsDynamicZoneTemplateWithTypename\n} from \"~/types\";\nimport { makeDecoratable } from \"@webiny/react-composition\";\nimport { TemplateProvider } from \"~/admin/plugins/fieldRenderers/dynamicZone/TemplateProvider\";\nimport { ParentValueIndexProvider } from \"~/admin/components/ModelFieldProvider\";\nimport { useConfirmationDialog } from \"@webiny/app-admin\";\n\nconst BottomMargin = styled.div`\n margin-bottom: 20px;\n`;\n\ntype GetBind = CmsModelFieldRendererProps[\"getBind\"];\n\nexport interface MultiValueItemContainerProps {\n value: TemplateValue;\n contentModel: CmsModel;\n isFirst: boolean;\n isLast: boolean;\n onMoveUp: () => void;\n onMoveDown: () => void;\n onDelete: () => void;\n onClone: (value: TemplateValue) => void;\n title: React.ReactNode;\n description: string;\n icon: JSX.Element;\n template: CmsDynamicZoneTemplate;\n children: React.ReactNode;\n}\n\nexport const MultiValueItemContainer = makeDecoratable(\n \"MultiValueItemContainer\",\n ({ children, ...props }: MultiValueItemContainerProps) => {\n const actions = (\n <AccordionItem.Actions>\n <AccordionItem.Action\n icon={<ArrowUpIcon />}\n onClick={props.onMoveUp}\n disabled={props.isFirst}\n />\n <AccordionItem.Action\n icon={<ArrowDownIcon />}\n onClick={props.onMoveDown}\n disabled={props.isLast}\n />\n <AccordionItem.Divider />\n <AccordionItem.Action\n icon={<CloneIcon />}\n onClick={() => props.onClone(props.value)}\n />\n <AccordionItem.Action icon={<DeleteIcon />} onClick={props.onDelete} />\n </AccordionItem.Actions>\n );\n\n return (\n <AccordionItem\n title={props.title}\n description={props.description}\n icon={props.icon}\n actions={actions}\n >\n {children}\n </AccordionItem>\n );\n }\n);\n\nexport interface MultiValueItemItemProps {\n template: CmsDynamicZoneTemplate;\n contentModel: CmsModel;\n Bind: BindComponent;\n}\n\nexport const MultiValueItem = makeDecoratable(\n \"MultiValueItem\",\n (props: MultiValueItemItemProps) => {\n const { template, Bind, contentModel } = props;\n\n return (\n <TemplateProvider template={template}>\n <Fields\n fields={template.fields}\n layout={template.layout || []}\n contentModel={contentModel}\n Bind={Bind}\n />\n </TemplateProvider>\n );\n }\n);\n\ninterface TemplateValue {\n _templateId: string;\n [key: string]: any;\n}\n\ninterface TemplateValueFormProps {\n value: TemplateValue;\n contentModel: CmsModel;\n Bind: BindComponent;\n isFirst: boolean;\n isLast: boolean;\n onMoveUp: () => void;\n onMoveDown: () => void;\n onDelete: () => void;\n onClone: (value: TemplateValue) => void;\n}\n\nconst TemplateValueForm = ({\n value,\n contentModel,\n Bind,\n isLast,\n isFirst,\n onMoveUp,\n onMoveDown,\n onDelete,\n onClone\n}: TemplateValueFormProps) => {\n const { field } = useModelField();\n const templates = field.settings?.templates || [];\n\n const template: CmsDynamicZoneTemplate | undefined = templates.find(\n tpl => tpl.id === value._templateId\n );\n\n if (!template) {\n return null;\n }\n\n return (\n <MultiValueItemContainer\n value={value}\n contentModel={contentModel}\n isFirst={isFirst}\n isLast={isLast}\n onClone={onClone}\n onDelete={onDelete}\n onMoveUp={onMoveUp}\n onMoveDown={onMoveDown}\n title={template.name}\n description={template.description}\n icon={<TemplateIcon icon={template.icon} />}\n template={template}\n >\n <MultiValueItem template={template} contentModel={contentModel} Bind={Bind} />\n </MultiValueItemContainer>\n );\n};\n\nexport interface MultiValueContainerProps extends MultiValueDynamicZoneProps {\n children: React.ReactNode;\n}\n\nexport const MultiValueContainer = makeDecoratable(\n \"MultiValueContainer\",\n ({ children }: MultiValueContainerProps) => {\n return (\n <Accordion>\n <>{children}</>\n </Accordion>\n );\n }\n);\n\ninterface MultiValueDynamicZoneProps {\n // TODO: this prop might be useless, because we now have a `useModelField` hook.\n field: CmsModelField;\n bind: BindComponentRenderProp;\n contentModel: CmsModel;\n getBind: GetBind;\n}\n\nexport const MultiValueDynamicZone = (props: MultiValueDynamicZoneProps) => {\n const { showConfirmation } = useConfirmationDialog({\n message: `Are you sure you want to delete this item? This action is not reversible.`,\n acceptLabel: `Yes, I'm sure!`,\n cancelLabel: `No, leave it.`\n });\n\n const { bind, getBind, contentModel } = props;\n const onTemplate = (template: CmsDynamicZoneTemplateWithTypename) => {\n bind.appendValue({ _templateId: template.id, __typename: template.__typename });\n };\n\n const cloneValue = (value: TemplateValue, index: number) => {\n bind.appendValue(cloneDeep(value), index + 1);\n };\n\n const values: TemplateValue[] = bind.value || [];\n const hasValues = values.length > 0;\n\n const Bind = getBind();\n\n return (\n <>\n {hasValues ? (\n <ParentFieldProvider value={bind.value} path={Bind.parentName}>\n <MultiValueContainer {...props}>\n {values.map((value, index) => {\n const Bind = getBind(index);\n\n const onDelete = () => {\n showConfirmation(() => {\n bind.removeValue(index);\n });\n };\n\n return (\n <ParentValueIndexProvider key={index} index={index}>\n <TemplateValueForm\n value={value}\n contentModel={contentModel}\n Bind={Bind}\n isFirst={index === 0}\n isLast={index === values.length - 1}\n onMoveUp={() => bind.moveValueUp(index)}\n onMoveDown={() => bind.moveValueDown(index)}\n onDelete={onDelete}\n onClone={value => cloneValue(value, index)}\n />\n </ParentValueIndexProvider>\n );\n })}\n </MultiValueContainer>\n </ParentFieldProvider>\n ) : null}\n {hasValues ? (\n <AddTemplateIcon onTemplate={onTemplate} />\n ) : (\n <BottomMargin>\n <AddTemplateButton onTemplate={onTemplate} />\n </BottomMargin>\n )}\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_cloneDeep","_Accordion","_delete_outline","_library_add","_arrow_drop_up","_arrow_drop_down","_AddTemplate","_TemplateIcon","_hooks","_Fields","_reactComposition","_TemplateProvider","_ModelFieldProvider","_appAdmin","_excluded","_EMOTION_STRINGIFIED_CSS_ERROR__","BottomMargin","_base","default","process","env","NODE_ENV","target","label","name","styles","map","toString","MultiValueItemContainer","exports","makeDecoratable","_ref","children","props","_objectWithoutProperties2","actions","createElement","AccordionItem","Actions","Action","icon","ReactComponent","onClick","onMoveUp","disabled","isFirst","onMoveDown","isLast","Divider","onClone","value","onDelete","title","description","MultiValueItem","template","Bind","contentModel","TemplateProvider","Fields","fields","layout","TemplateValueForm","_ref2","_useModelField","useModelField","field","templates","settings","find","tpl","id","_templateId","TemplateIcon","MultiValueContainer","_ref3","Accordion","Fragment","MultiValueDynamicZone","_useConfirmationDialo","useConfirmationDialog","message","acceptLabel","cancelLabel","showConfirmation","bind","getBind","onTemplate","appendValue","__typename","cloneValue","index","cloneDeep","values","hasValues","length","ParentFieldProvider","path","parentName","removeValue","ParentValueIndexProvider","key","ValidationScope","moveValueUp","moveValueDown","AddTemplateIcon","AddTemplateButton"],"sources":["MultiValueDynamicZone.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport { ReactComponent as DeleteIcon } from \"@material-design-icons/svg/outlined/delete_outline.svg\";\nimport { ReactComponent as CloneIcon } from \"@material-design-icons/svg/outlined/library_add.svg\";\nimport { ReactComponent as ArrowUpIcon } from \"@material-design-icons/svg/outlined/arrow_drop_up.svg\";\nimport { ReactComponent as ArrowDownIcon } from \"@material-design-icons/svg/outlined/arrow_drop_down.svg\";\nimport { AddTemplateButton, AddTemplateIcon } from \"./AddTemplate\";\nimport { TemplateIcon } from \"./TemplateIcon\";\nimport { ParentFieldProvider, useModelField } from \"~/admin/hooks\";\nimport { Fields } from \"~/admin/components/ContentEntryForm/Fields\";\nimport {\n BindComponent,\n BindComponentRenderProp,\n CmsDynamicZoneTemplate,\n CmsModelFieldRendererProps,\n CmsModel,\n CmsModelField,\n CmsDynamicZoneTemplateWithTypename\n} from \"~/types\";\nimport { makeDecoratable } from \"@webiny/react-composition\";\nimport { TemplateProvider } from \"~/admin/plugins/fieldRenderers/dynamicZone/TemplateProvider\";\nimport { ParentValueIndexProvider } from \"~/admin/components/ModelFieldProvider\";\nimport { useConfirmationDialog } from \"@webiny/app-admin\";\n\nconst BottomMargin = styled.div`\n margin-bottom: 20px;\n`;\n\ntype GetBind = CmsModelFieldRendererProps[\"getBind\"];\n\nexport interface MultiValueItemContainerProps {\n value: TemplateValue;\n contentModel: CmsModel;\n isFirst: boolean;\n isLast: boolean;\n onMoveUp: () => void;\n onMoveDown: () => void;\n onDelete: () => void;\n onClone: (value: TemplateValue) => void;\n title: React.ReactNode;\n description: string;\n icon: JSX.Element;\n template: CmsDynamicZoneTemplate;\n children: React.ReactNode;\n}\n\nexport const MultiValueItemContainer = makeDecoratable(\n \"MultiValueItemContainer\",\n ({ children, ...props }: MultiValueItemContainerProps) => {\n const actions = (\n <AccordionItem.Actions>\n <AccordionItem.Action\n icon={<ArrowUpIcon />}\n onClick={props.onMoveUp}\n disabled={props.isFirst}\n />\n <AccordionItem.Action\n icon={<ArrowDownIcon />}\n onClick={props.onMoveDown}\n disabled={props.isLast}\n />\n <AccordionItem.Divider />\n <AccordionItem.Action\n icon={<CloneIcon />}\n onClick={() => props.onClone(props.value)}\n />\n <AccordionItem.Action icon={<DeleteIcon />} onClick={props.onDelete} />\n </AccordionItem.Actions>\n );\n\n return (\n <AccordionItem\n title={props.title}\n description={props.description}\n icon={props.icon}\n actions={actions}\n >\n {children}\n </AccordionItem>\n );\n }\n);\n\nexport interface MultiValueItemItemProps {\n template: CmsDynamicZoneTemplate;\n contentModel: CmsModel;\n Bind: BindComponent;\n}\n\nexport const MultiValueItem = makeDecoratable(\n \"MultiValueItem\",\n (props: MultiValueItemItemProps) => {\n const { template, Bind, contentModel } = props;\n\n return (\n <TemplateProvider template={template}>\n <Fields\n fields={template.fields}\n layout={template.layout || []}\n contentModel={contentModel}\n Bind={Bind}\n />\n </TemplateProvider>\n );\n }\n);\n\ninterface TemplateValue {\n _templateId: string;\n [key: string]: any;\n}\n\ninterface TemplateValueFormProps {\n value: TemplateValue;\n contentModel: CmsModel;\n Bind: BindComponent;\n isFirst: boolean;\n isLast: boolean;\n onMoveUp: () => void;\n onMoveDown: () => void;\n onDelete: () => void;\n onClone: (value: TemplateValue) => void;\n}\n\nconst TemplateValueForm = ({\n value,\n contentModel,\n Bind,\n isLast,\n isFirst,\n onMoveUp,\n onMoveDown,\n onDelete,\n onClone\n}: TemplateValueFormProps) => {\n const { field } = useModelField();\n const templates = field.settings?.templates || [];\n\n const template: CmsDynamicZoneTemplate | undefined = templates.find(\n tpl => tpl.id === value._templateId\n );\n\n if (!template) {\n return null;\n }\n\n return (\n <MultiValueItemContainer\n value={value}\n contentModel={contentModel}\n isFirst={isFirst}\n isLast={isLast}\n onClone={onClone}\n onDelete={onDelete}\n onMoveUp={onMoveUp}\n onMoveDown={onMoveDown}\n title={template.name}\n description={template.description}\n icon={<TemplateIcon icon={template.icon} />}\n template={template}\n >\n <MultiValueItem template={template} contentModel={contentModel} Bind={Bind} />\n </MultiValueItemContainer>\n );\n};\n\nexport interface MultiValueContainerProps extends MultiValueDynamicZoneProps {\n children: React.ReactNode;\n}\n\nexport const MultiValueContainer = makeDecoratable(\n \"MultiValueContainer\",\n ({ children }: MultiValueContainerProps) => {\n return (\n <Accordion>\n <>{children}</>\n </Accordion>\n );\n }\n);\n\ninterface MultiValueDynamicZoneProps {\n // TODO: this prop might be useless, because we now have a `useModelField` hook.\n field: CmsModelField;\n bind: BindComponentRenderProp;\n contentModel: CmsModel;\n getBind: GetBind;\n}\n\nexport const MultiValueDynamicZone = (props: MultiValueDynamicZoneProps) => {\n const { showConfirmation } = useConfirmationDialog({\n message: `Are you sure you want to delete this item? This action is not reversible.`,\n acceptLabel: `Yes, I'm sure!`,\n cancelLabel: `No, leave it.`\n });\n\n const { bind, getBind, contentModel } = props;\n const onTemplate = (template: CmsDynamicZoneTemplateWithTypename) => {\n bind.appendValue({ _templateId: template.id, __typename: template.__typename });\n };\n\n const cloneValue = (value: TemplateValue, index: number) => {\n bind.appendValue(cloneDeep(value), index + 1);\n };\n\n const values: TemplateValue[] = bind.value || [];\n const hasValues = values.length > 0;\n\n const Bind = getBind();\n\n return (\n <>\n {hasValues ? (\n <ParentFieldProvider value={bind.value} path={Bind.parentName}>\n <MultiValueContainer {...props}>\n {values.map((value, index) => {\n const Bind = getBind(index);\n\n const onDelete = () => {\n showConfirmation(() => {\n bind.removeValue(index);\n });\n };\n\n return (\n <ParentValueIndexProvider key={index} index={index}>\n <Bind>\n {() => (\n <Bind.ValidationScope>\n <TemplateValueForm\n value={value}\n contentModel={contentModel}\n Bind={Bind}\n isFirst={index === 0}\n isLast={index === values.length - 1}\n onMoveUp={() => bind.moveValueUp(index)}\n onMoveDown={() => bind.moveValueDown(index)}\n onDelete={onDelete}\n onClone={value => cloneValue(value, index)}\n />\n </Bind.ValidationScope>\n )}\n </Bind>\n </ParentValueIndexProvider>\n );\n })}\n </MultiValueContainer>\n </ParentFieldProvider>\n ) : null}\n {hasValues ? (\n <AddTemplateIcon onTemplate={onTemplate} />\n ) : (\n <BottomMargin>\n <AddTemplateButton onTemplate={onTemplate} />\n </BottomMargin>\n )}\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -51,7 +51,7 @@ var DynamicZoneContent = function DynamicZoneContent(_ref) {
|
|
|
51
51
|
var Bind = getBind();
|
|
52
52
|
var Component = field.multipleValues ? _MultiValueDynamicZone.MultiValueDynamicZone : _SingleValueDynamicZone.SingleValueDynamicZone;
|
|
53
53
|
return /*#__PURE__*/_react.default.createElement(Bind, null, function (bind) {
|
|
54
|
-
return /*#__PURE__*/_react.default.createElement(DynamicZoneContainer, {
|
|
54
|
+
return /*#__PURE__*/_react.default.createElement(Bind.ValidationScope, null, /*#__PURE__*/_react.default.createElement(DynamicZoneContainer, {
|
|
55
55
|
field: field,
|
|
56
56
|
bind: bind,
|
|
57
57
|
getBind: getBind,
|
|
@@ -61,7 +61,7 @@ var DynamicZoneContent = function DynamicZoneContent(_ref) {
|
|
|
61
61
|
field: field,
|
|
62
62
|
getBind: getBind,
|
|
63
63
|
contentModel: contentModel
|
|
64
|
-
}));
|
|
64
|
+
})));
|
|
65
65
|
});
|
|
66
66
|
};
|
|
67
67
|
var dynamicZoneFieldRenderer = exports.dynamicZoneFieldRenderer = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_Accordion","_SingleValueDynamicZone","_MultiValueDynamicZone","_AccordionRenderSettings","_FormElementMessage","_reactComposition","_templateObject","noBottomPadding","css","_taggedTemplateLiteral2","default","DynamicZoneContainer","exports","makeDecoratable","props","field","_props$bind$validatio","bind","validation","isValid","message","_props$title","title","label","_props$description","description","helpText","className","children","defaultClassName","multipleValues","undefined","_getAccordionRenderSe","getAccordionRenderSettings","open","createElement","Fragment","Accordion","AccordionItem","FormElementMessage","error","DynamicZoneContent","_ref","getBind","contentModel","templates","settings","length","console","info","concat","fieldId","Bind","Component","MultiValueDynamicZone","SingleValueDynamicZone","dynamicZoneFieldRenderer","type","name","renderer","rendererName","canUse","_ref2","render","renderSettings","_ref3","AccordionRenderSettings"],"sources":["dynamicZoneRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport {\n BindComponent,\n BindComponentRenderProp,\n CmsModel,\n CmsModelField,\n CmsModelFieldRendererPlugin,\n CmsModelFieldRendererProps\n} from \"~/types\";\nimport { SingleValueDynamicZone } from \"./SingleValueDynamicZone\";\nimport { MultiValueDynamicZone } from \"./MultiValueDynamicZone\";\nimport { AccordionRenderSettings, getAccordionRenderSettings } from \"../AccordionRenderSettings\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { makeDecoratable } from \"@webiny/react-composition\";\n\nconst noBottomPadding = css`\n > .webiny-ui-accordion-item__content {\n padding-bottom: 0 !important;\n }\n`;\n\nexport type DynamicZoneContainerProps = {\n field: CmsModelField;\n getBind: (index?: number, key?: string) => BindComponent;\n contentModel: CmsModel;\n bind: BindComponentRenderProp;\n children: React.ReactNode;\n title?: string;\n description?: string;\n className?: string;\n};\n\nexport const DynamicZoneContainer = makeDecoratable(\n \"DynamicZoneContainer\",\n (props: DynamicZoneContainerProps) => {\n const {\n field,\n bind: {\n validation: { isValid, message }\n },\n title = field.label,\n description = field.helpText,\n className,\n children\n } = props;\n\n const defaultClassName = field.multipleValues ? noBottomPadding : undefined;\n const { open } = getAccordionRenderSettings(field);\n\n return (\n <>\n <Accordion>\n <AccordionItem\n title={title}\n description={description}\n className={className || defaultClassName}\n open={open}\n >\n {children}\n </AccordionItem>\n </Accordion>\n {isValid === false && (\n <FormElementMessage error={true}>{message}</FormElementMessage>\n )}\n </>\n );\n }\n);\n\nconst DynamicZoneContent = ({ field, getBind, contentModel }: CmsModelFieldRendererProps) => {\n const templates = field.settings?.templates || [];\n if (!templates.length) {\n console.info(\n `Skipping \"${field.fieldId}\" field. There are no templates defined for this dynamic zone.`\n );\n return null;\n }\n\n const Bind = getBind();\n\n const Component = field.multipleValues ? MultiValueDynamicZone : SingleValueDynamicZone;\n\n return (\n <Bind>\n {bind => {\n return (\n <DynamicZoneContainer\n
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_Accordion","_SingleValueDynamicZone","_MultiValueDynamicZone","_AccordionRenderSettings","_FormElementMessage","_reactComposition","_templateObject","noBottomPadding","css","_taggedTemplateLiteral2","default","DynamicZoneContainer","exports","makeDecoratable","props","field","_props$bind$validatio","bind","validation","isValid","message","_props$title","title","label","_props$description","description","helpText","className","children","defaultClassName","multipleValues","undefined","_getAccordionRenderSe","getAccordionRenderSettings","open","createElement","Fragment","Accordion","AccordionItem","FormElementMessage","error","DynamicZoneContent","_ref","getBind","contentModel","templates","settings","length","console","info","concat","fieldId","Bind","Component","MultiValueDynamicZone","SingleValueDynamicZone","ValidationScope","dynamicZoneFieldRenderer","type","name","renderer","rendererName","canUse","_ref2","render","renderSettings","_ref3","AccordionRenderSettings"],"sources":["dynamicZoneRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport {\n BindComponent,\n BindComponentRenderProp,\n CmsModel,\n CmsModelField,\n CmsModelFieldRendererPlugin,\n CmsModelFieldRendererProps\n} from \"~/types\";\nimport { SingleValueDynamicZone } from \"./SingleValueDynamicZone\";\nimport { MultiValueDynamicZone } from \"./MultiValueDynamicZone\";\nimport { AccordionRenderSettings, getAccordionRenderSettings } from \"../AccordionRenderSettings\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { makeDecoratable } from \"@webiny/react-composition\";\n\nconst noBottomPadding = css`\n > .webiny-ui-accordion-item__content {\n padding-bottom: 0 !important;\n }\n`;\n\nexport type DynamicZoneContainerProps = {\n field: CmsModelField;\n getBind: (index?: number, key?: string) => BindComponent;\n contentModel: CmsModel;\n bind: BindComponentRenderProp;\n children: React.ReactNode;\n title?: string;\n description?: string;\n className?: string;\n};\n\nexport const DynamicZoneContainer = makeDecoratable(\n \"DynamicZoneContainer\",\n (props: DynamicZoneContainerProps) => {\n const {\n field,\n bind: {\n validation: { isValid, message }\n },\n title = field.label,\n description = field.helpText,\n className,\n children\n } = props;\n\n const defaultClassName = field.multipleValues ? noBottomPadding : undefined;\n const { open } = getAccordionRenderSettings(field);\n\n return (\n <>\n <Accordion>\n <AccordionItem\n title={title}\n description={description}\n className={className || defaultClassName}\n open={open}\n >\n {children}\n </AccordionItem>\n </Accordion>\n {isValid === false && (\n <FormElementMessage error={true}>{message}</FormElementMessage>\n )}\n </>\n );\n }\n);\n\nconst DynamicZoneContent = ({ field, getBind, contentModel }: CmsModelFieldRendererProps) => {\n const templates = field.settings?.templates || [];\n if (!templates.length) {\n console.info(\n `Skipping \"${field.fieldId}\" field. There are no templates defined for this dynamic zone.`\n );\n return null;\n }\n\n const Bind = getBind();\n\n const Component = field.multipleValues ? MultiValueDynamicZone : SingleValueDynamicZone;\n\n return (\n <Bind>\n {bind => {\n return (\n <Bind.ValidationScope>\n <DynamicZoneContainer\n field={field}\n bind={bind}\n getBind={getBind}\n contentModel={contentModel}\n >\n <Component\n bind={bind}\n field={field}\n getBind={getBind}\n contentModel={contentModel}\n />\n </DynamicZoneContainer>\n </Bind.ValidationScope>\n );\n }}\n </Bind>\n );\n};\n\nexport const dynamicZoneFieldRenderer: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-dynamic-zone\",\n renderer: {\n rendererName: \"dynamicZone\",\n name: \"Dynamic Zone\",\n description: \"Renders a dynamic zone.\",\n canUse({ field }) {\n return field.type === \"dynamicZone\";\n },\n render(props) {\n return <DynamicZoneContent {...props} />;\n },\n renderSettings({ field }) {\n return <AccordionRenderSettings field={field} />;\n }\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -44,7 +44,7 @@ var plugin = {
|
|
|
44
44
|
var form = (0, _form.useForm)();
|
|
45
45
|
var Bind = getBind();
|
|
46
46
|
return /*#__PURE__*/_react.default.createElement(Bind, null, function (bind) {
|
|
47
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
47
|
+
return /*#__PURE__*/_react.default.createElement(Bind.ValidationScope, null, /*#__PURE__*/_react.default.createElement(Label, null, field.label), /*#__PURE__*/_react.default.createElement(_DelayedOnChange.DelayedOnChange, bind, function (_ref3) {
|
|
48
48
|
var value = _ref3.value,
|
|
49
49
|
onChange = _ref3.onChange;
|
|
50
50
|
return /*#__PURE__*/_react.default.createElement(_LexicalCmsEditor.LexicalCmsEditor, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_i18n","_form","_LexicalCmsEditor","_utils","_FormElementMessage","_DelayedOnChange","_templateObject","_templateObject2","t","i18n","ns","getKey","id","field","formId","concat","fieldId","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","model","multipleValues","get","modelHasLegacyRteField","render","_ref2","getBind","Label","form","useForm","Bind","createElement","bind","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_i18n","_form","_LexicalCmsEditor","_utils","_FormElementMessage","_DelayedOnChange","_templateObject","_templateObject2","t","i18n","ns","getKey","id","field","formId","concat","fieldId","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","model","multipleValues","get","modelHasLegacyRteField","render","_ref2","getBind","Label","form","useForm","Bind","createElement","bind","ValidationScope","label","DelayedOnChange","_ref3","value","onChange","LexicalCmsEditor","key","data","placeholder","placeholderText","FormElementMessage","helpText","_default","exports"],"sources":["lexicalTextInput.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { CmsModelFieldRendererPlugin, CmsModelField } from \"~/types\";\nimport { useForm } from \"@webiny/form\";\nimport { LexicalCmsEditor } from \"~/admin/components/LexicalCmsEditor/LexicalCmsEditor\";\nimport { modelHasLegacyRteField } from \"~/admin/plugins/fieldRenderers/richText/utils\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { DelayedOnChange } from \"@webiny/ui/DelayedOnChange\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/rich-text\");\n\nconst getKey = (id: string | undefined, field: CmsModelField): string => {\n const formId = id || \"new\";\n return `${formId}.${field.fieldId}`;\n};\n\nconst plugin: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-lexical\",\n renderer: {\n rendererName: \"lexical-text-input\",\n name: t`Lexical Text Input`,\n description: t`Renders a lexical text editor.`,\n canUse({ field, model }) {\n const canUse =\n field.type === \"rich-text\" &&\n !field.multipleValues &&\n !get(field, \"predefinedValues.enabled\");\n\n if (canUse && modelHasLegacyRteField(model)) {\n return false;\n }\n\n return canUse;\n },\n render({ field, getBind, Label }) {\n const form = useForm();\n const Bind = getBind<string>();\n return (\n <Bind>\n {bind => {\n return (\n <Bind.ValidationScope>\n <Label>{field.label}</Label>\n <DelayedOnChange {...bind}>\n {({ value, onChange }) => (\n <LexicalCmsEditor\n value={value}\n onChange={onChange}\n key={getKey(form.data.id, field)}\n placeholder={field.placeholderText}\n data-testid={`fr.input.lexical.${field.label}`}\n />\n )}\n </DelayedOnChange>\n <FormElementMessage>{field.helpText}</FormElementMessage>\n </Bind.ValidationScope>\n );\n }}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ var _base = _interopRequireDefault(require("@emotion/styled/base"));
|
|
|
11
11
|
var _react = _interopRequireDefault(require("react"));
|
|
12
12
|
var _get = _interopRequireDefault(require("lodash/get"));
|
|
13
13
|
var _i18n = require("@webiny/app/i18n");
|
|
14
|
-
var
|
|
14
|
+
var _delete_outline = require("@material-design-icons/svg/outlined/delete_outline.svg");
|
|
15
15
|
var _DynamicSection = _interopRequireDefault(require("../DynamicSection"));
|
|
16
16
|
var _Button = require("@webiny/ui/Button");
|
|
17
17
|
var _LexicalCmsEditor = require("../../../components/LexicalCmsEditor/LexicalCmsEditor");
|
|
@@ -19,6 +19,7 @@ var _utils = require("../richText/utils");
|
|
|
19
19
|
var _FormElementMessage = require("@webiny/ui/FormElementMessage");
|
|
20
20
|
var _form = require("@webiny/form");
|
|
21
21
|
var _DelayedOnChange = require("@webiny/ui/DelayedOnChange");
|
|
22
|
+
var _MultiValueRendererSettings = require("../MultiValueRendererSettings");
|
|
22
23
|
var _templateObject, _templateObject2;
|
|
23
24
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
24
25
|
var t = _i18n.i18n.ns("app-headless-cms/admin/fields/rich-text");
|
|
@@ -37,7 +38,7 @@ var EditorWrapper = /*#__PURE__*/(0, _base.default)("div", process.env.NODE_ENV
|
|
|
37
38
|
} : {
|
|
38
39
|
name: "1j3i2ps",
|
|
39
40
|
styles: "position:relative;> button{position:absolute;top:0;right:5px;z-index:10;}",
|
|
40
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
41
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxleGljYWxUZXh0SW5wdXRzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzQnNCIiwiZmlsZSI6ImxleGljYWxUZXh0SW5wdXRzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBnZXQgZnJvbSBcImxvZGFzaC9nZXRcIjtcbmltcG9ydCB7IGkxOG4gfSBmcm9tIFwiQHdlYmlueS9hcHAvaTE4blwiO1xuaW1wb3J0IHsgQ21zTW9kZWxGaWVsZCwgQ21zTW9kZWxGaWVsZFJlbmRlcmVyUGx1Z2luIH0gZnJvbSBcIn4vdHlwZXNcIjtcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIERlbGV0ZUljb24gfSBmcm9tIFwiQG1hdGVyaWFsLWRlc2lnbi1pY29ucy9zdmcvb3V0bGluZWQvZGVsZXRlX291dGxpbmUuc3ZnXCI7XG5pbXBvcnQgRHluYW1pY1NlY3Rpb24gZnJvbSBcIi4uL0R5bmFtaWNTZWN0aW9uXCI7XG5pbXBvcnQgeyBJY29uQnV0dG9uIH0gZnJvbSBcIkB3ZWJpbnkvdWkvQnV0dG9uXCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IExleGljYWxDbXNFZGl0b3IgfSBmcm9tIFwifi9hZG1pbi9jb21wb25lbnRzL0xleGljYWxDbXNFZGl0b3IvTGV4aWNhbENtc0VkaXRvclwiO1xuaW1wb3J0IHsgbW9kZWxIYXNMZWdhY3lSdGVGaWVsZCB9IGZyb20gXCJ+L2FkbWluL3BsdWdpbnMvZmllbGRSZW5kZXJlcnMvcmljaFRleHQvdXRpbHNcIjtcbmltcG9ydCB7IEZvcm1FbGVtZW50TWVzc2FnZSB9IGZyb20gXCJAd2ViaW55L3VpL0Zvcm1FbGVtZW50TWVzc2FnZVwiO1xuaW1wb3J0IHsgdXNlRm9ybSB9IGZyb20gXCJAd2ViaW55L2Zvcm1cIjtcbmltcG9ydCB7IERlbGF5ZWRPbkNoYW5nZSB9IGZyb20gXCJAd2ViaW55L3VpL0RlbGF5ZWRPbkNoYW5nZVwiO1xuaW1wb3J0IHsgTXVsdGlWYWx1ZVJlbmRlcmVyU2V0dGluZ3MgfSBmcm9tIFwifi9hZG1pbi9wbHVnaW5zL2ZpZWxkUmVuZGVyZXJzL011bHRpVmFsdWVSZW5kZXJlclNldHRpbmdzXCI7XG5cbmNvbnN0IHQgPSBpMThuLm5zKFwiYXBwLWhlYWRsZXNzLWNtcy9hZG1pbi9maWVsZHMvcmljaC10ZXh0XCIpO1xuXG5jb25zdCBnZXRLZXkgPSAoaWQ6IHN0cmluZyB8IHVuZGVmaW5lZCwgZmllbGQ6IENtc01vZGVsRmllbGQsIGluZGV4OiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIGNvbnN0IGZvcm1JZCA9IGlkIHx8IFwibmV3XCI7XG4gICAgcmV0dXJuIGAke2Zvcm1JZH0uJHtmaWVsZC5maWVsZElkfS4ke2luZGV4fWA7XG59O1xuXG5jb25zdCBFZGl0b3JXcmFwcGVyID0gc3R5bGVkKFwiZGl2XCIpKHtcbiAgICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICAgIFwiPiBidXR0b25cIjoge1xuICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICB0b3A6IDAsXG4gICAgICAgIHJpZ2h0OiA1LFxuICAgICAgICB6SW5kZXg6IDEwXG4gICAgfVxufSk7XG5cbmNvbnN0IHBsdWdpbjogQ21zTW9kZWxGaWVsZFJlbmRlcmVyUGx1Z2luID0ge1xuICAgIHR5cGU6IFwiY21zLWVkaXRvci1maWVsZC1yZW5kZXJlclwiLFxuICAgIG5hbWU6IFwiY21zLWVkaXRvci1maWVsZC1yZW5kZXJlci1sZXhpY2FsLWlucHV0c1wiLFxuICAgIHJlbmRlcmVyOiB7XG4gICAgICAgIHJlbmRlcmVyTmFtZTogXCJsZXhpY2FsLXRleHQtaW5wdXRzXCIsXG4gICAgICAgIG5hbWU6IHRgTGV4aWNhbCBUZXh0IElucHV0c2AsXG4gICAgICAgIGRlc2NyaXB0aW9uOiB0YFJlbmRlcnMgYSBsaXN0IG9mIGxleGljYWwgZWRpdG9ycy5gLFxuICAgICAgICBjYW5Vc2UoeyBmaWVsZCwgbW9kZWwgfSkge1xuICAgICAgICAgICAgY29uc3QgY2FuVXNlID1cbiAgICAgICAgICAgICAgICBmaWVsZC50eXBlID09PSBcInJpY2gtdGV4dFwiICYmXG4gICAgICAgICAgICAgICAgISFmaWVsZC5tdWx0aXBsZVZhbHVlcyAmJlxuICAgICAgICAgICAgICAgICFnZXQoZmllbGQsIFwicHJlZGVmaW5lZFZhbHVlcy5lbmFibGVkXCIpO1xuXG4gICAgICAgICAgICBpZiAoY2FuVXNlICYmIG1vZGVsSGFzTGVnYWN5UnRlRmllbGQobW9kZWwpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gY2FuVXNlO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXIocHJvcHMpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgZmllbGQgfSA9IHByb3BzO1xuICAgICAgICAgICAgY29uc3QgZm9ybSA9IHVzZUZvcm0oKTtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8RHluYW1pY1NlY3Rpb24gey4uLnByb3BzfT5cbiAgICAgICAgICAgICAgICAgICAgeyh7IGJpbmQsIGluZGV4IH0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgIDxFZGl0b3JXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEZWxheWVkT25DaGFuZ2Ugey4uLmJpbmQuaW5kZXh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgdmFsdWUsIG9uQ2hhbmdlIH0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMZXhpY2FsQ21zRWRpdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2dldEtleShmb3JtLmRhdGEuaWQsIGZpZWxkLCBpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e2ZpZWxkLnBsYWNlaG9sZGVyVGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9EZWxheWVkT25DaGFuZ2U+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkLm11bHRpcGxlVmFsdWVzID8gbnVsbCA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1FbGVtZW50TWVzc2FnZT57ZmllbGQuaGVscFRleHR9PC9Gb3JtRWxlbWVudE1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPXs8RGVsZXRlSWNvbiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gYmluZC5maWVsZC5yZW1vdmVWYWx1ZShpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRWRpdG9yV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L0R5bmFtaWNTZWN0aW9uPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyU2V0dGluZ3MocHJvcHMpIHtcbiAgICAgICAgICAgIHJldHVybiA8TXVsdGlWYWx1ZVJlbmRlcmVyU2V0dGluZ3Mgey4uLnByb3BzfSAvPjtcbiAgICAgICAgfVxuICAgIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IHBsdWdpbjtcbiJdfQ== */",
|
|
41
42
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
42
43
|
});
|
|
43
44
|
var plugin = {
|
|
@@ -72,12 +73,15 @@ var plugin = {
|
|
|
72
73
|
placeholder: field.placeholderText
|
|
73
74
|
});
|
|
74
75
|
}), field.multipleValues ? null : /*#__PURE__*/_react.default.createElement(_FormElementMessage.FormElementMessage, null, field.helpText), /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
|
|
75
|
-
icon: /*#__PURE__*/_react.default.createElement(
|
|
76
|
+
icon: /*#__PURE__*/_react.default.createElement(_delete_outline.ReactComponent, null),
|
|
76
77
|
onClick: function onClick() {
|
|
77
78
|
return bind.field.removeValue(index);
|
|
78
79
|
}
|
|
79
80
|
}));
|
|
80
81
|
});
|
|
82
|
+
},
|
|
83
|
+
renderSettings: function renderSettings(props) {
|
|
84
|
+
return /*#__PURE__*/_react.default.createElement(_MultiValueRendererSettings.MultiValueRendererSettings, props);
|
|
81
85
|
}
|
|
82
86
|
}
|
|
83
87
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_i18n","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_i18n","_delete_outline","_DynamicSection","_Button","_LexicalCmsEditor","_utils","_FormElementMessage","_form","_DelayedOnChange","_MultiValueRendererSettings","_templateObject","_templateObject2","_EMOTION_STRINGIFIED_CSS_ERROR__","t","i18n","ns","getKey","id","field","index","formId","concat","fieldId","EditorWrapper","_base","default","process","env","NODE_ENV","target","label","name","styles","map","toString","plugin","type","renderer","rendererName","_taggedTemplateLiteral2","description","canUse","_ref","model","multipleValues","get","modelHasLegacyRteField","render","props","form","useForm","createElement","_ref2","bind","DelayedOnChange","_ref3","value","onChange","LexicalCmsEditor","key","data","placeholder","placeholderText","FormElementMessage","helpText","IconButton","icon","ReactComponent","onClick","removeValue","renderSettings","MultiValueRendererSettings","_default","exports"],"sources":["lexicalTextInputs.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { CmsModelField, CmsModelFieldRendererPlugin } from \"~/types\";\nimport { ReactComponent as DeleteIcon } from \"@material-design-icons/svg/outlined/delete_outline.svg\";\nimport DynamicSection from \"../DynamicSection\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport styled from \"@emotion/styled\";\nimport { LexicalCmsEditor } from \"~/admin/components/LexicalCmsEditor/LexicalCmsEditor\";\nimport { modelHasLegacyRteField } from \"~/admin/plugins/fieldRenderers/richText/utils\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { useForm } from \"@webiny/form\";\nimport { DelayedOnChange } from \"@webiny/ui/DelayedOnChange\";\nimport { MultiValueRendererSettings } from \"~/admin/plugins/fieldRenderers/MultiValueRendererSettings\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/rich-text\");\n\nconst getKey = (id: string | undefined, field: CmsModelField, index: number): string => {\n const formId = id || \"new\";\n return `${formId}.${field.fieldId}.${index}`;\n};\n\nconst EditorWrapper = styled(\"div\")({\n position: \"relative\",\n \"> button\": {\n position: \"absolute\",\n top: 0,\n right: 5,\n zIndex: 10\n }\n});\n\nconst plugin: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-lexical-inputs\",\n renderer: {\n rendererName: \"lexical-text-inputs\",\n name: t`Lexical Text Inputs`,\n description: t`Renders a list of lexical editors.`,\n canUse({ field, model }) {\n const canUse =\n field.type === \"rich-text\" &&\n !!field.multipleValues &&\n !get(field, \"predefinedValues.enabled\");\n\n if (canUse && modelHasLegacyRteField(model)) {\n return false;\n }\n\n return canUse;\n },\n render(props) {\n const { field } = props;\n const form = useForm();\n\n return (\n <DynamicSection {...props}>\n {({ bind, index }) => (\n <EditorWrapper>\n <DelayedOnChange {...bind.index}>\n {({ value, onChange }) => (\n <LexicalCmsEditor\n value={value}\n onChange={onChange}\n key={getKey(form.data.id, field, index)}\n placeholder={field.placeholderText}\n />\n )}\n </DelayedOnChange>\n {field.multipleValues ? null : (\n <FormElementMessage>{field.helpText}</FormElementMessage>\n )}\n <IconButton\n icon={<DeleteIcon />}\n onClick={() => bind.field.removeValue(index)}\n />\n </EditorWrapper>\n )}\n </DynamicSection>\n );\n },\n renderSettings(props) {\n return <MultiValueRendererSettings {...props} />;\n }\n }\n};\n\nexport default plugin;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,7 +29,7 @@ var plugin = {
|
|
|
29
29
|
getBind = _ref2.getBind;
|
|
30
30
|
var Bind = getBind();
|
|
31
31
|
return /*#__PURE__*/_react.default.createElement(Bind, null, function (bind) {
|
|
32
|
-
return /*#__PURE__*/_react.default.createElement(_DelayedOnChange.DelayedOnChange, {
|
|
32
|
+
return /*#__PURE__*/_react.default.createElement(Bind.ValidationScope, null, /*#__PURE__*/_react.default.createElement(_DelayedOnChange.DelayedOnChange, {
|
|
33
33
|
value: bind.value,
|
|
34
34
|
onChange: bind.onChange,
|
|
35
35
|
onBlur: bind.validate
|
|
@@ -40,7 +40,7 @@ var plugin = {
|
|
|
40
40
|
description: field.helpText,
|
|
41
41
|
"data-testid": "fr.input.longtext.".concat(field.label),
|
|
42
42
|
validation: bind.validation
|
|
43
|
-
}));
|
|
43
|
+
})));
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_Input","_i18n","_DelayedOnChange","_templateObject","_templateObject2","t","i18n","ns","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","get","render","_ref2","getBind","Bind","createElement","bind","DelayedOnChange","value","onChange","onBlur","validate","Input","rows","label","placeholder","placeholderText","helpText","concat","validation","_default","exports"],"sources":["longText.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsModelFieldRendererPlugin } from \"~/types\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { DelayedOnChange } from \"@webiny/ui/DelayedOnChange\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/text\");\n\nconst plugin: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-long-text-textarea\",\n renderer: {\n rendererName: \"long-text-text-area\",\n name: t`Text Area`,\n description: t`Renders a simple text area, suitable for larger amounts of text.`,\n canUse({ field }) {\n return (\n field.type === \"long-text\" &&\n !field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n return (\n <Bind>\n {bind => (\n <DelayedOnChange\n
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_Input","_i18n","_DelayedOnChange","_templateObject","_templateObject2","t","i18n","ns","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","get","render","_ref2","getBind","Bind","createElement","bind","ValidationScope","DelayedOnChange","value","onChange","onBlur","validate","Input","rows","label","placeholder","placeholderText","helpText","concat","validation","_default","exports"],"sources":["longText.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsModelFieldRendererPlugin } from \"~/types\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { DelayedOnChange } from \"@webiny/ui/DelayedOnChange\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/text\");\n\nconst plugin: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-long-text-textarea\",\n renderer: {\n rendererName: \"long-text-text-area\",\n name: t`Text Area`,\n description: t`Renders a simple text area, suitable for larger amounts of text.`,\n canUse({ field }) {\n return (\n field.type === \"long-text\" &&\n !field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n return (\n <Bind>\n {bind => (\n <Bind.ValidationScope>\n <DelayedOnChange\n value={bind.value}\n onChange={bind.onChange}\n onBlur={bind.validate}\n >\n <Input\n rows={5}\n label={field.label}\n placeholder={field.placeholderText}\n description={field.helpText}\n data-testid={`fr.input.longtext.${field.label}`}\n validation={bind.validation}\n />\n </DelayedOnChange>\n </Bind.ValidationScope>\n )}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AAA6D,IAAAK,eAAA,EAAAC,gBAAA;AAE7D,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,oCAAoC,CAAC;AAEvD,IAAMC,MAAmC,GAAG;EACxCC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,8CAA8C;EACpDC,QAAQ,EAAE;IACNC,YAAY,EAAE,qBAAqB;IACnCF,IAAI,EAAEL,CAAC,CAAAF,eAAA,KAAAA,eAAA,OAAAU,uBAAA,CAAAC,OAAA,kBAAW;IAClBC,WAAW,EAAEV,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAAS,uBAAA,CAAAC,OAAA,yEAAkE;IAChFE,MAAM,WAANA,MAAMA,CAAAC,IAAA,EAAY;MAAA,IAATC,KAAK,GAAAD,IAAA,CAALC,KAAK;MACV,OACIA,KAAK,CAACT,IAAI,KAAK,WAAW,IAC1B,CAACS,KAAK,CAACC,cAAc,IACrB,CAAC,IAAAC,YAAG,EAACF,KAAK,EAAE,0BAA0B,CAAC;IAE/C,CAAC;IACDG,MAAM,WAANA,MAAMA,CAAAC,KAAA,EAAqB;MAAA,IAAlBJ,KAAK,GAAAI,KAAA,CAALJ,KAAK;QAAEK,OAAO,GAAAD,KAAA,CAAPC,OAAO;MACnB,IAAMC,IAAI,GAAGD,OAAO,CAAC,CAAC;MAEtB,oBACI3B,MAAA,CAAAkB,OAAA,CAAAW,aAAA,CAACD,IAAI,QACA,UAAAE,IAAI;QAAA,oBACD9B,MAAA,CAAAkB,OAAA,CAAAW,aAAA,CAACD,IAAI,CAACG,eAAe,qBACjB/B,MAAA,CAAAkB,OAAA,CAAAW,aAAA,CAACvB,gBAAA,CAAA0B,eAAe;UACZC,KAAK,EAAEH,IAAI,CAACG,KAAM;UAClBC,QAAQ,EAAEJ,IAAI,CAACI,QAAS;UACxBC,MAAM,EAAEL,IAAI,CAACM;QAAS,gBAEtBpC,MAAA,CAAAkB,OAAA,CAAAW,aAAA,CAACzB,MAAA,CAAAiC,KAAK;UACFC,IAAI,EAAE,CAAE;UACRC,KAAK,EAAEjB,KAAK,CAACiB,KAAM;UACnBC,WAAW,EAAElB,KAAK,CAACmB,eAAgB;UACnCtB,WAAW,EAAEG,KAAK,CAACoB,QAAS;UAC5B,oCAAAC,MAAA,CAAkCrB,KAAK,CAACiB,KAAK,CAAG;UAChDK,UAAU,EAAEd,IAAI,CAACc;QAAW,CAC/B,CACY,CACC,CAAC;MAAA,CAEzB,CAAC;IAEf;EACJ;AACJ,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAA5B,OAAA,GAEaN,MAAM","ignoreList":[]}
|
|
@@ -10,9 +10,10 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
10
10
|
var _get = _interopRequireDefault(require("lodash/get"));
|
|
11
11
|
var _Input = require("@webiny/ui/Input");
|
|
12
12
|
var _i18n = require("@webiny/app/i18n");
|
|
13
|
-
var
|
|
13
|
+
var _delete_outline = require("@material-design-icons/svg/outlined/delete_outline.svg");
|
|
14
14
|
var _DynamicSection = _interopRequireDefault(require("../DynamicSection"));
|
|
15
15
|
var _DelayedOnChange = require("@webiny/ui/DelayedOnChange");
|
|
16
|
+
var _MultiValueRendererSettings = require("../MultiValueRendererSettings");
|
|
16
17
|
var _templateObject, _templateObject2, _templateObject3;
|
|
17
18
|
var t = _i18n.i18n.ns("app-headless-cms/admin/fields/text");
|
|
18
19
|
var plugin = {
|
|
@@ -43,13 +44,16 @@ var plugin = {
|
|
|
43
44
|
placeholder: props.field.placeholderText,
|
|
44
45
|
"data-testid": "fr.input.longTexts.".concat(props.field.label, ".").concat(index + 1),
|
|
45
46
|
trailingIcon: {
|
|
46
|
-
icon: /*#__PURE__*/_react.default.createElement(
|
|
47
|
+
icon: /*#__PURE__*/_react.default.createElement(_delete_outline.ReactComponent, null),
|
|
47
48
|
onClick: function onClick() {
|
|
48
49
|
return bind.field.removeValue(index);
|
|
49
50
|
}
|
|
50
51
|
}
|
|
51
52
|
}));
|
|
52
53
|
});
|
|
54
|
+
},
|
|
55
|
+
renderSettings: function renderSettings(props) {
|
|
56
|
+
return /*#__PURE__*/_react.default.createElement(_MultiValueRendererSettings.MultiValueRendererSettings, props);
|
|
53
57
|
}
|
|
54
58
|
}
|
|
55
59
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_Input","_i18n","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_Input","_i18n","_delete_outline","_DynamicSection","_DelayedOnChange","_MultiValueRendererSettings","_templateObject","_templateObject2","_templateObject3","t","i18n","ns","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","get","render","props","createElement","_ref2","bind","index","DelayedOnChange","value","onChange","onBlur","validate","Input","validation","rows","label","number","placeholder","placeholderText","concat","trailingIcon","icon","ReactComponent","onClick","removeValue","renderSettings","MultiValueRendererSettings","_default","exports"],"sources":["longTexts.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsModelFieldRendererPlugin } from \"~/types\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ReactComponent as DeleteIcon } from \"@material-design-icons/svg/outlined/delete_outline.svg\";\nimport DynamicSection from \"../DynamicSection\";\nimport { DelayedOnChange } from \"@webiny/ui/DelayedOnChange\";\nimport { MultiValueRendererSettings } from \"~/admin/plugins/fieldRenderers/MultiValueRendererSettings\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/text\");\n\nconst plugin: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-long-text-inputs\",\n renderer: {\n rendererName: \"long-text-inputs\",\n name: t`Text Areas`,\n description: t`Renders a simple list of text areas.`,\n canUse({ field }) {\n return (\n field.type === \"long-text\" &&\n !!field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render(props) {\n return (\n <DynamicSection {...props}>\n {({ bind, index }) => (\n <DelayedOnChange\n value={bind.index.value}\n onChange={bind.index.onChange}\n onBlur={bind.index.validate}\n >\n <Input\n validation={bind.index.validation}\n rows={5}\n label={t`Value {number}`({ number: index + 1 })}\n placeholder={props.field.placeholderText}\n data-testid={`fr.input.longTexts.${props.field.label}.${index + 1}`}\n trailingIcon={{\n icon: <DeleteIcon />,\n onClick: () => bind.field.removeValue(index)\n }}\n />\n </DelayedOnChange>\n )}\n </DynamicSection>\n );\n },\n renderSettings(props) {\n return <MultiValueRendererSettings {...props} />;\n }\n }\n};\n\nexport default plugin;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,7 +29,7 @@ var plugin = {
|
|
|
29
29
|
getBind = _ref2.getBind;
|
|
30
30
|
var Bind = getBind();
|
|
31
31
|
return /*#__PURE__*/_react.default.createElement(Bind, null, function (bind) {
|
|
32
|
-
return /*#__PURE__*/_react.default.createElement(_DelayedOnChange.DelayedOnChange, {
|
|
32
|
+
return /*#__PURE__*/_react.default.createElement(Bind.ValidationScope, null, /*#__PURE__*/_react.default.createElement(_DelayedOnChange.DelayedOnChange, {
|
|
33
33
|
value: bind.value,
|
|
34
34
|
onChange: bind.onChange,
|
|
35
35
|
onBlur: bind.validate
|
|
@@ -40,7 +40,7 @@ var plugin = {
|
|
|
40
40
|
type: "number",
|
|
41
41
|
"data-testid": "fr.input.number.".concat(field.label),
|
|
42
42
|
validation: bind.validation
|
|
43
|
-
}));
|
|
43
|
+
})));
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_i18n","_Input","_DelayedOnChange","_templateObject","_templateObject2","t","i18n","ns","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","get","render","_ref2","getBind","Bind","createElement","bind","DelayedOnChange","value","onChange","onBlur","validate","Input","label","placeholder","placeholderText","helpText","concat","validation","_default","exports"],"sources":["numberInput.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsModelFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { DelayedOnChange } from \"@webiny/ui/DelayedOnChange\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/number\");\n\nconst plugin: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-number\",\n renderer: {\n rendererName: \"number-input\",\n name: t`Number Input`,\n description: t`Renders a simple input with its type set to \"number\".`,\n canUse({ field }) {\n return (\n field.type === \"number\" &&\n !field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n return (\n <Bind>\n {bind => (\n <DelayedOnChange\n
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_get","_i18n","_Input","_DelayedOnChange","_templateObject","_templateObject2","t","i18n","ns","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","get","render","_ref2","getBind","Bind","createElement","bind","ValidationScope","DelayedOnChange","value","onChange","onBlur","validate","Input","label","placeholder","placeholderText","helpText","concat","validation","_default","exports"],"sources":["numberInput.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsModelFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { DelayedOnChange } from \"@webiny/ui/DelayedOnChange\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/number\");\n\nconst plugin: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-number\",\n renderer: {\n rendererName: \"number-input\",\n name: t`Number Input`,\n description: t`Renders a simple input with its type set to \"number\".`,\n canUse({ field }) {\n return (\n field.type === \"number\" &&\n !field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n return (\n <Bind>\n {bind => (\n <Bind.ValidationScope>\n <DelayedOnChange\n value={bind.value}\n onChange={bind.onChange}\n onBlur={bind.validate}\n >\n <Input\n label={field.label}\n placeholder={field.placeholderText}\n description={field.helpText}\n type=\"number\"\n data-testid={`fr.input.number.${field.label}`}\n validation={bind.validation}\n />\n </DelayedOnChange>\n </Bind.ValidationScope>\n )}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AAA6D,IAAAK,eAAA,EAAAC,gBAAA;AAE7D,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,sCAAsC,CAAC;AAEzD,IAAMC,MAAmC,GAAG;EACxCC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,kCAAkC;EACxCC,QAAQ,EAAE;IACNC,YAAY,EAAE,cAAc;IAC5BF,IAAI,EAAEL,CAAC,CAAAF,eAAA,KAAAA,eAAA,OAAAU,uBAAA,CAAAC,OAAA,qBAAc;IACrBC,WAAW,EAAEV,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAAS,uBAAA,CAAAC,OAAA,gEAAuD;IACrEE,MAAM,WAANA,MAAMA,CAAAC,IAAA,EAAY;MAAA,IAATC,KAAK,GAAAD,IAAA,CAALC,KAAK;MACV,OACIA,KAAK,CAACT,IAAI,KAAK,QAAQ,IACvB,CAACS,KAAK,CAACC,cAAc,IACrB,CAAC,IAAAC,YAAG,EAACF,KAAK,EAAE,0BAA0B,CAAC;IAE/C,CAAC;IACDG,MAAM,WAANA,MAAMA,CAAAC,KAAA,EAAqB;MAAA,IAAlBJ,KAAK,GAAAI,KAAA,CAALJ,KAAK;QAAEK,OAAO,GAAAD,KAAA,CAAPC,OAAO;MACnB,IAAMC,IAAI,GAAGD,OAAO,CAAC,CAAC;MAEtB,oBACI3B,MAAA,CAAAkB,OAAA,CAAAW,aAAA,CAACD,IAAI,QACA,UAAAE,IAAI;QAAA,oBACD9B,MAAA,CAAAkB,OAAA,CAAAW,aAAA,CAACD,IAAI,CAACG,eAAe,qBACjB/B,MAAA,CAAAkB,OAAA,CAAAW,aAAA,CAACvB,gBAAA,CAAA0B,eAAe;UACZC,KAAK,EAAEH,IAAI,CAACG,KAAM;UAClBC,QAAQ,EAAEJ,IAAI,CAACI,QAAS;UACxBC,MAAM,EAAEL,IAAI,CAACM;QAAS,gBAEtBpC,MAAA,CAAAkB,OAAA,CAAAW,aAAA,CAACxB,MAAA,CAAAgC,KAAK;UACFC,KAAK,EAAEhB,KAAK,CAACgB,KAAM;UACnBC,WAAW,EAAEjB,KAAK,CAACkB,eAAgB;UACnCrB,WAAW,EAAEG,KAAK,CAACmB,QAAS;UAC5B5B,IAAI,EAAC,QAAQ;UACb,kCAAA6B,MAAA,CAAgCpB,KAAK,CAACgB,KAAK,CAAG;UAC9CK,UAAU,EAAEb,IAAI,CAACa;QAAW,CAC/B,CACY,CACC,CAAC;MAAA,CAEzB,CAAC;IAEf;EACJ;AACJ,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAA3B,OAAA,GAEaN,MAAM","ignoreList":[]}
|