udp-react-enterprise-component-library 25.18.1-beta.43 → 25.18.1-beta.45
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/{AadCallback-DI_SnmOU.js → AadCallback-Bor16_h3.js} +1 -1
- package/dist/{AadCallback-DI_SnmOU.js.map → AadCallback-Bor16_h3.js.map} +1 -1
- package/dist/{AmChart-WvmHsOdz.js → AmChart-CTixft8X.js} +1 -1
- package/dist/{AmChart-WvmHsOdz.js.map → AmChart-CTixft8X.js.map} +1 -1
- package/dist/{AmbientSingleDateSelector-8uylQ-tc.js → AmbientSingleDateSelector-D3xyjMky.js} +1 -1
- package/dist/{AmbientSingleDateSelector-8uylQ-tc.js.map → AmbientSingleDateSelector-D3xyjMky.js.map} +1 -1
- package/dist/{AmbientVisualizationCard-Cov8RODG.js → AmbientVisualizationCard-Dig-Mh_G.js} +3 -3
- package/dist/{AmbientVisualizationCard-Cov8RODG.js.map → AmbientVisualizationCard-Dig-Mh_G.js.map} +1 -1
- package/dist/{AmbientVisualizer-Bo7NLGfw.js → AmbientVisualizer-B1Xwwe0J.js} +1 -1
- package/dist/{AmbientVisualizer-Bo7NLGfw.js.map → AmbientVisualizer-B1Xwwe0J.js.map} +1 -1
- package/dist/{BarChartWidget-D-_ZVpMh.js → BarChartWidget-Dwav8_8e.js} +1 -1
- package/dist/{BarChartWidget-D-_ZVpMh.js.map → BarChartWidget-Dwav8_8e.js.map} +1 -1
- package/dist/{BaseTreeMenu-nKjw3cil.js → BaseTreeMenu-CBFIl0VF.js} +1 -1
- package/dist/{BaseTreeMenu-nKjw3cil.js.map → BaseTreeMenu-CBFIl0VF.js.map} +1 -1
- package/dist/{BubbleWidget-SplMEBJm.js → BubbleWidget-CsIheJTW.js} +2 -2
- package/dist/{BubbleWidget-SplMEBJm.js.map → BubbleWidget-CsIheJTW.js.map} +1 -1
- package/dist/{CardList-B_F1Qgqh.js → CardList-BPNGTxsh.js} +1 -1
- package/dist/{CardList-B_F1Qgqh.js.map → CardList-BPNGTxsh.js.map} +1 -1
- package/dist/{ContentContainer-DuDrf5lL.js → ContentContainer-C2CcA6oX.js} +1 -1
- package/dist/{ContentContainer-DuDrf5lL.js.map → ContentContainer-C2CcA6oX.js.map} +1 -1
- package/dist/{DateTrendWidget-F6hBnYej.js → DateTrendWidget-cdExY12Q.js} +1 -1
- package/dist/{DateTrendWidget-F6hBnYej.js.map → DateTrendWidget-cdExY12Q.js.map} +1 -1
- package/dist/{DensePlotWidget-BEhHNh53.js → DensePlotWidget-DHRKyeck.js} +1 -1
- package/dist/{DensePlotWidget-BEhHNh53.js.map → DensePlotWidget-DHRKyeck.js.map} +1 -1
- package/dist/{Directory-CFTCLxWZ.js → Directory-CoEKdRkU.js} +1 -1
- package/dist/{Directory-CFTCLxWZ.js.map → Directory-CoEKdRkU.js.map} +1 -1
- package/dist/{EntityHeader-D_gYzj76.js → EntityHeader-DiOEw-za.js} +1 -1
- package/dist/{EntityHeader-D_gYzj76.js.map → EntityHeader-DiOEw-za.js.map} +1 -1
- package/dist/{FieldArrayCard-Bv9h9akG.js → FieldArrayCard-BbCCfs6l.js} +2 -2
- package/dist/{FieldArrayCard-Bv9h9akG.js.map → FieldArrayCard-BbCCfs6l.js.map} +1 -1
- package/dist/{FileUpload-BCxrOds_.js → FileUpload-BpMG2Efl.js} +1 -1
- package/dist/{FileUpload-BCxrOds_.js.map → FileUpload-BpMG2Efl.js.map} +1 -1
- package/dist/{FluentCardHeader-BdMB2qzK.js → FluentCardHeader-CRJaqkV3.js} +1 -1
- package/dist/{FluentCardHeader-BdMB2qzK.js.map → FluentCardHeader-CRJaqkV3.js.map} +1 -1
- package/dist/{FluentLink-DP2eDAH2.js → FluentLink-D-gKioCQ.js} +1 -1
- package/dist/{FluentLink-DP2eDAH2.js.map → FluentLink-D-gKioCQ.js.map} +1 -1
- package/dist/{FluentRadioGroup-CCKelZVk.js → FluentRadioGroup-DWOMSBGp.js} +1 -1
- package/dist/{FluentRadioGroup-CCKelZVk.js.map → FluentRadioGroup-DWOMSBGp.js.map} +1 -1
- package/dist/{FluentSelectMenu-yQMFZWEg.js → FluentSelectMenu-BEREJbe-.js} +1 -1
- package/dist/{FluentSelectMenu-yQMFZWEg.js.map → FluentSelectMenu-BEREJbe-.js.map} +1 -1
- package/dist/{FluentSimpleSelect-DxxbQV37.js → FluentSimpleSelect-Djff-up8.js} +2 -2
- package/dist/{FluentSimpleSelect-DxxbQV37.js.map → FluentSimpleSelect-Djff-up8.js.map} +1 -1
- package/dist/{FluentTimePicker-LUfZzJJZ.js → FluentTimePicker-hNcocKsd.js} +1 -1
- package/dist/{FluentTimePicker-LUfZzJJZ.js.map → FluentTimePicker-hNcocKsd.js.map} +1 -1
- package/dist/{FluentTimeline-BEPJHsgi.js → FluentTimeline-D8sfgLj1.js} +1 -1
- package/dist/{FluentTimeline-BEPJHsgi.js.map → FluentTimeline-D8sfgLj1.js.map} +1 -1
- package/dist/{GraphCard-CcXwOERk.js → GraphCard-Dv4a99wo.js} +1 -1
- package/dist/{GraphCard-CcXwOERk.js.map → GraphCard-Dv4a99wo.js.map} +1 -1
- package/dist/{IconKey-CbK8_rol.js → IconKey-D7fZ_U4O.js} +1 -1
- package/dist/{IconKey-CbK8_rol.js.map → IconKey-D7fZ_U4O.js.map} +1 -1
- package/dist/{LineAndSparklinesWidget-KVAnvpKl.js → LineAndSparklinesWidget-CUq3QxmN.js} +1 -1
- package/dist/{LineAndSparklinesWidget-KVAnvpKl.js.map → LineAndSparklinesWidget-CUq3QxmN.js.map} +1 -1
- package/dist/{LineGraphWidget-CYjLiV5B.js → LineGraphWidget-DOwAVdTR.js} +1 -1
- package/dist/{LineGraphWidget-CYjLiV5B.js.map → LineGraphWidget-DOwAVdTR.js.map} +1 -1
- package/dist/MenuPage-DP1ATpru.js +3 -0
- package/dist/{MenuPage-BS8ti9lx.js → MenuPage-fqEs3MSY.js} +2 -2
- package/dist/{MenuPage-BS8ti9lx.js.map → MenuPage-fqEs3MSY.js.map} +1 -1
- package/dist/{MyExportsPage-BwcVZASe.js → MyExportsPage-DMcJRz8T.js} +2 -2
- package/dist/{MyExportsPage-BwcVZASe.js.map → MyExportsPage-DMcJRz8T.js.map} +1 -1
- package/dist/MyExportsPage-zF3FjtDl.js +3 -0
- package/dist/{NewsCard-Y-exMCuK.js → NewsCard-C3y9a_OJ.js} +1 -1
- package/dist/{NewsCard-Y-exMCuK.js.map → NewsCard-C3y9a_OJ.js.map} +1 -1
- package/dist/{Notes-i2G6Ugsq.js → Notes-UkwV2z4D.js} +1 -1
- package/dist/{Notes-i2G6Ugsq.js.map → Notes-UkwV2z4D.js.map} +1 -1
- package/dist/{OutlookCallback-teOtztm6.js → OutlookCallback-D3no-Urx.js} +1 -1
- package/dist/{OutlookCallback-teOtztm6.js.map → OutlookCallback-D3no-Urx.js.map} +1 -1
- package/dist/{PageNotFoundRoute-i_Tf23jB.js → PageNotFoundRoute-0WmBAAdO.js} +1 -1
- package/dist/{PageNotFoundRoute-i_Tf23jB.js.map → PageNotFoundRoute-0WmBAAdO.js.map} +1 -1
- package/dist/{PageNotFoundRoute-B_mbfK8s.js → PageNotFoundRoute-DKg6oVCt.js} +1 -1
- package/dist/{PaymentForm-BTLh5bXJ.js → PaymentForm-CRlhsB2F.js} +2 -2
- package/dist/{PaymentForm-BTLh5bXJ.js.map → PaymentForm-CRlhsB2F.js.map} +1 -1
- package/dist/{RejectIcon-CNSkW92y.js → RejectIcon-CpF_J5Je.js} +1 -1
- package/dist/{RejectIcon-CNSkW92y.js.map → RejectIcon-CpF_J5Je.js.map} +1 -1
- package/dist/Reports-C596PoM-.js +3 -0
- package/dist/{Reports-Cz5Pl1rM.js → Reports-v6qpOsDL.js} +1 -1
- package/dist/{Reports-Cz5Pl1rM.js.map → Reports-v6qpOsDL.js.map} +1 -1
- package/dist/{Shell-CAPPm490.js → Shell-N3oRzrDU.js} +8 -6
- package/dist/Shell-N3oRzrDU.js.map +1 -0
- package/dist/{SimpleTable-z8tz6B0B.js → SimpleTable-CVGolzeI.js} +1 -1
- package/dist/{SimpleTable-z8tz6B0B.js.map → SimpleTable-CVGolzeI.js.map} +1 -1
- package/dist/{SiteHeader-wIcmMhx9.js → SiteHeader-KoNZC5W5.js} +5 -5
- package/dist/{SiteHeader-wIcmMhx9.js.map → SiteHeader-KoNZC5W5.js.map} +1 -1
- package/dist/{SparsePlotWidget-B3wtNHo2.js → SparsePlotWidget-ZYP6TKB6.js} +1 -1
- package/dist/{SparsePlotWidget-B3wtNHo2.js.map → SparsePlotWidget-ZYP6TKB6.js.map} +1 -1
- package/dist/{Statistic-IWynWCev.js → Statistic-ChTR_kas.js} +1 -1
- package/dist/{Statistic-IWynWCev.js.map → Statistic-ChTR_kas.js.map} +1 -1
- package/dist/{StatusCellRenderer-BuPuvngw.js → StatusCellRenderer-E7SYy9Qk.js} +1 -1
- package/dist/{StatusCellRenderer-BuPuvngw.js.map → StatusCellRenderer-E7SYy9Qk.js.map} +1 -1
- package/dist/{TicketCard-D-FtADsb.js → TicketCard-IqCCKSc0.js} +1 -1
- package/dist/{TicketCard-D-FtADsb.js.map → TicketCard-IqCCKSc0.js.map} +1 -1
- package/dist/{TimelineCalendar-Mi4baqsg.js → TimelineCalendar-CZ5vmO43.js} +1 -1
- package/dist/{TimelineCalendar-Mi4baqsg.js.map → TimelineCalendar-CZ5vmO43.js.map} +1 -1
- package/dist/{TokenGroupItem-DKbm__Kc.js → TokenGroupItem-BK0dx4cD.js} +1 -1
- package/dist/{TokenGroupItem-DKbm__Kc.js.map → TokenGroupItem-BK0dx4cD.js.map} +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/map/index.js +1 -1
- package/dist/UI/dataDisplay/notes/index.js +1 -1
- package/dist/UI/dataDisplay/status/index.js +1 -1
- package/dist/UI/dataDisplay/ticketCard/index.js +1 -1
- package/dist/UI/dataDisplay/typography/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/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/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/ui/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/UdpGridTemplate/index.js +1 -1
- package/dist/UI/templates/ui/index.js +1 -1
- package/dist/UI/templates/ui/renderers/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/DateTrendWidget/index.js +1 -1
- package/dist/UI/widgets/library/DensePlotWidget/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/SparsePlotWidget/index.js +1 -1
- package/dist/UI/widgets/library/TableWidget/index.js +1 -1
- package/dist/{UdpAppProvider-BRyRY8zN.js → UdpAppProvider-C0VlxSna.js} +2 -2
- package/dist/{UdpAppProvider-BRyRY8zN.js.map → UdpAppProvider-C0VlxSna.js.map} +1 -1
- package/dist/{UdpCalendarYearView-BSR8CGHt.js → UdpCalendarYearView-BEdW-myL.js} +1 -1
- package/dist/{UdpCalendarYearView-BSR8CGHt.js.map → UdpCalendarYearView-BEdW-myL.js.map} +1 -1
- package/dist/{UdpDateRangeSelector-C_gpkHul.js → UdpDateRangeSelector-BivfBlPa.js} +1 -1
- package/dist/{UdpDateRangeSelector-C_gpkHul.js.map → UdpDateRangeSelector-BivfBlPa.js.map} +1 -1
- package/dist/{UdpFormsSubmissionGrid-PWsnFyYB.js → UdpFormsSubmissionGrid-BJ0rj-Tr.js} +2 -2
- package/dist/{UdpFormsSubmissionGrid-PWsnFyYB.js.map → UdpFormsSubmissionGrid-BJ0rj-Tr.js.map} +1 -1
- package/dist/{UdpGridTemplate-U9YcYLUf.js → UdpGridTemplate-OsS_O6jR.js} +1 -1
- package/dist/{UdpGridTemplate-U9YcYLUf.js.map → UdpGridTemplate-OsS_O6jR.js.map} +1 -1
- package/dist/{UdpTransactionTypesPage-CUpHKA6y.js → UdpTransactionTypesPage-DxUsXnV7.js} +89 -13
- package/dist/UdpTransactionTypesPage-DxUsXnV7.js.map +1 -0
- package/dist/{UdpTransactionsPage-B5uhMoFg.js → UdpTransactionsPage-BZ0Idg5s.js} +38 -14
- package/dist/UdpTransactionsPage-BZ0Idg5s.js.map +1 -0
- package/dist/{UserFormSideSheet-B6Mn3bZ0.js → UserFormSideSheet-CSScPvy3.js} +1 -1
- package/dist/{UserFormSideSheet-B6Mn3bZ0.js.map → UserFormSideSheet-CSScPvy3.js.map} +1 -1
- package/dist/UserFormSideSheet-DTPSRjGo.js +3 -0
- package/dist/{VirtualBrowser-C2oPh3YY.js → VirtualBrowser-BeHqBuGi.js} +1 -1
- package/dist/{VirtualBrowser-C2oPh3YY.js.map → VirtualBrowser-BeHqBuGi.js.map} +1 -1
- package/dist/VirtualBrowser-CjHGq92s.js +3 -0
- package/dist/{WorkOrderCard-Ce5WrpnX.js → WorkOrderCard-s-6QK3Re.js} +1 -1
- package/dist/{WorkOrderCard-Ce5WrpnX.js.map → WorkOrderCard-s-6QK3Re.js.map} +1 -1
- package/dist/{WorkflowContainer-Cd5H4mpf.js → WorkflowContainer-BheQPhXt.js} +1 -1
- package/dist/{WorkflowContainer-Cd5H4mpf.js.map → WorkflowContainer-BheQPhXt.js.map} +1 -1
- package/dist/{WorkflowContainer-Iq8fmnGR.js → WorkflowContainer-CHmVR99E.js} +1 -1
- package/dist/{aggridHelpers-BeUZvPIv.js → aggridHelpers-RYO7tWY9.js} +1 -1
- package/dist/{aggridHelpers-BeUZvPIv.js.map → aggridHelpers-RYO7tWY9.js.map} +1 -1
- package/dist/{gridVisualizationFunctions-jnvPACJD.js → gridVisualizationFunctions-Cmh4EUIL.js} +1 -1
- package/dist/{gridVisualizationFunctions-jnvPACJD.js.map → gridVisualizationFunctions-Cmh4EUIL.js.map} +1 -1
- package/dist/index.js +56 -56
- package/dist/maintenanceEngine/index.js +1 -1
- package/dist/maintenanceEngine/virtualBrowser/index.js +1 -1
- package/dist/menuPage/index.js +1 -1
- package/dist/{menuPage-B9NwQJVt.js → menuPage-PIJOkANO.js} +2 -2
- package/dist/{menuPage-B9NwQJVt.js.map → menuPage-PIJOkANO.js.map} +1 -1
- package/dist/{pickers-CkwI49Ju.js → pickers-B-bB40GS.js} +1 -1
- package/dist/{pickers-CkwI49Ju.js.map → pickers-B-bB40GS.js.map} +1 -1
- package/dist/providers/index.js +1 -1
- package/dist/routes/components/index.js +1 -1
- package/dist/routes/index.js +1 -1
- package/dist/{routes-DG4NLFP9.js → routes-3HDtkQKa.js} +8 -8
- package/dist/{routes-DG4NLFP9.js.map → routes-3HDtkQKa.js.map} +1 -1
- package/dist/shell/index.js +2 -2
- package/dist/shell/ui/index.js +1 -1
- package/dist/{status-Bmaija4B.js → status-moefSFBs.js} +1 -1
- package/dist/{status-Bmaija4B.js.map → status-moefSFBs.js.map} +1 -1
- package/dist/{theme-IKiRfNgl.js → theme-Bb8h8tjE.js} +1 -1
- package/dist/{theme-IKiRfNgl.js.map → theme-Bb8h8tjE.js.map} +1 -1
- package/dist/tree-CFbEBH8N.js +1 -0
- package/dist/treeMenu/index.js +1 -1
- package/dist/types/src/maintenanceEngine/tableBrowser/TableColumnDefs.d.ts +1 -1
- package/dist/types/src/maintenanceEngine/tableBrowser/TableColumnDefs.d.ts.map +1 -1
- package/dist/types/src/shell/Shell.d.ts.map +1 -1
- package/dist/types/src/shell/ui/SiteHeader.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/UdpTransactionTypeConfigurationForm.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeForm.d.ts.map +1 -1
- package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeStatusSidesheet.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/utilities/transactionConstants.d.ts +4 -0
- package/dist/types/src/udp/utilities/transactionConstants.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/dist/{typography-IJpS01q9.js → typography-CvW7cAl8.js} +1 -1
- package/dist/{typography-IJpS01q9.js.map → typography-CvW7cAl8.js.map} +1 -1
- package/dist/udp/export/index.js +1 -1
- package/dist/udp/pages/UdpFormsSubmissionGrid/index.js +1 -1
- package/dist/udp/pages/UdpPages/index.js +2 -2
- package/dist/udp/pages/UdpTransactionTypesPage/index.js +1 -1
- package/dist/udp/pages/UdpTransactionsPage/index.js +1 -1
- package/dist/uploader/index.js +1 -1
- package/dist/{uploader-CPU1l-ss.js → uploader-Dvf2cDh8.js} +1 -1
- package/dist/{uploader-CPU1l-ss.js.map → uploader-Dvf2cDh8.js.map} +1 -1
- package/dist/utilities/aggrid/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/redirect/pages/index.js +1 -1
- package/dist/utilities/style/index.js +1 -1
- package/dist/utilities/theme/index.js +1 -1
- package/dist/utilities/uploader/index.js +1 -1
- package/dist/workflow/index.js +1 -1
- package/export-map.json +1 -1
- package/package.json +1 -1
- package/dist/MenuPage-DV20TjmL.js +0 -3
- package/dist/MyExportsPage-B3A6lwaV.js +0 -3
- package/dist/Reports-CLowSLq9.js +0 -3
- package/dist/Shell-CAPPm490.js.map +0 -1
- package/dist/UdpTransactionTypesPage-CUpHKA6y.js.map +0 -1
- package/dist/UdpTransactionsPage-B5uhMoFg.js.map +0 -1
- package/dist/UserFormSideSheet-C1G_jBcu.js +0 -3
- package/dist/VirtualBrowser-BoHR4EBJ.js +0 -3
- /package/dist/{addUser-B8dGyltZ.js → addUser-3C9adhp4.js} +0 -0
- /package/dist/{appSwitcher-Bcd4Cwcx.js → appSwitcher-qrbuBiQq.js} +0 -0
- /package/dist/{modified-BZxg92lm.js → entities-EYifmulZ.js} +0 -0
- /package/dist/{redirect-dbCS_8ib.js → modified-BHJzuqPC.js} +0 -0
- /package/dist/{renderers-DTo5-0ZY.js → redirect-DWQJKU5S.js} +0 -0
- /package/dist/{storage-C9onsVtI.js → renderers-Akwy6J9H.js} +0 -0
- /package/dist/{tree-CDeJs_2Q.js → storage-CdtCFv8N.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typography-
|
|
1
|
+
{"version":3,"file":"typography-CvW7cAl8.js","names":[],"sources":["../src/UI/dataDisplay/typography/FormHeaders.jsx","../src/UI/dataDisplay/typography/StylizedTitle.jsx"],"sourcesContent":["import React from 'react'\nimport { makeStyles, Typography, lighten } from '@material-ui/core'\nimport clsx from 'clsx'\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n fontWeight: 500\n },\n header: {\n fontSize: 18\n },\n subHeader: {\n fontSize: 14,\n color: lighten(theme.palette.common.black, 0.5)\n }\n}))\n\nexport const FormHeader = (props) => {\n const { children } = props\n const classes = useStyles()\n return (\n <Typography className={clsx(classes.header, classes.root)}>\n {children}\n </Typography>\n )\n}\nexport const FormSubHeader = (props) => {\n const { children } = props\n const classes = useStyles()\n return (\n <Typography className={clsx(classes.subHeader, classes.root)}>\n {children}\n </Typography>\n )\n}\n","import React from 'react'\nimport { Typography, useTheme } from '@material-ui/core'\nimport PropTypes from 'prop-types'\n\nexport const StylizedTitle = ({ children, color, component = 'h2' }) => {\n const theme = useTheme()\n\n return (\n <div\n style={{\n borderLeft: `4px solid ${color || theme.palette.secondary.main}`,\n paddingLeft: 8\n }}\n >\n <Typography variant='h6' component={component}>\n {children}\n </Typography>\n </div>\n )\n}\n\nStylizedTitle.propTypes = {\n /**\n * Wraps the title\n */\n children: PropTypes.node.isRequired,\n /**\n * Provides a color block\n */\n color: PropTypes.string,\n /**\n * Header Tag override. Defaults to H2\n */\n component: PropTypes.string\n}\n\nStylizedTitle.defaultProps = {\n component: 'h2'\n}\n"],"mappings":";;;;;;AAIA,MAAM,YAAY,YAAY,WAAW;CACvC,MAAM,EACJ,YAAY,KACb;CACD,QAAQ,EACN,UAAU,IACX;CACD,WAAW;EACT,UAAU;EACV,OAAO,QAAQ,MAAM,QAAQ,OAAO,OAAO,GAAI;EAChD;CACF,EAAE;AAEH,MAAa,cAAc,UAAU;CACnC,MAAM,EAAE,aAAa;CACrB,MAAM,UAAU,WAAW;AAC3B,QACE,oCAAC,cAAW,WAAW,KAAK,QAAQ,QAAQ,QAAQ,KAAK,IACtD,SACU;;AAGjB,MAAa,iBAAiB,UAAU;CACtC,MAAM,EAAE,aAAa;CACrB,MAAM,UAAU,WAAW;AAC3B,QACE,oCAAC,cAAW,WAAW,KAAK,QAAQ,WAAW,QAAQ,KAAK,IACzD,SACU;;;;;AC5BjB,MAAa,iBAAiB,EAAE,UAAU,OAAO,YAAY,WAAW;CACtE,MAAM,QAAQ,UAAU;AAExB,QACE,oCAAC,SACC,OAAO;EACL,YAAY,aAAa,SAAS,MAAM,QAAQ,UAAU;EAC1D,aAAa;EACd,IAED,oCAAC;EAAW,SAAQ;EAAgB;IACjC,SACU,CACT;;AAIV,cAAc,YAAY;CAIxB,UAAU,UAAU,KAAK;CAIzB,OAAO,UAAU;CAIjB,WAAW,UAAU;CACtB;AAED,cAAc,eAAe,EAC3B,WAAW,MACZ"}
|
package/dist/udp/export/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { n as VisualSearchObject, r as useUdpExport, t as ExportSidesheet } from "../../ExportSidesheet-DWkoiwxC.js";
|
|
2
|
-
import { t as MyExportsPage } from "../../MyExportsPage-
|
|
2
|
+
import { t as MyExportsPage } from "../../MyExportsPage-DMcJRz8T.js";
|
|
3
3
|
|
|
4
4
|
export { ExportSidesheet, MyExportsPage, VisualSearchObject, useUdpExport };
|
|
@@ -18,8 +18,8 @@ import { t as UdpFormsListPage_exports } from "../../../UdpFormsListPage-BsTi2bX
|
|
|
18
18
|
import { t as UdpFormsBuilderPage_exports } from "../../../UdpFormsBuilderPage-C1oc66zH.js";
|
|
19
19
|
import { t as UdpImportFromFileMappingPage_exports } from "../../../UdpImportFromFileMappingPage-BOBh4ySA.js";
|
|
20
20
|
import { t as UdpAuditEvents_exports } from "../../../UdpAuditEvents-Bqz0_-Du.js";
|
|
21
|
-
import { t as UdpTransactionTypesPage_exports } from "../../../UdpTransactionTypesPage-
|
|
22
|
-
import { t as UdpTransactionsPage_exports } from "../../../UdpTransactionsPage-
|
|
21
|
+
import { t as UdpTransactionTypesPage_exports } from "../../../UdpTransactionTypesPage-DxUsXnV7.js";
|
|
22
|
+
import { t as UdpTransactionsPage_exports } from "../../../UdpTransactionsPage-BZ0Idg5s.js";
|
|
23
23
|
|
|
24
24
|
//#region src/udp/pages/UdpPages/index.ts
|
|
25
25
|
const UdpPages = {
|
package/dist/uploader/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { t as DragDropFileUpload } from "../DragDropFileUpload-CVnUu-6f.js";
|
|
2
|
-
import { n as FileType, t as Attachments } from "../uploader-
|
|
2
|
+
import { n as FileType, t as Attachments } from "../uploader-Dvf2cDh8.js";
|
|
3
3
|
|
|
4
4
|
export { Attachments, DragDropFileUpload, FileType };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploader-CPU1l-ss.js","names":["useStyles","FileProfile","ImagePreview","attachmentType","Box","DeleteIcon","LinearProgress"],"sources":["../src/uploader/FileProfile.jsx","../src/uploader/ImagePreview.jsx","../src/uploader/FileType.jsx","../src/uploader/enums/systemEnums.ts","../src/uploader/Attachments.jsx"],"sourcesContent":["import React from 'react'\nimport { Typography, makeStyles } from '@material-ui/core'\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: 'flex',\n flexDirection: 'row'\n },\n prefix: {\n fontWeight: 600\n },\n title: {\n flex: 1\n },\n detail: {\n marginLeft: theme.spacing(2)\n }\n}))\n\nconst FileProfile = (props) => {\n const classes = useStyles()\n const { children, fileName, fileType, size, lastModifiedDate } = props\n return (\n <div>\n <div className={classes.root}>\n <Typography variant='body1' className={classes.title}>\n <strong>{fileName}</strong>\n </Typography>\n <Typography variant='caption' className={classes.detail}>\n <span className={classes.prefix}>Type:</span> {fileType}\n </Typography>\n <Typography variant='caption' className={classes.detail}>\n <span className={classes.prefix}>Size:</span> {size}\n </Typography>\n </div>\n {children}\n {/* Last modified not supported in FireFox */}\n {/* <Typography variant=\"caption\">\n <span className={classes.prefix}>Last Modified:</span>{' '}\n {lastModifiedDate}\n </Typography> */}\n </div>\n )\n}\nexport default FileProfile\n","import React from 'react'\nimport { makeStyles } from '@material-ui/core'\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: 'flex',\n justifyContent: 'center'\n },\n image: {\n maxWidth: 465\n }\n}))\n\nconst ImagePreview = (props) => {\n const { image } = props\n const classes = useStyles()\n\n return (\n <div className={classes.root}>\n <img className={classes.image} src={image} alt='upload preview' />\n </div>\n )\n}\nexport default ImagePreview\n","import React from 'react'\nimport FileProfile from './FileProfile'\nimport ImagePreview from './ImagePreview'\n\nexport const FileType = (props) => {\n let type = ''\n const { fileType, image, fileName, size, lastModifiedDate } = props\n\n switch (fileType) {\n case 'pdf':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n />\n )\n break\n case 'doc':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n />\n )\n break\n case 'png':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n >\n <ImagePreview image={image} />\n </FileProfile>\n )\n break\n case 'jpg':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n >\n <ImagePreview image={image} />\n </FileProfile>\n )\n break\n case 'jpeg':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n >\n <ImagePreview image={image} />\n </FileProfile>\n )\n break\n\n default:\n }\n\n return type\n}\n","export enum APIStatusCode {\n Success = 200,\n Created = 201,\n Accepted = 202,\n NoContent = 204,\n Forbidden = 403,\n}\n\nexport enum AttachmentType {\n SiteInstruction = 1,\n RFI = 2\n}\n\nexport enum AttachmentAction {\n None = 1,\n Delete = 2,\n Remove = 3\n};\n","import React, { useCallback, useState } from 'react';\nimport { apiMutate } from '../utilities';\nimport { Box } from '../UI';\nimport { AmbientCard } from '../UI/surfaces/cards/AmbientCard';\nimport { DragDropFileUpload } from './DragDropFileUpload';\nimport { LinearProgress } from '../UI';\nimport { List, ListItem, IconButton } from '@material-ui/core';\nimport { ConfigService } from '../configService/index';\nimport DeleteIcon from '@material-ui/icons/Delete';\nimport { DownloadIcon, ChromeCloseIcon } from '@fluentui/react-icons';\nimport { useTranslation } from 'react-i18next';\nimport { useHandleAxiosSnackbar } from '../utilities';\nimport { Divider } from '@material-ui/core';\nimport { AttachmentAction } from './enums/systemEnums';\nimport { FluentDialog } from '../UI';\nimport { FluentIconButton } from '../UI/inputs/buttons';\nimport './Attachments.css';\nimport { AmbientAutoComplete } from '../UI/inputs/textField';\n\nconst removeDuplicateFiles = (incomingFiles, existingFiles) => {\n const uniqueFiles = [];\n const duplicateFiles = [];\n\n incomingFiles.forEach((newFile) => {\n const exists = existingFiles.some(\n (existingFile) =>\n existingFile.name === newFile.name ||\n existingFile.fileName === newFile.name\n );\n\n if (exists) {\n duplicateFiles.push(newFile);\n } else {\n uniqueFiles.push(newFile);\n }\n });\n\n return { uniqueFiles, duplicateFiles };\n};\n\nexport const Attachments = ({\n allowedExtensions,\n MAX_FILE_SIZE_MB,\n filePreview,\n setFilePreview,\n currentAttachments,\n setCurrentAttachments,\n attachmentTypes,\n attachmentType,\n setAttachmentType,\n attachmentProgress,\n setAttachmentProgress,\n previousAttachments,\n setPreviousAttachments\n}) => {\n const [attachmentDialogOpen, setAttachmentDialogOpen] = useState(false);\n const [attachmentToDelete, setAttachmentToDelete] = useState(null);\n const [attachmentToDeleteIndex, setAttachmentToDeleteIndex] = useState(0);\n const [attachmentAction, setAttachmentAction] = useState(\n AttachmentAction.None\n );\n\n const { handleErrorSnackbar, handleSuccessSnackbar } =\n useHandleAxiosSnackbar();\n const { t } = useTranslation();\n\n const initiateAttachmentAction = useCallback((action, file, index) => {\n setAttachmentAction(action);\n setAttachmentToDelete(file);\n setAttachmentToDeleteIndex(index);\n setAttachmentDialogOpen(true);\n }, []);\n\n const handleAttachmentDeleteClick = useCallback(\n (file, index) => {\n initiateAttachmentAction(AttachmentAction.Delete, file, index);\n },\n [initiateAttachmentAction]\n );\n\n const handleAttachmentRemoveClick = useCallback(\n (file, index) => {\n initiateAttachmentAction(AttachmentAction.Remove, file, index);\n },\n [initiateAttachmentAction]\n );\n\n const handleCloseAttachmentDialog = useCallback(() => {\n setAttachmentAction(AttachmentAction.None);\n setAttachmentToDelete({});\n setAttachmentDialogOpen(false);\n }, []);\n\n const removeAttachmentFromList = useCallback(\n (attachments, setAttachments) => {\n setAttachments((prev) =>\n prev.filter((item, i) => i !== attachmentToDeleteIndex)\n );\n handleSuccessSnackbar(t('Attachment Removed Successfully'));\n handleCloseAttachmentDialog();\n },\n [\n attachmentToDeleteIndex,\n handleSuccessSnackbar,\n handleCloseAttachmentDialog,\n t\n ]\n );\n\n const deleteAttachment = useCallback(async () => {\n try {\n setAttachmentProgress(true);\n const filePayload = { ...attachmentToDelete, isDeleted: true };\n\n await apiMutate(\n ConfigService.productV1ApiUrl,\n `UdpTransactionAttachment/${attachmentToDelete.transactionAttachmentId}`,\n {\n method: 'put',\n data: filePayload\n }\n );\n removeAttachmentFromList(previousAttachments, setPreviousAttachments);\n } catch (error) {\n handleErrorSnackbar(\n 'Failed to delete attachment',\n 'We encountered a system error while trying to delete the file. Please try again.'\n );\n console.error(error);\n } finally {\n setAttachmentProgress(false);\n setAttachmentDialogOpen(false);\n }\n }, [\n attachmentToDelete,\n removeAttachmentFromList,\n previousAttachments,\n setPreviousAttachments,\n setAttachmentProgress,\n handleErrorSnackbar\n ]);\n\n const handleDownloadFile = useCallback(async (file) => {\n try {\n const response = await apiMutate(\n ConfigService.productV1ApiUrl,\n `UdpTransactionAttachment/${file.transactionAttachmentId}/udpDriveFile/download`,\n {}\n );\n const url = response.data.link;\n const link = document.createElement('a');\n link.href = url;\n link.download = file.fileName ?? file.name;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } catch (e) {\n console.error('Download failed', e);\n }\n }, []);\n\n const handleAddFiles = useCallback(\n async (files) => {\n const incomingFiles = Array.from(files);\n const validFiles = [];\n const invalidFiles = [];\n\n incomingFiles.forEach((file) => {\n const ext = file.name.split('.').pop().toLowerCase();\n const sizeInMB = file.size / (1024 * 1024);\n\n if (!allowedExtensions.includes(ext)) {\n invalidFiles.push(`${file.name} (Invalid file type)`);\n } else if (sizeInMB > MAX_FILE_SIZE_MB) {\n invalidFiles.push(`${file.name} (Exceeds ${MAX_FILE_SIZE_MB} MB)`);\n } else {\n validFiles.push(file);\n }\n });\n\n const allExistingFiles = [...previousAttachments, ...currentAttachments];\n const { uniqueFiles, duplicateFiles } = removeDuplicateFiles(\n validFiles,\n allExistingFiles\n );\n\n if (uniqueFiles.length > 0) {\n setCurrentAttachments((prev) => [...prev, ...uniqueFiles]);\n }\n\n if (invalidFiles.length > 0) {\n handleErrorSnackbar(\n 'Files not added',\n `The following files had errors:\\n${invalidFiles.join('\\n')}`\n );\n setFilePreview(true);\n }\n\n if (duplicateFiles.length > 0) {\n const duplicateNames = duplicateFiles.map((f) => f.name).join(', ');\n handleErrorSnackbar(\n 'Duplicates skipped',\n `The following files already exist and were not added: ${duplicateNames}`\n );\n }\n },\n [\n allowedExtensions,\n MAX_FILE_SIZE_MB,\n previousAttachments,\n currentAttachments,\n setCurrentAttachments,\n handleErrorSnackbar,\n setFilePreview\n ]\n );\n\n const handleAttachmentTypeSelect = useCallback(\n (attachmentType) => {\n setAttachmentType(attachmentType);\n },\n [setAttachmentType]\n );\n\n const renderCurrentAttachments = () => {\n return currentAttachments.map((file, index) => (\n <React.Fragment key={index}>\n {index > 0 && <Divider component='li' />}\n <ListItem\n className='list-separator-item'\n style={{ display: 'flex', justifyContent: 'space-between' }}\n >\n <Box>{file.fileName ? file.fileName : file.name}</Box>\n <Box>\n <IconButton\n onClick={() => handleAttachmentRemoveClick(file, index)}\n >\n <DeleteIcon />\n </IconButton>\n </Box>\n </ListItem>\n </React.Fragment>\n ));\n };\n\n const renderPreviousAttachments = () => {\n return previousAttachments.map((file, index) => (\n <ListItem\n key={index}\n style={{ display: 'flex', justifyContent: 'space-between' }}\n >\n <Box>{file.fileName ?? file.name}</Box>\n <Box>\n <IconButton onClick={() => handleAttachmentDeleteClick(file, index)}>\n <DeleteIcon />\n </IconButton>\n <IconButton onClick={() => handleDownloadFile(file)}>\n <DownloadIcon />\n </IconButton>\n </Box>\n </ListItem>\n ));\n };\n\n const renderConfirmationContent = () => {\n const isDeleteAction = attachmentAction === AttachmentAction.Delete;\n const actionVerb = isDeleteAction ? 'delete' : 'remove';\n const fileName = attachmentToDelete?.fileName ?? attachmentToDelete?.name;\n\n return (\n <>\n <p className={'deleteSubTitle'}>\n Are you sure you want to {actionVerb} this attachment -{' '}\n <strong>{`\"${fileName}\"`}</strong>?\n </p>\n {isDeleteAction && <p>This action cannot be undone.</p>}\n </>\n );\n };\n\n return (\n <>\n <div className='card-wrapper'>\n {attachmentProgress && (\n <div className='linear-progress'>\n <LinearProgress />\n </div>\n )}\n <AmbientCard\n fullWidth={true}\n title={t('Add New Attachments')}\n variant='secondary'\n subtitle={'These files will be included with the submittal(s)'}\n >\n <DragDropFileUpload\n title='Drag and drop files here or click to browse'\n handleUploadFile={handleAddFiles}\n hideSelectFileButton={false}\n hideFilePreview={!filePreview}\n minHeight='200px'\n maxHeight='400px'\n multiple={true}\n />\n <AmbientAutoComplete\n variant='outlined'\n isMultiple={false}\n value={attachmentType}\n getOptionLabelFunction={(option) => option.name}\n onChange={handleAttachmentTypeSelect}\n options={attachmentTypes?.pageList}\n label={t('Select Attachment Type')}\n required\n />\n </AmbientCard>\n {currentAttachments?.length > 0 && (\n <AmbientCard\n fullWidth={true}\n title={t('Current Attachments')}\n subtitle={`${currentAttachments.length} file(s) attached`}\n >\n <List>{renderCurrentAttachments()}</List>\n </AmbientCard>\n )}\n {previousAttachments.length > 0 && (\n <AmbientCard fullWidth={true} title={t('Previous Attachments')}>\n <List>{renderPreviousAttachments()}</List>\n </AmbientCard>\n )}\n </div>\n\n <FluentDialog\n title={\n <div className={'deleteTitle'}>\n <span>\n {attachmentAction === AttachmentAction.Delete\n ? t('Delete Attachment')\n : t('Remove Attachment')}\n </span>\n <FluentIconButton\n aria-label='close'\n icon={ChromeCloseIcon}\n onClick={handleCloseAttachmentDialog}\n />\n </div>\n }\n message={renderConfirmationContent()}\n labelOne={\n attachmentAction === AttachmentAction.Delete\n ? t('Delete')\n : t('Remove')\n }\n actionOne={\n attachmentAction === AttachmentAction.Delete\n ? deleteAttachment\n : () =>\n removeAttachmentFromList(\n currentAttachments,\n setCurrentAttachments\n )\n }\n labelTwo={t('Cancel')}\n actionTwo={handleCloseAttachmentDialog}\n open={attachmentDialogOpen}\n handleClose={handleCloseAttachmentDialog}\n fullWidth\n />\n </>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"uploader-Dvf2cDh8.js","names":["useStyles","FileProfile","ImagePreview","attachmentType","Box","DeleteIcon","LinearProgress"],"sources":["../src/uploader/FileProfile.jsx","../src/uploader/ImagePreview.jsx","../src/uploader/FileType.jsx","../src/uploader/enums/systemEnums.ts","../src/uploader/Attachments.jsx"],"sourcesContent":["import React from 'react'\nimport { Typography, makeStyles } from '@material-ui/core'\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: 'flex',\n flexDirection: 'row'\n },\n prefix: {\n fontWeight: 600\n },\n title: {\n flex: 1\n },\n detail: {\n marginLeft: theme.spacing(2)\n }\n}))\n\nconst FileProfile = (props) => {\n const classes = useStyles()\n const { children, fileName, fileType, size, lastModifiedDate } = props\n return (\n <div>\n <div className={classes.root}>\n <Typography variant='body1' className={classes.title}>\n <strong>{fileName}</strong>\n </Typography>\n <Typography variant='caption' className={classes.detail}>\n <span className={classes.prefix}>Type:</span> {fileType}\n </Typography>\n <Typography variant='caption' className={classes.detail}>\n <span className={classes.prefix}>Size:</span> {size}\n </Typography>\n </div>\n {children}\n {/* Last modified not supported in FireFox */}\n {/* <Typography variant=\"caption\">\n <span className={classes.prefix}>Last Modified:</span>{' '}\n {lastModifiedDate}\n </Typography> */}\n </div>\n )\n}\nexport default FileProfile\n","import React from 'react'\nimport { makeStyles } from '@material-ui/core'\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: 'flex',\n justifyContent: 'center'\n },\n image: {\n maxWidth: 465\n }\n}))\n\nconst ImagePreview = (props) => {\n const { image } = props\n const classes = useStyles()\n\n return (\n <div className={classes.root}>\n <img className={classes.image} src={image} alt='upload preview' />\n </div>\n )\n}\nexport default ImagePreview\n","import React from 'react'\nimport FileProfile from './FileProfile'\nimport ImagePreview from './ImagePreview'\n\nexport const FileType = (props) => {\n let type = ''\n const { fileType, image, fileName, size, lastModifiedDate } = props\n\n switch (fileType) {\n case 'pdf':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n />\n )\n break\n case 'doc':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n />\n )\n break\n case 'png':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n >\n <ImagePreview image={image} />\n </FileProfile>\n )\n break\n case 'jpg':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n >\n <ImagePreview image={image} />\n </FileProfile>\n )\n break\n case 'jpeg':\n type = (\n <FileProfile\n fileType={fileType}\n fileName={fileName}\n size={size}\n lastModifiedDate={lastModifiedDate}\n >\n <ImagePreview image={image} />\n </FileProfile>\n )\n break\n\n default:\n }\n\n return type\n}\n","export enum APIStatusCode {\n Success = 200,\n Created = 201,\n Accepted = 202,\n NoContent = 204,\n Forbidden = 403,\n}\n\nexport enum AttachmentType {\n SiteInstruction = 1,\n RFI = 2\n}\n\nexport enum AttachmentAction {\n None = 1,\n Delete = 2,\n Remove = 3\n};\n","import React, { useCallback, useState } from 'react';\nimport { apiMutate } from '../utilities';\nimport { Box } from '../UI';\nimport { AmbientCard } from '../UI/surfaces/cards/AmbientCard';\nimport { DragDropFileUpload } from './DragDropFileUpload';\nimport { LinearProgress } from '../UI';\nimport { List, ListItem, IconButton } from '@material-ui/core';\nimport { ConfigService } from '../configService/index';\nimport DeleteIcon from '@material-ui/icons/Delete';\nimport { DownloadIcon, ChromeCloseIcon } from '@fluentui/react-icons';\nimport { useTranslation } from 'react-i18next';\nimport { useHandleAxiosSnackbar } from '../utilities';\nimport { Divider } from '@material-ui/core';\nimport { AttachmentAction } from './enums/systemEnums';\nimport { FluentDialog } from '../UI';\nimport { FluentIconButton } from '../UI/inputs/buttons';\nimport './Attachments.css';\nimport { AmbientAutoComplete } from '../UI/inputs/textField';\n\nconst removeDuplicateFiles = (incomingFiles, existingFiles) => {\n const uniqueFiles = [];\n const duplicateFiles = [];\n\n incomingFiles.forEach((newFile) => {\n const exists = existingFiles.some(\n (existingFile) =>\n existingFile.name === newFile.name ||\n existingFile.fileName === newFile.name\n );\n\n if (exists) {\n duplicateFiles.push(newFile);\n } else {\n uniqueFiles.push(newFile);\n }\n });\n\n return { uniqueFiles, duplicateFiles };\n};\n\nexport const Attachments = ({\n allowedExtensions,\n MAX_FILE_SIZE_MB,\n filePreview,\n setFilePreview,\n currentAttachments,\n setCurrentAttachments,\n attachmentTypes,\n attachmentType,\n setAttachmentType,\n attachmentProgress,\n setAttachmentProgress,\n previousAttachments,\n setPreviousAttachments\n}) => {\n const [attachmentDialogOpen, setAttachmentDialogOpen] = useState(false);\n const [attachmentToDelete, setAttachmentToDelete] = useState(null);\n const [attachmentToDeleteIndex, setAttachmentToDeleteIndex] = useState(0);\n const [attachmentAction, setAttachmentAction] = useState(\n AttachmentAction.None\n );\n\n const { handleErrorSnackbar, handleSuccessSnackbar } =\n useHandleAxiosSnackbar();\n const { t } = useTranslation();\n\n const initiateAttachmentAction = useCallback((action, file, index) => {\n setAttachmentAction(action);\n setAttachmentToDelete(file);\n setAttachmentToDeleteIndex(index);\n setAttachmentDialogOpen(true);\n }, []);\n\n const handleAttachmentDeleteClick = useCallback(\n (file, index) => {\n initiateAttachmentAction(AttachmentAction.Delete, file, index);\n },\n [initiateAttachmentAction]\n );\n\n const handleAttachmentRemoveClick = useCallback(\n (file, index) => {\n initiateAttachmentAction(AttachmentAction.Remove, file, index);\n },\n [initiateAttachmentAction]\n );\n\n const handleCloseAttachmentDialog = useCallback(() => {\n setAttachmentAction(AttachmentAction.None);\n setAttachmentToDelete({});\n setAttachmentDialogOpen(false);\n }, []);\n\n const removeAttachmentFromList = useCallback(\n (attachments, setAttachments) => {\n setAttachments((prev) =>\n prev.filter((item, i) => i !== attachmentToDeleteIndex)\n );\n handleSuccessSnackbar(t('Attachment Removed Successfully'));\n handleCloseAttachmentDialog();\n },\n [\n attachmentToDeleteIndex,\n handleSuccessSnackbar,\n handleCloseAttachmentDialog,\n t\n ]\n );\n\n const deleteAttachment = useCallback(async () => {\n try {\n setAttachmentProgress(true);\n const filePayload = { ...attachmentToDelete, isDeleted: true };\n\n await apiMutate(\n ConfigService.productV1ApiUrl,\n `UdpTransactionAttachment/${attachmentToDelete.transactionAttachmentId}`,\n {\n method: 'put',\n data: filePayload\n }\n );\n removeAttachmentFromList(previousAttachments, setPreviousAttachments);\n } catch (error) {\n handleErrorSnackbar(\n 'Failed to delete attachment',\n 'We encountered a system error while trying to delete the file. Please try again.'\n );\n console.error(error);\n } finally {\n setAttachmentProgress(false);\n setAttachmentDialogOpen(false);\n }\n }, [\n attachmentToDelete,\n removeAttachmentFromList,\n previousAttachments,\n setPreviousAttachments,\n setAttachmentProgress,\n handleErrorSnackbar\n ]);\n\n const handleDownloadFile = useCallback(async (file) => {\n try {\n const response = await apiMutate(\n ConfigService.productV1ApiUrl,\n `UdpTransactionAttachment/${file.transactionAttachmentId}/udpDriveFile/download`,\n {}\n );\n const url = response.data.link;\n const link = document.createElement('a');\n link.href = url;\n link.download = file.fileName ?? file.name;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } catch (e) {\n console.error('Download failed', e);\n }\n }, []);\n\n const handleAddFiles = useCallback(\n async (files) => {\n const incomingFiles = Array.from(files);\n const validFiles = [];\n const invalidFiles = [];\n\n incomingFiles.forEach((file) => {\n const ext = file.name.split('.').pop().toLowerCase();\n const sizeInMB = file.size / (1024 * 1024);\n\n if (!allowedExtensions.includes(ext)) {\n invalidFiles.push(`${file.name} (Invalid file type)`);\n } else if (sizeInMB > MAX_FILE_SIZE_MB) {\n invalidFiles.push(`${file.name} (Exceeds ${MAX_FILE_SIZE_MB} MB)`);\n } else {\n validFiles.push(file);\n }\n });\n\n const allExistingFiles = [...previousAttachments, ...currentAttachments];\n const { uniqueFiles, duplicateFiles } = removeDuplicateFiles(\n validFiles,\n allExistingFiles\n );\n\n if (uniqueFiles.length > 0) {\n setCurrentAttachments((prev) => [...prev, ...uniqueFiles]);\n }\n\n if (invalidFiles.length > 0) {\n handleErrorSnackbar(\n 'Files not added',\n `The following files had errors:\\n${invalidFiles.join('\\n')}`\n );\n setFilePreview(true);\n }\n\n if (duplicateFiles.length > 0) {\n const duplicateNames = duplicateFiles.map((f) => f.name).join(', ');\n handleErrorSnackbar(\n 'Duplicates skipped',\n `The following files already exist and were not added: ${duplicateNames}`\n );\n }\n },\n [\n allowedExtensions,\n MAX_FILE_SIZE_MB,\n previousAttachments,\n currentAttachments,\n setCurrentAttachments,\n handleErrorSnackbar,\n setFilePreview\n ]\n );\n\n const handleAttachmentTypeSelect = useCallback(\n (attachmentType) => {\n setAttachmentType(attachmentType);\n },\n [setAttachmentType]\n );\n\n const renderCurrentAttachments = () => {\n return currentAttachments.map((file, index) => (\n <React.Fragment key={index}>\n {index > 0 && <Divider component='li' />}\n <ListItem\n className='list-separator-item'\n style={{ display: 'flex', justifyContent: 'space-between' }}\n >\n <Box>{file.fileName ? file.fileName : file.name}</Box>\n <Box>\n <IconButton\n onClick={() => handleAttachmentRemoveClick(file, index)}\n >\n <DeleteIcon />\n </IconButton>\n </Box>\n </ListItem>\n </React.Fragment>\n ));\n };\n\n const renderPreviousAttachments = () => {\n return previousAttachments.map((file, index) => (\n <ListItem\n key={index}\n style={{ display: 'flex', justifyContent: 'space-between' }}\n >\n <Box>{file.fileName ?? file.name}</Box>\n <Box>\n <IconButton onClick={() => handleAttachmentDeleteClick(file, index)}>\n <DeleteIcon />\n </IconButton>\n <IconButton onClick={() => handleDownloadFile(file)}>\n <DownloadIcon />\n </IconButton>\n </Box>\n </ListItem>\n ));\n };\n\n const renderConfirmationContent = () => {\n const isDeleteAction = attachmentAction === AttachmentAction.Delete;\n const actionVerb = isDeleteAction ? 'delete' : 'remove';\n const fileName = attachmentToDelete?.fileName ?? attachmentToDelete?.name;\n\n return (\n <>\n <p className={'deleteSubTitle'}>\n Are you sure you want to {actionVerb} this attachment -{' '}\n <strong>{`\"${fileName}\"`}</strong>?\n </p>\n {isDeleteAction && <p>This action cannot be undone.</p>}\n </>\n );\n };\n\n return (\n <>\n <div className='card-wrapper'>\n {attachmentProgress && (\n <div className='linear-progress'>\n <LinearProgress />\n </div>\n )}\n <AmbientCard\n fullWidth={true}\n title={t('Add New Attachments')}\n variant='secondary'\n subtitle={'These files will be included with the submittal(s)'}\n >\n <DragDropFileUpload\n title='Drag and drop files here or click to browse'\n handleUploadFile={handleAddFiles}\n hideSelectFileButton={false}\n hideFilePreview={!filePreview}\n minHeight='200px'\n maxHeight='400px'\n multiple={true}\n />\n <AmbientAutoComplete\n variant='outlined'\n isMultiple={false}\n value={attachmentType}\n getOptionLabelFunction={(option) => option.name}\n onChange={handleAttachmentTypeSelect}\n options={attachmentTypes?.pageList}\n label={t('Select Attachment Type')}\n required\n />\n </AmbientCard>\n {currentAttachments?.length > 0 && (\n <AmbientCard\n fullWidth={true}\n title={t('Current Attachments')}\n subtitle={`${currentAttachments.length} file(s) attached`}\n >\n <List>{renderCurrentAttachments()}</List>\n </AmbientCard>\n )}\n {previousAttachments.length > 0 && (\n <AmbientCard fullWidth={true} title={t('Previous Attachments')}>\n <List>{renderPreviousAttachments()}</List>\n </AmbientCard>\n )}\n </div>\n\n <FluentDialog\n title={\n <div className={'deleteTitle'}>\n <span>\n {attachmentAction === AttachmentAction.Delete\n ? t('Delete Attachment')\n : t('Remove Attachment')}\n </span>\n <FluentIconButton\n aria-label='close'\n icon={ChromeCloseIcon}\n onClick={handleCloseAttachmentDialog}\n />\n </div>\n }\n message={renderConfirmationContent()}\n labelOne={\n attachmentAction === AttachmentAction.Delete\n ? t('Delete')\n : t('Remove')\n }\n actionOne={\n attachmentAction === AttachmentAction.Delete\n ? deleteAttachment\n : () =>\n removeAttachmentFromList(\n currentAttachments,\n setCurrentAttachments\n )\n }\n labelTwo={t('Cancel')}\n actionTwo={handleCloseAttachmentDialog}\n open={attachmentDialogOpen}\n handleClose={handleCloseAttachmentDialog}\n fullWidth\n />\n </>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as SplitButton, n as AgTableButtons, r as useAgGridApi, t as AgTable } from "../../AgTable-B2xTzAm2.js";
|
|
2
2
|
import { a as saveGridState, c as useGridFormat, i as onFirstDataRendered, l as useQuickFilter, n as deleteGridState, o as useExport, r as getGridState, s as useGridClear, t as clearGridState } from "../../GridFunctions-CRTDIOe0.js";
|
|
3
|
-
import { t as useServerSideDatasource } from "../../aggridHelpers-
|
|
3
|
+
import { t as useServerSideDatasource } from "../../aggridHelpers-RYO7tWY9.js";
|
|
4
4
|
|
|
5
5
|
export { AgTable, AgTableButtons, SplitButton, clearGridState, deleteGridState, getGridState, onFirstDataRendered, saveGridState, useAgGridApi, useExport, useGridClear, useGridFormat, useQuickFilter, useServerSideDatasource };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as colors } from "../../colors-BONxjrOE.js";
|
|
2
2
|
import { n as getCustomHintColor, r as getEllipseColor, t as getCategoryColor } from "../../colorConverter-x64WSLsF.js";
|
|
3
3
|
import { i as verticalSecondary, n as useTypeScale, r as verticalPrimary, t as greyScale } from "../../verticalStyles-CUPjFvB1.js";
|
|
4
|
-
import { t as ContentContainer } from "../../ContentContainer-
|
|
4
|
+
import { t as ContentContainer } from "../../ContentContainer-C2CcA6oX.js";
|
|
5
5
|
|
|
6
6
|
export { ContentContainer, colors, getCategoryColor, getCustomHintColor, getEllipseColor, greyScale, useTypeScale, verticalPrimary, verticalSecondary };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { n as corporateColorsHint, r as productCategoryColors, t as corporateColors } from "../../brand-BkTzWyBS.js";
|
|
2
|
-
import { n as ThemeProvider, r as useSystemColor, t as useTheme } from "../../theme-
|
|
2
|
+
import { n as ThemeProvider, r as useSystemColor, t as useTheme } from "../../theme-Bb8h8tjE.js";
|
|
3
3
|
|
|
4
4
|
export { ThemeProvider, corporateColors, corporateColorsHint, productCategoryColors, useSystemColor, useTheme };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { t as formatBytes } from "../../formatBytes-Bt-B_Lo8.js";
|
|
2
|
-
import { n as FileType, t as FileUpload } from "../../FileUpload-
|
|
2
|
+
import { n as FileType, t as FileUpload } from "../../FileUpload-BpMG2Efl.js";
|
|
3
3
|
|
|
4
4
|
export { FileType, FileUpload, formatBytes };
|
package/dist/workflow/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { n as WorkflowTreeMenuItem, t as WorkflowTreeMenu } from "../WorkflowTreeMenu-D2Uc09jP.js";
|
|
2
2
|
import { t as WorkflowTaskFlow } from "../WorkflowTaskFlow-Cah1eKe3.js";
|
|
3
3
|
import { n as WorkflowUiInterruptContent, t as WorkflowContent } from "../WorkflowContent-CU_-pOym.js";
|
|
4
|
-
import { t as WorkflowContainer } from "../WorkflowContainer-
|
|
4
|
+
import { t as WorkflowContainer } from "../WorkflowContainer-BheQPhXt.js";
|
|
5
5
|
import "./components/index.js";
|
|
6
6
|
import "./menus/index.js";
|
|
7
7
|
|
package/export-map.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "udp-react-enterprise-component-library",
|
|
3
|
-
"version": "25.18.1-beta.
|
|
3
|
+
"version": "25.18.1-beta.45",
|
|
4
4
|
"description": "React-based UI component library implementing Fluent UI design for Univerus internal projects",
|
|
5
5
|
"author": "Univerus",
|
|
6
6
|
"license": "MIT",
|
package/dist/Reports-CLowSLq9.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Shell-CAPPm490.js","names":["menus","Switch","SiteHeader","NavigationSidebar","FUIAppSwitcher"],"sources":["../src/shell/Shell.jsx"],"sourcesContent":["import React, { useState, useEffect, useMemo, useCallback, Suspense } from 'react';\nimport { makeStyles, Drawer, useMediaQuery, useTheme } from '@material-ui/core';\nimport NavigationSidebar from './ui/NavigationSidebar';\nimport SiteHeader from './ui/SiteHeader';\nimport { UtilityBar } from '../UI/utilityDisplay/UtilityBar';\nimport { useTranslation } from 'react-i18next';\nimport FUIAppSwitcher from './ui/appSwitcher/FUIAppSwitcher';\nimport { getMenuItemsRecursively } from '../utilities/menus/menuUtilities';\nimport clsx from 'clsx';\nimport { UtilitySideBar } from '../UI/utilityDisplay/UtilitySideBar';\nimport PropTypes from 'prop-types';\nimport { useUser } from '../utilities/auth/useUser';\nimport { ActionProvider } from '../utilities/provider/ActionProvider';\nimport { PageActionWrapper } from '../actions/PageActionWrapper';\nimport { useInquiryStore } from '../stores/inquiryStore';\nimport {\n useSetInitialShellVisibility,\n useShellStore\n} from '../stores/shellStore';\n\nimport { useBuildEnvironment, APP_RIBBON_SPACE } from './ui/useBuildEnvironment';\nimport { ChatBotProvider } from '../utilities/chatBot/ChatBotProvider';\nimport { UserProfileMenuWrapper } from '../shell/ui/profile';\nimport { useMenuContext } from '../utilities/menus/MenuProvider';\nimport { LoadingIndicator } from '../UI/loading/LoadingIndicator';\nimport { useTenant } from '../utilities/tenant';\nimport { BrowserRouter, Switch} from 'react-router-dom';\n//import { usePreloadPages } from '../hooks/usePreloadPages';\nimport { PageLoading } from '../UI';\nimport { UdpRoutes } from '../routes';\n// load the page container module so its loaded when we need it\nvoid import('../page/PageContainer');\nconst MenuTypeEnums = {\n Left_Menu: 1,\n Application_Menu: 2,\n Builders_Menu: 3,\n Favorites_Menu: 4\n};\n\nconst useStyles = makeStyles(\n (theme) => ({\n '@global': {\n html: {\n minHeight: '100%'\n },\n 'html, body, #root': {\n display: 'flex',\n flexDirection: 'column'\n },\n 'body, #root': {\n flex: 1\n }\n },\n root: {\n flex: 1,\n minHeight: '100vh',\n display: 'grid',\n gridTemplateAreas: ['sidebar header', 'sidebar content']\n .map((line) => `\"${line}\"`)\n .join(' '),\n gridTemplateColumns: 'auto 1fr',\n gridTemplateRows: 'auto 1fr'\n },\n header: {\n gridArea: 'header'\n },\n sidebar: {\n gridArea: 'sidebar'\n },\n content: {\n gridArea: 'content',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n zIndex: 1,\n height: ({ appRibbonSpace }) => `calc(100vh - ${56 + appRibbonSpace}px)`,\n overflowY: 'auto'\n },\n paper: {\n width: '100%',\n [theme.breakpoints.up('sm')]: {\n width: (props) => props.drawerWidth || 520\n }\n }\n }),\n { name: 'Layout' }\n);\n\n/**\n * Core site layout common to all pages\n */\nexport const Shell = (props) => {\n\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n ...props,\n ribbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const {\n children,\n useNewRoutes,\n userAvatar = <UserProfileMenuWrapper />,\n appContent,\n leftMenu,\n appSelectorMenus,\n siteName,\n className,\n navRoot,\n hideToggle,\n useMockData,\n mockMenus,\n user: passedInUser,\n unityUrl,\n expander,\n sidebarTitle,\n navMenuHoverOn = true,\n secondExtended,\n toggleOne,\n toggleTwo,\n closePrimary,\n closeSecondary,\n panelExpanded,\n panelExpandedSecondary,\n setPanelExpanded = false,\n setPanelExpandedSecondary = false,\n breadCrumbAltLabelList = [],\n currentLocation,\n utilitySidebarResizable,\n utilitySidebarToggleOverride,\n onUtilitySidebarToggleExpandClick,\n hideLayout = false,\n getAccessToken,\n switcherData,\n selectedItem,\n switcherWidth,\n languages,\n projectSwitcherColor,\n getWidget,\n isValidWidget,\n appSwitcherHeader,\n hamburgerMenuAccessRole\n } = props;\n const contextUser = useUser();\n const user = passedInUser ?? contextUser;\n const { setGetWidget, setIsValidWidget, shellHidden } = useShellStore();\n const [appSwitcherMobile, setAppSwitcherMobile] = useState(false);\n const [appSwitcherDesktop, setAppSwitcherDesktop] = useState(false);\n const { i18n } = useTranslation();\n const inquiryTitle = useInquiryStore((state) => state.title);\n useSetInitialShellVisibility();\n const tenant = useTenant();\n const activeTenant = tenant?.activeTenant ?? null;\n\n //usePreloadPages();\n\n const menuContext = useMenuContext?.();\n const resolvedLeftMenu = leftMenu ?? menuContext?.leftMenu;\n const resolvedAppSelectorMenus =\n appSelectorMenus ?? menuContext?.appSelectorMenus;\n const providedLanguages = languages ?? menuContext?.languages;\n const resolvedLanguages = Array.isArray(providedLanguages)\n ? providedLanguages\n : [];\n useEffect(() => {\n setGetWidget(getWidget);\n return () => setGetWidget(null);\n }, [getWidget, setGetWidget]);\n\n useEffect(() => {\n setIsValidWidget(isValidWidget);\n return () => setIsValidWidget(null);\n }, [isValidWidget, setIsValidWidget]);\n\n const getMenuItems = useCallback(\n (menuTypeId, menus) => {\n if (!menus && !useMockData) {\n return [];\n }\n const menusToFilter = useMockData ? mockMenus : menus;\n\n const foundMenus = menusToFilter.filter(\n (menu) => menu.menuTypeId === menuTypeId && menu.active\n );\n\n if (foundMenus) {\n return foundMenus.reduce((menuItemInstanceStructureViews, menu) => {\n return [\n ...menuItemInstanceStructureViews,\n ...menu.menuItemInstanceStructureViews\n ];\n }, []);\n } else {\n return [];\n }\n },\n [useMockData, mockMenus]\n );\n\n const menus = useMemo(() => {\n const menuItems = getMenuItems(1, resolvedLeftMenu);\n return getMenuItemsRecursively(menuItems, true, user);\n }, [getMenuItems, user, resolvedLeftMenu]);\n\n const theme = useTheme();\n const mobile = useMediaQuery(theme.breakpoints.up('sm'));\n\n const handleAppSwitcher = (type, bool) => {\n if (type === 'mobile') {\n setAppSwitcherMobile(bool);\n } else {\n setAppSwitcherDesktop(bool);\n }\n };\n\n const builderMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Builders_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const favoriteMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Favorites_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const appMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Application_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const hideAppMenu = useMemo(\n () =>\n !resolvedAppSelectorMenus ||\n (hamburgerMenuAccessRole &&\n !user?.roleNames.includes(hamburgerMenuAccessRole)),\n [user, resolvedAppSelectorMenus, hamburgerMenuAccessRole]\n );\n\n useEffect(() => {\n i18n.changeLanguage('en-US');\n }, [i18n]);\n\n const isUserInitialized = Boolean(user?.id);\n const isTenantInitialized = Boolean(activeTenant?.tenantId);\n const isThemeInitialized = Boolean(theme?.isInitialized);\n\n if (!isUserInitialized || !isTenantInitialized || !isThemeInitialized) {\n return <LoadingIndicator />;\n }\n let enrichedChildren = children;\n if(useNewRoutes)\n enrichedChildren = <Suspense fallback={<PageLoading />}>\n <Switch>{children}<UdpRoutes/></Switch></Suspense>;\n if (hideLayout) {\n return <div>{enrichedChildren}</div>;\n }\n return (\n <BrowserRouter>\n <ChatBotProvider>\n <ActionProvider>\n <div className={classes.root}>\n {!shellHidden && (\n <SiteHeader\n className={classes.header}\n siteName={siteName}\n appContent={appContent}\n userAvatar={userAvatar}\n breadCrumbRoot={navRoot}\n setAppSwitcherOpen={(type, bool) => handleAppSwitcher(type, bool)}\n breadCrumbAltLabelList={breadCrumbAltLabelList}\n currentLocation={currentLocation}\n switcherData={switcherData}\n selectedItem={selectedItem}\n switcherWidth={switcherWidth}\n hideAppLaunch={hideAppMenu}\n languages={resolvedLanguages}\n backgroundColor={projectSwitcherColor}\n />\n )}\n\n <div style={{ display: 'flex' }} className={classes.sidebar}>\n {!shellHidden && mobile && (\n <NavigationSidebar\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n {expander && (\n <div>\n <UtilitySideBar\n title={inquiryTitle || sidebarTitle}\n resizable={utilitySidebarResizable}\n utilitySidebarToggleOverride={utilitySidebarToggleOverride}\n onUtilitySidebarToggleExpandClick={\n onUtilitySidebarToggleExpandClick\n }\n sidebarHidden={shellHidden}\n {...props}\n />\n </div>\n )}\n </div>\n\n <div className={classes.content}>\n <UtilityBar\n className={clsx(className)}\n gutters={false}\n hideToggle={hideToggle}\n expander={expander}\n secondExtended={secondExtended}\n toggleOne={toggleOne}\n toggleTwo={toggleTwo}\n closePrimary={closePrimary}\n closeSecondary={closeSecondary}\n expanded={panelExpanded}\n expandedSecondary={panelExpandedSecondary}\n setExpanded={setPanelExpanded}\n setExpandedSecondary={setPanelExpandedSecondary}\n />\n <PageActionWrapper>{enrichedChildren}</PageActionWrapper>\n </div>\n <Drawer\n variant='temporary'\n anchor='left'\n open={appSwitcherDesktop}\n classes={\n !mobile\n ? {}\n : !resolvedAppSelectorMenus\n ? {}\n : { paper: classes.paper }\n }\n onClose={() => handleAppSwitcher('desktop', false)}\n >\n {mobile && resolvedAppSelectorMenus && (\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('desktop', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n )}\n {(!mobile || (mobile && !resolvedAppSelectorMenus)) && (\n <NavigationSidebar\n toggle={false}\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n </Drawer>\n\n <Drawer\n variant='temporary'\n anchor='right'\n open={appSwitcherMobile}\n classes={{ paper: classes.paper }}\n onClose={() => handleAppSwitcher('mobile', false)}\n >\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('mobile', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n </Drawer>\n </div>\n </ActionProvider>\n </ChatBotProvider></BrowserRouter>\n );\n};\n\nShell.propTypes = {\n /**\n * The newest propTypes have been added but older ones are missing @todo: add missing propTypes for Shell.\n */\n\n /**\n * The array used to map for label and functions to list items.\n */\n switcherData: PropTypes.array,\n /**\n * The active label displayed.\n */\n selectedItem: PropTypes.string,\n /**\n * Provides a method set the selector width. Default is 100.\n */\n switcherWidth: PropTypes.number,\n /**\n * Children nodes\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node\n ]).isRequired,\n\n /**\n * Name of site\n */\n siteName: PropTypes.string,\n\n /**\n * Component to render for the user Avatar\n */\n userAvatar: PropTypes.element,\n\n appContent: PropTypes.element,\n\n leftMenu: PropTypes.array,\n\n appSelectorMenus: PropTypes.array,\n\n className: PropTypes.object,\n\n navRoot: PropTypes.oneOfType([PropTypes.string, PropTypes.element, PropTypes.node]),\n\n /**\n * Should the shell use mock data\n */\n useMockData: PropTypes.bool,\n\n mockMenus: PropTypes.array,\n\n unityUrl: PropTypes.string,\n\n expander: PropTypes.bool,\n\n sidebarTitle: PropTypes.string,\n\n navMenuHoverOn: PropTypes.bool,\n\n toggleOne: PropTypes.bool,\n\n toggleTwo: PropTypes.bool,\n\n closePrimary: PropTypes.bool,\n\n closeSecondary: PropTypes.bool,\n\n panelExpanded: PropTypes.bool,\n\n panelExpandedSecondary: PropTypes.bool,\n\n setPanelExpanded: PropTypes.func,\n\n setPanelExpandedSecondary: PropTypes.func,\n\n breadCrumbAltLabelList: PropTypes.array,\n\n currentLocation: PropTypes.object,\n\n utilitySidebarResizable: PropTypes.bool,\n\n utilitySidebarToggleOverride: PropTypes.bool,\n\n onUtilitySidebarToggleExpandClick: PropTypes.func,\n\n hideLayout: PropTypes.bool,\n\n languages: PropTypes.arrayOf(PropTypes.object),\n\n /**\n * Passes the background color on the project switcher (default: theme secondary)\n */\n projectSwitcherColor: PropTypes.string,\n getWidget: PropTypes.func,\n isValidWidget: PropTypes.func,\n currentTenant: PropTypes.object,\n hamburgerMenuAccessRole: PropTypes.string\n};\n"],"mappings":"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"}
|