@tldraw/commenting 0.0.0-bootstrap → 5.3.0-internal.c5c7f1d817d0
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/commenting.css +131 -131
- package/dist-cjs/canvas/comment-body.js +1 -1
- package/dist-cjs/canvas/comment-body.js.map +2 -2
- package/dist-cjs/canvas/comments-filter-menu.js +1 -1
- package/dist-cjs/canvas/comments-filter-menu.js.map +1 -1
- package/dist-cjs/canvas/comments-overflow-menu.js +3 -3
- package/dist-cjs/canvas/comments-overflow-menu.js.map +2 -2
- package/dist-cjs/canvas/comments-overlay.js +65 -50
- package/dist-cjs/canvas/comments-overlay.js.map +2 -2
- package/dist-cjs/canvas/comments-sidebar.js +2 -2
- package/dist-cjs/canvas/comments-sidebar.js.map +2 -2
- package/dist-cjs/clustering/runtime.js +119 -7
- package/dist-cjs/clustering/runtime.js.map +2 -2
- package/dist-cjs/index.d.ts +28 -8
- package/dist-cjs/index.js +1 -1
- package/dist-cjs/ui/avatar.js +10 -2
- package/dist-cjs/ui/avatar.js.map +2 -2
- package/dist-cjs/ui/byline.js +4 -4
- package/dist-cjs/ui/byline.js.map +2 -2
- package/dist-cjs/ui/comment-card.js +3 -3
- package/dist-cjs/ui/comment-card.js.map +2 -2
- package/dist-cjs/ui/comment-composer.js +30 -24
- package/dist-cjs/ui/comment-composer.js.map +2 -2
- package/dist-cjs/ui/comment-mention.js +1 -1
- package/dist-cjs/ui/comment-mention.js.map +2 -2
- package/dist-cjs/ui/comment-pin.js +5 -1
- package/dist-cjs/ui/comment-pin.js.map +2 -2
- package/dist-cjs/ui/comment-text.js +1 -1
- package/dist-cjs/ui/comment-text.js.map +2 -2
- package/dist-cjs/ui/comment-thread.js +6 -6
- package/dist-cjs/ui/comment-thread.js.map +2 -2
- package/dist-cjs/ui/comments-list.js +11 -11
- package/dist-cjs/ui/comments-list.js.map +2 -2
- package/dist-cjs/ui/count-badge.js +1 -1
- package/dist-cjs/ui/count-badge.js.map +2 -2
- package/dist-cjs/ui/empty-state.js +3 -3
- package/dist-cjs/ui/empty-state.js.map +2 -2
- package/dist-cjs/ui/mention-list.js +7 -7
- package/dist-cjs/ui/mention-list.js.map +2 -2
- package/dist-cjs/ui/mention-suggestion.js +3 -3
- package/dist-cjs/ui/mention-suggestion.js.map +2 -2
- package/dist-cjs/ui/mention.js +1 -1
- package/dist-cjs/ui/mention.js.map +2 -2
- package/dist-cjs/ui/reaction.js +11 -4
- package/dist-cjs/ui/reaction.js.map +2 -2
- package/dist-cjs/ui/reactions.js +10 -2
- package/dist-cjs/ui/reactions.js.map +2 -2
- package/dist-cjs/ui/send-button.js +1 -1
- package/dist-cjs/ui/send-button.js.map +2 -2
- package/dist-esm/canvas/comment-body.mjs +1 -1
- package/dist-esm/canvas/comment-body.mjs.map +2 -2
- package/dist-esm/canvas/comments-filter-menu.mjs +1 -1
- package/dist-esm/canvas/comments-filter-menu.mjs.map +1 -1
- package/dist-esm/canvas/comments-overflow-menu.mjs +3 -3
- package/dist-esm/canvas/comments-overflow-menu.mjs.map +2 -2
- package/dist-esm/canvas/comments-overlay.mjs +65 -50
- package/dist-esm/canvas/comments-overlay.mjs.map +2 -2
- package/dist-esm/canvas/comments-sidebar.mjs +2 -2
- package/dist-esm/canvas/comments-sidebar.mjs.map +2 -2
- package/dist-esm/clustering/runtime.mjs +119 -7
- package/dist-esm/clustering/runtime.mjs.map +2 -2
- package/dist-esm/index.d.mts +28 -8
- package/dist-esm/index.mjs +1 -1
- package/dist-esm/ui/avatar.mjs +10 -2
- package/dist-esm/ui/avatar.mjs.map +2 -2
- package/dist-esm/ui/byline.mjs +4 -4
- package/dist-esm/ui/byline.mjs.map +2 -2
- package/dist-esm/ui/comment-card.mjs +3 -3
- package/dist-esm/ui/comment-card.mjs.map +2 -2
- package/dist-esm/ui/comment-composer.mjs +30 -24
- package/dist-esm/ui/comment-composer.mjs.map +2 -2
- package/dist-esm/ui/comment-mention.mjs +1 -1
- package/dist-esm/ui/comment-mention.mjs.map +2 -2
- package/dist-esm/ui/comment-pin.mjs +5 -1
- package/dist-esm/ui/comment-pin.mjs.map +2 -2
- package/dist-esm/ui/comment-text.mjs +1 -1
- package/dist-esm/ui/comment-text.mjs.map +2 -2
- package/dist-esm/ui/comment-thread.mjs +6 -6
- package/dist-esm/ui/comment-thread.mjs.map +2 -2
- package/dist-esm/ui/comments-list.mjs +11 -11
- package/dist-esm/ui/comments-list.mjs.map +2 -2
- package/dist-esm/ui/count-badge.mjs +1 -1
- package/dist-esm/ui/count-badge.mjs.map +2 -2
- package/dist-esm/ui/empty-state.mjs +3 -3
- package/dist-esm/ui/empty-state.mjs.map +2 -2
- package/dist-esm/ui/mention-list.mjs +7 -7
- package/dist-esm/ui/mention-list.mjs.map +2 -2
- package/dist-esm/ui/mention-suggestion.mjs +3 -3
- package/dist-esm/ui/mention-suggestion.mjs.map +2 -2
- package/dist-esm/ui/mention.mjs +1 -1
- package/dist-esm/ui/mention.mjs.map +2 -2
- package/dist-esm/ui/reaction.mjs +11 -4
- package/dist-esm/ui/reaction.mjs.map +2 -2
- package/dist-esm/ui/reactions.mjs +10 -2
- package/dist-esm/ui/reactions.mjs.map +2 -2
- package/dist-esm/ui/send-button.mjs +1 -1
- package/dist-esm/ui/send-button.mjs.map +2 -2
- package/package.json +3 -3
- package/src/canvas/canvas.css +25 -25
- package/src/canvas/comment-body.tsx +1 -1
- package/src/canvas/comment-render.test.ts +1 -1
- package/src/canvas/comments-filter-menu.tsx +1 -1
- package/src/canvas/comments-overflow-menu.tsx +3 -3
- package/src/canvas/comments-overlay.tsx +109 -76
- package/src/canvas/comments-sidebar.tsx +2 -2
- package/src/clustering/runtime.test.ts +183 -7
- package/src/clustering/runtime.ts +164 -15
- package/src/ui/avatar.tsx +9 -2
- package/src/ui/byline.tsx +4 -4
- package/src/ui/comment-card.tsx +3 -3
- package/src/ui/comment-composer.tsx +49 -30
- package/src/ui/comment-mention.ts +2 -2
- package/src/ui/comment-pin.tsx +5 -1
- package/src/ui/comment-text.tsx +1 -1
- package/src/ui/comment-thread.tsx +8 -6
- package/src/ui/comments-list.tsx +16 -12
- package/src/ui/comments.css +106 -106
- package/src/ui/count-badge.tsx +1 -1
- package/src/ui/empty-state.tsx +3 -3
- package/src/ui/mention-list.tsx +8 -8
- package/src/ui/mention-suggestion.tsx +3 -3
- package/src/ui/mention.tsx +1 -1
- package/src/ui/reaction.tsx +6 -3
- package/src/ui/reactions.tsx +6 -2
- package/src/ui/send-button.tsx +1 -1
|
@@ -26,7 +26,7 @@ export interface CommentMentionOptions {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
|
-
* The comment @-mention node — TipTap's `Mention` configured to render as a `.cmt-mention` pill.
|
|
29
|
+
* The comment @-mention node — TipTap's `Mention` configured to render as a `.tlui-cmt-mention` pill.
|
|
30
30
|
*
|
|
31
31
|
* A factory rather than a shared constant because it's configured differently per context: the
|
|
32
32
|
* read-only render paths pass `resolveName` (so the stored `{ id }` node always shows the member's
|
|
@@ -35,7 +35,7 @@ export interface CommentMentionOptions {
|
|
|
35
35
|
*/
|
|
36
36
|
export function commentMention({ resolveName, suggestion }: CommentMentionOptions = {}) {
|
|
37
37
|
return Mention.configure({
|
|
38
|
-
HTMLAttributes: { class: 'cmt-mention' },
|
|
38
|
+
HTMLAttributes: { class: 'tlui-cmt-mention' },
|
|
39
39
|
renderText: ({ node }) => `@${mentionName(node.attrs as MentionNodeAttrs, resolveName)}`,
|
|
40
40
|
renderHTML: ({ node, options }) => [
|
|
41
41
|
'span',
|
package/src/ui/comment-pin.tsx
CHANGED
|
@@ -14,7 +14,11 @@ export interface CommentPinProps {
|
|
|
14
14
|
* presentational — it reflects open/resolved state via CSS; wrap it to make it clickable.
|
|
15
15
|
* @public @react */
|
|
16
16
|
export function CommentPin({ children, resolved, open }: CommentPinProps) {
|
|
17
|
-
const className = [
|
|
17
|
+
const className = [
|
|
18
|
+
'tlui-cmt-pin',
|
|
19
|
+
resolved && 'tlui-cmt-pin--resolved',
|
|
20
|
+
open && 'tlui-cmt-pin--open',
|
|
21
|
+
]
|
|
18
22
|
.filter(Boolean)
|
|
19
23
|
.join(' ')
|
|
20
24
|
return <div className={className}>{resolved ? '✓' : children}</div>
|
package/src/ui/comment-text.tsx
CHANGED
|
@@ -8,5 +8,5 @@ export interface CommentTextProps {
|
|
|
8
8
|
|
|
9
9
|
/** A comment's body, rendered as markdown (bold, italic, code, links, lists). @public @react */
|
|
10
10
|
export function CommentText({ text }: CommentTextProps) {
|
|
11
|
-
return <div className="cmt-text">{renderMarkdown(text)}</div>
|
|
11
|
+
return <div className="tlui-cmt-text">{renderMarkdown(text)}</div>
|
|
12
12
|
}
|
|
@@ -33,17 +33,19 @@ export function CommentThread({
|
|
|
33
33
|
renderComment,
|
|
34
34
|
}: CommentThreadProps) {
|
|
35
35
|
return (
|
|
36
|
-
<div className="cmt-thread">
|
|
36
|
+
<div className="tlui-cmt-thread">
|
|
37
37
|
{(header !== undefined || headerActions !== undefined) && (
|
|
38
|
-
<div className="cmt-thread__header">
|
|
39
|
-
<span className="cmt-thread__title">{header}</span>
|
|
38
|
+
<div className="tlui-cmt-thread__header">
|
|
39
|
+
<span className="tlui-cmt-thread__title">{header}</span>
|
|
40
40
|
{headerActions !== undefined && (
|
|
41
|
-
<div className="cmt-thread__actions">{headerActions}</div>
|
|
41
|
+
<div className="tlui-cmt-thread__actions">{headerActions}</div>
|
|
42
42
|
)}
|
|
43
43
|
</div>
|
|
44
44
|
)}
|
|
45
|
-
{resolvedBanner !== undefined &&
|
|
46
|
-
|
|
45
|
+
{resolvedBanner !== undefined && (
|
|
46
|
+
<div className="tlui-cmt-thread__resolved">{resolvedBanner}</div>
|
|
47
|
+
)}
|
|
48
|
+
<div className="tlui-cmt-thread__list">
|
|
47
49
|
{comments.map((comment, i) => (
|
|
48
50
|
<div key={i}>
|
|
49
51
|
{renderComment ? renderComment(comment, i) : <CommentCard {...comment} />}
|
package/src/ui/comments-list.tsx
CHANGED
|
@@ -52,17 +52,17 @@ export function CommentsList({
|
|
|
52
52
|
renderItem,
|
|
53
53
|
}: CommentsListProps) {
|
|
54
54
|
return (
|
|
55
|
-
<div className="cmt-list">
|
|
55
|
+
<div className="tlui-cmt-list">
|
|
56
56
|
{(header !== undefined || headerAction) && (
|
|
57
|
-
<div className="cmt-list__header">
|
|
58
|
-
{header !== undefined && <span className="cmt-list__header-title">{header}</span>}
|
|
57
|
+
<div className="tlui-cmt-list__header">
|
|
58
|
+
{header !== undefined && <span className="tlui-cmt-list__header-title">{header}</span>}
|
|
59
59
|
{headerAction}
|
|
60
60
|
</div>
|
|
61
61
|
)}
|
|
62
62
|
{items.length === 0 ? (
|
|
63
|
-
<div className="cmt-list__empty">{empty}</div>
|
|
63
|
+
<div className="tlui-cmt-list__empty">{empty}</div>
|
|
64
64
|
) : (
|
|
65
|
-
<div className="cmt-list__items">
|
|
65
|
+
<div className="tlui-cmt-list__items">
|
|
66
66
|
{items.map((item) =>
|
|
67
67
|
renderItem ? (
|
|
68
68
|
renderItem(item)
|
|
@@ -99,27 +99,31 @@ function CommentListItem({
|
|
|
99
99
|
return (
|
|
100
100
|
<button
|
|
101
101
|
type="button"
|
|
102
|
-
className={
|
|
102
|
+
className={
|
|
103
|
+
selected ? 'tlui-cmt-list__item tlui-cmt-list__item--selected' : 'tlui-cmt-list__item'
|
|
104
|
+
}
|
|
103
105
|
data-resolved={resolved || undefined}
|
|
104
106
|
onClick={handleClick}
|
|
105
107
|
>
|
|
106
108
|
<Avatar name={author} />
|
|
107
|
-
<div className="cmt-list__item-body">
|
|
109
|
+
<div className="tlui-cmt-list__item-body">
|
|
108
110
|
<Byline author={author} date={date} />
|
|
109
|
-
<div className="cmt-list__item-preview">{preview}</div>
|
|
111
|
+
<div className="tlui-cmt-list__item-preview">{preview}</div>
|
|
110
112
|
{(resolved || page !== undefined) && (
|
|
111
|
-
<div className="cmt-list__item-meta">
|
|
113
|
+
<div className="tlui-cmt-list__item-meta">
|
|
112
114
|
{resolved && (
|
|
113
|
-
<span className="cmt-list__item-resolved">
|
|
115
|
+
<span className="tlui-cmt-list__item-resolved">
|
|
114
116
|
<CheckIcon />
|
|
115
117
|
{resolvedLabel}
|
|
116
118
|
</span>
|
|
117
119
|
)}
|
|
118
|
-
{page !== undefined && <span className="cmt-list__item-page">{page}</span>}
|
|
120
|
+
{page !== undefined && <span className="tlui-cmt-list__item-page">{page}</span>}
|
|
119
121
|
</div>
|
|
120
122
|
)}
|
|
121
123
|
</div>
|
|
122
|
-
{count !== undefined && count > 1 &&
|
|
124
|
+
{count !== undefined && count > 1 && (
|
|
125
|
+
<span className="tlui-cmt-list__item-count">{count}</span>
|
|
126
|
+
)}
|
|
123
127
|
</button>
|
|
124
128
|
)
|
|
125
129
|
}
|