@gravity-ui/page-constructor 8.5.0-alpha.0 → 8.5.0-alpha.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/build/cjs/blocks/Banner/icon.d.ts +2 -0
- package/build/cjs/blocks/Banner/icon.js +13 -0
- package/build/cjs/blocks/Banner/icon.js.map +1 -0
- package/build/cjs/blocks/Banner/index.js +2 -2
- package/build/cjs/blocks/Banner/index.js.map +1 -1
- package/build/cjs/blocks/CardLayout/icon.d.ts +2 -0
- package/build/cjs/blocks/CardLayout/icon.js +19 -0
- package/build/cjs/blocks/CardLayout/icon.js.map +1 -0
- package/build/cjs/blocks/CardLayout/index.js +17 -2
- package/build/cjs/blocks/CardLayout/index.js.map +1 -1
- package/build/cjs/blocks/ContentLayout/icon.d.ts +2 -0
- package/build/cjs/blocks/ContentLayout/icon.js +15 -0
- package/build/cjs/blocks/ContentLayout/icon.js.map +1 -0
- package/build/cjs/blocks/ContentLayout/index.js +2 -2
- package/build/cjs/blocks/ContentLayout/index.js.map +1 -1
- package/build/cjs/blocks/ExtendedFeatures/icon.d.ts +2 -0
- package/build/cjs/blocks/ExtendedFeatures/icon.js +20 -0
- package/build/cjs/blocks/ExtendedFeatures/icon.js.map +1 -0
- package/build/cjs/blocks/ExtendedFeatures/index.js +2 -2
- package/build/cjs/blocks/ExtendedFeatures/index.js.map +1 -1
- package/build/cjs/blocks/Header/icon.d.ts +2 -0
- package/build/cjs/blocks/Header/icon.js +13 -0
- package/build/cjs/blocks/Header/icon.js.map +1 -0
- package/build/cjs/blocks/Header/index.js +2 -2
- package/build/cjs/blocks/Header/index.js.map +1 -1
- package/build/cjs/blocks/Info/icon.d.ts +2 -0
- package/build/cjs/blocks/Info/icon.js +18 -0
- package/build/cjs/blocks/Info/icon.js.map +1 -0
- package/build/cjs/blocks/Info/index.js +2 -2
- package/build/cjs/blocks/Info/index.js.map +1 -1
- package/build/cjs/blocks/Media/icon.d.ts +2 -0
- package/build/cjs/blocks/Media/icon.js +13 -0
- package/build/cjs/blocks/Media/icon.js.map +1 -0
- package/build/cjs/blocks/Media/index.js +2 -2
- package/build/cjs/blocks/Media/index.js.map +1 -1
- package/build/cjs/blocks/Media/index_deprecated.js +2 -2
- package/build/cjs/blocks/Media/index_deprecated.js.map +1 -1
- package/build/cjs/blocks/Questions/icon.d.ts +2 -0
- package/build/cjs/blocks/Questions/icon.js +19 -0
- package/build/cjs/blocks/Questions/icon.js.map +1 -0
- package/build/cjs/blocks/Questions/index.js +2 -2
- package/build/cjs/blocks/Questions/index.js.map +1 -1
- package/build/cjs/blocks/Slider/icon.d.ts +2 -0
- package/build/cjs/blocks/Slider/icon.js +55 -0
- package/build/cjs/blocks/Slider/icon.js.map +1 -0
- package/build/cjs/blocks/Slider/index.js +2 -2
- package/build/cjs/blocks/Slider/index.js.map +1 -1
- package/build/cjs/blocks/Tabs/icon.d.ts +2 -0
- package/build/cjs/blocks/Tabs/icon.js +16 -0
- package/build/cjs/blocks/Tabs/icon.js.map +1 -0
- package/build/cjs/blocks/Tabs/index.js +2 -2
- package/build/cjs/blocks/Tabs/index.js.map +1 -1
- package/build/cjs/common/postMessage.js +1 -1
- package/build/cjs/common/postMessage.js.map +1 -1
- package/build/cjs/containers/PageConstructor/PageConstructor.d.ts +0 -1
- package/build/cjs/containers/PageConstructor/PageConstructor.js +0 -1
- package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
- package/build/cjs/editor-v2/containers/BigOverlay/BigOverlay.js +7 -2
- package/build/cjs/editor-v2/containers/BigOverlay/BigOverlay.js.map +1 -1
- package/build/cjs/editor-v2/containers/Editor/Editor.d.ts +3 -3
- package/build/cjs/editor-v2/containers/Editor/Editor.js +4 -4
- package/build/cjs/editor-v2/containers/Editor/Editor.js.map +1 -1
- package/build/cjs/editor-v2/hooks/useMainEditorInitialize.d.ts +1 -1
- package/build/cjs/editor-v2/hooks/useMainEditorInitialize.js +5 -5
- package/build/cjs/editor-v2/hooks/useMainEditorInitialize.js.map +1 -1
- package/build/cjs/hooks/usePCEditorInitializeEvents.js +2 -2
- package/build/cjs/hooks/usePCEditorInitializeEvents.js.map +1 -1
- package/build/cjs/hooks/usePostMessageAPI.js +1 -1
- package/build/cjs/hooks/usePostMessageAPI.js.map +1 -1
- package/build/cjs/sub-blocks/ImageCard/icon.d.ts +2 -0
- package/build/cjs/sub-blocks/ImageCard/icon.js +11 -0
- package/build/cjs/sub-blocks/ImageCard/icon.js.map +1 -0
- package/build/cjs/sub-blocks/ImageCard/index.js +2 -2
- package/build/cjs/sub-blocks/ImageCard/index.js.map +1 -1
- package/build/cjs/sub-blocks/MediaCard/icon.d.ts +2 -0
- package/build/cjs/sub-blocks/MediaCard/icon.js +11 -0
- package/build/cjs/sub-blocks/MediaCard/icon.js.map +1 -0
- package/build/cjs/sub-blocks/MediaCard/index.js +2 -2
- package/build/cjs/sub-blocks/MediaCard/index.js.map +1 -1
- package/build/cjs/utils/index.d.ts +1 -0
- package/build/cjs/utils/index.js +1 -0
- package/build/cjs/utils/index.js.map +1 -1
- package/build/cjs/utils/svg.d.ts +1 -0
- package/build/cjs/utils/svg.js +4 -0
- package/build/cjs/utils/svg.js.map +1 -1
- package/build/esm/blocks/Banner/icon.d.ts +2 -0
- package/{widget/e939f84b0589c88eda82.svg → build/esm/blocks/Banner/icon.js} +4 -2
- package/build/esm/blocks/Banner/icon.js.map +1 -0
- package/build/esm/blocks/Banner/index.js +1 -1
- package/build/esm/blocks/Banner/index.js.map +1 -1
- package/build/esm/blocks/CardLayout/icon.d.ts +2 -0
- package/{widget/f077b7db51dd159290d7.svg → build/esm/blocks/CardLayout/icon.js} +4 -2
- package/build/esm/blocks/CardLayout/icon.js.map +1 -0
- package/build/esm/blocks/CardLayout/index.js +16 -1
- package/build/esm/blocks/CardLayout/index.js.map +1 -1
- package/build/esm/blocks/ContentLayout/icon.d.ts +2 -0
- package/{widget/6bd40d99d7acda70c988.svg → build/esm/blocks/ContentLayout/icon.js} +4 -2
- package/build/esm/blocks/ContentLayout/icon.js.map +1 -0
- package/build/esm/blocks/ContentLayout/index.js +1 -1
- package/build/esm/blocks/ContentLayout/index.js.map +1 -1
- package/build/esm/blocks/ExtendedFeatures/icon.d.ts +2 -0
- package/{widget/8eee8263ebe9e3a9a5ec.svg → build/esm/blocks/ExtendedFeatures/icon.js} +4 -2
- package/build/esm/blocks/ExtendedFeatures/icon.js.map +1 -0
- package/build/esm/blocks/ExtendedFeatures/index.js +1 -1
- package/build/esm/blocks/ExtendedFeatures/index.js.map +1 -1
- package/build/esm/blocks/Header/icon.d.ts +2 -0
- package/{widget/e0148e2f56361cf735a0.svg → build/esm/blocks/Header/icon.js} +4 -2
- package/build/esm/blocks/Header/icon.js.map +1 -0
- package/build/esm/blocks/Header/index.js +1 -1
- package/build/esm/blocks/Header/index.js.map +1 -1
- package/build/esm/blocks/Info/icon.d.ts +2 -0
- package/{widget/dd2cee88264c25f71647.svg → build/esm/blocks/Info/icon.js} +4 -2
- package/build/esm/blocks/Info/icon.js.map +1 -0
- package/build/esm/blocks/Info/index.js +1 -1
- package/build/esm/blocks/Info/index.js.map +1 -1
- package/build/esm/blocks/Media/icon.d.ts +2 -0
- package/{widget/59e86539ac1545c64458.svg → build/esm/blocks/Media/icon.js} +4 -2
- package/build/esm/blocks/Media/icon.js.map +1 -0
- package/build/esm/blocks/Media/index.js +1 -1
- package/build/esm/blocks/Media/index.js.map +1 -1
- package/build/esm/blocks/Media/index_deprecated.js +1 -1
- package/build/esm/blocks/Media/index_deprecated.js.map +1 -1
- package/build/esm/blocks/Questions/icon.d.ts +2 -0
- package/{widget/b4759683d7f3c55b222d.svg → build/esm/blocks/Questions/icon.js} +4 -2
- package/build/esm/blocks/Questions/icon.js.map +1 -0
- package/build/esm/blocks/Questions/index.js +1 -1
- package/build/esm/blocks/Questions/index.js.map +1 -1
- package/build/esm/blocks/Slider/icon.d.ts +2 -0
- package/{widget/f8de93d922c0adc378bb.svg → build/esm/blocks/Slider/icon.js} +4 -2
- package/build/esm/blocks/Slider/icon.js.map +1 -0
- package/build/esm/blocks/Slider/index.js +1 -1
- package/build/esm/blocks/Slider/index.js.map +1 -1
- package/build/esm/blocks/Tabs/icon.d.ts +2 -0
- package/{widget/48692712e33c3bdae70f.svg → build/esm/blocks/Tabs/icon.js} +4 -2
- package/build/esm/blocks/Tabs/icon.js.map +1 -0
- package/build/esm/blocks/Tabs/index.js +1 -1
- package/build/esm/blocks/Tabs/index.js.map +1 -1
- package/build/esm/common/postMessage.js +1 -1
- package/build/esm/common/postMessage.js.map +1 -1
- package/build/esm/containers/PageConstructor/PageConstructor.d.ts +0 -1
- package/build/esm/containers/PageConstructor/PageConstructor.js +0 -1
- package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
- package/build/esm/editor-v2/containers/BigOverlay/BigOverlay.js +7 -2
- package/build/esm/editor-v2/containers/BigOverlay/BigOverlay.js.map +1 -1
- package/build/esm/editor-v2/containers/Editor/Editor.d.ts +3 -3
- package/build/esm/editor-v2/containers/Editor/Editor.js +4 -4
- package/build/esm/editor-v2/containers/Editor/Editor.js.map +1 -1
- package/build/esm/editor-v2/hooks/useMainEditorInitialize.d.ts +1 -1
- package/build/esm/editor-v2/hooks/useMainEditorInitialize.js +5 -5
- package/build/esm/editor-v2/hooks/useMainEditorInitialize.js.map +1 -1
- package/build/esm/hooks/usePCEditorInitializeEvents.js +2 -2
- package/build/esm/hooks/usePCEditorInitializeEvents.js.map +1 -1
- package/build/esm/hooks/usePostMessageAPI.js +1 -1
- package/build/esm/hooks/usePostMessageAPI.js.map +1 -1
- package/build/esm/sub-blocks/ImageCard/icon.d.ts +2 -0
- package/{widget/d0f61f0a190743ed85bf.svg → build/esm/sub-blocks/ImageCard/icon.js} +4 -2
- package/build/esm/sub-blocks/ImageCard/icon.js.map +1 -0
- package/build/esm/sub-blocks/ImageCard/index.js +1 -1
- package/build/esm/sub-blocks/ImageCard/index.js.map +1 -1
- package/build/esm/sub-blocks/MediaCard/icon.d.ts +2 -0
- package/build/esm/sub-blocks/MediaCard/icon.js +9 -0
- package/build/esm/sub-blocks/MediaCard/icon.js.map +1 -0
- package/build/esm/sub-blocks/MediaCard/index.js +1 -1
- package/build/esm/sub-blocks/MediaCard/index.js.map +1 -1
- package/build/esm/utils/index.d.ts +1 -0
- package/build/esm/utils/index.js +1 -0
- package/build/esm/utils/index.js.map +1 -1
- package/build/esm/utils/svg.d.ts +1 -0
- package/build/esm/utils/svg.js +3 -0
- package/build/esm/utils/svg.js.map +1 -1
- package/package.json +2 -2
- package/server/utils/index.d.ts +1 -0
- package/server/utils/index.js +1 -0
- package/server/utils/svg.d.ts +4 -0
- package/server/utils/svg.js +11 -0
- package/widget/index.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["blocks/Slider/index.ts"],"names":[],"mappings":";;;AAEA,0GAAwG;AAExG,iEAAmC;AACnC,wCAA0D;AAE1D,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["blocks/Slider/index.ts"],"names":[],"mappings":";;;AAEA,0GAAwG;AAExG,iEAAmC;AACnC,6DAA0B;AAC1B,wCAA0D;AAE1D,MAAM,iBAAiB,GAAG;IACtB,IAAI,EAAE,2CAA2C;IACjD,SAAS,EAAE,gBAAW;IACtB,MAAM,EAAE;QACJ,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,6CAA6C;QACpD,sCAAsC;QACtC,MAAM,EAAE,IAAA,2DAA+B,EACnC,oBAAiB,CAAC,cAAc,CAAkC,CACrE;QACD,OAAO,EAAE;YACL,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,+BAA+B;YACtC,WAAW,EAAE,sCAAsC;YACnD,YAAY,EAAE,CAAC;YACf,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE;gBACN;oBACI,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,6HAA6H;oBACnI,GAAG,EAAE,qBAAqB;oBAC1B,MAAM,EAAE;wBACJ,SAAS,EAAE,OAAO;wBAClB,UAAU,EAAE,OAAO;wBACnB,WAAW,EAAE,aAAa;qBAC7B;iBACJ;gBACD;oBACI,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,6HAA6H;oBACnI,GAAG,EAAE,qBAAqB;oBAC1B,MAAM,EAAE;wBACJ,SAAS,EAAE,OAAO;wBAClB,UAAU,EAAE,OAAO;wBACnB,WAAW,EAAE,aAAa;qBAC7B;iBACJ;aACJ;SACJ;QACD,UAAU,EAAE,cAAI;KACnB;CACJ,CAAC;AAEF,kBAAe,iBAAiB,CAAC","sourcesContent":["import {JSONSchemaType} from 'ajv';\n\nimport {generateFormFieldsFromAjvSchema} from '../../form-generator-v2/utils/generateFormFieldsFromAjv';\n\nimport SliderBlock from './Slider';\nimport icon from './icon';\nimport {SliderBlock as SliderBlockSchema} from './schema';\n\nconst SliderBlockConfig = {\n type: '@gravity-ui/page-constructor/slider-block',\n component: SliderBlock,\n schema: {\n name: 'Slider Block',\n group: '@gravity-ui/page-constructor/CardContainers',\n // TODO: change to custom block schema\n inputs: generateFormFieldsFromAjvSchema(\n SliderBlockSchema['slider-block'] as unknown as JSONSchemaType<{}>,\n ),\n default: {\n dots: true,\n type: 'slider-block',\n title: 'Slider Block with Quote Cards',\n description: 'You can insert any card inside block',\n slidesToShow: 1,\n arrows: true,\n children: [\n {\n type: 'quote',\n text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',\n url: 'https://example.com',\n author: {\n firstName: 'Lorem',\n secondName: 'ipsum',\n description: 'Lorem ipsum',\n },\n },\n {\n type: 'quote',\n text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',\n url: 'https://example.com',\n author: {\n firstName: 'Lorem',\n secondName: 'ipsum',\n description: 'Lorem ipsum',\n },\n },\n ],\n },\n previewImg: icon,\n },\n};\n\nexport default SliderBlockConfig;\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const svg_1 = require("../../utils/svg.js");
|
|
4
|
+
exports.default = (0, svg_1.svgToDataUri)(`<svg width="100" height="50" viewBox="0 0 100 50" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
+
<rect width="100" height="50" rx="7.97674" fill="white"/>
|
|
6
|
+
<rect x="9.11628" y="8.5" width="10" height="2" rx="0.569767" fill="black"/>
|
|
7
|
+
<rect x="20.1163" y="8.5" width="10" height="2" rx="0.569767" fill="black"/>
|
|
8
|
+
<rect x="31.1163" y="8.5" width="10" height="2" rx="0.569767" fill="black"/>
|
|
9
|
+
<rect x="42.1163" y="8.5" width="10" height="2" rx="0.569767" fill="black"/>
|
|
10
|
+
<rect x="9.11628" y="12.5" width="52" height="29" rx="3" fill="black"/>
|
|
11
|
+
<rect x="63.1163" y="12.5" width="13" height="2" rx="0.569767" fill="#262626"/>
|
|
12
|
+
<rect x="63.1163" y="15.5" width="23.7674" height="2" rx="0.569767" fill="#262626"/>
|
|
13
|
+
<rect x="63.1163" y="18.5" width="23.7674" height="2" rx="0.569767" fill="#262626"/>
|
|
14
|
+
<rect x="63.1163" y="22.5" width="7" height="2" rx="0.569767" fill="#262626"/>
|
|
15
|
+
</svg>`);
|
|
16
|
+
//# sourceMappingURL=icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon.js","sourceRoot":"../../../../src","sources":["blocks/Tabs/icon.ts"],"names":[],"mappings":";;AAAA,4CAA6C;AAE7C,kBAAe,IAAA,kBAAY,EACvB;;;;;;;;;;;OAWG,CACN,CAAC","sourcesContent":["import {svgToDataUri} from '../../utils/svg';\n\nexport default svgToDataUri(\n `<svg width=\"100\" height=\"50\" viewBox=\"0 0 100 50\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<rect width=\"100\" height=\"50\" rx=\"7.97674\" fill=\"white\"/>\n<rect x=\"9.11628\" y=\"8.5\" width=\"10\" height=\"2\" rx=\"0.569767\" fill=\"black\"/>\n<rect x=\"20.1163\" y=\"8.5\" width=\"10\" height=\"2\" rx=\"0.569767\" fill=\"black\"/>\n<rect x=\"31.1163\" y=\"8.5\" width=\"10\" height=\"2\" rx=\"0.569767\" fill=\"black\"/>\n<rect x=\"42.1163\" y=\"8.5\" width=\"10\" height=\"2\" rx=\"0.569767\" fill=\"black\"/>\n<rect x=\"9.11628\" y=\"12.5\" width=\"52\" height=\"29\" rx=\"3\" fill=\"black\"/>\n<rect x=\"63.1163\" y=\"12.5\" width=\"13\" height=\"2\" rx=\"0.569767\" fill=\"#262626\"/>\n<rect x=\"63.1163\" y=\"15.5\" width=\"23.7674\" height=\"2\" rx=\"0.569767\" fill=\"#262626\"/>\n<rect x=\"63.1163\" y=\"18.5\" width=\"23.7674\" height=\"2\" rx=\"0.569767\" fill=\"#262626\"/>\n<rect x=\"63.1163\" y=\"22.5\" width=\"7\" height=\"2\" rx=\"0.569767\" fill=\"#262626\"/>\n</svg>`,\n);\n"]}
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const generateFormFieldsFromAjv_1 = require("../../form-generator-v2/utils/generateFormFieldsFromAjv.js");
|
|
5
5
|
const Tabs_1 = tslib_1.__importDefault(require("./Tabs.js"));
|
|
6
|
+
const icon_1 = tslib_1.__importDefault(require("./icon.js"));
|
|
6
7
|
const schema_1 = require("./schema.js");
|
|
7
|
-
const icon_svg_1 = tslib_1.__importDefault(require("./icon.svg"));
|
|
8
8
|
const TabsBlockConfig = {
|
|
9
9
|
type: '@gravity-ui/page-constructor/tabs-block',
|
|
10
10
|
component: Tabs_1.default,
|
|
@@ -27,7 +27,7 @@ const TabsBlockConfig = {
|
|
|
27
27
|
},
|
|
28
28
|
],
|
|
29
29
|
},
|
|
30
|
-
previewImg:
|
|
30
|
+
previewImg: icon_1.default,
|
|
31
31
|
},
|
|
32
32
|
};
|
|
33
33
|
exports.default = TabsBlockConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["blocks/Tabs/index.ts"],"names":[],"mappings":";;;AAEA,0GAAwG;AAExG,6DAA+B;AAC/B,wCAAsD;AAEtD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["blocks/Tabs/index.ts"],"names":[],"mappings":";;;AAEA,0GAAwG;AAExG,6DAA+B;AAC/B,6DAA0B;AAC1B,wCAAsD;AAEtD,MAAM,eAAe,GAAG;IACpB,IAAI,EAAE,yCAAyC;IAC/C,SAAS,EAAE,cAAS;IACpB,MAAM,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,qCAAqC;QAC5C,MAAM,EAAE,IAAA,2DAA+B,EACnC,kBAAe,CAAC,YAAY,CAAkC,CACjE;QACD,OAAO,EAAE;YACL,KAAK,EAAE,YAAY;YACnB,KAAK,EAAE;gBACH;oBACI,OAAO,EAAE,WAAW;oBACpB,IAAI,EAAE,mBAAmB;oBACzB,KAAK,EAAE,iBAAiB;iBAC3B;gBACD;oBACI,IAAI,EAAE,oBAAoB;oBAC1B,KAAK,EAAE,kBAAkB;oBACzB,OAAO,EAAE,YAAY;iBACxB;aACJ;SACJ;QACD,UAAU,EAAE,cAAI;KACnB;CACJ,CAAC;AAEF,kBAAe,eAAe,CAAC","sourcesContent":["import {JSONSchemaType} from 'ajv';\n\nimport {generateFormFieldsFromAjvSchema} from '../../form-generator-v2/utils/generateFormFieldsFromAjv';\n\nimport TabsBlock from './Tabs';\nimport icon from './icon';\nimport {TabsBlock as TabsBlockSchema} from './schema';\n\nconst TabsBlockConfig = {\n type: '@gravity-ui/page-constructor/tabs-block',\n component: TabsBlock,\n schema: {\n name: 'Tabs Block',\n group: '@gravity-ui/page-constructor/Blocks',\n inputs: generateFormFieldsFromAjvSchema(\n TabsBlockSchema['tabs-block'] as unknown as JSONSchemaType<{}>,\n ),\n default: {\n title: 'Tabs Block',\n items: [\n {\n tabName: 'First Tab',\n text: 'First Tab Content',\n title: 'First Tab Title',\n },\n {\n text: 'Second Tab Content',\n title: 'Second Tab Title',\n tabName: 'Second Tab',\n },\n ],\n },\n previewImg: icon,\n },\n};\n\nexport default TabsBlockConfig;\n"]}
|
|
@@ -7,7 +7,7 @@ const tslib_1 = require("tslib");
|
|
|
7
7
|
const React = tslib_1.__importStar(require("react"));
|
|
8
8
|
function requestActionPostMessage(action, data, destinationElement) {
|
|
9
9
|
const message = { action, data };
|
|
10
|
-
destinationElement.postMessage(message);
|
|
10
|
+
destinationElement.postMessage(message, '*');
|
|
11
11
|
}
|
|
12
12
|
function listenPostMessageEvents(action, callback) {
|
|
13
13
|
const onMessage = (e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postMessage.js","sourceRoot":"../../../src","sources":["common/postMessage.ts"],"names":[],"mappings":";;AAIA,4DAOC;AAED,0DAmBC;AAED,8DASC;;AA3CD,qDAA+B;AAI/B,SAAgB,wBAAwB,CACpC,MAAS,EACT,IAA2B,EAC3B,kBAA0B;IAE1B,MAAM,OAAO,GAAG,EAAC,MAAM,EAAE,IAAI,EAA6B,CAAC;IAC3D,kBAAkB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"postMessage.js","sourceRoot":"../../../src","sources":["common/postMessage.ts"],"names":[],"mappings":";;AAIA,4DAOC;AAED,0DAmBC;AAED,8DASC;;AA3CD,qDAA+B;AAI/B,SAAgB,wBAAwB,CACpC,MAAS,EACT,IAA2B,EAC3B,kBAA0B;IAE1B,MAAM,OAAO,GAAG,EAAC,MAAM,EAAE,IAAI,EAA6B,CAAC;IAC3D,kBAAkB,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACjD,CAAC;AAED,SAAgB,uBAAuB,CACnC,MAAS,EACT,QAA8C;IAE9C,MAAM,SAAS,GAAG,CAAC,CAAe,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAgC,CAAC;QAEnD,IAAI,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACnD,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAE9C,OAAO,GAAG,EAAE;QACR,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC,CAAC;AACN,CAAC;AAED,SAAgB,yBAAyB,CACrC,MAAS,EACT,QAA8C,EAC9C,OAAkB,EAAE;IAEpB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,OAAO,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACjD,uDAAuD;IAC3D,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AAClB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {ActionMessageTypes, EventMessageTypes, PostMessageAPIMessage} from './types';\n\nexport function requestActionPostMessage<K extends keyof ActionMessageTypes>(\n action: K,\n data: ActionMessageTypes[K],\n destinationElement: Window,\n) {\n const message = {action, data} as PostMessageAPIMessage<K>;\n destinationElement.postMessage(message, '*');\n}\n\nexport function listenPostMessageEvents<K extends keyof EventMessageTypes>(\n action: K,\n callback: (data: EventMessageTypes[K]) => void,\n) {\n const onMessage = (e: MessageEvent) => {\n const message = e.data as PostMessageAPIMessage<K>;\n\n if ('action' in message && message.action === action) {\n return callback(message.data);\n }\n\n return undefined;\n };\n\n window.addEventListener('message', onMessage);\n\n return () => {\n window.removeEventListener('message', onMessage);\n };\n}\n\nexport function usePostMessageAPIListener<K extends keyof EventMessageTypes>(\n action: K,\n callback: (data: EventMessageTypes[K]) => void,\n deps: unknown[] = [],\n) {\n React.useEffect(() => {\n return listenPostMessageEvents(action, callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [...deps]);\n}\n"]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import '@diplodoc/transform/dist/js/yfm';
|
|
3
2
|
import type { PageConstructorWrapper } from "../../common/types/index.js";
|
|
4
3
|
import { BlockData, blockMap, navItemMap, subBlockMap } from "../../constructor-items.js";
|
|
5
4
|
import { Fields } from "../../form-generator-v2/types.js";
|
|
@@ -4,7 +4,6 @@ exports.PageConstructor = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
6
|
const React = tslib_1.__importStar(require("react"));
|
|
7
|
-
require("@diplodoc/transform/dist/js/yfm");
|
|
8
7
|
const RootCn_1 = tslib_1.__importDefault(require("../../components/RootCn/index.js"));
|
|
9
8
|
const constructor_items_1 = require("../../constructor-items.js");
|
|
10
9
|
const blockRegistryContext_1 = require("../../context/blockRegistryContext/index.js");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageConstructor.js","sourceRoot":"../../../../src","sources":["containers/PageConstructor/PageConstructor.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;
|
|
1
|
+
{"version":3,"file":"PageConstructor.js","sourceRoot":"../../../../src","sources":["containers/PageConstructor/PageConstructor.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport type {PageConstructorWrapper} from '../../common/types';\nimport RootCn from '../../components/RootCn';\nimport {BlockData, blockMap, navItemMap, subBlockMap} from '../../constructor-items';\nimport {BlockRegistryContext, useBlockRegistryProvider} from '../../context/blockRegistryContext';\nimport {BlocksContext} from '../../context/blocksContext';\nimport {InnerContext} from '../../context/innerContext';\nimport {Fields} from '../../form-generator-v2/types';\nimport {usePCEditorInitializeEvents} from '../../hooks/usePCEditorInitializeEvents';\nimport {usePCEditorStore} from '../../hooks/usePCEditorStore';\nimport {\n BlockWrapperDataProps,\n CustomConfig,\n CustomItems,\n PageContent,\n ShouldRenderBlock,\n} from '../../models';\nimport {block as cnBlock, getCustomItems} from '../../utils';\n\nimport {ConstructorBlocks} from './components';\nimport {ConstructorRow} from './components/ConstructorRow';\n\nimport './PageConstructor.scss';\n\nexport interface PageConstructorExtension<\n GlobalConfig extends Object = {},\n WrapperProps extends Object = {},\n BlockWrapperProps extends Object = {},\n> {\n name: string;\n id: string;\n settings: {\n ContentWrapper?: PageConstructorWrapper<WrapperProps>;\n contentWrapperProps?: WrapperProps;\n globalInputs?: Fields;\n globalDefaults?: GlobalConfig;\n blockWrapper?: React.ComponentType<\n BlockWrapperDataProps<BlockWrapperProps> & React.PropsWithChildren\n >;\n blockWrapperProps?: BlockWrapperProps;\n blockInputs?: Fields;\n };\n}\n\nconst b = cnBlock('page-constructor');\n\nexport type ItemMap = typeof blockMap & typeof subBlockMap & CustomItems;\n\nexport type NavItemMap = typeof navItemMap & CustomItems;\n\nexport interface PageConstructorProps {\n content?: PageContent;\n shouldRenderBlock?: ShouldRenderBlock;\n custom?: CustomConfig;\n blocks?: Array<BlockData>;\n extensions?: Array<PageConstructorExtension>;\n}\n\nexport const PageConstructor = (props: PageConstructorProps) => {\n const {\n content: initialContent = {blocks: []},\n shouldRenderBlock,\n custom,\n blocks: availableLocalBlocks = [],\n extensions: extensionsProp,\n } = props;\n\n const extensions = React.useMemo(() => extensionsProp ?? [], [extensionsProp]);\n\n const {blocks: availableGlobalBlocks} = React.useContext(BlocksContext);\n\n const availableBlocks = React.useMemo(\n () => [...availableGlobalBlocks, ...availableLocalBlocks],\n [availableGlobalBlocks, availableLocalBlocks],\n );\n\n const globalDefaults = extensions.reduce(\n (acc, extension) => ({\n ...acc,\n ...(extension.settings.globalDefaults || {}),\n }),\n {},\n );\n\n const [content, setContent] = React.useState<PageContent>({\n ...globalDefaults,\n ...initialContent,\n });\n\n const store = usePCEditorStore();\n const {initialized} = store;\n\n const blockRegistry = useBlockRegistryProvider();\n\n const blockWrappers = React.useMemo(\n () =>\n extensions.flatMap((ext) =>\n ext.settings.blockWrapper\n ? [\n {\n wrapper: ext.settings.blockWrapper,\n props: ext.settings.blockWrapperProps ?? {},\n },\n ]\n : [],\n ),\n [extensions],\n );\n\n const blockInputs = React.useMemo(\n () =>\n extensions.reduce<Fields>(\n (acc, ext) => [...acc, ...((ext.settings.blockInputs || []) as Fields)],\n [],\n ),\n [extensions],\n );\n\n usePCEditorInitializeEvents({\n initialContent: content,\n setContent,\n blocks: availableBlocks,\n global: extensions.reduce<Fields>(\n (acc, extension) => [...acc, ...((extension.settings.globalInputs || []) as Fields)],\n [],\n ),\n blockInputs,\n registry: blockRegistry,\n });\n\n const context = React.useMemo(\n () => ({\n blocks: availableBlocks,\n navItemMap: {\n ...navItemMap,\n ...getCustomItems(['navigation'], custom),\n },\n loadables: custom?.loadable,\n shouldRenderBlock,\n blockWrappers,\n content,\n setContent,\n }),\n [custom, shouldRenderBlock, availableBlocks, content, setContent, blockWrappers],\n );\n\n const restBlocks = content.blocks;\n\n const blocksContent = restBlocks && (\n <ConstructorRow>\n <ConstructorBlocks items={restBlocks} />\n </ConstructorRow>\n );\n\n // Apply extensions (wrappers) from outermost to innermost\n const wrappedContent = extensions.reduceRight<React.ReactNode>(\n (children, extension) =>\n extension.settings.ContentWrapper ? (\n <extension.settings.ContentWrapper\n {...(extension.settings.contentWrapperProps || {})}\n >\n {children}\n </extension.settings.ContentWrapper>\n ) : (\n children\n ),\n blocksContent || null,\n );\n\n return (\n <BlockRegistryContext.Provider value={blockRegistry}>\n <InnerContext.Provider value={context}>\n <RootCn className={b('', {['with-editor']: initialized})}>{wrappedContent}</RootCn>\n </InnerContext.Provider>\n </BlockRegistryContext.Provider>\n );\n};\n"]}
|
|
@@ -10,9 +10,14 @@ const b = (0, cn_1.editorCn)('big-overlay');
|
|
|
10
10
|
const BigOverlay = ({ className }) => {
|
|
11
11
|
const { manipulateOverlayMode } = (0, useMainEditorStore_1.useMainEditorStore)();
|
|
12
12
|
const [mousePosition, setMousePosition] = React.useState(undefined);
|
|
13
|
+
const overlayRef = React.useRef(null);
|
|
13
14
|
React.useEffect(() => {
|
|
14
15
|
const onMouseMove = (event) => {
|
|
15
|
-
|
|
16
|
+
const rect = overlayRef.current?.getBoundingClientRect();
|
|
17
|
+
setMousePosition({
|
|
18
|
+
x: event.clientX - (rect?.left ?? 0),
|
|
19
|
+
y: event.clientY - (rect?.top ?? 0),
|
|
20
|
+
});
|
|
16
21
|
};
|
|
17
22
|
const onMouseUp = () => {
|
|
18
23
|
setMousePosition(undefined);
|
|
@@ -26,7 +31,7 @@ const BigOverlay = ({ className }) => {
|
|
|
26
31
|
document.removeEventListener('mouseup', onMouseUp);
|
|
27
32
|
};
|
|
28
33
|
}, []);
|
|
29
|
-
return ((0, jsx_runtime_1.jsx)("div", { className: b(null, className), children: mousePosition && manipulateOverlayMode ? ((0, jsx_runtime_1.jsx)("div", { className: b('border'), style: {
|
|
34
|
+
return ((0, jsx_runtime_1.jsx)("div", { ref: overlayRef, className: b(null, className), children: mousePosition && manipulateOverlayMode ? ((0, jsx_runtime_1.jsx)("div", { className: b('border'), style: {
|
|
30
35
|
top: mousePosition.y,
|
|
31
36
|
left: mousePosition.x,
|
|
32
37
|
}, children: (0, jsx_runtime_1.jsx)(icons_1.Stop, { height: 20, width: 20 }) })) : null }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BigOverlay.js","sourceRoot":"../../../../../src","sources":["editor-v2/containers/BigOverlay/BigOverlay.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,6CAAuC;AAEvC,0EAAkE;AAClE,0CAAwC;AAIxC,MAAM,CAAC,GAAG,IAAA,aAAQ,EAAC,aAAa,CAAC,CAAC;AAElC,MAAM,UAAU,GAAG,CAAC,EAAC,SAAS,EAAuB,EAAE,EAAE;IACrD,MAAM,EAAC,qBAAqB,EAAC,GAAG,IAAA,uCAAkB,GAAE,CAAC;IACrD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CACpD,SAAS,CACZ,CAAC;
|
|
1
|
+
{"version":3,"file":"BigOverlay.js","sourceRoot":"../../../../../src","sources":["editor-v2/containers/BigOverlay/BigOverlay.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,6CAAuC;AAEvC,0EAAkE;AAClE,0CAAwC;AAIxC,MAAM,CAAC,GAAG,IAAA,aAAQ,EAAC,aAAa,CAAC,CAAC;AAElC,MAAM,UAAU,GAAG,CAAC,EAAC,SAAS,EAAuB,EAAE,EAAE;IACrD,MAAM,EAAC,qBAAqB,EAAC,GAAG,IAAA,uCAAkB,GAAE,CAAC;IACrD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CACpD,SAAS,CACZ,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEtD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,WAAW,GAAG,CAAC,KAAiB,EAAE,EAAE;YACtC,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAC;YACzD,gBAAgB,CAAC;gBACb,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;gBACpC,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;aACtC,CAAC,CAAC;QACP,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,GAAG,EAAE;YACnB,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAChC,CAAC,CAAC;QAEF,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACpD,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACpD,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAEhD,OAAO,GAAG,EAAE;YACR,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACvD,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACvD,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACvD,CAAC,CAAC;IACN,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACH,gCAAK,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,YAC9C,aAAa,IAAI,qBAAqB,CAAC,CAAC,CAAC,CACtC,gCACI,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EACtB,KAAK,EAAE;gBACH,GAAG,EAAE,aAAa,CAAC,CAAC;gBACpB,IAAI,EAAE,aAAa,CAAC,CAAC;aACxB,YAED,uBAAC,YAAI,IAAC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAAI,GAC7B,CACT,CAAC,CAAC,CAAC,IAAI,GACN,CACT,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,UAAU,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Stop} from '@gravity-ui/icons';\n\nimport {useMainEditorStore} from '../../hooks/useMainEditorStore';\nimport {editorCn} from '../../utils/cn';\n\nimport './BigOverlay.scss';\n\nconst b = editorCn('big-overlay');\n\nconst BigOverlay = ({className}: {className?: string}) => {\n const {manipulateOverlayMode} = useMainEditorStore();\n const [mousePosition, setMousePosition] = React.useState<{x: number; y: number} | undefined>(\n undefined,\n );\n const overlayRef = React.useRef<HTMLDivElement>(null);\n\n React.useEffect(() => {\n const onMouseMove = (event: MouseEvent) => {\n const rect = overlayRef.current?.getBoundingClientRect();\n setMousePosition({\n x: event.clientX - (rect?.left ?? 0),\n y: event.clientY - (rect?.top ?? 0),\n });\n };\n\n const onMouseUp = () => {\n setMousePosition(undefined);\n };\n\n document.addEventListener('mousemove', onMouseMove);\n document.addEventListener('mousedown', onMouseMove);\n document.addEventListener('mouseup', onMouseUp);\n\n return () => {\n document.removeEventListener('mousemove', onMouseMove);\n document.removeEventListener('mousedown', onMouseMove);\n document.removeEventListener('mouseup', onMouseUp);\n };\n }, []);\n\n return (\n <div ref={overlayRef} className={b(null, className)}>\n {mousePosition && manipulateOverlayMode ? (\n <div\n className={b('border')}\n style={{\n top: mousePosition.y,\n left: mousePosition.x,\n }}\n >\n <Stop height={20} width={20} />\n </div>\n ) : null}\n </div>\n );\n};\n\nexport default BigOverlay;\n"]}
|
|
@@ -5,7 +5,7 @@ interface SidebarTabComponent {
|
|
|
5
5
|
title: string;
|
|
6
6
|
component: React.ElementType;
|
|
7
7
|
}
|
|
8
|
-
interface
|
|
8
|
+
interface EditorSlots {
|
|
9
9
|
middleTop?: React.ElementType;
|
|
10
10
|
leftTop?: React.ElementType[];
|
|
11
11
|
rightTop?: React.ElementType[];
|
|
@@ -19,8 +19,8 @@ export interface EditorProviderProps {
|
|
|
19
19
|
}
|
|
20
20
|
export interface EditorViewProps {
|
|
21
21
|
onUpdate?: (pageContent: PageContent) => void;
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
content?: PageContent;
|
|
23
|
+
slots?: EditorSlots;
|
|
24
24
|
}
|
|
25
25
|
type EditorProps = Omit<EditorProviderProps, 'children'> & EditorViewProps;
|
|
26
26
|
export declare const EditorProvider: ({ initialUrl, disableUrlField, children }: EditorProviderProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -18,10 +18,10 @@ const cn_1 = require("../../utils/cn.js");
|
|
|
18
18
|
const Source_1 = tslib_1.__importDefault(require("../Source/Source.js"));
|
|
19
19
|
const ViewSwitches_1 = tslib_1.__importDefault(require("../ViewSwitches/ViewSwitches.js"));
|
|
20
20
|
const b = (0, cn_1.editorCn)('editor');
|
|
21
|
-
const EditorViewInternal = ({
|
|
21
|
+
const EditorViewInternal = ({ slots = {}, content }) => {
|
|
22
22
|
const store = (0, useMainEditorStore_1.useMainEditorStore)();
|
|
23
23
|
const { manipulateOverlayMode, disableMode, undo, redo } = store;
|
|
24
|
-
(0, useMainEditorInitialize_1.default)(
|
|
24
|
+
(0, useMainEditorInitialize_1.default)(content);
|
|
25
25
|
(0, postMessage_1.usePostMessageAPIListener)('ON_EDITOR_UNDO', () => {
|
|
26
26
|
undo();
|
|
27
27
|
}, [undo]);
|
|
@@ -59,10 +59,10 @@ const EditorViewInternal = ({ componentsConfig = {}, initialContent }) => {
|
|
|
59
59
|
disableMode();
|
|
60
60
|
}
|
|
61
61
|
}, [disableMode, manipulateOverlayMode]);
|
|
62
|
-
const { left, right } = (0, useEditorTabs_1.useEditorTabs)(
|
|
62
|
+
const { left, right } = (0, useEditorTabs_1.useEditorTabs)(slots);
|
|
63
63
|
return (
|
|
64
64
|
// eslint-disable-next-line jsx-a11y/no-static-element-interactions
|
|
65
|
-
(0, jsx_runtime_1.jsxs)("div", { className: b(), onMouseUp: onMouseUp, children: [(0, jsx_runtime_1.jsx)("div", { className: b('body'), children: (0, jsx_runtime_1.jsx)(Panels_1.Panels, { left: (0, jsx_runtime_1.jsx)(Sidebar_1.Sidebar, { tabs: left, top:
|
|
65
|
+
(0, jsx_runtime_1.jsxs)("div", { className: b(), onMouseUp: onMouseUp, children: [(0, jsx_runtime_1.jsx)("div", { className: b('body'), children: (0, jsx_runtime_1.jsx)(Panels_1.Panels, { left: (0, jsx_runtime_1.jsx)(Sidebar_1.Sidebar, { tabs: left, top: slots.leftTop }), right: (0, jsx_runtime_1.jsx)(Sidebar_1.Sidebar, { tabs: right, top: [...(slots.rightTop || []), Source_1.default, ViewSwitches_1.default], defaultTab: "block-config" }), middle: (0, jsx_runtime_1.jsx)(MiddleScreen_1.default, { CustomTop: slots.middleTop }) }) }), (0, jsx_runtime_1.jsx)(BigOverlay_1.default, { className: b('overlay') })] }));
|
|
66
66
|
};
|
|
67
67
|
const EditorProvider = ({ initialUrl, disableUrlField, children }) => {
|
|
68
68
|
return ((0, jsx_runtime_1.jsx)(iframeContext_1.IframeProvider, { initialUrl: initialUrl, disableUrlField: disableUrlField, children: (0, jsx_runtime_1.jsx)(editorStore_1.MainEditorStoreProvider, { children: children }) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Editor.js","sourceRoot":"../../../../../src","sources":["editor-v2/containers/Editor/Editor.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,gEAAsE;AAEtE,8DAAsD;AACtD,iEAAyD;AACzD,qFAAgE;AAChE,2FAAsE;AACtE,oEAAkE;AAClE,wEAA2D;AAC3D,gEAAwD;AACxD,6GAA0E;AAC1E,0EAAkE;AAClE,0CAAwC;AACxC,yEAAsC;AACtC,2FAAwD;AAIxD,MAAM,CAAC,GAAG,IAAA,aAAQ,EAAC,QAAQ,CAAC,CAAC;AA8B7B,MAAM,kBAAkB,GAAG,CAAC,EAAC,
|
|
1
|
+
{"version":3,"file":"Editor.js","sourceRoot":"../../../../../src","sources":["editor-v2/containers/Editor/Editor.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {usePostMessageAPIListener} from '../../../common/postMessage';\nimport {PageContent} from '../../../models';\nimport {Panels} from '../../components/Panels/Panels';\nimport {Sidebar} from '../../components/Sidebar/Sidebar';\nimport BigOverlay from '../../containers/BigOverlay/BigOverlay';\nimport MiddleScreen from '../../containers/MiddleScreen/MiddleScreen';\nimport {MainEditorStoreProvider} from '../../context/editorStore';\nimport {IframeProvider} from '../../context/iframeContext';\nimport {useEditorTabs} from '../../hooks/useEditorTabs';\nimport useMainEditorInitialize from '../../hooks/useMainEditorInitialize';\nimport {useMainEditorStore} from '../../hooks/useMainEditorStore';\nimport {editorCn} from '../../utils/cn';\nimport Source from '../Source/Source';\nimport ViewSwitches from '../ViewSwitches/ViewSwitches';\n\nimport './Editor.scss';\n\nconst b = editorCn('editor');\n\ninterface SidebarTabComponent {\n id: string;\n title: string;\n component: React.ElementType;\n}\n\ninterface EditorSlots {\n middleTop?: React.ElementType;\n leftTop?: React.ElementType[];\n rightTop?: React.ElementType[];\n leftTabs?: SidebarTabComponent[];\n rightTabs?: SidebarTabComponent[];\n}\n\nexport interface EditorProviderProps {\n initialUrl: string;\n disableUrlField?: boolean;\n children: React.ReactNode;\n}\n\nexport interface EditorViewProps {\n onUpdate?: (pageContent: PageContent) => void;\n content?: PageContent;\n slots?: EditorSlots;\n}\n\ntype EditorProps = Omit<EditorProviderProps, 'children'> & EditorViewProps;\n\nconst EditorViewInternal = ({slots = {}, content}: EditorViewProps) => {\n const store = useMainEditorStore();\n const {manipulateOverlayMode, disableMode, undo, redo} = store;\n\n useMainEditorInitialize(content);\n\n usePostMessageAPIListener(\n 'ON_EDITOR_UNDO',\n () => {\n undo();\n },\n [undo],\n );\n usePostMessageAPIListener(\n 'ON_EDITOR_REDO',\n () => {\n redo();\n },\n [redo],\n );\n\n React.useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n if (!(e.metaKey || e.ctrlKey)) {\n return;\n }\n\n if (e.key.toLowerCase() !== 'z') {\n return;\n }\n\n const target = e.target as HTMLElement | null;\n if (target?.closest('input, textarea, select, [contenteditable=\"true\"]')) {\n return;\n }\n\n e.preventDefault();\n\n if (e.shiftKey) {\n redo();\n } else {\n undo();\n }\n };\n\n window.addEventListener('keydown', onKeyDown, true);\n\n return () => window.removeEventListener('keydown', onKeyDown, true);\n }, [redo, undo]);\n\n // Disable insert mode on any MouseUp event\n // Maybe should be attached to body\n const onMouseUp = React.useCallback(\n (e: React.MouseEvent) => {\n if (manipulateOverlayMode) {\n e.preventDefault();\n disableMode();\n }\n },\n [disableMode, manipulateOverlayMode],\n );\n const {left, right} = useEditorTabs(slots);\n\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div className={b()} onMouseUp={onMouseUp}>\n <div className={b('body')}>\n <Panels\n left={<Sidebar tabs={left} top={slots.leftTop} />}\n right={\n <Sidebar\n tabs={right}\n top={[...(slots.rightTop || []), Source, ViewSwitches]}\n defaultTab=\"block-config\"\n />\n }\n middle={<MiddleScreen CustomTop={slots.middleTop} />}\n />\n </div>\n <BigOverlay className={b('overlay')} />\n </div>\n );\n};\n\nexport const EditorProvider = ({initialUrl, disableUrlField, children}: EditorProviderProps) => {\n return (\n <IframeProvider initialUrl={initialUrl} disableUrlField={disableUrlField}>\n <MainEditorStoreProvider>{children}</MainEditorStoreProvider>\n </IframeProvider>\n );\n};\n\nexport const EditorView = (props: EditorViewProps) => <EditorViewInternal {...props} />;\n\nexport const Editor = (props: EditorProps) => {\n return (\n <EditorProvider initialUrl={props.initialUrl} disableUrlField={props.disableUrlField}>\n <EditorView {...props} />\n </EditorProvider>\n );\n};\n"]}
|
|
@@ -5,22 +5,22 @@ const React = tslib_1.__importStar(require("react"));
|
|
|
5
5
|
const postMessage_1 = require("../../common/postMessage.js");
|
|
6
6
|
const useMainEditorStore_1 = require("./useMainEditorStore.js");
|
|
7
7
|
const usePostMessageEvents_1 = require("./usePostMessageEvents.js");
|
|
8
|
-
const useMainEditorInitialize = (
|
|
8
|
+
const useMainEditorInitialize = (content) => {
|
|
9
9
|
const { requestPostMessage } = (0, usePostMessageEvents_1.usePostMessageEvents)();
|
|
10
10
|
const { initialize, setConfig, setContent } = (0, useMainEditorStore_1.useMainEditorStore)();
|
|
11
11
|
(0, postMessage_1.usePostMessageAPIListener)('ON_INIT', () => {
|
|
12
12
|
initialize();
|
|
13
13
|
requestPostMessage('GET_SUPPORTED_BLOCKS', {});
|
|
14
|
-
if (!
|
|
14
|
+
if (!content) {
|
|
15
15
|
requestPostMessage('GET_INITIAL_CONTENT', {});
|
|
16
16
|
}
|
|
17
17
|
}, [requestPostMessage]);
|
|
18
18
|
React.useEffect(() => {
|
|
19
|
-
if (
|
|
20
|
-
setContent(
|
|
19
|
+
if (content) {
|
|
20
|
+
setContent(content, true);
|
|
21
21
|
}
|
|
22
22
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
23
|
-
}, [
|
|
23
|
+
}, [content]);
|
|
24
24
|
(0, postMessage_1.usePostMessageAPIListener)('ON_INITIAL_CONTENT', (data) => {
|
|
25
25
|
setContent(data, true);
|
|
26
26
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMainEditorInitialize.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/useMainEditorInitialize.ts"],"names":[],"mappings":";;;AAAA,qDAA+B;AAE/B,6DAAmE;AAGnE,gEAAwD;AACxD,oEAA4D;AAE5D,MAAM,uBAAuB,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"useMainEditorInitialize.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/useMainEditorInitialize.ts"],"names":[],"mappings":";;;AAAA,qDAA+B;AAE/B,6DAAmE;AAGnE,gEAAwD;AACxD,oEAA4D;AAE5D,MAAM,uBAAuB,GAAG,CAAC,OAAqB,EAAE,EAAE;IACtD,MAAM,EAAC,kBAAkB,EAAC,GAAG,IAAA,2CAAoB,GAAE,CAAC;IACpD,MAAM,EAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAC,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAEjE,IAAA,uCAAyB,EACrB,SAAS,EACT,GAAG,EAAE;QACD,UAAU,EAAE,CAAC;QACb,kBAAkB,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;QAE/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,kBAAkB,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC;IACL,CAAC,EACD,CAAC,kBAAkB,CAAC,CACvB,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,OAAO,EAAE,CAAC;YACV,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,uDAAuD;IAC3D,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,IAAA,uCAAyB,EAAC,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE;QACrD,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,IAAA,uCAAyB,EAAC,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE;QACtD,SAAS,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,kBAAe,uBAAuB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {usePostMessageAPIListener} from '../../common/postMessage';\nimport {PageContent} from '../../models';\n\nimport {useMainEditorStore} from './useMainEditorStore';\nimport {usePostMessageEvents} from './usePostMessageEvents';\n\nconst useMainEditorInitialize = (content?: PageContent) => {\n const {requestPostMessage} = usePostMessageEvents();\n const {initialize, setConfig, setContent} = useMainEditorStore();\n\n usePostMessageAPIListener(\n 'ON_INIT',\n () => {\n initialize();\n requestPostMessage('GET_SUPPORTED_BLOCKS', {});\n\n if (!content) {\n requestPostMessage('GET_INITIAL_CONTENT', {});\n }\n },\n [requestPostMessage],\n );\n\n React.useEffect(() => {\n if (content) {\n setContent(content, true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [content]);\n\n usePostMessageAPIListener('ON_INITIAL_CONTENT', (data) => {\n setContent(data, true);\n });\n\n usePostMessageAPIListener('ON_SUPPORTED_BLOCKS', (data) => {\n setConfig(data);\n });\n};\n\nexport default useMainEditorInitialize;\n"]}
|
|
@@ -39,7 +39,7 @@ const usePCEditorInitializeEvents = ({ initialContent, setContent, blocks, globa
|
|
|
39
39
|
});
|
|
40
40
|
});
|
|
41
41
|
const onResize = React.useCallback(() => {
|
|
42
|
-
const height = document.
|
|
42
|
+
const height = document.body.scrollHeight;
|
|
43
43
|
(0, usePostMessageAPI_1.sendEventPostMessage)('ON_RESIZE', { height });
|
|
44
44
|
}, []);
|
|
45
45
|
React.useEffect(() => {
|
|
@@ -83,7 +83,7 @@ const usePCEditorInitializeEvents = ({ initialContent, setContent, blocks, globa
|
|
|
83
83
|
};
|
|
84
84
|
}, [onResize]);
|
|
85
85
|
React.useEffect(() => {
|
|
86
|
-
const height = document.
|
|
86
|
+
const height = document.body.scrollHeight;
|
|
87
87
|
(0, usePostMessageAPI_1.sendEventPostMessage)('ON_INIT', { height });
|
|
88
88
|
}, []);
|
|
89
89
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePCEditorInitializeEvents.js","sourceRoot":"../../../src","sources":["hooks/usePCEditorInitializeEvents.ts"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,4DAAuB;AAEvB,kDAAwD;AAMxD,4DAAoD;AACpD,8DAA4F;AAW5F,SAAS,cAAc,CAAC,QAAuB;IAC3C,OAAO,QAAQ,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAC,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACjF,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,IAAA,yBAAkB,EAAC,IAAI,CAAC,EAAE,QAAQ,EAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACP,CAAC;AAEM,MAAM,2BAA2B,GAAG,CAAC,EACxC,cAAc,EACd,UAAU,EACV,MAAM,EACN,MAAM,EACN,WAAW,EACX,QAAQ,GACe,EAAE,EAAE;IAC3B,MAAM,EAAC,WAAW,EAAE,OAAO,EAAC,GAAG,IAAA,mCAAgB,GAAE,CAAC;IAElD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,WAAW,EAAE,CAAC;YACd,UAAU,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;IACL,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;IAEvC,IAAA,qDAAiC,EAAC,qBAAqB,EAAE,GAAG,EAAE;QAC1D,IAAA,wCAAoB,EAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAA,qDAAiC,EAAC,sBAAsB,EAAE,GAAG,EAAE;QAC3D,IAAA,wCAAoB,EAAC,qBAAqB,EAAE;YACxC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC3B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,WAAW,EAAE,MAAM;oBACvB,CAAC,CAAC;wBACI,GAAG,KAAK,CAAC,MAAM;wBACf,MAAM,EAAE,CAAC,GAAG,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;qBAC5D;oBACH,CAAC,CAAC,KAAK,CAAC,MAAM;aACrB,CAAC,CAAC;YACH,SAAS,EAAE,EAAE;YACb,MAAM,EAAE,MAAM,IAAI,EAAE;SACvB,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"usePCEditorInitializeEvents.js","sourceRoot":"../../../src","sources":["hooks/usePCEditorInitializeEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport _ from 'lodash';\n\nimport {toSerializableRect} from '../common/types/rect';\nimport {BlockData} from '../constructor-items';\nimport {BlockRegistry} from '../context/blockRegistryContext';\nimport {Fields} from '../form-generator-v2/types';\nimport {PageContent} from '../models';\n\nimport {usePCEditorStore} from './usePCEditorStore';\nimport {sendEventPostMessage, useInternalPostMessageAPIListener} from './usePostMessageAPI';\n\ninterface UseEditorInitializeProps {\n initialContent: PageContent;\n setContent: (content: PageContent) => void;\n blocks: Array<BlockData>;\n global?: Fields;\n blockInputs?: Fields;\n registry: BlockRegistry | null;\n}\n\nfunction collectRectMap(registry: BlockRegistry) {\n return registry.getEntries().map(({path, element, dropZone}) => {\n const rect = element.getClientRects().item(0) ?? element.getBoundingClientRect();\n return {path, rect: toSerializableRect(rect), dropZone};\n });\n}\n\nexport const usePCEditorInitializeEvents = ({\n initialContent,\n setContent,\n blocks,\n global,\n blockInputs,\n registry,\n}: UseEditorInitializeProps) => {\n const {initialized, content} = usePCEditorStore();\n\n React.useEffect(() => {\n if (initialized) {\n setContent(content);\n }\n }, [content, initialized, setContent]);\n\n useInternalPostMessageAPIListener('GET_INITIAL_CONTENT', () => {\n sendEventPostMessage('ON_INITIAL_CONTENT', initialContent);\n });\n\n useInternalPostMessageAPIListener('GET_SUPPORTED_BLOCKS', () => {\n sendEventPostMessage('ON_SUPPORTED_BLOCKS', {\n blocks: blocks.map((block) => ({\n type: block.type,\n schema: blockInputs?.length\n ? {\n ...block.schema,\n inputs: [...blockInputs, ...(block.schema?.inputs || [])],\n }\n : block.schema,\n })),\n subBlocks: [],\n global: global || [],\n });\n });\n\n const onResize = React.useCallback(() => {\n const height = document.body.scrollHeight;\n sendEventPostMessage('ON_RESIZE', {height});\n }, []);\n\n React.useEffect(() => {\n if (!registry) {\n return undefined;\n }\n\n let frame: number | null = null;\n\n const sendRectMap = () => {\n frame = null;\n sendEventPostMessage('ON_UPDATE_RECT_MAP', {rects: collectRectMap(registry)});\n };\n\n const scheduleSend = () => {\n if (frame !== null) {\n return;\n }\n frame = requestAnimationFrame(sendRectMap);\n };\n\n const throttledSchedule = _.throttle(scheduleSend, 100, {leading: true, trailing: true});\n\n const unsubscribe = registry.subscribe(throttledSchedule);\n const observer = new ResizeObserver(throttledSchedule);\n observer.observe(document.body);\n\n // Initial push once registry is ready.\n throttledSchedule();\n\n return () => {\n throttledSchedule.cancel();\n unsubscribe();\n observer.disconnect();\n if (frame !== null) {\n cancelAnimationFrame(frame);\n }\n };\n }, [registry]);\n\n React.useEffect(() => {\n window.addEventListener('resize', onResize);\n const observer = new ResizeObserver(onResize);\n observer.observe(document.documentElement);\n observer.observe(document.body);\n\n return () => {\n window.removeEventListener('resize', onResize);\n observer.disconnect();\n };\n }, [onResize]);\n\n React.useEffect(() => {\n const height = document.body.scrollHeight;\n sendEventPostMessage('ON_INIT', {height});\n }, []);\n};\n"]}
|
|
@@ -7,7 +7,7 @@ const tslib_1 = require("tslib");
|
|
|
7
7
|
const React = tslib_1.__importStar(require("react"));
|
|
8
8
|
function sendEventPostMessage(action, data) {
|
|
9
9
|
const message = { action, data };
|
|
10
|
-
window.parent.postMessage(message);
|
|
10
|
+
window.parent.postMessage(message, '*');
|
|
11
11
|
}
|
|
12
12
|
function listenPostMessageActions(action, callback) {
|
|
13
13
|
const onMessage = (e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePostMessageAPI.js","sourceRoot":"../../../src","sources":["hooks/usePostMessageAPI.ts"],"names":[],"mappings":";;AAKA,oDAMC;AAED,4DAmBC;AAED,8EAOC;;AAzCD,qDAA+B;AAK/B,SAAgB,oBAAoB,CAChC,MAAS,EACT,IAA0B;IAE1B,MAAM,OAAO,GAAG,EAAC,MAAM,EAAE,IAAI,EAA6B,CAAC;IAC3D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"usePostMessageAPI.js","sourceRoot":"../../../src","sources":["hooks/usePostMessageAPI.ts"],"names":[],"mappings":";;AAKA,oDAMC;AAED,4DAmBC;AAED,8EAOC;;AAzCD,qDAA+B;AAK/B,SAAgB,oBAAoB,CAChC,MAAS,EACT,IAA0B;IAE1B,MAAM,OAAO,GAAG,EAAC,MAAM,EAAE,IAAI,EAA6B,CAAC;IAC3D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC5C,CAAC;AAED,SAAgB,wBAAwB,CACpC,MAAS,EACT,QAA+C;IAE/C,MAAM,SAAS,GAAG,CAAC,CAAe,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAgC,CAAC;QAEnD,IAAI,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACnD,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAE9C,OAAO,GAAG,EAAE;QACR,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC,CAAC;AACN,CAAC;AAED,SAAgB,iCAAiC,CAC7C,MAAS,EACT,QAA+C;IAE/C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,OAAO,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC3B,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {PostMessageAPIMessage} from '../common/types';\nimport {ActionMessageTypes, EventMessageTypes} from '../common/types/actions';\n\nexport function sendEventPostMessage<K extends keyof EventMessageTypes>(\n action: K,\n data: EventMessageTypes[K],\n) {\n const message = {action, data} as PostMessageAPIMessage<K>;\n window.parent.postMessage(message, '*');\n}\n\nexport function listenPostMessageActions<K extends keyof ActionMessageTypes>(\n action: K,\n callback: (data: ActionMessageTypes[K]) => void,\n) {\n const onMessage = (e: MessageEvent) => {\n const message = e.data as PostMessageAPIMessage<K>;\n\n if ('action' in message && message.action === action) {\n return callback(message.data);\n }\n\n return undefined;\n };\n\n window.addEventListener('message', onMessage);\n\n return () => {\n window.removeEventListener('message', onMessage);\n };\n}\n\nexport function useInternalPostMessageAPIListener<K extends keyof ActionMessageTypes>(\n action: K,\n callback: (data: ActionMessageTypes[K]) => void,\n) {\n React.useEffect(() => {\n return listenPostMessageActions(action, callback);\n }, [action, callback]);\n}\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const svg_1 = require("../../utils/svg.js");
|
|
4
|
+
exports.default = (0, svg_1.svgToDataUri)(`<svg width="100" height="50" viewBox="0 0 100 50" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
+
<rect width="100" height="50" rx="7.81395" fill="white"/>
|
|
6
|
+
<rect x="37" y="10.2906" width="26" height="29.4186" rx="3.34884" fill="#C0C8DB"/>
|
|
7
|
+
<rect x="37" y="10.2906" width="26" height="14.5116" rx="3.34884" fill="#262626"/>
|
|
8
|
+
<rect x="40.3488" y="28.593" width="19.3023" height="2" rx="0.55814" fill="#262626"/>
|
|
9
|
+
<rect x="40.3488" y="31.7094" width="9" height="2" rx="0.55814" fill="#262626"/>
|
|
10
|
+
</svg>`);
|
|
11
|
+
//# sourceMappingURL=icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon.js","sourceRoot":"../../../../src","sources":["sub-blocks/ImageCard/icon.ts"],"names":[],"mappings":";;AAAA,4CAA6C;AAE7C,kBAAe,IAAA,kBAAY,EACvB;;;;;;OAMG,CACN,CAAC","sourcesContent":["import {svgToDataUri} from '../../utils/svg';\n\nexport default svgToDataUri(\n `<svg width=\"100\" height=\"50\" viewBox=\"0 0 100 50\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<rect width=\"100\" height=\"50\" rx=\"7.81395\" fill=\"white\"/>\n<rect x=\"37\" y=\"10.2906\" width=\"26\" height=\"29.4186\" rx=\"3.34884\" fill=\"#C0C8DB\"/>\n<rect x=\"37\" y=\"10.2906\" width=\"26\" height=\"14.5116\" rx=\"3.34884\" fill=\"#262626\"/>\n<rect x=\"40.3488\" y=\"28.593\" width=\"19.3023\" height=\"2\" rx=\"0.55814\" fill=\"#262626\"/>\n<rect x=\"40.3488\" y=\"31.7094\" width=\"9\" height=\"2\" rx=\"0.55814\" fill=\"#262626\"/>\n</svg>`,\n);\n"]}
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const generateFormFieldsFromAjv_1 = require("../../form-generator-v2/utils/generateFormFieldsFromAjv.js");
|
|
5
5
|
const ImageCard_1 = tslib_1.__importDefault(require("./ImageCard.js"));
|
|
6
|
+
const icon_1 = tslib_1.__importDefault(require("./icon.js"));
|
|
6
7
|
const schema_1 = require("./schema.js");
|
|
7
|
-
const icon_svg_1 = tslib_1.__importDefault(require("./icon.svg"));
|
|
8
8
|
const ImageCardConfig = {
|
|
9
9
|
type: '@gravity-ui/page-constructor/image-card',
|
|
10
10
|
component: ImageCard_1.default,
|
|
@@ -17,7 +17,7 @@ const ImageCardConfig = {
|
|
|
17
17
|
title: 'Image Card',
|
|
18
18
|
text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
|
|
19
19
|
},
|
|
20
|
-
previewImg:
|
|
20
|
+
previewImg: icon_1.default,
|
|
21
21
|
},
|
|
22
22
|
};
|
|
23
23
|
exports.default = ImageCardConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["sub-blocks/ImageCard/index.tsx"],"names":[],"mappings":";;;AAGA,0GAAwG;AAExG,uEAAoC;AACpC,wCAAsD;AAEtD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["sub-blocks/ImageCard/index.tsx"],"names":[],"mappings":";;;AAGA,0GAAwG;AAExG,uEAAoC;AACpC,6DAA0B;AAC1B,wCAAsD;AAEtD,MAAM,eAAe,GAAc;IAC/B,IAAI,EAAE,yCAAyC;IAC/C,SAAS,EAAE,mBAAS;IACpB,MAAM,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,oCAAoC;QAC3C,sCAAsC;QACtC,MAAM,EAAE,IAAA,2DAA+B,EACnC,kBAAe,CAAC,YAAY,CAAkC,CACjE;QACD,OAAO,EAAE;YACL,KAAK,EAAE,YAAY;YACnB,IAAI,EAAE,6HAA6H;SACtI;QACD,UAAU,EAAE,cAAI;KACnB;CACJ,CAAC;AAEF,kBAAe,eAAe,CAAC","sourcesContent":["import {JSONSchemaType} from 'ajv';\n\nimport {BlockData} from '../../constructor-items';\nimport {generateFormFieldsFromAjvSchema} from '../../form-generator-v2/utils/generateFormFieldsFromAjv';\n\nimport ImageCard from './ImageCard';\nimport icon from './icon';\nimport {ImageCard as ImageCardSchema} from './schema';\n\nconst ImageCardConfig: BlockData = {\n type: '@gravity-ui/page-constructor/image-card',\n component: ImageCard,\n schema: {\n name: 'Image Card',\n group: '@gravity-ui/page-constructor/Cards',\n // TODO: change to custom block schema\n inputs: generateFormFieldsFromAjvSchema(\n ImageCardSchema['image-card'] as unknown as JSONSchemaType<{}>,\n ),\n default: {\n title: 'Image Card',\n text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',\n },\n previewImg: icon,\n },\n};\n\nexport default ImageCardConfig;\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const svg_1 = require("../../utils/svg.js");
|
|
4
|
+
exports.default = (0, svg_1.svgToDataUri)(`<svg width="100" height="50" viewBox="0 0 100 50" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
+
<rect width="100" height="50" rx="7.81395" fill="white"/>
|
|
6
|
+
<rect x="37" y="10.2906" width="26" height="29.4186" rx="3.34884" fill="#C0C8DB"/>
|
|
7
|
+
<rect x="37" y="10.2906" width="26" height="14.5116" rx="3.34884" fill="#262626"/>
|
|
8
|
+
<rect x="40.3488" y="28.593" width="19.3023" height="2" rx="0.55814" fill="#262626"/>
|
|
9
|
+
<rect x="40.3488" y="31.7094" width="9" height="2" rx="0.55814" fill="#262626"/>
|
|
10
|
+
</svg>`);
|
|
11
|
+
//# sourceMappingURL=icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon.js","sourceRoot":"../../../../src","sources":["sub-blocks/MediaCard/icon.ts"],"names":[],"mappings":";;AAAA,4CAA6C;AAE7C,kBAAe,IAAA,kBAAY,EACvB;;;;;;OAMG,CACN,CAAC","sourcesContent":["import {svgToDataUri} from '../../utils/svg';\n\nexport default svgToDataUri(\n `<svg width=\"100\" height=\"50\" viewBox=\"0 0 100 50\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<rect width=\"100\" height=\"50\" rx=\"7.81395\" fill=\"white\"/>\n<rect x=\"37\" y=\"10.2906\" width=\"26\" height=\"29.4186\" rx=\"3.34884\" fill=\"#C0C8DB\"/>\n<rect x=\"37\" y=\"10.2906\" width=\"26\" height=\"14.5116\" rx=\"3.34884\" fill=\"#262626\"/>\n<rect x=\"40.3488\" y=\"28.593\" width=\"19.3023\" height=\"2\" rx=\"0.55814\" fill=\"#262626\"/>\n<rect x=\"40.3488\" y=\"31.7094\" width=\"9\" height=\"2\" rx=\"0.55814\" fill=\"#262626\"/>\n</svg>`,\n);\n"]}
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const generateFormFieldsFromAjv_1 = require("../../form-generator-v2/utils/generateFormFieldsFromAjv.js");
|
|
5
5
|
const MediaCard_1 = tslib_1.__importDefault(require("./MediaCard.js"));
|
|
6
|
+
const icon_1 = tslib_1.__importDefault(require("./icon.js"));
|
|
6
7
|
const schema_1 = require("./schema.js");
|
|
7
|
-
const icon_svg_1 = tslib_1.__importDefault(require("./icon.svg"));
|
|
8
8
|
const MediaCardConfig = {
|
|
9
9
|
type: '@gravity-ui/page-constructor/media-card',
|
|
10
10
|
component: MediaCard_1.default,
|
|
@@ -20,7 +20,7 @@ const MediaCardConfig = {
|
|
|
20
20
|
},
|
|
21
21
|
image: 'https://storage.yandexcloud.net/yc-www-community-images/event_ecaf1ef1-bc3a-40fa-adef-827b0959e6c3.jpg',
|
|
22
22
|
},
|
|
23
|
-
previewImg:
|
|
23
|
+
previewImg: icon_1.default,
|
|
24
24
|
},
|
|
25
25
|
};
|
|
26
26
|
exports.default = MediaCardConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["sub-blocks/MediaCard/index.tsx"],"names":[],"mappings":";;;AAGA,0GAAwG;AAExG,uEAAoC;AACpC,wCAA2D;AAE3D,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["sub-blocks/MediaCard/index.tsx"],"names":[],"mappings":";;;AAGA,0GAAwG;AAExG,uEAAoC;AACpC,6DAA0B;AAC1B,wCAA2D;AAE3D,MAAM,eAAe,GAAc;IAC/B,IAAI,EAAE,yCAAyC;IAC/C,SAAS,EAAE,mBAAS;IACpB,MAAM,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,oCAAoC;QAC3C,sCAAsC;QACtC,MAAM,EAAE,IAAA,2DAA+B,EACnC,uBAAe,CAAC,YAAY,CAAkC,CACjE;QACD,OAAO,EAAE;YACL,OAAO,EAAE;gBACL,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,6HAA6H;aACtI;YACD,KAAK,EAAE,wGAAwG;SAClH;QACD,UAAU,EAAE,cAAI;KACnB;CACJ,CAAC;AAEF,kBAAe,eAAe,CAAC","sourcesContent":["import {JSONSchemaType} from 'ajv';\n\nimport {BlockData} from '../../constructor-items';\nimport {generateFormFieldsFromAjvSchema} from '../../form-generator-v2/utils/generateFormFieldsFromAjv';\n\nimport MediaCard from './MediaCard';\nimport icon from './icon';\nimport {MediaCardBlock as MediaCardSchema} from './schema';\n\nconst MediaCardConfig: BlockData = {\n type: '@gravity-ui/page-constructor/media-card',\n component: MediaCard,\n schema: {\n name: 'Media Card',\n group: '@gravity-ui/page-constructor/Cards',\n // TODO: change to custom block schema\n inputs: generateFormFieldsFromAjvSchema(\n MediaCardSchema['media-card'] as unknown as JSONSchemaType<{}>,\n ),\n default: {\n content: {\n title: 'Media Card',\n text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',\n },\n image: 'https://storage.yandexcloud.net/yc-www-community-images/event_ecaf1ef1-bc3a-40fa-adef-827b0959e6c3.jpg',\n },\n previewImg: icon,\n },\n};\n\nexport default MediaCardConfig;\n"]}
|
|
@@ -8,5 +8,6 @@ export * from "./url.js";
|
|
|
8
8
|
export * from "./theme.js";
|
|
9
9
|
export * from "./icons.js";
|
|
10
10
|
export * from "./navigation.js";
|
|
11
|
+
export * from "./svg.js";
|
|
11
12
|
export type { HubspotEventData, HubspotEventHandlers, HubspotEventName } from "./hubspot.js";
|
|
12
13
|
export { isHubspotEventData } from "./hubspot.js";
|
package/build/cjs/utils/index.js
CHANGED
|
@@ -12,6 +12,7 @@ tslib_1.__exportStar(require("./url.js"), exports);
|
|
|
12
12
|
tslib_1.__exportStar(require("./theme.js"), exports);
|
|
13
13
|
tslib_1.__exportStar(require("./icons.js"), exports);
|
|
14
14
|
tslib_1.__exportStar(require("./navigation.js"), exports);
|
|
15
|
+
tslib_1.__exportStar(require("./svg.js"), exports);
|
|
15
16
|
var hubspot_1 = require("./hubspot.js");
|
|
16
17
|
Object.defineProperty(exports, "isHubspotEventData", { enumerable: true, get: function () { return hubspot_1.isHubspotEventData; } });
|
|
17
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["utils/index.ts"],"names":[],"mappings":";;;;AAAA,sDAAyB;AACzB,yDAA4B;AAC5B,0DAA6B;AAC7B,sDAAyB;AACzB,mDAAsB;AACtB,kDAAqB;AACrB,mDAAsB;AACtB,qDAAwB;AACxB,qDAAwB;AACxB,0DAA6B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["utils/index.ts"],"names":[],"mappings":";;;;AAAA,sDAAyB;AACzB,yDAA4B;AAC5B,0DAA6B;AAC7B,sDAAyB;AACzB,mDAAsB;AACtB,kDAAqB;AACrB,mDAAsB;AACtB,qDAAwB;AACxB,qDAAwB;AACxB,0DAA6B;AAC7B,mDAAsB;AAGtB,wCAA6C;AAArC,6GAAA,kBAAkB,OAAA","sourcesContent":["export * from './common';\nexport * from './analytics';\nexport * from './breakpoint';\nexport * from './blocks';\nexport * from './url';\nexport * from './cn';\nexport * from './url';\nexport * from './theme';\nexport * from './icons';\nexport * from './navigation';\nexport * from './svg';\n\nexport type {HubspotEventData, HubspotEventHandlers, HubspotEventName} from './hubspot';\nexport {isHubspotEventData} from './hubspot';\n"]}
|
package/build/cjs/utils/svg.d.ts
CHANGED