@gravity-ui/page-constructor 3.0.0 → 3.1.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.
Files changed (35) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +15 -0
  3. package/build/cjs/blocks/Header/schema.d.ts +234 -0
  4. package/build/cjs/blocks/HeaderSlider/schema.d.ts +78 -0
  5. package/build/cjs/blocks/Media/schema.d.ts +156 -0
  6. package/build/cjs/blocks/PromoFeaturesBlock/schema.d.ts +78 -0
  7. package/build/cjs/blocks/Slider/Slider.js +1 -1
  8. package/build/cjs/blocks/Tabs/schema.d.ts +78 -0
  9. package/build/cjs/components/Media/Media.js +1 -1
  10. package/build/cjs/components/VideoBlock/VideoBlock.d.ts +2 -1
  11. package/build/cjs/components/VideoBlock/VideoBlock.js +6 -2
  12. package/build/cjs/models/common.d.ts +2 -1
  13. package/build/cjs/models/common.js +1 -0
  14. package/build/cjs/schema/validators/common.d.ts +78 -0
  15. package/build/cjs/schema/validators/common.js +3 -0
  16. package/build/cjs/sub-blocks/LayoutItem/schema.d.ts +78 -0
  17. package/build/cjs/sub-blocks/MediaCard/schema.d.ts +78 -0
  18. package/build/esm/blocks/Header/schema.d.ts +234 -0
  19. package/build/esm/blocks/HeaderSlider/schema.d.ts +78 -0
  20. package/build/esm/blocks/Media/schema.d.ts +156 -0
  21. package/build/esm/blocks/PromoFeaturesBlock/schema.d.ts +78 -0
  22. package/build/esm/blocks/Slider/Slider.js +2 -2
  23. package/build/esm/blocks/Tabs/schema.d.ts +78 -0
  24. package/build/esm/components/Media/Media.js +1 -1
  25. package/build/esm/components/VideoBlock/VideoBlock.d.ts +2 -1
  26. package/build/esm/components/VideoBlock/VideoBlock.js +6 -2
  27. package/build/esm/models/common.d.ts +2 -1
  28. package/build/esm/models/common.js +1 -0
  29. package/build/esm/schema/validators/common.d.ts +78 -0
  30. package/build/esm/schema/validators/common.js +3 -0
  31. package/build/esm/sub-blocks/LayoutItem/schema.d.ts +78 -0
  32. package/build/esm/sub-blocks/MediaCard/schema.d.ts +78 -0
  33. package/package.json +1 -1
  34. package/server/models/common.d.ts +2 -1
  35. package/server/models/common.js +1 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.1.0](https://github.com/gravity-ui/page-constructor/compare/v3.0.0...v3.1.0) (2023-06-05)
4
+
5
+
6
+ ### Features
7
+
8
+ * add analytics to video block ([#376](https://github.com/gravity-ui/page-constructor/issues/376)) ([85510cc](https://github.com/gravity-ui/page-constructor/commit/85510cc45475c8cf12561eed0e7a5b04fc14af5f))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * rerende slider chidldren on their update ([#380](https://github.com/gravity-ui/page-constructor/issues/380)) ([65e3168](https://github.com/gravity-ui/page-constructor/commit/65e31689d1817a34de094bb383b667672878d9ff))
14
+
3
15
  ## [3.0.0](https://github.com/gravity-ui/page-constructor/compare/v2.22.2...v3.0.0) (2023-06-05)
4
16
 
5
17
 
package/README.md CHANGED
@@ -339,3 +339,18 @@ Release-As: 3.0.0-beta.0' --allow-empty
339
339
 
340
340
  4. Release please robot will create a new PR to the branch `beta` with updated CHANGELOG.md and bump version of the package
341
341
  5. You can repeat it as many as you want. When you ready to release the latest major version without beta tag, you have to create PR from branch `beta` to branch `main`. Notice that it is normal that your package version will be with beta tag. Robot knows that and change it properly. `3.0.0-beta.0` will become `3.0.0`
342
+
343
+ ### Release flow for previous major-versions
344
+
345
+ If you want to release a new version in previous major after commit it to the main, please do the following:
346
+
347
+ 1. Update necessary branch, the previous major release branch names are:
348
+ 1. `version-1.x.x/fixes` - for major 1.x.x
349
+ 2. `version-2.x.x` - for major 2.x.x
350
+ 2. Checkout a new branch from the previous major release branch
351
+ 3. Cherry-pick your commit from the branch `main`
352
+ 4. Create PR, get an approval and merge into the previous major release branch
353
+ 5. Squash and merge your PR (It is important to release a new version with Github-Actions)
354
+ 6. Wait until robot creates a PR with a new version of the package and information about your changes in CHANGELOG.md. You can see the process on [the Actions tab](https://github.com/gravity-ui/page-constructor/actions).
355
+ 7. Check your changes in CHANGELOG.md and approve robot's PR.
356
+ 8. Squash and merge PR. You can see release process on [the Actions tab](https://github.com/gravity-ui/page-constructor/actions).
@@ -140,6 +140,84 @@ export declare const HeaderBackgroundProps: {
140
140
  fullscreen: {
141
141
  type: string;
142
142
  };
143
+ analyticsEvents: {
144
+ anyOf: ({
145
+ type: string;
146
+ additionalProperties: {
147
+ type: string;
148
+ };
149
+ required: string[];
150
+ properties: {
151
+ name: {
152
+ type: string;
153
+ };
154
+ type: {
155
+ type: string;
156
+ };
157
+ counters: {
158
+ type: string;
159
+ additionalProperties: boolean;
160
+ required: never[];
161
+ properties: {
162
+ include: {
163
+ type: string;
164
+ items: {
165
+ type: string;
166
+ };
167
+ };
168
+ exclude: {
169
+ type: string;
170
+ items: {
171
+ type: string;
172
+ };
173
+ };
174
+ };
175
+ };
176
+ context: {
177
+ type: string;
178
+ };
179
+ };
180
+ } | {
181
+ type: string;
182
+ items: {
183
+ type: string;
184
+ additionalProperties: {
185
+ type: string;
186
+ };
187
+ required: string[];
188
+ properties: {
189
+ name: {
190
+ type: string;
191
+ };
192
+ type: {
193
+ type: string;
194
+ };
195
+ counters: {
196
+ type: string;
197
+ additionalProperties: boolean;
198
+ required: never[];
199
+ properties: {
200
+ include: {
201
+ type: string;
202
+ items: {
203
+ type: string;
204
+ };
205
+ };
206
+ exclude: {
207
+ type: string;
208
+ items: {
209
+ type: string;
210
+ };
211
+ };
212
+ };
213
+ };
214
+ context: {
215
+ type: string;
216
+ };
217
+ };
218
+ };
219
+ })[];
220
+ };
143
221
  };
144
222
  };
145
223
  export declare const HeaderProperties: {
@@ -430,6 +508,84 @@ export declare const HeaderProperties: {
430
508
  fullscreen: {
431
509
  type: string;
432
510
  };
511
+ analyticsEvents: {
512
+ anyOf: ({
513
+ type: string;
514
+ additionalProperties: {
515
+ type: string;
516
+ };
517
+ required: string[];
518
+ properties: {
519
+ name: {
520
+ type: string;
521
+ };
522
+ type: {
523
+ type: string;
524
+ };
525
+ counters: {
526
+ type: string;
527
+ additionalProperties: boolean;
528
+ required: never[];
529
+ properties: {
530
+ include: {
531
+ type: string;
532
+ items: {
533
+ type: string;
534
+ };
535
+ };
536
+ exclude: {
537
+ type: string;
538
+ items: {
539
+ type: string;
540
+ };
541
+ };
542
+ };
543
+ };
544
+ context: {
545
+ type: string;
546
+ };
547
+ };
548
+ } | {
549
+ type: string;
550
+ items: {
551
+ type: string;
552
+ additionalProperties: {
553
+ type: string;
554
+ };
555
+ required: string[];
556
+ properties: {
557
+ name: {
558
+ type: string;
559
+ };
560
+ type: {
561
+ type: string;
562
+ };
563
+ counters: {
564
+ type: string;
565
+ additionalProperties: boolean;
566
+ required: never[];
567
+ properties: {
568
+ include: {
569
+ type: string;
570
+ items: {
571
+ type: string;
572
+ };
573
+ };
574
+ exclude: {
575
+ type: string;
576
+ items: {
577
+ type: string;
578
+ };
579
+ };
580
+ };
581
+ };
582
+ context: {
583
+ type: string;
584
+ };
585
+ };
586
+ };
587
+ })[];
588
+ };
433
589
  };
434
590
  } | {
435
591
  type: string;
@@ -766,6 +922,84 @@ export declare const HeaderBlock: {
766
922
  fullscreen: {
767
923
  type: string;
768
924
  };
925
+ analyticsEvents: {
926
+ anyOf: ({
927
+ type: string;
928
+ additionalProperties: {
929
+ type: string;
930
+ };
931
+ required: string[];
932
+ properties: {
933
+ name: {
934
+ type: string;
935
+ };
936
+ type: {
937
+ type: string;
938
+ };
939
+ counters: {
940
+ type: string;
941
+ additionalProperties: boolean;
942
+ required: never[];
943
+ properties: {
944
+ include: {
945
+ type: string;
946
+ items: {
947
+ type: string;
948
+ };
949
+ };
950
+ exclude: {
951
+ type: string;
952
+ items: {
953
+ type: string;
954
+ };
955
+ };
956
+ };
957
+ };
958
+ context: {
959
+ type: string;
960
+ };
961
+ };
962
+ } | {
963
+ type: string;
964
+ items: {
965
+ type: string;
966
+ additionalProperties: {
967
+ type: string;
968
+ };
969
+ required: string[];
970
+ properties: {
971
+ name: {
972
+ type: string;
973
+ };
974
+ type: {
975
+ type: string;
976
+ };
977
+ counters: {
978
+ type: string;
979
+ additionalProperties: boolean;
980
+ required: never[];
981
+ properties: {
982
+ include: {
983
+ type: string;
984
+ items: {
985
+ type: string;
986
+ };
987
+ };
988
+ exclude: {
989
+ type: string;
990
+ items: {
991
+ type: string;
992
+ };
993
+ };
994
+ };
995
+ };
996
+ context: {
997
+ type: string;
998
+ };
999
+ };
1000
+ };
1001
+ })[];
1002
+ };
769
1003
  };
770
1004
  } | {
771
1005
  type: string;
@@ -297,6 +297,84 @@ export declare const HeaderSliderBlock: {
297
297
  fullscreen: {
298
298
  type: string;
299
299
  };
300
+ analyticsEvents: {
301
+ anyOf: ({
302
+ type: string;
303
+ additionalProperties: {
304
+ type: string;
305
+ };
306
+ required: string[];
307
+ properties: {
308
+ name: {
309
+ type: string;
310
+ };
311
+ type: {
312
+ type: string;
313
+ };
314
+ counters: {
315
+ type: string;
316
+ additionalProperties: boolean;
317
+ required: never[];
318
+ properties: {
319
+ include: {
320
+ type: string;
321
+ items: {
322
+ type: string;
323
+ };
324
+ };
325
+ exclude: {
326
+ type: string;
327
+ items: {
328
+ type: string;
329
+ };
330
+ };
331
+ };
332
+ };
333
+ context: {
334
+ type: string;
335
+ };
336
+ };
337
+ } | {
338
+ type: string;
339
+ items: {
340
+ type: string;
341
+ additionalProperties: {
342
+ type: string;
343
+ };
344
+ required: string[];
345
+ properties: {
346
+ name: {
347
+ type: string;
348
+ };
349
+ type: {
350
+ type: string;
351
+ };
352
+ counters: {
353
+ type: string;
354
+ additionalProperties: boolean;
355
+ required: never[];
356
+ properties: {
357
+ include: {
358
+ type: string;
359
+ items: {
360
+ type: string;
361
+ };
362
+ };
363
+ exclude: {
364
+ type: string;
365
+ items: {
366
+ type: string;
367
+ };
368
+ };
369
+ };
370
+ };
371
+ context: {
372
+ type: string;
373
+ };
374
+ };
375
+ };
376
+ })[];
377
+ };
300
378
  };
301
379
  } | {
302
380
  type: string;
@@ -134,6 +134,84 @@ export declare const Media: {
134
134
  fullscreen: {
135
135
  type: string;
136
136
  };
137
+ analyticsEvents: {
138
+ anyOf: ({
139
+ type: string;
140
+ additionalProperties: {
141
+ type: string;
142
+ };
143
+ required: string[];
144
+ properties: {
145
+ name: {
146
+ type: string;
147
+ };
148
+ type: {
149
+ type: string;
150
+ };
151
+ counters: {
152
+ type: string;
153
+ additionalProperties: boolean;
154
+ required: never[];
155
+ properties: {
156
+ include: {
157
+ type: string;
158
+ items: {
159
+ type: string;
160
+ };
161
+ };
162
+ exclude: {
163
+ type: string;
164
+ items: {
165
+ type: string;
166
+ };
167
+ };
168
+ };
169
+ };
170
+ context: {
171
+ type: string;
172
+ };
173
+ };
174
+ } | {
175
+ type: string;
176
+ items: {
177
+ type: string;
178
+ additionalProperties: {
179
+ type: string;
180
+ };
181
+ required: string[];
182
+ properties: {
183
+ name: {
184
+ type: string;
185
+ };
186
+ type: {
187
+ type: string;
188
+ };
189
+ counters: {
190
+ type: string;
191
+ additionalProperties: boolean;
192
+ required: never[];
193
+ properties: {
194
+ include: {
195
+ type: string;
196
+ items: {
197
+ type: string;
198
+ };
199
+ };
200
+ exclude: {
201
+ type: string;
202
+ items: {
203
+ type: string;
204
+ };
205
+ };
206
+ };
207
+ };
208
+ context: {
209
+ type: string;
210
+ };
211
+ };
212
+ };
213
+ })[];
214
+ };
137
215
  };
138
216
  };
139
217
  export declare const MediaBlockBaseProps: {
@@ -614,6 +692,84 @@ export declare const MediaBlock: {
614
692
  fullscreen: {
615
693
  type: string;
616
694
  };
695
+ analyticsEvents: {
696
+ anyOf: ({
697
+ type: string;
698
+ additionalProperties: {
699
+ type: string;
700
+ };
701
+ required: string[];
702
+ properties: {
703
+ name: {
704
+ type: string;
705
+ };
706
+ type: {
707
+ type: string;
708
+ };
709
+ counters: {
710
+ type: string;
711
+ additionalProperties: boolean;
712
+ required: never[];
713
+ properties: {
714
+ include: {
715
+ type: string;
716
+ items: {
717
+ type: string;
718
+ };
719
+ };
720
+ exclude: {
721
+ type: string;
722
+ items: {
723
+ type: string;
724
+ };
725
+ };
726
+ };
727
+ };
728
+ context: {
729
+ type: string;
730
+ };
731
+ };
732
+ } | {
733
+ type: string;
734
+ items: {
735
+ type: string;
736
+ additionalProperties: {
737
+ type: string;
738
+ };
739
+ required: string[];
740
+ properties: {
741
+ name: {
742
+ type: string;
743
+ };
744
+ type: {
745
+ type: string;
746
+ };
747
+ counters: {
748
+ type: string;
749
+ additionalProperties: boolean;
750
+ required: never[];
751
+ properties: {
752
+ include: {
753
+ type: string;
754
+ items: {
755
+ type: string;
756
+ };
757
+ };
758
+ exclude: {
759
+ type: string;
760
+ items: {
761
+ type: string;
762
+ };
763
+ };
764
+ };
765
+ };
766
+ context: {
767
+ type: string;
768
+ };
769
+ };
770
+ };
771
+ })[];
772
+ };
617
773
  };
618
774
  };
619
775
  description: {
@@ -149,6 +149,84 @@ export declare const PromoFeaturesItem: {
149
149
  fullscreen: {
150
150
  type: string;
151
151
  };
152
+ analyticsEvents: {
153
+ anyOf: ({
154
+ type: string;
155
+ additionalProperties: {
156
+ type: string;
157
+ };
158
+ required: string[];
159
+ properties: {
160
+ name: {
161
+ type: string;
162
+ };
163
+ type: {
164
+ type: string;
165
+ };
166
+ counters: {
167
+ type: string;
168
+ additionalProperties: boolean;
169
+ required: never[];
170
+ properties: {
171
+ include: {
172
+ type: string;
173
+ items: {
174
+ type: string;
175
+ };
176
+ };
177
+ exclude: {
178
+ type: string;
179
+ items: {
180
+ type: string;
181
+ };
182
+ };
183
+ };
184
+ };
185
+ context: {
186
+ type: string;
187
+ };
188
+ };
189
+ } | {
190
+ type: string;
191
+ items: {
192
+ type: string;
193
+ additionalProperties: {
194
+ type: string;
195
+ };
196
+ required: string[];
197
+ properties: {
198
+ name: {
199
+ type: string;
200
+ };
201
+ type: {
202
+ type: string;
203
+ };
204
+ counters: {
205
+ type: string;
206
+ additionalProperties: boolean;
207
+ required: never[];
208
+ properties: {
209
+ include: {
210
+ type: string;
211
+ items: {
212
+ type: string;
213
+ };
214
+ };
215
+ exclude: {
216
+ type: string;
217
+ items: {
218
+ type: string;
219
+ };
220
+ };
221
+ };
222
+ };
223
+ context: {
224
+ type: string;
225
+ };
226
+ };
227
+ };
228
+ })[];
229
+ };
152
230
  };
153
231
  };
154
232
  };
@@ -28,7 +28,7 @@ const SliderBlock = (props) => {
28
28
  const { isServer } = (0, react_1.useContext)(ssrContext_1.SSRContext);
29
29
  const isMobile = (0, react_1.useContext)(mobileContext_1.MobileContext);
30
30
  const [breakpoint, setBreakpoint] = (0, react_1.useState)(constants_1.BREAKPOINTS.xl);
31
- const [disclosedChildren] = (0, react_1.useState)(() => discloseAllNestedChildren(children));
31
+ const disclosedChildren = (0, react_1.useMemo)(() => discloseAllNestedChildren(children), [children]);
32
32
  const childrenCount = disclosedChildren.length;
33
33
  const [slidesToShow] = (0, react_1.useState)((0, utils_2.getSlidesToShowWithDefaults)({
34
34
  contentLength: childrenCount,