@pega/cosmos-react-demos 3.0.0-dev.12.0 → 3.0.0-dev.13.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.
Files changed (129) hide show
  1. package/jsx/build/FlowModeller/FlowModeller.mocks.d.ts +1 -0
  2. package/jsx/build/FlowModeller/FlowModeller.mocks.d.ts.map +1 -1
  3. package/jsx/build/FlowModeller/FlowModeller.mocks.jsx +4 -4
  4. package/jsx/build/FlowModeller/FlowModeller.mocks.jsx.map +1 -1
  5. package/jsx/build/FlowModeller/FlowModeller.stories.d.ts +1 -0
  6. package/jsx/build/FlowModeller/FlowModeller.stories.d.ts.map +1 -1
  7. package/jsx/build/FlowModeller/FlowModeller.stories.jsx +7 -7
  8. package/jsx/build/FlowModeller/FlowModeller.stories.jsx.map +1 -1
  9. package/jsx/condition-builder/ConditionInput/ConditionInput.stories.d.ts +10 -0
  10. package/jsx/condition-builder/ConditionInput/ConditionInput.stories.d.ts.map +1 -0
  11. package/jsx/condition-builder/ConditionInput/ConditionInput.stories.jsx +32 -0
  12. package/jsx/condition-builder/ConditionInput/ConditionInput.stories.jsx.map +1 -0
  13. package/jsx/condition-builder/PromotedFilters/PromotedFilters.mocks.d.ts +4 -0
  14. package/jsx/condition-builder/PromotedFilters/PromotedFilters.mocks.d.ts.map +1 -0
  15. package/jsx/condition-builder/PromotedFilters/PromotedFilters.mocks.js +38 -0
  16. package/jsx/condition-builder/PromotedFilters/PromotedFilters.mocks.js.map +1 -0
  17. package/jsx/condition-builder/PromotedFilters/PromotedFilters.stories.d.ts +6 -0
  18. package/jsx/condition-builder/PromotedFilters/PromotedFilters.stories.d.ts.map +1 -0
  19. package/jsx/condition-builder/PromotedFilters/PromotedFilters.stories.jsx +22 -0
  20. package/jsx/condition-builder/PromotedFilters/PromotedFilters.stories.jsx.map +1 -0
  21. package/jsx/condition-builder/PromotedFilters/PromotedFilters.styles.d.ts +2 -0
  22. package/jsx/condition-builder/PromotedFilters/PromotedFilters.styles.d.ts.map +1 -0
  23. package/jsx/condition-builder/PromotedFilters/PromotedFilters.styles.js +8 -0
  24. package/jsx/condition-builder/PromotedFilters/PromotedFilters.styles.js.map +1 -0
  25. package/jsx/core/AppShell/AppShell.stories.d.ts +1 -0
  26. package/jsx/core/AppShell/AppShell.stories.d.ts.map +1 -1
  27. package/jsx/core/AppShell/AppShell.stories.jsx +3 -2
  28. package/jsx/core/AppShell/AppShell.stories.jsx.map +1 -1
  29. package/jsx/core/CompositeInput/CompositeInput.mocks.d.ts +8 -0
  30. package/jsx/core/CompositeInput/CompositeInput.mocks.d.ts.map +1 -0
  31. package/jsx/core/CompositeInput/CompositeInput.mocks.jsx +8 -0
  32. package/jsx/core/CompositeInput/CompositeInput.mocks.jsx.map +1 -0
  33. package/jsx/core/CompositeInput/CompositeInput.stories.d.ts +6 -0
  34. package/jsx/core/CompositeInput/CompositeInput.stories.d.ts.map +1 -0
  35. package/jsx/core/CompositeInput/CompositeInput.stories.jsx +50 -0
  36. package/jsx/core/CompositeInput/CompositeInput.stories.jsx.map +1 -0
  37. package/jsx/core/MultiStepForm/MultiStepForm.mocks.d.ts +34 -0
  38. package/jsx/core/MultiStepForm/MultiStepForm.mocks.d.ts.map +1 -0
  39. package/jsx/core/MultiStepForm/MultiStepForm.mocks.jsx +124 -0
  40. package/jsx/core/MultiStepForm/MultiStepForm.mocks.jsx.map +1 -0
  41. package/jsx/core/{MultiStep/MultiStep.stories.d.ts → MultiStepForm/MultiStepForm.stories.d.ts} +2 -2
  42. package/jsx/core/MultiStepForm/MultiStepForm.stories.d.ts.map +1 -0
  43. package/jsx/core/MultiStepForm/MultiStepForm.stories.jsx +208 -0
  44. package/jsx/core/MultiStepForm/MultiStepForm.stories.jsx.map +1 -0
  45. package/jsx/core/Number/Number.stories.d.ts.map +1 -1
  46. package/jsx/core/Number/Number.stories.jsx +41 -4
  47. package/jsx/core/Number/Number.stories.jsx.map +1 -1
  48. package/jsx/cs/CSCaseView/CSAppShell.stories.jsx +1 -1
  49. package/jsx/cs/CSCaseView/CSAppShell.stories.jsx.map +1 -1
  50. package/jsx/cs/CallControlPanel/CallControlPanel.mocks.d.ts +2 -5
  51. package/jsx/cs/CallControlPanel/CallControlPanel.mocks.d.ts.map +1 -1
  52. package/jsx/cs/CallControlPanel/CallControlPanel.mocks.js +12 -10
  53. package/jsx/cs/CallControlPanel/CallControlPanel.mocks.js.map +1 -1
  54. package/jsx/cs/CallControlPanel/CallControlPanel.stories.d.ts +0 -1
  55. package/jsx/cs/CallControlPanel/CallControlPanel.stories.d.ts.map +1 -1
  56. package/jsx/cs/CallControlPanel/CallControlPanel.stories.jsx +89 -88
  57. package/jsx/cs/CallControlPanel/CallControlPanel.stories.jsx.map +1 -1
  58. package/jsx/work/SearchResults/SearchResults.stories.d.ts +1 -0
  59. package/jsx/work/SearchResults/SearchResults.stories.d.ts.map +1 -1
  60. package/jsx/work/SearchResults/SearchResults.stories.jsx +10 -8
  61. package/jsx/work/SearchResults/SearchResults.stories.jsx.map +1 -1
  62. package/lib/build/FlowModeller/FlowModeller.mocks.d.ts +1 -0
  63. package/lib/build/FlowModeller/FlowModeller.mocks.d.ts.map +1 -1
  64. package/lib/build/FlowModeller/FlowModeller.mocks.js +4 -4
  65. package/lib/build/FlowModeller/FlowModeller.mocks.js.map +1 -1
  66. package/lib/build/FlowModeller/FlowModeller.stories.d.ts +1 -0
  67. package/lib/build/FlowModeller/FlowModeller.stories.d.ts.map +1 -1
  68. package/lib/build/FlowModeller/FlowModeller.stories.js +7 -7
  69. package/lib/build/FlowModeller/FlowModeller.stories.js.map +1 -1
  70. package/lib/condition-builder/ConditionInput/ConditionInput.stories.d.ts +10 -0
  71. package/lib/condition-builder/ConditionInput/ConditionInput.stories.d.ts.map +1 -0
  72. package/lib/condition-builder/ConditionInput/ConditionInput.stories.js +33 -0
  73. package/lib/condition-builder/ConditionInput/ConditionInput.stories.js.map +1 -0
  74. package/lib/condition-builder/PromotedFilters/PromotedFilters.mocks.d.ts +4 -0
  75. package/lib/condition-builder/PromotedFilters/PromotedFilters.mocks.d.ts.map +1 -0
  76. package/lib/condition-builder/PromotedFilters/PromotedFilters.mocks.js +38 -0
  77. package/lib/condition-builder/PromotedFilters/PromotedFilters.mocks.js.map +1 -0
  78. package/lib/condition-builder/PromotedFilters/PromotedFilters.stories.d.ts +6 -0
  79. package/lib/condition-builder/PromotedFilters/PromotedFilters.stories.d.ts.map +1 -0
  80. package/lib/condition-builder/PromotedFilters/PromotedFilters.stories.js +15 -0
  81. package/lib/condition-builder/PromotedFilters/PromotedFilters.stories.js.map +1 -0
  82. package/lib/condition-builder/PromotedFilters/PromotedFilters.styles.d.ts +2 -0
  83. package/lib/condition-builder/PromotedFilters/PromotedFilters.styles.d.ts.map +1 -0
  84. package/lib/condition-builder/PromotedFilters/PromotedFilters.styles.js +8 -0
  85. package/lib/condition-builder/PromotedFilters/PromotedFilters.styles.js.map +1 -0
  86. package/lib/core/AppShell/AppShell.stories.d.ts +1 -0
  87. package/lib/core/AppShell/AppShell.stories.d.ts.map +1 -1
  88. package/lib/core/AppShell/AppShell.stories.js +3 -2
  89. package/lib/core/AppShell/AppShell.stories.js.map +1 -1
  90. package/lib/core/CompositeInput/CompositeInput.mocks.d.ts +8 -0
  91. package/lib/core/CompositeInput/CompositeInput.mocks.d.ts.map +1 -0
  92. package/lib/core/CompositeInput/CompositeInput.mocks.js +6 -0
  93. package/lib/core/CompositeInput/CompositeInput.mocks.js.map +1 -0
  94. package/lib/core/CompositeInput/CompositeInput.stories.d.ts +6 -0
  95. package/lib/core/CompositeInput/CompositeInput.stories.d.ts.map +1 -0
  96. package/lib/core/CompositeInput/CompositeInput.stories.js +51 -0
  97. package/lib/core/CompositeInput/CompositeInput.stories.js.map +1 -0
  98. package/lib/core/MultiStepForm/MultiStepForm.mocks.d.ts +34 -0
  99. package/lib/core/MultiStepForm/MultiStepForm.mocks.d.ts.map +1 -0
  100. package/lib/core/MultiStepForm/MultiStepForm.mocks.js +75 -0
  101. package/lib/core/MultiStepForm/MultiStepForm.mocks.js.map +1 -0
  102. package/lib/core/{MultiStep/MultiStep.stories.d.ts → MultiStepForm/MultiStepForm.stories.d.ts} +2 -2
  103. package/lib/core/MultiStepForm/MultiStepForm.stories.d.ts.map +1 -0
  104. package/lib/core/MultiStepForm/MultiStepForm.stories.js +187 -0
  105. package/lib/core/MultiStepForm/MultiStepForm.stories.js.map +1 -0
  106. package/lib/core/Number/Number.stories.d.ts.map +1 -1
  107. package/lib/core/Number/Number.stories.js +41 -4
  108. package/lib/core/Number/Number.stories.js.map +1 -1
  109. package/lib/cs/CSCaseView/CSAppShell.stories.js +1 -1
  110. package/lib/cs/CSCaseView/CSAppShell.stories.js.map +1 -1
  111. package/lib/cs/CallControlPanel/CallControlPanel.mocks.d.ts +2 -5
  112. package/lib/cs/CallControlPanel/CallControlPanel.mocks.d.ts.map +1 -1
  113. package/lib/cs/CallControlPanel/CallControlPanel.mocks.js +12 -10
  114. package/lib/cs/CallControlPanel/CallControlPanel.mocks.js.map +1 -1
  115. package/lib/cs/CallControlPanel/CallControlPanel.stories.d.ts +0 -1
  116. package/lib/cs/CallControlPanel/CallControlPanel.stories.d.ts.map +1 -1
  117. package/lib/cs/CallControlPanel/CallControlPanel.stories.js +89 -92
  118. package/lib/cs/CallControlPanel/CallControlPanel.stories.js.map +1 -1
  119. package/lib/work/SearchResults/SearchResults.stories.d.ts +1 -0
  120. package/lib/work/SearchResults/SearchResults.stories.d.ts.map +1 -1
  121. package/lib/work/SearchResults/SearchResults.stories.js +10 -8
  122. package/lib/work/SearchResults/SearchResults.stories.js.map +1 -1
  123. package/package.json +9 -9
  124. package/jsx/core/MultiStep/MultiStep.stories.d.ts.map +0 -1
  125. package/jsx/core/MultiStep/MultiStep.stories.jsx +0 -56
  126. package/jsx/core/MultiStep/MultiStep.stories.jsx.map +0 -1
  127. package/lib/core/MultiStep/MultiStep.stories.d.ts.map +0 -1
  128. package/lib/core/MultiStep/MultiStep.stories.js +0 -36
  129. package/lib/core/MultiStep/MultiStep.stories.js.map +0 -1
@@ -7,6 +7,7 @@ interface DecisionTableProps {
7
7
  node: NodeProps;
8
8
  onDeleteRow: (data: GraphData<NodeProps, ConnectorProps>, deleteItems?: DeleteNodeOutcome['deletes'], e?: MouseEvent) => void;
9
9
  onAddRow: (data: GraphData<NodeProps, ConnectorProps>) => void;
10
+ readOnly?: boolean;
10
11
  }
11
12
  interface DeletePopoverProps {
12
13
  targetId: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"FlowModeller.mocks.d.ts","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.mocks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,EAAE,EAAE,MAAM,OAAO,CAAC;AAEjE,OAAO,EASL,MAAM,EACN,YAAY,EAOb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,SAAS,EACT,cAAc,EAGd,eAAe,EACf,iBAAiB,EAGjB,SAAS,EACV,MAAM,0BAA0B,CAAC;AAElC,UAAU,kBAAkB;IAC1B,WAAW,EAAE,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAClD,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,CACX,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,EAC1C,WAAW,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAC1C,CAAC,CAAC,EAAE,UAAU,KACX,IAAI,CAAC;IACV,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,KAAK,IAAI,CAAC;CAChE;AACD,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,GAAG,YAAY,CA4D/D,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,GAAG,YAAY,CAsC/D,CAAC;AAsGF,eAAO,MAAM,mBAAmB,EAAE,SAAS,EAmI1C,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,cAAc,EAyHpD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAAS,EAWrC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,cAAc,EAO/C,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,MAAM,EAK/B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,eAAe,EAsCxC,CAAC"}
1
+ {"version":3,"file":"FlowModeller.mocks.d.ts","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.mocks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,EAAE,EAAE,MAAM,OAAO,CAAC;AAEjE,OAAO,EASL,MAAM,EACN,YAAY,EAOb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,SAAS,EACT,cAAc,EAGd,eAAe,EACf,iBAAiB,EAGjB,SAAS,EACV,MAAM,0BAA0B,CAAC;AAElC,UAAU,kBAAkB;IAC1B,WAAW,EAAE,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAClD,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,CACX,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,EAC1C,WAAW,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAC1C,CAAC,CAAC,EAAE,UAAU,KACX,IAAI,CAAC;IACV,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AACD,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,GAAG,YAAY,CAgE/D,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,GAAG,YAAY,CAsC/D,CAAC;AAuGF,eAAO,MAAM,mBAAmB,EAAE,SAAS,EAmI1C,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,cAAc,EAyHpD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAAS,EAWrC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,cAAc,EAO/C,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,MAAM,EAK/B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,eAAe,EAsCxC,CAAC"}
@@ -1,12 +1,12 @@
1
1
  import { useState, useEffect, forwardRef } from 'react';
2
2
  import { Input, Table, Text, Button, Icon, Flex, createUID, Card, CardContent, CardHeader, useI18n, Popover, CardFooter } from '@pega/cosmos-react-core';
3
3
  import { FlowModellerHelper, START_NODETYPE, STOP_NODETYPE } from '@pega/cosmos-react-build';
4
- export const DecisionTable = forwardRef(({ updatedData, connectors, onDeleteRow, onAddRow, node }, ref) => {
4
+ export const DecisionTable = forwardRef(({ updatedData, connectors, onDeleteRow, onAddRow, node, readOnly }, ref) => {
5
5
  const [tableData, setTableData] = useState(connectors);
6
6
  const t = useI18n();
7
7
  const onAddCondition = () => {
8
8
  const label = 'otherwise';
9
- const updatedGraphData = FlowModellerHelper.addConnector(updatedData, node.id, label);
9
+ const updatedGraphData = FlowModellerHelper.addConnector(updatedData, node.id, label).graphData;
10
10
  onAddRow(updatedGraphData);
11
11
  };
12
12
  const onDeleteCondition = (connector, e) => {
@@ -21,7 +21,7 @@ export const DecisionTable = forwardRef(({ updatedData, connectors, onDeleteRow,
21
21
  { renderer: () => <Text>No value</Text>, label: 'Decision output' },
22
22
  {
23
23
  renderer: connector => {
24
- return (<Button variant='simple' ref={ref} disabled={connectors.length < 3} id={connector.id} icon onClick={(e) => onDeleteCondition(connector, e)} label={t('delete')}>
24
+ return (<Button variant='simple' ref={ref} disabled={readOnly || connectors.length < 3} id={connector.id} icon onClick={(e) => onDeleteCondition(connector, e)} label={t('delete')}>
25
25
  <Icon name='trash'/>
26
26
  </Button>);
27
27
  },
@@ -34,7 +34,7 @@ export const DecisionTable = forwardRef(({ updatedData, connectors, onDeleteRow,
34
34
  return (<>
35
35
  <Table title='Decision outcomes' hoverHighlight data={tableData} columns={columns}/>
36
36
  <Flex container={{ pad: [1, 0] }}>
37
- <Button variant='simple' onClick={onAddCondition}>
37
+ <Button disabled={readOnly} variant='simple' onClick={onAddCondition}>
38
38
  Add Condition
39
39
  </Button>
40
40
  </Flex>
@@ -1 +1 @@
1
- {"version":3,"file":"FlowModeller.mocks.jsx","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect, Ref, forwardRef, FC } from 'react';\n\nimport {\n Input,\n Table,\n ColumnProps,\n Text,\n Button,\n Icon,\n Flex,\n createUID,\n Action,\n ForwardProps,\n Card,\n CardContent,\n CardHeader,\n useI18n,\n Popover,\n CardFooter\n} from '@pega/cosmos-react-core';\nimport {\n NodeProps,\n ConnectorProps,\n FlowModellerHelper,\n NodeType,\n NodeLibraryItem,\n DeleteNodeOutcome,\n START_NODETYPE,\n STOP_NODETYPE,\n GraphData\n} from '@pega/cosmos-react-build';\n\ninterface DecisionTableProps {\n updatedData: GraphData<NodeProps, ConnectorProps>;\n connectors: ConnectorProps[];\n node: NodeProps;\n onDeleteRow: (\n data: GraphData<NodeProps, ConnectorProps>,\n deleteItems?: DeleteNodeOutcome['deletes'],\n e?: MouseEvent\n ) => void;\n onAddRow: (data: GraphData<NodeProps, ConnectorProps>) => void;\n}\ninterface DeletePopoverProps {\n targetId: string | null;\n showPopover: boolean;\n onCancel: () => void;\n onDelete: () => void;\n}\n\nexport const DecisionTable: FC<DecisionTableProps & ForwardProps> = forwardRef(\n (\n { updatedData, connectors, onDeleteRow, onAddRow, node }: DecisionTableProps,\n ref: Ref<HTMLButtonElement>\n ) => {\n const [tableData, setTableData] = useState<ConnectorProps[]>(connectors);\n const t = useI18n();\n\n const onAddCondition = () => {\n const label = 'otherwise';\n const updatedGraphData = FlowModellerHelper.addConnector(updatedData, node.id, label);\n onAddRow(updatedGraphData);\n };\n\n const onDeleteCondition = (connector: ConnectorProps, e: MouseEvent) => {\n const updatedGraphData = FlowModellerHelper.deleteConnector(updatedData, connector);\n onDeleteRow(updatedGraphData!.graphData, updatedGraphData!.deletes, e);\n };\n\n const columns: ColumnProps<ConnectorProps>[] = [\n {\n renderer: connector => <Input value={connector.label} readOnly />,\n label: 'Outcome'\n },\n { renderer: () => <Text>No value</Text>, label: 'Decision output' },\n {\n renderer: connector => {\n return (\n <Button\n variant='simple'\n ref={ref}\n disabled={connectors.length < 3}\n id={connector.id}\n icon\n onClick={(e: MouseEvent) => onDeleteCondition(connector, e)}\n label={t('delete')}\n >\n <Icon name='trash' />\n </Button>\n );\n },\n label: 'Action'\n }\n ];\n\n useEffect(() => {\n setTableData(connectors);\n }, [connectors]);\n\n return (\n <>\n <Table title='Decision outcomes' hoverHighlight data={tableData} columns={columns} />\n <Flex container={{ pad: [1, 0] }}>\n <Button variant='simple' onClick={onAddCondition}>\n Add Condition\n </Button>\n </Flex>\n </>\n );\n }\n);\n\nexport const DeletePopover: FC<DeletePopoverProps & ForwardProps> = forwardRef(\n ({ targetId, showPopover, onCancel, onDelete }, ref: Ref<HTMLDivElement>) => {\n const [elementTarget, setElementTarget] = useState<Element>();\n const t = useI18n();\n\n useEffect(() => {\n const element = document.querySelector(`button[id='${targetId}']`);\n if (element) {\n setElementTarget(element);\n }\n });\n\n return (\n <>\n {elementTarget && showPopover && (\n <Popover target={elementTarget} ref={ref} show={showPopover}>\n <Card>\n <CardHeader>\n <Text variant='h4'>Delete Outcome</Text>\n <Button variant='simple' icon label={t('close')} onClick={onCancel}>\n <Icon name='times' />\n </Button>\n </CardHeader>\n <CardContent>\n Are you sure you want to delete this outcome and all its steps?\n </CardContent>\n <CardFooter container={{ justify: 'between' }}>\n <Button onClick={onCancel}>Cancel</Button>\n <Button variant='primary' onClick={onDelete}>\n Delete\n </Button>\n </CardFooter>\n </Card>\n </Popover>\n )}\n </>\n );\n }\n);\nconst FlowShapeType: Record<string, NodeType> = Object.freeze({\n START: START_NODETYPE,\n STOP: STOP_NODETYPE,\n DECISION: {\n id: 'decision',\n name: 'Decision',\n color: 'darkYellow',\n icon: 'diamond',\n minConnectors: 2,\n defaults: {\n node: {\n label: 'Decision',\n description: 'Adjust the conditions using the property panel'\n },\n connector: [\n {\n label: 'Default'\n },\n {\n label: 'Otherwise'\n }\n ]\n }\n },\n QUESTION: {\n id: 'question',\n name: 'Question',\n color: 'japaneseLaurel',\n icon: 'chat-help',\n minConnectors: 3,\n defaults: {\n node: {\n label: 'Question'\n },\n connector: [\n {\n label: 'Question 1'\n },\n {\n label: 'Question 2'\n },\n {\n label: 'Question 3'\n }\n ]\n }\n },\n ASSIGNMENT: {\n id: 'assignment',\n name: 'Assignment',\n color: 'japaneseLaurel',\n icon: 'clipboard-data',\n minConnectors: 1,\n defaults: {\n node: {\n label: 'Assignment'\n },\n connector: [{ label: '' }]\n }\n },\n MESSAGE: {\n id: 'message',\n name: 'Message',\n color: 'orange',\n icon: 'chat',\n minConnectors: 1,\n defaults: {\n node: {\n label: 'Message'\n },\n connector: [{ label: '' }]\n }\n },\n SEND_EMAIL: {\n id: 'send_email',\n name: 'Send email',\n color: 'yellow',\n icon: 'mail',\n minConnectors: 1,\n defaults: {\n node: {\n label: 'Send email'\n },\n connector: [{ label: '' }]\n }\n },\n GENERATE_PDF: {\n id: 'generate_pdf',\n name: 'Generate PDF',\n color: 'congressBlue',\n icon: 'polaris',\n minConnectors: 1,\n defaults: {\n node: {\n label: 'Generate PDF'\n },\n connector: [{ label: '' }]\n }\n }\n});\n\nexport const exampleCRMNodesData: NodeProps[] = [\n {\n id: '100',\n label: 'Open',\n type: FlowShapeType.START\n },\n {\n id: '101',\n label: 'Is B2B',\n description: '',\n type: FlowShapeType.DECISION,\n additionalData: [],\n error: ''\n },\n {\n id: '102',\n label: 'Update Org Domains',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '103',\n label: 'CreateC2OFromContact',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '104',\n label: 'CreateC2AFromContact',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '105',\n label: 'Is B2C',\n description: '',\n type: FlowShapeType.DECISION,\n additionalData: [],\n error: ''\n },\n {\n id: '106',\n label: 'CreatePrimaryIndividualAccount',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '107',\n label: 'Capture Event',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '108',\n label: 'Update Private Data',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '109',\n label: 'Attach Business Card',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '110',\n label: 'Has Address',\n description: '',\n type: FlowShapeType.DECISION,\n additionalData: [],\n error: ''\n },\n {\n id: '111',\n label: 'RemoveWORelatedNBA',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '112',\n label: 'Bulk Processing',\n description: '',\n type: FlowShapeType.DECISION,\n additionalData: [],\n error: ''\n },\n {\n id: '113',\n label: 'Queue For Agent',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '114',\n label: 'Retrieve Lat Long',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '115',\n label: 'RemoveWORelatedNBA',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '121',\n label: 'STOP',\n type: FlowShapeType.STOP\n }\n];\n\nexport const exampleCRMConnectorsData: ConnectorProps[] = [\n {\n id: '100-101',\n label: '',\n fromNodeId: '100',\n toNodeId: '101'\n },\n {\n id: '101-102',\n label: 'isSellingModeB2BOrB2BB2C',\n fromNodeId: '101',\n toNodeId: '102'\n },\n {\n id: '102-103',\n label: '',\n fromNodeId: '102',\n toNodeId: '103'\n },\n {\n id: '103-104',\n label: '',\n fromNodeId: '103',\n toNodeId: '104'\n },\n {\n id: '104-105',\n label: '',\n fromNodeId: '104',\n toNodeId: '105'\n },\n {\n id: '101-105',\n label: 'Else',\n fromNodeId: '101',\n toNodeId: '105'\n },\n {\n id: '105-106',\n label: 'isSellingModeB2COrB2BB2C',\n fromNodeId: '105',\n toNodeId: '106'\n },\n {\n id: '106-107',\n label: '',\n fromNodeId: '106',\n toNodeId: '107'\n },\n {\n id: '105-107',\n label: 'Else',\n fromNodeId: '105',\n toNodeId: '107'\n },\n {\n id: '107-108',\n label: '',\n fromNodeId: '107',\n toNodeId: '108'\n },\n {\n id: '108-109',\n label: '',\n fromNodeId: '108',\n toNodeId: '109'\n },\n {\n id: '109-110',\n label: '',\n fromNodeId: '109',\n toNodeId: '110'\n },\n {\n id: '110-112',\n label: 'crmHasAddress',\n fromNodeId: '110',\n toNodeId: '112'\n },\n {\n id: '112-113',\n label: 'Bulk Processing',\n fromNodeId: '112',\n toNodeId: '113'\n },\n {\n id: '112-114',\n label: 'Manual',\n fromNodeId: '112',\n toNodeId: '114'\n },\n {\n id: '114-115',\n label: '',\n fromNodeId: '114',\n toNodeId: '115'\n },\n {\n id: '115-121',\n label: '',\n fromNodeId: '115',\n toNodeId: '121'\n },\n {\n id: '113-121',\n label: '',\n fromNodeId: '113',\n toNodeId: '121'\n },\n {\n id: '110-111',\n label: 'Else',\n fromNodeId: '110',\n toNodeId: '111'\n },\n {\n id: '111-121',\n label: '',\n fromNodeId: '111',\n toNodeId: '121'\n }\n];\n\nexport const emptyNodesData: NodeProps[] = [\n {\n id: '100',\n label: 'START',\n type: FlowShapeType.START\n },\n {\n id: '120',\n label: 'STOP',\n type: FlowShapeType.STOP\n }\n];\n\nexport const emptyConnectorsData: ConnectorProps[] = [\n {\n id: '100-120',\n label: 'happy path',\n fromNodeId: '100',\n toNodeId: '120'\n }\n];\n\nexport const nodeActions: Action[] = [\n {\n id: 'action-2',\n text: 'Reassign'\n }\n];\n\nexport const nodeLibrary: NodeLibraryItem[] = [\n {\n id: createUID(),\n primary: 'Assignment',\n type: FlowShapeType.ASSIGNMENT\n },\n {\n id: createUID(),\n primary: 'Decision',\n type: FlowShapeType.DECISION\n },\n {\n id: createUID(),\n primary: 'Send a message',\n type: FlowShapeType.MESSAGE\n },\n {\n id: createUID(),\n primary: 'Ask a question',\n type: FlowShapeType.QUESTION\n },\n {\n id: createUID(),\n primary: 'Automations',\n type: FlowShapeType.AUTOMATION,\n items: [\n {\n id: createUID(),\n primary: 'Send email',\n type: FlowShapeType.SEND_EMAIL\n },\n {\n id: createUID(),\n primary: 'Generate PDF',\n type: FlowShapeType.GENERATE_PDF\n }\n ]\n }\n];\n"]}
1
+ {"version":3,"file":"FlowModeller.mocks.jsx","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect, Ref, forwardRef, FC } from 'react';\n\nimport {\n Input,\n Table,\n ColumnProps,\n Text,\n Button,\n Icon,\n Flex,\n createUID,\n Action,\n ForwardProps,\n Card,\n CardContent,\n CardHeader,\n useI18n,\n Popover,\n CardFooter\n} from '@pega/cosmos-react-core';\nimport {\n NodeProps,\n ConnectorProps,\n FlowModellerHelper,\n NodeType,\n NodeLibraryItem,\n DeleteNodeOutcome,\n START_NODETYPE,\n STOP_NODETYPE,\n GraphData\n} from '@pega/cosmos-react-build';\n\ninterface DecisionTableProps {\n updatedData: GraphData<NodeProps, ConnectorProps>;\n connectors: ConnectorProps[];\n node: NodeProps;\n onDeleteRow: (\n data: GraphData<NodeProps, ConnectorProps>,\n deleteItems?: DeleteNodeOutcome['deletes'],\n e?: MouseEvent\n ) => void;\n onAddRow: (data: GraphData<NodeProps, ConnectorProps>) => void;\n readOnly?: boolean;\n}\ninterface DeletePopoverProps {\n targetId: string | null;\n showPopover: boolean;\n onCancel: () => void;\n onDelete: () => void;\n}\n\nexport const DecisionTable: FC<DecisionTableProps & ForwardProps> = forwardRef(\n (\n { updatedData, connectors, onDeleteRow, onAddRow, node, readOnly }: DecisionTableProps,\n ref: Ref<HTMLButtonElement>\n ) => {\n const [tableData, setTableData] = useState<ConnectorProps[]>(connectors);\n const t = useI18n();\n\n const onAddCondition = () => {\n const label = 'otherwise';\n const updatedGraphData = FlowModellerHelper.addConnector(\n updatedData,\n node.id,\n label\n ).graphData;\n onAddRow(updatedGraphData);\n };\n\n const onDeleteCondition = (connector: ConnectorProps, e: MouseEvent) => {\n const updatedGraphData = FlowModellerHelper.deleteConnector(updatedData, connector);\n onDeleteRow(updatedGraphData!.graphData, updatedGraphData!.deletes, e);\n };\n\n const columns: ColumnProps<ConnectorProps>[] = [\n {\n renderer: connector => <Input value={connector.label} readOnly />,\n label: 'Outcome'\n },\n { renderer: () => <Text>No value</Text>, label: 'Decision output' },\n {\n renderer: connector => {\n return (\n <Button\n variant='simple'\n ref={ref}\n disabled={readOnly || connectors.length < 3}\n id={connector.id}\n icon\n onClick={(e: MouseEvent) => onDeleteCondition(connector, e)}\n label={t('delete')}\n >\n <Icon name='trash' />\n </Button>\n );\n },\n label: 'Action'\n }\n ];\n\n useEffect(() => {\n setTableData(connectors);\n }, [connectors]);\n\n return (\n <>\n <Table title='Decision outcomes' hoverHighlight data={tableData} columns={columns} />\n <Flex container={{ pad: [1, 0] }}>\n <Button disabled={readOnly} variant='simple' onClick={onAddCondition}>\n Add Condition\n </Button>\n </Flex>\n </>\n );\n }\n);\n\nexport const DeletePopover: FC<DeletePopoverProps & ForwardProps> = forwardRef(\n ({ targetId, showPopover, onCancel, onDelete }, ref: Ref<HTMLDivElement>) => {\n const [elementTarget, setElementTarget] = useState<Element>();\n const t = useI18n();\n\n useEffect(() => {\n const element = document.querySelector(`button[id='${targetId}']`);\n if (element) {\n setElementTarget(element);\n }\n });\n\n return (\n <>\n {elementTarget && showPopover && (\n <Popover target={elementTarget} ref={ref} show={showPopover}>\n <Card>\n <CardHeader>\n <Text variant='h4'>Delete Outcome</Text>\n <Button variant='simple' icon label={t('close')} onClick={onCancel}>\n <Icon name='times' />\n </Button>\n </CardHeader>\n <CardContent>\n Are you sure you want to delete this outcome and all its steps?\n </CardContent>\n <CardFooter container={{ justify: 'between' }}>\n <Button onClick={onCancel}>Cancel</Button>\n <Button variant='primary' onClick={onDelete}>\n Delete\n </Button>\n </CardFooter>\n </Card>\n </Popover>\n )}\n </>\n );\n }\n);\n\nconst FlowShapeType: Record<string, NodeType> = Object.freeze({\n START: START_NODETYPE,\n STOP: STOP_NODETYPE,\n DECISION: {\n id: 'decision',\n name: 'Decision',\n color: 'darkYellow',\n icon: 'diamond',\n minConnectors: 2,\n defaults: {\n node: {\n label: 'Decision',\n description: 'Adjust the conditions using the property panel'\n },\n connector: [\n {\n label: 'Default'\n },\n {\n label: 'Otherwise'\n }\n ]\n }\n },\n QUESTION: {\n id: 'question',\n name: 'Question',\n color: 'japaneseLaurel',\n icon: 'chat-help',\n minConnectors: 3,\n defaults: {\n node: {\n label: 'Question'\n },\n connector: [\n {\n label: 'Question 1'\n },\n {\n label: 'Question 2'\n },\n {\n label: 'Question 3'\n }\n ]\n }\n },\n ASSIGNMENT: {\n id: 'assignment',\n name: 'Assignment',\n color: 'japaneseLaurel',\n icon: 'clipboard-data',\n minConnectors: 1,\n defaults: {\n node: {\n label: 'Assignment'\n },\n connector: [{ label: '' }]\n }\n },\n MESSAGE: {\n id: 'message',\n name: 'Message',\n color: 'orange',\n icon: 'chat',\n minConnectors: 1,\n defaults: {\n node: {\n label: 'Message'\n },\n connector: [{ label: '' }]\n }\n },\n SEND_EMAIL: {\n id: 'send_email',\n name: 'Send email',\n color: 'yellow',\n icon: 'mail',\n minConnectors: 1,\n defaults: {\n node: {\n label: 'Send email'\n },\n connector: [{ label: '' }]\n }\n },\n GENERATE_PDF: {\n id: 'generate_pdf',\n name: 'Generate PDF',\n color: 'congressBlue',\n icon: 'polaris',\n minConnectors: 1,\n defaults: {\n node: {\n label: 'Generate PDF'\n },\n connector: [{ label: '' }]\n }\n }\n});\n\nexport const exampleCRMNodesData: NodeProps[] = [\n {\n id: '100',\n label: 'Open',\n type: FlowShapeType.START\n },\n {\n id: '101',\n label: 'Is B2B',\n description: '',\n type: FlowShapeType.DECISION,\n additionalData: [],\n error: ''\n },\n {\n id: '102',\n label: 'Update Org Domains',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '103',\n label: 'CreateC2OFromContact',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '104',\n label: 'CreateC2AFromContact',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '105',\n label: 'Is B2C',\n description: '',\n type: FlowShapeType.DECISION,\n additionalData: [],\n error: ''\n },\n {\n id: '106',\n label: 'CreatePrimaryIndividualAccount',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '107',\n label: 'Capture Event',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '108',\n label: 'Update Private Data',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '109',\n label: 'Attach Business Card',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '110',\n label: 'Has Address',\n description: '',\n type: FlowShapeType.DECISION,\n additionalData: [],\n error: ''\n },\n {\n id: '111',\n label: 'RemoveWORelatedNBA',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '112',\n label: 'Bulk Processing',\n description: '',\n type: FlowShapeType.DECISION,\n additionalData: [],\n error: ''\n },\n {\n id: '113',\n label: 'Queue For Agent',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '114',\n label: 'Retrieve Lat Long',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '115',\n label: 'RemoveWORelatedNBA',\n description: '',\n type: FlowShapeType.ASSIGNMENT,\n additionalData: [],\n error: ''\n },\n {\n id: '121',\n label: 'STOP',\n type: FlowShapeType.STOP\n }\n];\n\nexport const exampleCRMConnectorsData: ConnectorProps[] = [\n {\n id: '100-101',\n label: '',\n fromNodeId: '100',\n toNodeId: '101'\n },\n {\n id: '101-102',\n label: 'isSellingModeB2BOrB2BB2C',\n fromNodeId: '101',\n toNodeId: '102'\n },\n {\n id: '102-103',\n label: '',\n fromNodeId: '102',\n toNodeId: '103'\n },\n {\n id: '103-104',\n label: '',\n fromNodeId: '103',\n toNodeId: '104'\n },\n {\n id: '104-105',\n label: '',\n fromNodeId: '104',\n toNodeId: '105'\n },\n {\n id: '101-105',\n label: 'Else',\n fromNodeId: '101',\n toNodeId: '105'\n },\n {\n id: '105-106',\n label: 'isSellingModeB2COrB2BB2C',\n fromNodeId: '105',\n toNodeId: '106'\n },\n {\n id: '106-107',\n label: '',\n fromNodeId: '106',\n toNodeId: '107'\n },\n {\n id: '105-107',\n label: 'Else',\n fromNodeId: '105',\n toNodeId: '107'\n },\n {\n id: '107-108',\n label: '',\n fromNodeId: '107',\n toNodeId: '108'\n },\n {\n id: '108-109',\n label: '',\n fromNodeId: '108',\n toNodeId: '109'\n },\n {\n id: '109-110',\n label: '',\n fromNodeId: '109',\n toNodeId: '110'\n },\n {\n id: '110-112',\n label: 'crmHasAddress',\n fromNodeId: '110',\n toNodeId: '112'\n },\n {\n id: '112-113',\n label: 'Bulk Processing',\n fromNodeId: '112',\n toNodeId: '113'\n },\n {\n id: '112-114',\n label: 'Manual',\n fromNodeId: '112',\n toNodeId: '114'\n },\n {\n id: '114-115',\n label: '',\n fromNodeId: '114',\n toNodeId: '115'\n },\n {\n id: '115-121',\n label: '',\n fromNodeId: '115',\n toNodeId: '121'\n },\n {\n id: '113-121',\n label: '',\n fromNodeId: '113',\n toNodeId: '121'\n },\n {\n id: '110-111',\n label: 'Else',\n fromNodeId: '110',\n toNodeId: '111'\n },\n {\n id: '111-121',\n label: '',\n fromNodeId: '111',\n toNodeId: '121'\n }\n];\n\nexport const emptyNodesData: NodeProps[] = [\n {\n id: '100',\n label: 'START',\n type: FlowShapeType.START\n },\n {\n id: '120',\n label: 'STOP',\n type: FlowShapeType.STOP\n }\n];\n\nexport const emptyConnectorsData: ConnectorProps[] = [\n {\n id: '100-120',\n label: 'happy path',\n fromNodeId: '100',\n toNodeId: '120'\n }\n];\n\nexport const nodeActions: Action[] = [\n {\n id: 'action-2',\n text: 'Reassign'\n }\n];\n\nexport const nodeLibrary: NodeLibraryItem[] = [\n {\n id: createUID(),\n primary: 'Assignment',\n type: FlowShapeType.ASSIGNMENT\n },\n {\n id: createUID(),\n primary: 'Decision',\n type: FlowShapeType.DECISION\n },\n {\n id: createUID(),\n primary: 'Send a message',\n type: FlowShapeType.MESSAGE\n },\n {\n id: createUID(),\n primary: 'Ask a question',\n type: FlowShapeType.QUESTION\n },\n {\n id: createUID(),\n primary: 'Automations',\n type: FlowShapeType.AUTOMATION,\n items: [\n {\n id: createUID(),\n primary: 'Send email',\n type: FlowShapeType.SEND_EMAIL\n },\n {\n id: createUID(),\n primary: 'Generate PDF',\n type: FlowShapeType.GENERATE_PDF\n }\n ]\n }\n];\n"]}
@@ -4,6 +4,7 @@ declare const _default: Meta<import("@storybook/react").Args>;
4
4
  export default _default;
5
5
  interface FlowChartDemoProps extends FlowModellerProps {
6
6
  showErrorState?: boolean;
7
+ readOnly?: boolean;
7
8
  }
8
9
  export declare const EmptyFlowChartView: Story;
9
10
  export declare const CRMFlowChartView: Story<Partial<FlowChartDemoProps>>;
@@ -1 +1 @@
1
- {"version":3,"file":"FlowModeller.stories.d.ts","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAaL,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;;AAelC,wBAMU;AACV,UAAU,kBAAmB,SAAQ,iBAAiB;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,kBAAkB,EAAE,KAyIhC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,CA2J/D,CAAC"}
1
+ {"version":3,"file":"FlowModeller.stories.d.ts","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAaL,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;;AAelC,wBAMU;AACV,UAAU,kBAAmB,SAAQ,iBAAiB;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,kBAAkB,EAAE,KAyIhC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,CA4J/D,CAAC"}
@@ -185,16 +185,14 @@ export const CRMFlowChartView = (args) => {
185
185
  const WorkbenchContent = memo(() => {
186
186
  const connectorsLength = nodeData?.nodes[0].type.minConnectors || 1;
187
187
  return (<>
188
- {nodeData && connectorsLength > 1 && (<DecisionTable updatedData={graphData} connectors={nodeData?.connectors} onDeleteRow={onDeleteRow} node={nodeData?.nodes[0]} onAddRow={onAddRow}/>)}
188
+ {nodeData && connectorsLength > 1 && (<DecisionTable updatedData={graphData} connectors={nodeData?.connectors} onDeleteRow={onDeleteRow} node={nodeData?.nodes[0]} onAddRow={onAddRow} readOnly={args.readOnly}/>)}
189
189
  {nodeData && connectorsLength <= 1 && (<>
190
190
  <Input label='Label' defaultValue={nodeData?.nodes[0].label}/>
191
191
  <Input label='Description' defaultValue={nodeData?.nodes[0].description}/>
192
192
  </>)}
193
193
  </>);
194
194
  });
195
- useEscape(() => {
196
- onCancel();
197
- });
195
+ useEscape(onCancel);
198
196
  useOuterEvent('mousedown', [deletePopoverEl], onCancel);
199
197
  return (<StyledWrapper>
200
198
  <Workbench initiallyVisiblePanelId={undefined} configurationPanel={{
@@ -205,15 +203,17 @@ export const CRMFlowChartView = (args) => {
205
203
  setOpen(false);
206
204
  }
207
205
  }}>
208
- <FlowModeller graphData={args.showErrorState ? { ...graphData, nodes: exampleErrorNodes } : graphData} nodeLibrary={nodeLibrary} onNodeAdd={addNode} onNodeClick={selectNode} actions={nodeActions} highlightData={highlightItems} onNodeActionClick={onNodeActionClick} onDelete={deleteNode}/>
206
+ <FlowModeller graphData={args.showErrorState ? { ...graphData, nodes: exampleErrorNodes } : graphData} nodeLibrary={nodeLibrary} onNodeAdd={addNode} onNodeClick={selectNode} actions={nodeActions} highlightData={highlightItems} onNodeActionClick={onNodeActionClick} onDelete={deleteNode} readOnly={args.readOnly}/>
209
207
  <DeletePopover targetId={target} ref={setDeletePopoverEl} onDelete={onDelete} onCancel={onCancel} showPopover={showPopover}/>
210
208
  </Workbench>
211
209
  </StyledWrapper>);
212
210
  };
213
211
  CRMFlowChartView.args = {
214
- showErrorState: false
212
+ showErrorState: false,
213
+ readOnly: false
215
214
  };
216
215
  CRMFlowChartView.argTypes = {
217
- showErrorState: { control: { type: 'boolean' } }
216
+ showErrorState: { control: { type: 'boolean' } },
217
+ readOnly: { control: { type: 'boolean' } }
218
218
  };
219
219
  //# sourceMappingURL=FlowModeller.stories.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"FlowModeller.stories.jsx","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { memo, useState } from 'react';\nimport { action } from '@storybook/addon-actions';\nimport { Meta, Story } from '@storybook/react';\n\nimport {\n FlowModeller,\n ActionParams,\n NodeProps,\n NodeType,\n DirectedGraph,\n GraphData,\n DeleteNodeOutcome,\n ConnectorProps,\n FlowModellerHelper,\n AddNodeHandlerParams,\n RendererProps,\n Workbench,\n FlowModellerProps\n} from '@pega/cosmos-react-build';\nimport { useOuterEvent, useEscape, useElement, Input } from '@pega/cosmos-react-core';\n\nimport {\n nodeLibrary,\n nodeActions,\n exampleCRMNodesData,\n exampleCRMConnectorsData,\n emptyNodesData,\n emptyConnectorsData,\n DecisionTable,\n DeletePopover\n} from './FlowModeller.mocks';\nimport { StyledWrapper } from './FlowModeller.styles';\n\nexport default {\n title: 'Build/FlowModeller',\n component: FlowModeller,\n parameters: {\n layout: 'fullscreen'\n }\n} as Meta;\ninterface FlowChartDemoProps extends FlowModellerProps {\n showErrorState?: boolean;\n}\n\nexport const EmptyFlowChartView: Story = () => {\n const [graphData, setGraphData] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: emptyNodesData,\n connectors: emptyConnectorsData\n });\n const [highlightItems, setHighlightItems] = useState<RendererProps['highlights']>();\n const [open, setOpen] = useState(false);\n const [nodeData, setNodeData] = useState<GraphData<NodeProps, ConnectorProps>>();\n const [showPopover, setPopover] = useState(false);\n const [buffer, setBuffer] = useState<GraphData<NodeProps, ConnectorProps>>();\n const [target, setTarget] = useState<string | null>(null);\n const [deletePopoverEl, setDeletePopoverEl] = useElement<HTMLElement>(null);\n\n const selectNode = (nodeId: NodeProps['id']) => {\n const graph = new DirectedGraph(graphData);\n const selectedNode = graph.getNode(nodeId);\n const outConnectors = graph.getOutConnectors(nodeId);\n setOpen(true);\n setNodeData({\n nodes: [selectedNode],\n connectors: outConnectors\n });\n };\n\n const onNodeActionClick = (params: ActionParams) => {\n if (params.actionId === 'action-2') {\n action(`ressigned ${params.nodeId}`)();\n } else {\n // eslint-disable-next-line no-console\n console.warn(`Unknown action ${params.actionId}`);\n }\n };\n\n const addNode = (nodeType: NodeType, metaData: AddNodeHandlerParams) => {\n const UpdatedData = FlowModellerHelper.addNode({\n nodeType,\n graphData,\n metaData\n });\n if (UpdatedData) {\n setGraphData(UpdatedData);\n }\n };\n\n const deleteNode = (params: ActionParams) => {\n setGraphData((params.additionalData as DeleteNodeOutcome)?.graphData);\n };\n\n const onAddRow = (updatedData: GraphData<NodeProps, ConnectorProps>) => {\n const graph = new DirectedGraph(updatedData);\n const outConnectors = graph.getOutConnectors(nodeData!.nodes[0].id);\n setNodeData({ nodes: nodeData!.nodes, connectors: outConnectors });\n setGraphData(updatedData);\n };\n\n const onDeleteRow = (\n updatedData: GraphData<NodeProps, ConnectorProps>,\n highlightsData?: RendererProps['highlights'],\n e?: MouseEvent\n ) => {\n setHighlightItems(highlightsData);\n setPopover(!showPopover);\n setBuffer(updatedData);\n if (e?.target instanceof Element) {\n const targetElem = e.target;\n setTarget(targetElem?.getAttribute('id'));\n }\n };\n\n const onDelete = () => {\n setHighlightItems(undefined);\n const graph = new DirectedGraph(buffer);\n const outConnectors = graph.getOutConnectors(nodeData!.nodes[0].id);\n setNodeData({ nodes: nodeData!.nodes, connectors: outConnectors });\n if (buffer) setGraphData(buffer);\n setPopover(false);\n };\n\n const onCancel = () => {\n setHighlightItems(undefined);\n setPopover(false);\n };\n\n const WorkbenchContent = memo(() => {\n return (\n <>\n {nodeData && (\n <DecisionTable\n updatedData={graphData}\n connectors={nodeData?.connectors}\n onDeleteRow={onDeleteRow}\n node={nodeData?.nodes[0]}\n onAddRow={onAddRow}\n />\n )}\n </>\n );\n });\n useEscape(() => {\n onCancel();\n });\n\n useOuterEvent('mousedown', [deletePopoverEl], onCancel);\n\n return (\n <StyledWrapper>\n <Workbench\n initiallyVisiblePanelId={undefined}\n configurationPanel={{\n open,\n content: <WorkbenchContent />,\n header: nodeData?.nodes[0].label as string,\n onDismiss: () => {\n setOpen(false);\n }\n }}\n >\n <FlowModeller\n graphData={graphData}\n nodeLibrary={nodeLibrary}\n onNodeAdd={addNode}\n onNodeClick={selectNode}\n actions={nodeActions}\n highlightData={highlightItems}\n onNodeActionClick={onNodeActionClick}\n onDelete={deleteNode}\n />\n <DeletePopover\n targetId={target}\n ref={setDeletePopoverEl}\n onDelete={onDelete}\n onCancel={onCancel}\n showPopover={showPopover}\n />\n </Workbench>\n </StyledWrapper>\n );\n};\n\nexport const CRMFlowChartView: Story<Partial<FlowChartDemoProps>> = (\n args: Partial<FlowChartDemoProps>\n) => {\n const [graphData, setGraphData] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: exampleCRMNodesData,\n connectors: exampleCRMConnectorsData\n });\n const [highlightItems, setHighlightItems] = useState<RendererProps['highlights']>();\n const [open, setOpen] = useState(false);\n // nodeData maintains the state of selected node\n const [nodeData, setNodeData] = useState<GraphData<NodeProps, ConnectorProps>>();\n const [showPopover, setPopover] = useState(false);\n const [buffer, setBuffer] = useState<GraphData<NodeProps, ConnectorProps>>();\n const [target, setTarget] = useState<string | null>(null);\n const [deletePopoverEl, setDeletePopoverEl] = useElement<HTMLElement>(null);\n\n const exampleErrorNodes = exampleCRMNodesData.map((node: NodeProps) => {\n if (node.id === '101' || node.id === '105' || node.id === '110' || node.id === '112') {\n return { ...node, error: 'Something is wrong!' };\n }\n return node;\n });\n\n const selectNode = (nodeId: NodeProps['id']) => {\n const graph = new DirectedGraph(graphData);\n const selectedNode = graph.getNode(nodeId);\n const outConnectors = graph.getOutConnectors(nodeId);\n setOpen(true);\n setNodeData({\n nodes: [selectedNode],\n connectors: outConnectors\n });\n };\n\n const onNodeActionClick = (params: ActionParams) => {\n if (params.actionId === 'action-2') {\n action(`ressigned ${params.nodeId}`)();\n } else {\n // eslint-disable-next-line no-console\n console.warn(`Unknown action ${params.actionId}`);\n }\n };\n\n const addNode = (nodeType: NodeType, metaData: AddNodeHandlerParams) => {\n const UpdatedData = FlowModellerHelper.addNode({\n nodeType,\n graphData,\n metaData\n });\n if (UpdatedData) {\n setGraphData(UpdatedData);\n }\n };\n\n const deleteNode = (params: ActionParams) => {\n setGraphData((params.additionalData as DeleteNodeOutcome)?.graphData);\n };\n\n const onAddRow = (updatedData: GraphData<NodeProps, ConnectorProps>) => {\n const graph = new DirectedGraph(updatedData);\n const outConnectors = graph.getOutConnectors(nodeData!.nodes[0].id);\n setNodeData({ nodes: nodeData!.nodes, connectors: outConnectors });\n setGraphData(updatedData);\n };\n\n const onDeleteRow = (\n updatedData: GraphData<NodeProps, ConnectorProps>,\n highlightsData?: RendererProps['highlights'],\n e?: MouseEvent\n ) => {\n setHighlightItems(highlightsData);\n setPopover(!showPopover);\n setBuffer(updatedData);\n if (e?.target instanceof Element) {\n const targetElem = e.target;\n setTarget(targetElem?.getAttribute('id'));\n }\n };\n\n const onDelete = () => {\n setPopover(false);\n setHighlightItems(undefined);\n const graph = new DirectedGraph(buffer);\n const outConnectors = graph.getOutConnectors(nodeData!.nodes[0].id);\n setNodeData({ nodes: nodeData!.nodes, connectors: outConnectors });\n if (buffer) setGraphData(buffer);\n };\n\n const onCancel = () => {\n setHighlightItems(undefined);\n setPopover(false);\n };\n\n const WorkbenchContent = memo(() => {\n // Decision table is shown only to those nodes with min 2 connectors.\n const connectorsLength = nodeData?.nodes[0].type.minConnectors || 1;\n return (\n <>\n {nodeData && connectorsLength > 1 && (\n <DecisionTable\n updatedData={graphData}\n connectors={nodeData?.connectors}\n onDeleteRow={onDeleteRow}\n node={nodeData?.nodes[0]}\n onAddRow={onAddRow}\n />\n )}\n {nodeData && connectorsLength <= 1 && (\n <>\n <Input label='Label' defaultValue={nodeData?.nodes[0].label} />\n <Input label='Description' defaultValue={nodeData?.nodes[0].description} />\n </>\n )}\n </>\n );\n });\n useEscape(() => {\n onCancel();\n });\n\n useOuterEvent('mousedown', [deletePopoverEl], onCancel);\n\n return (\n <StyledWrapper>\n <Workbench\n initiallyVisiblePanelId={undefined}\n configurationPanel={{\n open,\n content: <WorkbenchContent />,\n header: nodeData?.nodes[0].label as string,\n onDismiss: () => {\n setOpen(false);\n }\n }}\n >\n <FlowModeller\n graphData={args.showErrorState ? { ...graphData, nodes: exampleErrorNodes } : graphData}\n nodeLibrary={nodeLibrary}\n onNodeAdd={addNode}\n onNodeClick={selectNode}\n actions={nodeActions}\n highlightData={highlightItems}\n onNodeActionClick={onNodeActionClick}\n onDelete={deleteNode}\n />\n <DeletePopover\n targetId={target}\n ref={setDeletePopoverEl}\n onDelete={onDelete}\n onCancel={onCancel}\n showPopover={showPopover}\n />\n </Workbench>\n </StyledWrapper>\n );\n};\n\nCRMFlowChartView.args = {\n showErrorState: false\n};\n\nCRMFlowChartView.argTypes = {\n showErrorState: { control: { type: 'boolean' } }\n};\n"]}
1
+ {"version":3,"file":"FlowModeller.stories.jsx","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { memo, useState } from 'react';\nimport { action } from '@storybook/addon-actions';\nimport { Meta, Story } from '@storybook/react';\n\nimport {\n FlowModeller,\n ActionParams,\n NodeProps,\n NodeType,\n DirectedGraph,\n GraphData,\n DeleteNodeOutcome,\n ConnectorProps,\n FlowModellerHelper,\n AddNodeHandlerParams,\n RendererProps,\n Workbench,\n FlowModellerProps\n} from '@pega/cosmos-react-build';\nimport { useOuterEvent, useEscape, useElement, Input } from '@pega/cosmos-react-core';\n\nimport {\n nodeLibrary,\n nodeActions,\n exampleCRMNodesData,\n exampleCRMConnectorsData,\n emptyNodesData,\n emptyConnectorsData,\n DecisionTable,\n DeletePopover\n} from './FlowModeller.mocks';\nimport { StyledWrapper } from './FlowModeller.styles';\n\nexport default {\n title: 'Build/FlowModeller',\n component: FlowModeller,\n parameters: {\n layout: 'fullscreen'\n }\n} as Meta;\ninterface FlowChartDemoProps extends FlowModellerProps {\n showErrorState?: boolean;\n readOnly?: boolean;\n}\n\nexport const EmptyFlowChartView: Story = () => {\n const [graphData, setGraphData] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: emptyNodesData,\n connectors: emptyConnectorsData\n });\n const [highlightItems, setHighlightItems] = useState<RendererProps['highlights']>();\n const [open, setOpen] = useState(false);\n const [nodeData, setNodeData] = useState<GraphData<NodeProps, ConnectorProps>>();\n const [showPopover, setPopover] = useState(false);\n const [buffer, setBuffer] = useState<GraphData<NodeProps, ConnectorProps>>();\n const [target, setTarget] = useState<string | null>(null);\n const [deletePopoverEl, setDeletePopoverEl] = useElement<HTMLElement>(null);\n\n const selectNode = (nodeId: NodeProps['id']) => {\n const graph = new DirectedGraph(graphData);\n const selectedNode = graph.getNode(nodeId);\n const outConnectors = graph.getOutConnectors(nodeId);\n setOpen(true);\n setNodeData({\n nodes: [selectedNode],\n connectors: outConnectors\n });\n };\n\n const onNodeActionClick = (params: ActionParams) => {\n if (params.actionId === 'action-2') {\n action(`ressigned ${params.nodeId}`)();\n } else {\n // eslint-disable-next-line no-console\n console.warn(`Unknown action ${params.actionId}`);\n }\n };\n\n const addNode = (nodeType: NodeType, metaData: AddNodeHandlerParams) => {\n const UpdatedData = FlowModellerHelper.addNode({\n nodeType,\n graphData,\n metaData\n });\n if (UpdatedData) {\n setGraphData(UpdatedData);\n }\n };\n\n const deleteNode = (params: ActionParams) => {\n setGraphData((params.additionalData as DeleteNodeOutcome)?.graphData);\n };\n\n const onAddRow = (updatedData: GraphData<NodeProps, ConnectorProps>) => {\n const graph = new DirectedGraph(updatedData);\n const outConnectors = graph.getOutConnectors(nodeData!.nodes[0].id);\n setNodeData({ nodes: nodeData!.nodes, connectors: outConnectors });\n setGraphData(updatedData);\n };\n\n const onDeleteRow = (\n updatedData: GraphData<NodeProps, ConnectorProps>,\n highlightsData?: RendererProps['highlights'],\n e?: MouseEvent\n ) => {\n setHighlightItems(highlightsData);\n setPopover(!showPopover);\n setBuffer(updatedData);\n if (e?.target instanceof Element) {\n const targetElem = e.target;\n setTarget(targetElem?.getAttribute('id'));\n }\n };\n\n const onDelete = () => {\n setHighlightItems(undefined);\n const graph = new DirectedGraph(buffer);\n const outConnectors = graph.getOutConnectors(nodeData!.nodes[0].id);\n setNodeData({ nodes: nodeData!.nodes, connectors: outConnectors });\n if (buffer) setGraphData(buffer);\n setPopover(false);\n };\n\n const onCancel = () => {\n setHighlightItems(undefined);\n setPopover(false);\n };\n\n const WorkbenchContent = memo(() => {\n return (\n <>\n {nodeData && (\n <DecisionTable\n updatedData={graphData}\n connectors={nodeData?.connectors}\n onDeleteRow={onDeleteRow}\n node={nodeData?.nodes[0]}\n onAddRow={onAddRow}\n />\n )}\n </>\n );\n });\n useEscape(() => {\n onCancel();\n });\n\n useOuterEvent('mousedown', [deletePopoverEl], onCancel);\n\n return (\n <StyledWrapper>\n <Workbench\n initiallyVisiblePanelId={undefined}\n configurationPanel={{\n open,\n content: <WorkbenchContent />,\n header: nodeData?.nodes[0].label as string,\n onDismiss: () => {\n setOpen(false);\n }\n }}\n >\n <FlowModeller\n graphData={graphData}\n nodeLibrary={nodeLibrary}\n onNodeAdd={addNode}\n onNodeClick={selectNode}\n actions={nodeActions}\n highlightData={highlightItems}\n onNodeActionClick={onNodeActionClick}\n onDelete={deleteNode}\n />\n <DeletePopover\n targetId={target}\n ref={setDeletePopoverEl}\n onDelete={onDelete}\n onCancel={onCancel}\n showPopover={showPopover}\n />\n </Workbench>\n </StyledWrapper>\n );\n};\n\nexport const CRMFlowChartView: Story<Partial<FlowChartDemoProps>> = (\n args: Partial<FlowChartDemoProps>\n) => {\n const [graphData, setGraphData] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: exampleCRMNodesData,\n connectors: exampleCRMConnectorsData\n });\n const [highlightItems, setHighlightItems] = useState<RendererProps['highlights']>();\n const [open, setOpen] = useState(false);\n // nodeData maintains the state of selected node\n const [nodeData, setNodeData] = useState<GraphData<NodeProps, ConnectorProps>>();\n const [showPopover, setPopover] = useState(false);\n const [buffer, setBuffer] = useState<GraphData<NodeProps, ConnectorProps>>();\n const [target, setTarget] = useState<string | null>(null);\n const [deletePopoverEl, setDeletePopoverEl] = useElement<HTMLElement>(null);\n\n const exampleErrorNodes = exampleCRMNodesData.map((node: NodeProps) => {\n if (node.id === '101' || node.id === '105' || node.id === '110' || node.id === '112') {\n return { ...node, error: 'Something is wrong!' };\n }\n return node;\n });\n\n const selectNode = (nodeId: NodeProps['id']) => {\n const graph = new DirectedGraph(graphData);\n const selectedNode = graph.getNode(nodeId);\n const outConnectors = graph.getOutConnectors(nodeId);\n setOpen(true);\n setNodeData({\n nodes: [selectedNode],\n connectors: outConnectors\n });\n };\n\n const onNodeActionClick = (params: ActionParams) => {\n if (params.actionId === 'action-2') {\n action(`ressigned ${params.nodeId}`)();\n } else {\n // eslint-disable-next-line no-console\n console.warn(`Unknown action ${params.actionId}`);\n }\n };\n\n const addNode = (nodeType: NodeType, metaData: AddNodeHandlerParams) => {\n const UpdatedData = FlowModellerHelper.addNode({\n nodeType,\n graphData,\n metaData\n });\n if (UpdatedData) {\n setGraphData(UpdatedData);\n }\n };\n\n const deleteNode = (params: ActionParams) => {\n setGraphData((params.additionalData as DeleteNodeOutcome)?.graphData);\n };\n\n const onAddRow = (updatedData: GraphData<NodeProps, ConnectorProps>) => {\n const graph = new DirectedGraph(updatedData);\n const outConnectors = graph.getOutConnectors(nodeData!.nodes[0].id);\n setNodeData({ nodes: nodeData!.nodes, connectors: outConnectors });\n setGraphData(updatedData);\n };\n\n const onDeleteRow = (\n updatedData: GraphData<NodeProps, ConnectorProps>,\n highlightsData?: RendererProps['highlights'],\n e?: MouseEvent\n ) => {\n setHighlightItems(highlightsData);\n setPopover(!showPopover);\n setBuffer(updatedData);\n if (e?.target instanceof Element) {\n const targetElem = e.target;\n setTarget(targetElem?.getAttribute('id'));\n }\n };\n\n const onDelete = () => {\n setPopover(false);\n setHighlightItems(undefined);\n const graph = new DirectedGraph(buffer);\n const outConnectors = graph.getOutConnectors(nodeData!.nodes[0].id);\n setNodeData({ nodes: nodeData!.nodes, connectors: outConnectors });\n if (buffer) setGraphData(buffer);\n };\n\n const onCancel = () => {\n setHighlightItems(undefined);\n setPopover(false);\n };\n\n const WorkbenchContent = memo(() => {\n // Decision table is shown only to those nodes with min 2 connectors.\n const connectorsLength = nodeData?.nodes[0].type.minConnectors || 1;\n return (\n <>\n {nodeData && connectorsLength > 1 && (\n <DecisionTable\n updatedData={graphData}\n connectors={nodeData?.connectors}\n onDeleteRow={onDeleteRow}\n node={nodeData?.nodes[0]}\n onAddRow={onAddRow}\n readOnly={args.readOnly}\n />\n )}\n {nodeData && connectorsLength <= 1 && (\n <>\n <Input label='Label' defaultValue={nodeData?.nodes[0].label} />\n <Input label='Description' defaultValue={nodeData?.nodes[0].description} />\n </>\n )}\n </>\n );\n });\n\n useEscape(onCancel);\n\n useOuterEvent('mousedown', [deletePopoverEl], onCancel);\n\n return (\n <StyledWrapper>\n <Workbench\n initiallyVisiblePanelId={undefined}\n configurationPanel={{\n open,\n content: <WorkbenchContent />,\n header: nodeData?.nodes[0].label as string,\n onDismiss: () => {\n setOpen(false);\n }\n }}\n >\n <FlowModeller\n graphData={args.showErrorState ? { ...graphData, nodes: exampleErrorNodes } : graphData}\n nodeLibrary={nodeLibrary}\n onNodeAdd={addNode}\n onNodeClick={selectNode}\n actions={nodeActions}\n highlightData={highlightItems}\n onNodeActionClick={onNodeActionClick}\n onDelete={deleteNode}\n readOnly={args.readOnly}\n />\n <DeletePopover\n targetId={target}\n ref={setDeletePopoverEl}\n onDelete={onDelete}\n onCancel={onCancel}\n showPopover={showPopover}\n />\n </Workbench>\n </StyledWrapper>\n );\n};\n\nCRMFlowChartView.args = {\n showErrorState: false,\n readOnly: false\n};\n\nCRMFlowChartView.argTypes = {\n showErrorState: { control: { type: 'boolean' } },\n readOnly: { control: { type: 'boolean' } }\n};\n"]}
@@ -0,0 +1,10 @@
1
+ import { Meta, Story } from '@storybook/react';
2
+ import { ConditionInputMode, ConditionFieldType } from '@pega/cosmos-react-condition-builder';
3
+ declare const _default: Meta<import("@storybook/react").Args>;
4
+ export default _default;
5
+ interface ConditionInputStoryProps {
6
+ fieldType: ConditionFieldType;
7
+ mode: ConditionInputMode;
8
+ }
9
+ export declare const ConditionInputDemo: Story<ConditionInputStoryProps>;
10
+ //# sourceMappingURL=ConditionInput.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConditionInput.stories.d.ts","sourceRoot":"","sources":["../../../src/condition-builder/ConditionInput/ConditionInput.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAEL,kBAAkB,EAElB,kBAAkB,EACnB,MAAM,sCAAsC,CAAC;;AAE9C,wBAGU;AAEV,UAAU,wBAAwB;IAChC,SAAS,EAAE,kBAAkB,CAAC;IAC9B,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,wBAAwB,CAc9D,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { useState } from 'react';
2
+ import { ConditionInput } from '@pega/cosmos-react-condition-builder';
3
+ export default {
4
+ title: 'Condition Builder/ConditionInput',
5
+ component: ConditionInput
6
+ };
7
+ export const ConditionInputDemo = (args) => {
8
+ const [condition, setCondition] = useState();
9
+ return (<ConditionInput fieldName='Field Value' fieldType={args.fieldType} mode={args.mode} condition={condition} onChange={setCondition}/>);
10
+ };
11
+ ConditionInputDemo.args = {
12
+ fieldType: 'TEXT',
13
+ mode: 'advanced'
14
+ };
15
+ ConditionInputDemo.argTypes = {
16
+ fieldType: {
17
+ options: [
18
+ 'TEXT',
19
+ 'INTEGER',
20
+ 'BOOLEAN',
21
+ 'DECIMAL',
22
+ 'EMAIL',
23
+ 'URL',
24
+ 'PERCENTAGE',
25
+ 'CURRENCY',
26
+ 'PHONE'
27
+ ],
28
+ control: { type: 'select' }
29
+ },
30
+ mode: { options: ['default', 'advanced'], control: { type: 'select' } }
31
+ };
32
+ //# sourceMappingURL=ConditionInput.stories.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConditionInput.stories.jsx","sourceRoot":"","sources":["../../../src/condition-builder/ConditionInput/ConditionInput.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EACL,cAAc,EAIf,MAAM,sCAAsC,CAAC;AAE9C,eAAe;IACb,KAAK,EAAE,kCAAkC;IACzC,SAAS,EAAE,cAAc;CAClB,CAAC;AAOV,MAAM,CAAC,MAAM,kBAAkB,GAAoC,CACjE,IAA8B,EAC9B,EAAE;IACF,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,EAA6B,CAAC;IAExE,OAAO,CACL,CAAC,cAAc,CACb,SAAS,CAAC,aAAa,CACvB,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,QAAQ,CAAC,CAAC,YAAY,CAAC,EACvB,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAkB,CAAC,IAAI,GAAG;IACxB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,UAAU;CACjB,CAAC;AAEF,kBAAkB,CAAC,QAAQ,GAAG;IAC5B,SAAS,EAAE;QACT,OAAO,EAAE;YACP,MAAM;YACN,SAAS;YACT,SAAS;YACT,SAAS;YACT,OAAO;YACP,KAAK;YACL,YAAY;YACZ,UAAU;YACV,OAAO;SACR;QACD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KAC5B;IACD,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;CACxE,CAAC","sourcesContent":["import { Meta, Story } from '@storybook/react';\nimport { useState } from 'react';\n\nimport {\n ConditionInput,\n ConditionInputMode,\n LeafCondition,\n ConditionFieldType\n} from '@pega/cosmos-react-condition-builder';\n\nexport default {\n title: 'Condition Builder/ConditionInput',\n component: ConditionInput\n} as Meta;\n\ninterface ConditionInputStoryProps {\n fieldType: ConditionFieldType;\n mode: ConditionInputMode;\n}\n\nexport const ConditionInputDemo: Story<ConditionInputStoryProps> = (\n args: ConditionInputStoryProps\n) => {\n const [condition, setCondition] = useState<LeafCondition | undefined>();\n\n return (\n <ConditionInput\n fieldName='Field Value'\n fieldType={args.fieldType}\n mode={args.mode}\n condition={condition}\n onChange={setCondition}\n />\n );\n};\n\nConditionInputDemo.args = {\n fieldType: 'TEXT',\n mode: 'advanced'\n};\n\nConditionInputDemo.argTypes = {\n fieldType: {\n options: [\n 'TEXT',\n 'INTEGER',\n 'BOOLEAN',\n 'DECIMAL',\n 'EMAIL',\n 'URL',\n 'PERCENTAGE',\n 'CURRENCY',\n 'PHONE'\n ],\n control: { type: 'select' }\n },\n mode: { options: ['default', 'advanced'], control: { type: 'select' } }\n};\n"]}
@@ -0,0 +1,4 @@
1
+ import { Condition, PromotedFiltersProps } from '@pega/cosmos-react-condition-builder';
2
+ export declare const demoCondition: Condition;
3
+ export declare const demoFilters: PromotedFiltersProps['filters'];
4
+ //# sourceMappingURL=PromotedFilters.mocks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromotedFilters.mocks.d.ts","sourceRoot":"","sources":["../../../src/condition-builder/PromotedFilters/PromotedFilters.mocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAEvF,eAAO,MAAM,aAAa,EAAE,SAoB3B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,oBAAoB,CAAC,SAAS,CAevD,CAAC"}
@@ -0,0 +1,38 @@
1
+ export const demoCondition = {
2
+ AND: [
3
+ {
4
+ condition: {
5
+ lhs: {
6
+ field: 'FirstName'
7
+ },
8
+ comparator: 'EQ',
9
+ rhs: {
10
+ value: 'John'
11
+ }
12
+ }
13
+ },
14
+ {
15
+ condition: {
16
+ lhs: { field: 'RemoteEmployee' },
17
+ comparator: 'IS_TRUE'
18
+ }
19
+ }
20
+ ]
21
+ };
22
+ export const demoFilters = [
23
+ { fieldName: 'FirstName', fieldType: 'TEXT', mode: 'default', fieldLabel: 'First name' },
24
+ { fieldName: 'LastName', fieldType: 'TEXT', mode: 'advanced', fieldLabel: 'Last name' },
25
+ {
26
+ fieldName: 'Experience',
27
+ fieldType: 'INTEGER',
28
+ mode: 'advanced',
29
+ fieldLabel: 'Years of experience'
30
+ },
31
+ {
32
+ fieldName: 'RemoteEmployee',
33
+ fieldType: 'BOOLEAN',
34
+ mode: 'default',
35
+ fieldLabel: 'Remote employee'
36
+ }
37
+ ];
38
+ //# sourceMappingURL=PromotedFilters.mocks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromotedFilters.mocks.js","sourceRoot":"","sources":["../../../src/condition-builder/PromotedFilters/PromotedFilters.mocks.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,aAAa,GAAc;IACtC,GAAG,EAAE;QACH;YACE,SAAS,EAAE;gBACT,GAAG,EAAE;oBACH,KAAK,EAAE,WAAW;iBACnB;gBACD,UAAU,EAAE,IAAI;gBAChB,GAAG,EAAE;oBACH,KAAK,EAAE,MAAM;iBACd;aACF;SACF;QACD;YACE,SAAS,EAAE;gBACT,GAAG,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;gBAChC,UAAU,EAAE,SAAS;aACtB;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAoC;IAC1D,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE;IACxF,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE;IACvF;QACE,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,SAAS;QACpB,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,qBAAqB;KAClC;IACD;QACE,SAAS,EAAE,gBAAgB;QAC3B,SAAS,EAAE,SAAS;QACpB,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,iBAAiB;KAC9B;CACF,CAAC","sourcesContent":["import { Condition, PromotedFiltersProps } from '@pega/cosmos-react-condition-builder';\n\nexport const demoCondition: Condition = {\n AND: [\n {\n condition: {\n lhs: {\n field: 'FirstName'\n },\n comparator: 'EQ',\n rhs: {\n value: 'John'\n }\n }\n },\n {\n condition: {\n lhs: { field: 'RemoteEmployee' },\n comparator: 'IS_TRUE'\n }\n }\n ]\n};\n\nexport const demoFilters: PromotedFiltersProps['filters'] = [\n { fieldName: 'FirstName', fieldType: 'TEXT', mode: 'default', fieldLabel: 'First name' },\n { fieldName: 'LastName', fieldType: 'TEXT', mode: 'advanced', fieldLabel: 'Last name' },\n {\n fieldName: 'Experience',\n fieldType: 'INTEGER',\n mode: 'advanced',\n fieldLabel: 'Years of experience'\n },\n {\n fieldName: 'RemoteEmployee',\n fieldType: 'BOOLEAN',\n mode: 'default',\n fieldLabel: 'Remote employee'\n }\n];\n"]}
@@ -0,0 +1,6 @@
1
+ import { Meta, Story } from '@storybook/react';
2
+ import { PromotedFiltersProps } from '@pega/cosmos-react-condition-builder';
3
+ declare const _default: Meta<import("@storybook/react").Args>;
4
+ export default _default;
5
+ export declare const PromotedFiltersDemo: Story<PromotedFiltersProps>;
6
+ //# sourceMappingURL=PromotedFilters.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromotedFilters.stories.d.ts","sourceRoot":"","sources":["../../../src/condition-builder/PromotedFilters/PromotedFilters.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAGL,oBAAoB,EACrB,MAAM,sCAAsC,CAAC;;AAM9C,wBAGU;AAEV,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,oBAAoB,CAc3D,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { useState } from 'react';
2
+ import { PromotedFilters } from '@pega/cosmos-react-condition-builder';
3
+ import { Flex, Text } from '@pega/cosmos-react-core';
4
+ import { demoCondition, demoFilters } from './PromotedFilters.mocks';
5
+ import { StyledCodeBlock } from './PromotedFilters.styles';
6
+ export default {
7
+ title: 'Condition Builder/PromotedFilters',
8
+ component: PromotedFilters
9
+ };
10
+ export const PromotedFiltersDemo = () => {
11
+ const [condition, setCondition] = useState(demoCondition);
12
+ return (<Flex container={{ direction: 'column' }}>
13
+ <PromotedFilters filters={demoFilters} condition={condition} onChange={setCondition}/>
14
+ <div>
15
+ <Text variant='h4'>Output:</Text>
16
+ <StyledCodeBlock>
17
+ {condition ? JSON.stringify(condition, null, 2) : '(No condition)'}
18
+ </StyledCodeBlock>
19
+ </div>
20
+ </Flex>);
21
+ };
22
+ //# sourceMappingURL=PromotedFilters.stories.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromotedFilters.stories.jsx","sourceRoot":"","sources":["../../../src/condition-builder/PromotedFilters/PromotedFilters.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAEL,eAAe,EAEhB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,eAAe;IACb,KAAK,EAAE,mCAAmC;IAC1C,SAAS,EAAE,eAAe;CACnB,CAAC;AAEV,MAAM,CAAC,MAAM,mBAAmB,GAAgC,GAAG,EAAE;IACnE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAwB,aAAa,CAAC,CAAC;IAEjF,OAAO,CACL,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CACvC;MAAA,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,EACpF;MAAA,CAAC,GAAG,CACF;QAAA,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAChC;QAAA,CAAC,eAAe,CACd;UAAA,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CACpE;QAAA,EAAE,eAAe,CACnB;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { Meta, Story } from '@storybook/react';\nimport { useState } from 'react';\n\nimport {\n Condition,\n PromotedFilters,\n PromotedFiltersProps\n} from '@pega/cosmos-react-condition-builder';\nimport { Flex, Text } from '@pega/cosmos-react-core';\n\nimport { demoCondition, demoFilters } from './PromotedFilters.mocks';\nimport { StyledCodeBlock } from './PromotedFilters.styles';\n\nexport default {\n title: 'Condition Builder/PromotedFilters',\n component: PromotedFilters\n} as Meta;\n\nexport const PromotedFiltersDemo: Story<PromotedFiltersProps> = () => {\n const [condition, setCondition] = useState<Condition | undefined>(demoCondition);\n\n return (\n <Flex container={{ direction: 'column' }}>\n <PromotedFilters filters={demoFilters} condition={condition} onChange={setCondition} />\n <div>\n <Text variant='h4'>Output:</Text>\n <StyledCodeBlock>\n {condition ? JSON.stringify(condition, null, 2) : '(No condition)'}\n </StyledCodeBlock>\n </div>\n </Flex>\n );\n};\n"]}
@@ -0,0 +1,2 @@
1
+ export declare const StyledCodeBlock: import("styled-components").StyledComponent<"pre", import("styled-components").DefaultTheme, {}, never>;
2
+ //# sourceMappingURL=PromotedFilters.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromotedFilters.styles.d.ts","sourceRoot":"","sources":["../../../src/condition-builder/PromotedFilters/PromotedFilters.styles.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,eAAe,yGAG3B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import styled from 'styled-components';
2
+ import { defaultThemeProp } from '@pega/cosmos-react-core';
3
+ export const StyledCodeBlock = styled.pre `
4
+ padding: ${props => props.theme.base.spacing};
5
+ margin-bottom: ${props => props.theme.base.spacing};
6
+ `;
7
+ StyledCodeBlock.defaultProps = defaultThemeProp;
8
+ //# sourceMappingURL=PromotedFilters.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromotedFilters.styles.js","sourceRoot":"","sources":["../../../src/condition-builder/PromotedFilters/PromotedFilters.styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;aAC5B,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;mBAC3B,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;CACnD,CAAC;AAEF,eAAe,CAAC,YAAY,GAAG,gBAAgB,CAAC","sourcesContent":["import styled from 'styled-components';\n\nimport { defaultThemeProp } from '@pega/cosmos-react-core';\n\nexport const StyledCodeBlock = styled.pre`\n padding: ${props => props.theme.base.spacing};\n margin-bottom: ${props => props.theme.base.spacing};\n`;\n\nStyledCodeBlock.defaultProps = defaultThemeProp;\n"]}
@@ -5,6 +5,7 @@ export default _default;
5
5
  interface AppShellStoryProps {
6
6
  main?: AppShellProps['main'];
7
7
  appInfo?: AppShellProps['appInfo'];
8
+ searchPage?: AppShellProps['searchPage'];
8
9
  banners?: AppShellProps['banners'];
9
10
  cases?: AppShellProps['cases'];
10
11
  caseLinks?: AppShellProps['links'];
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.stories.d.ts","sourceRoot":"","sources":["../../../src/core/AppShell/AppShell.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAEL,aAAa,EAmBd,MAAM,yBAAyB,CAAC;;AAcjC,wBAOU;AAEV,UAAU,kBAAkB;IAE1B,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAGrC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;IAC9C,UAAU,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;IAChD,YAAY,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;IACxD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,kBAAkB,CAqPlD,CAAC;AAsCF,UAAU,yBAAyB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,yBAAyB,CAqBjE,CAAC"}
1
+ {"version":3,"file":"AppShell.stories.d.ts","sourceRoot":"","sources":["../../../src/core/AppShell/AppShell.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAEL,aAAa,EAmBd,MAAM,yBAAyB,CAAC;;AAcjC,wBAOU;AAEV,UAAU,kBAAkB;IAE1B,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACnC,UAAU,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAGrC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;IAC9C,UAAU,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;IAChD,YAAY,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;IACxD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,kBAAkB,CAuPlD,CAAC;AAsCF,UAAU,yBAAyB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,yBAAyB,CAqBjE,CAAC"}
@@ -178,9 +178,10 @@ export const AppShellDemo = (args) => {
178
178
  onSearchChange: (value) => {
179
179
  setSearchVal(value);
180
180
  },
181
- value: searchVal
181
+ value: searchVal,
182
+ filters: ['Story', 'Bug']
182
183
  }
183
- : undefined} appHeader={args.appHeader} caseTypes={args.casesTypesEmpty ? [] : args.createLinks || defaultCreateLinks} links={linksWithHandlers} main={args.main || defaultMainContent} cases={args.cases} banners={args.banners} operator={operatorData} utils={args.utils || defaultUtils} environment={args.environmentName
184
+ : undefined} appHeader={args.appHeader} searchPage={args.searchPage} caseTypes={args.casesTypesEmpty ? [] : args.createLinks || defaultCreateLinks} links={linksWithHandlers} main={args.main || defaultMainContent} cases={args.cases} banners={args.banners} operator={operatorData} utils={args.utils || defaultUtils} environment={args.environmentName
184
185
  ? {
185
186
  name: args.environmentName,
186
187
  color: args.environmentColor