udp-react-enterprise-component-library 25.18.1-beta.36 → 25.18.1-beta.37
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/{ActionProvider-BiXGsnVD.js → ActionProvider-Baw1T6NO.js} +4 -4
- package/dist/{ActionProvider-BiXGsnVD.js.map → ActionProvider-Baw1T6NO.js.map} +1 -1
- package/dist/{ActionSplitScreen-B6CwvyKz.js → ActionSplitScreen-iHYpf5b3.js} +5 -5
- package/dist/{ActionSplitScreen-B6CwvyKz.js.map → ActionSplitScreen-iHYpf5b3.js.map} +1 -1
- package/dist/{ActionWrapper-D_kTqDlx.js → ActionWrapper-BFnTN0Yg.js} +8 -8
- package/dist/{ActionWrapper-D_kTqDlx.js.map → ActionWrapper-BFnTN0Yg.js.map} +1 -1
- package/dist/{AggregateChip-CMsjzRuS.js → AggregateChip-VJ-QIBJt.js} +3 -3
- package/dist/{AggregateChip-CMsjzRuS.js.map → AggregateChip-VJ-QIBJt.js.map} +1 -1
- package/dist/{AmChart-CGJv7thW.js → AmChart-CVhkLkUN.js} +1 -1
- package/dist/{AmChart-CGJv7thW.js.map → AmChart-CVhkLkUN.js.map} +1 -1
- package/dist/{AmbientGridTemplate-d8EoaQH7.js → AmbientGridTemplate-VCZhDcIf.js} +4 -4
- package/dist/{AmbientGridTemplate-d8EoaQH7.js.map → AmbientGridTemplate-VCZhDcIf.js.map} +1 -1
- package/dist/{AmbientSingleDateSelector-DwyiHvnP.js → AmbientSingleDateSelector-6GlRqv6f.js} +1 -1
- package/dist/{AmbientSingleDateSelector-DwyiHvnP.js.map → AmbientSingleDateSelector-6GlRqv6f.js.map} +1 -1
- package/dist/{AmbientStepper-D9NzCqa8.js → AmbientStepper-Dv1WH2x1.js} +6 -6
- package/dist/{AmbientStepper-D9NzCqa8.js.map → AmbientStepper-Dv1WH2x1.js.map} +1 -1
- package/dist/{AmbientVisualizationCard-Ci615JQM.js → AmbientVisualizationCard-BAGEKWJD.js} +3 -3
- package/dist/{AmbientVisualizationCard-Ci615JQM.js.map → AmbientVisualizationCard-BAGEKWJD.js.map} +1 -1
- package/dist/{AmbientVisualizer-B6kX3oPX.js → AmbientVisualizer-DQb7oRtt.js} +1 -1
- package/dist/{AmbientVisualizer-B6kX3oPX.js.map → AmbientVisualizer-DQb7oRtt.js.map} +1 -1
- package/dist/{AppMenu-umGrUP24.js → AppMenu-j_DFeCLT.js} +2 -2
- package/dist/{AppMenu-umGrUP24.js.map → AppMenu-j_DFeCLT.js.map} +1 -1
- package/dist/{BarChartWidget-Byhkw_b2.js → BarChartWidget-CBuIqMLi.js} +1 -1
- package/dist/{BarChartWidget-Byhkw_b2.js.map → BarChartWidget-CBuIqMLi.js.map} +1 -1
- package/dist/{BaseTreeMenu-BhAbJoRI.js → BaseTreeMenu-B4d--j95.js} +4 -4
- package/dist/{BaseTreeMenu-BhAbJoRI.js.map → BaseTreeMenu-B4d--j95.js.map} +1 -1
- package/dist/{BioCardWrapper-C6nBREs6.js → BioCardWrapper-BgaHtBHX.js} +2 -2
- package/dist/{BioCardWrapper-C6nBREs6.js.map → BioCardWrapper-BgaHtBHX.js.map} +1 -1
- package/dist/{BubbleWidget-DgZ62Qgp.js → BubbleWidget-Do4wzp65.js} +2 -2
- package/dist/{BubbleWidget-DgZ62Qgp.js.map → BubbleWidget-Do4wzp65.js.map} +1 -1
- package/dist/{BulkActionsGridButton-BqQVX9xA.js → BulkActionsGridButton-h4xG4HUd.js} +3 -3
- package/dist/{BulkActionsGridButton-BqQVX9xA.js.map → BulkActionsGridButton-h4xG4HUd.js.map} +1 -1
- package/dist/{CardList-FnAeVtYc.js → CardList-ClQJc1cb.js} +1 -1
- package/dist/{CardList-FnAeVtYc.js.map → CardList-ClQJc1cb.js.map} +1 -1
- package/dist/{CircleButton-DzJjhCYd.js → CircleButton-cl6mmDmn.js} +2 -2
- package/dist/{CircleButton-DzJjhCYd.js.map → CircleButton-cl6mmDmn.js.map} +1 -1
- package/dist/{CircleGaugeWidget-CmhDHqSL.js → CircleGaugeWidget-DpusOc7_.js} +1 -1
- package/dist/{CircleGaugeWidget-CmhDHqSL.js.map → CircleGaugeWidget-DpusOc7_.js.map} +1 -1
- package/dist/{ContentContainer-CIYq-KgJ.js → ContentContainer-BsADv-yT.js} +1 -1
- package/dist/{ContentContainer-CIYq-KgJ.js.map → ContentContainer-BsADv-yT.js.map} +1 -1
- package/dist/{CrudBrowserContainer-DI5Ad2Fs.js → CrudBrowserContainer-C9184dly.js} +2 -2
- package/dist/{CrudBrowserContainer-DI5Ad2Fs.js.map → CrudBrowserContainer-C9184dly.js.map} +1 -1
- package/dist/{CrudForm-DeevwuDd.js → CrudForm-CDbgz4Ki.js} +2 -2
- package/dist/{CrudForm-DeevwuDd.js.map → CrudForm-CDbgz4Ki.js.map} +1 -1
- package/dist/{CrudTableSidePanel-BNnuDNZS.js → CrudTableSidePanel-Bmw3Xftc.js} +3 -3
- package/dist/{CrudTableSidePanel-BNnuDNZS.js.map → CrudTableSidePanel-Bmw3Xftc.js.map} +1 -1
- package/dist/{DataBrowserContainer-nr4cDIBD.js → DataBrowserContainer-r-AWYMmq.js} +6 -6
- package/dist/{DataBrowserContainer-nr4cDIBD.js.map → DataBrowserContainer-r-AWYMmq.js.map} +1 -1
- package/dist/{DateTrendWidget-Di_sMLMg.js → DateTrendWidget-CWrblk64.js} +1 -1
- package/dist/{DateTrendWidget-Di_sMLMg.js.map → DateTrendWidget-CWrblk64.js.map} +1 -1
- package/dist/{DensePlotWidget-BjNgsZMp.js → DensePlotWidget-C6UlwnqI.js} +1 -1
- package/dist/{DensePlotWidget-BjNgsZMp.js.map → DensePlotWidget-C6UlwnqI.js.map} +1 -1
- package/dist/{Directory-BnhL-K3q.js → Directory-DvGh-Lfv.js} +1 -1
- package/dist/{Directory-BnhL-K3q.js.map → Directory-DvGh-Lfv.js.map} +1 -1
- package/dist/{EntityHeader-bK94krmA.js → EntityHeader-BPt9Q1cN.js} +4 -4
- package/dist/{EntityHeader-bK94krmA.js.map → EntityHeader-BPt9Q1cN.js.map} +1 -1
- package/dist/{FieldArrayCard-Dc9XMy05.js → FieldArrayCard-DhHMT4er.js} +3 -3
- package/dist/{FieldArrayCard-Dc9XMy05.js.map → FieldArrayCard-DhHMT4er.js.map} +1 -1
- package/dist/{FileUpload-CHoEtVre.js → FileUpload-BZxNg52V.js} +1 -1
- package/dist/{FileUpload-CHoEtVre.js.map → FileUpload-BZxNg52V.js.map} +1 -1
- package/dist/{FluentCardHeader-CsQtNtjK.js → FluentCardHeader-DhVrZpGP.js} +1 -1
- package/dist/{FluentCardHeader-CsQtNtjK.js.map → FluentCardHeader-DhVrZpGP.js.map} +1 -1
- package/dist/{FluentCell-Dm8aaWes.js → FluentCell-CedZugOG.js} +2 -2
- package/dist/{FluentCell-Dm8aaWes.js.map → FluentCell-CedZugOG.js.map} +1 -1
- package/dist/{FluentDataTable-n4F_YwWi.js → FluentDataTable-CfZvFZIp.js} +2 -2
- package/dist/{FluentDataTable-n4F_YwWi.js.map → FluentDataTable-CfZvFZIp.js.map} +1 -1
- package/dist/{FluentLink-ChTXAsZZ.js → FluentLink-DS45dlRc.js} +1 -1
- package/dist/{FluentLink-ChTXAsZZ.js.map → FluentLink-DS45dlRc.js.map} +1 -1
- package/dist/{FluentProfileMenuCard-BdLCpdPv.js → FluentProfileMenuCard-RU7wosYK.js} +5 -5
- package/dist/{FluentProfileMenuCard-BdLCpdPv.js.map → FluentProfileMenuCard-RU7wosYK.js.map} +1 -1
- package/dist/{FluentRadioGroup-CafyJl31.js → FluentRadioGroup-c7Gm4njz.js} +1 -1
- package/dist/{FluentRadioGroup-CafyJl31.js.map → FluentRadioGroup-c7Gm4njz.js.map} +1 -1
- package/dist/{FluentSelectMenu-BlGxxA1Z.js → FluentSelectMenu-DWwJk0Gh.js} +1 -1
- package/dist/{FluentSelectMenu-BlGxxA1Z.js.map → FluentSelectMenu-DWwJk0Gh.js.map} +1 -1
- package/dist/{FluentSimpleSelect-BxLwVTnc.js → FluentSimpleSelect-DCrJDofS.js} +2 -2
- package/dist/{FluentSimpleSelect-BxLwVTnc.js.map → FluentSimpleSelect-DCrJDofS.js.map} +1 -1
- package/dist/{FluentTimePicker-CtijxH02.js → FluentTimePicker-C9wwQ3wX.js} +1 -1
- package/dist/{FluentTimePicker-CtijxH02.js.map → FluentTimePicker-C9wwQ3wX.js.map} +1 -1
- package/dist/{FluentTimeline-B-6cg-o7.js → FluentTimeline--7ISkVOo.js} +1 -1
- package/dist/{FluentTimeline-B-6cg-o7.js.map → FluentTimeline--7ISkVOo.js.map} +1 -1
- package/dist/{GaugeWidget-BT7YuEQO.js → GaugeWidget-DFZwCzN6.js} +1 -1
- package/dist/{GaugeWidget-BT7YuEQO.js.map → GaugeWidget-DFZwCzN6.js.map} +1 -1
- package/dist/{GraphCard-TjBoeauz.js → GraphCard-C-nGs4y1.js} +1 -1
- package/dist/{GraphCard-TjBoeauz.js.map → GraphCard-C-nGs4y1.js.map} +1 -1
- package/dist/{GridFunctions-Chj_vcVe.js → GridFunctions-CRTDIOe0.js} +2 -2
- package/dist/{GridFunctions-Chj_vcVe.js.map → GridFunctions-CRTDIOe0.js.map} +1 -1
- package/dist/{GroupNode-D1aehQ7K.js → GroupNode-Djp62Urb.js} +2 -2
- package/dist/{GroupNode-D1aehQ7K.js.map → GroupNode-Djp62Urb.js.map} +1 -1
- package/dist/{IconKey-DKiQELkd.js → IconKey-CayWYYXb.js} +1 -1
- package/dist/{IconKey-DKiQELkd.js.map → IconKey-CayWYYXb.js.map} +1 -1
- package/dist/{IconRenderer-DFpfUgfn.js → IconRenderer-B6ZoqrTX.js} +2 -2
- package/dist/{IconRenderer-DFpfUgfn.js.map → IconRenderer-B6ZoqrTX.js.map} +1 -1
- package/dist/{ImportDataFromFileMapping-BL5MOAS-.js → ImportDataFromFileMapping-CZQe7oHY.js} +2 -2
- package/dist/{ImportDataFromFileMapping-BL5MOAS-.js.map → ImportDataFromFileMapping-CZQe7oHY.js.map} +1 -1
- package/dist/{LineAndSparklinesWidget-CWnA37yw.js → LineAndSparklinesWidget-CsbQ4V9K.js} +1 -1
- package/dist/{LineAndSparklinesWidget-CWnA37yw.js.map → LineAndSparklinesWidget-CsbQ4V9K.js.map} +1 -1
- package/dist/{LineGraphWidget-DOJF9RDB.js → LineGraphWidget-fMmDKCHt.js} +1 -1
- package/dist/{LineGraphWidget-DOJF9RDB.js.map → LineGraphWidget-fMmDKCHt.js.map} +1 -1
- package/dist/MenuPage-NcImSCbx.js +3 -0
- package/dist/{MenuPage-CEqDX-_3.js → MenuPage-l6jiWcbB.js} +4 -4
- package/dist/{MenuPage-CEqDX-_3.js.map → MenuPage-l6jiWcbB.js.map} +1 -1
- package/dist/{MttMainTimeline-rLgkgX8U.js → MttMainTimeline-CW0QNrZw.js} +2 -2
- package/dist/{MttMainTimeline-rLgkgX8U.js.map → MttMainTimeline-CW0QNrZw.js.map} +1 -1
- package/dist/{MttSummary-DeCFHat3.js → MttSummary-CGTFEyQB.js} +3 -3
- package/dist/{MttSummary-DeCFHat3.js.map → MttSummary-CGTFEyQB.js.map} +1 -1
- package/dist/MyExportsPage-CkmqBYdn.js +3 -0
- package/dist/{MyExportsPage-Aapj7fCZ.js → MyExportsPage-DKkxU7yl.js} +3 -3
- package/dist/{MyExportsPage-Aapj7fCZ.js.map → MyExportsPage-DKkxU7yl.js.map} +1 -1
- package/dist/{NewsCard-BBh7InGE.js → NewsCard-C4g0OUT_.js} +1 -1
- package/dist/{NewsCard-BBh7InGE.js.map → NewsCard-C4g0OUT_.js.map} +1 -1
- package/dist/{Notes-CKryM0aj.js → Notes-MpEDLM1w.js} +1 -1
- package/dist/{Notes-CKryM0aj.js.map → Notes-MpEDLM1w.js.map} +1 -1
- package/dist/{NotesScreen-9Y5eOiU1.js → NotesScreen-DWfxRWOF.js} +6 -6
- package/dist/{NotesScreen-9Y5eOiU1.js.map → NotesScreen-DWfxRWOF.js.map} +1 -1
- package/dist/{OutlookCallback-CnRfyIik.js → OutlookCallback-B4JgQHYB.js} +1 -1
- package/dist/{OutlookCallback-CnRfyIik.js.map → OutlookCallback-B4JgQHYB.js.map} +1 -1
- package/dist/{PageActionWrapper-QgeZfyDl.js → PageActionWrapper-D0NcrIw5.js} +3 -3
- package/dist/{PageActionWrapper-QgeZfyDl.js.map → PageActionWrapper-D0NcrIw5.js.map} +1 -1
- package/dist/{PageNotFoundRoute-BAlMpeF8.js → PageNotFoundRoute-CQzy18Sw.js} +1 -1
- package/dist/{PageNotFoundRoute-BAlMpeF8.js.map → PageNotFoundRoute-CQzy18Sw.js.map} +1 -1
- package/dist/{PageNotFoundRoute-CLhbx6VD.js → PageNotFoundRoute-CsgaQRPa.js} +1 -1
- package/dist/{PageRenderer-BDRCRdNS.js → PageRenderer-uHAdepVs.js} +2 -2
- package/dist/{PageRenderer-BDRCRdNS.js.map → PageRenderer-uHAdepVs.js.map} +1 -1
- package/dist/{PaymentForm-Cw-6-woy.js → PaymentForm-ErYvUdUC.js} +27 -27
- package/dist/{PaymentForm-Cw-6-woy.js.map → PaymentForm-ErYvUdUC.js.map} +1 -1
- package/dist/{RecentlyLoadedNodesTable-B28Q8F1Y.js → RecentlyLoadedNodesTable-CK3mVYCX.js} +2 -2
- package/dist/{RecentlyLoadedNodesTable-B28Q8F1Y.js.map → RecentlyLoadedNodesTable-CK3mVYCX.js.map} +1 -1
- package/dist/{RecentlyLoadedNodesWidget-BgdSOq6I.js → RecentlyLoadedNodesWidget-D-cwlG4S.js} +2 -2
- package/dist/{RecentlyLoadedNodesWidget-BgdSOq6I.js.map → RecentlyLoadedNodesWidget-D-cwlG4S.js.map} +1 -1
- package/dist/{RejectIcon-dXvOFAlm.js → RejectIcon-yYl-EGWG.js} +1 -1
- package/dist/{RejectIcon-dXvOFAlm.js.map → RejectIcon-yYl-EGWG.js.map} +1 -1
- package/dist/{RemindersCard-z4dtBhhT.js → RemindersCard-b0Z_AUu4.js} +4 -4
- package/dist/{RemindersCard-z4dtBhhT.js.map → RemindersCard-b0Z_AUu4.js.map} +1 -1
- package/dist/{RemindersScreen-DQD_XKIp.js → RemindersScreen-BOsf651X.js} +6 -6
- package/dist/{RemindersScreen-DQD_XKIp.js.map → RemindersScreen-BOsf651X.js.map} +1 -1
- package/dist/{RemindersWidget-DMWlbmbX.js → RemindersWidget-CMNGJkAt.js} +5 -5
- package/dist/{RemindersWidget-DMWlbmbX.js.map → RemindersWidget-CMNGJkAt.js.map} +1 -1
- package/dist/{SearchServiceDatasource-Ci4OIAl1.js → SearchServiceDatasource-DhJk0qU3.js} +3 -3
- package/dist/{SearchServiceDatasource-Ci4OIAl1.js.map → SearchServiceDatasource-DhJk0qU3.js.map} +1 -1
- package/dist/{SearchUtilities-On0QS5vE.js → SearchUtilities-CNz302LN.js} +2 -2
- package/dist/{SearchUtilities-On0QS5vE.js.map → SearchUtilities-CNz302LN.js.map} +1 -1
- package/dist/{Shell-CGogIHh_.js → Shell-D7FDH0KZ.js} +6 -6
- package/dist/{Shell-CGogIHh_.js.map → Shell-D7FDH0KZ.js.map} +1 -1
- package/dist/{ShortcutContentFinder-D52eFY1l.js → ShortcutContentFinder-DkWVHF1Q.js} +5 -5
- package/dist/{ShortcutContentFinder-D52eFY1l.js.map → ShortcutContentFinder-DkWVHF1Q.js.map} +1 -1
- package/dist/{SimpleTable-CqvnDTLl.js → SimpleTable-BI6LwXgh.js} +1 -1
- package/dist/{SimpleTable-CqvnDTLl.js.map → SimpleTable-BI6LwXgh.js.map} +1 -1
- package/dist/{SparsePlotWidget-H4lx8Kaz.js → SparsePlotWidget-DBAY2rX7.js} +1 -1
- package/dist/{SparsePlotWidget-H4lx8Kaz.js.map → SparsePlotWidget-DBAY2rX7.js.map} +1 -1
- package/dist/{Statistic-CBbuk5HT.js → Statistic-0UgK8lPL.js} +2 -2
- package/dist/{Statistic-CBbuk5HT.js.map → Statistic-0UgK8lPL.js.map} +1 -1
- package/dist/{StatusCellRenderer-CLU8uo3Q.js → StatusCellRenderer-DDWwna7U.js} +1 -1
- package/dist/{StatusCellRenderer-CLU8uo3Q.js.map → StatusCellRenderer-DDWwna7U.js.map} +1 -1
- package/dist/{TableContainer-CJe7qOlC.js → TableContainer-DugYuSJF.js} +3 -3
- package/dist/{TableContainer-CJe7qOlC.js.map → TableContainer-DugYuSJF.js.map} +1 -1
- package/dist/{TenantProvider-DL25tmB1.js → TenantProvider-ByI6uAoc.js} +2 -2
- package/dist/{TenantProvider-DL25tmB1.js.map → TenantProvider-ByI6uAoc.js.map} +1 -1
- package/dist/{TicketCard-DQGB9AgD.js → TicketCard-DBaKP94u.js} +1 -1
- package/dist/{TicketCard-DQGB9AgD.js.map → TicketCard-DBaKP94u.js.map} +1 -1
- package/dist/{TimelineCalendar-C0xE1Q04.js → TimelineCalendar-Wjv3XhN5.js} +1 -1
- package/dist/{TimelineCalendar-C0xE1Q04.js.map → TimelineCalendar-Wjv3XhN5.js.map} +1 -1
- package/dist/{TokenGroupItem-DLU0AK1S.js → TokenGroupItem-DBHuBDVC.js} +1 -1
- package/dist/{TokenGroupItem-DLU0AK1S.js.map → TokenGroupItem-DBHuBDVC.js.map} +1 -1
- package/dist/{TreeUtilities-CujOFOPm.js → TreeUtilities-kiPupulY.js} +4 -4
- package/dist/{TreeUtilities-CujOFOPm.js.map → TreeUtilities-kiPupulY.js.map} +1 -1
- package/dist/UI/accordion/index.js +1 -1
- package/dist/UI/dataDisplay/FluentDataTable/FluentCell/index.js +1 -1
- package/dist/UI/dataDisplay/FluentDataTable/index.js +1 -1
- package/dist/UI/dataDisplay/GraphCard/index.js +1 -1
- package/dist/UI/dataDisplay/calendar/index.js +1 -1
- package/dist/UI/dataDisplay/cardList/index.js +1 -1
- package/dist/UI/dataDisplay/directory/index.js +1 -1
- package/dist/UI/dataDisplay/entityHeader/index.js +1 -1
- package/dist/UI/dataDisplay/index.js +1 -1
- package/dist/UI/dataDisplay/map/index.js +1 -1
- package/dist/UI/dataDisplay/notes/index.js +1 -1
- package/dist/UI/dataDisplay/ticketCard/index.js +1 -1
- package/dist/UI/dataDisplay/visualization/amCharts/index.js +1 -1
- package/dist/UI/dataDisplay/visualization/index.js +1 -1
- package/dist/UI/fileViewer/index.js +1 -1
- package/dist/UI/floorplans/index.js +1 -1
- package/dist/UI/forms/index.js +1 -1
- package/dist/UI/index.js +14 -14
- package/dist/UI/inputs/calendar/index.js +1 -1
- package/dist/UI/inputs/dateRangeSelector/index.js +1 -1
- package/dist/UI/inputs/fieldArrayCard/index.js +1 -1
- package/dist/UI/inputs/link/index.js +1 -1
- package/dist/UI/inputs/menus/AmbientStepper/index.js +1 -1
- package/dist/UI/inputs/menus/index.js +2 -2
- package/dist/UI/inputs/pickers/index.js +2 -2
- package/dist/UI/inputs/radio/index.js +1 -1
- package/dist/UI/mapLayout/index.js +1 -1
- package/dist/UI/mapLayout/ui/index.js +1 -1
- package/dist/UI/navigation/index.js +1 -1
- package/dist/UI/navigation/menus/index.js +1 -1
- package/dist/UI/surfaces/cards/chartDisplayCards/index.js +1 -1
- package/dist/UI/surfaces/cards/fluentCards/index.js +1 -1
- package/dist/UI/surfaces/cards/newsCard/index.js +1 -1
- package/dist/UI/surfaces/cards/workOrderCard/index.js +1 -1
- package/dist/UI/templates/calendar/index.js +1 -1
- package/dist/UI/templates/deprecated/AmbientGridTemplate/index.js +1 -1
- package/dist/UI/templates/deprecated/UdpGridTemplate/index.js +1 -1
- package/dist/UI/templates/ui/index.js +1 -1
- package/dist/UI/templates/ui/renderers/index.js +2 -2
- package/dist/UI/timeline/fluentTimeline/index.js +1 -1
- package/dist/UI/timeline/index.js +1 -1
- package/dist/UI/utilityDisplay/alerts/index.js +1 -1
- package/dist/UI/utilityDisplay/index.js +5 -5
- package/dist/UI/utilityDisplay/utilities/index.js +1 -1
- package/dist/UI/widgets/library/BarChartWidget/index.js +1 -1
- package/dist/UI/widgets/library/BubbleWidget/index.js +1 -1
- package/dist/UI/widgets/library/CircleGaugeWidget/index.js +1 -1
- package/dist/UI/widgets/library/DateTrendWidget/index.js +1 -1
- package/dist/UI/widgets/library/DensePlotWidget/index.js +1 -1
- package/dist/UI/widgets/library/GaugeWidget/index.js +1 -1
- package/dist/UI/widgets/library/LineAndSparklinesWidget/index.js +1 -1
- package/dist/UI/widgets/library/LineGraphWidget/index.js +1 -1
- package/dist/UI/widgets/library/RecentlyLoadedNodesWidget/index.js +1 -1
- package/dist/UI/widgets/library/RemindersWidget/index.js +1 -1
- package/dist/UI/widgets/library/SparsePlotWidget/index.js +1 -1
- package/dist/UI/widgets/library/TableWidget/index.js +1 -1
- package/dist/{UdpAlertsContainer-CsQfN0Cg.js → UdpAlertsContainer-CE63vJ1B.js} +4 -4
- package/dist/{UdpAlertsContainer-CsQfN0Cg.js.map → UdpAlertsContainer-CE63vJ1B.js.map} +1 -1
- package/dist/{UdpAuditEvents-CbCZ5ND-.js → UdpAuditEvents-CiPHLRN-.js} +2 -2
- package/dist/{UdpAuditEvents-CbCZ5ND-.js.map → UdpAuditEvents-CiPHLRN-.js.map} +1 -1
- package/dist/UdpAuditEventsPage-CGWixtmq.js +3 -0
- package/dist/{UdpAuditEventsPage-BfwuxYxk.js → UdpAuditEventsPage-CzgzFO4P.js} +3 -3
- package/dist/{UdpAuditEventsPage-BfwuxYxk.js.map → UdpAuditEventsPage-CzgzFO4P.js.map} +1 -1
- package/dist/{UdpCalendarYearView-TZowGC77.js → UdpCalendarYearView-Djr7YCT3.js} +1 -1
- package/dist/{UdpCalendarYearView-TZowGC77.js.map → UdpCalendarYearView-Djr7YCT3.js.map} +1 -1
- package/dist/{UdpDataBrowserPage-C746qBki.js → UdpDataBrowserPage-BsR670I7.js} +7 -7
- package/dist/{UdpDataBrowserPage-C746qBki.js.map → UdpDataBrowserPage-BsR670I7.js.map} +1 -1
- package/dist/{UdpDateRangeSelector-C5toPT2E.js → UdpDateRangeSelector-C0jEXHEQ.js} +1 -1
- package/dist/{UdpDateRangeSelector-C5toPT2E.js.map → UdpDateRangeSelector-C0jEXHEQ.js.map} +1 -1
- package/dist/{UdpFormsPrivateForm-CUVom0jg.js → UdpFormsPrivateForm-BCXlSJcR.js} +2 -2
- package/dist/{UdpFormsPrivateForm-CUVom0jg.js.map → UdpFormsPrivateForm-BCXlSJcR.js.map} +1 -1
- package/dist/{UdpFormsSubmissionGrid-DJeJx9V0.js → UdpFormsSubmissionGrid-3806WiQB.js} +2 -2
- package/dist/{UdpFormsSubmissionGrid-DJeJx9V0.js.map → UdpFormsSubmissionGrid-3806WiQB.js.map} +1 -1
- package/dist/{UdpGridPanelManagementPage-INlmheiF.js → UdpGridPanelManagementPage-Dzu7o8P5.js} +2 -2
- package/dist/{UdpGridPanelManagementPage-INlmheiF.js.map → UdpGridPanelManagementPage-Dzu7o8P5.js.map} +1 -1
- package/dist/{UdpGridTemplate-SGI-8dJX.js → UdpGridTemplate-BswnwevH.js} +1 -1
- package/dist/{UdpGridTemplate-SGI-8dJX.js.map → UdpGridTemplate-BswnwevH.js.map} +1 -1
- package/dist/{UdpImportFromFileMappingPage-v0D7v216.js → UdpImportFromFileMappingPage-CjCTzU9E.js} +2 -2
- package/dist/{UdpImportFromFileMappingPage-v0D7v216.js.map → UdpImportFromFileMappingPage-CjCTzU9E.js.map} +1 -1
- package/dist/{UdpInquiryMaintenanceEnginePage-BPZhmEmg.js → UdpInquiryMaintenanceEnginePage-4HYSYxGd.js} +2 -2
- package/dist/{UdpInquiryMaintenanceEnginePage-BPZhmEmg.js.map → UdpInquiryMaintenanceEnginePage-4HYSYxGd.js.map} +1 -1
- package/dist/{UdpMaintenanceEnginePage-CI3rZ6G9.js → UdpMaintenanceEnginePage-B8Tvv1dZ.js} +6 -6
- package/dist/{UdpMaintenanceEnginePage-CI3rZ6G9.js.map → UdpMaintenanceEnginePage-B8Tvv1dZ.js.map} +1 -1
- package/dist/{UdpNotesPage-Cbz2-Plp.js → UdpNotesPage-BGNZX-5s.js} +6 -6
- package/dist/{UdpNotesPage-Cbz2-Plp.js.map → UdpNotesPage-BGNZX-5s.js.map} +1 -1
- package/dist/{UdpPages-C555kGsU.js → UdpPages-CMkb2m5F.js} +15 -15
- package/dist/{UdpPages-C555kGsU.js.map → UdpPages-CMkb2m5F.js.map} +1 -1
- package/dist/{UdpRemindersPage-B8oGAjtR.js → UdpRemindersPage-J9vGaj3s.js} +6 -6
- package/dist/{UdpRemindersPage-B8oGAjtR.js.map → UdpRemindersPage-J9vGaj3s.js.map} +1 -1
- package/dist/{UdpRoutes-BYAHAF0u.js → UdpRoutes-D-muhX5C.js} +6 -6
- package/dist/{UdpRoutes-BYAHAF0u.js.map → UdpRoutes-D-muhX5C.js.map} +1 -1
- package/dist/{UdpTransactionTypesPage-CmsWZHM4.js → UdpTransactionTypesPage-Do_tl8J2.js} +1898 -468
- package/dist/UdpTransactionTypesPage-Do_tl8J2.js.map +1 -0
- package/dist/{UdpTransactionsPage-D6lRI165.js → UdpTransactionsPage-DKF6PKUA.js} +779 -192
- package/dist/UdpTransactionsPage-DKF6PKUA.js.map +1 -0
- package/dist/{UdpVerticalManagementPage-BmQISa0N.js → UdpVerticalManagementPage-CR3YJwcI.js} +3 -3
- package/dist/{UdpVerticalManagementPage-BmQISa0N.js.map → UdpVerticalManagementPage-CR3YJwcI.js.map} +1 -1
- package/dist/{UdpVerticalManagementSidesheet-D4WSAtZC.js → UdpVerticalManagementSidesheet-CCSqaYq-.js} +4 -4
- package/dist/{UdpVerticalManagementSidesheet-D4WSAtZC.js.map → UdpVerticalManagementSidesheet-CCSqaYq-.js.map} +1 -1
- package/dist/{UserForm-Cvx0qyL6.js → UserForm-DQIJUkWW.js} +2 -2
- package/dist/{UserForm-Cvx0qyL6.js.map → UserForm-DQIJUkWW.js.map} +1 -1
- package/dist/UserFormSideSheet-Cki2zS9L.js +3 -0
- package/dist/{UserFormSideSheet-Bo1yZr01.js → UserFormSideSheet-yMExq77r.js} +2 -2
- package/dist/{UserFormSideSheet-Bo1yZr01.js.map → UserFormSideSheet-yMExq77r.js.map} +1 -1
- package/dist/{UtilityBar-O0baEBVj.js → UtilityBar-Ct7h6CJ4.js} +2 -2
- package/dist/{UtilityBar-O0baEBVj.js.map → UtilityBar-Ct7h6CJ4.js.map} +1 -1
- package/dist/VirtualBrowser-C1IP6rhy.js +3 -0
- package/dist/{VirtualBrowser-clYMlLAt.js → VirtualBrowser-CLXEdKAF.js} +3 -3
- package/dist/{VirtualBrowser-clYMlLAt.js.map → VirtualBrowser-CLXEdKAF.js.map} +1 -1
- package/dist/{WorkOrderCard-Wh1AkhfU.js → WorkOrderCard-CfvJtG69.js} +1 -1
- package/dist/{WorkOrderCard-Wh1AkhfU.js.map → WorkOrderCard-CfvJtG69.js.map} +1 -1
- package/dist/{WorkflowContainer-ClMZHFEd.js → WorkflowContainer-5of_2j2y.js} +3 -3
- package/dist/{WorkflowContainer-ClMZHFEd.js.map → WorkflowContainer-5of_2j2y.js.map} +1 -1
- package/dist/{WorkflowContainer-BBvEDJx3.js → WorkflowContainer-Bb0Amji_.js} +1 -1
- package/dist/{WorkflowTreeMenu-CdfX1Pv0.js → WorkflowTreeMenu-BudXOCOS.js} +4 -4
- package/dist/{WorkflowTreeMenu-CdfX1Pv0.js.map → WorkflowTreeMenu-BudXOCOS.js.map} +1 -1
- package/dist/{accordion-DT5LpWAW.js → accordion-Dh-tKkr0.js} +2 -2
- package/dist/{accordion-DT5LpWAW.js.map → accordion-Dh-tKkr0.js.map} +1 -1
- package/dist/{actionSummary-BrcS82Qz.js → actionSummary-8FhDX8uJ.js} +2 -2
- package/dist/{actionSummary-BrcS82Qz.js.map → actionSummary-8FhDX8uJ.js.map} +1 -1
- package/dist/{actionUtils-DylNlciX.js → actionUtils-DREj3J3H.js} +2 -2
- package/dist/{actionUtils-DylNlciX.js.map → actionUtils-DREj3J3H.js.map} +1 -1
- package/dist/actions/actionSummary/index.js +1 -1
- package/dist/actions/index.js +5 -5
- package/dist/actions/utils/index.js +1 -1
- package/dist/{aggregateUtils-BCO2GaVq.js → aggregateUtils-C5GwQct7.js} +2 -2
- package/dist/{aggregateUtils-BCO2GaVq.js.map → aggregateUtils-C5GwQct7.js.map} +1 -1
- package/dist/{aggridHelpers-Dj7ES7if.js → aggridHelpers-MdXm-qhS.js} +3 -3
- package/dist/{aggridHelpers-Dj7ES7if.js.map → aggridHelpers-MdXm-qhS.js.map} +1 -1
- package/dist/{auth-DQZDqD8X.js → auth-eDuSIJxU.js} +3 -3
- package/dist/{auth-DQZDqD8X.js.map → auth-eDuSIJxU.js.map} +1 -1
- package/dist/componentSystems/multiThreadTimeline/index.js +3 -3
- package/dist/componentSystems/multiThreadTimeline/mttMainTimeline/index.js +1 -1
- package/dist/componentSystems/multiThreadTimeline/mttSummary/index.js +1 -1
- package/dist/componentSystems/multiThreadTimeline/ui/index.js +1 -1
- package/dist/componentSystems/pageRenderer/hocs/index.js +1 -1
- package/dist/componentSystems/pageRenderer/index.js +3 -3
- package/dist/componentSystems/pageRenderer/wrappers/index.js +1 -1
- package/dist/dataBrowser/index.js +1 -1
- package/dist/{dateUtils-ChKgbJ9U.js → dateUtils-ftAbP-Mv.js} +18 -2
- package/dist/{dateUtils-ChKgbJ9U.js.map → dateUtils-ftAbP-Mv.js.map} +1 -1
- package/dist/enums/index.js +2 -2
- package/dist/{fileViewer-Dk6GMaSl.js → fileViewer-8-Eh4vLL.js} +2 -2
- package/dist/{fileViewer-Dk6GMaSl.js.map → fileViewer-8-Eh4vLL.js.map} +1 -1
- package/dist/{floorplans-BuvxGfwI.js → floorplans-CY6mR5bW.js} +2 -2
- package/dist/{floorplans-BuvxGfwI.js.map → floorplans-CY6mR5bW.js.map} +1 -1
- package/dist/{fluentTimeline-DceBN460.js → fluentTimeline-L0T1uOFm.js} +2 -2
- package/dist/{fluentTimeline-DceBN460.js.map → fluentTimeline-L0T1uOFm.js.map} +1 -1
- package/dist/{gridVisualizationFunctions-D5YZTZ7G.js → gridVisualizationFunctions-D83yg1AF.js} +1 -1
- package/dist/{gridVisualizationFunctions-D5YZTZ7G.js.map → gridVisualizationFunctions-D83yg1AF.js.map} +1 -1
- package/dist/hooks/index.js +3 -3
- package/dist/index.js +102 -101
- package/dist/inquiry/dashboard/index.js +1 -1
- package/dist/inquiry/index.js +4 -4
- package/dist/inquiry/inquiryBar/index.js +1 -1
- package/dist/inquiry/search/index.js +1 -1
- package/dist/{inquiry-DKgopy7F.js → inquiry-D-x5PZRJ.js} +12 -12
- package/dist/{inquiry-DKgopy7F.js.map → inquiry-D-x5PZRJ.js.map} +1 -1
- package/dist/{inquiryBar-CNAMeAq0.js → inquiryBar-lZ1qPFK6.js} +2 -2
- package/dist/{inquiryBar-CNAMeAq0.js.map → inquiryBar-lZ1qPFK6.js.map} +1 -1
- package/dist/layout/index.js +1 -1
- package/dist/{SideBarTemplate-B0lh7DDL.js → layout-BXuf6qmj.js} +1 -1
- package/dist/layout-BXuf6qmj.js.map +1 -0
- package/dist/maintenanceEngine/crudBrowser/index.js +2 -2
- package/dist/maintenanceEngine/index.js +4 -4
- package/dist/maintenanceEngine/tableBrowser/index.js +1 -1
- package/dist/maintenanceEngine/virtualBrowser/index.js +1 -1
- package/dist/{mapLayout-CZGgMWF6.js → mapLayout-BvKaPY3O.js} +2 -2
- package/dist/{mapLayout-CZGgMWF6.js.map → mapLayout-BvKaPY3O.js.map} +1 -1
- package/dist/menuPage/index.js +1 -1
- package/dist/{menuPage-DXMZEj8i.js → menuPage-BKRvZjzg.js} +2 -2
- package/dist/{menuPage-DXMZEj8i.js.map → menuPage-BKRvZjzg.js.map} +1 -1
- package/dist/{menuUtilities-cO3zYLVr.js → menuUtilities-BCPwOaeA.js} +2 -2
- package/dist/{menuUtilities-cO3zYLVr.js.map → menuUtilities-BCPwOaeA.js.map} +1 -1
- package/dist/notes/index.js +1 -1
- package/dist/{UdpTimeSelector-XsmTgOvP.js → pickers-DfIXzoW7.js} +1 -1
- package/dist/pickers-DfIXzoW7.js.map +1 -0
- package/dist/reminders/index.js +2 -2
- package/dist/routes/components/index.js +1 -1
- package/dist/routes/index.js +1 -1
- package/dist/{search-BGZwaCKb.js → search-DRxUjlyc.js} +5 -5
- package/dist/{search-BGZwaCKb.js.map → search-DRxUjlyc.js.map} +1 -1
- package/dist/shell/index.js +3 -3
- package/dist/shell/ui/addUser/index.js +1 -1
- package/dist/shell/ui/index.js +2 -2
- package/dist/stores/index.js +1 -1
- package/dist/{tenantStore-tBfq87CP.js → tenantStore-TgmV03z9.js} +2 -2
- package/dist/{tenantStore-tBfq87CP.js.map → tenantStore-TgmV03z9.js.map} +1 -1
- package/dist/treeMenu/index.js +1 -1
- package/dist/types/src/enums/unitySystemEnums.d.ts +4 -2
- package/dist/types/src/enums/unitySystemEnums.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/UdpTransactionTypesPage.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionAttachmentTypeForm.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionAttachmentTypeForm.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationForm.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationForm.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationTransactionActionForm.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationTransactionActionForm.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeForm.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeStatusForm.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeCreateAndEditSidesheet.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeCreateAndEditSidesheet.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeSidesheet.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeSidesheet.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationCreateAndEditSidesheet.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationCreateAndEditSidesheet.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationSidesheet.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationSidesheet.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionCreateAndEditSidesheet.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionCreateAndEditSidesheet.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionSidesheet.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionSidesheet.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeStatusSidesheet.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeTransactionActionCreateAndEditSidesheet.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeTransactionActionSidesheet.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionUiActionCreateAndEditSidesheet.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionUiActionSidesheet.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionGrid.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionSidesheet.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionsPage.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/AttachmentTransactionAttachmentList.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/AttachmentTransactionAttachmentList.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFooterItem.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsForm.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsForm.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFormFields.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFormFields.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/UdpTransactionCustomPage.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachment.d.ts +3 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachment.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachments.d.ts +3 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachments.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimeline.d.ts +4 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimeline.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimelineItem.d.ts +3 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimelineItem.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNote.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNoteForm.d.ts +3 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNoteForm.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNotes.d.ts.map +1 -0
- package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentTransaction.d.ts +2 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentTransaction.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/EditTransaction.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/WorkflowActions.d.ts +2 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/WorkflowActions.d.ts.map +1 -1
- package/dist/types/src/uploader/Attachments.d.ts +18 -0
- package/dist/types/src/uploader/Attachments.d.ts.map +1 -0
- package/dist/types/src/uploader/enums/systemEnums.d.ts +17 -0
- package/dist/types/src/uploader/enums/systemEnums.d.ts.map +1 -0
- package/dist/types/src/uploader/index.d.ts +1 -0
- package/dist/types/src/uploader/index.d.ts.map +1 -1
- package/dist/types/src/uploader/utils/allowedFileProperties.d.ts +3 -0
- package/dist/types/src/uploader/utils/allowedFileProperties.d.ts.map +1 -0
- package/dist/types/src/uploader/utils/downloadAttachmentFiles.d.ts +4 -0
- package/dist/types/src/uploader/utils/downloadAttachmentFiles.d.ts.map +1 -0
- package/dist/types/src/utilities/transactions/useTransactionEngine.d.ts +2 -0
- package/dist/types/src/utilities/transactions/useTransactionEngine.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/dist/udp/ShortcutContent/index.js +1 -1
- package/dist/udp/export/index.js +1 -1
- package/dist/udp/fileImportMapping/index.js +2 -2
- package/dist/udp/pages/UdpAuditEvents/index.js +1 -1
- package/dist/udp/pages/UdpDataBrowserPage/index.js +1 -1
- package/dist/udp/pages/UdpFormsPrivateForm/index.js +1 -1
- package/dist/udp/pages/UdpFormsSubmissionGrid/index.js +1 -1
- package/dist/udp/pages/UdpGridPanelManagementPage/index.js +1 -1
- package/dist/udp/pages/UdpImportFromFileMappingPage/index.js +1 -1
- package/dist/udp/pages/UdpInquiryMaintenanceEnginePage/index.js +1 -1
- package/dist/udp/pages/UdpMaintenanceEnginePage/index.js +1 -1
- package/dist/udp/pages/UdpNotesPage/index.js +1 -1
- package/dist/udp/pages/UdpPages/index.js +1 -1
- package/dist/udp/pages/UdpPagesLazy/index.js +1 -1
- package/dist/udp/pages/UdpRemindersPage/index.js +1 -1
- package/dist/udp/pages/UdpTransactionTypesPage/index.js +1 -1
- package/dist/udp/pages/UdpTransactionsPage/index.js +1 -1
- package/dist/udp/pages/UdpVerticalManagementPage/index.js +1 -1
- package/dist/udp/pages/UdpVerticalManagementSidesheet/index.js +1 -1
- package/dist/udp/pages/index.js +1 -1
- package/dist/{unitySystemEnums-DM5vXR_m.js → unitySystemEnums-e5F9Jr7m.js} +5 -3
- package/dist/{unitySystemEnums-DM5vXR_m.js.map → unitySystemEnums-e5F9Jr7m.js.map} +1 -1
- package/dist/uploader/Attachments.css +29 -0
- package/dist/uploader/index.js +2 -102
- package/dist/uploader-C36UIFAF.js +314 -0
- package/dist/uploader-C36UIFAF.js.map +1 -0
- package/dist/{useActions-Db2P12NS.js → useActions-CxDs7v3s.js} +3 -3
- package/dist/{useActions-Db2P12NS.js.map → useActions-CxDs7v3s.js.map} +1 -1
- package/dist/{usePromotedMethodEntities-Dw_Z9GFX.js → usePromotedMethodEntities-B3xSrWmP.js} +2 -2
- package/dist/{usePromotedMethodEntities-Dw_Z9GFX.js.map → usePromotedMethodEntities-B3xSrWmP.js.map} +1 -1
- package/dist/{useSearchFilterParamsMap-CLAStwmE.js → useSearchFilterParamsMap-DPCfEY-N.js} +2 -2
- package/dist/{useSearchFilterParamsMap-CLAStwmE.js.map → useSearchFilterParamsMap-DPCfEY-N.js.map} +1 -1
- package/dist/utilities/aggrid/datasources/index.js +1 -1
- package/dist/utilities/aggrid/index.js +2 -2
- package/dist/utilities/auth/index.js +1 -1
- package/dist/utilities/customIcons/index.js +1 -1
- package/dist/utilities/floorplanFunctions/index.js +1 -1
- package/dist/utilities/form/paymentForm/index.js +1 -1
- package/dist/utilities/menus/index.js +1 -1
- package/dist/utilities/provider/index.js +1 -1
- package/dist/utilities/redirect/pages/index.js +1 -1
- package/dist/utilities/search/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 +1 -1
- package/dist/utilities/uploader/index.js +1 -1
- package/dist/{withEngineComponent-s_zEZt7e.js → withEngineComponent-Css79hMi.js} +2 -2
- package/dist/{withEngineComponent-s_zEZt7e.js.map → withEngineComponent-Css79hMi.js.map} +1 -1
- package/dist/workflow/index.js +2 -2
- package/dist/workflow/menus/index.js +1 -1
- package/export-map.json +4 -2
- package/package.json +2 -2
- package/dist/MenuPage-BxZfgpHf.js +0 -3
- package/dist/MyExportsPage-BnDpxtTW.js +0 -3
- package/dist/SideBarTemplate-B0lh7DDL.js.map +0 -1
- package/dist/UdpAuditEventsPage-BGIcCG26.js +0 -3
- package/dist/UdpTimeSelector-XsmTgOvP.js.map +0 -1
- package/dist/UdpTransactionTypesPage-CmsWZHM4.js.map +0 -1
- package/dist/UdpTransactionsPage-D6lRI165.js.map +0 -1
- package/dist/UserFormSideSheet-B6CT9SiQ.js +0 -3
- package/dist/VirtualBrowser-Cm-d-9ws.js +0 -3
- package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentList.d.ts +0 -3
- package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentList.d.ts.map +0 -1
- package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/transactionNote/TransactionNotes.d.ts.map +0 -1
- package/dist/uploader/index.js.map +0 -1
- /package/dist/{addUser-C90pCSnT.js → addUser-ND44rh2U.js} +0 -0
- /package/dist/{appSwitcher-BVKuYNfi.js → appSwitcher-a9n2Iwje.js} +0 -0
- /package/dist/{components-B1RVyHlZ.js → components-DFnCokX4.js} +0 -0
- /package/dist/{crudBrowser-C4YqsRrl.js → crudBrowser-D2jkhTHL.js} +0 -0
- /package/dist/{forms-BHhy_qYQ.js → forms-Bqbd2PSS.js} +0 -0
- /package/dist/{functions-48UNDwct.js → functions-BsqJgCPf.js} +0 -0
- /package/dist/{hocs-CWPyxUPi.js → hocs-ffxbQsXq.js} +0 -0
- /package/dist/{hooks-CkNaVLLH.js → hooks-DZQTSvZa.js} +0 -0
- /package/dist/{menus-DRIHkeQr.js → menus-Bcz2WjML.js} +0 -0
- /package/dist/{modified-BHJzuqPC.js → modified-Bhd8wpcw.js} +0 -0
- /package/dist/{mttMainTimeline-CLFQyr-b.js → mttMainTimeline-4YnP9sFd.js} +0 -0
- /package/dist/{mttSummary-13x9tvMI.js → mttSummary-DUe99dle.js} +0 -0
- /package/dist/{renderers-B2fqkGT5.js → renderers-DMzVV_xu.js} +0 -0
- /package/dist/{sidebar-CM1ujsxj.js → sidebar-Wi8WckFO.js} +0 -0
- /package/dist/{tableBrowser-CSDLzrvz.js → tableBrowser-C1wXuOXy.js} +0 -0
- /package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNote.d.ts +0 -0
- /package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNotes.d.ts +0 -0
- /package/dist/{ui-CPBXC1Ld.js → ui-BjpkPJO5.js} +0 -0
- /package/dist/{ui-DKHa8sM6.js → ui-DDD_eO_6.js} +0 -0
- /package/dist/{utils-D3uaSx1C.js → utils-DNwO498R.js} +0 -0
- /package/dist/{utils-mr65G560.js → utils-Drtwu1nG.js} +0 -0
- /package/dist/{virtualBrowser-DpJvv72S.js → virtualBrowser-zN1T60dc.js} +0 -0
- /package/dist/{wrappers-C7ViYUDV.js → wrappers-CQ2ylYPw.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MttSummary-DeCFHat3.js","names":["uuid","data","filterListGroup","Link","item"],"sources":["../src/componentSystems/multiThreadTimeline/timeline.ts","../src/componentSystems/multiThreadTimeline/mttSummary/MttSummary.jsx"],"sourcesContent":["interface Event {\n id: string | undefined;\n eventTypeID: string | undefined;\n primaryContextID: string | undefined;\n secondaryContextID: string | undefined;\n date: string | undefined;\n transactionType: string | undefined;\n description: string | undefined;\n shortDescription: string | undefined;\n status: number | undefined;\n data1: '';\n}\n\ninterface Thread {\n id: string | undefined;\n name: string | undefined;\n inSummary: boolean;\n queryID: string | undefined;\n iconID: string | undefined;\n mttConfigID: string | undefined;\n events: Array<Event> | undefined;\n}\n\nexport interface Timeline {\n threads: Array<Thread> | undefined;\n}\n\nexport const createTimeline = (threads: Array<any>): Timeline => {\n return { threads };\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { apiMutate } from '../../../utilities/useAxiosMutate';\nimport { IconRenderer } from '../../../UI/templates/ui/renderers/IconRenderer';\nimport { LayoutUnit } from '../../../layout/LayoutUnit';\nimport { createTimeline } from '../timeline.ts';\nimport { SummaryToken } from '../ui/SummaryToken';\nimport {\n CardContent,\n LinearProgress,\n Typography,\n makeStyles\n} from '@material-ui/core';\nimport Skeleton from '@material-ui/lab/Skeleton';\nimport { TimelineTopRowFilter } from '../ui/TimelineTopRowFilter';\nimport { DateWrapper } from '../ui/DateWrapper';\nimport { CircleButton } from '../ui/CircleButton';\nimport { RedEyeIcon } from '@fluentui/react-icons';\nimport { Link } from 'react-router-dom';\nimport { formatDataWithTimelineCategoryName } from '../functions/mttFunctions';\nimport { MttYearTag } from '../ui/MttYearTag';\nimport PropTypes from 'prop-types';\nimport { v4 as uuid } from 'uuid';\nimport { ConfigService } from '../../../configService';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n wrapper: {\n background: theme.palette.common.white,\n borderRadius: theme.spacing(0.5),\n overflow: 'hidden'\n },\n launch: {\n marginLeft: theme.spacing(8)\n }\n}));\n\nexport const MttSummary = (props) => {\n const {\n timelineApiMethodInstanceId,\n insightPath = '/mtt-main',\n params\n } = props;\n const [data, setData] = useState([]);\n const [timelineThreads, setTimelineThreads] = useState(null);\n const [timeline, setTimeline] = useState(null);\n const [loading, setLoading] = useState(false);\n const [filters, setFilters] = useState([]);\n const [allFilters, setAllFilters] = useState([]);\n const [compact, setCompact] = useState(true);\n const [filterListGroup, setFilterListGroup] = useState();\n const [filterKey, setFilterKey] = useState(uuid());\n\n const classes = useStyles();\n const preloadLength = 11;\n\n const executeQueryInstance = useCallback(\n async (apiMethodInstanceId, data = {}) =>\n apiMutate(\n ConfigService.integrationV1ApiUrl,\n `apimethod/executeQueryInstance/${apiMethodInstanceId}`,\n {\n method: 'post'\n },\n { data: data }\n ),\n []\n );\n\n const summaryThreads = useMemo(() => {\n if (!timeline?.threads?.length) {\n return [];\n }\n\n setData(\n formatDataWithTimelineCategoryName(\n timeline.threads.filter((thread) => thread.inSummary)\n )\n );\n return timeline.threads.filter((thread) => thread.inSummary);\n }, [timeline]);\n\n const summaryEvents = useMemo(() => {\n if (!summaryThreads.length) {\n return [];\n }\n return summaryThreads.map((st) => st.events).flat();\n }, [summaryThreads]);\n\n // Get Filter Array\n let filterItems = [];\n summaryThreads &&\n summaryThreads.map((item) => {\n filterItems.push(item.name);\n });\n\n const addFilter = (filter) => {\n if (filters.includes(filter)) {\n const updatedFilter = filters.filter((e) => e !== filter);\n setFilters(updatedFilter);\n } else {\n setFilters([...filters, filter]);\n }\n };\n\n const clearFilters = useCallback(() => {\n setFilters([]);\n }, []);\n\n useEffect(() => {\n const fetchTimelineThreads = async () => {\n const timelineResponse = await executeQueryInstance(\n timelineApiMethodInstanceId\n );\n\n if (timelineResponse?.status === 200) {\n setTimelineThreads(timelineResponse?.data?.pageList || []);\n }\n };\n fetchTimelineThreads();\n }, [executeQueryInstance, timelineApiMethodInstanceId]);\n\n useEffect(() => {\n const fetchThreadEvents = async () => {\n if (!timelineThreads) {\n return null;\n }\n setLoading(true);\n const promises = [];\n const threadList = [];\n timelineThreads.forEach((thread) => {\n promises.push(executeQueryInstance(thread.queryID, { ...params }));\n });\n await Promise.all(\n promises.map((p) =>\n p.catch((e) => {\n setLoading(false);\n return e;\n })\n )\n ).then((responses) => {\n responses.forEach((response, index) => {\n if (response.status === 200) {\n const timelineThread = timelineThreads[index];\n if (response?.data?.pageList) {\n response.data.pageList.forEach(\n (evt) => (evt.threadId = timelineThread.name)\n );\n const thread = {\n ...timelineThread,\n events: response.data.pageList\n };\n threadList.push(thread);\n }\n }\n });\n setLoading(false);\n });\n setTimeline(createTimeline(threadList));\n // setData(formatDataWithTimelineCategoryName(threadList))\n };\n fetchThreadEvents();\n }, [executeQueryInstance, timelineThreads, params]);\n\n useEffect(() => {\n const filterList =\n summaryEvents &&\n summaryEvents.map((item) => {\n return item.threadId;\n });\n setAllFilters(filterList);\n setFilters(filterList);\n }, [summaryEvents]);\n\n useEffect(() => {\n const filterListGroup = [];\n summaryEvents &&\n summaryEvents.map((item) => {\n filterListGroup.push({\n name: item.threadId,\n icon: item.icon,\n color: item.color\n });\n });\n\n const key = 'name';\n\n const arrayUniqueByKey = [\n ...new Map(filterListGroup.map((item) => [item[key], item])).values()\n ];\n\n setFilterKey(uuid());\n setFilterListGroup(arrayUniqueByKey);\n }, [summaryEvents]);\n\n const mappedToDetails =\n data &&\n data\n .map((item) => item.dates)\n .flat()\n .map((item) => item.details)\n .flat();\n\n // for Skeleton preloading\n const summaryLength = summaryThreads.length || preloadLength;\n\n const getMembers = (members) => {\n let events = [];\n\n return members\n .map((mem) => {\n const m = { ...mem };\n if (m.events && m.events.length) {\n events = [...events, ...m.events];\n }\n delete m.events;\n return m;\n })\n .concat(events.length ? getMembers(events) : events);\n };\n\n getMembers(summaryThreads);\n\n const dataConvertedFilter =\n mappedToDetails &&\n mappedToDetails.filter((item) => filters?.includes(item.threadId));\n\n // Feed dataConvertedFilter into the grouping function (this should filter the array of objects before they are grouped)\n\n function groupByMonth(object) {\n let finalObject = [];\n object.forEach((el) => {\n let foundFlag = false;\n finalObject.forEach((foEl) => {\n if (\n foEl.month === el.date.split('/')[0] &&\n foEl.year === el.date.split('/')[2]\n ) {\n foEl.details.push(el);\n foundFlag = true;\n }\n });\n if (!foundFlag) {\n finalObject.push({\n month: el.date.split('/')[0],\n year: el.date.split('/')[2],\n details: [el]\n });\n }\n });\n\n return finalObject;\n }\n\n const SkeletonLoading = () => {\n return (\n <div style={{ marginRight: 48 }}>\n <LayoutUnit unit='nudge' />\n <div style={{ display: 'flex', justifyContent: 'center' }}>\n <Skeleton variant='circle' width={30} height={30} />\n </div>\n <LayoutUnit unit='nudge' />\n <div style={{ display: 'flex', justifyContent: 'center' }}>\n <Skeleton variant='rect' width={1} height={25} />\n </div>\n <Skeleton variant='text' />\n <Skeleton variant='text' />\n <LayoutUnit unit='sm' />\n <Skeleton variant='rect' width={80} height={6} />\n </div>\n );\n };\n\n const preLoading = [...Array(summaryLength).keys()].slice(1);\n\n const dataToSort = data && groupByMonth(dataConvertedFilter);\n\n const sorted = dataToSort.sort(\n (a, b) => a.year - b.year || a.month - b.month\n );\n\n const getYears = [];\n data &&\n dataToSort.map((item) => {\n getYears.push({ year: item.year });\n });\n\n const uniqueYears = [...new Set(getYears.map((item) => item.year))];\n\n return (\n <div>\n <div className={classes.wrapper}>\n {loading && <LinearProgress color='secondary' />}\n <CardContent>\n <div\n style={{\n display: 'flex',\n position: 'relative'\n }}\n >\n <div style={{ flex: 1 }}>\n <Typography variant='h6'>Timeline Summary</Typography>\n <LayoutUnit unit='md' />\n </div>\n\n <div style={{ display: 'flex' }}>\n <div key={filterKey}>\n <TimelineTopRowFilter\n compact={compact}\n setCompact={setCompact}\n onClose={() => setCompact(!compact)}\n filterCall={(type) => addFilter(type)}\n clear={clearFilters}\n filterList={filterItems && filterItems}\n filterListGroup={filterListGroup && filterListGroup}\n />\n </div>\n <div className={classes.launch}>\n <CircleButton\n component={Link}\n to={{\n pathname: insightPath,\n state: {\n timelineApiMethodInstanceId: timelineApiMethodInstanceId\n }\n }}\n >\n <RedEyeIcon />\n </CircleButton>\n </div>\n </div>\n </div>\n <div\n style={{ display: 'flex', overflow: 'scroll', direction: 'rtl' }}\n >\n <div style={{ direction: 'ltr', display: 'flex' }}>\n {loading &&\n preLoading.map((item) => {\n return <SkeletonLoading key={item} />;\n })}\n\n {uniqueYears.map((uniqueYear, index) => (\n <div style={{ display: 'flex' }}>\n {!loading && (\n <MttYearTag year count={12}>\n {uniqueYear}\n </MttYearTag>\n )}\n {summaryEvents &&\n data &&\n sorted.map((item) => {\n if (item.year === uniqueYears[index]) {\n return (\n <DateWrapper\n months={Number(item.month)}\n count={item.details.length}\n >\n {item.details.map((item) => {\n return (\n <div key={item.id}>\n <SummaryToken\n showMonth\n months={[item.date]}\n summary\n icon={\n <IconRenderer\n //noBorder\n removeMargin\n value={{\n color: { hex: '#' + item.color },\n //name: item.icon ? item.icon : 'MessageIcon',\n name: item.icon\n }}\n />\n }\n showToken\n status={\n item.data1 &&\n item.data1.toString().trim() !== ''\n ? null\n : Number(item.data2)\n }\n timelineItem={item.transactionType}\n title={item.shortDescription}\n date={item.date}\n dot={false}\n relative\n amount={item.data1}\n month={Number(item.date.charAt(0))}\n user={item.data3}\n balance={item.data4}\n hidebackground\n />\n </div>\n );\n })}\n </DateWrapper>\n );\n } else return null;\n })}\n </div>\n ))}\n </div>\n </div>\n </CardContent>\n </div>\n </div>\n );\n};\n\nMttSummary.propTypes = {\n timelineApiMethodInstanceId: PropTypes.string.isRequired\n};\n"],"mappings":";;;;;;;;;;;;;;;;AA2BA,MAAa,kBAAkB,YAAkC;AAC/D,QAAO,EAAE,SAAS;;;;;ACJpB,MAAM,YAAY,YAAY,WAAW;CACvC,MAAM,EAAE;CACR,SAAS;EACP,YAAY,MAAM,QAAQ,OAAO;EACjC,cAAc,MAAM,QAAQ,GAAI;EAChC,UAAU;EACX;CACD,QAAQ,EACN,YAAY,MAAM,QAAQ,EAAE,EAC7B;CACF,EAAE;AAEH,MAAa,cAAc,UAAU;CACnC,MAAM,EACJ,6BACA,cAAc,aACd,WACE;CACJ,MAAM,CAAC,MAAM,WAAW,SAAS,EAAE,CAAC;CACpC,MAAM,CAAC,iBAAiB,sBAAsB,SAAS,KAAK;CAC5D,MAAM,CAAC,UAAU,eAAe,SAAS,KAAK;CAC9C,MAAM,CAAC,SAAS,cAAc,SAAS,MAAM;CAC7C,MAAM,CAAC,SAAS,cAAc,SAAS,EAAE,CAAC;CAC1C,MAAM,CAAC,YAAY,iBAAiB,SAAS,EAAE,CAAC;CAChD,MAAM,CAAC,SAAS,cAAc,SAAS,KAAK;CAC5C,MAAM,CAAC,iBAAiB,sBAAsB,UAAU;CACxD,MAAM,CAAC,WAAW,gBAAgB,SAASA,IAAM,CAAC;CAElD,MAAM,UAAU,WAAW;CAC3B,MAAM,gBAAgB;CAEtB,MAAM,uBAAuB,YAC3B,OAAO,qBAAqB,SAAO,EAAE,KACnC,UACE,cAAc,qBACd,kCAAkC,uBAClC,EACE,QAAQ,QACT,EACD,EAAE,MAAMC,QAAM,CACf,EACH,EAAE,CACH;CAED,MAAM,iBAAiB,cAAc;AACnC,MAAI,CAAC,UAAU,SAAS,OACtB,QAAO,EAAE;AAGX,UACE,mCACE,SAAS,QAAQ,QAAQ,WAAW,OAAO,UAAU,CACtD,CACF;AACD,SAAO,SAAS,QAAQ,QAAQ,WAAW,OAAO,UAAU;IAC3D,CAAC,SAAS,CAAC;CAEd,MAAM,gBAAgB,cAAc;AAClC,MAAI,CAAC,eAAe,OAClB,QAAO,EAAE;AAEX,SAAO,eAAe,KAAK,OAAO,GAAG,OAAO,CAAC,MAAM;IAClD,CAAC,eAAe,CAAC;CAGpB,IAAI,cAAc,EAAE;AACpB,mBACE,eAAe,KAAK,SAAS;AAC3B,cAAY,KAAK,KAAK,KAAK;GAC3B;CAEJ,MAAM,aAAa,WAAW;AAC5B,MAAI,QAAQ,SAAS,OAAO,CAE1B,YADsB,QAAQ,QAAQ,MAAM,MAAM,OAAO,CAChC;MAEzB,YAAW,CAAC,GAAG,SAAS,OAAO,CAAC;;CAIpC,MAAM,eAAe,kBAAkB;AACrC,aAAW,EAAE,CAAC;IACb,EAAE,CAAC;AAEN,iBAAgB;EACd,MAAM,uBAAuB,YAAY;GACvC,MAAM,mBAAmB,MAAM,qBAC7B,4BACD;AAED,OAAI,kBAAkB,WAAW,IAC/B,oBAAmB,kBAAkB,MAAM,YAAY,EAAE,CAAC;;AAG9D,wBAAsB;IACrB,CAAC,sBAAsB,4BAA4B,CAAC;AAEvD,iBAAgB;EACd,MAAM,oBAAoB,YAAY;AACpC,OAAI,CAAC,gBACH,QAAO;AAET,cAAW,KAAK;GAChB,MAAM,WAAW,EAAE;GACnB,MAAM,aAAa,EAAE;AACrB,mBAAgB,SAAS,WAAW;AAClC,aAAS,KAAK,qBAAqB,OAAO,SAAS,EAAE,GAAG,QAAQ,CAAC,CAAC;KAClE;AACF,SAAM,QAAQ,IACZ,SAAS,KAAK,MACZ,EAAE,OAAO,MAAM;AACb,eAAW,MAAM;AACjB,WAAO;KACP,CACH,CACF,CAAC,MAAM,cAAc;AACpB,cAAU,SAAS,UAAU,UAAU;AACrC,SAAI,SAAS,WAAW,KAAK;MAC3B,MAAM,iBAAiB,gBAAgB;AACvC,UAAI,UAAU,MAAM,UAAU;AAC5B,gBAAS,KAAK,SAAS,SACpB,QAAS,IAAI,WAAW,eAAe,KACzC;OACD,MAAM,SAAS;QACb,GAAG;QACH,QAAQ,SAAS,KAAK;QACvB;AACD,kBAAW,KAAK,OAAO;;;MAG3B;AACF,eAAW,MAAM;KACjB;AACF,eAAY,eAAe,WAAW,CAAC;;AAGzC,qBAAmB;IAClB;EAAC;EAAsB;EAAiB;EAAO,CAAC;AAEnD,iBAAgB;EACd,MAAM,aACJ,iBACA,cAAc,KAAK,SAAS;AAC1B,UAAO,KAAK;IACZ;AACJ,gBAAc,WAAW;AACzB,aAAW,WAAW;IACrB,CAAC,cAAc,CAAC;AAEnB,iBAAgB;EACd,MAAMC,oBAAkB,EAAE;AAC1B,mBACE,cAAc,KAAK,SAAS;AAC1B,qBAAgB,KAAK;IACnB,MAAM,KAAK;IACX,MAAM,KAAK;IACX,OAAO,KAAK;IACb,CAAC;IACF;EAEJ,MAAM,MAAM;EAEZ,MAAM,mBAAmB,CACvB,GAAG,IAAI,IAAIA,kBAAgB,KAAK,SAAS,CAAC,KAAK,MAAM,KAAK,CAAC,CAAC,CAAC,QAAQ,CACtE;AAED,eAAaF,IAAM,CAAC;AACpB,qBAAmB,iBAAiB;IACnC,CAAC,cAAc,CAAC;CAEnB,MAAM,kBACJ,QACA,KACG,KAAK,SAAS,KAAK,MAAM,CACzB,MAAM,CACN,KAAK,SAAS,KAAK,QAAQ,CAC3B,MAAM;CAGX,MAAM,gBAAgB,eAAe,UAAU;CAE/C,MAAM,cAAc,YAAY;EAC9B,IAAI,SAAS,EAAE;AAEf,SAAO,QACJ,KAAK,QAAQ;GACZ,MAAM,IAAI,EAAE,GAAG,KAAK;AACpB,OAAI,EAAE,UAAU,EAAE,OAAO,OACvB,UAAS,CAAC,GAAG,QAAQ,GAAG,EAAE,OAAO;AAEnC,UAAO,EAAE;AACT,UAAO;IACP,CACD,OAAO,OAAO,SAAS,WAAW,OAAO,GAAG,OAAO;;AAGxD,YAAW,eAAe;CAE1B,MAAM,sBACJ,mBACA,gBAAgB,QAAQ,SAAS,SAAS,SAAS,KAAK,SAAS,CAAC;CAIpE,SAAS,aAAa,QAAQ;EAC5B,IAAI,cAAc,EAAE;AACpB,SAAO,SAAS,OAAO;GACrB,IAAI,YAAY;AAChB,eAAY,SAAS,SAAS;AAC5B,QACE,KAAK,UAAU,GAAG,KAAK,MAAM,IAAI,CAAC,MAClC,KAAK,SAAS,GAAG,KAAK,MAAM,IAAI,CAAC,IACjC;AACA,UAAK,QAAQ,KAAK,GAAG;AACrB,iBAAY;;KAEd;AACF,OAAI,CAAC,UACH,aAAY,KAAK;IACf,OAAO,GAAG,KAAK,MAAM,IAAI,CAAC;IAC1B,MAAM,GAAG,KAAK,MAAM,IAAI,CAAC;IACzB,SAAS,CAAC,GAAG;IACd,CAAC;IAEJ;AAEF,SAAO;;CAGT,MAAM,wBAAwB;AAC5B,SACE,oCAAC,SAAI,OAAO,EAAE,aAAa,IAAI,IAC7B,oCAAC,cAAW,MAAK,UAAU,EAC3B,oCAAC,SAAI,OAAO;GAAE,SAAS;GAAQ,gBAAgB;GAAU,IACvD,oCAAC;GAAS,SAAQ;GAAS,OAAO;GAAI,QAAQ;IAAM,CAChD,EACN,oCAAC,cAAW,MAAK,UAAU,EAC3B,oCAAC,SAAI,OAAO;GAAE,SAAS;GAAQ,gBAAgB;GAAU,IACvD,oCAAC;GAAS,SAAQ;GAAO,OAAO;GAAG,QAAQ;IAAM,CAC7C,EACN,oCAAC,YAAS,SAAQ,SAAS,EAC3B,oCAAC,YAAS,SAAQ,SAAS,EAC3B,oCAAC,cAAW,MAAK,OAAO,EACxB,oCAAC;GAAS,SAAQ;GAAO,OAAO;GAAI,QAAQ;IAAK,CAC7C;;CAIV,MAAM,aAAa,CAAC,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE;CAE5D,MAAM,aAAa,QAAQ,aAAa,oBAAoB;CAE5D,MAAM,SAAS,WAAW,MACvB,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAC1C;CAED,MAAM,WAAW,EAAE;AACnB,SACE,WAAW,KAAK,SAAS;AACvB,WAAS,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;GAClC;CAEJ,MAAM,cAAc,CAAC,GAAG,IAAI,IAAI,SAAS,KAAK,SAAS,KAAK,KAAK,CAAC,CAAC;AAEnE,QACE,oCAAC,aACC,oCAAC,SAAI,WAAW,QAAQ,WACrB,WAAW,oCAAC,kBAAe,OAAM,cAAc,EAChD,oCAAC,mBACC,oCAAC,SACC,OAAO;EACL,SAAS;EACT,UAAU;EACX,IAED,oCAAC,SAAI,OAAO,EAAE,MAAM,GAAG,IACrB,oCAAC,cAAW,SAAQ,QAAK,mBAA6B,EACtD,oCAAC,cAAW,MAAK,OAAO,CACpB,EAEN,oCAAC,SAAI,OAAO,EAAE,SAAS,QAAQ,IAC7B,oCAAC,SAAI,KAAK,aACR,oCAAC;EACU;EACG;EACZ,eAAe,WAAW,CAAC,QAAQ;EACnC,aAAa,SAAS,UAAU,KAAK;EACrC,OAAO;EACP,YAAY,eAAe;EAC3B,iBAAiB,mBAAmB;GACpC,CACE,EACN,oCAAC,SAAI,WAAW,QAAQ,UACtB,oCAAC;EACC,WAAWG;EACX,IAAI;GACF,UAAU;GACV,OAAO,EACwB,6BAC9B;GACF;IAED,oCAAC,iBAAa,CACD,CACX,CACF,CACF,EACN,oCAAC,SACC,OAAO;EAAE,SAAS;EAAQ,UAAU;EAAU,WAAW;EAAO,IAEhE,oCAAC,SAAI,OAAO;EAAE,WAAW;EAAO,SAAS;EAAQ,IAC9C,WACC,WAAW,KAAK,SAAS;AACvB,SAAO,oCAAC,mBAAgB,KAAK,OAAQ;GACrC,EAEH,YAAY,KAAK,YAAY,UAC5B,oCAAC,SAAI,OAAO,EAAE,SAAS,QAAQ,IAC5B,CAAC,WACA,oCAAC;EAAW;EAAK,OAAO;IACrB,WACU,EAEd,iBACC,QACA,OAAO,KAAK,SAAS;AACnB,MAAI,KAAK,SAAS,YAAY,OAC5B,QACE,oCAAC;GACC,QAAQ,OAAO,KAAK,MAAM;GAC1B,OAAO,KAAK,QAAQ;KAEnB,KAAK,QAAQ,KAAK,WAAS;AAC1B,UACE,oCAAC,SAAI,KAAKC,OAAK,MACb,oCAAC;IACC;IACA,QAAQ,CAACA,OAAK,KAAK;IACnB;IACA,MACE,oCAAC;KAEC;KACA,OAAO;MACL,OAAO,EAAE,KAAK,MAAMA,OAAK,OAAO;MAEhC,MAAMA,OAAK;MACZ;MACD;IAEJ;IACA,QACEA,OAAK,SACLA,OAAK,MAAM,UAAU,CAAC,MAAM,KAAK,KAC7B,OACA,OAAOA,OAAK,MAAM;IAExB,cAAcA,OAAK;IACnB,OAAOA,OAAK;IACZ,MAAMA,OAAK;IACX,KAAK;IACL;IACA,QAAQA,OAAK;IACb,OAAO,OAAOA,OAAK,KAAK,OAAO,EAAE,CAAC;IAClC,MAAMA,OAAK;IACX,SAASA,OAAK;IACd;KACA,CACE;IAER,CACU;MAEX,QAAO;GACd,CACA,CACN,CACE,CACF,CACM,CACV,CACF;;AAIV,WAAW,YAAY,EACrB,6BAA6B,UAAU,OAAO,YAC/C"}
|
|
1
|
+
{"version":3,"file":"MttSummary-CGTFEyQB.js","names":["uuid","data","filterListGroup","Link","item"],"sources":["../src/componentSystems/multiThreadTimeline/timeline.ts","../src/componentSystems/multiThreadTimeline/mttSummary/MttSummary.jsx"],"sourcesContent":["interface Event {\n id: string | undefined;\n eventTypeID: string | undefined;\n primaryContextID: string | undefined;\n secondaryContextID: string | undefined;\n date: string | undefined;\n transactionType: string | undefined;\n description: string | undefined;\n shortDescription: string | undefined;\n status: number | undefined;\n data1: '';\n}\n\ninterface Thread {\n id: string | undefined;\n name: string | undefined;\n inSummary: boolean;\n queryID: string | undefined;\n iconID: string | undefined;\n mttConfigID: string | undefined;\n events: Array<Event> | undefined;\n}\n\nexport interface Timeline {\n threads: Array<Thread> | undefined;\n}\n\nexport const createTimeline = (threads: Array<any>): Timeline => {\n return { threads };\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { apiMutate } from '../../../utilities/useAxiosMutate';\nimport { IconRenderer } from '../../../UI/templates/ui/renderers/IconRenderer';\nimport { LayoutUnit } from '../../../layout/LayoutUnit';\nimport { createTimeline } from '../timeline.ts';\nimport { SummaryToken } from '../ui/SummaryToken';\nimport {\n CardContent,\n LinearProgress,\n Typography,\n makeStyles\n} from '@material-ui/core';\nimport Skeleton from '@material-ui/lab/Skeleton';\nimport { TimelineTopRowFilter } from '../ui/TimelineTopRowFilter';\nimport { DateWrapper } from '../ui/DateWrapper';\nimport { CircleButton } from '../ui/CircleButton';\nimport { RedEyeIcon } from '@fluentui/react-icons';\nimport { Link } from 'react-router-dom';\nimport { formatDataWithTimelineCategoryName } from '../functions/mttFunctions';\nimport { MttYearTag } from '../ui/MttYearTag';\nimport PropTypes from 'prop-types';\nimport { v4 as uuid } from 'uuid';\nimport { ConfigService } from '../../../configService';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n wrapper: {\n background: theme.palette.common.white,\n borderRadius: theme.spacing(0.5),\n overflow: 'hidden'\n },\n launch: {\n marginLeft: theme.spacing(8)\n }\n}));\n\nexport const MttSummary = (props) => {\n const {\n timelineApiMethodInstanceId,\n insightPath = '/mtt-main',\n params\n } = props;\n const [data, setData] = useState([]);\n const [timelineThreads, setTimelineThreads] = useState(null);\n const [timeline, setTimeline] = useState(null);\n const [loading, setLoading] = useState(false);\n const [filters, setFilters] = useState([]);\n const [allFilters, setAllFilters] = useState([]);\n const [compact, setCompact] = useState(true);\n const [filterListGroup, setFilterListGroup] = useState();\n const [filterKey, setFilterKey] = useState(uuid());\n\n const classes = useStyles();\n const preloadLength = 11;\n\n const executeQueryInstance = useCallback(\n async (apiMethodInstanceId, data = {}) =>\n apiMutate(\n ConfigService.integrationV1ApiUrl,\n `apimethod/executeQueryInstance/${apiMethodInstanceId}`,\n {\n method: 'post'\n },\n { data: data }\n ),\n []\n );\n\n const summaryThreads = useMemo(() => {\n if (!timeline?.threads?.length) {\n return [];\n }\n\n setData(\n formatDataWithTimelineCategoryName(\n timeline.threads.filter((thread) => thread.inSummary)\n )\n );\n return timeline.threads.filter((thread) => thread.inSummary);\n }, [timeline]);\n\n const summaryEvents = useMemo(() => {\n if (!summaryThreads.length) {\n return [];\n }\n return summaryThreads.map((st) => st.events).flat();\n }, [summaryThreads]);\n\n // Get Filter Array\n let filterItems = [];\n summaryThreads &&\n summaryThreads.map((item) => {\n filterItems.push(item.name);\n });\n\n const addFilter = (filter) => {\n if (filters.includes(filter)) {\n const updatedFilter = filters.filter((e) => e !== filter);\n setFilters(updatedFilter);\n } else {\n setFilters([...filters, filter]);\n }\n };\n\n const clearFilters = useCallback(() => {\n setFilters([]);\n }, []);\n\n useEffect(() => {\n const fetchTimelineThreads = async () => {\n const timelineResponse = await executeQueryInstance(\n timelineApiMethodInstanceId\n );\n\n if (timelineResponse?.status === 200) {\n setTimelineThreads(timelineResponse?.data?.pageList || []);\n }\n };\n fetchTimelineThreads();\n }, [executeQueryInstance, timelineApiMethodInstanceId]);\n\n useEffect(() => {\n const fetchThreadEvents = async () => {\n if (!timelineThreads) {\n return null;\n }\n setLoading(true);\n const promises = [];\n const threadList = [];\n timelineThreads.forEach((thread) => {\n promises.push(executeQueryInstance(thread.queryID, { ...params }));\n });\n await Promise.all(\n promises.map((p) =>\n p.catch((e) => {\n setLoading(false);\n return e;\n })\n )\n ).then((responses) => {\n responses.forEach((response, index) => {\n if (response.status === 200) {\n const timelineThread = timelineThreads[index];\n if (response?.data?.pageList) {\n response.data.pageList.forEach(\n (evt) => (evt.threadId = timelineThread.name)\n );\n const thread = {\n ...timelineThread,\n events: response.data.pageList\n };\n threadList.push(thread);\n }\n }\n });\n setLoading(false);\n });\n setTimeline(createTimeline(threadList));\n // setData(formatDataWithTimelineCategoryName(threadList))\n };\n fetchThreadEvents();\n }, [executeQueryInstance, timelineThreads, params]);\n\n useEffect(() => {\n const filterList =\n summaryEvents &&\n summaryEvents.map((item) => {\n return item.threadId;\n });\n setAllFilters(filterList);\n setFilters(filterList);\n }, [summaryEvents]);\n\n useEffect(() => {\n const filterListGroup = [];\n summaryEvents &&\n summaryEvents.map((item) => {\n filterListGroup.push({\n name: item.threadId,\n icon: item.icon,\n color: item.color\n });\n });\n\n const key = 'name';\n\n const arrayUniqueByKey = [\n ...new Map(filterListGroup.map((item) => [item[key], item])).values()\n ];\n\n setFilterKey(uuid());\n setFilterListGroup(arrayUniqueByKey);\n }, [summaryEvents]);\n\n const mappedToDetails =\n data &&\n data\n .map((item) => item.dates)\n .flat()\n .map((item) => item.details)\n .flat();\n\n // for Skeleton preloading\n const summaryLength = summaryThreads.length || preloadLength;\n\n const getMembers = (members) => {\n let events = [];\n\n return members\n .map((mem) => {\n const m = { ...mem };\n if (m.events && m.events.length) {\n events = [...events, ...m.events];\n }\n delete m.events;\n return m;\n })\n .concat(events.length ? getMembers(events) : events);\n };\n\n getMembers(summaryThreads);\n\n const dataConvertedFilter =\n mappedToDetails &&\n mappedToDetails.filter((item) => filters?.includes(item.threadId));\n\n // Feed dataConvertedFilter into the grouping function (this should filter the array of objects before they are grouped)\n\n function groupByMonth(object) {\n let finalObject = [];\n object.forEach((el) => {\n let foundFlag = false;\n finalObject.forEach((foEl) => {\n if (\n foEl.month === el.date.split('/')[0] &&\n foEl.year === el.date.split('/')[2]\n ) {\n foEl.details.push(el);\n foundFlag = true;\n }\n });\n if (!foundFlag) {\n finalObject.push({\n month: el.date.split('/')[0],\n year: el.date.split('/')[2],\n details: [el]\n });\n }\n });\n\n return finalObject;\n }\n\n const SkeletonLoading = () => {\n return (\n <div style={{ marginRight: 48 }}>\n <LayoutUnit unit='nudge' />\n <div style={{ display: 'flex', justifyContent: 'center' }}>\n <Skeleton variant='circle' width={30} height={30} />\n </div>\n <LayoutUnit unit='nudge' />\n <div style={{ display: 'flex', justifyContent: 'center' }}>\n <Skeleton variant='rect' width={1} height={25} />\n </div>\n <Skeleton variant='text' />\n <Skeleton variant='text' />\n <LayoutUnit unit='sm' />\n <Skeleton variant='rect' width={80} height={6} />\n </div>\n );\n };\n\n const preLoading = [...Array(summaryLength).keys()].slice(1);\n\n const dataToSort = data && groupByMonth(dataConvertedFilter);\n\n const sorted = dataToSort.sort(\n (a, b) => a.year - b.year || a.month - b.month\n );\n\n const getYears = [];\n data &&\n dataToSort.map((item) => {\n getYears.push({ year: item.year });\n });\n\n const uniqueYears = [...new Set(getYears.map((item) => item.year))];\n\n return (\n <div>\n <div className={classes.wrapper}>\n {loading && <LinearProgress color='secondary' />}\n <CardContent>\n <div\n style={{\n display: 'flex',\n position: 'relative'\n }}\n >\n <div style={{ flex: 1 }}>\n <Typography variant='h6'>Timeline Summary</Typography>\n <LayoutUnit unit='md' />\n </div>\n\n <div style={{ display: 'flex' }}>\n <div key={filterKey}>\n <TimelineTopRowFilter\n compact={compact}\n setCompact={setCompact}\n onClose={() => setCompact(!compact)}\n filterCall={(type) => addFilter(type)}\n clear={clearFilters}\n filterList={filterItems && filterItems}\n filterListGroup={filterListGroup && filterListGroup}\n />\n </div>\n <div className={classes.launch}>\n <CircleButton\n component={Link}\n to={{\n pathname: insightPath,\n state: {\n timelineApiMethodInstanceId: timelineApiMethodInstanceId\n }\n }}\n >\n <RedEyeIcon />\n </CircleButton>\n </div>\n </div>\n </div>\n <div\n style={{ display: 'flex', overflow: 'scroll', direction: 'rtl' }}\n >\n <div style={{ direction: 'ltr', display: 'flex' }}>\n {loading &&\n preLoading.map((item) => {\n return <SkeletonLoading key={item} />;\n })}\n\n {uniqueYears.map((uniqueYear, index) => (\n <div style={{ display: 'flex' }}>\n {!loading && (\n <MttYearTag year count={12}>\n {uniqueYear}\n </MttYearTag>\n )}\n {summaryEvents &&\n data &&\n sorted.map((item) => {\n if (item.year === uniqueYears[index]) {\n return (\n <DateWrapper\n months={Number(item.month)}\n count={item.details.length}\n >\n {item.details.map((item) => {\n return (\n <div key={item.id}>\n <SummaryToken\n showMonth\n months={[item.date]}\n summary\n icon={\n <IconRenderer\n //noBorder\n removeMargin\n value={{\n color: { hex: '#' + item.color },\n //name: item.icon ? item.icon : 'MessageIcon',\n name: item.icon\n }}\n />\n }\n showToken\n status={\n item.data1 &&\n item.data1.toString().trim() !== ''\n ? null\n : Number(item.data2)\n }\n timelineItem={item.transactionType}\n title={item.shortDescription}\n date={item.date}\n dot={false}\n relative\n amount={item.data1}\n month={Number(item.date.charAt(0))}\n user={item.data3}\n balance={item.data4}\n hidebackground\n />\n </div>\n );\n })}\n </DateWrapper>\n );\n } else return null;\n })}\n </div>\n ))}\n </div>\n </div>\n </CardContent>\n </div>\n </div>\n );\n};\n\nMttSummary.propTypes = {\n timelineApiMethodInstanceId: PropTypes.string.isRequired\n};\n"],"mappings":"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"}
|
|
@@ -6,11 +6,11 @@ import { t as useAxiosGet } from "./useAxiosGet-vvPjwB4W.js";
|
|
|
6
6
|
import { i as executeQueryWithParameters } from "./methodUtils-Cwo_kmVX.js";
|
|
7
7
|
import { t as FluentDialog } from "./FluentDialog-B5ZxvX1E.js";
|
|
8
8
|
import { t as ActionsRenderer } from "./ActionsRenderer-B1ImXko3.js";
|
|
9
|
-
import { t as TableContainer } from "./TableContainer-
|
|
9
|
+
import { t as TableContainer } from "./TableContainer-DugYuSJF.js";
|
|
10
10
|
import { t as AmbientAutoComplete } from "./AmbientAutoComplete-PIhfakyF.js";
|
|
11
11
|
import { t as AmbientAlert } from "./AmbientAlert-y6SJHOpb.js";
|
|
12
12
|
import { t as EmptyStateDisplay } from "./EmptyStateDisplay-Dpho9v6S.js";
|
|
13
|
-
import { t as StatusCellRenderer } from "./StatusCellRenderer-
|
|
13
|
+
import { t as StatusCellRenderer } from "./StatusCellRenderer-DDWwna7U.js";
|
|
14
14
|
import React, { useCallback, useEffect, useMemo, useState } from "react";
|
|
15
15
|
import { DownloadIcon, ErrorIcon, StatusCircleCheckmarkIcon } from "@fluentui/react-icons";
|
|
16
16
|
|
|
@@ -213,4 +213,4 @@ var MyExportsPage_default = MyExportsPage;
|
|
|
213
213
|
|
|
214
214
|
//#endregion
|
|
215
215
|
export { MyExportsPage_default as n, MyExportsPage as t };
|
|
216
|
-
//# sourceMappingURL=MyExportsPage-
|
|
216
|
+
//# sourceMappingURL=MyExportsPage-DKkxU7yl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MyExportsPage-Aapj7fCZ.js","names":[],"sources":["../src/udp/export/MyExportsPage.jsx"],"sourcesContent":["import React, { useMemo, useState, useCallback, useEffect } from 'react';\nimport {\n StatusCircleCheckmarkIcon,\n ErrorIcon,\n DownloadIcon\n} from '@fluentui/react-icons';\nimport { getSanitizedName } from '../../utilities/entities/entityUtilities';\nimport { FluentDialog } from '../../UI/feedback/FluentDialog';\nimport { EmptyStateDisplay } from '../../UI/dataDisplay/EmptyStateDisplay';\nimport { useAxiosGet } from '../../utilities/useAxiosGet';\nimport { ActionsRenderer } from '../../UI/templates/ui/renderers/ActionsRenderer';\nimport { AmbientAlert } from '../../UI/feedback/AmbientAlert';\nimport { TableContainer } from '../../maintenanceEngine/tableBrowser/TableContainer';\nimport { StatusCellRenderer } from '../../UI/templates/ui/renderers/StatusCellRenderer';\nimport { useUser } from '../../utilities/auth/useUser';\nimport { AmbientAutoComplete } from '../../UI/inputs/textField/AmbientAutoComplete';\nimport { executeQueryWithParameters } from '../utilities/methodUtils';\nimport { useHandleAxiosSnackbar } from '../../utilities/apiHelpers';\nimport { ConfigService } from '../../configService';\n\nexport const MyExportsPage = (props) => {\n const { productId } = props;\n const user = useUser();\n const [product, setProduct] = useState();\n const [downloadLinkLoading, setDownloadLinkLoading] = useState(false);\n const [fileResultData, setFileResultData] = useState();\n const [downloadOpen, setDownloadOpen] = useState(false);\n const [noDownloadMethod, setNoDownloadMethod] = useState(false);\n\n const { handleErrorSnackbar, handleSuccessSnackbar } =\n useHandleAxiosSnackbar();\n\n const [{ data: products, loading: productsLoading }] = useAxiosGet(\n ConfigService.tenantV2ApiUrl,\n `tenant/products?tenantId=${user?.currentTenantId}&isSubscribable=${!user\n ?.can?.CAN_MANAGE_CATALOGS_FOR_UNSUBSCRIBABLE_PRODUCTS}`,\n {},\n !user\n );\n\n const [{ data: apiCatalog, loading: catalogLoading, error: catalogError }] =\n useAxiosGet(\n ConfigService.integrationV1ApiUrl,\n `tenantProductApiCatalogBase/tenant/${user?.currentTenantId}/product/${\n productId ? productId : product?.productId\n }`,\n {},\n !(product || productId),\n false\n );\n\n const [{ data: udpJobEntity, loading: jobEntityLoading }] = useAxiosGet(\n ConfigService.integrationV1ApiUrl,\n `apicatalog/${apiCatalog?.apiCatalogId}/promotedMethodEntities/udpJob/product/${apiCatalog?.productId}?compareSanitizedName=true`,\n {},\n !apiCatalog?.productId || !apiCatalog?.apiCatalogId,\n false\n );\n\n const refetchfileResultData = useCallback(\n async (selectedRecord) => {\n if (udpJobEntity?.unityBaseGetFileResultMethod?.apiMethodId) {\n setDownloadLinkLoading(true);\n await executeQueryWithParameters(\n {\n data: { JobId: selectedRecord?.id }\n },\n udpJobEntity?.unityBaseGetFileResultMethod?.apiMethodId\n )\n .then((res) => {\n setFileResultData(res.data);\n })\n .catch((err) => {});\n setDownloadLinkLoading(false);\n } else {\n setNoDownloadMethod(true);\n }\n },\n [udpJobEntity?.unityBaseGetFileResultMethod?.apiMethodId]\n );\n\n const handleSelectRecord = useCallback(\n (data) => {\n refetchfileResultData(data);\n setDownloadOpen(true);\n },\n [refetchfileResultData]\n );\n\n const getOptionLabel = (val) => {\n return val?.name;\n };\n\n const handleProductChange = useCallback((val) => {\n setProduct(val);\n }, []);\n\n const handleFileDownload = useCallback(() => {\n if (fileResultData?.link) {\n const link = document.createElement('a');\n link.href = fileResultData?.link;\n link.download = '';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n setDownloadOpen(false);\n handleSuccessSnackbar('File successfully downloaded');\n }\n }, [fileResultData?.link, handleSuccessSnackbar]);\n\n const getJobStatus = (value) => {\n if (value === 1) {\n return null;\n } else if (value === 2) {\n return 'info';\n } else if (value === 3) {\n return 'success';\n } else if (value === 4) {\n return 'error';\n }\n };\n\n const getJobLabel = (value) => {\n if (value === 1) {\n return 'Pending';\n } else if (value === 2) {\n return 'Running';\n } else if (value === 3) {\n return 'Completed';\n } else if (value === 4) {\n return 'Failed';\n }\n };\n\n useEffect(() => {\n if (catalogError) {\n handleErrorSnackbar(\n '',\n 'Error fetching catalog for the selected product'\n );\n }\n }, [catalogError, handleErrorSnackbar]);\n\n const filterElements = useMemo(() => {\n return [\n {\n searchField: 'jobTypeId',\n searchOperator: '=',\n searchValue: 2\n }\n ];\n }, []);\n\n const actionList = useMemo(() => {\n return [\n {\n id: 1,\n title: 'Download',\n icon: DownloadIcon,\n onClick: handleSelectRecord,\n disabled: false,\n checkDisabled: (value) => value?.statusId !== 3\n }\n ];\n }, [handleSelectRecord]);\n\n const columnDefs = useMemo(\n () => [\n {\n headerName: 'Id',\n sortable: true,\n field: 'id',\n suppressMenu: true\n },\n {\n headerName: 'Name',\n sortable: false,\n field: 'name',\n minWidth: 140,\n suppressMenu: true,\n valueFormatter: (data) => getSanitizedName(data.data.name)\n },\n {\n headerName: 'Date',\n sortable: false,\n valueFormatter: (data) =>\n new Date(data.data.startTime).toLocaleString(),\n minWidth: 130,\n suppressMenu: true\n //sort: 'desc',\n },\n {\n headerName: 'Status',\n field: 'statusId',\n wrapText: true,\n autoHeight: true,\n sortable: false,\n cellRenderer: 'statusCellRenderer',\n cellRendererParams: { getStatus: getJobStatus, getLabel: getJobLabel },\n minWidth: 130,\n maxWidth: 130,\n suppressMenu: true\n },\n\n {\n headerName: 'Actions',\n filter: false,\n pinned: 'right',\n cellRenderer: 'actionsRenderer',\n width: 120,\n maxWidth: 120,\n cellRendererParams: {\n actionList: actionList,\n value: (data) => data\n },\n suppressMenu: true,\n sortable: false,\n cellStyle: { display: 'flex', alignItems: 'center' }\n }\n ],\n [actionList]\n );\n\n return (\n <div>\n {udpJobEntity && !udpJobEntity?.unityBaseSearchMethod?.apiMethodId && (\n <AmbientAlert\n alertMessage={\"UdpJob's search method must be promoted\"}\n showAlert={true}\n alertSeverity={'error'}\n />\n )}\n\n {!productId && (\n <div style={{ margin: '0px 5px 5px 5px' }}>\n <AmbientAutoComplete\n isMultiple={false}\n id={'product'}\n name={'product'}\n label='Product'\n onChange={handleProductChange}\n options={products}\n size='small'\n getOptionLabelFunction={getOptionLabel}\n value={product}\n required\n />\n </div>\n )}\n <TableContainer\n loading={productsLoading || catalogLoading || jobEntityLoading}\n title={`Exports`}\n isServerSide={true}\n eagerLoad={false}\n logicalSearchOperator={2}\n promotedEntity={udpJobEntity}\n filterElements={filterElements}\n actionList={actionList}\n customColumnDefs={columnDefs}\n frameworkComponents={{\n statusCellRenderer: StatusCellRenderer,\n actionsRenderer: ActionsRenderer\n }}\n hideSearchBar\n hiddenActionButtons={[\n 'saveView',\n 'views',\n 'insights',\n 'importExport',\n 'group',\n 'filter',\n 'columns',\n 'clearFilters',\n 'fitGrid',\n 'expandGrid'\n ]}\n height={'calc(100vh - 167px)'}\n dynamicSizing\n />\n <FluentDialog\n actionOne={handleFileDownload}\n actionTwo={() => setDownloadOpen(false)}\n labelOne='Download'\n labelTwo='Cancel'\n open={downloadOpen}\n handleClose={() => setDownloadOpen(false)}\n disableOne={noDownloadMethod || downloadLinkLoading}\n progress={downloadLinkLoading}\n fullWidth\n >\n {noDownloadMethod ? (\n <AmbientAlert\n alertMessage={\"UdpJob's get file result method must be promoted\"}\n showAlert={true}\n alertSeverity={'error'}\n />\n ) : downloadLinkLoading ? (\n <EmptyStateDisplay primaryText={'Fetching download link...'} />\n ) : (\n <EmptyStateDisplay\n icon={noDownloadMethod ? ErrorIcon : StatusCircleCheckmarkIcon}\n primaryText={!noDownloadMethod && 'File is ready to download!'}\n />\n )}\n </FluentDialog>\n </div>\n );\n};\n\nexport default MyExportsPage;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MyExportsPage-DKkxU7yl.js","names":[],"sources":["../src/udp/export/MyExportsPage.jsx"],"sourcesContent":["import React, { useMemo, useState, useCallback, useEffect } from 'react';\nimport {\n StatusCircleCheckmarkIcon,\n ErrorIcon,\n DownloadIcon\n} from '@fluentui/react-icons';\nimport { getSanitizedName } from '../../utilities/entities/entityUtilities';\nimport { FluentDialog } from '../../UI/feedback/FluentDialog';\nimport { EmptyStateDisplay } from '../../UI/dataDisplay/EmptyStateDisplay';\nimport { useAxiosGet } from '../../utilities/useAxiosGet';\nimport { ActionsRenderer } from '../../UI/templates/ui/renderers/ActionsRenderer';\nimport { AmbientAlert } from '../../UI/feedback/AmbientAlert';\nimport { TableContainer } from '../../maintenanceEngine/tableBrowser/TableContainer';\nimport { StatusCellRenderer } from '../../UI/templates/ui/renderers/StatusCellRenderer';\nimport { useUser } from '../../utilities/auth/useUser';\nimport { AmbientAutoComplete } from '../../UI/inputs/textField/AmbientAutoComplete';\nimport { executeQueryWithParameters } from '../utilities/methodUtils';\nimport { useHandleAxiosSnackbar } from '../../utilities/apiHelpers';\nimport { ConfigService } from '../../configService';\n\nexport const MyExportsPage = (props) => {\n const { productId } = props;\n const user = useUser();\n const [product, setProduct] = useState();\n const [downloadLinkLoading, setDownloadLinkLoading] = useState(false);\n const [fileResultData, setFileResultData] = useState();\n const [downloadOpen, setDownloadOpen] = useState(false);\n const [noDownloadMethod, setNoDownloadMethod] = useState(false);\n\n const { handleErrorSnackbar, handleSuccessSnackbar } =\n useHandleAxiosSnackbar();\n\n const [{ data: products, loading: productsLoading }] = useAxiosGet(\n ConfigService.tenantV2ApiUrl,\n `tenant/products?tenantId=${user?.currentTenantId}&isSubscribable=${!user\n ?.can?.CAN_MANAGE_CATALOGS_FOR_UNSUBSCRIBABLE_PRODUCTS}`,\n {},\n !user\n );\n\n const [{ data: apiCatalog, loading: catalogLoading, error: catalogError }] =\n useAxiosGet(\n ConfigService.integrationV1ApiUrl,\n `tenantProductApiCatalogBase/tenant/${user?.currentTenantId}/product/${\n productId ? productId : product?.productId\n }`,\n {},\n !(product || productId),\n false\n );\n\n const [{ data: udpJobEntity, loading: jobEntityLoading }] = useAxiosGet(\n ConfigService.integrationV1ApiUrl,\n `apicatalog/${apiCatalog?.apiCatalogId}/promotedMethodEntities/udpJob/product/${apiCatalog?.productId}?compareSanitizedName=true`,\n {},\n !apiCatalog?.productId || !apiCatalog?.apiCatalogId,\n false\n );\n\n const refetchfileResultData = useCallback(\n async (selectedRecord) => {\n if (udpJobEntity?.unityBaseGetFileResultMethod?.apiMethodId) {\n setDownloadLinkLoading(true);\n await executeQueryWithParameters(\n {\n data: { JobId: selectedRecord?.id }\n },\n udpJobEntity?.unityBaseGetFileResultMethod?.apiMethodId\n )\n .then((res) => {\n setFileResultData(res.data);\n })\n .catch((err) => {});\n setDownloadLinkLoading(false);\n } else {\n setNoDownloadMethod(true);\n }\n },\n [udpJobEntity?.unityBaseGetFileResultMethod?.apiMethodId]\n );\n\n const handleSelectRecord = useCallback(\n (data) => {\n refetchfileResultData(data);\n setDownloadOpen(true);\n },\n [refetchfileResultData]\n );\n\n const getOptionLabel = (val) => {\n return val?.name;\n };\n\n const handleProductChange = useCallback((val) => {\n setProduct(val);\n }, []);\n\n const handleFileDownload = useCallback(() => {\n if (fileResultData?.link) {\n const link = document.createElement('a');\n link.href = fileResultData?.link;\n link.download = '';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n setDownloadOpen(false);\n handleSuccessSnackbar('File successfully downloaded');\n }\n }, [fileResultData?.link, handleSuccessSnackbar]);\n\n const getJobStatus = (value) => {\n if (value === 1) {\n return null;\n } else if (value === 2) {\n return 'info';\n } else if (value === 3) {\n return 'success';\n } else if (value === 4) {\n return 'error';\n }\n };\n\n const getJobLabel = (value) => {\n if (value === 1) {\n return 'Pending';\n } else if (value === 2) {\n return 'Running';\n } else if (value === 3) {\n return 'Completed';\n } else if (value === 4) {\n return 'Failed';\n }\n };\n\n useEffect(() => {\n if (catalogError) {\n handleErrorSnackbar(\n '',\n 'Error fetching catalog for the selected product'\n );\n }\n }, [catalogError, handleErrorSnackbar]);\n\n const filterElements = useMemo(() => {\n return [\n {\n searchField: 'jobTypeId',\n searchOperator: '=',\n searchValue: 2\n }\n ];\n }, []);\n\n const actionList = useMemo(() => {\n return [\n {\n id: 1,\n title: 'Download',\n icon: DownloadIcon,\n onClick: handleSelectRecord,\n disabled: false,\n checkDisabled: (value) => value?.statusId !== 3\n }\n ];\n }, [handleSelectRecord]);\n\n const columnDefs = useMemo(\n () => [\n {\n headerName: 'Id',\n sortable: true,\n field: 'id',\n suppressMenu: true\n },\n {\n headerName: 'Name',\n sortable: false,\n field: 'name',\n minWidth: 140,\n suppressMenu: true,\n valueFormatter: (data) => getSanitizedName(data.data.name)\n },\n {\n headerName: 'Date',\n sortable: false,\n valueFormatter: (data) =>\n new Date(data.data.startTime).toLocaleString(),\n minWidth: 130,\n suppressMenu: true\n //sort: 'desc',\n },\n {\n headerName: 'Status',\n field: 'statusId',\n wrapText: true,\n autoHeight: true,\n sortable: false,\n cellRenderer: 'statusCellRenderer',\n cellRendererParams: { getStatus: getJobStatus, getLabel: getJobLabel },\n minWidth: 130,\n maxWidth: 130,\n suppressMenu: true\n },\n\n {\n headerName: 'Actions',\n filter: false,\n pinned: 'right',\n cellRenderer: 'actionsRenderer',\n width: 120,\n maxWidth: 120,\n cellRendererParams: {\n actionList: actionList,\n value: (data) => data\n },\n suppressMenu: true,\n sortable: false,\n cellStyle: { display: 'flex', alignItems: 'center' }\n }\n ],\n [actionList]\n );\n\n return (\n <div>\n {udpJobEntity && !udpJobEntity?.unityBaseSearchMethod?.apiMethodId && (\n <AmbientAlert\n alertMessage={\"UdpJob's search method must be promoted\"}\n showAlert={true}\n alertSeverity={'error'}\n />\n )}\n\n {!productId && (\n <div style={{ margin: '0px 5px 5px 5px' }}>\n <AmbientAutoComplete\n isMultiple={false}\n id={'product'}\n name={'product'}\n label='Product'\n onChange={handleProductChange}\n options={products}\n size='small'\n getOptionLabelFunction={getOptionLabel}\n value={product}\n required\n />\n </div>\n )}\n <TableContainer\n loading={productsLoading || catalogLoading || jobEntityLoading}\n title={`Exports`}\n isServerSide={true}\n eagerLoad={false}\n logicalSearchOperator={2}\n promotedEntity={udpJobEntity}\n filterElements={filterElements}\n actionList={actionList}\n customColumnDefs={columnDefs}\n frameworkComponents={{\n statusCellRenderer: StatusCellRenderer,\n actionsRenderer: ActionsRenderer\n }}\n hideSearchBar\n hiddenActionButtons={[\n 'saveView',\n 'views',\n 'insights',\n 'importExport',\n 'group',\n 'filter',\n 'columns',\n 'clearFilters',\n 'fitGrid',\n 'expandGrid'\n ]}\n height={'calc(100vh - 167px)'}\n dynamicSizing\n />\n <FluentDialog\n actionOne={handleFileDownload}\n actionTwo={() => setDownloadOpen(false)}\n labelOne='Download'\n labelTwo='Cancel'\n open={downloadOpen}\n handleClose={() => setDownloadOpen(false)}\n disableOne={noDownloadMethod || downloadLinkLoading}\n progress={downloadLinkLoading}\n fullWidth\n >\n {noDownloadMethod ? (\n <AmbientAlert\n alertMessage={\"UdpJob's get file result method must be promoted\"}\n showAlert={true}\n alertSeverity={'error'}\n />\n ) : downloadLinkLoading ? (\n <EmptyStateDisplay primaryText={'Fetching download link...'} />\n ) : (\n <EmptyStateDisplay\n icon={noDownloadMethod ? ErrorIcon : StatusCircleCheckmarkIcon}\n primaryText={!noDownloadMethod && 'File is ready to download!'}\n />\n )}\n </FluentDialog>\n </div>\n );\n};\n\nexport default MyExportsPage;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewsCard-
|
|
1
|
+
{"version":3,"file":"NewsCard-C4g0OUT_.js","names":[],"sources":["../src/UI/surfaces/cards/newsCard/NewsCard.jsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { Typography, makeStyles, Collapse, Divider } from '@material-ui/core'\nimport PropTypes from 'prop-types'\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n '&:hover': {\n backgroundColor: theme.palette.secondary.main,\n color: theme?.palette?.getContrastText(theme.palette.secondary.main)\n }\n },\n title: {\n lineHeight: 1.2,\n marginBottom: theme.spacing(1.5)\n },\n number: {\n marginRight: 16,\n paddingLeft: 16\n },\n divider: {\n width: '100%',\n marginTop: 16\n }\n}))\n\nexport const NewsCard = ({\n number,\n title,\n summary,\n width,\n component = 'h2'\n}) => {\n const [expanded, setExpanded] = useState(false)\n\n const classes = useStyles()\n\n return (\n <div\n className={classes.root}\n style={{ cursor: summary.length > 56 && 'pointer' }}\n onClick={() => setExpanded(!expanded)}\n >\n <div\n style={{\n width: width === 'double' ? 560 : 260,\n display: 'flex',\n marginTop: 16,\n paddingRight: 16\n }}\n >\n <div className={classes.number}>\n <Typography variant='h2'>{number}</Typography>\n </div>\n\n <div>\n <div>\n <Typography\n variant='subtitle2'\n component={component}\n className={classes.title}\n >\n {title}\n </Typography>\n <Typography style={{ minHeight: width !== 'double' && 40 }}>\n {summary.slice(0, 57)} {summary.length > 56 && !expanded && '...'}\n </Typography>\n </div>\n <Collapse in={expanded} timeout='auto' unmountOnExit>\n <div>\n <Typography>{summary.slice(57)}</Typography>\n </div>\n </Collapse>\n </div>\n </div>\n <Divider className={classes.divider} />\n </div>\n )\n}\nNewsCard.propTypes = {\n /**\n * Number listed by news item\n */\n number: PropTypes.number.isRequired,\n /**\n * Title of news item\n */\n title: PropTypes.string.isRequired,\n /**\n * Header Tag override. Defaults to H2\n */\n component: PropTypes.string,\n /**\n * Summary of news item (overflow beyond 56 characters is sent to expanded content area)\n */\n summary: PropTypes.string.isRequired,\n /**\n * Optional width flag. width === double will set the card to full width\n */\n width: PropTypes.string\n}\n\nNewsCard.defaultProps = {\n component: 'h2'\n}\n"],"mappings":";;;;;AAIA,MAAM,YAAY,YAAY,WAAW;CACvC,MAAM,EACJ,WAAW;EACT,iBAAiB,MAAM,QAAQ,UAAU;EACzC,OAAO,OAAO,SAAS,gBAAgB,MAAM,QAAQ,UAAU,KAAK;EACrE,EACF;CACD,OAAO;EACL,YAAY;EACZ,cAAc,MAAM,QAAQ,IAAI;EACjC;CACD,QAAQ;EACN,aAAa;EACb,aAAa;EACd;CACD,SAAS;EACP,OAAO;EACP,WAAW;EACZ;CACF,EAAE;AAEH,MAAa,YAAY,EACvB,QACA,OACA,SACA,OACA,YAAY,WACR;CACJ,MAAM,CAAC,UAAU,eAAe,SAAS,MAAM;CAE/C,MAAM,UAAU,WAAW;AAE3B,QACE,oCAAC;EACC,WAAW,QAAQ;EACnB,OAAO,EAAE,QAAQ,QAAQ,SAAS,MAAM,WAAW;EACnD,eAAe,YAAY,CAAC,SAAS;IAErC,oCAAC,SACC,OAAO;EACL,OAAO,UAAU,WAAW,MAAM;EAClC,SAAS;EACT,WAAW;EACX,cAAc;EACf,IAED,oCAAC,SAAI,WAAW,QAAQ,UACtB,oCAAC,cAAW,SAAQ,QAAM,OAAoB,CAC1C,EAEN,oCAAC,aACC,oCAAC,aACC,oCAAC;EACC,SAAQ;EACG;EACX,WAAW,QAAQ;IAElB,MACU,EACb,oCAAC,cAAW,OAAO,EAAE,WAAW,UAAU,YAAY,IAAI,IACvD,QAAQ,MAAM,GAAG,GAAG,EAAC,KAAE,QAAQ,SAAS,MAAM,CAAC,YAAY,MACjD,CACT,EACN,oCAAC;EAAS,IAAI;EAAU,SAAQ;EAAO;IACrC,oCAAC,aACC,oCAAC,kBAAY,QAAQ,MAAM,GAAG,CAAc,CACxC,CACG,CACP,CACF,EACN,oCAAC,WAAQ,WAAW,QAAQ,UAAW,CACnC;;AAGV,SAAS,YAAY;CAInB,QAAQ,UAAU,OAAO;CAIzB,OAAO,UAAU,OAAO;CAIxB,WAAW,UAAU;CAIrB,SAAS,UAAU,OAAO;CAI1B,OAAO,UAAU;CAClB;AAED,SAAS,eAAe,EACtB,WAAW,MACZ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notes-
|
|
1
|
+
{"version":3,"file":"Notes-MpEDLM1w.js","names":["useStyles"],"sources":["../src/UI/dataDisplay/notes/Note.jsx","../src/UI/dataDisplay/notes/Notes.jsx"],"sourcesContent":["import React from 'react'\nimport { makeStyles, Paper, CardContent, Typography } from '@material-ui/core'\nimport { AvatarAlphabet } from '../AvatarAlphabet'\nimport { FluentIconButton } from '../../inputs/buttons/FluentIconButton'\nimport { DeleteIcon } from '@fluentui/react-icons'\nimport { TrimForAvatar } from '../../../utilities/TrimForAvatar'\nimport TimeAgo from 'timeago-react'\nimport clsx from 'clsx'\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n width: '100%',\n display: 'flex'\n },\n avatar: {\n marginRight: theme.spacing(2)\n },\n message: {\n width: '100%'\n },\n noteWrapper: {\n display: 'flex'\n },\n note: {\n flex: 1\n },\n date: {\n marginTop: theme.spacing(2)\n }\n}))\n\nexport const Note = ({ children, author, date, className, onClick }) => {\n const classes = useStyles()\n\n return (\n <div className={clsx(classes.root, className)}>\n <div className={classes.avatar}>\n <AvatarAlphabet avatarCharacter={TrimForAvatar(author)} />\n </div>\n\n <Paper elevation={0} className={classes.message}>\n <CardContent>\n <div className={classes.noteWrapper}>\n <Typography variant='body2' className={classes.note}>\n {children}\n </Typography>\n <div>\n <FluentIconButton\n color='primary'\n icon={DeleteIcon}\n onClick={onClick}\n />\n </div>\n </div>\n <div className={classes.date}>\n <Typography variant='caption'>\n <TimeAgo datetime={date} />\n </Typography>\n </div>\n </CardContent>\n </Paper>\n </div>\n )\n}\n","import React from 'react'\nimport { makeStyles } from '@material-ui/core'\nimport { Note } from './Note'\n\nexport const useStyles = makeStyles((theme) => ({\n root: {\n display: 'flex',\n flexDirection: 'column',\n alignContent: 'space-around'\n }\n}))\n\n/**\n * @returns {import('@material-ui/core/styles').WithStyles<import('@material-ui/core/styles/withStyles').Styles<Theme, {}, string>>}\n */\n\nexport const Notes = ({ data, key, handleClick }) => {\n const classes = useStyles()\n\n return (\n <div className={classes.root}>\n {data &&\n data.map((item) => {\n return (\n <div style={{ marginBottom: 20 }} key={key}>\n <Note\n author={item.author}\n date={item.date.toString()}\n onClick={() => handleClick(item.id)}\n >\n {item.note}\n </Note>\n </div>\n )\n })}\n </div>\n )\n}\n"],"mappings":";;;;;;;;;;AASA,MAAMA,cAAY,YAAY,WAAW;CACvC,MAAM;EACJ,OAAO;EACP,SAAS;EACV;CACD,QAAQ,EACN,aAAa,MAAM,QAAQ,EAAE,EAC9B;CACD,SAAS,EACP,OAAO,QACR;CACD,aAAa,EACX,SAAS,QACV;CACD,MAAM,EACJ,MAAM,GACP;CACD,MAAM,EACJ,WAAW,MAAM,QAAQ,EAAE,EAC5B;CACF,EAAE;AAEH,MAAa,QAAQ,EAAE,UAAU,QAAQ,MAAM,WAAW,cAAc;CACtE,MAAM,UAAUA,aAAW;AAE3B,QACE,oCAAC,SAAI,WAAW,KAAK,QAAQ,MAAM,UAAU,IAC3C,oCAAC,SAAI,WAAW,QAAQ,UACtB,oCAAC,kBAAe,iBAAiB,cAAc,OAAO,GAAI,CACtD,EAEN,oCAAC;EAAM,WAAW;EAAG,WAAW,QAAQ;IACtC,oCAAC,mBACC,oCAAC,SAAI,WAAW,QAAQ,eACtB,oCAAC;EAAW,SAAQ;EAAQ,WAAW,QAAQ;IAC5C,SACU,EACb,oCAAC,aACC,oCAAC;EACC,OAAM;EACN,MAAM;EACG;GACT,CACE,CACF,EACN,oCAAC,SAAI,WAAW,QAAQ,QACtB,oCAAC,cAAW,SAAQ,aAClB,oCAAC,WAAQ,UAAU,OAAQ,CAChB,CACT,CACM,CACR,CACJ;;;;;ACzDV,MAAa,YAAY,YAAY,WAAW,EAC9C,MAAM;CACJ,SAAS;CACT,eAAe;CACf,cAAc;CACf,EACF,EAAE;;;;AAMH,MAAa,SAAS,EAAE,MAAM,KAAK,kBAAkB;CACnD,MAAM,UAAU,WAAW;AAE3B,QACE,oCAAC,SAAI,WAAW,QAAQ,QACrB,QACC,KAAK,KAAK,SAAS;AACjB,SACE,oCAAC;GAAI,OAAO,EAAE,cAAc,IAAI;GAAO;KACrC,oCAAC;GACC,QAAQ,KAAK;GACb,MAAM,KAAK,KAAK,UAAU;GAC1B,eAAe,YAAY,KAAK,GAAG;KAElC,KAAK,KACD,CACH;GAER,CACA"}
|
|
@@ -3,15 +3,15 @@ import { t as Field } from "./Field-Cda5rJe2.js";
|
|
|
3
3
|
import { i as useHandleAxiosSnackbar } from "./apiHelpers-B_cn3sZo.js";
|
|
4
4
|
import { t as useUser } from "./useUser-wpHGo6jU.js";
|
|
5
5
|
import { t as FluentTextFieldAutoComplete } from "./FluentTextFieldAutoComplete-5Hp3qpk6.js";
|
|
6
|
-
import {
|
|
6
|
+
import { L as UdpEnums } from "./unitySystemEnums-e5F9Jr7m.js";
|
|
7
7
|
import { n as useShellStore } from "./shellStore-C8zfPsZ-.js";
|
|
8
|
-
import { t as useActionState } from "./useActions-
|
|
9
|
-
import { r as getSearchObject } from "./SearchUtilities-
|
|
10
|
-
import { r as constructBusinessObjectArrFromTree } from "./TreeUtilities-
|
|
8
|
+
import { t as useActionState } from "./useActions-CxDs7v3s.js";
|
|
9
|
+
import { r as getSearchObject } from "./SearchUtilities-CNz302LN.js";
|
|
10
|
+
import { r as constructBusinessObjectArrFromTree } from "./TreeUtilities-kiPupulY.js";
|
|
11
11
|
import { t as LayoutUnit } from "./LayoutUnit-D4jJvonh.js";
|
|
12
12
|
import { t as CkRichEditor } from "./CkRichEditor-CoP_h6jt.js";
|
|
13
13
|
import { a as getBaseMethod, i as executeQueryWithParameters, t as executeQueryAdHoc } from "./methodUtils-Cwo_kmVX.js";
|
|
14
|
-
import { t as ShortcutContentFinder } from "./ShortcutContentFinder-
|
|
14
|
+
import { t as ShortcutContentFinder } from "./ShortcutContentFinder-DkWVHF1Q.js";
|
|
15
15
|
import { t as AmbientCard } from "./AmbientCard-CLW4bPCu.js";
|
|
16
16
|
import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
17
17
|
import { LinearProgress, TextField, makeStyles } from "@material-ui/core";
|
|
@@ -362,4 +362,4 @@ const NotesScreen = (props) => {
|
|
|
362
362
|
|
|
363
363
|
//#endregion
|
|
364
364
|
export { NotesScreen as t };
|
|
365
|
-
//# sourceMappingURL=NotesScreen-
|
|
365
|
+
//# sourceMappingURL=NotesScreen-DWfxRWOF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotesScreen-9Y5eOiU1.js","names":["note","existingNoteObj"],"sources":["../src/notes/NotesScreen.jsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { CkRichEditor } from '../UI/inputs/richEditors/CkRichEditor';\nimport { makeStyles, TextField, LinearProgress } from '@material-ui/core';\nimport { Field, Form } from '../utilities/form';\nimport { FluentTextFieldAutoComplete } from '../UI/inputs/textField/FluentTextFieldAutoComplete';\nimport { useTranslation } from 'react-i18next';\nimport { useActionState } from '../hooks/useActions';\nimport { constructBusinessObjectArrFromTree } from '../utilities/tree/TreeUtilities';\nimport { LayoutUnit } from '../layout/LayoutUnit';\nimport { UdpEnums } from '../enums/unitySystemEnums';\nimport { useHandleAxiosSnackbar } from '../utilities/apiHelpers';\nimport { useUser } from '../utilities/auth/useUser';\nimport { differenceWith } from 'lodash';\nimport {\n executeQueryAdHoc,\n getBaseMethod,\n executeQueryWithParameters\n} from '../udp/utilities/methodUtils';\nimport { ShortcutContentFinder } from '../udp/ShortcutContent/ShortcutContentFinder';\nimport { AmbientCard } from '../UI/surfaces/cards/AmbientCard';\nimport { useShellStore } from '../stores/shellStore';\nimport { getSearchObject } from '../utilities/search/SearchUtilities';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n editor: {\n '& .ck-editor__main > .ck-editor__editable_inline': {\n backgroundColor:\n theme?.getThemeData()?.mode === 'dark'\n ? theme.palette.grey[800]\n : theme.palette.grey[100]\n }\n },\n row: {\n display: 'flex',\n justifyContent: 'space-between'\n },\n input: {\n height: 34,\n padding: 0\n },\n formTextInput: {\n fontSize: 14\n },\n labelRoot: {\n fontSize: 14\n }\n}));\n\nexport const NotesScreen = (props) => {\n const {\n formRef,\n onSubmit,\n shortcutContentFinderEnabled,\n id,\n viewOnly,\n reloadNotes\n } = props;\n const [note, setNote] = useState('');\n const [typeOptions, setTypeOptions] = useState([]);\n const [templateOptions, setTemplateOptions] = useState([]);\n const [noteId, setNoteId] = useState(id || '');\n const [existingNoteFiledFor, setExistingNoteFiledFor] = useState([]);\n const [existingNoteObj, setExistingNoteObj] = useState(null);\n const [loading, setLoading] = useState(false);\n const classes = useStyles(props);\n const { t } = useTranslation();\n const actionState = useActionState();\n const shellHidden = useShellStore((state) => state.shellHidden);\n const { menuListState, catalogPromotedEntities } = actionState;\n const { handleSuccessSnackbar, handleErrorSnackbar } =\n useHandleAxiosSnackbar();\n const user = useUser();\n const editorRef = useRef(null);\n\n const selectedMenu = useMemo(() => {\n if (menuListState.menuList.length) {\n return menuListState.menuList[menuListState.selectedMenuIndex] || null;\n }\n return null;\n }, [menuListState]);\n\n const noteGetFullApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note,\n 'unityBaseGetFullMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const noteTypeSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note_Type,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const noteTemplateSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note_Template,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const createNoteApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note,\n 'unityBaseCreateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const updateNoteApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note,\n 'unityBaseUpdateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const createNoteFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note_Filed_For,\n 'unityBaseCreateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const deleteNoteFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note_Filed_For,\n 'unityBaseDeleteMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const disabled = useMemo(() => {\n return viewOnly;\n }, [viewOnly]);\n\n const handleSaveNote = useCallback(\n async (values) => {\n let response = null;\n const data = {\n requestBody: {\n tenantId: user?.currentTenantId,\n typeCode: values?.type?.code,\n subject: values?.subject,\n content: values?.note,\n unityUserId: user?.id,\n userDisplayName: `${user?.firstName} ${user?.familyName}`\n }\n };\n if (noteId) {\n if (updateNoteApiMethod) {\n // Set the url parameter for updating note\n data['{iD}'] = noteId;\n response = await executeQueryWithParameters(\n { data },\n updateNoteApiMethod.apiMethodId\n ).catch((e) => handleErrorSnackbar(e, 'Could not Update Note'));\n } else {\n handleErrorSnackbar(null, 'Update Note Method Not Promoted');\n }\n } else {\n if (createNoteApiMethod) {\n response = await executeQueryWithParameters(\n { data },\n createNoteApiMethod.apiMethodId\n ).catch((e) => handleErrorSnackbar(e, 'Could not Save Note'));\n } else {\n handleErrorSnackbar(null, 'Create Note Method Not Promoted');\n }\n }\n\n if (response?.status === 200) {\n if (!noteId) {\n setNoteId(response.data.id || '');\n handleSuccessSnackbar('Note Saved');\n } else {\n handleSuccessSnackbar('Note Updated');\n }\n if (reloadNotes) {\n reloadNotes();\n }\n return response.data.id || noteId;\n }\n\n return noteId;\n },\n [\n createNoteApiMethod,\n updateNoteApiMethod,\n noteId,\n setNoteId,\n handleErrorSnackbar,\n handleSuccessSnackbar,\n user,\n reloadNotes\n ]\n );\n\n const noteFiledForToComparator = (nftc1, nftc2) => {\n return nftc1?.value === nftc2?.value;\n };\n\n const handleNoteFiledFor = useCallback(\n async (values, notedIdToFileFor) => {\n // Get the noteFiledFor objects to delete\n const noteFiledForToDelete = differenceWith(\n existingNoteFiledFor,\n values?.fileTo,\n noteFiledForToComparator\n );\n\n // Get the noteFiledFor objects to create\n const noteFiledForToCreate = differenceWith(\n values?.fileTo,\n existingNoteFiledFor,\n noteFiledForToComparator\n );\n\n if (notedIdToFileFor) {\n if (deleteNoteFiledForApiMethod) {\n const deletedPromises = [];\n noteFiledForToDelete.forEach((nftd) => {\n const data = {};\n data['{noteID}'] = notedIdToFileFor;\n data['{entityBusinessKey}'] = nftd.value;\n deletedPromises.push(\n executeQueryWithParameters(\n { data },\n deleteNoteFiledForApiMethod.apiMethodId\n )\n );\n });\n\n await Promise.all(deletedPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n if (responses.length !== deletedPromises.length) {\n console.warn(`Not all Note Filed For deleted`);\n }\n }\n );\n } else {\n handleErrorSnackbar(\n null,\n 'Delete Note Filed For Method Not Promoted'\n );\n }\n\n if (createNoteFiledForApiMethod) {\n const createdPromises = [];\n noteFiledForToCreate.forEach((nftc) => {\n const data = {\n requestBody: {\n noteId: notedIdToFileFor,\n entityBusinessKey: nftc.value\n }\n };\n createdPromises.push(\n executeQueryWithParameters(\n { data },\n createNoteFiledForApiMethod.apiMethodId\n )\n );\n });\n await Promise.all(createdPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n responses.forEach((response) => {\n if (response.status === 200) {\n const entityBusinessKey = response.data.entityBusinessKey;\n const matchingNoteFiledFor = noteFiledForToCreate.find(\n (nftc) => nftc.value === entityBusinessKey\n );\n if (!matchingNoteFiledFor) {\n console.warn(\n `Note Filed For not created for all file to entities`\n );\n }\n }\n });\n }\n );\n setExistingNoteFiledFor(values?.fileTo);\n } else {\n handleErrorSnackbar(\n null,\n 'Create Note Filed For Method Not Promoted'\n );\n }\n }\n },\n [\n createNoteFiledForApiMethod,\n deleteNoteFiledForApiMethod,\n handleErrorSnackbar,\n existingNoteFiledFor,\n setExistingNoteFiledFor\n ]\n );\n\n const handleOnSubmit = useCallback(\n async (values) => {\n if (onSubmit) {\n onSubmit({ note, ...values });\n } else {\n const notedIdToFileFor = await handleSaveNote({ note, ...values });\n await handleNoteFiledFor({ note, ...values }, notedIdToFileFor);\n }\n },\n [note, onSubmit, handleSaveNote, handleNoteFiledFor]\n );\n\n const handleTextEditorChange = (note) => {\n setNote(note);\n };\n\n const onTemplateChange = useCallback(\n (value) => {\n formRef?.current?.form?.change('subject', value?.subject || '');\n const type = typeOptions.find((option) => option.code === value.typeCode);\n formRef?.current?.form?.change('type', type || null);\n setNote(value?.content || '');\n },\n [setNote, formRef, typeOptions]\n );\n\n const handleShortcutOnSelect = useCallback(\n (shortcutContent) => {\n editorRef?.current?.model?.change((writer) => {\n const insertPosition =\n editorRef?.current?.model?.document?.selection?.getFirstPosition();\n writer.remove(\n editorRef?.current?.model?.document?.selection?.getFirstRange()\n );\n writer.insertText(shortcutContent, insertPosition);\n });\n\n setNote(editorRef?.current?.getData());\n },\n [editorRef, setNote]\n );\n\n const fileToOptions = useMemo(() => {\n let options = [];\n if (selectedMenu) {\n options = constructBusinessObjectArrFromTree(selectedMenu);\n }\n return options;\n }, [selectedMenu]);\n\n useEffect(() => {\n // TODO: use getAll noteTypes\n const getTypeOptions = async () => {\n let options = [];\n if (noteTypeSearchApiMethod) {\n const filterElements = [];\n const searchObject = getSearchObject(filterElements, 1, 200, true);\n const data = { data: searchObject };\n const typesResponse = await executeQueryAdHoc(\n data,\n noteTypeSearchApiMethod.apiMethodId\n );\n if (typesResponse?.status === 200) {\n options = typesResponse.data?.pageList;\n }\n }\n setTypeOptions(options);\n };\n getTypeOptions();\n }, [noteTypeSearchApiMethod, setTypeOptions, user]);\n\n useEffect(() => {\n // TODO: use getAll noteTemplates\n const getTemplateOptions = async () => {\n let options = [];\n if (noteTemplateSearchApiMethod) {\n const filterElements = [];\n const searchObject = getSearchObject(filterElements, 1, 200, true);\n const data = { data: searchObject };\n const templatesResponse = await executeQueryAdHoc(\n data,\n noteTemplateSearchApiMethod.apiMethodId\n );\n if (templatesResponse?.status === 200) {\n options = templatesResponse.data?.pageList;\n }\n }\n setTemplateOptions(options);\n };\n getTemplateOptions();\n }, [noteTemplateSearchApiMethod, setTemplateOptions, user]);\n\n useEffect(() => {\n const getExistingNote = async () => {\n let existingNoteObj = null;\n const data = {};\n if (noteGetFullApiMethod) {\n setLoading(true);\n data['{iD}'] = id;\n const noteResponse = await executeQueryWithParameters(\n { data },\n noteGetFullApiMethod.apiMethodId\n ).catch((e) => {\n console.error(e);\n setLoading(false);\n });\n if (noteResponse?.status === 200) {\n existingNoteObj = noteResponse.data;\n }\n }\n setExistingNoteObj(existingNoteObj);\n setNote(existingNoteObj?.content);\n setLoading(false);\n };\n if (id) {\n getExistingNote();\n }\n }, [id, noteGetFullApiMethod]);\n\n useEffect(() => {\n if (!existingNoteObj || !fileToOptions?.length) {\n return;\n }\n const initialFileTos = fileToOptions.filter((option) => {\n return existingNoteObj.noteFiledFor.find(\n (nff) => option.value === nff.entityBusinessKey\n );\n });\n setExistingNoteFiledFor(initialFileTos);\n formRef?.current?.form?.change('fileTo', initialFileTos);\n }, [existingNoteObj, fileToOptions, formRef]);\n\n useEffect(() => {\n if (!existingNoteObj || !typeOptions?.length) {\n return;\n }\n const initialType = typeOptions.find(\n (option) => option.code === existingNoteObj.typeCode\n );\n formRef?.current?.form?.change('type', initialType || null);\n }, [existingNoteObj, typeOptions, formRef]);\n\n useEffect(() => {\n if (!existingNoteObj) {\n return;\n }\n formRef?.current?.form?.change('subject', existingNoteObj?.subject || '');\n }, [existingNoteObj, formRef]);\n\n return (\n <div className={classes.root}>\n {loading && <LinearProgress color='secondary' />}\n <AmbientCard fullWidth={true} header={true}>\n <Form onSubmit={handleOnSubmit} ref={formRef}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('File To')}\n name='fileTo'\n id='fileTo'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={fileToOptions || []}\n optionKey={'label'}\n required={true}\n limitTags={!viewOnly ? 2 : -1}\n isMultiple={true}\n disabled={disabled}\n />\n <div className={classes.row}>\n <div style={{ width: '100%' }}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('Type')}\n name='type'\n id='type'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={typeOptions || []}\n optionKey={'name'}\n required={true}\n disabled={disabled}\n />\n </div>\n {!viewOnly && (\n <div style={{ width: '100%', marginLeft: 8 }}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('Template')}\n name='template'\n id='template'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={templateOptions || []}\n optionKey={'name'}\n additionalOnChangeAction={onTemplateChange}\n />\n </div>\n )}\n </div>\n <Field\n component={TextField}\n label={t('Subject')}\n name='subject'\n id='subject'\n fullWidth\n variant='outlined'\n size='small'\n margin='dense'\n required\n disabled={disabled}\n InputProps={{\n classes: {\n root: classes?.input,\n input: classes?.formTextInput\n }\n }}\n InputLabelProps={{\n classes: {\n root: classes?.labelRoot\n }\n }}\n />\n <LayoutUnit unit='nudge' />\n <CkRichEditor\n handleChange={handleTextEditorChange}\n classes={{ editor: classes.editor }}\n data={note}\n editorRef={editorRef}\n isUsingRef={true}\n readOnly={disabled}\n />\n </Form>\n </AmbientCard>\n <LayoutUnit unit='nudge' />\n {shortcutContentFinderEnabled && (\n <AmbientCard\n fullWidth={true}\n header={true}\n lastChildBottomPadding={'0px'}\n cardContentHeight={`calc(100vh - ${shellHidden ? '568px' : '623px'})`}\n >\n <ShortcutContentFinder onSelect={handleShortcutOnSelect} />\n </AmbientCard>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NotesScreen-DWfxRWOF.js","names":["note","existingNoteObj"],"sources":["../src/notes/NotesScreen.jsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { CkRichEditor } from '../UI/inputs/richEditors/CkRichEditor';\nimport { makeStyles, TextField, LinearProgress } from '@material-ui/core';\nimport { Field, Form } from '../utilities/form';\nimport { FluentTextFieldAutoComplete } from '../UI/inputs/textField/FluentTextFieldAutoComplete';\nimport { useTranslation } from 'react-i18next';\nimport { useActionState } from '../hooks/useActions';\nimport { constructBusinessObjectArrFromTree } from '../utilities/tree/TreeUtilities';\nimport { LayoutUnit } from '../layout/LayoutUnit';\nimport { UdpEnums } from '../enums/unitySystemEnums';\nimport { useHandleAxiosSnackbar } from '../utilities/apiHelpers';\nimport { useUser } from '../utilities/auth/useUser';\nimport { differenceWith } from 'lodash';\nimport {\n executeQueryAdHoc,\n getBaseMethod,\n executeQueryWithParameters\n} from '../udp/utilities/methodUtils';\nimport { ShortcutContentFinder } from '../udp/ShortcutContent/ShortcutContentFinder';\nimport { AmbientCard } from '../UI/surfaces/cards/AmbientCard';\nimport { useShellStore } from '../stores/shellStore';\nimport { getSearchObject } from '../utilities/search/SearchUtilities';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n editor: {\n '& .ck-editor__main > .ck-editor__editable_inline': {\n backgroundColor:\n theme?.getThemeData()?.mode === 'dark'\n ? theme.palette.grey[800]\n : theme.palette.grey[100]\n }\n },\n row: {\n display: 'flex',\n justifyContent: 'space-between'\n },\n input: {\n height: 34,\n padding: 0\n },\n formTextInput: {\n fontSize: 14\n },\n labelRoot: {\n fontSize: 14\n }\n}));\n\nexport const NotesScreen = (props) => {\n const {\n formRef,\n onSubmit,\n shortcutContentFinderEnabled,\n id,\n viewOnly,\n reloadNotes\n } = props;\n const [note, setNote] = useState('');\n const [typeOptions, setTypeOptions] = useState([]);\n const [templateOptions, setTemplateOptions] = useState([]);\n const [noteId, setNoteId] = useState(id || '');\n const [existingNoteFiledFor, setExistingNoteFiledFor] = useState([]);\n const [existingNoteObj, setExistingNoteObj] = useState(null);\n const [loading, setLoading] = useState(false);\n const classes = useStyles(props);\n const { t } = useTranslation();\n const actionState = useActionState();\n const shellHidden = useShellStore((state) => state.shellHidden);\n const { menuListState, catalogPromotedEntities } = actionState;\n const { handleSuccessSnackbar, handleErrorSnackbar } =\n useHandleAxiosSnackbar();\n const user = useUser();\n const editorRef = useRef(null);\n\n const selectedMenu = useMemo(() => {\n if (menuListState.menuList.length) {\n return menuListState.menuList[menuListState.selectedMenuIndex] || null;\n }\n return null;\n }, [menuListState]);\n\n const noteGetFullApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note,\n 'unityBaseGetFullMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const noteTypeSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note_Type,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const noteTemplateSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note_Template,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const createNoteApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note,\n 'unityBaseCreateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const updateNoteApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note,\n 'unityBaseUpdateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const createNoteFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note_Filed_For,\n 'unityBaseCreateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const deleteNoteFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Note_Filed_For,\n 'unityBaseDeleteMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const disabled = useMemo(() => {\n return viewOnly;\n }, [viewOnly]);\n\n const handleSaveNote = useCallback(\n async (values) => {\n let response = null;\n const data = {\n requestBody: {\n tenantId: user?.currentTenantId,\n typeCode: values?.type?.code,\n subject: values?.subject,\n content: values?.note,\n unityUserId: user?.id,\n userDisplayName: `${user?.firstName} ${user?.familyName}`\n }\n };\n if (noteId) {\n if (updateNoteApiMethod) {\n // Set the url parameter for updating note\n data['{iD}'] = noteId;\n response = await executeQueryWithParameters(\n { data },\n updateNoteApiMethod.apiMethodId\n ).catch((e) => handleErrorSnackbar(e, 'Could not Update Note'));\n } else {\n handleErrorSnackbar(null, 'Update Note Method Not Promoted');\n }\n } else {\n if (createNoteApiMethod) {\n response = await executeQueryWithParameters(\n { data },\n createNoteApiMethod.apiMethodId\n ).catch((e) => handleErrorSnackbar(e, 'Could not Save Note'));\n } else {\n handleErrorSnackbar(null, 'Create Note Method Not Promoted');\n }\n }\n\n if (response?.status === 200) {\n if (!noteId) {\n setNoteId(response.data.id || '');\n handleSuccessSnackbar('Note Saved');\n } else {\n handleSuccessSnackbar('Note Updated');\n }\n if (reloadNotes) {\n reloadNotes();\n }\n return response.data.id || noteId;\n }\n\n return noteId;\n },\n [\n createNoteApiMethod,\n updateNoteApiMethod,\n noteId,\n setNoteId,\n handleErrorSnackbar,\n handleSuccessSnackbar,\n user,\n reloadNotes\n ]\n );\n\n const noteFiledForToComparator = (nftc1, nftc2) => {\n return nftc1?.value === nftc2?.value;\n };\n\n const handleNoteFiledFor = useCallback(\n async (values, notedIdToFileFor) => {\n // Get the noteFiledFor objects to delete\n const noteFiledForToDelete = differenceWith(\n existingNoteFiledFor,\n values?.fileTo,\n noteFiledForToComparator\n );\n\n // Get the noteFiledFor objects to create\n const noteFiledForToCreate = differenceWith(\n values?.fileTo,\n existingNoteFiledFor,\n noteFiledForToComparator\n );\n\n if (notedIdToFileFor) {\n if (deleteNoteFiledForApiMethod) {\n const deletedPromises = [];\n noteFiledForToDelete.forEach((nftd) => {\n const data = {};\n data['{noteID}'] = notedIdToFileFor;\n data['{entityBusinessKey}'] = nftd.value;\n deletedPromises.push(\n executeQueryWithParameters(\n { data },\n deleteNoteFiledForApiMethod.apiMethodId\n )\n );\n });\n\n await Promise.all(deletedPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n if (responses.length !== deletedPromises.length) {\n console.warn(`Not all Note Filed For deleted`);\n }\n }\n );\n } else {\n handleErrorSnackbar(\n null,\n 'Delete Note Filed For Method Not Promoted'\n );\n }\n\n if (createNoteFiledForApiMethod) {\n const createdPromises = [];\n noteFiledForToCreate.forEach((nftc) => {\n const data = {\n requestBody: {\n noteId: notedIdToFileFor,\n entityBusinessKey: nftc.value\n }\n };\n createdPromises.push(\n executeQueryWithParameters(\n { data },\n createNoteFiledForApiMethod.apiMethodId\n )\n );\n });\n await Promise.all(createdPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n responses.forEach((response) => {\n if (response.status === 200) {\n const entityBusinessKey = response.data.entityBusinessKey;\n const matchingNoteFiledFor = noteFiledForToCreate.find(\n (nftc) => nftc.value === entityBusinessKey\n );\n if (!matchingNoteFiledFor) {\n console.warn(\n `Note Filed For not created for all file to entities`\n );\n }\n }\n });\n }\n );\n setExistingNoteFiledFor(values?.fileTo);\n } else {\n handleErrorSnackbar(\n null,\n 'Create Note Filed For Method Not Promoted'\n );\n }\n }\n },\n [\n createNoteFiledForApiMethod,\n deleteNoteFiledForApiMethod,\n handleErrorSnackbar,\n existingNoteFiledFor,\n setExistingNoteFiledFor\n ]\n );\n\n const handleOnSubmit = useCallback(\n async (values) => {\n if (onSubmit) {\n onSubmit({ note, ...values });\n } else {\n const notedIdToFileFor = await handleSaveNote({ note, ...values });\n await handleNoteFiledFor({ note, ...values }, notedIdToFileFor);\n }\n },\n [note, onSubmit, handleSaveNote, handleNoteFiledFor]\n );\n\n const handleTextEditorChange = (note) => {\n setNote(note);\n };\n\n const onTemplateChange = useCallback(\n (value) => {\n formRef?.current?.form?.change('subject', value?.subject || '');\n const type = typeOptions.find((option) => option.code === value.typeCode);\n formRef?.current?.form?.change('type', type || null);\n setNote(value?.content || '');\n },\n [setNote, formRef, typeOptions]\n );\n\n const handleShortcutOnSelect = useCallback(\n (shortcutContent) => {\n editorRef?.current?.model?.change((writer) => {\n const insertPosition =\n editorRef?.current?.model?.document?.selection?.getFirstPosition();\n writer.remove(\n editorRef?.current?.model?.document?.selection?.getFirstRange()\n );\n writer.insertText(shortcutContent, insertPosition);\n });\n\n setNote(editorRef?.current?.getData());\n },\n [editorRef, setNote]\n );\n\n const fileToOptions = useMemo(() => {\n let options = [];\n if (selectedMenu) {\n options = constructBusinessObjectArrFromTree(selectedMenu);\n }\n return options;\n }, [selectedMenu]);\n\n useEffect(() => {\n // TODO: use getAll noteTypes\n const getTypeOptions = async () => {\n let options = [];\n if (noteTypeSearchApiMethod) {\n const filterElements = [];\n const searchObject = getSearchObject(filterElements, 1, 200, true);\n const data = { data: searchObject };\n const typesResponse = await executeQueryAdHoc(\n data,\n noteTypeSearchApiMethod.apiMethodId\n );\n if (typesResponse?.status === 200) {\n options = typesResponse.data?.pageList;\n }\n }\n setTypeOptions(options);\n };\n getTypeOptions();\n }, [noteTypeSearchApiMethod, setTypeOptions, user]);\n\n useEffect(() => {\n // TODO: use getAll noteTemplates\n const getTemplateOptions = async () => {\n let options = [];\n if (noteTemplateSearchApiMethod) {\n const filterElements = [];\n const searchObject = getSearchObject(filterElements, 1, 200, true);\n const data = { data: searchObject };\n const templatesResponse = await executeQueryAdHoc(\n data,\n noteTemplateSearchApiMethod.apiMethodId\n );\n if (templatesResponse?.status === 200) {\n options = templatesResponse.data?.pageList;\n }\n }\n setTemplateOptions(options);\n };\n getTemplateOptions();\n }, [noteTemplateSearchApiMethod, setTemplateOptions, user]);\n\n useEffect(() => {\n const getExistingNote = async () => {\n let existingNoteObj = null;\n const data = {};\n if (noteGetFullApiMethod) {\n setLoading(true);\n data['{iD}'] = id;\n const noteResponse = await executeQueryWithParameters(\n { data },\n noteGetFullApiMethod.apiMethodId\n ).catch((e) => {\n console.error(e);\n setLoading(false);\n });\n if (noteResponse?.status === 200) {\n existingNoteObj = noteResponse.data;\n }\n }\n setExistingNoteObj(existingNoteObj);\n setNote(existingNoteObj?.content);\n setLoading(false);\n };\n if (id) {\n getExistingNote();\n }\n }, [id, noteGetFullApiMethod]);\n\n useEffect(() => {\n if (!existingNoteObj || !fileToOptions?.length) {\n return;\n }\n const initialFileTos = fileToOptions.filter((option) => {\n return existingNoteObj.noteFiledFor.find(\n (nff) => option.value === nff.entityBusinessKey\n );\n });\n setExistingNoteFiledFor(initialFileTos);\n formRef?.current?.form?.change('fileTo', initialFileTos);\n }, [existingNoteObj, fileToOptions, formRef]);\n\n useEffect(() => {\n if (!existingNoteObj || !typeOptions?.length) {\n return;\n }\n const initialType = typeOptions.find(\n (option) => option.code === existingNoteObj.typeCode\n );\n formRef?.current?.form?.change('type', initialType || null);\n }, [existingNoteObj, typeOptions, formRef]);\n\n useEffect(() => {\n if (!existingNoteObj) {\n return;\n }\n formRef?.current?.form?.change('subject', existingNoteObj?.subject || '');\n }, [existingNoteObj, formRef]);\n\n return (\n <div className={classes.root}>\n {loading && <LinearProgress color='secondary' />}\n <AmbientCard fullWidth={true} header={true}>\n <Form onSubmit={handleOnSubmit} ref={formRef}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('File To')}\n name='fileTo'\n id='fileTo'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={fileToOptions || []}\n optionKey={'label'}\n required={true}\n limitTags={!viewOnly ? 2 : -1}\n isMultiple={true}\n disabled={disabled}\n />\n <div className={classes.row}>\n <div style={{ width: '100%' }}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('Type')}\n name='type'\n id='type'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={typeOptions || []}\n optionKey={'name'}\n required={true}\n disabled={disabled}\n />\n </div>\n {!viewOnly && (\n <div style={{ width: '100%', marginLeft: 8 }}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('Template')}\n name='template'\n id='template'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={templateOptions || []}\n optionKey={'name'}\n additionalOnChangeAction={onTemplateChange}\n />\n </div>\n )}\n </div>\n <Field\n component={TextField}\n label={t('Subject')}\n name='subject'\n id='subject'\n fullWidth\n variant='outlined'\n size='small'\n margin='dense'\n required\n disabled={disabled}\n InputProps={{\n classes: {\n root: classes?.input,\n input: classes?.formTextInput\n }\n }}\n InputLabelProps={{\n classes: {\n root: classes?.labelRoot\n }\n }}\n />\n <LayoutUnit unit='nudge' />\n <CkRichEditor\n handleChange={handleTextEditorChange}\n classes={{ editor: classes.editor }}\n data={note}\n editorRef={editorRef}\n isUsingRef={true}\n readOnly={disabled}\n />\n </Form>\n </AmbientCard>\n <LayoutUnit unit='nudge' />\n {shortcutContentFinderEnabled && (\n <AmbientCard\n fullWidth={true}\n header={true}\n lastChildBottomPadding={'0px'}\n cardContentHeight={`calc(100vh - ${shellHidden ? '568px' : '623px'})`}\n >\n <ShortcutContentFinder onSelect={handleShortcutOnSelect} />\n </AmbientCard>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutlookCallback-
|
|
1
|
+
{"version":3,"file":"OutlookCallback-B4JgQHYB.js","names":[],"sources":["../src/utilities/redirect/pages/OutlookCallback.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { useLocation } from 'react-router-dom';\nimport { apiMutate } from '../../useAxiosMutate';\nimport { LoadingIndicator } from '../../../UI/loading/LoadingIndicator';\nimport { ConfigService } from '../../../configService';\n\nexport function OutlookCallback() {\n const location = useLocation();\n useEffect(() => {\n const fetchData = async () => {\n const urlParams = new URLSearchParams(location.search);\n const code = urlParams.get('code');\n const token = urlParams.get('outlookAccessToken');\n\n if (code) {\n await exchangeCodeForToken(code);\n window.opener.postMessage('loginSuccess', '*');\n } else if (token) {\n localStorage.setItem('outlookAccessToken', token);\n }\n };\n\n fetchData();\n }, [location]);\n\n\n function addSecondsToCurrentTimeUnix(seconds) {\n return Date.now() + seconds * 1000;\n }\n\n\n const exchangeCodeForToken = async (code) => {\n try {\n if (!ConfigService.integrationV2ApiUrl) {\n throw new Error('REACT_APP_INTEGRATION_V2_API_BASE is undefined')\n }\n if (!ConfigService.config.UNITY_URL) {\n throw new Error('REACT_APP_UNITY_URL is undefined')\n }\n const response = await apiMutate(\n ConfigService.integrationV2ApiUrl,\n `OutlookIntegrationAccessToken/getAccessToken`,\n {\n method: \"post\",\n data: {\n option: \"code\",\n value: code,\n redirectUri: ConfigService.config.UNITY_URL + \"/aad_redirect\"\n }\n }\n )\n\n const data = await response.data\n\n data.accessToken ? localStorage.setItem('outlookAccessToken', data.accessToken) : null;\n data.refreshToken ? localStorage.setItem('outlookRefreshToken', data.refreshToken) : null\n data.expiresIn ? localStorage.setItem('outlookExpiresAt', addSecondsToCurrentTimeUnix(data.expiresIn)) : null;\n window.close();\n } catch (error) {\n console.error('Error exchanging code for token', error);\n }\n };\n\n return (\n <>\n <LoadingIndicator />\n </>\n );\n}\n\n"],"mappings":";;;;;;;AAMA,SAAgB,kBAAkB;CAC9B,MAAM,WAAW,aAAa;AAC9B,iBAAgB;EACZ,MAAM,YAAY,YAAY;GAC1B,MAAM,YAAY,IAAI,gBAAgB,SAAS,OAAO;GACtD,MAAM,OAAO,UAAU,IAAI,OAAO;GAClC,MAAM,QAAQ,UAAU,IAAI,qBAAqB;AAEjD,OAAI,MAAM;AACN,UAAM,qBAAqB,KAAK;AAChC,WAAO,OAAO,YAAY,gBAAgB,IAAI;cACvC,MACP,cAAa,QAAQ,sBAAsB,MAAM;;AAIzD,aAAW;IACZ,CAAC,SAAS,CAAC;CAGd,SAAS,4BAA4B,SAAS;AAC1C,SAAO,KAAK,KAAK,GAAG,UAAU;;CAIlC,MAAM,uBAAuB,OAAO,SAAS;AACzC,MAAI;AACA,OAAI,CAAC,cAAc,oBACf,OAAM,IAAI,MAAM,iDAAiD;AAErE,OAAI,CAAC,cAAc,OAAO,UACtB,OAAM,IAAI,MAAM,mCAAmC;GAevD,MAAM,OAAO,OAbI,MAAM,UACnB,cAAc,qBACd,gDACA;IACI,QAAQ;IACR,MAAM;KACF,QAAQ;KACR,OAAO;KACP,aAAa,cAAc,OAAO,YAAY;KACjD;IACJ,CACJ,EAE2B;AAE5B,QAAK,eAAc,aAAa,QAAQ,sBAAsB,KAAK,YAAY;AAC/E,QAAK,gBAAe,aAAa,QAAQ,uBAAuB,KAAK,aAAa;AAClF,QAAK,aAAY,aAAa,QAAQ,oBAAoB,4BAA4B,KAAK,UAAU,CAAC;AACtG,UAAO,OAAO;WACT,OAAO;AACZ,WAAQ,MAAM,mCAAmC,MAAM;;;AAI/D,QACI,0DACI,oCAAC,uBAAmB,CACrB"}
|
|
@@ -2,8 +2,8 @@ import { t as ConfigService } from "./configService-C4uoG3wj.js";
|
|
|
2
2
|
import { t as apiMutate } from "./useAxiosMutate-DcLxzykX.js";
|
|
3
3
|
import { r as useActionStore } from "./inquiryStore-BMYKf5MP.js";
|
|
4
4
|
import { n as useShellStore } from "./shellStore-C8zfPsZ-.js";
|
|
5
|
-
import { t as useActionState } from "./useActions-
|
|
6
|
-
import { t as ActionSplitScreen } from "./ActionSplitScreen-
|
|
5
|
+
import { t as useActionState } from "./useActions-CxDs7v3s.js";
|
|
6
|
+
import { t as ActionSplitScreen } from "./ActionSplitScreen-iHYpf5b3.js";
|
|
7
7
|
import { n as PageSubHeaderActionsTarget } from "./PageSubHeaderAction-Cd6MlbR8.js";
|
|
8
8
|
import React, { useCallback, useEffect, useMemo, useState } from "react";
|
|
9
9
|
import { useSnackbar } from "notistack";
|
|
@@ -52,4 +52,4 @@ const PageActionWrapper = (props) => {
|
|
|
52
52
|
|
|
53
53
|
//#endregion
|
|
54
54
|
export { PageActionWrapper as t };
|
|
55
|
-
//# sourceMappingURL=PageActionWrapper-
|
|
55
|
+
//# sourceMappingURL=PageActionWrapper-D0NcrIw5.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageActionWrapper-
|
|
1
|
+
{"version":3,"file":"PageActionWrapper-D0NcrIw5.js","names":[],"sources":["../src/actions/PageActionWrapper.jsx"],"sourcesContent":["import React, { useCallback, useState, useEffect, useMemo } from 'react';\nimport { useSnackbar } from 'notistack';\nimport { ActionSplitScreen } from './ActionSplitScreen';\nimport { useActionState } from '../hooks/useActions';\nimport { apiMutate } from '../utilities/useAxiosMutate';\nimport { PageSubHeaderActionsTarget } from '../utilities/page/PageSubHeaderAction';\nimport { useActionStore } from '../stores/actionStore';\nimport { useShellStore } from '../stores/shellStore';\nimport { ConfigService } from '../configService';\n\nexport const PageActionWrapper = (props) => {\n const {\n children,\n forPageContainer = false,\n splitScreenStateKey = 'pageSplitScreen'\n } = props;\n const [actionPanel, setActionPanel] = useState(null);\n const { enqueueSnackbar } = useSnackbar();\n const actionState = useActionState();\n const selectedNode = useActionStore((state) => state.selectedNode);\n const currentContainerId = useShellStore((state) => state.currentContainerId);\n\n const action = useMemo(() => {\n let selectedAction = null;\n if (actionState) {\n if (actionState.pageSplitScreen?.action) {\n selectedAction = actionState.pageSplitScreen.action;\n }\n }\n\n return selectedAction;\n }, [actionState]);\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 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 return (\n <>\n <PageSubHeaderActionsTarget />\n <ActionSplitScreen\n body={children}\n open={actionState?.[splitScreenStateKey]?.open}\n action={actionState?.[splitScreenStateKey]?.action}\n type={actionState?.[splitScreenStateKey]?.type}\n params={actionState?.[splitScreenStateKey]?.params}\n executeAction={executeAction}\n actionPanel={actionPanel}\n enqueueSnackbar={enqueueSnackbar}\n selectedNodeObj={selectedNode?.nodeObj}\n menuNodeList={actionState?.menuListState?.menuList}\n forPage={true}\n forPageContainer={forPageContainer}\n selectedNode={\n actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n }\n selectedNodeParent={\n actionState?.inquiryParams[currentContainerId || 0]\n ?.selectedNodeParent\n }\n refreshTree={\n actionState?.inquiryParams[currentContainerId || 0]?.refreshTree\n }\n />\n </>\n );\n};\n"],"mappings":";;;;;;;;;;;AAUA,MAAa,qBAAqB,UAAU;CAC1C,MAAM,EACJ,UACA,mBAAmB,OACnB,sBAAsB,sBACpB;CACJ,MAAM,CAAC,aAAa,kBAAkB,SAAS,KAAK;CACpD,MAAM,EAAE,oBAAoB,aAAa;CACzC,MAAM,cAAc,gBAAgB;CACpC,MAAM,eAAe,gBAAgB,UAAU,MAAM,aAAa;CAClE,MAAM,qBAAqB,eAAe,UAAU,MAAM,mBAAmB;CAE7E,MAAM,SAAS,cAAc;EAC3B,IAAI,iBAAiB;AACrB,MAAI,aACF;OAAI,YAAY,iBAAiB,OAC/B,kBAAiB,YAAY,gBAAgB;;AAIjD,SAAO;IACN,CAAC,YAAY,CAAC;CAEjB,MAAM,gBAAgB,YACpB,OAAO,MAAM,OACX,UACE,cAAc,qBACd,wCAAwC,MACxC,EACE,QAAQ,QACT,EACD,KACD,EACH,EAAE,CACH;AAED,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,QACE,0DACE,oCAAC,iCAA6B,EAC9B,oCAAC;EACC,MAAM;EACN,MAAM,cAAc,sBAAsB;EAC1C,QAAQ,cAAc,sBAAsB;EAC5C,MAAM,cAAc,sBAAsB;EAC1C,QAAQ,cAAc,sBAAsB;EAC7B;EACF;EACI;EACjB,iBAAiB,cAAc;EAC/B,cAAc,aAAa,eAAe;EAC1C,SAAS;EACS;EAClB,cACE,aAAa,cAAc,sBAAsB,IAAI;EAEvD,oBACE,aAAa,cAAc,sBAAsB,IAC7C;EAEN,aACE,aAAa,cAAc,sBAAsB,IAAI;GAEvD,CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageNotFoundRoute-
|
|
1
|
+
{"version":3,"file":"PageNotFoundRoute-CQzy18Sw.js","names":[],"sources":["../src/routes/components/PageNotFoundRoute.jsx"],"sourcesContent":["import React from 'react';\nimport { makeStyles } from '@material-ui/core';\nimport { useTranslation } from 'react-i18next';\nimport { PageStatus } from './PageStatus';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n marginTop: theme.spacing(4)\n }\n}));\n\nexport const PageNotFoundRoute = () => {\n const classes = useStyles();\n const { t } = useTranslation();\n return (\n <div className={classes.root}>\n <PageStatus\n statusCode={404}\n title={t('Page Not Found')}\n subheader={t(\"Sorry, we can't find the page you are looking for.\")}\n message={t(\n 'You may have typed the address incorrectly or you may have used an outdated link.'\n )}\n to='/'\n buttonLabel={t('Back to Home Page')}\n />\n </div>\n );\n};\n\nexport default PageNotFoundRoute;\n"],"mappings":";;;;;;AAKA,MAAM,YAAY,YAAY,WAAW,EACvC,MAAM,EACJ,WAAW,MAAM,QAAQ,EAAE,EAC5B,EACF,EAAE;AAEH,MAAa,0BAA0B;CACrC,MAAM,UAAU,WAAW;CAC3B,MAAM,EAAE,MAAM,gBAAgB;AAC9B,QACE,oCAAC,SAAI,WAAW,QAAQ,QACtB,oCAAC;EACC,YAAY;EACZ,OAAO,EAAE,iBAAiB;EAC1B,WAAW,EAAE,qDAAqD;EAClE,SAAS,EACP,oFACD;EACD,IAAG;EACH,aAAa,EAAE,oBAAoB;GACnC,CACE;;AAIV,gCAAe"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { n as PageNotFoundRoute_default, t as PageNotFoundRoute } from "./PageNotFoundRoute-
|
|
1
|
+
import { n as PageNotFoundRoute_default, t as PageNotFoundRoute } from "./PageNotFoundRoute-CQzy18Sw.js";
|
|
2
2
|
|
|
3
3
|
export { PageNotFoundRoute, PageNotFoundRoute_default as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as withEngineComponent } from "./withEngineComponent-
|
|
1
|
+
import { t as withEngineComponent } from "./withEngineComponent-Css79hMi.js";
|
|
2
2
|
import { cloneElement, useCallback } from "react";
|
|
3
3
|
import PropTypes from "prop-types";
|
|
4
4
|
|
|
@@ -26,4 +26,4 @@ PageRenderer.propTypes = { viewBuilderMetaData: PropTypes.array.isRequired };
|
|
|
26
26
|
|
|
27
27
|
//#endregion
|
|
28
28
|
export { PageRenderer as t };
|
|
29
|
-
//# sourceMappingURL=PageRenderer-
|
|
29
|
+
//# sourceMappingURL=PageRenderer-uHAdepVs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageRenderer-
|
|
1
|
+
{"version":3,"file":"PageRenderer-uHAdepVs.js","names":[],"sources":["../src/componentSystems/pageRenderer/PageRenderer.js"],"sourcesContent":["import { useCallback, cloneElement } from 'react';\nimport { withEngineComponent } from './hocs/withEngineComponent';\nimport PropTypes from 'prop-types';\n\nexport const PageRenderer = (props) => {\n const {\n viewBuilderMetaData,\n setSideSheetOpen,\n sideSheetOpen,\n sideSheetComponent,\n setSideSheetComponent\n } = props;\n\n // useCallback is used to prevent an error due to a nested useEffect inside useMemo\n const RenderPageComponentTree = useCallback(() => {\n if (!viewBuilderMetaData || !viewBuilderMetaData.length) return;\n\n const componentsList =\n viewBuilderMetaData &&\n viewBuilderMetaData.map((item, index) =>\n item?.map((subItem) =>\n withEngineComponent(subItem.component)({\n propsComponent: subItem,\n setSideSheetOpen,\n sideSheetOpen,\n sideSheetComponent,\n setSideSheetComponent\n })\n )\n );\n\n // viewBuilderMetaData.map(item => {\n // item.map(subItem => {\n // console.log('subItem', subItem);\n // });\n // });\n\n return componentsList?.flat() || [];\n }, [\n setSideSheetComponent,\n setSideSheetOpen,\n sideSheetComponent,\n sideSheetOpen,\n viewBuilderMetaData\n ]);\n\n return RenderPageComponentTree()?.map(\n (component, index) => cloneElement(component)\n //cloneElement(component, { key: index })\n );\n};\n\nPageRenderer.propTypes = {\n /**\n * View Builder Meta Data\n */\n viewBuilderMetaData: PropTypes.array.isRequired\n};\n"],"mappings":";;;;;AAIA,MAAa,gBAAgB,UAAU;CACrC,MAAM,EACJ,qBACA,kBACA,eACA,oBACA,0BACE;AAmCJ,QAhCgC,kBAAkB;AAChD,MAAI,CAAC,uBAAuB,CAAC,oBAAoB,OAAQ;AAsBzD,UAnBE,uBACA,oBAAoB,KAAK,MAAM,UAC7B,MAAM,KAAK,YACT,oBAAoB,QAAQ,UAAU,CAAC;GACrC,gBAAgB;GAChB;GACA;GACA;GACA;GACD,CAAC,CACH,CACF,GAQoB,MAAM,IAAI,EAAE;IAClC;EACD;EACA;EACA;EACA;EACA;EACD,CAAC,EAE8B,EAAE,KAC/B,WAAW,UAAU,aAAa,UAAU,CAE9C;;AAGH,aAAa,YAAY,EAIvB,qBAAqB,UAAU,MAAM,YACtC"}
|