@box/threaded-annotations 4.1.9 → 4.1.11

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.
Files changed (105) hide show
  1. package/dist/chunks/annotation-badge.js +1 -64
  2. package/dist/chunks/custom-placeholder.js +1 -72
  3. package/dist/chunks/delete-annotations-message-popover.js +1 -46
  4. package/dist/chunks/delete-confirmation-popover.js +1 -67
  5. package/dist/chunks/dist.js +2 -1757
  6. package/dist/chunks/mention-component.js +1 -106
  7. package/dist/chunks/message-editor.module.js +1 -12
  8. package/dist/chunks/message-editor2.module.js +1 -29
  9. package/dist/chunks/message-header.js +1 -49
  10. package/dist/chunks/messages-view.js +1 -99
  11. package/dist/chunks/resolved-state.js +1 -55
  12. package/dist/chunks/show-replies-button.js +1 -60
  13. package/dist/chunks/text-message.js +1 -21
  14. package/dist/chunks/text-message.module.js +1 -14
  15. package/dist/chunks/threaded-annotations.js +1 -71
  16. package/dist/chunks/threaded-annotations2.js +1 -87
  17. package/dist/chunks/timestamp-toggle.js +1 -36
  18. package/dist/chunks/virtualized-messages.js +1 -30
  19. package/dist/esm/index.js +1 -8
  20. package/dist/esm/lib/components/mention-component/mention-component.js +1 -2
  21. package/dist/esm/lib/components/mention-component/mention-context.js +1 -26
  22. package/dist/esm/lib/components/message-editor/editor-extensions/custom-mention/custom-mention-suggestions.js +1 -23
  23. package/dist/esm/lib/components/message-editor/editor-extensions/custom-mention/custom-mention.js +1 -59
  24. package/dist/esm/lib/components/message-editor/editor-extensions/custom-mention/useMentionState.js +1 -24
  25. package/dist/esm/lib/components/message-editor/editor-extensions/custom-paragraph.js +1 -13
  26. package/dist/esm/lib/components/message-editor/editor-extensions/custom-placeholder/custom-placeholder-utils.js +1 -26
  27. package/dist/esm/lib/components/message-editor/editor-extensions/custom-placeholder/custom-placeholder.js +1 -2
  28. package/dist/esm/lib/components/message-editor/error-message.js +1 -17
  29. package/dist/esm/lib/components/message-editor/hooks/useMessageEditor.js +1 -69
  30. package/dist/esm/lib/components/message-editor/hooks/useMessagePost.js +1 -35
  31. package/dist/esm/lib/components/message-editor/message-editor-actions.js +1 -29
  32. package/dist/esm/lib/components/message-editor/message-editor-context.js +1 -7
  33. package/dist/esm/lib/components/message-editor/message-editor.js +1 -74
  34. package/dist/esm/lib/components/message-editor/messages.js +1 -44
  35. package/dist/esm/lib/components/message-editor/utils/getMessageEditorState.js +1 -9
  36. package/dist/esm/lib/components/message-header/delete-annotations-message-popover.js +1 -2
  37. package/dist/esm/lib/components/message-header/message-header.js +1 -2
  38. package/dist/esm/lib/components/message-header/messages.js +1 -32
  39. package/dist/esm/lib/components/messages-view/consts.js +1 -2
  40. package/dist/esm/lib/components/messages-view/hooks/useAutoScroll.js +1 -43
  41. package/dist/esm/lib/components/messages-view/hooks/useShowMoreReplies.js +1 -26
  42. package/dist/esm/lib/components/messages-view/hooks/useVirtualizedMessages.js +1 -17
  43. package/dist/esm/lib/components/messages-view/messages-view.js +1 -61
  44. package/dist/esm/lib/components/messages-view/messages.js +1 -12
  45. package/dist/esm/lib/components/messages-view/virtualized-messages.js +1 -2
  46. package/dist/esm/lib/components/text-message/message-renderer.js +1 -58
  47. package/dist/esm/lib/components/text-message/text-message.js +1 -2
  48. package/dist/esm/lib/components/user-avatar/getInitials.js +1 -5
  49. package/dist/esm/lib/components/user-avatar/messages.js +1 -12
  50. package/dist/esm/lib/components/user-avatar/user-avatar.js +1 -31
  51. package/dist/esm/lib/components/v2/annotation-badge/annotation-badge.js +1 -2
  52. package/dist/esm/lib/components/v2/annotation-badge/index.js +1 -2
  53. package/dist/esm/lib/components/v2/annotation-badge/messages.js +1 -12
  54. package/dist/esm/lib/components/v2/message-editor/editor-extensions/custom-mention/custom-mention-suggestions.js +1 -23
  55. package/dist/esm/lib/components/v2/message-editor/editor-extensions/custom-mention/custom-mention.js +1 -59
  56. package/dist/esm/lib/components/v2/message-editor/editor-extensions/custom-mention/mention-trigger-normalization.js +1 -2
  57. package/dist/esm/lib/components/v2/message-editor/editor-extensions/custom-mention/useMentionState.js +1 -27
  58. package/dist/esm/lib/components/v2/message-editor/editor-extensions/custom-paragraph.js +1 -13
  59. package/dist/esm/lib/components/v2/message-editor/hooks/useCharacterLimit.js +1 -24
  60. package/dist/esm/lib/components/v2/message-editor/hooks/useEditorContainerState.js +1 -21
  61. package/dist/esm/lib/components/v2/message-editor/hooks/useMentionUserSelection.js +1 -21
  62. package/dist/esm/lib/components/v2/message-editor/hooks/useMessageSubmit.js +1 -24
  63. package/dist/esm/lib/components/v2/message-editor/message-editor-context.js +1 -19
  64. package/dist/esm/lib/components/v2/message-editor/message-editor.js +1 -187
  65. package/dist/esm/lib/components/v2/message-editor/message-editor.types.js +1 -4
  66. package/dist/esm/lib/components/v2/message-editor/messages.js +1 -52
  67. package/dist/esm/lib/components/v2/message-editor/subcomponents/character-limit-counter.js +1 -26
  68. package/dist/esm/lib/components/v2/message-editor/subcomponents/edit-buttons.js +1 -32
  69. package/dist/esm/lib/components/v2/message-editor/subcomponents/error-message.js +1 -22
  70. package/dist/esm/lib/components/v2/message-editor/subcomponents/post-button.js +1 -29
  71. package/dist/esm/lib/components/v2/message-editor/subcomponents/timestamp-toggle.js +1 -2
  72. package/dist/esm/lib/components/v2/message-header/delete-confirmation-popover.js +1 -2
  73. package/dist/esm/lib/components/v2/message-header/message-header.js +1 -90
  74. package/dist/esm/lib/components/v2/message-header/message-options-menu.js +1 -49
  75. package/dist/esm/lib/components/v2/message-header/messages.js +2 -48
  76. package/dist/esm/lib/components/v2/messages-view/hooks/useAutoScroll.js +1 -69
  77. package/dist/esm/lib/components/v2/messages-view/messages-view.js +1 -2
  78. package/dist/esm/lib/components/v2/resolved-state/messages.js +1 -12
  79. package/dist/esm/lib/components/v2/resolved-state/resolved-state.js +1 -2
  80. package/dist/esm/lib/components/v2/show-replies-button/messages.js +1 -12
  81. package/dist/esm/lib/components/v2/show-replies-button/show-replies-button.js +1 -2
  82. package/dist/esm/lib/components/v2/text-message/constants.js +1 -2
  83. package/dist/esm/lib/components/v2/text-message/messages.js +1 -32
  84. package/dist/esm/lib/components/v2/text-message/subcomponents/message-footer.js +1 -64
  85. package/dist/esm/lib/components/v2/text-message/subcomponents/message-renderer.js +1 -87
  86. package/dist/esm/lib/components/v2/text-message/subcomponents/truncate-document.js +1 -113
  87. package/dist/esm/lib/components/v2/text-message/subcomponents/url-segments.js +1 -38
  88. package/dist/esm/lib/components/v2/text-message/text-message.js +1 -79
  89. package/dist/esm/lib/components/v2/user-avatar/getInitials.js +1 -5
  90. package/dist/esm/lib/components/v2/user-avatar/messages.js +1 -12
  91. package/dist/esm/lib/components/v2/user-avatar/user-avatar.js +1 -37
  92. package/dist/esm/lib/messages.js +1 -24
  93. package/dist/esm/lib/threaded-annotations.js +1 -2
  94. package/dist/esm/lib/utils/getErrorMessage.js +1 -2
  95. package/dist/esm/lib/v2/constants.js +1 -2
  96. package/dist/esm/lib/v2/messages.js +1 -6
  97. package/dist/esm/lib/v2/resin-targets.js +1 -25
  98. package/dist/esm/lib/v2/threaded-annotations-context.js +1 -61
  99. package/dist/esm/lib/v2/threaded-annotations.js +1 -2
  100. package/dist/esm/lib/v2/types/annotation-badge-types.js +1 -4
  101. package/dist/esm/lib/v2/types/index.js +1 -2
  102. package/dist/esm/lib/v2/utils/build-mention-content.js +1 -20
  103. package/dist/esm/lib/v2/utils/serialize-mention-markup.js +2 -12
  104. package/dist/styles/message-editor2.css +1 -1
  105. package/package.json +12 -12
@@ -1,37 +1 @@
1
- import { THREADED_ANNOTATIONS_RESIN_TARGETS as e } from "../../../v2/resin-targets.js";
2
- import { getInitials as t } from "./getInitials.js";
3
- import n from "./messages.js";
4
- import { Avatar as r, ButtonWrapper as i, IconBadge as a } from "@box/blueprint-web";
5
- import { useIntl as o } from "react-intl";
6
- import { jsx as s } from "react/jsx-runtime";
7
- var c = ({ user: e, size: i = "medium" }) => {
8
- let { name: c, isExternalUser: l, id: u, avatarUrl: d } = e, { formatMessage: f } = o(), p = t(c), m = /* @__PURE__ */ s(r, {
9
- alt: f(n.userAvatar),
10
- colorIndex: u,
11
- size: i,
12
- src: d,
13
- text: p
14
- });
15
- return l ? /* @__PURE__ */ s(a, {
16
- offset: {
17
- right: -4,
18
- bottom: -2
19
- },
20
- size: i,
21
- variant: "collaborator-external",
22
- children: m
23
- }) : m;
24
- }, l = ({ user: t, size: r, onClick: a }) => {
25
- let { formatMessage: l } = o();
26
- return /* @__PURE__ */ s(i, {
27
- "aria-label": l(n.userAvatarButtonAriaLabel),
28
- "data-no-expand": !0,
29
- "data-resin-target": e.PROFILE,
30
- onClick: () => a(t.id),
31
- children: /* @__PURE__ */ s(c, {
32
- size: r,
33
- user: t
34
- })
35
- });
36
- };
37
- export { c as UserAvatar, l as UserAvatarButton };
1
+ import{THREADED_ANNOTATIONS_RESIN_TARGETS}from"../../../v2/resin-targets.js";import{getInitials}from"./getInitials.js";import messages from"./messages.js";import{Avatar,ButtonWrapper,IconBadge}from"@box/blueprint-web";import{useIntl}from"react-intl";import{jsx}from"react/jsx-runtime";var UserAvatar=({user,size=`medium`})=>{let{name,isExternalUser,id,avatarUrl}=user,{formatMessage}=useIntl(),initials=getInitials(name),avatar=jsx(Avatar,{alt:formatMessage(messages.userAvatar),colorIndex:id,size,src:avatarUrl,text:initials});return isExternalUser?jsx(IconBadge,{offset:{right:-4,bottom:-2},size,variant:`collaborator-external`,children:avatar}):avatar},UserAvatarButton=({user,size,onClick})=>{let{formatMessage}=useIntl();return jsx(ButtonWrapper,{"aria-label":formatMessage(messages.userAvatarButtonAriaLabel),"data-no-expand":!0,"data-resin-target":THREADED_ANNOTATIONS_RESIN_TARGETS.PROFILE,onClick:()=>onClick(user.id),children:jsx(UserAvatar,{size,user})})};export{UserAvatar,UserAvatarButton};
@@ -1,24 +1 @@
1
- import { defineMessages as e } from "react-intl";
2
- var t = e({
3
- reply: {
4
- id: "groupSharedFeatures.threadedAnnotations.reply",
5
- defaultMessage: "Reply"
6
- },
7
- annotationMessageAriaLabel: {
8
- id: "groupSharedFeatures.threadedAnnotations.annotationMessageAriaLabel",
9
- defaultMessage: "Annotation message"
10
- },
11
- replyButtonAriaLabel: {
12
- id: "groupSharedFeatures.threadedAnnotations.replyButtonAriaLabel",
13
- defaultMessage: "Reply button"
14
- },
15
- textMentionAriaLabel: {
16
- id: "groupSharedFeatures.threadedAnnotations.textMentionAriaLabel",
17
- defaultMessage: "User mention"
18
- },
19
- textMessageAriaLabel: {
20
- id: "groupSharedFeatures.threadedAnnotations.textMessageAriaLabel",
21
- defaultMessage: "Message text"
22
- }
23
- });
24
- export { t as default };
1
+ import{defineMessages}from"react-intl";var messages=defineMessages({reply:{id:`groupSharedFeatures.threadedAnnotations.reply`,defaultMessage:`Reply`},annotationMessageAriaLabel:{id:`groupSharedFeatures.threadedAnnotations.annotationMessageAriaLabel`,defaultMessage:`Annotation message`},replyButtonAriaLabel:{id:`groupSharedFeatures.threadedAnnotations.replyButtonAriaLabel`,defaultMessage:`Reply button`},textMentionAriaLabel:{id:`groupSharedFeatures.threadedAnnotations.textMentionAriaLabel`,defaultMessage:`User mention`},textMessageAriaLabel:{id:`groupSharedFeatures.threadedAnnotations.textMessageAriaLabel`,defaultMessage:`Message text`}});export{messages as default};
@@ -1,2 +1 @@
1
- import { t as e } from "../../chunks/threaded-annotations.js";
2
- export { e as ThreadedAnnotations };
1
+ import{t as ThreadedAnnotations}from"../../chunks/threaded-annotations.js";export{ThreadedAnnotations};
@@ -1,2 +1 @@
1
- var e = (e) => e instanceof Error ? e.message : String(e);
2
- export { e as getErrorMessage };
1
+ var getErrorMessage=error=>error instanceof Error?error.message:String(error);export{getErrorMessage};
@@ -1,2 +1 @@
1
- var e = { "data-threaded-annotations-portal": !0 };
2
- export { e as THREADED_ANNOTATIONS_PORTAL };
1
+ var THREADED_ANNOTATIONS_PORTAL={"data-threaded-annotations-portal":!0};export{THREADED_ANNOTATIONS_PORTAL};
@@ -1,6 +1 @@
1
- import { defineMessages as e } from "react-intl";
2
- var t = e({ threadedAnnotationsAriaLabel: {
3
- id: "boxui.threadedAnnotations.threadedAnnotationsAriaLabel",
4
- defaultMessage: "Threaded annotation"
5
- } });
6
- export { t as default };
1
+ import{defineMessages}from"react-intl";var messages=defineMessages({threadedAnnotationsAriaLabel:{id:`boxui.threadedAnnotations.threadedAnnotationsAriaLabel`,defaultMessage:`Threaded annotation`}});export{messages as default};
@@ -1,25 +1 @@
1
- var e = "activityfeedv2", t = {
2
- ANNOTATION_MENU: "activityfeedannotation",
3
- COMMENT_CARD: "activityfeedcommentcard",
4
- COMMENT_MENU: "activityfeedcomment"
5
- }, n = {
6
- ANNOTATION_COPY_LINK: "activityfeed-annotation-copylink",
7
- ANNOTATION_DELETE: "activityfeed-annotation-delete",
8
- ANNOTATION_EDIT: "activityfeed-annotation-edit",
9
- ANNOTATION_MENU: "activityfeed-annotation-options",
10
- ANNOTATION_RESOLVE: "activityfeed-annotation-resolve",
11
- ANNOTATION_UNRESOLVE: "activityfeed-annotation-unresolve",
12
- COMMENT_COPY_LINK: "activityfeed-comment-copylink",
13
- COMMENT_DELETE: "activityfeed-comment-delete",
14
- COMMENT_EDIT: "activityfeed-comment-edit",
15
- COMMENT_MENU: "activityfeed-comment-options",
16
- COMMENT_POST: "activityfeed-comment-post",
17
- COMMENT_REPLY: "activityfeed-comment-reply",
18
- COMMENT_RESOLVE: "activityfeed-comment-resolve",
19
- COMMENT_UNRESOLVE: "activityfeed-comment-unresolve",
20
- DELETE_CANCEL: "activityfeed-delete-cancel",
21
- DELETE_CONFIRM: "activityfeed-delete-confirm",
22
- MENTION: "activityfeed-mentionlink",
23
- PROFILE: "activityfeed-profilelink"
24
- };
25
- export { t as THREADED_ANNOTATIONS_RESIN_COMPONENTS, e as THREADED_ANNOTATIONS_RESIN_FEATURE, n as THREADED_ANNOTATIONS_RESIN_TARGETS };
1
+ var THREADED_ANNOTATIONS_RESIN_FEATURE=`activityfeedv2`,THREADED_ANNOTATIONS_RESIN_COMPONENTS={ANNOTATION_MENU:`activityfeedannotation`,COMMENT_CARD:`activityfeedcommentcard`,COMMENT_MENU:`activityfeedcomment`},THREADED_ANNOTATIONS_RESIN_TARGETS={ANNOTATION_COPY_LINK:`activityfeed-annotation-copylink`,ANNOTATION_DELETE:`activityfeed-annotation-delete`,ANNOTATION_EDIT:`activityfeed-annotation-edit`,ANNOTATION_MENU:`activityfeed-annotation-options`,ANNOTATION_RESOLVE:`activityfeed-annotation-resolve`,ANNOTATION_UNRESOLVE:`activityfeed-annotation-unresolve`,COMMENT_COPY_LINK:`activityfeed-comment-copylink`,COMMENT_DELETE:`activityfeed-comment-delete`,COMMENT_EDIT:`activityfeed-comment-edit`,COMMENT_MENU:`activityfeed-comment-options`,COMMENT_POST:`activityfeed-comment-post`,COMMENT_REPLY:`activityfeed-comment-reply`,COMMENT_RESOLVE:`activityfeed-comment-resolve`,COMMENT_UNRESOLVE:`activityfeed-comment-unresolve`,DELETE_CANCEL:`activityfeed-delete-cancel`,DELETE_CONFIRM:`activityfeed-delete-confirm`,MENTION:`activityfeed-mentionlink`,PROFILE:`activityfeed-profilelink`};export{THREADED_ANNOTATIONS_RESIN_COMPONENTS,THREADED_ANNOTATIONS_RESIN_FEATURE,THREADED_ANNOTATIONS_RESIN_TARGETS};
@@ -1,61 +1 @@
1
- import { createContext as e, useCallback as t, useContext as n, useEffect as r, useMemo as i, useState as a } from "react";
2
- import { jsx as o } from "react/jsx-runtime";
3
- var s = /* @__PURE__ */ function(e) {
4
- return e.Collapsed = "collapsed", e.RepliesOnly = "repliesOnly", e.Composing = "composing", e;
5
- }({}), c = /*#__PURE__*/ e(void 0), l = ({ children: e, defaultExpanded: n = !1, isReplyDisabled: s = !1, isEditDisabled: l = !1, collapsed: u = !1, isAnnotations: d = !1 }) => {
6
- let [f, p] = a(() => n ? s ? "repliesOnly" : "composing" : "collapsed"), [m, h] = a(null), [g, _] = a(null);
7
- r(() => {
8
- s ? (p((e) => e === "composing" ? "collapsed" : e), h(null)) : p((e) => e === "repliesOnly" ? "composing" : e);
9
- }, [s]), r(() => {
10
- l && _(null);
11
- }, [l]), r(() => {
12
- u && (p("collapsed"), h(null), _(null));
13
- }, [u]);
14
- let v = t((e) => {
15
- switch (e.type) {
16
- case "EXPAND":
17
- p((e) => e === "collapsed" ? s ? "repliesOnly" : "composing" : e);
18
- break;
19
- case "REPLY":
20
- s || (h(e.author), p("composing"));
21
- break;
22
- case "EDIT":
23
- l || _(e.id);
24
- break;
25
- case "CLEAR_EDIT":
26
- _(null);
27
- break;
28
- case "COLLAPSE":
29
- p("collapsed"), h(null), _(null);
30
- break;
31
- case "CLEAR_MENTION":
32
- h(null);
33
- break;
34
- }
35
- }, [s, l]), y = i(() => ({
36
- viewState: f,
37
- replyMention: m,
38
- editingMessageId: g,
39
- isAnnotations: d,
40
- isReplyDisabled: s,
41
- isEditDisabled: l,
42
- dispatch: v
43
- }), [
44
- f,
45
- m,
46
- g,
47
- d,
48
- s,
49
- l,
50
- v
51
- ]);
52
- return /* @__PURE__ */ o(c.Provider, {
53
- value: y,
54
- children: e
55
- });
56
- }, u = () => {
57
- let e = n(c);
58
- if (e === void 0) throw Error("useThreadedAnnotationsContext must be used within ThreadedAnnotationsProvider");
59
- return e;
60
- };
61
- export { s as ThreadViewState, l as ThreadedAnnotationsProvider, u as useThreadedAnnotationsContext };
1
+ import{createContext,useCallback,useContext,useEffect,useMemo,useState}from"react";import{jsx}from"react/jsx-runtime";var ThreadViewState=function(ThreadViewState){return ThreadViewState.Collapsed=`collapsed`,ThreadViewState.RepliesOnly=`repliesOnly`,ThreadViewState.Composing=`composing`,ThreadViewState}({}),ThreadedAnnotationsContext=createContext(void 0),ThreadedAnnotationsProvider=({children,defaultExpanded=!1,isReplyDisabled=!1,isEditDisabled=!1,collapsed=!1,isAnnotations=!1})=>{let[viewState,setViewState]=useState(()=>defaultExpanded?isReplyDisabled?`repliesOnly`:`composing`:`collapsed`),[replyMention,setReplyMention]=useState(null),[editingMessageId,setEditingMessageId]=useState(null);useEffect(()=>{isReplyDisabled?(setViewState(current=>current===`composing`?`collapsed`:current),setReplyMention(null)):setViewState(current=>current===`repliesOnly`?`composing`:current)},[isReplyDisabled]),useEffect(()=>{isEditDisabled&&setEditingMessageId(null)},[isEditDisabled]),useEffect(()=>{collapsed&&(setViewState(`collapsed`),setReplyMention(null),setEditingMessageId(null))},[collapsed]);let dispatch=useCallback(event=>{switch(event.type){case`EXPAND`:setViewState(current=>current===`collapsed`?isReplyDisabled?`repliesOnly`:`composing`:current);break;case`REPLY`:isReplyDisabled||(setReplyMention(event.author),setViewState(`composing`));break;case`EDIT`:isEditDisabled||setEditingMessageId(event.id);break;case`CLEAR_EDIT`:setEditingMessageId(null);break;case`COLLAPSE`:setViewState(`collapsed`),setReplyMention(null),setEditingMessageId(null);break;case`CLEAR_MENTION`:setReplyMention(null);break}},[isReplyDisabled,isEditDisabled]),value=useMemo(()=>({viewState,replyMention,editingMessageId,isAnnotations,isReplyDisabled,isEditDisabled,dispatch}),[viewState,replyMention,editingMessageId,isAnnotations,isReplyDisabled,isEditDisabled,dispatch]);return jsx(ThreadedAnnotationsContext.Provider,{value,children})},useThreadedAnnotationsContext=()=>{let context=useContext(ThreadedAnnotationsContext);if(context===void 0)throw Error(`useThreadedAnnotationsContext must be used within ThreadedAnnotationsProvider`);return context};export{ThreadViewState,ThreadedAnnotationsProvider,useThreadedAnnotationsContext};
@@ -1,2 +1 @@
1
- import { t as e } from "../../../chunks/threaded-annotations2.js";
2
- export { e as ThreadedAnnotations };
1
+ import{t as ThreadedAnnotations}from"../../../chunks/threaded-annotations2.js";export{ThreadedAnnotations};
@@ -1,4 +1 @@
1
- var e = /* @__PURE__ */ function(e) {
2
- return e.Drawing = "drawing", e.Frame = "frame", e.Highlight = "highlight", e.Point = "point", e.Region = "region", e;
3
- }({});
4
- export { e as AnnotationBadgeType };
1
+ var AnnotationBadgeType=function(AnnotationBadgeType){return AnnotationBadgeType.Drawing=`drawing`,AnnotationBadgeType.Frame=`frame`,AnnotationBadgeType.Highlight=`highlight`,AnnotationBadgeType.Point=`point`,AnnotationBadgeType.Region=`region`,AnnotationBadgeType}({});export{AnnotationBadgeType};
@@ -1,2 +1 @@
1
- import { AnnotationBadgeType as e } from "./annotation-badge-types.js";
2
- export { e as AnnotationBadgeType };
1
+ import{AnnotationBadgeType}from"./annotation-badge-types.js";export{AnnotationBadgeType};
@@ -1,20 +1 @@
1
- import { v4 as e } from "uuid";
2
- var t = (t) => ({
3
- type: "doc",
4
- content: [{
5
- type: "paragraph",
6
- content: [{
7
- type: "mention",
8
- attrs: {
9
- mentionedUserId: String(t.id),
10
- mentionedUserName: t.name,
11
- mentionedUserEmail: t.email,
12
- mentionId: e()
13
- }
14
- }, {
15
- type: "text",
16
- text: " "
17
- }]
18
- }]
19
- });
20
- export { t as buildMentionContent };
1
+ import{v4}from"uuid";var buildMentionContent=author=>({type:`doc`,content:[{type:`paragraph`,content:[{type:`mention`,attrs:{mentionedUserId:String(author.id),mentionedUserName:author.name,mentionedUserEmail:author.email,mentionId:v4()}},{type:`text`,text:` `}]}]});export{buildMentionContent};
@@ -1,12 +1,2 @@
1
- var e = (e) => {
2
- if (!e || !e.content) return {
3
- hasMention: !1,
4
- text: ""
5
- };
6
- let r = !1, i = e.content.map((e) => e.content ? e.content.map((e) => e.type === "mention" ? (r = !0, t(e)) : n(e)).join("") : "").join("\n");
7
- return {
8
- hasMention: r,
9
- text: i
10
- };
11
- }, t = (e) => `@[${e.attrs.mentionedUserId}:${e.attrs.mentionedUserName}]`, n = (e) => e.text;
12
- export { e as serializeMentionMarkup };
1
+ var serializeMentionMarkup=doc=>{if(!doc||!doc.content)return{hasMention:!1,text:``};let hasMention=!1,text=doc.content.map(paragraph=>paragraph.content?paragraph.content.map(node=>node.type===`mention`?(hasMention=!0,serializeMention(node)):serializeText(node)).join(``):``).join(`
2
+ `);return{hasMention,text}},serializeMention=node=>`@[${node.attrs.mentionedUserId}:${node.attrs.mentionedUserName}]`,serializeText=node=>node.text;export{serializeMentionMarkup};
@@ -1 +1 @@
1
- ._messageEditorWrapper_1498d_29{cursor:auto;width:100%}._editActionsColumn_1498d_34{align-items:flex-end;gap:var(--bp-space-010);flex-direction:column;display:flex}._editActionsRow_1498d_41{align-items:center;gap:var(--bp-space-020);display:flex}._characterLimitCounter_1498d_47{white-space:nowrap}._characterLimitCounter_1498d_47._characterLimitCounterExceeded_1498d_50{font-weight:var(--font-weights-bold)}._messageEditor_1498d_29{--gradient-fade-height:var(--bp-size-040);box-sizing:border-box;padding:.625rem var(--bp-space-005) .625rem var(--bp-space-040);background-color:var(--surface-surface);outline:var(--bp-border-01) solid var(--border-divider-border);border-radius:var(--bp-radius-10);gap:var(--bp-space-020) var(--bp-space-010);cursor:auto;flex-wrap:wrap;width:100%;display:flex;position:relative}._messageEditor_1498d_29._editorEditMode_1498d_68{--gradient-fade-height:var(--bp-size-050)}._messageEditor_1498d_29:focus-within{outline-width:var(--bp-border-02);outline-color:var(--border-input-border-focus)}._messageEditor_1498d_29._editorFirstAnnotation_1498d_75:not(._editorError_1498d_75):focus-within{outline-width:var(--bp-border-01);outline-color:var(--border-divider-border)}._messageEditor_1498d_29._editorError_1498d_75{outline-color:var(--bp-border-message-border-error);outline-width:var(--bp-border-02)}._messageEditor_1498d_29 ._editorViewport_1498d_83{width:fit-content;min-width:calc(100% - 2.875rem);margin:auto 0;position:relative}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--black-opacity-50) transparent;position:relative;overflow-y:scroll}@supports not (scrollbar-color:gray transparent){._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89{scrollbar-width:initial}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89::-webkit-scrollbar{width:var(--size-2);background-color:#0000}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89::-webkit-scrollbar-thumb{background:var(--black-opacity-50);border-radius:var(--radius-2)}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89::-webkit-scrollbar-thumb:hover{background:var(--black-opacity-50)}}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89{max-height:10rem;padding:.375rem .625rem .375rem 0}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89 ._editor_1498d_68{outline:none;width:100%}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89 ._editor_1498d_68 [data-placeholder]:first-child:before{font-weight:var(--bp-font-weight-regular);font-size:var(--bp-font-size-05);font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;font-style:normal;line-height:var(--bp-font-line-height-04);letter-spacing:var(--bp-font-letter-spacing-01)}:where(body.is-inter-font) ._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89 ._editor_1498d_68 [data-placeholder]:first-child:before{letter-spacing:0;text-transform:none;font-family:InterVariable,-apple-system,BlinkMacSystemFont,San Francisco,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:.875rem;font-style:normal;font-weight:450;line-height:1.25rem;text-decoration:none}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorContainer_1498d_89 ._editor_1498d_68 [data-placeholder]:first-child:before{color:var(--text-text-on-light-tertiary);content:attr(data-placeholder);float:left;pointer-events:none;height:0}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorFade_1498d_149{height:var(--bp-size-060);background:linear-gradient(to bottom, transparent, var(--bp-canvas-background,var(--surface-surface)));pointer-events:none;opacity:1;transition:opacity .15s ease-out;position:absolute;bottom:0;left:0;right:0}._messageEditor_1498d_29 ._editorViewport_1498d_83 ._editorFade_1498d_149._editorFadeHidden_1498d_160{opacity:0}._messageEditor_1498d_29 ._editorFullWidth_1498d_163{width:100%;min-width:100%}._messageEditor_1498d_29 ._actionsWrapper_1498d_167{min-height:var(--bp-size-080);width:fit-content;padding-right:var(--bp-space-020);flex:1;justify-content:flex-end;align-items:center;display:flex;position:relative}._messageEditor_1498d_29 ._actionsWrapper_1498d_167 ._actionsWrapperInner_1498d_177{align-items:center;gap:var(--bp-space-020);width:fit-content;display:flex;position:relative}._messageEditor_1498d_29 ._timestampToggle_1498d_184{margin-right:auto}._messageEditor_1498d_29 ._errorMessage_1498d_187{gap:var(--bp-space-010);align-items:center;min-width:0;display:flex}._messageEditor_1498d_29 ._errorMessage_1498d_187>:first-child{flex-shrink:0}._messageEditor_1498d_29 ._errorMessage_1498d_187 ._errorText_1498d_196{color:var(--bp-text-text-destructive-on-light);-webkit-line-clamp:1;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}._editorHasScroll_1498d_205{gap:unset;padding-bottom:0}._editorHasScroll_1498d_205 ._editorViewport_1498d_83 ._editorContainer_1498d_89{padding-bottom:var(--bp-space-040);scroll-padding-bottom:var(--bp-space-040)}._editorHasScroll_1498d_205 ._editorViewport_1498d_83 ._editorFade_1498d_149{display:none}._editorHasScroll_1498d_205._editorCharacterLimitExceeded_1498d_216 ._editorViewport_1498d_83 ._editorContainer_1498d_89{padding-bottom:calc(var(--gradient-fade-height,var(--bp-size-040)) + var(--bp-space-040));scroll-padding-bottom:calc(var(--gradient-fade-height,var(--bp-size-040)) + var(--bp-space-040))}._editorHasScroll_1498d_205 ._actionsWrapper_1498d_167{min-width:100%;height:1.875rem;padding-right:0}._editorHasScroll_1498d_205 ._actionsWrapper_1498d_167 ._actionsWrapperInner_1498d_177{bottom:.625rem;left:0;right:var(--bp-space-020);pointer-events:none;background:linear-gradient(to bottom, #fff0 10%, #ffffffbf 18%, #fffffff7 28%, var(--bp-canvas-background,var(--surface-surface)) 71%);justify-content:flex-end;width:auto;position:absolute}._editorHasScroll_1498d_205 ._actionsWrapper_1498d_167 ._actionsWrapperInner_1498d_177>*{pointer-events:auto}._editorHasScroll_1498d_205 ._actionsWrapper_1498d_167 ._actionsWrapperInner_1498d_177._characterLimitExceeded_1498d_238{padding-top:var(--gradient-fade-height,var(--bp-size-040))}._editorHasScroll_1498d_205 ._actionsWrapper_1498d_167 ._actionsWrapperInner_1498d_177._scrolledToBottom_1498d_241{background:0 0}._anchorElement_1498d_245{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}._messageEditor_1498d_29 ._actionsWrapper_1498d_167._withTimestampToggle_1498d_254,._messageEditor_1498d_29 ._actionsWrapper_1498d_167._withTimestampToggle_1498d_254 ._actionsWrapperInner_1498d_177{width:100%}
1
+ ._messageEditorWrapper_1v8rm_29{cursor:auto;width:100%}._editActionsColumn_1v8rm_34{align-items:flex-end;gap:var(--bp-space-010);flex-direction:column;display:flex}._editActionsRow_1v8rm_41{align-items:center;gap:var(--bp-space-020);display:flex}._characterLimitCounter_1v8rm_47{white-space:nowrap}._messageEditor_1v8rm_29{--gradient-fade-height:var(--bp-size-040);box-sizing:border-box;padding:.625rem var(--bp-space-005) .625rem var(--bp-space-040);background-color:var(--surface-surface);outline:var(--bp-border-01) solid var(--border-divider-border);border-radius:var(--bp-radius-10);gap:var(--bp-space-020) var(--bp-space-010);cursor:auto;flex-wrap:wrap;width:100%;display:flex;position:relative}._messageEditor_1v8rm_29._editorEditMode_1v8rm_65{--gradient-fade-height:var(--bp-size-050)}._messageEditor_1v8rm_29:focus-within{outline-width:var(--bp-border-02);outline-color:var(--border-input-border-focus)}._messageEditor_1v8rm_29._editorFirstAnnotation_1v8rm_72:not(._editorError_1v8rm_72):focus-within{outline-width:var(--bp-border-01);outline-color:var(--border-divider-border)}._messageEditor_1v8rm_29._editorError_1v8rm_72{outline-color:var(--bp-border-message-border-error);outline-width:var(--bp-border-02)}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80{width:fit-content;min-width:calc(100% - 2.875rem);margin:auto 0;position:relative}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--black-opacity-50) transparent;position:relative;overflow-y:scroll}@supports not (scrollbar-color:gray transparent){._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86{scrollbar-width:initial}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86::-webkit-scrollbar{width:var(--size-2);background-color:#0000}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86::-webkit-scrollbar-thumb{background:var(--black-opacity-50);border-radius:var(--radius-2)}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86::-webkit-scrollbar-thumb:hover{background:var(--black-opacity-50)}}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86{max-height:10rem;padding:.375rem .625rem .375rem 0}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86 ._editor_1v8rm_65{outline:none;width:100%}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86 ._editor_1v8rm_65 [data-placeholder]:first-child:before{font-weight:var(--bp-font-weight-regular);font-size:var(--bp-font-size-05);font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;font-style:normal;line-height:var(--bp-font-line-height-04);letter-spacing:var(--bp-font-letter-spacing-01)}:where(body.is-inter-font) ._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86 ._editor_1v8rm_65 [data-placeholder]:first-child:before{letter-spacing:0;text-transform:none;font-family:InterVariable,-apple-system,BlinkMacSystemFont,San Francisco,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:.875rem;font-style:normal;font-weight:450;line-height:1.25rem;text-decoration:none}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86 ._editor_1v8rm_65 [data-placeholder]:first-child:before{color:var(--text-text-on-light-tertiary);content:attr(data-placeholder);float:left;pointer-events:none;height:0}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorFade_1v8rm_146{height:var(--bp-size-060);background:linear-gradient(to bottom, transparent, var(--bp-canvas-background,var(--surface-surface)));pointer-events:none;opacity:1;transition:opacity .15s ease-out;position:absolute;bottom:0;left:0;right:0}._messageEditor_1v8rm_29 ._editorViewport_1v8rm_80 ._editorFade_1v8rm_146._editorFadeHidden_1v8rm_157{opacity:0}._messageEditor_1v8rm_29 ._editorFullWidth_1v8rm_160{width:100%;min-width:100%}._messageEditor_1v8rm_29 ._actionsWrapper_1v8rm_164{min-height:var(--bp-size-080);width:fit-content;padding-right:var(--bp-space-020);flex:1;justify-content:flex-end;align-items:center;display:flex;position:relative}._messageEditor_1v8rm_29 ._actionsWrapper_1v8rm_164 ._actionsWrapperInner_1v8rm_174{align-items:center;gap:var(--bp-space-020);width:fit-content;display:flex;position:relative}._messageEditor_1v8rm_29 ._timestampToggle_1v8rm_181{margin-right:auto}._messageEditor_1v8rm_29 ._errorMessage_1v8rm_184{gap:var(--bp-space-010);align-items:center;min-width:0;display:flex}._messageEditor_1v8rm_29 ._errorMessage_1v8rm_184>:first-child{flex-shrink:0}._messageEditor_1v8rm_29 ._errorMessage_1v8rm_184 ._errorText_1v8rm_193{color:var(--bp-text-text-destructive-on-light);-webkit-line-clamp:1;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}._editorHasScroll_1v8rm_202{gap:unset;padding-bottom:0}._editorHasScroll_1v8rm_202 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86{padding-bottom:var(--bp-space-040);scroll-padding-bottom:var(--bp-space-040)}._editorHasScroll_1v8rm_202 ._editorViewport_1v8rm_80 ._editorFade_1v8rm_146{display:none}._editorHasScroll_1v8rm_202._editorCharacterLimitExceeded_1v8rm_213 ._editorViewport_1v8rm_80 ._editorContainer_1v8rm_86{padding-bottom:calc(var(--gradient-fade-height,var(--bp-size-040)) + var(--bp-space-040));scroll-padding-bottom:calc(var(--gradient-fade-height,var(--bp-size-040)) + var(--bp-space-040))}._editorHasScroll_1v8rm_202 ._actionsWrapper_1v8rm_164{min-width:100%;height:1.875rem;padding-right:0}._editorHasScroll_1v8rm_202 ._actionsWrapper_1v8rm_164 ._actionsWrapperInner_1v8rm_174{bottom:.625rem;left:0;right:var(--bp-space-020);pointer-events:none;background:linear-gradient(to bottom, #fff0 10%, #ffffffbf 18%, #fffffff7 28%, var(--bp-canvas-background,var(--surface-surface)) 71%);justify-content:flex-end;width:auto;position:absolute}._editorHasScroll_1v8rm_202 ._actionsWrapper_1v8rm_164 ._actionsWrapperInner_1v8rm_174>*{pointer-events:auto}._editorHasScroll_1v8rm_202 ._actionsWrapper_1v8rm_164 ._actionsWrapperInner_1v8rm_174._characterLimitExceeded_1v8rm_235{padding-top:var(--gradient-fade-height,var(--bp-size-040))}._editorHasScroll_1v8rm_202 ._actionsWrapper_1v8rm_164 ._actionsWrapperInner_1v8rm_174._scrolledToBottom_1v8rm_238{background:0 0}._anchorElement_1v8rm_242{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}._messageEditor_1v8rm_29 ._actionsWrapper_1v8rm_164._withTimestampToggle_1v8rm_251,._messageEditor_1v8rm_29 ._actionsWrapper_1v8rm_164._withTimestampToggle_1v8rm_251 ._actionsWrapperInner_1v8rm_174{width:100%}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@box/threaded-annotations",
3
- "version": "4.1.9",
3
+ "version": "4.1.11",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "dependencies": {
6
6
  "@floating-ui/dom": "^1.6.0",
@@ -17,23 +17,23 @@
17
17
  "uuid": "^9.0.1"
18
18
  },
19
19
  "peerDependencies": {
20
- "@box/blueprint-web": "^16.13.0",
21
- "@box/blueprint-web-assets": "^5.5.9",
22
- "@box/collaboration-popover": "^2.1.34",
23
- "@box/readable-time": "^2.1.34",
24
- "@box/user-selector": "^2.1.37",
20
+ "@box/blueprint-web": "^16.13.1",
21
+ "@box/blueprint-web-assets": "^5.5.10",
22
+ "@box/collaboration-popover": "^2.1.35",
23
+ "@box/readable-time": "^2.1.35",
24
+ "@box/user-selector": "^2.1.38",
25
25
  "clsx": "^1.2.1",
26
26
  "react": "^18.0.0",
27
27
  "react-dom": "^18.0.0",
28
28
  "react-intl": "^6.4.2"
29
29
  },
30
30
  "devDependencies": {
31
- "@box/blueprint-web": "^16.13.0",
32
- "@box/blueprint-web-assets": "^5.5.9",
33
- "@box/eslint-plugin-blueprint": "2.1.10",
34
- "@box/readable-time": "^2.1.34",
35
- "@box/storybook-utils": "^1.1.33",
36
- "@box/user-selector": "^2.1.37",
31
+ "@box/blueprint-web": "^16.13.1",
32
+ "@box/blueprint-web-assets": "^5.5.10",
33
+ "@box/eslint-plugin-blueprint": "2.1.11",
34
+ "@box/readable-time": "^2.1.35",
35
+ "@box/storybook-utils": "^1.1.34",
36
+ "@box/user-selector": "^2.1.38",
37
37
  "react": "^18.0.0",
38
38
  "react-dom": "^18.0.0"
39
39
  },