@liveblocks/react-ui 2.14.0 → 2.15.0-debug1
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/dist/_private/index.d.mts +24 -22
- package/dist/_private/index.d.ts +24 -22
- package/dist/components/Comment.js +355 -254
- package/dist/components/Comment.js.map +1 -1
- package/dist/components/Comment.mjs +330 -229
- package/dist/components/Comment.mjs.map +1 -1
- package/dist/components/Composer.js +305 -224
- package/dist/components/Composer.js.map +1 -1
- package/dist/components/Composer.mjs +281 -200
- package/dist/components/Composer.mjs.map +1 -1
- package/dist/components/HistoryVersionSummary.js +25 -22
- package/dist/components/HistoryVersionSummary.js.map +1 -1
- package/dist/components/HistoryVersionSummary.mjs +24 -21
- package/dist/components/HistoryVersionSummary.mjs.map +1 -1
- package/dist/components/HistoryVersionSummaryList.js +10 -9
- package/dist/components/HistoryVersionSummaryList.js.map +1 -1
- package/dist/components/HistoryVersionSummaryList.mjs +9 -8
- package/dist/components/HistoryVersionSummaryList.mjs.map +1 -1
- package/dist/components/InboxNotification.js +201 -143
- package/dist/components/InboxNotification.js.map +1 -1
- package/dist/components/InboxNotification.mjs +179 -121
- package/dist/components/InboxNotification.mjs.map +1 -1
- package/dist/components/InboxNotificationList.js +18 -14
- package/dist/components/InboxNotificationList.js.map +1 -1
- package/dist/components/InboxNotificationList.mjs +16 -12
- package/dist/components/InboxNotificationList.mjs.map +1 -1
- package/dist/components/Thread.js +103 -86
- package/dist/components/Thread.js.map +1 -1
- package/dist/components/Thread.mjs +92 -75
- package/dist/components/Thread.mjs.map +1 -1
- package/dist/components/internal/Attachment.js +158 -107
- package/dist/components/internal/Attachment.js.map +1 -1
- package/dist/components/internal/Attachment.mjs +147 -96
- package/dist/components/internal/Attachment.mjs.map +1 -1
- package/dist/components/internal/Attribution.js +15 -13
- package/dist/components/internal/Attribution.js.map +1 -1
- package/dist/components/internal/Attribution.mjs +15 -13
- package/dist/components/internal/Attribution.mjs.map +1 -1
- package/dist/components/internal/Avatar.js +26 -20
- package/dist/components/internal/Avatar.js.map +1 -1
- package/dist/components/internal/Avatar.mjs +22 -16
- package/dist/components/internal/Avatar.mjs.map +1 -1
- package/dist/components/internal/Button.js +4 -4
- package/dist/components/internal/Button.js.map +1 -1
- package/dist/components/internal/Button.mjs +3 -3
- package/dist/components/internal/Button.mjs.map +1 -1
- package/dist/components/internal/Dropdown.js +26 -19
- package/dist/components/internal/Dropdown.js.map +1 -1
- package/dist/components/internal/Dropdown.mjs +25 -18
- package/dist/components/internal/Dropdown.mjs.map +1 -1
- package/dist/components/internal/Emoji.js +4 -3
- package/dist/components/internal/Emoji.js.map +1 -1
- package/dist/components/internal/Emoji.mjs +3 -2
- package/dist/components/internal/Emoji.mjs.map +1 -1
- package/dist/components/internal/EmojiPicker.js +96 -72
- package/dist/components/internal/EmojiPicker.js.map +1 -1
- package/dist/components/internal/EmojiPicker.mjs +90 -66
- package/dist/components/internal/EmojiPicker.mjs.map +1 -1
- package/dist/components/internal/Icon.js +5 -4
- package/dist/components/internal/Icon.js.map +1 -1
- package/dist/components/internal/Icon.mjs +5 -4
- package/dist/components/internal/Icon.mjs.map +1 -1
- package/dist/components/internal/InboxNotificationThread.js +53 -38
- package/dist/components/internal/InboxNotificationThread.js.map +1 -1
- package/dist/components/internal/InboxNotificationThread.mjs +53 -38
- package/dist/components/internal/InboxNotificationThread.mjs.map +1 -1
- package/dist/components/internal/List.js +8 -6
- package/dist/components/internal/List.js.map +1 -1
- package/dist/components/internal/List.mjs +6 -4
- package/dist/components/internal/List.mjs.map +1 -1
- package/dist/components/internal/Room.js +7 -6
- package/dist/components/internal/Room.js.map +1 -1
- package/dist/components/internal/Room.mjs +6 -5
- package/dist/components/internal/Room.mjs.map +1 -1
- package/dist/components/internal/Tooltip.js +48 -33
- package/dist/components/internal/Tooltip.js.map +1 -1
- package/dist/components/internal/Tooltip.mjs +45 -30
- package/dist/components/internal/Tooltip.mjs.map +1 -1
- package/dist/components/internal/User.js +7 -6
- package/dist/components/internal/User.js.map +1 -1
- package/dist/components/internal/User.mjs +6 -5
- package/dist/components/internal/User.mjs.map +1 -1
- package/dist/components.js +11 -29
- package/dist/components.js.map +1 -1
- package/dist/components.mjs +5 -5
- package/dist/components.mjs.map +1 -1
- package/dist/config.js +15 -12
- package/dist/config.js.map +1 -1
- package/dist/config.mjs +12 -9
- package/dist/config.mjs.map +1 -1
- package/dist/icons/ArrowDown.js +7 -6
- package/dist/icons/ArrowDown.js.map +1 -1
- package/dist/icons/ArrowDown.mjs +7 -6
- package/dist/icons/ArrowDown.mjs.map +1 -1
- package/dist/icons/ArrowUp.js +7 -6
- package/dist/icons/ArrowUp.js.map +1 -1
- package/dist/icons/ArrowUp.mjs +7 -6
- package/dist/icons/ArrowUp.mjs.map +1 -1
- package/dist/icons/Attachment.js +7 -6
- package/dist/icons/Attachment.js.map +1 -1
- package/dist/icons/Attachment.mjs +7 -6
- package/dist/icons/Attachment.mjs.map +1 -1
- package/dist/icons/Bold.js +7 -6
- package/dist/icons/Bold.js.map +1 -1
- package/dist/icons/Bold.mjs +7 -6
- package/dist/icons/Bold.mjs.map +1 -1
- package/dist/icons/Check.js +7 -6
- package/dist/icons/Check.js.map +1 -1
- package/dist/icons/Check.mjs +7 -6
- package/dist/icons/Check.mjs.map +1 -1
- package/dist/icons/Code.js +7 -6
- package/dist/icons/Code.js.map +1 -1
- package/dist/icons/Code.mjs +7 -6
- package/dist/icons/Code.mjs.map +1 -1
- package/dist/icons/Cross.js +12 -8
- package/dist/icons/Cross.js.map +1 -1
- package/dist/icons/Cross.mjs +12 -8
- package/dist/icons/Cross.mjs.map +1 -1
- package/dist/icons/Delete.js +7 -6
- package/dist/icons/Delete.js.map +1 -1
- package/dist/icons/Delete.mjs +7 -6
- package/dist/icons/Delete.mjs.map +1 -1
- package/dist/icons/Edit.js +7 -6
- package/dist/icons/Edit.js.map +1 -1
- package/dist/icons/Edit.mjs +7 -6
- package/dist/icons/Edit.mjs.map +1 -1
- package/dist/icons/Ellipsis.js +21 -16
- package/dist/icons/Ellipsis.js.map +1 -1
- package/dist/icons/Ellipsis.mjs +21 -16
- package/dist/icons/Ellipsis.mjs.map +1 -1
- package/dist/icons/Emoji.js +25 -18
- package/dist/icons/Emoji.js.map +1 -1
- package/dist/icons/Emoji.mjs +25 -18
- package/dist/icons/Emoji.mjs.map +1 -1
- package/dist/icons/EmojiAdd.js +28 -20
- package/dist/icons/EmojiAdd.js.map +1 -1
- package/dist/icons/EmojiAdd.mjs +28 -20
- package/dist/icons/EmojiAdd.mjs.map +1 -1
- package/dist/icons/Italic.js +7 -6
- package/dist/icons/Italic.js.map +1 -1
- package/dist/icons/Italic.mjs +7 -6
- package/dist/icons/Italic.mjs.map +1 -1
- package/dist/icons/Mention.js +12 -8
- package/dist/icons/Mention.js.map +1 -1
- package/dist/icons/Mention.mjs +12 -8
- package/dist/icons/Mention.mjs.map +1 -1
- package/dist/icons/Resolve.js +14 -10
- package/dist/icons/Resolve.js.map +1 -1
- package/dist/icons/Resolve.mjs +14 -10
- package/dist/icons/Resolve.mjs.map +1 -1
- package/dist/icons/Resolved.js +16 -12
- package/dist/icons/Resolved.js.map +1 -1
- package/dist/icons/Resolved.mjs +16 -12
- package/dist/icons/Resolved.mjs.map +1 -1
- package/dist/icons/Restore.js +12 -8
- package/dist/icons/Restore.js.map +1 -1
- package/dist/icons/Restore.mjs +12 -8
- package/dist/icons/Restore.mjs.map +1 -1
- package/dist/icons/Search.js +7 -6
- package/dist/icons/Search.js.map +1 -1
- package/dist/icons/Search.mjs +7 -6
- package/dist/icons/Search.mjs.map +1 -1
- package/dist/icons/Send.js +7 -6
- package/dist/icons/Send.js.map +1 -1
- package/dist/icons/Send.mjs +7 -6
- package/dist/icons/Send.mjs.map +1 -1
- package/dist/icons/Spinner.js +8 -7
- package/dist/icons/Spinner.js.map +1 -1
- package/dist/icons/Spinner.mjs +8 -7
- package/dist/icons/Spinner.mjs.map +1 -1
- package/dist/icons/Strikethrough.js +7 -6
- package/dist/icons/Strikethrough.js.map +1 -1
- package/dist/icons/Strikethrough.mjs +7 -6
- package/dist/icons/Strikethrough.mjs.map +1 -1
- package/dist/icons/Warning.js +14 -10
- package/dist/icons/Warning.js.map +1 -1
- package/dist/icons/Warning.mjs +14 -10
- package/dist/icons/Warning.mjs.map +1 -1
- package/dist/index.d.mts +14 -12
- package/dist/index.d.ts +14 -12
- package/dist/overrides.js +64 -36
- package/dist/overrides.js.map +1 -1
- package/dist/overrides.mjs +58 -12
- package/dist/overrides.mjs.map +1 -1
- package/dist/primitives/Comment/index.js +75 -66
- package/dist/primitives/Comment/index.js.map +1 -1
- package/dist/primitives/Comment/index.mjs +71 -62
- package/dist/primitives/Comment/index.mjs.map +1 -1
- package/dist/primitives/Composer/contexts.js +11 -11
- package/dist/primitives/Composer/index.js +329 -271
- package/dist/primitives/Composer/index.js.map +1 -1
- package/dist/primitives/Composer/index.mjs +254 -196
- package/dist/primitives/Composer/index.mjs.map +1 -1
- package/dist/primitives/Composer/utils.js +18 -20
- package/dist/primitives/Composer/utils.js.map +1 -1
- package/dist/primitives/Composer/utils.mjs +1 -3
- package/dist/primitives/Composer/utils.mjs.map +1 -1
- package/dist/primitives/EmojiPicker/contexts.js +3 -3
- package/dist/primitives/EmojiPicker/index.js +159 -142
- package/dist/primitives/EmojiPicker/index.js.map +1 -1
- package/dist/primitives/EmojiPicker/index.mjs +120 -103
- package/dist/primitives/EmojiPicker/index.mjs.map +1 -1
- package/dist/primitives/FileSize.js +8 -7
- package/dist/primitives/FileSize.js.map +1 -1
- package/dist/primitives/FileSize.mjs +6 -5
- package/dist/primitives/FileSize.mjs.map +1 -1
- package/dist/primitives/Timestamp.js +11 -10
- package/dist/primitives/Timestamp.js.map +1 -1
- package/dist/primitives/Timestamp.mjs +6 -5
- package/dist/primitives/Timestamp.mjs.map +1 -1
- package/dist/primitives/index.d.mts +24 -23
- package/dist/primitives/index.d.ts +24 -23
- package/dist/primitives/internal/Emoji.js +7 -5
- package/dist/primitives/internal/Emoji.js.map +1 -1
- package/dist/primitives/internal/Emoji.mjs +6 -4
- package/dist/primitives/internal/Emoji.mjs.map +1 -1
- package/dist/shared.js +2 -7
- package/dist/shared.js.map +1 -1
- package/dist/shared.mjs +2 -7
- package/dist/shared.mjs.map +1 -1
- package/dist/utils/Persist.js +18 -18
- package/dist/utils/Persist.js.map +1 -1
- package/dist/utils/Persist.mjs +6 -6
- package/dist/utils/Persist.mjs.map +1 -1
- package/dist/utils/Portal.js +4 -4
- package/dist/utils/Portal.js.map +1 -1
- package/dist/utils/Portal.mjs +3 -3
- package/dist/utils/Portal.mjs.map +1 -1
- package/dist/utils/use-controllable-state.js +5 -5
- package/dist/utils/use-index.js +7 -7
- package/dist/utils/use-initial.js +2 -2
- package/dist/utils/use-interval.js +4 -4
- package/dist/utils/use-latest.js +3 -3
- package/dist/utils/use-observable.js +2 -2
- package/dist/utils/use-refs.js +2 -2
- package/dist/utils/use-rerender.js +2 -2
- package/dist/utils/use-visible.js +2 -2
- package/dist/utils/use-window-focus.js +2 -2
- package/dist/utils/use-window-focus.js.map +1 -1
- package/dist/utils/use-window-focus.mjs +1 -1
- package/dist/utils/use-window-focus.mjs.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/dist/version.mjs +1 -1
- package/dist/version.mjs.map +1 -1
- package/package.json +6 -8
- package/dist/utils/use-id.js +0 -29
- package/dist/utils/use-id.js.map +0 -1
- package/dist/utils/use-id.mjs +0 -27
- package/dist/utils/use-id.mjs.map +0 -1
- package/dist/utils/use-layout-effect.js +0 -8
- package/dist/utils/use-layout-effect.js.map +0 -1
- package/dist/utils/use-layout-effect.mjs +0 -6
- package/dist/utils/use-layout-effect.mjs.map +0 -1
- package/dist/utils/use-transition.js +0 -16
- package/dist/utils/use-transition.js.map +0 -1
- package/dist/utils/use-transition.mjs +0 -14
- package/dist/utils/use-transition.mjs.map +0 -1
package/dist/overrides.js
CHANGED
|
@@ -1,30 +1,11 @@
|
|
|
1
|
-
'use client';
|
|
2
1
|
'use strict';
|
|
3
2
|
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
4
|
var core = require('@liveblocks/core');
|
|
5
|
-
var
|
|
5
|
+
var react = require('react');
|
|
6
6
|
var Emoji = require('./components/internal/Emoji.js');
|
|
7
7
|
var pluralize = require('./utils/pluralize.js');
|
|
8
8
|
|
|
9
|
-
function _interopNamespaceDefault(e) {
|
|
10
|
-
var n = Object.create(null);
|
|
11
|
-
if (e) {
|
|
12
|
-
Object.keys(e).forEach(function (k) {
|
|
13
|
-
if (k !== 'default') {
|
|
14
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
15
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
16
|
-
enumerable: true,
|
|
17
|
-
get: function () { return e[k]; }
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
n.default = e;
|
|
23
|
-
return Object.freeze(n);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
27
|
-
|
|
28
9
|
const defaultOverrides = {
|
|
29
10
|
locale: "en",
|
|
30
11
|
dir: "ltr",
|
|
@@ -68,9 +49,15 @@ const defaultOverrides = {
|
|
|
68
49
|
COMMENT_DELETE: "Delete comment",
|
|
69
50
|
COMMENT_DELETE_ATTACHMENT: "Delete attachment",
|
|
70
51
|
COMMENT_ADD_REACTION: "Add reaction",
|
|
71
|
-
COMMENT_REACTION_LIST: (list, emoji) => /* @__PURE__ */
|
|
72
|
-
|
|
73
|
-
|
|
52
|
+
COMMENT_REACTION_LIST: (list, emoji) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
53
|
+
children: [
|
|
54
|
+
list,
|
|
55
|
+
" reacted with ",
|
|
56
|
+
/* @__PURE__ */ jsxRuntime.jsx(Emoji.Emoji, {
|
|
57
|
+
emoji
|
|
58
|
+
})
|
|
59
|
+
]
|
|
60
|
+
}),
|
|
74
61
|
COMMENT_REACTION_DESCRIPTION: (emoji, count) => `${count} ${pluralize.pluralize(count, "reaction")}, react with ${emoji}`,
|
|
75
62
|
THREAD_RESOLVE: "Resolve thread",
|
|
76
63
|
THREAD_UNRESOLVE: "Re-open thread",
|
|
@@ -81,18 +68,58 @@ const defaultOverrides = {
|
|
|
81
68
|
INBOX_NOTIFICATION_MORE: "More",
|
|
82
69
|
INBOX_NOTIFICATION_MARK_AS_READ: "Mark as read",
|
|
83
70
|
INBOX_NOTIFICATION_DELETE: "Delete notification",
|
|
84
|
-
INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (list, room) => /* @__PURE__ */
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
71
|
+
INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (list, room) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
72
|
+
children: [
|
|
73
|
+
list,
|
|
74
|
+
" commented",
|
|
75
|
+
room ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
76
|
+
children: [
|
|
77
|
+
" in ",
|
|
78
|
+
room
|
|
79
|
+
]
|
|
80
|
+
}) : /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
81
|
+
children: " in a thread"
|
|
82
|
+
})
|
|
83
|
+
]
|
|
84
|
+
}),
|
|
85
|
+
INBOX_NOTIFICATION_THREAD_MENTION: (user, room) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
86
|
+
children: [
|
|
87
|
+
user,
|
|
88
|
+
" mentioned you",
|
|
89
|
+
room ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
90
|
+
children: [
|
|
91
|
+
" in ",
|
|
92
|
+
room
|
|
93
|
+
]
|
|
94
|
+
}) : null
|
|
95
|
+
]
|
|
96
|
+
}),
|
|
97
|
+
INBOX_NOTIFICATION_TEXT_MENTION: (user, room) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
98
|
+
children: [
|
|
99
|
+
user,
|
|
100
|
+
" mentioned you",
|
|
101
|
+
room ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
102
|
+
children: [
|
|
103
|
+
" in ",
|
|
104
|
+
room
|
|
105
|
+
]
|
|
106
|
+
}) : null
|
|
107
|
+
]
|
|
108
|
+
}),
|
|
109
|
+
HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
110
|
+
children: [
|
|
111
|
+
"Edits from ",
|
|
112
|
+
list
|
|
113
|
+
]
|
|
114
|
+
}),
|
|
88
115
|
HISTORY_VERSION_PREVIEW_RESTORE: "Restore",
|
|
89
116
|
HISTORY_VERSION_PREVIEW_EMPTY: "No content.",
|
|
90
117
|
HISTORY_VERSION_PREVIEW_ERROR: () => "There was an error while getting this version."
|
|
91
118
|
};
|
|
92
|
-
const OverridesContext =
|
|
119
|
+
const OverridesContext = react.createContext(void 0);
|
|
93
120
|
function useOverrides(overrides) {
|
|
94
|
-
const contextOverrides =
|
|
95
|
-
return
|
|
121
|
+
const contextOverrides = react.useContext(OverridesContext);
|
|
122
|
+
return react.useMemo(
|
|
96
123
|
() => ({
|
|
97
124
|
...defaultOverrides,
|
|
98
125
|
...contextOverrides,
|
|
@@ -105,8 +132,8 @@ function OverridesProvider({
|
|
|
105
132
|
children,
|
|
106
133
|
overrides: providerOverrides
|
|
107
134
|
}) {
|
|
108
|
-
const contextOverrides =
|
|
109
|
-
const overrides =
|
|
135
|
+
const contextOverrides = react.useContext(OverridesContext);
|
|
136
|
+
const overrides = react.useMemo(
|
|
110
137
|
() => ({
|
|
111
138
|
...defaultOverrides,
|
|
112
139
|
...contextOverrides,
|
|
@@ -114,9 +141,10 @@ function OverridesProvider({
|
|
|
114
141
|
}),
|
|
115
142
|
[contextOverrides, providerOverrides]
|
|
116
143
|
);
|
|
117
|
-
return /* @__PURE__ */
|
|
118
|
-
value: overrides
|
|
119
|
-
|
|
144
|
+
return /* @__PURE__ */ jsxRuntime.jsx(OverridesContext.Provider, {
|
|
145
|
+
value: overrides,
|
|
146
|
+
children
|
|
147
|
+
});
|
|
120
148
|
}
|
|
121
149
|
|
|
122
150
|
exports.OverridesContext = OverridesContext;
|
package/dist/overrides.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overrides.js","sources":["../src/overrides.tsx"],"sourcesContent":["\"use client\";\n\nimport { assertNever } from \"@liveblocks/core\";\nimport type { PropsWithChildren, ReactNode } from \"react\";\nimport { createContext, useContext, useMemo } from \"react\";\nimport * as React from \"react\";\n\nimport { Emoji } from \"./components/internal/Emoji\";\nimport type { ComposerBodyMark, Direction } from \"./types\";\nimport { pluralize } from \"./utils/pluralize\";\n\nexport interface LocalizationOverrides {\n locale: string;\n dir: Direction;\n}\n\nexport interface GlobalOverrides {\n USER_SELF: string;\n USER_UNKNOWN: string;\n LIST_REMAINING: (count: number) => string;\n LIST_REMAINING_USERS: (count: number) => string;\n LIST_REMAINING_COMMENTS: (count: number) => string;\n EMOJI_PICKER_SEARCH_PLACEHOLDER: string;\n EMOJI_PICKER_EMPTY: ReactNode;\n EMOJI_PICKER_ERROR: (error: Error) => ReactNode;\n ATTACHMENT_TOO_LARGE: (maxSize?: string) => string;\n ATTACHMENT_ERROR: (error: Error) => string;\n}\n\nexport interface CommentOverrides {\n COMMENT_EDITED: ReactNode;\n COMMENT_DELETED: ReactNode;\n COMMENT_MORE: string;\n COMMENT_EDIT: string;\n COMMENT_EDIT_COMPOSER_PLACEHOLDER: string;\n COMMENT_EDIT_COMPOSER_CANCEL: string;\n COMMENT_EDIT_COMPOSER_SAVE: string;\n COMMENT_DELETE: string;\n COMMENT_DELETE_ATTACHMENT: string;\n COMMENT_ADD_REACTION: string;\n COMMENT_REACTION_LIST: (\n list: ReactNode,\n emoji: string,\n count: number\n ) => ReactNode;\n COMMENT_REACTION_DESCRIPTION: (emoji: string, count: number) => string;\n}\n\nexport interface ComposerOverrides {\n COMPOSER_INSERT_MENTION: string;\n COMPOSER_INSERT_EMOJI: string;\n COMPOSER_ATTACH_FILES: string;\n COMPOSER_REMOVE_ATTACHMENT: string;\n COMPOSER_PLACEHOLDER: string;\n COMPOSER_SEND: string;\n COMPOSER_TOGGLE_MARK: (mark: ComposerBodyMark) => string;\n}\n\nexport interface ThreadOverrides {\n THREAD_RESOLVE: string;\n THREAD_UNRESOLVE: string;\n THREAD_NEW_INDICATOR: string;\n THREAD_NEW_INDICATOR_DESCRIPTION: string;\n THREAD_COMPOSER_PLACEHOLDER: string;\n THREAD_COMPOSER_SEND: string;\n}\n\nexport interface InboxNotificationOverrides {\n INBOX_NOTIFICATION_MORE: string;\n INBOX_NOTIFICATION_MARK_AS_READ: string;\n INBOX_NOTIFICATION_DELETE: string;\n INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (\n list: ReactNode,\n room: ReactNode | undefined,\n count: number\n ) => ReactNode;\n INBOX_NOTIFICATION_THREAD_MENTION: (\n user: ReactNode,\n room: ReactNode | undefined\n ) => ReactNode;\n INBOX_NOTIFICATION_TEXT_MENTION: (\n user: ReactNode,\n room: ReactNode | undefined\n ) => ReactNode;\n}\n\nexport interface HistoryVersionPreviewOverrides {\n HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list: ReactNode) => ReactNode;\n HISTORY_VERSION_PREVIEW_RESTORE: string;\n HISTORY_VERSION_PREVIEW_EMPTY: ReactNode;\n HISTORY_VERSION_PREVIEW_ERROR: (error: Error) => ReactNode;\n}\n\nexport type Overrides = LocalizationOverrides &\n GlobalOverrides &\n ComposerOverrides &\n CommentOverrides &\n ThreadOverrides &\n InboxNotificationOverrides &\n HistoryVersionPreviewOverrides;\n\ntype OverridesProviderProps = PropsWithChildren<{\n overrides?: Partial<Overrides>;\n}>;\n\nexport const defaultOverrides: Overrides = {\n locale: \"en\",\n dir: \"ltr\",\n USER_SELF: \"you\",\n USER_UNKNOWN: \"Anonymous\",\n LIST_REMAINING: (count) => `${count} more`,\n LIST_REMAINING_USERS: (count) => `${count} ${pluralize(count, \"other\")}`,\n LIST_REMAINING_COMMENTS: (count) =>\n `${count} more ${pluralize(count, \"comment\")}`,\n EMOJI_PICKER_SEARCH_PLACEHOLDER: \"Search…\",\n EMOJI_PICKER_EMPTY: \"No emoji found.\",\n EMOJI_PICKER_ERROR: () =>\n \"There was an error while getting the list of emoji.\",\n ATTACHMENT_TOO_LARGE: (maxSize) =>\n maxSize ? `The file is larger than ${maxSize}` : \"The file is too large\",\n ATTACHMENT_ERROR: () => \"The file couldn’t be uploaded.\",\n COMPOSER_INSERT_MENTION: \"Mention someone\",\n COMPOSER_INSERT_EMOJI: \"Add emoji\",\n COMPOSER_ATTACH_FILES: \"Attach files\",\n COMPOSER_REMOVE_ATTACHMENT: \"Remove attachment\",\n COMPOSER_PLACEHOLDER: \"Write a comment…\",\n COMPOSER_SEND: \"Send\",\n COMPOSER_TOGGLE_MARK: (format) => {\n switch (format) {\n case \"bold\":\n return \"Bold\";\n case \"italic\":\n return \"Italic\";\n case \"strikethrough\":\n return \"Strikethrough\";\n case \"code\":\n return \"Inline code\";\n default:\n return assertNever(format, \"Unexpected mark\");\n }\n },\n COMMENT_EDITED: \"(edited)\",\n COMMENT_DELETED: \"This comment has been deleted.\",\n COMMENT_MORE: \"More\",\n COMMENT_EDIT: \"Edit comment\",\n COMMENT_EDIT_COMPOSER_PLACEHOLDER: \"Edit comment…\",\n COMMENT_EDIT_COMPOSER_CANCEL: \"Cancel\",\n COMMENT_EDIT_COMPOSER_SAVE: \"Save\",\n COMMENT_DELETE: \"Delete comment\",\n COMMENT_DELETE_ATTACHMENT: \"Delete attachment\",\n COMMENT_ADD_REACTION: \"Add reaction\",\n COMMENT_REACTION_LIST: (list, emoji) => (\n <>\n {list} reacted with <Emoji emoji={emoji} />\n </>\n ),\n COMMENT_REACTION_DESCRIPTION: (emoji, count) =>\n `${count} ${pluralize(count, \"reaction\")}, react with ${emoji}`,\n THREAD_RESOLVE: \"Resolve thread\",\n THREAD_UNRESOLVE: \"Re-open thread\",\n THREAD_NEW_INDICATOR: \"New\",\n THREAD_NEW_INDICATOR_DESCRIPTION: \"New comments\",\n THREAD_COMPOSER_PLACEHOLDER: \"Reply to thread…\",\n THREAD_COMPOSER_SEND: \"Reply\",\n INBOX_NOTIFICATION_MORE: \"More\",\n INBOX_NOTIFICATION_MARK_AS_READ: \"Mark as read\",\n INBOX_NOTIFICATION_DELETE: \"Delete notification\",\n INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (\n list: ReactNode,\n room: ReactNode\n ) => (\n <>\n {list} commented\n {room ? <> in {room}</> : <> in a thread</>}\n </>\n ),\n INBOX_NOTIFICATION_THREAD_MENTION: (user: ReactNode, room: ReactNode) => (\n <>\n {user} mentioned you{room ? <> in {room}</> : null}\n </>\n ),\n INBOX_NOTIFICATION_TEXT_MENTION: (user: ReactNode, room: ReactNode) => (\n <>\n {user} mentioned you{room ? <> in {room}</> : null}\n </>\n ),\n HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list: ReactNode) => (\n <>Edits from {list}</>\n ),\n HISTORY_VERSION_PREVIEW_RESTORE: \"Restore\",\n HISTORY_VERSION_PREVIEW_EMPTY: \"No content.\",\n HISTORY_VERSION_PREVIEW_ERROR: () =>\n \"There was an error while getting this version.\",\n};\n\nexport const OverridesContext = createContext<Overrides | undefined>(undefined);\n\nexport function useOverrides(overrides?: Partial<Overrides>): Overrides {\n const contextOverrides = useContext(OverridesContext);\n\n return useMemo(\n () => ({\n ...defaultOverrides,\n ...contextOverrides,\n ...overrides,\n }),\n [contextOverrides, overrides]\n );\n}\n\nexport function OverridesProvider({\n children,\n overrides: providerOverrides,\n}: OverridesProviderProps) {\n const contextOverrides = useContext(OverridesContext);\n const overrides = useMemo(\n () => ({\n ...defaultOverrides,\n ...contextOverrides,\n ...providerOverrides,\n }),\n [contextOverrides, providerOverrides]\n );\n\n return (\n <OverridesContext.Provider value={overrides}>\n {children}\n </OverridesContext.Provider>\n );\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAyGO;AAAoC;AACjC;AACH;AACM;AACG;AACgB;AACuC;AAExB;AACZ;AACb;AAElB;AAEiD;AAC3B;AACC;AACF;AACA;AACK;AACN;AACP;AAEb;AAAgB;AAEZ;AAAO;AAEP;AAAO;AAEP;AAAO;AAEP;AAAO;AAEP;AAA4C;AAChD;AACF;AACgB;AACC;AACH;AACA;AACqB;AACL;AACF;AACZ;AACW;AACL;AAGG;AAAM;AAC7B;AAGwD;AAC1C;AACE;AACI;AACY;AACL;AACP;AACG;AACQ;AACN;AAQzB;AAKA;AAKA;AAGmB;AAEY;AACF;AAGjC;AAEa;AAEN;AACL;AAEA;AAAO;AACE;AACF;AACA;AACA;AACL;AAC4B;AAEhC;AAEO;AAA2B;AAChC;AAEF;AACE;AACA;AAAkB;AACT;AACF;AACA;AACA;AACL;AACoC;AAGtC;AACG;AAAiC;AAItC;;;;;"}
|
|
1
|
+
{"version":3,"file":"overrides.js","sources":["../src/overrides.tsx"],"sourcesContent":["\"use client\";\n\nimport { assertNever } from \"@liveblocks/core\";\nimport type { PropsWithChildren, ReactNode } from \"react\";\nimport { createContext, useContext, useMemo } from \"react\";\n\nimport { Emoji } from \"./components/internal/Emoji\";\nimport type { ComposerBodyMark, Direction } from \"./types\";\nimport { pluralize } from \"./utils/pluralize\";\n\nexport interface LocalizationOverrides {\n locale: string;\n dir: Direction;\n}\n\nexport interface GlobalOverrides {\n USER_SELF: string;\n USER_UNKNOWN: string;\n LIST_REMAINING: (count: number) => string;\n LIST_REMAINING_USERS: (count: number) => string;\n LIST_REMAINING_COMMENTS: (count: number) => string;\n EMOJI_PICKER_SEARCH_PLACEHOLDER: string;\n EMOJI_PICKER_EMPTY: ReactNode;\n EMOJI_PICKER_ERROR: (error: Error) => ReactNode;\n ATTACHMENT_TOO_LARGE: (maxSize?: string) => string;\n ATTACHMENT_ERROR: (error: Error) => string;\n}\n\nexport interface CommentOverrides {\n COMMENT_EDITED: ReactNode;\n COMMENT_DELETED: ReactNode;\n COMMENT_MORE: string;\n COMMENT_EDIT: string;\n COMMENT_EDIT_COMPOSER_PLACEHOLDER: string;\n COMMENT_EDIT_COMPOSER_CANCEL: string;\n COMMENT_EDIT_COMPOSER_SAVE: string;\n COMMENT_DELETE: string;\n COMMENT_DELETE_ATTACHMENT: string;\n COMMENT_ADD_REACTION: string;\n COMMENT_REACTION_LIST: (\n list: ReactNode,\n emoji: string,\n count: number\n ) => ReactNode;\n COMMENT_REACTION_DESCRIPTION: (emoji: string, count: number) => string;\n}\n\nexport interface ComposerOverrides {\n COMPOSER_INSERT_MENTION: string;\n COMPOSER_INSERT_EMOJI: string;\n COMPOSER_ATTACH_FILES: string;\n COMPOSER_REMOVE_ATTACHMENT: string;\n COMPOSER_PLACEHOLDER: string;\n COMPOSER_SEND: string;\n COMPOSER_TOGGLE_MARK: (mark: ComposerBodyMark) => string;\n}\n\nexport interface ThreadOverrides {\n THREAD_RESOLVE: string;\n THREAD_UNRESOLVE: string;\n THREAD_NEW_INDICATOR: string;\n THREAD_NEW_INDICATOR_DESCRIPTION: string;\n THREAD_COMPOSER_PLACEHOLDER: string;\n THREAD_COMPOSER_SEND: string;\n}\n\nexport interface InboxNotificationOverrides {\n INBOX_NOTIFICATION_MORE: string;\n INBOX_NOTIFICATION_MARK_AS_READ: string;\n INBOX_NOTIFICATION_DELETE: string;\n INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (\n list: ReactNode,\n room: ReactNode | undefined,\n count: number\n ) => ReactNode;\n INBOX_NOTIFICATION_THREAD_MENTION: (\n user: ReactNode,\n room: ReactNode | undefined\n ) => ReactNode;\n INBOX_NOTIFICATION_TEXT_MENTION: (\n user: ReactNode,\n room: ReactNode | undefined\n ) => ReactNode;\n}\n\nexport interface HistoryVersionPreviewOverrides {\n HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list: ReactNode) => ReactNode;\n HISTORY_VERSION_PREVIEW_RESTORE: string;\n HISTORY_VERSION_PREVIEW_EMPTY: ReactNode;\n HISTORY_VERSION_PREVIEW_ERROR: (error: Error) => ReactNode;\n}\n\nexport type Overrides = LocalizationOverrides &\n GlobalOverrides &\n ComposerOverrides &\n CommentOverrides &\n ThreadOverrides &\n InboxNotificationOverrides &\n HistoryVersionPreviewOverrides;\n\ntype OverridesProviderProps = PropsWithChildren<{\n overrides?: Partial<Overrides>;\n}>;\n\nexport const defaultOverrides: Overrides = {\n locale: \"en\",\n dir: \"ltr\",\n USER_SELF: \"you\",\n USER_UNKNOWN: \"Anonymous\",\n LIST_REMAINING: (count) => `${count} more`,\n LIST_REMAINING_USERS: (count) => `${count} ${pluralize(count, \"other\")}`,\n LIST_REMAINING_COMMENTS: (count) =>\n `${count} more ${pluralize(count, \"comment\")}`,\n EMOJI_PICKER_SEARCH_PLACEHOLDER: \"Search…\",\n EMOJI_PICKER_EMPTY: \"No emoji found.\",\n EMOJI_PICKER_ERROR: () =>\n \"There was an error while getting the list of emoji.\",\n ATTACHMENT_TOO_LARGE: (maxSize) =>\n maxSize ? `The file is larger than ${maxSize}` : \"The file is too large\",\n ATTACHMENT_ERROR: () => \"The file couldn’t be uploaded.\",\n COMPOSER_INSERT_MENTION: \"Mention someone\",\n COMPOSER_INSERT_EMOJI: \"Add emoji\",\n COMPOSER_ATTACH_FILES: \"Attach files\",\n COMPOSER_REMOVE_ATTACHMENT: \"Remove attachment\",\n COMPOSER_PLACEHOLDER: \"Write a comment…\",\n COMPOSER_SEND: \"Send\",\n COMPOSER_TOGGLE_MARK: (format) => {\n switch (format) {\n case \"bold\":\n return \"Bold\";\n case \"italic\":\n return \"Italic\";\n case \"strikethrough\":\n return \"Strikethrough\";\n case \"code\":\n return \"Inline code\";\n default:\n return assertNever(format, \"Unexpected mark\");\n }\n },\n COMMENT_EDITED: \"(edited)\",\n COMMENT_DELETED: \"This comment has been deleted.\",\n COMMENT_MORE: \"More\",\n COMMENT_EDIT: \"Edit comment\",\n COMMENT_EDIT_COMPOSER_PLACEHOLDER: \"Edit comment…\",\n COMMENT_EDIT_COMPOSER_CANCEL: \"Cancel\",\n COMMENT_EDIT_COMPOSER_SAVE: \"Save\",\n COMMENT_DELETE: \"Delete comment\",\n COMMENT_DELETE_ATTACHMENT: \"Delete attachment\",\n COMMENT_ADD_REACTION: \"Add reaction\",\n COMMENT_REACTION_LIST: (list, emoji) => (\n <>\n {list} reacted with <Emoji emoji={emoji} />\n </>\n ),\n COMMENT_REACTION_DESCRIPTION: (emoji, count) =>\n `${count} ${pluralize(count, \"reaction\")}, react with ${emoji}`,\n THREAD_RESOLVE: \"Resolve thread\",\n THREAD_UNRESOLVE: \"Re-open thread\",\n THREAD_NEW_INDICATOR: \"New\",\n THREAD_NEW_INDICATOR_DESCRIPTION: \"New comments\",\n THREAD_COMPOSER_PLACEHOLDER: \"Reply to thread…\",\n THREAD_COMPOSER_SEND: \"Reply\",\n INBOX_NOTIFICATION_MORE: \"More\",\n INBOX_NOTIFICATION_MARK_AS_READ: \"Mark as read\",\n INBOX_NOTIFICATION_DELETE: \"Delete notification\",\n INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (\n list: ReactNode,\n room: ReactNode\n ) => (\n <>\n {list} commented\n {room ? <> in {room}</> : <> in a thread</>}\n </>\n ),\n INBOX_NOTIFICATION_THREAD_MENTION: (user: ReactNode, room: ReactNode) => (\n <>\n {user} mentioned you{room ? <> in {room}</> : null}\n </>\n ),\n INBOX_NOTIFICATION_TEXT_MENTION: (user: ReactNode, room: ReactNode) => (\n <>\n {user} mentioned you{room ? <> in {room}</> : null}\n </>\n ),\n HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list: ReactNode) => (\n <>Edits from {list}</>\n ),\n HISTORY_VERSION_PREVIEW_RESTORE: \"Restore\",\n HISTORY_VERSION_PREVIEW_EMPTY: \"No content.\",\n HISTORY_VERSION_PREVIEW_ERROR: () =>\n \"There was an error while getting this version.\",\n};\n\nexport const OverridesContext = createContext<Overrides | undefined>(undefined);\n\nexport function useOverrides(overrides?: Partial<Overrides>): Overrides {\n const contextOverrides = useContext(OverridesContext);\n\n return useMemo(\n () => ({\n ...defaultOverrides,\n ...contextOverrides,\n ...overrides,\n }),\n [contextOverrides, overrides]\n );\n}\n\nexport function OverridesProvider({\n children,\n overrides: providerOverrides,\n}: OverridesProviderProps) {\n const contextOverrides = useContext(OverridesContext);\n const overrides = useMemo(\n () => ({\n ...defaultOverrides,\n ...contextOverrides,\n ...providerOverrides,\n }),\n [contextOverrides, providerOverrides]\n );\n\n return (\n <OverridesContext.Provider value={overrides}>\n {children}\n </OverridesContext.Provider>\n );\n}\n"],"names":["pluralize","assertNever","jsxs","Fragment","jsx","Emoji","createContext","useContext","useMemo"],"mappings":"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"}
|
package/dist/overrides.mjs
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { assertNever } from '@liveblocks/core';
|
|
3
|
-
import * as React from 'react';
|
|
4
3
|
import { createContext, useContext, useMemo } from 'react';
|
|
5
4
|
import { Emoji } from './components/internal/Emoji.mjs';
|
|
6
5
|
import { pluralize } from './utils/pluralize.mjs';
|
|
@@ -48,9 +47,15 @@ const defaultOverrides = {
|
|
|
48
47
|
COMMENT_DELETE: "Delete comment",
|
|
49
48
|
COMMENT_DELETE_ATTACHMENT: "Delete attachment",
|
|
50
49
|
COMMENT_ADD_REACTION: "Add reaction",
|
|
51
|
-
COMMENT_REACTION_LIST: (list, emoji) => /* @__PURE__ */
|
|
52
|
-
|
|
53
|
-
|
|
50
|
+
COMMENT_REACTION_LIST: (list, emoji) => /* @__PURE__ */ jsxs(Fragment, {
|
|
51
|
+
children: [
|
|
52
|
+
list,
|
|
53
|
+
" reacted with ",
|
|
54
|
+
/* @__PURE__ */ jsx(Emoji, {
|
|
55
|
+
emoji
|
|
56
|
+
})
|
|
57
|
+
]
|
|
58
|
+
}),
|
|
54
59
|
COMMENT_REACTION_DESCRIPTION: (emoji, count) => `${count} ${pluralize(count, "reaction")}, react with ${emoji}`,
|
|
55
60
|
THREAD_RESOLVE: "Resolve thread",
|
|
56
61
|
THREAD_UNRESOLVE: "Re-open thread",
|
|
@@ -61,10 +66,50 @@ const defaultOverrides = {
|
|
|
61
66
|
INBOX_NOTIFICATION_MORE: "More",
|
|
62
67
|
INBOX_NOTIFICATION_MARK_AS_READ: "Mark as read",
|
|
63
68
|
INBOX_NOTIFICATION_DELETE: "Delete notification",
|
|
64
|
-
INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (list, room) => /* @__PURE__ */
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
69
|
+
INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (list, room) => /* @__PURE__ */ jsxs(Fragment, {
|
|
70
|
+
children: [
|
|
71
|
+
list,
|
|
72
|
+
" commented",
|
|
73
|
+
room ? /* @__PURE__ */ jsxs(Fragment, {
|
|
74
|
+
children: [
|
|
75
|
+
" in ",
|
|
76
|
+
room
|
|
77
|
+
]
|
|
78
|
+
}) : /* @__PURE__ */ jsx(Fragment, {
|
|
79
|
+
children: " in a thread"
|
|
80
|
+
})
|
|
81
|
+
]
|
|
82
|
+
}),
|
|
83
|
+
INBOX_NOTIFICATION_THREAD_MENTION: (user, room) => /* @__PURE__ */ jsxs(Fragment, {
|
|
84
|
+
children: [
|
|
85
|
+
user,
|
|
86
|
+
" mentioned you",
|
|
87
|
+
room ? /* @__PURE__ */ jsxs(Fragment, {
|
|
88
|
+
children: [
|
|
89
|
+
" in ",
|
|
90
|
+
room
|
|
91
|
+
]
|
|
92
|
+
}) : null
|
|
93
|
+
]
|
|
94
|
+
}),
|
|
95
|
+
INBOX_NOTIFICATION_TEXT_MENTION: (user, room) => /* @__PURE__ */ jsxs(Fragment, {
|
|
96
|
+
children: [
|
|
97
|
+
user,
|
|
98
|
+
" mentioned you",
|
|
99
|
+
room ? /* @__PURE__ */ jsxs(Fragment, {
|
|
100
|
+
children: [
|
|
101
|
+
" in ",
|
|
102
|
+
room
|
|
103
|
+
]
|
|
104
|
+
}) : null
|
|
105
|
+
]
|
|
106
|
+
}),
|
|
107
|
+
HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list) => /* @__PURE__ */ jsxs(Fragment, {
|
|
108
|
+
children: [
|
|
109
|
+
"Edits from ",
|
|
110
|
+
list
|
|
111
|
+
]
|
|
112
|
+
}),
|
|
68
113
|
HISTORY_VERSION_PREVIEW_RESTORE: "Restore",
|
|
69
114
|
HISTORY_VERSION_PREVIEW_EMPTY: "No content.",
|
|
70
115
|
HISTORY_VERSION_PREVIEW_ERROR: () => "There was an error while getting this version."
|
|
@@ -94,9 +139,10 @@ function OverridesProvider({
|
|
|
94
139
|
}),
|
|
95
140
|
[contextOverrides, providerOverrides]
|
|
96
141
|
);
|
|
97
|
-
return /* @__PURE__ */
|
|
98
|
-
value: overrides
|
|
99
|
-
|
|
142
|
+
return /* @__PURE__ */ jsx(OverridesContext.Provider, {
|
|
143
|
+
value: overrides,
|
|
144
|
+
children
|
|
145
|
+
});
|
|
100
146
|
}
|
|
101
147
|
|
|
102
148
|
export { OverridesContext, OverridesProvider, defaultOverrides, useOverrides };
|
package/dist/overrides.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overrides.mjs","sources":["../src/overrides.tsx"],"sourcesContent":["\"use client\";\n\nimport { assertNever } from \"@liveblocks/core\";\nimport type { PropsWithChildren, ReactNode } from \"react\";\nimport { createContext, useContext, useMemo } from \"react\";\nimport * as React from \"react\";\n\nimport { Emoji } from \"./components/internal/Emoji\";\nimport type { ComposerBodyMark, Direction } from \"./types\";\nimport { pluralize } from \"./utils/pluralize\";\n\nexport interface LocalizationOverrides {\n locale: string;\n dir: Direction;\n}\n\nexport interface GlobalOverrides {\n USER_SELF: string;\n USER_UNKNOWN: string;\n LIST_REMAINING: (count: number) => string;\n LIST_REMAINING_USERS: (count: number) => string;\n LIST_REMAINING_COMMENTS: (count: number) => string;\n EMOJI_PICKER_SEARCH_PLACEHOLDER: string;\n EMOJI_PICKER_EMPTY: ReactNode;\n EMOJI_PICKER_ERROR: (error: Error) => ReactNode;\n ATTACHMENT_TOO_LARGE: (maxSize?: string) => string;\n ATTACHMENT_ERROR: (error: Error) => string;\n}\n\nexport interface CommentOverrides {\n COMMENT_EDITED: ReactNode;\n COMMENT_DELETED: ReactNode;\n COMMENT_MORE: string;\n COMMENT_EDIT: string;\n COMMENT_EDIT_COMPOSER_PLACEHOLDER: string;\n COMMENT_EDIT_COMPOSER_CANCEL: string;\n COMMENT_EDIT_COMPOSER_SAVE: string;\n COMMENT_DELETE: string;\n COMMENT_DELETE_ATTACHMENT: string;\n COMMENT_ADD_REACTION: string;\n COMMENT_REACTION_LIST: (\n list: ReactNode,\n emoji: string,\n count: number\n ) => ReactNode;\n COMMENT_REACTION_DESCRIPTION: (emoji: string, count: number) => string;\n}\n\nexport interface ComposerOverrides {\n COMPOSER_INSERT_MENTION: string;\n COMPOSER_INSERT_EMOJI: string;\n COMPOSER_ATTACH_FILES: string;\n COMPOSER_REMOVE_ATTACHMENT: string;\n COMPOSER_PLACEHOLDER: string;\n COMPOSER_SEND: string;\n COMPOSER_TOGGLE_MARK: (mark: ComposerBodyMark) => string;\n}\n\nexport interface ThreadOverrides {\n THREAD_RESOLVE: string;\n THREAD_UNRESOLVE: string;\n THREAD_NEW_INDICATOR: string;\n THREAD_NEW_INDICATOR_DESCRIPTION: string;\n THREAD_COMPOSER_PLACEHOLDER: string;\n THREAD_COMPOSER_SEND: string;\n}\n\nexport interface InboxNotificationOverrides {\n INBOX_NOTIFICATION_MORE: string;\n INBOX_NOTIFICATION_MARK_AS_READ: string;\n INBOX_NOTIFICATION_DELETE: string;\n INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (\n list: ReactNode,\n room: ReactNode | undefined,\n count: number\n ) => ReactNode;\n INBOX_NOTIFICATION_THREAD_MENTION: (\n user: ReactNode,\n room: ReactNode | undefined\n ) => ReactNode;\n INBOX_NOTIFICATION_TEXT_MENTION: (\n user: ReactNode,\n room: ReactNode | undefined\n ) => ReactNode;\n}\n\nexport interface HistoryVersionPreviewOverrides {\n HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list: ReactNode) => ReactNode;\n HISTORY_VERSION_PREVIEW_RESTORE: string;\n HISTORY_VERSION_PREVIEW_EMPTY: ReactNode;\n HISTORY_VERSION_PREVIEW_ERROR: (error: Error) => ReactNode;\n}\n\nexport type Overrides = LocalizationOverrides &\n GlobalOverrides &\n ComposerOverrides &\n CommentOverrides &\n ThreadOverrides &\n InboxNotificationOverrides &\n HistoryVersionPreviewOverrides;\n\ntype OverridesProviderProps = PropsWithChildren<{\n overrides?: Partial<Overrides>;\n}>;\n\nexport const defaultOverrides: Overrides = {\n locale: \"en\",\n dir: \"ltr\",\n USER_SELF: \"you\",\n USER_UNKNOWN: \"Anonymous\",\n LIST_REMAINING: (count) => `${count} more`,\n LIST_REMAINING_USERS: (count) => `${count} ${pluralize(count, \"other\")}`,\n LIST_REMAINING_COMMENTS: (count) =>\n `${count} more ${pluralize(count, \"comment\")}`,\n EMOJI_PICKER_SEARCH_PLACEHOLDER: \"Search…\",\n EMOJI_PICKER_EMPTY: \"No emoji found.\",\n EMOJI_PICKER_ERROR: () =>\n \"There was an error while getting the list of emoji.\",\n ATTACHMENT_TOO_LARGE: (maxSize) =>\n maxSize ? `The file is larger than ${maxSize}` : \"The file is too large\",\n ATTACHMENT_ERROR: () => \"The file couldn’t be uploaded.\",\n COMPOSER_INSERT_MENTION: \"Mention someone\",\n COMPOSER_INSERT_EMOJI: \"Add emoji\",\n COMPOSER_ATTACH_FILES: \"Attach files\",\n COMPOSER_REMOVE_ATTACHMENT: \"Remove attachment\",\n COMPOSER_PLACEHOLDER: \"Write a comment…\",\n COMPOSER_SEND: \"Send\",\n COMPOSER_TOGGLE_MARK: (format) => {\n switch (format) {\n case \"bold\":\n return \"Bold\";\n case \"italic\":\n return \"Italic\";\n case \"strikethrough\":\n return \"Strikethrough\";\n case \"code\":\n return \"Inline code\";\n default:\n return assertNever(format, \"Unexpected mark\");\n }\n },\n COMMENT_EDITED: \"(edited)\",\n COMMENT_DELETED: \"This comment has been deleted.\",\n COMMENT_MORE: \"More\",\n COMMENT_EDIT: \"Edit comment\",\n COMMENT_EDIT_COMPOSER_PLACEHOLDER: \"Edit comment…\",\n COMMENT_EDIT_COMPOSER_CANCEL: \"Cancel\",\n COMMENT_EDIT_COMPOSER_SAVE: \"Save\",\n COMMENT_DELETE: \"Delete comment\",\n COMMENT_DELETE_ATTACHMENT: \"Delete attachment\",\n COMMENT_ADD_REACTION: \"Add reaction\",\n COMMENT_REACTION_LIST: (list, emoji) => (\n <>\n {list} reacted with <Emoji emoji={emoji} />\n </>\n ),\n COMMENT_REACTION_DESCRIPTION: (emoji, count) =>\n `${count} ${pluralize(count, \"reaction\")}, react with ${emoji}`,\n THREAD_RESOLVE: \"Resolve thread\",\n THREAD_UNRESOLVE: \"Re-open thread\",\n THREAD_NEW_INDICATOR: \"New\",\n THREAD_NEW_INDICATOR_DESCRIPTION: \"New comments\",\n THREAD_COMPOSER_PLACEHOLDER: \"Reply to thread…\",\n THREAD_COMPOSER_SEND: \"Reply\",\n INBOX_NOTIFICATION_MORE: \"More\",\n INBOX_NOTIFICATION_MARK_AS_READ: \"Mark as read\",\n INBOX_NOTIFICATION_DELETE: \"Delete notification\",\n INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (\n list: ReactNode,\n room: ReactNode\n ) => (\n <>\n {list} commented\n {room ? <> in {room}</> : <> in a thread</>}\n </>\n ),\n INBOX_NOTIFICATION_THREAD_MENTION: (user: ReactNode, room: ReactNode) => (\n <>\n {user} mentioned you{room ? <> in {room}</> : null}\n </>\n ),\n INBOX_NOTIFICATION_TEXT_MENTION: (user: ReactNode, room: ReactNode) => (\n <>\n {user} mentioned you{room ? <> in {room}</> : null}\n </>\n ),\n HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list: ReactNode) => (\n <>Edits from {list}</>\n ),\n HISTORY_VERSION_PREVIEW_RESTORE: \"Restore\",\n HISTORY_VERSION_PREVIEW_EMPTY: \"No content.\",\n HISTORY_VERSION_PREVIEW_ERROR: () =>\n \"There was an error while getting this version.\",\n};\n\nexport const OverridesContext = createContext<Overrides | undefined>(undefined);\n\nexport function useOverrides(overrides?: Partial<Overrides>): Overrides {\n const contextOverrides = useContext(OverridesContext);\n\n return useMemo(\n () => ({\n ...defaultOverrides,\n ...contextOverrides,\n ...overrides,\n }),\n [contextOverrides, overrides]\n );\n}\n\nexport function OverridesProvider({\n children,\n overrides: providerOverrides,\n}: OverridesProviderProps) {\n const contextOverrides = useContext(OverridesContext);\n const overrides = useMemo(\n () => ({\n ...defaultOverrides,\n ...contextOverrides,\n ...providerOverrides,\n }),\n [contextOverrides, providerOverrides]\n );\n\n return (\n <OverridesContext.Provider value={overrides}>\n {children}\n </OverridesContext.Provider>\n );\n}\n"],"names":[],"mappings":";;;;;;;AAyGO;AAAoC;AACjC;AACH;AACM;AACG;AACgB;AACuC;AAExB;AACZ;AACb;AAElB;AAEiD;AAC3B;AACC;AACF;AACA;AACK;AACN;AACP;AAEb;AAAgB;AAEZ;AAAO;AAEP;AAAO;AAEP;AAAO;AAEP;AAAO;AAEP;AAA4C;AAChD;AACF;AACgB;AACC;AACH;AACA;AACqB;AACL;AACF;AACZ;AACW;AACL;AAGG;AAAM;AAC7B;AAGwD;AAC1C;AACE;AACI;AACY;AACL;AACP;AACG;AACQ;AACN;AAQzB;AAKA;AAKA;AAGmB;AAEY;AACF;AAGjC;AAEa;AAEN;AACL;AAEA;AAAO;AACE;AACF;AACA;AACA;AACL;AAC4B;AAEhC;AAEO;AAA2B;AAChC;AAEF;AACE;AACA;AAAkB;AACT;AACF;AACA;AACA;AACL;AACoC;AAGtC;AACG;AAAiC;AAItC;;"}
|
|
1
|
+
{"version":3,"file":"overrides.mjs","sources":["../src/overrides.tsx"],"sourcesContent":["\"use client\";\n\nimport { assertNever } from \"@liveblocks/core\";\nimport type { PropsWithChildren, ReactNode } from \"react\";\nimport { createContext, useContext, useMemo } from \"react\";\n\nimport { Emoji } from \"./components/internal/Emoji\";\nimport type { ComposerBodyMark, Direction } from \"./types\";\nimport { pluralize } from \"./utils/pluralize\";\n\nexport interface LocalizationOverrides {\n locale: string;\n dir: Direction;\n}\n\nexport interface GlobalOverrides {\n USER_SELF: string;\n USER_UNKNOWN: string;\n LIST_REMAINING: (count: number) => string;\n LIST_REMAINING_USERS: (count: number) => string;\n LIST_REMAINING_COMMENTS: (count: number) => string;\n EMOJI_PICKER_SEARCH_PLACEHOLDER: string;\n EMOJI_PICKER_EMPTY: ReactNode;\n EMOJI_PICKER_ERROR: (error: Error) => ReactNode;\n ATTACHMENT_TOO_LARGE: (maxSize?: string) => string;\n ATTACHMENT_ERROR: (error: Error) => string;\n}\n\nexport interface CommentOverrides {\n COMMENT_EDITED: ReactNode;\n COMMENT_DELETED: ReactNode;\n COMMENT_MORE: string;\n COMMENT_EDIT: string;\n COMMENT_EDIT_COMPOSER_PLACEHOLDER: string;\n COMMENT_EDIT_COMPOSER_CANCEL: string;\n COMMENT_EDIT_COMPOSER_SAVE: string;\n COMMENT_DELETE: string;\n COMMENT_DELETE_ATTACHMENT: string;\n COMMENT_ADD_REACTION: string;\n COMMENT_REACTION_LIST: (\n list: ReactNode,\n emoji: string,\n count: number\n ) => ReactNode;\n COMMENT_REACTION_DESCRIPTION: (emoji: string, count: number) => string;\n}\n\nexport interface ComposerOverrides {\n COMPOSER_INSERT_MENTION: string;\n COMPOSER_INSERT_EMOJI: string;\n COMPOSER_ATTACH_FILES: string;\n COMPOSER_REMOVE_ATTACHMENT: string;\n COMPOSER_PLACEHOLDER: string;\n COMPOSER_SEND: string;\n COMPOSER_TOGGLE_MARK: (mark: ComposerBodyMark) => string;\n}\n\nexport interface ThreadOverrides {\n THREAD_RESOLVE: string;\n THREAD_UNRESOLVE: string;\n THREAD_NEW_INDICATOR: string;\n THREAD_NEW_INDICATOR_DESCRIPTION: string;\n THREAD_COMPOSER_PLACEHOLDER: string;\n THREAD_COMPOSER_SEND: string;\n}\n\nexport interface InboxNotificationOverrides {\n INBOX_NOTIFICATION_MORE: string;\n INBOX_NOTIFICATION_MARK_AS_READ: string;\n INBOX_NOTIFICATION_DELETE: string;\n INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (\n list: ReactNode,\n room: ReactNode | undefined,\n count: number\n ) => ReactNode;\n INBOX_NOTIFICATION_THREAD_MENTION: (\n user: ReactNode,\n room: ReactNode | undefined\n ) => ReactNode;\n INBOX_NOTIFICATION_TEXT_MENTION: (\n user: ReactNode,\n room: ReactNode | undefined\n ) => ReactNode;\n}\n\nexport interface HistoryVersionPreviewOverrides {\n HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list: ReactNode) => ReactNode;\n HISTORY_VERSION_PREVIEW_RESTORE: string;\n HISTORY_VERSION_PREVIEW_EMPTY: ReactNode;\n HISTORY_VERSION_PREVIEW_ERROR: (error: Error) => ReactNode;\n}\n\nexport type Overrides = LocalizationOverrides &\n GlobalOverrides &\n ComposerOverrides &\n CommentOverrides &\n ThreadOverrides &\n InboxNotificationOverrides &\n HistoryVersionPreviewOverrides;\n\ntype OverridesProviderProps = PropsWithChildren<{\n overrides?: Partial<Overrides>;\n}>;\n\nexport const defaultOverrides: Overrides = {\n locale: \"en\",\n dir: \"ltr\",\n USER_SELF: \"you\",\n USER_UNKNOWN: \"Anonymous\",\n LIST_REMAINING: (count) => `${count} more`,\n LIST_REMAINING_USERS: (count) => `${count} ${pluralize(count, \"other\")}`,\n LIST_REMAINING_COMMENTS: (count) =>\n `${count} more ${pluralize(count, \"comment\")}`,\n EMOJI_PICKER_SEARCH_PLACEHOLDER: \"Search…\",\n EMOJI_PICKER_EMPTY: \"No emoji found.\",\n EMOJI_PICKER_ERROR: () =>\n \"There was an error while getting the list of emoji.\",\n ATTACHMENT_TOO_LARGE: (maxSize) =>\n maxSize ? `The file is larger than ${maxSize}` : \"The file is too large\",\n ATTACHMENT_ERROR: () => \"The file couldn’t be uploaded.\",\n COMPOSER_INSERT_MENTION: \"Mention someone\",\n COMPOSER_INSERT_EMOJI: \"Add emoji\",\n COMPOSER_ATTACH_FILES: \"Attach files\",\n COMPOSER_REMOVE_ATTACHMENT: \"Remove attachment\",\n COMPOSER_PLACEHOLDER: \"Write a comment…\",\n COMPOSER_SEND: \"Send\",\n COMPOSER_TOGGLE_MARK: (format) => {\n switch (format) {\n case \"bold\":\n return \"Bold\";\n case \"italic\":\n return \"Italic\";\n case \"strikethrough\":\n return \"Strikethrough\";\n case \"code\":\n return \"Inline code\";\n default:\n return assertNever(format, \"Unexpected mark\");\n }\n },\n COMMENT_EDITED: \"(edited)\",\n COMMENT_DELETED: \"This comment has been deleted.\",\n COMMENT_MORE: \"More\",\n COMMENT_EDIT: \"Edit comment\",\n COMMENT_EDIT_COMPOSER_PLACEHOLDER: \"Edit comment…\",\n COMMENT_EDIT_COMPOSER_CANCEL: \"Cancel\",\n COMMENT_EDIT_COMPOSER_SAVE: \"Save\",\n COMMENT_DELETE: \"Delete comment\",\n COMMENT_DELETE_ATTACHMENT: \"Delete attachment\",\n COMMENT_ADD_REACTION: \"Add reaction\",\n COMMENT_REACTION_LIST: (list, emoji) => (\n <>\n {list} reacted with <Emoji emoji={emoji} />\n </>\n ),\n COMMENT_REACTION_DESCRIPTION: (emoji, count) =>\n `${count} ${pluralize(count, \"reaction\")}, react with ${emoji}`,\n THREAD_RESOLVE: \"Resolve thread\",\n THREAD_UNRESOLVE: \"Re-open thread\",\n THREAD_NEW_INDICATOR: \"New\",\n THREAD_NEW_INDICATOR_DESCRIPTION: \"New comments\",\n THREAD_COMPOSER_PLACEHOLDER: \"Reply to thread…\",\n THREAD_COMPOSER_SEND: \"Reply\",\n INBOX_NOTIFICATION_MORE: \"More\",\n INBOX_NOTIFICATION_MARK_AS_READ: \"Mark as read\",\n INBOX_NOTIFICATION_DELETE: \"Delete notification\",\n INBOX_NOTIFICATION_THREAD_COMMENTS_LIST: (\n list: ReactNode,\n room: ReactNode\n ) => (\n <>\n {list} commented\n {room ? <> in {room}</> : <> in a thread</>}\n </>\n ),\n INBOX_NOTIFICATION_THREAD_MENTION: (user: ReactNode, room: ReactNode) => (\n <>\n {user} mentioned you{room ? <> in {room}</> : null}\n </>\n ),\n INBOX_NOTIFICATION_TEXT_MENTION: (user: ReactNode, room: ReactNode) => (\n <>\n {user} mentioned you{room ? <> in {room}</> : null}\n </>\n ),\n HISTORY_VERSION_PREVIEW_AUTHORS_LIST: (list: ReactNode) => (\n <>Edits from {list}</>\n ),\n HISTORY_VERSION_PREVIEW_RESTORE: \"Restore\",\n HISTORY_VERSION_PREVIEW_EMPTY: \"No content.\",\n HISTORY_VERSION_PREVIEW_ERROR: () =>\n \"There was an error while getting this version.\",\n};\n\nexport const OverridesContext = createContext<Overrides | undefined>(undefined);\n\nexport function useOverrides(overrides?: Partial<Overrides>): Overrides {\n const contextOverrides = useContext(OverridesContext);\n\n return useMemo(\n () => ({\n ...defaultOverrides,\n ...contextOverrides,\n ...overrides,\n }),\n [contextOverrides, overrides]\n );\n}\n\nexport function OverridesProvider({\n children,\n overrides: providerOverrides,\n}: OverridesProviderProps) {\n const contextOverrides = useContext(OverridesContext);\n const overrides = useMemo(\n () => ({\n ...defaultOverrides,\n ...contextOverrides,\n ...providerOverrides,\n }),\n [contextOverrides, providerOverrides]\n );\n\n return (\n <OverridesContext.Provider value={overrides}>\n {children}\n </OverridesContext.Provider>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,106 +1,115 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
3
4
|
var reactSlot = require('@radix-ui/react-slot');
|
|
4
|
-
var
|
|
5
|
+
var react = require('react');
|
|
5
6
|
var mentions = require('../../slate/plugins/mentions.js');
|
|
6
7
|
var utils = require('./utils.js');
|
|
7
8
|
|
|
8
9
|
const COMMENT_MENTION_NAME = "CommentMention";
|
|
9
10
|
const COMMENT_BODY_NAME = "CommentBody";
|
|
10
11
|
const COMMENT_LINK_NAME = "CommentLink";
|
|
11
|
-
const CommentMention =
|
|
12
|
+
const CommentMention = react.forwardRef(
|
|
12
13
|
({ children, asChild, ...props }, forwardedRef) => {
|
|
13
14
|
const Component = asChild ? reactSlot.Slot : "span";
|
|
14
|
-
return /* @__PURE__ */
|
|
15
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, {
|
|
15
16
|
...props,
|
|
16
|
-
ref: forwardedRef
|
|
17
|
-
|
|
17
|
+
ref: forwardedRef,
|
|
18
|
+
children
|
|
19
|
+
});
|
|
18
20
|
}
|
|
19
21
|
);
|
|
20
|
-
const CommentLink =
|
|
22
|
+
const CommentLink = react.forwardRef(
|
|
21
23
|
({ children, asChild, ...props }, forwardedRef) => {
|
|
22
24
|
const Component = asChild ? reactSlot.Slot : "a";
|
|
23
|
-
return /* @__PURE__ */
|
|
25
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, {
|
|
24
26
|
target: "_blank",
|
|
25
27
|
rel: "noopener noreferrer nofollow",
|
|
26
28
|
...props,
|
|
27
|
-
ref: forwardedRef
|
|
28
|
-
|
|
29
|
+
ref: forwardedRef,
|
|
30
|
+
children
|
|
31
|
+
});
|
|
29
32
|
}
|
|
30
33
|
);
|
|
31
34
|
const defaultBodyComponents = {
|
|
32
35
|
Mention: ({ userId }) => {
|
|
33
|
-
return /* @__PURE__ */
|
|
36
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(CommentMention, {
|
|
37
|
+
children: [
|
|
38
|
+
mentions.MENTION_CHARACTER,
|
|
39
|
+
userId
|
|
40
|
+
]
|
|
41
|
+
});
|
|
34
42
|
},
|
|
35
43
|
Link: ({ href, children }) => {
|
|
36
|
-
return /* @__PURE__ */
|
|
37
|
-
href
|
|
38
|
-
|
|
44
|
+
return /* @__PURE__ */ jsxRuntime.jsx(CommentLink, {
|
|
45
|
+
href,
|
|
46
|
+
children
|
|
47
|
+
});
|
|
39
48
|
}
|
|
40
49
|
};
|
|
41
|
-
const CommentBody =
|
|
50
|
+
const CommentBody = react.forwardRef(
|
|
42
51
|
({ body, components, style, asChild, ...props }, forwardedRef) => {
|
|
43
52
|
const Component = asChild ? reactSlot.Slot : "div";
|
|
44
|
-
const { Mention, Link } =
|
|
53
|
+
const { Mention, Link } = react.useMemo(
|
|
45
54
|
() => ({ ...defaultBodyComponents, ...components }),
|
|
46
55
|
[components]
|
|
47
56
|
);
|
|
48
57
|
if (!body || !body?.content) {
|
|
49
58
|
return null;
|
|
50
59
|
}
|
|
51
|
-
return /* @__PURE__ */
|
|
60
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, {
|
|
52
61
|
...props,
|
|
53
62
|
style: { whiteSpace: "break-spaces", ...style },
|
|
54
|
-
ref: forwardedRef
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
},
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
}
|
|
103
|
-
})
|
|
63
|
+
ref: forwardedRef,
|
|
64
|
+
children: body.content.map((block, index) => {
|
|
65
|
+
switch (block.type) {
|
|
66
|
+
case "paragraph":
|
|
67
|
+
return /* @__PURE__ */ jsxRuntime.jsx("p", {
|
|
68
|
+
style: { minHeight: "1lh" },
|
|
69
|
+
children: block.children.map((inline, index2) => {
|
|
70
|
+
if (utils.isCommentBodyMention(inline)) {
|
|
71
|
+
return inline.id ? /* @__PURE__ */ jsxRuntime.jsx(Mention, {
|
|
72
|
+
userId: inline.id
|
|
73
|
+
}, index2) : null;
|
|
74
|
+
}
|
|
75
|
+
if (utils.isCommentBodyLink(inline)) {
|
|
76
|
+
const href = utils.toAbsoluteUrl(inline.url) ?? inline.url;
|
|
77
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Link, {
|
|
78
|
+
href,
|
|
79
|
+
children: inline.text ?? inline.url
|
|
80
|
+
}, index2);
|
|
81
|
+
}
|
|
82
|
+
let children = inline.text;
|
|
83
|
+
if (inline.bold) {
|
|
84
|
+
children = /* @__PURE__ */ jsxRuntime.jsx("strong", {
|
|
85
|
+
children
|
|
86
|
+
}, index2);
|
|
87
|
+
}
|
|
88
|
+
if (inline.italic) {
|
|
89
|
+
children = /* @__PURE__ */ jsxRuntime.jsx("em", {
|
|
90
|
+
children
|
|
91
|
+
}, index2);
|
|
92
|
+
}
|
|
93
|
+
if (inline.strikethrough) {
|
|
94
|
+
children = /* @__PURE__ */ jsxRuntime.jsx("s", {
|
|
95
|
+
children
|
|
96
|
+
}, index2);
|
|
97
|
+
}
|
|
98
|
+
if (inline.code) {
|
|
99
|
+
children = /* @__PURE__ */ jsxRuntime.jsx("code", {
|
|
100
|
+
children
|
|
101
|
+
}, index2);
|
|
102
|
+
}
|
|
103
|
+
return /* @__PURE__ */ jsxRuntime.jsx("span", {
|
|
104
|
+
children
|
|
105
|
+
}, index2);
|
|
106
|
+
})
|
|
107
|
+
}, index);
|
|
108
|
+
default:
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
})
|
|
112
|
+
});
|
|
104
113
|
}
|
|
105
114
|
);
|
|
106
115
|
if (process.env.NODE_ENV !== "production") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/primitives/Comment/index.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\nimport type { ReactNode } from \"react\";\nimport
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/primitives/Comment/index.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\nimport type { ReactNode } from \"react\";\nimport { forwardRef, useMemo } from \"react\";\n\nimport { MENTION_CHARACTER } from \"../../slate/plugins/mentions\";\nimport type {\n CommentBodyComponents,\n CommentBodyProps,\n CommentLinkProps,\n CommentMentionProps,\n} from \"./types\";\nimport {\n isCommentBodyLink,\n isCommentBodyMention,\n toAbsoluteUrl,\n} from \"./utils\";\n\nconst COMMENT_MENTION_NAME = \"CommentMention\";\nconst COMMENT_BODY_NAME = \"CommentBody\";\nconst COMMENT_LINK_NAME = \"CommentLink\";\n\n/**\n * Displays mentions within `Comment.Body`.\n *\n * @example\n * <Comment.Mention>@{userId}</Comment.Mention>\n */\nconst CommentMention = forwardRef<HTMLSpanElement, CommentMentionProps>(\n ({ children, asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : \"span\";\n\n return (\n <Component {...props} ref={forwardedRef}>\n {children}\n </Component>\n );\n }\n);\n\n/**\n * Displays links within `Comment.Body`.\n *\n * @example\n * <Comment.Link href={href}>{children}</Comment.Link>\n */\nconst CommentLink = forwardRef<HTMLAnchorElement, CommentLinkProps>(\n ({ children, asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : \"a\";\n\n return (\n <Component\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n {...props}\n ref={forwardedRef}\n >\n {children}\n </Component>\n );\n }\n);\n\nconst defaultBodyComponents: CommentBodyComponents = {\n Mention: ({ userId }) => {\n return (\n <CommentMention>\n {MENTION_CHARACTER}\n {userId}\n </CommentMention>\n );\n },\n Link: ({ href, children }) => {\n return <CommentLink href={href}>{children}</CommentLink>;\n },\n};\n\n/**\n * Displays a comment body.\n *\n * @example\n * <Comment.Body body={comment.body} />\n */\nconst CommentBody = forwardRef<HTMLDivElement, CommentBodyProps>(\n ({ body, components, style, asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : \"div\";\n const { Mention, Link } = useMemo(\n () => ({ ...defaultBodyComponents, ...components }),\n [components]\n );\n\n if (!body || !body?.content) {\n return null;\n }\n\n return (\n <Component\n {...props}\n style={{ whiteSpace: \"break-spaces\", ...style }}\n ref={forwardedRef}\n >\n {body.content.map((block, index) => {\n switch (block.type) {\n case \"paragraph\":\n return (\n <p key={index} style={{ minHeight: \"1lh\" }}>\n {block.children.map((inline, index) => {\n if (isCommentBodyMention(inline)) {\n return inline.id ? (\n <Mention userId={inline.id} key={index} />\n ) : null;\n }\n\n if (isCommentBodyLink(inline)) {\n const href = toAbsoluteUrl(inline.url) ?? inline.url;\n\n return (\n <Link href={href} key={index}>\n {inline.text ?? inline.url}\n </Link>\n );\n }\n\n // <code><s><em><strong>text</strong></s></em></code>\n let children: ReactNode = inline.text;\n\n if (inline.bold) {\n children = <strong key={index}>{children}</strong>;\n }\n\n if (inline.italic) {\n children = <em key={index}>{children}</em>;\n }\n\n if (inline.strikethrough) {\n children = <s key={index}>{children}</s>;\n }\n\n if (inline.code) {\n children = <code key={index}>{children}</code>;\n }\n\n return <span key={index}>{children}</span>;\n })}\n </p>\n );\n default:\n return null;\n }\n })}\n </Component>\n );\n }\n);\n\nif (process.env.NODE_ENV !== \"production\") {\n CommentBody.displayName = COMMENT_BODY_NAME;\n CommentMention.displayName = COMMENT_MENTION_NAME;\n CommentLink.displayName = COMMENT_LINK_NAME;\n}\n\n// NOTE: Every export from this file will be available publicly as Comment.*\nexport { CommentBody as Body, CommentLink as Link, CommentMention as Mention };\n"],"names":["forwardRef","Slot","jsx","jsxs","MENTION_CHARACTER","useMemo","index","isCommentBodyMention","isCommentBodyLink","toAbsoluteUrl"],"mappings":"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"}
|