@webiny/app-dynamic-pages 5.42.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +20 -0
- package/admin/ContentEntryForm/AddPreviewPane.d.ts +2 -0
- package/admin/ContentEntryForm/AddPreviewPane.js +52 -0
- package/admin/ContentEntryForm/AddPreviewPane.js.map +1 -0
- package/admin/ContentEntryForm/PassEntryToDataSource.d.ts +2 -0
- package/admin/ContentEntryForm/PassEntryToDataSource.js +78 -0
- package/admin/ContentEntryForm/PassEntryToDataSource.js.map +1 -0
- package/admin/ContentEntryForm/PreviewPane.d.ts +6 -0
- package/admin/ContentEntryForm/PreviewPane.js +65 -0
- package/admin/ContentEntryForm/PreviewPane.js.map +1 -0
- package/admin/Extensions.d.ts +2 -0
- package/admin/Extensions.js +23 -0
- package/admin/Extensions.js.map +1 -0
- package/admin/PageTemplateDialog/CreateTemplateDialog.d.ts +11 -0
- package/admin/PageTemplateDialog/CreateTemplateDialog.js +203 -0
- package/admin/PageTemplateDialog/CreateTemplateDialog.js.map +1 -0
- package/admin/PageTemplateDialog/PageTemplateDialog.d.ts +2 -0
- package/admin/PageTemplateDialog/PageTemplateDialog.js +55 -0
- package/admin/PageTemplateDialog/PageTemplateDialog.js.map +1 -0
- package/admin/SetupDynamicPages.d.ts +2 -0
- package/admin/SetupDynamicPages.js +23 -0
- package/admin/SetupDynamicPages.js.map +1 -0
- package/admin/elements/Elements.d.ts +2 -0
- package/admin/elements/Elements.js +19 -0
- package/admin/elements/Elements.js.map +1 -0
- package/admin/elements/entriesList.d.ts +2 -0
- package/admin/elements/entriesList.js +42 -0
- package/admin/elements/entriesList.js.map +1 -0
- package/admin/elements/entriesSearch.d.ts +2 -0
- package/admin/elements/entriesSearch.js +41 -0
- package/admin/elements/entriesSearch.js.map +1 -0
- package/admin/elements/eventHandlers/ContentTraverser.d.ts +11 -0
- package/admin/elements/eventHandlers/ContentTraverser.js +35 -0
- package/admin/elements/eventHandlers/ContentTraverser.js.map +1 -0
- package/admin/elements/renderers/DynamicGrid.d.ts +2 -0
- package/admin/elements/renderers/DynamicGrid.js +55 -0
- package/admin/elements/renderers/DynamicGrid.js.map +1 -0
- package/admin/elements/renderers/EntriesList.d.ts +10 -0
- package/admin/elements/renderers/EntriesList.js +30 -0
- package/admin/elements/renderers/EntriesList.js.map +1 -0
- package/admin/elements/renderers/Repeater.d.ts +7 -0
- package/admin/elements/renderers/Repeater.js +29 -0
- package/admin/elements/renderers/Repeater.js.map +1 -0
- package/admin/elements/repeater.d.ts +2 -0
- package/admin/elements/repeater.js +41 -0
- package/admin/elements/repeater.js.map +1 -0
- package/admin/index.d.ts +1 -0
- package/admin/index.js +14 -0
- package/admin/index.js.map +1 -0
- package/admin/pageEditor/DynamicPageEditorConfig.d.ts +2 -0
- package/admin/pageEditor/DynamicPageEditorConfig.js +17 -0
- package/admin/pageEditor/DynamicPageEditorConfig.js.map +1 -0
- package/admin/pageEditor/ElementEventHandlers.d.ts +1 -0
- package/admin/pageEditor/ElementEventHandlers.js +107 -0
- package/admin/pageEditor/ElementEventHandlers.js.map +1 -0
- package/admin/templateEditor/DynamicTemplateEditorConfig.d.ts +2 -0
- package/admin/templateEditor/DynamicTemplateEditorConfig.js +31 -0
- package/admin/templateEditor/DynamicTemplateEditorConfig.js.map +1 -0
- package/admin/templateEditor/ElementEventHandlers.d.ts +1 -0
- package/admin/templateEditor/ElementEventHandlers.js +107 -0
- package/admin/templateEditor/ElementEventHandlers.js.map +1 -0
- package/admin/templateEditor/EntrySelector/EntrySelector.d.ts +2 -0
- package/admin/templateEditor/EntrySelector/EntrySelector.js +38 -0
- package/admin/templateEditor/EntrySelector/EntrySelector.js.map +1 -0
- package/admin/templateEditor/EntrySelector/index.d.ts +1 -0
- package/admin/templateEditor/EntrySelector/index.js +18 -0
- package/admin/templateEditor/EntrySelector/index.js.map +1 -0
- package/dataInjection/AddEntriesListDataSourceContext.d.ts +2 -0
- package/dataInjection/AddEntriesListDataSourceContext.js +33 -0
- package/dataInjection/AddEntriesListDataSourceContext.js.map +1 -0
- package/dataInjection/editor/DisableGridDelete.d.ts +2 -0
- package/dataInjection/editor/DisableGridDelete.js +23 -0
- package/dataInjection/editor/DisableGridDelete.js.map +1 -0
- package/dataInjection/editor/ElementDataSettings.d.ts +2 -0
- package/dataInjection/editor/ElementDataSettings.js +28 -0
- package/dataInjection/editor/ElementDataSettings.js.map +1 -0
- package/dataInjection/editor/HideIfChildOfEntriesList.d.ts +6 -0
- package/dataInjection/editor/HideIfChildOfEntriesList.js +24 -0
- package/dataInjection/editor/HideIfChildOfEntriesList.js.map +1 -0
- package/dataInjection/editor/HideIfEntriesListGridWithDataSource.d.ts +6 -0
- package/dataInjection/editor/HideIfEntriesListGridWithDataSource.js +31 -0
- package/dataInjection/editor/HideIfEntriesListGridWithDataSource.js.map +1 -0
- package/dataInjection/editor/SetupElementDataSettings.d.ts +2 -0
- package/dataInjection/editor/SetupElementDataSettings.js +19 -0
- package/dataInjection/editor/SetupElementDataSettings.js.map +1 -0
- package/dataInjection/renderers/DynamicElementRenderers.d.ts +2 -0
- package/dataInjection/renderers/DynamicElementRenderers.js +27 -0
- package/dataInjection/renderers/DynamicElementRenderers.js.map +1 -0
- package/dataInjection/renderers/DynamicGrid.d.ts +2 -0
- package/dataInjection/renderers/DynamicGrid.js +50 -0
- package/dataInjection/renderers/DynamicGrid.js.map +1 -0
- package/dataInjection/renderers/EntriesList.d.ts +70 -0
- package/dataInjection/renderers/EntriesList.js +51 -0
- package/dataInjection/renderers/EntriesList.js.map +1 -0
- package/dataInjection/renderers/EntriesSearch.d.ts +47 -0
- package/dataInjection/renderers/EntriesSearch.js +38 -0
- package/dataInjection/renderers/EntriesSearch.js.map +1 -0
- package/dataInjection/renderers/Repeater.d.ts +70 -0
- package/dataInjection/renderers/Repeater.js +51 -0
- package/dataInjection/renderers/Repeater.js.map +1 -0
- package/features/index.d.ts +3 -0
- package/features/index.js +40 -0
- package/features/index.js.map +1 -0
- package/features/pageTemplate/createDynamicTemplate/useCreateDynamicTemplate.d.ts +4 -0
- package/features/pageTemplate/createDynamicTemplate/useCreateDynamicTemplate.js +65 -0
- package/features/pageTemplate/createDynamicTemplate/useCreateDynamicTemplate.js.map +1 -0
- package/features/pageTemplate/hasMainDataSource.d.ts +2 -0
- package/features/pageTemplate/hasMainDataSource.js +13 -0
- package/features/pageTemplate/hasMainDataSource.js.map +1 -0
- package/features/pageTemplate/listDynamicTemplates/useListDynamicTemplates.d.ts +3 -0
- package/features/pageTemplate/listDynamicTemplates/useListDynamicTemplates.js +20 -0
- package/features/pageTemplate/listDynamicTemplates/useListDynamicTemplates.js.map +1 -0
- package/package.json +56 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) Webiny
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# @webiny/app-dynamic-pages
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/@webiny/app-dynamic-pages)
|
|
4
|
+
[](https://www.npmjs.com/package/@webiny/app-dynamic-pages)
|
|
5
|
+
[](https://github.com/prettier/prettier)
|
|
6
|
+
[](http://makeapullrequest.com)
|
|
7
|
+
|
|
8
|
+
An app for connecting dynamic data from Headless CMS with the Page Builder.
|
|
9
|
+
|
|
10
|
+
## Install
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
npm install --save @webiny/app-dynamic-pages
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Or if you prefer yarn:
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
yarn add @webiny/app-dynamic-pages
|
|
20
|
+
```
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.AddPreviewPane = void 0;
|
|
9
|
+
var _base = _interopRequireDefault(require("@emotion/styled/base"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _appHeadlessCms = require("@webiny/app-headless-cms");
|
|
12
|
+
var _features = require("@webiny/app-page-builder/features");
|
|
13
|
+
var _PreviewPane = require("./PreviewPane");
|
|
14
|
+
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)."; }
|
|
15
|
+
var ContentEntry = _appHeadlessCms.ContentEntryEditorConfig.ContentEntry;
|
|
16
|
+
var SplitView = /*#__PURE__*/(0, _base.default)("div", process.env.NODE_ENV === "production" ? {
|
|
17
|
+
target: "ezyij0e0"
|
|
18
|
+
} : {
|
|
19
|
+
target: "ezyij0e0",
|
|
20
|
+
label: "SplitView"
|
|
21
|
+
})(process.env.NODE_ENV === "production" ? {
|
|
22
|
+
name: "kygzsj",
|
|
23
|
+
styles: "display:flex;>div{flex:1;}"
|
|
24
|
+
} : {
|
|
25
|
+
name: "kygzsj",
|
|
26
|
+
styles: "display:flex;>div{flex:1;}",
|
|
27
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFkZFByZXZpZXdQYW5lLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTNEIiLCJmaWxlIjoiQWRkUHJldmlld1BhbmUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8gfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgdXNlTW9kZWwgfSBmcm9tIFwiQHdlYmlueS9hcHAtaGVhZGxlc3MtY21zXCI7XG5pbXBvcnQgeyBDb250ZW50RW50cnlFZGl0b3JDb25maWcgfSBmcm9tIFwiQHdlYmlueS9hcHAtaGVhZGxlc3MtY21zXCI7XG5pbXBvcnQgeyB1c2VMaXN0UGFnZVRlbXBsYXRlcyB9IGZyb20gXCJAd2ViaW55L2FwcC1wYWdlLWJ1aWxkZXIvZmVhdHVyZXNcIjtcbmltcG9ydCB7IFByZXZpZXdQYW5lIH0gZnJvbSBcIn4vYWRtaW4vQ29udGVudEVudHJ5Rm9ybS9QcmV2aWV3UGFuZVwiO1xuXG5jb25zdCB7IENvbnRlbnRFbnRyeSB9ID0gQ29udGVudEVudHJ5RWRpdG9yQ29uZmlnO1xuXG5jb25zdCBTcGxpdFZpZXcgPSBzdHlsZWQuZGl2YFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgPiBkaXYge1xuICAgICAgICBmbGV4OiAxO1xuICAgIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBBZGRQcmV2aWV3UGFuZSA9IENvbnRlbnRFbnRyeS5Db250ZW50RW50cnlGb3JtLmNyZWF0ZURlY29yYXRvcihPcmlnaW5hbCA9PiB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIENvbnRlbnRFbnRyeUZvcm0ocHJvcHMpIHtcbiAgICAgICAgY29uc3QgeyBtb2RlbCB9ID0gdXNlTW9kZWwoKTtcblxuICAgICAgICBjb25zdCB7IHBhZ2VUZW1wbGF0ZXMgfSA9IHVzZUxpc3RQYWdlVGVtcGxhdGVzKCk7XG5cbiAgICAgICAgY29uc3QgbW9kZWxUZW1wbGF0ZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHBhZ2VUZW1wbGF0ZXMuZmluZCh0ZW1wbGF0ZSA9PlxuICAgICAgICAgICAgICAgIHRlbXBsYXRlLmRhdGFTb3VyY2VzLnNvbWUoZHMgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZHMubmFtZSA9PT0gXCJtYWluXCIgJiYgZHMuY29uZmlnLm1vZGVsSWQgPT09IG1vZGVsLm1vZGVsSWQ7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sIFtwYWdlVGVtcGxhdGVzXSk7XG5cbiAgICAgICAgaWYgKCFtb2RlbFRlbXBsYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4gPE9yaWdpbmFsIHsuLi5wcm9wc30gLz47XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPFNwbGl0Vmlldz5cbiAgICAgICAgICAgICAgICA8UHJldmlld1BhbmUgdGVtcGxhdGU9e21vZGVsVGVtcGxhdGV9IC8+XG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPE9yaWdpbmFsIHsuLi5wcm9wc30gLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvU3BsaXRWaWV3PlxuICAgICAgICApO1xuICAgIH07XG59KTtcbiJdfQ== */",
|
|
28
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
29
|
+
});
|
|
30
|
+
var AddPreviewPane = exports.AddPreviewPane = ContentEntry.ContentEntryForm.createDecorator(function (Original) {
|
|
31
|
+
return function ContentEntryForm(props) {
|
|
32
|
+
var _useModel = (0, _appHeadlessCms.useModel)(),
|
|
33
|
+
model = _useModel.model;
|
|
34
|
+
var _useListPageTemplates = (0, _features.useListPageTemplates)(),
|
|
35
|
+
pageTemplates = _useListPageTemplates.pageTemplates;
|
|
36
|
+
var modelTemplate = (0, _react.useMemo)(function () {
|
|
37
|
+
return pageTemplates.find(function (template) {
|
|
38
|
+
return template.dataSources.some(function (ds) {
|
|
39
|
+
return ds.name === "main" && ds.config.modelId === model.modelId;
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
}, [pageTemplates]);
|
|
43
|
+
if (!modelTemplate) {
|
|
44
|
+
return /*#__PURE__*/_react.default.createElement(Original, props);
|
|
45
|
+
}
|
|
46
|
+
return /*#__PURE__*/_react.default.createElement(SplitView, null, /*#__PURE__*/_react.default.createElement(_PreviewPane.PreviewPane, {
|
|
47
|
+
template: modelTemplate
|
|
48
|
+
}), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(Original, props)));
|
|
49
|
+
};
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
//# sourceMappingURL=AddPreviewPane.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_appHeadlessCms","_features","_PreviewPane","_EMOTION_STRINGIFIED_CSS_ERROR__","ContentEntry","ContentEntryEditorConfig","SplitView","_base","default","process","env","NODE_ENV","target","label","name","styles","map","toString","AddPreviewPane","exports","ContentEntryForm","createDecorator","Original","props","_useModel","useModel","model","_useListPageTemplates","useListPageTemplates","pageTemplates","modelTemplate","useMemo","find","template","dataSources","some","ds","config","modelId","createElement","PreviewPane"],"sources":["AddPreviewPane.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { useModel } from \"@webiny/app-headless-cms\";\nimport { ContentEntryEditorConfig } from \"@webiny/app-headless-cms\";\nimport { useListPageTemplates } from \"@webiny/app-page-builder/features\";\nimport { PreviewPane } from \"~/admin/ContentEntryForm/PreviewPane\";\n\nconst { ContentEntry } = ContentEntryEditorConfig;\n\nconst SplitView = styled.div`\n display: flex;\n > div {\n flex: 1;\n }\n`;\n\nexport const AddPreviewPane = ContentEntry.ContentEntryForm.createDecorator(Original => {\n return function ContentEntryForm(props) {\n const { model } = useModel();\n\n const { pageTemplates } = useListPageTemplates();\n\n const modelTemplate = useMemo(() => {\n return pageTemplates.find(template =>\n template.dataSources.some(ds => {\n return ds.name === \"main\" && ds.config.modelId === model.modelId;\n })\n );\n }, [pageTemplates]);\n\n if (!modelTemplate) {\n return <Original {...props} />;\n }\n\n return (\n <SplitView>\n <PreviewPane template={modelTemplate} />\n <div>\n <Original {...props} />\n </div>\n </SplitView>\n );\n };\n});\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAAmE,SAAAI,iCAAA;AAEnE,IAAQC,YAAY,GAAKC,wCAAwB,CAAzCD,YAAY;AAEpB,IAAME,SAAS,oBAAAC,KAAA,CAAAC,OAAA,SAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAC,MAAA;AAAA;EAAAA,MAAA;EAAAC,KAAA;AAAA,GAAAJ,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAG,IAAA;EAAAC,MAAA;AAAA;EAAAD,IAAA;EAAAC,MAAA;EAAAC,GAAA;EAAAC,QAAA,EAAAd;AAAA,EAKd;AAEM,IAAMe,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAGd,YAAY,CAACgB,gBAAgB,CAACC,eAAe,CAAC,UAAAC,QAAQ,EAAI;EACpF,OAAO,SAASF,gBAAgBA,CAACG,KAAK,EAAE;IACpC,IAAAC,SAAA,GAAkB,IAAAC,wBAAQ,EAAC,CAAC;MAApBC,KAAK,GAAAF,SAAA,CAALE,KAAK;IAEb,IAAAC,qBAAA,GAA0B,IAAAC,8BAAoB,EAAC,CAAC;MAAxCC,aAAa,GAAAF,qBAAA,CAAbE,aAAa;IAErB,IAAMC,aAAa,GAAG,IAAAC,cAAO,EAAC,YAAM;MAChC,OAAOF,aAAa,CAACG,IAAI,CAAC,UAAAC,QAAQ;QAAA,OAC9BA,QAAQ,CAACC,WAAW,CAACC,IAAI,CAAC,UAAAC,EAAE,EAAI;UAC5B,OAAOA,EAAE,CAACtB,IAAI,KAAK,MAAM,IAAIsB,EAAE,CAACC,MAAM,CAACC,OAAO,KAAKZ,KAAK,CAACY,OAAO;QACpE,CAAC,CAAC;MAAA,CACN,CAAC;IACL,CAAC,EAAE,CAACT,aAAa,CAAC,CAAC;IAEnB,IAAI,CAACC,aAAa,EAAE;MAChB,oBAAOjC,MAAA,CAAAW,OAAA,CAAA+B,aAAA,CAACjB,QAAQ,EAAKC,KAAQ,CAAC;IAClC;IAEA,oBACI1B,MAAA,CAAAW,OAAA,CAAA+B,aAAA,CAACjC,SAAS,qBACNT,MAAA,CAAAW,OAAA,CAAA+B,aAAA,CAACrC,YAAA,CAAAsC,WAAW;MAACP,QAAQ,EAAEH;IAAc,CAAE,CAAC,eACxCjC,MAAA,CAAAW,OAAA,CAAA+B,aAAA,2BACI1C,MAAA,CAAAW,OAAA,CAAA+B,aAAA,CAACjB,QAAQ,EAAKC,KAAQ,CACrB,CACE,CAAC;EAEpB,CAAC;AACL,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.PassEntryToDataSource = void 0;
|
|
9
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _mobx = require("mobx");
|
|
13
|
+
var _appHeadlessCms = require("@webiny/app-headless-cms");
|
|
14
|
+
var _features = require("@webiny/app-page-builder/features");
|
|
15
|
+
var ContentEntryForm = _appHeadlessCms.ContentEntryEditorConfig.ContentEntry.ContentEntryForm;
|
|
16
|
+
var WithLocalData = /*#__PURE__*/function () {
|
|
17
|
+
function WithLocalData(entryContainer, decoratee) {
|
|
18
|
+
(0, _classCallCheck2.default)(this, WithLocalData);
|
|
19
|
+
this.entryContainer = entryContainer;
|
|
20
|
+
this.decoratee = decoratee;
|
|
21
|
+
(0, _mobx.makeAutoObservable)(this);
|
|
22
|
+
}
|
|
23
|
+
return (0, _createClass2.default)(WithLocalData, [{
|
|
24
|
+
key: "getData",
|
|
25
|
+
value: function getData(key) {
|
|
26
|
+
if (key.startsWith("main:")) {
|
|
27
|
+
return this.entryContainer.getEntry();
|
|
28
|
+
}
|
|
29
|
+
return this.decoratee.getData(key);
|
|
30
|
+
}
|
|
31
|
+
}, {
|
|
32
|
+
key: "resolveData",
|
|
33
|
+
value: async function resolveData(request) {
|
|
34
|
+
if (request.getName() === "main") {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
return this.decoratee.resolveData(request);
|
|
38
|
+
}
|
|
39
|
+
}]);
|
|
40
|
+
}();
|
|
41
|
+
var EntryContainer = /*#__PURE__*/function () {
|
|
42
|
+
function EntryContainer(entry) {
|
|
43
|
+
(0, _classCallCheck2.default)(this, EntryContainer);
|
|
44
|
+
this.entry = entry;
|
|
45
|
+
(0, _mobx.makeAutoObservable)(this);
|
|
46
|
+
}
|
|
47
|
+
return (0, _createClass2.default)(EntryContainer, [{
|
|
48
|
+
key: "setEntry",
|
|
49
|
+
value: function setEntry(entry) {
|
|
50
|
+
this.entry = entry;
|
|
51
|
+
}
|
|
52
|
+
}, {
|
|
53
|
+
key: "getEntry",
|
|
54
|
+
value: function getEntry() {
|
|
55
|
+
return this.entry;
|
|
56
|
+
}
|
|
57
|
+
}]);
|
|
58
|
+
}();
|
|
59
|
+
var PassEntryToDataSource = exports.PassEntryToDataSource = ContentEntryForm.createDecorator(function (Original) {
|
|
60
|
+
return function PassEntryToDataSource(props) {
|
|
61
|
+
var entryContainer = (0, _react.useMemo)(function () {
|
|
62
|
+
return new EntryContainer(props.entry);
|
|
63
|
+
}, []);
|
|
64
|
+
var onEntryChange = (0, _react.useCallback)(function (entry) {
|
|
65
|
+
entryContainer.setEntry(entry);
|
|
66
|
+
}, []);
|
|
67
|
+
(0, _react.useEffect)(function () {
|
|
68
|
+
return _features.useLoadDataSource.decorateRepository(function (repository) {
|
|
69
|
+
return new WithLocalData(entryContainer, repository);
|
|
70
|
+
});
|
|
71
|
+
}, []);
|
|
72
|
+
return /*#__PURE__*/_react.default.createElement(Original, Object.assign({}, props, {
|
|
73
|
+
onChange: onEntryChange
|
|
74
|
+
}));
|
|
75
|
+
};
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
//# sourceMappingURL=PassEntryToDataSource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_mobx","_appHeadlessCms","_features","ContentEntryForm","ContentEntryEditorConfig","ContentEntry","WithLocalData","entryContainer","decoratee","_classCallCheck2","default","makeAutoObservable","_createClass2","key","value","getData","startsWith","getEntry","resolveData","request","getName","EntryContainer","entry","setEntry","PassEntryToDataSource","exports","createDecorator","Original","props","useMemo","onEntryChange","useCallback","useEffect","useLoadDataSource","decorateRepository","repository","createElement","Object","assign","onChange"],"sources":["PassEntryToDataSource.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from \"react\";\nimport { makeAutoObservable } from \"mobx\";\nimport { ContentEntryEditorConfig } from \"@webiny/app-headless-cms\";\nimport { CmsContentEntry } from \"@webiny/app-headless-cms/types\";\nimport { useLoadDataSource } from \"@webiny/app-page-builder/features\";\nimport {\n DataRequest,\n DataSourceData,\n IResolveDataSourceRepository\n} from \"@webiny/app-page-builder/features/dataSource/loadDataSource/IResolveDataSourceRepository\";\n\ntype OnChange = NonNullable<React.ComponentProps<typeof ContentEntryForm>[\"onChange\"]>;\n\nconst {\n ContentEntry: { ContentEntryForm }\n} = ContentEntryEditorConfig;\n\nclass WithLocalData implements IResolveDataSourceRepository {\n private decoratee: IResolveDataSourceRepository;\n private entryContainer: EntryContainer;\n\n constructor(entryContainer: EntryContainer, decoratee: IResolveDataSourceRepository) {\n this.entryContainer = entryContainer;\n this.decoratee = decoratee;\n makeAutoObservable(this);\n }\n\n getData(key: string): DataSourceData | undefined {\n if (key.startsWith(\"main:\")) {\n return this.entryContainer.getEntry();\n }\n\n return this.decoratee.getData(key);\n }\n\n async resolveData(request: DataRequest): Promise<void> {\n if (request.getName() === \"main\") {\n return;\n }\n\n return this.decoratee.resolveData(request);\n }\n}\n\nclass EntryContainer {\n private entry: Partial<CmsContentEntry>;\n\n constructor(entry: Partial<CmsContentEntry>) {\n this.entry = entry;\n makeAutoObservable(this);\n }\n\n setEntry(entry: Partial<CmsContentEntry>) {\n this.entry = entry;\n }\n\n getEntry() {\n return this.entry;\n }\n}\n\nexport const PassEntryToDataSource = ContentEntryForm.createDecorator(Original => {\n return function PassEntryToDataSource(props) {\n const entryContainer = useMemo(() => new EntryContainer(props.entry), []);\n\n const onEntryChange = useCallback<OnChange>(entry => {\n entryContainer.setEntry(entry);\n }, []);\n\n useEffect(() => {\n return useLoadDataSource.decorateRepository(repository => {\n return new WithLocalData(entryContainer, repository);\n });\n }, []);\n\n return <Original {...props} onChange={onEntryChange} />;\n };\n});\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AASA,IACoBI,gBAAgB,GAChCC,wCAAwB,CADxBC,YAAY,CAAIF,gBAAgB;AACP,IAEvBG,aAAa;EAIf,SAAAA,cAAYC,cAA8B,EAAEC,SAAuC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAJ,aAAA;IACjF,IAAI,CAACC,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,SAAS,GAAGA,SAAS;IAC1B,IAAAG,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAF,OAAA,EAAAJ,aAAA;IAAAO,GAAA;IAAAC,KAAA,EAED,SAAAC,OAAOA,CAACF,GAAW,EAA8B;MAC7C,IAAIA,GAAG,CAACG,UAAU,CAAC,OAAO,CAAC,EAAE;QACzB,OAAO,IAAI,CAACT,cAAc,CAACU,QAAQ,CAAC,CAAC;MACzC;MAEA,OAAO,IAAI,CAACT,SAAS,CAACO,OAAO,CAACF,GAAG,CAAC;IACtC;EAAC;IAAAA,GAAA;IAAAC,KAAA,EAED,eAAMI,WAAWA,CAACC,OAAoB,EAAiB;MACnD,IAAIA,OAAO,CAACC,OAAO,CAAC,CAAC,KAAK,MAAM,EAAE;QAC9B;MACJ;MAEA,OAAO,IAAI,CAACZ,SAAS,CAACU,WAAW,CAACC,OAAO,CAAC;IAC9C;EAAC;AAAA;AAAA,IAGCE,cAAc;EAGhB,SAAAA,eAAYC,KAA+B,EAAE;IAAA,IAAAb,gBAAA,CAAAC,OAAA,QAAAW,cAAA;IACzC,IAAI,CAACC,KAAK,GAAGA,KAAK;IAClB,IAAAX,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAF,OAAA,EAAAW,cAAA;IAAAR,GAAA;IAAAC,KAAA,EAED,SAAAS,QAAQA,CAACD,KAA+B,EAAE;MACtC,IAAI,CAACA,KAAK,GAAGA,KAAK;IACtB;EAAC;IAAAT,GAAA;IAAAC,KAAA,EAED,SAAAG,QAAQA,CAAA,EAAG;MACP,OAAO,IAAI,CAACK,KAAK;IACrB;EAAC;AAAA;AAGE,IAAME,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAGrB,gBAAgB,CAACuB,eAAe,CAAC,UAAAC,QAAQ,EAAI;EAC9E,OAAO,SAASH,qBAAqBA,CAACI,KAAK,EAAE;IACzC,IAAMrB,cAAc,GAAG,IAAAsB,cAAO,EAAC;MAAA,OAAM,IAAIR,cAAc,CAACO,KAAK,CAACN,KAAK,CAAC;IAAA,GAAE,EAAE,CAAC;IAEzE,IAAMQ,aAAa,GAAG,IAAAC,kBAAW,EAAW,UAAAT,KAAK,EAAI;MACjDf,cAAc,CAACgB,QAAQ,CAACD,KAAK,CAAC;IAClC,CAAC,EAAE,EAAE,CAAC;IAEN,IAAAU,gBAAS,EAAC,YAAM;MACZ,OAAOC,2BAAiB,CAACC,kBAAkB,CAAC,UAAAC,UAAU,EAAI;QACtD,OAAO,IAAI7B,aAAa,CAACC,cAAc,EAAE4B,UAAU,CAAC;MACxD,CAAC,CAAC;IACN,CAAC,EAAE,EAAE,CAAC;IAEN,oBAAOtC,MAAA,CAAAa,OAAA,CAAA0B,aAAA,CAACT,QAAQ,EAAAU,MAAA,CAAAC,MAAA,KAAKV,KAAK;MAAEW,QAAQ,EAAET;IAAc,EAAE,CAAC;EAC3D,CAAC;AACL,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { PbPageTemplateWithContent } from "@webiny/app-page-builder/types";
|
|
3
|
+
export interface PreviewPaneProps {
|
|
4
|
+
template: PbPageTemplateWithContent;
|
|
5
|
+
}
|
|
6
|
+
export declare const PreviewPane: ({ template }: PreviewPaneProps) => React.JSX.Element;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.PreviewPane = void 0;
|
|
8
|
+
var _base = _interopRequireDefault(require("@emotion/styled/base"));
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _admin = require("@webiny/app-page-builder/admin");
|
|
11
|
+
var _appPageBuilderElements = require("@webiny/app-page-builder-elements");
|
|
12
|
+
var _dataInjection = require("@webiny/app-page-builder/dataInjection");
|
|
13
|
+
var _icons = require("@webiny/ui/List/DataList/icons");
|
|
14
|
+
var _features = require("@webiny/app-page-builder/features");
|
|
15
|
+
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)."; }
|
|
16
|
+
var LivePreviewContainer = /*#__PURE__*/(0, _base.default)("div", process.env.NODE_ENV === "production" ? {
|
|
17
|
+
target: "e1n62h5y1"
|
|
18
|
+
} : {
|
|
19
|
+
target: "e1n62h5y1",
|
|
20
|
+
label: "LivePreviewContainer"
|
|
21
|
+
})(process.env.NODE_ENV === "production" ? {
|
|
22
|
+
name: "nxlrh6",
|
|
23
|
+
styles: "position:relative;display:flex;flex-direction:column;border-right:1px solid var(--mdc-theme-on-background);height:calc(100vh - 260px);overflow:auto"
|
|
24
|
+
} : {
|
|
25
|
+
name: "nxlrh6",
|
|
26
|
+
styles: "position:relative;display:flex;flex-direction:column;border-right:1px solid var(--mdc-theme-on-background);height:calc(100vh - 260px);overflow:auto",
|
|
27
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXZpZXdQYW5lLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFZdUMiLCJmaWxlIjoiUHJldmlld1BhbmUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBQYlBhZ2VUZW1wbGF0ZVdpdGhDb250ZW50IH0gZnJvbSBcIkB3ZWJpbnkvYXBwLXBhZ2UtYnVpbGRlci90eXBlc1wiO1xuaW1wb3J0IHsgUmVuZGVyUGx1Z2luc0xvYWRlciB9IGZyb20gXCJAd2ViaW55L2FwcC1wYWdlLWJ1aWxkZXIvYWRtaW5cIjtcbmltcG9ydCB7IENvbnRlbnQgfSBmcm9tIFwiQHdlYmlueS9hcHAtcGFnZS1idWlsZGVyLWVsZW1lbnRzXCI7XG5pbXBvcnQge1xuICAgIERhdGFTb3VyY2VQcm92aWRlcixcbiAgICBEeW5hbWljRG9jdW1lbnRQcm92aWRlclxufSBmcm9tIFwiQHdlYmlueS9hcHAtcGFnZS1idWlsZGVyL2RhdGFJbmplY3Rpb25cIjtcbmltcG9ydCB7IFJlZnJlc2hJY29uIH0gZnJvbSBcIkB3ZWJpbnkvdWkvTGlzdC9EYXRhTGlzdC9pY29uc1wiO1xuaW1wb3J0IHsgdXNlUmVmcmVzaFBhZ2VUZW1wbGF0ZXMgfSBmcm9tIFwiQHdlYmlueS9hcHAtcGFnZS1idWlsZGVyL2ZlYXR1cmVzXCI7XG5cbmNvbnN0IExpdmVQcmV2aWV3Q29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLW1kYy10aGVtZS1vbi1iYWNrZ3JvdW5kKTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyNjBweCk7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5gO1xuXG5jb25zdCBIZWFkZXIgPSBzdHlsZWQuZGl2YFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLW1kYy10aGVtZS1vbi1iYWNrZ3JvdW5kKTtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJldmlld1BhbmVQcm9wcyB7XG4gICAgdGVtcGxhdGU6IFBiUGFnZVRlbXBsYXRlV2l0aENvbnRlbnQ7XG59XG5cbmV4cG9ydCBjb25zdCBQcmV2aWV3UGFuZSA9ICh7IHRlbXBsYXRlIH06IFByZXZpZXdQYW5lUHJvcHMpID0+IHtcbiAgICBjb25zdCBtYWluRGF0YVNvdXJjZSA9IHRlbXBsYXRlLmRhdGFTb3VyY2VzLmZpbmQoZHMgPT4gZHMubmFtZSA9PT0gXCJtYWluXCIpO1xuICAgIGNvbnN0IHsgcmVmcmVzaFBhZ2VUZW1wbGF0ZXMgfSA9IHVzZVJlZnJlc2hQYWdlVGVtcGxhdGVzKCk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8UmVuZGVyUGx1Z2luc0xvYWRlcj5cbiAgICAgICAgICAgIDxMaXZlUHJldmlld0NvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8SGVhZGVyPlxuICAgICAgICAgICAgICAgICAgICB7dGVtcGxhdGUudGl0bGV9XG4gICAgICAgICAgICAgICAgICAgIDxSZWZyZXNoSWNvbiBvbkNsaWNrPXsoKSA9PiByZWZyZXNoUGFnZVRlbXBsYXRlcygpfSAvPlxuICAgICAgICAgICAgICAgIDwvSGVhZGVyPlxuICAgICAgICAgICAgICAgIDxEeW5hbWljRG9jdW1lbnRQcm92aWRlclxuICAgICAgICAgICAgICAgICAgICBkYXRhU291cmNlcz17dGVtcGxhdGUuZGF0YVNvdXJjZXN9XG4gICAgICAgICAgICAgICAgICAgIGRhdGFCaW5kaW5ncz17dGVtcGxhdGUuZGF0YUJpbmRpbmdzfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPERhdGFTb3VyY2VQcm92aWRlciBkYXRhU291cmNlPXttYWluRGF0YVNvdXJjZSF9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbnRlbnQgY29udGVudD17dGVtcGxhdGUuY29udGVudH0gLz5cbiAgICAgICAgICAgICAgICAgICAgPC9EYXRhU291cmNlUHJvdmlkZXI+XG4gICAgICAgICAgICAgICAgPC9EeW5hbWljRG9jdW1lbnRQcm92aWRlcj5cbiAgICAgICAgICAgIDwvTGl2ZVByZXZpZXdDb250YWluZXI+XG4gICAgICAgIDwvUmVuZGVyUGx1Z2luc0xvYWRlcj5cbiAgICApO1xufTtcbiJdfQ== */",
|
|
28
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
29
|
+
});
|
|
30
|
+
var Header = /*#__PURE__*/(0, _base.default)("div", process.env.NODE_ENV === "production" ? {
|
|
31
|
+
target: "e1n62h5y0"
|
|
32
|
+
} : {
|
|
33
|
+
target: "e1n62h5y0",
|
|
34
|
+
label: "Header"
|
|
35
|
+
})(process.env.NODE_ENV === "production" ? {
|
|
36
|
+
name: "5x95ps",
|
|
37
|
+
styles: "display:flex;padding:15px;justify-content:space-between;border-bottom:1px solid var(--mdc-theme-on-background);font-size:24px;align-items:center"
|
|
38
|
+
} : {
|
|
39
|
+
name: "5x95ps",
|
|
40
|
+
styles: "display:flex;padding:15px;justify-content:space-between;border-bottom:1px solid var(--mdc-theme-on-background);font-size:24px;align-items:center",
|
|
41
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXZpZXdQYW5lLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQnlCIiwiZmlsZSI6IlByZXZpZXdQYW5lLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgUGJQYWdlVGVtcGxhdGVXaXRoQ29udGVudCB9IGZyb20gXCJAd2ViaW55L2FwcC1wYWdlLWJ1aWxkZXIvdHlwZXNcIjtcbmltcG9ydCB7IFJlbmRlclBsdWdpbnNMb2FkZXIgfSBmcm9tIFwiQHdlYmlueS9hcHAtcGFnZS1idWlsZGVyL2FkbWluXCI7XG5pbXBvcnQgeyBDb250ZW50IH0gZnJvbSBcIkB3ZWJpbnkvYXBwLXBhZ2UtYnVpbGRlci1lbGVtZW50c1wiO1xuaW1wb3J0IHtcbiAgICBEYXRhU291cmNlUHJvdmlkZXIsXG4gICAgRHluYW1pY0RvY3VtZW50UHJvdmlkZXJcbn0gZnJvbSBcIkB3ZWJpbnkvYXBwLXBhZ2UtYnVpbGRlci9kYXRhSW5qZWN0aW9uXCI7XG5pbXBvcnQgeyBSZWZyZXNoSWNvbiB9IGZyb20gXCJAd2ViaW55L3VpL0xpc3QvRGF0YUxpc3QvaWNvbnNcIjtcbmltcG9ydCB7IHVzZVJlZnJlc2hQYWdlVGVtcGxhdGVzIH0gZnJvbSBcIkB3ZWJpbnkvYXBwLXBhZ2UtYnVpbGRlci9mZWF0dXJlc1wiO1xuXG5jb25zdCBMaXZlUHJldmlld0NvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1tZGMtdGhlbWUtb24tYmFja2dyb3VuZCk7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjYwcHgpO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuYDtcblxuY29uc3QgSGVhZGVyID0gc3R5bGVkLmRpdmBcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1tZGMtdGhlbWUtb24tYmFja2dyb3VuZCk7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByZXZpZXdQYW5lUHJvcHMge1xuICAgIHRlbXBsYXRlOiBQYlBhZ2VUZW1wbGF0ZVdpdGhDb250ZW50O1xufVxuXG5leHBvcnQgY29uc3QgUHJldmlld1BhbmUgPSAoeyB0ZW1wbGF0ZSB9OiBQcmV2aWV3UGFuZVByb3BzKSA9PiB7XG4gICAgY29uc3QgbWFpbkRhdGFTb3VyY2UgPSB0ZW1wbGF0ZS5kYXRhU291cmNlcy5maW5kKGRzID0+IGRzLm5hbWUgPT09IFwibWFpblwiKTtcbiAgICBjb25zdCB7IHJlZnJlc2hQYWdlVGVtcGxhdGVzIH0gPSB1c2VSZWZyZXNoUGFnZVRlbXBsYXRlcygpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPFJlbmRlclBsdWdpbnNMb2FkZXI+XG4gICAgICAgICAgICA8TGl2ZVByZXZpZXdDb250YWluZXI+XG4gICAgICAgICAgICAgICAgPEhlYWRlcj5cbiAgICAgICAgICAgICAgICAgICAge3RlbXBsYXRlLnRpdGxlfVxuICAgICAgICAgICAgICAgICAgICA8UmVmcmVzaEljb24gb25DbGljaz17KCkgPT4gcmVmcmVzaFBhZ2VUZW1wbGF0ZXMoKX0gLz5cbiAgICAgICAgICAgICAgICA8L0hlYWRlcj5cbiAgICAgICAgICAgICAgICA8RHluYW1pY0RvY3VtZW50UHJvdmlkZXJcbiAgICAgICAgICAgICAgICAgICAgZGF0YVNvdXJjZXM9e3RlbXBsYXRlLmRhdGFTb3VyY2VzfVxuICAgICAgICAgICAgICAgICAgICBkYXRhQmluZGluZ3M9e3RlbXBsYXRlLmRhdGFCaW5kaW5nc31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxEYXRhU291cmNlUHJvdmlkZXIgZGF0YVNvdXJjZT17bWFpbkRhdGFTb3VyY2UhfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb250ZW50IGNvbnRlbnQ9e3RlbXBsYXRlLmNvbnRlbnR9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvRGF0YVNvdXJjZVByb3ZpZGVyPlxuICAgICAgICAgICAgICAgIDwvRHluYW1pY0RvY3VtZW50UHJvdmlkZXI+XG4gICAgICAgICAgICA8L0xpdmVQcmV2aWV3Q29udGFpbmVyPlxuICAgICAgICA8L1JlbmRlclBsdWdpbnNMb2FkZXI+XG4gICAgKTtcbn07XG4iXX0= */",
|
|
42
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
43
|
+
});
|
|
44
|
+
var PreviewPane = exports.PreviewPane = function PreviewPane(_ref) {
|
|
45
|
+
var template = _ref.template;
|
|
46
|
+
var mainDataSource = template.dataSources.find(function (ds) {
|
|
47
|
+
return ds.name === "main";
|
|
48
|
+
});
|
|
49
|
+
var _useRefreshPageTempla = (0, _features.useRefreshPageTemplates)(),
|
|
50
|
+
refreshPageTemplates = _useRefreshPageTempla.refreshPageTemplates;
|
|
51
|
+
return /*#__PURE__*/_react.default.createElement(_admin.RenderPluginsLoader, null, /*#__PURE__*/_react.default.createElement(LivePreviewContainer, null, /*#__PURE__*/_react.default.createElement(Header, null, template.title, /*#__PURE__*/_react.default.createElement(_icons.RefreshIcon, {
|
|
52
|
+
onClick: function onClick() {
|
|
53
|
+
return refreshPageTemplates();
|
|
54
|
+
}
|
|
55
|
+
})), /*#__PURE__*/_react.default.createElement(_dataInjection.DynamicDocumentProvider, {
|
|
56
|
+
dataSources: template.dataSources,
|
|
57
|
+
dataBindings: template.dataBindings
|
|
58
|
+
}, /*#__PURE__*/_react.default.createElement(_dataInjection.DataSourceProvider, {
|
|
59
|
+
dataSource: mainDataSource
|
|
60
|
+
}, /*#__PURE__*/_react.default.createElement(_appPageBuilderElements.Content, {
|
|
61
|
+
content: template.content
|
|
62
|
+
})))));
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=PreviewPane.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_admin","_appPageBuilderElements","_dataInjection","_icons","_features","_EMOTION_STRINGIFIED_CSS_ERROR__","LivePreviewContainer","_base","default","process","env","NODE_ENV","target","label","name","styles","map","toString","Header","PreviewPane","exports","_ref","template","mainDataSource","dataSources","find","ds","_useRefreshPageTempla","useRefreshPageTemplates","refreshPageTemplates","createElement","RenderPluginsLoader","title","RefreshIcon","onClick","DynamicDocumentProvider","dataBindings","DataSourceProvider","dataSource","Content","content"],"sources":["PreviewPane.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { PbPageTemplateWithContent } from \"@webiny/app-page-builder/types\";\nimport { RenderPluginsLoader } from \"@webiny/app-page-builder/admin\";\nimport { Content } from \"@webiny/app-page-builder-elements\";\nimport {\n DataSourceProvider,\n DynamicDocumentProvider\n} from \"@webiny/app-page-builder/dataInjection\";\nimport { RefreshIcon } from \"@webiny/ui/List/DataList/icons\";\nimport { useRefreshPageTemplates } from \"@webiny/app-page-builder/features\";\n\nconst LivePreviewContainer = styled.div`\n position: relative;\n display: flex;\n flex-direction: column;\n border-right: 1px solid var(--mdc-theme-on-background);\n height: calc(100vh - 260px);\n overflow: auto;\n`;\n\nconst Header = styled.div`\n display: flex;\n padding: 15px;\n justify-content: space-between;\n border-bottom: 1px solid var(--mdc-theme-on-background);\n font-size: 24px;\n align-items: center;\n`;\n\nexport interface PreviewPaneProps {\n template: PbPageTemplateWithContent;\n}\n\nexport const PreviewPane = ({ template }: PreviewPaneProps) => {\n const mainDataSource = template.dataSources.find(ds => ds.name === \"main\");\n const { refreshPageTemplates } = useRefreshPageTemplates();\n\n return (\n <RenderPluginsLoader>\n <LivePreviewContainer>\n <Header>\n {template.title}\n <RefreshIcon onClick={() => refreshPageTemplates()} />\n </Header>\n <DynamicDocumentProvider\n dataSources={template.dataSources}\n dataBindings={template.dataBindings}\n >\n <DataSourceProvider dataSource={mainDataSource!}>\n <Content content={template.content} />\n </DataSourceProvider>\n </DynamicDocumentProvider>\n </LivePreviewContainer>\n </RenderPluginsLoader>\n );\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAIA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AAA4E,SAAAM,iCAAA;AAE5E,IAAMC,oBAAoB,oBAAAC,KAAA,CAAAC,OAAA,SAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAC,MAAA;AAAA;EAAAA,MAAA;EAAAC,KAAA;AAAA,GAAAJ,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAG,IAAA;EAAAC,MAAA;AAAA;EAAAD,IAAA;EAAAC,MAAA;EAAAC,GAAA;EAAAC,QAAA,EAAAZ;AAAA,EAOzB;AAED,IAAMa,MAAM,oBAAAX,KAAA,CAAAC,OAAA,SAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAC,MAAA;AAAA;EAAAA,MAAA;EAAAC,KAAA;AAAA,GAAAJ,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAG,IAAA;EAAAC,MAAA;AAAA;EAAAD,IAAA;EAAAC,MAAA;EAAAC,GAAA;EAAAC,QAAA,EAAAZ;AAAA,EAOX;AAMM,IAAMc,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,SAAdA,WAAWA,CAAAE,IAAA,EAAuC;EAAA,IAAjCC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;EAClC,IAAMC,cAAc,GAAGD,QAAQ,CAACE,WAAW,CAACC,IAAI,CAAC,UAAAC,EAAE;IAAA,OAAIA,EAAE,CAACZ,IAAI,KAAK,MAAM;EAAA,EAAC;EAC1E,IAAAa,qBAAA,GAAiC,IAAAC,iCAAuB,EAAC,CAAC;IAAlDC,oBAAoB,GAAAF,qBAAA,CAApBE,oBAAoB;EAE5B,oBACIhC,MAAA,CAAAW,OAAA,CAAAsB,aAAA,CAAC9B,MAAA,CAAA+B,mBAAmB,qBAChBlC,MAAA,CAAAW,OAAA,CAAAsB,aAAA,CAACxB,oBAAoB,qBACjBT,MAAA,CAAAW,OAAA,CAAAsB,aAAA,CAACZ,MAAM,QACFI,QAAQ,CAACU,KAAK,eACfnC,MAAA,CAAAW,OAAA,CAAAsB,aAAA,CAAC3B,MAAA,CAAA8B,WAAW;IAACC,OAAO,EAAE,SAATA,OAAOA,CAAA;MAAA,OAAQL,oBAAoB,CAAC,CAAC;IAAA;EAAC,CAAE,CACjD,CAAC,eACThC,MAAA,CAAAW,OAAA,CAAAsB,aAAA,CAAC5B,cAAA,CAAAiC,uBAAuB;IACpBX,WAAW,EAAEF,QAAQ,CAACE,WAAY;IAClCY,YAAY,EAAEd,QAAQ,CAACc;EAAa,gBAEpCvC,MAAA,CAAAW,OAAA,CAAAsB,aAAA,CAAC5B,cAAA,CAAAmC,kBAAkB;IAACC,UAAU,EAAEf;EAAgB,gBAC5C1B,MAAA,CAAAW,OAAA,CAAAsB,aAAA,CAAC7B,uBAAA,CAAAsC,OAAO;IAACC,OAAO,EAAElB,QAAQ,CAACkB;EAAQ,CAAE,CACrB,CACC,CACP,CACL,CAAC;AAE9B,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.Extensions = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _IfDynamicPagesEnabled = require("@webiny/app-page-builder/IfDynamicPagesEnabled");
|
|
10
|
+
var SetupDynamicPages = /*#__PURE__*/_react.default.lazy(function () {
|
|
11
|
+
return import(/* webpackChunkName: "experimentalDynamicPages" */"./SetupDynamicPages").then(function (m) {
|
|
12
|
+
return {
|
|
13
|
+
default: m.SetupDynamicPages
|
|
14
|
+
};
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var Extensions = exports.Extensions = function Extensions() {
|
|
18
|
+
return /*#__PURE__*/_react.default.createElement(_IfDynamicPagesEnabled.IfDynamicPagesEnabled, null, /*#__PURE__*/_react.default.createElement(_react.default.Suspense, {
|
|
19
|
+
fallback: null
|
|
20
|
+
}, /*#__PURE__*/_react.default.createElement(SetupDynamicPages, null)));
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=Extensions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_IfDynamicPagesEnabled","SetupDynamicPages","React","lazy","then","m","default","Extensions","exports","createElement","IfDynamicPagesEnabled","Suspense","fallback"],"sources":["Extensions.tsx"],"sourcesContent":["import React from \"react\";\nimport { IfDynamicPagesEnabled } from \"@webiny/app-page-builder/IfDynamicPagesEnabled\";\n\nconst SetupDynamicPages = React.lazy(() => {\n return import(/* webpackChunkName: \"experimentalDynamicPages\" */ \"./SetupDynamicPages\").then(\n m => ({ default: m.SetupDynamicPages })\n );\n});\n\nexport const Extensions = () => {\n return (\n <IfDynamicPagesEnabled>\n <React.Suspense fallback={null}>\n <SetupDynamicPages />\n </React.Suspense>\n </IfDynamicPagesEnabled>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAEA,IAAME,iBAAiB,gBAAGC,cAAK,CAACC,IAAI,CAAC,YAAM;EACvC,OAAO,MAAM,CAAC,uEAAwE,CAAC,CAACC,IAAI,CACxF,UAAAC,CAAC;IAAA,OAAK;MAAEC,OAAO,EAAED,CAAC,CAACJ;IAAkB,CAAC;EAAA,CAC1C,CAAC;AACL,CAAC,CAAC;AAEK,IAAMM,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,SAAbA,UAAUA,CAAA,EAAS;EAC5B,oBACIV,MAAA,CAAAS,OAAA,CAAAG,aAAA,CAACT,sBAAA,CAAAU,qBAAqB,qBAClBb,MAAA,CAAAS,OAAA,CAAAG,aAAA,CAACZ,MAAA,CAAAS,OAAK,CAACK,QAAQ;IAACC,QAAQ,EAAE;EAAK,gBAC3Bf,MAAA,CAAAS,OAAA,CAAAG,aAAA,CAACR,iBAAiB,MAAE,CACR,CACG,CAAC;AAEhC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { CmsModel } from "@webiny/app-headless-cms/types";
|
|
3
|
+
type CreateTemplateDialogProps = {
|
|
4
|
+
open: boolean;
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
onDynamicTemplateSelect: (model: CmsModel) => void;
|
|
7
|
+
onStaticTemplateSelect: () => void;
|
|
8
|
+
existingDynamicTemplateModelIds: string[];
|
|
9
|
+
};
|
|
10
|
+
export declare const CreateTemplateDialog: React.FC<CreateTemplateDialogProps>;
|
|
11
|
+
export {};
|