@gravity-ui/page-constructor 4.51.2-alpha.0 → 4.53.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/README.md +3 -5
- package/build/cjs/blocks/Banner/schema.d.ts +264 -0
- package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +2 -2
- package/build/cjs/blocks/FilterBlock/FilterBlock.js +2 -2
- package/build/cjs/blocks/FilterBlock/i18n/index.d.ts +2 -1
- package/build/cjs/blocks/FilterBlock/i18n/index.js +3 -4
- package/build/cjs/blocks/Map/schema.d.ts +88 -0
- package/build/cjs/blocks/Media/schema.d.ts +176 -0
- package/build/cjs/blocks/Security/i18n/index.d.ts +2 -1
- package/build/cjs/blocks/Security/i18n/index.js +3 -4
- package/build/cjs/blocks/Share/Share.js +4 -4
- package/build/cjs/blocks/Share/i18n/index.d.ts +2 -1
- package/build/cjs/blocks/Share/i18n/index.js +3 -4
- package/build/cjs/blocks/Slider/Arrow/Arrow.js +2 -2
- package/build/cjs/blocks/Slider/i18n/index.d.ts +2 -1
- package/build/cjs/blocks/Slider/i18n/index.js +3 -4
- package/build/cjs/components/Button/Button.js +7 -4
- package/build/cjs/components/Button/i18n/index.d.ts +2 -1
- package/build/cjs/components/Button/i18n/index.js +3 -4
- package/build/cjs/components/CardBase/CardBase.d.ts +3 -1
- package/build/cjs/components/CardBase/CardBase.js +4 -1
- package/build/cjs/components/Control/Control.js +2 -2
- package/build/cjs/components/Control/i18n/index.d.ts +2 -1
- package/build/cjs/components/Control/i18n/index.js +3 -4
- package/build/cjs/components/FullscreenImage/FullscreenImage.js +3 -3
- package/build/cjs/components/FullscreenImage/i18n/index.d.ts +2 -1
- package/build/cjs/components/FullscreenImage/i18n/index.js +3 -4
- package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +6 -3
- package/build/cjs/components/Link/Link.js +4 -1
- package/build/cjs/components/Map/GoogleMap.js +2 -2
- package/build/cjs/components/Map/YMap/YandexMap.js +2 -2
- package/build/cjs/components/Map/YMap/i18n/index.d.ts +2 -1
- package/build/cjs/components/Map/YMap/i18n/index.js +3 -4
- package/build/cjs/components/Media/DataLens/DataLens.js +2 -2
- package/build/cjs/components/Media/DataLens/i18n/index.d.ts +2 -1
- package/build/cjs/components/Media/DataLens/i18n/index.js +3 -4
- package/build/cjs/components/Media/Iframe/Iframe.js +2 -2
- package/build/cjs/components/Media/Iframe/i18n/index.d.ts +2 -1
- package/build/cjs/components/Media/Iframe/i18n/index.js +3 -4
- package/build/cjs/components/Media/Media.js +3 -1
- package/build/cjs/components/Media/Video/Video.js +3 -2
- package/build/cjs/components/OverflowScroller/OverflowScroller.js +2 -2
- package/build/cjs/components/OverflowScroller/i18n/index.d.ts +2 -1
- package/build/cjs/components/OverflowScroller/i18n/index.js +3 -4
- package/build/cjs/components/ReactPlayer/CustomBarControls.js +3 -3
- package/build/cjs/components/ReactPlayer/ReactPlayer.js +38 -6
- package/build/cjs/components/ReactPlayer/i18n/index.d.ts +2 -1
- package/build/cjs/components/ReactPlayer/i18n/index.js +3 -4
- package/build/cjs/components/ReactPlayer/utils/youtube.d.ts +2 -0
- package/build/cjs/components/ReactPlayer/utils/youtube.js +7 -0
- package/build/cjs/components/UnpublishedLabel/UnpublishedLabel.js +2 -2
- package/build/cjs/components/UnpublishedLabel/i18n/index.d.ts +2 -1
- package/build/cjs/components/UnpublishedLabel/i18n/index.js +3 -4
- package/build/cjs/components/VideoBlock/VideoBlock.js +2 -2
- package/build/cjs/components/VideoBlock/i18n/index.d.ts +2 -1
- package/build/cjs/components/VideoBlock/i18n/index.js +3 -4
- package/build/cjs/components/YandexForm/YandexForm.js +13 -2
- package/build/cjs/constructor-items.d.ts +1 -0
- package/build/cjs/constructor-items.js +1 -0
- package/build/cjs/containers/Loadable/Loadable.js +2 -2
- package/build/cjs/containers/Loadable/i18n/index.d.ts +2 -1
- package/build/cjs/containers/Loadable/i18n/index.js +3 -4
- package/build/cjs/containers/PageConstructor/Provider.d.ts +2 -0
- package/build/cjs/containers/PageConstructor/Provider.js +3 -1
- package/build/cjs/context/localeContext/localeContext.d.ts +2 -2
- package/build/cjs/context/localeContext/localeContext.js +2 -2
- package/build/cjs/context/metrikaContext/index.d.ts +1 -0
- package/build/cjs/context/metrikaContext/index.js +4 -0
- package/build/cjs/context/metrikaContext/metrikaContext.d.ts +13 -0
- package/build/cjs/context/metrikaContext/metrikaContext.js +6 -0
- package/build/cjs/editor/components/ControlPanel/ControlPanel.js +3 -3
- package/build/cjs/editor/components/ControlPanel/i18n/en.json +1 -2
- package/build/cjs/editor/components/ControlPanel/i18n/index.d.ts +2 -1
- package/build/cjs/editor/components/ControlPanel/i18n/index.js +3 -4
- package/build/cjs/editor/components/ControlPanel/i18n/ru.json +1 -2
- package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js +3 -3
- package/build/cjs/editor/components/ErrorBoundary/i18n/index.d.ts +2 -1
- package/build/cjs/editor/components/ErrorBoundary/i18n/index.js +3 -4
- package/build/cjs/editor/components/NotFoundBlock/NotFoundBlock.js +2 -2
- package/build/cjs/editor/components/NotFoundBlock/i18n/index.d.ts +2 -1
- package/build/cjs/editor/components/NotFoundBlock/i18n/index.js +3 -4
- package/build/cjs/hooks/useAnalytics.d.ts +2 -2
- package/build/cjs/hooks/useMetrika.d.ts +13 -1
- package/build/cjs/hooks/useMetrika.js +41 -0
- package/build/cjs/i18n.d.ts +2 -0
- package/build/cjs/i18n.js +12 -0
- package/build/cjs/models/common.d.ts +53 -2
- package/build/cjs/models/common.js +25 -1
- package/build/cjs/models/constructor-items/common.d.ts +29 -2
- package/build/cjs/models/constructor-items/sub-blocks.d.ts +20 -4
- package/build/cjs/models/constructor-items/sub-blocks.js +7 -1
- package/build/cjs/models/guards.d.ts +2 -0
- package/build/cjs/models/guards.js +5 -1
- package/build/cjs/schema/constants.d.ts +252 -0
- package/build/cjs/schema/constants.js +2 -1
- package/build/cjs/schema/validators/common.d.ts +188 -0
- package/build/cjs/schema/validators/common.js +31 -0
- package/build/cjs/schema/validators/index.d.ts +2 -0
- package/build/cjs/schema/validators/index.js +2 -0
- package/build/cjs/schema/validators/pixel.d.ts +57 -0
- package/build/cjs/schema/validators/pixel.js +63 -0
- package/build/cjs/schema/validators/sub-blocks.d.ts +1 -0
- package/build/cjs/schema/validators/sub-blocks.js +1 -0
- package/build/cjs/sub-blocks/BasicCard/BasicCard.js +2 -2
- package/build/cjs/sub-blocks/HubspotForm/index.js +6 -1
- package/build/cjs/sub-blocks/ImageCard/ImageCard.css +59 -0
- package/build/cjs/sub-blocks/ImageCard/ImageCard.d.ts +3 -0
- package/build/cjs/sub-blocks/ImageCard/ImageCard.js +21 -0
- package/build/cjs/sub-blocks/ImageCard/schema.d.ts +78 -0
- package/build/cjs/sub-blocks/ImageCard/schema.js +24 -0
- package/build/cjs/sub-blocks/LayoutItem/utils.d.ts +15 -1
- package/build/cjs/sub-blocks/PriceCard/schema.d.ts +88 -0
- package/build/cjs/sub-blocks/index.d.ts +1 -0
- package/build/cjs/sub-blocks/index.js +3 -1
- package/build/cjs/text-transform/common.d.ts +4 -4
- package/build/cjs/text-transform/transformers.d.ts +2 -2
- package/build/cjs/text-transform/utils.d.ts +6 -6
- package/build/cjs/text-transform/utils.js +5 -5
- package/build/cjs/utils/configure.d.ts +12 -0
- package/build/cjs/utils/configure.js +26 -0
- package/build/cjs/utils/index.d.ts +1 -0
- package/build/cjs/utils/index.js +4 -1
- package/build/cjs/utils/registerKeyset.d.ts +5 -0
- package/build/cjs/utils/registerKeyset.js +9 -0
- package/build/esm/blocks/Banner/schema.d.ts +264 -0
- package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +2 -2
- package/build/esm/blocks/FilterBlock/FilterBlock.js +1 -1
- package/build/esm/blocks/FilterBlock/i18n/index.d.ts +2 -1
- package/build/esm/blocks/FilterBlock/i18n/index.js +3 -3
- package/build/esm/blocks/Map/schema.d.ts +88 -0
- package/build/esm/blocks/Media/schema.d.ts +176 -0
- package/build/esm/blocks/Security/i18n/index.d.ts +2 -1
- package/build/esm/blocks/Security/i18n/index.js +3 -3
- package/build/esm/blocks/Share/Share.js +1 -1
- package/build/esm/blocks/Share/i18n/index.d.ts +2 -1
- package/build/esm/blocks/Share/i18n/index.js +3 -3
- package/build/esm/blocks/Slider/Arrow/Arrow.js +1 -1
- package/build/esm/blocks/Slider/i18n/index.d.ts +2 -1
- package/build/esm/blocks/Slider/i18n/index.js +3 -3
- package/build/esm/components/Button/Button.js +6 -3
- package/build/esm/components/Button/i18n/index.d.ts +2 -1
- package/build/esm/components/Button/i18n/index.js +3 -3
- package/build/esm/components/CardBase/CardBase.d.ts +3 -1
- package/build/esm/components/CardBase/CardBase.js +4 -1
- package/build/esm/components/Control/Control.js +1 -1
- package/build/esm/components/Control/i18n/index.d.ts +2 -1
- package/build/esm/components/Control/i18n/index.js +3 -3
- package/build/esm/components/FullscreenImage/FullscreenImage.js +1 -1
- package/build/esm/components/FullscreenImage/i18n/index.d.ts +2 -1
- package/build/esm/components/FullscreenImage/i18n/index.js +3 -3
- package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +6 -3
- package/build/esm/components/Link/Link.js +4 -1
- package/build/esm/components/Map/GoogleMap.js +1 -1
- package/build/esm/components/Map/YMap/YandexMap.js +1 -1
- package/build/esm/components/Map/YMap/i18n/index.d.ts +2 -1
- package/build/esm/components/Map/YMap/i18n/index.js +3 -3
- package/build/esm/components/Media/DataLens/DataLens.js +1 -1
- package/build/esm/components/Media/DataLens/i18n/index.d.ts +2 -1
- package/build/esm/components/Media/DataLens/i18n/index.js +3 -3
- package/build/esm/components/Media/Iframe/Iframe.js +1 -1
- package/build/esm/components/Media/Iframe/i18n/index.d.ts +2 -1
- package/build/esm/components/Media/Iframe/i18n/index.js +3 -3
- package/build/esm/components/Media/Media.js +3 -1
- package/build/esm/components/Media/Video/Video.js +3 -2
- package/build/esm/components/OverflowScroller/OverflowScroller.js +1 -1
- package/build/esm/components/OverflowScroller/i18n/index.d.ts +2 -1
- package/build/esm/components/OverflowScroller/i18n/index.js +3 -3
- package/build/esm/components/ReactPlayer/CustomBarControls.js +1 -1
- package/build/esm/components/ReactPlayer/ReactPlayer.js +37 -5
- package/build/esm/components/ReactPlayer/i18n/index.d.ts +2 -1
- package/build/esm/components/ReactPlayer/i18n/index.js +3 -3
- package/build/esm/components/ReactPlayer/utils/youtube.d.ts +2 -0
- package/build/esm/components/ReactPlayer/utils/youtube.js +3 -0
- package/build/esm/components/UnpublishedLabel/UnpublishedLabel.js +1 -1
- package/build/esm/components/UnpublishedLabel/i18n/index.d.ts +2 -1
- package/build/esm/components/UnpublishedLabel/i18n/index.js +3 -3
- package/build/esm/components/VideoBlock/VideoBlock.js +1 -1
- package/build/esm/components/VideoBlock/i18n/index.d.ts +2 -1
- package/build/esm/components/VideoBlock/i18n/index.js +3 -3
- package/build/esm/components/YandexForm/YandexForm.js +13 -2
- package/build/esm/constructor-items.d.ts +1 -0
- package/build/esm/constructor-items.js +2 -1
- package/build/esm/containers/Loadable/Loadable.js +1 -1
- package/build/esm/containers/Loadable/i18n/index.d.ts +2 -1
- package/build/esm/containers/Loadable/i18n/index.js +3 -3
- package/build/esm/containers/PageConstructor/Provider.d.ts +2 -0
- package/build/esm/containers/PageConstructor/Provider.js +3 -1
- package/build/esm/context/localeContext/localeContext.d.ts +2 -2
- package/build/esm/context/localeContext/localeContext.js +1 -1
- package/build/esm/context/metrikaContext/index.d.ts +1 -0
- package/build/esm/context/metrikaContext/index.js +1 -0
- package/build/esm/context/metrikaContext/metrikaContext.d.ts +13 -0
- package/build/esm/context/metrikaContext/metrikaContext.js +2 -0
- package/build/esm/editor/components/ControlPanel/ControlPanel.js +2 -2
- package/build/esm/editor/components/ControlPanel/i18n/en.json +1 -2
- package/build/esm/editor/components/ControlPanel/i18n/index.d.ts +2 -1
- package/build/esm/editor/components/ControlPanel/i18n/index.js +3 -3
- package/build/esm/editor/components/ControlPanel/i18n/ru.json +1 -2
- package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js +1 -1
- package/build/esm/editor/components/ErrorBoundary/i18n/index.d.ts +2 -1
- package/build/esm/editor/components/ErrorBoundary/i18n/index.js +3 -3
- package/build/esm/editor/components/NotFoundBlock/NotFoundBlock.js +1 -1
- package/build/esm/editor/components/NotFoundBlock/i18n/index.d.ts +2 -1
- package/build/esm/editor/components/NotFoundBlock/i18n/index.js +3 -3
- package/build/esm/hooks/useAnalytics.d.ts +2 -2
- package/build/esm/hooks/useMetrika.d.ts +13 -1
- package/build/esm/hooks/useMetrika.js +38 -1
- package/build/esm/i18n.d.ts +2 -0
- package/build/esm/i18n.js +9 -0
- package/build/esm/models/common.d.ts +53 -2
- package/build/esm/models/common.js +24 -0
- package/build/esm/models/constructor-items/common.d.ts +29 -2
- package/build/esm/models/constructor-items/sub-blocks.d.ts +20 -4
- package/build/esm/models/constructor-items/sub-blocks.js +6 -0
- package/build/esm/models/guards.d.ts +2 -0
- package/build/esm/models/guards.js +3 -0
- package/build/esm/schema/constants.d.ts +252 -0
- package/build/esm/schema/constants.js +3 -2
- package/build/esm/schema/validators/common.d.ts +188 -0
- package/build/esm/schema/validators/common.js +31 -0
- package/build/esm/schema/validators/index.d.ts +2 -0
- package/build/esm/schema/validators/index.js +2 -0
- package/build/esm/schema/validators/pixel.d.ts +57 -0
- package/build/esm/schema/validators/pixel.js +60 -0
- package/build/esm/schema/validators/sub-blocks.d.ts +1 -0
- package/build/esm/schema/validators/sub-blocks.js +1 -0
- package/build/esm/sub-blocks/BasicCard/BasicCard.js +2 -2
- package/build/esm/sub-blocks/HubspotForm/index.js +6 -1
- package/build/esm/sub-blocks/ImageCard/ImageCard.css +59 -0
- package/build/esm/sub-blocks/ImageCard/ImageCard.d.ts +4 -0
- package/build/esm/sub-blocks/ImageCard/ImageCard.js +19 -0
- package/build/esm/sub-blocks/ImageCard/schema.d.ts +78 -0
- package/build/esm/sub-blocks/ImageCard/schema.js +20 -0
- package/build/esm/sub-blocks/LayoutItem/utils.d.ts +15 -1
- package/build/esm/sub-blocks/PriceCard/schema.d.ts +88 -0
- package/build/esm/sub-blocks/index.d.ts +1 -0
- package/build/esm/sub-blocks/index.js +1 -0
- package/build/esm/text-transform/common.d.ts +4 -4
- package/build/esm/text-transform/transformers.d.ts +2 -2
- package/build/esm/text-transform/utils.d.ts +6 -6
- package/build/esm/text-transform/utils.js +1 -1
- package/build/esm/utils/configure.d.ts +12 -0
- package/build/esm/utils/configure.js +20 -0
- package/build/esm/utils/index.d.ts +1 -0
- package/build/esm/utils/index.js +1 -0
- package/build/esm/utils/registerKeyset.d.ts +5 -0
- package/build/esm/utils/registerKeyset.js +5 -0
- package/package.json +2 -1
- package/server/models/common.d.ts +53 -2
- package/server/models/common.js +25 -1
- package/server/models/constructor-items/common.d.ts +29 -2
- package/server/models/constructor-items/sub-blocks.d.ts +20 -4
- package/server/models/constructor-items/sub-blocks.js +7 -1
- package/server/models/guards.d.ts +2 -0
- package/server/models/guards.js +5 -1
- package/server/text-transform/common.d.ts +4 -4
- package/server/text-transform/transformers.d.ts +2 -2
- package/server/text-transform/utils.d.ts +6 -6
- package/server/text-transform/utils.js +5 -5
- package/server/utils/configure.d.ts +12 -0
- package/server/utils/configure.js +26 -0
- package/server/utils/index.d.ts +1 -0
- package/server/utils/index.js +4 -1
- package/widget/index.js +1 -1
|
@@ -76,6 +76,94 @@ export declare const PriceCardBlock: {
|
|
|
76
76
|
optionName: string;
|
|
77
77
|
})[];
|
|
78
78
|
};
|
|
79
|
+
metrikaGoals: {
|
|
80
|
+
oneOf: ({
|
|
81
|
+
type: string;
|
|
82
|
+
optionName: string;
|
|
83
|
+
items?: undefined;
|
|
84
|
+
} | {
|
|
85
|
+
type: string;
|
|
86
|
+
items: {
|
|
87
|
+
type: string;
|
|
88
|
+
additionalProperties?: undefined;
|
|
89
|
+
required?: undefined;
|
|
90
|
+
properties?: undefined;
|
|
91
|
+
};
|
|
92
|
+
optionName: string;
|
|
93
|
+
} | {
|
|
94
|
+
type: string;
|
|
95
|
+
items: {
|
|
96
|
+
type: string;
|
|
97
|
+
additionalProperties: boolean;
|
|
98
|
+
required: string[];
|
|
99
|
+
properties: {
|
|
100
|
+
name: {
|
|
101
|
+
type: string;
|
|
102
|
+
};
|
|
103
|
+
isCrossSite: {
|
|
104
|
+
type: string;
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
};
|
|
108
|
+
optionName: string;
|
|
109
|
+
})[];
|
|
110
|
+
};
|
|
111
|
+
pixelEvents: {
|
|
112
|
+
type: string;
|
|
113
|
+
items: {
|
|
114
|
+
type: string;
|
|
115
|
+
required: string[];
|
|
116
|
+
additionalProperties: boolean;
|
|
117
|
+
properties: {
|
|
118
|
+
name: {
|
|
119
|
+
type: string;
|
|
120
|
+
enum: import("../..").PixelEventType[];
|
|
121
|
+
};
|
|
122
|
+
data: {};
|
|
123
|
+
};
|
|
124
|
+
select: {
|
|
125
|
+
$data: string;
|
|
126
|
+
};
|
|
127
|
+
selectCases: {
|
|
128
|
+
SubmitApplication: {
|
|
129
|
+
additionalProperties: boolean;
|
|
130
|
+
properties: {
|
|
131
|
+
name: {};
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
Contact: {
|
|
135
|
+
additionalProperties: boolean;
|
|
136
|
+
properties: {
|
|
137
|
+
name: {};
|
|
138
|
+
};
|
|
139
|
+
};
|
|
140
|
+
Lead: {
|
|
141
|
+
additionalProperties: boolean;
|
|
142
|
+
properties: {
|
|
143
|
+
name: {};
|
|
144
|
+
data: {
|
|
145
|
+
type: string;
|
|
146
|
+
additionalProperties: boolean;
|
|
147
|
+
properties: {
|
|
148
|
+
content_category: {
|
|
149
|
+
type: string;
|
|
150
|
+
};
|
|
151
|
+
content_name: {
|
|
152
|
+
type: string;
|
|
153
|
+
};
|
|
154
|
+
currency: {
|
|
155
|
+
type: string;
|
|
156
|
+
};
|
|
157
|
+
value: {
|
|
158
|
+
type: string;
|
|
159
|
+
};
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
};
|
|
163
|
+
};
|
|
164
|
+
};
|
|
165
|
+
};
|
|
166
|
+
};
|
|
79
167
|
analyticsEvents: {
|
|
80
168
|
oneOf: ({
|
|
81
169
|
optionName: string;
|
|
@@ -9,3 +9,4 @@ export { default as BasicCard } from './BasicCard/BasicCard';
|
|
|
9
9
|
export { default as Content } from './Content/Content';
|
|
10
10
|
export { default as HubspotForm } from './HubspotForm';
|
|
11
11
|
export { default as PriceCard } from './PriceCard/PriceCard';
|
|
12
|
+
export { default as ImageCard } from './ImageCard/ImageCard';
|
|
@@ -9,3 +9,4 @@ export { default as BasicCard } from './BasicCard/BasicCard';
|
|
|
9
9
|
export { default as Content } from './Content/Content';
|
|
10
10
|
export { default as HubspotForm } from './HubspotForm';
|
|
11
11
|
export { default as PriceCard } from './PriceCard/PriceCard';
|
|
12
|
+
export { default as ImageCard } from './ImageCard/ImageCard';
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { MarkdownItPluginCb } from '@doc-tools/transform/lib/plugins/typings';
|
|
2
|
-
import { Lang } from '
|
|
2
|
+
import { Lang } from '../utils/configure';
|
|
3
3
|
export type ComplexItem = {
|
|
4
4
|
[key: string]: string;
|
|
5
5
|
};
|
|
6
6
|
export type Item = string | null | ComplexItem;
|
|
7
7
|
export type Transformer = (text: string) => string;
|
|
8
|
-
export type TransformerRaw = (lang:
|
|
8
|
+
export type TransformerRaw = (lang: Lang, content: string, options: {
|
|
9
9
|
plugins: MarkdownItPluginCb[];
|
|
10
10
|
}) => string;
|
|
11
11
|
export type Parser<T = any> = (transformer: Transformer, block: T) => T;
|
|
12
12
|
export declare const createItemsParser: (fields: string[]) => (transformer: Transformer, items: Item[]) => (string | {
|
|
13
13
|
[x: string]: string;
|
|
14
14
|
} | null)[];
|
|
15
|
-
export declare function yfmTransformer(lang:
|
|
15
|
+
export declare function yfmTransformer(lang: Lang, content: string, options?: {
|
|
16
16
|
plugins?: MarkdownItPluginCb[];
|
|
17
17
|
}): string;
|
|
18
|
-
export declare function typografTransformer(lang:
|
|
18
|
+
export declare function typografTransformer(lang: Lang, content: string): string;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { MarkdownItPluginCb } from '@doc-tools/transform/lib/plugins/typings';
|
|
2
|
-
import { Lang } from '@gravity-ui/uikit';
|
|
3
2
|
import { ConstructorBlock } from '../models/constructor';
|
|
3
|
+
import { Lang } from '../utils/configure';
|
|
4
4
|
export type ContentVariables = Record<string, string>;
|
|
5
5
|
export type ContentTransformerProps = {
|
|
6
6
|
content: {
|
|
7
7
|
blocks?: ConstructorBlock[];
|
|
8
8
|
};
|
|
9
9
|
options: {
|
|
10
|
-
lang:
|
|
10
|
+
lang: Lang;
|
|
11
11
|
customConfig?: {};
|
|
12
12
|
vars?: ContentVariables;
|
|
13
13
|
plugins?: MarkdownItPluginCb[];
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { Options, Output } from '@doc-tools/transform';
|
|
2
|
-
import { Lang } from '@gravity-ui/uikit';
|
|
3
2
|
import sanitize from 'sanitize-html';
|
|
3
|
+
import { Lang } from '../utils/configure';
|
|
4
4
|
import AddRuleOptions = typograf.AddRuleOptions;
|
|
5
5
|
export declare enum TransformType {
|
|
6
6
|
Text = "text",
|
|
7
7
|
Html = "html"
|
|
8
8
|
}
|
|
9
9
|
interface TransformOptions extends Options {
|
|
10
|
-
lang:
|
|
10
|
+
lang: Lang;
|
|
11
11
|
}
|
|
12
12
|
export declare const DEFAULT_ALLOWED_TAGS: string[];
|
|
13
13
|
export declare const typografConfig: {
|
|
@@ -16,16 +16,16 @@ export declare const typografConfig: {
|
|
|
16
16
|
};
|
|
17
17
|
export declare const sanitizeStripOptions: sanitize.IOptions;
|
|
18
18
|
export declare function addTypografRules(options: AddRuleOptions[]): void;
|
|
19
|
-
export declare function typograf(text: string, lang?:
|
|
19
|
+
export declare function typograf(text: string, lang?: Lang): string;
|
|
20
20
|
export declare function sanitizeHtml(html: string, options?: sanitize.IOptions): string;
|
|
21
|
-
export declare function typografToHTML(text: string, lang:
|
|
22
|
-
export declare function typografToText(text: string, lang:
|
|
21
|
+
export declare function typografToHTML(text: string, lang: Lang, allowedTags?: string[]): string;
|
|
22
|
+
export declare function typografToText(text: string, lang: Lang): string;
|
|
23
23
|
export declare const transformMarkdown: (input: string, options: TransformOptions) => Output['result'];
|
|
24
24
|
export declare function fullTransform(input: string, { lang, ...options }: TransformOptions): Output['result'];
|
|
25
25
|
export interface TypografEntityParams {
|
|
26
26
|
entity: Record<string, string>;
|
|
27
27
|
fields: string[];
|
|
28
|
-
lang:
|
|
28
|
+
lang: Lang;
|
|
29
29
|
transformType: TransformType;
|
|
30
30
|
}
|
|
31
31
|
export declare function typografEntity({ entity, fields, lang, transformType, }: TypografEntityParams): Record<string, string>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { __rest } from "tslib";
|
|
2
2
|
import transformYFM from '@doc-tools/transform';
|
|
3
|
-
import { Lang } from '@gravity-ui/uikit';
|
|
4
3
|
import sanitize from 'sanitize-html';
|
|
5
4
|
import Typograf from 'typograf';
|
|
5
|
+
import { Lang } from '../utils/configure';
|
|
6
6
|
export var TransformType;
|
|
7
7
|
(function (TransformType) {
|
|
8
8
|
TransformType["Text"] = "text";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare enum Lang {
|
|
2
|
+
Ru = "ru",
|
|
3
|
+
En = "en"
|
|
4
|
+
}
|
|
5
|
+
interface Config {
|
|
6
|
+
lang?: Lang;
|
|
7
|
+
}
|
|
8
|
+
type Subscriber = (config: Config) => void;
|
|
9
|
+
export declare const configure: (newConfig: Config) => void;
|
|
10
|
+
export declare const subscribeConfigure: (sub: Subscriber) => () => void;
|
|
11
|
+
export declare const getConfig: () => Config;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export var Lang;
|
|
2
|
+
(function (Lang) {
|
|
3
|
+
Lang["Ru"] = "ru";
|
|
4
|
+
Lang["En"] = "en";
|
|
5
|
+
})(Lang || (Lang = {}));
|
|
6
|
+
let subs = [];
|
|
7
|
+
const config = {};
|
|
8
|
+
export const configure = (newConfig) => {
|
|
9
|
+
Object.assign(config, newConfig);
|
|
10
|
+
subs.forEach((sub) => {
|
|
11
|
+
sub(config);
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
export const subscribeConfigure = (sub) => {
|
|
15
|
+
subs.push(sub);
|
|
16
|
+
return () => {
|
|
17
|
+
subs = subs.filter((item) => item !== sub);
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
export const getConfig = () => config;
|
|
@@ -5,5 +5,6 @@ export * from './url';
|
|
|
5
5
|
export * from './cn';
|
|
6
6
|
export * from './url';
|
|
7
7
|
export * from './theme';
|
|
8
|
+
export { Lang, configure } from './configure';
|
|
8
9
|
export type { HubspotEventData, HubspotEventHandlers, HubspotEventName } from './hubspot';
|
|
9
10
|
export { isHubspotEventData } from './hubspot';
|
package/build/esm/utils/index.js
CHANGED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { i18n } from '../i18n';
|
|
2
|
+
import { Lang } from './configure';
|
|
3
|
+
type KeysData = Parameters<typeof i18n.registerKeyset>[2];
|
|
4
|
+
export declare function registerKeyset<T extends KeysData>(data: Record<Lang, T>, keysetName: string): (key: string, params?: import("@gravity-ui/i18n").Params | undefined) => string;
|
|
5
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gravity-ui/page-constructor",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.53.0",
|
|
4
4
|
"description": "Gravity UI Page Constructor",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -144,6 +144,7 @@
|
|
|
144
144
|
"@types/sanitize-html": "2.6.1",
|
|
145
145
|
"@types/uuid": "^9.0.0",
|
|
146
146
|
"@types/webpack-env": "^1.18.1",
|
|
147
|
+
"@types/youtube-player": "^5.5.11",
|
|
147
148
|
"autoprefixer": "^10.4.14",
|
|
148
149
|
"babel-loader": "^8.3.0",
|
|
149
150
|
"css-loader": "^5.2.7",
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { MetrikaGoal } from './';
|
|
2
3
|
export interface Refable<T> {
|
|
3
4
|
ref?: React.Ref<T>;
|
|
4
5
|
}
|
|
@@ -7,9 +8,59 @@ export declare enum Theme {
|
|
|
7
8
|
Dark = "dark"
|
|
8
9
|
}
|
|
9
10
|
export declare const themeNames: Record<Theme, string>;
|
|
11
|
+
/**
|
|
12
|
+
* @deprecated Pixel will be deleted
|
|
13
|
+
*/
|
|
14
|
+
type PixelCommand = 'track' | 'trackCustom';
|
|
15
|
+
/**
|
|
16
|
+
* @deprecated Pixel will be deleted
|
|
17
|
+
*/
|
|
18
|
+
export interface PixelEvent {
|
|
19
|
+
command: PixelCommand;
|
|
20
|
+
event: PixelEventType | string;
|
|
21
|
+
data?: Object;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated Pixel will be deleted from package
|
|
25
|
+
*/
|
|
26
|
+
export declare enum PixelEventType {
|
|
27
|
+
AddPaymentInfo = "AddPaymentInfo",
|
|
28
|
+
AddToCart = "AddToCart",
|
|
29
|
+
AddToWishlist = "AddToWishlist",
|
|
30
|
+
CompleteRegistration = "CompleteRegistration",
|
|
31
|
+
Contact = "Contact",
|
|
32
|
+
CustomizeProduct = "CustomizeProduct",
|
|
33
|
+
Donate = "Donate",
|
|
34
|
+
FindLocation = "FindLocation",
|
|
35
|
+
InitiateCheckout = "InitiateCheckout",
|
|
36
|
+
Lead = "Lead",
|
|
37
|
+
PageView = "PageView",
|
|
38
|
+
Purchase = "Purchase",
|
|
39
|
+
Schedule = "Schedule",
|
|
40
|
+
Search = "Search",
|
|
41
|
+
StartTrial = "StartTrial",
|
|
42
|
+
SubmitApplication = "SubmitApplication",
|
|
43
|
+
Subscribe = "Subscribe",
|
|
44
|
+
ViewContent = "ViewContent"
|
|
45
|
+
}
|
|
10
46
|
export type Modifiers = {
|
|
11
47
|
[name: string]: string | boolean | undefined;
|
|
12
48
|
};
|
|
49
|
+
/**
|
|
50
|
+
* @deprecated Pixel will be deleted
|
|
51
|
+
*/
|
|
52
|
+
export interface Pixel<TEvent = string> {
|
|
53
|
+
trackStandard: (event: TEvent, data?: Object) => void;
|
|
54
|
+
trackCustom: (event: string, data?: Object) => void;
|
|
55
|
+
track: (trackEvents: string | string[] | PixelEvent[] | PixelEvent) => void;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* @deprecated Metrika will be deleted
|
|
59
|
+
*/
|
|
60
|
+
export interface Metrika {
|
|
61
|
+
reachGoal: (counterName: string, ...args: any) => void;
|
|
62
|
+
reachGoals: (goals: MetrikaGoal, counterName?: string) => void;
|
|
63
|
+
}
|
|
13
64
|
export interface ClassNameProps {
|
|
14
65
|
className?: string;
|
|
15
66
|
}
|
|
@@ -46,7 +97,7 @@ export type AnalyticsEvent<T = {}> = T & {
|
|
|
46
97
|
context?: string;
|
|
47
98
|
target?: string;
|
|
48
99
|
};
|
|
49
|
-
export type AnalyticsEventsProp = AnalyticsEvent | AnalyticsEvent[];
|
|
50
100
|
export interface AnalyticsEventsBase {
|
|
51
|
-
analyticsEvents?:
|
|
101
|
+
analyticsEvents?: AnalyticsEvent | AnalyticsEvent[];
|
|
52
102
|
}
|
|
103
|
+
export {};
|
package/server/models/common.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DefaultEventNames = exports.PredefinedEventTypes = exports.themeNames = exports.Theme = void 0;
|
|
3
|
+
exports.DefaultEventNames = exports.PredefinedEventTypes = exports.PixelEventType = exports.themeNames = exports.Theme = void 0;
|
|
4
4
|
var Theme;
|
|
5
5
|
(function (Theme) {
|
|
6
6
|
Theme["Light"] = "light";
|
|
@@ -10,6 +10,30 @@ exports.themeNames = {
|
|
|
10
10
|
[Theme.Light]: 'Light',
|
|
11
11
|
[Theme.Dark]: 'Dark',
|
|
12
12
|
};
|
|
13
|
+
/**
|
|
14
|
+
* @deprecated Pixel will be deleted from package
|
|
15
|
+
*/
|
|
16
|
+
var PixelEventType;
|
|
17
|
+
(function (PixelEventType) {
|
|
18
|
+
PixelEventType["AddPaymentInfo"] = "AddPaymentInfo";
|
|
19
|
+
PixelEventType["AddToCart"] = "AddToCart";
|
|
20
|
+
PixelEventType["AddToWishlist"] = "AddToWishlist";
|
|
21
|
+
PixelEventType["CompleteRegistration"] = "CompleteRegistration";
|
|
22
|
+
PixelEventType["Contact"] = "Contact";
|
|
23
|
+
PixelEventType["CustomizeProduct"] = "CustomizeProduct";
|
|
24
|
+
PixelEventType["Donate"] = "Donate";
|
|
25
|
+
PixelEventType["FindLocation"] = "FindLocation";
|
|
26
|
+
PixelEventType["InitiateCheckout"] = "InitiateCheckout";
|
|
27
|
+
PixelEventType["Lead"] = "Lead";
|
|
28
|
+
PixelEventType["PageView"] = "PageView";
|
|
29
|
+
PixelEventType["Purchase"] = "Purchase";
|
|
30
|
+
PixelEventType["Schedule"] = "Schedule";
|
|
31
|
+
PixelEventType["Search"] = "Search";
|
|
32
|
+
PixelEventType["StartTrial"] = "StartTrial";
|
|
33
|
+
PixelEventType["SubmitApplication"] = "SubmitApplication";
|
|
34
|
+
PixelEventType["Subscribe"] = "Subscribe";
|
|
35
|
+
PixelEventType["ViewContent"] = "ViewContent";
|
|
36
|
+
})(PixelEventType = exports.PixelEventType || (exports.PixelEventType = {}));
|
|
13
37
|
var PredefinedEventTypes;
|
|
14
38
|
(function (PredefinedEventTypes) {
|
|
15
39
|
PredefinedEventTypes["Default"] = "default-event";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { CSSProperties, HTMLProps, ReactNode } from 'react';
|
|
2
2
|
import { ButtonView, ButtonProps as UikitButtonProps } from '@gravity-ui/uikit';
|
|
3
3
|
import { ThemeSupporting } from '../../utils';
|
|
4
|
-
import { AnalyticsEventsBase,
|
|
4
|
+
import { AnalyticsEventsBase, ClassNameProps, PixelEvent, PixelEventType, QAProps } from '../common';
|
|
5
5
|
export declare enum AuthorType {
|
|
6
6
|
Column = "column",
|
|
7
7
|
Line = "line"
|
|
@@ -62,6 +62,7 @@ export type ContentSize = 's' | 'l';
|
|
|
62
62
|
export type ContentTextSize = 's' | 'm' | 'l';
|
|
63
63
|
export type ContentTheme = 'default' | 'dark' | 'light';
|
|
64
64
|
export type FileLinkType = 'vertical' | 'horizontal';
|
|
65
|
+
export type ImageCardMargins = 's' | 'm';
|
|
65
66
|
export interface Themable {
|
|
66
67
|
theme?: TextTheme;
|
|
67
68
|
}
|
|
@@ -124,6 +125,7 @@ export interface MediaVideoProps extends AnalyticsEventsBase {
|
|
|
124
125
|
playButton?: PlayButtonProps;
|
|
125
126
|
controls?: MediaVideoControlsType;
|
|
126
127
|
customControlsOptions?: CustomControlsOptions;
|
|
128
|
+
metrika?: MetrikaVideo;
|
|
127
129
|
ariaLabel?: string;
|
|
128
130
|
}
|
|
129
131
|
export interface LinkProps extends AnalyticsEventsBase, Stylable, Tabbable {
|
|
@@ -135,6 +137,8 @@ export interface LinkProps extends AnalyticsEventsBase, Stylable, Tabbable {
|
|
|
135
137
|
colorTheme?: TextTheme;
|
|
136
138
|
arrow?: boolean;
|
|
137
139
|
target?: string;
|
|
140
|
+
metrikaGoals?: MetrikaGoal;
|
|
141
|
+
pixelEvents?: ButtonPixel;
|
|
138
142
|
extraProps?: HTMLProps<HTMLAnchorElement>;
|
|
139
143
|
}
|
|
140
144
|
export interface FileLinkProps extends ClassNameProps, Tabbable {
|
|
@@ -155,6 +159,8 @@ export interface ButtonProps extends AnalyticsEventsBase, Pick<UikitButtonProps,
|
|
|
155
159
|
primary?: boolean;
|
|
156
160
|
theme?: ButtonTheme;
|
|
157
161
|
img?: ButtonImageProps | string;
|
|
162
|
+
metrikaGoals?: MetrikaGoal;
|
|
163
|
+
pixelEvents?: ButtonPixel;
|
|
158
164
|
target?: string;
|
|
159
165
|
}
|
|
160
166
|
export type ButtonImagePosition = 'left' | 'right';
|
|
@@ -178,6 +184,7 @@ export interface MediaComponentVideoProps extends AnalyticsEventsBase {
|
|
|
178
184
|
video: MediaVideoProps;
|
|
179
185
|
height?: number;
|
|
180
186
|
ratio?: number;
|
|
187
|
+
metrika?: MetrikaVideo;
|
|
181
188
|
previewImg?: string;
|
|
182
189
|
}
|
|
183
190
|
export interface MediaComponentYoutubeProps {
|
|
@@ -231,6 +238,23 @@ export interface YMapMarkerLabel {
|
|
|
231
238
|
}
|
|
232
239
|
export type MapProps = GMapProps | YMapProps;
|
|
233
240
|
export type ThemedMediaProps = ThemeSupporting<MediaProps>;
|
|
241
|
+
export interface NewMetrikaGoal {
|
|
242
|
+
name: string;
|
|
243
|
+
isCrossSite?: boolean;
|
|
244
|
+
counterName?: string;
|
|
245
|
+
params?: Record<string, string>;
|
|
246
|
+
}
|
|
247
|
+
export type MetrikaGoal = string | string[] | NewMetrikaGoal[];
|
|
248
|
+
export interface MetrikaVideo {
|
|
249
|
+
counterName?: string;
|
|
250
|
+
play?: MetrikaGoal;
|
|
251
|
+
stop?: MetrikaGoal;
|
|
252
|
+
}
|
|
253
|
+
export interface ButtonPixelEvent {
|
|
254
|
+
name: PixelEventType;
|
|
255
|
+
data?: Object;
|
|
256
|
+
}
|
|
257
|
+
export type ButtonPixel = ButtonPixelEvent[];
|
|
234
258
|
export interface DataLensObjectProps {
|
|
235
259
|
id: string;
|
|
236
260
|
theme: 'dark' | 'light';
|
|
@@ -255,7 +279,8 @@ export interface HeaderBreadCrumbsProps extends ClassNameProps {
|
|
|
255
279
|
text: ReactNode;
|
|
256
280
|
}[];
|
|
257
281
|
theme?: TextTheme;
|
|
258
|
-
|
|
282
|
+
metrikaGoals?: MetrikaGoal;
|
|
283
|
+
pixelEvents?: ButtonPixel;
|
|
259
284
|
}
|
|
260
285
|
export interface TitleItemProps extends Justifyable, TitleItemBaseProps {
|
|
261
286
|
navTitle?: string;
|
|
@@ -344,6 +369,8 @@ export interface YandexFormProps extends AnalyticsEventsBase {
|
|
|
344
369
|
};
|
|
345
370
|
onSubmit?: () => void;
|
|
346
371
|
onLoad?: () => void;
|
|
372
|
+
metrikaGoals?: string | string[];
|
|
373
|
+
pixelEvents?: string | string[] | PixelEvent | PixelEvent[];
|
|
347
374
|
}
|
|
348
375
|
export interface WithBorder {
|
|
349
376
|
border?: MediaBorder;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ClassNameProps, QuoteType } from '../../models';
|
|
2
2
|
import { ThemeSupporting } from '../../utils';
|
|
3
3
|
import { HubspotEventData, HubspotEventHandlers } from '../../utils/hubspot';
|
|
4
|
-
import { AnalyticsEventsBase } from '../common';
|
|
4
|
+
import { AnalyticsEventsBase, PixelEvent } from '../common';
|
|
5
5
|
import { ContentBlockProps } from './blocks';
|
|
6
|
-
import { AuthorItem, ButtonProps, CardBaseProps, ContentTheme, DividerSize, ImageObjectProps, ImageProps, LinkProps, MediaProps, MediaView, PriceDetailedProps, TextTheme, Themable, ThemedImage } from './common';
|
|
6
|
+
import { AuthorItem, ButtonPixel, ButtonProps, CardBaseProps, ContentTheme, DividerSize, ImageCardMargins, ImageObjectProps, ImageProps, LinkProps, MediaProps, MediaView, PriceDetailedProps, TextTheme, Themable, ThemedImage } from './common';
|
|
7
7
|
export declare enum SubBlockType {
|
|
8
8
|
Divider = "divider",
|
|
9
9
|
Quote = "quote",
|
|
@@ -22,7 +22,8 @@ export declare enum SubBlockType {
|
|
|
22
22
|
* @deprecated Will be removed, use BasicCard instead
|
|
23
23
|
*/
|
|
24
24
|
Card = "card",
|
|
25
|
-
PriceCard = "price-card"
|
|
25
|
+
PriceCard = "price-card",
|
|
26
|
+
ImageCard = "image-card"
|
|
26
27
|
}
|
|
27
28
|
export declare enum IconPosition {
|
|
28
29
|
Top = "top",
|
|
@@ -35,6 +36,10 @@ export interface PositionedIcon {
|
|
|
35
36
|
export interface IconWrapperProps {
|
|
36
37
|
icon?: PositionedIcon;
|
|
37
38
|
}
|
|
39
|
+
export declare enum ImageCardDirection {
|
|
40
|
+
Direct = "direct",
|
|
41
|
+
Reverse = "reverse"
|
|
42
|
+
}
|
|
38
43
|
export declare const SubBlockTypes: SubBlockType[];
|
|
39
44
|
export interface DividerProps {
|
|
40
45
|
size?: DividerSize;
|
|
@@ -65,6 +70,7 @@ export interface HubspotFormProps extends HubspotEventHandlers, AnalyticsEventsB
|
|
|
65
70
|
* To use this handler for component that is rendered in iframe, set up useLoopBackHubspotEvents hook on top level frame
|
|
66
71
|
*/
|
|
67
72
|
onLoad?: (arg: HubspotEventData) => void;
|
|
73
|
+
pixelEvents?: string | string[] | PixelEvent | PixelEvent[] | ButtonPixel;
|
|
68
74
|
hubspotEvents?: string[];
|
|
69
75
|
createDOMElement?: boolean;
|
|
70
76
|
}
|
|
@@ -136,6 +142,13 @@ export interface LayoutItemProps extends ClassNameProps, AnalyticsEventsBase {
|
|
|
136
142
|
fullscreen?: boolean;
|
|
137
143
|
icon?: PositionedIcon;
|
|
138
144
|
}
|
|
145
|
+
export interface ImageCardProps extends CardBaseProps, Pick<ContentBlockProps, 'title' | 'text'> {
|
|
146
|
+
image: ImageProps;
|
|
147
|
+
enableImageBorderRadius?: boolean;
|
|
148
|
+
margins?: ImageCardMargins;
|
|
149
|
+
direction?: ImageCardDirection;
|
|
150
|
+
backgroundColor?: string;
|
|
151
|
+
}
|
|
139
152
|
export type DividerModel = {
|
|
140
153
|
type: SubBlockType.Divider;
|
|
141
154
|
} & DividerProps;
|
|
@@ -166,5 +179,8 @@ export type BasicCardModel = {
|
|
|
166
179
|
export type PriceCardModel = {
|
|
167
180
|
type: SubBlockType.PriceCard;
|
|
168
181
|
} & PriceCardProps;
|
|
169
|
-
export type
|
|
182
|
+
export type ImageCardModel = {
|
|
183
|
+
type: SubBlockType.ImageCard;
|
|
184
|
+
} & ImageCardProps;
|
|
185
|
+
export type SubBlockModels = DividerModel | QuoteModel | PriceDetailedModel | MediaCardModel | BackgroundCardModel | HubspotFormModel | BannerCardModel | BasicCardModel | PriceCardModel | LayoutItemModel | ImageCardModel;
|
|
170
186
|
export type SubBlock = SubBlockModels;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SubBlockTypes = exports.IconPosition = exports.SubBlockType = void 0;
|
|
3
|
+
exports.SubBlockTypes = exports.ImageCardDirection = exports.IconPosition = exports.SubBlockType = void 0;
|
|
4
4
|
var SubBlockType;
|
|
5
5
|
(function (SubBlockType) {
|
|
6
6
|
SubBlockType["Divider"] = "divider";
|
|
@@ -21,10 +21,16 @@ var SubBlockType;
|
|
|
21
21
|
*/
|
|
22
22
|
SubBlockType["Card"] = "card";
|
|
23
23
|
SubBlockType["PriceCard"] = "price-card";
|
|
24
|
+
SubBlockType["ImageCard"] = "image-card";
|
|
24
25
|
})(SubBlockType = exports.SubBlockType || (exports.SubBlockType = {}));
|
|
25
26
|
var IconPosition;
|
|
26
27
|
(function (IconPosition) {
|
|
27
28
|
IconPosition["Top"] = "top";
|
|
28
29
|
IconPosition["Left"] = "left";
|
|
29
30
|
})(IconPosition = exports.IconPosition || (exports.IconPosition = {}));
|
|
31
|
+
var ImageCardDirection;
|
|
32
|
+
(function (ImageCardDirection) {
|
|
33
|
+
ImageCardDirection["Direct"] = "direct";
|
|
34
|
+
ImageCardDirection["Reverse"] = "reverse";
|
|
35
|
+
})(ImageCardDirection = exports.ImageCardDirection || (exports.ImageCardDirection = {}));
|
|
30
36
|
exports.SubBlockTypes = Object.values(SubBlockType);
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { Block, ConstructorItem, FormBlockData, FormBlockHubspotData, FormBlockYandexData } from './';
|
|
2
|
+
import { MetrikaGoal, NewMetrikaGoal } from './index';
|
|
2
3
|
export declare function isBlock(block: ConstructorItem): block is Block;
|
|
4
|
+
export declare function isNewMetrikaFormat(metrika: MetrikaGoal): metrika is NewMetrikaGoal[];
|
|
3
5
|
export declare function isYandexDataForm(data: FormBlockData): data is FormBlockYandexData;
|
|
4
6
|
export declare function isHubspotDataForm(data: FormBlockData): data is FormBlockHubspotData;
|
package/server/models/guards.js
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isHubspotDataForm = exports.isYandexDataForm = exports.isBlock = void 0;
|
|
3
|
+
exports.isHubspotDataForm = exports.isYandexDataForm = exports.isNewMetrikaFormat = exports.isBlock = void 0;
|
|
4
4
|
const _1 = require("./");
|
|
5
5
|
function isBlock(block) {
|
|
6
6
|
return block.type in _1.BlockTypes;
|
|
7
7
|
}
|
|
8
8
|
exports.isBlock = isBlock;
|
|
9
|
+
function isNewMetrikaFormat(metrika) {
|
|
10
|
+
return Boolean(Array.isArray(metrika) && metrika.length && typeof metrika[0] === 'object');
|
|
11
|
+
}
|
|
12
|
+
exports.isNewMetrikaFormat = isNewMetrikaFormat;
|
|
9
13
|
function isYandexDataForm(data) {
|
|
10
14
|
return Boolean(data.yandex);
|
|
11
15
|
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { MarkdownItPluginCb } from '@doc-tools/transform/lib/plugins/typings';
|
|
2
|
-
import { Lang } from '
|
|
2
|
+
import { Lang } from '../utils/configure';
|
|
3
3
|
export type ComplexItem = {
|
|
4
4
|
[key: string]: string;
|
|
5
5
|
};
|
|
6
6
|
export type Item = string | null | ComplexItem;
|
|
7
7
|
export type Transformer = (text: string) => string;
|
|
8
|
-
export type TransformerRaw = (lang:
|
|
8
|
+
export type TransformerRaw = (lang: Lang, content: string, options: {
|
|
9
9
|
plugins: MarkdownItPluginCb[];
|
|
10
10
|
}) => string;
|
|
11
11
|
export type Parser<T = any> = (transformer: Transformer, block: T) => T;
|
|
12
12
|
export declare const createItemsParser: (fields: string[]) => (transformer: Transformer, items: Item[]) => (string | {
|
|
13
13
|
[x: string]: string;
|
|
14
14
|
} | null)[];
|
|
15
|
-
export declare function yfmTransformer(lang:
|
|
15
|
+
export declare function yfmTransformer(lang: Lang, content: string, options?: {
|
|
16
16
|
plugins?: MarkdownItPluginCb[];
|
|
17
17
|
}): string;
|
|
18
|
-
export declare function typografTransformer(lang:
|
|
18
|
+
export declare function typografTransformer(lang: Lang, content: string): string;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { MarkdownItPluginCb } from '@doc-tools/transform/lib/plugins/typings';
|
|
2
|
-
import { Lang } from '@gravity-ui/uikit';
|
|
3
2
|
import { ConstructorBlock } from '../models/constructor';
|
|
3
|
+
import { Lang } from '../utils/configure';
|
|
4
4
|
export type ContentVariables = Record<string, string>;
|
|
5
5
|
export type ContentTransformerProps = {
|
|
6
6
|
content: {
|
|
7
7
|
blocks?: ConstructorBlock[];
|
|
8
8
|
};
|
|
9
9
|
options: {
|
|
10
|
-
lang:
|
|
10
|
+
lang: Lang;
|
|
11
11
|
customConfig?: {};
|
|
12
12
|
vars?: ContentVariables;
|
|
13
13
|
plugins?: MarkdownItPluginCb[];
|