@wordpress/block-library 8.19.2 → 8.20.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.
- package/CHANGELOG.md +2 -0
- package/build/archives/edit.js +8 -8
- package/build/archives/edit.js.map +1 -1
- package/build/audio/deprecated.js +3 -3
- package/build/audio/deprecated.js.map +1 -1
- package/build/audio/edit.js +17 -16
- package/build/audio/edit.js.map +1 -1
- package/build/audio/edit.native.js +15 -14
- package/build/audio/edit.native.js.map +1 -1
- package/build/audio/save.js +4 -4
- package/build/audio/save.js.map +1 -1
- package/build/avatar/edit.js +19 -19
- package/build/avatar/edit.js.map +1 -1
- package/build/avatar/user-control.js +3 -2
- package/build/avatar/user-control.js.map +1 -1
- package/build/block/edit-title.native.js +8 -8
- package/build/block/edit-title.native.js.map +1 -1
- package/build/block/edit.js +11 -10
- package/build/block/edit.js.map +1 -1
- package/build/block/edit.native.js +17 -16
- package/build/block/edit.native.js.map +1 -1
- package/build/button/color-background.native.js +3 -3
- package/build/button/color-background.native.js.map +1 -1
- package/build/button/constants.js +13 -0
- package/build/button/constants.js.map +1 -0
- package/build/button/deprecated.js +19 -19
- package/build/button/deprecated.js.map +1 -1
- package/build/button/edit.js +42 -44
- package/build/button/edit.js.map +1 -1
- package/build/button/edit.native.js +15 -14
- package/build/button/edit.native.js.map +1 -1
- package/build/button/get-updated-link-attributes.js +54 -0
- package/build/button/get-updated-link-attributes.js.map +1 -0
- package/build/button/save.js +3 -3
- package/build/button/save.js.map +1 -1
- package/build/buttons/deprecated.js +4 -4
- package/build/buttons/deprecated.js.map +1 -1
- package/build/buttons/edit.js +2 -2
- package/build/buttons/edit.js.map +1 -1
- package/build/buttons/edit.native.js +7 -6
- package/build/buttons/edit.native.js.map +1 -1
- package/build/buttons/save.js +2 -2
- package/build/buttons/save.js.map +1 -1
- package/build/calendar/edit.js +6 -6
- package/build/calendar/edit.js.map +1 -1
- package/build/categories/edit.js +17 -17
- package/build/categories/edit.js.map +1 -1
- package/build/code/edit.js +3 -3
- package/build/code/edit.js.map +1 -1
- package/build/code/edit.native.js +2 -2
- package/build/code/edit.native.js.map +1 -1
- package/build/code/save.js +3 -3
- package/build/code/save.js.map +1 -1
- package/build/column/column-preview.native.js +4 -4
- package/build/column/column-preview.native.js.map +1 -1
- package/build/column/deprecated.js +3 -3
- package/build/column/deprecated.js.map +1 -1
- package/build/column/edit.js +5 -5
- package/build/column/edit.js.map +1 -1
- package/build/column/edit.native.js +14 -13
- package/build/column/edit.native.js.map +1 -1
- package/build/column/save.js +2 -2
- package/build/column/save.js.map +1 -1
- package/build/columns/deprecated.js +7 -7
- package/build/columns/deprecated.js.map +1 -1
- package/build/columns/edit.js +9 -9
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +15 -14
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/save.js +2 -2
- package/build/columns/save.js.map +1 -1
- package/build/columns/variations.js +13 -13
- package/build/columns/variations.js.map +1 -1
- package/build/comment-author-avatar/edit.js +6 -6
- package/build/comment-author-avatar/edit.js.map +1 -1
- package/build/comment-author-name/edit.js +8 -8
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-content/edit.js +8 -7
- package/build/comment-content/edit.js.map +1 -1
- package/build/comment-date/edit.js +8 -8
- package/build/comment-date/edit.js.map +1 -1
- package/build/comment-edit-link/edit.js +7 -7
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/comment-reply-link/edit.js +5 -5
- package/build/comment-reply-link/edit.js.map +1 -1
- package/build/comment-template/edit.js +14 -13
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/save.js +2 -2
- package/build/comment-template/save.js.map +1 -1
- package/build/comments/deprecated.js +3 -3
- package/build/comments/deprecated.js.map +1 -1
- package/build/comments/edit/comments-inspector-controls.js +3 -3
- package/build/comments/edit/comments-inspector-controls.js.map +1 -1
- package/build/comments/edit/comments-legacy.js +7 -7
- package/build/comments/edit/comments-legacy.js.map +1 -1
- package/build/comments/edit/index.js +4 -4
- package/build/comments/edit/index.js.map +1 -1
- package/build/comments/edit/placeholder.js +34 -33
- package/build/comments/edit/placeholder.js.map +1 -1
- package/build/comments/save.js +2 -2
- package/build/comments/save.js.map +1 -1
- package/build/comments-pagination/comments-pagination-arrow-controls.js +5 -5
- package/build/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
- package/build/comments-pagination/edit.js +5 -5
- package/build/comments-pagination/edit.js.map +1 -1
- package/build/comments-pagination/save.js +2 -2
- package/build/comments-pagination/save.js.map +1 -1
- package/build/comments-pagination-next/edit.js +4 -4
- package/build/comments-pagination-next/edit.js.map +1 -1
- package/build/comments-pagination-numbers/edit.js +11 -11
- package/build/comments-pagination-numbers/edit.js.map +1 -1
- package/build/comments-pagination-previous/edit.js +4 -4
- package/build/comments-pagination-previous/edit.js.map +1 -1
- package/build/comments-title/edit.js +9 -8
- package/build/comments-title/edit.js.map +1 -1
- package/build/cover/controls.native.js +17 -16
- package/build/cover/controls.native.js.map +1 -1
- package/build/cover/deprecated.js +239 -62
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/block-controls.js +6 -5
- package/build/cover/edit/block-controls.js.map +1 -1
- package/build/cover/edit/color-utils.js +135 -0
- package/build/cover/edit/color-utils.js.map +1 -0
- package/build/cover/edit/cover-placeholder.js +3 -3
- package/build/cover/edit/cover-placeholder.js.map +1 -1
- package/build/cover/edit/index.js +106 -52
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +20 -19
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/cover/edit/resizable-cover-popover.js +3 -2
- package/build/cover/edit/resizable-cover-popover.js.map +1 -1
- package/build/cover/edit.native.js +44 -37
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/focal-point-settings-button.native.js +4 -4
- package/build/cover/focal-point-settings-button.native.js.map +1 -1
- package/build/cover/index.js +3 -0
- package/build/cover/index.js.map +1 -1
- package/build/cover/overlay-color-settings.native.js +3 -2
- package/build/cover/overlay-color-settings.native.js.map +1 -1
- package/build/cover/save.js +7 -7
- package/build/cover/save.js.map +1 -1
- package/build/cover/shared.js +33 -133
- package/build/cover/shared.js.map +1 -1
- package/build/details/edit.js +6 -6
- package/build/details/edit.js.map +1 -1
- package/build/details/save.js +4 -4
- package/build/details/save.js.map +1 -1
- package/build/embed/deprecated.js +6 -6
- package/build/embed/deprecated.js.map +1 -1
- package/build/embed/edit.js +26 -8
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +27 -9
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-controls.js +4 -4
- package/build/embed/embed-controls.js.map +1 -1
- package/build/embed/embed-controls.native.js +5 -5
- package/build/embed/embed-controls.native.js.map +1 -1
- package/build/embed/embed-link-settings.native.js +4 -3
- package/build/embed/embed-link-settings.native.js.map +1 -1
- package/build/embed/embed-loading.js +3 -3
- package/build/embed/embed-loading.js.map +1 -1
- package/build/embed/embed-loading.native.js +3 -3
- package/build/embed/embed-loading.native.js.map +1 -1
- package/build/embed/embed-no-preview.native.js +21 -20
- package/build/embed/embed-no-preview.native.js.map +1 -1
- package/build/embed/embed-placeholder.js +12 -12
- package/build/embed/embed-placeholder.js.map +1 -1
- package/build/embed/embed-placeholder.native.js +13 -12
- package/build/embed/embed-placeholder.native.js.map +1 -1
- package/build/embed/embed-preview.js +13 -12
- package/build/embed/embed-preview.js.map +1 -1
- package/build/embed/embed-preview.native.js +8 -7
- package/build/embed/embed-preview.native.js.map +1 -1
- package/build/embed/icons.js +49 -49
- package/build/embed/icons.js.map +1 -1
- package/build/embed/save.js +4 -4
- package/build/embed/save.js.map +1 -1
- package/build/embed/util.js +4 -3
- package/build/embed/util.js.map +1 -1
- package/build/embed/wp-embed-preview.js +5 -4
- package/build/embed/wp-embed-preview.js.map +1 -1
- package/build/embed/wp-embed-preview.native.js +2 -1
- package/build/embed/wp-embed-preview.native.js.map +1 -1
- package/build/file/deprecated.js +19 -19
- package/build/file/deprecated.js.map +1 -1
- package/build/file/edit.js +18 -17
- package/build/file/edit.js.map +1 -1
- package/build/file/edit.native.js +23 -22
- package/build/file/edit.native.js.map +1 -1
- package/build/file/inspector.js +8 -8
- package/build/file/inspector.js.map +1 -1
- package/build/file/save.js +7 -7
- package/build/file/save.js.map +1 -1
- package/build/footnotes/edit.js +11 -11
- package/build/footnotes/edit.js.map +1 -1
- package/build/footnotes/format.js +2 -2
- package/build/footnotes/format.js.map +1 -1
- package/build/footnotes/index.js +1 -1
- package/build/freeform/convert-to-blocks-button.js +2 -2
- package/build/freeform/convert-to-blocks-button.js.map +1 -1
- package/build/freeform/edit.js +8 -7
- package/build/freeform/edit.js.map +1 -1
- package/build/freeform/edit.native.js +2 -2
- package/build/freeform/edit.native.js.map +1 -1
- package/build/freeform/modal.js +11 -10
- package/build/freeform/modal.js.map +1 -1
- package/build/freeform/save.js +2 -1
- package/build/freeform/save.js.map +1 -1
- package/build/gallery/deprecated.js +38 -38
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit-wrapper.js +3 -3
- package/build/gallery/edit-wrapper.js.map +1 -1
- package/build/gallery/edit.js +18 -17
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +5 -4
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/gallery.native.js +6 -5
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/gap-styles.js +4 -3
- package/build/gallery/gap-styles.js.map +1 -1
- package/build/gallery/save.js +3 -3
- package/build/gallery/save.js.map +1 -1
- package/build/gallery/shared-icon.js +2 -2
- package/build/gallery/shared-icon.js.map +1 -1
- package/build/gallery/v1/edit.js +10 -9
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery-button.native.js +3 -3
- package/build/gallery/v1/gallery-button.native.js.map +1 -1
- package/build/gallery/v1/gallery-image.js +14 -13
- package/build/gallery/v1/gallery-image.js.map +1 -1
- package/build/gallery/v1/gallery-image.native.js +15 -14
- package/build/gallery/v1/gallery-image.native.js.map +1 -1
- package/build/gallery/v1/gallery.js +8 -8
- package/build/gallery/v1/gallery.js.map +1 -1
- package/build/gallery/v1/gallery.native.js +7 -6
- package/build/gallery/v1/gallery.native.js.map +1 -1
- package/build/gallery/v1/save.js +8 -8
- package/build/gallery/v1/save.js.map +1 -1
- package/build/gallery/v1/tiles.native.js +4 -3
- package/build/gallery/v1/tiles.native.js.map +1 -1
- package/build/group/deprecated.js +13 -13
- package/build/group/deprecated.js.map +1 -1
- package/build/group/edit.js +8 -8
- package/build/group/edit.js.map +1 -1
- package/build/group/edit.native.js +7 -6
- package/build/group/edit.native.js.map +1 -1
- package/build/group/placeholder.js +16 -15
- package/build/group/placeholder.js.map +1 -1
- package/build/group/save.js +2 -2
- package/build/group/save.js.map +1 -1
- package/build/heading/deprecated.js +8 -8
- package/build/heading/deprecated.js.map +1 -1
- package/build/heading/edit.js +6 -5
- package/build/heading/edit.js.map +1 -1
- package/build/heading/save.js +3 -3
- package/build/heading/save.js.map +1 -1
- package/build/home-link/edit.js +5 -4
- package/build/home-link/edit.js.map +1 -1
- package/build/home-link/save.js +2 -2
- package/build/home-link/save.js.map +1 -1
- package/build/html/edit.js +16 -9
- package/build/html/edit.js.map +1 -1
- package/build/html/preview.js +7 -3
- package/build/html/preview.js.map +1 -1
- package/build/html/save.js +2 -1
- package/build/html/save.js.map +1 -1
- package/build/image/deprecated.js +35 -35
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +10 -9
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +30 -29
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +32 -31
- package/build/image/image.js.map +1 -1
- package/build/image/save.js +5 -5
- package/build/image/save.js.map +1 -1
- package/build/image/view.js +128 -27
- package/build/image/view.js.map +1 -1
- package/build/latest-comments/edit.js +8 -8
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/edit.js +34 -33
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/edit.native.js +19 -18
- package/build/latest-posts/edit.native.js.map +1 -1
- package/build/list/deprecated.js +7 -7
- package/build/list/deprecated.js.map +1 -1
- package/build/list/edit.js +9 -8
- package/build/list/edit.js.map +1 -1
- package/build/list/ordered-list-settings.js +5 -5
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list/save.js +3 -3
- package/build/list/save.js.map +1 -1
- package/build/list/tag-name.js +2 -1
- package/build/list/tag-name.js.map +1 -1
- package/build/list/tag-name.native.js +2 -1
- package/build/list/tag-name.native.js.map +1 -1
- package/build/list-item/edit.js +7 -7
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/edit.native.js +11 -10
- package/build/list-item/edit.native.js.map +1 -1
- package/build/list-item/icons.native.js +7 -7
- package/build/list-item/icons.native.js.map +1 -1
- package/build/list-item/list-style-type.native.js +8 -7
- package/build/list-item/list-style-type.native.js.map +1 -1
- package/build/list-item/save.js +4 -4
- package/build/list-item/save.js.map +1 -1
- package/build/loginout/edit.js +6 -6
- package/build/loginout/edit.js.map +1 -1
- package/build/loginout/index.js +8 -0
- package/build/loginout/index.js.map +1 -1
- package/build/media-text/deprecated.js +44 -44
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +21 -20
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/edit.native.js +12 -11
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/icon-retry.native.js +4 -4
- package/build/media-text/icon-retry.native.js.map +1 -1
- package/build/media-text/media-container.js +13 -12
- package/build/media-text/media-container.js.map +1 -1
- package/build/media-text/media-container.native.js +20 -19
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/media-text/save.js +10 -10
- package/build/media-text/save.js.map +1 -1
- package/build/missing/edit.js +6 -5
- package/build/missing/edit.js.map +1 -1
- package/build/missing/edit.native.js +17 -16
- package/build/missing/edit.native.js.map +1 -1
- package/build/missing/save.js +2 -1
- package/build/missing/save.js.map +1 -1
- package/build/more/edit.js +4 -4
- package/build/more/edit.js.map +1 -1
- package/build/more/edit.native.js +3 -2
- package/build/more/edit.native.js.map +1 -1
- package/build/more/save.js +2 -1
- package/build/more/save.js.map +1 -1
- package/build/navigation/deprecated.js +7 -7
- package/build/navigation/deprecated.js.map +1 -1
- package/build/navigation/edit/accessible-description.js +2 -2
- package/build/navigation/edit/accessible-description.js.map +1 -1
- package/build/navigation/edit/accessible-menu-description.js +2 -2
- package/build/navigation/edit/accessible-menu-description.js.map +1 -1
- package/build/navigation/edit/deleted-navigation-warning.js +8 -5
- package/build/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build/navigation/edit/index.js +47 -45
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +6 -4
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/leaf-more-menu.js +7 -7
- package/build/navigation/edit/leaf-more-menu.js.map +1 -1
- package/build/navigation/edit/manage-menus-button.js +2 -2
- package/build/navigation/edit/manage-menus-button.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +13 -13
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-delete-control.js +7 -6
- package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build/navigation/edit/navigation-menu-name-control.js +2 -2
- package/build/navigation/edit/navigation-menu-name-control.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +9 -8
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/overlay-menu-icon.js +5 -5
- package/build/navigation/edit/overlay-menu-icon.js.map +1 -1
- package/build/navigation/edit/overlay-menu-preview.js +7 -7
- package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +10 -9
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/placeholder/placeholder-preview.js +4 -4
- package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +9 -9
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +3 -2
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/save.js +2 -2
- package/build/navigation/save.js.map +1 -1
- package/build/navigation-link/edit.js +21 -20
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/icons.js +3 -3
- package/build/navigation-link/icons.js.map +1 -1
- package/build/navigation-link/index.js +2 -2
- package/build/navigation-link/index.js.map +1 -1
- package/build/navigation-link/link-ui.js +20 -11
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/navigation-link/save.js +2 -2
- package/build/navigation-link/save.js.map +1 -1
- package/build/navigation-submenu/edit.js +16 -15
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/navigation-submenu/icons.js +3 -3
- package/build/navigation-submenu/icons.js.map +1 -1
- package/build/navigation-submenu/save.js +2 -2
- package/build/navigation-submenu/save.js.map +1 -1
- package/build/nextpage/edit.js +3 -3
- package/build/nextpage/edit.js.map +1 -1
- package/build/nextpage/edit.native.js +3 -3
- package/build/nextpage/edit.native.js.map +1 -1
- package/build/nextpage/save.js +2 -1
- package/build/nextpage/save.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +6 -6
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +21 -20
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list-item/edit.js +7 -7
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/deprecated.js +9 -8
- package/build/paragraph/deprecated.js.map +1 -1
- package/build/paragraph/edit.js +10 -10
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/edit.native.js +5 -4
- package/build/paragraph/edit.native.js.map +1 -1
- package/build/paragraph/save.js +3 -3
- package/build/paragraph/save.js.map +1 -1
- package/build/pattern/edit.js +3 -2
- package/build/pattern/edit.js.map +1 -1
- package/build/post-author/edit.js +19 -19
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-biography/edit.js +4 -4
- package/build/post-author-biography/edit.js.map +1 -1
- package/build/post-author-name/edit.js +8 -8
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comment/edit.js +7 -6
- package/build/post-comment/edit.js.map +1 -1
- package/build/post-comment/save.js +2 -2
- package/build/post-comment/save.js.map +1 -1
- package/build/post-comments-count/edit.js +6 -5
- package/build/post-comments-count/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +6 -6
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +13 -13
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-comments-link/edit.js +7 -6
- package/build/post-comments-link/edit.js.map +1 -1
- package/build/post-content/edit.js +14 -14
- package/build/post-content/edit.js.map +1 -1
- package/build/post-date/edit.js +14 -13
- package/build/post-date/edit.js.map +1 -1
- package/build/post-excerpt/edit.js +16 -15
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +15 -15
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +17 -17
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/overlay.js +6 -6
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/post-navigation-link/edit.js +13 -13
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-template/edit.js +11 -10
- package/build/post-template/edit.js.map +1 -1
- package/build/post-template/save.js +2 -2
- package/build/post-template/save.js.map +1 -1
- package/build/post-terms/edit.js +9 -9
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-time-to-read/edit.js +5 -4
- package/build/post-time-to-read/edit.js.map +1 -1
- package/build/post-time-to-read/icon.js +3 -3
- package/build/post-time-to-read/icon.js.map +1 -1
- package/build/post-title/edit.js +15 -15
- package/build/post-title/edit.js.map +1 -1
- package/build/preformatted/edit.js +2 -2
- package/build/preformatted/edit.js.map +1 -1
- package/build/preformatted/edit.native.js +3 -3
- package/build/preformatted/edit.native.js.map +1 -1
- package/build/preformatted/save.js +3 -3
- package/build/preformatted/save.js.map +1 -1
- package/build/pullquote/blockquote.native.js +3 -2
- package/build/pullquote/blockquote.native.js.map +1 -1
- package/build/pullquote/deprecated.js +21 -21
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/pullquote/edit.js +7 -6
- package/build/pullquote/edit.js.map +1 -1
- package/build/pullquote/edit.native.js +7 -7
- package/build/pullquote/edit.native.js.map +1 -1
- package/build/pullquote/figure.native.js +2 -2
- package/build/pullquote/figure.native.js.map +1 -1
- package/build/pullquote/save.js +4 -4
- package/build/pullquote/save.js.map +1 -1
- package/build/query/deprecated.js +6 -6
- package/build/query/deprecated.js.map +1 -1
- package/build/query/edit/enhanced-pagination-modal.js +6 -5
- package/build/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build/query/edit/index.js +4 -3
- package/build/query/edit/index.js.map +1 -1
- package/build/query/edit/inspector-controls/author-control.js +2 -2
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/create-new-post-link.js +4 -3
- package/build/query/edit/inspector-controls/create-new-post-link.js.map +1 -1
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js +3 -3
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +20 -19
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/order-control.js +2 -2
- package/build/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +3 -2
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/sticky-control.js +2 -2
- package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +6 -5
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/edit/pattern-selection-modal.js +7 -6
- package/build/query/edit/pattern-selection-modal.js.map +1 -1
- package/build/query/edit/query-content.js +8 -7
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-placeholder.js +9 -8
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/edit/query-toolbar.js +9 -9
- package/build/query/edit/query-toolbar.js.map +1 -1
- package/build/query/icons.js +9 -9
- package/build/query/icons.js.map +1 -1
- package/build/query/save.js +2 -2
- package/build/query/save.js.map +1 -1
- package/build/query/view.js +5 -5
- package/build/query/view.js.map +1 -1
- package/build/query-no-results/edit.js +2 -2
- package/build/query-no-results/edit.js.map +1 -1
- package/build/query-no-results/save.js +2 -2
- package/build/query-no-results/save.js.map +1 -1
- package/build/query-pagination/deprecated.js +3 -3
- package/build/query-pagination/deprecated.js.map +1 -1
- package/build/query-pagination/edit.js +6 -5
- package/build/query-pagination/edit.js.map +1 -1
- package/build/query-pagination/query-pagination-arrow-controls.js +5 -5
- package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -1
- package/build/query-pagination/query-pagination-label-control.js +2 -2
- package/build/query-pagination/query-pagination-label-control.js.map +1 -1
- package/build/query-pagination/save.js +2 -2
- package/build/query-pagination/save.js.map +1 -1
- package/build/query-pagination-next/edit.js +4 -4
- package/build/query-pagination-next/edit.js.map +1 -1
- package/build/query-pagination-numbers/edit.js +6 -6
- package/build/query-pagination-numbers/edit.js.map +1 -1
- package/build/query-pagination-previous/edit.js +4 -4
- package/build/query-pagination-previous/edit.js.map +1 -1
- package/build/query-title/edit.js +12 -12
- package/build/query-title/edit.js.map +1 -1
- package/build/quote/deprecated.js +13 -13
- package/build/quote/deprecated.js.map +1 -1
- package/build/quote/edit.js +6 -5
- package/build/quote/edit.js.map +1 -1
- package/build/quote/save.js +3 -3
- package/build/quote/save.js.map +1 -1
- package/build/read-more/edit.js +4 -4
- package/build/read-more/edit.js.map +1 -1
- package/build/rss/edit.js +20 -18
- package/build/rss/edit.js.map +1 -1
- package/build/search/edit.js +30 -27
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js +16 -15
- package/build/search/edit.native.js.map +1 -1
- package/build/search/icons.js +17 -17
- package/build/search/icons.js.map +1 -1
- package/build/separator/deprecated.js +2 -2
- package/build/separator/deprecated.js.map +1 -1
- package/build/separator/edit.js +2 -2
- package/build/separator/edit.js.map +1 -1
- package/build/separator/save.js +2 -2
- package/build/separator/save.js.map +1 -1
- package/build/shortcode/edit.js +5 -5
- package/build/shortcode/edit.js.map +1 -1
- package/build/shortcode/edit.native.js +5 -4
- package/build/shortcode/edit.native.js.map +1 -1
- package/build/shortcode/save.js +2 -1
- package/build/shortcode/save.js.map +1 -1
- package/build/site-logo/edit.js +41 -40
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-tagline/edit.js +5 -5
- package/build/site-tagline/edit.js.map +1 -1
- package/build/site-tagline/icon.js +3 -3
- package/build/site-tagline/icon.js.map +1 -1
- package/build/site-title/edit/index.js +12 -12
- package/build/site-title/edit/index.js.map +1 -1
- package/build/social-link/edit.js +15 -14
- package/build/social-link/edit.js.map +1 -1
- package/build/social-link/edit.native.js +8 -7
- package/build/social-link/edit.native.js.map +1 -1
- package/build/social-link/icons/amazon.js +3 -3
- package/build/social-link/icons/amazon.js.map +1 -1
- package/build/social-link/icons/bandcamp.js +3 -3
- package/build/social-link/icons/bandcamp.js.map +1 -1
- package/build/social-link/icons/behance.js +3 -3
- package/build/social-link/icons/behance.js.map +1 -1
- package/build/social-link/icons/chain.js +3 -3
- package/build/social-link/icons/chain.js.map +1 -1
- package/build/social-link/icons/codepen.js +3 -3
- package/build/social-link/icons/codepen.js.map +1 -1
- package/build/social-link/icons/deviantart.js +3 -3
- package/build/social-link/icons/deviantart.js.map +1 -1
- package/build/social-link/icons/dribbble.js +3 -3
- package/build/social-link/icons/dribbble.js.map +1 -1
- package/build/social-link/icons/dropbox.js +3 -3
- package/build/social-link/icons/dropbox.js.map +1 -1
- package/build/social-link/icons/etsy.js +3 -3
- package/build/social-link/icons/etsy.js.map +1 -1
- package/build/social-link/icons/facebook.js +3 -3
- package/build/social-link/icons/facebook.js.map +1 -1
- package/build/social-link/icons/feed.js +3 -3
- package/build/social-link/icons/feed.js.map +1 -1
- package/build/social-link/icons/fivehundredpx.js +3 -3
- package/build/social-link/icons/fivehundredpx.js.map +1 -1
- package/build/social-link/icons/flickr.js +3 -3
- package/build/social-link/icons/flickr.js.map +1 -1
- package/build/social-link/icons/foursquare.js +3 -3
- package/build/social-link/icons/foursquare.js.map +1 -1
- package/build/social-link/icons/github.js +3 -3
- package/build/social-link/icons/github.js.map +1 -1
- package/build/social-link/icons/goodreads.js +3 -3
- package/build/social-link/icons/goodreads.js.map +1 -1
- package/build/social-link/icons/google.js +3 -3
- package/build/social-link/icons/google.js.map +1 -1
- package/build/social-link/icons/instagram.js +3 -3
- package/build/social-link/icons/instagram.js.map +1 -1
- package/build/social-link/icons/lastfm.js +3 -3
- package/build/social-link/icons/lastfm.js.map +1 -1
- package/build/social-link/icons/linkedin.js +3 -3
- package/build/social-link/icons/linkedin.js.map +1 -1
- package/build/social-link/icons/mail.js +3 -3
- package/build/social-link/icons/mail.js.map +1 -1
- package/build/social-link/icons/mastodon.js +3 -3
- package/build/social-link/icons/mastodon.js.map +1 -1
- package/build/social-link/icons/medium.js +3 -3
- package/build/social-link/icons/medium.js.map +1 -1
- package/build/social-link/icons/meetup.js +3 -3
- package/build/social-link/icons/meetup.js.map +1 -1
- package/build/social-link/icons/patreon.js +4 -4
- package/build/social-link/icons/patreon.js.map +1 -1
- package/build/social-link/icons/pinterest.js +3 -3
- package/build/social-link/icons/pinterest.js.map +1 -1
- package/build/social-link/icons/pocket.js +3 -3
- package/build/social-link/icons/pocket.js.map +1 -1
- package/build/social-link/icons/reddit.js +3 -3
- package/build/social-link/icons/reddit.js.map +1 -1
- package/build/social-link/icons/skype.js +3 -3
- package/build/social-link/icons/skype.js.map +1 -1
- package/build/social-link/icons/snapchat.js +3 -3
- package/build/social-link/icons/snapchat.js.map +1 -1
- package/build/social-link/icons/soundcloud.js +3 -3
- package/build/social-link/icons/soundcloud.js.map +1 -1
- package/build/social-link/icons/spotify.js +3 -3
- package/build/social-link/icons/spotify.js.map +1 -1
- package/build/social-link/icons/telegram.js +3 -3
- package/build/social-link/icons/telegram.js.map +1 -1
- package/build/social-link/icons/threads.js +3 -3
- package/build/social-link/icons/threads.js.map +1 -1
- package/build/social-link/icons/tiktok.js +3 -3
- package/build/social-link/icons/tiktok.js.map +1 -1
- package/build/social-link/icons/tumblr.js +3 -3
- package/build/social-link/icons/tumblr.js.map +1 -1
- package/build/social-link/icons/twitch.js +3 -3
- package/build/social-link/icons/twitch.js.map +1 -1
- package/build/social-link/icons/twitter.js +3 -3
- package/build/social-link/icons/twitter.js.map +1 -1
- package/build/social-link/icons/vimeo.js +3 -3
- package/build/social-link/icons/vimeo.js.map +1 -1
- package/build/social-link/icons/vk.js +3 -3
- package/build/social-link/icons/vk.js.map +1 -1
- package/build/social-link/icons/whatsapp.js +3 -3
- package/build/social-link/icons/whatsapp.js.map +1 -1
- package/build/social-link/icons/wordpress.js +3 -3
- package/build/social-link/icons/wordpress.js.map +1 -1
- package/build/social-link/icons/x.js +3 -3
- package/build/social-link/icons/x.js.map +1 -1
- package/build/social-link/icons/yelp.js +3 -3
- package/build/social-link/icons/yelp.js.map +1 -1
- package/build/social-link/icons/youtube.js +3 -3
- package/build/social-link/icons/youtube.js.map +1 -1
- package/build/social-link/social-list.js +1 -1
- package/build/social-link/social-list.js.map +1 -1
- package/build/social-links/deprecated.js +3 -3
- package/build/social-links/deprecated.js.map +1 -1
- package/build/social-links/edit.js +19 -18
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/edit.native.js +7 -6
- package/build/social-links/edit.native.js.map +1 -1
- package/build/social-links/save.js +2 -2
- package/build/social-links/save.js.map +1 -1
- package/build/spacer/controls.js +8 -8
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/controls.native.js +4 -3
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/deprecated.js +2 -2
- package/build/spacer/deprecated.js.map +1 -1
- package/build/spacer/edit.js +7 -6
- package/build/spacer/edit.js.map +1 -1
- package/build/spacer/edit.native.js +4 -3
- package/build/spacer/edit.native.js.map +1 -1
- package/build/spacer/save.js +2 -2
- package/build/spacer/save.js.map +1 -1
- package/build/spacer/save.native.js +2 -2
- package/build/spacer/save.native.js.map +1 -1
- package/build/table/deprecated.js +26 -26
- package/build/table/deprecated.js.map +1 -1
- package/build/table/edit.js +24 -23
- package/build/table/edit.js.map +1 -1
- package/build/table/save.js +10 -10
- package/build/table/save.js.map +1 -1
- package/build/table-of-contents/edit.js +35 -14
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/icon.js +3 -3
- package/build/table-of-contents/icon.js.map +1 -1
- package/build/table-of-contents/list.js +16 -10
- package/build/table-of-contents/list.js.map +1 -1
- package/build/table-of-contents/save.js +3 -3
- package/build/table-of-contents/save.js.map +1 -1
- package/build/tag-cloud/edit.js +11 -11
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +6 -6
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/import-controls.js +10 -8
- package/build/template-part/edit/import-controls.js.map +1 -1
- package/build/template-part/edit/index.js +17 -16
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +2 -2
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/template-part/edit/placeholder.js +6 -5
- package/build/template-part/edit/placeholder.js.map +1 -1
- package/build/template-part/edit/selection-modal.js +8 -7
- package/build/template-part/edit/selection-modal.js.map +1 -1
- package/build/template-part/edit/title-modal.js +7 -6
- package/build/template-part/edit/title-modal.js.map +1 -1
- package/build/term-description/edit.js +6 -6
- package/build/term-description/edit.js.map +1 -1
- package/build/text-columns/edit.js +6 -6
- package/build/text-columns/edit.js.map +1 -1
- package/build/text-columns/save.js +4 -4
- package/build/text-columns/save.js.map +1 -1
- package/build/verse/deprecated.js +4 -4
- package/build/verse/deprecated.js.map +1 -1
- package/build/verse/edit.js +3 -3
- package/build/verse/edit.js.map +1 -1
- package/build/verse/save.js +3 -3
- package/build/verse/save.js.map +1 -1
- package/build/video/deprecated.js +5 -5
- package/build/video/deprecated.js.map +1 -1
- package/build/video/edit-common-settings.js +8 -7
- package/build/video/edit-common-settings.js.map +1 -1
- package/build/video/edit.js +23 -22
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +21 -20
- package/build/video/edit.native.js.map +1 -1
- package/build/video/icon-retry.native.js +4 -4
- package/build/video/icon-retry.native.js.map +1 -1
- package/build/video/save.js +5 -5
- package/build/video/save.js.map +1 -1
- package/build/video/tracks-editor.js +25 -24
- package/build/video/tracks-editor.js.map +1 -1
- package/build/video/tracks.js +2 -2
- package/build/video/tracks.js.map +1 -1
- package/build-module/archives/edit.js +1 -1
- package/build-module/audio/deprecated.js +1 -1
- package/build-module/audio/edit.js +1 -1
- package/build-module/audio/edit.native.js +3 -3
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/audio/save.js +1 -1
- package/build-module/avatar/edit.js +1 -1
- package/build-module/avatar/user-control.js +1 -1
- package/build-module/block/edit-title.native.js +1 -1
- package/build-module/block/edit.js +1 -1
- package/build-module/block/edit.native.js +1 -1
- package/build-module/button/color-background.native.js +1 -1
- package/build-module/button/constants.js +4 -0
- package/build-module/button/constants.js.map +1 -0
- package/build-module/button/deprecated.js +1 -1
- package/build-module/button/edit.js +27 -30
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/edit.native.js +1 -1
- package/build-module/button/get-updated-link-attributes.js +48 -0
- package/build-module/button/get-updated-link-attributes.js.map +1 -0
- package/build-module/button/save.js +1 -1
- package/build-module/buttons/deprecated.js +1 -1
- package/build-module/buttons/edit.js +1 -1
- package/build-module/buttons/edit.native.js +1 -1
- package/build-module/buttons/save.js +1 -1
- package/build-module/calendar/edit.js +1 -1
- package/build-module/categories/edit.js +1 -1
- package/build-module/code/edit.js +1 -1
- package/build-module/code/edit.native.js +1 -1
- package/build-module/code/save.js +1 -1
- package/build-module/column/column-preview.native.js +1 -1
- package/build-module/column/deprecated.js +1 -1
- package/build-module/column/edit.js +1 -1
- package/build-module/column/edit.native.js +1 -1
- package/build-module/column/save.js +1 -1
- package/build-module/columns/deprecated.js +1 -1
- package/build-module/columns/edit.js +1 -1
- package/build-module/columns/edit.native.js +1 -1
- package/build-module/columns/save.js +1 -1
- package/build-module/columns/variations.js +1 -1
- package/build-module/comment-author-avatar/edit.js +1 -1
- package/build-module/comment-author-name/edit.js +1 -1
- package/build-module/comment-content/edit.js +1 -1
- package/build-module/comment-date/edit.js +1 -1
- package/build-module/comment-edit-link/edit.js +1 -1
- package/build-module/comment-reply-link/edit.js +1 -1
- package/build-module/comment-template/edit.js +3 -3
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/save.js +1 -1
- package/build-module/comments/deprecated.js +1 -1
- package/build-module/comments/edit/comments-inspector-controls.js +1 -1
- package/build-module/comments/edit/comments-legacy.js +1 -1
- package/build-module/comments/edit/index.js +1 -1
- package/build-module/comments/edit/placeholder.js +1 -1
- package/build-module/comments/save.js +1 -1
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js +1 -1
- package/build-module/comments-pagination/edit.js +1 -1
- package/build-module/comments-pagination/save.js +1 -1
- package/build-module/comments-pagination-next/edit.js +1 -1
- package/build-module/comments-pagination-numbers/edit.js +1 -1
- package/build-module/comments-pagination-previous/edit.js +1 -1
- package/build-module/comments-title/edit.js +1 -1
- package/build-module/cover/controls.native.js +1 -1
- package/build-module/cover/deprecated.js +190 -13
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +1 -1
- package/build-module/cover/edit/color-utils.js +121 -0
- package/build-module/cover/edit/color-utils.js.map +1 -0
- package/build-module/cover/edit/cover-placeholder.js +1 -1
- package/build-module/cover/edit/index.js +90 -37
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +2 -2
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/cover/edit/resizable-cover-popover.js +1 -1
- package/build-module/cover/edit.native.js +9 -3
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/focal-point-settings-button.native.js +1 -1
- package/build-module/cover/index.js +3 -0
- package/build-module/cover/index.js.map +1 -1
- package/build-module/cover/overlay-color-settings.native.js +1 -1
- package/build-module/cover/save.js +1 -1
- package/build-module/cover/shared.js +33 -132
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/details/edit.js +1 -1
- package/build-module/details/save.js +1 -1
- package/build-module/embed/deprecated.js +1 -1
- package/build-module/embed/edit.js +18 -1
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +18 -1
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-controls.js +1 -1
- package/build-module/embed/embed-controls.native.js +1 -1
- package/build-module/embed/embed-link-settings.native.js +1 -1
- package/build-module/embed/embed-loading.js +1 -1
- package/build-module/embed/embed-loading.native.js +1 -1
- package/build-module/embed/embed-no-preview.native.js +1 -1
- package/build-module/embed/embed-placeholder.js +1 -1
- package/build-module/embed/embed-placeholder.native.js +1 -1
- package/build-module/embed/embed-preview.js +1 -1
- package/build-module/embed/embed-preview.native.js +1 -1
- package/build-module/embed/icons.js +1 -1
- package/build-module/embed/save.js +1 -1
- package/build-module/embed/util.js +1 -1
- package/build-module/embed/wp-embed-preview.js +2 -2
- package/build-module/embed/wp-embed-preview.js.map +1 -1
- package/build-module/embed/wp-embed-preview.native.js +1 -1
- package/build-module/file/deprecated.js +1 -1
- package/build-module/file/edit.js +1 -1
- package/build-module/file/edit.native.js +1 -1
- package/build-module/file/inspector.js +1 -1
- package/build-module/file/save.js +1 -1
- package/build-module/footnotes/edit.js +1 -1
- package/build-module/footnotes/format.js +1 -1
- package/build-module/footnotes/index.js +1 -1
- package/build-module/freeform/convert-to-blocks-button.js +1 -1
- package/build-module/freeform/edit.js +1 -1
- package/build-module/freeform/edit.native.js +1 -1
- package/build-module/freeform/modal.js +1 -1
- package/build-module/freeform/save.js +1 -1
- package/build-module/gallery/deprecated.js +1 -1
- package/build-module/gallery/edit-wrapper.js +1 -1
- package/build-module/gallery/edit.js +1 -1
- package/build-module/gallery/gallery.js +1 -1
- package/build-module/gallery/gallery.native.js +1 -1
- package/build-module/gallery/gap-styles.js +1 -1
- package/build-module/gallery/save.js +1 -1
- package/build-module/gallery/shared-icon.js +1 -1
- package/build-module/gallery/v1/edit.js +1 -1
- package/build-module/gallery/v1/gallery-button.native.js +1 -1
- package/build-module/gallery/v1/gallery-image.js +1 -1
- package/build-module/gallery/v1/gallery-image.native.js +1 -1
- package/build-module/gallery/v1/gallery.js +1 -1
- package/build-module/gallery/v1/gallery.native.js +1 -1
- package/build-module/gallery/v1/save.js +1 -1
- package/build-module/gallery/v1/tiles.native.js +1 -1
- package/build-module/group/deprecated.js +1 -1
- package/build-module/group/edit.js +1 -1
- package/build-module/group/edit.native.js +1 -1
- package/build-module/group/placeholder.js +1 -1
- package/build-module/group/save.js +1 -1
- package/build-module/heading/deprecated.js +1 -1
- package/build-module/heading/edit.js +1 -1
- package/build-module/heading/save.js +1 -1
- package/build-module/home-link/edit.js +1 -1
- package/build-module/home-link/save.js +1 -1
- package/build-module/html/edit.js +13 -7
- package/build-module/html/edit.js.map +1 -1
- package/build-module/html/preview.js +5 -2
- package/build-module/html/preview.js.map +1 -1
- package/build-module/html/save.js +1 -1
- package/build-module/image/deprecated.js +1 -1
- package/build-module/image/edit.js +1 -1
- package/build-module/image/edit.native.js +1 -1
- package/build-module/image/image.js +3 -3
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/save.js +1 -1
- package/build-module/image/view.js +128 -27
- package/build-module/image/view.js.map +1 -1
- package/build-module/latest-comments/edit.js +1 -1
- package/build-module/latest-posts/edit.js +1 -1
- package/build-module/latest-posts/edit.native.js +1 -1
- package/build-module/list/deprecated.js +1 -1
- package/build-module/list/edit.js +1 -1
- package/build-module/list/ordered-list-settings.js +1 -1
- package/build-module/list/save.js +1 -1
- package/build-module/list/tag-name.js +1 -1
- package/build-module/list/tag-name.native.js +1 -1
- package/build-module/list-item/edit.js +1 -1
- package/build-module/list-item/edit.native.js +1 -1
- package/build-module/list-item/icons.native.js +1 -1
- package/build-module/list-item/list-style-type.native.js +1 -1
- package/build-module/list-item/save.js +1 -1
- package/build-module/loginout/edit.js +1 -1
- package/build-module/loginout/index.js +8 -0
- package/build-module/loginout/index.js.map +1 -1
- package/build-module/media-text/deprecated.js +1 -1
- package/build-module/media-text/edit.js +2 -2
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/edit.native.js +1 -1
- package/build-module/media-text/icon-retry.native.js +1 -1
- package/build-module/media-text/media-container.js +1 -1
- package/build-module/media-text/media-container.native.js +1 -1
- package/build-module/media-text/save.js +1 -1
- package/build-module/missing/edit.js +1 -1
- package/build-module/missing/edit.native.js +1 -1
- package/build-module/missing/save.js +1 -1
- package/build-module/more/edit.js +1 -1
- package/build-module/more/edit.native.js +1 -1
- package/build-module/more/save.js +1 -1
- package/build-module/navigation/deprecated.js +1 -1
- package/build-module/navigation/edit/accessible-description.js +1 -1
- package/build-module/navigation/edit/accessible-menu-description.js +1 -1
- package/build-module/navigation/edit/deleted-navigation-warning.js +8 -5
- package/build-module/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build-module/navigation/edit/index.js +4 -3
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +3 -2
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/leaf-more-menu.js +1 -1
- package/build-module/navigation/edit/manage-menus-button.js +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -1
- package/build-module/navigation/edit/navigation-menu-name-control.js +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +1 -1
- package/build-module/navigation/edit/overlay-menu-icon.js +1 -1
- package/build-module/navigation/edit/overlay-menu-preview.js +1 -1
- package/build-module/navigation/edit/placeholder/index.js +1 -1
- package/build-module/navigation/edit/placeholder/placeholder-preview.js +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +1 -1
- package/build-module/navigation/save.js +1 -1
- package/build-module/navigation-link/edit.js +1 -1
- package/build-module/navigation-link/icons.js +1 -1
- package/build-module/navigation-link/index.js +1 -1
- package/build-module/navigation-link/link-ui.js +10 -2
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/navigation-link/save.js +1 -1
- package/build-module/navigation-submenu/edit.js +1 -1
- package/build-module/navigation-submenu/icons.js +1 -1
- package/build-module/navigation-submenu/save.js +1 -1
- package/build-module/nextpage/edit.js +1 -1
- package/build-module/nextpage/edit.native.js +1 -1
- package/build-module/nextpage/save.js +1 -1
- package/build-module/page-list/convert-to-links-modal.js +1 -1
- package/build-module/page-list/edit.js +1 -1
- package/build-module/page-list-item/edit.js +1 -1
- package/build-module/paragraph/deprecated.js +1 -1
- package/build-module/paragraph/edit.js +2 -2
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/edit.native.js +1 -1
- package/build-module/paragraph/save.js +1 -1
- package/build-module/pattern/edit.js +1 -1
- package/build-module/post-author/edit.js +1 -1
- package/build-module/post-author-biography/edit.js +1 -1
- package/build-module/post-author-name/edit.js +1 -1
- package/build-module/post-comment/edit.js +1 -1
- package/build-module/post-comment/save.js +1 -1
- package/build-module/post-comments-count/edit.js +1 -1
- package/build-module/post-comments-form/edit.js +1 -1
- package/build-module/post-comments-form/form.js +1 -1
- package/build-module/post-comments-link/edit.js +1 -1
- package/build-module/post-content/edit.js +1 -1
- package/build-module/post-date/edit.js +1 -1
- package/build-module/post-excerpt/edit.js +1 -1
- package/build-module/post-featured-image/dimension-controls.js +1 -1
- package/build-module/post-featured-image/edit.js +1 -1
- package/build-module/post-featured-image/overlay.js +1 -1
- package/build-module/post-navigation-link/edit.js +1 -1
- package/build-module/post-template/edit.js +1 -1
- package/build-module/post-template/save.js +1 -1
- package/build-module/post-terms/edit.js +1 -1
- package/build-module/post-time-to-read/edit.js +1 -1
- package/build-module/post-time-to-read/icon.js +1 -1
- package/build-module/post-title/edit.js +1 -1
- package/build-module/preformatted/edit.js +1 -1
- package/build-module/preformatted/edit.native.js +1 -1
- package/build-module/preformatted/save.js +1 -1
- package/build-module/pullquote/blockquote.native.js +1 -1
- package/build-module/pullquote/deprecated.js +1 -1
- package/build-module/pullquote/edit.js +1 -1
- package/build-module/pullquote/edit.native.js +1 -1
- package/build-module/pullquote/figure.native.js +1 -1
- package/build-module/pullquote/save.js +1 -1
- package/build-module/query/deprecated.js +1 -1
- package/build-module/query/edit/enhanced-pagination-modal.js +1 -1
- package/build-module/query/edit/index.js +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +1 -1
- package/build-module/query/edit/inspector-controls/create-new-post-link.js +1 -1
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +1 -1
- package/build-module/query/edit/inspector-controls/index.js +1 -1
- package/build-module/query/edit/inspector-controls/order-control.js +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +1 -1
- package/build-module/query/edit/inspector-controls/sticky-control.js +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +1 -1
- package/build-module/query/edit/pattern-selection-modal.js +1 -1
- package/build-module/query/edit/query-content.js +1 -1
- package/build-module/query/edit/query-placeholder.js +1 -1
- package/build-module/query/edit/query-toolbar.js +1 -1
- package/build-module/query/icons.js +1 -1
- package/build-module/query/save.js +1 -1
- package/build-module/query/view.js +5 -5
- package/build-module/query/view.js.map +1 -1
- package/build-module/query-no-results/edit.js +1 -1
- package/build-module/query-no-results/save.js +1 -1
- package/build-module/query-pagination/deprecated.js +1 -1
- package/build-module/query-pagination/edit.js +1 -1
- package/build-module/query-pagination/query-pagination-arrow-controls.js +1 -1
- package/build-module/query-pagination/query-pagination-label-control.js +1 -1
- package/build-module/query-pagination/save.js +1 -1
- package/build-module/query-pagination-next/edit.js +1 -1
- package/build-module/query-pagination-numbers/edit.js +1 -1
- package/build-module/query-pagination-previous/edit.js +1 -1
- package/build-module/query-title/edit.js +1 -1
- package/build-module/quote/deprecated.js +1 -1
- package/build-module/quote/edit.js +1 -1
- package/build-module/quote/save.js +1 -1
- package/build-module/read-more/edit.js +1 -1
- package/build-module/rss/edit.js +3 -2
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/search/edit.js +13 -11
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +1 -1
- package/build-module/search/icons.js +1 -1
- package/build-module/separator/deprecated.js +1 -1
- package/build-module/separator/edit.js +1 -1
- package/build-module/separator/save.js +1 -1
- package/build-module/shortcode/edit.js +1 -1
- package/build-module/shortcode/edit.native.js +1 -1
- package/build-module/shortcode/save.js +1 -1
- package/build-module/site-logo/edit.js +1 -1
- package/build-module/site-tagline/edit.js +1 -1
- package/build-module/site-tagline/icon.js +1 -1
- package/build-module/site-title/edit/index.js +1 -1
- package/build-module/social-link/edit.js +1 -1
- package/build-module/social-link/edit.native.js +1 -1
- package/build-module/social-link/icons/amazon.js +1 -1
- package/build-module/social-link/icons/bandcamp.js +1 -1
- package/build-module/social-link/icons/behance.js +1 -1
- package/build-module/social-link/icons/chain.js +1 -1
- package/build-module/social-link/icons/codepen.js +1 -1
- package/build-module/social-link/icons/deviantart.js +1 -1
- package/build-module/social-link/icons/dribbble.js +1 -1
- package/build-module/social-link/icons/dropbox.js +1 -1
- package/build-module/social-link/icons/etsy.js +1 -1
- package/build-module/social-link/icons/facebook.js +1 -1
- package/build-module/social-link/icons/feed.js +1 -1
- package/build-module/social-link/icons/fivehundredpx.js +1 -1
- package/build-module/social-link/icons/flickr.js +1 -1
- package/build-module/social-link/icons/foursquare.js +1 -1
- package/build-module/social-link/icons/github.js +1 -1
- package/build-module/social-link/icons/goodreads.js +1 -1
- package/build-module/social-link/icons/google.js +1 -1
- package/build-module/social-link/icons/instagram.js +1 -1
- package/build-module/social-link/icons/lastfm.js +1 -1
- package/build-module/social-link/icons/linkedin.js +1 -1
- package/build-module/social-link/icons/mail.js +1 -1
- package/build-module/social-link/icons/mastodon.js +1 -1
- package/build-module/social-link/icons/medium.js +1 -1
- package/build-module/social-link/icons/meetup.js +1 -1
- package/build-module/social-link/icons/patreon.js +1 -1
- package/build-module/social-link/icons/pinterest.js +1 -1
- package/build-module/social-link/icons/pocket.js +1 -1
- package/build-module/social-link/icons/reddit.js +1 -1
- package/build-module/social-link/icons/skype.js +1 -1
- package/build-module/social-link/icons/snapchat.js +1 -1
- package/build-module/social-link/icons/soundcloud.js +1 -1
- package/build-module/social-link/icons/spotify.js +1 -1
- package/build-module/social-link/icons/telegram.js +1 -1
- package/build-module/social-link/icons/threads.js +1 -1
- package/build-module/social-link/icons/tiktok.js +1 -1
- package/build-module/social-link/icons/tumblr.js +1 -1
- package/build-module/social-link/icons/twitch.js +1 -1
- package/build-module/social-link/icons/twitter.js +1 -1
- package/build-module/social-link/icons/vimeo.js +1 -1
- package/build-module/social-link/icons/vk.js +1 -1
- package/build-module/social-link/icons/whatsapp.js +1 -1
- package/build-module/social-link/icons/wordpress.js +1 -1
- package/build-module/social-link/icons/x.js +1 -1
- package/build-module/social-link/icons/yelp.js +1 -1
- package/build-module/social-link/icons/youtube.js +1 -1
- package/build-module/social-link/social-list.js +1 -1
- package/build-module/social-link/social-list.js.map +1 -1
- package/build-module/social-links/deprecated.js +1 -1
- package/build-module/social-links/edit.js +1 -1
- package/build-module/social-links/edit.native.js +1 -1
- package/build-module/social-links/save.js +1 -1
- package/build-module/spacer/controls.js +1 -1
- package/build-module/spacer/controls.native.js +1 -1
- package/build-module/spacer/deprecated.js +1 -1
- package/build-module/spacer/edit.js +1 -1
- package/build-module/spacer/edit.native.js +1 -1
- package/build-module/spacer/save.js +1 -1
- package/build-module/spacer/save.native.js +1 -1
- package/build-module/table/deprecated.js +1 -1
- package/build-module/table/edit.js +1 -1
- package/build-module/table/save.js +1 -1
- package/build-module/table-of-contents/edit.js +26 -6
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/icon.js +1 -1
- package/build-module/table-of-contents/list.js +11 -5
- package/build-module/table-of-contents/list.js.map +1 -1
- package/build-module/table-of-contents/save.js +1 -1
- package/build-module/tag-cloud/edit.js +1 -1
- package/build-module/template-part/edit/advanced-controls.js +1 -1
- package/build-module/template-part/edit/import-controls.js +3 -2
- package/build-module/template-part/edit/import-controls.js.map +1 -1
- package/build-module/template-part/edit/index.js +1 -1
- package/build-module/template-part/edit/inner-blocks.js +1 -1
- package/build-module/template-part/edit/placeholder.js +1 -1
- package/build-module/template-part/edit/selection-modal.js +1 -1
- package/build-module/template-part/edit/title-modal.js +1 -1
- package/build-module/term-description/edit.js +1 -1
- package/build-module/text-columns/edit.js +1 -1
- package/build-module/text-columns/save.js +1 -1
- package/build-module/verse/deprecated.js +1 -1
- package/build-module/verse/edit.js +1 -1
- package/build-module/verse/save.js +1 -1
- package/build-module/video/deprecated.js +1 -1
- package/build-module/video/edit-common-settings.js +1 -1
- package/build-module/video/edit.js +1 -1
- package/build-module/video/edit.native.js +2 -2
- package/build-module/video/edit.native.js.map +1 -1
- package/build-module/video/icon-retry.native.js +1 -1
- package/build-module/video/save.js +1 -1
- package/build-module/video/tracks-editor.js +1 -1
- package/build-module/video/tracks.js +1 -1
- package/build-style/common-rtl.css +2 -4
- package/build-style/common.css +2 -4
- package/build-style/cover/style-rtl.css +2 -1
- package/build-style/cover/style.css +2 -1
- package/build-style/editor-rtl.css +1 -0
- package/build-style/editor.css +1 -0
- package/build-style/gallery/style-rtl.css +4 -2
- package/build-style/gallery/style.css +4 -2
- package/build-style/image/style-rtl.css +2 -6
- package/build-style/image/style.css +2 -6
- package/build-style/navigation-link/style-rtl.css +0 -1
- package/build-style/navigation-link/style.css +0 -1
- package/build-style/post-featured-image/style-rtl.css +3 -0
- package/build-style/post-featured-image/style.css +3 -0
- package/build-style/post-template/style-rtl.css +19 -0
- package/build-style/post-template/style.css +19 -0
- package/build-style/query-pagination/style-rtl.css +2 -4
- package/build-style/query-pagination/style.css +2 -4
- package/build-style/search/editor-rtl.css +1 -0
- package/build-style/search/editor.css +1 -0
- package/build-style/search/style-rtl.css +4 -2
- package/build-style/search/style.css +4 -2
- package/build-style/style-rtl.css +40 -20
- package/build-style/style.css +40 -20
- package/build-style/video/style-rtl.css +2 -1
- package/build-style/video/style.css +2 -1
- package/build-types/table-of-contents/list.d.ts +6 -4
- package/build-types/table-of-contents/list.d.ts.map +1 -1
- package/package.json +32 -32
- package/src/audio/edit.native.js +2 -2
- package/src/audio/test/edit.native.js +28 -14
- package/src/button/constants.js +3 -0
- package/src/button/edit.js +30 -29
- package/src/button/get-updated-link-attributes.js +54 -0
- package/src/button/test/get-updated-link-attributes.js +113 -0
- package/src/categories/index.php +2 -4
- package/src/comment-template/edit.js +2 -2
- package/src/cover/block.json +3 -0
- package/src/cover/deprecated.js +236 -12
- package/src/cover/edit/color-utils.js +122 -0
- package/src/cover/edit/index.js +132 -51
- package/src/cover/edit/inspector-controls.js +1 -1
- package/src/cover/edit.native.js +9 -2
- package/src/cover/shared.js +36 -129
- package/src/cover/test/__snapshots__/edit.native.js.snap +18 -10
- package/src/cover/test/__snapshots__/transforms.native.js.snap +4 -4
- package/src/cover/test/edit.js +1 -1
- package/src/cover/test/edit.native.js +38 -0
- package/src/embed/edit.js +15 -0
- package/src/embed/edit.native.js +15 -0
- package/src/embed/test/index.native.js +6 -1
- package/src/embed/wp-embed-preview.js +1 -1
- package/src/footnotes/block.json +1 -1
- package/src/footnotes/index.php +13 -179
- package/src/html/edit.js +26 -6
- package/src/html/preview.js +7 -1
- package/src/image/image.js +2 -2
- package/src/image/index.php +9 -2
- package/src/image/style.scss +2 -6
- package/src/image/view.js +137 -44
- package/src/loginout/block.json +8 -0
- package/src/media-text/edit.js +1 -1
- package/src/navigation/edit/deleted-navigation-warning.js +9 -4
- package/src/navigation/edit/index.js +26 -17
- package/src/navigation/edit/inner-blocks.js +1 -0
- package/src/navigation-link/link-ui.js +9 -1
- package/src/navigation-link/style.scss +0 -1
- package/src/paragraph/edit.js +1 -1
- package/src/post-featured-image/style.scss +4 -0
- package/src/post-template/style.scss +20 -0
- package/src/post-title/index.php +1 -1
- package/src/query/view.js +5 -5
- package/src/rss/edit.js +6 -2
- package/src/search/edit.js +16 -10
- package/src/search/editor.scss +1 -0
- package/src/search/style.scss +5 -1
- package/src/social-link/social-list.js +1 -1
- package/src/table-of-contents/edit.js +27 -3
- package/src/table-of-contents/list.tsx +27 -4
- package/src/template-part/edit/import-controls.js +2 -1
- package/src/video/edit.native.js +1 -1
- package/src/video/test/edit.native.js +29 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_i18n","_components","_blockEditor","_icons","_data","_url","ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","__","value","TrackList","tracks","onEditPress","content","length","createElement","className","map","track","index","__experimentalHStack","key","Button","variant","onClick","sprintf","MenuGroup","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","getFilename","NavigableMenu","__experimentalVStack","spacing","__experimentalGrid","columns","gap","TextControl","__nextHasNoMarginBottom","autoFocus","newLabel","help","newSrcLang","SelectControl","options","newKind","changes","hasChanges","undefined","isDestructive","TracksEditor","mediaUpload","useSelect","select","blockEditorStore","getSettings","trackBeingEdited","setTrackBeingEdited","useState","Dropdown","contentClassName","renderToggle","isOpen","onToggle","ToolbarGroup","ToolbarButton","showTooltip","renderContent","newTrack","newTracks","filter","_track","Fragment","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 { __, 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 } 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\tlet content;\n\tif ( tracks.length === 0 ) {\n\t\tcontent = (\n\t\t\t<p className=\"block-library-video-tracks-editor__tracks-informative-message\">\n\t\t\t\t{ __(\n\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) }\n\t\t\t</p>\n\t\t);\n\t} else {\n\t\tcontent = tracks.map( ( track, index ) => {\n\t\t\treturn (\n\t\t\t\t<HStack\n\t\t\t\t\tkey={ index }\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__track-list-track\"\n\t\t\t\t>\n\t\t\t\t\t<span>{ track.label } </span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => onEditPress( index ) }\n\t\t\t\t\t\taria-label={ sprintf(\n\t\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\t__( 'Edit %s' ),\n\t\t\t\t\t\t\ttrack.label\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t);\n\t\t} );\n\t}\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<NavigableMenu>\n\t\t\t<VStack\n\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor\"\n\t\t\t\tspacing=\"4\"\n\t\t\t>\n\t\t\t\t<span className=\"block-library-video-tracks-editor__single-track-editor-edit-track-label\">\n\t\t\t\t\t{ __( 'Edit track' ) }\n\t\t\t\t</span>\n\t\t\t\t<span>\n\t\t\t\t\t{ __( 'File' ) }: <b>{ fileName }</b>\n\t\t\t\t</span>\n\t\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t/* eslint-enable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tlabel: newLabel,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\thelp={ __( 'Title of track' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tonChange={ ( newSrcLang ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tsrcLang: newSrcLang,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Source language' ) }\n\t\t\t\t\t\tvalue={ srcLang }\n\t\t\t\t\t\thelp={ __( 'Language tag (en, fr, etc.)' ) }\n\t\t\t\t\t/>\n\t\t\t\t</Grid>\n\t\t\t\t<VStack spacing=\"8\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\t\tvalue={ kind }\n\t\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\t\tonChange={ ( newKind ) => {\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tkind: newKind,\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<HStack className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t\t...changes,\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\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Close' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Remove track' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</VStack>\n\t\t</NavigableMenu>\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\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\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Text tracks' ) }\n\t\t\t\t\t</ToolbarButton>\n\t\t\t\t</ToolbarGroup>\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\t\t\t\treturn (\n\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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"}
|
|
1
|
+
{"version":3,"names":["_i18n","require","_components","_blockEditor","_icons","_data","_element","_url","ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","__","value","TrackList","tracks","onEditPress","content","length","_react","createElement","className","map","track","index","__experimentalHStack","key","Button","variant","onClick","sprintf","MenuGroup","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","getFilename","NavigableMenu","__experimentalVStack","spacing","__experimentalGrid","columns","gap","TextControl","__nextHasNoMarginBottom","autoFocus","newLabel","help","newSrcLang","SelectControl","options","newKind","changes","hasChanges","undefined","isDestructive","TracksEditor","mediaUpload","useSelect","select","blockEditorStore","getSettings","trackBeingEdited","setTrackBeingEdited","useState","Dropdown","contentClassName","renderToggle","isOpen","onToggle","ToolbarGroup","ToolbarButton","showTooltip","renderContent","newTrack","newTracks","filter","_track","Fragment","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 { __, 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 } 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\tlet content;\n\tif ( tracks.length === 0 ) {\n\t\tcontent = (\n\t\t\t<p className=\"block-library-video-tracks-editor__tracks-informative-message\">\n\t\t\t\t{ __(\n\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) }\n\t\t\t</p>\n\t\t);\n\t} else {\n\t\tcontent = tracks.map( ( track, index ) => {\n\t\t\treturn (\n\t\t\t\t<HStack\n\t\t\t\t\tkey={ index }\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__track-list-track\"\n\t\t\t\t>\n\t\t\t\t\t<span>{ track.label } </span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => onEditPress( index ) }\n\t\t\t\t\t\taria-label={ sprintf(\n\t\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\t__( 'Edit %s' ),\n\t\t\t\t\t\t\ttrack.label\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t);\n\t\t} );\n\t}\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<NavigableMenu>\n\t\t\t<VStack\n\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor\"\n\t\t\t\tspacing=\"4\"\n\t\t\t>\n\t\t\t\t<span className=\"block-library-video-tracks-editor__single-track-editor-edit-track-label\">\n\t\t\t\t\t{ __( 'Edit track' ) }\n\t\t\t\t</span>\n\t\t\t\t<span>\n\t\t\t\t\t{ __( 'File' ) }: <b>{ fileName }</b>\n\t\t\t\t</span>\n\t\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t/* eslint-enable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tlabel: newLabel,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\thelp={ __( 'Title of track' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tonChange={ ( newSrcLang ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tsrcLang: newSrcLang,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Source language' ) }\n\t\t\t\t\t\tvalue={ srcLang }\n\t\t\t\t\t\thelp={ __( 'Language tag (en, fr, etc.)' ) }\n\t\t\t\t\t/>\n\t\t\t\t</Grid>\n\t\t\t\t<VStack spacing=\"8\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\t\tvalue={ kind }\n\t\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\t\tonChange={ ( newKind ) => {\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tkind: newKind,\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<HStack className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t\t...changes,\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\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Close' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Remove track' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</VStack>\n\t\t</NavigableMenu>\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\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\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Text tracks' ) }\n\t\t\t\t\t</ToolbarButton>\n\t\t\t\t</ToolbarGroup>\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\t\t\t\treturn (\n\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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"}
|
package/build/video/tracks.js
CHANGED
|
@@ -4,12 +4,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = Tracks;
|
|
7
|
-
var
|
|
7
|
+
var _react = require("react");
|
|
8
8
|
function Tracks({
|
|
9
9
|
tracks = []
|
|
10
10
|
}) {
|
|
11
11
|
return tracks.map(track => {
|
|
12
|
-
return (0,
|
|
12
|
+
return (0, _react.createElement)("track", {
|
|
13
13
|
key: track.src,
|
|
14
14
|
...track
|
|
15
15
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Tracks","tracks","map","track","
|
|
1
|
+
{"version":3,"names":["Tracks","tracks","map","track","_react","createElement","key","src"],"sources":["@wordpress/block-library/src/video/tracks.js"],"sourcesContent":["export default function Tracks( { tracks = [] } ) {\n\treturn tracks.map( ( track ) => {\n\t\treturn <track key={ track.src } { ...track } />;\n\t} );\n}\n"],"mappings":";;;;;;;AAAe,SAASA,MAAMA,CAAE;EAAEC,MAAM,GAAG;AAAG,CAAC,EAAG;EACjD,OAAOA,MAAM,CAACC,GAAG,CAAIC,KAAK,IAAM;IAC/B,OAAO,IAAAC,MAAA,CAAAC,aAAA;MAAOC,GAAG,EAAGH,KAAK,CAACI,GAAK;MAAA,GAAMJ;IAAK,CAAI,CAAC;EAChD,CAAE,CAAC;AACJ"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createElement, Fragment } from "
|
|
1
|
+
import { createElement, Fragment } from "react";
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
@@ -15,7 +15,7 @@ import { audio as icon, replace } from '@wordpress/icons';
|
|
|
15
15
|
import { useState } from '@wordpress/element';
|
|
16
16
|
import { useDispatch, useSelect } from '@wordpress/data';
|
|
17
17
|
import { store as noticesStore } from '@wordpress/notices';
|
|
18
|
-
import { isURL } from '@wordpress/url';
|
|
18
|
+
import { isURL, getProtocol } from '@wordpress/url';
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* Internal dependencies
|
|
@@ -65,7 +65,7 @@ function AudioEdit({
|
|
|
65
65
|
}
|
|
66
66
|
function onSelectURL(newSrc) {
|
|
67
67
|
if (newSrc !== src) {
|
|
68
|
-
if (isURL(newSrc)) {
|
|
68
|
+
if (isURL(newSrc) && /^https?:/.test(getProtocol(newSrc))) {
|
|
69
69
|
setAttributes({
|
|
70
70
|
src: newSrc,
|
|
71
71
|
id: undefined
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TouchableWithoutFeedback","View","PanelBody","SelectControl","ToggleControl","ToolbarButton","ToolbarGroup","AudioPlayer","BlockCaption","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaUpload","MediaUploadProgress","store","blockEditorStore","__","_x","sprintf","audio","icon","replace","useState","useDispatch","useSelect","noticesStore","isURL","styles","ALLOWED_MEDIA_TYPES","AudioEdit","attributes","setAttributes","isSelected","insertBlocksAfter","onFocus","onBlur","clientId","id","autoplay","loop","preload","src","isCaptionSelected","setIsCaptionSelected","onFileChange","mediaId","mediaUrl","wasBlockJustInserted","select","createErrorNotice","toggleAttribute","attribute","newValue","onSelectURL","newSrc","undefined","onSelectAudio","media","url","onAudioPress","onFocusCaption","createElement","onSelect","accept","allowedTypes","value","autoOpenMediaUpload","getBlockControls","open","title","onClick","getBlockUI","getMediaOptions","onFinishMediaUploadWithSuccess","onMediaUploadStateReset","containerStyle","progressContainer","progressBarStyle","progressBar","spinnerStyle","spinner","renderContent","isUploadInProgress","isUploadFailed","retryMessage","Fragment","accessible","onPress","disabled","label","onChange","checked","help","options","hideCancelButton","isReplacingMedia","render","accessibilityLabelCreator","caption"],"sources":["@wordpress/block-library/src/audio/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { View } from '@wordpress/primitives';\nimport {\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tToolbarButton,\n\tToolbarGroup,\n\tAudioPlayer,\n} from '@wordpress/components';\nimport {\n\tBlockCaption,\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { audio as icon, replace } from '@wordpress/icons';\nimport { useState } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\nconst ALLOWED_MEDIA_TYPES = [ 'audio' ];\n\nfunction AudioEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tonFocus,\n\tonBlur,\n\tclientId,\n} ) {\n\tconst { id, autoplay, loop, preload, src } = attributes;\n\n\tconst [ isCaptionSelected, setIsCaptionSelected ] = useState( false );\n\n\tconst onFileChange = ( { mediaId, mediaUrl } ) => {\n\t\tsetAttributes( { id: mediaId, src: mediaUrl } );\n\t};\n\n\tconst { wasBlockJustInserted } = useSelect( ( select ) => ( {\n\t\twasBlockJustInserted: select( blockEditorStore ).wasBlockJustInserted(\n\t\t\tclientId,\n\t\t\t'inserter_menu'\n\t\t),\n\t} ) );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tfunction toggleAttribute( attribute ) {\n\t\treturn ( newValue ) => {\n\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t};\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\tif ( isURL( newSrc ) ) {\n\t\t\t\tsetAttributes( { src: newSrc, id: undefined } );\n\t\t\t} else {\n\t\t\t\tcreateErrorNotice( __( 'Invalid URL. Audio file not found.' ) );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onSelectAudio( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error and we should continue in the editing state\n\t\t\t// previous attributes should be removed because they may be temporary blob urls.\n\t\t\tsetAttributes( { src: undefined, id: undefined } );\n\t\t\treturn;\n\t\t}\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media, then switches off the editing UI.\n\t\tsetAttributes( { src: media.url, id: media.id } );\n\t}\n\n\tfunction onAudioPress() {\n\t\tsetIsCaptionSelected( false );\n\t}\n\n\tfunction onFocusCaption() {\n\t\tif ( ! isCaptionSelected ) {\n\t\t\tsetIsCaptionSelected( true );\n\t\t}\n\t}\n\n\tif ( ! src ) {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"audio/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\tautoOpenMediaUpload={ isSelected && wasBlockJustInserted }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\tfunction getBlockControls( open ) {\n\t\treturn (\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Replace audio' ) }\n\t\t\t\t\t\ticon={ replace }\n\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t);\n\t}\n\n\tfunction getBlockUI( open, getMediaOptions ) {\n\t\treturn (\n\t\t\t<MediaUploadProgress\n\t\t\t\tmediaId={ id }\n\t\t\t\tonFinishMediaUploadWithSuccess={ onFileChange }\n\t\t\t\tonMediaUploadStateReset={ onFileChange }\n\t\t\t\tcontainerStyle={ styles.progressContainer }\n\t\t\t\tprogressBarStyle={ styles.progressBar }\n\t\t\t\tspinnerStyle={ styles.spinner }\n\t\t\t\trenderContent={ ( {\n\t\t\t\t\tisUploadInProgress,\n\t\t\t\t\tisUploadFailed,\n\t\t\t\t\tretryMessage,\n\t\t\t\t} ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isCaptionSelected &&\n\t\t\t\t\t\t\t\t! isUploadInProgress &&\n\t\t\t\t\t\t\t\tgetBlockControls( open ) }\n\t\t\t\t\t\t\t{ getMediaOptions() }\n\t\t\t\t\t\t\t<AudioPlayer\n\t\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\t\tisUploadFailed={ isUploadFailed }\n\t\t\t\t\t\t\t\tretryMessage={ retryMessage }\n\t\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessible={ ! isSelected }\n\t\t\tonPress={ onAudioPress }\n\t\t\tdisabled={ ! isSelected }\n\t\t>\n\t\t\t<View>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'autoplay' ) }\n\t\t\t\t\t\t\tchecked={ autoplay }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Autoplay may cause usability issues for some users.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'loop' ) }\n\t\t\t\t\t\t\tchecked={ loop }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Preload',\n\t\t\t\t\t\t\t\t'noun; Audio block parameter'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ preload || '' }\n\t\t\t\t\t\t\t// `undefined` is required for the preload attribute to be unset.\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tpreload: value || undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t{ value: '', label: __( 'Browser default' ) },\n\t\t\t\t\t\t\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t\t\t\t\t\t\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: 'none',\n\t\t\t\t\t\t\t\t\tlabel: _x( 'None', '\"Preload\" value' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<MediaUpload\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tisReplacingMedia={ true }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\t\treturn getBlockUI( open, getMediaOptions );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<BlockCaption\n\t\t\t\t\taccessible={ true }\n\t\t\t\t\taccessibilityLabelCreator={ ( caption ) =>\n\t\t\t\t\t\t! caption\n\t\t\t\t\t\t\t? /* translators: accessibility text. Empty Audio caption. */\n\t\t\t\t\t\t\t __( 'Audio caption. Empty' )\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: accessibility text. %s: Audio caption. */\n\t\t\t\t\t\t\t\t\t__( 'Audio caption. %s' ),\n\t\t\t\t\t\t\t\t\tcaption\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSelected={ isCaptionSelected }\n\t\t\t\t\tonFocus={ onFocusCaption }\n\t\t\t\t\tonBlur={ onBlur }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n}\nexport default AudioEdit;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["TouchableWithoutFeedback","View","PanelBody","SelectControl","ToggleControl","ToolbarButton","ToolbarGroup","AudioPlayer","BlockCaption","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaUpload","MediaUploadProgress","store","blockEditorStore","__","_x","sprintf","audio","icon","replace","useState","useDispatch","useSelect","noticesStore","isURL","getProtocol","styles","ALLOWED_MEDIA_TYPES","AudioEdit","attributes","setAttributes","isSelected","insertBlocksAfter","onFocus","onBlur","clientId","id","autoplay","loop","preload","src","isCaptionSelected","setIsCaptionSelected","onFileChange","mediaId","mediaUrl","wasBlockJustInserted","select","createErrorNotice","toggleAttribute","attribute","newValue","onSelectURL","newSrc","test","undefined","onSelectAudio","media","url","onAudioPress","onFocusCaption","createElement","onSelect","accept","allowedTypes","value","autoOpenMediaUpload","getBlockControls","open","title","onClick","getBlockUI","getMediaOptions","onFinishMediaUploadWithSuccess","onMediaUploadStateReset","containerStyle","progressContainer","progressBarStyle","progressBar","spinnerStyle","spinner","renderContent","isUploadInProgress","isUploadFailed","retryMessage","Fragment","accessible","onPress","disabled","label","onChange","checked","help","options","hideCancelButton","isReplacingMedia","render","accessibilityLabelCreator","caption"],"sources":["@wordpress/block-library/src/audio/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { View } from '@wordpress/primitives';\nimport {\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tToolbarButton,\n\tToolbarGroup,\n\tAudioPlayer,\n} from '@wordpress/components';\nimport {\n\tBlockCaption,\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { audio as icon, replace } from '@wordpress/icons';\nimport { useState } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { isURL, getProtocol } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\nconst ALLOWED_MEDIA_TYPES = [ 'audio' ];\n\nfunction AudioEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tonFocus,\n\tonBlur,\n\tclientId,\n} ) {\n\tconst { id, autoplay, loop, preload, src } = attributes;\n\n\tconst [ isCaptionSelected, setIsCaptionSelected ] = useState( false );\n\n\tconst onFileChange = ( { mediaId, mediaUrl } ) => {\n\t\tsetAttributes( { id: mediaId, src: mediaUrl } );\n\t};\n\n\tconst { wasBlockJustInserted } = useSelect( ( select ) => ( {\n\t\twasBlockJustInserted: select( blockEditorStore ).wasBlockJustInserted(\n\t\t\tclientId,\n\t\t\t'inserter_menu'\n\t\t),\n\t} ) );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tfunction toggleAttribute( attribute ) {\n\t\treturn ( newValue ) => {\n\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t};\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\tif ( isURL( newSrc ) && /^https?:/.test( getProtocol( newSrc ) ) ) {\n\t\t\t\tsetAttributes( { src: newSrc, id: undefined } );\n\t\t\t} else {\n\t\t\t\tcreateErrorNotice( __( 'Invalid URL. Audio file not found.' ) );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onSelectAudio( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error and we should continue in the editing state\n\t\t\t// previous attributes should be removed because they may be temporary blob urls.\n\t\t\tsetAttributes( { src: undefined, id: undefined } );\n\t\t\treturn;\n\t\t}\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media, then switches off the editing UI.\n\t\tsetAttributes( { src: media.url, id: media.id } );\n\t}\n\n\tfunction onAudioPress() {\n\t\tsetIsCaptionSelected( false );\n\t}\n\n\tfunction onFocusCaption() {\n\t\tif ( ! isCaptionSelected ) {\n\t\t\tsetIsCaptionSelected( true );\n\t\t}\n\t}\n\n\tif ( ! src ) {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"audio/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\tautoOpenMediaUpload={ isSelected && wasBlockJustInserted }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\tfunction getBlockControls( open ) {\n\t\treturn (\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Replace audio' ) }\n\t\t\t\t\t\ticon={ replace }\n\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t);\n\t}\n\n\tfunction getBlockUI( open, getMediaOptions ) {\n\t\treturn (\n\t\t\t<MediaUploadProgress\n\t\t\t\tmediaId={ id }\n\t\t\t\tonFinishMediaUploadWithSuccess={ onFileChange }\n\t\t\t\tonMediaUploadStateReset={ onFileChange }\n\t\t\t\tcontainerStyle={ styles.progressContainer }\n\t\t\t\tprogressBarStyle={ styles.progressBar }\n\t\t\t\tspinnerStyle={ styles.spinner }\n\t\t\t\trenderContent={ ( {\n\t\t\t\t\tisUploadInProgress,\n\t\t\t\t\tisUploadFailed,\n\t\t\t\t\tretryMessage,\n\t\t\t\t} ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isCaptionSelected &&\n\t\t\t\t\t\t\t\t! isUploadInProgress &&\n\t\t\t\t\t\t\t\tgetBlockControls( open ) }\n\t\t\t\t\t\t\t{ getMediaOptions() }\n\t\t\t\t\t\t\t<AudioPlayer\n\t\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\t\tisUploadFailed={ isUploadFailed }\n\t\t\t\t\t\t\t\tretryMessage={ retryMessage }\n\t\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessible={ ! isSelected }\n\t\t\tonPress={ onAudioPress }\n\t\t\tdisabled={ ! isSelected }\n\t\t>\n\t\t\t<View>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'autoplay' ) }\n\t\t\t\t\t\t\tchecked={ autoplay }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Autoplay may cause usability issues for some users.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'loop' ) }\n\t\t\t\t\t\t\tchecked={ loop }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Preload',\n\t\t\t\t\t\t\t\t'noun; Audio block parameter'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ preload || '' }\n\t\t\t\t\t\t\t// `undefined` is required for the preload attribute to be unset.\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tpreload: value || undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t{ value: '', label: __( 'Browser default' ) },\n\t\t\t\t\t\t\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t\t\t\t\t\t\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: 'none',\n\t\t\t\t\t\t\t\t\tlabel: _x( 'None', '\"Preload\" value' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<MediaUpload\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tisReplacingMedia={ true }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\t\treturn getBlockUI( open, getMediaOptions );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<BlockCaption\n\t\t\t\t\taccessible={ true }\n\t\t\t\t\taccessibilityLabelCreator={ ( caption ) =>\n\t\t\t\t\t\t! caption\n\t\t\t\t\t\t\t? /* translators: accessibility text. Empty Audio caption. */\n\t\t\t\t\t\t\t __( 'Audio caption. Empty' )\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: accessibility text. %s: Audio caption. */\n\t\t\t\t\t\t\t\t\t__( 'Audio caption. %s' ),\n\t\t\t\t\t\t\t\t\tcaption\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSelected={ isCaptionSelected }\n\t\t\t\t\tonFocus={ onFocusCaption }\n\t\t\t\t\tonBlur={ onBlur }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n}\nexport default AudioEdit;\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NEW_TAB_REL","NEW_TAB_TARGET","NOFOLLOW_REL"],"sources":["@wordpress/block-library/src/button/constants.js"],"sourcesContent":["export const NEW_TAB_REL = 'noreferrer noopener';\nexport const NEW_TAB_TARGET = '_blank';\nexport const NOFOLLOW_REL = 'nofollow';\n"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG,qBAAqB;AAChD,OAAO,MAAMC,cAAc,GAAG,QAAQ;AACtC,OAAO,MAAMC,YAAY,GAAG,UAAU"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
import { createElement, Fragment } from "
|
|
1
|
+
import { createElement, Fragment } from "react";
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
5
|
import classnames from 'classnames';
|
|
6
6
|
|
|
7
|
+
/**
|
|
8
|
+
* Internal dependencies
|
|
9
|
+
*/
|
|
10
|
+
import { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';
|
|
11
|
+
import { getUpdatedLinkAttributes } from './get-updated-link-attributes';
|
|
12
|
+
|
|
7
13
|
/**
|
|
8
14
|
* WordPress dependencies
|
|
9
15
|
*/
|
|
@@ -15,8 +21,10 @@ import { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';
|
|
|
15
21
|
import { link, linkOff } from '@wordpress/icons';
|
|
16
22
|
import { createBlock } from '@wordpress/blocks';
|
|
17
23
|
import { useMergeRefs } from '@wordpress/compose';
|
|
18
|
-
|
|
19
|
-
|
|
24
|
+
const LINK_SETTINGS = [...LinkControl.DEFAULT_LINK_SETTINGS, {
|
|
25
|
+
id: 'nofollow',
|
|
26
|
+
title: __('Mark as nofollow')
|
|
27
|
+
}];
|
|
20
28
|
function WidthPanel({
|
|
21
29
|
selectedWidth,
|
|
22
30
|
setAttributes
|
|
@@ -64,19 +72,6 @@ function ButtonEdit(props) {
|
|
|
64
72
|
width
|
|
65
73
|
} = attributes;
|
|
66
74
|
const TagName = tagName || 'a';
|
|
67
|
-
function onToggleOpenInNewTab(value) {
|
|
68
|
-
const newLinkTarget = value ? '_blank' : undefined;
|
|
69
|
-
let updatedRel = rel;
|
|
70
|
-
if (newLinkTarget && !rel) {
|
|
71
|
-
updatedRel = NEW_TAB_REL;
|
|
72
|
-
} else if (!newLinkTarget && rel === NEW_TAB_REL) {
|
|
73
|
-
updatedRel = undefined;
|
|
74
|
-
}
|
|
75
|
-
setAttributes({
|
|
76
|
-
linkTarget: newLinkTarget,
|
|
77
|
-
rel: updatedRel
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
75
|
function setButtonText(newText) {
|
|
81
76
|
// Remove anchor tags from button text content.
|
|
82
77
|
setAttributes({
|
|
@@ -106,7 +101,8 @@ function ButtonEdit(props) {
|
|
|
106
101
|
});
|
|
107
102
|
const [isEditingURL, setIsEditingURL] = useState(false);
|
|
108
103
|
const isURLSet = !!url;
|
|
109
|
-
const opensInNewTab = linkTarget ===
|
|
104
|
+
const opensInNewTab = linkTarget === NEW_TAB_TARGET;
|
|
105
|
+
const nofollow = !!rel?.includes(NOFOLLOW_REL);
|
|
110
106
|
const isLinkTag = 'a' === TagName;
|
|
111
107
|
function startEditing(event) {
|
|
112
108
|
event.preventDefault();
|
|
@@ -130,8 +126,9 @@ function ButtonEdit(props) {
|
|
|
130
126
|
// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.
|
|
131
127
|
const linkValue = useMemo(() => ({
|
|
132
128
|
url,
|
|
133
|
-
opensInNewTab
|
|
134
|
-
|
|
129
|
+
opensInNewTab,
|
|
130
|
+
nofollow
|
|
131
|
+
}), [url, opensInNewTab, nofollow]);
|
|
135
132
|
return createElement(Fragment, null, createElement("div", {
|
|
136
133
|
...blockProps,
|
|
137
134
|
className: classnames(blockProps.className, {
|
|
@@ -198,21 +195,21 @@ function ButtonEdit(props) {
|
|
|
198
195
|
}, createElement(LinkControl, {
|
|
199
196
|
value: linkValue,
|
|
200
197
|
onChange: ({
|
|
201
|
-
url: newURL
|
|
202
|
-
opensInNewTab: newOpensInNewTab
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
},
|
|
198
|
+
url: newURL,
|
|
199
|
+
opensInNewTab: newOpensInNewTab,
|
|
200
|
+
nofollow: newNofollow
|
|
201
|
+
}) => setAttributes(getUpdatedLinkAttributes({
|
|
202
|
+
rel,
|
|
203
|
+
url: newURL,
|
|
204
|
+
opensInNewTab: newOpensInNewTab,
|
|
205
|
+
nofollow: newNofollow
|
|
206
|
+
})),
|
|
211
207
|
onRemove: () => {
|
|
212
208
|
unlink();
|
|
213
209
|
richTextRef.current?.focus();
|
|
214
210
|
},
|
|
215
|
-
forceIsEditingLink: isEditingURL
|
|
211
|
+
forceIsEditingLink: isEditingURL,
|
|
212
|
+
settings: LINK_SETTINGS
|
|
216
213
|
})), createElement(InspectorControls, null, createElement(WidthPanel, {
|
|
217
214
|
selectedWidth: width,
|
|
218
215
|
setAttributes: setAttributes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","__","useEffect","useState","useRef","useMemo","Button","ButtonGroup","PanelBody","TextControl","ToolbarButton","Popover","AlignmentControl","BlockControls","InspectorControls","RichText","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalUseColorProps","useColorProps","__experimentalGetSpacingClassesAndStyles","useSpacingProps","__experimentalLinkControl","LinkControl","__experimentalGetElementClassName","displayShortcut","isKeyboardEvent","link","linkOff","createBlock","useMergeRefs","prependHTTP","NEW_TAB_REL","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","createElement","title","map","widthValue","key","size","variant","onClick","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","TagName","onToggleOpenInNewTab","value","newLinkTarget","updatedRel","setButtonText","newText","replace","onKeyDown","event","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","popoverAnchor","setPopoverAnchor","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","isLinkTag","preventDefault","linkValue","Fragment","fontSize","onChange","withoutInteractiveFormatting","border","radius","onSplit","onMerge","identifier","group","nextAlign","name","icon","shortcut","isActive","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","newURL","newOpensInNewTab","onRemove","forceIsEditingLink","__nextHasNoMarginBottom","label","newRel"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { prependHTTP } from '@wordpress/url';\n\nconst NEW_TAB_REL = 'noreferrer noopener';\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\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\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction onToggleOpenInNewTab( value ) {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel = rel;\n\t\tif ( newLinkTarget && ! rel ) {\n\t\t\tupdatedRel = NEW_TAB_REL;\n\t\t} else if ( ! newLinkTarget && rel === NEW_TAB_REL ) {\n\t\t\tupdatedRel = undefined;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t} );\n\t}\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === '_blank';\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab } ),\n\t\t[ url, opensInNewTab ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag && isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL = '',\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: prependHTTP( newURL ) } );\n\n\t\t\t\t\t\t\tif ( opensInNewTab !== newOpensInNewTab ) {\n\t\t\t\t\t\t\t\tonToggleOpenInNewTab( newOpensInNewTab );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["classnames","NEW_TAB_TARGET","NOFOLLOW_REL","getUpdatedLinkAttributes","__","useEffect","useState","useRef","useMemo","Button","ButtonGroup","PanelBody","TextControl","ToolbarButton","Popover","AlignmentControl","BlockControls","InspectorControls","RichText","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalUseColorProps","useColorProps","__experimentalGetSpacingClassesAndStyles","useSpacingProps","__experimentalLinkControl","LinkControl","__experimentalGetElementClassName","displayShortcut","isKeyboardEvent","link","linkOff","createBlock","useMergeRefs","LINK_SETTINGS","DEFAULT_LINK_SETTINGS","id","title","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","createElement","map","widthValue","key","size","variant","onClick","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","TagName","setButtonText","newText","replace","onKeyDown","event","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","popoverAnchor","setPopoverAnchor","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","nofollow","includes","isLinkTag","preventDefault","linkValue","Fragment","fontSize","value","onChange","withoutInteractiveFormatting","border","radius","onSplit","onMerge","identifier","group","nextAlign","name","icon","shortcut","isActive","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","newURL","newOpensInNewTab","newNofollow","onRemove","forceIsEditingLink","settings","__nextHasNoMarginBottom","label","newRel"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';\nimport { getUpdatedLinkAttributes } from './get-updated-link-attributes';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs } from '@wordpress/compose';\n\nconst LINK_SETTINGS = [\n\t...LinkControl.DEFAULT_LINK_SETTINGS,\n\t{\n\t\tid: 'nofollow',\n\t\ttitle: __( 'Mark as nofollow' ),\n\t},\n];\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\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\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === NEW_TAB_TARGET;\n\tconst nofollow = !! rel?.includes( NOFOLLOW_REL );\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab, nofollow } ),\n\t\t[ url, opensInNewTab, nofollow ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag && isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\tsetAttributes(\n\t\t\t\t\t\t\t\tgetUpdatedLinkAttributes( {\n\t\t\t\t\t\t\t\t\trel,\n\t\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\t\tnofollow: newNofollow,\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\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t\tsettings={ LINK_SETTINGS }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { NEW_TAB_REL, NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* WordPress dependencies
|
|
8
|
+
*/
|
|
9
|
+
import { prependHTTP } from '@wordpress/url';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Updates the link attributes.
|
|
13
|
+
*
|
|
14
|
+
* @param {Object} attributes The current block attributes.
|
|
15
|
+
* @param {string} attributes.rel The current link rel attribute.
|
|
16
|
+
* @param {string} attributes.url The current link url.
|
|
17
|
+
* @param {boolean} attributes.opensInNewTab Whether the link should open in a new window.
|
|
18
|
+
* @param {boolean} attributes.nofollow Whether the link should be marked as nofollow.
|
|
19
|
+
*/
|
|
20
|
+
export function getUpdatedLinkAttributes({
|
|
21
|
+
rel = '',
|
|
22
|
+
url = '',
|
|
23
|
+
opensInNewTab,
|
|
24
|
+
nofollow
|
|
25
|
+
}) {
|
|
26
|
+
let newLinkTarget;
|
|
27
|
+
// Since `rel` is editable attribute, we need to check for existing values and proceed accordingly.
|
|
28
|
+
let updatedRel = rel;
|
|
29
|
+
if (opensInNewTab) {
|
|
30
|
+
newLinkTarget = NEW_TAB_TARGET;
|
|
31
|
+
updatedRel = updatedRel?.includes(NEW_TAB_REL) ? updatedRel : updatedRel + ` ${NEW_TAB_REL}`;
|
|
32
|
+
} else {
|
|
33
|
+
const relRegex = new RegExp(`\\b${NEW_TAB_REL}\\s*`, 'g');
|
|
34
|
+
updatedRel = updatedRel?.replace(relRegex, '').trim();
|
|
35
|
+
}
|
|
36
|
+
if (nofollow) {
|
|
37
|
+
updatedRel = updatedRel?.includes(NOFOLLOW_REL) ? updatedRel : updatedRel + ` ${NOFOLLOW_REL}`;
|
|
38
|
+
} else {
|
|
39
|
+
const relRegex = new RegExp(`\\b${NOFOLLOW_REL}\\s*`, 'g');
|
|
40
|
+
updatedRel = updatedRel?.replace(relRegex, '').trim();
|
|
41
|
+
}
|
|
42
|
+
return {
|
|
43
|
+
url: prependHTTP(url),
|
|
44
|
+
linkTarget: newLinkTarget,
|
|
45
|
+
rel: updatedRel || undefined
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=get-updated-link-attributes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NEW_TAB_REL","NEW_TAB_TARGET","NOFOLLOW_REL","prependHTTP","getUpdatedLinkAttributes","rel","url","opensInNewTab","nofollow","newLinkTarget","updatedRel","includes","relRegex","RegExp","replace","trim","linkTarget","undefined"],"sources":["@wordpress/block-library/src/button/get-updated-link-attributes.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { NEW_TAB_REL, NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';\n\n/**\n * WordPress dependencies\n */\nimport { prependHTTP } from '@wordpress/url';\n\n/**\n * Updates the link attributes.\n *\n * @param {Object} attributes The current block attributes.\n * @param {string} attributes.rel The current link rel attribute.\n * @param {string} attributes.url The current link url.\n * @param {boolean} attributes.opensInNewTab Whether the link should open in a new window.\n * @param {boolean} attributes.nofollow Whether the link should be marked as nofollow.\n */\nexport function getUpdatedLinkAttributes( {\n\trel = '',\n\turl = '',\n\topensInNewTab,\n\tnofollow,\n} ) {\n\tlet newLinkTarget;\n\t// Since `rel` is editable attribute, we need to check for existing values and proceed accordingly.\n\tlet updatedRel = rel;\n\n\tif ( opensInNewTab ) {\n\t\tnewLinkTarget = NEW_TAB_TARGET;\n\t\tupdatedRel = updatedRel?.includes( NEW_TAB_REL )\n\t\t\t? updatedRel\n\t\t\t: updatedRel + ` ${ NEW_TAB_REL }`;\n\t} else {\n\t\tconst relRegex = new RegExp( `\\\\b${ NEW_TAB_REL }\\\\s*`, 'g' );\n\t\tupdatedRel = updatedRel?.replace( relRegex, '' ).trim();\n\t}\n\n\tif ( nofollow ) {\n\t\tupdatedRel = updatedRel?.includes( NOFOLLOW_REL )\n\t\t\t? updatedRel\n\t\t\t: updatedRel + ` ${ NOFOLLOW_REL }`;\n\t} else {\n\t\tconst relRegex = new RegExp( `\\\\b${ NOFOLLOW_REL }\\\\s*`, 'g' );\n\t\tupdatedRel = updatedRel?.replace( relRegex, '' ).trim();\n\t}\n\n\treturn {\n\t\turl: prependHTTP( url ),\n\t\tlinkTarget: newLinkTarget,\n\t\trel: updatedRel || undefined,\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,cAAc,EAAEC,YAAY,QAAQ,aAAa;;AAEvE;AACA;AACA;AACA,SAASC,WAAW,QAAQ,gBAAgB;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,wBAAwBA,CAAE;EACzCC,GAAG,GAAG,EAAE;EACRC,GAAG,GAAG,EAAE;EACRC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,IAAIC,aAAa;EACjB;EACA,IAAIC,UAAU,GAAGL,GAAG;EAEpB,IAAKE,aAAa,EAAG;IACpBE,aAAa,GAAGR,cAAc;IAC9BS,UAAU,GAAGA,UAAU,EAAEC,QAAQ,CAAEX,WAAY,CAAC,GAC7CU,UAAU,GACVA,UAAU,GAAI,IAAIV,WAAa,EAAC;EACpC,CAAC,MAAM;IACN,MAAMY,QAAQ,GAAG,IAAIC,MAAM,CAAG,MAAMb,WAAa,MAAK,EAAE,GAAI,CAAC;IAC7DU,UAAU,GAAGA,UAAU,EAAEI,OAAO,CAAEF,QAAQ,EAAE,EAAG,CAAC,CAACG,IAAI,CAAC,CAAC;EACxD;EAEA,IAAKP,QAAQ,EAAG;IACfE,UAAU,GAAGA,UAAU,EAAEC,QAAQ,CAAET,YAAa,CAAC,GAC9CQ,UAAU,GACVA,UAAU,GAAI,IAAIR,YAAc,EAAC;EACrC,CAAC,MAAM;IACN,MAAMU,QAAQ,GAAG,IAAIC,MAAM,CAAG,MAAMX,YAAc,MAAK,EAAE,GAAI,CAAC;IAC9DQ,UAAU,GAAGA,UAAU,EAAEI,OAAO,CAAEF,QAAQ,EAAE,EAAG,CAAC,CAACG,IAAI,CAAC,CAAC;EACxD;EAEA,OAAO;IACNT,GAAG,EAAEH,WAAW,CAAEG,GAAI,CAAC;IACvBU,UAAU,EAAEP,aAAa;IACzBJ,GAAG,EAAEK,UAAU,IAAIO;EACpB,CAAC;AACF"}
|