@wordpress/editor 14.0.3 → 14.2.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 (279) hide show
  1. package/CHANGELOG.md +16 -12
  2. package/README.md +189 -24
  3. package/build/components/create-template-part-modal/index.js +2 -0
  4. package/build/components/create-template-part-modal/index.js.map +1 -1
  5. package/build/components/document-bar/index.js +11 -4
  6. package/build/components/document-bar/index.js.map +1 -1
  7. package/build/components/editor/index.js +18 -24
  8. package/build/components/editor/index.js.map +1 -1
  9. package/build/components/editor-interface/index.js +3 -1
  10. package/build/components/editor-interface/index.js.map +1 -1
  11. package/build/components/entities-saved-states/hooks/use-is-dirty.js +9 -0
  12. package/build/components/entities-saved-states/hooks/use-is-dirty.js.map +1 -1
  13. package/build/components/entities-saved-states/index.js +28 -0
  14. package/build/components/entities-saved-states/index.js.map +1 -1
  15. package/build/components/global-keyboard-shortcuts/index.js +1 -1
  16. package/build/components/global-keyboard-shortcuts/index.js.map +1 -1
  17. package/build/components/header/index.js +6 -2
  18. package/build/components/header/index.js.map +1 -1
  19. package/build/components/index.js +15 -0
  20. package/build/components/index.js.map +1 -1
  21. package/build/components/post-actions/actions.js +286 -263
  22. package/build/components/post-actions/actions.js.map +1 -1
  23. package/build/components/post-actions/index.js +2 -0
  24. package/build/components/post-actions/index.js.map +1 -1
  25. package/build/components/post-publish-button/index.js +4 -0
  26. package/build/components/post-publish-button/index.js.map +1 -1
  27. package/build/components/post-publish-button/label.js +5 -0
  28. package/build/components/post-publish-button/label.js.map +1 -1
  29. package/build/components/post-publish-panel/index.js +4 -0
  30. package/build/components/post-publish-panel/index.js.map +1 -1
  31. package/build/components/post-slug/check.js +8 -1
  32. package/build/components/post-slug/check.js.map +1 -1
  33. package/build/components/post-slug/index.js +6 -0
  34. package/build/components/post-slug/index.js.map +1 -1
  35. package/build/components/post-status/index.js +2 -1
  36. package/build/components/post-status/index.js.map +1 -1
  37. package/build/components/post-sticky/check.js +8 -0
  38. package/build/components/post-sticky/check.js.map +1 -1
  39. package/build/components/post-sticky/index.js +13 -13
  40. package/build/components/post-sticky/index.js.map +1 -1
  41. package/build/components/post-switch-to-draft-button/index.js +11 -2
  42. package/build/components/post-switch-to-draft-button/index.js.map +1 -1
  43. package/build/components/post-sync-status/index.js +5 -1
  44. package/build/components/post-sync-status/index.js.map +1 -1
  45. package/build/components/post-taxonomies/check.js +8 -0
  46. package/build/components/post-taxonomies/check.js.map +1 -1
  47. package/build/components/post-taxonomies/flat-term-selector.js +14 -2
  48. package/build/components/post-taxonomies/flat-term-selector.js.map +1 -1
  49. package/build/components/post-taxonomies/index.js +9 -0
  50. package/build/components/post-taxonomies/index.js.map +1 -1
  51. package/build/components/post-taxonomies/panel.js +10 -0
  52. package/build/components/post-taxonomies/panel.js.map +1 -1
  53. package/build/components/post-template/create-new-template-modal.js +2 -0
  54. package/build/components/post-template/create-new-template-modal.js.map +1 -1
  55. package/build/components/post-title/index.js +4 -8
  56. package/build/components/post-title/index.js.map +1 -1
  57. package/build/components/post-title/post-title-raw.js +3 -7
  58. package/build/components/post-title/post-title-raw.js.map +1 -1
  59. package/build/components/post-trash/check.js +8 -0
  60. package/build/components/post-trash/check.js.map +1 -1
  61. package/build/components/post-trash/index.js +5 -1
  62. package/build/components/post-trash/index.js.map +1 -1
  63. package/build/components/provider/index.js +18 -15
  64. package/build/components/provider/index.js.map +1 -1
  65. package/build/components/sidebar/index.js +2 -1
  66. package/build/components/sidebar/index.js.map +1 -1
  67. package/build/components/sidebar/post-summary.js +2 -3
  68. package/build/components/sidebar/post-summary.js.map +1 -1
  69. package/build/components/table-of-contents/index.js +11 -0
  70. package/build/components/table-of-contents/index.js.map +1 -1
  71. package/build/components/template-part-content-panel/index.js +70 -0
  72. package/build/components/template-part-content-panel/index.js.map +1 -0
  73. package/build/components/template-part-menu-items/convert-to-regular.js +38 -0
  74. package/build/components/template-part-menu-items/convert-to-regular.js.map +1 -0
  75. package/build/components/template-part-menu-items/convert-to-template-part.js +77 -0
  76. package/build/components/template-part-menu-items/convert-to-template-part.js.map +1 -0
  77. package/build/components/template-part-menu-items/index.js +67 -0
  78. package/build/components/template-part-menu-items/index.js.map +1 -0
  79. package/build/components/template-part-menu-items/index.native.js +10 -0
  80. package/build/components/template-part-menu-items/index.native.js.map +1 -0
  81. package/build/components/theme-support-check/index.js +9 -0
  82. package/build/components/theme-support-check/index.js.map +1 -1
  83. package/build/components/time-to-read/index.js +6 -0
  84. package/build/components/time-to-read/index.js.map +1 -1
  85. package/build/components/word-count/index.js +5 -1
  86. package/build/components/word-count/index.js.map +1 -1
  87. package/build/dataviews/api.js +61 -0
  88. package/build/dataviews/api.js.map +1 -0
  89. package/build/dataviews/store/private-actions.js +28 -0
  90. package/build/dataviews/store/private-actions.js.map +1 -0
  91. package/build/dataviews/store/private-selectors.js +20 -0
  92. package/build/dataviews/store/private-selectors.js.map +1 -0
  93. package/build/dataviews/store/reducer.js +36 -0
  94. package/build/dataviews/store/reducer.js.map +1 -0
  95. package/build/index.js +12 -0
  96. package/build/index.js.map +1 -1
  97. package/build/private-apis.js +0 -6
  98. package/build/private-apis.js.map +1 -1
  99. package/build/private-apis.native.js +0 -2
  100. package/build/private-apis.native.js.map +1 -1
  101. package/build/store/private-actions.js +21 -0
  102. package/build/store/private-actions.js.map +1 -1
  103. package/build/store/private-selectors.js +5 -0
  104. package/build/store/private-selectors.js.map +1 -1
  105. package/build/store/reducer.js +4 -1
  106. package/build/store/reducer.js.map +1 -1
  107. package/build-module/components/create-template-part-modal/index.js +2 -0
  108. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  109. package/build-module/components/document-bar/index.js +11 -4
  110. package/build-module/components/document-bar/index.js.map +1 -1
  111. package/build-module/components/editor/index.js +19 -24
  112. package/build-module/components/editor/index.js.map +1 -1
  113. package/build-module/components/editor-interface/index.js +3 -1
  114. package/build-module/components/editor-interface/index.js.map +1 -1
  115. package/build-module/components/entities-saved-states/hooks/use-is-dirty.js +10 -0
  116. package/build-module/components/entities-saved-states/hooks/use-is-dirty.js.map +1 -1
  117. package/build-module/components/entities-saved-states/index.js +28 -0
  118. package/build-module/components/entities-saved-states/index.js.map +1 -1
  119. package/build-module/components/global-keyboard-shortcuts/index.js +1 -1
  120. package/build-module/components/global-keyboard-shortcuts/index.js.map +1 -1
  121. package/build-module/components/header/index.js +6 -2
  122. package/build-module/components/header/index.js.map +1 -1
  123. package/build-module/components/index.js +16 -0
  124. package/build-module/components/index.js.map +1 -1
  125. package/build-module/components/post-actions/actions.js +286 -263
  126. package/build-module/components/post-actions/actions.js.map +1 -1
  127. package/build-module/components/post-actions/index.js +2 -0
  128. package/build-module/components/post-actions/index.js.map +1 -1
  129. package/build-module/components/post-publish-button/index.js +4 -0
  130. package/build-module/components/post-publish-button/index.js.map +1 -1
  131. package/build-module/components/post-publish-button/label.js +6 -0
  132. package/build-module/components/post-publish-button/label.js.map +1 -1
  133. package/build-module/components/post-publish-panel/index.js +4 -0
  134. package/build-module/components/post-publish-panel/index.js.map +1 -1
  135. package/build-module/components/post-slug/check.js +9 -0
  136. package/build-module/components/post-slug/check.js.map +1 -1
  137. package/build-module/components/post-slug/index.js +6 -0
  138. package/build-module/components/post-slug/index.js.map +1 -1
  139. package/build-module/components/post-status/index.js +2 -1
  140. package/build-module/components/post-status/index.js.map +1 -1
  141. package/build-module/components/post-sticky/check.js +9 -0
  142. package/build-module/components/post-sticky/check.js.map +1 -1
  143. package/build-module/components/post-sticky/index.js +15 -13
  144. package/build-module/components/post-sticky/index.js.map +1 -1
  145. package/build-module/components/post-switch-to-draft-button/index.js +10 -1
  146. package/build-module/components/post-switch-to-draft-button/index.js.map +1 -1
  147. package/build-module/components/post-sync-status/index.js +6 -0
  148. package/build-module/components/post-sync-status/index.js.map +1 -1
  149. package/build-module/components/post-taxonomies/check.js +9 -0
  150. package/build-module/components/post-taxonomies/check.js.map +1 -1
  151. package/build-module/components/post-taxonomies/flat-term-selector.js +14 -2
  152. package/build-module/components/post-taxonomies/flat-term-selector.js.map +1 -1
  153. package/build-module/components/post-taxonomies/index.js +9 -0
  154. package/build-module/components/post-taxonomies/index.js.map +1 -1
  155. package/build-module/components/post-taxonomies/panel.js +10 -0
  156. package/build-module/components/post-taxonomies/panel.js.map +1 -1
  157. package/build-module/components/post-template/create-new-template-modal.js +2 -0
  158. package/build-module/components/post-template/create-new-template-modal.js.map +1 -1
  159. package/build-module/components/post-title/index.js +4 -8
  160. package/build-module/components/post-title/index.js.map +1 -1
  161. package/build-module/components/post-title/post-title-raw.js +3 -7
  162. package/build-module/components/post-title/post-title-raw.js.map +1 -1
  163. package/build-module/components/post-trash/check.js +9 -0
  164. package/build-module/components/post-trash/check.js.map +1 -1
  165. package/build-module/components/post-trash/index.js +6 -0
  166. package/build-module/components/post-trash/index.js.map +1 -1
  167. package/build-module/components/provider/index.js +18 -15
  168. package/build-module/components/provider/index.js.map +1 -1
  169. package/build-module/components/sidebar/index.js +2 -1
  170. package/build-module/components/sidebar/index.js.map +1 -1
  171. package/build-module/components/sidebar/post-summary.js +2 -3
  172. package/build-module/components/sidebar/post-summary.js.map +1 -1
  173. package/build-module/components/table-of-contents/index.js +11 -0
  174. package/build-module/components/table-of-contents/index.js.map +1 -1
  175. package/build-module/components/template-part-content-panel/index.js +63 -0
  176. package/build-module/components/template-part-content-panel/index.js.map +1 -0
  177. package/build-module/components/template-part-menu-items/convert-to-regular.js +31 -0
  178. package/build-module/components/template-part-menu-items/convert-to-regular.js.map +1 -0
  179. package/build-module/components/template-part-menu-items/convert-to-template-part.js +71 -0
  180. package/build-module/components/template-part-menu-items/convert-to-template-part.js.map +1 -0
  181. package/build-module/components/template-part-menu-items/index.js +59 -0
  182. package/build-module/components/template-part-menu-items/index.js.map +1 -0
  183. package/build-module/components/template-part-menu-items/index.native.js +4 -0
  184. package/build-module/components/template-part-menu-items/index.native.js.map +1 -0
  185. package/build-module/components/theme-support-check/index.js +10 -0
  186. package/build-module/components/theme-support-check/index.js.map +1 -1
  187. package/build-module/components/time-to-read/index.js +6 -0
  188. package/build-module/components/time-to-read/index.js.map +1 -1
  189. package/build-module/components/word-count/index.js +6 -0
  190. package/build-module/components/word-count/index.js.map +1 -1
  191. package/build-module/dataviews/api.js +54 -0
  192. package/build-module/dataviews/api.js.map +1 -0
  193. package/build-module/dataviews/store/private-actions.js +21 -0
  194. package/build-module/dataviews/store/private-actions.js.map +1 -0
  195. package/build-module/dataviews/store/private-selectors.js +14 -0
  196. package/build-module/dataviews/store/private-selectors.js.map +1 -0
  197. package/build-module/dataviews/store/reducer.js +29 -0
  198. package/build-module/dataviews/store/reducer.js.map +1 -0
  199. package/build-module/index.js +1 -0
  200. package/build-module/index.js.map +1 -1
  201. package/build-module/private-apis.js +0 -6
  202. package/build-module/private-apis.js.map +1 -1
  203. package/build-module/private-apis.native.js +0 -2
  204. package/build-module/private-apis.native.js.map +1 -1
  205. package/build-module/store/private-actions.js +1 -0
  206. package/build-module/store/private-actions.js.map +1 -1
  207. package/build-module/store/private-selectors.js +4 -0
  208. package/build-module/store/private-selectors.js.map +1 -1
  209. package/build-module/store/reducer.js +3 -1
  210. package/build-module/store/reducer.js.map +1 -1
  211. package/build-style/style-rtl.css +10 -9
  212. package/build-style/style.css +10 -9
  213. package/build-types/dataviews/store/private-actions.d.ts +17 -0
  214. package/build-types/dataviews/store/private-actions.d.ts.map +1 -0
  215. package/build-types/dataviews/store/private-selectors.d.ts +10 -0
  216. package/build-types/dataviews/store/private-selectors.d.ts.map +1 -0
  217. package/build-types/dataviews/store/reducer.d.ts +11 -0
  218. package/build-types/dataviews/store/reducer.d.ts.map +1 -0
  219. package/package.json +35 -35
  220. package/src/components/create-template-part-modal/index.js +2 -0
  221. package/src/components/create-template-part-modal/style.scss +0 -6
  222. package/src/components/document-bar/index.js +11 -4
  223. package/src/components/editor/index.js +23 -28
  224. package/src/components/editor-interface/index.js +2 -0
  225. package/src/components/entities-saved-states/hooks/use-is-dirty.js +9 -0
  226. package/src/components/entities-saved-states/index.js +26 -0
  227. package/src/components/global-keyboard-shortcuts/index.js +1 -1
  228. package/src/components/header/index.js +2 -1
  229. package/src/components/index.js +16 -0
  230. package/src/components/keyboard-shortcut-help-modal/style.scss +0 -3
  231. package/src/components/post-actions/actions.js +376 -387
  232. package/src/components/post-actions/index.js +2 -0
  233. package/src/components/post-card-panel/style.scss +4 -0
  234. package/src/components/post-panel-row/style.scss +1 -1
  235. package/src/components/post-publish-button/index.js +3 -0
  236. package/src/components/post-publish-button/label.js +5 -0
  237. package/src/components/post-publish-panel/index.js +3 -0
  238. package/src/components/post-slug/check.js +8 -0
  239. package/src/components/post-slug/index.js +5 -0
  240. package/src/components/post-status/index.js +2 -0
  241. package/src/components/post-status/style.scss +5 -0
  242. package/src/components/post-sticky/check.js +8 -0
  243. package/src/components/post-sticky/index.js +14 -12
  244. package/src/components/post-sticky/style.scss +3 -2
  245. package/src/components/post-switch-to-draft-button/index.js +10 -1
  246. package/src/components/post-sync-status/index.js +5 -0
  247. package/src/components/post-taxonomies/check.js +8 -0
  248. package/src/components/post-taxonomies/flat-term-selector.js +13 -2
  249. package/src/components/post-taxonomies/index.js +8 -0
  250. package/src/components/post-taxonomies/panel.js +9 -0
  251. package/src/components/post-template/create-new-template-modal.js +2 -0
  252. package/src/components/post-title/index.js +2 -5
  253. package/src/components/post-title/post-title-raw.js +2 -5
  254. package/src/components/post-trash/check.js +8 -0
  255. package/src/components/post-trash/index.js +5 -0
  256. package/src/components/provider/index.js +17 -17
  257. package/src/components/sidebar/index.js +2 -0
  258. package/src/components/sidebar/post-summary.js +1 -3
  259. package/src/components/table-of-contents/index.js +10 -0
  260. package/src/components/template-part-content-panel/index.js +62 -0
  261. package/src/components/template-part-menu-items/convert-to-regular.js +32 -0
  262. package/src/components/template-part-menu-items/convert-to-template-part.js +75 -0
  263. package/src/components/template-part-menu-items/index.js +59 -0
  264. package/src/components/template-part-menu-items/index.native.js +3 -0
  265. package/src/components/theme-support-check/index.js +9 -0
  266. package/src/components/time-to-read/index.js +5 -0
  267. package/src/components/word-count/index.js +5 -0
  268. package/src/dataviews/api.js +55 -0
  269. package/src/dataviews/store/private-actions.ts +30 -0
  270. package/src/dataviews/store/private-selectors.ts +15 -0
  271. package/src/dataviews/store/reducer.ts +44 -0
  272. package/src/index.js +1 -0
  273. package/src/private-apis.js +0 -6
  274. package/src/private-apis.native.js +0 -2
  275. package/src/store/private-actions.js +1 -0
  276. package/src/store/private-selectors.js +5 -0
  277. package/src/store/reducer.js +2 -0
  278. package/tsconfig.json +36 -0
  279. package/tsconfig.tsbuildinfo +1 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 14.2.0 (2024-06-26)
6
+
7
+ ## 14.1.0 (2024-06-15)
8
+
5
9
  ## 14.0.0 (2024-05-31)
6
10
 
7
11
  ### Breaking Changes
@@ -141,11 +145,11 @@
141
145
 
142
146
  ## 12.2.0 (2022-02-10)
143
147
 
144
- ### Enhancement
148
+ ### Enhancements
145
149
 
146
150
  - Export `PostTaxonomiesFlatTermSelector` and `PostTaxonomiesHierarchicalTermSelector` components to allow using them to customize the default term selector for a taxonomy.
147
151
 
148
- ### Bug Fix
152
+ ### Bug Fixes
149
153
 
150
154
  - Removed unused `@wordpress/autop`, `@wordpress/blob` and `@wordpress/is-shallow-equal` dependencies ([#38388](https://github.com/WordPress/gutenberg/pull/38388)).
151
155
 
@@ -157,14 +161,14 @@
157
161
 
158
162
  ## 12.0.0 (2021-10-12)
159
163
 
160
- ### Breaking changes
164
+ ### Breaking Changes
161
165
 
162
166
  - Removed the deprecated `resetAutosave` action ([#34537](https://github.com/WordPress/gutenberg/pull/34537)).
163
167
  - Removed the deprecated `getAutosave`, `hasAutosave` and `getBlockForSerialization` selectors ([#34537](https://github.com/WordPress/gutenberg/pull/34537)).
164
168
 
165
169
  ## 11.0.0 (2021-07-29)
166
170
 
167
- ### Breaking Change
171
+ ### Breaking Changes
168
172
 
169
173
  - Upgraded React components to work with v17.0 ([#29118](https://github.com/WordPress/gutenberg/pull/29118)). There are no new features in React v17.0 as explained in the [blog post](https://reactjs.org/blog/2020/10/20/react-v17.html).
170
174
 
@@ -183,13 +187,13 @@
183
187
 
184
188
  ## 9.25.0 (2020-12-17)
185
189
 
186
- ### New Feature
190
+ ### New Features
187
191
 
188
192
  - Added a store definition `store` for the editor namespace to use with `@wordpress/data` API ([#26655](https://github.com/WordPress/gutenberg/pull/26655)).
189
193
 
190
194
  ## 9.21.0 (2020-09-03)
191
195
 
192
- ### Enhancement
196
+ ### Enhancements
193
197
 
194
198
  - The `UnsavedChangesWarning` component is now using `__experimentalGetDirtyEntityRecords` to determine if there were changes.
195
199
 
@@ -415,7 +419,7 @@
415
419
 
416
420
  ## 7.0.1 (2018-11-12)
417
421
 
418
- ### Polish
422
+ ### Internal
419
423
 
420
424
  - Remove unnecessary `locale` prop usage [#11649](https://github.com/WordPress/gutenberg/pull/11649)
421
425
 
@@ -425,11 +429,11 @@
425
429
 
426
430
  ## 7.0.0 (2018-11-12)
427
431
 
428
- ### Breaking Change
432
+ ### Breaking Changes
429
433
 
430
434
  - The `PanelColor` component has been removed.
431
435
 
432
- ### New Feature
436
+ ### New Features
433
437
 
434
438
  - In `NavigableToolbar`, a property focusOnMount was added, if true, the toolbar will get focus as soon as it mounted. Defaults to false.
435
439
 
@@ -447,7 +451,7 @@
447
451
 
448
452
  - `PostPublishPanelToggle` has been deprecated in favor of `PostPublishButton`.
449
453
 
450
- ### Polish
454
+ ### Internal
451
455
 
452
456
  - Reactive block styles.
453
457
 
@@ -459,7 +463,7 @@
459
463
 
460
464
  ## 6.1.1 (2018-11-03)
461
465
 
462
- ### Polish
466
+ ### Internal
463
467
 
464
468
  - Remove `findDOMNode` usage from the `Inserter` component.
465
469
  - Remove `findDOMNode` usage from the `Block` component.
@@ -492,7 +496,7 @@
492
496
  - New actions `lockPostSaving` and `unlockPostSaving` were introduced ([#10649](https://github.com/WordPress/gutenberg/pull/10649)).
493
497
  - New selector `isPostSavingLocked` was introduced ([#10649](https://github.com/WordPress/gutenberg/pull/10649)).
494
498
 
495
- ### Polish
499
+ ### Internal
496
500
 
497
501
  - Add animated logo to preview interstitial screen.
498
502
  - Tweak the editor styles support.
package/README.md CHANGED
@@ -262,6 +262,12 @@ _Usage_
262
262
  <DocumentBar />
263
263
  ```
264
264
 
265
+ _Parameters_
266
+
267
+ - _props_ `Object`: The component props.
268
+ - _props.title_ `string`: A title for the document, defaulting to the document or template title currently being edited.
269
+ - _props.icon_ `import("@wordpress/components").IconType`: An icon for the document, defaulting to an icon for document or template currently being edited.
270
+
265
271
  _Returns_
266
272
 
267
273
  - `JSX.Element`: The rendered DocumentBar component.
@@ -322,7 +328,7 @@ _Returns_
322
328
 
323
329
  ### EditorKeyboardShortcuts
324
330
 
325
- Component handles the keyboard shortcuts for the editor.
331
+ Handles the keyboard shortcuts for the editor.
326
332
 
327
333
  It provides functionality for various keyboard shortcuts such as toggling editor mode, toggling distraction-free mode, undo/redo, saving the post, toggling list view, and toggling the sidebar.
328
334
 
@@ -390,7 +396,17 @@ _Returns_
390
396
 
391
397
  ### EntitiesSavedStates
392
398
 
393
- Undocumented declaration.
399
+ Renders the component for managing saved states of entities.
400
+
401
+ _Parameters_
402
+
403
+ - _props_ `Object`: The component props.
404
+ - _props.close_ `Function`: The function to close the dialog.
405
+ - _props.renderDialog_ `Function`: The function to render the dialog.
406
+
407
+ _Returns_
408
+
409
+ - `JSX.Element`: The rendered component.
394
410
 
395
411
  ### ErrorBoundary
396
412
 
@@ -1183,15 +1199,19 @@ _Returns_
1183
1199
 
1184
1200
  ### PostPublishButton
1185
1201
 
1186
- Undocumented declaration.
1202
+ Renders the publish button.
1187
1203
 
1188
1204
  ### PostPublishButtonLabel
1189
1205
 
1190
- Undocumented declaration.
1206
+ Renders the label for the publish button.
1207
+
1208
+ _Returns_
1209
+
1210
+ - `string`: The label for the publish button.
1191
1211
 
1192
1212
  ### PostPublishPanel
1193
1213
 
1194
- Undocumented declaration.
1214
+ Renders a panel for publishing a post.
1195
1215
 
1196
1216
  ### PostSavedState
1197
1217
 
@@ -1254,39 +1274,100 @@ _Returns_
1254
1274
 
1255
1275
  ### PostSlug
1256
1276
 
1257
- Undocumented declaration.
1277
+ Renders the PostSlug component. It provide a control for editing the post slug.
1278
+
1279
+ _Returns_
1280
+
1281
+ - `Component`: The component to be rendered.
1258
1282
 
1259
1283
  ### PostSlugCheck
1260
1284
 
1261
- Undocumented declaration.
1285
+ Wrapper component that renders its children only if the post type supports the slug.
1286
+
1287
+ _Parameters_
1288
+
1289
+ - _props_ `Object`: Props.
1290
+ - _props.children_ `Element`: Children to be rendered.
1291
+
1292
+ _Returns_
1293
+
1294
+ - `Component`: The component to be rendered.
1262
1295
 
1263
1296
  ### PostSticky
1264
1297
 
1265
- Undocumented declaration.
1298
+ Renders the PostSticky component. It provides a checkbox control for the sticky post feature.
1299
+
1300
+ _Returns_
1301
+
1302
+ - `Component`: The component to be rendered.
1266
1303
 
1267
1304
  ### PostStickyCheck
1268
1305
 
1269
- Undocumented declaration.
1306
+ Wrapper component that renders its children only if post has a sticky action.
1307
+
1308
+ _Parameters_
1309
+
1310
+ - _props_ `Object`: Props.
1311
+ - _props.children_ `Element`: Children to be rendered.
1312
+
1313
+ _Returns_
1314
+
1315
+ - `Component`: The component to be rendered or null if post type is not 'post' or hasStickyAction is false.
1270
1316
 
1271
1317
  ### PostSwitchToDraftButton
1272
1318
 
1273
- Undocumented declaration.
1319
+ Renders a button component that allows the user to switch a post to draft status.
1320
+
1321
+ _Returns_
1322
+
1323
+ - `JSX.Element`: The rendered component.
1274
1324
 
1275
1325
  ### PostSyncStatus
1276
1326
 
1277
- Undocumented declaration.
1327
+ Renders the sync status of a post.
1328
+
1329
+ _Returns_
1330
+
1331
+ - `JSX.Element|null`: The rendered sync status component.
1278
1332
 
1279
1333
  ### PostTaxonomies
1280
1334
 
1281
- Undocumented declaration.
1335
+ Renders the taxonomies associated with a post.
1336
+
1337
+ _Parameters_
1338
+
1339
+ - _props_ `Object`: The component props.
1340
+ - _props.taxonomyWrapper_ `Function`: The wrapper function for each taxonomy component.
1341
+
1342
+ _Returns_
1343
+
1344
+ - `Array`: An array of JSX elements representing the visible taxonomies.
1282
1345
 
1283
1346
  ### PostTaxonomiesCheck
1284
1347
 
1285
- Undocumented declaration.
1348
+ Renders the children components only if the current post type has taxonomies.
1349
+
1350
+ _Parameters_
1351
+
1352
+ - _props_ `Object`: The component props.
1353
+ - _props.children_ `Element`: The children components to render.
1354
+
1355
+ _Returns_
1356
+
1357
+ - `Component|null`: The rendered children components or null if the current post type has no taxonomies.
1286
1358
 
1287
1359
  ### PostTaxonomiesFlatTermSelector
1288
1360
 
1289
- Undocumented declaration.
1361
+ Renders a flat term selector component.
1362
+
1363
+ _Parameters_
1364
+
1365
+ - _props_ `Object`: The component props.
1366
+ - _props.slug_ `string`: The slug of the taxonomy.
1367
+
1368
+ _Returns_
1369
+
1370
+ - `JSX.Element`: The rendered flat term selector component.
1290
1371
 
1291
1372
  ### PostTaxonomiesHierarchicalTermSelector
1292
1373
 
@@ -1303,7 +1384,17 @@ _Returns_
1303
1384
 
1304
1385
  ### PostTaxonomiesPanel
1305
1386
 
1306
- Undocumented declaration.
1387
+ Renders a panel for a specific taxonomy.
1388
+
1389
+ _Parameters_
1390
+
1391
+ - _props_ `Object`: The component props.
1392
+ - _props.taxonomy_ `Object`: The taxonomy object.
1393
+ - _props.children_ `Element`: The child components.
1394
+
1395
+ _Returns_
1396
+
1397
+ - `Component`: The rendered taxonomy panel.
1307
1398
 
1308
1399
  ### PostTemplatePanel
1309
1400
 
@@ -1340,11 +1431,24 @@ Undocumented declaration.
1340
1431
 
1341
1432
  ### PostTrash
1342
1433
 
1343
- Undocumented declaration.
1434
+ Displays the Post Trash Button and Confirm Dialog in the Editor.
1435
+
1436
+ _Returns_
1437
+
1438
+ - `JSX.Element|null`: The rendered PostTrash component.
1344
1439
 
1345
1440
  ### PostTrashCheck
1346
1441
 
1347
- Undocumented declaration.
1442
+ Wrapper component that renders its children only if the post can trashed.
1443
+
1444
+ _Parameters_
1445
+
1446
+ - _props_ `Object`: - The component props.
1447
+ - _props.children_ `Element`: - The child components to render.
1448
+
1449
+ _Returns_
1450
+
1451
+ - `Component|null`: The rendered child components or null if the post can not trashed.
1348
1452
 
1349
1453
  ### PostTypeSupportCheck
1350
1454
 
@@ -1445,6 +1549,18 @@ _Returns_
1445
1549
 
1446
1550
  Undocumented declaration.
1447
1551
 
1552
+ ### registerEntityAction
1553
+
1554
+ Registers a new DataViews action.
1555
+
1556
+ This is an experimental API and is subject to change. it's only available in the Gutenberg plugin for now.
1557
+
1558
+ _Parameters_
1559
+
1560
+ - _kind_ `string`: Entity kind.
1561
+ - _name_ `string`: Entity name.
1562
+ - _config_ `Action`: Action configuration.
1563
+
1448
1564
  ### RichText
1449
1565
 
1450
1566
  > **Deprecated** since 5.3, use `wp.blockEditor.RichText` instead.
@@ -1491,24 +1607,63 @@ _Type_
1491
1607
 
1492
1608
  ### TableOfContents
1493
1609
 
1494
- Undocumented declaration.
1610
+ Renders a table of contents component.
1611
+
1612
+ _Parameters_
1613
+
1614
+ - _props_ `Object`: The component props.
1615
+ - _props.hasOutlineItemsDisabled_ `boolean`: Whether outline items are disabled.
1616
+ - _props.repositionDropdown_ `boolean`: Whether to reposition the dropdown.
1617
+ - _ref_ `Element.ref`: The component's ref.
1618
+
1619
+ _Returns_
1620
+
1621
+ - `JSX.Element`: The rendered table of contents component.
1495
1622
 
1496
1623
  ### TextEditorGlobalKeyboardShortcuts
1497
1624
 
1498
- Undocumented declaration.
1625
+ Handles the keyboard shortcuts for the editor.
1626
+
1627
+ It provides functionality for various keyboard shortcuts such as toggling editor mode, toggling distraction-free mode, undo/redo, saving the post, toggling list view, and toggling the sidebar.
1499
1628
 
1500
1629
  ### ThemeSupportCheck
1501
1630
 
1502
- Undocumented declaration.
1631
+ Checks if the current theme supports specific features and renders the children if supported.
1632
+
1633
+ _Parameters_
1634
+
1635
+ - _props_ `Object`: The component props.
1636
+ - _props.children_ `Element`: The children to render if the theme supports the specified features.
1637
+ - _props.supportKeys_ `string|string[]`: The key(s) of the theme support(s) to check.
1638
+
1639
+ _Returns_
1640
+
1641
+ - `JSX.Element|null`: The rendered children if the theme supports the specified features, otherwise null.
1503
1642
 
1504
1643
  ### TimeToRead
1505
1644
 
1506
- Undocumented declaration.
1645
+ Component for showing Time To Read in Content.
1646
+
1647
+ _Returns_
1648
+
1649
+ - `JSX.Element`: The rendered TimeToRead component.
1507
1650
 
1508
1651
  ### transformStyles
1509
1652
 
1510
1653
  Undocumented declaration.
1511
1654
 
1655
+ ### unregisterEntityAction
1656
+
1657
+ Unregisters a DataViews action.
1658
+
1659
+ This is an experimental API and is subject to change. it's only available in the Gutenberg plugin for now.
1660
+
1661
+ _Parameters_
1662
+
1663
+ - _kind_ `string`: Entity kind.
1664
+ - _name_ `string`: Entity name.
1665
+ - _actionId_ `string`: Action ID.
1666
+
1512
1667
  ### UnsavedChangesWarning
1513
1668
 
1514
1669
  Warns the user if there are unsaved changes before leaving the editor. Compatible with Post Editor and Site Editor.
@@ -1531,7 +1686,11 @@ _Returns_
1531
1686
 
1532
1687
  ### useEntitiesSavedStatesIsDirty
1533
1688
 
1534
- Undocumented declaration.
1689
+ Custom hook that determines if any entities are dirty (edited) and provides a way to manage selected/unselected entities.
1690
+
1691
+ _Returns_
1692
+
1693
+ - `Object`: An object containing the following properties: - dirtyEntityRecords: An array of dirty entity records. - isDirty: A boolean indicating if there are any dirty entity records. - setUnselectedEntities: A function to set the unselected entities. - unselectedEntities: An array of unselected entities.
1535
1694
 
1536
1695
  ### usePostScheduleLabel
1537
1696
 
@@ -1572,7 +1731,9 @@ _Type_
1572
1731
 
1573
1732
  ### VisualEditorGlobalKeyboardShortcuts
1574
1733
 
1575
- Undocumented declaration.
1734
+ Handles the keyboard shortcuts for the editor.
1735
+
1736
+ It provides functionality for various keyboard shortcuts such as toggling editor mode, toggling distraction-free mode, undo/redo, saving the post, toggling list view, and toggling the sidebar.
1576
1737
 
1577
1738
  ### Warning
1578
1739
 
@@ -1592,7 +1753,11 @@ Undocumented declaration.
1592
1753
 
1593
1754
  ### WordCount
1594
1755
 
1595
- Undocumented declaration.
1756
+ Renders the word count of the post content.
1757
+
1758
+ _Returns_
1759
+
1760
+ - `JSX.Element|null`: The rendered WordCount component.
1596
1761
 
1597
1762
  ### WritingFlow
1598
1763
 
@@ -35,6 +35,8 @@ function CreateTemplatePartModal({
35
35
  title: modalTitle || defaultModalTitle,
36
36
  onRequestClose: restProps.closeModal,
37
37
  overlayClassName: "editor-create-template-part-modal",
38
+ focusOnMount: "firstContentElement",
39
+ size: "medium",
38
40
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(CreateTemplatePartModalContents, {
39
41
  ...restProps
40
42
  })
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_components","_i18n","_element","_compose","_notices","_coreData","_icons","_blocks","_store","_constants","_utils","_jsxRuntime","CreateTemplatePartModal","modalTitle","restProps","defaultModalTitle","useSelect","select","coreStore","getPostType","TEMPLATE_PART_POST_TYPE","labels","add_new_item","jsx","Modal","title","onRequestClose","closeModal","overlayClassName","children","CreateTemplatePartModalContents","defaultArea","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","blocks","confirmLabel","__","onCreate","onError","defaultTitle","createErrorNotice","useDispatch","noticesStore","saveEntityRecord","existingTemplateParts","useExistingTemplateParts","setTitle","useState","area","setArea","isSubmitting","setIsSubmitting","instanceId","useInstanceId","templatePartAreas","editorStore","__experimentalGetDefaultTemplatePartAreas","createTemplatePart","uniqueTitle","getUniqueTemplatePartTitle","cleanSlug","getCleanTemplatePartSlug","templatePart","slug","content","serialize","throwOnError","error","errorMessage","message","code","type","onSubmit","event","preventDefault","jsxs","__experimentalVStack","spacing","TextControl","__next40pxDefaultSize","__nextHasNoMarginBottom","label","value","onChange","required","BaseControl","id","className","__experimentalRadioGroup","checked","map","icon","description","__experimentalRadio","Flex","align","justify","FlexItem","Icon","FlexBlock","check","__experimentalHStack","Button","variant","onClick","isBusy"],"sources":["@wordpress/editor/src/components/create-template-part-modal/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tIcon,\n\tBaseControl,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n\tFlexBlock,\n\tButton,\n\tModal,\n\t__experimentalRadioGroup as RadioGroup,\n\t__experimentalRadio as Radio,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { check } from '@wordpress/icons';\nimport { serialize } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport {\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../store/constants';\nimport {\n\tuseExistingTemplateParts,\n\tgetUniqueTemplatePartTitle,\n\tgetCleanTemplatePartSlug,\n} from './utils';\n\nexport default function CreateTemplatePartModal( {\n\tmodalTitle,\n\t...restProps\n} ) {\n\tconst defaultModalTitle = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getPostType( TEMPLATE_PART_POST_TYPE )?.labels\n\t\t\t\t?.add_new_item,\n\t\t[]\n\t);\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle || defaultModalTitle }\n\t\t\tonRequestClose={ restProps.closeModal }\n\t\t\toverlayClassName=\"editor-create-template-part-modal\"\n\t\t>\n\t\t\t<CreateTemplatePartModalContents { ...restProps } />\n\t\t</Modal>\n\t);\n}\n\nexport function CreateTemplatePartModalContents( {\n\tdefaultArea = TEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n\tblocks = [],\n\tconfirmLabel = __( 'Add' ),\n\tcloseModal,\n\tonCreate,\n\tonError,\n\tdefaultTitle = '',\n} ) {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst existingTemplateParts = useExistingTemplateParts();\n\n\tconst [ title, setTitle ] = useState( defaultTitle );\n\tconst [ area, setArea ] = useState( defaultArea );\n\tconst [ isSubmitting, setIsSubmitting ] = useState( false );\n\tconst instanceId = useInstanceId( CreateTemplatePartModal );\n\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\tasync function createTemplatePart() {\n\t\tif ( ! title || isSubmitting ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSubmitting( true );\n\t\t\tconst uniqueTitle = getUniqueTemplatePartTitle(\n\t\t\t\ttitle,\n\t\t\t\texistingTemplateParts\n\t\t\t);\n\t\t\tconst cleanSlug = getCleanTemplatePartSlug( uniqueTitle );\n\n\t\t\tconst templatePart = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tslug: cleanSlug,\n\t\t\t\t\ttitle: uniqueTitle,\n\t\t\t\t\tcontent: serialize( blocks ),\n\t\t\t\t\tarea,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\t\t\tawait onCreate( templatePart );\n\n\t\t\t// TODO: Add a success notice?\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __(\n\t\t\t\t\t\t\t'An error occurred while creating the template part.'\n\t\t\t\t\t );\n\n\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\n\t\t\tonError?.();\n\t\t} finally {\n\t\t\tsetIsSubmitting( false );\n\t\t}\n\t}\n\treturn (\n\t\t<form\n\t\t\tonSubmit={ async ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tawait createTemplatePart();\n\t\t\t} }\n\t\t>\n\t\t\t<VStack spacing=\"4\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ title }\n\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\trequired\n\t\t\t\t/>\n\t\t\t\t<BaseControl\n\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\tid={ `editor-create-template-part-modal__area-selection-${ instanceId }` }\n\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-base-control\"\n\t\t\t\t>\n\t\t\t\t\t<RadioGroup\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-radio-group\"\n\t\t\t\t\t\tid={ `editor-create-template-part-modal__area-selection-${ instanceId }` }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t\tchecked={ area }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ templatePartAreas.map(\n\t\t\t\t\t\t\t( { icon, label, area: value, description } ) => (\n\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-radio\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Flex align=\"start\" justify=\"start\">\n\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t<FlexBlock className=\"editor-create-template-part-modal__option-label\">\n\t\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t\t\t<div>{ description }</div>\n\t\t\t\t\t\t\t\t\t\t</FlexBlock>\n\n\t\t\t\t\t\t\t\t\t\t<FlexItem className=\"editor-create-template-part-modal__checkbox\">\n\t\t\t\t\t\t\t\t\t\t\t{ area === value && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ check } />\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t\t</Radio>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) }\n\t\t\t\t\t</RadioGroup>\n\t\t\t\t</BaseControl>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\taria-disabled={ ! title || isSubmitting }\n\t\t\t\t\t\tisBusy={ isSubmitting }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ confirmLabel }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</form>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAcA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AAKA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,UAAA,GAAAV,OAAA;AAIA,IAAAW,MAAA,GAAAX,OAAA;AAIiB,IAAAY,WAAA,GAAAZ,OAAA;AAtCjB;AACA;AACA;;AAwBA;AACA;AACA;;AAYe,SAASa,uBAAuBA,CAAE;EAChDC,UAAU;EACV,GAAGC;AACJ,CAAC,EAAG;EACH,MAAMC,iBAAiB,GAAG,IAAAC,eAAS,EAChCC,MAAM,IACPA,MAAM,CAAEC,eAAU,CAAC,CAACC,WAAW,CAAEC,kCAAwB,CAAC,EAAEC,MAAM,EAC/DC,YAAY,EAChB,EACD,CAAC;EACD,oBACC,IAAAX,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAwB,KAAK;IACLC,KAAK,EAAGZ,UAAU,IAAIE,iBAAmB;IACzCW,cAAc,EAAGZ,SAAS,CAACa,UAAY;IACvCC,gBAAgB,EAAC,mCAAmC;IAAAC,QAAA,eAEpD,IAAAlB,WAAA,CAAAY,GAAA,EAACO,+BAA+B;MAAA,GAAMhB;IAAS,CAAI;EAAC,CAC9C,CAAC;AAEV;AAEO,SAASgB,+BAA+BA,CAAE;EAChDC,WAAW,GAAGC,8CAAmC;EACjDC,MAAM,GAAG,EAAE;EACXC,YAAY,GAAG,IAAAC,QAAE,EAAE,KAAM,CAAC;EAC1BR,UAAU;EACVS,QAAQ;EACRC,OAAO;EACPC,YAAY,GAAG;AAChB,CAAC,EAAG;EACH,MAAM;IAAEC;EAAkB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,cAAa,CAAC;EACzD,MAAM;IAAEC;EAAiB,CAAC,GAAG,IAAAF,iBAAW,EAAEtB,eAAU,CAAC;EACrD,MAAMyB,qBAAqB,GAAG,IAAAC,+BAAwB,EAAC,CAAC;EAExD,MAAM,CAAEnB,KAAK,EAAEoB,QAAQ,CAAE,GAAG,IAAAC,iBAAQ,EAAER,YAAa,CAAC;EACpD,MAAM,CAAES,IAAI,EAAEC,OAAO,CAAE,GAAG,IAAAF,iBAAQ,EAAEf,WAAY,CAAC;EACjD,MAAM,CAAEkB,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAJ,iBAAQ,EAAE,KAAM,CAAC;EAC3D,MAAMK,UAAU,GAAG,IAAAC,sBAAa,EAAExC,uBAAwB,CAAC;EAE3D,MAAMyC,iBAAiB,GAAG,IAAArC,eAAS,EAChCC,MAAM,IACPA,MAAM,CAAEqC,YAAY,CAAC,CAACC,yCAAyC,CAAC,CAAC,EAClE,EACD,CAAC;EACD,eAAeC,kBAAkBA,CAAA,EAAG;IACnC,IAAK,CAAE/B,KAAK,IAAIwB,YAAY,EAAG;MAC9B;IACD;IAEA,IAAI;MACHC,eAAe,CAAE,IAAK,CAAC;MACvB,MAAMO,WAAW,GAAG,IAAAC,iCAA0B,EAC7CjC,KAAK,EACLkB,qBACD,CAAC;MACD,MAAMgB,SAAS,GAAG,IAAAC,+BAAwB,EAAEH,WAAY,CAAC;MAEzD,MAAMI,YAAY,GAAG,MAAMnB,gBAAgB,CAC1C,UAAU,EACVtB,kCAAuB,EACvB;QACC0C,IAAI,EAAEH,SAAS;QACflC,KAAK,EAAEgC,WAAW;QAClBM,OAAO,EAAE,IAAAC,iBAAS,EAAE/B,MAAO,CAAC;QAC5Bc;MACD,CAAC,EACD;QAAEkB,YAAY,EAAE;MAAK,CACtB,CAAC;MACD,MAAM7B,QAAQ,CAAEyB,YAAa,CAAC;;MAE9B;IACD,CAAC,CAAC,OAAQK,KAAK,EAAG;MACjB,MAAMC,YAAY,GACjBD,KAAK,CAACE,OAAO,IAAIF,KAAK,CAACG,IAAI,KAAK,eAAe,GAC5CH,KAAK,CAACE,OAAO,GACb,IAAAjC,QAAE,EACF,qDACA,CAAC;MAELI,iBAAiB,CAAE4B,YAAY,EAAE;QAAEG,IAAI,EAAE;MAAW,CAAE,CAAC;MAEvDjC,OAAO,GAAG,CAAC;IACZ,CAAC,SAAS;MACTa,eAAe,CAAE,KAAM,CAAC;IACzB;EACD;EACA,oBACC,IAAAvC,WAAA,CAAAY,GAAA;IACCgD,QAAQ,EAAG,MAAQC,KAAK,IAAM;MAC7BA,KAAK,CAACC,cAAc,CAAC,CAAC;MACtB,MAAMjB,kBAAkB,CAAC,CAAC;IAC3B,CAAG;IAAA3B,QAAA,eAEH,IAAAlB,WAAA,CAAA+D,IAAA,EAAC1E,WAAA,CAAA2E,oBAAM;MAACC,OAAO,EAAC,GAAG;MAAA/C,QAAA,gBAClB,IAAAlB,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAA6E,WAAW;QACXC,qBAAqB;QACrBC,uBAAuB;QACvBC,KAAK,EAAG,IAAA7C,QAAE,EAAE,MAAO,CAAG;QACtB8C,KAAK,EAAGxD,KAAO;QACfyD,QAAQ,EAAGrC,QAAU;QACrBsC,QAAQ;MAAA,CACR,CAAC,eACF,IAAAxE,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAoF,WAAW;QACXJ,KAAK,EAAG,IAAA7C,QAAE,EAAE,MAAO,CAAG;QACtBkD,EAAE,EAAI,qDAAqDlC,UAAY,EAAG;QAC1EmC,SAAS,EAAC,sDAAsD;QAAAzD,QAAA,eAEhE,IAAAlB,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAuF,wBAAU;UACVP,KAAK,EAAG,IAAA7C,QAAE,EAAE,MAAO,CAAG;UACtBmD,SAAS,EAAC,qDAAqD;UAC/DD,EAAE,EAAI,qDAAqDlC,UAAY,EAAG;UAC1E+B,QAAQ,EAAGlC,OAAS;UACpBwC,OAAO,EAAGzC,IAAM;UAAAlB,QAAA,EAEdwB,iBAAiB,CAACoC,GAAG,CACtB,CAAE;YAAEC,IAAI;YAAEV,KAAK;YAAEjC,IAAI,EAAEkC,KAAK;YAAEU;UAAY,CAAC,kBAC1C,IAAAhF,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAA4F,mBAAK;YAELX,KAAK,EAAGA,KAAO;YACfK,SAAS,EAAC,+CAA+C;YAAAzD,QAAA,eAEzD,IAAAlB,WAAA,CAAA+D,IAAA,EAAC1E,WAAA,CAAA6F,IAAI;cAACC,KAAK,EAAC,OAAO;cAACC,OAAO,EAAC,OAAO;cAAAlE,QAAA,gBAClC,IAAAlB,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAgG,QAAQ;gBAAAnE,QAAA,eACR,IAAAlB,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAiG,IAAI;kBAACP,IAAI,EAAGA;gBAAM,CAAE;cAAC,CACb,CAAC,eACX,IAAA/E,WAAA,CAAA+D,IAAA,EAAC1E,WAAA,CAAAkG,SAAS;gBAACZ,SAAS,EAAC,iDAAiD;gBAAAzD,QAAA,GACnEmD,KAAK,eACP,IAAArE,WAAA,CAAAY,GAAA;kBAAAM,QAAA,EAAO8D;gBAAW,CAAO,CAAC;cAAA,CAChB,CAAC,eAEZ,IAAAhF,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAgG,QAAQ;gBAACV,SAAS,EAAC,6CAA6C;gBAAAzD,QAAA,EAC9DkB,IAAI,KAAKkC,KAAK,iBACf,IAAAtE,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAiG,IAAI;kBAACP,IAAI,EAAGS;gBAAO,CAAE;cACtB,CACQ,CAAC;YAAA,CACN;UAAC,GAlBDnB,KAmBA,CAET;QAAC,CACU;MAAC,CACD,CAAC,eACd,IAAArE,WAAA,CAAA+D,IAAA,EAAC1E,WAAA,CAAAoG,oBAAM;QAACL,OAAO,EAAC,OAAO;QAAAlE,QAAA,gBACtB,IAAAlB,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAqG,MAAM;UACNvB,qBAAqB;UACrBwB,OAAO,EAAC,UAAU;UAClBC,OAAO,EAAGA,CAAA,KAAM;YACf5E,UAAU,CAAC,CAAC;UACb,CAAG;UAAAE,QAAA,EAED,IAAAM,QAAE,EAAE,QAAS;QAAC,CACT,CAAC,eACT,IAAAxB,WAAA,CAAAY,GAAA,EAACvB,WAAA,CAAAqG,MAAM;UACNvB,qBAAqB;UACrBwB,OAAO,EAAC,SAAS;UACjBhC,IAAI,EAAC,QAAQ;UACb,iBAAgB,CAAE7C,KAAK,IAAIwB,YAAc;UACzCuD,MAAM,EAAGvD,YAAc;UAAApB,QAAA,EAErBK;QAAY,CACP,CAAC;MAAA,CACF,CAAC;IAAA,CACF;EAAC,CACJ,CAAC;AAET","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_components","_i18n","_element","_compose","_notices","_coreData","_icons","_blocks","_store","_constants","_utils","_jsxRuntime","CreateTemplatePartModal","modalTitle","restProps","defaultModalTitle","useSelect","select","coreStore","getPostType","TEMPLATE_PART_POST_TYPE","labels","add_new_item","jsx","Modal","title","onRequestClose","closeModal","overlayClassName","focusOnMount","size","children","CreateTemplatePartModalContents","defaultArea","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","blocks","confirmLabel","__","onCreate","onError","defaultTitle","createErrorNotice","useDispatch","noticesStore","saveEntityRecord","existingTemplateParts","useExistingTemplateParts","setTitle","useState","area","setArea","isSubmitting","setIsSubmitting","instanceId","useInstanceId","templatePartAreas","editorStore","__experimentalGetDefaultTemplatePartAreas","createTemplatePart","uniqueTitle","getUniqueTemplatePartTitle","cleanSlug","getCleanTemplatePartSlug","templatePart","slug","content","serialize","throwOnError","error","errorMessage","message","code","type","onSubmit","event","preventDefault","jsxs","__experimentalVStack","spacing","TextControl","__next40pxDefaultSize","__nextHasNoMarginBottom","label","value","onChange","required","BaseControl","id","className","__experimentalRadioGroup","checked","map","icon","description","__experimentalRadio","Flex","align","justify","FlexItem","Icon","FlexBlock","check","__experimentalHStack","Button","variant","onClick","isBusy"],"sources":["@wordpress/editor/src/components/create-template-part-modal/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tIcon,\n\tBaseControl,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n\tFlexBlock,\n\tButton,\n\tModal,\n\t__experimentalRadioGroup as RadioGroup,\n\t__experimentalRadio as Radio,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { check } from '@wordpress/icons';\nimport { serialize } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport {\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../store/constants';\nimport {\n\tuseExistingTemplateParts,\n\tgetUniqueTemplatePartTitle,\n\tgetCleanTemplatePartSlug,\n} from './utils';\n\nexport default function CreateTemplatePartModal( {\n\tmodalTitle,\n\t...restProps\n} ) {\n\tconst defaultModalTitle = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getPostType( TEMPLATE_PART_POST_TYPE )?.labels\n\t\t\t\t?.add_new_item,\n\t\t[]\n\t);\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle || defaultModalTitle }\n\t\t\tonRequestClose={ restProps.closeModal }\n\t\t\toverlayClassName=\"editor-create-template-part-modal\"\n\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t<CreateTemplatePartModalContents { ...restProps } />\n\t\t</Modal>\n\t);\n}\n\nexport function CreateTemplatePartModalContents( {\n\tdefaultArea = TEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n\tblocks = [],\n\tconfirmLabel = __( 'Add' ),\n\tcloseModal,\n\tonCreate,\n\tonError,\n\tdefaultTitle = '',\n} ) {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst existingTemplateParts = useExistingTemplateParts();\n\n\tconst [ title, setTitle ] = useState( defaultTitle );\n\tconst [ area, setArea ] = useState( defaultArea );\n\tconst [ isSubmitting, setIsSubmitting ] = useState( false );\n\tconst instanceId = useInstanceId( CreateTemplatePartModal );\n\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\tasync function createTemplatePart() {\n\t\tif ( ! title || isSubmitting ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSubmitting( true );\n\t\t\tconst uniqueTitle = getUniqueTemplatePartTitle(\n\t\t\t\ttitle,\n\t\t\t\texistingTemplateParts\n\t\t\t);\n\t\t\tconst cleanSlug = getCleanTemplatePartSlug( uniqueTitle );\n\n\t\t\tconst templatePart = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tslug: cleanSlug,\n\t\t\t\t\ttitle: uniqueTitle,\n\t\t\t\t\tcontent: serialize( blocks ),\n\t\t\t\t\tarea,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\t\t\tawait onCreate( templatePart );\n\n\t\t\t// TODO: Add a success notice?\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __(\n\t\t\t\t\t\t\t'An error occurred while creating the template part.'\n\t\t\t\t\t );\n\n\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\n\t\t\tonError?.();\n\t\t} finally {\n\t\t\tsetIsSubmitting( false );\n\t\t}\n\t}\n\treturn (\n\t\t<form\n\t\t\tonSubmit={ async ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tawait createTemplatePart();\n\t\t\t} }\n\t\t>\n\t\t\t<VStack spacing=\"4\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ title }\n\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\trequired\n\t\t\t\t/>\n\t\t\t\t<BaseControl\n\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\tid={ `editor-create-template-part-modal__area-selection-${ instanceId }` }\n\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-base-control\"\n\t\t\t\t>\n\t\t\t\t\t<RadioGroup\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-radio-group\"\n\t\t\t\t\t\tid={ `editor-create-template-part-modal__area-selection-${ instanceId }` }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t\tchecked={ area }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ templatePartAreas.map(\n\t\t\t\t\t\t\t( { icon, label, area: value, description } ) => (\n\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-radio\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Flex align=\"start\" justify=\"start\">\n\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t<FlexBlock className=\"editor-create-template-part-modal__option-label\">\n\t\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t\t\t<div>{ description }</div>\n\t\t\t\t\t\t\t\t\t\t</FlexBlock>\n\n\t\t\t\t\t\t\t\t\t\t<FlexItem className=\"editor-create-template-part-modal__checkbox\">\n\t\t\t\t\t\t\t\t\t\t\t{ area === value && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ check } />\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t\t</Radio>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) }\n\t\t\t\t\t</RadioGroup>\n\t\t\t\t</BaseControl>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\taria-disabled={ ! title || isSubmitting }\n\t\t\t\t\t\tisBusy={ isSubmitting }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ confirmLabel }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</form>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -54,10 +54,15 @@ const MotionButton = (0, _components.__unstableMotion)(_components.Button);
54
54
  * ```jsx
55
55
  * <DocumentBar />
56
56
  * ```
57
+ * @param {Object} props The component props.
58
+ * @param {string} props.title A title for the document, defaulting to the document or
59
+ * template title currently being edited.
60
+ * @param {import("@wordpress/components").IconType} props.icon An icon for the document, defaulting to an icon for document
61
+ * or template currently being edited.
57
62
  *
58
63
  * @return {JSX.Element} The rendered DocumentBar component.
59
64
  */
60
- function DocumentBar() {
65
+ function DocumentBar(props) {
61
66
  const {
62
67
  postType,
63
68
  documentTitle,
@@ -100,7 +105,9 @@ function DocumentBar() {
100
105
  const isTemplate = _constants.TEMPLATE_POST_TYPES.includes(postType);
101
106
  const isGlobalEntity = _constants.GLOBAL_POST_TYPES.includes(postType);
102
107
  const hasBackButton = !!onNavigateToPreviousEntityRecord;
103
- const title = isTemplate ? templateTitle : documentTitle;
108
+ const entityTitle = isTemplate ? templateTitle : documentTitle;
109
+ const title = props.title || entityTitle;
110
+ const icon = props.icon || templateIcon;
104
111
  const mounted = (0, _element.useRef)(false);
105
112
  (0, _element.useEffect)(() => {
106
113
  mounted.current = true;
@@ -161,11 +168,11 @@ function DocumentBar() {
161
168
  duration: 0
162
169
  } : undefined,
163
170
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.BlockIcon, {
164
- icon: templateIcon
171
+ icon: icon
165
172
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalText, {
166
173
  size: "body",
167
174
  as: "h1",
168
- "aria-label": TYPE_LABELS[postType] ?
175
+ "aria-label": !props.title && TYPE_LABELS[postType] ?
169
176
  // eslint-disable-next-line @wordpress/valid-sprintf
170
177
  (0, _i18n.sprintf)(TYPE_LABELS[postType], title) : undefined,
171
178
  children: title ? (0, _htmlEntities.decodeEntities)(title) : (0, _i18n.__)('No Title')
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_data","_components","_blockEditor","_icons","_keycodes","_coreData","_commands","_element","_compose","_htmlEntities","_constants","_store","_lockUnlock","_jsxRuntime","TYPE_LABELS","wp_pattern","__","wp_navigation","wp_template","wp_template_part","MotionButton","motion","Button","DocumentBar","postType","documentTitle","isNotFound","isUnsyncedPattern","templateIcon","templateTitle","onNavigateToPreviousEntityRecord","useSelect","select","getCurrentPostType","getCurrentPostId","getEditorSettings","__experimentalGetTemplateInfo","getTemplateInfo","editorStore","getEditedEntityRecord","isResolving","isResolvingSelector","coreStore","_postType","_postId","_document","_templateInfo","title","wp_pattern_sync_status","unlock","getPostIcon","area","open","openCommandCenter","useDispatch","commandsStore","isReducedMotion","useReducedMotion","isTemplate","TEMPLATE_POST_TYPES","includes","isGlobalEntity","GLOBAL_POST_TYPES","hasBackButton","mounted","useRef","useEffect","current","jsxs","className","clsx","children","jsx","__unstableAnimatePresence","icon","isRTL","chevronRightSmall","chevronLeftSmall","onClick","event","stopPropagation","size","initial","opacity","transform","animate","exit","transition","duration","undefined","__experimentalText","__unstableMotion","div","BlockIcon","as","sprintf","decodeEntities","displayShortcut","primary"],"sources":["@wordpress/editor/src/components/document-bar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__experimentalText as Text,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { BlockIcon } from '@wordpress/block-editor';\nimport { chevronLeftSmall, chevronRightSmall } from '@wordpress/icons';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as commandsStore } from '@wordpress/commands';\nimport { useRef, useEffect } from '@wordpress/element';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPES, GLOBAL_POST_TYPES } from '../../store/constants';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst TYPE_LABELS = {\n\t// translators: 1: Pattern title.\n\twp_pattern: __( 'Editing pattern: %s' ),\n\t// translators: 1: Navigation menu title.\n\twp_navigation: __( 'Editing navigation menu: %s' ),\n\t// translators: 1: Template title.\n\twp_template: __( 'Editing template: %s' ),\n\t// translators: 1: Template part title.\n\twp_template_part: __( 'Editing template part: %s' ),\n};\n\nconst MotionButton = motion( Button );\n\n/**\n * This component renders a navigation bar at the top of the editor. It displays the title of the current document,\n * a back button (if applicable), and a command center button. It also handles different states of the document,\n * such as \"not found\" or \"unsynced\".\n *\n * @example\n * ```jsx\n * <DocumentBar />\n * ```\n *\n * @return {JSX.Element} The rendered DocumentBar component.\n */\nexport default function DocumentBar() {\n\tconst {\n\t\tpostType,\n\t\tdocumentTitle,\n\t\tisNotFound,\n\t\tisUnsyncedPattern,\n\t\ttemplateIcon,\n\t\ttemplateTitle,\n\t\tonNavigateToPreviousEntityRecord,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentPostId,\n\t\t\tgetEditorSettings,\n\t\t\t__experimentalGetTemplateInfo: getTemplateInfo,\n\t\t} = select( editorStore );\n\t\tconst { getEditedEntityRecord, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst _postType = getCurrentPostType();\n\t\tconst _postId = getCurrentPostId();\n\t\tconst _document = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\t_postType,\n\t\t\t_postId\n\t\t);\n\t\tconst _templateInfo = getTemplateInfo( _document );\n\t\treturn {\n\t\t\tpostType: _postType,\n\t\t\tdocumentTitle: _document.title,\n\t\t\tisNotFound:\n\t\t\t\t! _document &&\n\t\t\t\t! isResolvingSelector(\n\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t'postType',\n\t\t\t\t\t_postType,\n\t\t\t\t\t_postId\n\t\t\t\t),\n\t\t\tisUnsyncedPattern: _document?.wp_pattern_sync_status === 'unsynced',\n\t\t\ttemplateIcon: unlock( select( editorStore ) ).getPostIcon(\n\t\t\t\t_postType,\n\t\t\t\t{\n\t\t\t\t\tarea: _document?.area,\n\t\t\t\t}\n\t\t\t),\n\t\t\ttemplateTitle: _templateInfo.title,\n\t\t\tonNavigateToPreviousEntityRecord:\n\t\t\t\tgetEditorSettings().onNavigateToPreviousEntityRecord,\n\t\t};\n\t}, [] );\n\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\tconst isReducedMotion = useReducedMotion();\n\n\tconst isTemplate = TEMPLATE_POST_TYPES.includes( postType );\n\tconst isGlobalEntity = GLOBAL_POST_TYPES.includes( postType );\n\tconst hasBackButton = !! onNavigateToPreviousEntityRecord;\n\tconst title = isTemplate ? templateTitle : documentTitle;\n\n\tconst mounted = useRef( false );\n\tuseEffect( () => {\n\t\tmounted.current = true;\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'editor-document-bar', {\n\t\t\t\t'has-back-button': hasBackButton,\n\t\t\t\t'is-global': isGlobalEntity && ! isUnsyncedPattern,\n\t\t\t} ) }\n\t\t>\n\t\t\t<AnimatePresence>\n\t\t\t\t{ hasBackButton && (\n\t\t\t\t\t<MotionButton\n\t\t\t\t\t\tclassName=\"editor-document-bar__back\"\n\t\t\t\t\t\ticon={ isRTL() ? chevronRightSmall : chevronLeftSmall }\n\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\tonNavigateToPreviousEntityRecord();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\tmounted.current\n\t\t\t\t\t\t\t\t? { opacity: 0, transform: 'translateX(15%)' }\n\t\t\t\t\t\t\t\t: false // Don't show entry animation when DocumentBar mounts.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate={ { opacity: 1, transform: 'translateX(0%)' } }\n\t\t\t\t\t\texit={ { opacity: 0, transform: 'translateX(15%)' } }\n\t\t\t\t\t\ttransition={\n\t\t\t\t\t\t\tisReducedMotion ? { duration: 0 } : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</MotionButton>\n\t\t\t\t) }\n\t\t\t</AnimatePresence>\n\t\t\t{ isNotFound ? (\n\t\t\t\t<Text>{ __( 'Document not found' ) }</Text>\n\t\t\t) : (\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"editor-document-bar__command\"\n\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"editor-document-bar__title\"\n\t\t\t\t\t\t// Force entry animation when the back button is added or removed.\n\t\t\t\t\t\tkey={ hasBackButton }\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\tmounted.current\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\t\t\ttransform: hasBackButton\n\t\t\t\t\t\t\t\t\t\t\t? 'translateX(15%)'\n\t\t\t\t\t\t\t\t\t\t\t: 'translateX(-15%)',\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: false // Don't show entry animation when DocumentBar mounts.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t\ttransform: 'translateX(0%)',\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={\n\t\t\t\t\t\t\tisReducedMotion ? { duration: 0 } : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockIcon icon={ templateIcon } />\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tsize=\"body\"\n\t\t\t\t\t\t\tas=\"h1\"\n\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\tTYPE_LABELS[ postType ]\n\t\t\t\t\t\t\t\t\t? // eslint-disable-next-line @wordpress/valid-sprintf\n\t\t\t\t\t\t\t\t\t sprintf( TYPE_LABELS[ postType ], title )\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title\n\t\t\t\t\t\t\t\t? decodeEntities( title )\n\t\t\t\t\t\t\t\t: __( 'No Title' ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</motion.div>\n\t\t\t\t\t<span className=\"editor-document-bar__shortcut\">\n\t\t\t\t\t\t{ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t</span>\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_data","_components","_blockEditor","_icons","_keycodes","_coreData","_commands","_element","_compose","_htmlEntities","_constants","_store","_lockUnlock","_jsxRuntime","TYPE_LABELS","wp_pattern","__","wp_navigation","wp_template","wp_template_part","MotionButton","motion","Button","DocumentBar","props","postType","documentTitle","isNotFound","isUnsyncedPattern","templateIcon","templateTitle","onNavigateToPreviousEntityRecord","useSelect","select","getCurrentPostType","getCurrentPostId","getEditorSettings","__experimentalGetTemplateInfo","getTemplateInfo","editorStore","getEditedEntityRecord","isResolving","isResolvingSelector","coreStore","_postType","_postId","_document","_templateInfo","title","wp_pattern_sync_status","unlock","getPostIcon","area","open","openCommandCenter","useDispatch","commandsStore","isReducedMotion","useReducedMotion","isTemplate","TEMPLATE_POST_TYPES","includes","isGlobalEntity","GLOBAL_POST_TYPES","hasBackButton","entityTitle","icon","mounted","useRef","useEffect","current","jsxs","className","clsx","children","jsx","__unstableAnimatePresence","isRTL","chevronRightSmall","chevronLeftSmall","onClick","event","stopPropagation","size","initial","opacity","transform","animate","exit","transition","duration","undefined","__experimentalText","__unstableMotion","div","BlockIcon","as","sprintf","decodeEntities","displayShortcut","primary"],"sources":["@wordpress/editor/src/components/document-bar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__experimentalText as Text,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { BlockIcon } from '@wordpress/block-editor';\nimport { chevronLeftSmall, chevronRightSmall } from '@wordpress/icons';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as commandsStore } from '@wordpress/commands';\nimport { useRef, useEffect } from '@wordpress/element';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPES, GLOBAL_POST_TYPES } from '../../store/constants';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst TYPE_LABELS = {\n\t// translators: 1: Pattern title.\n\twp_pattern: __( 'Editing pattern: %s' ),\n\t// translators: 1: Navigation menu title.\n\twp_navigation: __( 'Editing navigation menu: %s' ),\n\t// translators: 1: Template title.\n\twp_template: __( 'Editing template: %s' ),\n\t// translators: 1: Template part title.\n\twp_template_part: __( 'Editing template part: %s' ),\n};\n\nconst MotionButton = motion( Button );\n\n/**\n * This component renders a navigation bar at the top of the editor. It displays the title of the current document,\n * a back button (if applicable), and a command center button. It also handles different states of the document,\n * such as \"not found\" or \"unsynced\".\n *\n * @example\n * ```jsx\n * <DocumentBar />\n * ```\n * @param {Object} props The component props.\n * @param {string} props.title A title for the document, defaulting to the document or\n * template title currently being edited.\n * @param {import(\"@wordpress/components\").IconType} props.icon An icon for the document, defaulting to an icon for document\n * or template currently being edited.\n *\n * @return {JSX.Element} The rendered DocumentBar component.\n */\nexport default function DocumentBar( props ) {\n\tconst {\n\t\tpostType,\n\t\tdocumentTitle,\n\t\tisNotFound,\n\t\tisUnsyncedPattern,\n\t\ttemplateIcon,\n\t\ttemplateTitle,\n\t\tonNavigateToPreviousEntityRecord,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentPostId,\n\t\t\tgetEditorSettings,\n\t\t\t__experimentalGetTemplateInfo: getTemplateInfo,\n\t\t} = select( editorStore );\n\t\tconst { getEditedEntityRecord, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst _postType = getCurrentPostType();\n\t\tconst _postId = getCurrentPostId();\n\t\tconst _document = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\t_postType,\n\t\t\t_postId\n\t\t);\n\t\tconst _templateInfo = getTemplateInfo( _document );\n\t\treturn {\n\t\t\tpostType: _postType,\n\t\t\tdocumentTitle: _document.title,\n\t\t\tisNotFound:\n\t\t\t\t! _document &&\n\t\t\t\t! isResolvingSelector(\n\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t'postType',\n\t\t\t\t\t_postType,\n\t\t\t\t\t_postId\n\t\t\t\t),\n\t\t\tisUnsyncedPattern: _document?.wp_pattern_sync_status === 'unsynced',\n\t\t\ttemplateIcon: unlock( select( editorStore ) ).getPostIcon(\n\t\t\t\t_postType,\n\t\t\t\t{\n\t\t\t\t\tarea: _document?.area,\n\t\t\t\t}\n\t\t\t),\n\t\t\ttemplateTitle: _templateInfo.title,\n\t\t\tonNavigateToPreviousEntityRecord:\n\t\t\t\tgetEditorSettings().onNavigateToPreviousEntityRecord,\n\t\t};\n\t}, [] );\n\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\tconst isReducedMotion = useReducedMotion();\n\n\tconst isTemplate = TEMPLATE_POST_TYPES.includes( postType );\n\tconst isGlobalEntity = GLOBAL_POST_TYPES.includes( postType );\n\tconst hasBackButton = !! onNavigateToPreviousEntityRecord;\n\tconst entityTitle = isTemplate ? templateTitle : documentTitle;\n\tconst title = props.title || entityTitle;\n\tconst icon = props.icon || templateIcon;\n\n\tconst mounted = useRef( false );\n\tuseEffect( () => {\n\t\tmounted.current = true;\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'editor-document-bar', {\n\t\t\t\t'has-back-button': hasBackButton,\n\t\t\t\t'is-global': isGlobalEntity && ! isUnsyncedPattern,\n\t\t\t} ) }\n\t\t>\n\t\t\t<AnimatePresence>\n\t\t\t\t{ hasBackButton && (\n\t\t\t\t\t<MotionButton\n\t\t\t\t\t\tclassName=\"editor-document-bar__back\"\n\t\t\t\t\t\ticon={ isRTL() ? chevronRightSmall : chevronLeftSmall }\n\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\tonNavigateToPreviousEntityRecord();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\tmounted.current\n\t\t\t\t\t\t\t\t? { opacity: 0, transform: 'translateX(15%)' }\n\t\t\t\t\t\t\t\t: false // Don't show entry animation when DocumentBar mounts.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate={ { opacity: 1, transform: 'translateX(0%)' } }\n\t\t\t\t\t\texit={ { opacity: 0, transform: 'translateX(15%)' } }\n\t\t\t\t\t\ttransition={\n\t\t\t\t\t\t\tisReducedMotion ? { duration: 0 } : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</MotionButton>\n\t\t\t\t) }\n\t\t\t</AnimatePresence>\n\t\t\t{ isNotFound ? (\n\t\t\t\t<Text>{ __( 'Document not found' ) }</Text>\n\t\t\t) : (\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"editor-document-bar__command\"\n\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"editor-document-bar__title\"\n\t\t\t\t\t\t// Force entry animation when the back button is added or removed.\n\t\t\t\t\t\tkey={ hasBackButton }\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\tmounted.current\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\t\t\ttransform: hasBackButton\n\t\t\t\t\t\t\t\t\t\t\t? 'translateX(15%)'\n\t\t\t\t\t\t\t\t\t\t\t: 'translateX(-15%)',\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: false // Don't show entry animation when DocumentBar mounts.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t\ttransform: 'translateX(0%)',\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={\n\t\t\t\t\t\t\tisReducedMotion ? { duration: 0 } : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockIcon icon={ icon } />\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tsize=\"body\"\n\t\t\t\t\t\t\tas=\"h1\"\n\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\t! props.title && TYPE_LABELS[ postType ]\n\t\t\t\t\t\t\t\t\t? // eslint-disable-next-line @wordpress/valid-sprintf\n\t\t\t\t\t\t\t\t\t sprintf( TYPE_LABELS[ postType ], title )\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title\n\t\t\t\t\t\t\t\t? decodeEntities( title )\n\t\t\t\t\t\t\t\t: __( 'No Title' ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</motion.div>\n\t\t\t\t\t<span className=\"editor-document-bar__shortcut\">\n\t\t\t\t\t\t{ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t</span>\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAMA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AACA,IAAAW,aAAA,GAAAX,OAAA;AAKA,IAAAY,UAAA,GAAAZ,OAAA;AACA,IAAAa,MAAA,GAAAb,OAAA;AACA,IAAAc,WAAA,GAAAd,OAAA;AAA2C,IAAAe,WAAA,GAAAf,OAAA;AA9B3C;AACA;AACA;;AAGA;AACA;AACA;;AAkBA;AACA;AACA;;AAKA,MAAMgB,WAAW,GAAG;EACnB;EACAC,UAAU,EAAE,IAAAC,QAAE,EAAE,qBAAsB,CAAC;EACvC;EACAC,aAAa,EAAE,IAAAD,QAAE,EAAE,6BAA8B,CAAC;EAClD;EACAE,WAAW,EAAE,IAAAF,QAAE,EAAE,sBAAuB,CAAC;EACzC;EACAG,gBAAgB,EAAE,IAAAH,QAAE,EAAE,2BAA4B;AACnD,CAAC;AAED,MAAMI,YAAY,GAAG,IAAAC,4BAAM,EAAEC,kBAAO,CAAC;;AAErC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASC,WAAWA,CAAEC,KAAK,EAAG;EAC5C,MAAM;IACLC,QAAQ;IACRC,aAAa;IACbC,UAAU;IACVC,iBAAiB;IACjBC,YAAY;IACZC,aAAa;IACbC;EACD,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC5B,MAAM;MACLC,kBAAkB;MAClBC,gBAAgB;MAChBC,iBAAiB;MACjBC,6BAA6B,EAAEC;IAChC,CAAC,GAAGL,MAAM,CAAEM,YAAY,CAAC;IACzB,MAAM;MAAEC,qBAAqB;MAAEC,WAAW,EAAEC;IAAoB,CAAC,GAChET,MAAM,CAAEU,eAAU,CAAC;IACpB,MAAMC,SAAS,GAAGV,kBAAkB,CAAC,CAAC;IACtC,MAAMW,OAAO,GAAGV,gBAAgB,CAAC,CAAC;IAClC,MAAMW,SAAS,GAAGN,qBAAqB,CACtC,UAAU,EACVI,SAAS,EACTC,OACD,CAAC;IACD,MAAME,aAAa,GAAGT,eAAe,CAAEQ,SAAU,CAAC;IAClD,OAAO;MACNrB,QAAQ,EAAEmB,SAAS;MACnBlB,aAAa,EAAEoB,SAAS,CAACE,KAAK;MAC9BrB,UAAU,EACT,CAAEmB,SAAS,IACX,CAAEJ,mBAAmB,CACpB,uBAAuB,EACvB,UAAU,EACVE,SAAS,EACTC,OACD,CAAC;MACFjB,iBAAiB,EAAEkB,SAAS,EAAEG,sBAAsB,KAAK,UAAU;MACnEpB,YAAY,EAAE,IAAAqB,kBAAM,EAAEjB,MAAM,CAAEM,YAAY,CAAE,CAAC,CAACY,WAAW,CACxDP,SAAS,EACT;QACCQ,IAAI,EAAEN,SAAS,EAAEM;MAClB,CACD,CAAC;MACDtB,aAAa,EAAEiB,aAAa,CAACC,KAAK;MAClCjB,gCAAgC,EAC/BK,iBAAiB,CAAC,CAAC,CAACL;IACtB,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAM;IAAEsB,IAAI,EAAEC;EAAkB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,eAAc,CAAC;EAChE,MAAMC,eAAe,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAE1C,MAAMC,UAAU,GAAGC,8BAAmB,CAACC,QAAQ,CAAEpC,QAAS,CAAC;EAC3D,MAAMqC,cAAc,GAAGC,4BAAiB,CAACF,QAAQ,CAAEpC,QAAS,CAAC;EAC7D,MAAMuC,aAAa,GAAG,CAAC,CAAEjC,gCAAgC;EACzD,MAAMkC,WAAW,GAAGN,UAAU,GAAG7B,aAAa,GAAGJ,aAAa;EAC9D,MAAMsB,KAAK,GAAGxB,KAAK,CAACwB,KAAK,IAAIiB,WAAW;EACxC,MAAMC,IAAI,GAAG1C,KAAK,CAAC0C,IAAI,IAAIrC,YAAY;EAEvC,MAAMsC,OAAO,GAAG,IAAAC,eAAM,EAAE,KAAM,CAAC;EAC/B,IAAAC,kBAAS,EAAE,MAAM;IAChBF,OAAO,CAACG,OAAO,GAAG,IAAI;EACvB,CAAC,EAAE,EAAG,CAAC;EAEP,oBACC,IAAAzD,WAAA,CAAA0D,IAAA;IACCC,SAAS,EAAG,IAAAC,aAAI,EAAE,qBAAqB,EAAE;MACxC,iBAAiB,EAAET,aAAa;MAChC,WAAW,EAAEF,cAAc,IAAI,CAAElC;IAClC,CAAE,CAAG;IAAA8C,QAAA,gBAEL,IAAA7D,WAAA,CAAA8D,GAAA,EAAC1E,WAAA,CAAA2E,yBAAe;MAAAF,QAAA,EACbV,aAAa,iBACd,IAAAnD,WAAA,CAAA8D,GAAA,EAACvD,YAAY;QACZoD,SAAS,EAAC,2BAA2B;QACrCN,IAAI,EAAG,IAAAW,WAAK,EAAC,CAAC,GAAGC,wBAAiB,GAAGC,uBAAkB;QACvDC,OAAO,EAAKC,KAAK,IAAM;UACtBA,KAAK,CAACC,eAAe,CAAC,CAAC;UACvBnD,gCAAgC,CAAC,CAAC;QACnC,CAAG;QACHoD,IAAI,EAAC,SAAS;QACdC,OAAO,EACNjB,OAAO,CAACG,OAAO,GACZ;UAAEe,OAAO,EAAE,CAAC;UAAEC,SAAS,EAAE;QAAkB,CAAC,GAC5C,KAAK,CAAC;QACT;QACDC,OAAO,EAAG;UAAEF,OAAO,EAAE,CAAC;UAAEC,SAAS,EAAE;QAAiB,CAAG;QACvDE,IAAI,EAAG;UAAEH,OAAO,EAAE,CAAC;UAAEC,SAAS,EAAE;QAAkB,CAAG;QACrDG,UAAU,EACThC,eAAe,GAAG;UAAEiC,QAAQ,EAAE;QAAE,CAAC,GAAGC,SACpC;QAAAjB,QAAA,EAEC,IAAA1D,QAAE,EAAE,MAAO;MAAC,CACD;IACd,CACe,CAAC,EAChBW,UAAU,gBACX,IAAAd,WAAA,CAAA8D,GAAA,EAAC1E,WAAA,CAAA2F,kBAAI;MAAAlB,QAAA,EAAG,IAAA1D,QAAE,EAAE,oBAAqB;IAAC,CAAQ,CAAC,gBAE3C,IAAAH,WAAA,CAAA0D,IAAA,EAACtE,WAAA,CAAAqB,MAAM;MACNkD,SAAS,EAAC,8BAA8B;MACxCQ,OAAO,EAAGA,CAAA,KAAM1B,iBAAiB,CAAC,CAAG;MACrC6B,IAAI,EAAC,SAAS;MAAAT,QAAA,gBAEd,IAAA7D,WAAA,CAAA0D,IAAA,EAACtE,WAAA,CAAA4F,gBAAM,CAACC,GAAG;QACVtB,SAAS,EAAC;QACV;QAAA;;QAEAY,OAAO,EACNjB,OAAO,CAACG,OAAO,GACZ;UACAe,OAAO,EAAE,CAAC;UACVC,SAAS,EAAEtB,aAAa,GACrB,iBAAiB,GACjB;QACH,CAAC,GACD,KAAK,CAAC;QACT;QACDuB,OAAO,EAAG;UACTF,OAAO,EAAE,CAAC;UACVC,SAAS,EAAE;QACZ,CAAG;QACHG,UAAU,EACThC,eAAe,GAAG;UAAEiC,QAAQ,EAAE;QAAE,CAAC,GAAGC,SACpC;QAAAjB,QAAA,gBAED,IAAA7D,WAAA,CAAA8D,GAAA,EAACzE,YAAA,CAAA6F,SAAS;UAAC7B,IAAI,EAAGA;QAAM,CAAE,CAAC,eAC3B,IAAArD,WAAA,CAAA8D,GAAA,EAAC1E,WAAA,CAAA2F,kBAAI;UACJT,IAAI,EAAC,MAAM;UACXa,EAAE,EAAC,IAAI;UACP,cACC,CAAExE,KAAK,CAACwB,KAAK,IAAIlC,WAAW,CAAEW,QAAQ,CAAE;UACrC;UACA,IAAAwE,aAAO,EAAEnF,WAAW,CAAEW,QAAQ,CAAE,EAAEuB,KAAM,CAAC,GACzC2C,SACH;UAAAjB,QAAA,EAEC1B,KAAK,GACJ,IAAAkD,4BAAc,EAAElD,KAAM,CAAC,GACvB,IAAAhC,QAAE,EAAE,UAAW;QAAC,CACd,CAAC;MAAA,GAjCDgD,aAkCK,CAAC,eACb,IAAAnD,WAAA,CAAA8D,GAAA;QAAMH,SAAS,EAAC,+BAA+B;QAAAE,QAAA,EAC5CyB,yBAAe,CAACC,OAAO,CAAE,GAAI;MAAC,CAC3B,CAAC;IAAA,CACA,CACR;EAAA,CACG,CAAC;AAER","ignoreList":[]}