@confidencesystemsinc/sdk 1.2.3 → 1.2.5

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 (46) hide show
  1. package/README.md +100 -51
  2. package/dist/components/playbook/confidence-playbook.d.ts +11 -9
  3. package/dist/components/playbook/playbook-header.d.ts +2 -2
  4. package/dist/hooks/usePlaybookExpandedTasks.d.ts +3 -1
  5. package/dist/index.cjs +15 -15
  6. package/dist/index.js +1542 -1508
  7. package/package.json +2 -3
  8. package/src/components/badge.tsx +0 -116
  9. package/src/components/initiate-playbook-modal/InitiatePlaybookModal.tsx +0 -53
  10. package/src/components/playbook/confidence-playbook.tsx +0 -351
  11. package/src/components/playbook/playbook-header.tsx +0 -32
  12. package/src/components/playbook-button/ConfidencePlaybookButton.tsx +0 -79
  13. package/src/components/task/confidence-task.tsx +0 -297
  14. package/src/components/task/task-buttons.tsx +0 -35
  15. package/src/components/task/task-dropdown-badge.tsx +0 -118
  16. package/src/components/task/task-expanded-content.tsx +0 -46
  17. package/src/components/task/task-left-panel.tsx +0 -60
  18. package/src/components/task/task-status-badge.tsx +0 -23
  19. package/src/components/ui/button.tsx +0 -272
  20. package/src/components/ui/input.tsx +0 -39
  21. package/src/components/ui/modal.tsx +0 -88
  22. package/src/components/ui/ui-wrapper.tsx +0 -7
  23. package/src/constants/settings.constants.ts +0 -4
  24. package/src/context/confidence-context.tsx +0 -25
  25. package/src/hooks/task/useCompleteTask.ts +0 -32
  26. package/src/hooks/task/useStartTask.ts +0 -35
  27. package/src/hooks/task/useTaskDetails.ts +0 -42
  28. package/src/hooks/usePlaybook.ts +0 -54
  29. package/src/hooks/usePlaybookActions.ts +0 -69
  30. package/src/hooks/usePlaybookExpandedTasks.ts +0 -35
  31. package/src/hooks/useTaskButtons.ts +0 -47
  32. package/src/index.ts +0 -7
  33. package/src/services/complete-task.service.ts +0 -25
  34. package/src/services/initiate-playbook.service.ts +0 -26
  35. package/src/services/start-task.services.ts +0 -27
  36. package/src/services/task-details.service.ts +0 -17
  37. package/src/stories/confidence-playbook.stories.tsx +0 -125
  38. package/src/stories/confidence-task.stories.tsx +0 -63
  39. package/src/stories/initiate-playbook-modal.stories.tsx +0 -31
  40. package/src/stories/modal.stories.tsx +0 -50
  41. package/src/task-description.css +0 -629
  42. package/src/theme.css +0 -11
  43. package/src/types/playbook.types.ts +0 -22
  44. package/src/types/task.types.ts +0 -20
  45. package/src/utils/cn.ts +0 -6
  46. package/src/vite-env.d.ts +0 -1
@@ -1,35 +0,0 @@
1
- import { useQuery } from "@tanstack/react-query";
2
- import { useConfidenceContext } from "../context/confidence-context";
3
-
4
- export const usePlaybookExpandedTasks = (
5
- playbookInstanceId: number | string,
6
- ) => {
7
- const { queryClient } = useConfidenceContext();
8
-
9
- const query = useQuery({
10
- initialData: {} as Record<string, boolean>,
11
- queryKey: ["PLAYBOOK_EXPANDED_TASKS", +playbookInstanceId],
12
- });
13
-
14
- const isTaskExpanded = (taskId: number | string) => {
15
- return query.data?.[taskId.toString()] ?? false;
16
- };
17
-
18
- const toggleTaskExpanded = (taskId: number | string, expand?: boolean) => {
19
- queryClient.setQueryData(
20
- ["PLAYBOOK_EXPANDED_TASKS", +playbookInstanceId],
21
- () => {
22
- const newData = {
23
- [taskId]: expand !== undefined ? expand : !isTaskExpanded(taskId),
24
- };
25
-
26
- return newData;
27
- },
28
- );
29
- };
30
-
31
- return {
32
- isTaskExpanded,
33
- toggleTaskExpanded,
34
- };
35
- };
@@ -1,47 +0,0 @@
1
- import { useMemo } from "react";
2
- import { TASK_STATUS, TaskStatus } from "../types/task.types";
3
-
4
- export const TASK_BUTTONS = {
5
- START: "START",
6
- PAUSE: "PAUSE",
7
- RESUME: "RESUME",
8
- COMPLETE: "COMPLETE",
9
- EXPAND: "EXPAND",
10
- } as const;
11
-
12
- export const TASK_BUTTONS_DISPLAY_TEXT: {
13
- [key in TaskButton]?: string;
14
- } = {
15
- START: "Start",
16
- PAUSE: "Pause",
17
- RESUME: "Resume",
18
- COMPLETE: "Complete",
19
- };
20
-
21
- export type TaskButton = (typeof TASK_BUTTONS)[keyof typeof TASK_BUTTONS];
22
-
23
- export const useTaskButtons = (args: {
24
- taskStatus: TaskStatus;
25
- canStart: boolean;
26
- }) => {
27
- const { taskStatus } = args;
28
-
29
- const buttons = useMemo(() => {
30
- if (taskStatus === TASK_STATUS.OPEN && args.canStart) {
31
- return [TASK_BUTTONS.START];
32
- }
33
-
34
- if (taskStatus === TASK_STATUS.IN_PROGRESS) {
35
- return [TASK_BUTTONS.PAUSE, TASK_BUTTONS.COMPLETE];
36
- }
37
-
38
- if (taskStatus === TASK_STATUS.COMPLETED) {
39
- return [];
40
- }
41
- return [];
42
- }, [taskStatus]);
43
-
44
- return {
45
- buttons,
46
- };
47
- };
package/src/index.ts DELETED
@@ -1,7 +0,0 @@
1
- import { ConfidencePlaybook } from "./components/playbook/confidence-playbook";
2
- import { ConfidencePlaybookButton } from "./components/playbook-button/ConfidencePlaybookButton";
3
- import { ConfidenceUIWrapper } from "./components/ui/ui-wrapper";
4
-
5
- export { ConfidencePlaybook };
6
- export { ConfidencePlaybookButton };
7
- export { ConfidenceUIWrapper };
@@ -1,25 +0,0 @@
1
- import { CONFIDENCE_API_ENDPOINT } from "../constants/settings.constants";
2
- import { TaskStatus } from "../types/task.types";
3
-
4
- export const completeTask = async (
5
- taskInstanceId: string,
6
- ): Promise<{
7
- status: TaskStatus;
8
- }> => {
9
- const body = {
10
- taskInstanceId,
11
- };
12
- const headers = new Headers();
13
- headers.append("Content-Type", "application/json");
14
- const response = await fetch(
15
- `${CONFIDENCE_API_ENDPOINT}/playbook-task-complete`,
16
- {
17
- method: "POST",
18
- headers,
19
- body: JSON.stringify(body),
20
- },
21
- );
22
- const data = await response.json();
23
-
24
- return data;
25
- };
@@ -1,26 +0,0 @@
1
- import { CONFIDENCE_API_ENDPOINT } from "../constants/settings.constants";
2
-
3
- export const initiatePlaybook = async (body: {
4
- bank: string;
5
- email: string;
6
- timezone: string;
7
- playbookUid: string;
8
- }): Promise<{
9
- playbookInstanceId: number;
10
- errorCode?: number;
11
- details?: Array<string>;
12
- message?: string;
13
- }> => {
14
- const headers = new Headers();
15
- headers.append("Content-Type", "application/json");
16
- const response = await fetch(`${CONFIDENCE_API_ENDPOINT}/playbook-initiate`, {
17
- method: "POST",
18
- headers,
19
- body: JSON.stringify(body),
20
- });
21
- const data = await response.json();
22
-
23
- console.log({ data });
24
-
25
- return data;
26
- };
@@ -1,27 +0,0 @@
1
- import { CONFIDENCE_API_ENDPOINT } from "../constants/settings.constants";
2
- import { TaskStatus } from "../types/task.types";
3
-
4
- export const startTask = async (
5
- taskInstanceId: string,
6
- ): Promise<{
7
- status: TaskStatus;
8
- }> => {
9
- const body = {
10
- taskInstanceId,
11
- };
12
- const headers = new Headers();
13
- headers.append("Content-Type", "application/json");
14
- const response = await fetch(
15
- `${CONFIDENCE_API_ENDPOINT}/playbook-task-start`,
16
- {
17
- method: "POST",
18
- headers,
19
- body: JSON.stringify(body),
20
- },
21
- );
22
- const data = await response.json();
23
-
24
- console.log({ data });
25
-
26
- return data;
27
- };
@@ -1,17 +0,0 @@
1
- import { CONFIDENCE_API_ENDPOINT } from "../constants/settings.constants";
2
-
3
- export const getTaskDetails = async (body: {
4
- taskId: number;
5
- templateId: string;
6
- }) => {
7
- const response = await fetch(
8
- `${CONFIDENCE_API_ENDPOINT}/playbook-task-details`,
9
- {
10
- method: "POST",
11
- body: JSON.stringify(body),
12
- },
13
- );
14
- const data = await response.json();
15
-
16
- return data;
17
- };
@@ -1,125 +0,0 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { ConfidencePlaybook } from "../components/playbook/confidence-playbook";
3
- import { TaskButton } from "../hooks/useTaskButtons";
4
- import { ConfidenceUIWrapper } from "../components/ui/ui-wrapper";
5
-
6
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export
7
- const meta = {
8
- title: "ConfidencePlaybook",
9
- component: ConfidencePlaybook.View,
10
- decorators: [
11
- (Story) => (
12
- <ConfidenceUIWrapper>
13
- <Story />
14
- </ConfidenceUIWrapper>
15
- ),
16
- ],
17
- parameters: {
18
- // Optional parameter to center the component in the Canvas. More info: https://storybook.js.org/docs/configure/story-layout
19
- layout: "fullscreen",
20
- },
21
- // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs
22
- tags: ["autodocs"],
23
- // More on argTypes: https://storybook.js.org/docs/api/argtypes
24
- argTypes: {},
25
- // Use `fn` to spy on the onClick arg, which will appear in the actions panel once invoked: https://storybook.js.org/docs/essentials/actions#action-args
26
- args: {
27
- playbookMode: "list",
28
- playbook: {
29
- playbookInstanceId: 4771,
30
- playbookInstanceName:
31
- "ACH - Returns - [HORIZON] this is a test playbook introdued by confidence system that is a beatufiul company",
32
- playbookId: 227718,
33
- type: "Sequential",
34
- quickComplete: true,
35
- autoExpandTask: true,
36
- autoStart: false,
37
- leadEmail: "confidence@user.it",
38
- workflowStatus: "Open",
39
- numberofTasks: 3,
40
- tasks: [
41
- {
42
- taskInstanceId: 10949,
43
- taskId: 1676864,
44
- sequenceOrder: 0,
45
- workflowStatus: "Completed",
46
- taskInstanceName:
47
- "Identify Return Items [Deposit Operations Specialist]",
48
- taskStartTime: "2025-05-20 09:06:13",
49
- taskCompletedTime: "2025-05-20 09:06:20",
50
- imageRequired: 0,
51
- hasDescription: true,
52
- },
53
- {
54
- taskInstanceId: 10951,
55
- taskId: 1676866,
56
- sequenceOrder: 1,
57
- workflowStatus: "Completed",
58
- taskInstanceName:
59
- "Review Return Items [Deposit Operations Specialist]",
60
- taskStartTime: "2025-05-20 09:06:20",
61
- taskCompletedTime: "2025-05-20 09:06:25",
62
- imageRequired: 2,
63
- hasDescription: true,
64
- },
65
- {
66
- taskInstanceId: 10950,
67
- taskId: 1676865,
68
- sequenceOrder: 2,
69
- workflowStatus: "In progress",
70
- taskInstanceName: "Return Items [Deposit Operations Specialist]",
71
- imageRequired: 2,
72
- hasDescription: true,
73
- },
74
- ],
75
- },
76
- onTaskButtonClick: async (btn: TaskButton, taskId: number) => {
77
- console.log("Button clicked:", btn, "for task ID:", taskId);
78
- },
79
- },
80
- } satisfies Meta<typeof ConfidencePlaybook.View>;
81
-
82
- export default meta;
83
- type Story = StoryObj<typeof meta>;
84
-
85
- // More on writing stories with args: https://storybook.js.org/docs/writing-stories/args
86
- export const CardMode: Story = {
87
- args: {
88
- playbookMode: "card",
89
- },
90
- };
91
-
92
- export const ConfidenceOverlay: Story = {
93
- args: {
94
- playbookMode: "list",
95
- playbookStyle: {
96
- whiteLabel: {
97
- primaryColor: "#007BFF",
98
- },
99
- overlay: {
100
- position: "right",
101
- size: {
102
- width: 500,
103
- height: "calc(100vh - 4rem)",
104
- },
105
- },
106
- },
107
- },
108
- };
109
-
110
- export const FiservOverlay: Story = {
111
- args: {
112
- playbookMode: "list",
113
- playbookStyle: {
114
- overlay: {
115
- position: "right",
116
- offset: { right: 0 },
117
- size: { width: 500, height: "calc(100vh - 4rem)" },
118
- },
119
- whiteLabel: {
120
- titleBackgroundColor: "#FFE3CF",
121
- primaryColor: "#FF6600",
122
- },
123
- },
124
- },
125
- };
@@ -1,63 +0,0 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { ConfidenceTask } from "../components/task/confidence-task";
3
- import { TaskButton } from "../hooks/useTaskButtons";
4
-
5
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export
6
- const meta = {
7
- title: "ConfidenceTask",
8
- component: ConfidenceTask,
9
- parameters: {
10
- // Optional parameter to center the component in the Canvas. More info: https://storybook.js.org/docs/configure/story-layout
11
- layout: "fullscreen",
12
- },
13
- // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs
14
- tags: ["autodocs"],
15
- // More on argTypes: https://storybook.js.org/docs/api/argtypes
16
- argTypes: {},
17
- // Use `fn` to spy on the onClick arg, which will appear in the actions panel once invoked: https://storybook.js.org/docs/essentials/actions#action-args
18
- args: {
19
- task: {
20
- taskInstanceId: 10949,
21
- taskId: 1676864,
22
- sequenceOrder: 0,
23
- workflowStatus: "Open",
24
- taskInstanceName: "Identify Return Items [Deposit Operations Specialist]",
25
- taskStartTime: "2025-05-20 09:06:13",
26
- taskCompletedTime: "2025-05-20 09:06:20",
27
- imageRequired: 1,
28
- hasDescription: true,
29
- },
30
- playbookType: "Non-Sequential",
31
- step: 0,
32
- onButtonClick: async (action: TaskButton) => {
33
- console.log("Button clicked:", action);
34
- },
35
- viewMode: "card",
36
- canStart: true,
37
- isExpanded: false,
38
- playbookId: 227718,
39
- },
40
- } satisfies Meta<typeof ConfidenceTask>;
41
-
42
- export default meta;
43
- type Story = StoryObj<typeof meta>;
44
-
45
- // More on writing stories with args: https://storybook.js.org/docs/writing-stories/args
46
- export const CardMode: Story = {
47
- args: {},
48
- };
49
-
50
- export const ListMode: Story = {
51
- args: {
52
- viewMode: "list",
53
- },
54
- };
55
-
56
- export const Fiserv: Story = {
57
- args: {
58
- viewMode: "list",
59
- taskStyle: {
60
- titleColor: "#FF6600",
61
- },
62
- },
63
- };
@@ -1,31 +0,0 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { InitiatePlaybookModal } from "../components/initiate-playbook-modal/InitiatePlaybookModal";
3
-
4
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export
5
- const meta = {
6
- title: "InitiatePlaybookModal",
7
- component: InitiatePlaybookModal,
8
- parameters: {
9
- // Optional parameter to center the component in the Canvas. More info: https://storybook.js.org/docs/configure/story-layout
10
- layout: "fullscreen",
11
- },
12
- // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs
13
- tags: ["autodocs"],
14
- // More on argTypes: https://storybook.js.org/docs/api/argtypes
15
- argTypes: {},
16
- // Use `fn` to spy on the onClick arg, which will appear in the actions panel once invoked: https://storybook.js.org/docs/essentials/actions#action-args
17
- args: {},
18
- } satisfies Meta<typeof InitiatePlaybookModal>;
19
-
20
- export default meta;
21
- type Story = StoryObj<typeof meta>;
22
-
23
- // More on writing stories with args: https://storybook.js.org/docs/writing-stories/args
24
- export const Default: Story = {
25
- args: {
26
- isOpen: true,
27
- onClose: () => console.log("Modal closed"),
28
- onConfirm: (email: string) =>
29
- console.log(`Playbook initiated with email: ${email}`),
30
- },
31
- };
@@ -1,50 +0,0 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { Modal } from "../components/ui/modal";
3
-
4
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export
5
- const meta = {
6
- title: "Modal",
7
- component: Modal,
8
- parameters: {
9
- // Optional parameter to center the component in the Canvas. More info: https://storybook.js.org/docs/configure/story-layout
10
- layout: "fullscreen",
11
- },
12
- // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs
13
- tags: ["autodocs"],
14
- // More on argTypes: https://storybook.js.org/docs/api/argtypes
15
- argTypes: {},
16
- // Use `fn` to spy on the onClick arg, which will appear in the actions panel once invoked: https://storybook.js.org/docs/essentials/actions#action-args
17
- args: {},
18
- } satisfies Meta<typeof Modal>;
19
-
20
- export default meta;
21
- type Story = StoryObj<typeof meta>;
22
-
23
- // More on writing stories with args: https://storybook.js.org/docs/writing-stories/args
24
- export const Default: Story = {
25
- args: {
26
- isOpen: true,
27
- children: (
28
- <>
29
- <p className="text-gray-500">
30
- Are you sure you want to deactivate this playbook? This action cannot
31
- be undone.
32
- </p>
33
- <p className="text-gray-500">
34
- Deactivating a playbook will stop all associated tasks and prevent any
35
- further actions.
36
- </p>
37
- </>
38
- ),
39
- dismissOptions: {
40
- label: "Cancel",
41
- onClick: () => console.log("Modal dismissed"),
42
- },
43
- confirmOptions: {
44
- label: "Deactivate",
45
- onClick: () => console.log("Playbook deactivated"),
46
- },
47
- title: "Deactivate Playbook",
48
- close() {},
49
- },
50
- };