@box/activity-feed 1.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +379 -0
- package/README.md +57 -0
- package/dist/chunks/AssigneeList.js +125 -0
- package/dist/chunks/TaskDueDate.js +44 -0
- package/dist/chunks/TaskItemFooter.js +77 -0
- package/dist/chunks/TaskMessage.js +86 -0
- package/dist/chunks/TaskState.js +83 -0
- package/dist/chunks/activity-feed-list.js +21 -0
- package/dist/chunks/activity-feed.js +46 -0
- package/dist/chunks/app-activity-item.js +75 -0
- package/dist/chunks/editor.js +14 -0
- package/dist/chunks/empty-state.js +22 -0
- package/dist/chunks/header.js +63 -0
- package/dist/chunks/mock-collaboration-props.js +19379 -0
- package/dist/chunks/scroll.js +6 -0
- package/dist/chunks/task-button.js +44 -0
- package/dist/chunks/task-delete-confirmation-popover.js +50 -0
- package/dist/chunks/task-options-menu.js +58 -0
- package/dist/chunks/types.js +8 -0
- package/dist/chunks/version-item.module.js +10 -0
- package/dist/esm/index.js +9 -0
- package/dist/esm/lib/activity-feed.js +6 -0
- package/dist/esm/lib/components/activity-feed-list/activity-feed-list.js +2 -0
- package/dist/esm/lib/components/activity-feed-list/index.js +2 -0
- package/dist/esm/lib/components/app-activity-item/app-activity-item.js +2 -0
- package/dist/esm/lib/components/app-activity-item/index.js +2 -0
- package/dist/esm/lib/components/app-activity-item/messages.js +6 -0
- package/dist/esm/lib/components/editor/editor.js +2 -0
- package/dist/esm/lib/components/editor/index.js +2 -0
- package/dist/esm/lib/components/empty-state/empty-state.js +2 -0
- package/dist/esm/lib/components/empty-state/index.js +2 -0
- package/dist/esm/lib/components/empty-state/messages.js +12 -0
- package/dist/esm/lib/components/header/header-filter-options.js +30 -0
- package/dist/esm/lib/components/header/header.js +2 -0
- package/dist/esm/lib/components/header/messages.js +44 -0
- package/dist/esm/lib/components/header/task-button/index.js +2 -0
- package/dist/esm/lib/components/header/task-button/messages.js +24 -0
- package/dist/esm/lib/components/header/task-button/task-button.js +2 -0
- package/dist/esm/lib/components/task-item/TaskItem.js +81 -0
- package/dist/esm/lib/components/task-item/TaskItemFooter.js +2 -0
- package/dist/esm/lib/components/task-item/components/assignee-list/AssigneeList.js +2 -0
- package/dist/esm/lib/components/task-item/components/assignee-list/index.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-due-date/TaskDueDate.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-due-date/index.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-message/MessageRenderer.js +21 -0
- package/dist/esm/lib/components/task-item/components/task-message/TaskMessage.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-message/index.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-message/messages.js +24 -0
- package/dist/esm/lib/components/task-item/components/task-message/task-delete-confirmation-popover.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-message/task-options-menu.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-state/TaskState.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-state/index.js +2 -0
- package/dist/esm/lib/components/task-item/components/task-state/messages.js +20 -0
- package/dist/esm/lib/components/task-item/index.js +6 -0
- package/dist/esm/lib/components/task-item/messages.js +76 -0
- package/dist/esm/lib/components/task-item/utils/task-item-helpers.js +22 -0
- package/dist/esm/lib/components/user-avatar/getInitials.js +5 -0
- package/dist/esm/lib/components/user-avatar/index.js +2 -0
- package/dist/esm/lib/components/user-avatar/user-avatar.js +22 -0
- package/dist/esm/lib/components/version-item/delete-version-item/delete-version-item.js +41 -0
- package/dist/esm/lib/components/version-item/delete-version-item/index.js +2 -0
- package/dist/esm/lib/components/version-item/divider-version-item/divider-version-item.js +20 -0
- package/dist/esm/lib/components/version-item/divider-version-item/index.js +2 -0
- package/dist/esm/lib/components/version-item/index.js +2 -0
- package/dist/esm/lib/components/version-item/messages.js +36 -0
- package/dist/esm/lib/components/version-item/version-item.js +52 -0
- package/dist/esm/lib/scroll/create-activity-feed-scroll.js +18 -0
- package/dist/esm/lib/scroll/index.js +4 -0
- package/dist/esm/lib/scroll/use-activity-feed-scroll.js +7 -0
- package/dist/esm/lib/test-utils/mocks/index.js +6 -0
- package/dist/esm/lib/test-utils/mocks/mock-collaboration-props.js +2 -0
- package/dist/esm/lib/test-utils/mocks/mock-feed-items.js +187 -0
- package/dist/esm/lib/test-utils/mocks/mock-mention-context.js +7 -0
- package/dist/esm/lib/test-utils/mocks/mock-user-selector-props.js +9 -0
- package/dist/esm/lib/test-utils/mocks/mock-users.js +86 -0
- package/dist/esm/lib/types/ActivityItem.js +0 -0
- package/dist/esm/lib/types/common.js +0 -0
- package/dist/esm/lib/types/index.js +0 -0
- package/dist/i18n/bn-IN.js +55 -0
- package/dist/i18n/bn-IN.properties +106 -0
- package/dist/i18n/da-DK.js +55 -0
- package/dist/i18n/da-DK.properties +106 -0
- package/dist/i18n/de-DE.js +55 -0
- package/dist/i18n/de-DE.properties +106 -0
- package/dist/i18n/en-AU.js +55 -0
- package/dist/i18n/en-AU.properties +106 -0
- package/dist/i18n/en-CA.js +55 -0
- package/dist/i18n/en-CA.properties +106 -0
- package/dist/i18n/en-GB.js +55 -0
- package/dist/i18n/en-GB.properties +106 -0
- package/dist/i18n/en-US.js +55 -0
- package/dist/i18n/en-US.properties +106 -0
- package/dist/i18n/en-x-pseudo.js +55 -0
- package/dist/i18n/en-x-pseudo.properties +106 -0
- package/dist/i18n/es-419.js +55 -0
- package/dist/i18n/es-419.properties +106 -0
- package/dist/i18n/es-ES.js +55 -0
- package/dist/i18n/es-ES.properties +106 -0
- package/dist/i18n/fi-FI.js +55 -0
- package/dist/i18n/fi-FI.properties +106 -0
- package/dist/i18n/fr-CA.js +55 -0
- package/dist/i18n/fr-CA.properties +106 -0
- package/dist/i18n/fr-FR.js +55 -0
- package/dist/i18n/fr-FR.properties +106 -0
- package/dist/i18n/hi-IN.js +55 -0
- package/dist/i18n/hi-IN.properties +106 -0
- package/dist/i18n/it-IT.js +55 -0
- package/dist/i18n/it-IT.properties +106 -0
- package/dist/i18n/ja-JP.js +55 -0
- package/dist/i18n/ja-JP.properties +106 -0
- package/dist/i18n/json/src/lib/components/app-activity-item/messages.json +1 -0
- package/dist/i18n/json/src/lib/components/empty-state/messages.json +1 -0
- package/dist/i18n/json/src/lib/components/header/messages.json +1 -0
- package/dist/i18n/json/src/lib/components/header/task-button/messages.json +1 -0
- package/dist/i18n/json/src/lib/components/task-item/components/task-message/messages.json +1 -0
- package/dist/i18n/json/src/lib/components/task-item/components/task-state/messages.json +1 -0
- package/dist/i18n/json/src/lib/components/task-item/messages.json +1 -0
- package/dist/i18n/json/src/lib/components/version-item/messages.json +1 -0
- package/dist/i18n/ko-KR.js +55 -0
- package/dist/i18n/ko-KR.properties +106 -0
- package/dist/i18n/nb-NO.js +55 -0
- package/dist/i18n/nb-NO.properties +106 -0
- package/dist/i18n/nl-NL.js +55 -0
- package/dist/i18n/nl-NL.properties +106 -0
- package/dist/i18n/pl-PL.js +55 -0
- package/dist/i18n/pl-PL.properties +106 -0
- package/dist/i18n/pt-BR.js +55 -0
- package/dist/i18n/pt-BR.properties +106 -0
- package/dist/i18n/ru-RU.js +55 -0
- package/dist/i18n/ru-RU.properties +106 -0
- package/dist/i18n/sv-SE.js +55 -0
- package/dist/i18n/sv-SE.properties +106 -0
- package/dist/i18n/tr-TR.js +55 -0
- package/dist/i18n/tr-TR.properties +106 -0
- package/dist/i18n/zh-CN.js +55 -0
- package/dist/i18n/zh-CN.properties +106 -0
- package/dist/i18n/zh-TW.js +55 -0
- package/dist/i18n/zh-TW.properties +106 -0
- package/dist/styles/AssigneeList.css +1 -0
- package/dist/styles/TaskDueDate.css +1 -0
- package/dist/styles/TaskItemFooter.css +1 -0
- package/dist/styles/TaskMessage.css +1 -0
- package/dist/styles/TaskState.css +1 -0
- package/dist/styles/activity-feed-list.css +1 -0
- package/dist/styles/activity-feed.css +1 -0
- package/dist/styles/app-activity-item.css +1 -0
- package/dist/styles/editor.css +1 -0
- package/dist/styles/empty-state.css +1 -0
- package/dist/styles/header.css +1 -0
- package/dist/styles/task-button.css +1 -0
- package/dist/styles/task-delete-confirmation-popover.css +1 -0
- package/dist/styles/task-options-menu.css +1 -0
- package/dist/styles/version-item.css +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/lib/activity-feed.d.ts +62 -0
- package/dist/types/lib/components/activity-feed-list/activity-feed-list.d.ts +7 -0
- package/dist/types/lib/components/activity-feed-list/index.d.ts +1 -0
- package/dist/types/lib/components/app-activity-item/app-activity-item.d.ts +13 -0
- package/dist/types/lib/components/app-activity-item/index.d.ts +1 -0
- package/dist/types/lib/components/app-activity-item/messages.d.ts +7 -0
- package/dist/types/lib/components/editor/editor.d.ts +3 -0
- package/dist/types/lib/components/editor/index.d.ts +1 -0
- package/dist/types/lib/components/empty-state/empty-state.d.ts +1 -0
- package/dist/types/lib/components/empty-state/index.d.ts +1 -0
- package/dist/types/lib/components/empty-state/messages.d.ts +12 -0
- package/dist/types/lib/components/header/header-filter-options.d.ts +16 -0
- package/dist/types/lib/components/header/header.d.ts +49 -0
- package/dist/types/lib/components/header/messages.d.ts +52 -0
- package/dist/types/lib/components/header/stories/shared.d.ts +13 -0
- package/dist/types/lib/components/header/task-button/index.d.ts +1 -0
- package/dist/types/lib/components/header/task-button/messages.d.ts +27 -0
- package/dist/types/lib/components/header/task-button/task-button.d.ts +8 -0
- package/dist/types/lib/components/task-item/TaskItem.d.ts +3 -0
- package/dist/types/lib/components/task-item/TaskItemFooter.d.ts +19 -0
- package/dist/types/lib/components/task-item/components/assignee-list/AssigneeList.d.ts +11 -0
- package/dist/types/lib/components/task-item/components/assignee-list/index.d.ts +1 -0
- package/dist/types/lib/components/task-item/components/task-due-date/TaskDueDate.d.ts +5 -0
- package/dist/types/lib/components/task-item/components/task-due-date/index.d.ts +1 -0
- package/dist/types/lib/components/task-item/components/task-message/MessageRenderer.d.ts +6 -0
- package/dist/types/lib/components/task-item/components/task-message/TaskMessage.d.ts +16 -0
- package/dist/types/lib/components/task-item/components/task-message/index.d.ts +3 -0
- package/dist/types/lib/components/task-item/components/task-message/messages.d.ts +28 -0
- package/dist/types/lib/components/task-item/components/task-message/task-delete-confirmation-popover.d.ts +11 -0
- package/dist/types/lib/components/task-item/components/task-message/task-options-menu.d.ts +13 -0
- package/dist/types/lib/components/task-item/components/task-message/types.d.ts +19 -0
- package/dist/types/lib/components/task-item/components/task-state/TaskState.d.ts +28 -0
- package/dist/types/lib/components/task-item/components/task-state/index.d.ts +2 -0
- package/dist/types/lib/components/task-item/components/task-state/messages.d.ts +23 -0
- package/dist/types/lib/components/task-item/index.d.ts +12 -0
- package/dist/types/lib/components/task-item/messages.d.ts +93 -0
- package/dist/types/lib/components/task-item/types.d.ts +106 -0
- package/dist/types/lib/components/task-item/utils/task-item-helpers.d.ts +4 -0
- package/dist/types/lib/components/user-avatar/getInitials.d.ts +1 -0
- package/dist/types/lib/components/user-avatar/index.d.ts +1 -0
- package/dist/types/lib/components/user-avatar/user-avatar.d.ts +11 -0
- package/dist/types/lib/components/version-item/delete-version-item/delete-version-item.d.ts +8 -0
- package/dist/types/lib/components/version-item/delete-version-item/index.d.ts +1 -0
- package/dist/types/lib/components/version-item/divider-version-item/divider-version-item.d.ts +5 -0
- package/dist/types/lib/components/version-item/divider-version-item/index.d.ts +1 -0
- package/dist/types/lib/components/version-item/index.d.ts +1 -0
- package/dist/types/lib/components/version-item/messages.d.ts +42 -0
- package/dist/types/lib/components/version-item/version-item.d.ts +23 -0
- package/dist/types/lib/scroll/create-activity-feed-scroll.d.ts +2 -0
- package/dist/types/lib/scroll/index.d.ts +4 -0
- package/dist/types/lib/scroll/types.d.ts +10 -0
- package/dist/types/lib/scroll/use-activity-feed-scroll.d.ts +6 -0
- package/dist/types/lib/stories/map-activity-item.d.ts +18 -0
- package/dist/types/lib/stories/shared.d.ts +15 -0
- package/dist/types/lib/test-utils/button-utils.d.ts +14 -0
- package/dist/types/lib/test-utils/index.d.ts +1 -0
- package/dist/types/lib/test-utils/mocks/index.d.ts +5 -0
- package/dist/types/lib/test-utils/mocks/mock-collaboration-props.d.ts +9 -0
- package/dist/types/lib/test-utils/mocks/mock-feed-items.d.ts +20 -0
- package/dist/types/lib/test-utils/mocks/mock-mention-context.d.ts +2 -0
- package/dist/types/lib/test-utils/mocks/mock-user-selector-props.d.ts +2 -0
- package/dist/types/lib/test-utils/mocks/mock-users.d.ts +55 -0
- package/dist/types/lib/test-utils/text-utils.d.ts +3 -0
- package/dist/types/lib/types/ActivityItem.d.ts +145 -0
- package/dist/types/lib/types/common.d.ts +82 -0
- package/dist/types/lib/types/index.d.ts +3 -0
- package/package.json +56 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { r as e } from "./types.js";
|
|
2
|
+
import { messages as t } from "../esm/lib/components/header/task-button/messages.js";
|
|
3
|
+
import { useRef as n, useState as r } from "react";
|
|
4
|
+
import { DropdownMenu as i, TriggerButton as a } from "@box/blueprint-web";
|
|
5
|
+
import { useIntl as o } from "react-intl";
|
|
6
|
+
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
7
|
+
import { ApprovalTask as l } from "@box/blueprint-web-assets/icons/Fill";
|
|
8
|
+
import { Tasks as u } from "@box/blueprint-web-assets/icons/MediumFilled";
|
|
9
|
+
import '../styles/task-button.css';var d = { content: "_content_7u0fn_1" }, f = ({ disabled: f = !1, onMenuItemClick: p }) => {
|
|
10
|
+
let { formatMessage: m } = o(), [h, g] = r(!1), _ = n(!1), v = (e) => {
|
|
11
|
+
_.current = !0, p(e), g(!1);
|
|
12
|
+
};
|
|
13
|
+
return /* @__PURE__ */ c(i.Root, {
|
|
14
|
+
menuItemsSize: "medium",
|
|
15
|
+
onOpenChange: g,
|
|
16
|
+
open: h,
|
|
17
|
+
children: [/* @__PURE__ */ s(i.Trigger, { children: /* @__PURE__ */ s(a, {
|
|
18
|
+
caretDirection: h ? "up" : "down",
|
|
19
|
+
disabled: f,
|
|
20
|
+
label: m(t.taskButtonLabel),
|
|
21
|
+
variant: "secondary"
|
|
22
|
+
}) }), /* @__PURE__ */ c(i.Content, {
|
|
23
|
+
align: "end",
|
|
24
|
+
className: d.content,
|
|
25
|
+
onCloseAutoFocus: (e) => {
|
|
26
|
+
_.current &&= (e.preventDefault(), !1);
|
|
27
|
+
},
|
|
28
|
+
children: [/* @__PURE__ */ c(i.Item, {
|
|
29
|
+
onSelect: () => v(e.GENERAL),
|
|
30
|
+
children: [/* @__PURE__ */ s(i.Item.StartElement, { icon: u }), /* @__PURE__ */ s(i.Item.MainContent, {
|
|
31
|
+
caption: m(t.generalTaskDescription),
|
|
32
|
+
label: m(t.generalTaskTitle)
|
|
33
|
+
})]
|
|
34
|
+
}), /* @__PURE__ */ c(i.Item, {
|
|
35
|
+
onSelect: () => v(e.APPROVAL),
|
|
36
|
+
children: [/* @__PURE__ */ s(i.Item.StartElement, { icon: l }), /* @__PURE__ */ s(i.Item.MainContent, {
|
|
37
|
+
caption: m(t.approvalTaskDescription),
|
|
38
|
+
label: m(t.approvalTaskTitle)
|
|
39
|
+
})]
|
|
40
|
+
})]
|
|
41
|
+
})]
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
export { f as t };
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import e from "../esm/lib/components/task-item/components/task-message/messages.js";
|
|
2
|
+
import { Button as t, Popover as n, Text as r } from "@box/blueprint-web";
|
|
3
|
+
import { useIntl as i } from "react-intl";
|
|
4
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
5
|
+
import '../styles/task-delete-confirmation-popover.css';var s = {
|
|
6
|
+
deletePopoverAnchorWrapper: "_deletePopoverAnchorWrapper_2wpp6_3",
|
|
7
|
+
deletePopoverAnchor: "_deletePopoverAnchor_2wpp6_3",
|
|
8
|
+
deletePopover: "_deletePopover_2wpp6_3",
|
|
9
|
+
footer: "_footer_2wpp6_25"
|
|
10
|
+
};
|
|
11
|
+
function c({ open: c, onOpenChange: l, onConfirm: u, onCancel: d }) {
|
|
12
|
+
let f = i();
|
|
13
|
+
return /* @__PURE__ */ a("div", {
|
|
14
|
+
className: s.deletePopoverAnchorWrapper,
|
|
15
|
+
children: /* @__PURE__ */ o(n.Root, {
|
|
16
|
+
modal: !1,
|
|
17
|
+
onOpenChange: l,
|
|
18
|
+
open: c,
|
|
19
|
+
children: [/* @__PURE__ */ a(n.Anchor, { children: /* @__PURE__ */ a(r, {
|
|
20
|
+
as: "span",
|
|
21
|
+
className: s.deletePopoverAnchor
|
|
22
|
+
}) }), /* @__PURE__ */ o(n.ContentContainer, {
|
|
23
|
+
align: "end",
|
|
24
|
+
"aria-label": f.formatMessage(e.deleteTaskConfirmationDialogAriaLabel),
|
|
25
|
+
className: s.deletePopover,
|
|
26
|
+
side: "bottom",
|
|
27
|
+
children: [/* @__PURE__ */ a(n.MainContent, { children: /* @__PURE__ */ a(r, {
|
|
28
|
+
as: "p",
|
|
29
|
+
color: "textOnLightDefault",
|
|
30
|
+
variant: "bodyDefault",
|
|
31
|
+
children: f.formatMessage(e.deleteTaskConfirmationBody)
|
|
32
|
+
}) }), /* @__PURE__ */ o(n.Footer, {
|
|
33
|
+
className: s.footer,
|
|
34
|
+
children: [/* @__PURE__ */ a(t, {
|
|
35
|
+
onClick: d,
|
|
36
|
+
size: "small",
|
|
37
|
+
variant: "secondary",
|
|
38
|
+
children: f.formatMessage(e.deleteTaskConfirmationCancel)
|
|
39
|
+
}), /* @__PURE__ */ a(t, {
|
|
40
|
+
onClick: u,
|
|
41
|
+
size: "small",
|
|
42
|
+
variant: "destructive",
|
|
43
|
+
children: f.formatMessage(e.deleteTaskConfirmationConfirm)
|
|
44
|
+
})]
|
|
45
|
+
})]
|
|
46
|
+
})]
|
|
47
|
+
})
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
export { c as t };
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import e from "../esm/lib/components/task-item/messages.js";
|
|
2
|
+
import t from "../esm/lib/components/task-item/components/task-message/messages.js";
|
|
3
|
+
import { t as n } from "./task-delete-confirmation-popover.js";
|
|
4
|
+
import { useEffect as r, useState as i } from "react";
|
|
5
|
+
import { DropdownMenu as a, IconButton as o, Text as s } from "@box/blueprint-web";
|
|
6
|
+
import { useIntl as c } from "react-intl";
|
|
7
|
+
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
8
|
+
import { Ellipsis as d, Pencil as f, Trash as p } from "@box/blueprint-web-assets/icons/Medium";
|
|
9
|
+
import { bpTextTextDestructiveOnLight as m } from "@box/blueprint-web-assets/tokens/tokens";
|
|
10
|
+
import '../styles/task-options-menu.css';var h = { shell: "_shell_zywke_2" };
|
|
11
|
+
function g({ canDelete: g = !0, canEdit: _ = !0, disabled: v, onEdit: y, onDelete: b, onOpenChange: x }) {
|
|
12
|
+
let { formatMessage: S } = c(), [C, w] = i(!1), [T, E] = i(!1);
|
|
13
|
+
return r(() => {
|
|
14
|
+
x?.(C || T);
|
|
15
|
+
}, [
|
|
16
|
+
C,
|
|
17
|
+
T,
|
|
18
|
+
x
|
|
19
|
+
]), /* @__PURE__ */ u("div", {
|
|
20
|
+
className: h.shell,
|
|
21
|
+
children: [/* @__PURE__ */ u(a.Root, {
|
|
22
|
+
onOpenChange: w,
|
|
23
|
+
children: [/* @__PURE__ */ l(a.Trigger, { children: /* @__PURE__ */ l(o, {
|
|
24
|
+
"aria-label": S(t.moreOptionsAriaLabel),
|
|
25
|
+
"data-no-expand": !0,
|
|
26
|
+
disabled: v || T,
|
|
27
|
+
icon: d,
|
|
28
|
+
size: "small"
|
|
29
|
+
}) }), /* @__PURE__ */ u(a.Content, {
|
|
30
|
+
align: "end",
|
|
31
|
+
children: [_ && y && /* @__PURE__ */ u(a.Item, {
|
|
32
|
+
onSelect: () => y(),
|
|
33
|
+
children: [/* @__PURE__ */ l(a.Item.StartElement, { icon: f }), /* @__PURE__ */ l(a.Item.MainContent, { label: S(e.taskEditMenuItem) })]
|
|
34
|
+
}), g && b && /* @__PURE__ */ u(a.Item, {
|
|
35
|
+
onSelect: () => {
|
|
36
|
+
E(!0);
|
|
37
|
+
},
|
|
38
|
+
children: [/* @__PURE__ */ l(a.Item.StartElement, { children: /* @__PURE__ */ l(p, { color: m }) }), /* @__PURE__ */ l(a.Item.MainContent, { children: /* @__PURE__ */ l(s, {
|
|
39
|
+
as: "span",
|
|
40
|
+
color: "textOnLightError",
|
|
41
|
+
variant: "bodyDefault",
|
|
42
|
+
children: S(e.taskDeleteMenuItem)
|
|
43
|
+
}) })]
|
|
44
|
+
})]
|
|
45
|
+
})]
|
|
46
|
+
}), g && b && /* @__PURE__ */ l(n, {
|
|
47
|
+
onCancel: () => {
|
|
48
|
+
E(!1);
|
|
49
|
+
},
|
|
50
|
+
onConfirm: () => {
|
|
51
|
+
b?.(), E(!1);
|
|
52
|
+
},
|
|
53
|
+
onOpenChange: E,
|
|
54
|
+
open: T
|
|
55
|
+
})]
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
export { g as t };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
var e = /* @__PURE__ */ function(e) {
|
|
2
|
+
return e.NOT_STARTED = "NOT_STARTED", e.IN_PROGRESS = "IN_PROGRESS", e.COMPLETED = "COMPLETED", e.APPROVED = "APPROVED", e.REJECTED = "REJECTED", e;
|
|
3
|
+
}({}), t = /* @__PURE__ */ function(e) {
|
|
4
|
+
return e.APPROVAL = "APPROVAL", e.GENERAL = "GENERAL", e;
|
|
5
|
+
}({}), n = /* @__PURE__ */ function(e) {
|
|
6
|
+
return e.ALL_ASSIGNEES = "ALL_ASSIGNEES", e.ANY_ASSIGNEE = "ANY_ASSIGNEE", e;
|
|
7
|
+
}({});
|
|
8
|
+
export { e as n, t as r, n as t };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import '../styles/version-item.css';var e = {
|
|
2
|
+
versionItem: "_versionItem_1y0lm_1",
|
|
3
|
+
line: "_line_1y0lm_10",
|
|
4
|
+
content: "_content_1y0lm_16",
|
|
5
|
+
badge: "_badge_1y0lm_22",
|
|
6
|
+
deleteItem: "_deleteItem_1y0lm_33",
|
|
7
|
+
deleteMessage: "_deleteMessage_1y0lm_40",
|
|
8
|
+
badgeButton: "_badgeButton_1y0lm_45"
|
|
9
|
+
};
|
|
10
|
+
export { e as t };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { t as e } from "../chunks/activity-feed.js";
|
|
2
|
+
import { t } from "../chunks/app-activity-item.js";
|
|
3
|
+
import "./lib/components/app-activity-item/index.js";
|
|
4
|
+
import { TaskItem as n } from "./lib/components/task-item/TaskItem.js";
|
|
5
|
+
import "./lib/components/task-item/index.js";
|
|
6
|
+
import { VersionItem as r } from "./lib/components/version-item/version-item.js";
|
|
7
|
+
import "./lib/components/version-item/index.js";
|
|
8
|
+
import { useActivityFeedScroll as i } from "./lib/scroll/use-activity-feed-scroll.js";
|
|
9
|
+
export { e as ActivityFeed, t as AppActivityItem, n as TaskItem, r as VersionItem, i as useActivityFeedScroll };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { t as e } from "../../chunks/activity-feed.js";
|
|
2
|
+
import "./components/app-activity-item/index.js";
|
|
3
|
+
import "./components/task-item/index.js";
|
|
4
|
+
import "./components/version-item/index.js";
|
|
5
|
+
import { useActivityFeedScroll as t } from "./scroll/use-activity-feed-scroll.js";
|
|
6
|
+
export { e as ActivityFeed, t as useActivityFeedScroll };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { defineMessages as e } from "react-intl";
|
|
2
|
+
var t = e({
|
|
3
|
+
body: {
|
|
4
|
+
id: "groupSharedFeatures.activityFeed.emptyState.body",
|
|
5
|
+
defaultMessage: "Leave a comment to start the conversation. Use @ to mention collaborators in this file."
|
|
6
|
+
},
|
|
7
|
+
title: {
|
|
8
|
+
id: "groupSharedFeatures.activityFeed.emptyState.title",
|
|
9
|
+
defaultMessage: "No comments yet"
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
export { t as messages };
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { messages as e } from "./messages.js";
|
|
2
|
+
import { DropdownMenu as t } from "@box/blueprint-web";
|
|
3
|
+
import { useIntl as n } from "react-intl";
|
|
4
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
5
|
+
var i = ({ caption: e, checked: n, label: i, onCheckedChange: a }) => /* @__PURE__ */ r(t.CheckboxItem, {
|
|
6
|
+
checked: n,
|
|
7
|
+
onCheckedChange: a,
|
|
8
|
+
onSelect: (e) => e.preventDefault(),
|
|
9
|
+
children: /* @__PURE__ */ r(t.Item.MainContent, {
|
|
10
|
+
caption: e,
|
|
11
|
+
label: i
|
|
12
|
+
})
|
|
13
|
+
}), a = ({ checked: t, hasTasks: a = !1, onCheckedChange: o }) => {
|
|
14
|
+
let { formatMessage: s } = n();
|
|
15
|
+
return /* @__PURE__ */ r(i, {
|
|
16
|
+
caption: s(a ? e.mentionMeDescriptionWithTasks : e.mentionMeDescription),
|
|
17
|
+
checked: t,
|
|
18
|
+
label: s(e.mentionMe),
|
|
19
|
+
onCheckedChange: o
|
|
20
|
+
});
|
|
21
|
+
}, o = ({ checked: t, onCheckedChange: a }) => {
|
|
22
|
+
let { formatMessage: o } = n();
|
|
23
|
+
return /* @__PURE__ */ r(i, {
|
|
24
|
+
caption: o(e.showResolvedCommentsDescription),
|
|
25
|
+
checked: t,
|
|
26
|
+
label: o(e.showResolvedComments),
|
|
27
|
+
onCheckedChange: a
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
export { a as HeaderMentionMeOption, o as HeaderShowResolvedOption };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { defineMessages as e } from "react-intl";
|
|
2
|
+
var t = e({
|
|
3
|
+
closeAriaLabel: {
|
|
4
|
+
id: "groupSharedFeatures.activityFeed.header.closeAriaLabel",
|
|
5
|
+
defaultMessage: "Close"
|
|
6
|
+
},
|
|
7
|
+
filterAriaLabel: {
|
|
8
|
+
id: "groupSharedFeatures.activityFeed.header.filterAriaLabel",
|
|
9
|
+
defaultMessage: "Filter"
|
|
10
|
+
},
|
|
11
|
+
filtersTitle: {
|
|
12
|
+
id: "groupSharedFeatures.activityFeed.header.filtersTitle",
|
|
13
|
+
defaultMessage: "Filters"
|
|
14
|
+
},
|
|
15
|
+
showResolvedComments: {
|
|
16
|
+
id: "groupSharedFeatures.activityFeed.header.showResolvedComments",
|
|
17
|
+
defaultMessage: "Show resolved comments"
|
|
18
|
+
},
|
|
19
|
+
showResolvedCommentsDescription: {
|
|
20
|
+
id: "groupSharedFeatures.activityFeed.header.showResolvedCommentsDescription",
|
|
21
|
+
defaultMessage: "Comments that were marked resolved"
|
|
22
|
+
},
|
|
23
|
+
hideResolvedComments: {
|
|
24
|
+
id: "groupSharedFeatures.activityFeed.header.hideResolvedComments",
|
|
25
|
+
defaultMessage: "Unresolved only"
|
|
26
|
+
},
|
|
27
|
+
hideResolvedCommentsDescription: {
|
|
28
|
+
id: "groupSharedFeatures.activityFeed.header.hideResolvedCommentsDescription",
|
|
29
|
+
defaultMessage: "Excludes comments that were marked resolved"
|
|
30
|
+
},
|
|
31
|
+
mentionMe: {
|
|
32
|
+
id: "groupSharedFeatures.activityFeed.header.mentionMe",
|
|
33
|
+
defaultMessage: "Mention me"
|
|
34
|
+
},
|
|
35
|
+
mentionMeDescription: {
|
|
36
|
+
id: "groupSharedFeatures.activityFeed.header.mentionMeDescription",
|
|
37
|
+
defaultMessage: "Comments where you're @mentioned"
|
|
38
|
+
},
|
|
39
|
+
mentionMeDescriptionWithTasks: {
|
|
40
|
+
id: "groupSharedFeatures.activityFeed.header.mentionMeDescriptionWithTasks",
|
|
41
|
+
defaultMessage: "Comments where you're @mentioned and tasks you're assigned in"
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
export { t as messages };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { defineMessages as e } from "react-intl";
|
|
2
|
+
var t = e({
|
|
3
|
+
approvalTaskDescription: {
|
|
4
|
+
id: "groupSharedFeatures.activityFeed.header.taskButton.approvalTaskDescription",
|
|
5
|
+
defaultMessage: "Assignees will be responsible for approving or rejecting tasks"
|
|
6
|
+
},
|
|
7
|
+
approvalTaskTitle: {
|
|
8
|
+
id: "groupSharedFeatures.activityFeed.header.taskButton.approvalTaskTitle",
|
|
9
|
+
defaultMessage: "Approval Task"
|
|
10
|
+
},
|
|
11
|
+
generalTaskDescription: {
|
|
12
|
+
id: "groupSharedFeatures.activityFeed.header.taskButton.generalTaskDescription",
|
|
13
|
+
defaultMessage: "Assignees will be responsible for marking tasks as complete"
|
|
14
|
+
},
|
|
15
|
+
generalTaskTitle: {
|
|
16
|
+
id: "groupSharedFeatures.activityFeed.header.taskButton.generalTaskTitle",
|
|
17
|
+
defaultMessage: "General Task"
|
|
18
|
+
},
|
|
19
|
+
taskButtonLabel: {
|
|
20
|
+
id: "groupSharedFeatures.activityFeed.header.taskButton.addTaskLabel",
|
|
21
|
+
defaultMessage: "Add Task"
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
export { t as messages };
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { n as e, r as t, t as n } from "../../../../chunks/types.js";
|
|
2
|
+
import { t as r } from "../../../../chunks/TaskMessage.js";
|
|
3
|
+
import i from "./messages.js";
|
|
4
|
+
import { t as a } from "../../../../chunks/TaskState.js";
|
|
5
|
+
import { n as o, t as s } from "../../../../chunks/TaskItemFooter.js";
|
|
6
|
+
import { taskAuthorToTaskMessageAuthor as c, taskDescriptionToDocument as l } from "./utils/task-item-helpers.js";
|
|
7
|
+
import { Card as u, Text as d } from "@box/blueprint-web";
|
|
8
|
+
import { useIntl as f } from "react-intl";
|
|
9
|
+
import { jsx as p, jsxs as m } from "react/jsx-runtime";
|
|
10
|
+
import { Stamp as h, Tasks as g } from "@box/blueprint-web-assets/icons/Medium";
|
|
11
|
+
function _({ assignees: _, author: v, completedAt: y, completionRule: b, createdAt: x, currentUserId: S, description: C, disabled: w = !1, dueDate: T, fileCount: E, getAvatarUrl: D, hasNextPage: O, id: k, onApprove: A, onComplete: j, onDelete: M, onEdit: N, onLoadAllAssignee: P, onReject: F, onView: I, permissions: L, status: R, taskType: z }) {
|
|
12
|
+
let B = f(), V = R === e.COMPLETED || R === e.APPROVED || R === e.REJECTED, H = S ? _.find((e) => e.id === S) : void 0, U = !!(!V && H && H.permissions?.canUpdate && H.status === e.NOT_STARTED), W = () => {
|
|
13
|
+
j?.(k);
|
|
14
|
+
}, G = () => {
|
|
15
|
+
A?.(k);
|
|
16
|
+
}, K = () => {
|
|
17
|
+
F?.(k);
|
|
18
|
+
}, q = () => {
|
|
19
|
+
I?.(k);
|
|
20
|
+
}, J = (E ?? 1) > 1 && !!I, Y = !J && z === t.GENERAL && U && !!j, X = !J && z === t.APPROVAL && U && !!(A || F), Z = l(C), Q = c(v, D), $ = L ? L.canDelete : !!M, ee = L ? L.canUpdate : !!N, te = J || Y || X, ne = /* @__PURE__ */ p(a, {
|
|
21
|
+
completedAt: y ?? x,
|
|
22
|
+
showCount: b === n.ALL_ASSIGNEES && !O,
|
|
23
|
+
totalCount: _.length,
|
|
24
|
+
variant: R
|
|
25
|
+
});
|
|
26
|
+
return /* @__PURE__ */ m(u, {
|
|
27
|
+
className: o.taskItem,
|
|
28
|
+
"data-task-id": k,
|
|
29
|
+
"data-testid": "task-item",
|
|
30
|
+
children: [/* @__PURE__ */ p("div", {
|
|
31
|
+
className: o.header,
|
|
32
|
+
children: /* @__PURE__ */ m("div", {
|
|
33
|
+
className: o.headerTitleRow,
|
|
34
|
+
children: [z === t.APPROVAL ? /* @__PURE__ */ p(h, {
|
|
35
|
+
"aria-hidden": !0,
|
|
36
|
+
className: o.headerLeadingIcon,
|
|
37
|
+
color: "currentColor"
|
|
38
|
+
}) : /* @__PURE__ */ p(g, {
|
|
39
|
+
"aria-hidden": !0,
|
|
40
|
+
className: o.headerLeadingIcon,
|
|
41
|
+
color: "currentColor"
|
|
42
|
+
}), /* @__PURE__ */ p(d, {
|
|
43
|
+
as: "h4",
|
|
44
|
+
variant: "bodyDefaultSemibold",
|
|
45
|
+
children: B.formatMessage(z === t.APPROVAL ? i.approvalTaskLabel : i.taskLabel)
|
|
46
|
+
})]
|
|
47
|
+
})
|
|
48
|
+
}), /* @__PURE__ */ m("div", {
|
|
49
|
+
className: o.cardBody,
|
|
50
|
+
children: [/* @__PURE__ */ p(r, {
|
|
51
|
+
author: Q,
|
|
52
|
+
canDelete: !w && $,
|
|
53
|
+
canEdit: !w && ee,
|
|
54
|
+
createdAt: x,
|
|
55
|
+
id: k,
|
|
56
|
+
message: Z,
|
|
57
|
+
onDelete: M,
|
|
58
|
+
onEdit: N,
|
|
59
|
+
showThreadedIndicator: V,
|
|
60
|
+
children: /* @__PURE__ */ p(s, {
|
|
61
|
+
assignees: _,
|
|
62
|
+
canApprove: !!A,
|
|
63
|
+
canReject: !!F,
|
|
64
|
+
disabled: w,
|
|
65
|
+
dueDate: T,
|
|
66
|
+
hasNextPage: O,
|
|
67
|
+
onApprove: G,
|
|
68
|
+
onComplete: W,
|
|
69
|
+
onLoadAllAssignee: P,
|
|
70
|
+
onReject: K,
|
|
71
|
+
onView: q,
|
|
72
|
+
showActionButtons: te,
|
|
73
|
+
showApprovalActions: X,
|
|
74
|
+
showGeneralComplete: Y,
|
|
75
|
+
showViewDetails: J
|
|
76
|
+
})
|
|
77
|
+
}), ne]
|
|
78
|
+
})]
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
export { _ as TaskItem, _ as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Text as e } from "@box/blueprint-web";
|
|
2
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
3
|
+
function n(n, r) {
|
|
4
|
+
return /* @__PURE__ */ t(e, {
|
|
5
|
+
as: "span",
|
|
6
|
+
variant: "bodyDefault",
|
|
7
|
+
children: n.text
|
|
8
|
+
}, r);
|
|
9
|
+
}
|
|
10
|
+
function r(r, i) {
|
|
11
|
+
return !r.content || r.content.length === 0 ? /* @__PURE__ */ t("br", {}, i) : /* @__PURE__ */ t(e, {
|
|
12
|
+
as: "p",
|
|
13
|
+
variant: "bodyDefault",
|
|
14
|
+
color: "textOnLightDefault",
|
|
15
|
+
children: r.content.map((e, t) => n(e, t))
|
|
16
|
+
}, i);
|
|
17
|
+
}
|
|
18
|
+
function i({ messageObject: e }) {
|
|
19
|
+
return !e || !e.content ? null : /* @__PURE__ */ t("div", { children: e.content.map((e, t) => r(e, t)) });
|
|
20
|
+
}
|
|
21
|
+
export { i as MessageRenderer };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { defineMessages as e } from "react-intl";
|
|
2
|
+
var t = e({
|
|
3
|
+
moreOptionsAriaLabel: {
|
|
4
|
+
id: "groupSharedFeatures.activityFeed.taskCard.moreOptionsAriaLabel",
|
|
5
|
+
defaultMessage: "More options button"
|
|
6
|
+
},
|
|
7
|
+
deleteTaskConfirmationBody: {
|
|
8
|
+
id: "groupSharedFeatures.activityFeed.taskCard.deleteTaskConfirmationBody",
|
|
9
|
+
defaultMessage: "Delete this task? This action can't be undone."
|
|
10
|
+
},
|
|
11
|
+
deleteTaskConfirmationDialogAriaLabel: {
|
|
12
|
+
id: "groupSharedFeatures.activityFeed.taskCard.deleteTaskConfirmationDialogAriaLabel",
|
|
13
|
+
defaultMessage: "Delete task confirmation"
|
|
14
|
+
},
|
|
15
|
+
deleteTaskConfirmationCancel: {
|
|
16
|
+
id: "groupSharedFeatures.activityFeed.taskCard.deleteTaskConfirmationCancel",
|
|
17
|
+
defaultMessage: "Cancel"
|
|
18
|
+
},
|
|
19
|
+
deleteTaskConfirmationConfirm: {
|
|
20
|
+
id: "groupSharedFeatures.activityFeed.taskCard.deleteTaskConfirmationConfirm",
|
|
21
|
+
defaultMessage: "Delete"
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
export { t as default };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { defineMessages as e } from "react-intl";
|
|
2
|
+
var t = e({
|
|
3
|
+
approvedHeadline: {
|
|
4
|
+
id: "groupSharedFeatures.activityFeed.taskState.approvedHeadline",
|
|
5
|
+
defaultMessage: "Approved"
|
|
6
|
+
},
|
|
7
|
+
completedHeadline: {
|
|
8
|
+
id: "groupSharedFeatures.activityFeed.taskState.completedHeadline",
|
|
9
|
+
defaultMessage: "Completed"
|
|
10
|
+
},
|
|
11
|
+
completedCountParenthetical: {
|
|
12
|
+
id: "groupSharedFeatures.activityFeed.taskState.completedCountParenthetical",
|
|
13
|
+
defaultMessage: "({completedCount} of {totalCount})"
|
|
14
|
+
},
|
|
15
|
+
rejectedHeadline: {
|
|
16
|
+
id: "groupSharedFeatures.activityFeed.taskState.rejectedHeadline",
|
|
17
|
+
defaultMessage: "Rejected"
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
export { t as default };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { n as e, r as t } from "../../../../chunks/types.js";
|
|
2
|
+
import n from "./messages.js";
|
|
3
|
+
import { t as r } from "../../../../chunks/AssigneeList.js";
|
|
4
|
+
import { t as i } from "../../../../chunks/TaskDueDate.js";
|
|
5
|
+
import { TaskItem as a } from "./TaskItem.js";
|
|
6
|
+
export { r as AssigneeList, i as TaskDueDate, a as TaskItem, e as TaskItemStatus, t as TaskType, n as messages };
|