@wordpress/editor 14.44.1-next.v.202604201441.0 → 14.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/collab-sidebar/{comment-menu-item.cjs → add-note-menu-item.cjs} +17 -14
- package/build/components/collab-sidebar/add-note-menu-item.cjs.map +7 -0
- package/build/components/collab-sidebar/{add-comment.cjs → add-note.cjs} +28 -41
- package/build/components/collab-sidebar/add-note.cjs.map +7 -0
- package/build/components/collab-sidebar/board-store.cjs +3 -0
- package/build/components/collab-sidebar/board-store.cjs.map +2 -2
- package/build/components/collab-sidebar/floating-container.cjs +4 -3
- package/build/components/collab-sidebar/floating-container.cjs.map +3 -3
- package/build/components/collab-sidebar/hooks.cjs +92 -135
- package/build/components/collab-sidebar/hooks.cjs.map +3 -3
- package/build/components/collab-sidebar/index.cjs +28 -79
- package/build/components/collab-sidebar/index.cjs.map +3 -3
- package/build/components/collab-sidebar/{comment-author-info.cjs → note-byline.cjs} +13 -9
- package/build/components/collab-sidebar/note-byline.cjs.map +7 -0
- package/build/components/collab-sidebar/note-card.cjs +58 -0
- package/build/components/collab-sidebar/note-card.cjs.map +7 -0
- package/build/components/collab-sidebar/{comment-form.cjs → note-form.cjs} +45 -36
- package/build/components/collab-sidebar/note-form.cjs.map +7 -0
- package/build/components/collab-sidebar/{comment-indicator-toolbar.cjs → note-indicator-toolbar.cjs} +31 -27
- package/build/components/collab-sidebar/note-indicator-toolbar.cjs.map +7 -0
- package/build/components/collab-sidebar/note-thread.cjs +321 -0
- package/build/components/collab-sidebar/note-thread.cjs.map +7 -0
- package/build/components/collab-sidebar/note.cjs +207 -0
- package/build/components/collab-sidebar/note.cjs.map +7 -0
- package/build/components/collab-sidebar/notes.cjs +237 -0
- package/build/components/collab-sidebar/notes.cjs.map +7 -0
- package/build/components/collab-sidebar/utils.cjs +23 -25
- package/build/components/collab-sidebar/utils.cjs.map +2 -2
- package/build/components/document-bar/index.cjs.map +3 -3
- package/build/components/error-boundary/index.cjs.map +3 -3
- package/build/components/list-view-sidebar/list-view-outline.cjs.map +3 -3
- package/build/components/media/media-editor-modal.cjs +93 -0
- package/build/components/media/media-editor-modal.cjs.map +7 -0
- package/build/components/more-menu/index.cjs +3 -2
- package/build/components/more-menu/index.cjs.map +2 -2
- package/build/components/post-actions/set-as-homepage.cjs.map +3 -3
- package/build/components/post-actions/set-as-posts-page.cjs.map +3 -3
- package/build/components/post-card-panel/index.cjs +2 -2
- package/build/components/post-card-panel/index.cjs.map +3 -3
- package/build/components/post-content-information/index.cjs.map +3 -3
- package/build/components/post-excerpt/panel.cjs.map +3 -3
- package/build/components/post-last-edited-panel/index.cjs.map +3 -3
- package/build/components/post-preview-button/index.cjs +3 -2
- package/build/components/post-preview-button/index.cjs.map +2 -2
- package/build/components/post-publish-button/index.cjs +2 -2
- package/build/components/post-publish-button/index.cjs.map +2 -2
- package/build/components/post-publish-button/label.cjs +4 -2
- package/build/components/post-publish-button/label.cjs.map +2 -2
- package/build/components/post-publish-panel/postpublish.cjs +3 -2
- package/build/components/post-publish-panel/postpublish.cjs.map +2 -2
- package/build/components/post-revisions-panel/index.cjs +2 -2
- package/build/components/post-revisions-panel/index.cjs.map +2 -2
- package/build/components/post-revisions-preview/diff-markers.cjs +1 -1
- package/build/components/post-revisions-preview/diff-markers.cjs.map +2 -2
- package/build/components/post-revisions-preview/revisions-slider.cjs +1 -0
- package/build/components/post-revisions-preview/revisions-slider.cjs.map +2 -2
- package/build/components/post-saved-state/index.cjs +4 -1
- package/build/components/post-saved-state/index.cjs.map +2 -2
- package/build/components/post-text-editor/index.cjs +3 -4
- package/build/components/post-text-editor/index.cjs.map +2 -2
- package/build/components/preview-dropdown/index.cjs +3 -2
- package/build/components/preview-dropdown/index.cjs.map +2 -2
- package/build/components/provider/index.cjs +3 -1
- package/build/components/provider/index.cjs.map +3 -3
- package/build/components/provider/use-block-editor-settings.cjs +7 -1
- package/build/components/provider/use-block-editor-settings.cjs.map +3 -3
- package/build/components/provider/use-upload-save-lock.cjs +2 -12
- package/build/components/provider/use-upload-save-lock.cjs.map +2 -2
- package/build/components/resizable-editor/resize-handle.cjs +2 -1
- package/build/components/resizable-editor/resize-handle.cjs.map +2 -2
- package/build/components/revision-created-panel/index.cjs.map +3 -3
- package/build/components/site-discussion/index.cjs.map +2 -2
- package/build/components/template-actions-panel/classic-theme-content.cjs.map +2 -2
- package/build/components/template-part-menu-items/convert-to-regular.cjs +54 -11
- package/build/components/template-part-menu-items/convert-to-regular.cjs.map +3 -3
- package/build/components/visual-editor/index.cjs +5 -22
- package/build/components/visual-editor/index.cjs.map +2 -2
- package/build/store/private-actions.cjs +0 -8
- package/build/store/private-actions.cjs.map +2 -2
- package/build/store/private-selectors.cjs +0 -5
- package/build/store/private-selectors.cjs.map +2 -2
- package/build/store/reducer.cjs +0 -10
- package/build/store/reducer.cjs.map +2 -2
- package/build/utils/media-finalize/index.cjs +3 -2
- package/build/utils/media-finalize/index.cjs.map +2 -2
- package/build/utils/media-upload/index.cjs +14 -25
- package/build/utils/media-upload/index.cjs.map +2 -2
- package/build-module/components/collab-sidebar/{comment-menu-item.mjs → add-note-menu-item.mjs} +10 -11
- package/build-module/components/collab-sidebar/add-note-menu-item.mjs.map +7 -0
- package/build-module/components/collab-sidebar/{add-comment.mjs → add-note.mjs} +26 -29
- package/build-module/components/collab-sidebar/add-note.mjs.map +7 -0
- package/build-module/components/collab-sidebar/board-store.mjs +3 -0
- package/build-module/components/collab-sidebar/board-store.mjs.map +2 -2
- package/build-module/components/collab-sidebar/floating-container.mjs +4 -3
- package/build-module/components/collab-sidebar/floating-container.mjs.map +2 -2
- package/build-module/components/collab-sidebar/hooks.mjs +91 -137
- package/build-module/components/collab-sidebar/hooks.mjs.map +2 -2
- package/build-module/components/collab-sidebar/index.mjs +29 -84
- package/build-module/components/collab-sidebar/index.mjs.map +2 -2
- package/build-module/components/collab-sidebar/{comment-author-info.mjs → note-byline.mjs} +7 -7
- package/build-module/components/collab-sidebar/note-byline.mjs.map +7 -0
- package/build-module/components/collab-sidebar/note-card.mjs +33 -0
- package/build-module/components/collab-sidebar/note-card.mjs.map +7 -0
- package/build-module/components/collab-sidebar/note-form.mjs +84 -0
- package/build-module/components/collab-sidebar/note-form.mjs.map +7 -0
- package/build-module/components/collab-sidebar/{comment-indicator-toolbar.mjs → note-indicator-toolbar.mjs} +25 -29
- package/build-module/components/collab-sidebar/note-indicator-toolbar.mjs.map +7 -0
- package/build-module/components/collab-sidebar/note-thread.mjs +289 -0
- package/build-module/components/collab-sidebar/note-thread.mjs.map +7 -0
- package/build-module/components/collab-sidebar/note.mjs +176 -0
- package/build-module/components/collab-sidebar/note.mjs.map +7 -0
- package/build-module/components/collab-sidebar/notes.mjs +215 -0
- package/build-module/components/collab-sidebar/notes.mjs.map +7 -0
- package/build-module/components/collab-sidebar/utils.mjs +19 -21
- package/build-module/components/collab-sidebar/utils.mjs.map +2 -2
- package/build-module/components/document-bar/index.mjs +3 -3
- package/build-module/components/document-bar/index.mjs.map +2 -2
- package/build-module/components/error-boundary/index.mjs +2 -2
- package/build-module/components/error-boundary/index.mjs.map +2 -2
- package/build-module/components/list-view-sidebar/list-view-outline.mjs +5 -5
- package/build-module/components/list-view-sidebar/list-view-outline.mjs.map +2 -2
- package/build-module/components/media/media-editor-modal.mjs +62 -0
- package/build-module/components/media/media-editor-modal.mjs.map +7 -0
- package/build-module/components/more-menu/index.mjs +3 -7
- package/build-module/components/more-menu/index.mjs.map +2 -2
- package/build-module/components/post-actions/set-as-homepage.mjs +2 -2
- package/build-module/components/post-actions/set-as-homepage.mjs.map +2 -2
- package/build-module/components/post-actions/set-as-posts-page.mjs +2 -2
- package/build-module/components/post-actions/set-as-posts-page.mjs.map +2 -2
- package/build-module/components/post-card-panel/index.mjs +5 -5
- package/build-module/components/post-card-panel/index.mjs.map +2 -2
- package/build-module/components/post-content-information/index.mjs +2 -2
- package/build-module/components/post-content-information/index.mjs.map +2 -2
- package/build-module/components/post-excerpt/panel.mjs +2 -2
- package/build-module/components/post-excerpt/panel.mjs.map +2 -2
- package/build-module/components/post-last-edited-panel/index.mjs +2 -2
- package/build-module/components/post-last-edited-panel/index.mjs.map +2 -2
- package/build-module/components/post-preview-button/index.mjs +3 -2
- package/build-module/components/post-preview-button/index.mjs.map +2 -2
- package/build-module/components/post-publish-button/index.mjs +2 -2
- package/build-module/components/post-publish-button/index.mjs.map +2 -2
- package/build-module/components/post-publish-button/label.mjs +4 -2
- package/build-module/components/post-publish-button/label.mjs.map +2 -2
- package/build-module/components/post-publish-panel/postpublish.mjs +3 -3
- package/build-module/components/post-publish-panel/postpublish.mjs.map +2 -2
- package/build-module/components/post-revisions-panel/index.mjs +2 -2
- package/build-module/components/post-revisions-panel/index.mjs.map +2 -2
- package/build-module/components/post-revisions-preview/diff-markers.mjs +1 -1
- package/build-module/components/post-revisions-preview/diff-markers.mjs.map +2 -2
- package/build-module/components/post-revisions-preview/revisions-slider.mjs +1 -0
- package/build-module/components/post-revisions-preview/revisions-slider.mjs.map +2 -2
- package/build-module/components/post-saved-state/index.mjs +4 -1
- package/build-module/components/post-saved-state/index.mjs.map +2 -2
- package/build-module/components/post-text-editor/index.mjs +2 -3
- package/build-module/components/post-text-editor/index.mjs.map +2 -2
- package/build-module/components/preview-dropdown/index.mjs +2 -2
- package/build-module/components/preview-dropdown/index.mjs.map +2 -2
- package/build-module/components/provider/index.mjs +3 -1
- package/build-module/components/provider/index.mjs.map +2 -2
- package/build-module/components/provider/use-block-editor-settings.mjs +7 -1
- package/build-module/components/provider/use-block-editor-settings.mjs.map +2 -2
- package/build-module/components/provider/use-upload-save-lock.mjs +2 -12
- package/build-module/components/provider/use-upload-save-lock.mjs.map +2 -2
- package/build-module/components/resizable-editor/resize-handle.mjs +2 -5
- package/build-module/components/resizable-editor/resize-handle.mjs.map +2 -2
- package/build-module/components/revision-created-panel/index.mjs +2 -2
- package/build-module/components/revision-created-panel/index.mjs.map +2 -2
- package/build-module/components/site-discussion/index.mjs +2 -2
- package/build-module/components/site-discussion/index.mjs.map +2 -2
- package/build-module/components/template-actions-panel/classic-theme-content.mjs +2 -2
- package/build-module/components/template-actions-panel/classic-theme-content.mjs.map +2 -2
- package/build-module/components/template-part-menu-items/convert-to-regular.mjs +60 -14
- package/build-module/components/template-part-menu-items/convert-to-regular.mjs.map +2 -2
- package/build-module/components/visual-editor/index.mjs +5 -22
- package/build-module/components/visual-editor/index.mjs.map +2 -2
- package/build-module/store/private-actions.mjs +0 -7
- package/build-module/store/private-actions.mjs.map +2 -2
- package/build-module/store/private-selectors.mjs +0 -4
- package/build-module/store/private-selectors.mjs.map +2 -2
- package/build-module/store/reducer.mjs +0 -9
- package/build-module/store/reducer.mjs.map +2 -2
- package/build-module/utils/media-finalize/index.mjs +3 -2
- package/build-module/utils/media-finalize/index.mjs.map +2 -2
- package/build-module/utils/media-upload/index.mjs +14 -25
- package/build-module/utils/media-upload/index.mjs.map +2 -2
- package/build-style/style-rtl.css +386 -142
- package/build-style/style.css +386 -142
- package/build-types/components/collab-sidebar/add-note-menu-item.d.ts +5 -0
- package/build-types/components/collab-sidebar/add-note-menu-item.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/add-note.d.ts +6 -0
- package/build-types/components/collab-sidebar/add-note.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/board-store.d.ts +1 -0
- package/build-types/components/collab-sidebar/board-store.d.ts.map +1 -1
- package/build-types/components/collab-sidebar/floating-container.d.ts.map +1 -1
- package/build-types/components/collab-sidebar/hooks.d.ts +8 -21
- package/build-types/components/collab-sidebar/hooks.d.ts.map +1 -1
- package/build-types/components/collab-sidebar/index.d.ts.map +1 -1
- package/build-types/components/collab-sidebar/note-byline.d.ts +7 -0
- package/build-types/components/collab-sidebar/note-byline.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/note-card.d.ts +8 -0
- package/build-types/components/collab-sidebar/note-card.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/note-form.d.ts +7 -0
- package/build-types/components/collab-sidebar/note-form.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/note-indicator-toolbar.d.ts +5 -0
- package/build-types/components/collab-sidebar/note-indicator-toolbar.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/note-thread.d.ts +11 -0
- package/build-types/components/collab-sidebar/note-thread.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/note.d.ts +9 -0
- package/build-types/components/collab-sidebar/note.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/notes.d.ts +7 -0
- package/build-types/components/collab-sidebar/notes.d.ts.map +1 -0
- package/build-types/components/collab-sidebar/utils.d.ts +21 -20
- package/build-types/components/collab-sidebar/utils.d.ts.map +1 -1
- package/build-types/components/media/media-editor-modal.d.ts +11 -0
- package/build-types/components/media/media-editor-modal.d.ts.map +1 -0
- package/build-types/components/more-menu/index.d.ts.map +1 -1
- package/build-types/components/post-preview-button/index.d.ts.map +1 -1
- package/build-types/components/post-publish-button/index.d.ts.map +1 -1
- package/build-types/components/post-publish-button/label.d.ts.map +1 -1
- package/build-types/components/post-revisions-preview/revisions-slider.d.ts.map +1 -1
- package/build-types/components/post-saved-state/index.d.ts.map +1 -1
- package/build-types/components/provider/index.d.ts.map +1 -1
- package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
- package/build-types/components/provider/use-upload-save-lock.d.ts +0 -2
- package/build-types/components/provider/use-upload-save-lock.d.ts.map +1 -1
- package/build-types/components/resizable-editor/resize-handle.d.ts.map +1 -1
- package/build-types/components/template-part-menu-items/convert-to-regular.d.ts.map +1 -1
- package/build-types/components/visual-editor/index.d.ts.map +1 -1
- package/build-types/store/private-actions.d.ts +0 -7
- package/build-types/store/private-actions.d.ts.map +1 -1
- package/build-types/store/private-selectors.d.ts +0 -7
- package/build-types/store/private-selectors.d.ts.map +1 -1
- package/build-types/store/reducer.d.ts +0 -10
- package/build-types/store/reducer.d.ts.map +1 -1
- package/build-types/utils/media-finalize/index.d.ts +1 -1
- package/build-types/utils/media-finalize/index.d.ts.map +1 -1
- package/build-types/utils/media-upload/index.d.ts.map +1 -1
- package/package.json +46 -46
- package/src/components/collab-sidebar/README.md +117 -0
- package/src/components/collab-sidebar/{comment-menu-item.js → add-note-menu-item.js} +8 -10
- package/src/components/collab-sidebar/{add-comment.js → add-note.js} +20 -21
- package/src/components/collab-sidebar/board-store.js +4 -2
- package/src/components/collab-sidebar/floating-container.js +5 -4
- package/src/components/collab-sidebar/hooks.js +115 -175
- package/src/components/collab-sidebar/index.js +35 -95
- package/src/components/collab-sidebar/{comment-author-info.js → note-byline.js} +5 -6
- package/src/components/collab-sidebar/note-card.js +36 -0
- package/src/components/collab-sidebar/{comment-form.js → note-form.js} +25 -27
- package/src/components/collab-sidebar/{comment-indicator-toolbar.js → note-indicator-toolbar.js} +29 -32
- package/src/components/collab-sidebar/note-thread.js +331 -0
- package/src/components/collab-sidebar/note.js +209 -0
- package/src/components/collab-sidebar/notes.js +276 -0
- package/src/components/collab-sidebar/style.scss +21 -11
- package/src/components/collab-sidebar/test/utils.js +65 -63
- package/src/components/collab-sidebar/utils.js +33 -35
- package/src/components/document-bar/index.js +4 -4
- package/src/components/error-boundary/index.js +3 -3
- package/src/components/list-view-sidebar/list-view-outline.js +6 -6
- package/src/components/media/media-editor-modal.js +95 -0
- package/src/components/more-menu/index.js +3 -7
- package/src/components/post-actions/set-as-homepage.js +2 -2
- package/src/components/post-actions/set-as-posts-page.js +2 -2
- package/src/components/post-card-panel/index.js +7 -7
- package/src/components/post-content-information/index.js +3 -3
- package/src/components/post-excerpt/panel.js +3 -3
- package/src/components/post-last-edited-panel/index.js +3 -3
- package/src/components/post-preview-button/index.js +3 -2
- package/src/components/post-publish-button/index.js +6 -5
- package/src/components/post-publish-button/label.js +3 -1
- package/src/components/post-publish-panel/postpublish.js +2 -2
- package/src/components/post-publish-panel/test/__snapshots__/index.js.snap +8 -14
- package/src/components/post-revisions-panel/index.js +3 -3
- package/src/components/post-revisions-preview/diff-markers.js +1 -1
- package/src/components/post-revisions-preview/revisions-slider.js +1 -0
- package/src/components/post-saved-state/index.js +4 -1
- package/src/components/post-saved-state/test/__snapshots__/index.js.snap +0 -1
- package/src/components/post-text-editor/index.js +3 -3
- package/src/components/preview-dropdown/index.js +2 -2
- package/src/components/provider/index.js +4 -0
- package/src/components/provider/use-block-editor-settings.js +10 -0
- package/src/components/provider/use-upload-save-lock.js +2 -17
- package/src/components/resizable-editor/resize-handle.js +2 -5
- package/src/components/revision-created-panel/index.js +3 -3
- package/src/components/site-discussion/index.js +3 -3
- package/src/components/template-actions-panel/classic-theme-content.js +3 -3
- package/src/components/template-part-menu-items/convert-to-regular.js +74 -12
- package/src/components/visual-editor/index.js +2 -29
- package/src/store/private-actions.js +0 -13
- package/src/store/private-selectors.js +0 -10
- package/src/store/reducer.js +0 -16
- package/src/utils/media-finalize/index.js +2 -1
- package/src/utils/media-finalize/test/index.js +25 -1
- package/src/utils/media-upload/index.js +26 -29
- package/build/components/collab-sidebar/add-comment.cjs.map +0 -7
- package/build/components/collab-sidebar/comment-author-info.cjs.map +0 -7
- package/build/components/collab-sidebar/comment-form.cjs.map +0 -7
- package/build/components/collab-sidebar/comment-indicator-toolbar.cjs.map +0 -7
- package/build/components/collab-sidebar/comment-menu-item.cjs.map +0 -7
- package/build/components/collab-sidebar/comments.cjs +0 -696
- package/build/components/collab-sidebar/comments.cjs.map +0 -7
- package/build-module/components/collab-sidebar/add-comment.mjs.map +0 -7
- package/build-module/components/collab-sidebar/comment-author-info.mjs.map +0 -7
- package/build-module/components/collab-sidebar/comment-form.mjs +0 -82
- package/build-module/components/collab-sidebar/comment-form.mjs.map +0 -7
- package/build-module/components/collab-sidebar/comment-indicator-toolbar.mjs.map +0 -7
- package/build-module/components/collab-sidebar/comment-menu-item.mjs.map +0 -7
- package/build-module/components/collab-sidebar/comments.mjs +0 -678
- package/build-module/components/collab-sidebar/comments.mjs.map +0 -7
- package/build-types/components/collab-sidebar/add-comment.d.ts +0 -6
- package/build-types/components/collab-sidebar/add-comment.d.ts.map +0 -1
- package/build-types/components/collab-sidebar/comment-author-info.d.ts +0 -8
- package/build-types/components/collab-sidebar/comment-author-info.d.ts.map +0 -1
- package/build-types/components/collab-sidebar/comment-form.d.ts +0 -9
- package/build-types/components/collab-sidebar/comment-form.d.ts.map +0 -1
- package/build-types/components/collab-sidebar/comment-indicator-toolbar.d.ts +0 -6
- package/build-types/components/collab-sidebar/comment-indicator-toolbar.d.ts.map +0 -1
- package/build-types/components/collab-sidebar/comment-menu-item.d.ts +0 -6
- package/build-types/components/collab-sidebar/comment-menu-item.d.ts.map +0 -1
- package/build-types/components/collab-sidebar/comments.d.ts +0 -10
- package/build-types/components/collab-sidebar/comments.d.ts.map +0 -1
- package/src/components/collab-sidebar/comments.js +0 -812
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import clsx from 'clsx';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* WordPress dependencies
|
|
8
|
+
*/
|
|
9
|
+
import { RawHTML, useRef, useState } from '@wordpress/element';
|
|
10
|
+
import {
|
|
11
|
+
__experimentalConfirmDialog as ConfirmDialog,
|
|
12
|
+
Button,
|
|
13
|
+
privateApis as componentsPrivateApis,
|
|
14
|
+
} from '@wordpress/components';
|
|
15
|
+
import { __, _x, sprintf } from '@wordpress/i18n';
|
|
16
|
+
import { moreVertical, published } from '@wordpress/icons';
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Internal dependencies
|
|
20
|
+
*/
|
|
21
|
+
import { NoteCard } from './note-card';
|
|
22
|
+
import { NoteForm } from './note-form';
|
|
23
|
+
import { unlock } from '../../lock-unlock';
|
|
24
|
+
|
|
25
|
+
const { Menu } = unlock( componentsPrivateApis );
|
|
26
|
+
|
|
27
|
+
function NoteActionsMenu( { items, buttonRef } ) {
|
|
28
|
+
return (
|
|
29
|
+
<Menu placement="bottom-end">
|
|
30
|
+
<Menu.TriggerButton
|
|
31
|
+
render={
|
|
32
|
+
<Button
|
|
33
|
+
ref={ buttonRef }
|
|
34
|
+
size="small"
|
|
35
|
+
icon={ moreVertical }
|
|
36
|
+
label={ __( 'Actions' ) }
|
|
37
|
+
disabled={ ! items.length }
|
|
38
|
+
accessibleWhenDisabled
|
|
39
|
+
/>
|
|
40
|
+
}
|
|
41
|
+
/>
|
|
42
|
+
<Menu.Popover
|
|
43
|
+
// The menu popover is rendered in a portal, which causes focus to be
|
|
44
|
+
// lost and the note to be collapsed unintentionally. To prevent this,
|
|
45
|
+
// the popover should be rendered as an inline.
|
|
46
|
+
modal={ false }
|
|
47
|
+
>
|
|
48
|
+
{ items.map( ( item ) => (
|
|
49
|
+
<Menu.Item key={ item.id } onClick={ item.onClick }>
|
|
50
|
+
<Menu.ItemLabel>{ item.title }</Menu.ItemLabel>
|
|
51
|
+
</Menu.Item>
|
|
52
|
+
) ) }
|
|
53
|
+
</Menu.Popover>
|
|
54
|
+
</Menu>
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export function Note( {
|
|
59
|
+
note,
|
|
60
|
+
parentNote,
|
|
61
|
+
isSelected,
|
|
62
|
+
onEditNote,
|
|
63
|
+
onDeleteNote,
|
|
64
|
+
onResolve,
|
|
65
|
+
} ) {
|
|
66
|
+
const [ actionState, setActionState ] = useState( null );
|
|
67
|
+
const actionButtonRef = useRef( null );
|
|
68
|
+
|
|
69
|
+
const canResolve = note.parent === 0;
|
|
70
|
+
const isResolutionNote =
|
|
71
|
+
note.type === 'note' &&
|
|
72
|
+
note.meta &&
|
|
73
|
+
( note.meta._wp_note_status === 'resolved' ||
|
|
74
|
+
note.meta._wp_note_status === 'reopen' );
|
|
75
|
+
|
|
76
|
+
const menuItems = [
|
|
77
|
+
{
|
|
78
|
+
id: 'edit',
|
|
79
|
+
title: __( 'Edit' ),
|
|
80
|
+
isEligible: ( { status } ) => status !== 'approved',
|
|
81
|
+
onClick: () => setActionState( 'edit' ),
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
id: 'reopen',
|
|
85
|
+
title: _x( 'Reopen', 'Reopen note' ),
|
|
86
|
+
isEligible: ( { status } ) => status === 'approved',
|
|
87
|
+
onClick: () => onEditNote( { id: note.id, status: 'hold' } ),
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
id: 'delete',
|
|
91
|
+
title: __( 'Delete' ),
|
|
92
|
+
isEligible: () => true,
|
|
93
|
+
onClick: () => setActionState( 'delete' ),
|
|
94
|
+
},
|
|
95
|
+
];
|
|
96
|
+
const availableItems =
|
|
97
|
+
parentNote?.status !== 'approved'
|
|
98
|
+
? menuItems.filter( ( item ) => item.isEligible( note ) )
|
|
99
|
+
: [];
|
|
100
|
+
|
|
101
|
+
const deleteConfirmMessage =
|
|
102
|
+
note.parent === 0
|
|
103
|
+
? __(
|
|
104
|
+
"Are you sure you want to delete this note? This will also delete all of this note's replies."
|
|
105
|
+
)
|
|
106
|
+
: __( 'Are you sure you want to delete this reply?' );
|
|
107
|
+
|
|
108
|
+
const handleCancel = () => {
|
|
109
|
+
setActionState( null );
|
|
110
|
+
actionButtonRef.current?.focus();
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
let body;
|
|
114
|
+
if ( actionState === 'edit' ) {
|
|
115
|
+
body = (
|
|
116
|
+
<NoteForm
|
|
117
|
+
onSubmit={ ( value ) => {
|
|
118
|
+
onEditNote( { id: note.id, content: value } );
|
|
119
|
+
setActionState( null );
|
|
120
|
+
actionButtonRef.current?.focus();
|
|
121
|
+
} }
|
|
122
|
+
onCancel={ handleCancel }
|
|
123
|
+
note={ note }
|
|
124
|
+
labels={ {
|
|
125
|
+
submit: _x( 'Update', 'verb' ),
|
|
126
|
+
input: sprintf(
|
|
127
|
+
// translators: %1$s: note identifier, %2$s: author name.
|
|
128
|
+
__( 'Edit note %1$s by %2$s' ),
|
|
129
|
+
note.id,
|
|
130
|
+
note.author_name
|
|
131
|
+
),
|
|
132
|
+
} }
|
|
133
|
+
/>
|
|
134
|
+
);
|
|
135
|
+
} else if ( isResolutionNote ) {
|
|
136
|
+
const actionText =
|
|
137
|
+
note.meta._wp_note_status === 'resolved'
|
|
138
|
+
? __( 'Marked as resolved' )
|
|
139
|
+
: __( 'Reopened' );
|
|
140
|
+
const raw = note?.content?.raw;
|
|
141
|
+
const text =
|
|
142
|
+
raw && typeof raw === 'string' && raw.trim() !== ''
|
|
143
|
+
? sprintf(
|
|
144
|
+
// translators: %1$s: action label ("Marked as resolved" or "Reopened"); %2$s: note text.
|
|
145
|
+
__( '%1$s: %2$s' ),
|
|
146
|
+
actionText,
|
|
147
|
+
raw
|
|
148
|
+
)
|
|
149
|
+
: actionText;
|
|
150
|
+
body = (
|
|
151
|
+
<RawHTML
|
|
152
|
+
className={ clsx(
|
|
153
|
+
'editor-collab-sidebar-panel__note-content',
|
|
154
|
+
'editor-collab-sidebar-panel__resolution-text'
|
|
155
|
+
) }
|
|
156
|
+
>
|
|
157
|
+
{ text }
|
|
158
|
+
</RawHTML>
|
|
159
|
+
);
|
|
160
|
+
} else {
|
|
161
|
+
body = (
|
|
162
|
+
<RawHTML className="editor-collab-sidebar-panel__note-content">
|
|
163
|
+
{ note?.content?.rendered }
|
|
164
|
+
</RawHTML>
|
|
165
|
+
);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
const actions = isSelected ? (
|
|
169
|
+
<>
|
|
170
|
+
{ canResolve && onResolve && (
|
|
171
|
+
<Button
|
|
172
|
+
label={ _x( 'Resolve', 'Mark note as resolved' ) }
|
|
173
|
+
size="small"
|
|
174
|
+
icon={ published }
|
|
175
|
+
disabled={ note.status === 'approved' }
|
|
176
|
+
accessibleWhenDisabled={ note.status === 'approved' }
|
|
177
|
+
onClick={ onResolve }
|
|
178
|
+
/>
|
|
179
|
+
) }
|
|
180
|
+
<NoteActionsMenu
|
|
181
|
+
items={ availableItems }
|
|
182
|
+
buttonRef={ actionButtonRef }
|
|
183
|
+
/>
|
|
184
|
+
</>
|
|
185
|
+
) : null;
|
|
186
|
+
|
|
187
|
+
return (
|
|
188
|
+
<NoteCard
|
|
189
|
+
note={ note }
|
|
190
|
+
actions={ actions }
|
|
191
|
+
role={ note.parent !== 0 ? 'treeitem' : undefined }
|
|
192
|
+
>
|
|
193
|
+
{ body }
|
|
194
|
+
{ actionState === 'delete' && (
|
|
195
|
+
<ConfirmDialog
|
|
196
|
+
isOpen
|
|
197
|
+
onConfirm={ () => {
|
|
198
|
+
onDeleteNote( note );
|
|
199
|
+
setActionState( null );
|
|
200
|
+
} }
|
|
201
|
+
onCancel={ handleCancel }
|
|
202
|
+
confirmButtonText={ __( 'Delete' ) }
|
|
203
|
+
>
|
|
204
|
+
{ deleteConfirmMessage }
|
|
205
|
+
</ConfirmDialog>
|
|
206
|
+
) }
|
|
207
|
+
</NoteCard>
|
|
208
|
+
);
|
|
209
|
+
}
|
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { useEffect, useMemo } from '@wordpress/element';
|
|
5
|
+
import { __ } from '@wordpress/i18n';
|
|
6
|
+
import { useSelect, useDispatch } from '@wordpress/data';
|
|
7
|
+
import { Stack } from '@wordpress/ui';
|
|
8
|
+
import {
|
|
9
|
+
store as blockEditorStore,
|
|
10
|
+
privateApis as blockEditorPrivateApis,
|
|
11
|
+
} from '@wordpress/block-editor';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Internal dependencies
|
|
15
|
+
*/
|
|
16
|
+
import { unlock } from '../../lock-unlock';
|
|
17
|
+
import { NoteThread } from './note-thread';
|
|
18
|
+
import { focusNoteThread } from './utils';
|
|
19
|
+
import { useFloatingBoard, useNoteActions } from './hooks';
|
|
20
|
+
import { AddNote } from './add-note';
|
|
21
|
+
import { store as editorStore } from '../../store';
|
|
22
|
+
|
|
23
|
+
const { useBlockElement } = unlock( blockEditorPrivateApis );
|
|
24
|
+
|
|
25
|
+
export function Notes( { notes, sidebarRef, isFloating = false, styles } ) {
|
|
26
|
+
const {
|
|
27
|
+
onCreate: onAddReply,
|
|
28
|
+
onEdit: onEditNote,
|
|
29
|
+
onDelete,
|
|
30
|
+
} = useNoteActions();
|
|
31
|
+
const { selectNote } = unlock( useDispatch( editorStore ) );
|
|
32
|
+
const { selectBlock, toggleBlockSpotlight } = unlock(
|
|
33
|
+
useDispatch( blockEditorStore )
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
const { blockNoteId, selectedBlockClientId, orderedBlockIds } = useSelect(
|
|
37
|
+
( select ) => {
|
|
38
|
+
const {
|
|
39
|
+
getBlockAttributes,
|
|
40
|
+
getSelectedBlockClientId,
|
|
41
|
+
getClientIdsWithDescendants,
|
|
42
|
+
} = select( blockEditorStore );
|
|
43
|
+
const clientId = getSelectedBlockClientId();
|
|
44
|
+
return {
|
|
45
|
+
blockNoteId: clientId
|
|
46
|
+
? getBlockAttributes( clientId )?.metadata?.noteId
|
|
47
|
+
: null,
|
|
48
|
+
selectedBlockClientId: clientId,
|
|
49
|
+
orderedBlockIds: getClientIdsWithDescendants(),
|
|
50
|
+
};
|
|
51
|
+
},
|
|
52
|
+
[]
|
|
53
|
+
);
|
|
54
|
+
const { selectedNote, noteFocused } = useSelect( ( select ) => {
|
|
55
|
+
const { getSelectedNote, isNoteFocused } = unlock(
|
|
56
|
+
select( editorStore )
|
|
57
|
+
);
|
|
58
|
+
return {
|
|
59
|
+
selectedNote: getSelectedNote(),
|
|
60
|
+
noteFocused: isNoteFocused(),
|
|
61
|
+
};
|
|
62
|
+
}, [] );
|
|
63
|
+
|
|
64
|
+
const relatedBlockElement = useBlockElement( selectedBlockClientId );
|
|
65
|
+
|
|
66
|
+
const threads = useMemo( () => {
|
|
67
|
+
// In floating mode with a pending new note, splice a placeholder
|
|
68
|
+
// entry at the selected block's position so the board can float it
|
|
69
|
+
// alongside regular threads.
|
|
70
|
+
if ( ! isFloating || selectedNote !== 'new' ) {
|
|
71
|
+
return notes;
|
|
72
|
+
}
|
|
73
|
+
const newNoteThread = {
|
|
74
|
+
id: 'new',
|
|
75
|
+
blockClientId: selectedBlockClientId,
|
|
76
|
+
content: { rendered: '' },
|
|
77
|
+
};
|
|
78
|
+
const out = [];
|
|
79
|
+
orderedBlockIds.forEach( ( blockId ) => {
|
|
80
|
+
if ( blockId === selectedBlockClientId ) {
|
|
81
|
+
out.push( newNoteThread );
|
|
82
|
+
} else {
|
|
83
|
+
const threadForBlock = notes.find(
|
|
84
|
+
( t ) => t.blockClientId === blockId
|
|
85
|
+
);
|
|
86
|
+
if ( threadForBlock ) {
|
|
87
|
+
out.push( threadForBlock );
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
} );
|
|
91
|
+
return out;
|
|
92
|
+
}, [
|
|
93
|
+
notes,
|
|
94
|
+
isFloating,
|
|
95
|
+
selectedNote,
|
|
96
|
+
selectedBlockClientId,
|
|
97
|
+
orderedBlockIds,
|
|
98
|
+
] );
|
|
99
|
+
|
|
100
|
+
const handleDelete = async ( note ) => {
|
|
101
|
+
const currentIndex = threads.findIndex( ( t ) => t.id === note.id );
|
|
102
|
+
const nextThread = threads[ currentIndex + 1 ];
|
|
103
|
+
const prevThread = threads[ currentIndex - 1 ];
|
|
104
|
+
|
|
105
|
+
await onDelete( note );
|
|
106
|
+
|
|
107
|
+
if ( note.parent !== 0 ) {
|
|
108
|
+
// Move focus to the parent thread when a reply was deleted.
|
|
109
|
+
selectNote( note.parent );
|
|
110
|
+
focusNoteThread( note.parent, sidebarRef.current );
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
if ( nextThread ) {
|
|
115
|
+
selectNote( nextThread.id );
|
|
116
|
+
focusNoteThread( nextThread.id, sidebarRef.current );
|
|
117
|
+
} else if ( prevThread ) {
|
|
118
|
+
selectNote( prevThread.id );
|
|
119
|
+
focusNoteThread( prevThread.id, sidebarRef.current );
|
|
120
|
+
} else {
|
|
121
|
+
selectNote( undefined );
|
|
122
|
+
toggleBlockSpotlight( note.blockClientId, false );
|
|
123
|
+
// Move focus to the related block.
|
|
124
|
+
relatedBlockElement?.focus();
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
// Auto-select the related note thread when a block is selected.
|
|
129
|
+
useEffect( () => {
|
|
130
|
+
selectNote( blockNoteId ?? undefined );
|
|
131
|
+
}, [ blockNoteId, selectNote ] );
|
|
132
|
+
|
|
133
|
+
// Focus the selected note when requested.
|
|
134
|
+
useEffect( () => {
|
|
135
|
+
if ( noteFocused && selectedNote ) {
|
|
136
|
+
focusNoteThread(
|
|
137
|
+
selectedNote,
|
|
138
|
+
sidebarRef.current,
|
|
139
|
+
selectedNote === 'new' ? 'textarea' : undefined
|
|
140
|
+
);
|
|
141
|
+
// Clear focus flag to avoid re-triggering.
|
|
142
|
+
selectNote( selectedNote );
|
|
143
|
+
}
|
|
144
|
+
}, [ noteFocused, selectedNote, selectNote, sidebarRef ] );
|
|
145
|
+
|
|
146
|
+
const { notePositions, registerThread, unregisterThread } =
|
|
147
|
+
useFloatingBoard( {
|
|
148
|
+
threads,
|
|
149
|
+
selectedNoteId: selectedNote,
|
|
150
|
+
isFloating,
|
|
151
|
+
sidebarRef,
|
|
152
|
+
} );
|
|
153
|
+
|
|
154
|
+
const hasThreads = Array.isArray( threads ) && threads.length > 0;
|
|
155
|
+
|
|
156
|
+
const navigate = ( event, thread, isSelected ) => {
|
|
157
|
+
if ( event.defaultPrevented ) {
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
const currentIndex = threads.findIndex( ( t ) => t.id === thread.id );
|
|
162
|
+
const isSelfTarget = event.currentTarget === event.target;
|
|
163
|
+
|
|
164
|
+
if (
|
|
165
|
+
( event.key === 'Enter' || event.key === 'ArrowRight' ) &&
|
|
166
|
+
isSelfTarget &&
|
|
167
|
+
! isSelected
|
|
168
|
+
) {
|
|
169
|
+
// Expand thread.
|
|
170
|
+
selectNote( thread.id );
|
|
171
|
+
if ( !! thread.blockClientId ) {
|
|
172
|
+
// Pass `null` as the second parameter to prevent focusing the block.
|
|
173
|
+
selectBlock( thread.blockClientId, null );
|
|
174
|
+
toggleBlockSpotlight( thread.blockClientId, true );
|
|
175
|
+
}
|
|
176
|
+
} else if (
|
|
177
|
+
( ( event.key === 'Enter' || event.key === 'ArrowLeft' ) &&
|
|
178
|
+
isSelfTarget &&
|
|
179
|
+
isSelected ) ||
|
|
180
|
+
event.key === 'Escape'
|
|
181
|
+
) {
|
|
182
|
+
// Collapse thread.
|
|
183
|
+
selectNote( undefined );
|
|
184
|
+
if ( thread.blockClientId ) {
|
|
185
|
+
toggleBlockSpotlight( thread.blockClientId, false );
|
|
186
|
+
}
|
|
187
|
+
focusNoteThread( thread.id, sidebarRef.current );
|
|
188
|
+
} else if (
|
|
189
|
+
event.key === 'ArrowDown' &&
|
|
190
|
+
currentIndex < threads.length - 1 &&
|
|
191
|
+
isSelfTarget
|
|
192
|
+
) {
|
|
193
|
+
focusNoteThread(
|
|
194
|
+
threads[ currentIndex + 1 ].id,
|
|
195
|
+
sidebarRef.current
|
|
196
|
+
);
|
|
197
|
+
} else if (
|
|
198
|
+
event.key === 'ArrowUp' &&
|
|
199
|
+
currentIndex > 0 &&
|
|
200
|
+
isSelfTarget
|
|
201
|
+
) {
|
|
202
|
+
focusNoteThread(
|
|
203
|
+
threads[ currentIndex - 1 ].id,
|
|
204
|
+
sidebarRef.current
|
|
205
|
+
);
|
|
206
|
+
} else if ( event.key === 'Home' && isSelfTarget ) {
|
|
207
|
+
focusNoteThread( threads[ 0 ].id, sidebarRef.current );
|
|
208
|
+
} else if ( event.key === 'End' && isSelfTarget ) {
|
|
209
|
+
focusNoteThread(
|
|
210
|
+
threads[ threads.length - 1 ].id,
|
|
211
|
+
sidebarRef.current
|
|
212
|
+
);
|
|
213
|
+
}
|
|
214
|
+
};
|
|
215
|
+
|
|
216
|
+
return (
|
|
217
|
+
<Stack
|
|
218
|
+
className="editor-collab-sidebar-panel"
|
|
219
|
+
style={ styles }
|
|
220
|
+
role="tree"
|
|
221
|
+
direction="column"
|
|
222
|
+
gap="md"
|
|
223
|
+
justify="flex-start"
|
|
224
|
+
ref={ ( node ) => {
|
|
225
|
+
// Sometimes previous sidebar unmounts after the new one mounts.
|
|
226
|
+
// This ensures we always have the latest reference.
|
|
227
|
+
if ( node ) {
|
|
228
|
+
sidebarRef.current = node;
|
|
229
|
+
}
|
|
230
|
+
} }
|
|
231
|
+
aria-label={
|
|
232
|
+
isFloating ? __( 'Unresolved notes' ) : __( 'All notes' )
|
|
233
|
+
}
|
|
234
|
+
>
|
|
235
|
+
{ ! hasThreads && ! isFloating ? (
|
|
236
|
+
<AddNote onSubmit={ onAddReply } sidebarRef={ sidebarRef } />
|
|
237
|
+
) : (
|
|
238
|
+
<>
|
|
239
|
+
{ ! isFloating && selectedNote === 'new' && (
|
|
240
|
+
<AddNote
|
|
241
|
+
onSubmit={ onAddReply }
|
|
242
|
+
sidebarRef={ sidebarRef }
|
|
243
|
+
/>
|
|
244
|
+
) }
|
|
245
|
+
{ threads.map( ( thread ) => (
|
|
246
|
+
<NoteThread
|
|
247
|
+
key={ thread.id }
|
|
248
|
+
note={ thread }
|
|
249
|
+
onAddReply={ onAddReply }
|
|
250
|
+
onDeleteNote={ handleDelete }
|
|
251
|
+
onEditNote={ onEditNote }
|
|
252
|
+
isSelected={ selectedNote === thread.id }
|
|
253
|
+
sidebarRef={ sidebarRef }
|
|
254
|
+
floating={
|
|
255
|
+
isFloating
|
|
256
|
+
? {
|
|
257
|
+
y: notePositions[ thread.id ],
|
|
258
|
+
registerThread,
|
|
259
|
+
unregisterThread,
|
|
260
|
+
}
|
|
261
|
+
: undefined
|
|
262
|
+
}
|
|
263
|
+
onKeyDown={ ( event ) =>
|
|
264
|
+
navigate(
|
|
265
|
+
event,
|
|
266
|
+
thread,
|
|
267
|
+
selectedNote === thread.id
|
|
268
|
+
)
|
|
269
|
+
}
|
|
270
|
+
/>
|
|
271
|
+
) ) }
|
|
272
|
+
</>
|
|
273
|
+
) }
|
|
274
|
+
</Stack>
|
|
275
|
+
);
|
|
276
|
+
}
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
.editor-collab-sidebar-panel {
|
|
19
|
+
position: relative;
|
|
19
20
|
padding: $grid-unit-20 $grid-unit-20 $grid-unit-30;
|
|
20
21
|
height: 100%;
|
|
21
22
|
overflow: hidden;
|
|
@@ -46,6 +47,10 @@
|
|
|
46
47
|
right: $grid-unit-20;
|
|
47
48
|
position: absolute;
|
|
48
49
|
margin-top: $grid-unit-20;
|
|
50
|
+
// Inherits `--canvas-scroll` from the panel (set by `useFloatingBoard`)
|
|
51
|
+
// so each thread tracks the canvas scroll.
|
|
52
|
+
transform: translateY(var(--canvas-scroll, 0));
|
|
53
|
+
will-change: transform;
|
|
49
54
|
}
|
|
50
55
|
}
|
|
51
56
|
|
|
@@ -66,7 +71,7 @@
|
|
|
66
71
|
color: $gray-700;
|
|
67
72
|
}
|
|
68
73
|
|
|
69
|
-
.editor-collab-sidebar-
|
|
74
|
+
.editor-collab-sidebar-panel__note-content {
|
|
70
75
|
p:last-child {
|
|
71
76
|
margin-bottom: 0;
|
|
72
77
|
}
|
|
@@ -81,7 +86,7 @@
|
|
|
81
86
|
background: $white;
|
|
82
87
|
}
|
|
83
88
|
|
|
84
|
-
.editor-collab-sidebar-
|
|
89
|
+
.editor-collab-sidebar-panel__note-actions {
|
|
85
90
|
margin-left: auto;
|
|
86
91
|
|
|
87
92
|
button {
|
|
@@ -95,10 +100,6 @@
|
|
|
95
100
|
}
|
|
96
101
|
}
|
|
97
102
|
|
|
98
|
-
.editor-collab-sidebar-panel__comment-dropdown-menu {
|
|
99
|
-
flex-shrink: 0;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
103
|
.editor-collab-sidebar-panel__more-reply-separator {
|
|
103
104
|
&::before,
|
|
104
105
|
&::after {
|
|
@@ -115,11 +116,16 @@
|
|
|
115
116
|
font-weight: $font-weight-medium;
|
|
116
117
|
}
|
|
117
118
|
|
|
119
|
+
.editor-collab-sidebar-panel__deleted-block-notice {
|
|
120
|
+
font-weight: $font-weight-medium;
|
|
121
|
+
color: $gray-700;
|
|
122
|
+
}
|
|
123
|
+
|
|
118
124
|
.editor-collab-sidebar-panel__resolution-text {
|
|
119
125
|
font-style: italic;
|
|
120
126
|
}
|
|
121
127
|
|
|
122
|
-
.editor-collab-sidebar-
|
|
128
|
+
.editor-collab-sidebar-panel__note-form textarea {
|
|
123
129
|
@include input-control;
|
|
124
130
|
// Vertical padding is to match the standard 40px control height when rows=1,
|
|
125
131
|
// in conjunction with the 20px line-height.
|
|
@@ -130,7 +136,7 @@
|
|
|
130
136
|
}
|
|
131
137
|
|
|
132
138
|
// Visually hidden until focused (skip link pattern)
|
|
133
|
-
.editor-collab-sidebar-panel__skip-to-
|
|
139
|
+
.editor-collab-sidebar-panel__skip-to-note,
|
|
134
140
|
.editor-collab-sidebar-panel__skip-to-block {
|
|
135
141
|
position: absolute;
|
|
136
142
|
top: -9999px;
|
|
@@ -147,7 +153,7 @@
|
|
|
147
153
|
right: $grid-unit-10;
|
|
148
154
|
}
|
|
149
155
|
}
|
|
150
|
-
.editor-collab-sidebar-panel__skip-to-
|
|
156
|
+
.editor-collab-sidebar-panel__skip-to-note:focus {
|
|
151
157
|
top: $grid-unit-10;
|
|
152
158
|
}
|
|
153
159
|
.editor-collab-sidebar-panel__skip-to-block:focus {
|
|
@@ -155,7 +161,7 @@
|
|
|
155
161
|
bottom: $grid-unit-10;
|
|
156
162
|
}
|
|
157
163
|
|
|
158
|
-
.
|
|
164
|
+
.editor-note-indicator__avatar {
|
|
159
165
|
width: $icon-size;
|
|
160
166
|
border-radius: $radius-round;
|
|
161
167
|
margin-left: -12px;
|
|
@@ -170,8 +176,12 @@
|
|
|
170
176
|
}
|
|
171
177
|
}
|
|
172
178
|
|
|
179
|
+
.editor-note-indicator__overflow {
|
|
180
|
+
font-weight: $font-weight-medium;
|
|
181
|
+
}
|
|
182
|
+
|
|
173
183
|
.show-icon-labels {
|
|
174
|
-
.
|
|
184
|
+
.editor-note-indicator {
|
|
175
185
|
width: auto;
|
|
176
186
|
// Hide the user avatars container when labels are set to display...
|
|
177
187
|
div {
|