udp-react-enterprise-component-library 25.14.1-beta.7 → 25.14.1-beta.9
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/dist/{Accordion-Cd6gzd60.js → Accordion-DL61AM6M.js} +2 -2
- package/dist/{Accordion-Cd6gzd60.js.map → Accordion-DL61AM6M.js.map} +1 -1
- package/dist/{ActionProvider-BPuiwxd4.js → ActionProvider-DL5qMp-u.js} +2 -2
- package/dist/{ActionProvider-BPuiwxd4.js.map → ActionProvider-DL5qMp-u.js.map} +1 -1
- package/dist/{ActionSplitScreen-Cym0gCOb.js → ActionSplitScreen-x0Bh5GEF.js} +3 -3
- package/dist/{ActionSplitScreen-Cym0gCOb.js.map → ActionSplitScreen-x0Bh5GEF.js.map} +1 -1
- package/dist/{ActionWrapper-CoP91vel.js → ActionWrapper-BRzh3vn0.js} +3 -3
- package/dist/{ActionWrapper-CoP91vel.js.map → ActionWrapper-BRzh3vn0.js.map} +1 -1
- package/dist/{BaseTreeMenu-DmsrGSdA.js → BaseTreeMenu-DHEMztjA.js} +7 -3
- package/dist/BaseTreeMenu-DHEMztjA.js.map +1 -0
- package/dist/{CircleButton-BFASpo5t.js → CircleButton-DBPFjNl1.js} +2 -2
- package/dist/{CircleButton-BFASpo5t.js.map → CircleButton-DBPFjNl1.js.map} +1 -1
- package/dist/{CrudBrowserContainer-Dpgwjt7c.js → CrudBrowserContainer-B8AKH7kQ.js} +9 -4
- package/dist/CrudBrowserContainer-B8AKH7kQ.js.map +1 -0
- package/dist/{EntityHeader-Buq_r4IE.js → EntityHeader-DOoeCEj3.js} +2 -2
- package/dist/{EntityHeader-Buq_r4IE.js.map → EntityHeader-DOoeCEj3.js.map} +1 -1
- package/dist/{FileViewer-C1eQoTDj.js → FileViewer-Bhubf4Uv.js} +2 -2
- package/dist/{FileViewer-C1eQoTDj.js.map → FileViewer-Bhubf4Uv.js.map} +1 -1
- package/dist/{FluentCell-DZ5pFjdC.js → FluentCell-C7lb2y4Z.js} +2 -2
- package/dist/{FluentCell-DZ5pFjdC.js.map → FluentCell-C7lb2y4Z.js.map} +1 -1
- package/dist/{FluentDataTable-C7Ng6Eh3.js → FluentDataTable-C3A36z2b.js} +2 -2
- package/dist/{FluentDataTable-C7Ng6Eh3.js.map → FluentDataTable-C3A36z2b.js.map} +1 -1
- package/dist/{FluentTimeline-ChthjfxZ.js → FluentTimeline-B0VjMqsq.js} +2 -2
- package/dist/{FluentTimeline-ChthjfxZ.js.map → FluentTimeline-B0VjMqsq.js.map} +1 -1
- package/dist/{IconRenderer-8w6JVRET.js → IconRenderer-DiwGfDul.js} +2 -2
- package/dist/{IconRenderer-8w6JVRET.js.map → IconRenderer-DiwGfDul.js.map} +1 -1
- package/dist/{Inquiry-DJ-yrELW.js → Inquiry-UnnTFapw.js} +6 -6
- package/dist/{Inquiry-DJ-yrELW.js.map → Inquiry-UnnTFapw.js.map} +1 -1
- package/dist/{MenuPage-BJsOWc5e.js → MenuPage-D4tvTXC3.js} +4 -4
- package/dist/{MenuPage-0qeyA5lF.js → MenuPage-DJGGAhH5.js} +11 -6
- package/dist/MenuPage-DJGGAhH5.js.map +1 -0
- package/dist/{MttMainTimeline-au5xi1SZ.js → MttMainTimeline-Bme6LQZO.js} +2 -2
- package/dist/{MttMainTimeline-au5xi1SZ.js.map → MttMainTimeline-Bme6LQZO.js.map} +1 -1
- package/dist/{MttSummary-DHB1AW_0.js → MttSummary-CTETqPbU.js} +3 -3
- package/dist/{MttSummary-DHB1AW_0.js.map → MttSummary-CTETqPbU.js.map} +1 -1
- package/dist/{NotesScreen-moR3WUoq.js → NotesScreen-CmMz3GTR.js} +2 -2
- package/dist/{NotesScreen-moR3WUoq.js.map → NotesScreen-CmMz3GTR.js.map} +1 -1
- package/dist/{PageActionWrapper-KtNGraWi.js → PageActionWrapper-HgV0I8Km.js} +2 -2
- package/dist/{PageActionWrapper-KtNGraWi.js.map → PageActionWrapper-HgV0I8Km.js.map} +1 -1
- package/dist/{RecentlyLoadedNodesTable-B5KlS1HR.js → RecentlyLoadedNodesTable-BRxssq07.js} +2 -2
- package/dist/{RecentlyLoadedNodesTable-B5KlS1HR.js.map → RecentlyLoadedNodesTable-BRxssq07.js.map} +1 -1
- package/dist/{RemindersCard-CRstZlRF.js → RemindersCard-BrjYmZVz.js} +2 -2
- package/dist/{RemindersCard-CRstZlRF.js.map → RemindersCard-BrjYmZVz.js.map} +1 -1
- package/dist/{RemindersScreen-C2hcBWnk.js → RemindersScreen-CVTHY97W.js} +2 -2
- package/dist/{RemindersScreen-C2hcBWnk.js.map → RemindersScreen-CVTHY97W.js.map} +1 -1
- package/dist/{Shell-CuYfQQKW.js → Shell-CZIS-LvO.js} +4 -4
- package/dist/{Shell-CuYfQQKW.js.map → Shell-CZIS-LvO.js.map} +1 -1
- package/dist/{TreeUtilities-DVY-2md6.js → TreeUtilities-XLrXtUeL.js} +9 -8
- package/dist/{TreeUtilities-DVY-2md6.js.map → TreeUtilities-XLrXtUeL.js.map} +1 -1
- package/dist/UI/accordion/index.js +2 -2
- package/dist/UI/dataDisplay/FluentDataTable/FluentCell/index.js +2 -2
- package/dist/UI/dataDisplay/FluentDataTable/index.js +3 -3
- package/dist/UI/dataDisplay/entityHeader/index.js +3 -3
- package/dist/UI/dataDisplay/index.js +5 -5
- package/dist/UI/fileViewer/index.js +2 -2
- package/dist/UI/index.js +9 -9
- package/dist/UI/timeline/fluentTimeline/index.js +2 -2
- package/dist/UI/timeline/index.js +2 -2
- package/dist/UI/utilityDisplay/index.js +1 -1
- package/dist/{UdpMaintenanceConfigPage-CC_gwu35.js → UdpMaintenanceConfigPage-DfKk0PmB.js} +1 -1
- package/dist/{UdpMaintenanceConfigPage-yuotrI0g.js → UdpMaintenanceConfigPage-mJ4AkDYp.js} +3 -2
- package/dist/UdpMaintenanceConfigPage-mJ4AkDYp.js.map +1 -0
- package/dist/{UdpMaintenanceEnginePage-o40sezly.js → UdpMaintenanceEnginePage-DAioIeSf.js} +8 -3
- package/dist/UdpMaintenanceEnginePage-DAioIeSf.js.map +1 -0
- package/dist/{UdpMaintenanceEnginePage-b5cm6uW2.js → UdpMaintenanceEnginePage-M0RbzSTX.js} +2 -2
- package/dist/{UdpRoutes-BVVsyngj.js → UdpRoutes-Bjfl5no0.js} +5 -5
- package/dist/{UdpRoutes-BVVsyngj.js.map → UdpRoutes-Bjfl5no0.js.map} +1 -1
- package/dist/{UtilitySideBar-DlCvljVV.js → UtilitySideBar-otYqGPhu.js} +2 -2
- package/dist/UtilitySideBar-otYqGPhu.js.map +1 -0
- package/dist/{WorkflowContainer-DasTFSlY.js → WorkflowContainer-C5zXxhJE.js} +3 -3
- package/dist/{WorkflowContainer-DasTFSlY.js.map → WorkflowContainer-C5zXxhJE.js.map} +1 -1
- package/dist/{WorkflowContainer-C6QfVid-.js → WorkflowContainer-D0Od__D5.js} +4 -4
- package/dist/{WorkflowTreeMenu-Dc9l7jEY.js → WorkflowTreeMenu-BtolZKVF.js} +2 -2
- package/dist/{WorkflowTreeMenu-Dc9l7jEY.js.map → WorkflowTreeMenu-BtolZKVF.js.map} +1 -1
- package/dist/actions/index.js +6 -6
- package/dist/componentSystems/multiThreadTimeline/index.js +5 -5
- package/dist/componentSystems/multiThreadTimeline/mttMainTimeline/index.js +3 -3
- package/dist/componentSystems/multiThreadTimeline/mttSummary/index.js +4 -4
- package/dist/componentSystems/multiThreadTimeline/ui/index.js +3 -3
- package/dist/index.js +146 -62
- package/dist/index.js.map +1 -1
- package/dist/inquiry/dashboard/index.js +3 -3
- package/dist/inquiry/index.js +10 -10
- package/dist/maintenanceEngine/crudBrowser/index.js +1 -1
- package/dist/maintenanceEngine/index.js +1 -1
- package/dist/menuPage/index.js +4 -4
- package/dist/notes/index.js +2 -2
- package/dist/reminders/index.js +3 -3
- package/dist/routes/index.js +1 -1
- package/dist/shell/index.js +12 -12
- package/dist/shell/ui/addUser/index.js +1 -1
- package/dist/shell/ui/appSwitcher/index.js +1 -1
- package/dist/shell/ui/index.js +3 -3
- package/dist/treeMenu/index.js +2 -2
- package/dist/types/UI/charts/types.d.ts +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/menuPage/CustomMenuPage.d.ts +22 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/dist/types/utilities/iconLibrary/index.d.ts +5 -1
- package/dist/types/utilities/tree/TreeUtilities.d.ts +2 -0
- package/dist/udp/pages/index.js +10 -10
- package/dist/{udpPages-WbvmyuOa.js → udpPages-D6t7REhp.js} +7 -7
- package/dist/{udpPages-WbvmyuOa.js.map → udpPages-D6t7REhp.js.map} +1 -1
- package/dist/utilities/DemoJuly/index.js +1 -1
- package/dist/utilities/aggrid/index.js +1 -1
- package/dist/utilities/auth/index.js +1 -1
- package/dist/utilities/catalog/index.js +1 -1
- package/dist/utilities/chatBot/index.js +1 -1
- package/dist/utilities/crud/index.js +1 -1
- package/dist/utilities/customIcons/index.js +1 -1
- package/dist/utilities/entities/index.js +1 -1
- package/dist/utilities/floorplanFunctions/index.js +1 -1
- package/dist/utilities/iconLibrary/index.js +5 -5
- package/dist/utilities/index.js +35 -35
- package/dist/utilities/input/index.js +1 -1
- package/dist/utilities/maintenanceEngine/index.js +1 -1
- package/dist/utilities/menus/index.js +1 -1
- package/dist/utilities/page/index.js +1 -1
- package/dist/utilities/provider/index.js +7 -7
- package/dist/utilities/redirect/index.js +1 -1
- package/dist/utilities/rules/index.js +1 -1
- package/dist/utilities/search/index.js +1 -1
- package/dist/utilities/storage/index.js +1 -1
- package/dist/utilities/style/index.js +1 -1
- package/dist/utilities/tenant/index.js +1 -1
- package/dist/utilities/tree/index.js +2 -2
- package/dist/utilities/uploader/index.js +1 -1
- package/dist/utilities/utilityBar/index.js +1 -1
- package/dist/utilities/workflow/index.js +1 -1
- package/dist/workflow/components/index.js +1 -1
- package/dist/workflow/index.js +6 -6
- package/dist/workflow/menus/index.js +3 -3
- package/export-map.json +7 -5
- package/package.json +2 -2
- package/dist/BaseTreeMenu-DmsrGSdA.js.map +0 -1
- package/dist/CrudBrowserContainer-Dpgwjt7c.js.map +0 -1
- package/dist/MenuPage-0qeyA5lF.js.map +0 -1
- package/dist/UdpMaintenanceConfigPage-yuotrI0g.js.map +0 -1
- package/dist/UdpMaintenanceEnginePage-o40sezly.js.map +0 -1
- package/dist/UtilitySideBar-DlCvljVV.js.map +0 -1
- /package/dist/{DemoJuly-HEFpRiJ1.js → DemoJuly-D7RhIRiO.js} +0 -0
- /package/dist/{addUser-CDUgX71C.js → addUser-CS0LS9_W.js} +0 -0
- /package/dist/{aggrid-D_aCbevC.js → aggrid-C3KMLJBL.js} +0 -0
- /package/dist/{appSwitcher-BXsn0Y7P.js → appSwitcher-DqliMkfh.js} +0 -0
- /package/dist/{auth-DWPlnjpI.js → auth-DLdDsXt6.js} +0 -0
- /package/dist/{catalog-DMuLXcCK.js → catalog-DLo7sqLU.js} +0 -0
- /package/dist/{chatBot-CESOMewn.js → chatBot-dEV9kiqk.js} +0 -0
- /package/dist/{components-DaFrTvLa.js → components-CnnFIob2.js} +0 -0
- /package/dist/{crud-tnZ9W8IE.js → crud-C_ERd-Ed.js} +0 -0
- /package/dist/{customIcons-DbLvDHvX.js → customIcons-BzKpDhOz.js} +0 -0
- /package/dist/{entities-Hs88OmOI.js → entities-Z3wHDYPc.js} +0 -0
- /package/dist/{floorplanFunctions-DI9Q0N4y.js → floorplanFunctions-CyG-A6Ho.js} +0 -0
- /package/dist/{iconLibrary-BzBDlfKa.js → iconLibrary-DkiwUTn0.js} +0 -0
- /package/dist/{input-DVo_b6i8.js → input-Bd3pOKUF.js} +0 -0
- /package/dist/{maintenanceEngine-BbFlaLMV.js → maintenanceEngine-BiIXrgHI.js} +0 -0
- /package/dist/{menus-BZI70wR2.js → menus-CreZRf8_.js} +0 -0
- /package/dist/{menus-DN6GDDqx.js → menus-lneAs-ot.js} +0 -0
- /package/dist/{page-BQMQ1JlA.js → page-DF9Cce_a.js} +0 -0
- /package/dist/{provider-CwOhsp5M.js → provider-CDMCgVZv.js} +0 -0
- /package/dist/{redirect-B0_sESdf.js → redirect-DXdJsOUE.js} +0 -0
- /package/dist/{rules-cVxJYdGG.js → rules-vy1m9JZd.js} +0 -0
- /package/dist/{search-6zyJ3P-2.js → search-By3X_wDu.js} +0 -0
- /package/dist/{storage-ZisRFPrn.js → storage-Dzx9lS99.js} +0 -0
- /package/dist/{style-B_j5O3ww.js → style-DCetPHEb.js} +0 -0
- /package/dist/{tenant-CMcPr3w4.js → tenant-9yY-GOUj.js} +0 -0
- /package/dist/{tree-BLeqwXve.js → tree-n0-Yv6Oq.js} +0 -0
- /package/dist/{ui-CQsw5PPh.js → ui-C4SYLrHn.js} +0 -0
- /package/dist/{uploader-nV12FZ_U.js → uploader-DSBUHOEF.js} +0 -0
- /package/dist/{utilityBar-BCRqW4jk.js → utilityBar-BgOu4S_x.js} +0 -0
- /package/dist/{workflow-Cou_j4_8.js → workflow-Cy4leS9X.js} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FluentIcon } from "./FluentIcon-CB-ANF6C.js";
|
|
2
2
|
import { FluentIconButton } from "./FluentIconButton-le92OnEc.js";
|
|
3
|
-
import { getIconFromName } from "./TreeUtilities-
|
|
3
|
+
import { getIconFromName } from "./TreeUtilities-XLrXtUeL.js";
|
|
4
4
|
import { StatusChip } from "./StatusChip-Bw-0wE_B.js";
|
|
5
5
|
import { IconButtonWithTooltip } from "./IconButtonWithToolTip-DQacH9wQ.js";
|
|
6
6
|
import React, { useCallback } from "react";
|
|
@@ -189,4 +189,4 @@ const Accordion = (props) => {
|
|
|
189
189
|
|
|
190
190
|
//#endregion
|
|
191
191
|
export { Accordion };
|
|
192
|
-
//# sourceMappingURL=Accordion-
|
|
192
|
+
//# sourceMappingURL=Accordion-DL61AM6M.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion-Cd6gzd60.js","names":[],"sources":["../src/UI/accordion/Accordion.jsx"],"sourcesContent":["import {\n ButtonBase,\n Collapse,\n Tooltip,\n Typography,\n lighten,\n makeStyles\n} from '@material-ui/core';\nimport clsx from 'clsx';\nimport React, { useCallback } from 'react';\nimport { FluentIcon } from '../../utilities/iconLibrary/FluentIcon';\nimport { IconButtonWithTooltip } from '../inputs/buttons/IconButtonWithToolTip';\nimport { ChevronUpIcon } from '@fluentui/react-icons';\nimport { FluentIconButton } from '../inputs/buttons/FluentIconButton';\nimport { getIconFromName } from '../../utilities/tree/TreeUtilities';\nimport { StatusChip } from '../dataDisplay/StatusChip';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n width: '100%',\n height: '100%'\n },\n rootBorder: {\n borderStyle: 'solid',\n borderColor: (props) => theme.palette[props?.color]?.main,\n borderWidth: '1px 1px 1px 6px'\n },\n headerWrapper: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n backgroundColor: (props) =>\n props?.simpleAccordion && props?.color && props?.color !== 'default'\n ? props?.color === 'paper'\n ? theme.palette.background.paper\n : lighten(theme.palette[props?.color]?.light, 0.8)\n : theme.palette.background.default,\n overflow: 'hidden',\n width: (props) => props?.headerWidth ?? '100%'\n },\n secondaryButtonsWrapper: {\n display: 'flex',\n gap: theme.spacing(2),\n borderRadius: theme.spacing(2),\n backgroundColor: 'white',\n padding: `2px ${theme.spacing(1)}px`,\n width: 'fit-content'\n },\n primaryButtonWrapper: {\n minWidth: '68px',\n maxWidth: (props) => props?.primaryActionMaxWidth,\n height: 'auto',\n color: 'white',\n backgroundColor: (props) => theme.palette[props?.color]?.main,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n alignSelf: 'normal'\n },\n headerColor: {\n backgroundColor: (props) =>\n props?.color !== 'default' &&\n props?.color !== 'paper' &&\n lighten(theme.palette[props?.color]?.light, 0.85)\n },\n buttonWrapper: {\n display: 'flex',\n gap: theme.spacing(0.5)\n },\n titleWrapper: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n flexGrow: 2,\n margin: (props) => (props.removeHeaderMargin ? '0px' : theme.spacing(0.8)),\n color: theme.palette.text.primary\n },\n closeButtonWrapper: {\n display: 'flex',\n justifyContent: 'flex-end',\n marginTop: theme.spacing(1)\n },\n unexpandedIconButton: {\n width: '68px',\n height: '40px',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n alignSelf: 'normal',\n borderTop: `solid 1px lightgrey`,\n borderLeft: `solid 1px lightgrey`,\n overflow: 'hidden',\n border: (props) => props?.removeBorder && '0px'\n },\n rightIconButton: {\n backgroundColor: 'white',\n padding: theme.spacing(1),\n borderRadius: '50%'\n },\n primaryActionLabel: {\n marginRight: theme.spacing(0.5),\n marginLeft: theme.spacing(0.5)\n },\n expand: {\n transform: 'rotate(0deg)',\n marginLeft: 'auto',\n marginRight: theme.spacing(1),\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shortest\n })\n },\n expandOpen: {\n transform: 'rotate(180deg)'\n },\n titleStatusWrapper: {\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1),\n }\n}));\n\nexport const Accordion = (props) => {\n const {\n title,\n subtitle,\n subtitleVariant,\n status,\n statusIcon,\n statusLabel,\n secondaryIconButtons,\n overriddenSecondaryContainer,\n rightIcon,\n rightIconAction,\n rightIconTooltip,\n disableRightIconButton = false,\n primaryActionIcon,\n primaryActionLabel,\n primaryAction,\n primaryActionMaxWidth,\n disablePrimaryActionButton = false,\n color = 'info',\n children,\n expand,\n setExpand,\n additionalEvent,\n hideCloseButton = false,\n hideRightIconButton = false,\n hidePrimaryAction = false,\n noWrapTitle = false,\n simpleAccordion = false,\n recordId = 0,\n removeBorder = false,\n headerWidth,\n removeHeaderMargin,\n titleVariant = 'subtitle2',\n chevronIconSize = 'medium'\n } = props;\n const classes = useStyles({\n color,\n primaryActionMaxWidth,\n simpleAccordion,\n headerWidth,\n removeHeaderMargin,\n removeBorder,\n });\n\n const handleOnClickAccordion = useCallback(() => {\n if (setExpand) {\n setExpand(!expand);\n }\n\n if (additionalEvent) {\n additionalEvent();\n }\n }, [additionalEvent, expand, setExpand]);\n\n return (\n <div\n className={clsx(classes.root, {\n [classes.rootBorder]: !simpleAccordion & !removeBorder\n })}\n >\n <div\n className={clsx(classes.headerWrapper, {\n [classes.headerColor]: simpleAccordion ? false : expand\n })}\n onClick={handleOnClickAccordion}\n >\n <div className={classes.titleWrapper}>\n <div>\n <div className={classes.titleStatusWrapper}>\n <Typography variant={titleVariant} noWrap={noWrapTitle}>\n {title}\n </Typography>\n {statusLabel && <StatusChip\n status={status ?? color}\n label={statusLabel}\n icon={statusIcon}\n />}\n </div>\n\n {subtitle && (\n <Typography variant={subtitleVariant} noWrap={noWrapTitle}>\n {subtitle}\n </Typography>\n )}\n\n {overriddenSecondaryContainer ? (\n { overriddenSecondaryContainer }\n ) : (\n <div>\n {secondaryIconButtons?.length > 0 && (\n <div className={classes.secondaryButtonsWrapper}>\n {secondaryIconButtons?.map((item) => (\n <div className={classes.buttonWrapper}>\n <IconButtonWithTooltip\n {...item}\n title={item?.title}\n icon={item.icon}\n onClick={(event) => {\n event.stopPropagation();\n item.onClick();\n }}\n size='small'\n id={`udpRecord-Accordion-${item?.title}-${recordId}`}\n udprecordid={`udpRecord-Accordion-${item?.title}-${recordId}`}\n />\n {item?.value && <Typography>{item?.value}</Typography>}\n </div>\n ))}\n </div>\n )}\n </div>\n )}\n </div>\n {!hideRightIconButton && !simpleAccordion && (\n <div>\n <IconButtonWithTooltip\n title={rightIconTooltip}\n icon={rightIcon}\n onClick={(event) => {\n event.stopPropagation();\n rightIconAction();\n }}\n className={classes.rightIconButton}\n size='small'\n disabled={disableRightIconButton}\n id={`udpRecord-Accordion-RightButton-${recordId}`}\n udprecordid={`udpRecord-Accordion-RightButton-${recordId}`}\n />\n </div>\n )}\n </div>\n {!hidePrimaryAction && !simpleAccordion && (\n <div className={classes.primaryButtonWrapper}>\n {primaryActionIcon ? (\n <Tooltip title={primaryActionLabel}>\n <ButtonBase\n onClick={(event) => {\n event.stopPropagation();\n primaryAction();\n }}\n className={classes.primaryButtonWrapper}\n disabled={disablePrimaryActionButton}\n id={`udpRecord-Accordion-ButtonBase-${recordId}`}\n udprecordid={`udpRecord-Accordion-ButtonBase-${recordId}`}\n >\n <FluentIcon component={primaryActionIcon} />\n </ButtonBase>\n </Tooltip>\n ) : (\n <ButtonBase\n onClick={primaryAction}\n className={classes.primaryButtonWrapper}\n disabled={disablePrimaryActionButton}\n >\n <Typography className={classes.primaryActionLabel}>\n {primaryActionLabel}\n </Typography>\n </ButtonBase>\n )}\n </div>\n )}\n {simpleAccordion && (\n <FluentIconButton\n icon={getIconFromName('ChevronDownIcon')}\n onClick={handleOnClickAccordion}\n className={clsx(classes.expand, {\n [classes.expandOpen]: expand\n })}\n size={chevronIconSize}\n disabled={disableRightIconButton}\n id={`udpRecord-Accordion-ExpandButton-${recordId}`}\n udprecordid={`udpRecord-Accordion-ExpandButton-${recordId}`}\n />\n )}\n </div>\n <Collapse in={expand} timeout='auto' unmountOnExit>\n <div>\n <div>{children}</div>\n {!hideCloseButton && !simpleAccordion && (\n <div className={classes.closeButtonWrapper}>\n <ButtonBase\n onClick={() => {\n if (setExpand) {\n setExpand(false);\n }\n }}\n className={classes.unexpandedIconButton}\n id={`udpRecord-Accordion-CloseButton-${recordId}`}\n udprecordid={`udpRecord-Accordion-CloseButton-${recordId}`}\n >\n <FluentIcon component={ChevronUpIcon} />\n </ButtonBase>\n </div>\n )}\n </div>\n </Collapse>\n </div>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Accordion-DL61AM6M.js","names":[],"sources":["../src/UI/accordion/Accordion.jsx"],"sourcesContent":["import {\n ButtonBase,\n Collapse,\n Tooltip,\n Typography,\n lighten,\n makeStyles\n} from '@material-ui/core';\nimport clsx from 'clsx';\nimport React, { useCallback } from 'react';\nimport { FluentIcon } from '../../utilities/iconLibrary/FluentIcon';\nimport { IconButtonWithTooltip } from '../inputs/buttons/IconButtonWithToolTip';\nimport { ChevronUpIcon } from '@fluentui/react-icons';\nimport { FluentIconButton } from '../inputs/buttons/FluentIconButton';\nimport { getIconFromName } from '../../utilities/tree/TreeUtilities';\nimport { StatusChip } from '../dataDisplay/StatusChip';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n width: '100%',\n height: '100%'\n },\n rootBorder: {\n borderStyle: 'solid',\n borderColor: (props) => theme.palette[props?.color]?.main,\n borderWidth: '1px 1px 1px 6px'\n },\n headerWrapper: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n backgroundColor: (props) =>\n props?.simpleAccordion && props?.color && props?.color !== 'default'\n ? props?.color === 'paper'\n ? theme.palette.background.paper\n : lighten(theme.palette[props?.color]?.light, 0.8)\n : theme.palette.background.default,\n overflow: 'hidden',\n width: (props) => props?.headerWidth ?? '100%'\n },\n secondaryButtonsWrapper: {\n display: 'flex',\n gap: theme.spacing(2),\n borderRadius: theme.spacing(2),\n backgroundColor: 'white',\n padding: `2px ${theme.spacing(1)}px`,\n width: 'fit-content'\n },\n primaryButtonWrapper: {\n minWidth: '68px',\n maxWidth: (props) => props?.primaryActionMaxWidth,\n height: 'auto',\n color: 'white',\n backgroundColor: (props) => theme.palette[props?.color]?.main,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n alignSelf: 'normal'\n },\n headerColor: {\n backgroundColor: (props) =>\n props?.color !== 'default' &&\n props?.color !== 'paper' &&\n lighten(theme.palette[props?.color]?.light, 0.85)\n },\n buttonWrapper: {\n display: 'flex',\n gap: theme.spacing(0.5)\n },\n titleWrapper: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n flexGrow: 2,\n margin: (props) => (props.removeHeaderMargin ? '0px' : theme.spacing(0.8)),\n color: theme.palette.text.primary\n },\n closeButtonWrapper: {\n display: 'flex',\n justifyContent: 'flex-end',\n marginTop: theme.spacing(1)\n },\n unexpandedIconButton: {\n width: '68px',\n height: '40px',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n alignSelf: 'normal',\n borderTop: `solid 1px lightgrey`,\n borderLeft: `solid 1px lightgrey`,\n overflow: 'hidden',\n border: (props) => props?.removeBorder && '0px'\n },\n rightIconButton: {\n backgroundColor: 'white',\n padding: theme.spacing(1),\n borderRadius: '50%'\n },\n primaryActionLabel: {\n marginRight: theme.spacing(0.5),\n marginLeft: theme.spacing(0.5)\n },\n expand: {\n transform: 'rotate(0deg)',\n marginLeft: 'auto',\n marginRight: theme.spacing(1),\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shortest\n })\n },\n expandOpen: {\n transform: 'rotate(180deg)'\n },\n titleStatusWrapper: {\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1),\n }\n}));\n\nexport const Accordion = (props) => {\n const {\n title,\n subtitle,\n subtitleVariant,\n status,\n statusIcon,\n statusLabel,\n secondaryIconButtons,\n overriddenSecondaryContainer,\n rightIcon,\n rightIconAction,\n rightIconTooltip,\n disableRightIconButton = false,\n primaryActionIcon,\n primaryActionLabel,\n primaryAction,\n primaryActionMaxWidth,\n disablePrimaryActionButton = false,\n color = 'info',\n children,\n expand,\n setExpand,\n additionalEvent,\n hideCloseButton = false,\n hideRightIconButton = false,\n hidePrimaryAction = false,\n noWrapTitle = false,\n simpleAccordion = false,\n recordId = 0,\n removeBorder = false,\n headerWidth,\n removeHeaderMargin,\n titleVariant = 'subtitle2',\n chevronIconSize = 'medium'\n } = props;\n const classes = useStyles({\n color,\n primaryActionMaxWidth,\n simpleAccordion,\n headerWidth,\n removeHeaderMargin,\n removeBorder,\n });\n\n const handleOnClickAccordion = useCallback(() => {\n if (setExpand) {\n setExpand(!expand);\n }\n\n if (additionalEvent) {\n additionalEvent();\n }\n }, [additionalEvent, expand, setExpand]);\n\n return (\n <div\n className={clsx(classes.root, {\n [classes.rootBorder]: !simpleAccordion & !removeBorder\n })}\n >\n <div\n className={clsx(classes.headerWrapper, {\n [classes.headerColor]: simpleAccordion ? false : expand\n })}\n onClick={handleOnClickAccordion}\n >\n <div className={classes.titleWrapper}>\n <div>\n <div className={classes.titleStatusWrapper}>\n <Typography variant={titleVariant} noWrap={noWrapTitle}>\n {title}\n </Typography>\n {statusLabel && <StatusChip\n status={status ?? color}\n label={statusLabel}\n icon={statusIcon}\n />}\n </div>\n\n {subtitle && (\n <Typography variant={subtitleVariant} noWrap={noWrapTitle}>\n {subtitle}\n </Typography>\n )}\n\n {overriddenSecondaryContainer ? (\n { overriddenSecondaryContainer }\n ) : (\n <div>\n {secondaryIconButtons?.length > 0 && (\n <div className={classes.secondaryButtonsWrapper}>\n {secondaryIconButtons?.map((item) => (\n <div className={classes.buttonWrapper}>\n <IconButtonWithTooltip\n {...item}\n title={item?.title}\n icon={item.icon}\n onClick={(event) => {\n event.stopPropagation();\n item.onClick();\n }}\n size='small'\n id={`udpRecord-Accordion-${item?.title}-${recordId}`}\n udprecordid={`udpRecord-Accordion-${item?.title}-${recordId}`}\n />\n {item?.value && <Typography>{item?.value}</Typography>}\n </div>\n ))}\n </div>\n )}\n </div>\n )}\n </div>\n {!hideRightIconButton && !simpleAccordion && (\n <div>\n <IconButtonWithTooltip\n title={rightIconTooltip}\n icon={rightIcon}\n onClick={(event) => {\n event.stopPropagation();\n rightIconAction();\n }}\n className={classes.rightIconButton}\n size='small'\n disabled={disableRightIconButton}\n id={`udpRecord-Accordion-RightButton-${recordId}`}\n udprecordid={`udpRecord-Accordion-RightButton-${recordId}`}\n />\n </div>\n )}\n </div>\n {!hidePrimaryAction && !simpleAccordion && (\n <div className={classes.primaryButtonWrapper}>\n {primaryActionIcon ? (\n <Tooltip title={primaryActionLabel}>\n <ButtonBase\n onClick={(event) => {\n event.stopPropagation();\n primaryAction();\n }}\n className={classes.primaryButtonWrapper}\n disabled={disablePrimaryActionButton}\n id={`udpRecord-Accordion-ButtonBase-${recordId}`}\n udprecordid={`udpRecord-Accordion-ButtonBase-${recordId}`}\n >\n <FluentIcon component={primaryActionIcon} />\n </ButtonBase>\n </Tooltip>\n ) : (\n <ButtonBase\n onClick={primaryAction}\n className={classes.primaryButtonWrapper}\n disabled={disablePrimaryActionButton}\n >\n <Typography className={classes.primaryActionLabel}>\n {primaryActionLabel}\n </Typography>\n </ButtonBase>\n )}\n </div>\n )}\n {simpleAccordion && (\n <FluentIconButton\n icon={getIconFromName('ChevronDownIcon')}\n onClick={handleOnClickAccordion}\n className={clsx(classes.expand, {\n [classes.expandOpen]: expand\n })}\n size={chevronIconSize}\n disabled={disableRightIconButton}\n id={`udpRecord-Accordion-ExpandButton-${recordId}`}\n udprecordid={`udpRecord-Accordion-ExpandButton-${recordId}`}\n />\n )}\n </div>\n <Collapse in={expand} timeout='auto' unmountOnExit>\n <div>\n <div>{children}</div>\n {!hideCloseButton && !simpleAccordion && (\n <div className={classes.closeButtonWrapper}>\n <ButtonBase\n onClick={() => {\n if (setExpand) {\n setExpand(false);\n }\n }}\n className={classes.unexpandedIconButton}\n id={`udpRecord-Accordion-CloseButton-${recordId}`}\n udprecordid={`udpRecord-Accordion-CloseButton-${recordId}`}\n >\n <FluentIcon component={ChevronUpIcon} />\n </ButtonBase>\n </div>\n )}\n </div>\n </Collapse>\n </div>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getEntityAttributes } from "./CrudBrowserUtilities-Cm_FNdfE.js";
|
|
2
2
|
import { apiMutate as apiMutate$1 } from "./useAxiosMutate-BNEb4J04.js";
|
|
3
3
|
import { NodeActionEnums } from "./unitySystemEnums-BIMR5AWe.js";
|
|
4
|
-
import { ActionWrapper } from "./ActionWrapper-
|
|
4
|
+
import { ActionWrapper } from "./ActionWrapper-BRzh3vn0.js";
|
|
5
5
|
import { ActionContext, ActionDispatchContext, ActionLoadingDispatchContext } from "./ActionLoadingDispatchContext-BnmdA_n3.js";
|
|
6
6
|
import { useActionStore } from "./inquiryStore-COAx0QBg.js";
|
|
7
7
|
import { useCatalogStore } from "./catalogStore-DDyUXvDn.js";
|
|
@@ -366,4 +366,4 @@ const ActionProvider = (props) => {
|
|
|
366
366
|
|
|
367
367
|
//#endregion
|
|
368
368
|
export { ActionProvider };
|
|
369
|
-
//# sourceMappingURL=ActionProvider-
|
|
369
|
+
//# sourceMappingURL=ActionProvider-DL5qMp-u.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionProvider-BPuiwxd4.js","names":["useDefaultFormValues","apiMutate","LoadingOverlay"],"sources":["../src/utilities/provider/ActionProvider.jsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useMemo,\n useReducer,\n useState\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { ActionContext } from '../../contexts/ActionContext';\nimport { ActionDispatchContext } from '../../contexts/ActionDispatchContext';\nimport { ActionWrapper } from '../../actions/ActionWrapper';\nimport { apiMutate } from '../useAxiosMutate';\nimport { NodeActionEnums } from '../../enums/unitySystemEnums';\nimport { useAuthedUser } from '../auth/useAuthedUser';\nimport { useAxiosGet } from '../useAxiosGet';\nimport useDefaultFormValues from '../crud/useDefaultFormValues';\nimport { getEntityAttributes } from '../maintenanceEngine/CrudBrowserUtilities';\nimport { ActionLoadingContext } from '../../contexts/ActionLoadingContext';\nimport { ActionLoadingDispatchContext } from '../../contexts/ActionLoadingDispatchContext';\nimport { useApiCatalog } from '../../hooks/useApiCatalog';\nimport LoadingOverlay from '../../UI/loading/LoadingOverlay';\nimport { useHistory } from 'react-router-dom';\nimport { usePromotedLookupMethods } from '../../hooks/usePromotedLookupMethods';\nimport { useCatalogStore } from '../../stores/catalogStore';\nimport { useActionStore } from '../../stores/actionStore';\nimport { useShellStore } from '../../stores/shellStore';\nimport { ConfigService } from 'udp-react-stencil-component-library';\nimport { usePromotedMethodEntities } from '../../hooks/usePromotedMethodEntities';\n\nconst emptyAction = {\n action: {\n actionId: '',\n payload: null\n },\n actionPanels: {},\n catalog: null,\n catalogPromise: null,\n catalogEntities: [],\n catalogPromotedEntities: [],\n menuListState: {\n menuList: [],\n handleRemoveMenuItem: () => {},\n selectedMenuIndex: null\n },\n modal: {\n open: false,\n action: null,\n title: ''\n },\n inquiryParams: {\n 0: {\n selectedNode: null,\n selectedNodeParent: null,\n refreshTree: null\n }\n },\n showInquiryHeaderActions: true,\n sideSheet: {\n open: false,\n action: null\n },\n splitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageContainerSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n setCurrentEntityName: null\n};\n\nconst newRouteEmptyAction = {\n action: {\n actionId: '',\n payload: null\n },\n actionPanels: {},\n menuListState: {\n menuList: [],\n handleRemoveMenuItem: () => {},\n selectedMenuIndex: null\n },\n modal: {\n open: false,\n action: null,\n title: ''\n },\n selectedNodeObj: null,\n inquiryParams: {\n 0: {\n selectedNode: null,\n selectedNodeParent: null,\n refreshTree: null\n }\n },\n showInquiryHeaderActions: true,\n sideSheet: {\n open: false,\n action: null\n },\n splitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageContainerSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n }\n};\n\nconst emptyActionLoading = {\n loading: false,\n waitingToExecute: ''\n};\n\nexport const ActionProvider = (props) => {\n const { domRoot, children } = props;\n const user = useAuthedUser();\n const history = useHistory();\n\n const [apiCatalogId, setApiCatalogId] = useState(null);\n const [foreignKeyData, setForeignKeyData] = useState([]);\n const [actionPanel, setActionPanel] = useState(null);\n const [currentEntityName, setCurrentEntityName] = useState(null);\n const [currentLocationPathname, setCurrentLocationPathname] = useState(\n history?.location?.pathname\n );\n const {\n data: catalog,\n promise: catalogPromise,\n loading: catalogLoading\n } = useApiCatalog(apiCatalogId);\n usePromotedMethodEntities(apiCatalogId);\n\n const selectedNode = useActionStore((state) => state.selectedNode);\n const currentContainerId = useShellStore((state) => state.currentContainerId);\n\n // Set the lookup api method Id for the application\n usePromotedLookupMethods(apiCatalogId);\n\n const setCurrentApiCatalogId = useCatalogStore(\n (state) => state.setCurrentApiCatalogId\n );\n\n const [{ data: tpacb, loading: tpacbLoading }] = useAxiosGet(\n ConfigService.integrationV1ApiUrl,\n `tenantProductApiCatalogBase/tenant/${user?.currentTenantId}/product/${ConfigService.config.UNITY_PRODUCT_ID}`,\n {},\n !!!user,\n false\n );\n\n\n\n const [actionState, dispatch] = useReducer((state, reducerAction) => {\n switch (reducerAction.type) {\n case 'SET_ACTION_PANELS':\n let containerIdToUse = 0;\n if (reducerAction.containerId) {\n containerIdToUse = reducerAction.containerId;\n }\n\n const updatedActionPanels = { ...state.actionPanels };\n updatedActionPanels[containerIdToUse] = reducerAction.actionPanels;\n state = {\n ...state,\n actionPanels: updatedActionPanels\n };\n break;\n case 'OPEN_SIDESHEET':\n state = {\n ...state,\n sideSheet: reducerAction.sideSheet\n };\n break;\n case 'OPEN_MODAL':\n state = {\n ...state,\n modal: reducerAction.modal\n };\n break;\n case 'CLOSE_ALL_SPLIT_SCREENS':\n state = {\n ...state,\n splitScreen: { open: false, action: null, type: null, params: null },\n pageSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageContainerSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n }\n };\n break;\n case 'OPEN_SPLIT_SCREEN':\n state = {\n ...state,\n splitScreen: reducerAction.splitScreen\n };\n break;\n case 'OPEN_PAGE_SPLIT_SCREEN':\n state = {\n ...state,\n pageSplitScreen: reducerAction.pageSplitScreen\n };\n break;\n case 'OPEN_PAGE_CONTAINER_SPLIT_SCREEN':\n state = {\n ...state,\n pageContainerSplitScreen: reducerAction.pageContainerSplitScreen\n };\n break;\n case 'SET_API_CATALOG':\n state = {\n ...state,\n catalog: reducerAction.catalog\n };\n break;\n case 'SET_API_CATALOG_PROMISE':\n state = {\n ...state,\n catalogPromise: reducerAction.catalogPromise\n };\n break;\n case 'SET_CATALOG_ENTITIES':\n state = {\n ...state,\n catalogEntities: reducerAction.catalogEntities\n };\n break;\n case 'SET_CATALOG_PROMOTED_ENTITIES':\n state = {\n ...state,\n catalogPromotedEntities: reducerAction.catalogPromotedEntities\n };\n break;\n case 'SET_INQUIRY_PARAMS':\n let initialContainerId = 0;\n if (reducerAction.containerId) {\n initialContainerId = reducerAction.containerId;\n }\n\n const updatedInquiryParams = { ...state.inquiryParams };\n updatedInquiryParams[initialContainerId] = reducerAction.inquiryParams;\n state = {\n ...state,\n inquiryParams: updatedInquiryParams\n };\n break;\n case 'SET_SHOW_INQUIRY_HEADER_ACTIONS':\n state = {\n ...state,\n showInquiryHeaderActions: reducerAction.showInquiryHeaderActions\n };\n break;\n case 'SET_MENU_LIST_STATE':\n state = {\n ...state,\n menuListState: reducerAction.menuListState\n };\n break;\n case 'SET_ACTION_STATE_FOR_NEW_ROUTE':\n state = {\n ...state,\n ...newRouteEmptyAction\n };\n break;\n default:\n throw new Error(`Unknown action type ${reducerAction.type}`);\n }\n state = {\n ...state,\n setCurrentEntityName: setCurrentEntityName\n };\n return state;\n }, emptyAction);\n\n const [actionLoadingState, dispatchActionLoading] = useReducer(\n (state, reducerAction) => {\n switch (reducerAction.type) {\n case 'SET_ACTION_LOADING':\n state = {\n ...state,\n loading: reducerAction.loading\n };\n break;\n case 'SET_ACTION_WAITING_TO_EXECUTE':\n state = {\n ...state,\n waitingToExecute: reducerAction.actionId\n };\n break;\n default:\n throw new Error(`Unknown action loading type ${reducerAction.type}`);\n }\n return state;\n },\n emptyActionLoading\n );\n const action = useMemo(() => {\n let selectedAction = null;\n if (actionState) {\n if (actionState.modal?.action) {\n selectedAction = actionState.modal.action;\n }\n if (actionState.sideSheet?.action) {\n selectedAction = actionState.sideSheet.action;\n }\n if (actionState.splitScreen?.action) {\n selectedAction = actionState.splitScreen.action;\n }\n if (actionState.pageSplitScreen?.action) {\n selectedAction = actionState.pageSplitScreen.action;\n }\n if (actionState.pageContainerSplitScreen?.action) {\n selectedAction = actionState.pageContainerSplitScreen.action;\n }\n }\n\n return selectedAction;\n }, [actionState]);\n\n const entityAttributes = useMemo(() => {\n if (!catalog) {\n return [];\n }\n const entityName = actionPanel ? actionPanel.entityName : currentEntityName;\n\n return getEntityAttributes(catalog, entityName);\n }, [actionPanel, catalog, currentEntityName]);\n\n const { defaultFormValues } = useDefaultFormValues(entityAttributes);\n const [crudTableFormData, setCrudTableFormData] = useState(defaultFormValues);\n\n const crudTableEditionData = useMemo(() => {\n let crudData = null;\n if (\n selectedNode?.nodeObj &&\n action &&\n action.actionTypeId === NodeActionEnums.Update\n ) {\n crudData = selectedNode.nodeObj;\n setCrudTableFormData(selectedNode.nodeObj);\n } else {\n setCrudTableFormData(defaultFormValues);\n }\n\n return crudData;\n }, [action, selectedNode]);\n\n const executeAction = useCallback(\n async (data, id) =>\n apiMutate(\n ConfigService.integrationV1ApiUrl,\n `apimethod/executeQueryWithParameters/${id}`,\n {\n method: 'post'\n },\n data\n ),\n []\n );\n\n const inquiryActions = (\n <ActionWrapper\n action={action}\n actionState={actionState}\n actionPanel={actionPanel}\n dispatch={dispatch}\n catalog={catalog}\n executeAction={executeAction}\n splitScreenBody={children}\n entityAttributes={entityAttributes}\n foreignKeyData={foreignKeyData}\n setForeignKeyData={setForeignKeyData}\n crudTableEditionData={crudTableEditionData}\n crudTableFormData={crudTableFormData}\n />\n );\n\n useEffect(() => {\n if (tpacb) {\n setApiCatalogId(tpacb.apiCatalogId);\n setCurrentApiCatalogId(tpacb.apiCatalogId);\n }\n }, [tpacb, setCurrentApiCatalogId]);\n\n useEffect(() => {\n if (action && actionState) {\n setActionPanel(\n actionState?.actionPanels[currentContainerId || 0]?.find((ap) =>\n ap.panelActions.find((pa) => pa.actionId === action.actionId)\n )\n );\n }\n }, [action, actionState, currentContainerId]);\n\n useEffect(\n () =>\n dispatchActionLoading({\n type: 'SET_ACTION_LOADING',\n loading: catalogLoading || tpacbLoading\n }),\n [catalogLoading, tpacbLoading]\n );\n\n useEffect(() => {\n if (catalog) {\n dispatch({\n type: 'SET_API_CATALOG',\n catalog: catalog\n });\n }\n }, [catalog]);\n\n // TODO: Find a better way to trigger actions even though it's waiting for\n // catalog to finish loading. One way is to wait for catalog to finish loading before\n // rendering children\n useEffect(() => {\n if (catalogPromise) {\n dispatch({\n type: 'SET_API_CATALOG_PROMISE',\n catalogPromise: catalogPromise\n });\n }\n }, [catalogPromise]);\n\n // listening to route changes to reset specific properties in the action state\n useEffect(() => {\n if (history) {\n return history.listen((location) => {\n if (currentLocationPathname !== location.pathname) {\n setCurrentLocationPathname(location.pathname);\n dispatch({\n type: 'SET_ACTION_STATE_FOR_NEW_ROUTE'\n });\n }\n });\n }\n }, [history, currentLocationPathname]);\n\n const actionLoading = useMemo(\n () => <LoadingOverlay open={actionLoadingState.waitingToExecute} />,\n [actionLoadingState]\n );\n\n return (\n <>\n {actionLoading}\n <ActionContext.Provider value={actionState}>\n <ActionDispatchContext.Provider value={dispatch}>\n <ActionLoadingContext.Provider value={actionLoadingState}>\n <ActionLoadingDispatchContext.Provider\n value={dispatchActionLoading}\n >\n {domRoot ? createPortal(inquiryActions, domRoot) : inquiryActions}\n </ActionLoadingDispatchContext.Provider>\n </ActionLoadingContext.Provider>\n </ActionDispatchContext.Provider>\n </ActionContext.Provider>\n </>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA6BA,MAAM,cAAc;CAClB,QAAQ;EACN,UAAU;EACV,SAAS;EACV;CACD,cAAc,EAAE;CAChB,SAAS;CACT,gBAAgB;CAChB,iBAAiB,EAAE;CACnB,yBAAyB,EAAE;CAC3B,eAAe;EACb,UAAU,EAAE;EACZ,4BAA4B;EAC5B,mBAAmB;EACpB;CACD,OAAO;EACL,MAAM;EACN,QAAQ;EACR,OAAO;EACR;CACD,eAAe,EACb,GAAG;EACD,cAAc;EACd,oBAAoB;EACpB,aAAa;EACd,EACF;CACD,0BAA0B;CAC1B,WAAW;EACT,MAAM;EACN,QAAQ;EACT;CACD,aAAa;EACX,MAAM;EACN,QAAQ;EACR,MAAM;EACN,QAAQ;EACT;CACD,iBAAiB;EACf,MAAM;EACN,QAAQ;EACR,MAAM;EACN,QAAQ;EACT;CACD,0BAA0B;EACxB,MAAM;EACN,QAAQ;EACR,MAAM;EACN,QAAQ;EACT;CACD,sBAAsB;CACvB;AAED,MAAM,sBAAsB;CAC1B,QAAQ;EACN,UAAU;EACV,SAAS;EACV;CACD,cAAc,EAAE;CAChB,eAAe;EACb,UAAU,EAAE;EACZ,4BAA4B;EAC5B,mBAAmB;EACpB;CACD,OAAO;EACL,MAAM;EACN,QAAQ;EACR,OAAO;EACR;CACD,iBAAiB;CACjB,eAAe,EACb,GAAG;EACD,cAAc;EACd,oBAAoB;EACpB,aAAa;EACd,EACF;CACD,0BAA0B;CAC1B,WAAW;EACT,MAAM;EACN,QAAQ;EACT;CACD,aAAa;EACX,MAAM;EACN,QAAQ;EACR,MAAM;EACN,QAAQ;EACT;CACD,iBAAiB;EACf,MAAM;EACN,QAAQ;EACR,MAAM;EACN,QAAQ;EACT;CACD,0BAA0B;EACxB,MAAM;EACN,QAAQ;EACR,MAAM;EACN,QAAQ;EACT;CACF;AAED,MAAM,qBAAqB;CACzB,SAAS;CACT,kBAAkB;CACnB;AAED,MAAa,kBAAkB,UAAU;CACvC,MAAM,EAAE,SAAS,aAAa;CAC9B,MAAM,OAAO,eAAe;CAC5B,MAAM,UAAU,YAAY;CAE5B,MAAM,CAAC,cAAc,mBAAmB,SAAS,KAAK;CACtD,MAAM,CAAC,gBAAgB,qBAAqB,SAAS,EAAE,CAAC;CACxD,MAAM,CAAC,aAAa,kBAAkB,SAAS,KAAK;CACpD,MAAM,CAAC,mBAAmB,wBAAwB,SAAS,KAAK;CAChE,MAAM,CAAC,yBAAyB,8BAA8B,SAC5D,SAAS,UAAU,SACpB;CACD,MAAM,EACJ,MAAM,SACN,SAAS,gBACT,SAAS,mBACP,cAAc,aAAa;AAC/B,2BAA0B,aAAa;CAEvC,MAAM,eAAe,gBAAgB,UAAU,MAAM,aAAa;CAClE,MAAM,qBAAqB,eAAe,UAAU,MAAM,mBAAmB;AAG7E,0BAAyB,aAAa;CAEtC,MAAM,yBAAyB,iBAC5B,UAAU,MAAM,uBAClB;CAED,MAAM,CAAC,EAAE,MAAM,OAAO,SAAS,kBAAkB,YAC/C,cAAc,qBACd,sCAAsC,MAAM,gBAAgB,WAAW,cAAc,OAAO,oBAC5F,EAAE,EACF,CAAC,CAAC,CAAC,MACH,MACD;CAID,MAAM,CAAC,aAAa,YAAY,YAAY,OAAO,kBAAkB;AACnE,UAAQ,cAAc,MAAtB;GACE,KAAK;IACH,IAAI,mBAAmB;AACvB,QAAI,cAAc,YAChB,oBAAmB,cAAc;IAGnC,MAAM,sBAAsB,EAAE,GAAG,MAAM,cAAc;AACrD,wBAAoB,oBAAoB,cAAc;AACtD,YAAQ;KACN,GAAG;KACH,cAAc;KACf;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,WAAW,cAAc;KAC1B;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,OAAO,cAAc;KACtB;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,aAAa;MAAE,MAAM;MAAO,QAAQ;MAAM,MAAM;MAAM,QAAQ;MAAM;KACpE,iBAAiB;MACf,MAAM;MACN,QAAQ;MACR,MAAM;MACN,QAAQ;MACT;KACD,0BAA0B;MACxB,MAAM;MACN,QAAQ;MACR,MAAM;MACN,QAAQ;MACT;KACF;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,aAAa,cAAc;KAC5B;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,iBAAiB,cAAc;KAChC;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,0BAA0B,cAAc;KACzC;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,SAAS,cAAc;KACxB;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,gBAAgB,cAAc;KAC/B;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,iBAAiB,cAAc;KAChC;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,yBAAyB,cAAc;KACxC;AACD;GACF,KAAK;IACH,IAAI,qBAAqB;AACzB,QAAI,cAAc,YAChB,sBAAqB,cAAc;IAGrC,MAAM,uBAAuB,EAAE,GAAG,MAAM,eAAe;AACvD,yBAAqB,sBAAsB,cAAc;AACzD,YAAQ;KACN,GAAG;KACH,eAAe;KAChB;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,0BAA0B,cAAc;KACzC;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,eAAe,cAAc;KAC9B;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,GAAG;KACJ;AACD;GACF,QACE,OAAM,IAAI,MAAM,uBAAuB,cAAc,OAAO;;AAEhE,UAAQ;GACN,GAAG;GACmB;GACvB;AACD,SAAO;IACN,YAAY;CAEf,MAAM,CAAC,oBAAoB,yBAAyB,YACjD,OAAO,kBAAkB;AACxB,UAAQ,cAAc,MAAtB;GACE,KAAK;AACH,YAAQ;KACN,GAAG;KACH,SAAS,cAAc;KACxB;AACD;GACF,KAAK;AACH,YAAQ;KACN,GAAG;KACH,kBAAkB,cAAc;KACjC;AACD;GACF,QACE,OAAM,IAAI,MAAM,+BAA+B,cAAc,OAAO;;AAExE,SAAO;IAET,mBACD;CACD,MAAM,SAAS,cAAc;EAC3B,IAAI,iBAAiB;AACrB,MAAI,aAAa;AACf,OAAI,YAAY,OAAO,OACrB,kBAAiB,YAAY,MAAM;AAErC,OAAI,YAAY,WAAW,OACzB,kBAAiB,YAAY,UAAU;AAEzC,OAAI,YAAY,aAAa,OAC3B,kBAAiB,YAAY,YAAY;AAE3C,OAAI,YAAY,iBAAiB,OAC/B,kBAAiB,YAAY,gBAAgB;AAE/C,OAAI,YAAY,0BAA0B,OACxC,kBAAiB,YAAY,yBAAyB;;AAI1D,SAAO;IACN,CAAC,YAAY,CAAC;CAEjB,MAAM,mBAAmB,cAAc;AACrC,MAAI,CAAC,QACH,QAAO,EAAE;EAEX,MAAM,aAAa,cAAc,YAAY,aAAa;AAE1D,SAAO,oBAAoB,SAAS,WAAW;IAC9C;EAAC;EAAa;EAAS;EAAkB,CAAC;CAE7C,MAAM,EAAE,sBAAsBA,6BAAqB,iBAAiB;CACpE,MAAM,CAAC,mBAAmB,wBAAwB,SAAS,kBAAkB;CAE7E,MAAM,uBAAuB,cAAc;EACzC,IAAI,WAAW;AACf,MACE,cAAc,WACd,UACA,OAAO,iBAAiB,gBAAgB,QACxC;AACA,cAAW,aAAa;AACxB,wBAAqB,aAAa,QAAQ;QAE1C,sBAAqB,kBAAkB;AAGzC,SAAO;IACN,CAAC,QAAQ,aAAa,CAAC;CAE1B,MAAM,gBAAgB,YACpB,OAAO,MAAM,OACXC,YACE,cAAc,qBACd,wCAAwC,MACxC,EACE,QAAQ,QACT,EACD,KACD,EACH,EAAE,CACH;CAED,MAAM,iBACJ,oCAAC;EACS;EACK;EACA;EACH;EACD;EACM;EACf,iBAAiB;EACC;EACF;EACG;EACG;EACH;GACnB;AAGJ,iBAAgB;AACd,MAAI,OAAO;AACT,mBAAgB,MAAM,aAAa;AACnC,0BAAuB,MAAM,aAAa;;IAE3C,CAAC,OAAO,uBAAuB,CAAC;AAEnC,iBAAgB;AACd,MAAI,UAAU,YACZ,gBACE,aAAa,aAAa,sBAAsB,IAAI,MAAM,OACxD,GAAG,aAAa,MAAM,OAAO,GAAG,aAAa,OAAO,SAAS,CAC9D,CACF;IAEF;EAAC;EAAQ;EAAa;EAAmB,CAAC;AAE7C,iBAEI,sBAAsB;EACpB,MAAM;EACN,SAAS,kBAAkB;EAC5B,CAAC,EACJ,CAAC,gBAAgB,aAAa,CAC/B;AAED,iBAAgB;AACd,MAAI,QACF,UAAS;GACP,MAAM;GACG;GACV,CAAC;IAEH,CAAC,QAAQ,CAAC;AAKb,iBAAgB;AACd,MAAI,eACF,UAAS;GACP,MAAM;GACU;GACjB,CAAC;IAEH,CAAC,eAAe,CAAC;AAGpB,iBAAgB;AACd,MAAI,QACF,QAAO,QAAQ,QAAQ,aAAa;AAClC,OAAI,4BAA4B,SAAS,UAAU;AACjD,+BAA2B,SAAS,SAAS;AAC7C,aAAS,EACP,MAAM,kCACP,CAAC;;IAEJ;IAEH,CAAC,SAAS,wBAAwB,CAAC;CAEtC,MAAM,gBAAgB,cACd,oCAACC,0BAAe,MAAM,mBAAmB,mBAAoB,EACnE,CAAC,mBAAmB,CACrB;AAED,QACE,0DACG,eACD,oCAAC,cAAc,YAAS,OAAO,eAC7B,oCAAC,sBAAsB,YAAS,OAAO,YACrC,oCAAC,qBAAqB,YAAS,OAAO,sBACpC,oCAAC,6BAA6B,YAC5B,OAAO,yBAEN,UAAU,aAAa,gBAAgB,QAAQ,GAAG,eACb,CACV,CACD,CACV,CACxB"}
|
|
1
|
+
{"version":3,"file":"ActionProvider-DL5qMp-u.js","names":["useDefaultFormValues","apiMutate","LoadingOverlay"],"sources":["../src/utilities/provider/ActionProvider.jsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useMemo,\n useReducer,\n useState\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { ActionContext } from '../../contexts/ActionContext';\nimport { ActionDispatchContext } from '../../contexts/ActionDispatchContext';\nimport { ActionWrapper } from '../../actions/ActionWrapper';\nimport { apiMutate } from '../useAxiosMutate';\nimport { NodeActionEnums } from '../../enums/unitySystemEnums';\nimport { useAuthedUser } from '../auth/useAuthedUser';\nimport { useAxiosGet } from '../useAxiosGet';\nimport useDefaultFormValues from '../crud/useDefaultFormValues';\nimport { getEntityAttributes } from '../maintenanceEngine/CrudBrowserUtilities';\nimport { ActionLoadingContext } from '../../contexts/ActionLoadingContext';\nimport { ActionLoadingDispatchContext } from '../../contexts/ActionLoadingDispatchContext';\nimport { useApiCatalog } from '../../hooks/useApiCatalog';\nimport LoadingOverlay from '../../UI/loading/LoadingOverlay';\nimport { useHistory } from 'react-router-dom';\nimport { usePromotedLookupMethods } from '../../hooks/usePromotedLookupMethods';\nimport { useCatalogStore } from '../../stores/catalogStore';\nimport { useActionStore } from '../../stores/actionStore';\nimport { useShellStore } from '../../stores/shellStore';\nimport { ConfigService } from 'udp-react-stencil-component-library';\nimport { usePromotedMethodEntities } from '../../hooks/usePromotedMethodEntities';\n\nconst emptyAction = {\n action: {\n actionId: '',\n payload: null\n },\n actionPanels: {},\n catalog: null,\n catalogPromise: null,\n catalogEntities: [],\n catalogPromotedEntities: [],\n menuListState: {\n menuList: [],\n handleRemoveMenuItem: () => {},\n selectedMenuIndex: null\n },\n modal: {\n open: false,\n action: null,\n title: ''\n },\n inquiryParams: {\n 0: {\n selectedNode: null,\n selectedNodeParent: null,\n refreshTree: null\n }\n },\n showInquiryHeaderActions: true,\n sideSheet: {\n open: false,\n action: null\n },\n splitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageContainerSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n setCurrentEntityName: null\n};\n\nconst newRouteEmptyAction = {\n action: {\n actionId: '',\n payload: null\n },\n actionPanels: {},\n menuListState: {\n menuList: [],\n handleRemoveMenuItem: () => {},\n selectedMenuIndex: null\n },\n modal: {\n open: false,\n action: null,\n title: ''\n },\n selectedNodeObj: null,\n inquiryParams: {\n 0: {\n selectedNode: null,\n selectedNodeParent: null,\n refreshTree: null\n }\n },\n showInquiryHeaderActions: true,\n sideSheet: {\n open: false,\n action: null\n },\n splitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageContainerSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n }\n};\n\nconst emptyActionLoading = {\n loading: false,\n waitingToExecute: ''\n};\n\nexport const ActionProvider = (props) => {\n const { domRoot, children } = props;\n const user = useAuthedUser();\n const history = useHistory();\n\n const [apiCatalogId, setApiCatalogId] = useState(null);\n const [foreignKeyData, setForeignKeyData] = useState([]);\n const [actionPanel, setActionPanel] = useState(null);\n const [currentEntityName, setCurrentEntityName] = useState(null);\n const [currentLocationPathname, setCurrentLocationPathname] = useState(\n history?.location?.pathname\n );\n const {\n data: catalog,\n promise: catalogPromise,\n loading: catalogLoading\n } = useApiCatalog(apiCatalogId);\n usePromotedMethodEntities(apiCatalogId);\n\n const selectedNode = useActionStore((state) => state.selectedNode);\n const currentContainerId = useShellStore((state) => state.currentContainerId);\n\n // Set the lookup api method Id for the application\n usePromotedLookupMethods(apiCatalogId);\n\n const setCurrentApiCatalogId = useCatalogStore(\n (state) => state.setCurrentApiCatalogId\n );\n\n const [{ data: tpacb, loading: tpacbLoading }] = useAxiosGet(\n ConfigService.integrationV1ApiUrl,\n `tenantProductApiCatalogBase/tenant/${user?.currentTenantId}/product/${ConfigService.config.UNITY_PRODUCT_ID}`,\n {},\n !!!user,\n false\n );\n\n\n\n const [actionState, dispatch] = useReducer((state, reducerAction) => {\n switch (reducerAction.type) {\n case 'SET_ACTION_PANELS':\n let containerIdToUse = 0;\n if (reducerAction.containerId) {\n containerIdToUse = reducerAction.containerId;\n }\n\n const updatedActionPanels = { ...state.actionPanels };\n updatedActionPanels[containerIdToUse] = reducerAction.actionPanels;\n state = {\n ...state,\n actionPanels: updatedActionPanels\n };\n break;\n case 'OPEN_SIDESHEET':\n state = {\n ...state,\n sideSheet: reducerAction.sideSheet\n };\n break;\n case 'OPEN_MODAL':\n state = {\n ...state,\n modal: reducerAction.modal\n };\n break;\n case 'CLOSE_ALL_SPLIT_SCREENS':\n state = {\n ...state,\n splitScreen: { open: false, action: null, type: null, params: null },\n pageSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n },\n pageContainerSplitScreen: {\n open: false,\n action: null,\n type: null,\n params: null\n }\n };\n break;\n case 'OPEN_SPLIT_SCREEN':\n state = {\n ...state,\n splitScreen: reducerAction.splitScreen\n };\n break;\n case 'OPEN_PAGE_SPLIT_SCREEN':\n state = {\n ...state,\n pageSplitScreen: reducerAction.pageSplitScreen\n };\n break;\n case 'OPEN_PAGE_CONTAINER_SPLIT_SCREEN':\n state = {\n ...state,\n pageContainerSplitScreen: reducerAction.pageContainerSplitScreen\n };\n break;\n case 'SET_API_CATALOG':\n state = {\n ...state,\n catalog: reducerAction.catalog\n };\n break;\n case 'SET_API_CATALOG_PROMISE':\n state = {\n ...state,\n catalogPromise: reducerAction.catalogPromise\n };\n break;\n case 'SET_CATALOG_ENTITIES':\n state = {\n ...state,\n catalogEntities: reducerAction.catalogEntities\n };\n break;\n case 'SET_CATALOG_PROMOTED_ENTITIES':\n state = {\n ...state,\n catalogPromotedEntities: reducerAction.catalogPromotedEntities\n };\n break;\n case 'SET_INQUIRY_PARAMS':\n let initialContainerId = 0;\n if (reducerAction.containerId) {\n initialContainerId = reducerAction.containerId;\n }\n\n const updatedInquiryParams = { ...state.inquiryParams };\n updatedInquiryParams[initialContainerId] = reducerAction.inquiryParams;\n state = {\n ...state,\n inquiryParams: updatedInquiryParams\n };\n break;\n case 'SET_SHOW_INQUIRY_HEADER_ACTIONS':\n state = {\n ...state,\n showInquiryHeaderActions: reducerAction.showInquiryHeaderActions\n };\n break;\n case 'SET_MENU_LIST_STATE':\n state = {\n ...state,\n menuListState: reducerAction.menuListState\n };\n break;\n case 'SET_ACTION_STATE_FOR_NEW_ROUTE':\n state = {\n ...state,\n ...newRouteEmptyAction\n };\n break;\n default:\n throw new Error(`Unknown action type ${reducerAction.type}`);\n }\n state = {\n ...state,\n setCurrentEntityName: setCurrentEntityName\n };\n return state;\n }, emptyAction);\n\n const [actionLoadingState, dispatchActionLoading] = useReducer(\n (state, reducerAction) => {\n switch (reducerAction.type) {\n case 'SET_ACTION_LOADING':\n state = {\n ...state,\n loading: reducerAction.loading\n };\n break;\n case 'SET_ACTION_WAITING_TO_EXECUTE':\n state = {\n ...state,\n waitingToExecute: reducerAction.actionId\n };\n break;\n default:\n throw new Error(`Unknown action loading type ${reducerAction.type}`);\n }\n return state;\n },\n emptyActionLoading\n );\n const action = useMemo(() => {\n let selectedAction = null;\n if (actionState) {\n if (actionState.modal?.action) {\n selectedAction = actionState.modal.action;\n }\n if (actionState.sideSheet?.action) {\n selectedAction = actionState.sideSheet.action;\n }\n if (actionState.splitScreen?.action) {\n selectedAction = actionState.splitScreen.action;\n }\n if (actionState.pageSplitScreen?.action) {\n selectedAction = actionState.pageSplitScreen.action;\n }\n if (actionState.pageContainerSplitScreen?.action) {\n selectedAction = actionState.pageContainerSplitScreen.action;\n }\n }\n\n return selectedAction;\n }, [actionState]);\n\n const entityAttributes = useMemo(() => {\n if (!catalog) {\n return [];\n }\n const entityName = actionPanel ? actionPanel.entityName : currentEntityName;\n\n return getEntityAttributes(catalog, entityName);\n }, [actionPanel, catalog, currentEntityName]);\n\n const { defaultFormValues } = useDefaultFormValues(entityAttributes);\n const [crudTableFormData, setCrudTableFormData] = useState(defaultFormValues);\n\n const crudTableEditionData = useMemo(() => {\n let crudData = null;\n if (\n selectedNode?.nodeObj &&\n action &&\n action.actionTypeId === NodeActionEnums.Update\n ) {\n crudData = selectedNode.nodeObj;\n setCrudTableFormData(selectedNode.nodeObj);\n } else {\n setCrudTableFormData(defaultFormValues);\n }\n\n return crudData;\n }, [action, selectedNode]);\n\n const executeAction = useCallback(\n async (data, id) =>\n apiMutate(\n ConfigService.integrationV1ApiUrl,\n `apimethod/executeQueryWithParameters/${id}`,\n {\n method: 'post'\n },\n data\n ),\n []\n );\n\n const inquiryActions = (\n <ActionWrapper\n action={action}\n actionState={actionState}\n actionPanel={actionPanel}\n dispatch={dispatch}\n catalog={catalog}\n executeAction={executeAction}\n splitScreenBody={children}\n entityAttributes={entityAttributes}\n foreignKeyData={foreignKeyData}\n setForeignKeyData={setForeignKeyData}\n crudTableEditionData={crudTableEditionData}\n crudTableFormData={crudTableFormData}\n />\n );\n\n useEffect(() => {\n if (tpacb) {\n setApiCatalogId(tpacb.apiCatalogId);\n setCurrentApiCatalogId(tpacb.apiCatalogId);\n }\n }, [tpacb, setCurrentApiCatalogId]);\n\n useEffect(() => {\n if (action && actionState) {\n setActionPanel(\n actionState?.actionPanels[currentContainerId || 0]?.find((ap) =>\n ap.panelActions.find((pa) => pa.actionId === action.actionId)\n )\n );\n }\n }, [action, actionState, currentContainerId]);\n\n useEffect(\n () =>\n dispatchActionLoading({\n type: 'SET_ACTION_LOADING',\n loading: catalogLoading || tpacbLoading\n }),\n [catalogLoading, tpacbLoading]\n );\n\n useEffect(() => {\n if (catalog) {\n dispatch({\n type: 'SET_API_CATALOG',\n catalog: catalog\n });\n }\n }, [catalog]);\n\n // TODO: Find a better way to trigger actions even though it's waiting for\n // catalog to finish loading. One way is to wait for catalog to finish loading before\n // rendering children\n useEffect(() => {\n if (catalogPromise) {\n dispatch({\n type: 'SET_API_CATALOG_PROMISE',\n catalogPromise: catalogPromise\n });\n }\n }, [catalogPromise]);\n\n // listening to route changes to reset specific properties in the action state\n useEffect(() => {\n if (history) {\n return history.listen((location) => {\n if (currentLocationPathname !== location.pathname) {\n setCurrentLocationPathname(location.pathname);\n dispatch({\n type: 'SET_ACTION_STATE_FOR_NEW_ROUTE'\n });\n }\n });\n }\n }, [history, currentLocationPathname]);\n\n const actionLoading = useMemo(\n () => <LoadingOverlay open={actionLoadingState.waitingToExecute} />,\n [actionLoadingState]\n );\n\n return (\n <>\n {actionLoading}\n <ActionContext.Provider value={actionState}>\n <ActionDispatchContext.Provider value={dispatch}>\n <ActionLoadingContext.Provider value={actionLoadingState}>\n <ActionLoadingDispatchContext.Provider\n value={dispatchActionLoading}\n >\n {domRoot ? createPortal(inquiryActions, domRoot) : inquiryActions}\n </ActionLoadingDispatchContext.Provider>\n </ActionLoadingContext.Provider>\n </ActionDispatchContext.Provider>\n </ActionContext.Provider>\n </>\n );\n};\n"],"mappings":"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"}
|
|
@@ -8,8 +8,8 @@ import { PageContainer } from "./PageContainer-Cvw3n3k2.js";
|
|
|
8
8
|
import { DraggableSidebarTemplate } from "./DraggableSidebarTemplate-Dhrbn1H1.js";
|
|
9
9
|
import { SidebarHeader } from "./SidebarHeader-BKV537q9.js";
|
|
10
10
|
import { EntitySideBarContent } from "./EntitySideBarContent-BTVqCtxr.js";
|
|
11
|
-
import { NotesScreen } from "./NotesScreen-
|
|
12
|
-
import { RemindersScreen } from "./RemindersScreen-
|
|
11
|
+
import { NotesScreen } from "./NotesScreen-CmMz3GTR.js";
|
|
12
|
+
import { RemindersScreen } from "./RemindersScreen-CVTHY97W.js";
|
|
13
13
|
import { APP_RIBBON_SPACE, useBuildEnvironment } from "./EnvironmentRibbon-CPm8YnJ4.js";
|
|
14
14
|
import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
15
15
|
import { Card, CardContent, Slide, makeStyles } from "@material-ui/core";
|
|
@@ -293,4 +293,4 @@ ActionSplitScreen.propTypes = {
|
|
|
293
293
|
|
|
294
294
|
//#endregion
|
|
295
295
|
export { ActionSplitScreen };
|
|
296
|
-
//# sourceMappingURL=ActionSplitScreen-
|
|
296
|
+
//# sourceMappingURL=ActionSplitScreen-x0Bh5GEF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionSplitScreen-Cym0gCOb.js","names":[],"sources":["../src/actions/ActionSplitScreen.jsx"],"sourcesContent":["import { Card, CardContent, makeStyles, Slide } from '@material-ui/core';\nimport React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { DraggableSidebarTemplate } from '../UI/templates/DraggableSidebarTemplate';\nimport { useActions, useActionState } from '../hooks/useActions';\nimport PropTypes from 'prop-types';\nimport { SidebarHeader } from '../UI/dataDisplay/typography/SidebarHeader';\nimport { SplitScreenTypeEnums } from '../enums/unitySystemEnums';\nimport { EntitySideBarContent } from './sidebar/EntitySideBarContent';\nimport { useTranslation } from 'react-i18next';\nimport { getEntityAttributes } from '../utilities/maintenanceEngine/CrudBrowserUtilities';\nimport { useUser } from '../utilities/auth/useUser';\nimport { PageContainer } from '../page/PageContainer';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { useAxiosGet } from '../utilities/useAxiosGet';\nimport { Skeleton } from '@material-ui/lab';\nimport { NotesScreen } from '../notes/NotesScreen';\nimport { useShellStore } from '../stores/shellStore';\nimport { RemindersScreen } from '../reminders/RemindersScreen';\nimport {\n APP_RIBBON_SPACE,\n useBuildEnvironment\n} from '../shell/ui/EnvironmentRibbon';\nimport { ConfigService } from 'udp-react-stencil-component-library';\nconst SPEED_DIAL_ACTIONS = [\n SplitScreenTypeEnums.Notes,\n SplitScreenTypeEnums.Reminders\n];\n\nconst useStyles = makeStyles((theme) => ({\n splitScreen: {\n width: '100%',\n height: ({ shellHidden, appRibbonSpace }) =>\n `calc(100vh - ${shellHidden ? 0 : 56}px - ${appRibbonSpace}px)`,\n marginTop: (props) => (props.forPage ? '' : props.shellHidden ? 0 : 56)\n },\n card: {\n height: '100%',\n overflowY: 'auto',\n background: (props) =>\n SPEED_DIAL_ACTIONS.includes(props.type)\n ? theme?.getThemeData()?.mode === 'dark'\n ? theme.palette.grey[700]\n : '#f4f4f4'\n : ''\n },\n cardContent: {\n padding: (props) => (SPEED_DIAL_ACTIONS.includes(props.type) ? 0 : ''),\n '&:last-child': {\n paddingBottom: (props) =>\n SPEED_DIAL_ACTIONS.includes(props.type) ? 0 : ''\n },\n height: `calc(100% - 40px)` // 40px is the height of the sidebar header\n },\n title: {\n display: 'flex',\n flex: 1,\n alignItems: 'center',\n marginLeft: theme.spacing(1.5)\n },\n dataRoot: {\n marginTop: theme.spacing(2)\n },\n skeletonButton: {\n height: (props) => (props.forPage ? 'calc(84vh - 70px)' : '84vh')\n },\n sidebarRoot: {\n padding: (props) => (SPEED_DIAL_ACTIONS.includes(props.type) ? 0 : '')\n },\n actionButton: {\n marginRight: (props) => (SPEED_DIAL_ACTIONS.includes(props.type) ? 0 : '')\n }\n}));\n\nexport const ActionSplitScreen = (props) => {\n const {\n body,\n open,\n action,\n type = SplitScreenTypeEnums.Entity,\n params,\n executeAction,\n actionPanel,\n selectedNodeObj,\n menuNodeList,\n sidebarEntity,\n forPage = false,\n forPageContainer = false,\n selectedNode,\n selectedNodeParent,\n refreshTree,\n ...otherProps\n } = props;\n const shellHidden = useShellStore((state) => state.shellHidden);\n const currentContainerId = useShellStore((state) => state.currentContainerId);\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n shellHidden,\n ...props,\n appRibbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const [width, setWidth] = useState(0);\n const { t } = useTranslation();\n const { openSplitScreen, openPageSplitScreen, openPageContainerSplitScreen } =\n useActions();\n const actionState = useActionState();\n const user = useUser();\n const formRef = useRef(null);\n\n const [{ data: page, loading: loadingPage }] = useAxiosGet(\n ConfigService.tenantV1ApiUrl,\n `page/${action?.parameters?.pageId}`,\n {},\n !!!action?.parameters?.pageId,\n false\n );\n\n const entityName = useMemo(() => {\n return actionPanel\n ? actionPanel.entityName\n : actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n ?.properties?.catalogReturnObject;\n }, [actionPanel, actionState, currentContainerId]);\n\n const entityAttributes = useMemo(() => {\n if (!actionState?.catalog) {\n return [];\n }\n\n return getEntityAttributes(actionState?.catalog, entityName);\n }, [entityName, actionState]);\n\n const openScreen = useMemo(\n () =>\n forPage\n ? forPageContainer\n ? openPageContainerSplitScreen\n : openPageSplitScreen\n : openSplitScreen,\n [\n forPage,\n openPageSplitScreen,\n openSplitScreen,\n forPageContainer,\n openPageContainerSplitScreen\n ]\n );\n\n const closeSplitScreen = useCallback(() => {\n if (params?.closeSplitScreenAction) {\n params.closeSplitScreenAction();\n }\n openScreen({ open: false, action: null, type: null });\n setWidth(0);\n }, [openScreen, params]);\n\n const onSubmitAction = useCallback(() => {\n switch (type) {\n case SplitScreenTypeEnums.Notes:\n formRef?.current.form.submit();\n break;\n case SplitScreenTypeEnums.Page:\n params?.onSubmit();\n break;\n case SplitScreenTypeEnums.Reminders:\n formRef?.current.form.submit();\n break;\n default:\n break;\n }\n }, [type, params]);\n\n const cardContent = useMemo(() => {\n let content = null;\n switch (type) {\n case SplitScreenTypeEnums.Entity:\n content = (\n <EntitySideBarContent\n action={action}\n executeAction={executeAction}\n entityAttributes={entityAttributes}\n selectedNodeObj={selectedNodeObj}\n apiCatalogId={actionState?.catalog?.apiCatalogId}\n entityName={entityName}\n sidebarEntity={sidebarEntity}\n menuNodeList={menuNodeList}\n closeSplitScreen={closeSplitScreen}\n />\n );\n break;\n case SplitScreenTypeEnums.Notes:\n content = (\n <NotesScreen\n formRef={formRef}\n shortcutContentFinderEnabled={true}\n id={params?.id}\n reloadNotes={params?.reloadNotes}\n />\n );\n break;\n case SplitScreenTypeEnums.Page:\n if (page) {\n content = (\n <DndProvider backend={HTML5Backend}>\n <PageContainer\n user={user}\n key={action?.actionId}\n pageData={page}\n widgetParams={{\n pageId: page?.pageId,\n contentId: selectedNode?.properties?.searchValue,\n requiredFieldsMap:\n action?.parameters?.requiredFieldMapping || {},\n nodeObj: selectedNode?.nodeObj,\n parentNodeObj: selectedNodeParent?.nodeObj,\n inquiryParams: selectedNode?.inquiryParams,\n refreshTree: refreshTree\n }}\n disableMargins={true}\n />\n </DndProvider>\n );\n } else if (loadingPage) {\n content = (\n <Skeleton variant='rect' className={classes.skeletonButton} />\n );\n } else {\n content = params?.content || null;\n }\n break;\n case SplitScreenTypeEnums.Reminders:\n content = (\n <RemindersScreen\n formRef={formRef}\n shortcutContentFinderEnabled={true}\n id={params?.id}\n reloadReminders={params?.reloadReminders}\n />\n );\n break;\n default:\n break;\n }\n return content;\n }, [\n type,\n action,\n executeAction,\n entityAttributes,\n selectedNodeObj,\n closeSplitScreen,\n menuNodeList,\n actionState,\n entityName,\n sidebarEntity,\n refreshTree,\n page,\n selectedNode,\n selectedNodeParent,\n user,\n loadingPage,\n classes,\n params\n ]);\n\n const headerTitle = useMemo(() => {\n let title = '';\n switch (type) {\n case SplitScreenTypeEnums.Entity:\n title = t(`${entityName} Details`);\n break;\n case SplitScreenTypeEnums.Notes:\n title = t(`Add Note`);\n break;\n case SplitScreenTypeEnums.Reminders:\n title = t(`Add Reminder`);\n break;\n default:\n title = params?.headerTitle || '';\n break;\n }\n return title;\n }, [entityName, type, t, params]);\n\n const buttonLabelVal = useMemo(() => {\n let label = '';\n switch (type) {\n case SplitScreenTypeEnums.Notes:\n label = t(`Save Note`);\n break;\n case SplitScreenTypeEnums.Page:\n label = t(params?.buttonLabel);\n break;\n case SplitScreenTypeEnums.Reminders:\n label = t(`Save Reminder`);\n break;\n default:\n break;\n }\n return label;\n }, [type, t, params]);\n\n useEffect(() => {\n if (open) {\n setWidth(params?.initialWidth ?? 420);\n }\n }, [open, params]);\n\n return (\n <DraggableSidebarTemplate\n removePadding={false}\n width={width}\n setWidth={setWidth}\n handleToggleClick={() => {}}\n hide={!open}\n expanded={false}\n maxWidth={params?.maxWidth}\n enable={{\n top: false,\n right: false,\n bottom: false,\n left: true,\n topRight: false,\n bottomRight: false,\n bottomLeft: false,\n topLeft: false\n }}\n body={body}\n sidebar={\n <Slide in={open} direction='left'>\n <div className={classes.splitScreen}>\n <Card square elevation={4} className={classes.card}>\n {!params?.hideHeader && (\n <SidebarHeader\n onClose={closeSplitScreen}\n title={headerTitle}\n buttonLabel={buttonLabelVal}\n buttonProgress={params?.buttonProgress}\n buttonVariant={params?.buttonVariant}\n buttonIcon={params?.buttonIcon}\n onSubmit={onSubmitAction}\n secondaryButtonLabel={params?.secondaryButtonLabel}\n secondaryButtonProgress={params?.secondaryButtonProgress}\n secondaryButtonVariant={params?.secondaryButtonVariant}\n secondaryButtonIcon={params?.secondaryButtonIcon}\n secondaryOnSubmit={params?.secondaryOnSubmit}\n additionalInputs={params?.additionalInputs || null}\n classes={{\n root: classes.sidebarRoot,\n actionButton: classes.actionButton\n }}\n {...otherProps}\n />\n )}\n <CardContent className={classes.cardContent}>\n {cardContent}\n </CardContent>\n </Card>\n </div>\n </Slide>\n }\n splitScreenStyle={{\n zIndex: 1000\n }}\n />\n );\n};\n\nActionSplitScreen.propTypes = {\n body: PropTypes.object,\n open: PropTypes.bool,\n action: PropTypes.object,\n executeAction: PropTypes.func,\n entityName: PropTypes.string,\n entityAttributes: PropTypes.array,\n selectedNodeObj: PropTypes.object,\n menuNodeList: PropTypes.array,\n showError: PropTypes.func\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ActionSplitScreen-x0Bh5GEF.js","names":[],"sources":["../src/actions/ActionSplitScreen.jsx"],"sourcesContent":["import { Card, CardContent, makeStyles, Slide } from '@material-ui/core';\nimport React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { DraggableSidebarTemplate } from '../UI/templates/DraggableSidebarTemplate';\nimport { useActions, useActionState } from '../hooks/useActions';\nimport PropTypes from 'prop-types';\nimport { SidebarHeader } from '../UI/dataDisplay/typography/SidebarHeader';\nimport { SplitScreenTypeEnums } from '../enums/unitySystemEnums';\nimport { EntitySideBarContent } from './sidebar/EntitySideBarContent';\nimport { useTranslation } from 'react-i18next';\nimport { getEntityAttributes } from '../utilities/maintenanceEngine/CrudBrowserUtilities';\nimport { useUser } from '../utilities/auth/useUser';\nimport { PageContainer } from '../page/PageContainer';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { useAxiosGet } from '../utilities/useAxiosGet';\nimport { Skeleton } from '@material-ui/lab';\nimport { NotesScreen } from '../notes/NotesScreen';\nimport { useShellStore } from '../stores/shellStore';\nimport { RemindersScreen } from '../reminders/RemindersScreen';\nimport {\n APP_RIBBON_SPACE,\n useBuildEnvironment\n} from '../shell/ui/EnvironmentRibbon';\nimport { ConfigService } from 'udp-react-stencil-component-library';\nconst SPEED_DIAL_ACTIONS = [\n SplitScreenTypeEnums.Notes,\n SplitScreenTypeEnums.Reminders\n];\n\nconst useStyles = makeStyles((theme) => ({\n splitScreen: {\n width: '100%',\n height: ({ shellHidden, appRibbonSpace }) =>\n `calc(100vh - ${shellHidden ? 0 : 56}px - ${appRibbonSpace}px)`,\n marginTop: (props) => (props.forPage ? '' : props.shellHidden ? 0 : 56)\n },\n card: {\n height: '100%',\n overflowY: 'auto',\n background: (props) =>\n SPEED_DIAL_ACTIONS.includes(props.type)\n ? theme?.getThemeData()?.mode === 'dark'\n ? theme.palette.grey[700]\n : '#f4f4f4'\n : ''\n },\n cardContent: {\n padding: (props) => (SPEED_DIAL_ACTIONS.includes(props.type) ? 0 : ''),\n '&:last-child': {\n paddingBottom: (props) =>\n SPEED_DIAL_ACTIONS.includes(props.type) ? 0 : ''\n },\n height: `calc(100% - 40px)` // 40px is the height of the sidebar header\n },\n title: {\n display: 'flex',\n flex: 1,\n alignItems: 'center',\n marginLeft: theme.spacing(1.5)\n },\n dataRoot: {\n marginTop: theme.spacing(2)\n },\n skeletonButton: {\n height: (props) => (props.forPage ? 'calc(84vh - 70px)' : '84vh')\n },\n sidebarRoot: {\n padding: (props) => (SPEED_DIAL_ACTIONS.includes(props.type) ? 0 : '')\n },\n actionButton: {\n marginRight: (props) => (SPEED_DIAL_ACTIONS.includes(props.type) ? 0 : '')\n }\n}));\n\nexport const ActionSplitScreen = (props) => {\n const {\n body,\n open,\n action,\n type = SplitScreenTypeEnums.Entity,\n params,\n executeAction,\n actionPanel,\n selectedNodeObj,\n menuNodeList,\n sidebarEntity,\n forPage = false,\n forPageContainer = false,\n selectedNode,\n selectedNodeParent,\n refreshTree,\n ...otherProps\n } = props;\n const shellHidden = useShellStore((state) => state.shellHidden);\n const currentContainerId = useShellStore((state) => state.currentContainerId);\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n shellHidden,\n ...props,\n appRibbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const [width, setWidth] = useState(0);\n const { t } = useTranslation();\n const { openSplitScreen, openPageSplitScreen, openPageContainerSplitScreen } =\n useActions();\n const actionState = useActionState();\n const user = useUser();\n const formRef = useRef(null);\n\n const [{ data: page, loading: loadingPage }] = useAxiosGet(\n ConfigService.tenantV1ApiUrl,\n `page/${action?.parameters?.pageId}`,\n {},\n !!!action?.parameters?.pageId,\n false\n );\n\n const entityName = useMemo(() => {\n return actionPanel\n ? actionPanel.entityName\n : actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n ?.properties?.catalogReturnObject;\n }, [actionPanel, actionState, currentContainerId]);\n\n const entityAttributes = useMemo(() => {\n if (!actionState?.catalog) {\n return [];\n }\n\n return getEntityAttributes(actionState?.catalog, entityName);\n }, [entityName, actionState]);\n\n const openScreen = useMemo(\n () =>\n forPage\n ? forPageContainer\n ? openPageContainerSplitScreen\n : openPageSplitScreen\n : openSplitScreen,\n [\n forPage,\n openPageSplitScreen,\n openSplitScreen,\n forPageContainer,\n openPageContainerSplitScreen\n ]\n );\n\n const closeSplitScreen = useCallback(() => {\n if (params?.closeSplitScreenAction) {\n params.closeSplitScreenAction();\n }\n openScreen({ open: false, action: null, type: null });\n setWidth(0);\n }, [openScreen, params]);\n\n const onSubmitAction = useCallback(() => {\n switch (type) {\n case SplitScreenTypeEnums.Notes:\n formRef?.current.form.submit();\n break;\n case SplitScreenTypeEnums.Page:\n params?.onSubmit();\n break;\n case SplitScreenTypeEnums.Reminders:\n formRef?.current.form.submit();\n break;\n default:\n break;\n }\n }, [type, params]);\n\n const cardContent = useMemo(() => {\n let content = null;\n switch (type) {\n case SplitScreenTypeEnums.Entity:\n content = (\n <EntitySideBarContent\n action={action}\n executeAction={executeAction}\n entityAttributes={entityAttributes}\n selectedNodeObj={selectedNodeObj}\n apiCatalogId={actionState?.catalog?.apiCatalogId}\n entityName={entityName}\n sidebarEntity={sidebarEntity}\n menuNodeList={menuNodeList}\n closeSplitScreen={closeSplitScreen}\n />\n );\n break;\n case SplitScreenTypeEnums.Notes:\n content = (\n <NotesScreen\n formRef={formRef}\n shortcutContentFinderEnabled={true}\n id={params?.id}\n reloadNotes={params?.reloadNotes}\n />\n );\n break;\n case SplitScreenTypeEnums.Page:\n if (page) {\n content = (\n <DndProvider backend={HTML5Backend}>\n <PageContainer\n user={user}\n key={action?.actionId}\n pageData={page}\n widgetParams={{\n pageId: page?.pageId,\n contentId: selectedNode?.properties?.searchValue,\n requiredFieldsMap:\n action?.parameters?.requiredFieldMapping || {},\n nodeObj: selectedNode?.nodeObj,\n parentNodeObj: selectedNodeParent?.nodeObj,\n inquiryParams: selectedNode?.inquiryParams,\n refreshTree: refreshTree\n }}\n disableMargins={true}\n />\n </DndProvider>\n );\n } else if (loadingPage) {\n content = (\n <Skeleton variant='rect' className={classes.skeletonButton} />\n );\n } else {\n content = params?.content || null;\n }\n break;\n case SplitScreenTypeEnums.Reminders:\n content = (\n <RemindersScreen\n formRef={formRef}\n shortcutContentFinderEnabled={true}\n id={params?.id}\n reloadReminders={params?.reloadReminders}\n />\n );\n break;\n default:\n break;\n }\n return content;\n }, [\n type,\n action,\n executeAction,\n entityAttributes,\n selectedNodeObj,\n closeSplitScreen,\n menuNodeList,\n actionState,\n entityName,\n sidebarEntity,\n refreshTree,\n page,\n selectedNode,\n selectedNodeParent,\n user,\n loadingPage,\n classes,\n params\n ]);\n\n const headerTitle = useMemo(() => {\n let title = '';\n switch (type) {\n case SplitScreenTypeEnums.Entity:\n title = t(`${entityName} Details`);\n break;\n case SplitScreenTypeEnums.Notes:\n title = t(`Add Note`);\n break;\n case SplitScreenTypeEnums.Reminders:\n title = t(`Add Reminder`);\n break;\n default:\n title = params?.headerTitle || '';\n break;\n }\n return title;\n }, [entityName, type, t, params]);\n\n const buttonLabelVal = useMemo(() => {\n let label = '';\n switch (type) {\n case SplitScreenTypeEnums.Notes:\n label = t(`Save Note`);\n break;\n case SplitScreenTypeEnums.Page:\n label = t(params?.buttonLabel);\n break;\n case SplitScreenTypeEnums.Reminders:\n label = t(`Save Reminder`);\n break;\n default:\n break;\n }\n return label;\n }, [type, t, params]);\n\n useEffect(() => {\n if (open) {\n setWidth(params?.initialWidth ?? 420);\n }\n }, [open, params]);\n\n return (\n <DraggableSidebarTemplate\n removePadding={false}\n width={width}\n setWidth={setWidth}\n handleToggleClick={() => {}}\n hide={!open}\n expanded={false}\n maxWidth={params?.maxWidth}\n enable={{\n top: false,\n right: false,\n bottom: false,\n left: true,\n topRight: false,\n bottomRight: false,\n bottomLeft: false,\n topLeft: false\n }}\n body={body}\n sidebar={\n <Slide in={open} direction='left'>\n <div className={classes.splitScreen}>\n <Card square elevation={4} className={classes.card}>\n {!params?.hideHeader && (\n <SidebarHeader\n onClose={closeSplitScreen}\n title={headerTitle}\n buttonLabel={buttonLabelVal}\n buttonProgress={params?.buttonProgress}\n buttonVariant={params?.buttonVariant}\n buttonIcon={params?.buttonIcon}\n onSubmit={onSubmitAction}\n secondaryButtonLabel={params?.secondaryButtonLabel}\n secondaryButtonProgress={params?.secondaryButtonProgress}\n secondaryButtonVariant={params?.secondaryButtonVariant}\n secondaryButtonIcon={params?.secondaryButtonIcon}\n secondaryOnSubmit={params?.secondaryOnSubmit}\n additionalInputs={params?.additionalInputs || null}\n classes={{\n root: classes.sidebarRoot,\n actionButton: classes.actionButton\n }}\n {...otherProps}\n />\n )}\n <CardContent className={classes.cardContent}>\n {cardContent}\n </CardContent>\n </Card>\n </div>\n </Slide>\n }\n splitScreenStyle={{\n zIndex: 1000\n }}\n />\n );\n};\n\nActionSplitScreen.propTypes = {\n body: PropTypes.object,\n open: PropTypes.bool,\n action: PropTypes.object,\n executeAction: PropTypes.func,\n entityName: PropTypes.string,\n entityAttributes: PropTypes.array,\n selectedNodeObj: PropTypes.object,\n menuNodeList: PropTypes.array,\n showError: PropTypes.func\n};\n"],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ import { useActions } from "./useActions-CKdp6TpD.js";
|
|
|
16
16
|
import { evaluateRule, mapRule } from "./RuleUtilities-DXVlN84J.js";
|
|
17
17
|
import { PrimaryActionButton } from "./PrimaryActionButton-CQXyHAeG.js";
|
|
18
18
|
import { getSearchObject } from "./SearchUtilities-CzmJ6hI2.js";
|
|
19
|
-
import { getIconFromName } from "./TreeUtilities-
|
|
19
|
+
import { getIconFromName } from "./TreeUtilities-XLrXtUeL.js";
|
|
20
20
|
import { getUnityIconFromName } from "./UnityIconLibrary-DnCuEr5M.js";
|
|
21
21
|
import { PAHAdditionalRightComponent } from "./PAHAdditionalRightComponent-CvWTgdMd.js";
|
|
22
22
|
import { SiteHeaderRightComponent } from "./SiteHeaderRightComponent-zuiawaq3.js";
|
|
@@ -26,7 +26,7 @@ import { SideSheet } from "./SideSheet-BhKZOd2G.js";
|
|
|
26
26
|
import { useAxiosGet } from "./useAxiosGet-VY6m2qeW.js";
|
|
27
27
|
import { PageContainer } from "./PageContainer-Cvw3n3k2.js";
|
|
28
28
|
import { executeQueryAdHoc } from "./methodUtils-Bgi0VCWP.js";
|
|
29
|
-
import { ActionSplitScreen } from "./ActionSplitScreen-
|
|
29
|
+
import { ActionSplitScreen } from "./ActionSplitScreen-x0Bh5GEF.js";
|
|
30
30
|
import { usePromotedMethodEntity } from "./usePromotedMethodEntity-B50E6rbB.js";
|
|
31
31
|
import React, { useCallback, useEffect, useMemo, useState } from "react";
|
|
32
32
|
import { Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle, Typography, makeStyles } from "@material-ui/core";
|
|
@@ -893,4 +893,4 @@ ActionWrapper.propTypes = {
|
|
|
893
893
|
|
|
894
894
|
//#endregion
|
|
895
895
|
export { ActionForm, ActionModal, ActionPanelPlacement, ActionSideSheet, ActionSpeedDial, ActionWrapper };
|
|
896
|
-
//# sourceMappingURL=ActionWrapper-
|
|
896
|
+
//# sourceMappingURL=ActionWrapper-BRzh3vn0.js.map
|