@wordpress/block-library 9.14.0 → 9.15.1

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 (344) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/LICENSE.md +1 -1
  3. package/build/archives/edit.js +83 -36
  4. package/build/archives/edit.js.map +1 -1
  5. package/build/button/deprecated.js +182 -1
  6. package/build/button/deprecated.js.map +1 -1
  7. package/build/button/edit.js +47 -25
  8. package/build/button/edit.js.map +1 -1
  9. package/build/button/index.js +8 -2
  10. package/build/button/index.js.map +1 -1
  11. package/build/button/save.js +8 -5
  12. package/build/button/save.js.map +1 -1
  13. package/build/column/edit.js +33 -13
  14. package/build/column/edit.js.map +1 -1
  15. package/build/columns/edit.js +50 -27
  16. package/build/columns/edit.js.map +1 -1
  17. package/build/comments/index.js +1 -0
  18. package/build/comments/index.js.map +1 -1
  19. package/build/cover/edit/index.js +9 -3
  20. package/build/cover/edit/index.js.map +1 -1
  21. package/build/cover/edit.native.js +1 -1
  22. package/build/cover/edit.native.js.map +1 -1
  23. package/build/details/edit.js +29 -7
  24. package/build/details/edit.js.map +1 -1
  25. package/build/image/transforms.js +1 -0
  26. package/build/image/transforms.js.map +1 -1
  27. package/build/latest-posts/deprecated.js +12 -0
  28. package/build/latest-posts/deprecated.js.map +1 -1
  29. package/build/latest-posts/index.js +12 -0
  30. package/build/latest-posts/index.js.map +1 -1
  31. package/build/loginout/edit.js +42 -13
  32. package/build/loginout/edit.js.map +1 -1
  33. package/build/media-text/edit.js +59 -31
  34. package/build/media-text/edit.js.map +1 -1
  35. package/build/more/edit.js +28 -7
  36. package/build/more/edit.js.map +1 -1
  37. package/build/navigation/edit/navigation-menu-selector.js +5 -3
  38. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  39. package/build/navigation-link/edit.js +95 -55
  40. package/build/navigation-link/edit.js.map +1 -1
  41. package/build/navigation-submenu/edit.js +105 -53
  42. package/build/navigation-submenu/edit.js.map +1 -1
  43. package/build/page-list/edit.js +44 -25
  44. package/build/page-list/edit.js.map +1 -1
  45. package/build/paragraph/edit.js +14 -4
  46. package/build/paragraph/edit.js.map +1 -1
  47. package/build/post-author/edit.js +15 -3
  48. package/build/post-author/edit.js.map +1 -1
  49. package/build/post-author/index.js +4 -2
  50. package/build/post-author/index.js.map +1 -1
  51. package/build/post-author-name/edit.js +11 -5
  52. package/build/post-author-name/edit.js.map +1 -1
  53. package/build/post-author-name/index.js +4 -2
  54. package/build/post-author-name/index.js.map +1 -1
  55. package/build/post-comments-form/index.js +6 -1
  56. package/build/post-comments-form/index.js.map +1 -1
  57. package/build/post-comments-link/index.js +8 -1
  58. package/build/post-comments-link/index.js.map +1 -1
  59. package/build/post-date/edit.js +58 -18
  60. package/build/post-date/edit.js.map +1 -1
  61. package/build/post-date/index.js +2 -1
  62. package/build/post-date/index.js.map +1 -1
  63. package/build/post-excerpt/edit.js +42 -18
  64. package/build/post-excerpt/edit.js.map +1 -1
  65. package/build/post-featured-image/dimension-controls.js +17 -19
  66. package/build/post-featured-image/dimension-controls.js.map +1 -1
  67. package/build/post-featured-image/edit.js +45 -11
  68. package/build/post-featured-image/edit.js.map +1 -1
  69. package/build/post-featured-image/index.js +6 -3
  70. package/build/post-featured-image/index.js.map +1 -1
  71. package/build/post-navigation-link/index.js +11 -7
  72. package/build/post-navigation-link/index.js.map +1 -1
  73. package/build/post-navigation-link/variations.js +2 -2
  74. package/build/post-navigation-link/variations.js.map +1 -1
  75. package/build/post-template/index.js +11 -1
  76. package/build/post-template/index.js.map +1 -1
  77. package/build/post-title/index.js +6 -3
  78. package/build/post-title/index.js.map +1 -1
  79. package/build/query-no-results/index.js +10 -9
  80. package/build/query-no-results/index.js.map +1 -1
  81. package/build/query-pagination/edit.js +47 -17
  82. package/build/query-pagination/edit.js.map +1 -1
  83. package/build/query-pagination/query-pagination-label-control.js +1 -1
  84. package/build/query-pagination/query-pagination-label-control.js.map +1 -1
  85. package/build/query-pagination-numbers/edit.js +33 -15
  86. package/build/query-pagination-numbers/edit.js.map +1 -1
  87. package/build/query-total/edit.js +8 -10
  88. package/build/query-total/edit.js.map +1 -1
  89. package/build/query-total/index.js +8 -1
  90. package/build/query-total/index.js.map +1 -1
  91. package/build/read-more/index.js +7 -1
  92. package/build/read-more/index.js.map +1 -1
  93. package/build/site-logo/index.js +4 -2
  94. package/build/site-logo/index.js.map +1 -1
  95. package/build/site-title/edit.js +41 -12
  96. package/build/site-title/edit.js.map +1 -1
  97. package/build/site-title/index.js +4 -2
  98. package/build/site-title/index.js.map +1 -1
  99. package/build/social-link/edit.js +19 -3
  100. package/build/social-link/edit.js.map +1 -1
  101. package/build/social-links/edit.js +41 -12
  102. package/build/social-links/edit.js.map +1 -1
  103. package/build/spacer/controls.js +34 -12
  104. package/build/spacer/controls.js.map +1 -1
  105. package/build/table/edit.js +48 -15
  106. package/build/table/edit.js.map +1 -1
  107. package/build/table/index.js +4 -1
  108. package/build/table/index.js.map +1 -1
  109. package/build/table-of-contents/edit.js +1 -1
  110. package/build/table-of-contents/edit.js.map +1 -1
  111. package/build/table-of-contents/index.js +24 -23
  112. package/build/table-of-contents/index.js.map +1 -1
  113. package/build/tag-cloud/edit.js +56 -11
  114. package/build/tag-cloud/edit.js.map +1 -1
  115. package/build/video/edit-common-settings.js +90 -30
  116. package/build/video/edit-common-settings.js.map +1 -1
  117. package/build/video/edit.js +20 -49
  118. package/build/video/edit.js.map +1 -1
  119. package/build/video/poster-image.js +81 -0
  120. package/build/video/poster-image.js.map +1 -0
  121. package/build/video/tracks-editor.js +1 -1
  122. package/build/video/tracks-editor.js.map +1 -1
  123. package/build-module/archives/edit.js +84 -37
  124. package/build-module/archives/edit.js.map +1 -1
  125. package/build-module/button/deprecated.js +183 -2
  126. package/build-module/button/deprecated.js.map +1 -1
  127. package/build-module/button/edit.js +50 -28
  128. package/build-module/button/edit.js.map +1 -1
  129. package/build-module/button/index.js +8 -2
  130. package/build-module/button/index.js.map +1 -1
  131. package/build-module/button/save.js +9 -6
  132. package/build-module/button/save.js.map +1 -1
  133. package/build-module/column/edit.js +34 -14
  134. package/build-module/column/edit.js.map +1 -1
  135. package/build-module/columns/edit.js +52 -29
  136. package/build-module/columns/edit.js.map +1 -1
  137. package/build-module/comments/index.js +1 -0
  138. package/build-module/comments/index.js.map +1 -1
  139. package/build-module/cover/edit/index.js +9 -3
  140. package/build-module/cover/edit/index.js.map +1 -1
  141. package/build-module/cover/edit.native.js +2 -2
  142. package/build-module/cover/edit.native.js.map +1 -1
  143. package/build-module/details/edit.js +30 -8
  144. package/build-module/details/edit.js.map +1 -1
  145. package/build-module/image/transforms.js +1 -0
  146. package/build-module/image/transforms.js.map +1 -1
  147. package/build-module/latest-posts/deprecated.js +12 -0
  148. package/build-module/latest-posts/deprecated.js.map +1 -1
  149. package/build-module/latest-posts/index.js +12 -0
  150. package/build-module/latest-posts/index.js.map +1 -1
  151. package/build-module/loginout/edit.js +42 -14
  152. package/build-module/loginout/edit.js.map +1 -1
  153. package/build-module/media-text/edit.js +59 -31
  154. package/build-module/media-text/edit.js.map +1 -1
  155. package/build-module/more/edit.js +28 -8
  156. package/build-module/more/edit.js.map +1 -1
  157. package/build-module/navigation/edit/navigation-menu-selector.js +5 -3
  158. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  159. package/build-module/navigation-link/edit.js +96 -56
  160. package/build-module/navigation-link/edit.js.map +1 -1
  161. package/build-module/navigation-submenu/edit.js +106 -54
  162. package/build-module/navigation-submenu/edit.js.map +1 -1
  163. package/build-module/page-list/edit.js +45 -26
  164. package/build-module/page-list/edit.js.map +1 -1
  165. package/build-module/paragraph/edit.js +15 -6
  166. package/build-module/paragraph/edit.js.map +1 -1
  167. package/build-module/post-author/edit.js +16 -4
  168. package/build-module/post-author/edit.js.map +1 -1
  169. package/build-module/post-author/index.js +4 -2
  170. package/build-module/post-author/index.js.map +1 -1
  171. package/build-module/post-author-name/edit.js +12 -6
  172. package/build-module/post-author-name/edit.js.map +1 -1
  173. package/build-module/post-author-name/index.js +4 -2
  174. package/build-module/post-author-name/index.js.map +1 -1
  175. package/build-module/post-comments-form/index.js +6 -1
  176. package/build-module/post-comments-form/index.js.map +1 -1
  177. package/build-module/post-comments-link/index.js +8 -1
  178. package/build-module/post-comments-link/index.js.map +1 -1
  179. package/build-module/post-date/edit.js +59 -19
  180. package/build-module/post-date/edit.js.map +1 -1
  181. package/build-module/post-date/index.js +2 -1
  182. package/build-module/post-date/index.js.map +1 -1
  183. package/build-module/post-excerpt/edit.js +44 -20
  184. package/build-module/post-excerpt/edit.js.map +1 -1
  185. package/build-module/post-featured-image/dimension-controls.js +18 -20
  186. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  187. package/build-module/post-featured-image/edit.js +47 -13
  188. package/build-module/post-featured-image/edit.js.map +1 -1
  189. package/build-module/post-featured-image/index.js +6 -3
  190. package/build-module/post-featured-image/index.js.map +1 -1
  191. package/build-module/post-navigation-link/index.js +12 -7
  192. package/build-module/post-navigation-link/index.js.map +1 -1
  193. package/build-module/post-navigation-link/variations.js +2 -2
  194. package/build-module/post-navigation-link/variations.js.map +1 -1
  195. package/build-module/post-template/index.js +11 -1
  196. package/build-module/post-template/index.js.map +1 -1
  197. package/build-module/post-title/index.js +6 -3
  198. package/build-module/post-title/index.js.map +1 -1
  199. package/build-module/query-no-results/index.js +10 -9
  200. package/build-module/query-no-results/index.js.map +1 -1
  201. package/build-module/query-pagination/edit.js +49 -19
  202. package/build-module/query-pagination/edit.js.map +1 -1
  203. package/build-module/query-pagination/query-pagination-label-control.js +1 -1
  204. package/build-module/query-pagination/query-pagination-label-control.js.map +1 -1
  205. package/build-module/query-pagination-numbers/edit.js +34 -16
  206. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  207. package/build-module/query-total/edit.js +8 -10
  208. package/build-module/query-total/edit.js.map +1 -1
  209. package/build-module/query-total/index.js +8 -1
  210. package/build-module/query-total/index.js.map +1 -1
  211. package/build-module/read-more/index.js +7 -1
  212. package/build-module/read-more/index.js.map +1 -1
  213. package/build-module/site-logo/index.js +4 -2
  214. package/build-module/site-logo/index.js.map +1 -1
  215. package/build-module/site-title/edit.js +42 -13
  216. package/build-module/site-title/edit.js.map +1 -1
  217. package/build-module/site-title/index.js +4 -2
  218. package/build-module/site-title/index.js.map +1 -1
  219. package/build-module/social-link/edit.js +20 -4
  220. package/build-module/social-link/edit.js.map +1 -1
  221. package/build-module/social-links/edit.js +42 -13
  222. package/build-module/social-links/edit.js.map +1 -1
  223. package/build-module/spacer/controls.js +35 -13
  224. package/build-module/spacer/controls.js.map +1 -1
  225. package/build-module/table/edit.js +49 -16
  226. package/build-module/table/edit.js.map +1 -1
  227. package/build-module/table/index.js +4 -1
  228. package/build-module/table/index.js.map +1 -1
  229. package/build-module/table-of-contents/edit.js +1 -1
  230. package/build-module/table-of-contents/edit.js.map +1 -1
  231. package/build-module/table-of-contents/index.js +26 -25
  232. package/build-module/table-of-contents/index.js.map +1 -1
  233. package/build-module/tag-cloud/edit.js +57 -12
  234. package/build-module/tag-cloud/edit.js.map +1 -1
  235. package/build-module/video/edit-common-settings.js +91 -31
  236. package/build-module/video/edit-common-settings.js.map +1 -1
  237. package/build-module/video/edit.js +24 -53
  238. package/build-module/video/edit.js.map +1 -1
  239. package/build-module/video/poster-image.js +74 -0
  240. package/build-module/video/poster-image.js.map +1 -0
  241. package/build-module/video/tracks-editor.js +1 -1
  242. package/build-module/video/tracks-editor.js.map +1 -1
  243. package/build-style/comment-template/style-rtl.css +0 -1
  244. package/build-style/comment-template/style.css +0 -1
  245. package/build-style/editor-rtl.css +4 -19
  246. package/build-style/editor.css +4 -19
  247. package/build-style/form-input/style-rtl.css +0 -2
  248. package/build-style/form-input/style.css +0 -2
  249. package/build-style/freeform/editor-rtl.css +4 -8
  250. package/build-style/freeform/editor.css +4 -8
  251. package/build-style/{post-template/editor.css → post-comments-link/style-rtl.css} +2 -4
  252. package/build-style/{post-template/editor-rtl.css → post-comments-link/style.css} +2 -4
  253. package/build-style/post-template/style-rtl.css +1 -0
  254. package/build-style/post-template/style.css +1 -0
  255. package/build-style/query-total/style-rtl.css +103 -0
  256. package/build-style/query-total/style.css +103 -0
  257. package/build-style/read-more/style-rtl.css +0 -1
  258. package/build-style/read-more/style.css +0 -1
  259. package/build-style/style-rtl.css +9 -4
  260. package/build-style/style.css +9 -4
  261. package/build-style/tag-cloud/editor-rtl.css +0 -5
  262. package/build-style/tag-cloud/editor.css +0 -5
  263. package/package.json +35 -35
  264. package/src/archives/edit.js +94 -36
  265. package/src/audio/test/__snapshots__/edit.native.js.snap +1 -1
  266. package/src/block/index.php +20 -0
  267. package/src/button/block.json +17 -2
  268. package/src/button/deprecated.js +189 -0
  269. package/src/button/edit.js +60 -31
  270. package/src/button/save.js +6 -1
  271. package/src/column/edit.js +34 -13
  272. package/src/columns/edit.js +71 -40
  273. package/src/comments/index.js +1 -0
  274. package/src/cover/edit/index.js +12 -5
  275. package/src/cover/edit.native.js +5 -2
  276. package/src/cover/test/edit.js +5 -7
  277. package/src/details/edit.js +40 -11
  278. package/src/editor.scss +0 -1
  279. package/src/file/test/__snapshots__/edit.native.js.snap +1 -1
  280. package/src/image/transforms.js +1 -0
  281. package/src/latest-posts/block.json +12 -0
  282. package/src/loginout/edit.js +56 -20
  283. package/src/media-text/edit.js +57 -28
  284. package/src/more/edit.js +39 -12
  285. package/src/navigation/edit/navigation-menu-selector.js +9 -2
  286. package/src/navigation/index.php +2 -2
  287. package/src/navigation-link/edit.js +101 -61
  288. package/src/navigation-link/index.php +16 -1
  289. package/src/navigation-submenu/edit.js +113 -57
  290. package/src/page-list/edit.js +52 -31
  291. package/src/paragraph/edit.js +18 -4
  292. package/src/post-author/block.json +4 -2
  293. package/src/post-author/edit.js +17 -3
  294. package/src/post-author/index.php +4 -0
  295. package/src/post-author-name/block.json +4 -2
  296. package/src/post-author-name/edit.js +17 -4
  297. package/src/post-author-name/index.php +4 -0
  298. package/src/post-comments-form/block.json +6 -1
  299. package/src/post-comments-link/block.json +8 -1
  300. package/src/post-comments-link/style.scss +4 -0
  301. package/src/post-content/index.php +23 -0
  302. package/src/post-date/block.json +2 -1
  303. package/src/post-date/edit.js +79 -25
  304. package/src/post-excerpt/edit.js +59 -22
  305. package/src/post-featured-image/block.json +6 -3
  306. package/src/post-featured-image/dimension-controls.js +18 -21
  307. package/src/post-featured-image/edit.js +67 -10
  308. package/src/post-navigation-link/block.json +0 -6
  309. package/src/post-navigation-link/index.js +11 -0
  310. package/src/post-navigation-link/variations.js +2 -2
  311. package/src/post-template/block.json +11 -1
  312. package/src/post-template/style.scss +2 -0
  313. package/src/post-title/block.json +6 -3
  314. package/src/query-no-results/block.json +0 -10
  315. package/src/query-no-results/index.js +11 -0
  316. package/src/query-pagination/edit.js +57 -15
  317. package/src/query-pagination/query-pagination-label-control.js +1 -3
  318. package/src/query-pagination-numbers/edit.js +41 -19
  319. package/src/query-pagination-previous/index.php +21 -14
  320. package/src/query-total/block.json +8 -1
  321. package/src/query-total/edit.js +11 -13
  322. package/src/query-total/index.php +9 -13
  323. package/src/query-total/style.scss +4 -0
  324. package/src/read-more/index.js +6 -0
  325. package/src/site-logo/block.json +4 -2
  326. package/src/site-title/block.json +4 -2
  327. package/src/site-title/edit.js +52 -15
  328. package/src/social-link/edit.js +21 -6
  329. package/src/social-links/edit.js +52 -15
  330. package/src/spacer/controls.js +42 -15
  331. package/src/style.scss +2 -0
  332. package/src/table/block.json +4 -1
  333. package/src/table/edit.js +58 -20
  334. package/src/table-of-contents/block.json +0 -52
  335. package/src/table-of-contents/edit.js +1 -1
  336. package/src/table-of-contents/index.js +53 -0
  337. package/src/tag-cloud/edit.js +60 -8
  338. package/src/tag-cloud/editor.scss +0 -8
  339. package/src/video/edit-common-settings.js +97 -39
  340. package/src/video/edit.js +29 -75
  341. package/src/video/poster-image.js +86 -0
  342. package/src/video/tracks-editor.js +1 -1
  343. package/tsconfig.json +0 -2
  344. package/src/post-template/editor.scss +0 -7
@@ -15,6 +15,7 @@ var _compose = require("@wordpress/compose");
15
15
  var _data = require("@wordpress/data");
16
16
  var _icons = require("@wordpress/icons");
17
17
  var _notices = require("@wordpress/notices");
18
+ var _posterImage = _interopRequireDefault(require("./poster-image"));
18
19
  var _util = require("../embed/util");
19
20
  var _hooks = require("../utils/hooks");
20
21
  var _editCommonSettings = _interopRequireDefault(require("./edit-common-settings"));
@@ -35,7 +36,6 @@ var _jsxRuntime = require("react/jsx-runtime");
35
36
  */
36
37
 
37
38
  const ALLOWED_MEDIA_TYPES = ['video'];
38
- const VIDEO_POSTER_ALLOWED_MEDIA_TYPES = ['image'];
39
39
  function VideoEdit({
40
40
  isSelected: isSingleSelected,
41
41
  attributes,
@@ -46,7 +46,6 @@ function VideoEdit({
46
46
  }) {
47
47
  const instanceId = (0, _compose.useInstanceId)(VideoEdit);
48
48
  const videoPlayer = (0, _element.useRef)();
49
- const posterImageButton = (0, _element.useRef)();
50
49
  const {
51
50
  id,
52
51
  controls,
@@ -55,6 +54,7 @@ function VideoEdit({
55
54
  tracks
56
55
  } = attributes;
57
56
  const [temporaryURL, setTemporaryURL] = (0, _element.useState)(attributes.blob);
57
+ const dropdownMenuProps = (0, _hooks.useToolsPanelDropdownMenuProps)();
58
58
  (0, _hooks.useUploadMediaFromBlobURL)({
59
59
  url: temporaryURL,
60
60
  allowedTypes: ALLOWED_MEDIA_TYPES,
@@ -162,20 +162,6 @@ function VideoEdit({
162
162
  })
163
163
  });
164
164
  }
165
- function onSelectPoster(image) {
166
- setAttributes({
167
- poster: image.url
168
- });
169
- }
170
- function onRemovePoster() {
171
- setAttributes({
172
- poster: undefined
173
- });
174
-
175
- // Move focus back to the Media Upload button.
176
- posterImageButton.current.focus();
177
- }
178
- const videoPosterDescription = `video-block__poster-image-description-${instanceId}`;
179
165
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
180
166
  children: [isSingleSelected && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
181
167
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.BlockControls, {
@@ -201,42 +187,27 @@ function VideoEdit({
201
187
  })
202
188
  })]
203
189
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.InspectorControls, {
204
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.PanelBody, {
205
- title: (0, _i18n.__)('Settings'),
190
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalToolsPanel, {
191
+ label: (0, _i18n.__)('Settings'),
192
+ resetAll: () => {
193
+ setAttributes({
194
+ autoplay: false,
195
+ controls: true,
196
+ loop: false,
197
+ muted: false,
198
+ playsInline: false,
199
+ preload: 'metadata',
200
+ poster: ''
201
+ });
202
+ },
203
+ dropdownMenuProps: dropdownMenuProps,
206
204
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_editCommonSettings.default, {
207
205
  setAttributes: setAttributes,
208
206
  attributes: attributes
209
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.MediaUploadCheck, {
210
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
211
- className: "editor-video-poster-control",
212
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.BaseControl.VisualLabel, {
213
- children: (0, _i18n.__)('Poster image')
214
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.MediaUpload, {
215
- title: (0, _i18n.__)('Select poster image'),
216
- onSelect: onSelectPoster,
217
- allowedTypes: VIDEO_POSTER_ALLOWED_MEDIA_TYPES,
218
- render: ({
219
- open
220
- }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
221
- __next40pxDefaultSize: true,
222
- variant: "primary",
223
- onClick: open,
224
- ref: posterImageButton,
225
- "aria-describedby": videoPosterDescription,
226
- children: !poster ? (0, _i18n.__)('Select') : (0, _i18n.__)('Replace')
227
- })
228
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
229
- id: videoPosterDescription,
230
- hidden: true,
231
- children: poster ? (0, _i18n.sprintf)(/* translators: %s: poster image URL. */
232
- (0, _i18n.__)('The current poster image url is %s'), poster) : (0, _i18n.__)('There is no poster image currently selected')
233
- }), !!poster && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
234
- __next40pxDefaultSize: true,
235
- onClick: onRemovePoster,
236
- variant: "tertiary",
237
- children: (0, _i18n.__)('Remove')
238
- })]
239
- })
207
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_posterImage.default, {
208
+ poster: poster,
209
+ setAttributes: setAttributes,
210
+ instanceId: instanceId
240
211
  })]
241
212
  })
242
213
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("figure", {
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_components","_blockEditor","_element","_i18n","_compose","_data","_icons","_notices","_util","_hooks","_editCommonSettings","_tracksEditor","_tracks","_caption","_jsxRuntime","ALLOWED_MEDIA_TYPES","VIDEO_POSTER_ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","isSingleSelected","attributes","className","setAttributes","insertBlocksAfter","onReplace","instanceId","useInstanceId","videoPlayer","useRef","posterImageButton","id","controls","poster","src","tracks","temporaryURL","setTemporaryURL","useState","blob","useUploadMediaFromBlobURL","url","allowedTypes","onChange","onSelectVideo","onError","onUploadError","useEffect","current","load","media","undefined","caption","isBlobURL","image","icon","onSelectURL","newSrc","embedBlock","createUpgradedEmbedBlock","createErrorNotice","useDispatch","noticesStore","message","type","placeholder","content","jsx","Placeholder","withIllustration","label","__","instructions","children","classes","clsx","blockProps","useBlockProps","MediaPlaceholder","BlockIcon","onSelect","accept","value","onSelectPoster","onRemovePoster","focus","videoPosterDescription","jsxs","Fragment","BlockControls","default","newTracks","group","MediaReplaceFlow","mediaId","mediaURL","onReset","InspectorControls","PanelBody","title","MediaUploadCheck","BaseControl","VisualLabel","MediaUpload","render","open","Button","__next40pxDefaultSize","variant","onClick","ref","hidden","sprintf","Disabled","isDisabled","Spinner","Caption","showToolbarButton","_default","exports"],"sources":["@wordpress/block-library/src/video/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tBaseControl,\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tSpinner,\n\tPlaceholder,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { video as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\nimport { Caption } from '../utils/caption';\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\nconst VIDEO_POSTER_ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction VideoEdit( {\n\tisSelected: isSingleSelected,\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tonReplace,\n} ) {\n\tconst instanceId = useInstanceId( VideoEdit );\n\tconst videoPlayer = useRef();\n\tconst posterImageButton = useRef();\n\tconst { id, controls, poster, src, tracks } = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectVideo,\n\t\tonError: onUploadError,\n\t} );\n\n\tuseEffect( () => {\n\t\t// Placeholder may be rendered.\n\t\tif ( videoPlayer.current ) {\n\t\t\tvideoPlayer.current.load();\n\t\t}\n\t}, [ poster ] );\n\n\tfunction onSelectVideo( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error\n\t\t\t// previous attributes should be removed\n\t\t\t// because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media.\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tposter:\n\t\t\t\tmedia.image?.src !== media.icon ? media.image?.src : undefined,\n\t\t\tcaption: media.caption,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock && onReplace ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tblob: undefined,\n\t\t\t\tsrc: newSrc,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\t\twithIllustration={ ! isSingleSelected }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ __( 'Video' ) }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Drag and drop a video, upload, or choose from your library.'\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 classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tfunction onSelectPoster( image ) {\n\t\tsetAttributes( { poster: image.url } );\n\t}\n\n\tfunction onRemovePoster() {\n\t\tsetAttributes( { poster: undefined } );\n\n\t\t// Move focus back to the Media Upload button.\n\t\tposterImageButton.current.focus();\n\t}\n\n\tconst videoPosterDescription = `video-block__poster-image-description-${ instanceId }`;\n\n\treturn (\n\t\t<>\n\t\t\t{ isSingleSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<TracksEditor\n\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\t\tonReset={ () => onSelectVideo( undefined ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<VideoCommonSettings\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<div className=\"editor-video-poster-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Poster image' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\ttitle={ __( 'Select poster image' ) }\n\t\t\t\t\t\t\t\tonSelect={ onSelectPoster }\n\t\t\t\t\t\t\t\tallowedTypes={\n\t\t\t\t\t\t\t\t\tVIDEO_POSTER_ALLOWED_MEDIA_TYPES\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\tref={ posterImageButton }\n\t\t\t\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\t\t\t\tvideoPosterDescription\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\t\t{ ! poster\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Select' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Replace' ) }\n\t\t\t\t\t\t\t\t\t</Button>\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<p id={ videoPosterDescription } hidden>\n\t\t\t\t\t\t\t\t{ poster\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: poster image URL. */\n\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t'The current poster image url is %s'\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tposter\n\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\t\t\t'There is no poster image currently selected'\n\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t{ !! poster && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tonClick={ onRemovePoster }\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n Disable the video tag if the block is not selected\n so the user clicking on it won't play the\n video when the controls are enabled.\n */ }\n\t\t\t\t<Disabled isDisabled={ ! isSingleSelected }>\n\t\t\t\t\t<video\n\t\t\t\t\t\tcontrols={ controls }\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsrc={ src || temporaryURL }\n\t\t\t\t\t\tref={ videoPlayer }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Tracks tracks={ tracks } />\n\t\t\t\t\t</video>\n\t\t\t\t</Disabled>\n\t\t\t\t{ !! temporaryURL && <Spinner /> }\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Video caption text' ) }\n\t\t\t\t\tshowToolbarButton={ isSingleSelected }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default VideoEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_components","_blockEditor","_element","_i18n","_compose","_data","_icons","_notices","_posterImage","_util","_hooks","_editCommonSettings","_tracksEditor","_tracks","_caption","_jsxRuntime","ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","isSingleSelected","attributes","className","setAttributes","insertBlocksAfter","onReplace","instanceId","useInstanceId","videoPlayer","useRef","id","controls","poster","src","tracks","temporaryURL","setTemporaryURL","useState","blob","dropdownMenuProps","useToolsPanelDropdownMenuProps","useUploadMediaFromBlobURL","url","allowedTypes","onChange","onSelectVideo","onError","onUploadError","useEffect","current","load","media","undefined","caption","isBlobURL","image","icon","onSelectURL","newSrc","embedBlock","createUpgradedEmbedBlock","createErrorNotice","useDispatch","noticesStore","message","type","placeholder","content","jsx","Placeholder","withIllustration","label","__","instructions","children","classes","clsx","blockProps","useBlockProps","MediaPlaceholder","BlockIcon","onSelect","accept","value","jsxs","Fragment","BlockControls","default","newTracks","group","MediaReplaceFlow","mediaId","mediaURL","onReset","InspectorControls","__experimentalToolsPanel","resetAll","autoplay","loop","muted","playsInline","preload","Disabled","isDisabled","ref","Spinner","Caption","showToolbarButton","_default","exports"],"sources":["@wordpress/block-library/src/video/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tDisabled,\n\tSpinner,\n\tPlaceholder,\n\t__experimentalToolsPanel as ToolsPanel,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { video as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport PosterImage from './poster-image';\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport {\n\tuseUploadMediaFromBlobURL,\n\tuseToolsPanelDropdownMenuProps,\n} from '../utils/hooks';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\nimport { Caption } from '../utils/caption';\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\n\nfunction VideoEdit( {\n\tisSelected: isSingleSelected,\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tonReplace,\n} ) {\n\tconst instanceId = useInstanceId( VideoEdit );\n\tconst videoPlayer = useRef();\n\tconst { id, controls, poster, src, tracks } = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectVideo,\n\t\tonError: onUploadError,\n\t} );\n\n\tuseEffect( () => {\n\t\t// Placeholder may be rendered.\n\t\tif ( videoPlayer.current ) {\n\t\t\tvideoPlayer.current.load();\n\t\t}\n\t}, [ poster ] );\n\n\tfunction onSelectVideo( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error\n\t\t\t// previous attributes should be removed\n\t\t\t// because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media.\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tposter:\n\t\t\t\tmedia.image?.src !== media.icon ? media.image?.src : undefined,\n\t\t\tcaption: media.caption,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock && onReplace ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tblob: undefined,\n\t\t\t\tsrc: newSrc,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\t\twithIllustration={ ! isSingleSelected }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ __( 'Video' ) }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Drag and drop a video, upload, or choose from your library.'\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 classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\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{ isSingleSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<TracksEditor\n\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\t\tonReset={ () => onSelectVideo( undefined ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\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\tautoplay: false,\n\t\t\t\t\t\t\tcontrols: true,\n\t\t\t\t\t\t\tloop: false,\n\t\t\t\t\t\t\tmuted: false,\n\t\t\t\t\t\t\tplaysInline: false,\n\t\t\t\t\t\t\tpreload: 'metadata',\n\t\t\t\t\t\t\tposter: '',\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<VideoCommonSettings\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t\t<PosterImage\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n Disable the video tag if the block is not selected\n so the user clicking on it won't play the\n video when the controls are enabled.\n */ }\n\t\t\t\t<Disabled isDisabled={ ! isSingleSelected }>\n\t\t\t\t\t<video\n\t\t\t\t\t\tcontrols={ controls }\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsrc={ src || temporaryURL }\n\t\t\t\t\t\tref={ videoPlayer }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Tracks tracks={ tracks } />\n\t\t\t\t\t</video>\n\t\t\t\t</Disabled>\n\t\t\t\t{ !! temporaryURL && <Spinner /> }\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Video caption text' ) }\n\t\t\t\t\tshowToolbarButton={ isSingleSelected }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default VideoEdit;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _blockEditor = require("@wordpress/block-editor");
8
+ var _components = require("@wordpress/components");
9
+ var _i18n = require("@wordpress/i18n");
10
+ var _element = require("@wordpress/element");
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ /**
13
+ * WordPress dependencies
14
+ */
15
+
16
+ function PosterImage({
17
+ poster,
18
+ setAttributes,
19
+ instanceId
20
+ }) {
21
+ const posterImageButton = (0, _element.useRef)();
22
+ const VIDEO_POSTER_ALLOWED_MEDIA_TYPES = ['image'];
23
+ const videoPosterDescription = `video-block__poster-image-description-${instanceId}`;
24
+ function onSelectPoster(image) {
25
+ setAttributes({
26
+ poster: image.url
27
+ });
28
+ }
29
+ function onRemovePoster() {
30
+ setAttributes({
31
+ poster: undefined
32
+ });
33
+
34
+ // Move focus back to the Media Upload button.
35
+ posterImageButton.current.focus();
36
+ }
37
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanelItem, {
38
+ label: (0, _i18n.__)('Poster image'),
39
+ isShownByDefault: true,
40
+ hasValue: () => !!poster,
41
+ onDeselect: () => {
42
+ setAttributes({
43
+ poster: ''
44
+ });
45
+ },
46
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.MediaUploadCheck, {
47
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
48
+ className: "editor-video-poster-control",
49
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.BaseControl.VisualLabel, {
50
+ children: (0, _i18n.__)('Poster image')
51
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.MediaUpload, {
52
+ title: (0, _i18n.__)('Select poster image'),
53
+ onSelect: onSelectPoster,
54
+ allowedTypes: VIDEO_POSTER_ALLOWED_MEDIA_TYPES,
55
+ render: ({
56
+ open
57
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
58
+ __next40pxDefaultSize: true,
59
+ variant: "primary",
60
+ onClick: open,
61
+ ref: posterImageButton,
62
+ "aria-describedby": videoPosterDescription,
63
+ children: !poster ? (0, _i18n.__)('Select') : (0, _i18n.__)('Replace')
64
+ })
65
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
66
+ id: videoPosterDescription,
67
+ hidden: true,
68
+ children: poster ? (0, _i18n.sprintf)(/* translators: %s: poster image URL. */
69
+ (0, _i18n.__)('The current poster image url is %s'), poster) : (0, _i18n.__)('There is no poster image currently selected')
70
+ }), !!poster && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
71
+ __next40pxDefaultSize: true,
72
+ onClick: onRemovePoster,
73
+ variant: "tertiary",
74
+ children: (0, _i18n.__)('Remove')
75
+ })]
76
+ })
77
+ })
78
+ });
79
+ }
80
+ var _default = exports.default = PosterImage;
81
+ //# sourceMappingURL=poster-image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_blockEditor","require","_components","_i18n","_element","_jsxRuntime","PosterImage","poster","setAttributes","instanceId","posterImageButton","useRef","VIDEO_POSTER_ALLOWED_MEDIA_TYPES","videoPosterDescription","onSelectPoster","image","url","onRemovePoster","undefined","current","focus","jsx","__experimentalToolsPanelItem","label","__","isShownByDefault","hasValue","onDeselect","children","MediaUploadCheck","jsxs","className","BaseControl","VisualLabel","MediaUpload","title","onSelect","allowedTypes","render","open","Button","__next40pxDefaultSize","variant","onClick","ref","id","hidden","sprintf","_default","exports","default"],"sources":["@wordpress/block-library/src/video/poster-image.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { MediaUpload, MediaUploadCheck } from '@wordpress/block-editor';\nimport {\n\tButton,\n\tBaseControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useRef } from '@wordpress/element';\n\nfunction PosterImage( { poster, setAttributes, instanceId } ) {\n\tconst posterImageButton = useRef();\n\tconst VIDEO_POSTER_ALLOWED_MEDIA_TYPES = [ 'image' ];\n\n\tconst videoPosterDescription = `video-block__poster-image-description-${ instanceId }`;\n\n\tfunction onSelectPoster( image ) {\n\t\tsetAttributes( { poster: image.url } );\n\t}\n\n\tfunction onRemovePoster() {\n\t\tsetAttributes( { poster: undefined } );\n\n\t\t// Move focus back to the Media Upload button.\n\t\tposterImageButton.current.focus();\n\t}\n\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\tlabel={ __( 'Poster image' ) }\n\t\t\tisShownByDefault\n\t\t\thasValue={ () => !! poster }\n\t\t\tonDeselect={ () => {\n\t\t\t\tsetAttributes( { poster: '' } );\n\t\t\t} }\n\t\t>\n\t\t\t<MediaUploadCheck>\n\t\t\t\t<div className=\"editor-video-poster-control\">\n\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t{ __( 'Poster image' ) }\n\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\ttitle={ __( 'Select poster image' ) }\n\t\t\t\t\t\tonSelect={ onSelectPoster }\n\t\t\t\t\t\tallowedTypes={ VIDEO_POSTER_ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\tref={ posterImageButton }\n\t\t\t\t\t\t\t\taria-describedby={ videoPosterDescription }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! poster ? __( 'Select' ) : __( 'Replace' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<p id={ videoPosterDescription } hidden>\n\t\t\t\t\t\t{ poster\n\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %s: poster image URL. */\n\t\t\t\t\t\t\t\t\t__( 'The current poster image url is %s' ),\n\t\t\t\t\t\t\t\t\tposter\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'There is no poster image currently selected'\n\t\t\t\t\t\t\t ) }\n\t\t\t\t\t</p>\n\t\t\t\t\t{ !! poster && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tonClick={ onRemovePoster }\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</MediaUploadCheck>\n\t\t</ToolsPanelItem>\n\t);\n}\n\nexport default PosterImage;\n"],"mappings":"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","ignoreList":[]}
@@ -288,7 +288,7 @@ function TracksEditor({
288
288
  onClick: () => {
289
289
  openFileDialog();
290
290
  },
291
- children: (0, _i18n.__)('Upload')
291
+ children: (0, _i18n._x)('Upload', 'verb')
292
292
  });
293
293
  }
294
294
  })
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_blockEditor","_icons","_data","_element","_url","_jsxRuntime","ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","__","value","TrackList","tracks","onEditPress","content","map","track","index","jsxs","__experimentalHStack","className","children","jsx","Button","__next40pxDefaultSize","variant","onClick","sprintf","_x","MenuGroup","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","getFilename","__experimentalVStack","spacing","__experimentalGrid","columns","gap","TextControl","__nextHasNoMarginBottom","newLabel","help","newSrcLang","SelectControl","options","newKind","isDestructive","changes","hasChanges","undefined","TracksEditor","mediaUpload","useSelect","select","blockEditorStore","getSettings","trackBeingEdited","setTrackBeingEdited","useState","dropdownPopoverRef","useRef","useEffect","current","focus","Dropdown","contentClassName","focusOnMount","popoverProps","ref","renderToggle","isOpen","onToggle","handleOnToggle","ToolbarGroup","ToolbarButton","renderContent","newTrack","newTracks","filter","_track","Fragment","length","NavigableMenu","MediaUpload","onSelect","url","trackIndex","allowedTypes","render","open","MenuItem","icon","media","MediaUploadCheck","FormFileUpload","event","files","target","filesList","onFileChange","accept","openFileDialog","upload"],"sources":["@wordpress/block-library/src/video/tracks-editor.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tNavigableMenu,\n\tMenuItem,\n\tFormFileUpload,\n\tMenuGroup,\n\tToolbarGroup,\n\tToolbarButton,\n\tDropdown,\n\tButton,\n\tTextControl,\n\tSelectControl,\n\t__experimentalGrid as Grid,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport {\n\tMediaUpload,\n\tMediaUploadCheck,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { upload, media } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\nimport { useState, useRef, useEffect } from '@wordpress/element';\nimport { getFilename } from '@wordpress/url';\n\nconst ALLOWED_TYPES = [ 'text/vtt' ];\n\nconst DEFAULT_KIND = 'subtitles';\n\nconst KIND_OPTIONS = [\n\t{ label: __( 'Subtitles' ), value: 'subtitles' },\n\t{ label: __( 'Captions' ), value: 'captions' },\n\t{ label: __( 'Descriptions' ), value: 'descriptions' },\n\t{ label: __( 'Chapters' ), value: 'chapters' },\n\t{ label: __( 'Metadata' ), value: 'metadata' },\n];\n\nfunction TrackList( { tracks, onEditPress } ) {\n\tconst content = tracks.map( ( track, index ) => {\n\t\treturn (\n\t\t\t<HStack\n\t\t\t\tkey={ index }\n\t\t\t\tclassName=\"block-library-video-tracks-editor__track-list-track\"\n\t\t\t>\n\t\t\t\t<span>{ track.label }</span>\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tonClick={ () => onEditPress( index ) }\n\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t/* translators: %s: Label of the video text track e.g: \"French subtitles\". */\n\t\t\t\t\t\t_x( 'Edit %s', 'text tracks' ),\n\t\t\t\t\t\ttrack.label\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t</Button>\n\t\t\t</HStack>\n\t\t);\n\t} );\n\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\tclassName=\"block-library-video-tracks-editor__track-list\"\n\t\t>\n\t\t\t{ content }\n\t\t</MenuGroup>\n\t);\n}\n\nfunction SingleTrackEditor( { track, onChange, onClose, onRemove } ) {\n\tconst { src = '', label = '', srcLang = '', kind = DEFAULT_KIND } = track;\n\tconst fileName = src.startsWith( 'blob:' ) ? '' : getFilename( src ) || '';\n\treturn (\n\t\t<VStack\n\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor\"\n\t\t\tspacing=\"4\"\n\t\t>\n\t\t\t<span className=\"block-library-video-tracks-editor__single-track-editor-edit-track-label\">\n\t\t\t\t{ __( 'Edit track' ) }\n\t\t\t</span>\n\t\t\t<span>\n\t\t\t\t{ __( 'File' ) }: <b>{ fileName }</b>\n\t\t\t</span>\n\t\t\t<Grid columns={ 2 } gap={ 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\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tlabel: newLabel,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\thelp={ __( 'Title of track' ) }\n\t\t\t\t/>\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\tonChange={ ( newSrcLang ) =>\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tsrcLang: newSrcLang,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tlabel={ __( 'Source language' ) }\n\t\t\t\t\tvalue={ srcLang }\n\t\t\t\t\thelp={ __( 'Language tag (en, fr, etc.)' ) }\n\t\t\t\t/>\n\t\t\t</Grid>\n\t\t\t<VStack spacing=\"8\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\tvalue={ kind }\n\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\tonChange={ ( newKind ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tkind: newKind,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<HStack className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Remove track' ) }\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\tonClick={ () => {\n\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t...changes,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</VStack>\n\t);\n}\n\nexport default function TracksEditor( { tracks = [], onChange } ) {\n\tconst mediaUpload = useSelect( ( select ) => {\n\t\treturn select( blockEditorStore ).getSettings().mediaUpload;\n\t}, [] );\n\tconst [ trackBeingEdited, setTrackBeingEdited ] = useState( null );\n\tconst dropdownPopoverRef = useRef();\n\n\tuseEffect( () => {\n\t\tdropdownPopoverRef.current?.focus();\n\t}, [ trackBeingEdited ] );\n\n\tif ( ! mediaUpload ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Dropdown\n\t\t\tcontentClassName=\"block-library-video-tracks-editor\"\n\t\t\tfocusOnMount\n\t\t\tpopoverProps={ {\n\t\t\t\tref: dropdownPopoverRef,\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => {\n\t\t\t\tconst handleOnToggle = () => {\n\t\t\t\t\tif ( ! isOpen ) {\n\t\t\t\t\t\t// When the Popover opens make sure the initial view is\n\t\t\t\t\t\t// always the track list rather than the edit track UI.\n\t\t\t\t\t\tsetTrackBeingEdited( null );\n\t\t\t\t\t}\n\t\t\t\t\tonToggle();\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\tonClick={ handleOnToggle }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Text tracks' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => {\n\t\t\t\tif ( trackBeingEdited !== null ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<SingleTrackEditor\n\t\t\t\t\t\t\ttrack={ tracks[ trackBeingEdited ] }\n\t\t\t\t\t\t\tonChange={ ( newTrack ) => {\n\t\t\t\t\t\t\t\tconst newTracks = [ ...tracks ];\n\t\t\t\t\t\t\t\tnewTracks[ trackBeingEdited ] = newTrack;\n\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonClose={ () => setTrackBeingEdited( null ) }\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\ttracks.filter(\n\t\t\t\t\t\t\t\t\t\t( _track, index ) =>\n\t\t\t\t\t\t\t\t\t\t\tindex !== trackBeingEdited\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\tsetTrackBeingEdited( null );\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\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ tracks.length === 0 && (\n\t\t\t\t\t\t\t<div className=\"block-library-video-tracks-editor__tracks-informative-message\">\n\t\t\t\t\t\t\t\t<h2 className=\"block-library-video-tracks-editor__tracks-informative-message-title\">\n\t\t\t\t\t\t\t\t\t{ __( 'Text tracks' ) }\n\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t<p className=\"block-library-video-tracks-editor__tracks-informative-message-description\">\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'Tracks can be subtitles, captions, chapters, or descriptions. They help make your content more accessible to a wider range of users.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<NavigableMenu>\n\t\t\t\t\t\t\t<TrackList\n\t\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\t\tonEditPress={ setTrackBeingEdited }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuGroup\n\t\t\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__add-tracks-container\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Add tracks' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\t\tonSelect={ ( { url } ) => {\n\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\tonChange( [ ...tracks, { src: url } ] );\n\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited( trackIndex );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_TYPES }\n\t\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={ media }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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\t<MediaUploadCheck>\n\t\t\t\t\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\t\t\t\t\tonChange={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t\tconst files = event.target.files;\n\t\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\t\tmediaUpload( {\n\t\t\t\t\t\t\t\t\t\t\t\tallowedTypes: ALLOWED_TYPES,\n\t\t\t\t\t\t\t\t\t\t\t\tfilesList: files,\n\t\t\t\t\t\t\t\t\t\t\t\tonFileChange: ( [\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ url },\n\t\t\t\t\t\t\t\t\t\t\t\t] ) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst newTracks = [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks,\n\t\t\t\t\t\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t! newTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t] = {};\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[ trackIndex ] = {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks[ trackIndex ],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsrc: url,\n\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\taccept=\".vtt,text/vtt\"\n\t\t\t\t\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\topenFileDialog();\n\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Upload' ) }\n\t\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_blockEditor","_icons","_data","_element","_url","_jsxRuntime","ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","__","value","TrackList","tracks","onEditPress","content","map","track","index","jsxs","__experimentalHStack","className","children","jsx","Button","__next40pxDefaultSize","variant","onClick","sprintf","_x","MenuGroup","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","getFilename","__experimentalVStack","spacing","__experimentalGrid","columns","gap","TextControl","__nextHasNoMarginBottom","newLabel","help","newSrcLang","SelectControl","options","newKind","isDestructive","changes","hasChanges","undefined","TracksEditor","mediaUpload","useSelect","select","blockEditorStore","getSettings","trackBeingEdited","setTrackBeingEdited","useState","dropdownPopoverRef","useRef","useEffect","current","focus","Dropdown","contentClassName","focusOnMount","popoverProps","ref","renderToggle","isOpen","onToggle","handleOnToggle","ToolbarGroup","ToolbarButton","renderContent","newTrack","newTracks","filter","_track","Fragment","length","NavigableMenu","MediaUpload","onSelect","url","trackIndex","allowedTypes","render","open","MenuItem","icon","media","MediaUploadCheck","FormFileUpload","event","files","target","filesList","onFileChange","accept","openFileDialog","upload"],"sources":["@wordpress/block-library/src/video/tracks-editor.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tNavigableMenu,\n\tMenuItem,\n\tFormFileUpload,\n\tMenuGroup,\n\tToolbarGroup,\n\tToolbarButton,\n\tDropdown,\n\tButton,\n\tTextControl,\n\tSelectControl,\n\t__experimentalGrid as Grid,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport {\n\tMediaUpload,\n\tMediaUploadCheck,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { upload, media } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\nimport { useState, useRef, useEffect } from '@wordpress/element';\nimport { getFilename } from '@wordpress/url';\n\nconst ALLOWED_TYPES = [ 'text/vtt' ];\n\nconst DEFAULT_KIND = 'subtitles';\n\nconst KIND_OPTIONS = [\n\t{ label: __( 'Subtitles' ), value: 'subtitles' },\n\t{ label: __( 'Captions' ), value: 'captions' },\n\t{ label: __( 'Descriptions' ), value: 'descriptions' },\n\t{ label: __( 'Chapters' ), value: 'chapters' },\n\t{ label: __( 'Metadata' ), value: 'metadata' },\n];\n\nfunction TrackList( { tracks, onEditPress } ) {\n\tconst content = tracks.map( ( track, index ) => {\n\t\treturn (\n\t\t\t<HStack\n\t\t\t\tkey={ index }\n\t\t\t\tclassName=\"block-library-video-tracks-editor__track-list-track\"\n\t\t\t>\n\t\t\t\t<span>{ track.label }</span>\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tonClick={ () => onEditPress( index ) }\n\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t/* translators: %s: Label of the video text track e.g: \"French subtitles\". */\n\t\t\t\t\t\t_x( 'Edit %s', 'text tracks' ),\n\t\t\t\t\t\ttrack.label\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t</Button>\n\t\t\t</HStack>\n\t\t);\n\t} );\n\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\tclassName=\"block-library-video-tracks-editor__track-list\"\n\t\t>\n\t\t\t{ content }\n\t\t</MenuGroup>\n\t);\n}\n\nfunction SingleTrackEditor( { track, onChange, onClose, onRemove } ) {\n\tconst { src = '', label = '', srcLang = '', kind = DEFAULT_KIND } = track;\n\tconst fileName = src.startsWith( 'blob:' ) ? '' : getFilename( src ) || '';\n\treturn (\n\t\t<VStack\n\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor\"\n\t\t\tspacing=\"4\"\n\t\t>\n\t\t\t<span className=\"block-library-video-tracks-editor__single-track-editor-edit-track-label\">\n\t\t\t\t{ __( 'Edit track' ) }\n\t\t\t</span>\n\t\t\t<span>\n\t\t\t\t{ __( 'File' ) }: <b>{ fileName }</b>\n\t\t\t</span>\n\t\t\t<Grid columns={ 2 } gap={ 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\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tlabel: newLabel,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\thelp={ __( 'Title of track' ) }\n\t\t\t\t/>\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\tonChange={ ( newSrcLang ) =>\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tsrcLang: newSrcLang,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tlabel={ __( 'Source language' ) }\n\t\t\t\t\tvalue={ srcLang }\n\t\t\t\t\thelp={ __( 'Language tag (en, fr, etc.)' ) }\n\t\t\t\t/>\n\t\t\t</Grid>\n\t\t\t<VStack spacing=\"8\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\tvalue={ kind }\n\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\tonChange={ ( newKind ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tkind: newKind,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<HStack className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Remove track' ) }\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\tonClick={ () => {\n\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t...changes,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</VStack>\n\t);\n}\n\nexport default function TracksEditor( { tracks = [], onChange } ) {\n\tconst mediaUpload = useSelect( ( select ) => {\n\t\treturn select( blockEditorStore ).getSettings().mediaUpload;\n\t}, [] );\n\tconst [ trackBeingEdited, setTrackBeingEdited ] = useState( null );\n\tconst dropdownPopoverRef = useRef();\n\n\tuseEffect( () => {\n\t\tdropdownPopoverRef.current?.focus();\n\t}, [ trackBeingEdited ] );\n\n\tif ( ! mediaUpload ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Dropdown\n\t\t\tcontentClassName=\"block-library-video-tracks-editor\"\n\t\t\tfocusOnMount\n\t\t\tpopoverProps={ {\n\t\t\t\tref: dropdownPopoverRef,\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => {\n\t\t\t\tconst handleOnToggle = () => {\n\t\t\t\t\tif ( ! isOpen ) {\n\t\t\t\t\t\t// When the Popover opens make sure the initial view is\n\t\t\t\t\t\t// always the track list rather than the edit track UI.\n\t\t\t\t\t\tsetTrackBeingEdited( null );\n\t\t\t\t\t}\n\t\t\t\t\tonToggle();\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\tonClick={ handleOnToggle }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Text tracks' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => {\n\t\t\t\tif ( trackBeingEdited !== null ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<SingleTrackEditor\n\t\t\t\t\t\t\ttrack={ tracks[ trackBeingEdited ] }\n\t\t\t\t\t\t\tonChange={ ( newTrack ) => {\n\t\t\t\t\t\t\t\tconst newTracks = [ ...tracks ];\n\t\t\t\t\t\t\t\tnewTracks[ trackBeingEdited ] = newTrack;\n\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonClose={ () => setTrackBeingEdited( null ) }\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\ttracks.filter(\n\t\t\t\t\t\t\t\t\t\t( _track, index ) =>\n\t\t\t\t\t\t\t\t\t\t\tindex !== trackBeingEdited\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\tsetTrackBeingEdited( null );\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\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ tracks.length === 0 && (\n\t\t\t\t\t\t\t<div className=\"block-library-video-tracks-editor__tracks-informative-message\">\n\t\t\t\t\t\t\t\t<h2 className=\"block-library-video-tracks-editor__tracks-informative-message-title\">\n\t\t\t\t\t\t\t\t\t{ __( 'Text tracks' ) }\n\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t<p className=\"block-library-video-tracks-editor__tracks-informative-message-description\">\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'Tracks can be subtitles, captions, chapters, or descriptions. They help make your content more accessible to a wider range of users.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<NavigableMenu>\n\t\t\t\t\t\t\t<TrackList\n\t\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\t\tonEditPress={ setTrackBeingEdited }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuGroup\n\t\t\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__add-tracks-container\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Add tracks' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\t\tonSelect={ ( { url } ) => {\n\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\tonChange( [ ...tracks, { src: url } ] );\n\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited( trackIndex );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_TYPES }\n\t\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={ media }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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\t<MediaUploadCheck>\n\t\t\t\t\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\t\t\t\t\tonChange={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t\tconst files = event.target.files;\n\t\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\t\tmediaUpload( {\n\t\t\t\t\t\t\t\t\t\t\t\tallowedTypes: ALLOWED_TYPES,\n\t\t\t\t\t\t\t\t\t\t\t\tfilesList: files,\n\t\t\t\t\t\t\t\t\t\t\t\tonFileChange: ( [\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ url },\n\t\t\t\t\t\t\t\t\t\t\t\t] ) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst newTracks = [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks,\n\t\t\t\t\t\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t! newTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t] = {};\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[ trackIndex ] = {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks[ trackIndex ],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsrc: url,\n\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\taccept=\".vtt,text/vtt\"\n\t\t\t\t\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\topenFileDialog();\n\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ _x( 'Upload', 'verb' ) }\n\t\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,15 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { PanelBody, ToggleControl, SelectControl, Disabled } from '@wordpress/components';
4
+ import { ToggleControl, SelectControl, Disabled, __experimentalToolsPanel as ToolsPanel, __experimentalToolsPanelItem as ToolsPanelItem } from '@wordpress/components';
5
5
  import { __ } from '@wordpress/i18n';
6
6
  import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
7
7
  import ServerSideRender from '@wordpress/server-side-render';
8
+
9
+ /**
10
+ * Internal dependencies
11
+ */
12
+ import { useToolsPanelDropdownMenuProps } from '../utils/hooks';
8
13
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
14
  export default function ArchivesEdit({
10
15
  attributes,
@@ -16,51 +21,93 @@ export default function ArchivesEdit({
16
21
  displayAsDropdown,
17
22
  type
18
23
  } = attributes;
24
+ const dropdownMenuProps = useToolsPanelDropdownMenuProps();
19
25
  return /*#__PURE__*/_jsxs(_Fragment, {
20
26
  children: [/*#__PURE__*/_jsx(InspectorControls, {
21
- children: /*#__PURE__*/_jsxs(PanelBody, {
22
- title: __('Settings'),
23
- children: [/*#__PURE__*/_jsx(ToggleControl, {
24
- __nextHasNoMarginBottom: true,
27
+ children: /*#__PURE__*/_jsxs(ToolsPanel, {
28
+ label: __('Settings'),
29
+ resetAll: () => {
30
+ setAttributes({
31
+ displayAsDropdown: false,
32
+ showLabel: false,
33
+ showPostCounts: false,
34
+ type: 'monthly'
35
+ });
36
+ },
37
+ dropdownMenuProps: dropdownMenuProps,
38
+ children: [/*#__PURE__*/_jsx(ToolsPanelItem, {
25
39
  label: __('Display as dropdown'),
26
- checked: displayAsDropdown,
27
- onChange: () => setAttributes({
28
- displayAsDropdown: !displayAsDropdown
40
+ isShownByDefault: true,
41
+ hasValue: () => displayAsDropdown,
42
+ onDeselect: () => setAttributes({
43
+ displayAsDropdown: false
44
+ }),
45
+ children: /*#__PURE__*/_jsx(ToggleControl, {
46
+ __nextHasNoMarginBottom: true,
47
+ label: __('Display as dropdown'),
48
+ checked: displayAsDropdown,
49
+ onChange: () => setAttributes({
50
+ displayAsDropdown: !displayAsDropdown
51
+ })
29
52
  })
30
- }), displayAsDropdown && /*#__PURE__*/_jsx(ToggleControl, {
31
- __nextHasNoMarginBottom: true,
53
+ }), displayAsDropdown && /*#__PURE__*/_jsx(ToolsPanelItem, {
32
54
  label: __('Show label'),
33
- checked: showLabel,
34
- onChange: () => setAttributes({
35
- showLabel: !showLabel
55
+ isShownByDefault: true,
56
+ hasValue: () => showLabel,
57
+ onDeselect: () => setAttributes({
58
+ showLabel: false
59
+ }),
60
+ children: /*#__PURE__*/_jsx(ToggleControl, {
61
+ __nextHasNoMarginBottom: true,
62
+ label: __('Show label'),
63
+ checked: showLabel,
64
+ onChange: () => setAttributes({
65
+ showLabel: !showLabel
66
+ })
36
67
  })
37
- }), /*#__PURE__*/_jsx(ToggleControl, {
38
- __nextHasNoMarginBottom: true,
68
+ }), /*#__PURE__*/_jsx(ToolsPanelItem, {
39
69
  label: __('Show post counts'),
40
- checked: showPostCounts,
41
- onChange: () => setAttributes({
42
- showPostCounts: !showPostCounts
70
+ isShownByDefault: true,
71
+ hasValue: () => showPostCounts,
72
+ onDeselect: () => setAttributes({
73
+ showPostCounts: false
74
+ }),
75
+ children: /*#__PURE__*/_jsx(ToggleControl, {
76
+ __nextHasNoMarginBottom: true,
77
+ label: __('Show post counts'),
78
+ checked: showPostCounts,
79
+ onChange: () => setAttributes({
80
+ showPostCounts: !showPostCounts
81
+ })
43
82
  })
44
- }), /*#__PURE__*/_jsx(SelectControl, {
45
- __next40pxDefaultSize: true,
46
- __nextHasNoMarginBottom: true,
83
+ }), /*#__PURE__*/_jsx(ToolsPanelItem, {
47
84
  label: __('Group by'),
48
- options: [{
49
- label: __('Year'),
50
- value: 'yearly'
51
- }, {
52
- label: __('Month'),
53
- value: 'monthly'
54
- }, {
55
- label: __('Week'),
56
- value: 'weekly'
57
- }, {
58
- label: __('Day'),
59
- value: 'daily'
60
- }],
61
- value: type,
62
- onChange: value => setAttributes({
63
- type: value
85
+ isShownByDefault: true,
86
+ hasValue: () => !!type,
87
+ onDeselect: () => setAttributes({
88
+ type: 'monthly'
89
+ }),
90
+ children: /*#__PURE__*/_jsx(SelectControl, {
91
+ __next40pxDefaultSize: true,
92
+ __nextHasNoMarginBottom: true,
93
+ label: __('Group by'),
94
+ options: [{
95
+ label: __('Year'),
96
+ value: 'yearly'
97
+ }, {
98
+ label: __('Month'),
99
+ value: 'monthly'
100
+ }, {
101
+ label: __('Week'),
102
+ value: 'weekly'
103
+ }, {
104
+ label: __('Day'),
105
+ value: 'daily'
106
+ }],
107
+ value: type,
108
+ onChange: value => setAttributes({
109
+ type: value
110
+ })
64
111
  })
65
112
  })]
66
113
  })
@@ -1 +1 @@
1
- {"version":3,"names":["PanelBody","ToggleControl","SelectControl","Disabled","__","InspectorControls","useBlockProps","ServerSideRender","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ArchivesEdit","attributes","setAttributes","showLabel","showPostCounts","displayAsDropdown","type","children","title","__nextHasNoMarginBottom","label","checked","onChange","__next40pxDefaultSize","options","value","block","skipBlockSupportAttributes"],"sources":["@wordpress/block-library/src/archives/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n\tDisabled,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\n\nexport default function ArchivesEdit( { attributes, setAttributes } ) {\n\tconst { showLabel, showPostCounts, displayAsDropdown, type } = attributes;\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<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display as dropdown' ) }\n\t\t\t\t\t\tchecked={ displayAsDropdown }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayAsDropdown: ! displayAsDropdown,\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{ displayAsDropdown && (\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 label' ) }\n\t\t\t\t\t\t\tchecked={ showLabel }\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\tshowLabel: ! showLabel,\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) }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Show post counts' ) }\n\t\t\t\t\t\tchecked={ showPostCounts }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowPostCounts: ! showPostCounts,\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<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Group by' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Year' ), value: 'yearly' },\n\t\t\t\t\t\t\t{ label: __( 'Month' ), value: 'monthly' },\n\t\t\t\t\t\t\t{ label: __( 'Week' ), value: 'weekly' },\n\t\t\t\t\t\t\t{ label: __( 'Day' ), value: 'daily' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ type }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { type: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tblock=\"core/archives\"\n\t\t\t\t\t\tskipBlockSupportAttributes\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,SAAS,EACTC,aAAa,EACbC,aAAa,EACbC,QAAQ,QACF,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,iBAAiB,EAAEC,aAAa,QAAQ,yBAAyB;AAC1E,OAAOC,gBAAgB,MAAM,+BAA+B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAE7D,eAAe,SAASC,YAAYA,CAAE;EAAEC,UAAU;EAAEC;AAAc,CAAC,EAAG;EACrE,MAAM;IAAEC,SAAS;IAAEC,cAAc;IAAEC,iBAAiB;IAAEC;EAAK,CAAC,GAAGL,UAAU;EAEzE,oBACCJ,KAAA,CAAAE,SAAA;IAAAQ,QAAA,gBACCZ,IAAA,CAACJ,iBAAiB;MAAAgB,QAAA,eACjBV,KAAA,CAACX,SAAS;QAACsB,KAAK,EAAGlB,EAAE,CAAE,UAAW,CAAG;QAAAiB,QAAA,gBACpCZ,IAAA,CAACR,aAAa;UACbsB,uBAAuB;UACvBC,KAAK,EAAGpB,EAAE,CAAE,qBAAsB,CAAG;UACrCqB,OAAO,EAAGN,iBAAmB;UAC7BO,QAAQ,EAAGA,CAAA,KACVV,aAAa,CAAE;YACdG,iBAAiB,EAAE,CAAEA;UACtB,CAAE;QACF,CACD,CAAC,EACAA,iBAAiB,iBAClBV,IAAA,CAACR,aAAa;UACbsB,uBAAuB;UACvBC,KAAK,EAAGpB,EAAE,CAAE,YAAa,CAAG;UAC5BqB,OAAO,EAAGR,SAAW;UACrBS,QAAQ,EAAGA,CAAA,KACVV,aAAa,CAAE;YACdC,SAAS,EAAE,CAAEA;UACd,CAAE;QACF,CACD,CACD,eACDR,IAAA,CAACR,aAAa;UACbsB,uBAAuB;UACvBC,KAAK,EAAGpB,EAAE,CAAE,kBAAmB,CAAG;UAClCqB,OAAO,EAAGP,cAAgB;UAC1BQ,QAAQ,EAAGA,CAAA,KACVV,aAAa,CAAE;YACdE,cAAc,EAAE,CAAEA;UACnB,CAAE;QACF,CACD,CAAC,eACFT,IAAA,CAACP,aAAa;UACbyB,qBAAqB;UACrBJ,uBAAuB;UACvBC,KAAK,EAAGpB,EAAE,CAAE,UAAW,CAAG;UAC1BwB,OAAO,EAAG,CACT;YAAEJ,KAAK,EAAEpB,EAAE,CAAE,MAAO,CAAC;YAAEyB,KAAK,EAAE;UAAS,CAAC,EACxC;YAAEL,KAAK,EAAEpB,EAAE,CAAE,OAAQ,CAAC;YAAEyB,KAAK,EAAE;UAAU,CAAC,EAC1C;YAAEL,KAAK,EAAEpB,EAAE,CAAE,MAAO,CAAC;YAAEyB,KAAK,EAAE;UAAS,CAAC,EACxC;YAAEL,KAAK,EAAEpB,EAAE,CAAE,KAAM,CAAC;YAAEyB,KAAK,EAAE;UAAQ,CAAC,CACpC;UACHA,KAAK,EAAGT,IAAM;UACdM,QAAQ,EAAKG,KAAK,IACjBb,aAAa,CAAE;YAAEI,IAAI,EAAES;UAAM,CAAE;QAC/B,CACD,CAAC;MAAA,CACQ;IAAC,CACM,CAAC,eACpBpB,IAAA;MAAA,GAAUH,aAAa,CAAC,CAAC;MAAAe,QAAA,eACxBZ,IAAA,CAACN,QAAQ;QAAAkB,QAAA,eACRZ,IAAA,CAACF,gBAAgB;UAChBuB,KAAK,EAAC,eAAe;UACrBC,0BAA0B;UAC1BhB,UAAU,EAAGA;QAAY,CACzB;MAAC,CACO;IAAC,CACP,CAAC;EAAA,CACL,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"names":["ToggleControl","SelectControl","Disabled","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__","InspectorControls","useBlockProps","ServerSideRender","useToolsPanelDropdownMenuProps","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ArchivesEdit","attributes","setAttributes","showLabel","showPostCounts","displayAsDropdown","type","dropdownMenuProps","children","label","resetAll","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","checked","onChange","__next40pxDefaultSize","options","value","block","skipBlockSupportAttributes"],"sources":["@wordpress/block-library/src/archives/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToggleControl,\n\tSelectControl,\n\tDisabled,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\n\nexport default function ArchivesEdit( { attributes, setAttributes } ) {\n\tconst { showLabel, showPostCounts, displayAsDropdown, type } = attributes;\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\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\tdisplayAsDropdown: false,\n\t\t\t\t\t\t\tshowLabel: false,\n\t\t\t\t\t\t\tshowPostCounts: false,\n\t\t\t\t\t\t\ttype: 'monthly',\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<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Display as dropdown' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => displayAsDropdown }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { displayAsDropdown: false } )\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={ __( 'Display as dropdown' ) }\n\t\t\t\t\t\t\tchecked={ displayAsDropdown }\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\tdisplayAsDropdown: ! displayAsDropdown,\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\n\t\t\t\t\t{ displayAsDropdown && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Show label' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => showLabel }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showLabel: false } )\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={ __( 'Show label' ) }\n\t\t\t\t\t\t\t\tchecked={ showLabel }\n\t\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tshowLabel: ! showLabel,\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\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Show post counts' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => showPostCounts }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showPostCounts: false } )\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 post counts' ) }\n\t\t\t\t\t\t\tchecked={ showPostCounts }\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\tshowPostCounts: ! showPostCounts,\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\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Group by' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! type }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { type: 'monthly' } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Group by' ) }\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t{ label: __( 'Year' ), value: 'yearly' },\n\t\t\t\t\t\t\t\t{ label: __( 'Month' ), value: 'monthly' },\n\t\t\t\t\t\t\t\t{ label: __( 'Week' ), value: 'weekly' },\n\t\t\t\t\t\t\t\t{ label: __( 'Day' ), value: 'daily' },\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tvalue={ type }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { type: value } )\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</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tblock=\"core/archives\"\n\t\t\t\t\t\tskipBlockSupportAttributes\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}