@pega/cosmos-react-demos 4.0.0-dev.1.2 → 4.0.0-dev.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/jsx/build/AppShell/AppShell.mocks.d.ts +18 -55
- package/jsx/build/AppShell/AppShell.mocks.d.ts.map +1 -1
- package/jsx/build/AppShell/AppShell.mocks.jsx +249 -376
- package/jsx/build/AppShell/AppShell.mocks.jsx.map +1 -1
- package/jsx/build/AppShell/AppShell.stories.d.ts +13 -10
- package/jsx/build/AppShell/AppShell.stories.d.ts.map +1 -1
- package/jsx/build/AppShell/AppShell.stories.jsx +72 -98
- package/jsx/build/AppShell/AppShell.stories.jsx.map +1 -1
- package/jsx/build/ExpressionBuilder/ExpressionBuilder.mocks.d.ts +2 -0
- package/jsx/build/ExpressionBuilder/ExpressionBuilder.mocks.d.ts.map +1 -1
- package/jsx/build/ExpressionBuilder/ExpressionBuilder.mocks.js +23 -0
- package/jsx/build/ExpressionBuilder/ExpressionBuilder.mocks.js.map +1 -1
- package/jsx/build/ExpressionBuilder/ExpressionBuilder.stories.d.ts.map +1 -1
- package/jsx/build/ExpressionBuilder/ExpressionBuilder.stories.jsx +4 -4
- package/jsx/build/ExpressionBuilder/ExpressionBuilder.stories.jsx.map +1 -1
- package/jsx/build/FlowModeller/FlowModeller.stories.d.ts.map +1 -1
- package/jsx/build/FlowModeller/FlowModeller.stories.jsx +125 -9
- package/jsx/build/FlowModeller/FlowModeller.stories.jsx.map +1 -1
- package/jsx/build/LifeCycle/LifeCycle.stories.d.ts.map +1 -1
- package/jsx/build/LifeCycle/LifeCycle.stories.jsx +44 -3
- package/jsx/build/LifeCycle/LifeCycle.stories.jsx.map +1 -1
- package/jsx/build/MobileBuildSummary/MobileBuildSummary.mocks.d.ts +1 -0
- package/jsx/build/MobileBuildSummary/MobileBuildSummary.mocks.d.ts.map +1 -1
- package/jsx/build/MobileBuildSummary/MobileBuildSummary.mocks.js +2 -1
- package/jsx/build/MobileBuildSummary/MobileBuildSummary.mocks.js.map +1 -1
- package/jsx/build/ObjectSelect/ObjectSelect.mocks.d.ts +3 -2
- package/jsx/build/ObjectSelect/ObjectSelect.mocks.d.ts.map +1 -1
- package/jsx/build/ObjectSelect/ObjectSelect.mocks.jsx +2 -0
- package/jsx/build/ObjectSelect/ObjectSelect.mocks.jsx.map +1 -1
- package/jsx/build/PageBanner/PageBanner.stories.d.ts +15 -0
- package/jsx/build/PageBanner/PageBanner.stories.d.ts.map +1 -0
- package/jsx/build/PageBanner/PageBanner.stories.jsx +41 -0
- package/jsx/build/PageBanner/PageBanner.stories.jsx.map +1 -0
- package/jsx/build/PageTemplates/GalleryPage.mocks.d.ts +0 -2
- package/jsx/build/PageTemplates/GalleryPage.mocks.d.ts.map +1 -1
- package/jsx/build/PageTemplates/GalleryPage.mocks.jsx +1 -50
- package/jsx/build/PageTemplates/GalleryPage.mocks.jsx.map +1 -1
- package/jsx/build/PageTemplates/GalleryPage.stories.d.ts +7 -3
- package/jsx/build/PageTemplates/GalleryPage.stories.d.ts.map +1 -1
- package/jsx/build/PageTemplates/GalleryPage.stories.jsx +32 -31
- package/jsx/build/PageTemplates/GalleryPage.stories.jsx.map +1 -1
- package/jsx/build/PageTemplates/PageTemplates.mocks.d.ts +0 -1
- package/jsx/build/PageTemplates/PageTemplates.mocks.d.ts.map +1 -1
- package/jsx/build/PageTemplates/PageTemplates.mocks.jsx +2 -156
- package/jsx/build/PageTemplates/PageTemplates.mocks.jsx.map +1 -1
- package/jsx/build/PageTemplates/PageTemplates.stories.d.ts.map +1 -1
- package/jsx/build/PageTemplates/PageTemplates.stories.jsx +6 -5
- package/jsx/build/PageTemplates/PageTemplates.stories.jsx.map +1 -1
- package/jsx/build/PageTemplates/ShowcasePage.stories.d.ts +17 -0
- package/jsx/build/PageTemplates/ShowcasePage.stories.d.ts.map +1 -0
- package/jsx/build/PageTemplates/ShowcasePage.stories.jsx +42 -0
- package/jsx/build/PageTemplates/ShowcasePage.stories.jsx.map +1 -0
- package/jsx/condition-builder/ConditionBuilder/props.mock.d.ts.map +1 -1
- package/jsx/condition-builder/ConditionBuilder/props.mock.js +4 -2
- package/jsx/condition-builder/ConditionBuilder/props.mock.js.map +1 -1
- package/jsx/core/AppShell/AppShell.mocks.jsx +1 -1
- package/jsx/core/AppShell/AppShell.mocks.jsx.map +1 -1
- package/jsx/core/AppShell/AppShell.stories.d.ts +1 -0
- package/jsx/core/AppShell/AppShell.stories.d.ts.map +1 -1
- package/jsx/core/AppShell/AppShell.stories.jsx +52 -15
- package/jsx/core/AppShell/AppShell.stories.jsx.map +1 -1
- package/jsx/core/Backdrop/Backdrop.stories.d.ts.map +1 -1
- package/jsx/core/Backdrop/Backdrop.stories.jsx +12 -12
- package/jsx/core/Backdrop/Backdrop.stories.jsx.map +1 -1
- package/jsx/core/Badges/Count.stories.jsx +1 -1
- package/jsx/core/Badges/Count.stories.jsx.map +1 -1
- package/jsx/core/Banner/Banner.stories.d.ts +8 -4
- package/jsx/core/Banner/Banner.stories.d.ts.map +1 -1
- package/jsx/core/Banner/Banner.stories.jsx +95 -46
- package/jsx/core/Banner/Banner.stories.jsx.map +1 -1
- package/jsx/core/Currency/Currency.stories.d.ts +1 -1
- package/jsx/core/Currency/Currency.stories.d.ts.map +1 -1
- package/jsx/core/Dialog/Dialog.mocks.d.ts +26 -0
- package/jsx/core/Dialog/Dialog.mocks.d.ts.map +1 -0
- package/jsx/core/Dialog/Dialog.mocks.jsx +136 -0
- package/jsx/core/Dialog/Dialog.mocks.jsx.map +1 -0
- package/jsx/core/Dialog/Dialog.stories.d.ts +1 -1
- package/jsx/core/Dialog/Dialog.stories.d.ts.map +1 -1
- package/jsx/core/Dialog/Dialog.stories.jsx +78 -69
- package/jsx/core/Dialog/Dialog.stories.jsx.map +1 -1
- package/jsx/core/FieldGroup/FieldGroupList.mocks.d.ts +1 -1
- package/jsx/core/FieldGroup/FieldGroupList.mocks.d.ts.map +1 -1
- package/jsx/core/Form/Form.stories.d.ts.map +1 -1
- package/jsx/core/Form/Form.stories.jsx +2 -2
- package/jsx/core/Form/Form.stories.jsx.map +1 -1
- package/jsx/core/Link/Link.stories.d.ts +8 -4
- package/jsx/core/Link/Link.stories.d.ts.map +1 -1
- package/jsx/core/Link/Link.stories.jsx +13 -30
- package/jsx/core/Link/Link.stories.jsx.map +1 -1
- package/jsx/core/ListToolbar/ListToolbar.mocks.d.ts.map +1 -1
- package/jsx/core/ListToolbar/ListToolbar.mocks.jsx +47 -52
- package/jsx/core/ListToolbar/ListToolbar.mocks.jsx.map +1 -1
- package/jsx/core/ListToolbar/ListToolbar.stories.d.ts +1 -2
- package/jsx/core/ListToolbar/ListToolbar.stories.d.ts.map +1 -1
- package/jsx/core/ListToolbar/ListToolbar.stories.jsx +13 -18
- package/jsx/core/ListToolbar/ListToolbar.stories.jsx.map +1 -1
- package/jsx/core/LiveLog/LiveLog.mocks.d.ts +5 -0
- package/jsx/core/LiveLog/LiveLog.mocks.d.ts.map +1 -0
- package/jsx/core/LiveLog/LiveLog.mocks.jsx +47 -0
- package/jsx/core/LiveLog/LiveLog.mocks.jsx.map +1 -0
- package/jsx/core/LiveLog/LiveLog.stories.d.ts +9 -0
- package/jsx/core/LiveLog/LiveLog.stories.d.ts.map +1 -0
- package/jsx/core/LiveLog/LiveLog.stories.jsx +19 -0
- package/jsx/core/LiveLog/LiveLog.stories.jsx.map +1 -0
- package/jsx/core/Location/Location.stories.jsx +2 -2
- package/jsx/core/Location/Location.stories.jsx.map +1 -1
- package/jsx/core/MenuButton/MenuButton.stories.d.ts +1 -1
- package/jsx/core/MenuButton/MenuButton.stories.d.ts.map +1 -1
- package/jsx/core/Modal/Modal.mocks.d.ts +1 -1
- package/jsx/core/Modal/Modal.mocks.d.ts.map +1 -1
- package/jsx/core/MultiStepForm/MultiStepForm.stories.d.ts.map +1 -1
- package/jsx/core/MultiStepForm/MultiStepForm.stories.jsx +12 -2
- package/jsx/core/MultiStepForm/MultiStepForm.stories.jsx.map +1 -1
- package/jsx/core/Number/Number.stories.d.ts +1 -1
- package/jsx/core/Number/Number.stories.d.ts.map +1 -1
- package/jsx/core/PageTemplates/PageTemplates.stories.d.ts +1 -1
- package/jsx/core/PageTemplates/PageTemplates.stories.d.ts.map +1 -1
- package/jsx/core/PageTemplates/PageTemplates.stories.jsx +2 -2
- package/jsx/core/PageTemplates/PageTemplates.stories.jsx.map +1 -1
- package/jsx/core/Progress/Progress.stories.d.ts +7 -2
- package/jsx/core/Progress/Progress.stories.d.ts.map +1 -1
- package/jsx/core/Progress/Progress.stories.jsx +82 -51
- package/jsx/core/Progress/Progress.stories.jsx.map +1 -1
- package/jsx/core/Progress/Progress.styles.d.ts.map +1 -1
- package/jsx/core/Progress/Progress.styles.js +2 -1
- package/jsx/core/Progress/Progress.styles.js.map +1 -1
- package/jsx/core/QRCode/QRCode.stories.d.ts +9 -0
- package/jsx/core/QRCode/QRCode.stories.d.ts.map +1 -0
- package/jsx/core/QRCode/QRCode.stories.jsx +17 -0
- package/jsx/core/QRCode/QRCode.stories.jsx.map +1 -0
- package/jsx/core/SearchInput/SearchInput.stories.jsx +1 -1
- package/jsx/core/SearchInput/SearchInput.stories.jsx.map +1 -1
- package/jsx/core/Slider/Slider.stories.d.ts +1 -1
- package/jsx/core/Slider/Slider.stories.d.ts.map +1 -1
- package/jsx/core/SummaryItem/SummaryItem.stories.d.ts +1 -1
- package/jsx/core/SummaryItem/SummaryItem.stories.d.ts.map +1 -1
- package/jsx/core/Tree/Tree.stories.d.ts +1 -1
- package/jsx/core/Tree/Tree.stories.d.ts.map +1 -1
- package/jsx/core/Tree/Tree.stories.jsx +10 -18
- package/jsx/core/Tree/Tree.stories.jsx.map +1 -1
- package/jsx/core/URL/URL.stories.jsx +1 -1
- package/jsx/core/URL/URL.stories.jsx.map +1 -1
- package/jsx/cs/CSAppShell/CSAppShell.mocks.d.ts +18 -1
- package/jsx/cs/CSAppShell/CSAppShell.mocks.d.ts.map +1 -1
- package/jsx/cs/CSAppShell/CSAppShell.mocks.jsx +139 -4
- package/jsx/cs/CSAppShell/CSAppShell.mocks.jsx.map +1 -1
- package/jsx/cs/CSAppShell/CSAppShell.stories.d.ts.map +1 -1
- package/jsx/cs/CSAppShell/CSAppShell.stories.jsx +3 -33
- package/jsx/cs/CSAppShell/CSAppShell.stories.jsx.map +1 -1
- package/jsx/cs/CallControlPanel/CallControlPanel.mocks.d.ts +2 -2
- package/jsx/cs/CallControlPanel/CallControlPanel.mocks.d.ts.map +1 -1
- package/jsx/cs/CallControlPanel/CallControlPanel.stories.d.ts.map +1 -1
- package/jsx/cs/CallControlPanel/CallControlPanel.stories.jsx +1 -2
- package/jsx/cs/CallControlPanel/CallControlPanel.stories.jsx.map +1 -1
- package/jsx/cs/InteractionNotification/InteractionNotification.stories.d.ts +3 -1
- package/jsx/cs/InteractionNotification/InteractionNotification.stories.d.ts.map +1 -1
- package/jsx/cs/InteractionNotification/InteractionNotification.stories.jsx +18 -4
- package/jsx/cs/InteractionNotification/InteractionNotification.stories.jsx.map +1 -1
- package/jsx/cs/TaskManager/TaskManager.stories.d.ts.map +1 -1
- package/jsx/cs/TaskManager/TaskManager.stories.jsx +1 -1
- package/jsx/cs/TaskManager/TaskManager.stories.jsx.map +1 -1
- package/jsx/dnd/StandardDragDropList/Popover.d.ts +1 -1
- package/jsx/dnd/StandardDragDropList/Popover.d.ts.map +1 -1
- package/jsx/dnd/StandardDragDropList/mockData.d.ts +2 -2
- package/jsx/dnd/StandardDragDropList/mockData.d.ts.map +1 -1
- package/jsx/rte/Editor/Editor.mocks.d.ts +7 -0
- package/jsx/rte/Editor/Editor.mocks.d.ts.map +1 -1
- package/jsx/social/Chat/Chat.mocks.d.ts +2 -1
- package/jsx/social/Chat/Chat.mocks.d.ts.map +1 -1
- package/jsx/social/Chat/Chat.mocks.js +26 -0
- package/jsx/social/Chat/Chat.mocks.js.map +1 -1
- package/jsx/social/Chat/Chat.stories.d.ts +5 -2
- package/jsx/social/Chat/Chat.stories.d.ts.map +1 -1
- package/jsx/social/Chat/Chat.stories.jsx +35 -103
- package/jsx/social/Chat/Chat.stories.jsx.map +1 -1
- package/jsx/social/Email/Email.mocks.d.ts +50 -8
- package/jsx/social/Email/Email.mocks.d.ts.map +1 -1
- package/jsx/social/Email/Email.mocks.jsx +130 -18
- package/jsx/social/Email/Email.mocks.jsx.map +1 -1
- package/jsx/social/Email/Email.stories.d.ts +10 -0
- package/jsx/social/Email/Email.stories.d.ts.map +1 -1
- package/jsx/social/Email/Email.stories.jsx +143 -23
- package/jsx/social/Email/Email.stories.jsx.map +1 -1
- package/jsx/social/Feed/Feed.mocks.d.ts.map +1 -1
- package/jsx/social/Feed/Feed.mocks.jsx +2 -2
- package/jsx/social/Feed/Feed.mocks.jsx.map +1 -1
- package/jsx/social/Feed/FeedPost.stories.d.ts.map +1 -1
- package/jsx/social/Feed/FeedPost.stories.jsx +1 -3
- package/jsx/social/Feed/FeedPost.stories.jsx.map +1 -1
- package/jsx/tools/Clipboard/Clipboard.stories.d.ts.map +1 -1
- package/jsx/tools/Clipboard/Clipboard.stories.jsx +12 -14
- package/jsx/tools/Clipboard/Clipboard.stories.jsx.map +1 -1
- package/jsx/tools/DevTools/DevTools.stories.d.ts.map +1 -1
- package/jsx/tools/DevTools/DevTools.stories.jsx +2 -4
- package/jsx/tools/DevTools/DevTools.stories.jsx.map +1 -1
- package/jsx/tools/PreviewShell/PreviewShell.mocks.d.ts +13 -1
- package/jsx/tools/PreviewShell/PreviewShell.mocks.d.ts.map +1 -1
- package/jsx/tools/PreviewShell/PreviewShell.mocks.jsx +27 -2
- package/jsx/tools/PreviewShell/PreviewShell.mocks.jsx.map +1 -1
- package/jsx/tools/PreviewShell/PreviewShell.stories.d.ts +4 -2
- package/jsx/tools/PreviewShell/PreviewShell.stories.d.ts.map +1 -1
- package/jsx/tools/PreviewShell/PreviewShell.stories.jsx +77 -51
- package/jsx/tools/PreviewShell/PreviewShell.stories.jsx.map +1 -1
- package/jsx/tools/PreviewShell/PreviewShell.styles.d.ts +1 -2
- package/jsx/tools/PreviewShell/PreviewShell.styles.d.ts.map +1 -1
- package/jsx/tools/PreviewShell/PreviewShell.styles.js +1 -2
- package/jsx/tools/PreviewShell/PreviewShell.styles.js.map +1 -1
- package/jsx/work/CaseView/Attachments.mocks.d.ts.map +1 -1
- package/jsx/work/CaseView/Attachments.mocks.jsx +3 -3
- package/jsx/work/CaseView/Attachments.mocks.jsx.map +1 -1
- package/jsx/work/CaseView/CaseView.mocks.d.ts +4 -16
- package/jsx/work/CaseView/CaseView.mocks.d.ts.map +1 -1
- package/jsx/work/CaseView/CaseView.mocks.jsx +25 -13
- package/jsx/work/CaseView/CaseView.mocks.jsx.map +1 -1
- package/jsx/work/CaseView/CaseView.stories.jsx +2 -3
- package/jsx/work/CaseView/CaseView.stories.jsx.map +1 -1
- package/jsx/work/IntelligentGuidance/IntelligentGuidance.stories.d.ts.map +1 -1
- package/jsx/work/IntelligentGuidance/IntelligentGuidance.stories.jsx +9 -2
- package/jsx/work/IntelligentGuidance/IntelligentGuidance.stories.jsx.map +1 -1
- package/jsx/work/SearchResults/SearchResults.mocks.d.ts +1 -1
- package/jsx/work/SearchResults/SearchResults.mocks.d.ts.map +1 -1
- package/jsx/work/SearchResults/SearchResults.stories.d.ts.map +1 -1
- package/jsx/work/SearchResults/SearchResults.stories.jsx +21 -2
- package/jsx/work/SearchResults/SearchResults.stories.jsx.map +1 -1
- package/jsx/work/Stages/Stages.mocks.jsx +6 -6
- package/jsx/work/Stages/Stages.mocks.jsx.map +1 -1
- package/jsx/work/Stages/Stages.stories.d.ts.map +1 -1
- package/jsx/work/Stages/Stages.stories.jsx +22 -8
- package/jsx/work/Stages/Stages.stories.jsx.map +1 -1
- package/jsx/work/Tasks/Tasks.stories.d.ts.map +1 -1
- package/jsx/work/Tasks/Tasks.stories.jsx +15 -13
- package/jsx/work/Tasks/Tasks.stories.jsx.map +1 -1
- package/jsx/work/Timeline/Timeline.stories.jsx +1 -1
- package/jsx/work/Timeline/Timeline.stories.jsx.map +1 -1
- package/jsx/wss/AppShell/AppShell.stories.d.ts.map +1 -1
- package/jsx/wss/AppShell/AppShell.stories.jsx +18 -0
- package/jsx/wss/AppShell/AppShell.stories.jsx.map +1 -1
- package/jsx/wss/CaseView/CaseView.stories.jsx +1 -1
- package/jsx/wss/CaseView/CaseView.stories.jsx.map +1 -1
- package/lib/build/AppShell/AppShell.mocks.d.ts +18 -55
- package/lib/build/AppShell/AppShell.mocks.d.ts.map +1 -1
- package/lib/build/AppShell/AppShell.mocks.js +249 -376
- package/lib/build/AppShell/AppShell.mocks.js.map +1 -1
- package/lib/build/AppShell/AppShell.stories.d.ts +13 -10
- package/lib/build/AppShell/AppShell.stories.d.ts.map +1 -1
- package/lib/build/AppShell/AppShell.stories.js +70 -98
- package/lib/build/AppShell/AppShell.stories.js.map +1 -1
- package/lib/build/ExpressionBuilder/ExpressionBuilder.mocks.d.ts +2 -0
- package/lib/build/ExpressionBuilder/ExpressionBuilder.mocks.d.ts.map +1 -1
- package/lib/build/ExpressionBuilder/ExpressionBuilder.mocks.js +23 -0
- package/lib/build/ExpressionBuilder/ExpressionBuilder.mocks.js.map +1 -1
- package/lib/build/ExpressionBuilder/ExpressionBuilder.stories.d.ts.map +1 -1
- package/lib/build/ExpressionBuilder/ExpressionBuilder.stories.js +4 -4
- package/lib/build/ExpressionBuilder/ExpressionBuilder.stories.js.map +1 -1
- package/lib/build/FlowModeller/FlowModeller.stories.d.ts.map +1 -1
- package/lib/build/FlowModeller/FlowModeller.stories.js +119 -9
- package/lib/build/FlowModeller/FlowModeller.stories.js.map +1 -1
- package/lib/build/LifeCycle/LifeCycle.stories.d.ts.map +1 -1
- package/lib/build/LifeCycle/LifeCycle.stories.js +44 -4
- package/lib/build/LifeCycle/LifeCycle.stories.js.map +1 -1
- package/lib/build/MobileBuildSummary/MobileBuildSummary.mocks.d.ts +1 -0
- package/lib/build/MobileBuildSummary/MobileBuildSummary.mocks.d.ts.map +1 -1
- package/lib/build/MobileBuildSummary/MobileBuildSummary.mocks.js +2 -1
- package/lib/build/MobileBuildSummary/MobileBuildSummary.mocks.js.map +1 -1
- package/lib/build/ObjectSelect/ObjectSelect.mocks.d.ts +3 -2
- package/lib/build/ObjectSelect/ObjectSelect.mocks.d.ts.map +1 -1
- package/lib/build/ObjectSelect/ObjectSelect.mocks.js +2 -0
- package/lib/build/ObjectSelect/ObjectSelect.mocks.js.map +1 -1
- package/lib/build/PageBanner/PageBanner.stories.d.ts +15 -0
- package/lib/build/PageBanner/PageBanner.stories.d.ts.map +1 -0
- package/lib/build/PageBanner/PageBanner.stories.js +42 -0
- package/lib/build/PageBanner/PageBanner.stories.js.map +1 -0
- package/lib/build/PageTemplates/GalleryPage.mocks.d.ts +0 -2
- package/lib/build/PageTemplates/GalleryPage.mocks.d.ts.map +1 -1
- package/lib/build/PageTemplates/GalleryPage.mocks.js +1 -50
- package/lib/build/PageTemplates/GalleryPage.mocks.js.map +1 -1
- package/lib/build/PageTemplates/GalleryPage.stories.d.ts +7 -3
- package/lib/build/PageTemplates/GalleryPage.stories.d.ts.map +1 -1
- package/lib/build/PageTemplates/GalleryPage.stories.js +32 -31
- package/lib/build/PageTemplates/GalleryPage.stories.js.map +1 -1
- package/lib/build/PageTemplates/PageTemplates.mocks.d.ts +0 -1
- package/lib/build/PageTemplates/PageTemplates.mocks.d.ts.map +1 -1
- package/lib/build/PageTemplates/PageTemplates.mocks.js +2 -154
- package/lib/build/PageTemplates/PageTemplates.mocks.js.map +1 -1
- package/lib/build/PageTemplates/PageTemplates.stories.d.ts.map +1 -1
- package/lib/build/PageTemplates/PageTemplates.stories.js +4 -5
- package/lib/build/PageTemplates/PageTemplates.stories.js.map +1 -1
- package/lib/build/PageTemplates/ShowcasePage.stories.d.ts +17 -0
- package/lib/build/PageTemplates/ShowcasePage.stories.d.ts.map +1 -0
- package/lib/build/PageTemplates/ShowcasePage.stories.js +43 -0
- package/lib/build/PageTemplates/ShowcasePage.stories.js.map +1 -0
- package/lib/condition-builder/ConditionBuilder/props.mock.d.ts.map +1 -1
- package/lib/condition-builder/ConditionBuilder/props.mock.js +4 -2
- package/lib/condition-builder/ConditionBuilder/props.mock.js.map +1 -1
- package/lib/core/AppShell/AppShell.mocks.js +1 -1
- package/lib/core/AppShell/AppShell.mocks.js.map +1 -1
- package/lib/core/AppShell/AppShell.stories.d.ts +1 -0
- package/lib/core/AppShell/AppShell.stories.d.ts.map +1 -1
- package/lib/core/AppShell/AppShell.stories.js +52 -15
- package/lib/core/AppShell/AppShell.stories.js.map +1 -1
- package/lib/core/Backdrop/Backdrop.stories.d.ts.map +1 -1
- package/lib/core/Backdrop/Backdrop.stories.js +2 -2
- package/lib/core/Backdrop/Backdrop.stories.js.map +1 -1
- package/lib/core/Badges/Count.stories.js +1 -1
- package/lib/core/Badges/Count.stories.js.map +1 -1
- package/lib/core/Banner/Banner.stories.d.ts +8 -4
- package/lib/core/Banner/Banner.stories.d.ts.map +1 -1
- package/lib/core/Banner/Banner.stories.js +92 -32
- package/lib/core/Banner/Banner.stories.js.map +1 -1
- package/lib/core/Currency/Currency.stories.d.ts +1 -1
- package/lib/core/Currency/Currency.stories.d.ts.map +1 -1
- package/lib/core/Dialog/Dialog.mocks.d.ts +26 -0
- package/lib/core/Dialog/Dialog.mocks.d.ts.map +1 -0
- package/lib/core/Dialog/Dialog.mocks.js +132 -0
- package/lib/core/Dialog/Dialog.mocks.js.map +1 -0
- package/lib/core/Dialog/Dialog.stories.d.ts +1 -1
- package/lib/core/Dialog/Dialog.stories.d.ts.map +1 -1
- package/lib/core/Dialog/Dialog.stories.js +65 -41
- package/lib/core/Dialog/Dialog.stories.js.map +1 -1
- package/lib/core/FieldGroup/FieldGroupList.mocks.d.ts +1 -1
- package/lib/core/FieldGroup/FieldGroupList.mocks.d.ts.map +1 -1
- package/lib/core/Form/Form.stories.d.ts.map +1 -1
- package/lib/core/Form/Form.stories.js +2 -2
- package/lib/core/Form/Form.stories.js.map +1 -1
- package/lib/core/Link/Link.stories.d.ts +8 -4
- package/lib/core/Link/Link.stories.d.ts.map +1 -1
- package/lib/core/Link/Link.stories.js +6 -9
- package/lib/core/Link/Link.stories.js.map +1 -1
- package/lib/core/ListToolbar/ListToolbar.mocks.d.ts.map +1 -1
- package/lib/core/ListToolbar/ListToolbar.mocks.js +26 -33
- package/lib/core/ListToolbar/ListToolbar.mocks.js.map +1 -1
- package/lib/core/ListToolbar/ListToolbar.stories.d.ts +1 -2
- package/lib/core/ListToolbar/ListToolbar.stories.d.ts.map +1 -1
- package/lib/core/ListToolbar/ListToolbar.stories.js +23 -20
- package/lib/core/ListToolbar/ListToolbar.stories.js.map +1 -1
- package/lib/core/LiveLog/LiveLog.mocks.d.ts +5 -0
- package/lib/core/LiveLog/LiveLog.mocks.d.ts.map +1 -0
- package/lib/core/LiveLog/LiveLog.mocks.js +29 -0
- package/lib/core/LiveLog/LiveLog.mocks.js.map +1 -0
- package/lib/core/LiveLog/LiveLog.stories.d.ts +9 -0
- package/lib/core/LiveLog/LiveLog.stories.d.ts.map +1 -0
- package/lib/core/LiveLog/LiveLog.stories.js +20 -0
- package/lib/core/LiveLog/LiveLog.stories.js.map +1 -0
- package/lib/core/Location/Location.stories.js +2 -2
- package/lib/core/Location/Location.stories.js.map +1 -1
- package/lib/core/MenuButton/MenuButton.stories.d.ts +1 -1
- package/lib/core/MenuButton/MenuButton.stories.d.ts.map +1 -1
- package/lib/core/Modal/Modal.mocks.d.ts +1 -1
- package/lib/core/Modal/Modal.mocks.d.ts.map +1 -1
- package/lib/core/MultiStepForm/MultiStepForm.stories.d.ts.map +1 -1
- package/lib/core/MultiStepForm/MultiStepForm.stories.js +12 -2
- package/lib/core/MultiStepForm/MultiStepForm.stories.js.map +1 -1
- package/lib/core/Number/Number.stories.d.ts +1 -1
- package/lib/core/Number/Number.stories.d.ts.map +1 -1
- package/lib/core/PageTemplates/PageTemplates.stories.d.ts +1 -1
- package/lib/core/PageTemplates/PageTemplates.stories.d.ts.map +1 -1
- package/lib/core/PageTemplates/PageTemplates.stories.js +2 -2
- package/lib/core/PageTemplates/PageTemplates.stories.js.map +1 -1
- package/lib/core/Progress/Progress.stories.d.ts +7 -2
- package/lib/core/Progress/Progress.stories.d.ts.map +1 -1
- package/lib/core/Progress/Progress.stories.js +68 -44
- package/lib/core/Progress/Progress.stories.js.map +1 -1
- package/lib/core/Progress/Progress.styles.d.ts.map +1 -1
- package/lib/core/Progress/Progress.styles.js +2 -1
- package/lib/core/Progress/Progress.styles.js.map +1 -1
- package/lib/core/QRCode/QRCode.stories.d.ts +9 -0
- package/lib/core/QRCode/QRCode.stories.d.ts.map +1 -0
- package/lib/core/QRCode/QRCode.stories.js +18 -0
- package/lib/core/QRCode/QRCode.stories.js.map +1 -0
- package/lib/core/SearchInput/SearchInput.stories.js +1 -1
- package/lib/core/SearchInput/SearchInput.stories.js.map +1 -1
- package/lib/core/Slider/Slider.stories.d.ts +1 -1
- package/lib/core/Slider/Slider.stories.d.ts.map +1 -1
- package/lib/core/SummaryItem/SummaryItem.stories.d.ts +1 -1
- package/lib/core/SummaryItem/SummaryItem.stories.d.ts.map +1 -1
- package/lib/core/Tree/Tree.stories.d.ts +1 -1
- package/lib/core/Tree/Tree.stories.d.ts.map +1 -1
- package/lib/core/Tree/Tree.stories.js +10 -20
- package/lib/core/Tree/Tree.stories.js.map +1 -1
- package/lib/core/URL/URL.stories.js +1 -1
- package/lib/core/URL/URL.stories.js.map +1 -1
- package/lib/cs/CSAppShell/CSAppShell.mocks.d.ts +18 -1
- package/lib/cs/CSAppShell/CSAppShell.mocks.d.ts.map +1 -1
- package/lib/cs/CSAppShell/CSAppShell.mocks.js +109 -4
- package/lib/cs/CSAppShell/CSAppShell.mocks.js.map +1 -1
- package/lib/cs/CSAppShell/CSAppShell.stories.d.ts.map +1 -1
- package/lib/cs/CSAppShell/CSAppShell.stories.js +4 -17
- package/lib/cs/CSAppShell/CSAppShell.stories.js.map +1 -1
- package/lib/cs/CallControlPanel/CallControlPanel.mocks.d.ts +2 -2
- package/lib/cs/CallControlPanel/CallControlPanel.mocks.d.ts.map +1 -1
- package/lib/cs/CallControlPanel/CallControlPanel.stories.d.ts.map +1 -1
- package/lib/cs/CallControlPanel/CallControlPanel.stories.js +1 -2
- package/lib/cs/CallControlPanel/CallControlPanel.stories.js.map +1 -1
- package/lib/cs/InteractionNotification/InteractionNotification.stories.d.ts +3 -1
- package/lib/cs/InteractionNotification/InteractionNotification.stories.d.ts.map +1 -1
- package/lib/cs/InteractionNotification/InteractionNotification.stories.js +18 -4
- package/lib/cs/InteractionNotification/InteractionNotification.stories.js.map +1 -1
- package/lib/cs/TaskManager/TaskManager.stories.d.ts.map +1 -1
- package/lib/cs/TaskManager/TaskManager.stories.js +1 -1
- package/lib/cs/TaskManager/TaskManager.stories.js.map +1 -1
- package/lib/dnd/StandardDragDropList/Popover.d.ts +1 -1
- package/lib/dnd/StandardDragDropList/Popover.d.ts.map +1 -1
- package/lib/dnd/StandardDragDropList/mockData.d.ts +2 -2
- package/lib/dnd/StandardDragDropList/mockData.d.ts.map +1 -1
- package/lib/rte/Editor/Editor.mocks.d.ts +7 -0
- package/lib/rte/Editor/Editor.mocks.d.ts.map +1 -1
- package/lib/social/Chat/Chat.mocks.d.ts +2 -1
- package/lib/social/Chat/Chat.mocks.d.ts.map +1 -1
- package/lib/social/Chat/Chat.mocks.js +26 -0
- package/lib/social/Chat/Chat.mocks.js.map +1 -1
- package/lib/social/Chat/Chat.stories.d.ts +5 -2
- package/lib/social/Chat/Chat.stories.d.ts.map +1 -1
- package/lib/social/Chat/Chat.stories.js +36 -78
- package/lib/social/Chat/Chat.stories.js.map +1 -1
- package/lib/social/Email/Email.mocks.d.ts +50 -8
- package/lib/social/Email/Email.mocks.d.ts.map +1 -1
- package/lib/social/Email/Email.mocks.js +130 -18
- package/lib/social/Email/Email.mocks.js.map +1 -1
- package/lib/social/Email/Email.stories.d.ts +10 -0
- package/lib/social/Email/Email.stories.d.ts.map +1 -1
- package/lib/social/Email/Email.stories.js +148 -23
- package/lib/social/Email/Email.stories.js.map +1 -1
- package/lib/social/Feed/Feed.mocks.d.ts.map +1 -1
- package/lib/social/Feed/Feed.mocks.js +2 -2
- package/lib/social/Feed/Feed.mocks.js.map +1 -1
- package/lib/social/Feed/FeedPost.stories.d.ts.map +1 -1
- package/lib/social/Feed/FeedPost.stories.js +1 -1
- package/lib/social/Feed/FeedPost.stories.js.map +1 -1
- package/lib/tools/Clipboard/Clipboard.stories.d.ts.map +1 -1
- package/lib/tools/Clipboard/Clipboard.stories.js +13 -17
- package/lib/tools/Clipboard/Clipboard.stories.js.map +1 -1
- package/lib/tools/DevTools/DevTools.stories.d.ts.map +1 -1
- package/lib/tools/DevTools/DevTools.stories.js +2 -4
- package/lib/tools/DevTools/DevTools.stories.js.map +1 -1
- package/lib/tools/PreviewShell/PreviewShell.mocks.d.ts +13 -1
- package/lib/tools/PreviewShell/PreviewShell.mocks.d.ts.map +1 -1
- package/lib/tools/PreviewShell/PreviewShell.mocks.js +23 -2
- package/lib/tools/PreviewShell/PreviewShell.mocks.js.map +1 -1
- package/lib/tools/PreviewShell/PreviewShell.stories.d.ts +4 -2
- package/lib/tools/PreviewShell/PreviewShell.stories.d.ts.map +1 -1
- package/lib/tools/PreviewShell/PreviewShell.stories.js +72 -52
- package/lib/tools/PreviewShell/PreviewShell.stories.js.map +1 -1
- package/lib/tools/PreviewShell/PreviewShell.styles.d.ts +1 -2
- package/lib/tools/PreviewShell/PreviewShell.styles.d.ts.map +1 -1
- package/lib/tools/PreviewShell/PreviewShell.styles.js +1 -2
- package/lib/tools/PreviewShell/PreviewShell.styles.js.map +1 -1
- package/lib/work/CaseView/Attachments.mocks.d.ts.map +1 -1
- package/lib/work/CaseView/Attachments.mocks.js +3 -3
- package/lib/work/CaseView/Attachments.mocks.js.map +1 -1
- package/lib/work/CaseView/CaseView.mocks.d.ts +4 -16
- package/lib/work/CaseView/CaseView.mocks.d.ts.map +1 -1
- package/lib/work/CaseView/CaseView.mocks.js +25 -13
- package/lib/work/CaseView/CaseView.mocks.js.map +1 -1
- package/lib/work/CaseView/CaseView.stories.js +2 -3
- package/lib/work/CaseView/CaseView.stories.js.map +1 -1
- package/lib/work/IntelligentGuidance/IntelligentGuidance.stories.d.ts.map +1 -1
- package/lib/work/IntelligentGuidance/IntelligentGuidance.stories.js +9 -2
- package/lib/work/IntelligentGuidance/IntelligentGuidance.stories.js.map +1 -1
- package/lib/work/SearchResults/SearchResults.mocks.d.ts +1 -1
- package/lib/work/SearchResults/SearchResults.mocks.d.ts.map +1 -1
- package/lib/work/SearchResults/SearchResults.stories.d.ts.map +1 -1
- package/lib/work/SearchResults/SearchResults.stories.js +21 -2
- package/lib/work/SearchResults/SearchResults.stories.js.map +1 -1
- package/lib/work/Stages/Stages.mocks.js +6 -6
- package/lib/work/Stages/Stages.mocks.js.map +1 -1
- package/lib/work/Stages/Stages.stories.d.ts.map +1 -1
- package/lib/work/Stages/Stages.stories.js +22 -8
- package/lib/work/Stages/Stages.stories.js.map +1 -1
- package/lib/work/Tasks/Tasks.stories.d.ts.map +1 -1
- package/lib/work/Tasks/Tasks.stories.js +2 -2
- package/lib/work/Tasks/Tasks.stories.js.map +1 -1
- package/lib/work/Timeline/Timeline.stories.js +1 -1
- package/lib/work/Timeline/Timeline.stories.js.map +1 -1
- package/lib/wss/AppShell/AppShell.stories.d.ts.map +1 -1
- package/lib/wss/AppShell/AppShell.stories.js +18 -0
- package/lib/wss/AppShell/AppShell.stories.js.map +1 -1
- package/lib/wss/CaseView/CaseView.stories.js +1 -1
- package/lib/wss/CaseView/CaseView.stories.js.map +1 -1
- package/package.json +12 -11
- package/jsx/build/AppHeader/AppHeader.stories.d.ts +0 -13
- package/jsx/build/AppHeader/AppHeader.stories.d.ts.map +0 -1
- package/jsx/build/AppHeader/AppHeader.stories.jsx +0 -153
- package/jsx/build/AppHeader/AppHeader.stories.jsx.map +0 -1
- package/lib/build/AppHeader/AppHeader.stories.d.ts +0 -13
- package/lib/build/AppHeader/AppHeader.stories.d.ts.map +0 -1
- package/lib/build/AppHeader/AppHeader.stories.js +0 -152
- package/lib/build/AppHeader/AppHeader.stories.js.map +0 -1
|
@@ -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, useMemo, 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 GraphData,\n DeleteNodeOutcome,\n ConnectorProps,\n FlowModellerHelper,\n AddNodeHandlerParams,\n RendererProps,\n Workbench,\n FlowModellerProps,\n NodeInfo\n} from '@pega/cosmos-react-build';\nimport {\n useOuterEvent,\n useEscape,\n useElement,\n Modal,\n ComboBox,\n menuHelpers,\n MenuItemProps,\n MenuProps,\n Text,\n useModalManager\n} from '@pega/cosmos-react-core';\n\nimport {\n nodeLibrary,\n nodeActions,\n exampleCRMNodesData,\n exampleCRMConnectorsData,\n emptyNodesData,\n emptyConnectorsData,\n FlowShapeType,\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 Partial<FlowModellerProps> {\n showErrorState?: boolean;\n readOnly?: boolean;\n}\n\nexport const EmptyFlowChartView: Story<FlowChartDemoProps> = (args: FlowChartDemoProps) => {\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<NodeInfo>();\n const [showPopover, setPopover] = useState(false);\n const [activeNodeId, setActiveNodeId] = useState<string>();\n const [buffer, setBuffer] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: [],\n connectors: []\n });\n const [target, setTarget] = useState<string | null>(null);\n const [deletePopoverEl, setDeletePopoverEl] = useElement<HTMLElement>(null);\n const [connectorData, setConnectorData] = useState<ConnectorProps>();\n const { create } = useModalManager();\n\n const [items, setItems] = useState<MenuProps['items']>(\n graphData?.nodes\n .filter(\n node =>\n node.type.id !== 'start' &&\n node.id !== nodeData?.node.id &&\n node.type.id !== FlowShapeType.GOTO.id\n )\n .map(option => {\n return {\n primary: option.label,\n id: option.id,\n selected: false\n } as MenuItemProps;\n })\n );\n\n const selectNode = (nodeId: NodeProps['id']) => {\n const selectedNodeData = FlowModellerHelper.selectNode(graphData, nodeId);\n setOpen(true);\n setNodeData(selectedNodeData);\n setActiveNodeId(selectedNodeData.node.id);\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 isBranchNode = nodeType.id === FlowShapeType.GOTO.id;\n const updatedData = FlowModellerHelper.addNode({\n nodeType,\n graphData,\n isBranchNode,\n metaData\n });\n if (updatedData) {\n setGraphData(updatedData.graphData);\n const selectedNodeData = FlowModellerHelper.selectNode(\n updatedData.graphData,\n updatedData.node.id\n );\n setOpen(true);\n setNodeData(selectedNodeData);\n setActiveNodeId(selectedNodeData.node.id);\n }\n };\n\n const launchModal = (errorTitle: string, errorMessage: string) => {\n create(() => {\n return (\n <Modal heading={errorTitle} center>\n <Text variant='primary'>{errorMessage} </Text>\n </Modal>\n );\n });\n };\n\n const deleteNode = (params: ActionParams, error: string) => {\n if (error) {\n return launchModal('Delete step error', error);\n }\n if (params.nodeId === activeNodeId) {\n setActiveNodeId(undefined);\n setOpen(false);\n }\n setGraphData((params.additionalData as DeleteNodeOutcome)?.graphData);\n };\n\n const onAddRow = (updatedData: GraphData<NodeProps, ConnectorProps>) => {\n if (nodeData) {\n const nodeInfo = FlowModellerHelper.selectNode(updatedData, nodeData.node.id);\n setNodeData(nodeInfo);\n setGraphData(updatedData);\n }\n };\n\n const onDeleteRow = (\n updatedData: GraphData<NodeProps, ConnectorProps>,\n connector: ConnectorProps,\n error: string,\n highlightsData?: RendererProps['highlights'],\n e?: MouseEvent\n ) => {\n if (error) {\n return launchModal('Delete connector error', error);\n }\n setHighlightItems(highlightsData);\n setPopover(prevState => !prevState);\n setConnectorData(connector);\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\n const updatedGraphData: GraphData<NodeProps, ConnectorProps> = buffer;\n // Remove default labels when the current number of connectors are one\n if (nodeData?.outConnectors.length === 2) {\n const defaultConnector: ConnectorProps =\n nodeData?.outConnectors[0].id !== connectorData?.id\n ? nodeData?.outConnectors[0]\n : nodeData?.outConnectors[1];\n for (let i = 0; i < updatedGraphData.connectors.length; i += 1) {\n const connectorEdge: ConnectorProps = updatedGraphData.connectors[i];\n if (\n connectorEdge.id === defaultConnector.id &&\n (connectorEdge.label === 'Default' || connectorEdge.label === 'Otherwise')\n ) {\n connectorEdge.label = '';\n break;\n }\n }\n }\n if (nodeData) {\n const nodeInfo = FlowModellerHelper.selectNode(updatedGraphData, nodeData.node.id);\n setNodeData(nodeInfo);\n }\n\n if (updatedGraphData) setGraphData(updatedGraphData);\n };\n\n const onCancel = () => {\n setHighlightItems(undefined);\n setPopover(false);\n setActiveNodeId(undefined);\n };\n\n const WorkbenchContent = memo(() => {\n const selected = useMemo(() => menuHelpers.getSelected(items)[0], [items]);\n\n const selectItem = (id: MenuItemProps['id']) => {\n const selectedItem = menuHelpers.getItem(items, id);\n if (selectedItem && nodeData) {\n const updatedNode = {\n ...nodeData.node,\n reference: selectedItem.id\n };\n const updatedNodes = [\n updatedNode,\n ...graphData.nodes.filter(node => nodeData?.node.id !== node.id)\n ];\n setNodeData({ ...nodeData, node: updatedNode });\n setGraphData({ ...graphData, nodes: updatedNodes });\n }\n setItems(cur => menuHelpers.selectItem(cur, id, 'single-select'));\n };\n\n return (\n <>\n {nodeData && nodeData.node.type.id !== FlowShapeType.GOTO.id && (\n <DecisionTable\n updatedData={graphData}\n connectors={nodeData?.outConnectors}\n onDeleteRow={onDeleteRow}\n node={nodeData?.node}\n onAddRow={onAddRow}\n readOnly={args.readOnly}\n />\n )}\n {nodeData && nodeData.node.type.id === FlowShapeType.GOTO.id && (\n <ComboBox\n label='Go to'\n placeholder='Select step'\n menu={{\n items,\n onItemClick: selectItem\n }}\n selected={\n selected\n ? {\n items: {\n id: selected.id,\n text: selected.primary\n }\n }\n : undefined\n }\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?.node.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 selectedNodeId={activeNodeId}\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<FlowChartDemoProps> = (args: FlowChartDemoProps) => {\n const [graphData, setGraphData] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: exampleCRMNodesData,\n connectors: exampleCRMConnectorsData\n });\n const [nodeData, setNodeData] = useState<NodeInfo>();\n const [items, setItems] = useState<MenuProps['items']>(\n graphData?.nodes\n .filter(\n node =>\n node.type.id !== 'start' &&\n node.id !== nodeData?.node.id &&\n node.type.id !== FlowShapeType.GOTO.id\n )\n .map(option => {\n return {\n primary: option.label,\n id: option.id,\n selected: false\n } as MenuItemProps;\n })\n );\n const [highlightItems, setHighlightItems] = useState<RendererProps['highlights']>();\n const [open, setOpen] = useState(false);\n // nodeData maintains the state of selected node\n\n const [showPopover, setPopover] = useState(false);\n const [buffer, setBuffer] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: [],\n connectors: []\n });\n const [target, setTarget] = useState<string | null>(null);\n const [deletePopoverEl, setDeletePopoverEl] = useElement<HTMLElement>(null);\n const [connectorData, setConnectorData] = useState<ConnectorProps>();\n const [activeNodeId, setActiveNodeId] = useState<string>();\n const { create } = useModalManager();\n\n const selectNode = (nodeId: NodeProps['id']) => {\n const selectedNodeData = FlowModellerHelper.selectNode(graphData, nodeId);\n setOpen(true);\n setNodeData(selectedNodeData);\n setActiveNodeId(selectedNodeData.node.id);\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 isBranchNode = nodeType.id === FlowShapeType.GOTO.id;\n const updatedData = FlowModellerHelper.addNode({\n nodeType,\n graphData,\n isBranchNode,\n metaData\n });\n if (updatedData) {\n setGraphData(updatedData.graphData);\n const selectedNodeData = FlowModellerHelper.selectNode(\n updatedData.graphData,\n updatedData.node.id\n );\n setOpen(true);\n setNodeData(selectedNodeData);\n setActiveNodeId(selectedNodeData.node.id);\n }\n };\n\n const launchModal = (errorTitle: string, errorMessage: string) => {\n create(() => {\n return (\n <Modal heading={errorTitle} center>\n <Text variant='primary'>{errorMessage} </Text>\n </Modal>\n );\n });\n };\n\n const deleteNode = (params: ActionParams, error: string) => {\n if (error) {\n return launchModal('Delete step error', error);\n }\n if (params.nodeId === activeNodeId) {\n setActiveNodeId(undefined);\n setOpen(false);\n }\n setGraphData((params.additionalData as DeleteNodeOutcome)?.graphData);\n };\n\n const onAddRow = (updatedData: GraphData<NodeProps, ConnectorProps>) => {\n if (nodeData) {\n const nodeInfo = FlowModellerHelper.selectNode(updatedData, nodeData.node.id);\n setNodeData(nodeInfo);\n setGraphData(updatedData);\n }\n };\n\n const onDeleteRow = (\n updatedData: GraphData<NodeProps, ConnectorProps>,\n connector: ConnectorProps,\n error: string,\n highlightsData?: RendererProps['highlights'],\n e?: MouseEvent\n ) => {\n if (error) {\n return launchModal('Delete connector error', error);\n }\n setHighlightItems(highlightsData);\n setPopover(prevState => !prevState);\n setConnectorData(connector);\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\n const updatedGraphData: GraphData<NodeProps, ConnectorProps> = buffer;\n // Remove default labels when the current number of connectors are one\n if (nodeData?.outConnectors.length === 2) {\n const defaultConnector: ConnectorProps =\n nodeData?.outConnectors[0].id !== connectorData?.id\n ? nodeData?.outConnectors[0]\n : nodeData?.outConnectors[1];\n for (let i = 0; i < updatedGraphData.connectors.length; i += 1) {\n const connectorEdge: ConnectorProps = updatedGraphData.connectors[i];\n if (\n connectorEdge.id === defaultConnector.id &&\n (connectorEdge.label === 'Default' || connectorEdge.label === 'Otherwise')\n ) {\n connectorEdge.label = '';\n break;\n }\n }\n }\n\n if (nodeData) {\n const nodeInfo = FlowModellerHelper.selectNode(updatedGraphData, nodeData.node.id);\n setNodeData(nodeInfo);\n }\n\n if (updatedGraphData) setGraphData(updatedGraphData);\n };\n\n const onCancel = () => {\n setHighlightItems(undefined);\n setPopover(false);\n };\n\n const WorkbenchContent = memo(() => {\n const selected = useMemo(() => menuHelpers.getSelected(items)[0], [items]);\n\n const selectItem = (id: MenuItemProps['id']) => {\n const selectedItem = menuHelpers.getItem(items, id);\n if (selectedItem && nodeData) {\n const updatedNode = {\n ...nodeData.node,\n reference: selectedItem.id\n };\n const updatedNodes = [\n updatedNode,\n ...graphData.nodes.filter(node => nodeData?.node.id !== node.id)\n ];\n setNodeData({ ...nodeData, node: updatedNode });\n setGraphData({ ...graphData, nodes: updatedNodes });\n }\n setItems(cur => menuHelpers.selectItem(cur, id, 'single-select'));\n };\n\n return (\n <>\n {nodeData && nodeData.node.type.id !== FlowShapeType.GOTO.id && (\n <DecisionTable\n updatedData={graphData}\n connectors={nodeData?.outConnectors}\n onDeleteRow={onDeleteRow}\n node={nodeData?.node}\n onAddRow={onAddRow}\n readOnly={args.readOnly}\n />\n )}\n {nodeData && nodeData.node.type.id === FlowShapeType.GOTO.id && (\n <ComboBox\n label='Go to'\n placeholder='Select step'\n menu={{\n items,\n onItemClick: selectItem\n }}\n selected={\n selected\n ? {\n items: {\n id: selected.id,\n text: selected.primary\n }\n }\n : undefined\n }\n />\n )}\n </>\n );\n });\n\n useEscape(onCancel);\n\n useOuterEvent('mousedown', [deletePopoverEl], onCancel);\n\n const createGraphData = (showError: boolean) => {\n if (showError) {\n return {\n ...graphData,\n nodes: graphData.nodes.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 }\n return graphData;\n };\n\n return (\n <StyledWrapper>\n <Workbench\n initiallyVisiblePanelId={undefined}\n configurationPanel={{\n open,\n content: <WorkbenchContent />,\n header: nodeData?.node.label as string,\n onDismiss: () => {\n setOpen(false);\n setActiveNodeId(undefined);\n }\n }}\n >\n <FlowModeller\n graphData={createGraphData(args.showErrorState || false)}\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 selectedNodeId={activeNodeId}\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"]}
|
|
1
|
+
{"version":3,"file":"FlowModeller.stories.jsx","sourceRoot":"","sources":["../../../src/build/FlowModeller/FlowModeller.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FocusEvent, memo, useMemo, 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 GraphData,\n DeleteNodeOutcome,\n ConnectorProps,\n FlowModellerHelper,\n AddNodeHandlerParams,\n RendererProps,\n Workbench,\n FlowModellerProps,\n NodeInfo\n} from '@pega/cosmos-react-build';\nimport {\n useOuterEvent,\n useEscape,\n useElement,\n Modal,\n ComboBox,\n menuHelpers,\n MenuItemProps,\n MenuProps,\n Text,\n useModalManager,\n Input\n} from '@pega/cosmos-react-core';\n\nimport {\n nodeLibrary,\n nodeActions,\n exampleCRMNodesData,\n exampleCRMConnectorsData,\n emptyNodesData,\n emptyConnectorsData,\n FlowShapeType,\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 Partial<FlowModellerProps> {\n showErrorState?: boolean;\n readOnly?: boolean;\n}\n\nexport const EmptyFlowChartView: Story<FlowChartDemoProps> = (args: FlowChartDemoProps) => {\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<NodeInfo>();\n const [showPopover, setPopover] = useState(false);\n const [activeNodeId, setActiveNodeId] = useState<string>();\n const [buffer, setBuffer] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: [],\n connectors: []\n });\n const [target, setTarget] = useState<string | null>(null);\n const [deletePopoverEl, setDeletePopoverEl] = useElement<HTMLElement>(null);\n const [connectorData, setConnectorData] = useState<ConnectorProps>();\n const { create } = useModalManager();\n const [inputError, setInputError] = useState(false);\n const [inputValue, setInputValue] = useState<string>();\n const [items, setItems] = useState<MenuProps['items']>(\n graphData?.nodes\n .filter(\n node =>\n node.type.id !== 'start' &&\n node.id !== nodeData?.node.id &&\n node.type.id !== FlowShapeType.GOTO.id\n )\n .map(option => {\n return {\n primary: option.label,\n id: option.id,\n selected: false\n } as MenuItemProps;\n })\n );\n\n const selectNode = (nodeId: NodeProps['id']) => {\n const selectedNodeData = FlowModellerHelper.selectNode(graphData, nodeId);\n setOpen(true);\n setNodeData(selectedNodeData);\n setActiveNodeId(selectedNodeData.node.id);\n setInputValue(selectedNodeData.node.label);\n setInputError(!!selectedNodeData.node.error);\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 isBranchNode = nodeType.id === FlowShapeType.GOTO.id;\n const updatedData = FlowModellerHelper.addNode({\n nodeType,\n graphData,\n isBranchNode,\n metaData\n });\n if (updatedData) {\n setGraphData(updatedData.graphData);\n const selectedNodeData = FlowModellerHelper.selectNode(\n updatedData.graphData,\n updatedData.node.id\n );\n setOpen(true);\n setNodeData(selectedNodeData);\n setActiveNodeId(selectedNodeData.node.id);\n setInputError(false);\n setInputValue(selectedNodeData.node.label);\n }\n };\n\n const launchModal = (errorTitle: string, errorMessage: string) => {\n create(() => {\n return (\n <Modal heading={errorTitle} center>\n <Text variant='primary'>{errorMessage} </Text>\n </Modal>\n );\n });\n };\n\n const deleteNode = (params: ActionParams, error: string) => {\n if (error) {\n return launchModal('Delete step error', error);\n }\n if (params.nodeId === activeNodeId) {\n setActiveNodeId(undefined);\n setOpen(false);\n }\n setGraphData((params.additionalData as DeleteNodeOutcome)?.graphData);\n };\n\n const onAddRow = (updatedData: GraphData<NodeProps, ConnectorProps>) => {\n if (nodeData) {\n const nodeInfo = FlowModellerHelper.selectNode(updatedData, nodeData.node.id);\n setNodeData(nodeInfo);\n setGraphData(updatedData);\n }\n };\n\n const onDeleteRow = (\n updatedData: GraphData<NodeProps, ConnectorProps>,\n connector: ConnectorProps,\n error: string,\n highlightsData?: RendererProps['highlights'],\n e?: MouseEvent\n ) => {\n if (error) {\n return launchModal('Delete connector error', error);\n }\n setHighlightItems(highlightsData);\n setPopover(prevState => !prevState);\n setConnectorData(connector);\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 setInputError(false);\n const updatedGraphData: GraphData<NodeProps, ConnectorProps> = buffer;\n // Remove default labels when the current number of connectors are one\n if (nodeData?.outConnectors.length === 2) {\n const defaultConnector: ConnectorProps =\n nodeData?.outConnectors[0].id !== connectorData?.id\n ? nodeData?.outConnectors[0]\n : nodeData?.outConnectors[1];\n for (let i = 0; i < updatedGraphData.connectors.length; i += 1) {\n const connectorEdge: ConnectorProps = updatedGraphData.connectors[i];\n if (\n connectorEdge.id === defaultConnector.id &&\n (connectorEdge.label === 'Default' || connectorEdge.label === 'Otherwise')\n ) {\n connectorEdge.label = '';\n break;\n }\n }\n }\n if (nodeData) {\n const nodeInfo = FlowModellerHelper.selectNode(updatedGraphData, nodeData.node.id);\n setNodeData(nodeInfo);\n }\n\n if (updatedGraphData) setGraphData(updatedGraphData);\n };\n\n const onCancel = () => {\n setHighlightItems(undefined);\n setPopover(false);\n };\n\n const onSelectedUpdateData = () => {\n if (nodeData && inputValue === '') {\n const updatedNode = {\n ...nodeData?.node,\n label: inputValue,\n error: 'Please fill in all the required fields'\n };\n const updatedNodes = [\n updatedNode,\n ...graphData.nodes.filter(node => nodeData?.node.id !== node.id)\n ];\n setNodeData({ ...nodeData, node: updatedNode });\n setGraphData({ ...graphData, nodes: updatedNodes });\n } else if (nodeData && inputValue) {\n const updatedNode = {\n ...nodeData?.node,\n label: inputValue,\n error: ''\n };\n const updatedNodes = [\n updatedNode,\n ...graphData.nodes.filter(node => nodeData?.node.id !== node.id)\n ];\n setNodeData({ ...nodeData, node: updatedNode });\n setGraphData({ ...graphData, nodes: updatedNodes });\n }\n };\n\n const WorkbenchContent = memo(() => {\n const selected = useMemo(() => menuHelpers.getSelected(items)[0], [items]);\n\n const selectItem = (id: MenuItemProps['id']) => {\n const selectedItem = menuHelpers.getItem(items, id);\n if (selectedItem && nodeData) {\n const updatedNode = {\n ...nodeData.node,\n reference: selectedItem.id\n };\n const updatedNodes = [\n updatedNode,\n ...graphData.nodes.filter(node => nodeData?.node.id !== node.id)\n ];\n setNodeData({ ...nodeData, node: updatedNode });\n setGraphData({ ...graphData, nodes: updatedNodes });\n setInputValue(updatedNode.label);\n setInputError(false);\n }\n setItems(cur => menuHelpers.selectItem(cur, id, 'single-select'));\n };\n const onInputBlur = (e: FocusEvent<HTMLInputElement>) => {\n if (e.target.value === '') {\n setInputError(true);\n } else {\n setInputError(false);\n }\n setInputValue(e.target.value);\n if (nodeData) {\n setNodeData({\n ...nodeData,\n node: {\n ...nodeData.node,\n label: e.target.value\n }\n });\n }\n };\n return (\n <>\n {nodeData && nodeData.node.type.id !== FlowShapeType.GOTO.id && (\n <>\n <Input\n defaultValue={inputValue}\n label='Name'\n info={inputError ? 'Cannot be blank' : ''}\n status={inputError ? 'error' : undefined}\n required\n readOnly={args.readOnly}\n onBlur={onInputBlur}\n />\n <DecisionTable\n updatedData={graphData}\n connectors={nodeData?.outConnectors}\n onDeleteRow={onDeleteRow}\n node={nodeData?.node}\n onAddRow={onAddRow}\n readOnly={args.readOnly}\n />\n </>\n )}\n {nodeData && nodeData.node.type.id === FlowShapeType.GOTO.id && (\n <ComboBox\n label='Go to'\n placeholder='Select step'\n menu={{\n items,\n onItemClick: selectItem\n }}\n selected={\n selected\n ? {\n items: {\n id: selected.id,\n text: selected.primary\n }\n }\n : undefined\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?.node.label || 'Task step',\n onDismiss: () => {\n onSelectedUpdateData();\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 selectedNodeId={activeNodeId}\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<FlowChartDemoProps> = (args: FlowChartDemoProps) => {\n const [graphData, setGraphData] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: exampleCRMNodesData,\n connectors: exampleCRMConnectorsData\n });\n const [nodeData, setNodeData] = useState<NodeInfo>();\n const [items, setItems] = useState<MenuProps['items']>(\n graphData?.nodes\n .filter(\n node =>\n node.type.id !== 'start' &&\n node.id !== nodeData?.node.id &&\n node.type.id !== FlowShapeType.GOTO.id\n )\n .map(option => {\n return {\n primary: option.label,\n id: option.id,\n selected: false\n } as MenuItemProps;\n })\n );\n const [highlightItems, setHighlightItems] = useState<RendererProps['highlights']>();\n const [open, setOpen] = useState(false);\n // nodeData maintains the state of selected node\n\n const [showPopover, setPopover] = useState(false);\n const [buffer, setBuffer] = useState<GraphData<NodeProps, ConnectorProps>>({\n nodes: [],\n connectors: []\n });\n const [target, setTarget] = useState<string | null>(null);\n const [deletePopoverEl, setDeletePopoverEl] = useElement<HTMLElement>(null);\n const [connectorData, setConnectorData] = useState<ConnectorProps>();\n const [activeNodeId, setActiveNodeId] = useState<string>();\n const { create } = useModalManager();\n const [inputError, setInputError] = useState(false);\n const [inputValue, setInputValue] = useState<string>();\n const selectNode = (nodeId: NodeProps['id']) => {\n const selectedNodeData = FlowModellerHelper.selectNode(graphData, nodeId);\n setOpen(true);\n setNodeData(selectedNodeData);\n setActiveNodeId(selectedNodeData.node.id);\n setInputValue(selectedNodeData.node.label);\n setInputError(!!selectedNodeData.node.error);\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 isBranchNode = nodeType.id === FlowShapeType.GOTO.id;\n const updatedData = FlowModellerHelper.addNode({\n nodeType,\n graphData,\n isBranchNode,\n metaData\n });\n if (updatedData) {\n setGraphData(updatedData.graphData);\n const selectedNodeData = FlowModellerHelper.selectNode(\n updatedData.graphData,\n updatedData.node.id\n );\n setOpen(true);\n setNodeData(selectedNodeData);\n setActiveNodeId(selectedNodeData.node.id);\n setInputError(false);\n setInputValue(selectedNodeData.node.label);\n }\n };\n\n const launchModal = (errorTitle: string, errorMessage: string) => {\n create(() => {\n return (\n <Modal heading={errorTitle} center>\n <Text variant='primary'>{errorMessage} </Text>\n </Modal>\n );\n });\n };\n\n const deleteNode = (params: ActionParams, error: string) => {\n if (error) {\n return launchModal('Delete step error', error);\n }\n if (params.nodeId === activeNodeId) {\n setActiveNodeId(undefined);\n setOpen(false);\n }\n setGraphData((params.additionalData as DeleteNodeOutcome)?.graphData);\n };\n\n const onAddRow = (updatedData: GraphData<NodeProps, ConnectorProps>) => {\n if (nodeData) {\n const nodeInfo = FlowModellerHelper.selectNode(updatedData, nodeData.node.id);\n setNodeData(nodeInfo);\n setGraphData(updatedData);\n setInputError(false);\n }\n };\n\n const onDeleteRow = (\n updatedData: GraphData<NodeProps, ConnectorProps>,\n connector: ConnectorProps,\n error: string,\n highlightsData?: RendererProps['highlights'],\n e?: MouseEvent\n ) => {\n if (error) {\n return launchModal('Delete connector error', error);\n }\n setHighlightItems(highlightsData);\n setPopover(prevState => !prevState);\n setConnectorData(connector);\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 setInputError(false);\n const updatedGraphData: GraphData<NodeProps, ConnectorProps> = buffer;\n // Remove default labels when the current number of connectors are one\n if (nodeData?.outConnectors.length === 2) {\n const defaultConnector: ConnectorProps =\n nodeData?.outConnectors[0].id !== connectorData?.id\n ? nodeData?.outConnectors[0]\n : nodeData?.outConnectors[1];\n for (let i = 0; i < updatedGraphData.connectors.length; i += 1) {\n const connectorEdge: ConnectorProps = updatedGraphData.connectors[i];\n if (\n connectorEdge.id === defaultConnector.id &&\n (connectorEdge.label === 'Default' || connectorEdge.label === 'Otherwise')\n ) {\n connectorEdge.label = '';\n break;\n }\n }\n }\n\n if (nodeData) {\n const nodeInfo = FlowModellerHelper.selectNode(updatedGraphData, nodeData.node.id);\n setNodeData(nodeInfo);\n }\n\n if (updatedGraphData) setGraphData(updatedGraphData);\n };\n\n const onCancel = () => {\n setHighlightItems(undefined);\n setPopover(false);\n };\n\n const onSelectedUpdateData = () => {\n if (nodeData && inputValue === '') {\n const updatedNode = {\n ...nodeData?.node,\n label: inputValue,\n error: 'Please fill in all the required fields'\n };\n const updatedNodes = [\n updatedNode,\n ...graphData.nodes.filter(node => nodeData?.node.id !== node.id)\n ];\n setNodeData({ ...nodeData, node: updatedNode });\n setGraphData({ ...graphData, nodes: updatedNodes });\n } else if (nodeData && inputValue) {\n const updatedNode = {\n ...nodeData?.node,\n label: inputValue,\n error: ''\n };\n const updatedNodes = [\n updatedNode,\n ...graphData.nodes.filter(node => nodeData?.node.id !== node.id)\n ];\n setNodeData({ ...nodeData, node: updatedNode });\n setGraphData({ ...graphData, nodes: updatedNodes });\n }\n };\n\n const WorkbenchContent = memo(() => {\n const selected = useMemo(() => menuHelpers.getSelected(items)[0], [items]);\n\n const selectItem = (id: MenuItemProps['id']) => {\n const selectedItem = menuHelpers.getItem(items, id);\n if (selectedItem && nodeData) {\n const updatedNode = {\n ...nodeData.node,\n reference: selectedItem.id\n };\n const updatedNodes = [\n updatedNode,\n ...graphData.nodes.filter(node => nodeData?.node.id !== node.id)\n ];\n setNodeData({ ...nodeData, node: updatedNode });\n setGraphData({ ...graphData, nodes: updatedNodes });\n setInputValue(updatedNode.label);\n setInputError(false);\n }\n setItems(cur => menuHelpers.selectItem(cur, id, 'single-select'));\n };\n const onInputBlur = (e: FocusEvent<HTMLInputElement>) => {\n if (e.target.value === '') {\n setInputError(true);\n } else {\n setInputError(false);\n }\n setInputValue(e.target.value);\n if (nodeData) {\n setNodeData({\n ...nodeData,\n node: {\n ...nodeData.node,\n label: e.target.value\n }\n });\n }\n };\n\n return (\n <>\n {nodeData && nodeData.node.type.id !== FlowShapeType.GOTO.id && (\n <>\n <Input\n defaultValue={inputValue}\n label='Name'\n info={inputError ? 'Cannot be blank' : ''}\n status={inputError ? 'error' : undefined}\n required\n readOnly={args.readOnly}\n onBlur={onInputBlur}\n />\n <DecisionTable\n updatedData={graphData}\n connectors={nodeData?.outConnectors}\n onDeleteRow={onDeleteRow}\n node={nodeData?.node}\n onAddRow={onAddRow}\n readOnly={args.readOnly}\n />\n </>\n )}\n {nodeData && nodeData.node.type.id === FlowShapeType.GOTO.id && (\n <ComboBox\n label='Go to'\n placeholder='Select step'\n menu={{\n items,\n onItemClick: selectItem\n }}\n selected={\n selected\n ? {\n items: {\n id: selected.id,\n text: selected.primary\n }\n }\n : undefined\n }\n />\n )}\n </>\n );\n });\n\n useEscape(onCancel);\n\n useOuterEvent('mousedown', [deletePopoverEl], onCancel);\n\n const createGraphData = (showError: boolean) => {\n if (showError) {\n return {\n ...graphData,\n nodes: graphData.nodes.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 }\n return graphData;\n };\n\n return (\n <StyledWrapper>\n <Workbench\n initiallyVisiblePanelId={undefined}\n configurationPanel={{\n open,\n content: <WorkbenchContent />,\n header: nodeData?.node.label || 'Task step',\n onDismiss: () => {\n onSelectedUpdateData();\n setOpen(false);\n setActiveNodeId(undefined);\n }\n }}\n >\n <FlowModeller\n graphData={createGraphData(args.showErrorState || false)}\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 selectedNodeId={activeNodeId}\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"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LifeCycle.stories.d.ts","sourceRoot":"","sources":["../../../src/build/LifeCycle/LifeCycle.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;;
|
|
1
|
+
{"version":3,"file":"LifeCycle.stories.d.ts","sourceRoot":"","sources":["../../../src/build/LifeCycle/LifeCycle.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;;AAiD/C,wBAWU;AAEV,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,kBAAkB,CAgN9C,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,kBAAkB,CA+MnD,CAAC;AACF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,kBAAkB,CAkdlD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,kBAAkB,CAiNvD,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { memo, useEffect, useMemo, useState } from 'react';
|
|
2
|
-
import { LifeCycle, Workbench } from '@pega/cosmos-react-build';
|
|
3
|
-
import { Input, Option, Select } from '@pega/cosmos-react-core';
|
|
2
|
+
import { LifeCycle, Workbench, ObjectSelect } from '@pega/cosmos-react-build';
|
|
3
|
+
import { Input, Option, Select, menuHelpers } from '@pega/cosmos-react-core';
|
|
4
|
+
import { getInitConditionForLhs } from '@pega/cosmos-react-condition-builder';
|
|
5
|
+
import { ConfigurationContent, dataPages, demoDateFunctions, demoFields } from '../ObjectSelect/ObjectSelect.mocks';
|
|
4
6
|
import { lifeCycleEmptyData, lifeCycleEmptyPlanViewData, lifeCyclePlanViewData, lifeCycleWorkFlowData, planViewNodeLibrary, workFlowNodeLibrary } from './LifeCycle.mocks';
|
|
5
7
|
import { addStepCallback, deleteStepCallback, addTaskCallback, deleteTaskCallback, addStageCallback, deleteStageCallback, updateStageCallback, updateStepCallback, updateTaskCallback } from './utils';
|
|
6
8
|
export default {
|
|
@@ -518,6 +520,26 @@ export const WorkFlowView = (args) => {
|
|
|
518
520
|
const onSelectChange = (e) => {
|
|
519
521
|
setSelectedOptionValue({ id: e.target.selectedIndex, value: e.target.value });
|
|
520
522
|
};
|
|
523
|
+
const convertRhsTypes = (useLiteralRHSType, useFieldRHSType, useRelativeDatesType, dateFunctions) => {
|
|
524
|
+
const setRhsTypes = new Set();
|
|
525
|
+
if (useLiteralRHSType)
|
|
526
|
+
setRhsTypes.add('LITERAL');
|
|
527
|
+
if (useFieldRHSType)
|
|
528
|
+
setRhsTypes.add('FIELD');
|
|
529
|
+
if (dateFunctions)
|
|
530
|
+
setRhsTypes.add('DATE_FUNCTION');
|
|
531
|
+
if (useRelativeDatesType)
|
|
532
|
+
setRhsTypes.add('RELATIVE_DATE');
|
|
533
|
+
return setRhsTypes;
|
|
534
|
+
};
|
|
535
|
+
const validRHSTypes = convertRhsTypes(true, true, true, demoDateFunctions);
|
|
536
|
+
const [condition, setCondition] = useState(() => getInitConditionForLhs({ field: 'details.age' }, demoFields, validRHSTypes, undefined, demoDateFunctions));
|
|
537
|
+
const [value, setValue] = useState();
|
|
538
|
+
const [dataPagesDelayed, setDataPagesDelayed] = useState([]);
|
|
539
|
+
useEffect(() => {
|
|
540
|
+
const timeout = setTimeout(() => setDataPagesDelayed(dataPages), 2000);
|
|
541
|
+
return () => clearTimeout(timeout);
|
|
542
|
+
}, []);
|
|
521
543
|
return (<>
|
|
522
544
|
<Input type='text' defaultValue={inputValue} label={`${activeFieldItem?.type} name`} labelHidden={false} info={inputError ? 'Cannot be blank' : ''} placeholder='' status={inputError ? 'error' : undefined} required readOnly={args.readOnly} onBlur={onInputBlur}/>
|
|
523
545
|
<Select label='Route to' labelHidden={false} value={selectedOptionValue.value} onChange={onSelectChange} readOnly={args.readOnly}>
|
|
@@ -525,6 +547,25 @@ export const WorkFlowView = (args) => {
|
|
|
525
547
|
return <Option key={_eachOption.id}>{_eachOption.value}</Option>;
|
|
526
548
|
})}
|
|
527
549
|
</Select>
|
|
550
|
+
<ObjectSelect label='Validation for entering step' createConfiguration={{ href: 'https://www.pega.com' }} loading={dataPagesDelayed.length === 0} placeholder='Select...' onChange={id => {
|
|
551
|
+
const data = menuHelpers.getItem(dataPages, id);
|
|
552
|
+
if (data) {
|
|
553
|
+
setValue({
|
|
554
|
+
id: data.id,
|
|
555
|
+
primary: data.primary,
|
|
556
|
+
meta: data.id !== '01-4' ? data.secondary?.join(' ') : ''
|
|
557
|
+
});
|
|
558
|
+
}
|
|
559
|
+
else
|
|
560
|
+
setValue(undefined);
|
|
561
|
+
}} items={dataPagesDelayed} configuration={{
|
|
562
|
+
label: 'Edit Configuration',
|
|
563
|
+
heading: 'Map Parameters',
|
|
564
|
+
onSubmit: () => null,
|
|
565
|
+
onClose: () => null,
|
|
566
|
+
placement: 'auto',
|
|
567
|
+
children: (<ConfigurationContent {...args} popoverContent='simple' condition={condition} setCondition={setCondition} validRHSTypes={validRHSTypes}/>)
|
|
568
|
+
}} value={value}/>
|
|
528
569
|
</>);
|
|
529
570
|
});
|
|
530
571
|
useEffect(() => {
|
|
@@ -543,7 +584,7 @@ export const WorkFlowView = (args) => {
|
|
|
543
584
|
? []
|
|
544
585
|
: [
|
|
545
586
|
{
|
|
546
|
-
text: 'Delete
|
|
587
|
+
text: 'Delete',
|
|
547
588
|
id: 'delete10',
|
|
548
589
|
icon: 'trash',
|
|
549
590
|
onClick: deleteProcessStep
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LifeCycle.stories.jsx","sourceRoot":"","sources":["../../../src/build/LifeCycle/LifeCycle.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FocusEvent, memo, useEffect, useMemo, useState } from 'react';\nimport { Meta, Story } from '@storybook/react';\n\nimport {\n LifeCycle,\n StageItemProps,\n CategoriesItemProps,\n LifeCycleActionParam,\n LifeCycleAction,\n StepItemProps,\n LibraryItem,\n Workbench\n} from '@pega/cosmos-react-build';\nimport { Input, Option, Select } from '@pega/cosmos-react-core';\n\nimport {\n lifeCycleEmptyData,\n lifeCycleEmptyPlanViewData,\n lifeCyclePlanViewData,\n lifeCycleWorkFlowData,\n planViewNodeLibrary,\n workFlowNodeLibrary\n} from './LifeCycle.mocks';\nimport {\n addStepCallback,\n deleteStepCallback,\n addTaskCallback,\n deleteTaskCallback,\n addStageCallback,\n deleteStageCallback,\n LifeCycleMockState,\n updateStageCallback,\n updateStepCallback,\n updateTaskCallback\n} from './utils';\n\nexport default {\n title: 'Build/LifeCycle',\n component: LifeCycle,\n argTypes: {\n readOnly: {\n control: { type: 'boolean' }\n }\n },\n args: {\n readOnly: false\n }\n} as Meta;\n\nexport interface LifeCycleDemoProps {\n readOnly: boolean;\n}\n\nexport const PlanView: Story<LifeCycleDemoProps> = (args: LifeCycleDemoProps) => {\n const workFlowState = {\n activeElementId: '',\n data: lifeCyclePlanViewData\n } as LifeCycleMockState;\n const [planViewData, setPlanViewData] = useState(workFlowState);\n\n const addStep = (stepData: LifeCycleActionParam, libItem: LibraryItem) => {\n const newStep: StepItemProps = {\n id: libItem.id,\n label: libItem.primary,\n visual: {\n color: libItem.type.color as StepItemProps['visual']['color'],\n icon: libItem.type.icon\n } as StepItemProps['visual'],\n error: '',\n status: { label: '' }\n };\n const updatedTask = {\n ...stepData.task,\n steps: [...stepData.task!.steps, newStep]\n } as LifeCycleActionParam['task'];\n\n const updatedData: LifeCycleActionParam = { ...stepData, task: updatedTask };\n\n const changedData = addStepCallback(updatedData, planViewData);\n setPlanViewData(changedData.dataClone);\n };\n\n const deleteStep = (stepData: LifeCycleActionParam) => {\n const changedData = deleteStepCallback(stepData, planViewData);\n setPlanViewData(changedData);\n };\n\n const addTask = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, planViewData);\n setPlanViewData(changedData.dataClone);\n };\n\n const deleteTask = (taskData: LifeCycleActionParam) => {\n const changedData = deleteTaskCallback(taskData, planViewData);\n setPlanViewData(changedData);\n };\n\n const onAddStage = () => {\n const changedData = addStageCallback(planViewData, 'stages');\n setPlanViewData(changedData.dataClone);\n };\n\n const onAddAlternateStage = () => {\n const changedData = addStageCallback(planViewData, 'alternateStages');\n setPlanViewData(changedData.dataClone);\n };\n\n const onDeleteStage: LifeCycleAction['onClick'] = param => {\n const changedData = deleteStageCallback(param, planViewData);\n if (changedData === 'firstStage') {\n // eslint-disable-next-line no-alert\n alert(\"you can't delete the create stage\");\n } else {\n setPlanViewData(changedData);\n }\n };\n\n useEffect(() => {\n if (planViewData.activeElementId) {\n const elementId: HTMLElement | null = document.getElementById(\n `${planViewData.activeElementId}`\n );\n if (elementId) {\n elementId.focus();\n }\n }\n });\n\n const stages = planViewData.data.stages as StageItemProps[];\n\n const alternateStages = planViewData.data.alternateStages as StageItemProps[];\n\n const categories: CategoriesItemProps[] = planViewData.data.categories;\n\n const channelActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete channel',\n id: 'delete5',\n icon: 'trash',\n onClick: deleteStep\n }\n ],\n [args.readOnly]\n );\n\n const dataSourceActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete data source',\n id: 'delete6',\n icon: 'trash',\n onClick: deleteStep\n }\n ],\n [args.readOnly]\n );\n\n const personaActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete persona',\n id: 'delete2',\n icon: 'trash',\n onClick: deleteTask\n }\n ],\n [args.readOnly]\n );\n\n const dataActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete data',\n id: 'delete4',\n icon: 'trash',\n onClick: deleteTask\n }\n ],\n [args.readOnly]\n );\n\n const stageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n [args.readOnly]\n );\n\n const alternateStageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [{ text: 'Delete Stage', id: 'delete11', icon: 'trash', onClick: onDeleteStage }],\n [args.readOnly]\n );\n\n return (\n <LifeCycle\n items={stages}\n alternateItems={alternateStages}\n categories={categories}\n task={[\n {\n actions: personaActions,\n addStepTitle: 'channels',\n addTask: {\n title: 'Persona',\n showOnce: false,\n onAddTask: addTask\n },\n onAddStep: addStep,\n nodeLibrary: planViewNodeLibrary\n },\n {\n actions: dataActions,\n addStepTitle: 'Data and Systems',\n addTask: {\n title: 'Data',\n showOnce: false,\n onAddTask: addTask\n },\n onAddStep: addStep,\n nodeLibrary: planViewNodeLibrary\n }\n ]}\n step={[\n {\n actions: channelActions\n },\n {\n actions: dataSourceActions\n }\n ]}\n stage={{\n actions: stageActions\n }}\n alternateStage={{\n actions: alternateStageActions\n }}\n onAddStage={onAddStage}\n onAddAlternateStage={onAddAlternateStage}\n readOnly={args.readOnly}\n />\n );\n};\n\nexport const EmptyPlanView: Story<LifeCycleDemoProps> = (args: LifeCycleDemoProps) => {\n const emptyPlanView = {\n activeElementId: '',\n data: lifeCycleEmptyPlanViewData\n } as LifeCycleMockState;\n const [emptyplanViewData, setPlanViewData] = useState(emptyPlanView);\n\n const addStep = (stepData: LifeCycleActionParam, libItem: LibraryItem) => {\n const newStep: StepItemProps = {\n id: libItem.id,\n label: libItem.primary,\n visual: {\n color: libItem.type.color as StepItemProps['visual']['color'],\n icon: libItem.type.icon\n } as StepItemProps['visual'],\n error: '',\n status: { label: '' }\n };\n const updatedTask = {\n ...stepData.task,\n steps: [...stepData.task!.steps, newStep]\n } as LifeCycleActionParam['task'];\n\n const updatedData: LifeCycleActionParam = { ...stepData, task: updatedTask };\n\n const changedData = addStepCallback(updatedData, emptyplanViewData);\n setPlanViewData(changedData.dataClone);\n };\n\n const deleteStep = (stepData: LifeCycleActionParam) => {\n const changedData = deleteStepCallback(stepData, emptyplanViewData);\n setPlanViewData(changedData);\n };\n\n const addTask = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, emptyplanViewData);\n\n setPlanViewData(changedData.dataClone);\n };\n\n const deleteTask = (taskData: LifeCycleActionParam) => {\n const changedData = deleteTaskCallback(taskData, emptyplanViewData);\n setPlanViewData(changedData);\n };\n\n const onAddStage = () => {\n const changedData = addStageCallback(emptyplanViewData, 'stages');\n setPlanViewData(changedData.dataClone);\n };\n\n const onAddAlternateStage = () => {\n const changedData = addStageCallback(emptyplanViewData, 'alternateStages');\n setPlanViewData(changedData.dataClone);\n };\n\n const onDeleteStage: LifeCycleAction['onClick'] = param => {\n const changedData = deleteStageCallback(param, emptyplanViewData);\n if (changedData === 'firstStage') {\n // eslint-disable-next-line no-alert\n alert(\"you can't delete the create stage\");\n } else {\n setPlanViewData(changedData);\n }\n };\n\n useEffect(() => {\n if (emptyplanViewData.activeElementId) {\n const elementId: HTMLElement | null = document.getElementById(\n `${emptyplanViewData.activeElementId}`\n );\n if (elementId) {\n elementId.focus();\n }\n }\n });\n\n const stages = emptyplanViewData.data.stages as StageItemProps[];\n const alternateStages = emptyplanViewData.data.alternateStages as StageItemProps[];\n const categories = emptyplanViewData.data.categories as CategoriesItemProps[];\n\n const channelActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete channel',\n id: 'delete5',\n icon: 'trash',\n onClick: deleteStep\n }\n ],\n [args.readOnly]\n );\n\n const dataSourceActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete data source',\n id: 'delete6',\n icon: 'trash',\n onClick: deleteStep\n }\n ],\n [args.readOnly]\n );\n\n const personaActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete persona',\n id: 'delete2',\n icon: 'trash',\n onClick: deleteTask\n }\n ],\n [args.readOnly]\n );\n\n const dataActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete data',\n id: 'delete4',\n icon: 'trash',\n onClick: deleteTask\n }\n ],\n [args.readOnly]\n );\n\n const stageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n [args.readOnly]\n );\n\n const alternateStageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [{ text: 'Delete Stage', id: 'delete11', icon: 'trash', onClick: onDeleteStage }],\n [args.readOnly]\n );\n\n return (\n <LifeCycle\n items={stages}\n alternateItems={alternateStages}\n categories={categories}\n task={[\n {\n actions: personaActions,\n addStepTitle: 'channels',\n addTask: {\n title: 'Persona',\n showOnce: false,\n onAddTask: addTask\n },\n onAddStep: addStep,\n nodeLibrary: planViewNodeLibrary\n },\n {\n actions: dataActions,\n addStepTitle: 'Data and Systems',\n addTask: {\n title: 'Data',\n showOnce: false,\n onAddTask: addTask\n },\n onAddStep: addStep,\n nodeLibrary: workFlowNodeLibrary\n }\n ]}\n step={[\n {\n actions: channelActions\n },\n {\n actions: dataSourceActions\n }\n ]}\n stage={{\n actions: stageActions\n }}\n alternateStage={{\n actions: alternateStageActions\n }}\n onAddStage={onAddStage}\n onAddAlternateStage={onAddAlternateStage}\n readOnly={args.readOnly}\n />\n );\n};\n\nexport const WorkFlowView: Story<LifeCycleDemoProps> = (args: LifeCycleDemoProps) => {\n const workFlowState = {\n activeElementId: '',\n data: lifeCycleWorkFlowData\n } as LifeCycleMockState;\n const [workFlowData, setWorkFlowData] = useState(workFlowState);\n const [activeFieldItem, setActiveFieldItem] = useState<LifeCycleActionParam & { id?: string }>();\n const [open, setOpen] = useState(false);\n const [inputError, setInputError] = useState(false);\n const [inputValue, setInputValue] = useState<string>();\n const [selectedOptionValue, setSelectedOptionValue] = useState({ id: 0, value: 'Choose' });\n const selectOptions = [\n { id: 0, value: 'Choose' },\n { id: 1, value: 'Me' },\n { id: 2, value: 'Current User' },\n { id: 3, value: 'Work Queue' }\n ];\n\n useEffect(() => {\n setInputValue(activeFieldItem?.value);\n }, [activeFieldItem]);\n\n const addProcessStep = (stepData: LifeCycleActionParam, libItem: LibraryItem) => {\n const newStep: StepItemProps = {\n id: libItem.id,\n label: libItem.primary,\n visual: {\n color: libItem.type.color as StepItemProps['visual']['color'],\n icon: libItem.type.icon\n } as StepItemProps['visual'],\n error: '',\n status: { label: '' }\n };\n const updatedTask = {\n ...stepData.task,\n steps: [...stepData.task!.steps, newStep]\n } as LifeCycleActionParam['task'];\n\n const updatedData: LifeCycleActionParam = { ...stepData, task: updatedTask };\n\n const changedData = addStepCallback(updatedData, workFlowData);\n setActiveFieldItem({ ...changedData.newStepData, type: 'Step' });\n setWorkFlowData(changedData.dataClone);\n setInputError(false);\n setOpen(true);\n };\n\n const deleteProcessStep = (stepData: LifeCycleActionParam) => {\n const changedData = deleteStepCallback(stepData, workFlowData);\n if (stepData?.step?.id === activeFieldItem?.id) {\n setActiveFieldItem(undefined);\n setOpen(false);\n }\n setWorkFlowData(changedData);\n };\n\n const addProcess = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, workFlowData);\n setActiveFieldItem({ ...changedData.newTaskData, type: 'Task' });\n setWorkFlowData(changedData.dataClone);\n setInputError(false);\n setOpen(true);\n };\n\n const addParallelProcess = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, workFlowData, true);\n setActiveFieldItem({ ...changedData.newTaskData, type: 'Task' });\n setWorkFlowData(changedData.dataClone);\n setOpen(true);\n };\n\n const deleteProcess = (taskData: LifeCycleActionParam) => {\n const changedData = deleteTaskCallback(taskData, workFlowData);\n if (taskData?.task?.id === activeFieldItem?.id) {\n setActiveFieldItem(undefined);\n setOpen(false);\n }\n setWorkFlowData(changedData);\n };\n\n const onAddStage = () => {\n const changedData = addStageCallback(workFlowData, 'stages');\n setActiveFieldItem({ ...changedData.newStageData, type: 'Stage' });\n setWorkFlowData(changedData.dataClone);\n setInputError(false);\n setOpen(true);\n };\n\n const onAddAlternateStage = () => {\n const changedData = addStageCallback(workFlowData, 'alternateStages');\n setActiveFieldItem({ ...changedData.newStageData, type: 'Alternate Stage' });\n setWorkFlowData(changedData.dataClone);\n setInputError(false);\n setOpen(true);\n };\n\n const onDeleteStage: LifeCycleAction['onClick'] = (stageData: LifeCycleActionParam) => {\n const changedData = deleteStageCallback(stageData, workFlowData);\n if (changedData === 'firstStage') {\n // eslint-disable-next-line no-alert\n alert(\"you can't delete the create stage\");\n } else {\n if (stageData?.stage?.id === activeFieldItem?.id) {\n setActiveFieldItem(undefined);\n setOpen(false);\n }\n setWorkFlowData(changedData);\n }\n };\n\n const onOpenProcess = () => {};\n\n const onSelectedItem = (selectedData: LifeCycleActionParam) => {\n setSelectedOptionValue({ id: 0, value: 'Choose' });\n switch (selectedData.type) {\n case 'Step':\n setActiveFieldItem({ ...selectedData, id: selectedData?.step?.id });\n if (selectedData.step?.error !== '') {\n setInputError(true);\n setInputValue('');\n } else {\n setInputError(false);\n }\n break;\n case 'Task':\n setActiveFieldItem({ ...selectedData, id: selectedData?.task?.id });\n if (selectedData.task?.error !== '') {\n setInputError(true);\n setInputValue('');\n } else {\n setInputError(false);\n }\n break;\n case 'Stage':\n setActiveFieldItem({ ...selectedData, id: selectedData?.stage?.id });\n if (selectedData.stage?.error !== '') {\n setInputError(true);\n setInputValue('');\n } else {\n setInputError(false);\n }\n break;\n default:\n setActiveFieldItem(undefined);\n }\n setOpen(true);\n };\n\n const onSelectedUpdateData = () => {\n let changedData: LifeCycleMockState;\n const cloneData = { ...activeFieldItem };\n let errorMessage: string;\n if (inputValue === '') {\n errorMessage = 'Name cannot be empty';\n if (activeFieldItem?.type === 'Stage' && cloneData.stage) {\n cloneData.stage.error = errorMessage;\n cloneData.stage.label = inputValue;\n changedData = updateStageCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n } else if (activeFieldItem?.type === 'Step' && cloneData.step) {\n cloneData.step.error = errorMessage;\n changedData = updateStepCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n } else {\n if (cloneData.task) {\n cloneData.task.error = errorMessage;\n cloneData.task.label = inputValue;\n }\n changedData = updateTaskCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n }\n\n setWorkFlowData(changedData);\n } else {\n errorMessage = '';\n\n if (\n (activeFieldItem?.type === 'Stage' || activeFieldItem?.type === 'Alternate Stage') &&\n cloneData.stage\n ) {\n cloneData.stage.error = errorMessage;\n cloneData.stage.label = `${inputValue}`;\n changedData = updateStageCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n } else if (activeFieldItem?.type === 'Step' && cloneData.step) {\n cloneData.step.error = errorMessage;\n changedData = updateStepCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n } else {\n if (cloneData.task) {\n cloneData.task.error = errorMessage;\n cloneData.task.label = `${inputValue}`;\n }\n changedData = updateTaskCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n }\n setWorkFlowData(changedData);\n }\n };\n\n const WorkbenchContent = memo(() => {\n const onInputBlur = (e: FocusEvent<HTMLInputElement>) => {\n if (e.target.value === '') {\n setInputError(true);\n setActiveFieldItem({ ...activeFieldItem, value: e.target.value });\n } else {\n setInputError(false);\n setActiveFieldItem({ ...activeFieldItem, value: e.target.value });\n }\n };\n\n const onSelectChange = (e: FocusEvent<HTMLSelectElement>) => {\n setSelectedOptionValue({ id: e.target.selectedIndex, value: e.target.value });\n };\n return (\n <>\n <Input\n type='text'\n defaultValue={inputValue}\n label={`${activeFieldItem?.type} name`}\n labelHidden={false}\n info={inputError ? 'Cannot be blank' : ''}\n placeholder=''\n status={inputError ? 'error' : undefined}\n required\n readOnly={args.readOnly}\n onBlur={onInputBlur}\n />\n <Select\n label='Route to'\n labelHidden={false}\n value={selectedOptionValue.value}\n onChange={onSelectChange}\n readOnly={args.readOnly}\n >\n {selectOptions.map(_eachOption => {\n return <Option key={_eachOption.id}>{_eachOption.value}</Option>;\n })}\n </Select>\n </>\n );\n });\n\n useEffect(() => {\n if (workFlowData.activeElementId) {\n const elementId: HTMLElement | null = document.getElementById(\n `${workFlowData.activeElementId}`\n );\n if (elementId) {\n elementId.focus();\n }\n }\n });\n\n const stages = workFlowData.data.stages as StageItemProps[];\n const alternateStages = workFlowData.data.alternateStages as StageItemProps[];\n const categories: CategoriesItemProps[] = lifeCycleWorkFlowData.categories;\n\n const stepActions = useMemo(() => {\n return args.readOnly\n ? []\n : [\n {\n text: 'Delete step',\n id: 'delete10',\n icon: 'trash',\n onClick: deleteProcessStep\n }\n ];\n }, [args.readOnly]);\n const taskActions = useMemo(() => {\n return args.readOnly\n ? [\n {\n text: 'Open Process',\n id: 'layers2',\n icon: 'layers',\n onClick: onOpenProcess\n }\n ]\n : [\n {\n text: 'Delete Process',\n id: 'delete9',\n icon: 'trash',\n onClick: deleteProcess\n },\n {\n text: 'Open Process',\n id: 'layers2',\n icon: 'layers',\n onClick: onOpenProcess\n }\n ];\n }, [args.readOnly]);\n\n const StageActions = useMemo(() => {\n return args.readOnly\n ? {\n start: [],\n default: [],\n 'default-wait': [],\n resolution: [],\n alternate: [],\n 'alternate-wait': []\n }\n : {\n start: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage }\n ],\n default: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n 'default-wait': [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n resolution: [],\n alternate: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n 'alternate-wait': [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ]\n };\n }, [args.readOnly]);\n\n const alternateStageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n [args.readOnly]\n );\n\n return (\n <Workbench\n initiallyVisiblePanelId={undefined}\n configurationPanel={{\n open,\n content: <WorkbenchContent />,\n header: (activeFieldItem?.value || activeFieldItem?.type) as string,\n onDismiss: () => {\n onSelectedUpdateData();\n setOpen(false);\n setInputError(false);\n setActiveFieldItem(undefined);\n }\n }}\n >\n <LifeCycle\n items={stages}\n alternateItems={alternateStages}\n categories={categories}\n task={[\n {\n actions: taskActions,\n addStepTitle: 'step',\n addTask: {\n title: 'Process',\n showOnce: true,\n onAddTask: addProcess\n },\n onClick: onSelectedItem,\n onAddStep: addProcessStep,\n nodeLibrary: workFlowNodeLibrary\n }\n ]}\n step={[\n {\n actions: stepActions,\n onClick: onSelectedItem\n }\n ]}\n stage={{\n actions: StageActions,\n onClick: onSelectedItem\n }}\n alternateStage={{\n actions: alternateStageActions,\n onClick: onSelectedItem\n }}\n onAddStage={onAddStage}\n onAddAlternateStage={onAddAlternateStage}\n selectedItemId={activeFieldItem?.id}\n readOnly={args.readOnly}\n />\n </Workbench>\n );\n};\n\nexport const EmptyWorkFlowView: Story<LifeCycleDemoProps> = (args: LifeCycleDemoProps) => {\n const emptyState = {\n activeElementId: '',\n data: lifeCycleEmptyData\n } as LifeCycleMockState;\n const [emptyStateData, setEmptyStateData] = useState<LifeCycleMockState>(emptyState);\n\n const addProcessStep = (stepData: LifeCycleActionParam, libItem: LibraryItem) => {\n const newStep: StepItemProps = {\n id: libItem.id,\n label: libItem.primary,\n visual: {\n color: libItem.type.color as StepItemProps['visual']['color'],\n icon: libItem.type.icon\n } as StepItemProps['visual'],\n error: '',\n status: { label: '' }\n };\n const updatedTask = {\n ...stepData.task,\n steps: [...stepData.task!.steps, newStep]\n } as LifeCycleActionParam['task'];\n\n const updatedData: LifeCycleActionParam = { ...stepData, task: updatedTask };\n\n const changedData = addStepCallback(updatedData, emptyStateData);\n setEmptyStateData(changedData.dataClone);\n };\n\n const deleteProcessStep = (stepData: LifeCycleActionParam) => {\n const changedData = deleteStepCallback(stepData, emptyStateData);\n setEmptyStateData(changedData);\n };\n\n const addProcess = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, emptyStateData);\n setEmptyStateData(changedData.dataClone);\n };\n\n const addParallelProcess = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, emptyStateData, true);\n setEmptyStateData(changedData.dataClone);\n };\n\n const deleteProcess = (taskData: LifeCycleActionParam) => {\n const changedData = deleteTaskCallback(taskData, emptyStateData);\n setEmptyStateData(changedData);\n };\n\n const onAddStage = () => {\n const changedData = addStageCallback(emptyStateData, 'stages');\n setEmptyStateData(changedData.dataClone);\n };\n\n const onAddAlternateStage = () => {\n const changedData = addStageCallback(emptyStateData, 'alternateStages');\n setEmptyStateData(changedData.dataClone);\n };\n\n const onDeleteStage: LifeCycleAction['onClick'] = param => {\n const changedData = deleteStageCallback(param, emptyStateData);\n if (changedData === 'firstStage') {\n // eslint-disable-next-line no-alert\n alert(\"you can't delete the create stage\");\n } else {\n setEmptyStateData(changedData);\n }\n };\n\n const onOpenProcess = () => {};\n\n useEffect(() => {\n if (emptyStateData.activeElementId) {\n const elementId: HTMLElement | null = document.getElementById(\n `${emptyStateData.activeElementId}`\n );\n if (elementId) {\n elementId.focus();\n }\n }\n });\n\n const stages = emptyStateData.data.stages as StageItemProps[];\n const alternateStages: StageItemProps[] = emptyStateData.data.alternateStages;\n const categories: CategoriesItemProps[] = lifeCycleEmptyData.categories;\n\n const stepActions = useMemo(() => {\n return args.readOnly\n ? []\n : [\n {\n text: 'Delete step',\n id: 'delete10',\n icon: 'trash',\n onClick: deleteProcessStep\n }\n ];\n }, [args.readOnly]);\n\n const taskActions = useMemo(() => {\n return args.readOnly\n ? [\n {\n text: 'Open Process',\n id: 'layers2',\n icon: 'layers',\n onClick: onOpenProcess\n }\n ]\n : [\n {\n text: 'Delete Process',\n id: 'delete9',\n icon: 'trash',\n onClick: deleteProcess\n },\n {\n text: 'Open Process',\n id: 'layers2',\n icon: 'layers',\n onClick: onOpenProcess\n }\n ];\n }, [args.readOnly]);\n\n const StageActions = useMemo(() => {\n return args.readOnly\n ? {\n start: [],\n default: [],\n 'default-wait': [],\n resolution: [],\n alternate: [],\n 'alternate-wait': []\n }\n : {\n start: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage }\n ],\n default: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n 'default-wait': [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n resolution: [],\n alternate: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n 'alternate-wait': [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ]\n };\n }, [args.readOnly]);\n\n const alternateStageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n [args.readOnly]\n );\n\n return (\n <LifeCycle\n items={stages}\n alternateItems={alternateStages}\n categories={categories}\n task={[\n {\n actions: taskActions,\n addStepTitle: 'step',\n addTask: {\n title: 'Process',\n showOnce: true,\n onAddTask: addProcess\n },\n onAddStep: addProcessStep,\n nodeLibrary: workFlowNodeLibrary\n }\n ]}\n step={[\n {\n actions: stepActions\n }\n ]}\n stage={{\n actions: StageActions\n }}\n alternateStage={{\n actions: alternateStageActions\n }}\n onAddStage={onAddStage}\n onAddAlternateStage={onAddAlternateStage}\n readOnly={args.readOnly}\n />\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"LifeCycle.stories.jsx","sourceRoot":"","sources":["../../../src/build/LifeCycle/LifeCycle.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FocusEvent, memo, useEffect, useMemo, useState } from 'react';\nimport { Meta, Story } from '@storybook/react';\n\nimport {\n LifeCycle,\n StageItemProps,\n CategoriesItemProps,\n LifeCycleActionParam,\n LifeCycleAction,\n StepItemProps,\n LibraryItem,\n Workbench,\n ObjectSelect,\n ObjectSelectProps\n} from '@pega/cosmos-react-build';\nimport { Input, Option, Select, menuHelpers } from '@pega/cosmos-react-core';\nimport {\n RHSType,\n DateFunctionsByType,\n getInitConditionForLhs\n} from '@pega/cosmos-react-condition-builder';\n\nimport {\n ConfigurationContent,\n dataPages,\n demoDateFunctions,\n demoFields\n} from '../ObjectSelect/ObjectSelect.mocks';\n\nimport {\n lifeCycleEmptyData,\n lifeCycleEmptyPlanViewData,\n lifeCyclePlanViewData,\n lifeCycleWorkFlowData,\n planViewNodeLibrary,\n workFlowNodeLibrary\n} from './LifeCycle.mocks';\nimport {\n addStepCallback,\n deleteStepCallback,\n addTaskCallback,\n deleteTaskCallback,\n addStageCallback,\n deleteStageCallback,\n LifeCycleMockState,\n updateStageCallback,\n updateStepCallback,\n updateTaskCallback\n} from './utils';\n\nexport default {\n title: 'Build/LifeCycle',\n component: LifeCycle,\n argTypes: {\n readOnly: {\n control: { type: 'boolean' }\n }\n },\n args: {\n readOnly: false\n }\n} as Meta;\n\nexport interface LifeCycleDemoProps {\n readOnly: boolean;\n}\n\nexport const PlanView: Story<LifeCycleDemoProps> = (args: LifeCycleDemoProps) => {\n const workFlowState = {\n activeElementId: '',\n data: lifeCyclePlanViewData\n } as LifeCycleMockState;\n const [planViewData, setPlanViewData] = useState(workFlowState);\n\n const addStep = (stepData: LifeCycleActionParam, libItem: LibraryItem) => {\n const newStep: StepItemProps = {\n id: libItem.id,\n label: libItem.primary,\n visual: {\n color: libItem.type.color as StepItemProps['visual']['color'],\n icon: libItem.type.icon\n } as StepItemProps['visual'],\n error: '',\n status: { label: '' }\n };\n const updatedTask = {\n ...stepData.task,\n steps: [...stepData.task!.steps, newStep]\n } as LifeCycleActionParam['task'];\n\n const updatedData: LifeCycleActionParam = { ...stepData, task: updatedTask };\n\n const changedData = addStepCallback(updatedData, planViewData);\n setPlanViewData(changedData.dataClone);\n };\n\n const deleteStep = (stepData: LifeCycleActionParam) => {\n const changedData = deleteStepCallback(stepData, planViewData);\n setPlanViewData(changedData);\n };\n\n const addTask = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, planViewData);\n setPlanViewData(changedData.dataClone);\n };\n\n const deleteTask = (taskData: LifeCycleActionParam) => {\n const changedData = deleteTaskCallback(taskData, planViewData);\n setPlanViewData(changedData);\n };\n\n const onAddStage = () => {\n const changedData = addStageCallback(planViewData, 'stages');\n setPlanViewData(changedData.dataClone);\n };\n\n const onAddAlternateStage = () => {\n const changedData = addStageCallback(planViewData, 'alternateStages');\n setPlanViewData(changedData.dataClone);\n };\n\n const onDeleteStage: LifeCycleAction['onClick'] = param => {\n const changedData = deleteStageCallback(param, planViewData);\n if (changedData === 'firstStage') {\n // eslint-disable-next-line no-alert\n alert(\"you can't delete the create stage\");\n } else {\n setPlanViewData(changedData);\n }\n };\n\n useEffect(() => {\n if (planViewData.activeElementId) {\n const elementId: HTMLElement | null = document.getElementById(\n `${planViewData.activeElementId}`\n );\n if (elementId) {\n elementId.focus();\n }\n }\n });\n\n const stages = planViewData.data.stages as StageItemProps[];\n\n const alternateStages = planViewData.data.alternateStages as StageItemProps[];\n\n const categories: CategoriesItemProps[] = planViewData.data.categories;\n\n const channelActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete channel',\n id: 'delete5',\n icon: 'trash',\n onClick: deleteStep\n }\n ],\n [args.readOnly]\n );\n\n const dataSourceActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete data source',\n id: 'delete6',\n icon: 'trash',\n onClick: deleteStep\n }\n ],\n [args.readOnly]\n );\n\n const personaActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete persona',\n id: 'delete2',\n icon: 'trash',\n onClick: deleteTask\n }\n ],\n [args.readOnly]\n );\n\n const dataActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete data',\n id: 'delete4',\n icon: 'trash',\n onClick: deleteTask\n }\n ],\n [args.readOnly]\n );\n\n const stageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n [args.readOnly]\n );\n\n const alternateStageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [{ text: 'Delete Stage', id: 'delete11', icon: 'trash', onClick: onDeleteStage }],\n [args.readOnly]\n );\n\n return (\n <LifeCycle\n items={stages}\n alternateItems={alternateStages}\n categories={categories}\n task={[\n {\n actions: personaActions,\n addStepTitle: 'channels',\n addTask: {\n title: 'Persona',\n showOnce: false,\n onAddTask: addTask\n },\n onAddStep: addStep,\n nodeLibrary: planViewNodeLibrary\n },\n {\n actions: dataActions,\n addStepTitle: 'Data and Systems',\n addTask: {\n title: 'Data',\n showOnce: false,\n onAddTask: addTask\n },\n onAddStep: addStep,\n nodeLibrary: planViewNodeLibrary\n }\n ]}\n step={[\n {\n actions: channelActions\n },\n {\n actions: dataSourceActions\n }\n ]}\n stage={{\n actions: stageActions\n }}\n alternateStage={{\n actions: alternateStageActions\n }}\n onAddStage={onAddStage}\n onAddAlternateStage={onAddAlternateStage}\n readOnly={args.readOnly}\n />\n );\n};\n\nexport const EmptyPlanView: Story<LifeCycleDemoProps> = (args: LifeCycleDemoProps) => {\n const emptyPlanView = {\n activeElementId: '',\n data: lifeCycleEmptyPlanViewData\n } as LifeCycleMockState;\n const [emptyplanViewData, setPlanViewData] = useState(emptyPlanView);\n\n const addStep = (stepData: LifeCycleActionParam, libItem: LibraryItem) => {\n const newStep: StepItemProps = {\n id: libItem.id,\n label: libItem.primary,\n visual: {\n color: libItem.type.color as StepItemProps['visual']['color'],\n icon: libItem.type.icon\n } as StepItemProps['visual'],\n error: '',\n status: { label: '' }\n };\n const updatedTask = {\n ...stepData.task,\n steps: [...stepData.task!.steps, newStep]\n } as LifeCycleActionParam['task'];\n\n const updatedData: LifeCycleActionParam = { ...stepData, task: updatedTask };\n\n const changedData = addStepCallback(updatedData, emptyplanViewData);\n setPlanViewData(changedData.dataClone);\n };\n\n const deleteStep = (stepData: LifeCycleActionParam) => {\n const changedData = deleteStepCallback(stepData, emptyplanViewData);\n setPlanViewData(changedData);\n };\n\n const addTask = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, emptyplanViewData);\n\n setPlanViewData(changedData.dataClone);\n };\n\n const deleteTask = (taskData: LifeCycleActionParam) => {\n const changedData = deleteTaskCallback(taskData, emptyplanViewData);\n setPlanViewData(changedData);\n };\n\n const onAddStage = () => {\n const changedData = addStageCallback(emptyplanViewData, 'stages');\n setPlanViewData(changedData.dataClone);\n };\n\n const onAddAlternateStage = () => {\n const changedData = addStageCallback(emptyplanViewData, 'alternateStages');\n setPlanViewData(changedData.dataClone);\n };\n\n const onDeleteStage: LifeCycleAction['onClick'] = param => {\n const changedData = deleteStageCallback(param, emptyplanViewData);\n if (changedData === 'firstStage') {\n // eslint-disable-next-line no-alert\n alert(\"you can't delete the create stage\");\n } else {\n setPlanViewData(changedData);\n }\n };\n\n useEffect(() => {\n if (emptyplanViewData.activeElementId) {\n const elementId: HTMLElement | null = document.getElementById(\n `${emptyplanViewData.activeElementId}`\n );\n if (elementId) {\n elementId.focus();\n }\n }\n });\n\n const stages = emptyplanViewData.data.stages as StageItemProps[];\n const alternateStages = emptyplanViewData.data.alternateStages as StageItemProps[];\n const categories = emptyplanViewData.data.categories as CategoriesItemProps[];\n\n const channelActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete channel',\n id: 'delete5',\n icon: 'trash',\n onClick: deleteStep\n }\n ],\n [args.readOnly]\n );\n\n const dataSourceActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete data source',\n id: 'delete6',\n icon: 'trash',\n onClick: deleteStep\n }\n ],\n [args.readOnly]\n );\n\n const personaActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete persona',\n id: 'delete2',\n icon: 'trash',\n onClick: deleteTask\n }\n ],\n [args.readOnly]\n );\n\n const dataActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n {\n text: 'Delete data',\n id: 'delete4',\n icon: 'trash',\n onClick: deleteTask\n }\n ],\n [args.readOnly]\n );\n\n const stageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n [args.readOnly]\n );\n\n const alternateStageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [{ text: 'Delete Stage', id: 'delete11', icon: 'trash', onClick: onDeleteStage }],\n [args.readOnly]\n );\n\n return (\n <LifeCycle\n items={stages}\n alternateItems={alternateStages}\n categories={categories}\n task={[\n {\n actions: personaActions,\n addStepTitle: 'channels',\n addTask: {\n title: 'Persona',\n showOnce: false,\n onAddTask: addTask\n },\n onAddStep: addStep,\n nodeLibrary: planViewNodeLibrary\n },\n {\n actions: dataActions,\n addStepTitle: 'Data and Systems',\n addTask: {\n title: 'Data',\n showOnce: false,\n onAddTask: addTask\n },\n onAddStep: addStep,\n nodeLibrary: workFlowNodeLibrary\n }\n ]}\n step={[\n {\n actions: channelActions\n },\n {\n actions: dataSourceActions\n }\n ]}\n stage={{\n actions: stageActions\n }}\n alternateStage={{\n actions: alternateStageActions\n }}\n onAddStage={onAddStage}\n onAddAlternateStage={onAddAlternateStage}\n readOnly={args.readOnly}\n />\n );\n};\nexport const WorkFlowView: Story<LifeCycleDemoProps> = (args: LifeCycleDemoProps) => {\n const workFlowState = {\n activeElementId: '',\n data: lifeCycleWorkFlowData\n } as LifeCycleMockState;\n const [workFlowData, setWorkFlowData] = useState(workFlowState);\n const [activeFieldItem, setActiveFieldItem] = useState<LifeCycleActionParam & { id?: string }>();\n const [open, setOpen] = useState(false);\n const [inputError, setInputError] = useState(false);\n const [inputValue, setInputValue] = useState<string>();\n const [selectedOptionValue, setSelectedOptionValue] = useState({ id: 0, value: 'Choose' });\n const selectOptions = [\n { id: 0, value: 'Choose' },\n { id: 1, value: 'Me' },\n { id: 2, value: 'Current User' },\n { id: 3, value: 'Work Queue' }\n ];\n\n useEffect(() => {\n setInputValue(activeFieldItem?.value);\n }, [activeFieldItem]);\n\n const addProcessStep = (stepData: LifeCycleActionParam, libItem: LibraryItem) => {\n const newStep: StepItemProps = {\n id: libItem.id,\n label: libItem.primary,\n visual: {\n color: libItem.type.color as StepItemProps['visual']['color'],\n icon: libItem.type.icon\n } as StepItemProps['visual'],\n error: '',\n status: { label: '' }\n };\n const updatedTask = {\n ...stepData.task,\n steps: [...stepData.task!.steps, newStep]\n } as LifeCycleActionParam['task'];\n\n const updatedData: LifeCycleActionParam = { ...stepData, task: updatedTask };\n\n const changedData = addStepCallback(updatedData, workFlowData);\n setActiveFieldItem({ ...changedData.newStepData, type: 'Step' });\n setWorkFlowData(changedData.dataClone);\n setInputError(false);\n setOpen(true);\n };\n\n const deleteProcessStep = (stepData: LifeCycleActionParam) => {\n const changedData = deleteStepCallback(stepData, workFlowData);\n if (stepData?.step?.id === activeFieldItem?.id) {\n setActiveFieldItem(undefined);\n setOpen(false);\n }\n setWorkFlowData(changedData);\n };\n\n const addProcess = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, workFlowData);\n setActiveFieldItem({ ...changedData.newTaskData, type: 'Task' });\n setWorkFlowData(changedData.dataClone);\n setInputError(false);\n setOpen(true);\n };\n\n const addParallelProcess = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, workFlowData, true);\n setActiveFieldItem({ ...changedData.newTaskData, type: 'Task' });\n setWorkFlowData(changedData.dataClone);\n setOpen(true);\n };\n\n const deleteProcess = (taskData: LifeCycleActionParam) => {\n const changedData = deleteTaskCallback(taskData, workFlowData);\n if (taskData?.task?.id === activeFieldItem?.id) {\n setActiveFieldItem(undefined);\n setOpen(false);\n }\n setWorkFlowData(changedData);\n };\n\n const onAddStage = () => {\n const changedData = addStageCallback(workFlowData, 'stages');\n setActiveFieldItem({ ...changedData.newStageData, type: 'Stage' });\n setWorkFlowData(changedData.dataClone);\n setInputError(false);\n setOpen(true);\n };\n\n const onAddAlternateStage = () => {\n const changedData = addStageCallback(workFlowData, 'alternateStages');\n setActiveFieldItem({ ...changedData.newStageData, type: 'Alternate Stage' });\n setWorkFlowData(changedData.dataClone);\n setInputError(false);\n setOpen(true);\n };\n\n const onDeleteStage: LifeCycleAction['onClick'] = (stageData: LifeCycleActionParam) => {\n const changedData = deleteStageCallback(stageData, workFlowData);\n if (changedData === 'firstStage') {\n // eslint-disable-next-line no-alert\n alert(\"you can't delete the create stage\");\n } else {\n if (stageData?.stage?.id === activeFieldItem?.id) {\n setActiveFieldItem(undefined);\n setOpen(false);\n }\n setWorkFlowData(changedData);\n }\n };\n\n const onOpenProcess = () => {};\n\n const onSelectedItem = (selectedData: LifeCycleActionParam) => {\n setSelectedOptionValue({ id: 0, value: 'Choose' });\n switch (selectedData.type) {\n case 'Step':\n setActiveFieldItem({ ...selectedData, id: selectedData?.step?.id });\n if (selectedData.step?.error !== '') {\n setInputError(true);\n setInputValue('');\n } else {\n setInputError(false);\n }\n break;\n case 'Task':\n setActiveFieldItem({ ...selectedData, id: selectedData?.task?.id });\n if (selectedData.task?.error !== '') {\n setInputError(true);\n setInputValue('');\n } else {\n setInputError(false);\n }\n break;\n case 'Stage':\n setActiveFieldItem({ ...selectedData, id: selectedData?.stage?.id });\n if (selectedData.stage?.error !== '') {\n setInputError(true);\n setInputValue('');\n } else {\n setInputError(false);\n }\n break;\n default:\n setActiveFieldItem(undefined);\n }\n setOpen(true);\n };\n\n const onSelectedUpdateData = () => {\n let changedData: LifeCycleMockState;\n const cloneData = { ...activeFieldItem };\n let errorMessage: string;\n if (inputValue === '') {\n errorMessage = 'Name cannot be empty';\n if (activeFieldItem?.type === 'Stage' && cloneData.stage) {\n cloneData.stage.error = errorMessage;\n cloneData.stage.label = inputValue;\n changedData = updateStageCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n } else if (activeFieldItem?.type === 'Step' && cloneData.step) {\n cloneData.step.error = errorMessage;\n changedData = updateStepCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n } else {\n if (cloneData.task) {\n cloneData.task.error = errorMessage;\n cloneData.task.label = inputValue;\n }\n changedData = updateTaskCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n }\n\n setWorkFlowData(changedData);\n } else {\n errorMessage = '';\n\n if (\n (activeFieldItem?.type === 'Stage' || activeFieldItem?.type === 'Alternate Stage') &&\n cloneData.stage\n ) {\n cloneData.stage.error = errorMessage;\n cloneData.stage.label = `${inputValue}`;\n changedData = updateStageCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n } else if (activeFieldItem?.type === 'Step' && cloneData.step) {\n cloneData.step.error = errorMessage;\n changedData = updateStepCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n } else {\n if (cloneData.task) {\n cloneData.task.error = errorMessage;\n cloneData.task.label = `${inputValue}`;\n }\n changedData = updateTaskCallback(cloneData, workFlowData);\n setActiveFieldItem(cloneData);\n }\n setWorkFlowData(changedData);\n }\n };\n\n const WorkbenchContent = memo(() => {\n const onInputBlur = (e: FocusEvent<HTMLInputElement>) => {\n if (e.target.value === '') {\n setInputError(true);\n setActiveFieldItem({ ...activeFieldItem, value: e.target.value });\n } else {\n setInputError(false);\n setActiveFieldItem({ ...activeFieldItem, value: e.target.value });\n }\n };\n\n const onSelectChange = (e: FocusEvent<HTMLSelectElement>) => {\n setSelectedOptionValue({ id: e.target.selectedIndex, value: e.target.value });\n };\n\n const convertRhsTypes = (\n useLiteralRHSType: boolean,\n useFieldRHSType: boolean,\n useRelativeDatesType: boolean,\n dateFunctions?: DateFunctionsByType\n ) => {\n const setRhsTypes: Set<RHSType> = new Set<RHSType>();\n if (useLiteralRHSType) setRhsTypes.add('LITERAL');\n if (useFieldRHSType) setRhsTypes.add('FIELD');\n if (dateFunctions) setRhsTypes.add('DATE_FUNCTION');\n if (useRelativeDatesType) setRhsTypes.add('RELATIVE_DATE');\n return setRhsTypes;\n };\n const validRHSTypes: Set<RHSType> = convertRhsTypes(true, true, true, demoDateFunctions);\n const [condition, setCondition] = useState(() =>\n getInitConditionForLhs(\n { field: 'details.age' },\n demoFields,\n validRHSTypes,\n undefined,\n demoDateFunctions\n )\n );\n const [value, setValue] = useState<ObjectSelectProps['value']>();\n const [dataPagesDelayed, setDataPagesDelayed] = useState<ObjectSelectProps['items']>([]);\n\n useEffect(() => {\n const timeout = setTimeout(() => setDataPagesDelayed(dataPages), 2000);\n return () => clearTimeout(timeout);\n }, []);\n\n return (\n <>\n <Input\n type='text'\n defaultValue={inputValue}\n label={`${activeFieldItem?.type} name`}\n labelHidden={false}\n info={inputError ? 'Cannot be blank' : ''}\n placeholder=''\n status={inputError ? 'error' : undefined}\n required\n readOnly={args.readOnly}\n onBlur={onInputBlur}\n />\n <Select\n label='Route to'\n labelHidden={false}\n value={selectedOptionValue.value}\n onChange={onSelectChange}\n readOnly={args.readOnly}\n >\n {selectOptions.map(_eachOption => {\n return <Option key={_eachOption.id}>{_eachOption.value}</Option>;\n })}\n </Select>\n <ObjectSelect\n label='Validation for entering step'\n createConfiguration={{ href: 'https://www.pega.com' }}\n loading={dataPagesDelayed.length === 0}\n placeholder='Select...'\n onChange={id => {\n const data = menuHelpers.getItem(dataPages, id);\n if (data) {\n setValue({\n id: data.id,\n primary: data.primary,\n meta: data.id !== '01-4' ? data.secondary?.join(' ') : ''\n });\n } else setValue(undefined);\n }}\n items={dataPagesDelayed}\n configuration={{\n label: 'Edit Configuration',\n heading: 'Map Parameters',\n onSubmit: () => null,\n onClose: () => null,\n placement: 'auto',\n children: (\n <ConfigurationContent\n {...args}\n popoverContent='simple'\n condition={condition}\n setCondition={setCondition}\n validRHSTypes={validRHSTypes}\n />\n )\n }}\n value={value}\n />\n </>\n );\n });\n\n useEffect(() => {\n if (workFlowData.activeElementId) {\n const elementId: HTMLElement | null = document.getElementById(\n `${workFlowData.activeElementId}`\n );\n if (elementId) {\n elementId.focus();\n }\n }\n });\n\n const stages = workFlowData.data.stages as StageItemProps[];\n const alternateStages = workFlowData.data.alternateStages as StageItemProps[];\n const categories: CategoriesItemProps[] = lifeCycleWorkFlowData.categories;\n\n const stepActions = useMemo(() => {\n return args.readOnly\n ? []\n : [\n {\n text: 'Delete',\n id: 'delete10',\n icon: 'trash',\n onClick: deleteProcessStep\n }\n ];\n }, [args.readOnly]);\n const taskActions = useMemo(() => {\n return args.readOnly\n ? [\n {\n text: 'Open Process',\n id: 'layers2',\n icon: 'layers',\n onClick: onOpenProcess\n }\n ]\n : [\n {\n text: 'Delete Process',\n id: 'delete9',\n icon: 'trash',\n onClick: deleteProcess\n },\n {\n text: 'Open Process',\n id: 'layers2',\n icon: 'layers',\n onClick: onOpenProcess\n }\n ];\n }, [args.readOnly]);\n\n const StageActions = useMemo(() => {\n return args.readOnly\n ? {\n start: [],\n default: [],\n 'default-wait': [],\n resolution: [],\n alternate: [],\n 'alternate-wait': []\n }\n : {\n start: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage }\n ],\n default: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n 'default-wait': [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n resolution: [],\n alternate: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n 'alternate-wait': [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ]\n };\n }, [args.readOnly]);\n\n const alternateStageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n [args.readOnly]\n );\n\n return (\n <Workbench\n initiallyVisiblePanelId={undefined}\n configurationPanel={{\n open,\n content: <WorkbenchContent />,\n header: (activeFieldItem?.value || activeFieldItem?.type) as string,\n onDismiss: () => {\n onSelectedUpdateData();\n setOpen(false);\n setInputError(false);\n setActiveFieldItem(undefined);\n }\n }}\n >\n <LifeCycle\n items={stages}\n alternateItems={alternateStages}\n categories={categories}\n task={[\n {\n actions: taskActions,\n addStepTitle: 'step',\n addTask: {\n title: 'Process',\n showOnce: true,\n onAddTask: addProcess\n },\n onClick: onSelectedItem,\n onAddStep: addProcessStep,\n nodeLibrary: workFlowNodeLibrary\n }\n ]}\n step={[\n {\n actions: stepActions,\n onClick: onSelectedItem\n }\n ]}\n stage={{\n actions: StageActions,\n onClick: onSelectedItem\n }}\n alternateStage={{\n actions: alternateStageActions,\n onClick: onSelectedItem\n }}\n onAddStage={onAddStage}\n onAddAlternateStage={onAddAlternateStage}\n selectedItemId={activeFieldItem?.id}\n readOnly={args.readOnly}\n />\n </Workbench>\n );\n};\n\nexport const EmptyWorkFlowView: Story<LifeCycleDemoProps> = (args: LifeCycleDemoProps) => {\n const emptyState = {\n activeElementId: '',\n data: lifeCycleEmptyData\n } as LifeCycleMockState;\n const [emptyStateData, setEmptyStateData] = useState<LifeCycleMockState>(emptyState);\n\n const addProcessStep = (stepData: LifeCycleActionParam, libItem: LibraryItem) => {\n const newStep: StepItemProps = {\n id: libItem.id,\n label: libItem.primary,\n visual: {\n color: libItem.type.color as StepItemProps['visual']['color'],\n icon: libItem.type.icon\n } as StepItemProps['visual'],\n error: '',\n status: { label: '' }\n };\n const updatedTask = {\n ...stepData.task,\n steps: [...stepData.task!.steps, newStep]\n } as LifeCycleActionParam['task'];\n\n const updatedData: LifeCycleActionParam = { ...stepData, task: updatedTask };\n\n const changedData = addStepCallback(updatedData, emptyStateData);\n setEmptyStateData(changedData.dataClone);\n };\n\n const deleteProcessStep = (stepData: LifeCycleActionParam) => {\n const changedData = deleteStepCallback(stepData, emptyStateData);\n setEmptyStateData(changedData);\n };\n\n const addProcess = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, emptyStateData);\n setEmptyStateData(changedData.dataClone);\n };\n\n const addParallelProcess = (taskData: LifeCycleActionParam) => {\n const changedData = addTaskCallback(taskData, emptyStateData, true);\n setEmptyStateData(changedData.dataClone);\n };\n\n const deleteProcess = (taskData: LifeCycleActionParam) => {\n const changedData = deleteTaskCallback(taskData, emptyStateData);\n setEmptyStateData(changedData);\n };\n\n const onAddStage = () => {\n const changedData = addStageCallback(emptyStateData, 'stages');\n setEmptyStateData(changedData.dataClone);\n };\n\n const onAddAlternateStage = () => {\n const changedData = addStageCallback(emptyStateData, 'alternateStages');\n setEmptyStateData(changedData.dataClone);\n };\n\n const onDeleteStage: LifeCycleAction['onClick'] = param => {\n const changedData = deleteStageCallback(param, emptyStateData);\n if (changedData === 'firstStage') {\n // eslint-disable-next-line no-alert\n alert(\"you can't delete the create stage\");\n } else {\n setEmptyStateData(changedData);\n }\n };\n\n const onOpenProcess = () => {};\n\n useEffect(() => {\n if (emptyStateData.activeElementId) {\n const elementId: HTMLElement | null = document.getElementById(\n `${emptyStateData.activeElementId}`\n );\n if (elementId) {\n elementId.focus();\n }\n }\n });\n\n const stages = emptyStateData.data.stages as StageItemProps[];\n const alternateStages: StageItemProps[] = emptyStateData.data.alternateStages;\n const categories: CategoriesItemProps[] = lifeCycleEmptyData.categories;\n\n const stepActions = useMemo(() => {\n return args.readOnly\n ? []\n : [\n {\n text: 'Delete step',\n id: 'delete10',\n icon: 'trash',\n onClick: deleteProcessStep\n }\n ];\n }, [args.readOnly]);\n\n const taskActions = useMemo(() => {\n return args.readOnly\n ? [\n {\n text: 'Open Process',\n id: 'layers2',\n icon: 'layers',\n onClick: onOpenProcess\n }\n ]\n : [\n {\n text: 'Delete Process',\n id: 'delete9',\n icon: 'trash',\n onClick: deleteProcess\n },\n {\n text: 'Open Process',\n id: 'layers2',\n icon: 'layers',\n onClick: onOpenProcess\n }\n ];\n }, [args.readOnly]);\n\n const StageActions = useMemo(() => {\n return args.readOnly\n ? {\n start: [],\n default: [],\n 'default-wait': [],\n resolution: [],\n alternate: [],\n 'alternate-wait': []\n }\n : {\n start: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage }\n ],\n default: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Add Alternate Stage', id: 'add2', onClick: onAddAlternateStage },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n 'default-wait': [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n resolution: [],\n alternate: [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n 'alternate-wait': [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ]\n };\n }, [args.readOnly]);\n\n const alternateStageActions = useMemo(\n () =>\n args.readOnly\n ? []\n : [\n { text: 'Add Process', id: 'add1', onClick: addProcess },\n { text: 'Add Parallel Process', id: 'add3', onClick: addParallelProcess },\n { text: 'Delete Stage', id: 'delete11', onClick: onDeleteStage }\n ],\n [args.readOnly]\n );\n\n return (\n <LifeCycle\n items={stages}\n alternateItems={alternateStages}\n categories={categories}\n task={[\n {\n actions: taskActions,\n addStepTitle: 'step',\n addTask: {\n title: 'Process',\n showOnce: true,\n onAddTask: addProcess\n },\n onAddStep: addProcessStep,\n nodeLibrary: workFlowNodeLibrary\n }\n ]}\n step={[\n {\n actions: stepActions\n }\n ]}\n stage={{\n actions: StageActions\n }}\n alternateStage={{\n actions: alternateStageActions\n }}\n onAddStage={onAddStage}\n onAddAlternateStage={onAddAlternateStage}\n readOnly={args.readOnly}\n />\n );\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MobileBuildSummary.mocks.d.ts","sourceRoot":"","sources":["../../../src/build/MobileBuildSummary/MobileBuildSummary.mocks.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"MobileBuildSummary.mocks.d.ts","sourceRoot":"","sources":["../../../src/build/MobileBuildSummary/MobileBuildSummary.mocks.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;;;;;CAkBzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MobileBuildSummary.mocks.js","sourceRoot":"","sources":["../../../src/build/MobileBuildSummary/MobileBuildSummary.mocks.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,aAAa,EAAE;QACb;YACE,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,OAAO;SACf;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE;SACjC;QACD;YACE,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE;SACjC;KACF;IACD,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;IACpB,WAAW,EAAE,GAAG;
|
|
1
|
+
{"version":3,"file":"MobileBuildSummary.mocks.js","sourceRoot":"","sources":["../../../src/build/MobileBuildSummary/MobileBuildSummary.mocks.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,aAAa,EAAE;QACb;YACE,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,OAAO;SACf;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE;SACjC;QACD;YACE,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE;SACjC;KACF;IACD,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;IACpB,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,GAAG;CACf,CAAC","sourcesContent":["export const resultsFields = {\n summaryFields: [\n {\n name: 'Version',\n value: '1.0.0'\n },\n {\n name: 'Built on',\n value: new Date().toDateString()\n },\n {\n name: 'Configured on',\n value: new Date().toDateString()\n }\n ],\n onDownload: () => {},\n downloadUrl: '/',\n qrCodeUrl: '/'\n};\n"]}
|