@wordpress/block-library 8.12.0 → 8.12.2
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/build/archives/edit.js +2 -1
- package/build/archives/edit.js.map +1 -1
- package/build/archives/index.js +0 -1
- package/build/archives/index.js.map +1 -1
- package/build/audio/edit.js +4 -2
- package/build/audio/edit.js.map +1 -1
- package/build/audio/save.js +2 -1
- package/build/audio/save.js.map +1 -1
- package/build/avatar/edit.js +6 -3
- package/build/avatar/edit.js.map +1 -1
- package/build/avatar/index.js +1 -2
- package/build/avatar/index.js.map +1 -1
- package/build/block/edit.js +8 -4
- package/build/block/edit.js.map +1 -1
- package/build/block/index.js +1 -1
- package/build/button/deprecated.js +20 -15
- package/build/button/deprecated.js.map +1 -1
- package/build/button/edit.js +2 -4
- package/build/button/edit.js.map +1 -1
- package/build/button/save.js +4 -3
- package/build/button/save.js.map +1 -1
- package/build/buttons/deprecated.js +6 -5
- package/build/buttons/deprecated.js.map +1 -1
- package/build/buttons/edit.js +7 -2
- package/build/buttons/edit.js.map +1 -1
- package/build/buttons/edit.native.js +6 -6
- package/build/buttons/edit.native.js.map +1 -1
- package/build/buttons/index.js +1 -1
- package/build/buttons/save.js +2 -1
- package/build/buttons/save.js.map +1 -1
- package/build/buttons/transforms.js +1 -1
- package/build/calendar/edit.js +4 -2
- package/build/calendar/edit.js.map +1 -1
- package/build/calendar/index.js +0 -1
- package/build/calendar/index.js.map +1 -1
- package/build/categories/edit.js +2 -1
- package/build/categories/edit.js.map +1 -1
- package/build/categories/index.js +0 -1
- package/build/categories/index.js.map +1 -1
- package/build/code/edit.js +2 -1
- package/build/code/edit.js.map +1 -1
- package/build/code/save.js +2 -1
- package/build/code/save.js.map +1 -1
- package/build/column/edit.js +2 -1
- package/build/column/edit.js.map +1 -1
- package/build/column/edit.native.js +2 -1
- package/build/column/edit.native.js.map +1 -1
- package/build/column/index.js +1 -1
- package/build/column/save.js +2 -1
- package/build/column/save.js.map +1 -1
- package/build/columns/edit.js +6 -3
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +4 -5
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/index.js +1 -1
- package/build/columns/save.js +2 -1
- package/build/columns/save.js.map +1 -1
- package/build/comment-author-avatar/edit.js +6 -8
- package/build/comment-author-avatar/edit.js.map +1 -1
- package/build/comment-author-avatar/index.js +0 -1
- package/build/comment-author-avatar/index.js.map +1 -1
- package/build/comment-author-name/edit.js +2 -1
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-author-name/index.js +0 -1
- package/build/comment-author-name/index.js.map +1 -1
- package/build/comment-content/edit.js +4 -2
- package/build/comment-content/edit.js.map +1 -1
- package/build/comment-content/index.js +0 -1
- package/build/comment-content/index.js.map +1 -1
- package/build/comment-date/edit.js +2 -1
- package/build/comment-date/edit.js.map +1 -1
- package/build/comment-date/index.js +0 -1
- package/build/comment-date/index.js.map +1 -1
- package/build/comment-edit-link/edit.js +2 -1
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/comment-edit-link/index.js +0 -1
- package/build/comment-edit-link/index.js.map +1 -1
- package/build/comment-reply-link/edit.js +2 -1
- package/build/comment-reply-link/edit.js.map +1 -1
- package/build/comment-reply-link/index.js +0 -1
- package/build/comment-reply-link/index.js.map +1 -1
- package/build/comment-template/edit.js +10 -10
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/index.js +0 -1
- package/build/comment-template/index.js.map +1 -1
- package/build/comments/deprecated.js +2 -1
- package/build/comments/deprecated.js.map +1 -1
- package/build/comments/edit/comments-legacy.js +2 -1
- package/build/comments/edit/comments-legacy.js.map +1 -1
- package/build/comments/edit/index.js +4 -2
- package/build/comments/edit/index.js.map +1 -1
- package/build/comments/index.js +0 -1
- package/build/comments/index.js.map +1 -1
- package/build/comments/save.js +2 -1
- package/build/comments/save.js.map +1 -1
- package/build/comments-pagination/edit.js +2 -1
- package/build/comments-pagination/edit.js.map +1 -1
- package/build/comments-pagination/index.js +1 -2
- package/build/comments-pagination/index.js.map +1 -1
- package/build/comments-pagination-next/edit.js +4 -7
- package/build/comments-pagination-next/edit.js.map +1 -1
- package/build/comments-pagination-next/index.js +0 -1
- package/build/comments-pagination-next/index.js.map +1 -1
- package/build/comments-pagination-numbers/edit.js +2 -1
- package/build/comments-pagination-numbers/edit.js.map +1 -1
- package/build/comments-pagination-numbers/index.js +0 -1
- package/build/comments-pagination-numbers/index.js.map +1 -1
- package/build/comments-pagination-previous/edit.js +4 -7
- package/build/comments-pagination-previous/edit.js.map +1 -1
- package/build/comments-pagination-previous/index.js +0 -1
- package/build/comments-pagination-previous/index.js.map +1 -1
- package/build/comments-title/edit.js +4 -9
- package/build/comments-title/edit.js.map +1 -1
- package/build/cover/deprecated.js +46 -36
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/index.js +8 -7
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +4 -7
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/cover/edit/resizable-cover-popover.js +6 -7
- package/build/cover/edit/resizable-cover-popover.js.map +1 -1
- package/build/cover/edit.native.js +12 -11
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/index.js +1 -1
- package/build/cover/save.js +9 -7
- package/build/cover/save.js.map +1 -1
- package/build/cover/transforms.js +2 -2
- package/build/cover/transforms.js.map +1 -1
- package/build/details/edit.js +3 -7
- package/build/details/edit.js.map +1 -1
- package/build/details/index.js +1 -1
- package/build/details/init.js +16 -0
- package/build/details/init.js.map +1 -0
- package/build/details/save.js +2 -6
- package/build/details/save.js.map +1 -1
- package/build/embed/deprecated.js +4 -3
- package/build/embed/deprecated.js.map +1 -1
- package/build/embed/edit.js +6 -3
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +6 -3
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/save.js +4 -3
- package/build/embed/save.js.map +1 -1
- package/build/embed/wp-embed-preview.js +4 -7
- package/build/embed/wp-embed-preview.js.map +1 -1
- package/build/embed/wp-embed-preview.native.js +4 -7
- package/build/embed/wp-embed-preview.native.js.map +1 -1
- package/build/file/deprecated.js +6 -3
- package/build/file/deprecated.js.map +1 -1
- package/build/file/edit.js +4 -2
- package/build/file/edit.js.map +1 -1
- package/build/file/index.js +1 -1
- package/build/file/save.js +2 -1
- package/build/file/save.js.map +1 -1
- package/build/file/view.js +9 -0
- package/build/file/view.js.map +1 -0
- package/build/footnotes/edit.js +57 -0
- package/build/footnotes/edit.js.map +1 -0
- package/build/footnotes/format.js +142 -0
- package/build/footnotes/format.js.map +1 -0
- package/build/footnotes/index.js +67 -0
- package/build/footnotes/index.js.map +1 -0
- package/build/freeform/edit.js +6 -3
- package/build/freeform/edit.js.map +1 -1
- package/build/freeform/edit.native.js +2 -4
- package/build/freeform/edit.native.js.map +1 -1
- package/build/freeform/modal.js +2 -1
- package/build/freeform/modal.js.map +1 -1
- package/build/gallery/deprecated.js +6 -4
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit-wrapper.js +4 -2
- package/build/gallery/edit-wrapper.js.map +1 -1
- package/build/gallery/edit.js +16 -13
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +2 -4
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/gallery.native.js +3 -2
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/index.js +1 -1
- package/build/gallery/save.js +2 -1
- package/build/gallery/save.js.map +1 -1
- package/build/gallery/shared-icon.native.js +4 -5
- package/build/gallery/shared-icon.native.js.map +1 -1
- package/build/gallery/v1/edit.js +8 -9
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery.js +7 -7
- package/build/gallery/v1/gallery.js.map +1 -1
- package/build/gallery/v1/save.js +4 -3
- package/build/gallery/v1/save.js.map +1 -1
- package/build/group/deprecated.js +5 -3
- package/build/group/deprecated.js.map +1 -1
- package/build/group/edit.js +4 -1
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +1 -1
- package/build/group/placeholder.js +2 -1
- package/build/group/placeholder.js.map +1 -1
- package/build/group/save.js +2 -1
- package/build/group/save.js.map +1 -1
- package/build/heading/deprecated.js +8 -6
- package/build/heading/deprecated.js.map +1 -1
- package/build/heading/edit.js +9 -11
- package/build/heading/edit.js.map +1 -1
- package/build/heading/save.js +4 -3
- package/build/heading/save.js.map +1 -1
- package/build/home-link/edit.js +2 -1
- package/build/home-link/edit.js.map +1 -1
- package/build/home-link/index.js +0 -1
- package/build/home-link/index.js.map +1 -1
- package/build/html/edit.js +4 -3
- package/build/html/edit.js.map +1 -1
- package/build/image/deprecated.js +14 -12
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +4 -7
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +8 -8
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +109 -49
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +6 -0
- package/build/image/index.js.map +1 -1
- package/build/image/interactivity.js +119 -6
- package/build/image/interactivity.js.map +1 -1
- package/build/image/save.js +10 -4
- package/build/image/save.js.map +1 -1
- package/build/image/utils.js +18 -0
- package/build/image/utils.js.map +1 -1
- package/build/index.js +3 -1
- package/build/index.js.map +1 -1
- package/build/latest-comments/edit.js +2 -1
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-comments/index.js +0 -1
- package/build/latest-comments/index.js.map +1 -1
- package/build/latest-posts/deprecated.js +0 -1
- package/build/latest-posts/deprecated.js.map +1 -1
- package/build/latest-posts/edit.js +14 -7
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/edit.native.js +4 -5
- package/build/latest-posts/edit.native.js.map +1 -1
- package/build/latest-posts/index.js +0 -1
- package/build/latest-posts/index.js.map +1 -1
- package/build/list/deprecated.js +12 -10
- package/build/list/deprecated.js.map +1 -1
- package/build/list/edit.js +4 -5
- package/build/list/edit.js.map +1 -1
- package/build/list/ordered-list-settings.js +25 -1
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list/save.js +6 -5
- package/build/list/save.js.map +1 -1
- package/build/list/tag-name.js +4 -7
- package/build/list/tag-name.js.map +1 -1
- package/build/list/tag-name.native.js +4 -7
- package/build/list/tag-name.native.js.map +1 -1
- package/build/list-item/edit.js +2 -1
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/edit.native.js +2 -1
- package/build/list-item/edit.native.js.map +1 -1
- package/build/list-item/save.js +2 -1
- package/build/list-item/save.js.map +1 -1
- package/build/{private-apis.js → lock-unlock.js} +1 -1
- package/build/lock-unlock.js.map +1 -0
- package/build/loginout/edit.js +4 -3
- package/build/loginout/edit.js.map +1 -1
- package/build/loginout/index.js +0 -1
- package/build/loginout/index.js.map +1 -1
- package/build/media-text/deprecated.js +43 -33
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +7 -4
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/media-container.js +8 -7
- package/build/media-text/media-container.js.map +1 -1
- package/build/media-text/media-container.native.js +8 -8
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/media-text/save.js +17 -13
- package/build/media-text/save.js.map +1 -1
- package/build/missing/edit.js +4 -3
- package/build/missing/edit.js.map +1 -1
- package/build/more/edit.js +2 -1
- package/build/more/edit.js.map +1 -1
- package/build/navigation/constants.js +8 -1
- package/build/navigation/constants.js.map +1 -1
- package/build/navigation/deprecated.js +1 -1
- package/build/navigation/deprecated.js.map +1 -1
- package/build/navigation/edit/index.js +35 -21
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +2 -1
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/leaf-more-menu.js +5 -9
- package/build/navigation/edit/leaf-more-menu.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +12 -16
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +15 -7
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +2 -1
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +3 -5
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/index.js +2 -3
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +9 -7
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation/view-modal.js +64 -0
- package/build/navigation/view-modal.js.map +1 -0
- package/build/navigation/view.js +61 -0
- package/build/navigation/view.js.map +1 -0
- package/build/navigation-link/edit.js +4 -2
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +4 -2
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/nextpage/edit.js +2 -1
- package/build/nextpage/edit.js.map +1 -1
- package/build/page-list/edit.js +12 -6
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +0 -1
- package/build/page-list/index.js.map +1 -1
- package/build/page-list-item/edit.js +2 -1
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/deprecated.js +5 -4
- package/build/paragraph/deprecated.js.map +1 -1
- package/build/paragraph/edit.js +4 -6
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/save.js +5 -4
- package/build/paragraph/save.js.map +1 -1
- package/build/pattern/edit.js +7 -32
- package/build/pattern/edit.js.map +1 -1
- package/build/pattern/index.js +3 -11
- package/build/pattern/index.js.map +1 -1
- package/build/post-author/edit.js +4 -2
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author/index.js +0 -1
- package/build/post-author/index.js.map +1 -1
- package/build/post-author-biography/edit.js +2 -4
- package/build/post-author-biography/edit.js.map +1 -1
- package/build/post-author-biography/index.js +0 -1
- package/build/post-author-biography/index.js.map +1 -1
- package/build/post-author-name/edit.js +2 -1
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-author-name/index.js +0 -1
- package/build/post-author-name/index.js.map +1 -1
- package/build/post-comment/edit.js +4 -2
- package/build/post-comment/edit.js.map +1 -1
- package/build/post-comment/save.js +2 -1
- package/build/post-comment/save.js.map +1 -1
- package/build/post-comments-count/edit.js +2 -4
- package/build/post-comments-count/edit.js.map +1 -1
- package/build/post-comments-count/index.js +0 -1
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-form/edit.js +2 -1
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/index.js +0 -1
- package/build/post-comments-form/index.js.map +1 -1
- package/build/post-comments-link/edit.js +2 -1
- package/build/post-comments-link/edit.js.map +1 -1
- package/build/post-comments-link/index.js +0 -1
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-content/edit.js +11 -10
- package/build/post-content/edit.js.map +1 -1
- package/build/post-content/index.js +1 -2
- package/build/post-content/index.js.map +1 -1
- package/build/post-date/edit.js +2 -1
- package/build/post-date/edit.js.map +1 -1
- package/build/post-date/index.js +0 -1
- package/build/post-date/index.js.map +1 -1
- package/build/post-excerpt/edit.js +6 -3
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-excerpt/index.js +0 -1
- package/build/post-excerpt/index.js.map +1 -1
- package/build/post-featured-image/edit.js +4 -2
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/index.js +0 -1
- package/build/post-featured-image/index.js.map +1 -1
- package/build/post-featured-image/overlay.js +4 -5
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/post-navigation-link/edit.js +2 -1
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-navigation-link/index.js +0 -1
- package/build/post-navigation-link/index.js.map +1 -1
- package/build/post-template/edit.js +14 -9
- package/build/post-template/edit.js.map +1 -1
- package/build/post-template/index.js +1 -2
- package/build/post-template/index.js.map +1 -1
- package/build/post-terms/edit.js +4 -8
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/hooks.js +9 -5
- package/build/post-terms/hooks.js.map +1 -1
- package/build/post-terms/index.js +0 -1
- package/build/post-terms/index.js.map +1 -1
- package/build/post-time-to-read/edit.js +2 -1
- package/build/post-time-to-read/edit.js.map +1 -1
- package/build/post-time-to-read/init.js +16 -0
- package/build/post-time-to-read/init.js.map +1 -0
- package/build/post-title/edit.js +16 -16
- package/build/post-title/edit.js.map +1 -1
- package/build/post-title/index.js +0 -1
- package/build/post-title/index.js.map +1 -1
- package/build/preformatted/edit.js +4 -8
- package/build/preformatted/edit.js.map +1 -1
- package/build/preformatted/edit.native.js +2 -1
- package/build/preformatted/edit.native.js.map +1 -1
- package/build/preformatted/save.js +2 -1
- package/build/preformatted/save.js.map +1 -1
- package/build/pullquote/deprecated.js +10 -8
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/pullquote/edit.js +2 -1
- package/build/pullquote/edit.js.map +1 -1
- package/build/pullquote/edit.native.js +2 -1
- package/build/pullquote/edit.native.js.map +1 -1
- package/build/pullquote/save.js +5 -4
- package/build/pullquote/save.js.map +1 -1
- package/build/query/deprecated.js +16 -10
- package/build/query/deprecated.js.map +1 -1
- package/build/query/edit/index.js +2 -4
- package/build/query/edit/index.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +4 -3
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-content.js +20 -6
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-placeholder.js +4 -2
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/index.js +1 -2
- package/build/query/index.js.map +1 -1
- package/build/query/save.js +2 -1
- package/build/query/save.js.map +1 -1
- package/build/query/utils.js +1 -2
- package/build/query/utils.js.map +1 -1
- package/build/query-no-results/edit.js +2 -1
- package/build/query-no-results/edit.js.map +1 -1
- package/build/query-no-results/index.js +0 -1
- package/build/query-no-results/index.js.map +1 -1
- package/build/query-pagination/deprecated.js +2 -1
- package/build/query-pagination/deprecated.js.map +1 -1
- package/build/query-pagination/edit.js +2 -1
- package/build/query-pagination/edit.js.map +1 -1
- package/build/query-pagination/index.js +1 -2
- package/build/query-pagination/index.js.map +1 -1
- package/build/query-pagination-next/edit.js +4 -7
- package/build/query-pagination-next/edit.js.map +1 -1
- package/build/query-pagination-next/index.js +0 -1
- package/build/query-pagination-next/index.js.map +1 -1
- package/build/query-pagination-numbers/edit.js +2 -1
- package/build/query-pagination-numbers/edit.js.map +1 -1
- package/build/query-pagination-numbers/index.js +1 -2
- package/build/query-pagination-numbers/index.js.map +1 -1
- package/build/query-pagination-previous/edit.js +4 -7
- package/build/query-pagination-previous/edit.js.map +1 -1
- package/build/query-pagination-previous/index.js +0 -1
- package/build/query-pagination-previous/index.js.map +1 -1
- package/build/query-title/edit.js +8 -11
- package/build/query-title/edit.js.map +1 -1
- package/build/query-title/index.js +0 -1
- package/build/query-title/index.js.map +1 -1
- package/build/quote/deprecated.js +4 -3
- package/build/quote/deprecated.js.map +1 -1
- package/build/quote/edit.js +7 -7
- package/build/quote/edit.js.map +1 -1
- package/build/quote/save.js +4 -3
- package/build/quote/save.js.map +1 -1
- package/build/read-more/edit.js +4 -7
- package/build/read-more/edit.js.map +1 -1
- package/build/read-more/index.js +0 -1
- package/build/read-more/index.js.map +1 -1
- package/build/rss/edit.js +4 -2
- package/build/rss/edit.js.map +1 -1
- package/build/rss/index.js +0 -1
- package/build/rss/index.js.map +1 -1
- package/build/search/edit.js +4 -3
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js +6 -8
- package/build/search/edit.native.js.map +1 -1
- package/build/search/index.js +0 -1
- package/build/search/index.js.map +1 -1
- package/build/separator/deprecated.js +5 -4
- package/build/separator/deprecated.js.map +1 -1
- package/build/separator/edit.js +5 -4
- package/build/separator/edit.js.map +1 -1
- package/build/separator/save.js +5 -4
- package/build/separator/save.js.map +1 -1
- package/build/shortcode/edit.js +4 -3
- package/build/shortcode/edit.js.map +1 -1
- package/build/site-logo/edit.js +10 -10
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-logo/index.js +0 -1
- package/build/site-logo/index.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 +1 -4
- package/build/site-tagline/icon.js.map +1 -1
- package/build/site-tagline/index.js +0 -1
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/edit/index.js +8 -9
- package/build/site-title/edit/index.js.map +1 -1
- package/build/site-title/index.js +0 -1
- package/build/site-title/index.js.map +1 -1
- package/build/social-link/edit.js +2 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-link/index.js +0 -1
- package/build/social-link/index.js.map +1 -1
- package/build/social-links/deprecated.js +5 -4
- package/build/social-links/deprecated.js.map +1 -1
- package/build/social-links/edit.js +6 -6
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/index.js +1 -1
- package/build/social-links/save.js +2 -1
- package/build/social-links/save.js.map +1 -1
- package/build/spacer/deprecated.js +8 -7
- package/build/spacer/deprecated.js.map +1 -1
- package/build/spacer/edit.js +10 -10
- package/build/spacer/edit.js.map +1 -1
- package/build/spacer/edit.native.js +4 -5
- package/build/spacer/edit.native.js.map +1 -1
- package/build/spacer/save.js +21 -11
- package/build/spacer/save.js.map +1 -1
- package/build/spacer/save.native.js +8 -7
- package/build/spacer/save.native.js.map +1 -1
- package/build/table/deprecated.js +4 -2
- package/build/table/deprecated.js.map +1 -1
- package/build/table/edit.js +6 -4
- package/build/table/edit.js.map +1 -1
- package/build/table/save.js +2 -1
- package/build/table/save.js.map +1 -1
- package/build/table-of-contents/edit.js +4 -2
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/save.js +2 -1
- package/build/table-of-contents/save.js.map +1 -1
- package/build/tag-cloud/edit.js +2 -1
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/tag-cloud/index.js +0 -1
- package/build/tag-cloud/index.js.map +1 -1
- package/build/template-part/edit/index.js +8 -4
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +3 -2
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/template-part/index.js +0 -1
- package/build/template-part/index.js.map +1 -1
- package/build/term-description/edit.js +2 -1
- package/build/term-description/edit.js.map +1 -1
- package/build/term-description/index.js +0 -1
- package/build/term-description/index.js.map +1 -1
- package/build/text-columns/edit.js +4 -3
- package/build/text-columns/edit.js.map +1 -1
- package/build/text-columns/save.js +4 -3
- package/build/text-columns/save.js.map +1 -1
- package/build/utils/interactivity/directives.js +4 -7
- package/build/utils/interactivity/directives.js.map +1 -1
- package/build/utils/interactivity/index.js +1 -3
- package/build/utils/interactivity/index.js.map +1 -1
- package/build/utils/migrate-font-family.js +2 -2
- package/build/utils/migrate-font-family.js.map +1 -1
- package/build/verse/deprecated.js +4 -3
- package/build/verse/deprecated.js.map +1 -1
- package/build/verse/edit.js +4 -6
- package/build/verse/edit.js.map +1 -1
- package/build/verse/save.js +4 -3
- package/build/verse/save.js.map +1 -1
- package/build/video/deprecated.js +2 -1
- package/build/video/deprecated.js.map +1 -1
- package/build/video/edit.js +4 -2
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +8 -8
- package/build/video/edit.native.js.map +1 -1
- package/build/video/save.js +2 -1
- package/build/video/save.js.map +1 -1
- package/build/video/tracks.js +4 -7
- package/build/video/tracks.js.map +1 -1
- package/build-module/archives/edit.js +2 -1
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/archives/index.js +0 -1
- package/build-module/archives/index.js.map +1 -1
- package/build-module/audio/edit.js +4 -2
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/save.js +2 -1
- package/build-module/audio/save.js.map +1 -1
- package/build-module/avatar/edit.js +6 -3
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/avatar/index.js +1 -2
- package/build-module/avatar/index.js.map +1 -1
- package/build-module/block/edit.js +8 -4
- package/build-module/block/edit.js.map +1 -1
- package/build-module/block/index.js +1 -1
- package/build-module/button/deprecated.js +20 -15
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/button/edit.js +2 -3
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/save.js +4 -3
- package/build-module/button/save.js.map +1 -1
- package/build-module/buttons/deprecated.js +6 -5
- package/build-module/buttons/deprecated.js.map +1 -1
- package/build-module/buttons/edit.js +7 -2
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/buttons/edit.native.js +6 -6
- package/build-module/buttons/edit.native.js.map +1 -1
- package/build-module/buttons/index.js +1 -1
- package/build-module/buttons/save.js +2 -1
- package/build-module/buttons/save.js.map +1 -1
- package/build-module/buttons/transforms.js +1 -1
- package/build-module/calendar/edit.js +4 -2
- package/build-module/calendar/edit.js.map +1 -1
- package/build-module/calendar/index.js +0 -1
- package/build-module/calendar/index.js.map +1 -1
- package/build-module/categories/edit.js +2 -1
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/categories/index.js +0 -1
- package/build-module/categories/index.js.map +1 -1
- package/build-module/code/edit.js +2 -1
- package/build-module/code/edit.js.map +1 -1
- package/build-module/code/save.js +2 -1
- package/build-module/code/save.js.map +1 -1
- package/build-module/column/edit.js +2 -1
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/edit.native.js +2 -1
- package/build-module/column/edit.native.js.map +1 -1
- package/build-module/column/index.js +1 -1
- package/build-module/column/save.js +2 -1
- package/build-module/column/save.js.map +1 -1
- package/build-module/columns/edit.js +6 -3
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +4 -4
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/index.js +1 -1
- package/build-module/columns/save.js +2 -1
- package/build-module/columns/save.js.map +1 -1
- package/build-module/comment-author-avatar/edit.js +6 -5
- package/build-module/comment-author-avatar/edit.js.map +1 -1
- package/build-module/comment-author-avatar/index.js +0 -1
- package/build-module/comment-author-avatar/index.js.map +1 -1
- package/build-module/comment-author-name/edit.js +2 -1
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-author-name/index.js +0 -1
- package/build-module/comment-author-name/index.js.map +1 -1
- package/build-module/comment-content/edit.js +4 -2
- package/build-module/comment-content/edit.js.map +1 -1
- package/build-module/comment-content/index.js +0 -1
- package/build-module/comment-content/index.js.map +1 -1
- package/build-module/comment-date/edit.js +2 -1
- package/build-module/comment-date/edit.js.map +1 -1
- package/build-module/comment-date/index.js +0 -1
- package/build-module/comment-date/index.js.map +1 -1
- package/build-module/comment-edit-link/edit.js +2 -1
- package/build-module/comment-edit-link/edit.js.map +1 -1
- package/build-module/comment-edit-link/index.js +0 -1
- package/build-module/comment-edit-link/index.js.map +1 -1
- package/build-module/comment-reply-link/edit.js +2 -1
- package/build-module/comment-reply-link/edit.js.map +1 -1
- package/build-module/comment-reply-link/index.js +0 -1
- package/build-module/comment-reply-link/index.js.map +1 -1
- package/build-module/comment-template/edit.js +10 -7
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/index.js +0 -1
- package/build-module/comment-template/index.js.map +1 -1
- package/build-module/comments/deprecated.js +2 -1
- package/build-module/comments/deprecated.js.map +1 -1
- package/build-module/comments/edit/comments-legacy.js +2 -1
- package/build-module/comments/edit/comments-legacy.js.map +1 -1
- package/build-module/comments/edit/index.js +4 -2
- package/build-module/comments/edit/index.js.map +1 -1
- package/build-module/comments/index.js +0 -1
- package/build-module/comments/index.js.map +1 -1
- package/build-module/comments/save.js +2 -1
- package/build-module/comments/save.js.map +1 -1
- package/build-module/comments-pagination/edit.js +2 -1
- package/build-module/comments-pagination/edit.js.map +1 -1
- package/build-module/comments-pagination/index.js +1 -2
- package/build-module/comments-pagination/index.js.map +1 -1
- package/build-module/comments-pagination-next/edit.js +4 -4
- package/build-module/comments-pagination-next/edit.js.map +1 -1
- package/build-module/comments-pagination-next/index.js +0 -1
- package/build-module/comments-pagination-next/index.js.map +1 -1
- package/build-module/comments-pagination-numbers/edit.js +2 -1
- package/build-module/comments-pagination-numbers/edit.js.map +1 -1
- package/build-module/comments-pagination-numbers/index.js +0 -1
- package/build-module/comments-pagination-numbers/index.js.map +1 -1
- package/build-module/comments-pagination-previous/edit.js +4 -4
- package/build-module/comments-pagination-previous/edit.js.map +1 -1
- package/build-module/comments-pagination-previous/index.js +0 -1
- package/build-module/comments-pagination-previous/index.js.map +1 -1
- package/build-module/comments-title/edit.js +4 -8
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/cover/deprecated.js +46 -36
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/index.js +8 -6
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +4 -4
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/cover/edit/resizable-cover-popover.js +5 -5
- package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
- package/build-module/cover/edit.native.js +12 -10
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/index.js +1 -1
- package/build-module/cover/save.js +9 -7
- package/build-module/cover/save.js.map +1 -1
- package/build-module/cover/transforms.js +1 -1
- package/build-module/cover/transforms.js.map +1 -1
- package/build-module/details/edit.js +3 -4
- package/build-module/details/edit.js.map +1 -1
- package/build-module/details/index.js +1 -1
- package/build-module/details/init.js +6 -0
- package/build-module/details/init.js.map +1 -0
- package/build-module/details/save.js +2 -3
- package/build-module/details/save.js.map +1 -1
- package/build-module/embed/deprecated.js +4 -3
- package/build-module/embed/deprecated.js.map +1 -1
- package/build-module/embed/edit.js +6 -3
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +6 -3
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/save.js +4 -3
- package/build-module/embed/save.js.map +1 -1
- package/build-module/embed/wp-embed-preview.js +4 -4
- package/build-module/embed/wp-embed-preview.js.map +1 -1
- package/build-module/embed/wp-embed-preview.native.js +4 -4
- package/build-module/embed/wp-embed-preview.native.js.map +1 -1
- package/build-module/file/deprecated.js +6 -3
- package/build-module/file/deprecated.js.map +1 -1
- package/build-module/file/edit.js +4 -2
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/index.js +1 -1
- package/build-module/file/save.js +2 -1
- package/build-module/file/save.js.map +1 -1
- package/build-module/file/view.js +6 -0
- package/build-module/file/view.js.map +1 -0
- package/build-module/footnotes/edit.js +48 -0
- package/build-module/footnotes/edit.js.map +1 -0
- package/build-module/footnotes/format.js +126 -0
- package/build-module/footnotes/format.js.map +1 -0
- package/build-module/footnotes/index.js +48 -0
- package/build-module/footnotes/index.js.map +1 -0
- package/build-module/freeform/edit.js +6 -3
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/freeform/edit.native.js +2 -3
- package/build-module/freeform/edit.native.js.map +1 -1
- package/build-module/freeform/modal.js +2 -1
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/gallery/deprecated.js +6 -4
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit-wrapper.js +4 -2
- package/build-module/gallery/edit-wrapper.js.map +1 -1
- package/build-module/gallery/edit.js +16 -12
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +2 -3
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/gallery.native.js +3 -2
- package/build-module/gallery/gallery.native.js.map +1 -1
- package/build-module/gallery/index.js +1 -1
- package/build-module/gallery/save.js +2 -1
- package/build-module/gallery/save.js.map +1 -1
- package/build-module/gallery/shared-icon.native.js +4 -4
- package/build-module/gallery/shared-icon.native.js.map +1 -1
- package/build-module/gallery/v1/edit.js +8 -8
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery.js +7 -6
- package/build-module/gallery/v1/gallery.js.map +1 -1
- package/build-module/gallery/v1/save.js +4 -3
- package/build-module/gallery/v1/save.js.map +1 -1
- package/build-module/group/deprecated.js +5 -3
- package/build-module/group/deprecated.js.map +1 -1
- package/build-module/group/edit.js +4 -1
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +1 -1
- package/build-module/group/placeholder.js +2 -1
- package/build-module/group/placeholder.js.map +1 -1
- package/build-module/group/save.js +2 -1
- package/build-module/group/save.js.map +1 -1
- package/build-module/heading/deprecated.js +8 -6
- package/build-module/heading/deprecated.js.map +1 -1
- package/build-module/heading/edit.js +9 -9
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/save.js +4 -3
- package/build-module/heading/save.js.map +1 -1
- package/build-module/home-link/edit.js +2 -1
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/home-link/index.js +0 -1
- package/build-module/home-link/index.js.map +1 -1
- package/build-module/html/edit.js +4 -3
- package/build-module/html/edit.js.map +1 -1
- package/build-module/image/deprecated.js +14 -11
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/edit.js +3 -6
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +8 -7
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +109 -52
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +6 -0
- package/build-module/image/index.js.map +1 -1
- package/build-module/image/interactivity.js +119 -6
- package/build-module/image/interactivity.js.map +1 -1
- package/build-module/image/save.js +10 -4
- package/build-module/image/save.js.map +1 -1
- package/build-module/image/utils.js +16 -0
- package/build-module/image/utils.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/latest-comments/edit.js +2 -1
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-comments/index.js +0 -1
- package/build-module/latest-comments/index.js.map +1 -1
- package/build-module/latest-posts/deprecated.js +0 -1
- package/build-module/latest-posts/deprecated.js.map +1 -1
- package/build-module/latest-posts/edit.js +15 -7
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/edit.native.js +4 -4
- package/build-module/latest-posts/edit.native.js.map +1 -1
- package/build-module/latest-posts/index.js +0 -1
- package/build-module/latest-posts/index.js.map +1 -1
- package/build-module/list/deprecated.js +12 -10
- package/build-module/list/deprecated.js.map +1 -1
- package/build-module/list/edit.js +4 -4
- package/build-module/list/edit.js.map +1 -1
- package/build-module/list/ordered-list-settings.js +26 -2
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list/save.js +6 -5
- package/build-module/list/save.js.map +1 -1
- package/build-module/list/tag-name.js +4 -4
- package/build-module/list/tag-name.js.map +1 -1
- package/build-module/list/tag-name.native.js +4 -4
- package/build-module/list/tag-name.native.js.map +1 -1
- package/build-module/list-item/edit.js +2 -1
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/edit.native.js +2 -1
- package/build-module/list-item/edit.native.js.map +1 -1
- package/build-module/list-item/save.js +2 -1
- package/build-module/list-item/save.js.map +1 -1
- package/build-module/{private-apis.js → lock-unlock.js} +1 -1
- package/build-module/lock-unlock.js.map +1 -0
- package/build-module/loginout/edit.js +4 -3
- package/build-module/loginout/edit.js.map +1 -1
- package/build-module/loginout/index.js +0 -1
- package/build-module/loginout/index.js.map +1 -1
- package/build-module/media-text/deprecated.js +43 -33
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +6 -3
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/media-container.js +8 -6
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/media-text/media-container.native.js +8 -7
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/media-text/save.js +17 -13
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/missing/edit.js +4 -3
- package/build-module/missing/edit.js.map +1 -1
- package/build-module/more/edit.js +2 -1
- package/build-module/more/edit.js.map +1 -1
- package/build-module/navigation/constants.js +6 -0
- package/build-module/navigation/constants.js.map +1 -1
- package/build-module/navigation/deprecated.js +1 -1
- package/build-module/navigation/deprecated.js.map +1 -1
- package/build-module/navigation/edit/index.js +34 -21
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +2 -1
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/leaf-more-menu.js +5 -6
- package/build-module/navigation/edit/leaf-more-menu.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +12 -16
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +15 -7
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +2 -1
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +4 -6
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/index.js +2 -3
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +8 -7
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation/view-modal.js +58 -0
- package/build-module/navigation/view-modal.js.map +1 -0
- package/build-module/navigation/view.js +59 -0
- package/build-module/navigation/view.js.map +1 -0
- package/build-module/navigation-link/edit.js +4 -2
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +4 -2
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/nextpage/edit.js +2 -1
- package/build-module/nextpage/edit.js.map +1 -1
- package/build-module/page-list/edit.js +12 -6
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +0 -1
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/page-list-item/edit.js +2 -1
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/paragraph/deprecated.js +5 -4
- package/build-module/paragraph/deprecated.js.map +1 -1
- package/build-module/paragraph/edit.js +4 -5
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/save.js +5 -4
- package/build-module/paragraph/save.js.map +1 -1
- package/build-module/pattern/edit.js +8 -33
- package/build-module/pattern/edit.js.map +1 -1
- package/build-module/pattern/index.js +4 -11
- package/build-module/pattern/index.js.map +1 -1
- package/build-module/post-author/edit.js +4 -2
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author/index.js +0 -1
- package/build-module/post-author/index.js.map +1 -1
- package/build-module/post-author-biography/edit.js +2 -3
- package/build-module/post-author-biography/edit.js.map +1 -1
- package/build-module/post-author-biography/index.js +0 -1
- package/build-module/post-author-biography/index.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -1
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-author-name/index.js +0 -1
- package/build-module/post-author-name/index.js.map +1 -1
- package/build-module/post-comment/edit.js +4 -2
- package/build-module/post-comment/edit.js.map +1 -1
- package/build-module/post-comment/save.js +2 -1
- package/build-module/post-comment/save.js.map +1 -1
- package/build-module/post-comments-count/edit.js +2 -3
- package/build-module/post-comments-count/edit.js.map +1 -1
- package/build-module/post-comments-count/index.js +0 -1
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-form/edit.js +2 -1
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/index.js +0 -1
- package/build-module/post-comments-form/index.js.map +1 -1
- package/build-module/post-comments-link/edit.js +2 -1
- package/build-module/post-comments-link/edit.js.map +1 -1
- package/build-module/post-comments-link/index.js +0 -1
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-content/edit.js +11 -7
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-content/index.js +1 -2
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-date/edit.js +2 -1
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-date/index.js +0 -1
- package/build-module/post-date/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +6 -3
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-excerpt/index.js +0 -1
- package/build-module/post-excerpt/index.js.map +1 -1
- package/build-module/post-featured-image/edit.js +4 -2
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/index.js +0 -1
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +4 -4
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +2 -1
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-navigation-link/index.js +0 -1
- package/build-module/post-navigation-link/index.js.map +1 -1
- package/build-module/post-template/edit.js +14 -8
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-template/index.js +1 -2
- package/build-module/post-template/index.js.map +1 -1
- package/build-module/post-terms/edit.js +4 -8
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/hooks.js +9 -5
- package/build-module/post-terms/hooks.js.map +1 -1
- package/build-module/post-terms/index.js +0 -1
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-time-to-read/edit.js +2 -1
- package/build-module/post-time-to-read/edit.js.map +1 -1
- package/build-module/post-time-to-read/init.js +6 -0
- package/build-module/post-time-to-read/init.js.map +1 -0
- package/build-module/post-title/edit.js +15 -13
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/post-title/index.js +0 -1
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/preformatted/edit.js +4 -5
- package/build-module/preformatted/edit.js.map +1 -1
- package/build-module/preformatted/edit.native.js +2 -1
- package/build-module/preformatted/edit.native.js.map +1 -1
- package/build-module/preformatted/save.js +2 -1
- package/build-module/preformatted/save.js.map +1 -1
- package/build-module/pullquote/deprecated.js +10 -8
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/pullquote/edit.js +2 -1
- package/build-module/pullquote/edit.js.map +1 -1
- package/build-module/pullquote/edit.native.js +2 -1
- package/build-module/pullquote/edit.native.js.map +1 -1
- package/build-module/pullquote/save.js +5 -4
- package/build-module/pullquote/save.js.map +1 -1
- package/build-module/query/deprecated.js +15 -9
- package/build-module/query/deprecated.js.map +1 -1
- package/build-module/query/edit/index.js +2 -3
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +3 -2
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-content.js +19 -6
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +4 -2
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/index.js +1 -2
- package/build-module/query/index.js.map +1 -1
- package/build-module/query/save.js +2 -1
- package/build-module/query/save.js.map +1 -1
- package/build-module/query/utils.js +1 -2
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-no-results/edit.js +2 -1
- package/build-module/query-no-results/edit.js.map +1 -1
- package/build-module/query-no-results/index.js +0 -1
- package/build-module/query-no-results/index.js.map +1 -1
- package/build-module/query-pagination/deprecated.js +2 -1
- package/build-module/query-pagination/deprecated.js.map +1 -1
- package/build-module/query-pagination/edit.js +2 -1
- package/build-module/query-pagination/edit.js.map +1 -1
- package/build-module/query-pagination/index.js +1 -2
- package/build-module/query-pagination/index.js.map +1 -1
- package/build-module/query-pagination-next/edit.js +4 -4
- package/build-module/query-pagination-next/edit.js.map +1 -1
- package/build-module/query-pagination-next/index.js +0 -1
- package/build-module/query-pagination-next/index.js.map +1 -1
- package/build-module/query-pagination-numbers/edit.js +2 -1
- package/build-module/query-pagination-numbers/edit.js.map +1 -1
- package/build-module/query-pagination-numbers/index.js +1 -2
- package/build-module/query-pagination-numbers/index.js.map +1 -1
- package/build-module/query-pagination-previous/edit.js +4 -4
- package/build-module/query-pagination-previous/edit.js.map +1 -1
- package/build-module/query-pagination-previous/index.js +0 -1
- package/build-module/query-pagination-previous/index.js.map +1 -1
- package/build-module/query-title/edit.js +8 -10
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/query-title/index.js +0 -1
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/quote/deprecated.js +4 -3
- package/build-module/quote/deprecated.js.map +1 -1
- package/build-module/quote/edit.js +7 -6
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/quote/save.js +4 -3
- package/build-module/quote/save.js.map +1 -1
- package/build-module/read-more/edit.js +4 -4
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/read-more/index.js +0 -1
- package/build-module/read-more/index.js.map +1 -1
- package/build-module/rss/edit.js +4 -2
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/rss/index.js +0 -1
- package/build-module/rss/index.js.map +1 -1
- package/build-module/search/edit.js +4 -3
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +6 -7
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/search/index.js +0 -1
- package/build-module/search/index.js.map +1 -1
- package/build-module/separator/deprecated.js +5 -4
- package/build-module/separator/deprecated.js.map +1 -1
- package/build-module/separator/edit.js +5 -4
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/separator/save.js +5 -4
- package/build-module/separator/save.js.map +1 -1
- package/build-module/shortcode/edit.js +4 -3
- package/build-module/shortcode/edit.js.map +1 -1
- package/build-module/site-logo/edit.js +10 -9
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-logo/index.js +0 -1
- package/build-module/site-logo/index.js.map +1 -1
- package/build-module/site-tagline/edit.js +5 -4
- package/build-module/site-tagline/edit.js.map +1 -1
- package/build-module/site-tagline/icon.js +1 -4
- package/build-module/site-tagline/icon.js.map +1 -1
- package/build-module/site-tagline/index.js +0 -1
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/edit/index.js +9 -10
- package/build-module/site-title/edit/index.js.map +1 -1
- package/build-module/site-title/index.js +0 -1
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-link/edit.js +2 -1
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-link/index.js +0 -1
- package/build-module/social-link/index.js.map +1 -1
- package/build-module/social-links/deprecated.js +5 -4
- package/build-module/social-links/deprecated.js.map +1 -1
- package/build-module/social-links/edit.js +6 -5
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/index.js +1 -1
- package/build-module/social-links/save.js +2 -1
- package/build-module/social-links/save.js.map +1 -1
- package/build-module/spacer/deprecated.js +8 -7
- package/build-module/spacer/deprecated.js.map +1 -1
- package/build-module/spacer/edit.js +10 -9
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/spacer/edit.native.js +4 -4
- package/build-module/spacer/edit.native.js.map +1 -1
- package/build-module/spacer/save.js +21 -11
- package/build-module/spacer/save.js.map +1 -1
- package/build-module/spacer/save.native.js +8 -7
- package/build-module/spacer/save.native.js.map +1 -1
- package/build-module/table/deprecated.js +4 -2
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/table/edit.js +6 -4
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/save.js +2 -1
- package/build-module/table/save.js.map +1 -1
- package/build-module/table-of-contents/edit.js +4 -2
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/save.js +2 -1
- package/build-module/table-of-contents/save.js.map +1 -1
- package/build-module/tag-cloud/edit.js +2 -1
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/tag-cloud/index.js +0 -1
- package/build-module/tag-cloud/index.js.map +1 -1
- package/build-module/template-part/edit/index.js +8 -4
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +3 -2
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/template-part/index.js +0 -1
- package/build-module/template-part/index.js.map +1 -1
- package/build-module/term-description/edit.js +2 -1
- package/build-module/term-description/edit.js.map +1 -1
- package/build-module/term-description/index.js +0 -1
- package/build-module/term-description/index.js.map +1 -1
- package/build-module/text-columns/edit.js +4 -3
- package/build-module/text-columns/edit.js.map +1 -1
- package/build-module/text-columns/save.js +4 -3
- package/build-module/text-columns/save.js.map +1 -1
- package/build-module/utils/interactivity/directives.js +4 -4
- package/build-module/utils/interactivity/directives.js.map +1 -1
- package/build-module/utils/interactivity/index.js +1 -3
- package/build-module/utils/interactivity/index.js.map +1 -1
- package/build-module/utils/migrate-font-family.js +1 -1
- package/build-module/utils/migrate-font-family.js.map +1 -1
- package/build-module/verse/deprecated.js +4 -3
- package/build-module/verse/deprecated.js.map +1 -1
- package/build-module/verse/edit.js +4 -5
- package/build-module/verse/edit.js.map +1 -1
- package/build-module/verse/save.js +4 -3
- package/build-module/verse/save.js.map +1 -1
- package/build-module/video/deprecated.js +2 -1
- package/build-module/video/deprecated.js.map +1 -1
- package/build-module/video/edit.js +4 -2
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/edit.native.js +8 -7
- package/build-module/video/edit.native.js.map +1 -1
- package/build-module/video/save.js +2 -1
- package/build-module/video/save.js.map +1 -1
- package/build-module/video/tracks.js +4 -4
- package/build-module/video/tracks.js.map +1 -1
- package/build-style/avatar/style-rtl.css +1 -0
- package/build-style/avatar/style.css +1 -0
- package/build-style/editor-rtl.css +0 -17
- package/build-style/editor.css +0 -17
- package/build-style/footnotes/style-rtl.css +106 -0
- package/build-style/footnotes/style.css +106 -0
- package/build-style/image/style-rtl.css +71 -11
- package/build-style/image/style.css +71 -11
- package/build-style/navigation/editor-rtl.css +0 -17
- package/build-style/navigation/editor.css +0 -17
- package/build-style/style-rtl.css +91 -12
- package/build-style/style.css +91 -12
- package/package.json +33 -32
- package/src/archives/block.json +0 -1
- package/src/avatar/block.json +1 -2
- package/src/avatar/style.scss +1 -0
- package/src/block/block.json +1 -1
- package/src/block/edit.js +1 -0
- package/src/block/test/__snapshots__/transforms.native.js.snap +2 -2
- package/src/block/test/edit.native.js +5 -7
- package/src/block/test/transforms.native.js +1 -1
- package/src/buttons/block.json +1 -1
- package/src/buttons/edit.js +2 -2
- package/src/buttons/edit.native.js +7 -6
- package/src/buttons/test/__snapshots__/edit.native.js.snap +6 -0
- package/src/buttons/test/edit.native.js +30 -2
- package/src/calendar/block.json +0 -1
- package/src/categories/block.json +0 -1
- package/src/column/block.json +1 -1
- package/src/columns/block.json +1 -1
- package/src/columns/test/edit.native.js +36 -32
- package/src/comment-author-avatar/block.json +0 -1
- package/src/comment-author-name/block.json +0 -1
- package/src/comment-content/block.json +0 -1
- package/src/comment-date/block.json +0 -1
- package/src/comment-edit-link/block.json +0 -1
- package/src/comment-reply-link/block.json +0 -1
- package/src/comment-template/block.json +0 -1
- package/src/comments/block.json +0 -1
- package/src/comments-pagination/block.json +1 -2
- package/src/comments-pagination-next/block.json +0 -1
- package/src/comments-pagination-numbers/block.json +0 -1
- package/src/comments-pagination-previous/block.json +0 -1
- package/src/comments-title/edit.js +2 -6
- package/src/cover/block.json +1 -1
- package/src/cover/edit/resizable-cover-popover.js +1 -1
- package/src/cover/test/edit.native.js +45 -31
- package/src/cover/transforms.js +1 -1
- package/src/details/block.json +1 -1
- package/src/details/edit.js +12 -9
- package/src/details/init.js +6 -0
- package/src/embed/test/index.native.js +38 -44
- package/src/file/block.json +1 -1
- package/src/file/index.php +18 -1
- package/src/file/view.js +9 -0
- package/src/footnotes/block.json +18 -0
- package/src/footnotes/edit.js +52 -0
- package/src/footnotes/format.js +112 -0
- package/src/footnotes/index.js +29 -0
- package/src/footnotes/index.php +78 -0
- package/src/footnotes/style.scss +18 -0
- package/src/gallery/block.json +1 -1
- package/src/gallery/edit.js +4 -1
- package/src/gallery/gallery.native.js +1 -1
- package/src/gallery/test/__snapshots__/index.native.js.snap +6 -0
- package/src/gallery/test/index.native.js +23 -1
- package/src/group/block.json +1 -1
- package/src/group/deprecated.js +1 -1
- package/src/group/test/edit.native.js +2 -4
- package/src/heading/edit.js +2 -2
- package/src/home-link/block.json +0 -1
- package/src/image/block.json +6 -0
- package/src/image/edit.js +1 -5
- package/src/image/image.js +152 -72
- package/src/image/interactivity.js +155 -13
- package/src/image/save.js +7 -1
- package/src/image/style.scss +79 -9
- package/src/image/test/edit.native.js +3 -13
- package/src/image/utils.js +16 -0
- package/src/index.js +2 -0
- package/src/latest-comments/block.json +0 -1
- package/src/latest-posts/block.json +0 -1
- package/src/latest-posts/edit.js +17 -9
- package/src/latest-posts/index.php +8 -0
- package/src/list/ordered-list-settings.js +20 -2
- package/src/list/test/edit.native.js +5 -0
- package/src/loginout/block.json +0 -1
- package/src/media-text/edit.js +1 -1
- package/src/navigation/block.json +2 -3
- package/src/navigation/constants.js +11 -0
- package/src/navigation/deprecated.js +1 -1
- package/src/navigation/edit/index.js +15 -6
- package/src/navigation/edit/leaf-more-menu.js +1 -2
- package/src/navigation/edit/menu-inspector-controls.js +24 -26
- package/src/navigation/edit/navigation-menu-selector.js +17 -7
- package/src/navigation/edit/unsaved-inner-blocks.js +6 -6
- package/src/navigation/editor.scss +0 -24
- package/src/navigation/index.php +85 -70
- package/src/navigation/test/use-navigation-menu.js +15 -3
- package/src/navigation/use-navigation-menu.js +11 -8
- package/src/navigation/view-modal.js +78 -0
- package/src/navigation/view.js +74 -0
- package/src/page-list/block.json +0 -1
- package/src/paragraph/test/__snapshots__/edit.native.js.snap +39 -0
- package/src/paragraph/test/edit.native.js +3 -3
- package/src/pattern/block.json +1 -5
- package/src/pattern/edit.js +14 -40
- package/src/pattern/index.js +4 -5
- package/src/pattern/index.php +1 -13
- package/src/post-author/block.json +0 -1
- package/src/post-author/edit.js +3 -3
- package/src/post-author-biography/block.json +0 -1
- package/src/post-author-name/block.json +0 -1
- package/src/post-comments-count/block.json +0 -1
- package/src/post-comments-form/block.json +0 -1
- package/src/post-comments-link/block.json +0 -1
- package/src/post-content/block.json +1 -2
- package/src/post-date/block.json +0 -1
- package/src/post-excerpt/block.json +0 -1
- package/src/post-featured-image/block.json +0 -1
- package/src/post-navigation-link/block.json +0 -1
- package/src/post-template/block.json +1 -2
- package/src/post-template/edit.js +4 -1
- package/src/post-template/index.php +5 -0
- package/src/post-terms/block.json +0 -1
- package/src/post-terms/edit.js +8 -7
- package/src/post-terms/hooks.js +3 -3
- package/src/post-time-to-read/init.js +6 -0
- package/src/post-title/block.json +0 -1
- package/src/post-title/edit.js +4 -4
- package/src/post-title/index.php +1 -1
- package/src/preformatted/test/edit.native.js +1 -13
- package/src/query/block.json +1 -2
- package/src/query/deprecated.js +7 -5
- package/src/query/edit/inspector-controls/index.js +1 -1
- package/src/query/edit/query-content.js +13 -4
- package/src/query-no-results/block.json +0 -1
- package/src/query-pagination/block.json +1 -2
- package/src/query-pagination-next/block.json +0 -1
- package/src/query-pagination-numbers/block.json +1 -2
- package/src/query-pagination-previous/block.json +0 -1
- package/src/query-title/block.json +0 -1
- package/src/query-title/edit.js +2 -6
- package/src/read-more/block.json +0 -1
- package/src/rss/block.json +0 -1
- package/src/search/block.json +0 -1
- package/src/search/edit.js +3 -3
- package/src/site-logo/block.json +0 -1
- package/src/site-tagline/block.json +0 -1
- package/src/site-tagline/icon.js +1 -2
- package/src/site-title/block.json +0 -1
- package/src/site-title/edit/index.js +5 -6
- package/src/social-link/block.json +0 -1
- package/src/social-links/block.json +1 -1
- package/src/spacer/save.js +7 -2
- package/src/spacer/test/index.native.js +33 -29
- package/src/style.scss +1 -0
- package/src/tag-cloud/block.json +0 -1
- package/src/template-part/block.json +0 -1
- package/src/template-part/edit/inner-blocks.js +1 -1
- package/src/template-part/index.php +18 -11
- package/src/term-description/block.json +0 -1
- package/src/utils/interactivity/index.js +0 -2
- package/src/utils/migrate-font-family.js +1 -1
- package/build/heading/heading-level-dropdown.js +0 -81
- package/build/heading/heading-level-dropdown.js.map +0 -1
- package/build/heading/heading-level-dropdown.native.js +0 -72
- package/build/heading/heading-level-dropdown.native.js.map +0 -1
- package/build/pattern/v1/edit.js +0 -56
- package/build/pattern/v1/edit.js.map +0 -1
- package/build/private-apis.js.map +0 -1
- package/build/site-title/edit/level-icon.js +0 -40
- package/build/site-title/edit/level-icon.js.map +0 -1
- package/build/site-title/edit/level-toolbar.js +0 -51
- package/build/site-title/edit/level-toolbar.js.map +0 -1
- package/build-module/heading/heading-level-dropdown.js +0 -69
- package/build-module/heading/heading-level-dropdown.js.map +0 -1
- package/build-module/heading/heading-level-dropdown.native.js +0 -60
- package/build-module/heading/heading-level-dropdown.native.js.map +0 -1
- package/build-module/pattern/v1/edit.js +0 -47
- package/build-module/pattern/v1/edit.js.map +0 -1
- package/build-module/private-apis.js.map +0 -1
- package/build-module/site-title/edit/level-icon.js +0 -31
- package/build-module/site-title/edit/level-icon.js.map +0 -1
- package/build-module/site-title/edit/level-toolbar.js +0 -39
- package/build-module/site-title/edit/level-toolbar.js.map +0 -1
- package/src/heading/heading-level-dropdown.js +0 -69
- package/src/heading/heading-level-dropdown.native.js +0 -63
- package/src/pattern/v1/edit.js +0 -57
- package/src/site-title/edit/level-icon.js +0 -28
- package/src/site-title/edit/level-toolbar.js +0 -34
- /package/src/{private-apis.js → lock-unlock.js} +0 -0
|
@@ -71,7 +71,8 @@ export default function ResponsiveWrapper({
|
|
|
71
71
|
}, createElement("div", {
|
|
72
72
|
className: "wp-block-navigation__responsive-close",
|
|
73
73
|
tabIndex: "-1"
|
|
74
|
-
}, createElement("div", dialogProps
|
|
74
|
+
}, createElement("div", { ...dialogProps
|
|
75
|
+
}, createElement(Button, {
|
|
75
76
|
className: "wp-block-navigation__responsive-container-close",
|
|
76
77
|
"aria-label": hasIcon && __('Close menu'),
|
|
77
78
|
onClick: () => onToggle(false)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/responsive-wrapper.js"],"names":["classnames","close","Icon","Button","__","getColorClassName","OverlayMenuIcon","ResponsiveWrapper","children","id","isOpen","isResponsive","onToggle","isHiddenByDefault","overlayBackgroundColor","overlayTextColor","hasIcon","icon","responsiveContainerClasses","color","class","slug","styles","backgroundColor","openButtonClasses","modalId","dialogProps","className","role"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,KAAT,EAAgBC,IAAhB,QAA4B,kBAA5B;AACA,SAASC,MAAT,QAAuB,uBAAvB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,QAAkC,yBAAlC;AAEA;AACA;AACA;;AACA,OAAOC,eAAP,MAA4B,qBAA5B;AAEA,eAAe,SAASC,iBAAT,CAA4B;AAC1CC,EAAAA,QAD0C;AAE1CC,EAAAA,EAF0C;AAG1CC,EAAAA,MAH0C;AAI1CC,EAAAA,YAJ0C;AAK1CC,EAAAA,QAL0C;AAM1CC,EAAAA,iBAN0C;AAO1CC,EAAAA,sBAP0C;AAQ1CC,EAAAA,gBAR0C;AAS1CC,EAAAA,OAT0C;AAU1CC,EAAAA;AAV0C,CAA5B,EAWX;AACH,MAAK,CAAEN,YAAP,EAAsB;AACrB,WAAOH,QAAP;AACA;;AAED,QAAMU,0BAA0B,GAAGlB,UAAU,CAC5C,2CAD4C,EAE5C;AACC,sBACC,CAAC,CAAEe,gBAAgB,CAACI,KAApB,IAA6B,CAAC,CAAEJ,gBAAgB,EAAEK,KAFpD;AAGC,KAAEf,iBAAiB,CAAE,OAAF,EAAWU,gBAAgB,EAAEM,IAA7B,CAAnB,GACC,CAAC,CAAEN,gBAAgB,EAAEM,IAJvB;AAKC,sBACC,CAAC,CAAEP,sBAAsB,CAACK,KAA1B,IACAL,sBAAsB,EAAEM,KAP1B;AAQC,KAAEf,iBAAiB,CAClB,kBADkB,EAElBS,sBAAsB,EAAEO,IAFN,CAAnB,GAGK,CAAC,CAAEP,sBAAsB,EAAEO,IAXjC;AAYC,oBAAgBX,MAZjB;AAaC,yBAAqBG;AAbtB,GAF4C,CAA7C;AAmBA,QAAMS,MAAM,GAAG;AACdH,IAAAA,KAAK,EAAE,CAAEJ,gBAAgB,EAAEM,IAApB,IAA4BN,gBAAgB,EAAEI,KADvC;AAEdI,IAAAA,eAAe,EACd,CAAET,sBAAsB,EAAEO,IAA1B,IACAP,sBAAsB,EAAEK,KADxB,IAEAL,sBAAsB,CAACK;AALV,GAAf;AAQA,QAAMK,iBAAiB,GAAGxB,UAAU,CACnC,gDADmC,EAEnC;AAAE,oBAAgBa;AAAlB,GAFmC,CAApC;AAKA,QAAMY,OAAO,GAAI,GAAGhB,EAAI,QAAxB;AAEA,QAAMiB,WAAW,GAAG;AACnBC,IAAAA,SAAS,EAAE,wCADQ;AAEnB,QAAKjB,MAAM,IAAI;AACdkB,MAAAA,IAAI,EAAE,QADQ;AAEd,oBAAc,IAFA;AAGd,oBAAcxB,EAAE,CAAE,MAAF;AAHF,KAAf;AAFmB,GAApB;AASA,SACC,8BACG,CAAEM,MAAF,IACD,cAAC,MAAD;AACC,qBAAc,MADf;AAEC,kBAAaM,OAAO,IAAIZ,EAAE,CAAE,WAAF,CAF3B;AAGC,IAAA,SAAS,EAAGoB,iBAHb;AAIC,IAAA,OAAO,EAAG,MAAMZ,QAAQ,CAAE,IAAF;AAJzB,KAMGI,OAAO,IAAI,cAAC,eAAD;AAAiB,IAAA,IAAI,EAAGC;AAAxB,IANd,EAOG,CAAED,OAAF,IAAaZ,EAAE,CAAE,MAAF,CAPlB,CAFF,EAaC;AACC,IAAA,SAAS,EAAGc,0BADb;AAEC,IAAA,KAAK,EAAGI,MAFT;AAGC,IAAA,EAAE,EAAGG;AAHN,KAKC;AACC,IAAA,SAAS,EAAC,uCADX;AAEC,IAAA,QAAQ,EAAC;AAFV,KAIC,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/responsive-wrapper.js"],"names":["classnames","close","Icon","Button","__","getColorClassName","OverlayMenuIcon","ResponsiveWrapper","children","id","isOpen","isResponsive","onToggle","isHiddenByDefault","overlayBackgroundColor","overlayTextColor","hasIcon","icon","responsiveContainerClasses","color","class","slug","styles","backgroundColor","openButtonClasses","modalId","dialogProps","className","role"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,KAAT,EAAgBC,IAAhB,QAA4B,kBAA5B;AACA,SAASC,MAAT,QAAuB,uBAAvB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,QAAkC,yBAAlC;AAEA;AACA;AACA;;AACA,OAAOC,eAAP,MAA4B,qBAA5B;AAEA,eAAe,SAASC,iBAAT,CAA4B;AAC1CC,EAAAA,QAD0C;AAE1CC,EAAAA,EAF0C;AAG1CC,EAAAA,MAH0C;AAI1CC,EAAAA,YAJ0C;AAK1CC,EAAAA,QAL0C;AAM1CC,EAAAA,iBAN0C;AAO1CC,EAAAA,sBAP0C;AAQ1CC,EAAAA,gBAR0C;AAS1CC,EAAAA,OAT0C;AAU1CC,EAAAA;AAV0C,CAA5B,EAWX;AACH,MAAK,CAAEN,YAAP,EAAsB;AACrB,WAAOH,QAAP;AACA;;AAED,QAAMU,0BAA0B,GAAGlB,UAAU,CAC5C,2CAD4C,EAE5C;AACC,sBACC,CAAC,CAAEe,gBAAgB,CAACI,KAApB,IAA6B,CAAC,CAAEJ,gBAAgB,EAAEK,KAFpD;AAGC,KAAEf,iBAAiB,CAAE,OAAF,EAAWU,gBAAgB,EAAEM,IAA7B,CAAnB,GACC,CAAC,CAAEN,gBAAgB,EAAEM,IAJvB;AAKC,sBACC,CAAC,CAAEP,sBAAsB,CAACK,KAA1B,IACAL,sBAAsB,EAAEM,KAP1B;AAQC,KAAEf,iBAAiB,CAClB,kBADkB,EAElBS,sBAAsB,EAAEO,IAFN,CAAnB,GAGK,CAAC,CAAEP,sBAAsB,EAAEO,IAXjC;AAYC,oBAAgBX,MAZjB;AAaC,yBAAqBG;AAbtB,GAF4C,CAA7C;AAmBA,QAAMS,MAAM,GAAG;AACdH,IAAAA,KAAK,EAAE,CAAEJ,gBAAgB,EAAEM,IAApB,IAA4BN,gBAAgB,EAAEI,KADvC;AAEdI,IAAAA,eAAe,EACd,CAAET,sBAAsB,EAAEO,IAA1B,IACAP,sBAAsB,EAAEK,KADxB,IAEAL,sBAAsB,CAACK;AALV,GAAf;AAQA,QAAMK,iBAAiB,GAAGxB,UAAU,CACnC,gDADmC,EAEnC;AAAE,oBAAgBa;AAAlB,GAFmC,CAApC;AAKA,QAAMY,OAAO,GAAI,GAAGhB,EAAI,QAAxB;AAEA,QAAMiB,WAAW,GAAG;AACnBC,IAAAA,SAAS,EAAE,wCADQ;AAEnB,QAAKjB,MAAM,IAAI;AACdkB,MAAAA,IAAI,EAAE,QADQ;AAEd,oBAAc,IAFA;AAGd,oBAAcxB,EAAE,CAAE,MAAF;AAHF,KAAf;AAFmB,GAApB;AASA,SACC,8BACG,CAAEM,MAAF,IACD,cAAC,MAAD;AACC,qBAAc,MADf;AAEC,kBAAaM,OAAO,IAAIZ,EAAE,CAAE,WAAF,CAF3B;AAGC,IAAA,SAAS,EAAGoB,iBAHb;AAIC,IAAA,OAAO,EAAG,MAAMZ,QAAQ,CAAE,IAAF;AAJzB,KAMGI,OAAO,IAAI,cAAC,eAAD;AAAiB,IAAA,IAAI,EAAGC;AAAxB,IANd,EAOG,CAAED,OAAF,IAAaZ,EAAE,CAAE,MAAF,CAPlB,CAFF,EAaC;AACC,IAAA,SAAS,EAAGc,0BADb;AAEC,IAAA,KAAK,EAAGI,MAFT;AAGC,IAAA,EAAE,EAAGG;AAHN,KAKC;AACC,IAAA,SAAS,EAAC,uCADX;AAEC,IAAA,QAAQ,EAAC;AAFV,KAIC,0BAAUC;AAAV,KACC,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,iDADX;AAEC,kBAAaV,OAAO,IAAIZ,EAAE,CAAE,YAAF,CAF3B;AAGC,IAAA,OAAO,EAAG,MAAMQ,QAAQ,CAAE,KAAF;AAHzB,KAKGI,OAAO,IAAI,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGf;AAAb,IALd,EAMG,CAAEe,OAAF,IAAaZ,EAAE,CAAE,OAAF,CANlB,CADD,EASC;AACC,IAAA,SAAS,EAAC,mDADX;AAEC,IAAA,EAAE,EAAI,GAAGqB,OAAS;AAFnB,KAIGjB,QAJH,CATD,CAJD,CALD,CAbD,CADD;AA2CA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { close, Icon } from '@wordpress/icons';\nimport { Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { getColorClassName } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport OverlayMenuIcon from './overlay-menu-icon';\n\nexport default function ResponsiveWrapper( {\n\tchildren,\n\tid,\n\tisOpen,\n\tisResponsive,\n\tonToggle,\n\tisHiddenByDefault,\n\toverlayBackgroundColor,\n\toverlayTextColor,\n\thasIcon,\n\ticon,\n} ) {\n\tif ( ! isResponsive ) {\n\t\treturn children;\n\t}\n\n\tconst responsiveContainerClasses = classnames(\n\t\t'wp-block-navigation__responsive-container',\n\t\t{\n\t\t\t'has-text-color':\n\t\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t\t[ getColorClassName( 'color', overlayTextColor?.slug ) ]:\n\t\t\t\t!! overlayTextColor?.slug,\n\t\t\t'has-background':\n\t\t\t\t!! overlayBackgroundColor.color ||\n\t\t\t\toverlayBackgroundColor?.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\toverlayBackgroundColor?.slug\n\t\t\t) ]: !! overlayBackgroundColor?.slug,\n\t\t\t'is-menu-open': isOpen,\n\t\t\t'hidden-by-default': isHiddenByDefault,\n\t\t}\n\t);\n\n\tconst styles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\n\t};\n\n\tconst openButtonClasses = classnames(\n\t\t'wp-block-navigation__responsive-container-open',\n\t\t{ 'always-shown': isHiddenByDefault }\n\t);\n\n\tconst modalId = `${ id }-modal`;\n\n\tconst dialogProps = {\n\t\tclassName: 'wp-block-navigation__responsive-dialog',\n\t\t...( isOpen && {\n\t\t\trole: 'dialog',\n\t\t\t'aria-modal': true,\n\t\t\t'aria-label': __( 'Menu' ),\n\t\t} ),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isOpen && (\n\t\t\t\t<Button\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\taria-label={ hasIcon && __( 'Open menu' ) }\n\t\t\t\t\tclassName={ openButtonClasses }\n\t\t\t\t\tonClick={ () => onToggle( true ) }\n\t\t\t\t>\n\t\t\t\t\t{ hasIcon && <OverlayMenuIcon icon={ icon } /> }\n\t\t\t\t\t{ ! hasIcon && __( 'Menu' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\n\t\t\t<div\n\t\t\t\tclassName={ responsiveContainerClasses }\n\t\t\t\tstyle={ styles }\n\t\t\t\tid={ modalId }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"wp-block-navigation__responsive-close\"\n\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t>\n\t\t\t\t\t<div { ...dialogProps }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation__responsive-container-close\"\n\t\t\t\t\t\t\taria-label={ hasIcon && __( 'Close menu' ) }\n\t\t\t\t\t\t\tonClick={ () => onToggle( false ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ hasIcon && <Icon icon={ close } /> }\n\t\t\t\t\t\t\t{ ! hasIcon && __( 'Close' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation__responsive-container-content\"\n\t\t\t\t\t\t\tid={ `${ modalId }-content` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -13,7 +13,7 @@ import { useContext, useEffect, useRef, useMemo } from '@wordpress/element';
|
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
import { areBlocksDirty } from './are-blocks-dirty';
|
|
16
|
-
import { DEFAULT_BLOCK, ALLOWED_BLOCKS } from '../constants';
|
|
16
|
+
import { DEFAULT_BLOCK, ALLOWED_BLOCKS, SELECT_NAVIGATION_MENUS_ARGS } from '../constants';
|
|
17
17
|
const EMPTY_OBJECT = {};
|
|
18
18
|
export default function UnsavedInnerBlocks({
|
|
19
19
|
blocks,
|
|
@@ -64,10 +64,7 @@ export default function UnsavedInnerBlocks({
|
|
|
64
64
|
} = select(coreStore);
|
|
65
65
|
return {
|
|
66
66
|
isSaving: isSavingEntityRecord('postType', 'wp_navigation'),
|
|
67
|
-
hasResolvedAllNavigationMenus: hasFinishedResolution('getEntityRecords',
|
|
68
|
-
per_page: -1,
|
|
69
|
-
status: ['publish', 'draft']
|
|
70
|
-
}])
|
|
67
|
+
hasResolvedAllNavigationMenus: hasFinishedResolution('getEntityRecords', SELECT_NAVIGATION_MENUS_ARGS)
|
|
71
68
|
};
|
|
72
69
|
}, [isDisabled]); // Automatically save the uncontrolled blocks.
|
|
73
70
|
|
|
@@ -91,6 +88,7 @@ export default function UnsavedInnerBlocks({
|
|
|
91
88
|
createNavigationMenu(null, blocks);
|
|
92
89
|
}, [blocks, createNavigationMenu, isDisabled, isSaving, hasResolvedAllNavigationMenus, innerBlocksAreDirty, hasSelection]);
|
|
93
90
|
const Wrapper = isSaving ? Disabled : 'div';
|
|
94
|
-
return createElement(Wrapper, innerBlocksProps
|
|
91
|
+
return createElement(Wrapper, { ...innerBlocksProps
|
|
92
|
+
});
|
|
95
93
|
}
|
|
96
94
|
//# sourceMappingURL=unsaved-inner-blocks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/unsaved-inner-blocks.js"],"names":["useInnerBlocksProps","Disabled","store","coreStore","useSelect","useContext","useEffect","useRef","useMemo","areBlocksDirty","DEFAULT_BLOCK","ALLOWED_BLOCKS","EMPTY_OBJECT","UnsavedInnerBlocks","blocks","createNavigationMenu","hasSelection","originalBlocks","current","innerBlocksAreDirty","shouldDirectInsert","every","name","isDisabled","Context","innerBlocksProps","className","renderAppender","undefined","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","isSaving","hasResolvedAllNavigationMenus","select","hasFinishedResolution","isSavingEntityRecord","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/unsaved-inner-blocks.js"],"names":["useInnerBlocksProps","Disabled","store","coreStore","useSelect","useContext","useEffect","useRef","useMemo","areBlocksDirty","DEFAULT_BLOCK","ALLOWED_BLOCKS","SELECT_NAVIGATION_MENUS_ARGS","EMPTY_OBJECT","UnsavedInnerBlocks","blocks","createNavigationMenu","hasSelection","originalBlocks","current","innerBlocksAreDirty","shouldDirectInsert","every","name","isDisabled","Context","innerBlocksProps","className","renderAppender","undefined","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","isSaving","hasResolvedAllNavigationMenus","select","hasFinishedResolution","isSavingEntityRecord","Wrapper"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useInnerBlocksProps } from '@wordpress/block-editor';\nimport { Disabled } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useContext, useEffect, useRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { areBlocksDirty } from './are-blocks-dirty';\nimport {\n\tDEFAULT_BLOCK,\n\tALLOWED_BLOCKS,\n\tSELECT_NAVIGATION_MENUS_ARGS,\n} from '../constants';\n\nconst EMPTY_OBJECT = {};\n\nexport default function UnsavedInnerBlocks( {\n\tblocks,\n\tcreateNavigationMenu,\n\thasSelection,\n} ) {\n\tconst originalBlocks = useRef();\n\n\tuseEffect( () => {\n\t\t// Initially store the uncontrolled inner blocks for\n\t\t// dirty state comparison.\n\t\tif ( ! originalBlocks?.current ) {\n\t\t\toriginalBlocks.current = blocks;\n\t\t}\n\t}, [ blocks ] );\n\n\t// If the current inner blocks are different from the original inner blocks\n\t// from the post content then the user has made changes to the inner blocks.\n\t// At this point the inner blocks can be considered \"dirty\".\n\t// Note: referential equality is not sufficient for comparison as the inner blocks\n\t// of the page list are controlled and may be updated async due to syncing with\n\t// entity records. As a result we need to perform a deep equality check skipping\n\t// the page list's inner blocks.\n\tconst innerBlocksAreDirty = areBlocksDirty(\n\t\toriginalBlocks?.current,\n\t\tblocks\n\t);\n\n\tconst shouldDirectInsert = useMemo(\n\t\t() =>\n\t\t\tblocks.every(\n\t\t\t\t( { name } ) =>\n\t\t\t\t\tname === 'core/navigation-link' ||\n\t\t\t\t\tname === 'core/navigation-submenu' ||\n\t\t\t\t\tname === 'core/page-list'\n\t\t\t),\n\t\t[ blocks ]\n\t);\n\n\t// The block will be disabled in a block preview, use this as a way of\n\t// avoiding the side-effects of this component for block previews.\n\tconst isDisabled = useContext( Disabled.Context );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-navigation__container',\n\t\t},\n\t\t{\n\t\t\trenderAppender: hasSelection ? undefined : false,\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: shouldDirectInsert,\n\t\t}\n\t);\n\n\tconst { isSaving, hasResolvedAllNavigationMenus } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isDisabled ) {\n\t\t\t\treturn EMPTY_OBJECT;\n\t\t\t}\n\n\t\t\tconst { hasFinishedResolution, isSavingEntityRecord } =\n\t\t\t\tselect( coreStore );\n\n\t\t\treturn {\n\t\t\t\tisSaving: isSavingEntityRecord( 'postType', 'wp_navigation' ),\n\t\t\t\thasResolvedAllNavigationMenus: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tSELECT_NAVIGATION_MENUS_ARGS\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ isDisabled ]\n\t);\n\n\t// Automatically save the uncontrolled blocks.\n\tuseEffect( () => {\n\t\t// The block will be disabled when used in a BlockPreview.\n\t\t// In this case avoid automatic creation of a wp_navigation post.\n\t\t// Otherwise the user will be spammed with lots of menus!\n\t\t//\n\t\t// Also ensure other navigation menus have loaded so an\n\t\t// accurate name can be created.\n\t\t//\n\t\t// Don't try saving when another save is already\n\t\t// in progress.\n\t\t//\n\t\t// And finally only create the menu when the block is selected,\n\t\t// which is an indication they want to start editing.\n\t\tif (\n\t\t\tisDisabled ||\n\t\t\tisSaving ||\n\t\t\t! hasResolvedAllNavigationMenus ||\n\t\t\t! hasSelection ||\n\t\t\t! innerBlocksAreDirty\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tcreateNavigationMenu( null, blocks );\n\t}, [\n\t\tblocks,\n\t\tcreateNavigationMenu,\n\t\tisDisabled,\n\t\tisSaving,\n\t\thasResolvedAllNavigationMenus,\n\t\tinnerBlocksAreDirty,\n\t\thasSelection,\n\t] );\n\n\tconst Wrapper = isSaving ? Disabled : 'div';\n\n\treturn <Wrapper { ...innerBlocksProps } />;\n}\n"]}
|
|
@@ -101,7 +101,6 @@ const metadata = {
|
|
|
101
101
|
},
|
|
102
102
|
supports: {
|
|
103
103
|
align: ["wide", "full"],
|
|
104
|
-
anchor: true,
|
|
105
104
|
html: false,
|
|
106
105
|
inserter: true,
|
|
107
106
|
typography: {
|
|
@@ -125,7 +124,7 @@ const metadata = {
|
|
|
125
124
|
blockGap: true
|
|
126
125
|
}
|
|
127
126
|
},
|
|
128
|
-
|
|
127
|
+
layout: {
|
|
129
128
|
allowSwitching: false,
|
|
130
129
|
allowInheriting: false,
|
|
131
130
|
allowVerticalAlignment: false,
|
|
@@ -144,7 +143,7 @@ const metadata = {
|
|
|
144
143
|
}
|
|
145
144
|
}
|
|
146
145
|
},
|
|
147
|
-
viewScript: "file:./
|
|
146
|
+
viewScript: ["file:./view.min.js", "file:./view-modal.min.js"],
|
|
148
147
|
editorStyle: "wp-block-navigation-editor",
|
|
149
148
|
style: "wp-block-navigation"
|
|
150
149
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/index.js"],"names":["__","navigation","icon","initBlock","edit","save","deprecated","name","metadata","settings","example","attributes","overlayMenu","innerBlocks","label","url","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,UAAU,IAAIC,IAAvB,QAAmC,kBAAnC;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/index.js"],"names":["__","navigation","icon","initBlock","edit","save","deprecated","name","metadata","settings","example","attributes","overlayMenu","innerBlocks","label","url","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,UAAU,IAAIC,IAAvB,QAAmC,kBAAnC;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBP,EAAAA,IADuB;AAEvBQ,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,WAAW,EAAE;AADF,KADJ;AAIRC,IAAAA,WAAW,EAAE,CACZ;AACCN,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,MAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KADY,EASZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,OAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KATY,EAiBZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,SAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KAjBY;AAJL,GAFc;AAiCvBX,EAAAA,IAjCuB;AAkCvBC,EAAAA,IAlCuB;AAmCvBC,EAAAA;AAnCuB,CAAjB;AAsCP,OAAO,MAAMU,IAAI,GAAG,MAAMb,SAAS,CAAE;AAAEI,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { navigation as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\toverlayMenu: 'never',\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Home' as in a website's home page.\n\t\t\t\t\tlabel: __( 'Home' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'About' as in a website's about page.\n\t\t\t\t\tlabel: __( 'About' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Contact' as in a website's contact page.\n\t\t\t\t\tlabel: __( 'Contact' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
|
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { store as coreStore, useResourcePermissions } from '@wordpress/core-data';
|
|
5
5
|
import { useSelect } from '@wordpress/data';
|
|
6
|
+
/**
|
|
7
|
+
* Internal dependencies
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { SELECT_NAVIGATION_MENUS_ARGS } from './constants';
|
|
6
11
|
export default function useNavigationMenu(ref) {
|
|
7
12
|
const permissions = useResourcePermissions('navigation', ref);
|
|
8
13
|
return useSelect(select => {
|
|
@@ -48,14 +53,10 @@ function selectNavigationMenus(select) {
|
|
|
48
53
|
hasFinishedResolution,
|
|
49
54
|
isResolving
|
|
50
55
|
} = select(coreStore);
|
|
51
|
-
const args = ['postType', 'wp_navigation', {
|
|
52
|
-
per_page: -1,
|
|
53
|
-
status: ['publish', 'draft']
|
|
54
|
-
}];
|
|
55
56
|
return {
|
|
56
|
-
navigationMenus: getEntityRecords(...
|
|
57
|
-
isResolvingNavigationMenus: isResolving('getEntityRecords',
|
|
58
|
-
hasResolvedNavigationMenus: hasFinishedResolution('getEntityRecords',
|
|
57
|
+
navigationMenus: getEntityRecords(...SELECT_NAVIGATION_MENUS_ARGS),
|
|
58
|
+
isResolvingNavigationMenus: isResolving('getEntityRecords', SELECT_NAVIGATION_MENUS_ARGS),
|
|
59
|
+
hasResolvedNavigationMenus: hasFinishedResolution('getEntityRecords', SELECT_NAVIGATION_MENUS_ARGS)
|
|
59
60
|
};
|
|
60
61
|
}
|
|
61
62
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/use-navigation-menu.js"],"names":["store","coreStore","useResourcePermissions","useSelect","useNavigationMenu","ref","permissions","select","canCreate","canUpdate","canDelete","isResolving","hasResolved","navigationMenus","isResolvingNavigationMenus","hasResolvedNavigationMenus","selectNavigationMenus","navigationMenu","isNavigationMenuResolved","isNavigationMenuMissing","selectExistingMenu","canSwitchNavigationMenu","length","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","undefined","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","getEntityRecords","hasFinishedResolution","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/use-navigation-menu.js"],"names":["store","coreStore","useResourcePermissions","useSelect","SELECT_NAVIGATION_MENUS_ARGS","useNavigationMenu","ref","permissions","select","canCreate","canUpdate","canDelete","isResolving","hasResolved","navigationMenus","isResolvingNavigationMenus","hasResolvedNavigationMenus","selectNavigationMenus","navigationMenu","isNavigationMenuResolved","isNavigationMenuMissing","selectExistingMenu","canSwitchNavigationMenu","length","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","undefined","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","getEntityRecords","hasFinishedResolution","getEntityRecord","getEditedEntityRecord","args","editedNavigationMenu","hasResolvedNavigationMenu","isNavigationMenuPublishedOrDraft","status"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { SELECT_NAVIGATION_MENUS_ARGS } from './constants';\n\nexport default function useNavigationMenu( ref ) {\n\tconst permissions = useResourcePermissions( 'navigation', ref );\n\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tcanCreate,\n\t\t\t\tcanUpdate,\n\t\t\t\tcanDelete,\n\t\t\t\tisResolving,\n\t\t\t\thasResolved,\n\t\t\t} = permissions;\n\n\t\t\tconst {\n\t\t\t\tnavigationMenus,\n\t\t\t\tisResolvingNavigationMenus,\n\t\t\t\thasResolvedNavigationMenus,\n\t\t\t} = selectNavigationMenus( select );\n\n\t\t\tconst {\n\t\t\t\tnavigationMenu,\n\t\t\t\tisNavigationMenuResolved,\n\t\t\t\tisNavigationMenuMissing,\n\t\t\t} = selectExistingMenu( select, ref );\n\n\t\t\treturn {\n\t\t\t\tnavigationMenus,\n\t\t\t\tisResolvingNavigationMenus,\n\t\t\t\thasResolvedNavigationMenus,\n\n\t\t\t\tnavigationMenu,\n\t\t\t\tisNavigationMenuResolved,\n\t\t\t\tisNavigationMenuMissing,\n\n\t\t\t\tcanSwitchNavigationMenu: ref\n\t\t\t\t\t? navigationMenus?.length > 1\n\t\t\t\t\t: navigationMenus?.length > 0,\n\n\t\t\t\tcanUserCreateNavigationMenu: canCreate,\n\t\t\t\tisResolvingCanUserCreateNavigationMenu: isResolving,\n\t\t\t\thasResolvedCanUserCreateNavigationMenu: hasResolved,\n\n\t\t\t\tcanUserUpdateNavigationMenu: canUpdate,\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu: ref\n\t\t\t\t\t? hasResolved\n\t\t\t\t\t: undefined,\n\n\t\t\t\tcanUserDeleteNavigationMenu: canDelete,\n\t\t\t\thasResolvedCanUserDeleteNavigationMenu: ref\n\t\t\t\t\t? hasResolved\n\t\t\t\t\t: undefined,\n\t\t\t};\n\t\t},\n\t\t[ ref, permissions ]\n\t);\n}\n\nfunction selectNavigationMenus( select ) {\n\tconst { getEntityRecords, hasFinishedResolution, isResolving } =\n\t\tselect( coreStore );\n\n\treturn {\n\t\tnavigationMenus: getEntityRecords( ...SELECT_NAVIGATION_MENUS_ARGS ),\n\t\tisResolvingNavigationMenus: isResolving(\n\t\t\t'getEntityRecords',\n\t\t\tSELECT_NAVIGATION_MENUS_ARGS\n\t\t),\n\t\thasResolvedNavigationMenus: hasFinishedResolution(\n\t\t\t'getEntityRecords',\n\t\t\tSELECT_NAVIGATION_MENUS_ARGS\n\t\t),\n\t};\n}\n\nfunction selectExistingMenu( select, ref ) {\n\tif ( ! ref ) {\n\t\treturn {\n\t\t\tisNavigationMenuResolved: false,\n\t\t\tisNavigationMenuMissing: true,\n\t\t};\n\t}\n\n\tconst { getEntityRecord, getEditedEntityRecord, hasFinishedResolution } =\n\t\tselect( coreStore );\n\n\tconst args = [ 'postType', 'wp_navigation', ref ];\n\tconst navigationMenu = getEntityRecord( ...args );\n\tconst editedNavigationMenu = getEditedEntityRecord( ...args );\n\tconst hasResolvedNavigationMenu = hasFinishedResolution(\n\t\t'getEditedEntityRecord',\n\t\targs\n\t);\n\n\t// Only published Navigation posts are considered valid.\n\t// Draft Navigation posts are valid only on the editor,\n\t// requiring a post update to publish to show in frontend.\n\t// To achieve that, index.php must reflect this validation only for published.\n\tconst isNavigationMenuPublishedOrDraft =\n\t\teditedNavigationMenu.status === 'publish' ||\n\t\teditedNavigationMenu.status === 'draft';\n\n\treturn {\n\t\tisNavigationMenuResolved: hasResolvedNavigationMenu,\n\t\tisNavigationMenuMissing:\n\t\t\thasResolvedNavigationMenu &&\n\t\t\t( ! navigationMenu || ! isNavigationMenuPublishedOrDraft ),\n\n\t\t// getEditedEntityRecord will return the post regardless of status.\n\t\t// Therefore if the found post is not published then we should ignore it.\n\t\tnavigationMenu: isNavigationMenuPublishedOrDraft\n\t\t\t? editedNavigationMenu\n\t\t\t: null,\n\t};\n}\n"]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import MicroModal from 'micromodal'; // Responsive navigation toggle.
|
|
5
|
+
|
|
6
|
+
function navigationToggleModal(modal) {
|
|
7
|
+
const dialogContainer = modal.querySelector(`.wp-block-navigation__responsive-dialog`);
|
|
8
|
+
const isHidden = 'true' === modal.getAttribute('aria-hidden');
|
|
9
|
+
modal.classList.toggle('has-modal-open', !isHidden);
|
|
10
|
+
dialogContainer.toggleAttribute('aria-modal', !isHidden);
|
|
11
|
+
|
|
12
|
+
if (isHidden) {
|
|
13
|
+
dialogContainer.removeAttribute('role');
|
|
14
|
+
dialogContainer.removeAttribute('aria-modal');
|
|
15
|
+
} else {
|
|
16
|
+
dialogContainer.setAttribute('role', 'dialog');
|
|
17
|
+
dialogContainer.setAttribute('aria-modal', 'true');
|
|
18
|
+
} // Add a class to indicate the modal is open.
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
const htmlElement = document.documentElement;
|
|
22
|
+
htmlElement.classList.toggle('has-modal-open');
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function isLinkToAnchorOnCurrentPage(node) {
|
|
26
|
+
return node.hash && node.protocol === window.location.protocol && node.host === window.location.host && node.pathname === window.location.pathname && node.search === window.location.search;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
window.addEventListener('load', () => {
|
|
30
|
+
MicroModal.init({
|
|
31
|
+
onShow: navigationToggleModal,
|
|
32
|
+
onClose: navigationToggleModal,
|
|
33
|
+
openClass: 'is-menu-open'
|
|
34
|
+
}); // Close modal automatically on clicking anchor links inside modal.
|
|
35
|
+
|
|
36
|
+
const navigationLinks = document.querySelectorAll('.wp-block-navigation-item__content');
|
|
37
|
+
navigationLinks.forEach(function (link) {
|
|
38
|
+
// Ignore non-anchor links and anchor links which open on a new tab.
|
|
39
|
+
if (!isLinkToAnchorOnCurrentPage(link) || link.attributes?.target === '_blank') {
|
|
40
|
+
return;
|
|
41
|
+
} // Find the specific parent modal for this link
|
|
42
|
+
// since .close() won't work without an ID if there are
|
|
43
|
+
// multiple navigation menus in a post/page.
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
const modal = link.closest('.wp-block-navigation__responsive-container');
|
|
47
|
+
const modalId = modal?.getAttribute('id');
|
|
48
|
+
link.addEventListener('click', () => {
|
|
49
|
+
// check if modal exists and is open before trying to close it
|
|
50
|
+
// otherwise Micromodal will toggle the `has-modal-open` class
|
|
51
|
+
// on the html tag which prevents scrolling
|
|
52
|
+
if (modalId && modal.classList.contains('has-modal-open')) {
|
|
53
|
+
MicroModal.close(modalId);
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
//# sourceMappingURL=view-modal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/view-modal.js"],"names":["MicroModal","navigationToggleModal","modal","dialogContainer","querySelector","isHidden","getAttribute","classList","toggle","toggleAttribute","removeAttribute","setAttribute","htmlElement","document","documentElement","isLinkToAnchorOnCurrentPage","node","hash","protocol","window","location","host","pathname","search","addEventListener","init","onShow","onClose","openClass","navigationLinks","querySelectorAll","forEach","link","attributes","target","closest","modalId","contains","close"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB,C,CAEA;;AACA,SAASC,qBAAT,CAAgCC,KAAhC,EAAwC;AACvC,QAAMC,eAAe,GAAGD,KAAK,CAACE,aAAN,CACtB,yCADsB,CAAxB;AAIA,QAAMC,QAAQ,GAAG,WAAWH,KAAK,CAACI,YAAN,CAAoB,aAApB,CAA5B;AAEAJ,EAAAA,KAAK,CAACK,SAAN,CAAgBC,MAAhB,CAAwB,gBAAxB,EAA0C,CAAEH,QAA5C;AACAF,EAAAA,eAAe,CAACM,eAAhB,CAAiC,YAAjC,EAA+C,CAAEJ,QAAjD;;AAEA,MAAKA,QAAL,EAAgB;AACfF,IAAAA,eAAe,CAACO,eAAhB,CAAiC,MAAjC;AACAP,IAAAA,eAAe,CAACO,eAAhB,CAAiC,YAAjC;AACA,GAHD,MAGO;AACNP,IAAAA,eAAe,CAACQ,YAAhB,CAA8B,MAA9B,EAAsC,QAAtC;AACAR,IAAAA,eAAe,CAACQ,YAAhB,CAA8B,YAA9B,EAA4C,MAA5C;AACA,GAhBsC,CAkBvC;;;AACA,QAAMC,WAAW,GAAGC,QAAQ,CAACC,eAA7B;AACAF,EAAAA,WAAW,CAACL,SAAZ,CAAsBC,MAAtB,CAA8B,gBAA9B;AACA;;AAED,SAASO,2BAAT,CAAsCC,IAAtC,EAA6C;AAC5C,SACCA,IAAI,CAACC,IAAL,IACAD,IAAI,CAACE,QAAL,KAAkBC,MAAM,CAACC,QAAP,CAAgBF,QADlC,IAEAF,IAAI,CAACK,IAAL,KAAcF,MAAM,CAACC,QAAP,CAAgBC,IAF9B,IAGAL,IAAI,CAACM,QAAL,KAAkBH,MAAM,CAACC,QAAP,CAAgBE,QAHlC,IAIAN,IAAI,CAACO,MAAL,KAAgBJ,MAAM,CAACC,QAAP,CAAgBG,MALjC;AAOA;;AAEDJ,MAAM,CAACK,gBAAP,CAAyB,MAAzB,EAAiC,MAAM;AACtCxB,EAAAA,UAAU,CAACyB,IAAX,CAAiB;AAChBC,IAAAA,MAAM,EAAEzB,qBADQ;AAEhB0B,IAAAA,OAAO,EAAE1B,qBAFO;AAGhB2B,IAAAA,SAAS,EAAE;AAHK,GAAjB,EADsC,CAOtC;;AACA,QAAMC,eAAe,GAAGhB,QAAQ,CAACiB,gBAAT,CACvB,oCADuB,CAAxB;AAIAD,EAAAA,eAAe,CAACE,OAAhB,CAAyB,UAAWC,IAAX,EAAkB;AAC1C;AACA,QACC,CAAEjB,2BAA2B,CAAEiB,IAAF,CAA7B,IACAA,IAAI,CAACC,UAAL,EAAiBC,MAAjB,KAA4B,QAF7B,EAGE;AACD;AACA,KAPyC,CAS1C;AACA;AACA;;;AACA,UAAMhC,KAAK,GAAG8B,IAAI,CAACG,OAAL,CACb,4CADa,CAAd;AAGA,UAAMC,OAAO,GAAGlC,KAAK,EAAEI,YAAP,CAAqB,IAArB,CAAhB;AAEA0B,IAAAA,IAAI,CAACR,gBAAL,CAAuB,OAAvB,EAAgC,MAAM;AACrC;AACA;AACA;AACA,UAAKY,OAAO,IAAIlC,KAAK,CAACK,SAAN,CAAgB8B,QAAhB,CAA0B,gBAA1B,CAAhB,EAA+D;AAC9DrC,QAAAA,UAAU,CAACsC,KAAX,CAAkBF,OAAlB;AACA;AACD,KAPD;AAQA,GAzBD;AA0BA,CAtCD","sourcesContent":["/**\n * External dependencies\n */\nimport MicroModal from 'micromodal';\n\n// Responsive navigation toggle.\nfunction navigationToggleModal( modal ) {\n\tconst dialogContainer = modal.querySelector(\n\t\t`.wp-block-navigation__responsive-dialog`\n\t);\n\n\tconst isHidden = 'true' === modal.getAttribute( 'aria-hidden' );\n\n\tmodal.classList.toggle( 'has-modal-open', ! isHidden );\n\tdialogContainer.toggleAttribute( 'aria-modal', ! isHidden );\n\n\tif ( isHidden ) {\n\t\tdialogContainer.removeAttribute( 'role' );\n\t\tdialogContainer.removeAttribute( 'aria-modal' );\n\t} else {\n\t\tdialogContainer.setAttribute( 'role', 'dialog' );\n\t\tdialogContainer.setAttribute( 'aria-modal', 'true' );\n\t}\n\n\t// Add a class to indicate the modal is open.\n\tconst htmlElement = document.documentElement;\n\thtmlElement.classList.toggle( 'has-modal-open' );\n}\n\nfunction isLinkToAnchorOnCurrentPage( node ) {\n\treturn (\n\t\tnode.hash &&\n\t\tnode.protocol === window.location.protocol &&\n\t\tnode.host === window.location.host &&\n\t\tnode.pathname === window.location.pathname &&\n\t\tnode.search === window.location.search\n\t);\n}\n\nwindow.addEventListener( 'load', () => {\n\tMicroModal.init( {\n\t\tonShow: navigationToggleModal,\n\t\tonClose: navigationToggleModal,\n\t\topenClass: 'is-menu-open',\n\t} );\n\n\t// Close modal automatically on clicking anchor links inside modal.\n\tconst navigationLinks = document.querySelectorAll(\n\t\t'.wp-block-navigation-item__content'\n\t);\n\n\tnavigationLinks.forEach( function ( link ) {\n\t\t// Ignore non-anchor links and anchor links which open on a new tab.\n\t\tif (\n\t\t\t! isLinkToAnchorOnCurrentPage( link ) ||\n\t\t\tlink.attributes?.target === '_blank'\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Find the specific parent modal for this link\n\t\t// since .close() won't work without an ID if there are\n\t\t// multiple navigation menus in a post/page.\n\t\tconst modal = link.closest(\n\t\t\t'.wp-block-navigation__responsive-container'\n\t\t);\n\t\tconst modalId = modal?.getAttribute( 'id' );\n\n\t\tlink.addEventListener( 'click', () => {\n\t\t\t// check if modal exists and is open before trying to close it\n\t\t\t// otherwise Micromodal will toggle the `has-modal-open` class\n\t\t\t// on the html tag which prevents scrolling\n\t\t\tif ( modalId && modal.classList.contains( 'has-modal-open' ) ) {\n\t\t\t\tMicroModal.close( modalId );\n\t\t\t}\n\t\t} );\n\t} );\n} );\n"]}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
// Open on click functionality.
|
|
2
|
+
function closeSubmenus(element) {
|
|
3
|
+
element.querySelectorAll('[aria-expanded="true"]').forEach(function (toggle) {
|
|
4
|
+
toggle.setAttribute('aria-expanded', 'false');
|
|
5
|
+
});
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
function toggleSubmenuOnClick(event) {
|
|
9
|
+
const buttonToggle = event.target.closest('[aria-expanded]');
|
|
10
|
+
const isSubmenuOpen = buttonToggle.getAttribute('aria-expanded');
|
|
11
|
+
|
|
12
|
+
if (isSubmenuOpen === 'true') {
|
|
13
|
+
closeSubmenus(buttonToggle.closest('.wp-block-navigation-item'));
|
|
14
|
+
} else {
|
|
15
|
+
// Close all sibling submenus.
|
|
16
|
+
const parentElement = buttonToggle.closest('.wp-block-navigation-item');
|
|
17
|
+
const navigationParent = buttonToggle.closest('.wp-block-navigation__submenu-container, .wp-block-navigation__container, .wp-block-page-list');
|
|
18
|
+
navigationParent.querySelectorAll('.wp-block-navigation-item').forEach(function (child) {
|
|
19
|
+
if (child !== parentElement) {
|
|
20
|
+
closeSubmenus(child);
|
|
21
|
+
}
|
|
22
|
+
}); // Open submenu.
|
|
23
|
+
|
|
24
|
+
buttonToggle.setAttribute('aria-expanded', 'true');
|
|
25
|
+
}
|
|
26
|
+
} // Necessary for some themes such as TT1 Blocks, where
|
|
27
|
+
// scripts could be loaded before the body.
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
window.addEventListener('load', () => {
|
|
31
|
+
const submenuButtons = document.querySelectorAll('.wp-block-navigation-submenu__toggle');
|
|
32
|
+
submenuButtons.forEach(function (button) {
|
|
33
|
+
button.addEventListener('click', toggleSubmenuOnClick);
|
|
34
|
+
}); // Close on click outside.
|
|
35
|
+
|
|
36
|
+
document.addEventListener('click', function (event) {
|
|
37
|
+
const navigationBlocks = document.querySelectorAll('.wp-block-navigation');
|
|
38
|
+
navigationBlocks.forEach(function (block) {
|
|
39
|
+
if (!block.contains(event.target)) {
|
|
40
|
+
closeSubmenus(block);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}); // Close on focus outside or escape key.
|
|
44
|
+
|
|
45
|
+
document.addEventListener('keyup', function (event) {
|
|
46
|
+
const submenuBlocks = document.querySelectorAll('.wp-block-navigation-item.has-child');
|
|
47
|
+
submenuBlocks.forEach(function (block) {
|
|
48
|
+
if (!block.contains(event.target)) {
|
|
49
|
+
closeSubmenus(block);
|
|
50
|
+
} else if (event.key === 'Escape') {
|
|
51
|
+
const toggle = block.querySelector('[aria-expanded="true"]');
|
|
52
|
+
closeSubmenus(block); // Focus the submenu trigger so focus does not get trapped in the closed submenu.
|
|
53
|
+
|
|
54
|
+
toggle?.focus();
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
//# sourceMappingURL=view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/view.js"],"names":["closeSubmenus","element","querySelectorAll","forEach","toggle","setAttribute","toggleSubmenuOnClick","event","buttonToggle","target","closest","isSubmenuOpen","getAttribute","parentElement","navigationParent","child","window","addEventListener","submenuButtons","document","button","navigationBlocks","block","contains","submenuBlocks","key","querySelector","focus"],"mappings":"AAAA;AACA,SAASA,aAAT,CAAwBC,OAAxB,EAAkC;AACjCA,EAAAA,OAAO,CACLC,gBADF,CACoB,wBADpB,EAEEC,OAFF,CAEW,UAAWC,MAAX,EAAoB;AAC7BA,IAAAA,MAAM,CAACC,YAAP,CAAqB,eAArB,EAAsC,OAAtC;AACA,GAJF;AAKA;;AAED,SAASC,oBAAT,CAA+BC,KAA/B,EAAuC;AACtC,QAAMC,YAAY,GAAGD,KAAK,CAACE,MAAN,CAAaC,OAAb,CAAsB,iBAAtB,CAArB;AACA,QAAMC,aAAa,GAAGH,YAAY,CAACI,YAAb,CAA2B,eAA3B,CAAtB;;AAEA,MAAKD,aAAa,KAAK,MAAvB,EAAgC;AAC/BX,IAAAA,aAAa,CAAEQ,YAAY,CAACE,OAAb,CAAsB,2BAAtB,CAAF,CAAb;AACA,GAFD,MAEO;AACN;AACA,UAAMG,aAAa,GAAGL,YAAY,CAACE,OAAb,CACrB,2BADqB,CAAtB;AAGA,UAAMI,gBAAgB,GAAGN,YAAY,CAACE,OAAb,CACxB,+FADwB,CAAzB;AAGAI,IAAAA,gBAAgB,CACdZ,gBADF,CACoB,2BADpB,EAEEC,OAFF,CAEW,UAAWY,KAAX,EAAmB;AAC5B,UAAKA,KAAK,KAAKF,aAAf,EAA+B;AAC9Bb,QAAAA,aAAa,CAAEe,KAAF,CAAb;AACA;AACD,KANF,EARM,CAeN;;AACAP,IAAAA,YAAY,CAACH,YAAb,CAA2B,eAA3B,EAA4C,MAA5C;AACA;AACD,C,CAED;AACA;;;AACAW,MAAM,CAACC,gBAAP,CAAyB,MAAzB,EAAiC,MAAM;AACtC,QAAMC,cAAc,GAAGC,QAAQ,CAACjB,gBAAT,CACtB,sCADsB,CAAvB;AAIAgB,EAAAA,cAAc,CAACf,OAAf,CAAwB,UAAWiB,MAAX,EAAoB;AAC3CA,IAAAA,MAAM,CAACH,gBAAP,CAAyB,OAAzB,EAAkCX,oBAAlC;AACA,GAFD,EALsC,CAStC;;AACAa,EAAAA,QAAQ,CAACF,gBAAT,CAA2B,OAA3B,EAAoC,UAAWV,KAAX,EAAmB;AACtD,UAAMc,gBAAgB,GAAGF,QAAQ,CAACjB,gBAAT,CACxB,sBADwB,CAAzB;AAGAmB,IAAAA,gBAAgB,CAAClB,OAAjB,CAA0B,UAAWmB,KAAX,EAAmB;AAC5C,UAAK,CAAEA,KAAK,CAACC,QAAN,CAAgBhB,KAAK,CAACE,MAAtB,CAAP,EAAwC;AACvCT,QAAAA,aAAa,CAAEsB,KAAF,CAAb;AACA;AACD,KAJD;AAKA,GATD,EAVsC,CAoBtC;;AACAH,EAAAA,QAAQ,CAACF,gBAAT,CAA2B,OAA3B,EAAoC,UAAWV,KAAX,EAAmB;AACtD,UAAMiB,aAAa,GAAGL,QAAQ,CAACjB,gBAAT,CACrB,qCADqB,CAAtB;AAGAsB,IAAAA,aAAa,CAACrB,OAAd,CAAuB,UAAWmB,KAAX,EAAmB;AACzC,UAAK,CAAEA,KAAK,CAACC,QAAN,CAAgBhB,KAAK,CAACE,MAAtB,CAAP,EAAwC;AACvCT,QAAAA,aAAa,CAAEsB,KAAF,CAAb;AACA,OAFD,MAEO,IAAKf,KAAK,CAACkB,GAAN,KAAc,QAAnB,EAA8B;AACpC,cAAMrB,MAAM,GAAGkB,KAAK,CAACI,aAAN,CAAqB,wBAArB,CAAf;AACA1B,QAAAA,aAAa,CAAEsB,KAAF,CAAb,CAFoC,CAGpC;;AACAlB,QAAAA,MAAM,EAAEuB,KAAR;AACA;AACD,KATD;AAUA,GAdD;AAeA,CApCD","sourcesContent":["// Open on click functionality.\nfunction closeSubmenus( element ) {\n\telement\n\t\t.querySelectorAll( '[aria-expanded=\"true\"]' )\n\t\t.forEach( function ( toggle ) {\n\t\t\ttoggle.setAttribute( 'aria-expanded', 'false' );\n\t\t} );\n}\n\nfunction toggleSubmenuOnClick( event ) {\n\tconst buttonToggle = event.target.closest( '[aria-expanded]' );\n\tconst isSubmenuOpen = buttonToggle.getAttribute( 'aria-expanded' );\n\n\tif ( isSubmenuOpen === 'true' ) {\n\t\tcloseSubmenus( buttonToggle.closest( '.wp-block-navigation-item' ) );\n\t} else {\n\t\t// Close all sibling submenus.\n\t\tconst parentElement = buttonToggle.closest(\n\t\t\t'.wp-block-navigation-item'\n\t\t);\n\t\tconst navigationParent = buttonToggle.closest(\n\t\t\t'.wp-block-navigation__submenu-container, .wp-block-navigation__container, .wp-block-page-list'\n\t\t);\n\t\tnavigationParent\n\t\t\t.querySelectorAll( '.wp-block-navigation-item' )\n\t\t\t.forEach( function ( child ) {\n\t\t\t\tif ( child !== parentElement ) {\n\t\t\t\t\tcloseSubmenus( child );\n\t\t\t\t}\n\t\t\t} );\n\t\t// Open submenu.\n\t\tbuttonToggle.setAttribute( 'aria-expanded', 'true' );\n\t}\n}\n\n// Necessary for some themes such as TT1 Blocks, where\n// scripts could be loaded before the body.\nwindow.addEventListener( 'load', () => {\n\tconst submenuButtons = document.querySelectorAll(\n\t\t'.wp-block-navigation-submenu__toggle'\n\t);\n\n\tsubmenuButtons.forEach( function ( button ) {\n\t\tbutton.addEventListener( 'click', toggleSubmenuOnClick );\n\t} );\n\n\t// Close on click outside.\n\tdocument.addEventListener( 'click', function ( event ) {\n\t\tconst navigationBlocks = document.querySelectorAll(\n\t\t\t'.wp-block-navigation'\n\t\t);\n\t\tnavigationBlocks.forEach( function ( block ) {\n\t\t\tif ( ! block.contains( event.target ) ) {\n\t\t\t\tcloseSubmenus( block );\n\t\t\t}\n\t\t} );\n\t} );\n\t// Close on focus outside or escape key.\n\tdocument.addEventListener( 'keyup', function ( event ) {\n\t\tconst submenuBlocks = document.querySelectorAll(\n\t\t\t'.wp-block-navigation-item.has-child'\n\t\t);\n\t\tsubmenuBlocks.forEach( function ( block ) {\n\t\t\tif ( ! block.contains( event.target ) ) {\n\t\t\t\tcloseSubmenus( block );\n\t\t\t} else if ( event.key === 'Escape' ) {\n\t\t\t\tconst toggle = block.querySelector( '[aria-expanded=\"true\"]' );\n\t\t\t\tcloseSubmenus( block );\n\t\t\t\t// Focus the submenu trigger so focus does not get trapped in the closed submenu.\n\t\t\t\ttoggle?.focus();\n\t\t\t}\n\t\t} );\n\t} );\n} );\n"]}
|
|
@@ -489,7 +489,8 @@ export default function NavigationLinkEdit({
|
|
|
489
489
|
label: __('Rel attribute'),
|
|
490
490
|
autoComplete: "off",
|
|
491
491
|
help: __('The relationship of the linked URL as space-separated link types.')
|
|
492
|
-
}))), createElement("div", blockProps
|
|
492
|
+
}))), createElement("div", { ...blockProps
|
|
493
|
+
}, createElement("a", {
|
|
493
494
|
className: classes
|
|
494
495
|
}, !url ? createElement("div", {
|
|
495
496
|
className: "wp-block-navigation-link__placeholder-text"
|
|
@@ -545,6 +546,7 @@ export default function NavigationLinkEdit({
|
|
|
545
546
|
onChange: updatedValue => {
|
|
546
547
|
updateAttributes(updatedValue, setAttributes, attributes);
|
|
547
548
|
}
|
|
548
|
-
})), createElement("div", innerBlocksProps
|
|
549
|
+
})), createElement("div", { ...innerBlocksProps
|
|
550
|
+
})));
|
|
549
551
|
}
|
|
550
552
|
//# sourceMappingURL=edit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation-link/edit.js"],"names":["classnames","createBlock","useSelect","useDispatch","PanelBody","TextControl","TextareaControl","ToolbarButton","Tooltip","ToolbarGroup","displayShortcut","isKeyboardEvent","ENTER","__","BlockControls","InspectorControls","RichText","useBlockProps","store","blockEditorStore","getColorClassName","useInnerBlocksProps","isURL","prependHTTP","useState","useEffect","useRef","placeCaretAtHorizontalEdge","__unstableStripHTML","stripHTML","decodeEntities","link","linkIcon","addSubmenu","coreStore","useResourcePermissions","useMergeRefs","LinkUI","updateAttributes","getColors","useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","useIsInvalidLink","kind","type","id","isPostType","hasId","Number","isInteger","postStatus","select","getEntityRecord","status","isInvalid","isDraft","getMissingText","missingText","NavigationLinkEdit","attributes","isSelected","setAttributes","insertBlocksAfter","mergeBlocks","onReplace","context","clientId","label","url","description","rel","title","maxNestingLevel","replaceBlock","__unstableMarkNextChangeAsNotPersistent","isLinkOpen","setIsLinkOpen","popoverAnchor","setPopoverAnchor","listItemRef","itemLabelPlaceholder","ref","pagesPermissions","postsPermissions","innerBlocks","isAtMaxNesting","isTopLevelLink","isParentOfSelectedBlock","hasChildren","getBlocks","getBlockCount","getBlockName","getBlockRootClientId","hasSelectedInnerBlock","getBlockParentsByBlockName","name","length","transformToSubmenu","newSubmenu","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","removeLink","undefined","opensInNewTab","userCanCreate","canCreate","textColor","customTextColor","backgroundColor","customBackgroundColor","onKeyDown","primary","keyCode","blockProps","className","style","color","ALLOWED_BLOCKS","DEFAULT_BLOCK","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","onClick","classes","placeholderText","tooltipText","labelValue","urlValue","descriptionValue","titleValue","relValue","trim","updatedValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tTooltip,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport {\n\tplaceCaretAtHorizontalEdge,\n\t__unstableStripHTML as stripHTML,\n} from '@wordpress/dom';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, addSubmenu } from '@wordpress/icons';\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { name } from './block.json';\nimport { LinkUI } from './link-ui';\nimport { updateAttributes } from './update-attributes';\nimport { getColors } from '../navigation/edit/utils';\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [] );\n\n\treturn isDraggingWithin;\n};\n\nconst useIsInvalidLink = ( kind, type, id ) => {\n\tconst isPostType =\n\t\tkind === 'post-type' || type === 'post' || type === 'page';\n\tconst hasId = Number.isInteger( id );\n\tconst postStatus = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isPostType ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn getEntityRecord( 'postType', type, id )?.status;\n\t\t},\n\t\t[ isPostType, type, id ]\n\t);\n\n\t// Check Navigation Link validity if:\n\t// 1. Link is 'post-type'.\n\t// 2. It has an id.\n\t// 3. It's neither null, nor undefined, as valid items might be either of those while loading.\n\t// If those conditions are met, check if\n\t// 1. The post status is published.\n\t// 2. The Navigation Link item has no label.\n\t// If either of those is true, invalidate.\n\tconst isInvalid =\n\t\tisPostType && hasId && postStatus && 'trash' === postStatus;\n\tconst isDraft = 'draft' === postStatus;\n\n\treturn [ isInvalid, isDraft ];\n};\n\nfunction getMissingText( type ) {\n\tlet missingText = '';\n\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\t\t/* translators: label for missing post in navigation link block */\n\t\t\tmissingText = __( 'Select post' );\n\t\t\tbreak;\n\t\tcase 'page':\n\t\t\t/* translators: label for missing page in navigation link block */\n\t\t\tmissingText = __( 'Select page' );\n\t\t\tbreak;\n\t\tcase 'category':\n\t\t\t/* translators: label for missing category in navigation link block */\n\t\t\tmissingText = __( 'Select category' );\n\t\t\tbreak;\n\t\tcase 'tag':\n\t\t\t/* translators: label for missing tag in navigation link block */\n\t\t\tmissingText = __( 'Select tag' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t/* translators: label for missing values in navigation link block */\n\t\t\tmissingText = __( 'Add link' );\n\t}\n\n\treturn missingText;\n}\n\nexport default function NavigationLinkEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { id, label, type, url, description, rel, title, kind } = attributes;\n\n\tconst [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );\n\tconst { maxNestingLevel } = context;\n\n\tconst { replaceBlock, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( false );\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\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add label…' );\n\tconst ref = useRef();\n\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tisAtMaxNesting,\n\t\tisTopLevelLink,\n\t\tisParentOfSelectedBlock,\n\t\thasChildren,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisAtMaxNesting:\n\t\t\t\t\tgetBlockParentsByBlockName( clientId, [\n\t\t\t\t\t\tname,\n\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t] ).length >= maxNestingLevel,\n\t\t\t\tisTopLevelLink:\n\t\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t\t'core/navigation',\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\n\t\t\t\thasChildren: !! getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\t/**\n\t * Transform to submenu block.\n\t */\n\tfunction transformToSubmenu() {\n\t\tconst newSubmenu = createBlock(\n\t\t\t'core/navigation-submenu',\n\t\t\tattributes,\n\t\t\tinnerBlocks.length > 0\n\t\t\t\t? innerBlocks\n\t\t\t\t: [ createBlock( 'core/navigation-link' ) ]\n\t\t);\n\t\treplaceBlock( clientId, newSubmenu );\n\t}\n\n\tuseEffect( () => {\n\t\t// Show the LinkControl on mount if the URL is empty\n\t\t// ( When adding a new menu item)\n\t\t// This can't be done in the useState call because it conflicts\n\t\t// with the autofocus behavior of the BlockListBlock component.\n\t\tif ( ! url ) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}, [ url ] );\n\n\tuseEffect( () => {\n\t\t// If block has inner blocks, transform to Submenu.\n\t\tif ( hasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToSubmenu();\n\t\t}\n\t}, [ hasChildren ] );\n\n\t/**\n\t * The hook shouldn't be necessary but due to a focus loss happening\n\t * when selecting a suggestion in the link popover, we force close on block unselection.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsLinkOpen( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\tif ( isLinkOpen && url ) {\n\t\t\t// Does this look like a URL and have something TLD-ish?\n\t\t\tif (\n\t\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t\t) {\n\t\t\t\t// Focus and select the label text.\n\t\t\t\tselectLabelText();\n\t\t\t} else {\n\t\t\t\t// Focus it (but do not select).\n\t\t\t\tplaceCaretAtHorizontalEdge( ref.current, true );\n\t\t\t}\n\t\t}\n\t}, [ url ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\t/**\n\t * Removes the current link if set.\n\t */\n\tfunction removeLink() {\n\t\t// Reset all attributes that comprise the link.\n\t\t// It is critical that all attributes are reset\n\t\t// to their default values otherwise this may\n\t\t// in advertently trigger side effects because\n\t\t// the values will have \"changed\".\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlabel: undefined,\n\t\t\tid: undefined,\n\t\t\tkind: undefined,\n\t\t\ttype: undefined,\n\t\t\topensInNewTab: false,\n\t\t} );\n\n\t\t// Close the link editing UI.\n\t\tsetIsLinkOpen( false );\n\t}\n\n\tlet userCanCreate = false;\n\tif ( ! type || type === 'page' ) {\n\t\tuserCanCreate = pagesPermissions.canCreate;\n\t} else if ( type === 'post' ) {\n\t\tuserCanCreate = postsPermissions.canCreate;\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, ! isTopLevelLink );\n\n\tfunction onKeyDown( event ) {\n\t\tif (\n\t\t\tisKeyboardEvent.primary( event, 'k' ) ||\n\t\t\t( ( ! url || isDraft || isInvalid ) && event.keyCode === ENTER )\n\t\t) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\tconst ALLOWED_BLOCKS = [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t\t'core/page-list',\n\t];\n\tconst DEFAULT_BLOCK = {\n\t\tname: 'core/navigation-link',\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\t...blockProps,\n\t\t\tclassName: 'remove-outline', // Remove the outline from the inner blocks container.\n\t\t},\n\t\t{\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: true,\n\t\t\trenderAppender: false,\n\t\t}\n\t);\n\n\tif ( ! url || isInvalid || isDraft ) {\n\t\tblockProps.onClick = () => setIsLinkOpen( true );\n\t}\n\n\tconst classes = classnames( 'wp-block-navigation-item__content', {\n\t\t'wp-block-navigation-link__placeholder': ! url || isInvalid || isDraft,\n\t} );\n\n\tconst missingText = getMissingText( type );\n\t/* translators: Whether the navigation link is Invalid or a Draft. */\n\tconst placeholderText = `(${\n\t\tisInvalid ? __( 'Invalid' ) : __( 'Draft' )\n\t})`;\n\tconst tooltipText =\n\t\tisInvalid || isDraft\n\t\t\t? __( 'This item has been deleted, or is a draft' )\n\t\t\t: __( 'This item is missing a link' );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkIcon }\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={ () => setIsLinkOpen( true ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isAtMaxNesting && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"submenu\"\n\t\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\t\ttitle={ __( 'Add submenu' ) }\n\t\t\t\t\t\t\tonClick={ transformToSubmenu }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ label ? stripHTML( label ) : '' }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\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\tvalue={ url || '' }\n\t\t\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t{ url: urlValue },\n\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'URL' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ description || '' }\n\t\t\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { description: descriptionValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t\t\t) }\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\tvalue={ title || '' }\n\t\t\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t\t\t) }\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\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<a className={ classes }>\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{ ! url ? (\n\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text\">\n\t\t\t\t\t\t\t<Tooltip position=\"top center\" text={ tooltipText }>\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<span>{ missingText }</span>\n\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isInvalid && ! isDraft && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: labelValue,\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\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'core/navigation-link'\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\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\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\t{ description && (\n\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-item__description\">\n\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ ( isInvalid || isDraft ) && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text wp-block-navigation-link__label\">\n\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\t\ttext={ tooltipText }\n\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\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\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\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Some attributes are stored in an escaped form. It's a legacy issue.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Ideally they would be stored in a raw, unescaped form.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Unescape is used here to \"recover\" the escaped characters\n\t\t\t\t\t\t\t\t\t\t\t\t\t// so they display without encoding.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// See `updateAttributes` for more details.\n\t\t\t\t\t\t\t\t\t\t\t\t\t`${ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t\t\t\t) } ${ placeholderText }`.trim()\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</span>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t</div>\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{ isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => setIsLinkOpen( false ) }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\thasCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tonRemove={ removeLink }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</a>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation-link/edit.js"],"names":["classnames","createBlock","useSelect","useDispatch","PanelBody","TextControl","TextareaControl","ToolbarButton","Tooltip","ToolbarGroup","displayShortcut","isKeyboardEvent","ENTER","__","BlockControls","InspectorControls","RichText","useBlockProps","store","blockEditorStore","getColorClassName","useInnerBlocksProps","isURL","prependHTTP","useState","useEffect","useRef","placeCaretAtHorizontalEdge","__unstableStripHTML","stripHTML","decodeEntities","link","linkIcon","addSubmenu","coreStore","useResourcePermissions","useMergeRefs","LinkUI","updateAttributes","getColors","useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","useIsInvalidLink","kind","type","id","isPostType","hasId","Number","isInteger","postStatus","select","getEntityRecord","status","isInvalid","isDraft","getMissingText","missingText","NavigationLinkEdit","attributes","isSelected","setAttributes","insertBlocksAfter","mergeBlocks","onReplace","context","clientId","label","url","description","rel","title","maxNestingLevel","replaceBlock","__unstableMarkNextChangeAsNotPersistent","isLinkOpen","setIsLinkOpen","popoverAnchor","setPopoverAnchor","listItemRef","itemLabelPlaceholder","ref","pagesPermissions","postsPermissions","innerBlocks","isAtMaxNesting","isTopLevelLink","isParentOfSelectedBlock","hasChildren","getBlocks","getBlockCount","getBlockName","getBlockRootClientId","hasSelectedInnerBlock","getBlockParentsByBlockName","name","length","transformToSubmenu","newSubmenu","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","removeLink","undefined","opensInNewTab","userCanCreate","canCreate","textColor","customTextColor","backgroundColor","customBackgroundColor","onKeyDown","primary","keyCode","blockProps","className","style","color","ALLOWED_BLOCKS","DEFAULT_BLOCK","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","onClick","classes","placeholderText","tooltipText","labelValue","urlValue","descriptionValue","titleValue","relValue","trim","updatedValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tTooltip,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport {\n\tplaceCaretAtHorizontalEdge,\n\t__unstableStripHTML as stripHTML,\n} from '@wordpress/dom';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, addSubmenu } from '@wordpress/icons';\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { name } from './block.json';\nimport { LinkUI } from './link-ui';\nimport { updateAttributes } from './update-attributes';\nimport { getColors } from '../navigation/edit/utils';\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [] );\n\n\treturn isDraggingWithin;\n};\n\nconst useIsInvalidLink = ( kind, type, id ) => {\n\tconst isPostType =\n\t\tkind === 'post-type' || type === 'post' || type === 'page';\n\tconst hasId = Number.isInteger( id );\n\tconst postStatus = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isPostType ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn getEntityRecord( 'postType', type, id )?.status;\n\t\t},\n\t\t[ isPostType, type, id ]\n\t);\n\n\t// Check Navigation Link validity if:\n\t// 1. Link is 'post-type'.\n\t// 2. It has an id.\n\t// 3. It's neither null, nor undefined, as valid items might be either of those while loading.\n\t// If those conditions are met, check if\n\t// 1. The post status is published.\n\t// 2. The Navigation Link item has no label.\n\t// If either of those is true, invalidate.\n\tconst isInvalid =\n\t\tisPostType && hasId && postStatus && 'trash' === postStatus;\n\tconst isDraft = 'draft' === postStatus;\n\n\treturn [ isInvalid, isDraft ];\n};\n\nfunction getMissingText( type ) {\n\tlet missingText = '';\n\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\t\t/* translators: label for missing post in navigation link block */\n\t\t\tmissingText = __( 'Select post' );\n\t\t\tbreak;\n\t\tcase 'page':\n\t\t\t/* translators: label for missing page in navigation link block */\n\t\t\tmissingText = __( 'Select page' );\n\t\t\tbreak;\n\t\tcase 'category':\n\t\t\t/* translators: label for missing category in navigation link block */\n\t\t\tmissingText = __( 'Select category' );\n\t\t\tbreak;\n\t\tcase 'tag':\n\t\t\t/* translators: label for missing tag in navigation link block */\n\t\t\tmissingText = __( 'Select tag' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t/* translators: label for missing values in navigation link block */\n\t\t\tmissingText = __( 'Add link' );\n\t}\n\n\treturn missingText;\n}\n\nexport default function NavigationLinkEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { id, label, type, url, description, rel, title, kind } = attributes;\n\n\tconst [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );\n\tconst { maxNestingLevel } = context;\n\n\tconst { replaceBlock, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( false );\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\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add label…' );\n\tconst ref = useRef();\n\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tisAtMaxNesting,\n\t\tisTopLevelLink,\n\t\tisParentOfSelectedBlock,\n\t\thasChildren,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisAtMaxNesting:\n\t\t\t\t\tgetBlockParentsByBlockName( clientId, [\n\t\t\t\t\t\tname,\n\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t] ).length >= maxNestingLevel,\n\t\t\t\tisTopLevelLink:\n\t\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t\t'core/navigation',\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\n\t\t\t\thasChildren: !! getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\t/**\n\t * Transform to submenu block.\n\t */\n\tfunction transformToSubmenu() {\n\t\tconst newSubmenu = createBlock(\n\t\t\t'core/navigation-submenu',\n\t\t\tattributes,\n\t\t\tinnerBlocks.length > 0\n\t\t\t\t? innerBlocks\n\t\t\t\t: [ createBlock( 'core/navigation-link' ) ]\n\t\t);\n\t\treplaceBlock( clientId, newSubmenu );\n\t}\n\n\tuseEffect( () => {\n\t\t// Show the LinkControl on mount if the URL is empty\n\t\t// ( When adding a new menu item)\n\t\t// This can't be done in the useState call because it conflicts\n\t\t// with the autofocus behavior of the BlockListBlock component.\n\t\tif ( ! url ) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}, [ url ] );\n\n\tuseEffect( () => {\n\t\t// If block has inner blocks, transform to Submenu.\n\t\tif ( hasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToSubmenu();\n\t\t}\n\t}, [ hasChildren ] );\n\n\t/**\n\t * The hook shouldn't be necessary but due to a focus loss happening\n\t * when selecting a suggestion in the link popover, we force close on block unselection.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsLinkOpen( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\tif ( isLinkOpen && url ) {\n\t\t\t// Does this look like a URL and have something TLD-ish?\n\t\t\tif (\n\t\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t\t) {\n\t\t\t\t// Focus and select the label text.\n\t\t\t\tselectLabelText();\n\t\t\t} else {\n\t\t\t\t// Focus it (but do not select).\n\t\t\t\tplaceCaretAtHorizontalEdge( ref.current, true );\n\t\t\t}\n\t\t}\n\t}, [ url ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\t/**\n\t * Removes the current link if set.\n\t */\n\tfunction removeLink() {\n\t\t// Reset all attributes that comprise the link.\n\t\t// It is critical that all attributes are reset\n\t\t// to their default values otherwise this may\n\t\t// in advertently trigger side effects because\n\t\t// the values will have \"changed\".\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlabel: undefined,\n\t\t\tid: undefined,\n\t\t\tkind: undefined,\n\t\t\ttype: undefined,\n\t\t\topensInNewTab: false,\n\t\t} );\n\n\t\t// Close the link editing UI.\n\t\tsetIsLinkOpen( false );\n\t}\n\n\tlet userCanCreate = false;\n\tif ( ! type || type === 'page' ) {\n\t\tuserCanCreate = pagesPermissions.canCreate;\n\t} else if ( type === 'post' ) {\n\t\tuserCanCreate = postsPermissions.canCreate;\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, ! isTopLevelLink );\n\n\tfunction onKeyDown( event ) {\n\t\tif (\n\t\t\tisKeyboardEvent.primary( event, 'k' ) ||\n\t\t\t( ( ! url || isDraft || isInvalid ) && event.keyCode === ENTER )\n\t\t) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\tconst ALLOWED_BLOCKS = [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t\t'core/page-list',\n\t];\n\tconst DEFAULT_BLOCK = {\n\t\tname: 'core/navigation-link',\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\t...blockProps,\n\t\t\tclassName: 'remove-outline', // Remove the outline from the inner blocks container.\n\t\t},\n\t\t{\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: true,\n\t\t\trenderAppender: false,\n\t\t}\n\t);\n\n\tif ( ! url || isInvalid || isDraft ) {\n\t\tblockProps.onClick = () => setIsLinkOpen( true );\n\t}\n\n\tconst classes = classnames( 'wp-block-navigation-item__content', {\n\t\t'wp-block-navigation-link__placeholder': ! url || isInvalid || isDraft,\n\t} );\n\n\tconst missingText = getMissingText( type );\n\t/* translators: Whether the navigation link is Invalid or a Draft. */\n\tconst placeholderText = `(${\n\t\tisInvalid ? __( 'Invalid' ) : __( 'Draft' )\n\t})`;\n\tconst tooltipText =\n\t\tisInvalid || isDraft\n\t\t\t? __( 'This item has been deleted, or is a draft' )\n\t\t\t: __( 'This item is missing a link' );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkIcon }\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={ () => setIsLinkOpen( true ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isAtMaxNesting && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"submenu\"\n\t\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\t\ttitle={ __( 'Add submenu' ) }\n\t\t\t\t\t\t\tonClick={ transformToSubmenu }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ label ? stripHTML( label ) : '' }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\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\tvalue={ url || '' }\n\t\t\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t{ url: urlValue },\n\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'URL' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ description || '' }\n\t\t\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { description: descriptionValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t\t\t) }\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\tvalue={ title || '' }\n\t\t\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t\t\t) }\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\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<a className={ classes }>\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{ ! url ? (\n\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text\">\n\t\t\t\t\t\t\t<Tooltip position=\"top center\" text={ tooltipText }>\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<span>{ missingText }</span>\n\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isInvalid && ! isDraft && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: labelValue,\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\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'core/navigation-link'\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\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\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\t{ description && (\n\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-item__description\">\n\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ ( isInvalid || isDraft ) && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text wp-block-navigation-link__label\">\n\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\t\ttext={ tooltipText }\n\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\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\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\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Some attributes are stored in an escaped form. It's a legacy issue.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Ideally they would be stored in a raw, unescaped form.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Unescape is used here to \"recover\" the escaped characters\n\t\t\t\t\t\t\t\t\t\t\t\t\t// so they display without encoding.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// See `updateAttributes` for more details.\n\t\t\t\t\t\t\t\t\t\t\t\t\t`${ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t\t\t\t) } ${ placeholderText }`.trim()\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</span>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t</div>\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{ isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => setIsLinkOpen( false ) }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\thasCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tonRemove={ removeLink }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</a>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -426,7 +426,8 @@ export default function NavigationSubmenuEdit({
|
|
|
426
426
|
label: __('Rel attribute'),
|
|
427
427
|
autoComplete: "off",
|
|
428
428
|
help: __('The relationship of the linked URL as space-separated link types.')
|
|
429
|
-
}))), createElement("div", blockProps
|
|
429
|
+
}))), createElement("div", { ...blockProps
|
|
430
|
+
}, createElement(ParentElement, {
|
|
430
431
|
className: "wp-block-navigation-item__content"
|
|
431
432
|
}, createElement(RichText, {
|
|
432
433
|
ref: ref,
|
|
@@ -465,6 +466,7 @@ export default function NavigationSubmenuEdit({
|
|
|
465
466
|
}
|
|
466
467
|
})), (showSubmenuIcon || openSubmenusOnClick) && createElement("span", {
|
|
467
468
|
className: "wp-block-navigation__submenu-icon"
|
|
468
|
-
}, createElement(ItemSubmenuIcon, null)), createElement("div", innerBlocksProps
|
|
469
|
+
}, createElement(ItemSubmenuIcon, null)), createElement("div", { ...innerBlocksProps
|
|
470
|
+
})));
|
|
469
471
|
}
|
|
470
472
|
//# sourceMappingURL=edit.js.map
|