@wordpress/block-library 9.25.0 → 9.26.1-next.719a03cbe.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 (179) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/avatar/edit.js +84 -39
  3. package/build/avatar/edit.js.map +1 -1
  4. package/build/avatar/user-control.js +32 -17
  5. package/build/avatar/user-control.js.map +1 -1
  6. package/build/button/edit.js +1 -1
  7. package/build/button/edit.js.map +1 -1
  8. package/build/cover/edit/inspector-controls.js +2 -2
  9. package/build/cover/edit/inspector-controls.js.map +1 -1
  10. package/build/details/index.js +1 -1
  11. package/build/details/index.js.map +1 -1
  12. package/build/embed/variations.js +0 -10
  13. package/build/embed/variations.js.map +1 -1
  14. package/build/form/edit.js +0 -1
  15. package/build/form/edit.js.map +1 -1
  16. package/build/form/index.js +3 -3
  17. package/build/form/index.js.map +1 -1
  18. package/build/form-input/index.js +2 -1
  19. package/build/form-input/index.js.map +1 -1
  20. package/build/form-submission-notification/index.js +2 -1
  21. package/build/form-submission-notification/index.js.map +1 -1
  22. package/build/form-submit-button/index.js +2 -1
  23. package/build/form-submit-button/index.js.map +1 -1
  24. package/build/gallery/constants.js +2 -1
  25. package/build/gallery/constants.js.map +1 -1
  26. package/build/gallery/edit.js +93 -15
  27. package/build/gallery/edit.js.map +1 -1
  28. package/build/image/edit.js +6 -0
  29. package/build/image/edit.js.map +1 -1
  30. package/build/image/image.js +1 -0
  31. package/build/image/image.js.map +1 -1
  32. package/build/image/view.js +0 -3
  33. package/build/image/view.js.map +1 -1
  34. package/build/list/index.js +0 -1
  35. package/build/list/index.js.map +1 -1
  36. package/build/more/edit.native.js +17 -32
  37. package/build/more/edit.native.js.map +1 -1
  38. package/build/navigation-link/edit.js +28 -1
  39. package/build/navigation-link/edit.js.map +1 -1
  40. package/build/post-author/edit.js +152 -52
  41. package/build/post-author/edit.js.map +1 -1
  42. package/build/post-comments-form/form.js +1 -1
  43. package/build/post-comments-form/form.js.map +1 -1
  44. package/build/post-featured-image/edit.js +2 -1
  45. package/build/post-featured-image/edit.js.map +1 -1
  46. package/build/post-navigation-link/edit.js +72 -33
  47. package/build/post-navigation-link/edit.js.map +1 -1
  48. package/build/search/edit.js +1 -1
  49. package/build/search/edit.js.map +1 -1
  50. package/build/site-logo/edit.js +69 -24
  51. package/build/site-logo/edit.js.map +1 -1
  52. package/build/social-link/edit.js +21 -5
  53. package/build/social-link/edit.js.map +1 -1
  54. package/build/social-link/edit.native.js +13 -5
  55. package/build/social-link/edit.native.js.map +1 -1
  56. package/build/social-link/social-list.js +17 -25
  57. package/build/social-link/social-list.js.map +1 -1
  58. package/build/social-links/edit.js +8 -5
  59. package/build/social-links/edit.js.map +1 -1
  60. package/build/video/tracks-editor.js +23 -9
  61. package/build/video/tracks-editor.js.map +1 -1
  62. package/build-module/avatar/edit.js +83 -38
  63. package/build-module/avatar/edit.js.map +1 -1
  64. package/build-module/avatar/user-control.js +33 -18
  65. package/build-module/avatar/user-control.js.map +1 -1
  66. package/build-module/button/edit.js +1 -1
  67. package/build-module/button/edit.js.map +1 -1
  68. package/build-module/cover/edit/inspector-controls.js +2 -2
  69. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  70. package/build-module/details/index.js +1 -1
  71. package/build-module/details/index.js.map +1 -1
  72. package/build-module/embed/variations.js +0 -10
  73. package/build-module/embed/variations.js.map +1 -1
  74. package/build-module/form/edit.js +0 -1
  75. package/build-module/form/edit.js.map +1 -1
  76. package/build-module/form/index.js +3 -3
  77. package/build-module/form/index.js.map +1 -1
  78. package/build-module/form-input/index.js +2 -1
  79. package/build-module/form-input/index.js.map +1 -1
  80. package/build-module/form-submission-notification/index.js +2 -1
  81. package/build-module/form-submission-notification/index.js.map +1 -1
  82. package/build-module/form-submit-button/index.js +2 -1
  83. package/build-module/form-submit-button/index.js.map +1 -1
  84. package/build-module/gallery/constants.js +1 -0
  85. package/build-module/gallery/constants.js.map +1 -1
  86. package/build-module/gallery/edit.js +95 -17
  87. package/build-module/gallery/edit.js.map +1 -1
  88. package/build-module/image/edit.js +6 -0
  89. package/build-module/image/edit.js.map +1 -1
  90. package/build-module/image/image.js +1 -0
  91. package/build-module/image/image.js.map +1 -1
  92. package/build-module/image/view.js +0 -3
  93. package/build-module/image/view.js.map +1 -1
  94. package/build-module/list/index.js +0 -1
  95. package/build-module/list/index.js.map +1 -1
  96. package/build-module/more/edit.native.js +16 -30
  97. package/build-module/more/edit.native.js.map +1 -1
  98. package/build-module/navigation-link/edit.js +29 -2
  99. package/build-module/navigation-link/edit.js.map +1 -1
  100. package/build-module/post-author/edit.js +153 -53
  101. package/build-module/post-author/edit.js.map +1 -1
  102. package/build-module/post-comments-form/form.js +1 -1
  103. package/build-module/post-comments-form/form.js.map +1 -1
  104. package/build-module/post-featured-image/edit.js +2 -1
  105. package/build-module/post-featured-image/edit.js.map +1 -1
  106. package/build-module/post-navigation-link/edit.js +73 -34
  107. package/build-module/post-navigation-link/edit.js.map +1 -1
  108. package/build-module/search/edit.js +1 -1
  109. package/build-module/search/edit.js.map +1 -1
  110. package/build-module/site-logo/edit.js +70 -25
  111. package/build-module/site-logo/edit.js.map +1 -1
  112. package/build-module/social-link/edit.js +24 -8
  113. package/build-module/social-link/edit.js.map +1 -1
  114. package/build-module/social-link/edit.native.js +15 -6
  115. package/build-module/social-link/edit.native.js.map +1 -1
  116. package/build-module/social-link/social-list.js +16 -21
  117. package/build-module/social-link/social-list.js.map +1 -1
  118. package/build-module/social-links/edit.js +8 -5
  119. package/build-module/social-links/edit.js.map +1 -1
  120. package/build-module/video/tracks-editor.js +24 -10
  121. package/build-module/video/tracks-editor.js.map +1 -1
  122. package/build-style/calendar/style-rtl.css +7 -7
  123. package/build-style/calendar/style.css +7 -7
  124. package/build-style/comments-pagination/editor-rtl.css +0 -12
  125. package/build-style/comments-pagination/editor.css +0 -14
  126. package/build-style/comments-pagination/style-rtl.css +0 -7
  127. package/build-style/comments-pagination/style.css +0 -9
  128. package/build-style/editor-rtl.css +0 -30
  129. package/build-style/editor.css +0 -32
  130. package/build-style/gallery/editor-rtl.css +0 -13
  131. package/build-style/gallery/editor.css +0 -13
  132. package/build-style/navigation/style-rtl.css +5 -0
  133. package/build-style/navigation/style.css +5 -0
  134. package/build-style/style-rtl.css +12 -14
  135. package/build-style/style.css +12 -16
  136. package/package.json +35 -35
  137. package/src/avatar/edit.js +99 -51
  138. package/src/avatar/user-control.js +34 -29
  139. package/src/button/edit.js +1 -1
  140. package/src/calendar/style.scss +10 -10
  141. package/src/comments-pagination/editor.scss +0 -15
  142. package/src/comments-pagination/style.scss +0 -8
  143. package/src/cover/edit/inspector-controls.js +1 -1
  144. package/src/details/index.js +1 -1
  145. package/src/editor.scss +0 -1
  146. package/src/embed/variations.js +0 -8
  147. package/src/form/block.json +1 -2
  148. package/src/form/edit.js +0 -1
  149. package/src/form/index.js +1 -0
  150. package/src/form-input/index.js +1 -0
  151. package/src/form-submission-notification/index.js +1 -0
  152. package/src/form-submit-button/index.js +1 -0
  153. package/src/gallery/constants.js +1 -0
  154. package/src/gallery/edit.js +182 -68
  155. package/src/gallery/editor.scss +0 -17
  156. package/src/image/edit.js +12 -0
  157. package/src/image/image.js +1 -0
  158. package/src/image/index.php +4 -1
  159. package/src/image/view.js +0 -3
  160. package/src/list/block.json +0 -1
  161. package/src/more/edit.native.js +19 -33
  162. package/src/navigation/style.scss +9 -0
  163. package/src/navigation-link/edit.js +32 -2
  164. package/src/post-author/edit.js +178 -63
  165. package/src/post-comments-form/form.js +1 -1
  166. package/src/post-featured-image/edit.js +1 -0
  167. package/src/post-navigation-link/edit.js +96 -51
  168. package/src/rss/index.php +2 -1
  169. package/src/search/edit.js +1 -1
  170. package/src/site-logo/edit.js +90 -35
  171. package/src/social-link/edit.js +18 -7
  172. package/src/social-link/edit.native.js +10 -4
  173. package/src/social-link/index.php +13 -0
  174. package/src/social-link/social-list.js +15 -20
  175. package/src/social-links/edit.js +6 -7
  176. package/src/video/tracks-editor.js +18 -6
  177. package/build-style/post-author/editor-rtl.css +0 -140
  178. package/build-style/post-author/editor.css +0 -140
  179. package/src/post-author/editor.scss +0 -7
@@ -8,9 +8,13 @@ exports.default = void 0;
8
8
  var _clsx = _interopRequireDefault(require("clsx"));
9
9
  var _blockEditor = require("@wordpress/block-editor");
10
10
  var _components = require("@wordpress/components");
11
+ var _compose = require("@wordpress/compose");
12
+ var _element = require("@wordpress/element");
11
13
  var _data = require("@wordpress/data");
12
14
  var _i18n = require("@wordpress/i18n");
15
+ var _htmlEntities = require("@wordpress/html-entities");
13
16
  var _coreData = require("@wordpress/core-data");
17
+ var _hooks = require("../utils/hooks");
14
18
  var _jsxRuntime = require("react/jsx-runtime");
15
19
  /**
16
20
  * External dependencies
@@ -20,11 +24,77 @@ var _jsxRuntime = require("react/jsx-runtime");
20
24
  * WordPress dependencies
21
25
  */
22
26
 
23
- const minimumUsersForCombobox = 25;
27
+ /**
28
+ * Internal dependencies
29
+ */
30
+
24
31
  const AUTHORS_QUERY = {
25
32
  who: 'authors',
26
- per_page: 100
33
+ per_page: 100,
34
+ _fields: 'id,name',
35
+ context: 'view'
27
36
  };
37
+ function AuthorCombobox({
38
+ value,
39
+ onChange
40
+ }) {
41
+ const [filterValue, setFilterValue] = (0, _element.useState)('');
42
+ const {
43
+ authors,
44
+ isLoading
45
+ } = (0, _data.useSelect)(select => {
46
+ const {
47
+ getUsers,
48
+ isResolving
49
+ } = select(_coreData.store);
50
+ const query = {
51
+ ...AUTHORS_QUERY
52
+ };
53
+ if (filterValue) {
54
+ query.search = filterValue;
55
+ query.search_columns = ['name'];
56
+ }
57
+ return {
58
+ authors: getUsers(query),
59
+ isLoading: isResolving('getUsers', [query])
60
+ };
61
+ }, [filterValue]);
62
+ const authorOptions = (0, _element.useMemo)(() => {
63
+ const fetchedAuthors = (authors !== null && authors !== void 0 ? authors : []).map(author => {
64
+ return {
65
+ value: author.id,
66
+ label: (0, _htmlEntities.decodeEntities)(author.name)
67
+ };
68
+ });
69
+
70
+ // Ensure the current author is included in the list.
71
+ const foundAuthor = fetchedAuthors.findIndex(fetchedAuthor => value?.id === fetchedAuthor.value);
72
+ let currentAuthor = [];
73
+ if (foundAuthor < 0 && value) {
74
+ currentAuthor = [{
75
+ value: value.id,
76
+ label: (0, _htmlEntities.decodeEntities)(value.name)
77
+ }];
78
+ } else if (foundAuthor < 0 && !value) {
79
+ currentAuthor = [{
80
+ value: 0,
81
+ label: (0, _i18n.__)('(No author)')
82
+ }];
83
+ }
84
+ return [...currentAuthor, ...fetchedAuthors];
85
+ }, [authors, value]);
86
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ComboboxControl, {
87
+ __next40pxDefaultSize: true,
88
+ __nextHasNoMarginBottom: true,
89
+ label: (0, _i18n.__)('Author'),
90
+ options: authorOptions,
91
+ value: value?.id,
92
+ onFilterValueChange: (0, _compose.debounce)(setFilterValue, 300),
93
+ onChange: onChange,
94
+ allowReset: false,
95
+ isLoading: isLoading
96
+ });
97
+ }
28
98
  function PostAuthorEdit({
29
99
  isSelected,
30
100
  context: {
@@ -36,25 +106,26 @@ function PostAuthorEdit({
36
106
  setAttributes
37
107
  }) {
38
108
  const isDescendentOfQueryLoop = Number.isFinite(queryId);
109
+ const dropdownMenuProps = (0, _hooks.useToolsPanelDropdownMenuProps)();
39
110
  const {
40
- authorId,
41
111
  authorDetails,
42
- authors,
112
+ canAssignAuthor,
43
113
  supportsAuthor
44
114
  } = (0, _data.useSelect)(select => {
45
115
  var _getPostType$supports;
46
116
  const {
47
117
  getEditedEntityRecord,
48
118
  getUser,
49
- getUsers,
50
119
  getPostType
51
120
  } = select(_coreData.store);
52
- const _authorId = getEditedEntityRecord('postType', postType, postId)?.author;
121
+ const currentPost = getEditedEntityRecord('postType', postType, postId);
122
+ const authorId = currentPost?.author;
53
123
  return {
54
- authorId: _authorId,
55
- authorDetails: _authorId ? getUser(_authorId) : null,
56
- authors: getUsers(AUTHORS_QUERY),
57
- supportsAuthor: (_getPostType$supports = getPostType(postType)?.supports?.author) !== null && _getPostType$supports !== void 0 ? _getPostType$supports : false
124
+ authorDetails: authorId ? getUser(authorId, {
125
+ context: 'view'
126
+ }) : null,
127
+ supportsAuthor: (_getPostType$supports = getPostType(postType)?.supports?.author) !== null && _getPostType$supports !== void 0 ? _getPostType$supports : false,
128
+ canAssignAuthor: currentPost?._links?.['wp:action-assign-author'] ? true : false
58
129
  };
59
130
  }, [postType, postId]);
60
131
  const {
@@ -66,7 +137,8 @@ function PostAuthorEdit({
66
137
  showBio,
67
138
  byline,
68
139
  isLink,
69
- linkTarget
140
+ linkTarget,
141
+ avatarSize
70
142
  } = attributes;
71
143
  const avatarSizes = [];
72
144
  const authorName = authorDetails?.name || (0, _i18n.__)('Post Author');
@@ -83,22 +155,12 @@ function PostAuthorEdit({
83
155
  [`has-text-align-${textAlign}`]: textAlign
84
156
  })
85
157
  });
86
- const authorOptions = authors?.length ? authors.map(({
87
- id,
88
- name
89
- }) => {
90
- return {
91
- value: id,
92
- label: name
93
- };
94
- }) : [];
95
158
  const handleSelect = nextAuthorId => {
96
159
  editEntityRecord('postType', postType, postId, {
97
160
  author: nextAuthorId
98
161
  });
99
162
  };
100
- const showCombobox = authorOptions.length >= minimumUsersForCombobox;
101
- const showAuthorControl = !!postId && !isDescendentOfQueryLoop && authorOptions.length > 0;
163
+ const showAuthorControl = !!postId && !isDescendentOfQueryLoop && canAssignAuthor;
102
164
  if (!supportsAuthor && postType !== undefined) {
103
165
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
104
166
  ...blockProps,
@@ -109,67 +171,105 @@ function PostAuthorEdit({
109
171
  }
110
172
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
111
173
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.InspectorControls, {
112
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.PanelBody, {
113
- title: (0, _i18n.__)('Settings'),
114
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
115
- spacing: 4,
116
- className: "wp-block-post-author__inspector-settings",
117
- children: [showAuthorControl && (showCombobox && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ComboboxControl, {
118
- __next40pxDefaultSize: true,
119
- __nextHasNoMarginBottom: true,
120
- label: (0, _i18n.__)('Author'),
121
- options: authorOptions,
122
- value: authorId,
123
- onChange: handleSelect,
124
- allowReset: false
125
- }) || /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.SelectControl, {
126
- __next40pxDefaultSize: true,
127
- __nextHasNoMarginBottom: true,
128
- label: (0, _i18n.__)('Author'),
129
- value: authorId,
130
- options: authorOptions,
174
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalToolsPanel, {
175
+ label: (0, _i18n.__)('Settings'),
176
+ resetAll: () => {
177
+ setAttributes({
178
+ avatarSize: 48,
179
+ showAvatar: true,
180
+ isLink: false,
181
+ linkTarget: '_self'
182
+ });
183
+ },
184
+ dropdownMenuProps: dropdownMenuProps,
185
+ children: [showAuthorControl && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
186
+ style: {
187
+ gridColumn: '1 / -1'
188
+ },
189
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(AuthorCombobox, {
190
+ value: authorDetails,
131
191
  onChange: handleSelect
132
- })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
192
+ })
193
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanelItem, {
194
+ label: (0, _i18n.__)('Show avatar'),
195
+ isShownByDefault: true,
196
+ hasValue: () => !showAvatar,
197
+ onDeselect: () => setAttributes({
198
+ showAvatar: true
199
+ }),
200
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
133
201
  __nextHasNoMarginBottom: true,
134
202
  label: (0, _i18n.__)('Show avatar'),
135
203
  checked: showAvatar,
136
204
  onChange: () => setAttributes({
137
205
  showAvatar: !showAvatar
138
206
  })
139
- }), showAvatar && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.SelectControl, {
207
+ })
208
+ }), showAvatar && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanelItem, {
209
+ label: (0, _i18n.__)('Avatar size'),
210
+ isShownByDefault: true,
211
+ hasValue: () => avatarSize !== 48,
212
+ onDeselect: () => setAttributes({
213
+ avatarSize: 48
214
+ }),
215
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.SelectControl, {
140
216
  __next40pxDefaultSize: true,
141
217
  __nextHasNoMarginBottom: true,
142
218
  label: (0, _i18n.__)('Avatar size'),
143
- value: attributes.avatarSize,
219
+ value: avatarSize,
144
220
  options: avatarSizes,
145
221
  onChange: size => {
146
222
  setAttributes({
147
223
  avatarSize: Number(size)
148
224
  });
149
225
  }
150
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
226
+ })
227
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanelItem, {
228
+ label: (0, _i18n.__)('Show bio'),
229
+ isShownByDefault: true,
230
+ hasValue: () => !!showBio,
231
+ onDeselect: () => setAttributes({
232
+ showBio: undefined
233
+ }),
234
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
151
235
  __nextHasNoMarginBottom: true,
152
236
  label: (0, _i18n.__)('Show bio'),
153
- checked: showBio,
237
+ checked: !!showBio,
154
238
  onChange: () => setAttributes({
155
239
  showBio: !showBio
156
240
  })
157
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
241
+ })
242
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanelItem, {
243
+ label: (0, _i18n.__)('Link author name to author page'),
244
+ isShownByDefault: true,
245
+ hasValue: () => !!isLink,
246
+ onDeselect: () => setAttributes({
247
+ isLink: false
248
+ }),
249
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
158
250
  __nextHasNoMarginBottom: true,
159
251
  label: (0, _i18n.__)('Link author name to author page'),
160
252
  checked: isLink,
161
253
  onChange: () => setAttributes({
162
254
  isLink: !isLink
163
255
  })
164
- }), isLink && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
256
+ })
257
+ }), isLink && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanelItem, {
258
+ label: (0, _i18n.__)('Link target'),
259
+ isShownByDefault: true,
260
+ hasValue: () => linkTarget !== '_self',
261
+ onDeselect: () => setAttributes({
262
+ linkTarget: '_self'
263
+ }),
264
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
165
265
  __nextHasNoMarginBottom: true,
166
266
  label: (0, _i18n.__)('Open in new tab'),
167
267
  onChange: value => setAttributes({
168
268
  linkTarget: value ? '_blank' : '_self'
169
269
  }),
170
270
  checked: linkTarget === '_blank'
171
- })]
172
- })
271
+ })
272
+ })]
173
273
  })
174
274
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.BlockControls, {
175
275
  group: "block",
@@ -186,8 +286,8 @@ function PostAuthorEdit({
186
286
  children: [showAvatar && authorDetails?.avatar_urls && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
187
287
  className: "wp-block-post-author__avatar",
188
288
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
189
- width: attributes.avatarSize,
190
- src: authorDetails.avatar_urls[attributes.avatarSize],
289
+ width: avatarSize,
290
+ src: authorDetails.avatar_urls[avatarSize],
191
291
  alt: authorDetails.name
192
292
  })
193
293
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_blockEditor","_components","_data","_i18n","_coreData","_jsxRuntime","minimumUsersForCombobox","AUTHORS_QUERY","who","per_page","PostAuthorEdit","isSelected","context","postType","postId","queryId","attributes","setAttributes","isDescendentOfQueryLoop","Number","isFinite","authorId","authorDetails","authors","supportsAuthor","useSelect","select","_getPostType$supports","getEditedEntityRecord","getUser","getUsers","getPostType","coreStore","_authorId","author","supports","editEntityRecord","useDispatch","textAlign","showAvatar","showBio","byline","isLink","linkTarget","avatarSizes","authorName","name","__","avatar_urls","Object","keys","forEach","size","push","value","label","blockProps","useBlockProps","className","clsx","authorOptions","length","map","id","handleSelect","nextAuthorId","showCombobox","showAuthorControl","undefined","jsx","children","sprintf","jsxs","Fragment","InspectorControls","PanelBody","title","__experimentalVStack","spacing","ComboboxControl","__next40pxDefaultSize","__nextHasNoMarginBottom","options","onChange","allowReset","SelectControl","ToggleControl","checked","avatarSize","BlockControls","group","AlignmentControl","nextAlign","width","src","alt","RichText","isEmpty","identifier","placeholder","href","onClick","event","preventDefault","dangerouslySetInnerHTML","__html","description","_default","exports","default"],"sources":["@wordpress/block-library/src/post-author/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport {\n\tComboboxControl,\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\nconst minimumUsersForCombobox = 25;\n\nconst AUTHORS_QUERY = {\n\twho: 'authors',\n\tper_page: 100,\n};\n\nfunction PostAuthorEdit( {\n\tisSelected,\n\tcontext: { postType, postId, queryId },\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst { authorId, authorDetails, authors, supportsAuthor } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, getUser, getUsers, getPostType } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst _authorId = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId\n\t\t\t)?.author;\n\n\t\t\treturn {\n\t\t\t\tauthorId: _authorId,\n\t\t\t\tauthorDetails: _authorId ? getUser( _authorId ) : null,\n\t\t\t\tauthors: getUsers( AUTHORS_QUERY ),\n\t\t\t\tsupportsAuthor:\n\t\t\t\t\tgetPostType( postType )?.supports?.author ?? false,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst { textAlign, showAvatar, showBio, byline, isLink, linkTarget } =\n\t\tattributes;\n\tconst avatarSizes = [];\n\tconst authorName = authorDetails?.name || __( 'Post Author' );\n\tif ( authorDetails?.avatar_urls ) {\n\t\tObject.keys( authorDetails.avatar_urls ).forEach( ( size ) => {\n\t\t\tavatarSizes.push( {\n\t\t\t\tvalue: size,\n\t\t\t\tlabel: `${ size } x ${ size }`,\n\t\t\t} );\n\t\t} );\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst authorOptions = authors?.length\n\t\t? authors.map( ( { id, name } ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: id,\n\t\t\t\t\tlabel: name,\n\t\t\t\t};\n\t\t } )\n\t\t: [];\n\n\tconst handleSelect = ( nextAuthorId ) => {\n\t\teditEntityRecord( 'postType', postType, postId, {\n\t\t\tauthor: nextAuthorId,\n\t\t} );\n\t};\n\n\tconst showCombobox = authorOptions.length >= minimumUsersForCombobox;\n\tconst showAuthorControl =\n\t\t!! postId && ! isDescendentOfQueryLoop && authorOptions.length > 0;\n\n\tif ( ! supportsAuthor && postType !== undefined ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t__( 'This post type (%s) does not support the author.' ),\n\t\t\t\t\tpostType\n\t\t\t\t) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<VStack\n\t\t\t\t\t\tspacing={ 4 }\n\t\t\t\t\t\tclassName=\"wp-block-post-author__inspector-settings\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showAuthorControl &&\n\t\t\t\t\t\t\t( ( showCombobox && (\n\t\t\t\t\t\t\t\t<ComboboxControl\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Author' ) }\n\t\t\t\t\t\t\t\t\toptions={ authorOptions }\n\t\t\t\t\t\t\t\t\tvalue={ authorId }\n\t\t\t\t\t\t\t\t\tonChange={ handleSelect }\n\t\t\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) ) || (\n\t\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Author' ) }\n\t\t\t\t\t\t\t\t\tvalue={ authorId }\n\t\t\t\t\t\t\t\t\toptions={ authorOptions }\n\t\t\t\t\t\t\t\t\tonChange={ handleSelect }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show avatar' ) }\n\t\t\t\t\t\t\tchecked={ showAvatar }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showAvatar: ! showAvatar } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ showAvatar && (\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Avatar size' ) }\n\t\t\t\t\t\t\t\tvalue={ attributes.avatarSize }\n\t\t\t\t\t\t\t\toptions={ avatarSizes }\n\t\t\t\t\t\t\t\tonChange={ ( size ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tavatarSize: Number( size ),\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\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show bio' ) }\n\t\t\t\t\t\t\tchecked={ showBio }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showBio: ! showBio } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Link author name to author page' ) }\n\t\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { isLink: ! isLink } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</VStack>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ showAvatar && authorDetails?.avatar_urls && (\n\t\t\t\t\t<div className=\"wp-block-post-author__avatar\">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\twidth={ attributes.avatarSize }\n\t\t\t\t\t\t\tsrc={\n\t\t\t\t\t\t\t\tauthorDetails.avatar_urls[\n\t\t\t\t\t\t\t\t\tattributes.avatarSize\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\talt={ authorDetails.name }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t<div className=\"wp-block-post-author__content\">\n\t\t\t\t\t{ ( ! RichText.isEmpty( byline ) || isSelected ) && (\n\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\tidentifier=\"byline\"\n\t\t\t\t\t\t\tclassName=\"wp-block-post-author__byline\"\n\t\t\t\t\t\t\taria-label={ __( 'Post author byline text' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Write byline…' ) }\n\t\t\t\t\t\t\tvalue={ byline }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { byline: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<p className=\"wp-block-post-author__name\">\n\t\t\t\t\t\t{ isLink ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref=\"#post-author-pseudo-link\"\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ authorName }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\tauthorName\n\t\t\t\t\t\t) }\n\t\t\t\t\t</p>\n\t\t\t\t\t{ showBio && (\n\t\t\t\t\t\t<p\n\t\t\t\t\t\t\tclassName=\"wp-block-post-author__bio\"\n\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t__html: authorDetails?.description,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default PostAuthorEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_blockEditor","_components","_compose","_element","_data","_i18n","_htmlEntities","_coreData","_hooks","_jsxRuntime","AUTHORS_QUERY","who","per_page","_fields","context","AuthorCombobox","value","onChange","filterValue","setFilterValue","useState","authors","isLoading","useSelect","select","getUsers","isResolving","coreStore","query","search","search_columns","authorOptions","useMemo","fetchedAuthors","map","author","id","label","decodeEntities","name","foundAuthor","findIndex","fetchedAuthor","currentAuthor","__","jsx","ComboboxControl","__next40pxDefaultSize","__nextHasNoMarginBottom","options","onFilterValueChange","debounce","allowReset","PostAuthorEdit","isSelected","postType","postId","queryId","attributes","setAttributes","isDescendentOfQueryLoop","Number","isFinite","dropdownMenuProps","useToolsPanelDropdownMenuProps","authorDetails","canAssignAuthor","supportsAuthor","_getPostType$supports","getEditedEntityRecord","getUser","getPostType","currentPost","authorId","supports","_links","editEntityRecord","useDispatch","textAlign","showAvatar","showBio","byline","isLink","linkTarget","avatarSize","avatarSizes","authorName","avatar_urls","Object","keys","forEach","size","push","blockProps","useBlockProps","className","clsx","handleSelect","nextAuthorId","showAuthorControl","undefined","children","sprintf","jsxs","Fragment","InspectorControls","__experimentalToolsPanel","resetAll","style","gridColumn","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","checked","SelectControl","BlockControls","group","AlignmentControl","nextAlign","width","src","alt","RichText","isEmpty","identifier","placeholder","href","onClick","event","preventDefault","dangerouslySetInnerHTML","__html","description","_default","exports","default"],"sources":["@wordpress/block-library/src/post-author/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport {\n\tComboboxControl,\n\tSelectControl,\n\tToggleControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { debounce } from '@wordpress/compose';\nimport { useMemo, useState } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\n\nconst AUTHORS_QUERY = {\n\twho: 'authors',\n\tper_page: 100,\n\t_fields: 'id,name',\n\tcontext: 'view',\n};\n\nfunction AuthorCombobox( { value, onChange } ) {\n\tconst [ filterValue, setFilterValue ] = useState( '' );\n\tconst { authors, isLoading } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getUsers, isResolving } = select( coreStore );\n\n\t\t\tconst query = { ...AUTHORS_QUERY };\n\t\t\tif ( filterValue ) {\n\t\t\t\tquery.search = filterValue;\n\t\t\t\tquery.search_columns = [ 'name' ];\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tauthors: getUsers( query ),\n\t\t\t\tisLoading: isResolving( 'getUsers', [ query ] ),\n\t\t\t};\n\t\t},\n\t\t[ filterValue ]\n\t);\n\n\tconst authorOptions = useMemo( () => {\n\t\tconst fetchedAuthors = ( authors ?? [] ).map( ( author ) => {\n\t\t\treturn {\n\t\t\t\tvalue: author.id,\n\t\t\t\tlabel: decodeEntities( author.name ),\n\t\t\t};\n\t\t} );\n\n\t\t// Ensure the current author is included in the list.\n\t\tconst foundAuthor = fetchedAuthors.findIndex(\n\t\t\t( fetchedAuthor ) => value?.id === fetchedAuthor.value\n\t\t);\n\n\t\tlet currentAuthor = [];\n\t\tif ( foundAuthor < 0 && value ) {\n\t\t\tcurrentAuthor = [\n\t\t\t\t{\n\t\t\t\t\tvalue: value.id,\n\t\t\t\t\tlabel: decodeEntities( value.name ),\n\t\t\t\t},\n\t\t\t];\n\t\t} else if ( foundAuthor < 0 && ! value ) {\n\t\t\tcurrentAuthor = [\n\t\t\t\t{\n\t\t\t\t\tvalue: 0,\n\t\t\t\t\tlabel: __( '(No author)' ),\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\n\t\treturn [ ...currentAuthor, ...fetchedAuthors ];\n\t}, [ authors, value ] );\n\n\treturn (\n\t\t<ComboboxControl\n\t\t\t__next40pxDefaultSize\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Author' ) }\n\t\t\toptions={ authorOptions }\n\t\t\tvalue={ value?.id }\n\t\t\tonFilterValueChange={ debounce( setFilterValue, 300 ) }\n\t\t\tonChange={ onChange }\n\t\t\tallowReset={ false }\n\t\t\tisLoading={ isLoading }\n\t\t/>\n\t);\n}\n\nfunction PostAuthorEdit( {\n\tisSelected,\n\tcontext: { postType, postId, queryId },\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst { authorDetails, canAssignAuthor, supportsAuthor } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, getUser, getPostType } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst currentPost = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId\n\t\t\t);\n\t\t\tconst authorId = currentPost?.author;\n\n\t\t\treturn {\n\t\t\t\tauthorDetails: authorId\n\t\t\t\t\t? getUser( authorId, { context: 'view' } )\n\t\t\t\t\t: null,\n\t\t\t\tsupportsAuthor:\n\t\t\t\t\tgetPostType( postType )?.supports?.author ?? false,\n\t\t\t\tcanAssignAuthor: currentPost?._links?.[\n\t\t\t\t\t'wp:action-assign-author'\n\t\t\t\t]\n\t\t\t\t\t? true\n\t\t\t\t\t: false,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst {\n\t\ttextAlign,\n\t\tshowAvatar,\n\t\tshowBio,\n\t\tbyline,\n\t\tisLink,\n\t\tlinkTarget,\n\t\tavatarSize,\n\t} = attributes;\n\tconst avatarSizes = [];\n\tconst authorName = authorDetails?.name || __( 'Post Author' );\n\tif ( authorDetails?.avatar_urls ) {\n\t\tObject.keys( authorDetails.avatar_urls ).forEach( ( size ) => {\n\t\t\tavatarSizes.push( {\n\t\t\t\tvalue: size,\n\t\t\t\tlabel: `${ size } x ${ size }`,\n\t\t\t} );\n\t\t} );\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst handleSelect = ( nextAuthorId ) => {\n\t\teditEntityRecord( 'postType', postType, postId, {\n\t\t\tauthor: nextAuthorId,\n\t\t} );\n\t};\n\n\tconst showAuthorControl =\n\t\t!! postId && ! isDescendentOfQueryLoop && canAssignAuthor;\n\n\tif ( ! supportsAuthor && postType !== undefined ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t__( 'This post type (%s) does not support the author.' ),\n\t\t\t\t\tpostType\n\t\t\t\t) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tavatarSize: 48,\n\t\t\t\t\t\t\tshowAvatar: true,\n\t\t\t\t\t\t\tisLink: false,\n\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t{ showAuthorControl && (\n\t\t\t\t\t\t<div style={ { gridColumn: '1 / -1' } }>\n\t\t\t\t\t\t\t<AuthorCombobox\n\t\t\t\t\t\t\t\tvalue={ authorDetails }\n\t\t\t\t\t\t\t\tonChange={ handleSelect }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Show avatar' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => ! showAvatar }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showAvatar: true } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show avatar' ) }\n\t\t\t\t\t\t\tchecked={ showAvatar }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowAvatar: ! showAvatar,\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\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t{ showAvatar && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Avatar size' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => avatarSize !== 48 }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { avatarSize: 48 } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Avatar size' ) }\n\t\t\t\t\t\t\t\tvalue={ avatarSize }\n\t\t\t\t\t\t\t\toptions={ avatarSizes }\n\t\t\t\t\t\t\t\tonChange={ ( size ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tavatarSize: Number( size ),\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\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Show bio' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! showBio }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showBio: undefined } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show bio' ) }\n\t\t\t\t\t\t\tchecked={ !! showBio }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showBio: ! showBio } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Link author name to author page' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! isLink }\n\t\t\t\t\t\tonDeselect={ () => setAttributes( { isLink: false } ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Link author name to author page' ) }\n\t\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { isLink: ! isLink } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Link target' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => linkTarget !== '_self' }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { linkTarget: '_self' } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ showAvatar && authorDetails?.avatar_urls && (\n\t\t\t\t\t<div className=\"wp-block-post-author__avatar\">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\twidth={ avatarSize }\n\t\t\t\t\t\t\tsrc={ authorDetails.avatar_urls[ avatarSize ] }\n\t\t\t\t\t\t\talt={ authorDetails.name }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t<div className=\"wp-block-post-author__content\">\n\t\t\t\t\t{ ( ! RichText.isEmpty( byline ) || isSelected ) && (\n\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\tidentifier=\"byline\"\n\t\t\t\t\t\t\tclassName=\"wp-block-post-author__byline\"\n\t\t\t\t\t\t\taria-label={ __( 'Post author byline text' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Write byline…' ) }\n\t\t\t\t\t\t\tvalue={ byline }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { byline: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<p className=\"wp-block-post-author__name\">\n\t\t\t\t\t\t{ isLink ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref=\"#post-author-pseudo-link\"\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ authorName }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\tauthorName\n\t\t\t\t\t\t) }\n\t\t\t\t\t</p>\n\t\t\t\t\t{ showBio && (\n\t\t\t\t\t\t<p\n\t\t\t\t\t\t\tclassName=\"wp-block-post-author__bio\"\n\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t__html: authorDetails?.description,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default PostAuthorEdit;\n"],"mappings":"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","ignoreList":[]}
@@ -81,7 +81,7 @@ const CommentsForm = ({
81
81
  });
82
82
  } else if (!postTypeSupportsComments) {
83
83
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.Warning, {
84
- children: (0, _i18n.sprintf)(/* translators: 1: Post type (i.e. "post", "page") */
84
+ children: (0, _i18n.sprintf)(/* translators: %s: Post type (i.e. "post", "page") */
85
85
  (0, _i18n.__)('Post Comments Form block: Comments are not enabled for this post type (%s).'), postType)
86
86
  });
87
87
  } else if ('open' !== defaultCommentStatus) {
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_blockEditor","_components","_compose","_coreData","_data","_jsxRuntime","CommentsFormPlaceholder","instanceId","useInstanceId","jsxs","className","children","jsx","__","noValidate","onSubmit","event","preventDefault","htmlFor","id","name","cols","rows","readOnly","type","clsx","__experimentalGetElementClassName","label","value","CommentsForm","postId","postType","commentStatus","setCommentStatus","useEntityProp","isSiteEditor","undefined","defaultCommentStatus","useSelect","select","blockEditorStore","getSettings","__experimentalDiscussionSettings","postTypeSupportsComments","coreStore","getPostType","supports","comments","actions","Button","__next40pxDefaultSize","onClick","variant","_x","Warning","sprintf","_default","exports","default"],"sources":["@wordpress/block-library/src/post-comments-form/form.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { Button } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nconst CommentsFormPlaceholder = () => {\n\tconst instanceId = useInstanceId( CommentsFormPlaceholder );\n\n\treturn (\n\t\t<div className=\"comment-respond\">\n\t\t\t<h3 className=\"comment-reply-title\">{ __( 'Leave a Reply' ) }</h3>\n\t\t\t<form\n\t\t\t\tnoValidate\n\t\t\t\tclassName=\"comment-form\"\n\t\t\t\tonSubmit={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t<p>\n\t\t\t\t\t<label htmlFor={ `comment-${ instanceId }` }>\n\t\t\t\t\t\t{ __( 'Comment' ) }\n\t\t\t\t\t</label>\n\t\t\t\t\t<textarea\n\t\t\t\t\t\tid={ `comment-${ instanceId }` }\n\t\t\t\t\t\tname=\"comment\"\n\t\t\t\t\t\tcols=\"45\"\n\t\t\t\t\t\trows=\"8\"\n\t\t\t\t\t\treadOnly\n\t\t\t\t\t/>\n\t\t\t\t</p>\n\t\t\t\t<p className=\"form-submit wp-block-button\">\n\t\t\t\t\t<input\n\t\t\t\t\t\tname=\"submit\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tlabel={ __( 'Post Comment' ) }\n\t\t\t\t\t\tvalue={ __( 'Post Comment' ) }\n\t\t\t\t\t\taria-disabled=\"true\"\n\t\t\t\t\t/>\n\t\t\t\t</p>\n\t\t\t</form>\n\t\t</div>\n\t);\n};\n\nconst CommentsForm = ( { postId, postType } ) => {\n\tconst [ commentStatus, setCommentStatus ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'comment_status',\n\t\tpostId\n\t);\n\n\tconst isSiteEditor = postType === undefined || postId === undefined;\n\n\tconst { defaultCommentStatus } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalDiscussionSettings\n\t);\n\n\tconst postTypeSupportsComments = useSelect( ( select ) =>\n\t\tpostType\n\t\t\t? !! select( coreStore ).getPostType( postType )?.supports.comments\n\t\t\t: false\n\t);\n\n\tif ( ! isSiteEditor && 'open' !== commentStatus ) {\n\t\tif ( 'closed' === commentStatus ) {\n\t\t\tconst actions = [\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tkey=\"enableComments\"\n\t\t\t\t\tonClick={ () => setCommentStatus( 'open' ) }\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t>\n\t\t\t\t\t{ _x(\n\t\t\t\t\t\t'Enable comments',\n\t\t\t\t\t\t'action that affects the current post'\n\t\t\t\t\t) }\n\t\t\t\t</Button>,\n\t\t\t];\n\t\t\treturn (\n\t\t\t\t<Warning actions={ actions }>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Post Comments Form block: Comments are not enabled for this item.'\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t);\n\t\t} else if ( ! postTypeSupportsComments ) {\n\t\t\treturn (\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: 1: Post type (i.e. \"post\", \"page\") */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Post Comments Form block: Comments are not enabled for this post type (%s).'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tpostType\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t);\n\t\t} else if ( 'open' !== defaultCommentStatus ) {\n\t\t\treturn (\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Post Comments Form block: Comments are not enabled.'\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t);\n\t\t}\n\t}\n\n\treturn <CommentsFormPlaceholder />;\n};\n\nexport default CommentsForm;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_blockEditor","_components","_compose","_coreData","_data","_jsxRuntime","CommentsFormPlaceholder","instanceId","useInstanceId","jsxs","className","children","jsx","__","noValidate","onSubmit","event","preventDefault","htmlFor","id","name","cols","rows","readOnly","type","clsx","__experimentalGetElementClassName","label","value","CommentsForm","postId","postType","commentStatus","setCommentStatus","useEntityProp","isSiteEditor","undefined","defaultCommentStatus","useSelect","select","blockEditorStore","getSettings","__experimentalDiscussionSettings","postTypeSupportsComments","coreStore","getPostType","supports","comments","actions","Button","__next40pxDefaultSize","onClick","variant","_x","Warning","sprintf","_default","exports","default"],"sources":["@wordpress/block-library/src/post-comments-form/form.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { Button } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nconst CommentsFormPlaceholder = () => {\n\tconst instanceId = useInstanceId( CommentsFormPlaceholder );\n\n\treturn (\n\t\t<div className=\"comment-respond\">\n\t\t\t<h3 className=\"comment-reply-title\">{ __( 'Leave a Reply' ) }</h3>\n\t\t\t<form\n\t\t\t\tnoValidate\n\t\t\t\tclassName=\"comment-form\"\n\t\t\t\tonSubmit={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t<p>\n\t\t\t\t\t<label htmlFor={ `comment-${ instanceId }` }>\n\t\t\t\t\t\t{ __( 'Comment' ) }\n\t\t\t\t\t</label>\n\t\t\t\t\t<textarea\n\t\t\t\t\t\tid={ `comment-${ instanceId }` }\n\t\t\t\t\t\tname=\"comment\"\n\t\t\t\t\t\tcols=\"45\"\n\t\t\t\t\t\trows=\"8\"\n\t\t\t\t\t\treadOnly\n\t\t\t\t\t/>\n\t\t\t\t</p>\n\t\t\t\t<p className=\"form-submit wp-block-button\">\n\t\t\t\t\t<input\n\t\t\t\t\t\tname=\"submit\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tlabel={ __( 'Post Comment' ) }\n\t\t\t\t\t\tvalue={ __( 'Post Comment' ) }\n\t\t\t\t\t\taria-disabled=\"true\"\n\t\t\t\t\t/>\n\t\t\t\t</p>\n\t\t\t</form>\n\t\t</div>\n\t);\n};\n\nconst CommentsForm = ( { postId, postType } ) => {\n\tconst [ commentStatus, setCommentStatus ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'comment_status',\n\t\tpostId\n\t);\n\n\tconst isSiteEditor = postType === undefined || postId === undefined;\n\n\tconst { defaultCommentStatus } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalDiscussionSettings\n\t);\n\n\tconst postTypeSupportsComments = useSelect( ( select ) =>\n\t\tpostType\n\t\t\t? !! select( coreStore ).getPostType( postType )?.supports.comments\n\t\t\t: false\n\t);\n\n\tif ( ! isSiteEditor && 'open' !== commentStatus ) {\n\t\tif ( 'closed' === commentStatus ) {\n\t\t\tconst actions = [\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tkey=\"enableComments\"\n\t\t\t\t\tonClick={ () => setCommentStatus( 'open' ) }\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t>\n\t\t\t\t\t{ _x(\n\t\t\t\t\t\t'Enable comments',\n\t\t\t\t\t\t'action that affects the current post'\n\t\t\t\t\t) }\n\t\t\t\t</Button>,\n\t\t\t];\n\t\t\treturn (\n\t\t\t\t<Warning actions={ actions }>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Post Comments Form block: Comments are not enabled for this item.'\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t);\n\t\t} else if ( ! postTypeSupportsComments ) {\n\t\t\treturn (\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Post type (i.e. \"post\", \"page\") */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Post Comments Form block: Comments are not enabled for this post type (%s).'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tpostType\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t);\n\t\t} else if ( 'open' !== defaultCommentStatus ) {\n\t\t\treturn (\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Post Comments Form block: Comments are not enabled.'\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t);\n\t\t}\n\t}\n\n\treturn <CommentsFormPlaceholder />;\n};\n\nexport default CommentsForm;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAKA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AAA4C,IAAAO,WAAA,GAAAP,OAAA;AAjB5C;AACA;AACA;;AAGA;AACA;AACA;;AAYA,MAAMQ,uBAAuB,GAAGA,CAAA,KAAM;EACrC,MAAMC,UAAU,GAAG,IAAAC,sBAAa,EAAEF,uBAAwB,CAAC;EAE3D,oBACC,IAAAD,WAAA,CAAAI,IAAA;IAAKC,SAAS,EAAC,iBAAiB;IAAAC,QAAA,gBAC/B,IAAAN,WAAA,CAAAO,GAAA;MAAIF,SAAS,EAAC,qBAAqB;MAAAC,QAAA,EAAG,IAAAE,QAAE,EAAE,eAAgB;IAAC,CAAM,CAAC,eAClE,IAAAR,WAAA,CAAAI,IAAA;MACCK,UAAU;MACVJ,SAAS,EAAC,cAAc;MACxBK,QAAQ,EAAKC,KAAK,IAAMA,KAAK,CAACC,cAAc,CAAC,CAAG;MAAAN,QAAA,gBAEhD,IAAAN,WAAA,CAAAI,IAAA;QAAAE,QAAA,gBACC,IAAAN,WAAA,CAAAO,GAAA;UAAOM,OAAO,EAAG,WAAYX,UAAU,EAAK;UAAAI,QAAA,EACzC,IAAAE,QAAE,EAAE,SAAU;QAAC,CACX,CAAC,eACR,IAAAR,WAAA,CAAAO,GAAA;UACCO,EAAE,EAAG,WAAYZ,UAAU,EAAK;UAChCa,IAAI,EAAC,SAAS;UACdC,IAAI,EAAC,IAAI;UACTC,IAAI,EAAC,GAAG;UACRC,QAAQ;QAAA,CACR,CAAC;MAAA,CACA,CAAC,eACJ,IAAAlB,WAAA,CAAAO,GAAA;QAAGF,SAAS,EAAC,6BAA6B;QAAAC,QAAA,eACzC,IAAAN,WAAA,CAAAO,GAAA;UACCQ,IAAI,EAAC,QAAQ;UACbI,IAAI,EAAC,QAAQ;UACbd,SAAS,EAAG,IAAAe,aAAI,EACf,uBAAuB,EACvB,IAAAC,8CAAiC,EAAE,QAAS,CAC7C,CAAG;UACHC,KAAK,EAAG,IAAAd,QAAE,EAAE,cAAe,CAAG;UAC9Be,KAAK,EAAG,IAAAf,QAAE,EAAE,cAAe,CAAG;UAC9B,iBAAc;QAAM,CACpB;MAAC,CACA,CAAC;IAAA,CACC,CAAC;EAAA,CACH,CAAC;AAER,CAAC;AAED,MAAMgB,YAAY,GAAGA,CAAE;EAAEC,MAAM;EAAEC;AAAS,CAAC,KAAM;EAChD,MAAM,CAAEC,aAAa,EAAEC,gBAAgB,CAAE,GAAG,IAAAC,uBAAa,EACxD,UAAU,EACVH,QAAQ,EACR,gBAAgB,EAChBD,MACD,CAAC;EAED,MAAMK,YAAY,GAAGJ,QAAQ,KAAKK,SAAS,IAAIN,MAAM,KAAKM,SAAS;EAEnE,MAAM;IAAEC;EAAqB,CAAC,GAAG,IAAAC,eAAS,EACvCC,MAAM,IACPA,MAAM,CAAEC,kBAAiB,CAAC,CAACC,WAAW,CAAC,CAAC,CACtCC,gCACJ,CAAC;EAED,MAAMC,wBAAwB,GAAG,IAAAL,eAAS,EAAIC,MAAM,IACnDR,QAAQ,GACL,CAAC,CAAEQ,MAAM,CAAEK,eAAU,CAAC,CAACC,WAAW,CAAEd,QAAS,CAAC,EAAEe,QAAQ,CAACC,QAAQ,GACjE,KACJ,CAAC;EAED,IAAK,CAAEZ,YAAY,IAAI,MAAM,KAAKH,aAAa,EAAG;IACjD,IAAK,QAAQ,KAAKA,aAAa,EAAG;MACjC,MAAMgB,OAAO,GAAG,cACf,IAAA3C,WAAA,CAAAO,GAAA,EAACX,WAAA,CAAAgD,MAAM;QACNC,qBAAqB;QAErBC,OAAO,EAAGA,CAAA,KAAMlB,gBAAgB,CAAE,MAAO,CAAG;QAC5CmB,OAAO,EAAC,SAAS;QAAAzC,QAAA,EAEf,IAAA0C,QAAE,EACH,iBAAiB,EACjB,sCACD;MAAC,GAPG,gBAQG,CAAC,CACT;MACD,oBACC,IAAAhD,WAAA,CAAAO,GAAA,EAACZ,YAAA,CAAAsD,OAAO;QAACN,OAAO,EAAGA,OAAS;QAAArC,QAAA,EACzB,IAAAE,QAAE,EACH,mEACD;MAAC,CACO,CAAC;IAEZ,CAAC,MAAM,IAAK,CAAE8B,wBAAwB,EAAG;MACxC,oBACC,IAAAtC,WAAA,CAAAO,GAAA,EAACZ,YAAA,CAAAsD,OAAO;QAAA3C,QAAA,EACL,IAAA4C,aAAO,EACR;QACA,IAAA1C,QAAE,EACD,6EACD,CAAC,EACDkB,QACD;MAAC,CACO,CAAC;IAEZ,CAAC,MAAM,IAAK,MAAM,KAAKM,oBAAoB,EAAG;MAC7C,oBACC,IAAAhC,WAAA,CAAAO,GAAA,EAACZ,YAAA,CAAAsD,OAAO;QAAA3C,QAAA,EACL,IAAAE,QAAE,EACH,qDACD;MAAC,CACO,CAAC;IAEZ;EACD;EAEA,oBAAO,IAAAR,WAAA,CAAAO,GAAA,EAACN,uBAAuB,IAAE,CAAC;AACnC,CAAC;AAAC,IAAAkD,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa7B,YAAY","ignoreList":[]}
@@ -215,7 +215,8 @@ function PostFeaturedImageEdit({
215
215
  setAttributes({
216
216
  isLink: false,
217
217
  linkTarget: '_self',
218
- rel: ''
218
+ rel: '',
219
+ sizeSlug: DEFAULT_MEDIA_SIZE_SLUG
219
220
  });
220
221
  },
221
222
  dropdownMenuProps: dropdownMenuProps,
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_coreData","_data","_components","_blockEditor","_element","_i18n","_icons","_notices","_dimensionControls","_overlayControls","_overlay","_hooks","_lockUnlock","_jsxRuntime","ALLOWED_MEDIA_TYPES","ResolutionTool","unlock","blockEditorPrivateApis","DEFAULT_MEDIA_SIZE_SLUG","FeaturedImageResolutionTool","image","value","onChange","imageSizes","useSelect","select","getSettings","blockEditorStore","length","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","label","jsx","defaultValue","options","PostFeaturedImageEdit","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","aspectRatio","height","width","scale","sizeSlug","rel","linkTarget","useFirstImageFromPost","temporaryURL","setTemporaryURL","useState","storedFeaturedImage","setFeaturedImage","useEntityProp","postContent","featuredImage","useMemo","imageOpener","exec","imageId","groups","attrs","JSON","parse","id","media","postPermalink","getMedia","getPostType","getEditedEntityRecord","coreStore","link","mediaUrl","blockProps","useBlockProps","style","className","clsx","borderProps","useBorderProps","shadowProps","getShadowClassesAndStyles","blockEditingMode","useBlockEditingMode","placeholder","content","Placeholder","withIllustration","children","onSelectImage","url","isBlobURL","onResetImage","undefined","useEffect","createErrorNotice","useDispatch","noticesStore","onUploadError","message","type","dropdownMenuProps","useToolsPanelDropdownMenuProps","controls","jsxs","Fragment","InspectorControls","group","default","__experimentalToolsPanel","__","resetAll","__experimentalToolsPanelItem","labels","singular_name","sprintf","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","checked","TextControl","__next40pxDefaultSize","newRel","nextSizeSlug","href","target","imageStyles","objectFit","MediaPlaceholder","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","Button","icon","upload","variant","showTooltip","tooltipPosition","onClick","src","alt","alt_text","Spinner","BlockControls","MediaReplaceFlow","mediaId","mediaURL","onReset"],"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tToggleControl,\n\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\nimport OverlayControls from './overlay-controls';\nimport Overlay from './overlay';\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport { unlock } from '../lock-unlock';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst { ResolutionTool } = unlock( blockEditorPrivateApis );\nconst DEFAULT_MEDIA_SIZE_SLUG = 'full';\n\nfunction FeaturedImageResolutionTool( { image, value, onChange } ) {\n\tconst { imageSizes } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\timageSizes: getSettings().imageSizes,\n\t\t};\n\t}, [] );\n\n\tif ( ! imageSizes?.length ) {\n\t\treturn null;\n\t}\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\treturn (\n\t\t<ResolutionTool\n\t\t\tvalue={ value }\n\t\t\tdefaultValue={ DEFAULT_MEDIA_SIZE_SLUG }\n\t\t\toptions={ imageSizeOptions }\n\t\t\tonChange={ onChange }\n\t\t/>\n\t);\n}\n\nexport default function PostFeaturedImageEdit( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst {\n\t\tisLink,\n\t\taspectRatio,\n\t\theight,\n\t\twidth,\n\t\tscale,\n\t\tsizeSlug,\n\t\trel,\n\t\tlinkTarget,\n\t\tuseFirstImageFromPost,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst [ storedFeaturedImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\t// Fallback to post content if no featured image is set.\n\t// This is needed for the \"Use first image from post\" option.\n\tconst [ postContent ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst featuredImage = useMemo( () => {\n\t\tif ( storedFeaturedImage ) {\n\t\t\treturn storedFeaturedImage;\n\t\t}\n\n\t\tif ( ! useFirstImageFromPost ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst imageOpener =\n\t\t\t/<!--\\s+wp:(?:core\\/)?image\\s+(?<attrs>{(?:(?:[^}]+|}+(?=})|(?!}\\s+\\/?-->).)*)?}\\s+)?-->/.exec(\n\t\t\t\tpostContent\n\t\t\t);\n\t\tconst imageId =\n\t\t\timageOpener?.groups?.attrs &&\n\t\t\tJSON.parse( imageOpener.groups.attrs )?.id;\n\t\treturn imageId;\n\t}, [ storedFeaturedImage, useFirstImageFromPost, postContent ] );\n\n\tconst { media, postType, postPermalink } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t\tpostPermalink: getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\tpostId\n\t\t\t\t)?.link,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug, postId ]\n\t);\n\n\tconst mediaUrl =\n\t\tmedia?.media_details?.sizes?.[ sizeSlug ]?.source_url ||\n\t\tmedia?.source_url;\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height, aspectRatio },\n\t\tclassName: clsx( {\n\t\t\t'is-transient': temporaryURL,\n\t\t} ),\n\t} );\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-media-placeholder',\n\t\t\t\t\tborderProps.className\n\t\t\t\t) }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\theight: !! aspectRatio && '100%',\n\t\t\t\t\twidth: !! aspectRatio && '100%',\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\n\t\tif ( value?.url && isBlobURL( value.url ) ) {\n\t\t\tsetTemporaryURL( value.url );\n\t\t}\n\t};\n\n\t// On reset image\n\tconst onResetImage = () => {\n\t\tsetAttributes( {\n\t\t\tisLink: false,\n\t\t\tlinkTarget: '_self',\n\t\t\trel: '',\n\t\t\tsizeSlug: undefined,\n\t\t} );\n\t\tsetFeaturedImage( 0 );\n\t};\n\n\t// Reset temporary url when media is available.\n\tuseEffect( () => {\n\t\tif ( mediaUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ mediaUrl, temporaryURL ] );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst controls = blockEditingMode === 'default' && (\n\t\t<>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t<OverlayControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<DimensionControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t{ ( featuredImage || isDescendentOfQueryLoop || ! postId ) && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tisLink: false,\n\t\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t\t\trel: '',\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! isLink }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tisLink: false,\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\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { isLink: ! isLink } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\thasValue={ () => '_self' !== linkTarget }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: '_self',\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\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tlinkTarget: value\n\t\t\t\t\t\t\t\t\t\t\t\t? '_blank'\n\t\t\t\t\t\t\t\t\t\t\t\t: '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\thasValue={ () => !! rel }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\trel: '',\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\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\t\tvalue={ rel }\n\t\t\t\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\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</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ !! media && (\n\t\t\t\t\t\t\t<FeaturedImageResolutionTool\n\t\t\t\t\t\t\t\timage={ media }\n\t\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\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\t\t\t\t\t</ToolsPanel>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n\n\tlet image;\n\n\t/**\n\t * A Post Featured Image block should not have image replacement\n\t * or upload options in the following cases:\n\t * - Is placed in a Query Loop. This is a conscious decision to\n\t * prevent content editing of different posts in Query Loop, and\n\t * this could change in the future.\n\t * - Is in a context where it does not have a postId (for example\n\t * in a template or template part).\n\t */\n\tif ( ! featuredImage && ( isDescendentOfQueryLoop || ! postId ) ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t\t<a href={ postPermalink } target={ linkTarget }>\n\t\t\t\t\t\t\t{ placeholder() }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tplaceholder()\n\t\t\t\t\t) }\n\t\t\t\t\t<Overlay\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\tconst imageStyles = {\n\t\t...borderProps.style,\n\t\t...shadowProps.style,\n\t\theight: aspectRatio ? '100%' : height,\n\t\twidth: !! aspectRatio && '100%',\n\t\tobjectFit: !! ( height || aspectRatio ) && scale,\n\t};\n\n\t/**\n\t * When the post featured image block is placed in a context where:\n\t * - It has a postId (for example in a single post)\n\t * - It is not inside a query loop\n\t * - It has no image assigned yet\n\t * Then display the placeholder with the image upload option.\n\t */\n\tif ( ! featuredImage && ! temporaryURL ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage =\n\t\t\t! media && ! temporaryURL ? (\n\t\t\t\tplaceholder()\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<img\n\t\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\t\tsrc={ temporaryURL || mediaUrl }\n\t\t\t\t\t\talt={\n\t\t\t\t\t\t\tmedia && media?.alt_text\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t/>\n\t\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t\t</>\n\t\t\t);\n\t}\n\n\t/**\n\t * When the post featured image block:\n\t * - Has an image assigned\n\t * - Is not inside a query loop\n\t * Then display the image and the image replacement option.\n\t */\n\treturn (\n\t\t<>\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tonReset={ onResetImage }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /* If the featured image is linked, wrap in an <a /> tag to trigger any inherited link element styles */ }\n\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t<a href={ postPermalink } target={ linkTarget }>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t<Overlay\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_coreData","_data","_components","_blockEditor","_element","_i18n","_icons","_notices","_dimensionControls","_overlayControls","_overlay","_hooks","_lockUnlock","_jsxRuntime","ALLOWED_MEDIA_TYPES","ResolutionTool","unlock","blockEditorPrivateApis","DEFAULT_MEDIA_SIZE_SLUG","FeaturedImageResolutionTool","image","value","onChange","imageSizes","useSelect","select","getSettings","blockEditorStore","length","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","label","jsx","defaultValue","options","PostFeaturedImageEdit","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","aspectRatio","height","width","scale","sizeSlug","rel","linkTarget","useFirstImageFromPost","temporaryURL","setTemporaryURL","useState","storedFeaturedImage","setFeaturedImage","useEntityProp","postContent","featuredImage","useMemo","imageOpener","exec","imageId","groups","attrs","JSON","parse","id","media","postPermalink","getMedia","getPostType","getEditedEntityRecord","coreStore","link","mediaUrl","blockProps","useBlockProps","style","className","clsx","borderProps","useBorderProps","shadowProps","getShadowClassesAndStyles","blockEditingMode","useBlockEditingMode","placeholder","content","Placeholder","withIllustration","children","onSelectImage","url","isBlobURL","onResetImage","undefined","useEffect","createErrorNotice","useDispatch","noticesStore","onUploadError","message","type","dropdownMenuProps","useToolsPanelDropdownMenuProps","controls","jsxs","Fragment","InspectorControls","group","default","__experimentalToolsPanel","__","resetAll","__experimentalToolsPanelItem","labels","singular_name","sprintf","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","checked","TextControl","__next40pxDefaultSize","newRel","nextSizeSlug","href","target","imageStyles","objectFit","MediaPlaceholder","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","Button","icon","upload","variant","showTooltip","tooltipPosition","onClick","src","alt","alt_text","Spinner","BlockControls","MediaReplaceFlow","mediaId","mediaURL","onReset"],"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tToggleControl,\n\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\nimport OverlayControls from './overlay-controls';\nimport Overlay from './overlay';\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport { unlock } from '../lock-unlock';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst { ResolutionTool } = unlock( blockEditorPrivateApis );\nconst DEFAULT_MEDIA_SIZE_SLUG = 'full';\n\nfunction FeaturedImageResolutionTool( { image, value, onChange } ) {\n\tconst { imageSizes } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\timageSizes: getSettings().imageSizes,\n\t\t};\n\t}, [] );\n\n\tif ( ! imageSizes?.length ) {\n\t\treturn null;\n\t}\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\treturn (\n\t\t<ResolutionTool\n\t\t\tvalue={ value }\n\t\t\tdefaultValue={ DEFAULT_MEDIA_SIZE_SLUG }\n\t\t\toptions={ imageSizeOptions }\n\t\t\tonChange={ onChange }\n\t\t/>\n\t);\n}\n\nexport default function PostFeaturedImageEdit( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst {\n\t\tisLink,\n\t\taspectRatio,\n\t\theight,\n\t\twidth,\n\t\tscale,\n\t\tsizeSlug,\n\t\trel,\n\t\tlinkTarget,\n\t\tuseFirstImageFromPost,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst [ storedFeaturedImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\t// Fallback to post content if no featured image is set.\n\t// This is needed for the \"Use first image from post\" option.\n\tconst [ postContent ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst featuredImage = useMemo( () => {\n\t\tif ( storedFeaturedImage ) {\n\t\t\treturn storedFeaturedImage;\n\t\t}\n\n\t\tif ( ! useFirstImageFromPost ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst imageOpener =\n\t\t\t/<!--\\s+wp:(?:core\\/)?image\\s+(?<attrs>{(?:(?:[^}]+|}+(?=})|(?!}\\s+\\/?-->).)*)?}\\s+)?-->/.exec(\n\t\t\t\tpostContent\n\t\t\t);\n\t\tconst imageId =\n\t\t\timageOpener?.groups?.attrs &&\n\t\t\tJSON.parse( imageOpener.groups.attrs )?.id;\n\t\treturn imageId;\n\t}, [ storedFeaturedImage, useFirstImageFromPost, postContent ] );\n\n\tconst { media, postType, postPermalink } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t\tpostPermalink: getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\tpostId\n\t\t\t\t)?.link,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug, postId ]\n\t);\n\n\tconst mediaUrl =\n\t\tmedia?.media_details?.sizes?.[ sizeSlug ]?.source_url ||\n\t\tmedia?.source_url;\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height, aspectRatio },\n\t\tclassName: clsx( {\n\t\t\t'is-transient': temporaryURL,\n\t\t} ),\n\t} );\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-media-placeholder',\n\t\t\t\t\tborderProps.className\n\t\t\t\t) }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\theight: !! aspectRatio && '100%',\n\t\t\t\t\twidth: !! aspectRatio && '100%',\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\n\t\tif ( value?.url && isBlobURL( value.url ) ) {\n\t\t\tsetTemporaryURL( value.url );\n\t\t}\n\t};\n\n\t// On reset image\n\tconst onResetImage = () => {\n\t\tsetAttributes( {\n\t\t\tisLink: false,\n\t\t\tlinkTarget: '_self',\n\t\t\trel: '',\n\t\t\tsizeSlug: undefined,\n\t\t} );\n\t\tsetFeaturedImage( 0 );\n\t};\n\n\t// Reset temporary url when media is available.\n\tuseEffect( () => {\n\t\tif ( mediaUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ mediaUrl, temporaryURL ] );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst controls = blockEditingMode === 'default' && (\n\t\t<>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t<OverlayControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<DimensionControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t{ ( featuredImage || isDescendentOfQueryLoop || ! postId ) && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tisLink: false,\n\t\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t\t\trel: '',\n\t\t\t\t\t\t\t\tsizeSlug: DEFAULT_MEDIA_SIZE_SLUG,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! isLink }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tisLink: false,\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\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { isLink: ! isLink } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\thasValue={ () => '_self' !== linkTarget }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: '_self',\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\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tlinkTarget: value\n\t\t\t\t\t\t\t\t\t\t\t\t? '_blank'\n\t\t\t\t\t\t\t\t\t\t\t\t: '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\thasValue={ () => !! rel }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\trel: '',\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\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\t\tvalue={ rel }\n\t\t\t\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\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</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ !! media && (\n\t\t\t\t\t\t\t<FeaturedImageResolutionTool\n\t\t\t\t\t\t\t\timage={ media }\n\t\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\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\t\t\t\t\t</ToolsPanel>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n\n\tlet image;\n\n\t/**\n\t * A Post Featured Image block should not have image replacement\n\t * or upload options in the following cases:\n\t * - Is placed in a Query Loop. This is a conscious decision to\n\t * prevent content editing of different posts in Query Loop, and\n\t * this could change in the future.\n\t * - Is in a context where it does not have a postId (for example\n\t * in a template or template part).\n\t */\n\tif ( ! featuredImage && ( isDescendentOfQueryLoop || ! postId ) ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t\t<a href={ postPermalink } target={ linkTarget }>\n\t\t\t\t\t\t\t{ placeholder() }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tplaceholder()\n\t\t\t\t\t) }\n\t\t\t\t\t<Overlay\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\tconst imageStyles = {\n\t\t...borderProps.style,\n\t\t...shadowProps.style,\n\t\theight: aspectRatio ? '100%' : height,\n\t\twidth: !! aspectRatio && '100%',\n\t\tobjectFit: !! ( height || aspectRatio ) && scale,\n\t};\n\n\t/**\n\t * When the post featured image block is placed in a context where:\n\t * - It has a postId (for example in a single post)\n\t * - It is not inside a query loop\n\t * - It has no image assigned yet\n\t * Then display the placeholder with the image upload option.\n\t */\n\tif ( ! featuredImage && ! temporaryURL ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage =\n\t\t\t! media && ! temporaryURL ? (\n\t\t\t\tplaceholder()\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<img\n\t\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\t\tsrc={ temporaryURL || mediaUrl }\n\t\t\t\t\t\talt={\n\t\t\t\t\t\t\tmedia && media?.alt_text\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t/>\n\t\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t\t</>\n\t\t\t);\n\t}\n\n\t/**\n\t * When the post featured image block:\n\t * - Has an image assigned\n\t * - Is not inside a query loop\n\t * Then display the image and the image replacement option.\n\t */\n\treturn (\n\t\t<>\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tonReset={ onResetImage }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /* If the featured image is linked, wrap in an <a /> tag to trigger any inherited link element styles */ }\n\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t<a href={ postPermalink } target={ linkTarget }>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t<Overlay\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AASA,IAAAK,YAAA,GAAAL,OAAA;AAYA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAKA,IAAAU,kBAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,gBAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,QAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,MAAA,GAAAb,OAAA;AACA,IAAAc,WAAA,GAAAd,OAAA;AAAwC,IAAAe,WAAA,GAAAf,OAAA;AA5CxC;AACA;AACA;;AAGA;AACA;AACA;;AA8BA;AACA;AACA;;AAOA,MAAMgB,mBAAmB,GAAG,CAAE,OAAO,CAAE;AACvC,MAAM;EAAEC;AAAe,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AAC3D,MAAMC,uBAAuB,GAAG,MAAM;AAEtC,SAASC,2BAA2BA,CAAE;EAAEC,KAAK;EAAEC,KAAK;EAAEC;AAAS,CAAC,EAAG;EAClE,MAAM;IAAEC;EAAW,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC/C,MAAM;MAAEC;IAAY,CAAC,GAAGD,MAAM,CAAEE,kBAAiB,CAAC;IAClD,OAAO;MACNJ,UAAU,EAAEG,WAAW,CAAC,CAAC,CAACH;IAC3B,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,IAAK,CAAEA,UAAU,EAAEK,MAAM,EAAG;IAC3B,OAAO,IAAI;EACZ;EAEA,MAAMC,gBAAgB,GAAGN,UAAU,CACjCO,MAAM,CACN,CAAE;IAAEC;EAAK,CAAC,KAAMX,KAAK,EAAEY,aAAa,EAAEC,KAAK,GAAIF,IAAI,CAAE,EAAEG,UACxD,CAAC,CACAC,GAAG,CAAE,CAAE;IAAEC,IAAI;IAAEL;EAAK,CAAC,MAAQ;IAAEV,KAAK,EAAEU,IAAI;IAAEM,KAAK,EAAED;EAAK,CAAC,CAAG,CAAC;EAE/D,oBACC,IAAAvB,WAAA,CAAAyB,GAAA,EAACvB,cAAc;IACdM,KAAK,EAAGA,KAAO;IACfkB,YAAY,EAAGrB,uBAAyB;IACxCsB,OAAO,EAAGX,gBAAkB;IAC5BP,QAAQ,EAAGA;EAAU,CACrB,CAAC;AAEJ;AAEe,SAASmB,qBAAqBA,CAAE;EAC9CC,QAAQ;EACRC,UAAU;EACVC,aAAa;EACbC,OAAO,EAAE;IAAEC,MAAM;IAAEC,QAAQ,EAAEC,YAAY;IAAEC;EAAQ;AACpD,CAAC,EAAG;EACH,MAAMC,uBAAuB,GAAGC,MAAM,CAACC,QAAQ,CAAEH,OAAQ,CAAC;EAC1D,MAAM;IACLI,MAAM;IACNC,WAAW;IACXC,MAAM;IACNC,KAAK;IACLC,KAAK;IACLC,QAAQ;IACRC,GAAG;IACHC,UAAU;IACVC;EACD,CAAC,GAAGlB,UAAU;EACd,MAAM,CAAEmB,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAC,iBAAQ,EAAC,CAAC;EAEpD,MAAM,CAAEC,mBAAmB,EAAEC,gBAAgB,CAAE,GAAG,IAAAC,uBAAa,EAC9D,UAAU,EACVnB,YAAY,EACZ,gBAAgB,EAChBF,MACD,CAAC;;EAED;EACA;EACA,MAAM,CAAEsB,WAAW,CAAE,GAAG,IAAAD,uBAAa,EACpC,UAAU,EACVnB,YAAY,EACZ,SAAS,EACTF,MACD,CAAC;EAED,MAAMuB,aAAa,GAAG,IAAAC,gBAAO,EAAE,MAAM;IACpC,IAAKL,mBAAmB,EAAG;MAC1B,OAAOA,mBAAmB;IAC3B;IAEA,IAAK,CAAEJ,qBAAqB,EAAG;MAC9B;IACD;IAEA,MAAMU,WAAW,GAChB,yFAAyF,CAACC,IAAI,CAC7FJ,WACD,CAAC;IACF,MAAMK,OAAO,GACZF,WAAW,EAAEG,MAAM,EAAEC,KAAK,IAC1BC,IAAI,CAACC,KAAK,CAAEN,WAAW,CAACG,MAAM,CAACC,KAAM,CAAC,EAAEG,EAAE;IAC3C,OAAOL,OAAO;EACf,CAAC,EAAE,CAAER,mBAAmB,EAAEJ,qBAAqB,EAAEO,WAAW,CAAG,CAAC;EAEhE,MAAM;IAAEW,KAAK;IAAEhC,QAAQ;IAAEiC;EAAc,CAAC,GAAG,IAAAxD,eAAS,EACjDC,MAAM,IAAM;IACb,MAAM;MAAEwD,QAAQ;MAAEC,WAAW;MAAEC;IAAsB,CAAC,GACrD1D,MAAM,CAAE2D,eAAU,CAAC;IACpB,OAAO;MACNL,KAAK,EACJV,aAAa,IACbY,QAAQ,CAAEZ,aAAa,EAAE;QACxBxB,OAAO,EAAE;MACV,CAAE,CAAC;MACJE,QAAQ,EAAEC,YAAY,IAAIkC,WAAW,CAAElC,YAAa,CAAC;MACrDgC,aAAa,EAAEG,qBAAqB,CACnC,UAAU,EACVnC,YAAY,EACZF,MACD,CAAC,EAAEuC;IACJ,CAAC;EACF,CAAC,EACD,CAAEhB,aAAa,EAAErB,YAAY,EAAEF,MAAM,CACtC,CAAC;EAED,MAAMwC,QAAQ,GACbP,KAAK,EAAE/C,aAAa,EAAEC,KAAK,GAAIyB,QAAQ,CAAE,EAAExB,UAAU,IACrD6C,KAAK,EAAE7C,UAAU;EAElB,MAAMqD,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCC,KAAK,EAAE;MAAEjC,KAAK;MAAED,MAAM;MAAED;IAAY,CAAC;IACrCoC,SAAS,EAAE,IAAAC,aAAI,EAAE;MAChB,cAAc,EAAE7B;IACjB,CAAE;EACH,CAAE,CAAC;EACH,MAAM8B,WAAW,GAAG,IAAAC,yCAAc,EAAElD,UAAW,CAAC;EAChD,MAAMmD,WAAW,GAAG,IAAAC,oDAAyB,EAAEpD,UAAW,CAAC;EAC3D,MAAMqD,gBAAgB,GAAG,IAAAC,gCAAmB,EAAC,CAAC;EAE9C,MAAMC,WAAW,GAAKC,OAAO,IAAM;IAClC,oBACC,IAAAtF,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAAkG,WAAW;MACXV,SAAS,EAAG,IAAAC,aAAI,EACf,gCAAgC,EAChCC,WAAW,CAACF,SACb,CAAG;MACHW,gBAAgB;MAChBZ,KAAK,EAAG;QACPlC,MAAM,EAAE,CAAC,CAAED,WAAW,IAAI,MAAM;QAChCE,KAAK,EAAE,CAAC,CAAEF,WAAW,IAAI,MAAM;QAC/B,GAAGsC,WAAW,CAACH,KAAK;QACpB,GAAGK,WAAW,CAACL;MAChB,CAAG;MAAAa,QAAA,EAEDH;IAAO,CACG,CAAC;EAEhB,CAAC;EAED,MAAMI,aAAa,GAAKlF,KAAK,IAAM;IAClC,IAAKA,KAAK,EAAEyD,EAAE,EAAG;MAChBZ,gBAAgB,CAAE7C,KAAK,CAACyD,EAAG,CAAC;IAC7B;IAEA,IAAKzD,KAAK,EAAEmF,GAAG,IAAI,IAAAC,eAAS,EAAEpF,KAAK,CAACmF,GAAI,CAAC,EAAG;MAC3CzC,eAAe,CAAE1C,KAAK,CAACmF,GAAI,CAAC;IAC7B;EACD,CAAC;;EAED;EACA,MAAME,YAAY,GAAGA,CAAA,KAAM;IAC1B9D,aAAa,CAAE;MACdS,MAAM,EAAE,KAAK;MACbO,UAAU,EAAE,OAAO;MACnBD,GAAG,EAAE,EAAE;MACPD,QAAQ,EAAEiD;IACX,CAAE,CAAC;IACHzC,gBAAgB,CAAE,CAAE,CAAC;EACtB,CAAC;;EAED;EACA,IAAA0C,kBAAS,EAAE,MAAM;IAChB,IAAKtB,QAAQ,IAAIxB,YAAY,EAAG;MAC/BC,eAAe,CAAC,CAAC;IAClB;EACD,CAAC,EAAE,CAAEuB,QAAQ,EAAExB,YAAY,CAAG,CAAC;EAE/B,MAAM;IAAE+C;EAAkB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,cAAa,CAAC;EACzD,MAAMC,aAAa,GAAKC,OAAO,IAAM;IACpCJ,iBAAiB,CAAEI,OAAO,EAAE;MAAEC,IAAI,EAAE;IAAW,CAAE,CAAC;IAClDnD,eAAe,CAAC,CAAC;EAClB,CAAC;EAED,MAAMoD,iBAAiB,GAAG,IAAAC,qCAA8B,EAAC,CAAC;EAE1D,MAAMC,QAAQ,GAAGrB,gBAAgB,KAAK,SAAS,iBAC9C,IAAAnF,WAAA,CAAAyG,IAAA,EAAAzG,WAAA,CAAA0G,QAAA;IAAAjB,QAAA,gBACC,IAAAzF,WAAA,CAAAyB,GAAA,EAACnC,YAAA,CAAAqH,iBAAiB;MAACC,KAAK,EAAC,OAAO;MAAAnB,QAAA,eAC/B,IAAAzF,WAAA,CAAAyB,GAAA,EAAC7B,gBAAA,CAAAiH,OAAe;QACf/E,UAAU,EAAGA,UAAY;QACzBC,aAAa,EAAGA,aAAe;QAC/BF,QAAQ,EAAGA;MAAU,CACrB;IAAC,CACgB,CAAC,eACpB,IAAA7B,WAAA,CAAAyB,GAAA,EAACnC,YAAA,CAAAqH,iBAAiB;MAACC,KAAK,EAAC,YAAY;MAAAnB,QAAA,eACpC,IAAAzF,WAAA,CAAAyB,GAAA,EAAC9B,kBAAA,CAAAkH,OAAiB;QACjBhF,QAAQ,EAAGA,QAAU;QACrBC,UAAU,EAAGA,UAAY;QACzBC,aAAa,EAAGA,aAAe;QAC/BmC,KAAK,EAAGA;MAAO,CACf;IAAC,CACgB,CAAC,EAClB,CAAEV,aAAa,IAAInB,uBAAuB,IAAI,CAAEJ,MAAM,kBACvD,IAAAjC,WAAA,CAAAyB,GAAA,EAACnC,YAAA,CAAAqH,iBAAiB;MAAAlB,QAAA,eACjB,IAAAzF,WAAA,CAAAyG,IAAA,EAACpH,WAAA,CAAAyH,wBAAU;QACVtF,KAAK,EAAG,IAAAuF,QAAE,EAAE,UAAW,CAAG;QAC1BC,QAAQ,EAAGA,CAAA,KAAM;UAChBjF,aAAa,CAAE;YACdS,MAAM,EAAE,KAAK;YACbO,UAAU,EAAE,OAAO;YACnBD,GAAG,EAAE,EAAE;YACPD,QAAQ,EAAExC;UACX,CAAE,CAAC;QACJ,CAAG;QACHiG,iBAAiB,EAAGA,iBAAmB;QAAAb,QAAA,gBAEvC,IAAAzF,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAA4H,4BAAc;UACdzF,KAAK,EACJU,QAAQ,EAAEgF,MAAM,CAACC,aAAa,GAC3B,IAAAC,aAAO;UACP;UACA,IAAAL,QAAE,EAAE,YAAa,CAAC,EAClB7E,QAAQ,CAACgF,MAAM,CAACC,aAChB,CAAC,GACD,IAAAJ,QAAE,EAAE,cAAe,CACtB;UACDM,gBAAgB;UAChBC,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAE9E,MAAQ;UAC5B+E,UAAU,EAAGA,CAAA,KACZxF,aAAa,CAAE;YACdS,MAAM,EAAE;UACT,CAAE,CACF;UAAAiD,QAAA,eAED,IAAAzF,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAAmI,aAAa;YACbC,uBAAuB;YACvBjG,KAAK,EACJU,QAAQ,EAAEgF,MAAM,CAACC,aAAa,GAC3B,IAAAC,aAAO;YACP;YACA,IAAAL,QAAE,EAAE,YAAa,CAAC,EAClB7E,QAAQ,CAACgF,MAAM,CAACC,aAChB,CAAC,GACD,IAAAJ,QAAE,EAAE,cAAe,CACtB;YACDtG,QAAQ,EAAGA,CAAA,KACVsB,aAAa,CAAE;cAAES,MAAM,EAAE,CAAEA;YAAO,CAAE,CACpC;YACDkF,OAAO,EAAGlF;UAAQ,CAClB;QAAC,CACa,CAAC,EAEfA,MAAM,iBACP,IAAAxC,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAA4H,4BAAc;UACdzF,KAAK,EAAG,IAAAuF,QAAE,EAAE,iBAAkB,CAAG;UACjCM,gBAAgB;UAChBC,QAAQ,EAAGA,CAAA,KAAM,OAAO,KAAKvE,UAAY;UACzCwE,UAAU,EAAGA,CAAA,KACZxF,aAAa,CAAE;YACdgB,UAAU,EAAE;UACb,CAAE,CACF;UAAA0C,QAAA,eAED,IAAAzF,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAAmI,aAAa;YACbC,uBAAuB;YACvBjG,KAAK,EAAG,IAAAuF,QAAE,EAAE,iBAAkB,CAAG;YACjCtG,QAAQ,EAAKD,KAAK,IACjBuB,aAAa,CAAE;cACdgB,UAAU,EAAEvC,KAAK,GACd,QAAQ,GACR;YACJ,CAAE,CACF;YACDkH,OAAO,EAAG3E,UAAU,KAAK;UAAU,CACnC;QAAC,CACa,CAChB,EACCP,MAAM,iBACP,IAAAxC,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAA4H,4BAAc;UACdzF,KAAK,EAAG,IAAAuF,QAAE,EAAE,UAAW,CAAG;UAC1BM,gBAAgB;UAChBC,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAExE,GAAK;UACzByE,UAAU,EAAGA,CAAA,KACZxF,aAAa,CAAE;YACde,GAAG,EAAE;UACN,CAAE,CACF;UAAA2C,QAAA,eAED,IAAAzF,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAAsI,WAAW;YACXC,qBAAqB;YACrBH,uBAAuB;YACvBjG,KAAK,EAAG,IAAAuF,QAAE,EAAE,UAAW,CAAG;YAC1BvG,KAAK,EAAGsC,GAAK;YACbrC,QAAQ,EAAKoH,MAAM,IAClB9F,aAAa,CAAE;cAAEe,GAAG,EAAE+E;YAAO,CAAE;UAC/B,CACD;QAAC,CACa,CAChB,EACC,CAAC,CAAE3D,KAAK,iBACT,IAAAlE,WAAA,CAAAyB,GAAA,EAACnB,2BAA2B;UAC3BC,KAAK,EAAG2D,KAAO;UACf1D,KAAK,EAAGqC,QAAU;UAClBpC,QAAQ,EAAKqH,YAAY,IACxB/F,aAAa,CAAE;YAAEc,QAAQ,EAAEiF;UAAa,CAAE;QAC1C,CACD,CACD;MAAA,CACU;IAAC,CACK,CACnB;EAAA,CACA,CACF;EAED,IAAIvH,KAAK;;EAET;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC,IAAK,CAAEiD,aAAa,KAAMnB,uBAAuB,IAAI,CAAEJ,MAAM,CAAE,EAAG;IACjE,oBACC,IAAAjC,WAAA,CAAAyG,IAAA,EAAAzG,WAAA,CAAA0G,QAAA;MAAAjB,QAAA,GACGe,QAAQ,eACV,IAAAxG,WAAA,CAAAyG,IAAA;QAAA,GAAU/B,UAAU;QAAAe,QAAA,GACjB,CAAC,CAAEjD,MAAM,gBACV,IAAAxC,WAAA,CAAAyB,GAAA;UAAGsG,IAAI,EAAG5D,aAAe;UAAC6D,MAAM,EAAGjF,UAAY;UAAA0C,QAAA,EAC5CJ,WAAW,CAAC;QAAC,CACb,CAAC,GAEJA,WAAW,CAAC,CACZ,eACD,IAAArF,WAAA,CAAAyB,GAAA,EAAC5B,QAAA,CAAAgH,OAAO;UACP/E,UAAU,EAAGA,UAAY;UACzBC,aAAa,EAAGA,aAAe;UAC/BF,QAAQ,EAAGA;QAAU,CACrB,CAAC;MAAA,CACE,CAAC;IAAA,CACL,CAAC;EAEL;EAEA,MAAML,KAAK,GAAG,IAAAuF,QAAE,EAAE,sBAAuB,CAAC;EAC1C,MAAMkB,WAAW,GAAG;IACnB,GAAGlD,WAAW,CAACH,KAAK;IACpB,GAAGK,WAAW,CAACL,KAAK;IACpBlC,MAAM,EAAED,WAAW,GAAG,MAAM,GAAGC,MAAM;IACrCC,KAAK,EAAE,CAAC,CAAEF,WAAW,IAAI,MAAM;IAC/ByF,SAAS,EAAE,CAAC,EAAIxF,MAAM,IAAID,WAAW,CAAE,IAAIG;EAC5C,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;AACA;EACC,IAAK,CAAEY,aAAa,IAAI,CAAEP,YAAY,EAAG;IACxC1C,KAAK,gBACJ,IAAAP,WAAA,CAAAyB,GAAA,EAACnC,YAAA,CAAA6I,gBAAgB;MAChBC,QAAQ,EAAG1C,aAAe;MAC1B2C,MAAM,EAAC,SAAS;MAChBC,YAAY,EAAGrI,mBAAqB;MACpCsI,OAAO,EAAGpC,aAAe;MACzBd,WAAW,EAAGA,WAAa;MAC3BmD,kBAAkB,EAAGA,CAAE;QAAEC;MAAK,CAAC,KAAM;QACpC,oBACC,IAAAzI,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAAqJ,MAAM;UACNd,qBAAqB;UACrBe,IAAI,EAAGC,aAAQ;UACfC,OAAO,EAAC,SAAS;UACjBrH,KAAK,EAAGA,KAAO;UACfsH,WAAW;UACXC,eAAe,EAAC,YAAY;UAC5BC,OAAO,EAAGA,CAAA,KAAM;YACfP,IAAI,CAAC,CAAC;UACP;QAAG,CACH,CAAC;MAEJ;IAAG,CACH,CACD;EACF,CAAC,MAAM;IACN;IACAlI,KAAK,GACJ,CAAE2D,KAAK,IAAI,CAAEjB,YAAY,GACxBoC,WAAW,CAAC,CAAC,gBAEb,IAAArF,WAAA,CAAAyG,IAAA,EAAAzG,WAAA,CAAA0G,QAAA;MAAAjB,QAAA,gBACC,IAAAzF,WAAA,CAAAyB,GAAA;QACCoD,SAAS,EAAGE,WAAW,CAACF,SAAW;QACnCoE,GAAG,EAAGhG,YAAY,IAAIwB,QAAU;QAChCyE,GAAG,EACFhF,KAAK,IAAIA,KAAK,EAAEiF,QAAQ,GACrB,IAAA/B,aAAO;QACP;QACA,IAAAL,QAAE,EAAE,oBAAqB,CAAC,EAC1B7C,KAAK,CAACiF,QACN,CAAC,GACD,IAAApC,QAAE,EAAE,gBAAiB,CACxB;QACDnC,KAAK,EAAGqD;MAAa,CACrB,CAAC,EACAhF,YAAY,iBAAI,IAAAjD,WAAA,CAAAyB,GAAA,EAACpC,WAAA,CAAA+J,OAAO,IAAE,CAAC;IAAA,CAC5B,CACF;EACH;;EAEA;AACD;AACA;AACA;AACA;AACA;EACC,oBACC,IAAApJ,WAAA,CAAAyG,IAAA,EAAAzG,WAAA,CAAA0G,QAAA;IAAAjB,QAAA,GACG,CAAExC,YAAY,IAAIuD,QAAQ,EAC1B,CAAC,CAAEtC,KAAK,IAAI,CAAE7B,uBAAuB,iBACtC,IAAArC,WAAA,CAAAyB,GAAA,EAACnC,YAAA,CAAA+J,aAAa;MAACzC,KAAK,EAAC,OAAO;MAAAnB,QAAA,eAC3B,IAAAzF,WAAA,CAAAyB,GAAA,EAACnC,YAAA,CAAAgK,gBAAgB;QAChBC,OAAO,EAAG/F,aAAe;QACzBgG,QAAQ,EAAG/E,QAAU;QACrB6D,YAAY,EAAGrI,mBAAqB;QACpCoI,MAAM,EAAC,SAAS;QAChBD,QAAQ,EAAG1C,aAAe;QAC1B6C,OAAO,EAAGpC,aAAe;QACzBsD,OAAO,EAAG5D;MAAc,CACxB;IAAC,CACY,CACf,eACD,IAAA7F,WAAA,CAAAyG,IAAA;MAAA,GAAa/B,UAAU;MAAAe,QAAA,GAEpB,CAAC,CAAEjD,MAAM,gBACV,IAAAxC,WAAA,CAAAyB,GAAA;QAAGsG,IAAI,EAAG5D,aAAe;QAAC6D,MAAM,EAAGjF,UAAY;QAAA0C,QAAA,EAC5ClF;MAAK,CACL,CAAC,GAEJA,KACA,eACD,IAAAP,WAAA,CAAAyB,GAAA,EAAC5B,QAAA,CAAAgH,OAAO;QACP/E,UAAU,EAAGA,UAAY;QACzBC,aAAa,EAAGA,aAAe;QAC/BF,QAAQ,EAAGA;MAAU,CACrB,CAAC;IAAA,CACK,CAAC;EAAA,CACR,CAAC;AAEL","ignoreList":[]}