@wordpress/block-library 6.0.11 → 6.0.15

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 (141) hide show
  1. package/build/cover/edit.js +1 -0
  2. package/build/cover/edit.js.map +1 -1
  3. package/build/gallery/deprecated.js +314 -26
  4. package/build/gallery/deprecated.js.map +1 -1
  5. package/build/gallery/edit-wrapper.js +10 -27
  6. package/build/gallery/edit-wrapper.js.map +1 -1
  7. package/build/gallery/edit.js +10 -12
  8. package/build/gallery/edit.js.map +1 -1
  9. package/build/gallery/save.js +3 -3
  10. package/build/gallery/save.js.map +1 -1
  11. package/build/gallery/shared.js +24 -0
  12. package/build/gallery/shared.js.map +1 -1
  13. package/build/gallery/transforms.js +8 -22
  14. package/build/gallery/transforms.js.map +1 -1
  15. package/build/gallery/use-mobile-warning.js +1 -1
  16. package/build/gallery/use-mobile-warning.js.map +1 -1
  17. package/build/gallery/v1/edit.js +2 -21
  18. package/build/gallery/v1/edit.js.map +1 -1
  19. package/build/image/image.js +30 -6
  20. package/build/image/image.js.map +1 -1
  21. package/build/navigation/edit/index.js +12 -1
  22. package/build/navigation/edit/index.js.map +1 -1
  23. package/build/navigation/edit/inner-blocks.js +0 -4
  24. package/build/navigation/edit/inner-blocks.js.map +1 -1
  25. package/build/navigation/edit/navigation-menu-selector.js +7 -1
  26. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  27. package/build/navigation/menu-items-to-blocks.js +4 -1
  28. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  29. package/build/navigation/view.js +2 -2
  30. package/build/navigation/view.js.map +1 -1
  31. package/build/navigation-submenu/edit.js +5 -1
  32. package/build/navigation-submenu/edit.js.map +1 -1
  33. package/build/post-comments/index.js +1 -1
  34. package/build/query-pagination/index.js +1 -1
  35. package/build/query-pagination-next/index.js +1 -1
  36. package/build/query-pagination-numbers/index.js +1 -1
  37. package/build/query-pagination-previous/index.js +1 -1
  38. package/build/separator/separator-settings.js +1 -0
  39. package/build/separator/separator-settings.js.map +1 -1
  40. package/build/social-links/edit.js +1 -0
  41. package/build/social-links/edit.js.map +1 -1
  42. package/build-module/cover/edit.js +1 -0
  43. package/build-module/cover/edit.js.map +1 -1
  44. package/build-module/gallery/deprecated.js +309 -27
  45. package/build-module/gallery/deprecated.js.map +1 -1
  46. package/build-module/gallery/edit-wrapper.js +7 -27
  47. package/build-module/gallery/edit-wrapper.js.map +1 -1
  48. package/build-module/gallery/edit.js +10 -12
  49. package/build-module/gallery/edit.js.map +1 -1
  50. package/build-module/gallery/save.js +2 -3
  51. package/build-module/gallery/save.js.map +1 -1
  52. package/build-module/gallery/shared.js +22 -0
  53. package/build-module/gallery/shared.js.map +1 -1
  54. package/build-module/gallery/transforms.js +9 -21
  55. package/build-module/gallery/transforms.js.map +1 -1
  56. package/build-module/gallery/use-mobile-warning.js +1 -1
  57. package/build-module/gallery/use-mobile-warning.js.map +1 -1
  58. package/build-module/gallery/v1/edit.js +4 -22
  59. package/build-module/gallery/v1/edit.js.map +1 -1
  60. package/build-module/image/image.js +31 -7
  61. package/build-module/image/image.js.map +1 -1
  62. package/build-module/navigation/edit/index.js +11 -1
  63. package/build-module/navigation/edit/index.js.map +1 -1
  64. package/build-module/navigation/edit/inner-blocks.js +0 -4
  65. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  66. package/build-module/navigation/edit/navigation-menu-selector.js +6 -1
  67. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  68. package/build-module/navigation/menu-items-to-blocks.js +3 -1
  69. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  70. package/build-module/navigation/view.js +2 -2
  71. package/build-module/navigation/view.js.map +1 -1
  72. package/build-module/navigation-submenu/edit.js +5 -1
  73. package/build-module/navigation-submenu/edit.js.map +1 -1
  74. package/build-module/post-comments/index.js +1 -1
  75. package/build-module/query-pagination/index.js +1 -1
  76. package/build-module/query-pagination-next/index.js +1 -1
  77. package/build-module/query-pagination-numbers/index.js +1 -1
  78. package/build-module/query-pagination-previous/index.js +1 -1
  79. package/build-module/separator/separator-settings.js +1 -0
  80. package/build-module/separator/separator-settings.js.map +1 -1
  81. package/build-module/social-links/edit.js +1 -0
  82. package/build-module/social-links/edit.js.map +1 -1
  83. package/build-style/columns/editor-rtl.css +1 -1
  84. package/build-style/columns/editor.css +1 -1
  85. package/build-style/editor-rtl.css +26 -1
  86. package/build-style/editor.css +26 -1
  87. package/build-style/image/editor-rtl.css +16 -0
  88. package/build-style/image/editor.css +16 -0
  89. package/build-style/navigation/editor-rtl.css +9 -0
  90. package/build-style/navigation/editor.css +9 -0
  91. package/build-style/navigation/style-rtl.css +5 -1
  92. package/build-style/navigation/style.css +5 -1
  93. package/build-style/post-comments/style-rtl.css +3 -1
  94. package/build-style/post-comments/style.css +3 -1
  95. package/build-style/post-comments-form/style-rtl.css +2 -2
  96. package/build-style/post-comments-form/style.css +2 -2
  97. package/build-style/style-rtl.css +10 -4
  98. package/build-style/style.css +10 -4
  99. package/package.json +8 -8
  100. package/src/columns/editor.scss +3 -2
  101. package/src/cover/edit.js +1 -0
  102. package/src/gallery/deprecated.js +831 -559
  103. package/src/gallery/edit-wrapper.js +7 -27
  104. package/src/gallery/edit.js +10 -12
  105. package/src/gallery/index.php +7 -8
  106. package/src/gallery/save.js +2 -1
  107. package/src/gallery/shared.js +24 -0
  108. package/src/gallery/transforms.js +9 -27
  109. package/src/gallery/use-mobile-warning.js +1 -1
  110. package/src/gallery/v1/edit.js +1 -28
  111. package/src/image/editor.scss +18 -0
  112. package/src/image/image.js +32 -8
  113. package/src/image/index.php +1 -1
  114. package/src/navigation/edit/index.js +15 -6
  115. package/src/navigation/edit/inner-blocks.js +0 -5
  116. package/src/navigation/edit/navigation-menu-selector.js +8 -0
  117. package/src/navigation/editor.scss +12 -0
  118. package/src/navigation/index.php +149 -18
  119. package/src/navigation/menu-items-to-blocks.js +7 -1
  120. package/src/navigation/style.scss +5 -1
  121. package/src/navigation/view.js +2 -2
  122. package/src/navigation-submenu/edit.js +7 -1
  123. package/src/navigation-submenu/index.php +36 -45
  124. package/src/page-list/index.php +10 -9
  125. package/src/post-comments/block.json +5 -1
  126. package/src/post-comments/index.php +17 -0
  127. package/src/post-comments/style.scss +7 -3
  128. package/src/post-comments-form/index.php +6 -4
  129. package/src/post-comments-form/style.scss +7 -5
  130. package/src/query-pagination/block.json +1 -1
  131. package/src/query-pagination-next/block.json +1 -1
  132. package/src/query-pagination-numbers/block.json +1 -1
  133. package/src/query-pagination-previous/block.json +1 -1
  134. package/src/separator/separator-settings.js +1 -0
  135. package/src/social-links/edit.js +1 -0
  136. package/src/template-part/index.php +41 -2
  137. package/build/gallery/v1/update-gallery-modal.js +0 -114
  138. package/build/gallery/v1/update-gallery-modal.js.map +0 -1
  139. package/build-module/gallery/v1/update-gallery-modal.js +0 -97
  140. package/build-module/gallery/v1/update-gallery-modal.js.map +0 -1
  141. package/src/gallery/v1/update-gallery-modal.js +0 -97
@@ -9,7 +9,16 @@ import { map, some } from 'lodash';
9
9
  * WordPress dependencies
10
10
  */
11
11
 
12
- import { RichText } from '@wordpress/block-editor';
12
+ import { RichText, useBlockProps } from '@wordpress/block-editor';
13
+ import { createBlock } from '@wordpress/blocks';
14
+ /**
15
+ * Internal dependencies
16
+ */
17
+
18
+ import { LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_MEDIA, LINK_DESTINATION_NONE } from './constants';
19
+ import { isGalleryV2Enabled } from './shared';
20
+ const DEPRECATED_LINK_DESTINATION_MEDIA = 'file';
21
+ const DEPRECATED_LINK_DESTINATION_ATTACHMENT = 'post';
13
22
  /**
14
23
  * Original function to determine default number of columns from a block's
15
24
  * attributes.
@@ -21,9 +30,250 @@ import { RichText } from '@wordpress/block-editor';
21
30
  */
22
31
 
23
32
  export function defaultColumnsNumberV1(attributes) {
24
- return Math.min(3, attributes.images.length);
33
+ var _attributes$images;
34
+
35
+ return Math.min(3, attributes === null || attributes === void 0 ? void 0 : (_attributes$images = attributes.images) === null || _attributes$images === void 0 ? void 0 : _attributes$images.length);
36
+ }
37
+ /**
38
+ * Original function to determine new href and linkDestination values for an image block from the
39
+ * supplied Gallery link destination.
40
+ *
41
+ * Used in deprecations: v1-6.
42
+ *
43
+ * @param {Object} image Gallery image.
44
+ * @param {string} destination Gallery's selected link destination.
45
+ * @return {Object} New attributes to assign to image block.
46
+ */
47
+
48
+ export function getHrefAndDestination(image, destination) {
49
+ // Need to determine the URL that the selected destination maps to.
50
+ // Gutenberg and WordPress use different constants so the new link
51
+ // destination also needs to be tweaked.
52
+ switch (destination) {
53
+ case DEPRECATED_LINK_DESTINATION_MEDIA:
54
+ return {
55
+ href: (image === null || image === void 0 ? void 0 : image.source_url) || (image === null || image === void 0 ? void 0 : image.url),
56
+ // eslint-disable-line camelcase
57
+ linkDestination: LINK_DESTINATION_MEDIA
58
+ };
59
+
60
+ case DEPRECATED_LINK_DESTINATION_ATTACHMENT:
61
+ return {
62
+ href: image === null || image === void 0 ? void 0 : image.link,
63
+ linkDestination: LINK_DESTINATION_ATTACHMENT
64
+ };
65
+
66
+ case LINK_DESTINATION_MEDIA:
67
+ return {
68
+ href: (image === null || image === void 0 ? void 0 : image.source_url) || (image === null || image === void 0 ? void 0 : image.url),
69
+ // eslint-disable-line camelcase
70
+ linkDestination: LINK_DESTINATION_MEDIA
71
+ };
72
+
73
+ case LINK_DESTINATION_ATTACHMENT:
74
+ return {
75
+ href: image === null || image === void 0 ? void 0 : image.link,
76
+ linkDestination: LINK_DESTINATION_ATTACHMENT
77
+ };
78
+
79
+ case LINK_DESTINATION_NONE:
80
+ return {
81
+ href: undefined,
82
+ linkDestination: LINK_DESTINATION_NONE
83
+ };
84
+ }
85
+
86
+ return {};
87
+ }
88
+
89
+ function runV2Migration(attributes) {
90
+ let linkTo = attributes.linkTo ? attributes.linkTo : 'none';
91
+
92
+ if (linkTo === 'post') {
93
+ linkTo = 'attachment';
94
+ } else if (linkTo === 'file') {
95
+ linkTo = 'media';
96
+ }
97
+
98
+ const imageBlocks = attributes.images.map(image => {
99
+ return getImageBlock(image, attributes.sizeSlug, linkTo);
100
+ });
101
+ return [{
102
+ caption: attributes.caption,
103
+ columns: attributes.columns,
104
+ imageCrop: attributes.imageCrop,
105
+ linkTo,
106
+ sizeSlug: attributes.sizeSlug,
107
+ allowResize: false
108
+ }, imageBlocks];
109
+ }
110
+ /**
111
+ * Gets an Image block from gallery image data
112
+ *
113
+ * Used to migrate Galleries to nested Image InnerBlocks.
114
+ *
115
+ * @param {Object} image Image properties.
116
+ * @param {string} sizeSlug Gallery sizeSlug attribute.
117
+ * @param {string} linkTo Gallery linkTo attribute.
118
+ * @return {Object} Image block.
119
+ */
120
+
121
+
122
+ export function getImageBlock(image, sizeSlug, linkTo) {
123
+ return createBlock('core/image', { ...(image.id && {
124
+ id: parseInt(image.id)
125
+ }),
126
+ url: image.url,
127
+ alt: image.alt,
128
+ caption: image.caption,
129
+ sizeSlug,
130
+ ...getHrefAndDestination(image, linkTo)
131
+ });
25
132
  }
26
- const deprecated = [{
133
+ const v6 = {
134
+ attributes: {
135
+ images: {
136
+ type: 'array',
137
+ default: [],
138
+ source: 'query',
139
+ selector: '.blocks-gallery-item',
140
+ query: {
141
+ url: {
142
+ type: 'string',
143
+ source: 'attribute',
144
+ selector: 'img',
145
+ attribute: 'src'
146
+ },
147
+ fullUrl: {
148
+ type: 'string',
149
+ source: 'attribute',
150
+ selector: 'img',
151
+ attribute: 'data-full-url'
152
+ },
153
+ link: {
154
+ type: 'string',
155
+ source: 'attribute',
156
+ selector: 'img',
157
+ attribute: 'data-link'
158
+ },
159
+ alt: {
160
+ type: 'string',
161
+ source: 'attribute',
162
+ selector: 'img',
163
+ attribute: 'alt',
164
+ default: ''
165
+ },
166
+ id: {
167
+ type: 'string',
168
+ source: 'attribute',
169
+ selector: 'img',
170
+ attribute: 'data-id'
171
+ },
172
+ caption: {
173
+ type: 'string',
174
+ source: 'html',
175
+ selector: '.blocks-gallery-item__caption'
176
+ }
177
+ }
178
+ },
179
+ ids: {
180
+ type: 'array',
181
+ items: {
182
+ type: 'number'
183
+ },
184
+ default: []
185
+ },
186
+ columns: {
187
+ type: 'number',
188
+ minimum: 1,
189
+ maximum: 8
190
+ },
191
+ caption: {
192
+ type: 'string',
193
+ source: 'html',
194
+ selector: '.blocks-gallery-caption'
195
+ },
196
+ imageCrop: {
197
+ type: 'boolean',
198
+ default: true
199
+ },
200
+ linkTo: {
201
+ type: 'string'
202
+ },
203
+ sizeSlug: {
204
+ type: 'string',
205
+ default: 'large'
206
+ }
207
+ },
208
+ supports: {
209
+ anchor: true,
210
+ align: true
211
+ },
212
+
213
+ save(_ref) {
214
+ let {
215
+ attributes
216
+ } = _ref;
217
+ const {
218
+ images,
219
+ columns = defaultColumnsNumberV1(attributes),
220
+ imageCrop,
221
+ caption,
222
+ linkTo
223
+ } = attributes;
224
+ const className = `columns-${columns} ${imageCrop ? 'is-cropped' : ''}`;
225
+ return createElement("figure", useBlockProps.save({
226
+ className
227
+ }), createElement("ul", {
228
+ className: "blocks-gallery-grid"
229
+ }, images.map(image => {
230
+ let href;
231
+
232
+ switch (linkTo) {
233
+ case DEPRECATED_LINK_DESTINATION_MEDIA:
234
+ href = image.fullUrl || image.url;
235
+ break;
236
+
237
+ case DEPRECATED_LINK_DESTINATION_ATTACHMENT:
238
+ href = image.link;
239
+ break;
240
+ }
241
+
242
+ const img = createElement("img", {
243
+ src: image.url,
244
+ alt: image.alt,
245
+ "data-id": image.id,
246
+ "data-full-url": image.fullUrl,
247
+ "data-link": image.link,
248
+ className: image.id ? `wp-image-${image.id}` : null
249
+ });
250
+ return createElement("li", {
251
+ key: image.id || image.url,
252
+ className: "blocks-gallery-item"
253
+ }, createElement("figure", null, href ? createElement("a", {
254
+ href: href
255
+ }, img) : img, !RichText.isEmpty(image.caption) && createElement(RichText.Content, {
256
+ tagName: "figcaption",
257
+ className: "blocks-gallery-item__caption",
258
+ value: image.caption
259
+ })));
260
+ })), !RichText.isEmpty(caption) && createElement(RichText.Content, {
261
+ tagName: "figcaption",
262
+ className: "blocks-gallery-caption",
263
+ value: caption
264
+ }));
265
+ },
266
+
267
+ migrate(attributes) {
268
+ if (isGalleryV2Enabled()) {
269
+ return runV2Migration(attributes);
270
+ }
271
+
272
+ return attributes;
273
+ }
274
+
275
+ };
276
+ const v5 = {
27
277
  attributes: {
28
278
  images: {
29
279
  type: 'array',
@@ -103,14 +353,18 @@ const deprecated = [{
103
353
  align: true
104
354
  },
105
355
 
106
- isEligible(_ref) {
356
+ isEligible(_ref2) {
107
357
  let {
108
358
  linkTo
109
- } = _ref;
359
+ } = _ref2;
110
360
  return !linkTo || linkTo === 'attachment' || linkTo === 'media';
111
361
  },
112
362
 
113
363
  migrate(attributes) {
364
+ if (isGalleryV2Enabled()) {
365
+ return runV2Migration(attributes);
366
+ }
367
+
114
368
  let linkTo = attributes.linkTo;
115
369
 
116
370
  if (!attributes.linkTo) {
@@ -126,10 +380,10 @@ const deprecated = [{
126
380
  };
127
381
  },
128
382
 
129
- save(_ref2) {
383
+ save(_ref3) {
130
384
  let {
131
385
  attributes
132
- } = _ref2;
386
+ } = _ref3;
133
387
  const {
134
388
  images,
135
389
  columns = defaultColumnsNumberV1(attributes),
@@ -179,7 +433,8 @@ const deprecated = [{
179
433
  }));
180
434
  }
181
435
 
182
- }, {
436
+ };
437
+ const v4 = {
183
438
  attributes: {
184
439
  images: {
185
440
  type: 'array',
@@ -245,14 +500,18 @@ const deprecated = [{
245
500
  align: true
246
501
  },
247
502
 
248
- isEligible(_ref3) {
503
+ isEligible(_ref4) {
249
504
  let {
250
505
  ids
251
- } = _ref3;
506
+ } = _ref4;
252
507
  return ids && ids.some(id => typeof id === 'string');
253
508
  },
254
509
 
255
510
  migrate(attributes) {
511
+ if (isGalleryV2Enabled()) {
512
+ return runV2Migration(attributes);
513
+ }
514
+
256
515
  return { ...attributes,
257
516
  ids: map(attributes.ids, id => {
258
517
  const parsedId = parseInt(id, 10);
@@ -261,10 +520,10 @@ const deprecated = [{
261
520
  };
262
521
  },
263
522
 
264
- save(_ref4) {
523
+ save(_ref5) {
265
524
  let {
266
525
  attributes
267
- } = _ref4;
526
+ } = _ref5;
268
527
  const {
269
528
  images,
270
529
  columns = defaultColumnsNumberV1(attributes),
@@ -314,7 +573,8 @@ const deprecated = [{
314
573
  }));
315
574
  }
316
575
 
317
- }, {
576
+ };
577
+ const v3 = {
318
578
  attributes: {
319
579
  images: {
320
580
  type: 'array',
@@ -375,10 +635,10 @@ const deprecated = [{
375
635
  align: true
376
636
  },
377
637
 
378
- save(_ref5) {
638
+ save(_ref6) {
379
639
  let {
380
640
  attributes
381
- } = _ref5;
641
+ } = _ref6;
382
642
  const {
383
643
  images,
384
644
  columns = defaultColumnsNumberV1(attributes),
@@ -418,9 +678,18 @@ const deprecated = [{
418
678
  value: image.caption
419
679
  })));
420
680
  }));
681
+ },
682
+
683
+ migrate(attributes) {
684
+ if (isGalleryV2Enabled()) {
685
+ return runV2Migration(attributes);
686
+ }
687
+
688
+ return attributes;
421
689
  }
422
690
 
423
- }, {
691
+ };
692
+ const v2 = {
424
693
  attributes: {
425
694
  images: {
426
695
  type: 'array',
@@ -469,11 +738,11 @@ const deprecated = [{
469
738
  }
470
739
  },
471
740
 
472
- isEligible(_ref6) {
741
+ isEligible(_ref7) {
473
742
  let {
474
743
  images,
475
744
  ids
476
- } = _ref6;
745
+ } = _ref7;
477
746
  return images && images.length > 0 && (!ids && images || ids && images && ids.length !== images.length || some(images, (id, index) => {
478
747
  if (!id && ids[index] !== null) {
479
748
  return true;
@@ -484,11 +753,15 @@ const deprecated = [{
484
753
  },
485
754
 
486
755
  migrate(attributes) {
756
+ if (isGalleryV2Enabled()) {
757
+ return runV2Migration(attributes);
758
+ }
759
+
487
760
  return { ...attributes,
488
- ids: map(attributes.images, _ref7 => {
761
+ ids: map(attributes.images, _ref8 => {
489
762
  let {
490
763
  id
491
- } = _ref7;
764
+ } = _ref8;
492
765
 
493
766
  if (!id) {
494
767
  return null;
@@ -503,10 +776,10 @@ const deprecated = [{
503
776
  align: true
504
777
  },
505
778
 
506
- save(_ref8) {
779
+ save(_ref9) {
507
780
  let {
508
781
  attributes
509
- } = _ref8;
782
+ } = _ref9;
510
783
  const {
511
784
  images,
512
785
  columns = defaultColumnsNumberV1(attributes),
@@ -547,7 +820,8 @@ const deprecated = [{
547
820
  }));
548
821
  }
549
822
 
550
- }, {
823
+ };
824
+ const v1 = {
551
825
  attributes: {
552
826
  images: {
553
827
  type: 'array',
@@ -590,10 +864,10 @@ const deprecated = [{
590
864
  align: true
591
865
  },
592
866
 
593
- save(_ref9) {
867
+ save(_ref10) {
594
868
  let {
595
869
  attributes
596
- } = _ref9;
870
+ } = _ref10;
597
871
  const {
598
872
  images,
599
873
  columns = defaultColumnsNumberV1(attributes),
@@ -632,8 +906,16 @@ const deprecated = [{
632
906
  href: href
633
907
  }, img) : img);
634
908
  }));
909
+ },
910
+
911
+ migrate(attributes) {
912
+ if (isGalleryV2Enabled()) {
913
+ return runV2Migration(attributes);
914
+ }
915
+
916
+ return attributes;
635
917
  }
636
918
 
637
- }];
638
- export default deprecated;
919
+ };
920
+ export default [v6, v5, v4, v3, v2, v1];
639
921
  //# sourceMappingURL=deprecated.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/gallery/deprecated.js"],"names":["classnames","map","some","RichText","defaultColumnsNumberV1","attributes","Math","min","images","length","deprecated","type","default","source","selector","query","url","attribute","fullUrl","link","alt","id","caption","ids","items","columns","minimum","maximum","imageCrop","linkTo","sizeSlug","supports","align","isEligible","migrate","save","image","href","img","isEmpty","parsedId","parseInt","Number","isInteger","index","className","alignnone"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AACA,SAASC,GAAT,EAAcC,IAAd,QAA0B,QAA1B;AAEA;AACA;AACA;;AACA,SAASC,QAAT,QAAyB,yBAAzB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,sBAAT,CAAiCC,UAAjC,EAA8C;AACpD,SAAOC,IAAI,CAACC,GAAL,CAAU,CAAV,EAAaF,UAAU,CAACG,MAAX,CAAkBC,MAA/B,CAAP;AACA;AAED,MAAMC,UAAU,GAAG,CAClB;AACCL,EAAAA,UAAU,EAAE;AACXG,IAAAA,MAAM,EAAE;AACPG,MAAAA,IAAI,EAAE,OADC;AAEPC,MAAAA,OAAO,EAAE,EAFF;AAGPC,MAAAA,MAAM,EAAE,OAHD;AAIPC,MAAAA,QAAQ,EAAE,sBAJH;AAKPC,MAAAA,KAAK,EAAE;AACNC,QAAAA,GAAG,EAAE;AACJL,UAAAA,IAAI,EAAE,QADF;AAEJE,UAAAA,MAAM,EAAE,WAFJ;AAGJC,UAAAA,QAAQ,EAAE,KAHN;AAIJG,UAAAA,SAAS,EAAE;AAJP,SADC;AAONC,QAAAA,OAAO,EAAE;AACRP,UAAAA,IAAI,EAAE,QADE;AAERE,UAAAA,MAAM,EAAE,WAFA;AAGRC,UAAAA,QAAQ,EAAE,KAHF;AAIRG,UAAAA,SAAS,EAAE;AAJH,SAPH;AAaNE,QAAAA,IAAI,EAAE;AACLR,UAAAA,IAAI,EAAE,QADD;AAELE,UAAAA,MAAM,EAAE,WAFH;AAGLC,UAAAA,QAAQ,EAAE,KAHL;AAILG,UAAAA,SAAS,EAAE;AAJN,SAbA;AAmBNG,QAAAA,GAAG,EAAE;AACJT,UAAAA,IAAI,EAAE,QADF;AAEJE,UAAAA,MAAM,EAAE,WAFJ;AAGJC,UAAAA,QAAQ,EAAE,KAHN;AAIJG,UAAAA,SAAS,EAAE,KAJP;AAKJL,UAAAA,OAAO,EAAE;AALL,SAnBC;AA0BNS,QAAAA,EAAE,EAAE;AACHV,UAAAA,IAAI,EAAE,QADH;AAEHE,UAAAA,MAAM,EAAE,WAFL;AAGHC,UAAAA,QAAQ,EAAE,KAHP;AAIHG,UAAAA,SAAS,EAAE;AAJR,SA1BE;AAgCNK,QAAAA,OAAO,EAAE;AACRX,UAAAA,IAAI,EAAE,QADE;AAERE,UAAAA,MAAM,EAAE,MAFA;AAGRC,UAAAA,QAAQ,EAAE;AAHF;AAhCH;AALA,KADG;AA6CXS,IAAAA,GAAG,EAAE;AACJZ,MAAAA,IAAI,EAAE,OADF;AAEJa,MAAAA,KAAK,EAAE;AACNb,QAAAA,IAAI,EAAE;AADA,OAFH;AAKJC,MAAAA,OAAO,EAAE;AALL,KA7CM;AAoDXa,IAAAA,OAAO,EAAE;AACRd,MAAAA,IAAI,EAAE,QADE;AAERe,MAAAA,OAAO,EAAE,CAFD;AAGRC,MAAAA,OAAO,EAAE;AAHD,KApDE;AAyDXL,IAAAA,OAAO,EAAE;AACRX,MAAAA,IAAI,EAAE,QADE;AAERE,MAAAA,MAAM,EAAE,MAFA;AAGRC,MAAAA,QAAQ,EAAE;AAHF,KAzDE;AA8DXc,IAAAA,SAAS,EAAE;AACVjB,MAAAA,IAAI,EAAE,SADI;AAEVC,MAAAA,OAAO,EAAE;AAFC,KA9DA;AAkEXiB,IAAAA,MAAM,EAAE;AACPlB,MAAAA,IAAI,EAAE,QADC;AAEPC,MAAAA,OAAO,EAAE;AAFF,KAlEG;AAsEXkB,IAAAA,QAAQ,EAAE;AACTnB,MAAAA,IAAI,EAAE,QADG;AAETC,MAAAA,OAAO,EAAE;AAFA;AAtEC,GADb;AA4ECmB,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE;AADE,GA5EX;;AA+ECC,EAAAA,UAAU,OAAe;AAAA,QAAb;AAAEJ,MAAAA;AAAF,KAAa;AACxB,WAAO,CAAEA,MAAF,IAAYA,MAAM,KAAK,YAAvB,IAAuCA,MAAM,KAAK,OAAzD;AACA,GAjFF;;AAkFCK,EAAAA,OAAO,CAAE7B,UAAF,EAAe;AACrB,QAAIwB,MAAM,GAAGxB,UAAU,CAACwB,MAAxB;;AACA,QAAK,CAAExB,UAAU,CAACwB,MAAlB,EAA2B;AAC1BA,MAAAA,MAAM,GAAG,MAAT;AACA,KAFD,MAEO,IAAKxB,UAAU,CAACwB,MAAX,KAAsB,YAA3B,EAA0C;AAChDA,MAAAA,MAAM,GAAG,MAAT;AACA,KAFM,MAEA,IAAKxB,UAAU,CAACwB,MAAX,KAAsB,OAA3B,EAAqC;AAC3CA,MAAAA,MAAM,GAAG,MAAT;AACA;;AACD,WAAO,EACN,GAAGxB,UADG;AAENwB,MAAAA;AAFM,KAAP;AAIA,GA/FF;;AAgGCM,EAAAA,IAAI,QAAmB;AAAA,QAAjB;AAAE9B,MAAAA;AAAF,KAAiB;AACtB,UAAM;AACLG,MAAAA,MADK;AAELiB,MAAAA,OAAO,GAAGrB,sBAAsB,CAAEC,UAAF,CAF3B;AAGLuB,MAAAA,SAHK;AAILN,MAAAA,OAJK;AAKLO,MAAAA;AALK,QAMFxB,UANJ;AAQA,WACC;AACC,MAAA,SAAS,EAAI,WAAWoB,OAAS,IAChCG,SAAS,GAAG,YAAH,GAAkB,EAC3B;AAHF,OAKC;AAAI,MAAA,SAAS,EAAC;AAAd,OACGpB,MAAM,CAACP,GAAP,CAAcmC,KAAF,IAAa;AAC1B,UAAIC,IAAJ;;AAEA,cAASR,MAAT;AACC,aAAK,OAAL;AACCQ,UAAAA,IAAI,GAAGD,KAAK,CAAClB,OAAN,IAAiBkB,KAAK,CAACpB,GAA9B;AACA;;AACD,aAAK,YAAL;AACCqB,UAAAA,IAAI,GAAGD,KAAK,CAACjB,IAAb;AACA;AANF;;AASA,YAAMmB,GAAG,GACR;AACC,QAAA,GAAG,EAAGF,KAAK,CAACpB,GADb;AAEC,QAAA,GAAG,EAAGoB,KAAK,CAAChB,GAFb;AAGC,mBAAUgB,KAAK,CAACf,EAHjB;AAIC,yBAAgBe,KAAK,CAAClB,OAJvB;AAKC,qBAAYkB,KAAK,CAACjB,IALnB;AAMC,QAAA,SAAS,EACRiB,KAAK,CAACf,EAAN,GACI,YAAYe,KAAK,CAACf,EAAI,EAD1B,GAEG;AATL,QADD;AAeA,aACC;AACC,QAAA,GAAG,EAAGe,KAAK,CAACf,EAAN,IAAYe,KAAK,CAACpB,GADzB;AAEC,QAAA,SAAS,EAAC;AAFX,SAIC,8BACGqB,IAAI,GACL;AAAG,QAAA,IAAI,EAAGA;AAAV,SAAmBC,GAAnB,CADK,GAGLA,GAJF,EAMG,CAAEnC,QAAQ,CAACoC,OAAT,CACHH,KAAK,CAACd,OADH,CAAF,IAGD,cAAC,QAAD,CAAU,OAAV;AACC,QAAA,OAAO,EAAC,YADT;AAEC,QAAA,SAAS,EAAC,8BAFX;AAGC,QAAA,KAAK,EAAGc,KAAK,CAACd;AAHf,QATF,CAJD,CADD;AAuBA,KAlDC,CADH,CALD,EA0DG,CAAEnB,QAAQ,CAACoC,OAAT,CAAkBjB,OAAlB,CAAF,IACD,cAAC,QAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,YADT;AAEC,MAAA,SAAS,EAAC,wBAFX;AAGC,MAAA,KAAK,EAAGA;AAHT,MA3DF,CADD;AAoEA;;AA7KF,CADkB,EAgLlB;AACCjB,EAAAA,UAAU,EAAE;AACXG,IAAAA,MAAM,EAAE;AACPG,MAAAA,IAAI,EAAE,OADC;AAEPC,MAAAA,OAAO,EAAE,EAFF;AAGPC,MAAAA,MAAM,EAAE,OAHD;AAIPC,MAAAA,QAAQ,EAAE,sBAJH;AAKPC,MAAAA,KAAK,EAAE;AACNC,QAAAA,GAAG,EAAE;AACJH,UAAAA,MAAM,EAAE,WADJ;AAEJC,UAAAA,QAAQ,EAAE,KAFN;AAGJG,UAAAA,SAAS,EAAE;AAHP,SADC;AAMNC,QAAAA,OAAO,EAAE;AACRL,UAAAA,MAAM,EAAE,WADA;AAERC,UAAAA,QAAQ,EAAE,KAFF;AAGRG,UAAAA,SAAS,EAAE;AAHH,SANH;AAWNE,QAAAA,IAAI,EAAE;AACLN,UAAAA,MAAM,EAAE,WADH;AAELC,UAAAA,QAAQ,EAAE,KAFL;AAGLG,UAAAA,SAAS,EAAE;AAHN,SAXA;AAgBNG,QAAAA,GAAG,EAAE;AACJP,UAAAA,MAAM,EAAE,WADJ;AAEJC,UAAAA,QAAQ,EAAE,KAFN;AAGJG,UAAAA,SAAS,EAAE,KAHP;AAIJL,UAAAA,OAAO,EAAE;AAJL,SAhBC;AAsBNS,QAAAA,EAAE,EAAE;AACHR,UAAAA,MAAM,EAAE,WADL;AAEHC,UAAAA,QAAQ,EAAE,KAFP;AAGHG,UAAAA,SAAS,EAAE;AAHR,SAtBE;AA2BNK,QAAAA,OAAO,EAAE;AACRX,UAAAA,IAAI,EAAE,QADE;AAERE,UAAAA,MAAM,EAAE,MAFA;AAGRC,UAAAA,QAAQ,EAAE;AAHF;AA3BH;AALA,KADG;AAwCXS,IAAAA,GAAG,EAAE;AACJZ,MAAAA,IAAI,EAAE,OADF;AAEJC,MAAAA,OAAO,EAAE;AAFL,KAxCM;AA4CXa,IAAAA,OAAO,EAAE;AACRd,MAAAA,IAAI,EAAE;AADE,KA5CE;AA+CXW,IAAAA,OAAO,EAAE;AACRX,MAAAA,IAAI,EAAE,QADE;AAERE,MAAAA,MAAM,EAAE,MAFA;AAGRC,MAAAA,QAAQ,EAAE;AAHF,KA/CE;AAoDXc,IAAAA,SAAS,EAAE;AACVjB,MAAAA,IAAI,EAAE,SADI;AAEVC,MAAAA,OAAO,EAAE;AAFC,KApDA;AAwDXiB,IAAAA,MAAM,EAAE;AACPlB,MAAAA,IAAI,EAAE,QADC;AAEPC,MAAAA,OAAO,EAAE;AAFF;AAxDG,GADb;AA8DCmB,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE;AADE,GA9DX;;AAiECC,EAAAA,UAAU,QAAY;AAAA,QAAV;AAAEV,MAAAA;AAAF,KAAU;AACrB,WAAOA,GAAG,IAAIA,GAAG,CAACrB,IAAJ,CAAYmB,EAAF,IAAU,OAAOA,EAAP,KAAc,QAAlC,CAAd;AACA,GAnEF;;AAoECa,EAAAA,OAAO,CAAE7B,UAAF,EAAe;AACrB,WAAO,EACN,GAAGA,UADG;AAENkB,MAAAA,GAAG,EAAEtB,GAAG,CAAEI,UAAU,CAACkB,GAAb,EAAoBF,EAAF,IAAU;AACnC,cAAMmB,QAAQ,GAAGC,QAAQ,CAAEpB,EAAF,EAAM,EAAN,CAAzB;AACA,eAAOqB,MAAM,CAACC,SAAP,CAAkBH,QAAlB,IAA+BA,QAA/B,GAA0C,IAAjD;AACA,OAHO;AAFF,KAAP;AAOA,GA5EF;;AA6ECL,EAAAA,IAAI,QAAmB;AAAA,QAAjB;AAAE9B,MAAAA;AAAF,KAAiB;AACtB,UAAM;AACLG,MAAAA,MADK;AAELiB,MAAAA,OAAO,GAAGrB,sBAAsB,CAAEC,UAAF,CAF3B;AAGLuB,MAAAA,SAHK;AAILN,MAAAA,OAJK;AAKLO,MAAAA;AALK,QAMFxB,UANJ;AAQA,WACC;AACC,MAAA,SAAS,EAAI,WAAWoB,OAAS,IAChCG,SAAS,GAAG,YAAH,GAAkB,EAC3B;AAHF,OAKC;AAAI,MAAA,SAAS,EAAC;AAAd,OACGpB,MAAM,CAACP,GAAP,CAAcmC,KAAF,IAAa;AAC1B,UAAIC,IAAJ;;AAEA,cAASR,MAAT;AACC,aAAK,OAAL;AACCQ,UAAAA,IAAI,GAAGD,KAAK,CAAClB,OAAN,IAAiBkB,KAAK,CAACpB,GAA9B;AACA;;AACD,aAAK,YAAL;AACCqB,UAAAA,IAAI,GAAGD,KAAK,CAACjB,IAAb;AACA;AANF;;AASA,YAAMmB,GAAG,GACR;AACC,QAAA,GAAG,EAAGF,KAAK,CAACpB,GADb;AAEC,QAAA,GAAG,EAAGoB,KAAK,CAAChB,GAFb;AAGC,mBAAUgB,KAAK,CAACf,EAHjB;AAIC,yBAAgBe,KAAK,CAAClB,OAJvB;AAKC,qBAAYkB,KAAK,CAACjB,IALnB;AAMC,QAAA,SAAS,EACRiB,KAAK,CAACf,EAAN,GACI,YAAYe,KAAK,CAACf,EAAI,EAD1B,GAEG;AATL,QADD;AAeA,aACC;AACC,QAAA,GAAG,EAAGe,KAAK,CAACf,EAAN,IAAYe,KAAK,CAACpB,GADzB;AAEC,QAAA,SAAS,EAAC;AAFX,SAIC,8BACGqB,IAAI,GACL;AAAG,QAAA,IAAI,EAAGA;AAAV,SAAmBC,GAAnB,CADK,GAGLA,GAJF,EAMG,CAAEnC,QAAQ,CAACoC,OAAT,CACHH,KAAK,CAACd,OADH,CAAF,IAGD,cAAC,QAAD,CAAU,OAAV;AACC,QAAA,OAAO,EAAC,YADT;AAEC,QAAA,SAAS,EAAC,8BAFX;AAGC,QAAA,KAAK,EAAGc,KAAK,CAACd;AAHf,QATF,CAJD,CADD;AAuBA,KAlDC,CADH,CALD,EA0DG,CAAEnB,QAAQ,CAACoC,OAAT,CAAkBjB,OAAlB,CAAF,IACD,cAAC,QAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,YADT;AAEC,MAAA,SAAS,EAAC,wBAFX;AAGC,MAAA,KAAK,EAAGA;AAHT,MA3DF,CADD;AAoEA;;AA1JF,CAhLkB,EA4UlB;AACCjB,EAAAA,UAAU,EAAE;AACXG,IAAAA,MAAM,EAAE;AACPG,MAAAA,IAAI,EAAE,OADC;AAEPC,MAAAA,OAAO,EAAE,EAFF;AAGPC,MAAAA,MAAM,EAAE,OAHD;AAIPC,MAAAA,QAAQ,EAAE,0CAJH;AAKPC,MAAAA,KAAK,EAAE;AACNC,QAAAA,GAAG,EAAE;AACJH,UAAAA,MAAM,EAAE,WADJ;AAEJC,UAAAA,QAAQ,EAAE,KAFN;AAGJG,UAAAA,SAAS,EAAE;AAHP,SADC;AAMNC,QAAAA,OAAO,EAAE;AACRL,UAAAA,MAAM,EAAE,WADA;AAERC,UAAAA,QAAQ,EAAE,KAFF;AAGRG,UAAAA,SAAS,EAAE;AAHH,SANH;AAWNG,QAAAA,GAAG,EAAE;AACJP,UAAAA,MAAM,EAAE,WADJ;AAEJC,UAAAA,QAAQ,EAAE,KAFN;AAGJG,UAAAA,SAAS,EAAE,KAHP;AAIJL,UAAAA,OAAO,EAAE;AAJL,SAXC;AAiBNS,QAAAA,EAAE,EAAE;AACHR,UAAAA,MAAM,EAAE,WADL;AAEHC,UAAAA,QAAQ,EAAE,KAFP;AAGHG,UAAAA,SAAS,EAAE;AAHR,SAjBE;AAsBNE,QAAAA,IAAI,EAAE;AACLN,UAAAA,MAAM,EAAE,WADH;AAELC,UAAAA,QAAQ,EAAE,KAFL;AAGLG,UAAAA,SAAS,EAAE;AAHN,SAtBA;AA2BNK,QAAAA,OAAO,EAAE;AACRX,UAAAA,IAAI,EAAE,OADE;AAERE,UAAAA,MAAM,EAAE,UAFA;AAGRC,UAAAA,QAAQ,EAAE;AAHF;AA3BH;AALA,KADG;AAwCXS,IAAAA,GAAG,EAAE;AACJZ,MAAAA,IAAI,EAAE,OADF;AAEJC,MAAAA,OAAO,EAAE;AAFL,KAxCM;AA4CXa,IAAAA,OAAO,EAAE;AACRd,MAAAA,IAAI,EAAE;AADE,KA5CE;AA+CXiB,IAAAA,SAAS,EAAE;AACVjB,MAAAA,IAAI,EAAE,SADI;AAEVC,MAAAA,OAAO,EAAE;AAFC,KA/CA;AAmDXiB,IAAAA,MAAM,EAAE;AACPlB,MAAAA,IAAI,EAAE,QADC;AAEPC,MAAAA,OAAO,EAAE;AAFF;AAnDG,GADb;AAyDCmB,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE;AADE,GAzDX;;AA4DCG,EAAAA,IAAI,QAAmB;AAAA,QAAjB;AAAE9B,MAAAA;AAAF,KAAiB;AACtB,UAAM;AACLG,MAAAA,MADK;AAELiB,MAAAA,OAAO,GAAGrB,sBAAsB,CAAEC,UAAF,CAF3B;AAGLuB,MAAAA,SAHK;AAILC,MAAAA;AAJK,QAKFxB,UALJ;AAMA,WACC;AACC,MAAA,SAAS,EAAI,WAAWoB,OAAS,IAChCG,SAAS,GAAG,YAAH,GAAkB,EAC3B;AAHF,OAKGpB,MAAM,CAACP,GAAP,CAAcmC,KAAF,IAAa;AAC1B,UAAIC,IAAJ;;AAEA,cAASR,MAAT;AACC,aAAK,OAAL;AACCQ,UAAAA,IAAI,GAAGD,KAAK,CAAClB,OAAN,IAAiBkB,KAAK,CAACpB,GAA9B;AACA;;AACD,aAAK,YAAL;AACCqB,UAAAA,IAAI,GAAGD,KAAK,CAACjB,IAAb;AACA;AANF;;AASA,YAAMmB,GAAG,GACR;AACC,QAAA,GAAG,EAAGF,KAAK,CAACpB,GADb;AAEC,QAAA,GAAG,EAAGoB,KAAK,CAAChB,GAFb;AAGC,mBAAUgB,KAAK,CAACf,EAHjB;AAIC,yBAAgBe,KAAK,CAAClB,OAJvB;AAKC,qBAAYkB,KAAK,CAACjB,IALnB;AAMC,QAAA,SAAS,EACRiB,KAAK,CAACf,EAAN,GAAY,YAAYe,KAAK,CAACf,EAAI,EAAlC,GAAsC;AAPxC,QADD;AAaA,aACC;AACC,QAAA,GAAG,EAAGe,KAAK,CAACf,EAAN,IAAYe,KAAK,CAACpB,GADzB;AAEC,QAAA,SAAS,EAAC;AAFX,SAIC,8BACGqB,IAAI,GACL;AAAG,QAAA,IAAI,EAAGA;AAAV,SAAmBC,GAAnB,CADK,GAGLA,GAJF,EAMGF,KAAK,CAACd,OAAN,IACDc,KAAK,CAACd,OAAN,CAAcb,MAAd,GAAuB,CADtB,IAEA,cAAC,QAAD,CAAU,OAAV;AACC,QAAA,OAAO,EAAC,YADT;AAEC,QAAA,KAAK,EAAG2B,KAAK,CAACd;AAFf,QARH,CAJD,CADD;AAqBA,KA9CC,CALH,CADD;AAuDA;;AA1HF,CA5UkB,EAwclB;AACCjB,EAAAA,UAAU,EAAE;AACXG,IAAAA,MAAM,EAAE;AACPG,MAAAA,IAAI,EAAE,OADC;AAEPC,MAAAA,OAAO,EAAE,EAFF;AAGPC,MAAAA,MAAM,EAAE,OAHD;AAIPC,MAAAA,QAAQ,EAAE,0CAJH;AAKPC,MAAAA,KAAK,EAAE;AACNC,QAAAA,GAAG,EAAE;AACJH,UAAAA,MAAM,EAAE,WADJ;AAEJC,UAAAA,QAAQ,EAAE,KAFN;AAGJG,UAAAA,SAAS,EAAE;AAHP,SADC;AAMNG,QAAAA,GAAG,EAAE;AACJP,UAAAA,MAAM,EAAE,WADJ;AAEJC,UAAAA,QAAQ,EAAE,KAFN;AAGJG,UAAAA,SAAS,EAAE,KAHP;AAIJL,UAAAA,OAAO,EAAE;AAJL,SANC;AAYNS,QAAAA,EAAE,EAAE;AACHR,UAAAA,MAAM,EAAE,WADL;AAEHC,UAAAA,QAAQ,EAAE,KAFP;AAGHG,UAAAA,SAAS,EAAE;AAHR,SAZE;AAiBNE,QAAAA,IAAI,EAAE;AACLN,UAAAA,MAAM,EAAE,WADH;AAELC,UAAAA,QAAQ,EAAE,KAFL;AAGLG,UAAAA,SAAS,EAAE;AAHN,SAjBA;AAsBNK,QAAAA,OAAO,EAAE;AACRX,UAAAA,IAAI,EAAE,OADE;AAERE,UAAAA,MAAM,EAAE,UAFA;AAGRC,UAAAA,QAAQ,EAAE;AAHF;AAtBH;AALA,KADG;AAmCXW,IAAAA,OAAO,EAAE;AACRd,MAAAA,IAAI,EAAE;AADE,KAnCE;AAsCXiB,IAAAA,SAAS,EAAE;AACVjB,MAAAA,IAAI,EAAE,SADI;AAEVC,MAAAA,OAAO,EAAE;AAFC,KAtCA;AA0CXiB,IAAAA,MAAM,EAAE;AACPlB,MAAAA,IAAI,EAAE,QADC;AAEPC,MAAAA,OAAO,EAAE;AAFF;AA1CG,GADb;;AAgDCqB,EAAAA,UAAU,QAAoB;AAAA,QAAlB;AAAEzB,MAAAA,MAAF;AAAUe,MAAAA;AAAV,KAAkB;AAC7B,WACCf,MAAM,IACNA,MAAM,CAACC,MAAP,GAAgB,CADhB,KAEI,CAAEc,GAAF,IAASf,MAAX,IACCe,GAAG,IAAIf,MAAP,IAAiBe,GAAG,CAACd,MAAJ,KAAeD,MAAM,CAACC,MADxC,IAEDP,IAAI,CAAEM,MAAF,EAAU,CAAEa,EAAF,EAAMuB,KAAN,KAAiB;AAC9B,UAAK,CAAEvB,EAAF,IAAQE,GAAG,CAAEqB,KAAF,CAAH,KAAiB,IAA9B,EAAqC;AACpC,eAAO,IAAP;AACA;;AACD,aAAOH,QAAQ,CAAEpB,EAAF,EAAM,EAAN,CAAR,KAAuBE,GAAG,CAAEqB,KAAF,CAAjC;AACA,KALG,CAJL,CADD;AAYA,GA7DF;;AA8DCV,EAAAA,OAAO,CAAE7B,UAAF,EAAe;AACrB,WAAO,EACN,GAAGA,UADG;AAENkB,MAAAA,GAAG,EAAEtB,GAAG,CAAEI,UAAU,CAACG,MAAb,EAAqB,SAAc;AAAA,YAAZ;AAAEa,UAAAA;AAAF,SAAY;;AAC1C,YAAK,CAAEA,EAAP,EAAY;AACX,iBAAO,IAAP;AACA;;AACD,eAAOoB,QAAQ,CAAEpB,EAAF,EAAM,EAAN,CAAf;AACA,OALO;AAFF,KAAP;AASA,GAxEF;;AAyECU,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE;AADE,GAzEX;;AA4ECG,EAAAA,IAAI,QAAmB;AAAA,QAAjB;AAAE9B,MAAAA;AAAF,KAAiB;AACtB,UAAM;AACLG,MAAAA,MADK;AAELiB,MAAAA,OAAO,GAAGrB,sBAAsB,CAAEC,UAAF,CAF3B;AAGLuB,MAAAA,SAHK;AAILC,MAAAA;AAJK,QAKFxB,UALJ;AAMA,WACC;AACC,MAAA,SAAS,EAAI,WAAWoB,OAAS,IAChCG,SAAS,GAAG,YAAH,GAAkB,EAC3B;AAHF,OAKGpB,MAAM,CAACP,GAAP,CAAcmC,KAAF,IAAa;AAC1B,UAAIC,IAAJ;;AAEA,cAASR,MAAT;AACC,aAAK,OAAL;AACCQ,UAAAA,IAAI,GAAGD,KAAK,CAACpB,GAAb;AACA;;AACD,aAAK,YAAL;AACCqB,UAAAA,IAAI,GAAGD,KAAK,CAACjB,IAAb;AACA;AANF;;AASA,YAAMmB,GAAG,GACR;AACC,QAAA,GAAG,EAAGF,KAAK,CAACpB,GADb;AAEC,QAAA,GAAG,EAAGoB,KAAK,CAAChB,GAFb;AAGC,mBAAUgB,KAAK,CAACf,EAHjB;AAIC,qBAAYe,KAAK,CAACjB,IAJnB;AAKC,QAAA,SAAS,EACRiB,KAAK,CAACf,EAAN,GAAY,YAAYe,KAAK,CAACf,EAAI,EAAlC,GAAsC;AANxC,QADD;AAYA,aACC;AACC,QAAA,GAAG,EAAGe,KAAK,CAACf,EAAN,IAAYe,KAAK,CAACpB,GADzB;AAEC,QAAA,SAAS,EAAC;AAFX,SAIC,8BACGqB,IAAI,GACL;AAAG,QAAA,IAAI,EAAGA;AAAV,SAAmBC,GAAnB,CADK,GAGLA,GAJF,EAMGF,KAAK,CAACd,OAAN,IACDc,KAAK,CAACd,OAAN,CAAcb,MAAd,GAAuB,CADtB,IAEA,cAAC,QAAD,CAAU,OAAV;AACC,QAAA,OAAO,EAAC,YADT;AAEC,QAAA,KAAK,EAAG2B,KAAK,CAACd;AAFf,QARH,CAJD,CADD;AAqBA,KA7CC,CALH,CADD;AAsDA;;AAzIF,CAxckB,EAmlBlB;AACCjB,EAAAA,UAAU,EAAE;AACXG,IAAAA,MAAM,EAAE;AACPG,MAAAA,IAAI,EAAE,OADC;AAEPC,MAAAA,OAAO,EAAE,EAFF;AAGPC,MAAAA,MAAM,EAAE,OAHD;AAIPC,MAAAA,QAAQ,EACP,sDALM;AAMPC,MAAAA,KAAK,EAAE;AACNC,QAAAA,GAAG,EAAE;AACJH,UAAAA,MAAM,EAAE,WADJ;AAEJI,UAAAA,SAAS,EAAE;AAFP,SADC;AAKNG,QAAAA,GAAG,EAAE;AACJP,UAAAA,MAAM,EAAE,WADJ;AAEJI,UAAAA,SAAS,EAAE,KAFP;AAGJL,UAAAA,OAAO,EAAE;AAHL,SALC;AAUNS,QAAAA,EAAE,EAAE;AACHR,UAAAA,MAAM,EAAE,WADL;AAEHI,UAAAA,SAAS,EAAE;AAFR;AAVE;AANA,KADG;AAuBXQ,IAAAA,OAAO,EAAE;AACRd,MAAAA,IAAI,EAAE;AADE,KAvBE;AA0BXiB,IAAAA,SAAS,EAAE;AACVjB,MAAAA,IAAI,EAAE,SADI;AAEVC,MAAAA,OAAO,EAAE;AAFC,KA1BA;AA8BXiB,IAAAA,MAAM,EAAE;AACPlB,MAAAA,IAAI,EAAE,QADC;AAEPC,MAAAA,OAAO,EAAE;AAFF,KA9BG;AAkCXoB,IAAAA,KAAK,EAAE;AACNrB,MAAAA,IAAI,EAAE,QADA;AAENC,MAAAA,OAAO,EAAE;AAFH;AAlCI,GADb;AAwCCmB,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE;AADE,GAxCX;;AA2CCG,EAAAA,IAAI,QAAmB;AAAA,QAAjB;AAAE9B,MAAAA;AAAF,KAAiB;AACtB,UAAM;AACLG,MAAAA,MADK;AAELiB,MAAAA,OAAO,GAAGrB,sBAAsB,CAAEC,UAAF,CAF3B;AAGL2B,MAAAA,KAHK;AAILJ,MAAAA,SAJK;AAKLC,MAAAA;AALK,QAMFxB,UANJ;AAOA,UAAMwC,SAAS,GAAG7C,UAAU,CAAG,WAAWyB,OAAS,EAAvB,EAA0B;AACrDqB,MAAAA,SAAS,EAAEd,KAAK,KAAK,MADgC;AAErD,oBAAcJ;AAFuC,KAA1B,CAA5B;AAIA,WACC;AAAK,MAAA,SAAS,EAAGiB;AAAjB,OACGrC,MAAM,CAACP,GAAP,CAAcmC,KAAF,IAAa;AAC1B,UAAIC,IAAJ;;AAEA,cAASR,MAAT;AACC,aAAK,OAAL;AACCQ,UAAAA,IAAI,GAAGD,KAAK,CAACpB,GAAb;AACA;;AACD,aAAK,YAAL;AACCqB,UAAAA,IAAI,GAAGD,KAAK,CAACjB,IAAb;AACA;AANF;;AASA,YAAMmB,GAAG,GACR;AACC,QAAA,GAAG,EAAGF,KAAK,CAACpB,GADb;AAEC,QAAA,GAAG,EAAGoB,KAAK,CAAChB,GAFb;AAGC,mBAAUgB,KAAK,CAACf;AAHjB,QADD;AAQA,aACC;AACC,QAAA,GAAG,EAAGe,KAAK,CAACf,EAAN,IAAYe,KAAK,CAACpB,GADzB;AAEC,QAAA,SAAS,EAAC;AAFX,SAIGqB,IAAI,GAAG;AAAG,QAAA,IAAI,EAAGA;AAAV,SAAmBC,GAAnB,CAAH,GAAkCA,GAJzC,CADD;AAQA,KA5BC,CADH,CADD;AAiCA;;AAxFF,CAnlBkB,CAAnB;AA+qBA,eAAe5B,UAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { map, some } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { RichText } from '@wordpress/block-editor';\n\n/**\n * Original function to determine default number of columns from a block's\n * attributes.\n *\n * Used in deprecations: v1-6, for versions of the gallery block that didn't use inner blocks.\n *\n * @param {Object} attributes Block attributes.\n * @return {number} Default number of columns for the gallery.\n */\nexport function defaultColumnsNumberV1( attributes ) {\n\treturn Math.min( 3, attributes.images.length );\n}\n\nconst deprecated = [\n\t{\n\t\tattributes: {\n\t\t\timages: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: '.blocks-gallery-item',\n\t\t\t\tquery: {\n\t\t\t\t\turl: {\n\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'src',\n\t\t\t\t\t},\n\t\t\t\t\tfullUrl: {\n\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t\t},\n\t\t\t\t\tlink: {\n\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t\t},\n\t\t\t\t\talt: {\n\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\t\tdefault: '',\n\t\t\t\t\t},\n\t\t\t\t\tid: {\n\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t\t},\n\t\t\t\t\tcaption: {\n\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tids: {\n\t\t\t\ttype: 'array',\n\t\t\t\titems: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t},\n\t\t\t\tdefault: [],\n\t\t\t},\n\t\t\tcolumns: {\n\t\t\t\ttype: 'number',\n\t\t\t\tminimum: 1,\n\t\t\t\tmaximum: 8,\n\t\t\t},\n\t\t\tcaption: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'html',\n\t\t\t\tselector: '.blocks-gallery-caption',\n\t\t\t},\n\t\t\timageCrop: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t\tlinkTo: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t\tsizeSlug: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'large',\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: true,\n\t\t},\n\t\tisEligible( { linkTo } ) {\n\t\t\treturn ! linkTo || linkTo === 'attachment' || linkTo === 'media';\n\t\t},\n\t\tmigrate( attributes ) {\n\t\t\tlet linkTo = attributes.linkTo;\n\t\t\tif ( ! attributes.linkTo ) {\n\t\t\t\tlinkTo = 'none';\n\t\t\t} else if ( attributes.linkTo === 'attachment' ) {\n\t\t\t\tlinkTo = 'post';\n\t\t\t} else if ( attributes.linkTo === 'media' ) {\n\t\t\t\tlinkTo = 'file';\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\tlinkTo,\n\t\t\t};\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\timages,\n\t\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\t\timageCrop,\n\t\t\t\tcaption,\n\t\t\t\tlinkTo,\n\t\t\t} = attributes;\n\n\t\t\treturn (\n\t\t\t\t<figure\n\t\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t\t}` }\n\t\t\t\t>\n\t\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\timage.id\n\t\t\t\t\t\t\t\t\t\t\t? `wp-image-${ image.id }`\n\t\t\t\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty(\n\t\t\t\t\t\t\t\t\t\t\timage.caption\n\t\t\t\t\t\t\t\t\t\t) && (\n\t\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t</ul>\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\timages: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: '.blocks-gallery-item',\n\t\t\t\tquery: {\n\t\t\t\t\turl: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'src',\n\t\t\t\t\t},\n\t\t\t\t\tfullUrl: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t\t},\n\t\t\t\t\tlink: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t\t},\n\t\t\t\t\talt: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\t\tdefault: '',\n\t\t\t\t\t},\n\t\t\t\t\tid: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t\t},\n\t\t\t\t\tcaption: {\n\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tids: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t},\n\t\t\tcolumns: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tcaption: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'html',\n\t\t\t\tselector: '.blocks-gallery-caption',\n\t\t\t},\n\t\t\timageCrop: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t\tlinkTo: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: true,\n\t\t},\n\t\tisEligible( { ids } ) {\n\t\t\treturn ids && ids.some( ( id ) => typeof id === 'string' );\n\t\t},\n\t\tmigrate( attributes ) {\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\tids: map( attributes.ids, ( id ) => {\n\t\t\t\t\tconst parsedId = parseInt( id, 10 );\n\t\t\t\t\treturn Number.isInteger( parsedId ) ? parsedId : null;\n\t\t\t\t} ),\n\t\t\t};\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\timages,\n\t\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\t\timageCrop,\n\t\t\t\tcaption,\n\t\t\t\tlinkTo,\n\t\t\t} = attributes;\n\n\t\t\treturn (\n\t\t\t\t<figure\n\t\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t\t}` }\n\t\t\t\t>\n\t\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\timage.id\n\t\t\t\t\t\t\t\t\t\t\t? `wp-image-${ image.id }`\n\t\t\t\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty(\n\t\t\t\t\t\t\t\t\t\t\timage.caption\n\t\t\t\t\t\t\t\t\t\t) && (\n\t\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t</ul>\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\timages: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: 'ul.wp-block-gallery .blocks-gallery-item',\n\t\t\t\tquery: {\n\t\t\t\t\turl: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'src',\n\t\t\t\t\t},\n\t\t\t\t\tfullUrl: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t\t},\n\t\t\t\t\talt: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\t\tdefault: '',\n\t\t\t\t\t},\n\t\t\t\t\tid: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t\t},\n\t\t\t\t\tlink: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t\t},\n\t\t\t\t\tcaption: {\n\t\t\t\t\t\ttype: 'array',\n\t\t\t\t\t\tsource: 'children',\n\t\t\t\t\t\tselector: 'figcaption',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tids: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t},\n\t\t\tcolumns: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\timageCrop: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t\tlinkTo: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: true,\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\timages,\n\t\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\t\timageCrop,\n\t\t\t\tlinkTo,\n\t\t\t} = attributes;\n\t\t\treturn (\n\t\t\t\t<ul\n\t\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t\t}` }\n\t\t\t\t>\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ image.caption &&\n\t\t\t\t\t\t\t\t\t\timage.caption.length > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\timages: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: 'ul.wp-block-gallery .blocks-gallery-item',\n\t\t\t\tquery: {\n\t\t\t\t\turl: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'src',\n\t\t\t\t\t},\n\t\t\t\t\talt: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\t\tdefault: '',\n\t\t\t\t\t},\n\t\t\t\t\tid: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t\t},\n\t\t\t\t\tlink: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tselector: 'img',\n\t\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t\t},\n\t\t\t\t\tcaption: {\n\t\t\t\t\t\ttype: 'array',\n\t\t\t\t\t\tsource: 'children',\n\t\t\t\t\t\tselector: 'figcaption',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tcolumns: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\timageCrop: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t\tlinkTo: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\t\tisEligible( { images, ids } ) {\n\t\t\treturn (\n\t\t\t\timages &&\n\t\t\t\timages.length > 0 &&\n\t\t\t\t( ( ! ids && images ) ||\n\t\t\t\t\t( ids && images && ids.length !== images.length ) ||\n\t\t\t\t\tsome( images, ( id, index ) => {\n\t\t\t\t\t\tif ( ! id && ids[ index ] !== null ) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn parseInt( id, 10 ) !== ids[ index ];\n\t\t\t\t\t} ) )\n\t\t\t);\n\t\t},\n\t\tmigrate( attributes ) {\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\tids: map( attributes.images, ( { id } ) => {\n\t\t\t\t\tif ( ! id ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\treturn parseInt( id, 10 );\n\t\t\t\t} ),\n\t\t\t};\n\t\t},\n\t\tsupports: {\n\t\t\talign: true,\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\timages,\n\t\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\t\timageCrop,\n\t\t\t\tlinkTo,\n\t\t\t} = attributes;\n\t\t\treturn (\n\t\t\t\t<ul\n\t\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t\t}` }\n\t\t\t\t>\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ image.caption &&\n\t\t\t\t\t\t\t\t\t\timage.caption.length > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\timages: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector:\n\t\t\t\t\t'div.wp-block-gallery figure.blocks-gallery-image img',\n\t\t\t\tquery: {\n\t\t\t\t\turl: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tattribute: 'src',\n\t\t\t\t\t},\n\t\t\t\t\talt: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\t\tdefault: '',\n\t\t\t\t\t},\n\t\t\t\t\tid: {\n\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tcolumns: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\timageCrop: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t\tlinkTo: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: true,\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\timages,\n\t\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\t\talign,\n\t\t\t\timageCrop,\n\t\t\t\tlinkTo,\n\t\t\t} = attributes;\n\t\t\tconst className = classnames( `columns-${ columns }`, {\n\t\t\t\talignnone: align === 'none',\n\t\t\t\t'is-cropped': imageCrop,\n\t\t\t} );\n\t\t\treturn (\n\t\t\t\t<div className={ className }>\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<figure\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-image\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/gallery/deprecated.js"],"names":["classnames","map","some","RichText","useBlockProps","createBlock","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","isGalleryV2Enabled","DEPRECATED_LINK_DESTINATION_MEDIA","DEPRECATED_LINK_DESTINATION_ATTACHMENT","defaultColumnsNumberV1","attributes","Math","min","images","length","getHrefAndDestination","image","destination","href","source_url","url","linkDestination","link","undefined","runV2Migration","linkTo","imageBlocks","getImageBlock","sizeSlug","caption","columns","imageCrop","allowResize","id","parseInt","alt","v6","type","default","source","selector","query","attribute","fullUrl","ids","items","minimum","maximum","supports","anchor","align","save","className","img","isEmpty","migrate","v5","isEligible","v4","parsedId","Number","isInteger","v3","v2","index","v1","alignnone"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { map, some } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\n\nimport { createBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n} from './constants';\nimport { isGalleryV2Enabled } from './shared';\n\nconst DEPRECATED_LINK_DESTINATION_MEDIA = 'file';\nconst DEPRECATED_LINK_DESTINATION_ATTACHMENT = 'post';\n\n/**\n * Original function to determine default number of columns from a block's\n * attributes.\n *\n * Used in deprecations: v1-6, for versions of the gallery block that didn't use inner blocks.\n *\n * @param {Object} attributes Block attributes.\n * @return {number} Default number of columns for the gallery.\n */\nexport function defaultColumnsNumberV1( attributes ) {\n\treturn Math.min( 3, attributes?.images?.length );\n}\n\n/**\n * Original function to determine new href and linkDestination values for an image block from the\n * supplied Gallery link destination.\n *\n * Used in deprecations: v1-6.\n *\n * @param {Object} image Gallery image.\n * @param {string} destination Gallery's selected link destination.\n * @return {Object} New attributes to assign to image block.\n */\nexport function getHrefAndDestination( image, destination ) {\n\t// Need to determine the URL that the selected destination maps to.\n\t// Gutenberg and WordPress use different constants so the new link\n\t// destination also needs to be tweaked.\n\tswitch ( destination ) {\n\t\tcase DEPRECATED_LINK_DESTINATION_MEDIA:\n\t\t\treturn {\n\t\t\t\thref: image?.source_url || image?.url, // eslint-disable-line camelcase\n\t\t\t\tlinkDestination: LINK_DESTINATION_MEDIA,\n\t\t\t};\n\t\tcase DEPRECATED_LINK_DESTINATION_ATTACHMENT:\n\t\t\treturn {\n\t\t\t\thref: image?.link,\n\t\t\t\tlinkDestination: LINK_DESTINATION_ATTACHMENT,\n\t\t\t};\n\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\treturn {\n\t\t\t\thref: image?.source_url || image?.url, // eslint-disable-line camelcase\n\t\t\t\tlinkDestination: LINK_DESTINATION_MEDIA,\n\t\t\t};\n\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\treturn {\n\t\t\t\thref: image?.link,\n\t\t\t\tlinkDestination: LINK_DESTINATION_ATTACHMENT,\n\t\t\t};\n\t\tcase LINK_DESTINATION_NONE:\n\t\t\treturn {\n\t\t\t\thref: undefined,\n\t\t\t\tlinkDestination: LINK_DESTINATION_NONE,\n\t\t\t};\n\t}\n\n\treturn {};\n}\n\nfunction runV2Migration( attributes ) {\n\tlet linkTo = attributes.linkTo ? attributes.linkTo : 'none';\n\n\tif ( linkTo === 'post' ) {\n\t\tlinkTo = 'attachment';\n\t} else if ( linkTo === 'file' ) {\n\t\tlinkTo = 'media';\n\t}\n\n\tconst imageBlocks = attributes.images.map( ( image ) => {\n\t\treturn getImageBlock( image, attributes.sizeSlug, linkTo );\n\t} );\n\n\treturn [\n\t\t{\n\t\t\tcaption: attributes.caption,\n\t\t\tcolumns: attributes.columns,\n\t\t\timageCrop: attributes.imageCrop,\n\t\t\tlinkTo,\n\t\t\tsizeSlug: attributes.sizeSlug,\n\t\t\tallowResize: false,\n\t\t},\n\t\timageBlocks,\n\t];\n}\n/**\n * Gets an Image block from gallery image data\n *\n * Used to migrate Galleries to nested Image InnerBlocks.\n *\n * @param {Object} image Image properties.\n * @param {string} sizeSlug Gallery sizeSlug attribute.\n * @param {string} linkTo Gallery linkTo attribute.\n * @return {Object} Image block.\n */\nexport function getImageBlock( image, sizeSlug, linkTo ) {\n\treturn createBlock( 'core/image', {\n\t\t...( image.id && { id: parseInt( image.id ) } ),\n\t\turl: image.url,\n\t\talt: image.alt,\n\t\tcaption: image.caption,\n\t\tsizeSlug,\n\t\t...getHrefAndDestination( image, linkTo ),\n\t} );\n}\n\nconst v6 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\titems: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t\tminimum: 1,\n\t\t\tmaximum: 8,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'large',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\tconst className = `columns-${ columns } ${\n\t\t\timageCrop ? 'is-cropped' : ''\n\t\t}`;\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className } ) }>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase DEPRECATED_LINK_DESTINATION_MEDIA:\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase DEPRECATED_LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn attributes;\n\t},\n};\nconst v5 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\titems: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t\tminimum: 1,\n\t\t\tmaximum: 8,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'large',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tisEligible( { linkTo } ) {\n\t\treturn ! linkTo || linkTo === 'attachment' || linkTo === 'media';\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\tlet linkTo = attributes.linkTo;\n\n\t\tif ( ! attributes.linkTo ) {\n\t\t\tlinkTo = 'none';\n\t\t} else if ( attributes.linkTo === 'attachment' ) {\n\t\t\tlinkTo = 'post';\n\t\t} else if ( attributes.linkTo === 'media' ) {\n\t\t\tlinkTo = 'file';\n\t\t}\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tlinkTo,\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\nconst v4 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tisEligible( { ids } ) {\n\t\treturn ids && ids.some( ( id ) => typeof id === 'string' );\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tids: map( attributes.ids, ( id ) => {\n\t\t\t\tconst parsedId = parseInt( id, 10 );\n\t\t\t\treturn Number.isInteger( parsedId ) ? parsedId : null;\n\t\t\t} ),\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\nconst v3 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'ul.wp-block-gallery .blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tsource: 'children',\n\t\t\t\t\tselector: 'figcaption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\treturn (\n\t\t\t<ul\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t\t\t{ image.caption && image.caption.length > 0 && (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\t\treturn attributes;\n\t},\n};\nconst v2 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'ul.wp-block-gallery .blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tsource: 'children',\n\t\t\t\t\tselector: 'figcaption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tisEligible( { images, ids } ) {\n\t\treturn (\n\t\t\timages &&\n\t\t\timages.length > 0 &&\n\t\t\t( ( ! ids && images ) ||\n\t\t\t\t( ids && images && ids.length !== images.length ) ||\n\t\t\t\tsome( images, ( id, index ) => {\n\t\t\t\t\tif ( ! id && ids[ index ] !== null ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\treturn parseInt( id, 10 ) !== ids[ index ];\n\t\t\t\t} ) )\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tids: map( attributes.images, ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\treturn parseInt( id, 10 );\n\t\t\t} ),\n\t\t};\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\treturn (\n\t\t\t<ul\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t\t\t{ image.caption && image.caption.length > 0 && (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</figure>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t);\n\t},\n};\n\nconst v1 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'div.wp-block-gallery figure.blocks-gallery-image img',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\talign,\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\tconst className = classnames( `columns-${ columns }`, {\n\t\t\talignnone: align === 'none',\n\t\t\t'is-cropped': imageCrop,\n\t\t} );\n\t\treturn (\n\t\t\t<div className={ className }>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<figure\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-image\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t</figure>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn attributes;\n\t},\n};\n\nexport default [ v6, v5, v4, v3, v2, v1 ];\n"]}