@pega/cosmos-react-cs 2.1.6 → 2.1.7

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 (193) hide show
  1. package/lib/components/Article/Article.d.ts +32 -0
  2. package/lib/components/Article/Article.d.ts.map +1 -0
  3. package/lib/components/Article/Article.js +51 -0
  4. package/lib/components/Article/Article.js.map +1 -0
  5. package/lib/components/Article/ArticleFooter.d.ts +19 -0
  6. package/lib/components/Article/ArticleFooter.d.ts.map +1 -0
  7. package/lib/components/Article/ArticleFooter.js +40 -0
  8. package/lib/components/Article/ArticleFooter.js.map +1 -0
  9. package/lib/components/Article/ArticleSkeleton.d.ts +8 -0
  10. package/lib/components/Article/ArticleSkeleton.d.ts.map +1 -0
  11. package/lib/components/Article/ArticleSkeleton.js +15 -0
  12. package/lib/components/Article/ArticleSkeleton.js.map +1 -0
  13. package/lib/components/Article/index.d.ts +6 -0
  14. package/lib/components/Article/index.d.ts.map +1 -0
  15. package/lib/components/Article/index.js +3 -0
  16. package/lib/components/Article/index.js.map +1 -0
  17. package/lib/components/ArticleList/ArticleList.d.ts +17 -0
  18. package/lib/components/ArticleList/ArticleList.d.ts.map +1 -0
  19. package/lib/components/ArticleList/ArticleList.js +65 -0
  20. package/lib/components/ArticleList/ArticleList.js.map +1 -0
  21. package/lib/components/ArticleList/ArticleListHeader.d.ts +20 -0
  22. package/lib/components/ArticleList/ArticleListHeader.d.ts.map +1 -0
  23. package/lib/components/ArticleList/ArticleListHeader.js +68 -0
  24. package/lib/components/ArticleList/ArticleListHeader.js.map +1 -0
  25. package/lib/components/ArticleList/ArticleSummary.d.ts +14 -0
  26. package/lib/components/ArticleList/ArticleSummary.d.ts.map +1 -0
  27. package/lib/components/ArticleList/ArticleSummary.js +30 -0
  28. package/lib/components/ArticleList/ArticleSummary.js.map +1 -0
  29. package/lib/components/ArticleList/SummarySkeleton.d.ts +7 -0
  30. package/lib/components/ArticleList/SummarySkeleton.d.ts.map +1 -0
  31. package/lib/components/ArticleList/SummarySkeleton.js +9 -0
  32. package/lib/components/ArticleList/SummarySkeleton.js.map +1 -0
  33. package/lib/components/ArticleList/index.d.ts +7 -0
  34. package/lib/components/ArticleList/index.d.ts.map +1 -0
  35. package/lib/components/ArticleList/index.js +4 -0
  36. package/lib/components/ArticleList/index.js.map +1 -0
  37. package/lib/components/CSCaseView/CSCaseView.d.ts +9 -0
  38. package/lib/components/CSCaseView/CSCaseView.d.ts.map +1 -0
  39. package/lib/components/CSCaseView/CSCaseView.js +16 -0
  40. package/lib/components/CSCaseView/CSCaseView.js.map +1 -0
  41. package/lib/components/CSCaseView/index.d.ts +3 -0
  42. package/lib/components/CSCaseView/index.d.ts.map +1 -0
  43. package/lib/components/CSCaseView/index.js +2 -0
  44. package/lib/components/CSCaseView/index.js.map +1 -0
  45. package/lib/components/CallControlPanel/Call.d.ts +6 -0
  46. package/lib/components/CallControlPanel/Call.d.ts.map +1 -0
  47. package/lib/components/CallControlPanel/Call.js +142 -0
  48. package/lib/components/CallControlPanel/Call.js.map +1 -0
  49. package/lib/components/CallControlPanel/CallControlPanel.d.ts +6 -0
  50. package/lib/components/CallControlPanel/CallControlPanel.d.ts.map +1 -0
  51. package/lib/components/CallControlPanel/CallControlPanel.js +68 -0
  52. package/lib/components/CallControlPanel/CallControlPanel.js.map +1 -0
  53. package/lib/components/CallControlPanel/CallControlPanel.styles.d.ts +15 -0
  54. package/lib/components/CallControlPanel/CallControlPanel.styles.d.ts.map +1 -0
  55. package/lib/components/CallControlPanel/CallControlPanel.styles.js +118 -0
  56. package/lib/components/CallControlPanel/CallControlPanel.styles.js.map +1 -0
  57. package/lib/components/CallControlPanel/CallControlPanel.types.d.ts +112 -0
  58. package/lib/components/CallControlPanel/CallControlPanel.types.d.ts.map +1 -0
  59. package/lib/components/CallControlPanel/CallControlPanel.types.js +2 -0
  60. package/lib/components/CallControlPanel/CallControlPanel.types.js.map +1 -0
  61. package/lib/components/CallControlPanel/CallControlPanelIcon.d.ts +19 -0
  62. package/lib/components/CallControlPanel/CallControlPanelIcon.d.ts.map +1 -0
  63. package/lib/components/CallControlPanel/CallControlPanelIcon.js +74 -0
  64. package/lib/components/CallControlPanel/CallControlPanelIcon.js.map +1 -0
  65. package/lib/components/CallControlPanel/CallTransfer.d.ts +19 -0
  66. package/lib/components/CallControlPanel/CallTransfer.d.ts.map +1 -0
  67. package/lib/components/CallControlPanel/CallTransfer.js +121 -0
  68. package/lib/components/CallControlPanel/CallTransfer.js.map +1 -0
  69. package/lib/components/CallControlPanel/CalleePicker.d.ts +20 -0
  70. package/lib/components/CallControlPanel/CalleePicker.d.ts.map +1 -0
  71. package/lib/components/CallControlPanel/CalleePicker.js +61 -0
  72. package/lib/components/CallControlPanel/CalleePicker.js.map +1 -0
  73. package/lib/components/CallControlPanel/ContactsList.d.ts +23 -0
  74. package/lib/components/CallControlPanel/ContactsList.d.ts.map +1 -0
  75. package/lib/components/CallControlPanel/ContactsList.js +88 -0
  76. package/lib/components/CallControlPanel/ContactsList.js.map +1 -0
  77. package/lib/components/CallControlPanel/DTMFKeypad.d.ts +11 -0
  78. package/lib/components/CallControlPanel/DTMFKeypad.d.ts.map +1 -0
  79. package/lib/components/CallControlPanel/DTMFKeypad.js +23 -0
  80. package/lib/components/CallControlPanel/DTMFKeypad.js.map +1 -0
  81. package/lib/components/CallControlPanel/StopWatch.d.ts +9 -0
  82. package/lib/components/CallControlPanel/StopWatch.d.ts.map +1 -0
  83. package/lib/components/CallControlPanel/StopWatch.js +28 -0
  84. package/lib/components/CallControlPanel/StopWatch.js.map +1 -0
  85. package/lib/components/CallControlPanel/index.d.ts +5 -0
  86. package/lib/components/CallControlPanel/index.d.ts.map +1 -0
  87. package/lib/components/CallControlPanel/index.js +4 -0
  88. package/lib/components/CallControlPanel/index.js.map +1 -0
  89. package/lib/components/CallControlPanel/utils.d.ts +7 -0
  90. package/lib/components/CallControlPanel/utils.d.ts.map +1 -0
  91. package/lib/components/CallControlPanel/utils.js +35 -0
  92. package/lib/components/CallControlPanel/utils.js.map +1 -0
  93. package/lib/components/DialPad/DialPad.d.ts +16 -0
  94. package/lib/components/DialPad/DialPad.d.ts.map +1 -0
  95. package/lib/components/DialPad/DialPad.js +33 -0
  96. package/lib/components/DialPad/DialPad.js.map +1 -0
  97. package/lib/components/DialPad/DialPad.types.d.ts +33 -0
  98. package/lib/components/DialPad/DialPad.types.d.ts.map +1 -0
  99. package/lib/components/DialPad/DialPad.types.js +2 -0
  100. package/lib/components/DialPad/DialPad.types.js.map +1 -0
  101. package/lib/components/DialPad/DialPadKeyboard.d.ts +12 -0
  102. package/lib/components/DialPad/DialPadKeyboard.d.ts.map +1 -0
  103. package/lib/components/DialPad/DialPadKeyboard.js +87 -0
  104. package/lib/components/DialPad/DialPadKeyboard.js.map +1 -0
  105. package/lib/components/DialPad/DialPadKeyboard.styles.d.ts +5 -0
  106. package/lib/components/DialPad/DialPadKeyboard.styles.d.ts.map +1 -0
  107. package/lib/components/DialPad/DialPadKeyboard.styles.js +76 -0
  108. package/lib/components/DialPad/DialPadKeyboard.styles.js.map +1 -0
  109. package/lib/components/DialPad/KeyboardNavigation.d.ts +6 -0
  110. package/lib/components/DialPad/KeyboardNavigation.d.ts.map +1 -0
  111. package/lib/components/DialPad/KeyboardNavigation.js +156 -0
  112. package/lib/components/DialPad/KeyboardNavigation.js.map +1 -0
  113. package/lib/components/DialPad/index.d.ts +3 -0
  114. package/lib/components/DialPad/index.d.ts.map +1 -0
  115. package/lib/components/DialPad/index.js +2 -0
  116. package/lib/components/DialPad/index.js.map +1 -0
  117. package/lib/components/DialPad/utils.d.ts +4 -0
  118. package/lib/components/DialPad/utils.d.ts.map +1 -0
  119. package/lib/components/DialPad/utils.js +7 -0
  120. package/lib/components/DialPad/utils.js.map +1 -0
  121. package/lib/components/IntelligentGuidance/IntelligentGuidance.d.ts +6 -0
  122. package/lib/components/IntelligentGuidance/IntelligentGuidance.d.ts.map +1 -0
  123. package/lib/components/IntelligentGuidance/IntelligentGuidance.js +75 -0
  124. package/lib/components/IntelligentGuidance/IntelligentGuidance.js.map +1 -0
  125. package/lib/components/IntelligentGuidance/IntelligentGuidance.styles.d.ts +9 -0
  126. package/lib/components/IntelligentGuidance/IntelligentGuidance.styles.d.ts.map +1 -0
  127. package/lib/components/IntelligentGuidance/IntelligentGuidance.styles.js +142 -0
  128. package/lib/components/IntelligentGuidance/IntelligentGuidance.styles.js.map +1 -0
  129. package/lib/components/IntelligentGuidance/IntelligentGuidance.types.d.ts +31 -0
  130. package/lib/components/IntelligentGuidance/IntelligentGuidance.types.d.ts.map +1 -0
  131. package/lib/components/IntelligentGuidance/IntelligentGuidance.types.js +2 -0
  132. package/lib/components/IntelligentGuidance/IntelligentGuidance.types.js.map +1 -0
  133. package/lib/components/IntelligentGuidance/index.d.ts +3 -0
  134. package/lib/components/IntelligentGuidance/index.d.ts.map +1 -0
  135. package/lib/components/IntelligentGuidance/index.js +2 -0
  136. package/lib/components/IntelligentGuidance/index.js.map +1 -0
  137. package/lib/components/InteractionNotification/InteractionNotification.d.ts +26 -0
  138. package/lib/components/InteractionNotification/InteractionNotification.d.ts.map +1 -0
  139. package/lib/components/InteractionNotification/InteractionNotification.js +78 -0
  140. package/lib/components/InteractionNotification/InteractionNotification.js.map +1 -0
  141. package/lib/components/InteractionNotification/index.d.ts +2 -0
  142. package/lib/components/InteractionNotification/index.d.ts.map +1 -0
  143. package/lib/components/InteractionNotification/index.js +2 -0
  144. package/lib/components/InteractionNotification/index.js.map +1 -0
  145. package/lib/components/InteractionTimer/InteractionTimer.d.ts +29 -0
  146. package/lib/components/InteractionTimer/InteractionTimer.d.ts.map +1 -0
  147. package/lib/components/InteractionTimer/InteractionTimer.js +72 -0
  148. package/lib/components/InteractionTimer/InteractionTimer.js.map +1 -0
  149. package/lib/components/InteractionTimer/index.d.ts +2 -0
  150. package/lib/components/InteractionTimer/index.d.ts.map +1 -0
  151. package/lib/components/InteractionTimer/index.js +2 -0
  152. package/lib/components/InteractionTimer/index.js.map +1 -0
  153. package/lib/components/TaskManager/Picker/Picker.d.ts +6 -0
  154. package/lib/components/TaskManager/Picker/Picker.d.ts.map +1 -0
  155. package/lib/components/TaskManager/Picker/Picker.js +171 -0
  156. package/lib/components/TaskManager/Picker/Picker.js.map +1 -0
  157. package/lib/components/TaskManager/Picker/Picker.types.d.ts +27 -0
  158. package/lib/components/TaskManager/Picker/Picker.types.d.ts.map +1 -0
  159. package/lib/components/TaskManager/Picker/Picker.types.js +2 -0
  160. package/lib/components/TaskManager/Picker/Picker.types.js.map +1 -0
  161. package/lib/components/TaskManager/TaskManager.context.d.ts +5 -0
  162. package/lib/components/TaskManager/TaskManager.context.d.ts.map +1 -0
  163. package/lib/components/TaskManager/TaskManager.context.js +3 -0
  164. package/lib/components/TaskManager/TaskManager.context.js.map +1 -0
  165. package/lib/components/TaskManager/TaskManager.d.ts +6 -0
  166. package/lib/components/TaskManager/TaskManager.d.ts.map +1 -0
  167. package/lib/components/TaskManager/TaskManager.js +76 -0
  168. package/lib/components/TaskManager/TaskManager.js.map +1 -0
  169. package/lib/components/TaskManager/TaskManager.styles.d.ts +20 -0
  170. package/lib/components/TaskManager/TaskManager.styles.d.ts.map +1 -0
  171. package/lib/components/TaskManager/TaskManager.styles.js +232 -0
  172. package/lib/components/TaskManager/TaskManager.styles.js.map +1 -0
  173. package/lib/components/TaskManager/TaskManager.types.d.ts +74 -0
  174. package/lib/components/TaskManager/TaskManager.types.d.ts.map +1 -0
  175. package/lib/components/TaskManager/TaskManager.types.js +2 -0
  176. package/lib/components/TaskManager/TaskManager.types.js.map +1 -0
  177. package/lib/components/TaskManager/TaskManagerTabs.d.ts +6 -0
  178. package/lib/components/TaskManager/TaskManagerTabs.d.ts.map +1 -0
  179. package/lib/components/TaskManager/TaskManagerTabs.js +159 -0
  180. package/lib/components/TaskManager/TaskManagerTabs.js.map +1 -0
  181. package/lib/components/TaskManager/TaskView.d.ts +6 -0
  182. package/lib/components/TaskManager/TaskView.d.ts.map +1 -0
  183. package/lib/components/TaskManager/TaskView.js +10 -0
  184. package/lib/components/TaskManager/TaskView.js.map +1 -0
  185. package/lib/components/TaskManager/index.d.ts +5 -0
  186. package/lib/components/TaskManager/index.d.ts.map +1 -0
  187. package/lib/components/TaskManager/index.js +4 -0
  188. package/lib/components/TaskManager/index.js.map +1 -0
  189. package/lib/index.d.ts +18 -0
  190. package/lib/index.d.ts.map +1 -0
  191. package/lib/index.js +19 -0
  192. package/lib/index.js.map +1 -0
  193. package/package.json +3 -3
@@ -0,0 +1,76 @@
1
+ import { createElement as _createElement } from "react";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { forwardRef, useRef, useEffect, useState } from 'react';
4
+ import { remToPx, stripUnit } from 'polished';
5
+ import { Flex, Icon, registerIcon, Text, Status, useI18n, useConsolidatedRef, useElement, Button, Grid, SummaryItem, EmptyState, useTheme, tryCatch } from '@pega/cosmos-react-core';
6
+ import * as flagFinishIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/flag-finish.icon';
7
+ import * as plusIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/plus.icon';
8
+ import { StyledTaskManager, StyledTaskManagerBanner, StyledTaskSummaryItem, StyledPopover, StyledTaskMain } from './TaskManager.styles';
9
+ import TaskManagerContext from './TaskManager.context';
10
+ import TaskManagerTabs from './TaskManagerTabs';
11
+ import TaskView from './TaskView';
12
+ import Picker from './Picker/Picker';
13
+ registerIcon(plusIcon, flagFinishIcon);
14
+ const TaskManager = forwardRef((props, ref) => {
15
+ const { tasks = [], emptyText, onTaskLaunch, onTaskDismiss, addTask, wrapUp, main, banner, ...restProps } = props;
16
+ const t = useI18n();
17
+ const TaskManagerTabsRef = useRef(null);
18
+ const consolidatedRef = useConsolidatedRef(ref);
19
+ const hasDrawer = tasks.filter(task => task.active).length > 0 || !!wrapUp?.active;
20
+ const [showPicker, setShowPicker] = useState(false);
21
+ const [addTaskEl, setAddTaskEl] = useElement(null);
22
+ const theme = useTheme();
23
+ useEffect(() => {
24
+ if (TaskManagerTabsRef.current && consolidatedRef.current) {
25
+ consolidatedRef.current.style.minHeight = `${TaskManagerTabsRef.current.scrollHeight}px`;
26
+ }
27
+ else if (consolidatedRef.current) {
28
+ consolidatedRef.current.style.minHeight = '0';
29
+ }
30
+ }, [tasks, addTask]);
31
+ return (_jsx(TaskManagerContext.Provider, { value: {
32
+ addTask,
33
+ wrapUp,
34
+ tasks,
35
+ onTaskLaunch
36
+ }, children: _jsxs("div", { children: [banner && (_jsxs(Flex, { as: StyledTaskManagerBanner, container: {
37
+ alignItems: 'center'
38
+ }, "aria-live": 'polite', children: [_jsx(Icon, { name: banner.icon }, void 0), _jsx(Text, { variant: 'h4', children: banner.content }, void 0)] }, void 0)), _jsx(StyledTaskManager, { ...restProps, ref: consolidatedRef, hasDrawer: hasDrawer, children: _jsxs(TaskView, { header: _jsx(Text, { variant: 'h2', children: t('task_manager_tasks') }, void 0), actions: _jsxs(Flex, { container: {
39
+ itemGap: 1
40
+ }, children: [wrapUp && (_jsx(Button, { variant: 'secondary', onClick: wrapUp.onWrapUp, children: _jsxs(Flex, { container: {
41
+ itemGap: 1,
42
+ alignItems: 'center'
43
+ }, children: [_jsx(Icon, { name: 'flag-finish' }, void 0), _jsx("span", { children: t('task_manager_wrap_up') }, void 0)] }, void 0) }, void 0)), addTask && (_jsxs(_Fragment, { children: [_jsx(Button, { variant: 'primary', onClick: () => setShowPicker(cur => !cur), ref: setAddTaskEl, children: _jsxs(Flex, { container: {
44
+ gap: 1,
45
+ alignItems: 'center'
46
+ }, children: [_jsx(Icon, { name: 'plus' }, void 0), _jsx("span", { children: t('task_manager_add_task') }, void 0)] }, void 0) }, void 0), _jsx(StyledPopover, { show: showPicker, target: addTaskEl, placement: 'bottom-end', modifiers: [
47
+ {
48
+ name: 'offset',
49
+ options: {
50
+ offset: [
51
+ tryCatch(() => stripUnit(remToPx(theme.base.spacing)), () => 8),
52
+ tryCatch(() => stripUnit(remToPx(theme.base.spacing)), () => 8)
53
+ ]
54
+ }
55
+ }
56
+ ], children: _jsx(Picker, { scrollAt: 10, emptyText: t('task_manager_search_results_empty_text'), items: addTask?.items, onAdd: (selectedItems) => {
57
+ if (addTask.onAdd) {
58
+ addTask?.onAdd(selectedItems);
59
+ }
60
+ setShowPicker(false);
61
+ }, onCancel: () => {
62
+ setShowPicker(false);
63
+ }, ref: addTask.ref, placeholder: t('search_tasks') }, void 0) }, void 0)] }, void 0))] }, void 0), children: [hasDrawer && _jsx(TaskManagerTabs, { ref: TaskManagerTabsRef }, void 0), hasDrawer && _jsx(StyledTaskMain, { children: main }, void 0), !hasDrawer && (_jsxs(Grid, { as: 'ul', container: true, children: [tasks.map(({ name, id, status, variant = 'in-progress', meta, icon, ...restTaskProps }) => {
64
+ return (_createElement(SummaryItem, { ...restTaskProps, key: id, as: StyledTaskSummaryItem, variant: variant, primary: _jsx(Text, { variant: 'h4', children: name }, void 0), secondary: _jsxs(_Fragment, { children: [!status && meta && _jsx(Text, { variant: 'secondary', children: meta }, void 0), status && _jsx(Status, { variant: status.variant, children: status.text }, void 0)] }, void 0), visual: _jsx(Icon, { name: icon }, void 0), actions: _jsxs(Flex, { container: { gap: 1 }, children: [(variant === 'queued' || variant === 'suggested') && (_jsxs(_Fragment, { children: [_jsx(Button, { variant: 'simple', "aria-label": t('dismiss_label_a11y', [name]), onClick: () => {
65
+ onTaskDismiss?.(id);
66
+ }, children: t('dismiss_label') }, void 0), _jsx(Button, { variant: 'secondary', "aria-label": t('go_label_a11y', [name]), onClick: () => {
67
+ onTaskLaunch?.(id);
68
+ }, children: t('go_label') }, void 0)] }, void 0)), variant === 'in-progress' && (_jsx(Button, { variant: 'secondary', "aria-label": t('continue_label_a11y', [name]), onClick: () => {
69
+ onTaskLaunch?.(id);
70
+ }, children: t('continue_label') }, void 0)), variant === 'resolved' && (_jsx(Button, { variant: 'secondary', "aria-label": t('review_label_a11y', [name]), onClick: () => {
71
+ onTaskLaunch?.(id);
72
+ }, children: t('review_label') }, void 0))] }, void 0) }));
73
+ }), tasks.length === 0 && _jsx(EmptyState, { message: emptyText }, void 0)] }, void 0))] }, void 0) }, void 0)] }, void 0) }, void 0));
74
+ });
75
+ export default TaskManager;
76
+ //# sourceMappingURL=TaskManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskManager.js","sourceRoot":"","sources":["../../../src/components/TaskManager/TaskManager.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FunctionComponent, PropsWithoutRef, forwardRef, useRef, useEffect, useState } from 'react';\nimport { remToPx, stripUnit } from 'polished';\n\nimport {\n Flex,\n Icon,\n registerIcon,\n Text,\n Status,\n useI18n,\n useConsolidatedRef,\n useElement,\n Button,\n Grid,\n SummaryItem,\n EmptyState,\n useTheme,\n tryCatch,\n ForwardProps\n} from '@pega/cosmos-react-core';\nimport * as flagFinishIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/flag-finish.icon';\nimport * as plusIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/plus.icon';\n\nimport {\n StyledTaskManager,\n StyledTaskManagerBanner,\n StyledTaskSummaryItem,\n StyledPopover,\n StyledTaskMain\n} from './TaskManager.styles';\nimport TaskManagerContext from './TaskManager.context';\nimport TaskManagerTabs from './TaskManagerTabs';\nimport { TaskManagerProps } from './TaskManager.types';\nimport TaskView from './TaskView';\nimport Picker from './Picker/Picker';\nimport { SelectedItemProps } from './Picker/Picker.types';\n\nregisterIcon(plusIcon, flagFinishIcon);\n\nconst TaskManager: FunctionComponent<TaskManagerProps & ForwardProps> = forwardRef(\n (props: PropsWithoutRef<TaskManagerProps>, ref: TaskManagerProps['ref']) => {\n const {\n tasks = [],\n emptyText,\n onTaskLaunch,\n onTaskDismiss,\n addTask,\n wrapUp,\n main,\n banner,\n ...restProps\n } = props;\n const t = useI18n();\n const TaskManagerTabsRef = useRef<HTMLDivElement>(null);\n const consolidatedRef = useConsolidatedRef(ref);\n const hasDrawer = tasks.filter(task => task.active).length > 0 || !!wrapUp?.active;\n const [showPicker, setShowPicker] = useState(false);\n const [addTaskEl, setAddTaskEl] = useElement<HTMLButtonElement>(null);\n const theme = useTheme();\n\n useEffect(() => {\n if (TaskManagerTabsRef.current && consolidatedRef.current) {\n consolidatedRef.current.style.minHeight = `${TaskManagerTabsRef.current.scrollHeight}px`;\n } else if (consolidatedRef.current) {\n consolidatedRef.current.style.minHeight = '0';\n }\n }, [tasks, addTask]);\n\n return (\n <TaskManagerContext.Provider\n value={{\n addTask,\n wrapUp,\n tasks,\n onTaskLaunch\n }}\n >\n <div>\n {banner && (\n <Flex\n as={StyledTaskManagerBanner}\n container={{\n alignItems: 'center'\n }}\n aria-live='polite'\n >\n <Icon name={banner.icon} />\n <Text variant='h4'>{banner.content}</Text>\n </Flex>\n )}\n <StyledTaskManager {...restProps} ref={consolidatedRef} hasDrawer={hasDrawer}>\n <TaskView\n header={<Text variant='h2'>{t('task_manager_tasks')}</Text>}\n actions={\n <Flex\n container={{\n itemGap: 1\n }}\n >\n {wrapUp && (\n <Button variant='secondary' onClick={wrapUp.onWrapUp}>\n <Flex\n container={{\n itemGap: 1,\n alignItems: 'center'\n }}\n >\n <Icon name='flag-finish' />\n <span>{t('task_manager_wrap_up')}</span>\n </Flex>\n </Button>\n )}\n {addTask && (\n <>\n <Button\n variant='primary'\n onClick={() => setShowPicker(cur => !cur)}\n ref={setAddTaskEl}\n >\n <Flex\n container={{\n gap: 1,\n alignItems: 'center'\n }}\n >\n <Icon name='plus' />\n <span>{t('task_manager_add_task')}</span>\n </Flex>\n </Button>\n <StyledPopover\n show={showPicker}\n target={addTaskEl}\n placement='bottom-end'\n modifiers={[\n {\n name: 'offset',\n options: {\n offset: [\n tryCatch(\n () => stripUnit(remToPx(theme.base.spacing)),\n () => 8\n ),\n tryCatch(\n () => stripUnit(remToPx(theme.base.spacing)),\n () => 8\n )\n ]\n }\n }\n ]}\n >\n <Picker\n scrollAt={10}\n emptyText={t('task_manager_search_results_empty_text')}\n items={addTask?.items}\n onAdd={(selectedItems: SelectedItemProps[]) => {\n if (addTask.onAdd) {\n addTask?.onAdd(selectedItems);\n }\n setShowPicker(false);\n }}\n onCancel={() => {\n setShowPicker(false);\n }}\n ref={addTask.ref}\n placeholder={t('search_tasks')}\n />\n </StyledPopover>\n </>\n )}\n </Flex>\n }\n >\n {hasDrawer && <TaskManagerTabs ref={TaskManagerTabsRef} />}\n {hasDrawer && <StyledTaskMain>{main}</StyledTaskMain>}\n {!hasDrawer && (\n <Grid as='ul' container>\n {tasks.map(\n ({\n name,\n id,\n status,\n variant = 'in-progress',\n meta,\n icon,\n ...restTaskProps\n }) => {\n return (\n <SummaryItem\n {...restTaskProps}\n key={id}\n as={StyledTaskSummaryItem}\n variant={variant}\n primary={<Text variant='h4'>{name}</Text>}\n secondary={\n <>\n {!status && meta && <Text variant='secondary'>{meta}</Text>}\n {status && <Status variant={status.variant}>{status.text}</Status>}\n </>\n }\n visual={<Icon name={icon} />}\n actions={\n <Flex container={{ gap: 1 }}>\n {(variant === 'queued' || variant === 'suggested') && (\n <>\n <Button\n variant='simple'\n aria-label={t('dismiss_label_a11y', [name])}\n onClick={() => {\n onTaskDismiss?.(id);\n }}\n >\n {t('dismiss_label')}\n </Button>\n <Button\n variant='secondary'\n aria-label={t('go_label_a11y', [name])}\n onClick={() => {\n onTaskLaunch?.(id);\n }}\n >\n {t('go_label')}\n </Button>\n </>\n )}\n {variant === 'in-progress' && (\n <Button\n variant='secondary'\n aria-label={t('continue_label_a11y', [name])}\n onClick={() => {\n onTaskLaunch?.(id);\n }}\n >\n {t('continue_label')}\n </Button>\n )}\n {variant === 'resolved' && (\n <Button\n variant='secondary'\n aria-label={t('review_label_a11y', [name])}\n onClick={() => {\n onTaskLaunch?.(id);\n }}\n >\n {t('review_label')}\n </Button>\n )}\n </Flex>\n }\n />\n );\n }\n )}\n {tasks.length === 0 && <EmptyState message={emptyText} />}\n </Grid>\n )}\n </TaskView>\n </StyledTaskManager>\n </div>\n </TaskManagerContext.Provider>\n );\n }\n);\n\nexport default TaskManager;\n"]}
@@ -0,0 +1,20 @@
1
+ /// <reference types="react" />
2
+ import { TaskManagerTabProps } from './TaskManager.types';
3
+ export declare const StyledTaskMain: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
4
+ export declare const StyledTaskManagerTabsSummaryItem: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
5
+ export declare const StyledTaskManagerTabs: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
6
+ export declare const StyledTaskSummaryItem: import("styled-components").StyledComponent<"li", import("styled-components").DefaultTheme, {}, never>;
7
+ export declare const StyleTaskName: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {}, never>;
8
+ export declare const StyledTaskStatus: import("styled-components").StyledComponent<import("react").FC<import("@pega/cosmos-react-core").StatusProps & import("@pega/cosmos-react-core").ForwardProps>, import("styled-components").DefaultTheme, {}, never>;
9
+ export declare const StyledTaskManagerTab: import("styled-components").StyledComponent<"li", import("styled-components").DefaultTheme, TaskManagerTabProps, never>;
10
+ export declare const StyledTasksTabList: import("styled-components").StyledComponent<"ul", import("styled-components").DefaultTheme, {}, never>;
11
+ export declare const StyledStickyCardHeader: import("styled-components").StyledComponent<"header", import("styled-components").DefaultTheme, import("@pega/cosmos-react-core").CardHeaderProps, never>;
12
+ export declare const StyledOverflowTabMenu: import("styled-components").StyledComponent<import("react").FunctionComponent<import("@pega/cosmos-react-core").ForwardProps & import("@pega/cosmos-react-core").MenuButtonProps>, import("styled-components").DefaultTheme, {}, never>;
13
+ interface StyledTaskManagerProps {
14
+ hasDrawer?: boolean;
15
+ }
16
+ export declare const StyledTaskManager: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, StyledTaskManagerProps, never>;
17
+ export declare const StyledTaskManagerBanner: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
18
+ export declare const StyledPopover: import("styled-components").StyledComponent<(<Modifiers extends string = string>(props: import("@pega/cosmos-react-core").PopoverProps<Modifiers> & import("@pega/cosmos-react-core").ForwardProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | null), import("styled-components").DefaultTheme, {}, never>;
19
+ export default StyledTaskManager;
20
+ //# sourceMappingURL=TaskManager.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskManager.styles.d.ts","sourceRoot":"","sources":["../../../src/components/TaskManager/TaskManager.styles.ts"],"names":[],"mappings":";AAkBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,eAAO,MAAM,cAAc,yGAAe,CAAC;AAC3C,eAAO,MAAM,gCAAgC,yGAAe,CAAC;AAE7D,eAAO,MAAM,qBAAqB,yGAahC,CAAC;AAIH,eAAO,MAAM,qBAAqB,wGAWhC,CAAC;AAIH,eAAO,MAAM,aAAa,0GAMxB,CAAC;AAEH,eAAO,MAAM,gBAAgB,sNAI3B,CAAC;AAKH,eAAO,MAAM,oBAAoB,yHAqE/B,CAAC;AAIH,eAAO,MAAM,kBAAkB,wGAwB7B,CAAC;AAIH,eAAO,MAAM,sBAAsB,2JASjC,CAAC;AACH,eAAO,MAAM,qBAAqB,yOAahC,CAAC;AAKH,UAAU,sBAAsB;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,6HAqC5B,CAAC;AAIH,eAAO,MAAM,uBAAuB,yGAYlC,CAAC;AAIH,eAAO,MAAM,aAAa,6VAKxB,CAAC;AAIH,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,232 @@
1
+ import styled, { css } from 'styled-components';
2
+ import { mix, transparentize } from 'polished';
3
+ import { defaultThemeProp, MenuButton, Popover, tryCatch, Status, StyledCard, StyledEmptyState, StyledFlex } from '@pega/cosmos-react-core';
4
+ import { StyledCardHeader } from '@pega/cosmos-react-core/lib/components/Card/CardHeader';
5
+ import { StyledCardContent } from '@pega/cosmos-react-core/lib/components/Card/CardContent';
6
+ import { StyledStatus } from '@pega/cosmos-react-core/lib/components/Badges/Status';
7
+ import { StyledVisual } from '@pega/cosmos-react-core/lib/components/SummaryItem/SummaryItem';
8
+ export const StyledTaskMain = styled.div ``;
9
+ export const StyledTaskManagerTabsSummaryItem = styled.div ``;
10
+ export const StyledTaskManagerTabs = styled.div(({ theme }) => {
11
+ return css `
12
+ background-color: ${theme.base.palette['secondary-background']};
13
+
14
+ ::before {
15
+ content: '';
16
+ border-block-end: 0.0625rem solid ${theme.base.palette['border-line']};
17
+ height: 0.0625rem;
18
+ width: 100%;
19
+ position: absolute;
20
+ inset-block-end: 0;
21
+ }
22
+ `;
23
+ });
24
+ StyledTaskManagerTabs.defaultProps = defaultThemeProp;
25
+ export const StyledTaskSummaryItem = styled.li(({ theme }) => {
26
+ const { base: { spacing } } = theme;
27
+ return css `
28
+ min-height: 2.5rem;
29
+ padding: ${spacing};
30
+ &:not(:last-child) {
31
+ border-block-end: 0.0625rem solid ${theme.base.palette['border-line']};
32
+ }
33
+ `;
34
+ });
35
+ StyledTaskSummaryItem.defaultProps = defaultThemeProp;
36
+ export const StyleTaskName = styled.span(() => {
37
+ return css `
38
+ overflow: hidden;
39
+ text-overflow: ellipsis;
40
+ white-space: nowrap;
41
+ `;
42
+ });
43
+ export const StyledTaskStatus = styled(Status)(({ theme }) => {
44
+ return css `
45
+ margin-block-start: calc(0.25 * ${theme.base.spacing});
46
+ `;
47
+ });
48
+ StyleTaskName.defaultProps = defaultThemeProp;
49
+ StyledTaskStatus.defaultProps = defaultThemeProp;
50
+ export const StyledTaskManagerTab = styled.li(({ active = false, theme }) => {
51
+ const hoverColor = tryCatch(() => mix(0.85, theme.base.palette['primary-background'], theme.base.palette.interactive));
52
+ return css `
53
+ max-width: 20rem;
54
+ min-width: 18rem;
55
+ white-space: nowrap;
56
+ border-inline-end: 0.065rem solid ${theme.base.palette['border-line']};
57
+ text-align: start;
58
+ outline: none;
59
+ overflow: hidden;
60
+ display: flex;
61
+ align-items: center;
62
+ position: relative;
63
+ flex: 1;
64
+ min-height: 2.5rem;
65
+ cursor: pointer;
66
+ padding-block: calc(0.5 * ${theme.base.spacing});
67
+ padding-inline: calc(2 * ${theme.base.spacing}) calc(1 * ${theme.base.spacing});
68
+ background-color: ${active &&
69
+ css `
70
+ ${theme.base.palette['primary-background']};
71
+ `};
72
+
73
+ & + & {
74
+ margin-inline-start: 0;
75
+ }
76
+
77
+ > ${StyledTaskManagerTabsSummaryItem} {
78
+ overflow-x: hidden;
79
+ }
80
+
81
+ > ${StyledTaskManagerTabsSummaryItem} > ${StyledVisual} {
82
+ ${active &&
83
+ css `
84
+ background: ${theme.base.palette.interactive};
85
+ color: ${theme.base.colors.white};
86
+ `}
87
+ }
88
+ ${active &&
89
+ css `
90
+ ::after {
91
+ position: absolute;
92
+ content: '';
93
+ height: 0.0625rem;
94
+ width: 100%;
95
+ background-color: ${theme.base.palette['primary-background']};
96
+ inset-inline-start: 0;
97
+ inset-block-end: 0;
98
+ }
99
+ `}
100
+
101
+ &:hover,
102
+ &:focus {
103
+ background-color: ${hoverColor};
104
+ ::after {
105
+ background-color: ${hoverColor};
106
+ }
107
+ box-shadow: none;
108
+ }
109
+ &:focus {
110
+ box-shadow: inset ${theme.base.shadow.focus};
111
+ }
112
+
113
+ > ${StyledFlex} {
114
+ max-width: 100%;
115
+ }
116
+ `;
117
+ });
118
+ StyledTaskManagerTab.defaultProps = defaultThemeProp;
119
+ export const StyledTasksTabList = styled.ul(({ theme }) => {
120
+ const primaryColor = theme.base.palette.interactive;
121
+ const lightenedColor = tryCatch(() => transparentize(0.5, primaryColor)) ?? '';
122
+ return css `
123
+ position: relative;
124
+ display: flex;
125
+ flex-grow: 1;
126
+ overflow: scroll;
127
+ -ms-overflow-style: none;
128
+ &::-webkit-scrollbar {
129
+ display: none;
130
+ }
131
+ scrollbar-width: none;
132
+ ${StyledTaskManagerTab} {
133
+ margin-inline-start: 0;
134
+ &:hover,
135
+ &:focus {
136
+ ::before {
137
+ display: block;
138
+ background-color: ${lightenedColor};
139
+ }
140
+ }
141
+ }
142
+ `;
143
+ });
144
+ StyledTasksTabList.defaultProps = defaultThemeProp;
145
+ export const StyledStickyCardHeader = styled(StyledCardHeader)(({ theme }) => {
146
+ const primaryBackgroundColor = theme.base.palette['primary-background'];
147
+ return css `
148
+ inset-block-start: 0;
149
+ inset-inline-start: 0;
150
+ background: ${primaryBackgroundColor};
151
+ height: calc(3.5rem - 0.0625rem);
152
+ border-block-end: 0.0625rem solid ${theme.base.palette['border-line']};
153
+ `;
154
+ });
155
+ export const StyledOverflowTabMenu = styled(MenuButton)(({ theme }) => {
156
+ return css `
157
+ border-radius: 0;
158
+ display: inline-block;
159
+ position: relative;
160
+ inset-inline-end: 0;
161
+ inset-block-start: 0;
162
+ align-self: stretch;
163
+ margin-inline-start: auto;
164
+ background-color: ${theme.base.palette['secondary-background']};
165
+ border-block-end: 0.0625rem solid ${theme.base.palette['border-line']};
166
+ padding: 0 ${theme.base.spacing};
167
+ `;
168
+ });
169
+ StyledStickyCardHeader.defaultProps = defaultThemeProp;
170
+ StyledOverflowTabMenu.defaultProps = defaultThemeProp;
171
+ export const StyledTaskManager = styled.div(({ theme }) => {
172
+ const primaryBackgroundColor = theme.base.palette['primary-background'];
173
+ return css `
174
+ background: ${primaryBackgroundColor};
175
+ position: relative;
176
+ border-radius: 0 0 0.5rem 0.5rem;
177
+
178
+ ${StyledStatus} {
179
+ line-height: calc(${theme.base.spacing} * 2);
180
+ height: calc(${theme.base.spacing} * 2);
181
+ font-size: 0.7rem;
182
+ }
183
+
184
+ ${StyledCardContent} {
185
+ &:not(${StyledCard} ${StyledCard} > &) {
186
+ padding: 0;
187
+ }
188
+ }
189
+ ${StyledTaskMain} {
190
+ padding: 0 calc(2 * ${theme.base.spacing}) calc(2 * ${theme.base.spacing});
191
+ ${StyledCardHeader} {
192
+ padding: ${theme.base.spacing} 0;
193
+ margin-block-end: ${theme.base.spacing};
194
+ }
195
+ }
196
+ ${StyledEmptyState} {
197
+ padding: calc(2 * ${theme.base.spacing});
198
+ }
199
+ ${StyledTaskManagerTabs} {
200
+ position: relative;
201
+ }
202
+ ${StyledTaskManagerTab} {
203
+ > ${StyledTaskManagerTabsSummaryItem} > ${StyledVisual} {
204
+ margin: 0 calc(2 * ${theme.base.spacing});
205
+ }
206
+ }
207
+ `;
208
+ });
209
+ StyledTaskManager.defaultProps = defaultThemeProp;
210
+ export const StyledTaskManagerBanner = styled.div(({ theme }) => {
211
+ return css `
212
+ padding: calc(1.5 * ${theme.base.spacing});
213
+ color: ${theme.base.colors.orange.medium};
214
+ border-radius: ${theme.base['border-radius']} ${theme.base['border-radius']} 0 0;
215
+ background-color: ${theme.base.colors.gray['extra-light']};
216
+ gap: ${theme.base.spacing};
217
+
218
+ & + ${StyledTaskManager} {
219
+ margin-block-start: 0;
220
+ }
221
+ `;
222
+ });
223
+ StyledTaskManagerBanner.defaultProps = defaultThemeProp;
224
+ export const StyledPopover = styled(Popover)(({ theme }) => {
225
+ return css `
226
+ width: 35rem;
227
+ border-radius: ${theme.base['border-radius']};
228
+ `;
229
+ });
230
+ StyledPopover.defaultProps = defaultThemeProp;
231
+ export default StyledTaskManager;
232
+ //# sourceMappingURL=TaskManager.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskManager.styles.js","sourceRoot":"","sources":["../../../src/components/TaskManager/TaskManager.styles.ts"],"names":[],"mappings":"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","sourcesContent":["import styled, { css } from 'styled-components';\nimport { mix, transparentize } from 'polished';\n\nimport {\n defaultThemeProp,\n MenuButton,\n Popover,\n tryCatch,\n Status,\n StyledCard,\n StyledEmptyState,\n StyledFlex\n} from '@pega/cosmos-react-core';\nimport { StyledCardHeader } from '@pega/cosmos-react-core/lib/components/Card/CardHeader';\nimport { StyledCardContent } from '@pega/cosmos-react-core/lib/components/Card/CardContent';\nimport { StyledStatus } from '@pega/cosmos-react-core/lib/components/Badges/Status';\nimport { StyledVisual } from '@pega/cosmos-react-core/lib/components/SummaryItem/SummaryItem';\n\nimport { TaskManagerTabProps } from './TaskManager.types';\n\nexport const StyledTaskMain = styled.div``;\nexport const StyledTaskManagerTabsSummaryItem = styled.div``;\n\nexport const StyledTaskManagerTabs = styled.div(({ theme }) => {\n return css`\n background-color: ${theme.base.palette['secondary-background']};\n\n ::before {\n content: '';\n border-block-end: 0.0625rem solid ${theme.base.palette['border-line']};\n height: 0.0625rem;\n width: 100%;\n position: absolute;\n inset-block-end: 0;\n }\n `;\n});\n\nStyledTaskManagerTabs.defaultProps = defaultThemeProp;\n\nexport const StyledTaskSummaryItem = styled.li(({ theme }) => {\n const {\n base: { spacing }\n } = theme;\n return css`\n min-height: 2.5rem;\n padding: ${spacing};\n &:not(:last-child) {\n border-block-end: 0.0625rem solid ${theme.base.palette['border-line']};\n }\n `;\n});\n\nStyledTaskSummaryItem.defaultProps = defaultThemeProp;\n\nexport const StyleTaskName = styled.span(() => {\n return css`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `;\n});\n\nexport const StyledTaskStatus = styled(Status)(({ theme }) => {\n return css`\n margin-block-start: calc(0.25 * ${theme.base.spacing});\n `;\n});\n\nStyleTaskName.defaultProps = defaultThemeProp;\nStyledTaskStatus.defaultProps = defaultThemeProp;\n\nexport const StyledTaskManagerTab = styled.li<TaskManagerTabProps>(({ active = false, theme }) => {\n const hoverColor = tryCatch(() =>\n mix(0.85, theme.base.palette['primary-background'], theme.base.palette.interactive)\n );\n return css`\n max-width: 20rem;\n min-width: 18rem;\n white-space: nowrap;\n border-inline-end: 0.065rem solid ${theme.base.palette['border-line']};\n text-align: start;\n outline: none;\n overflow: hidden;\n display: flex;\n align-items: center;\n position: relative;\n flex: 1;\n min-height: 2.5rem;\n cursor: pointer;\n padding-block: calc(0.5 * ${theme.base.spacing});\n padding-inline: calc(2 * ${theme.base.spacing}) calc(1 * ${theme.base.spacing});\n background-color: ${active &&\n css`\n ${theme.base.palette['primary-background']};\n `};\n\n & + & {\n margin-inline-start: 0;\n }\n\n > ${StyledTaskManagerTabsSummaryItem} {\n overflow-x: hidden;\n }\n\n > ${StyledTaskManagerTabsSummaryItem} > ${StyledVisual} {\n ${active &&\n css`\n background: ${theme.base.palette.interactive};\n color: ${theme.base.colors.white};\n `}\n }\n ${active &&\n css`\n ::after {\n position: absolute;\n content: '';\n height: 0.0625rem;\n width: 100%;\n background-color: ${theme.base.palette['primary-background']};\n inset-inline-start: 0;\n inset-block-end: 0;\n }\n `}\n\n &:hover,\n &:focus {\n background-color: ${hoverColor};\n ::after {\n background-color: ${hoverColor};\n }\n box-shadow: none;\n }\n &:focus {\n box-shadow: inset ${theme.base.shadow.focus};\n }\n\n > ${StyledFlex} {\n max-width: 100%;\n }\n `;\n});\n\nStyledTaskManagerTab.defaultProps = defaultThemeProp;\n\nexport const StyledTasksTabList = styled.ul(({ theme }) => {\n const primaryColor = theme.base.palette.interactive;\n const lightenedColor = tryCatch(() => transparentize(0.5, primaryColor)) ?? '';\n return css`\n position: relative;\n display: flex;\n flex-grow: 1;\n overflow: scroll;\n -ms-overflow-style: none;\n &::-webkit-scrollbar {\n display: none;\n }\n scrollbar-width: none;\n ${StyledTaskManagerTab} {\n margin-inline-start: 0;\n &:hover,\n &:focus {\n ::before {\n display: block;\n background-color: ${lightenedColor};\n }\n }\n }\n `;\n});\n\nStyledTasksTabList.defaultProps = defaultThemeProp;\n\nexport const StyledStickyCardHeader = styled(StyledCardHeader)(({ theme }) => {\n const primaryBackgroundColor = theme.base.palette['primary-background'];\n return css`\n inset-block-start: 0;\n inset-inline-start: 0;\n background: ${primaryBackgroundColor};\n height: calc(3.5rem - 0.0625rem);\n border-block-end: 0.0625rem solid ${theme.base.palette['border-line']};\n `;\n});\nexport const StyledOverflowTabMenu = styled(MenuButton)(({ theme }) => {\n return css`\n border-radius: 0;\n display: inline-block;\n position: relative;\n inset-inline-end: 0;\n inset-block-start: 0;\n align-self: stretch;\n margin-inline-start: auto;\n background-color: ${theme.base.palette['secondary-background']};\n border-block-end: 0.0625rem solid ${theme.base.palette['border-line']};\n padding: 0 ${theme.base.spacing};\n `;\n});\n\nStyledStickyCardHeader.defaultProps = defaultThemeProp;\nStyledOverflowTabMenu.defaultProps = defaultThemeProp;\n\ninterface StyledTaskManagerProps {\n hasDrawer?: boolean;\n}\n\nexport const StyledTaskManager = styled.div<StyledTaskManagerProps>(({ theme }) => {\n const primaryBackgroundColor = theme.base.palette['primary-background'];\n return css`\n background: ${primaryBackgroundColor};\n position: relative;\n border-radius: 0 0 0.5rem 0.5rem;\n\n ${StyledStatus} {\n line-height: calc(${theme.base.spacing} * 2);\n height: calc(${theme.base.spacing} * 2);\n font-size: 0.7rem;\n }\n\n ${StyledCardContent} {\n &:not(${StyledCard} ${StyledCard} > &) {\n padding: 0;\n }\n }\n ${StyledTaskMain} {\n padding: 0 calc(2 * ${theme.base.spacing}) calc(2 * ${theme.base.spacing});\n ${StyledCardHeader} {\n padding: ${theme.base.spacing} 0;\n margin-block-end: ${theme.base.spacing};\n }\n }\n ${StyledEmptyState} {\n padding: calc(2 * ${theme.base.spacing});\n }\n ${StyledTaskManagerTabs} {\n position: relative;\n }\n ${StyledTaskManagerTab} {\n > ${StyledTaskManagerTabsSummaryItem} > ${StyledVisual} {\n margin: 0 calc(2 * ${theme.base.spacing});\n }\n }\n `;\n});\n\nStyledTaskManager.defaultProps = defaultThemeProp;\n\nexport const StyledTaskManagerBanner = styled.div(({ theme }) => {\n return css`\n padding: calc(1.5 * ${theme.base.spacing});\n color: ${theme.base.colors.orange.medium};\n border-radius: ${theme.base['border-radius']} ${theme.base['border-radius']} 0 0;\n background-color: ${theme.base.colors.gray['extra-light']};\n gap: ${theme.base.spacing};\n\n & + ${StyledTaskManager} {\n margin-block-start: 0;\n }\n `;\n});\n\nStyledTaskManagerBanner.defaultProps = defaultThemeProp;\n\nexport const StyledPopover = styled(Popover)(({ theme }) => {\n return css`\n width: 35rem;\n border-radius: ${theme.base['border-radius']};\n `;\n});\n\nStyledPopover.defaultProps = defaultThemeProp;\n\nexport default StyledTaskManager;\n"]}
@@ -0,0 +1,74 @@
1
+ import { ReactNode, Ref } from 'react';
2
+ import { BaseProps, NoChildrenProp, StatusProps } from '@pega/cosmos-react-core';
3
+ import { PickerProps } from './Picker/Picker.types';
4
+ export interface TaskManagerProps extends BaseProps, NoChildrenProp {
5
+ ref?: Ref<HTMLDivElement>;
6
+ /** List of tasks */
7
+ tasks?: TaskProps[];
8
+ /** Empty text to be shown when no tasks are added */
9
+ emptyText?: string;
10
+ /** Callback when task is launched */
11
+ onTaskLaunch?: (id: TaskProps['id']) => void;
12
+ /** Callback when task is dismissed. Applicable only when task is not launched previously */
13
+ onTaskDismiss?: (id: TaskProps['id']) => void;
14
+ /** Add task utility */
15
+ addTask?: Pick<PickerProps, 'items' | 'onAdd' | 'ref'>;
16
+ /** Banner for the task manager */
17
+ banner?: {
18
+ /** Icon for the banner */
19
+ icon: string;
20
+ /** Banner content */
21
+ content: string;
22
+ };
23
+ /** Shows wrap up action when passed */
24
+ wrapUp?: {
25
+ /** Callback when wrap up is performed */
26
+ onWrapUp: () => void;
27
+ /** Determines if wrap up is active */
28
+ active?: boolean;
29
+ /** Determines if wrap up tab should be shown or not */
30
+ showTab?: boolean;
31
+ };
32
+ /** Selected task content */
33
+ main?: ReactNode;
34
+ }
35
+ export interface TaskManagerTabsProps {
36
+ ref?: Ref<HTMLDivElement>;
37
+ }
38
+ export interface TaskManagerTabProps {
39
+ active?: boolean;
40
+ variant?: string;
41
+ }
42
+ export interface TaskViewProps extends BaseProps {
43
+ ref?: Ref<HTMLDivElement>;
44
+ /** Task header */
45
+ header: ReactNode;
46
+ /** Task specific actions */
47
+ actions?: ReactNode;
48
+ /** Task form content */
49
+ children: ReactNode;
50
+ }
51
+ export interface TaskManagerContextProps extends Pick<TaskManagerProps, 'tasks' | 'addTask' | 'onTaskLaunch' | 'wrapUp'> {
52
+ }
53
+ export interface TaskProps {
54
+ /** Unique id for tasks list */
55
+ id: string;
56
+ /** Name of the task */
57
+ name: string;
58
+ /** Meta info of the task ex: Queued task */
59
+ meta?: string;
60
+ /** Name of the icon (to be selected from default Pega icon set) */
61
+ icon: string;
62
+ /** Determines the active task */
63
+ active?: boolean;
64
+ /** Variant of the task */
65
+ variant: 'suggested' | 'queued' | 'in-progress' | 'resolved' | 'cancelled' | 'open';
66
+ /** Represents the current status of task(like resolved-completed, InProgress etc) */
67
+ status?: {
68
+ /** Status text */
69
+ text: string;
70
+ /** Status variant */
71
+ variant: StatusProps['variant'];
72
+ };
73
+ }
74
+ //# sourceMappingURL=TaskManager.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskManager.types.d.ts","sourceRoot":"","sources":["../../../src/components/TaskManager/TaskManager.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,WAAW,gBAAiB,SAAQ,SAAS,EAAE,cAAc;IACjE,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IAC1B,oBAAoB;IACpB,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IAC7C,4FAA4F;IAC5F,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IAC9C,uBAAuB;IACvB,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC,CAAC;IACvD,kCAAkC;IAClC,MAAM,CAAC,EAAE;QACP,0BAA0B;QAC1B,IAAI,EAAE,MAAM,CAAC;QACb,qBAAqB;QACrB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,uCAAuC;IACvC,MAAM,CAAC,EAAE;QACP,yCAAyC;QACzC,QAAQ,EAAE,MAAM,IAAI,CAAC;QACrB,sCAAsC;QACtC,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,uDAAuD;QACvD,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;IACF,4BAA4B;IAC5B,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IAC1B,kBAAkB;IAClB,MAAM,EAAE,SAAS,CAAC;IAClB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,wBAAwB;IACxB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,uBACf,SAAQ,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,SAAS,GAAG,cAAc,GAAG,QAAQ,CAAC;CAAG;AAEpF,MAAM,WAAW,SAAS;IACxB,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0BAA0B;IAC1B,OAAO,EAAE,WAAW,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,WAAW,GAAG,MAAM,CAAC;IACpF,qFAAqF;IACrF,MAAM,CAAC,EAAE;QACP,kBAAkB;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,qBAAqB;QACrB,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;KACjC,CAAC;CACH"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=TaskManager.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskManager.types.js","sourceRoot":"","sources":["../../../src/components/TaskManager/TaskManager.types.ts"],"names":[],"mappings":"","sourcesContent":["import { ReactNode, Ref } from 'react';\n\nimport { BaseProps, NoChildrenProp, StatusProps } from '@pega/cosmos-react-core';\n\nimport { PickerProps } from './Picker/Picker.types';\n\nexport interface TaskManagerProps extends BaseProps, NoChildrenProp {\n ref?: Ref<HTMLDivElement>;\n /** List of tasks */\n tasks?: TaskProps[];\n /** Empty text to be shown when no tasks are added */\n emptyText?: string;\n /** Callback when task is launched */\n onTaskLaunch?: (id: TaskProps['id']) => void;\n /** Callback when task is dismissed. Applicable only when task is not launched previously */\n onTaskDismiss?: (id: TaskProps['id']) => void;\n /** Add task utility */\n addTask?: Pick<PickerProps, 'items' | 'onAdd' | 'ref'>;\n /** Banner for the task manager */\n banner?: {\n /** Icon for the banner */\n icon: string;\n /** Banner content */\n content: string;\n };\n /** Shows wrap up action when passed */\n wrapUp?: {\n /** Callback when wrap up is performed */\n onWrapUp: () => void;\n /** Determines if wrap up is active */\n active?: boolean;\n /** Determines if wrap up tab should be shown or not */\n showTab?: boolean;\n };\n /** Selected task content */\n main?: ReactNode;\n}\n\nexport interface TaskManagerTabsProps {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport interface TaskManagerTabProps {\n active?: boolean;\n variant?: string;\n}\nexport interface TaskViewProps extends BaseProps {\n ref?: Ref<HTMLDivElement>;\n /** Task header */\n header: ReactNode;\n /** Task specific actions */\n actions?: ReactNode;\n /** Task form content */\n children: ReactNode;\n}\n\nexport interface TaskManagerContextProps\n extends Pick<TaskManagerProps, 'tasks' | 'addTask' | 'onTaskLaunch' | 'wrapUp'> {}\n\nexport interface TaskProps {\n /** Unique id for tasks list */\n id: string;\n /** Name of the task */\n name: string;\n /** Meta info of the task ex: Queued task */\n meta?: string;\n /** Name of the icon (to be selected from default Pega icon set) */\n icon: string;\n /** Determines the active task */\n active?: boolean;\n /** Variant of the task */\n variant: 'suggested' | 'queued' | 'in-progress' | 'resolved' | 'cancelled' | 'open';\n /** Represents the current status of task(like resolved-completed, InProgress etc) */\n status?: {\n /** Status text */\n text: string;\n /** Status variant */\n variant: StatusProps['variant'];\n };\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import { FunctionComponent } from 'react';
2
+ import { ForwardProps } from '@pega/cosmos-react-core';
3
+ import { TaskManagerTabsProps } from './TaskManager.types';
4
+ declare const TaskManagerTabs: FunctionComponent<TaskManagerTabsProps & ForwardProps>;
5
+ export default TaskManagerTabs;
6
+ //# sourceMappingURL=TaskManagerTabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskManagerTabs.d.ts","sourceRoot":"","sources":["../../../src/components/TaskManager/TaskManagerTabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAYlB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAQ,YAAY,EAAgB,MAAM,yBAAyB,CAAC;AAY3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D,QAAA,MAAM,eAAe,EAAE,iBAAiB,CAAC,oBAAoB,GAAG,YAAY,CA0N3E,CAAC;AAEF,eAAe,eAAe,CAAC"}