{"version":3,"file":"HierarchicalAssignments.stories.jsx","sourceRoot":"","sources":["../../../src/work/HierarchicalAssignments/HierarchicalAssignments.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable demo-patterns/direct-args-reference */\nimport type { Meta, StoryFn } from '@storybook/react';\nimport { action } from '@storybook/addon-actions';\nimport { useState, useMemo, useEffect } from 'react';\n\nimport { HierarchicalAssignments } from '@pega/cosmos-react-work';\nimport type { TaskItemProps, AssignmentProps } from '@pega/cosmos-react-work';\n\nimport { AIButtonFormDemo } from '../../core/AIButton/AIButton.stories';\n\nimport MockHierarchicalAssignments, { task } from './HierarchicalAssignments.mock';\n\nexport default {\n  title: 'Work/HierarchicalAssignments',\n  component: HierarchicalAssignments\n} as Meta;\n\ninterface HierarchicalAssignmentsProps {\n  progress?: boolean;\n  showAction?: boolean;\n  name?: string;\n  collapsed: boolean;\n  showTask?: boolean;\n  expandAllCases?: boolean;\n}\n\nexport const HierarchicalAssignmentsDemo: StoryFn<HierarchicalAssignmentsProps> = (\n  args: HierarchicalAssignmentsProps\n) => {\n  const [progress, setProgress] = useState(args.collapsed);\n  const [open, setOpen] = useState<boolean>(true);\n\n  useEffect(() => {\n    setOpen(args.collapsed);\n  }, [args.collapsed]);\n\n  const onToggleCollapsed = (collapsed: boolean) => {\n    setOpen(collapsed);\n    if (collapsed) setProgress(true);\n    else\n      setTimeout(() => {\n        setProgress(false);\n      }, 2000);\n  };\n\n  return (\n    <MockHierarchicalAssignments\n      name={args.name}\n      onToggleCollapsed={onToggleCollapsed}\n      progress={args?.progress || progress}\n      showAction={args?.showAction}\n      collapsed={open}\n      showTask={args.showTask}\n      expandAllCases={args.expandAllCases}\n    />\n  );\n};\n\nHierarchicalAssignmentsDemo.args = {\n  progress: false,\n  showAction: true,\n  collapsed: false,\n  showTask: false,\n  name: 'Hierarchical Assignments'\n};\n\nHierarchicalAssignmentsDemo.argTypes = {\n  progress: { control: { type: 'boolean' } },\n  showAction: { control: { type: 'boolean' } },\n  name: { control: { type: 'text' } },\n  showTask: { control: { type: 'boolean' } },\n  collapsed: { control: { type: 'boolean' } }\n};\n\nexport const HierarchicalAssignmentListDemo: StoryFn<HierarchicalAssignmentsProps> = (\n  args: HierarchicalAssignmentsProps\n) => {\n  const [taskOpened, setTaskOpened] = useState<TaskItemProps>();\n  const [progress, setProgress] = useState(args.collapsed);\n  const [open, setOpen] = useState<boolean>(true);\n\n  useEffect(() => {\n    setOpen(args.collapsed);\n  }, [args.collapsed]);\n\n  const getTask = (id: string) => {\n    return {\n      ...task,\n      id,\n      name: `Task ${id}`,\n      content: (\n        <AIButtonFormDemo\n          onCancel={() => setTaskOpened(undefined)}\n          onSubmit={() => setTaskOpened(undefined)}\n        />\n      )\n    };\n  };\n\n  const onToggleCollapsed = (collapsed: boolean) => {\n    setOpen(collapsed);\n    if (collapsed) setProgress(true);\n    else\n      setTimeout(() => {\n        setProgress(false);\n      }, 2000);\n  };\n\n  const onAssigneeClick = (id: AssignmentProps['assigneeId']) => {\n    action(`Show Assignee's Profile (${id})`)();\n  };\n\n  const getAssignmentContent = (id: AssignmentProps['id']) => {\n    setTaskOpened(getTask(id));\n  };\n\n  useEffect(() => {\n    if (args.showTask) {\n      getAssignmentContent('Assignment');\n    } else {\n      setTaskOpened(undefined);\n    }\n  }, [args.showTask]);\n\n  const HierarchicalAssignmentsListMock = useMemo(() => {\n    const assignmentAction = args.showAction ? { onOpen: getAssignmentContent } : {};\n    return {\n      assignments: [\n        {\n          id: 'ASSIGN-WORKLIST LOANPROC-WORK S-69001!SUBCASELEVEL11_FLOW_1_New45',\n          processName: 'Develop',\n          name: 'Complete Develop',\n          sla: '2025-04-21T10:56:27.000Z',\n          urgency: 95,\n          assigneeName: 'Una Newton',\n          assigneeId: 'una01',\n          onAssigneeClick,\n          ...assignmentAction\n        },\n        {\n          id: 'ASSIGN-WORKLIST LOANPROC-WORK S-69001!SUBCASELEVEL11_FLOW_1_New45-1',\n          name: 'Collect information',\n          processName: 'Sprinting',\n          sla: '2025-04-21T10:56:27.000Z',\n          urgency: 95,\n          assigneeName: 'Una Newton',\n          assigneeId: 'una01',\n          onAssigneeClick,\n          ...assignmentAction\n        },\n        {\n          id: 'ASSIGN-WORKLIST LOANPROC-WORK S-69001!SUBCASELEVEL11_FLOW_1_New45-2',\n          name: 'Send references',\n          sla: '2025-04-21T10:56:27.000Z',\n          urgency: 95,\n          assigneeName: 'Una Newton',\n          assigneeId: 'una01',\n          onAssigneeClick,\n          ...assignmentAction\n        }\n      ]\n    };\n  }, [args.showAction]);\n  return (\n    <HierarchicalAssignments\n      assignments={HierarchicalAssignmentsListMock.assignments}\n      collapsed={open}\n      onToggleCollapsed={onToggleCollapsed}\n      openItem={taskOpened}\n      progress={args?.progress || progress}\n      name={args.name}\n    />\n  );\n};\n\nHierarchicalAssignmentListDemo.args = {\n  progress: false,\n  showAction: true,\n  name: 'Assignment List',\n  collapsed: false,\n  showTask: false\n};\n\nHierarchicalAssignmentListDemo.argTypes = {\n  progress: { control: { type: 'boolean' } },\n  showAction: { control: { type: 'boolean' } },\n  name: { control: { type: 'text' } },\n  collapsed: { control: { type: 'boolean' } },\n  showTask: { control: { type: 'boolean' } }\n};\n"]}