@12-apps/ui 6.98.0 → 6.99.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_internal/components/data-display/Alert/Alert.content.js +4 -2
- package/dist/_internal/components/data-display/Alert/Alert.ink.js +27 -0
- package/dist/_internal/components/data-display/Alert/Alert.js +6 -5
- package/dist/_internal/components/data-display/Alert/Alert.metrics.js +5 -1
- package/dist/_internal/components/data-display/Alert/Alert.styles.js +2 -2
- package/dist/_internal/components/data-display/Banner/Banner.js +3 -3
- package/dist/_internal/components/data-display/Banner/Banner.styles.js +2 -2
- package/dist/_internal/components/data-display/CardKit/card-actions-context.js +8 -7
- package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +9 -8
- package/dist/_internal/components/data-display/Carousel/Carousel.js +2 -2
- package/dist/_internal/components/data-display/Chart/SpecChart.js +3 -3
- package/dist/_internal/components/data-display/DataGrid/DataGrid.js +1 -1
- package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +17 -17
- package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +26 -25
- package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +1 -1
- package/dist/_internal/components/data-display/DataViews/base-list-card-layout.js +1 -1
- package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +1 -1
- package/dist/_internal/components/data-display/DataViews/base-list-card.js +4 -4
- package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +14 -14
- package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +3 -3
- package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +8 -7
- package/dist/_internal/components/data-display/DataViews/list-card-rails.js +1 -1
- package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +2 -2
- package/dist/_internal/components/data-display/DayRuler/DayRuler.footer.js +2 -2
- package/dist/_internal/components/data-display/DayRuler/DayRuler.js +7 -7
- package/dist/_internal/components/data-display/DayRuler/DayRuler.keyboard.js +2 -2
- package/dist/_internal/components/data-display/DayRuler/DayRuler.parts.js +3 -3
- package/dist/_internal/components/data-display/DayRuler/useRulerDrag.js +2 -2
- package/dist/_internal/components/data-display/FleetMap/FleetBody.js +6 -6
- package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +5 -5
- package/dist/_internal/components/data-display/FleetMap/FleetMap.js +7 -7
- package/dist/_internal/components/data-display/HoverCard/HoverCard.js +2 -2
- package/dist/_internal/components/data-display/Lightbox/Lightbox.js +3 -3
- package/dist/_internal/components/data-display/MapPreview/MapLayers.js +2 -2
- package/dist/_internal/components/data-display/MapPreview/MapPreview.js +4 -4
- package/dist/_internal/components/data-display/Progress/Progress.js +2 -2
- package/dist/_internal/components/data-display/RegionMap/RegionMap.fixtures.js +1 -1
- package/dist/_internal/components/data-display/RegionMap/RegionMap.helpers.js +3 -1
- package/dist/_internal/components/data-display/RegionMap/RegionMap.hooks.js +3 -3
- package/dist/_internal/components/data-display/RegionMap/RegionMap.js +6 -5
- package/dist/_internal/components/data-display/RegionMap/RegionMap.view.js +2 -2
- package/dist/_internal/components/data-display/RegionMap/RegionMapDrawing.js +3 -2
- package/dist/_internal/components/data-display/RegionMap/RegionMapPin.js +26 -0
- package/dist/_internal/components/data-display/index.js +60 -50
- package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +7 -6
- package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.frame.js +4 -4
- package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.header.js +3 -3
- package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.js +14 -13
- package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.overview.js +9 -8
- package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.parts.js +8 -7
- package/dist/_internal/components/feedback/index.js +15 -14
- package/dist/_internal/components/index.js +66 -56
- package/dist/charts.js +11 -11
- package/dist/{chunk-WYNGH2WL.js → chunk-255WTBZ5.js} +8 -8
- package/dist/{chunk-QIP37Y2C.js → chunk-2RC6EAGD.js} +2 -2
- package/dist/{chunk-ZKVSFVIA.js → chunk-37MJZLQU.js} +2 -2
- package/dist/{chunk-BQBEN44R.js → chunk-3I7KE2N6.js} +2 -2
- package/dist/{chunk-L4FWEI2P.js → chunk-3V3Z4EML.js} +5 -5
- package/dist/{chunk-E4MJA52O.js → chunk-3V5V44UP.js} +16 -18
- package/dist/chunk-3V5V44UP.js.map +1 -0
- package/dist/{chunk-6RYSSNOO.js → chunk-54DOLCJ3.js} +2 -2
- package/dist/{chunk-74IH3ZGD.js → chunk-643YFWNK.js} +2 -2
- package/dist/{chunk-FRQGZIYU.js → chunk-6WAP7BJS.js} +2 -2
- package/dist/chunk-AG4F6NVT.js +1 -0
- package/dist/chunk-AG4F6NVT.js.map +1 -0
- package/dist/{chunk-3CXRHRGE.js → chunk-AYDVNXGR.js} +7 -3
- package/dist/chunk-AYDVNXGR.js.map +1 -0
- package/dist/{chunk-JO6D7YGN.js → chunk-CWRQGA2T.js} +2 -2
- package/dist/chunk-DRYBA76G.js +293 -0
- package/dist/chunk-DRYBA76G.js.map +1 -0
- package/dist/{chunk-ZW7Q3IRL.js → chunk-FYJL432J.js} +4 -4
- package/dist/{chunk-G6TKWNF2.js → chunk-GZITNT7O.js} +11 -11
- package/dist/{chunk-RFMQBIE6.js → chunk-HBHBRRSW.js} +4 -4
- package/dist/{chunk-U4Z6GZDW.js → chunk-HN36UVOE.js} +4 -4
- package/dist/{chunk-WK577LQL.js → chunk-J2IQ6FJ5.js} +4 -4
- package/dist/{chunk-HCTHY66U.js → chunk-KAGXV3ID.js} +4 -4
- package/dist/{chunk-FWAY2SAI.js → chunk-KAZWBDIH.js} +2 -2
- package/dist/{chunk-DKPELKGL.js → chunk-KV7LTOWC.js} +5 -5
- package/dist/{chunk-UC7DLGMP.js → chunk-KVP5A3YK.js} +2 -2
- package/dist/chunk-LNZJJFZQ.js +41 -0
- package/dist/chunk-LNZJJFZQ.js.map +1 -0
- package/dist/{chunk-EGBQR5GH.js → chunk-LOLYBFYY.js} +5 -5
- package/dist/{chunk-SOXO2VN3.js → chunk-MEMVZW64.js} +3 -3
- package/dist/{chunk-COOSJKZL.js → chunk-MNJZPJ5S.js} +2 -1
- package/dist/chunk-MNJZPJ5S.js.map +1 -0
- package/dist/{chunk-G2NVBCF7.js → chunk-NWUMGE6T.js} +3 -3
- package/dist/{chunk-NQCTANF3.js → chunk-Q5SCBQLY.js} +18 -11
- package/dist/chunk-Q5SCBQLY.js.map +1 -0
- package/dist/{chunk-64LNNC54.js → chunk-QLKUWDMQ.js} +4 -4
- package/dist/{chunk-MPVH2GM5.js → chunk-RAQD5QCM.js} +4 -4
- package/dist/{chunk-KXDLLS62.js → chunk-REHGWN5M.js} +4 -4
- package/dist/{chunk-Z4ZFJ565.js → chunk-SRAIV6U6.js} +3 -3
- package/dist/{chunk-5ZY3IIIG.js → chunk-TBQR5VCN.js} +11 -1
- package/dist/chunk-TBQR5VCN.js.map +1 -0
- package/dist/{chunk-3N2HWNKT.js → chunk-UIJLDAV7.js} +2 -2
- package/dist/{chunk-7HZ36QDH.js → chunk-UN5WU2OX.js} +9 -3
- package/dist/chunk-UN5WU2OX.js.map +1 -0
- package/dist/{chunk-A27J4CIZ.js → chunk-UTIYB6VE.js} +11 -11
- package/dist/{chunk-5V7IZBRY.js → chunk-VRSW7PIO.js} +5 -5
- package/dist/{chunk-U4PV2ZKK.js → chunk-WDEVKND3.js} +3 -3
- package/dist/chunk-WGKLBVDZ.js +1 -0
- package/dist/chunk-WGKLBVDZ.js.map +1 -0
- package/dist/{chunk-AP7GEUJS.js → chunk-XFOKLWJZ.js} +2 -2
- package/dist/{chunk-6D5AMANO.js → chunk-XQAFSC66.js} +2 -2
- package/dist/{chunk-YNZUYZ2O.js → chunk-XR474YYX.js} +2 -2
- package/dist/{chunk-L5RS6QAT.js → chunk-YBF2WUGQ.js} +2 -2
- package/dist/{chunk-RCTHCXS6.js → chunk-YQ5GQ32T.js} +2 -2
- package/dist/{chunk-YLZXIR6B.js → chunk-Z5V5E3JW.js} +4 -4
- package/dist/data-display/Alert.js +10 -6
- package/dist/data-display/Banner.js +3 -3
- package/dist/data-display/CardKit.js +9 -8
- package/dist/data-display/Carousel.js +2 -2
- package/dist/data-display/Chart.js +11 -11
- package/dist/data-display/DataGrid.js +1 -1
- package/dist/data-display/DataViews.js +33 -32
- package/dist/data-display/DayRuler.js +7 -7
- package/dist/data-display/FleetMap.js +7 -7
- package/dist/data-display/HoverCard.js +2 -2
- package/dist/data-display/Lightbox.js +3 -3
- package/dist/data-display/MapPreview.js +4 -4
- package/dist/data-display/Progress.js +2 -2
- package/dist/data-display/RegionMap.js +14 -8
- package/dist/feedback/NotificationStatusNotice.js +7 -6
- package/dist/feedback/SequenceResolver.js +14 -13
- package/dist/native/data-display/Alert.js +10 -0
- package/dist/native/data-display/Alert.js.map +1 -1
- package/dist/types/components/data-display/Alert/Alert.content.d.ts.map +1 -1
- package/dist/types/components/data-display/Alert/Alert.d.ts.map +1 -1
- package/dist/types/components/data-display/Alert/Alert.ink.d.ts +65 -0
- package/dist/types/components/data-display/Alert/Alert.ink.d.ts.map +1 -0
- package/dist/types/components/data-display/Alert/Alert.metrics.d.ts +73 -5
- package/dist/types/components/data-display/Alert/Alert.metrics.d.ts.map +1 -1
- package/dist/types/components/data-display/Alert/index.d.ts +1 -0
- package/dist/types/components/data-display/Alert/index.d.ts.map +1 -1
- package/dist/types/components/data-display/RegionMap/RegionMap.d.ts +1 -1
- package/dist/types/components/data-display/RegionMap/RegionMap.d.ts.map +1 -1
- package/dist/types/components/data-display/RegionMap/RegionMap.helpers.d.ts +9 -0
- package/dist/types/components/data-display/RegionMap/RegionMap.helpers.d.ts.map +1 -1
- package/dist/types/components/data-display/RegionMap/RegionMap.types.d.ts +45 -1
- package/dist/types/components/data-display/RegionMap/RegionMap.types.d.ts.map +1 -1
- package/dist/types/components/data-display/RegionMap/RegionMapDrawing.d.ts +4 -1
- package/dist/types/components/data-display/RegionMap/RegionMapDrawing.d.ts.map +1 -1
- package/dist/types/components/data-display/RegionMap/RegionMapPin.d.ts +102 -0
- package/dist/types/components/data-display/RegionMap/RegionMapPin.d.ts.map +1 -0
- package/dist/types/components/data-display/RegionMap/index.d.ts +2 -1
- package/dist/types/components/data-display/RegionMap/index.d.ts.map +1 -1
- package/dist/types-native/components/data-display/Alert/Alert.metrics.d.ts +73 -5
- package/dist/types-native/components/data-display/Alert/Alert.metrics.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/data-display/Alert/Alert.content.tsx +16 -1
- package/src/components/data-display/Alert/Alert.ink.ts +106 -0
- package/src/components/data-display/Alert/Alert.md +40 -0
- package/src/components/data-display/Alert/Alert.metrics.ts +57 -5
- package/src/components/data-display/Alert/Alert.tsx +18 -7
- package/src/components/data-display/Alert/index.ts +1 -0
- package/src/components/data-display/RegionMap/RegionMap.helpers.ts +1 -1
- package/src/components/data-display/RegionMap/RegionMap.md +19 -2
- package/src/components/data-display/RegionMap/RegionMap.tsx +4 -0
- package/src/components/data-display/RegionMap/RegionMap.types.ts +49 -1
- package/src/components/data-display/RegionMap/RegionMapDrawing.tsx +11 -13
- package/src/components/data-display/RegionMap/RegionMapPin.tsx +388 -0
- package/src/components/data-display/RegionMap/index.ts +5 -0
- package/dist/chunk-3CXRHRGE.js.map +0 -1
- package/dist/chunk-5ZY3IIIG.js.map +0 -1
- package/dist/chunk-7HZ36QDH.js.map +0 -1
- package/dist/chunk-COOSJKZL.js.map +0 -1
- package/dist/chunk-DY2I6LMX.js +0 -1
- package/dist/chunk-E4MJA52O.js.map +0 -1
- package/dist/chunk-NQCTANF3.js.map +0 -1
- package/dist/chunk-NUGT7LMR.js +0 -1
- /package/dist/{chunk-DY2I6LMX.js.map → _internal/components/data-display/Alert/Alert.ink.js.map} +0 -0
- /package/dist/{chunk-NUGT7LMR.js.map → _internal/components/data-display/RegionMap/RegionMapPin.js.map} +0 -0
- /package/dist/{chunk-WYNGH2WL.js.map → chunk-255WTBZ5.js.map} +0 -0
- /package/dist/{chunk-QIP37Y2C.js.map → chunk-2RC6EAGD.js.map} +0 -0
- /package/dist/{chunk-ZKVSFVIA.js.map → chunk-37MJZLQU.js.map} +0 -0
- /package/dist/{chunk-BQBEN44R.js.map → chunk-3I7KE2N6.js.map} +0 -0
- /package/dist/{chunk-L4FWEI2P.js.map → chunk-3V3Z4EML.js.map} +0 -0
- /package/dist/{chunk-6RYSSNOO.js.map → chunk-54DOLCJ3.js.map} +0 -0
- /package/dist/{chunk-74IH3ZGD.js.map → chunk-643YFWNK.js.map} +0 -0
- /package/dist/{chunk-FRQGZIYU.js.map → chunk-6WAP7BJS.js.map} +0 -0
- /package/dist/{chunk-JO6D7YGN.js.map → chunk-CWRQGA2T.js.map} +0 -0
- /package/dist/{chunk-ZW7Q3IRL.js.map → chunk-FYJL432J.js.map} +0 -0
- /package/dist/{chunk-G6TKWNF2.js.map → chunk-GZITNT7O.js.map} +0 -0
- /package/dist/{chunk-RFMQBIE6.js.map → chunk-HBHBRRSW.js.map} +0 -0
- /package/dist/{chunk-U4Z6GZDW.js.map → chunk-HN36UVOE.js.map} +0 -0
- /package/dist/{chunk-WK577LQL.js.map → chunk-J2IQ6FJ5.js.map} +0 -0
- /package/dist/{chunk-HCTHY66U.js.map → chunk-KAGXV3ID.js.map} +0 -0
- /package/dist/{chunk-FWAY2SAI.js.map → chunk-KAZWBDIH.js.map} +0 -0
- /package/dist/{chunk-DKPELKGL.js.map → chunk-KV7LTOWC.js.map} +0 -0
- /package/dist/{chunk-UC7DLGMP.js.map → chunk-KVP5A3YK.js.map} +0 -0
- /package/dist/{chunk-EGBQR5GH.js.map → chunk-LOLYBFYY.js.map} +0 -0
- /package/dist/{chunk-SOXO2VN3.js.map → chunk-MEMVZW64.js.map} +0 -0
- /package/dist/{chunk-G2NVBCF7.js.map → chunk-NWUMGE6T.js.map} +0 -0
- /package/dist/{chunk-64LNNC54.js.map → chunk-QLKUWDMQ.js.map} +0 -0
- /package/dist/{chunk-MPVH2GM5.js.map → chunk-RAQD5QCM.js.map} +0 -0
- /package/dist/{chunk-KXDLLS62.js.map → chunk-REHGWN5M.js.map} +0 -0
- /package/dist/{chunk-Z4ZFJ565.js.map → chunk-SRAIV6U6.js.map} +0 -0
- /package/dist/{chunk-3N2HWNKT.js.map → chunk-UIJLDAV7.js.map} +0 -0
- /package/dist/{chunk-A27J4CIZ.js.map → chunk-UTIYB6VE.js.map} +0 -0
- /package/dist/{chunk-5V7IZBRY.js.map → chunk-VRSW7PIO.js.map} +0 -0
- /package/dist/{chunk-U4PV2ZKK.js.map → chunk-WDEVKND3.js.map} +0 -0
- /package/dist/{chunk-AP7GEUJS.js.map → chunk-XFOKLWJZ.js.map} +0 -0
- /package/dist/{chunk-6D5AMANO.js.map → chunk-XQAFSC66.js.map} +0 -0
- /package/dist/{chunk-YNZUYZ2O.js.map → chunk-XR474YYX.js.map} +0 -0
- /package/dist/{chunk-L5RS6QAT.js.map → chunk-YBF2WUGQ.js.map} +0 -0
- /package/dist/{chunk-RCTHCXS6.js.map → chunk-YQ5GQ32T.js.map} +0 -0
- /package/dist/{chunk-YLZXIR6B.js.map → chunk-Z5V5E3JW.js.map} +0 -0
|
@@ -377,7 +377,7 @@ import "../../chunk-GB2DQOZ7.js";
|
|
|
377
377
|
import "../../chunk-JQRKXMSH.js";
|
|
378
378
|
import {
|
|
379
379
|
NotificationStatusNotice
|
|
380
|
-
} from "../../chunk-
|
|
380
|
+
} from "../../chunk-XR474YYX.js";
|
|
381
381
|
import "../../chunk-55FFONIV.js";
|
|
382
382
|
import {
|
|
383
383
|
detectNotificationBrowser,
|
|
@@ -394,11 +394,11 @@ import "../../chunk-NPPO7G2B.js";
|
|
|
394
394
|
import "../../chunk-TWAKMV5B.js";
|
|
395
395
|
import {
|
|
396
396
|
SequenceResolver
|
|
397
|
-
} from "../../chunk-
|
|
398
|
-
import "../../chunk-
|
|
399
|
-
import "../../chunk-
|
|
400
|
-
import "../../chunk-
|
|
401
|
-
import "../../chunk-
|
|
397
|
+
} from "../../chunk-QLKUWDMQ.js";
|
|
398
|
+
import "../../chunk-643YFWNK.js";
|
|
399
|
+
import "../../chunk-XQAFSC66.js";
|
|
400
|
+
import "../../chunk-3I7KE2N6.js";
|
|
401
|
+
import "../../chunk-CWRQGA2T.js";
|
|
402
402
|
import "../../chunk-2ORD2FMN.js";
|
|
403
403
|
import "../../chunk-2SRWPNQ7.js";
|
|
404
404
|
import "../../chunk-ALDS5ISD.js";
|
|
@@ -471,17 +471,17 @@ import "../../chunk-N7GE6BGM.js";
|
|
|
471
471
|
import "../../chunk-UM35GGCS.js";
|
|
472
472
|
import {
|
|
473
473
|
Lightbox_default
|
|
474
|
-
} from "../../chunk-
|
|
474
|
+
} from "../../chunk-Z5V5E3JW.js";
|
|
475
475
|
import "../../chunk-UOS7DEQZ.js";
|
|
476
476
|
import "../../chunk-HZBDTPPV.js";
|
|
477
477
|
import "../../chunk-WZERH7E3.js";
|
|
478
478
|
import "../../chunk-64UNVW6D.js";
|
|
479
479
|
import "../../chunk-SYGM4SHY.js";
|
|
480
480
|
import "../../chunk-WLLUARTC.js";
|
|
481
|
-
import "../../chunk-RBGUS7WO.js";
|
|
482
|
-
import "../../chunk-IOCY5G43.js";
|
|
483
481
|
import "../../chunk-W676GY42.js";
|
|
484
482
|
import "../../chunk-VQU3CBAL.js";
|
|
483
|
+
import "../../chunk-RBGUS7WO.js";
|
|
484
|
+
import "../../chunk-IOCY5G43.js";
|
|
485
485
|
import "../../chunk-TEQYTEM2.js";
|
|
486
486
|
import "../../chunk-EJDOH7IN.js";
|
|
487
487
|
import "../../chunk-6CUNJ4JF.js";
|
|
@@ -491,10 +491,10 @@ import {
|
|
|
491
491
|
import "../../chunk-QOB473HS.js";
|
|
492
492
|
import {
|
|
493
493
|
Progress
|
|
494
|
-
} from "../../chunk-
|
|
494
|
+
} from "../../chunk-3V3Z4EML.js";
|
|
495
|
+
import "../../chunk-5JEOLUWJ.js";
|
|
495
496
|
import "../../chunk-2L7GNARR.js";
|
|
496
497
|
import "../../chunk-IFUWFCPJ.js";
|
|
497
|
-
import "../../chunk-5JEOLUWJ.js";
|
|
498
498
|
import "../../chunk-ITACE45O.js";
|
|
499
499
|
import {
|
|
500
500
|
Sheet
|
|
@@ -527,9 +527,9 @@ import "../../chunk-YCZGYYUX.js";
|
|
|
527
527
|
import "../../chunk-RQWZYD6H.js";
|
|
528
528
|
import {
|
|
529
529
|
FleetMap
|
|
530
|
-
} from "../../chunk-
|
|
531
|
-
import "../../chunk-
|
|
532
|
-
import "../../chunk-
|
|
530
|
+
} from "../../chunk-54DOLCJ3.js";
|
|
531
|
+
import "../../chunk-6WAP7BJS.js";
|
|
532
|
+
import "../../chunk-KVP5A3YK.js";
|
|
533
533
|
import "../../chunk-A4B27HYU.js";
|
|
534
534
|
import "../../chunk-BTQZ3EX3.js";
|
|
535
535
|
import "../../chunk-ZCPSND5Y.js";
|
|
@@ -541,13 +541,13 @@ import {
|
|
|
541
541
|
} from "../../chunk-XPMGFAJ3.js";
|
|
542
542
|
import {
|
|
543
543
|
MapPreview
|
|
544
|
-
} from "../../chunk-
|
|
545
|
-
import "../../chunk-
|
|
544
|
+
} from "../../chunk-FYJL432J.js";
|
|
545
|
+
import "../../chunk-4Y3QLISA.js";
|
|
546
|
+
import "../../chunk-KAGXV3ID.js";
|
|
546
547
|
import "../../chunk-TDXEWGY2.js";
|
|
547
548
|
import "../../chunk-MIUPTZS6.js";
|
|
548
|
-
import "../../chunk-ZZ4MMUBY.js";
|
|
549
|
-
import "../../chunk-4Y3QLISA.js";
|
|
550
549
|
import "../../chunk-ZX4ORMBC.js";
|
|
550
|
+
import "../../chunk-ZZ4MMUBY.js";
|
|
551
551
|
import "../../chunk-QSRZOXQI.js";
|
|
552
552
|
import "../../chunk-5NT2M2JI.js";
|
|
553
553
|
import "../../chunk-H2J2MTRE.js";
|
|
@@ -556,24 +556,28 @@ import "../../chunk-LTSVYILY.js";
|
|
|
556
556
|
import "../../chunk-EMSMJRP3.js";
|
|
557
557
|
import "../../chunk-4YYFZ6TE.js";
|
|
558
558
|
import "../../chunk-CB6DTWD5.js";
|
|
559
|
-
import "../../chunk-
|
|
559
|
+
import "../../chunk-WGKLBVDZ.js";
|
|
560
560
|
import {
|
|
561
561
|
RegionMap
|
|
562
|
-
} from "../../chunk-
|
|
563
|
-
import "../../chunk-
|
|
562
|
+
} from "../../chunk-AYDVNXGR.js";
|
|
563
|
+
import "../../chunk-NWUMGE6T.js";
|
|
564
564
|
import "../../chunk-BRZKOUEL.js";
|
|
565
565
|
import "../../chunk-PBRCKHN3.js";
|
|
566
|
-
import "../../chunk-
|
|
566
|
+
import "../../chunk-3V5V44UP.js";
|
|
567
|
+
import "../../chunk-J3AWGTJY.js";
|
|
568
|
+
import {
|
|
569
|
+
latLngAt,
|
|
570
|
+
scaleMetres
|
|
571
|
+
} from "../../chunk-DRYBA76G.js";
|
|
567
572
|
import {
|
|
568
573
|
boundsOfRings,
|
|
569
574
|
regionMapView
|
|
570
|
-
} from "../../chunk-
|
|
575
|
+
} from "../../chunk-KAZWBDIH.js";
|
|
571
576
|
import {
|
|
572
577
|
decodePolyline,
|
|
573
578
|
hitRegion,
|
|
574
579
|
projectionAt
|
|
575
|
-
} from "../../chunk-
|
|
576
|
-
import "../../chunk-J3AWGTJY.js";
|
|
580
|
+
} from "../../chunk-MNJZPJ5S.js";
|
|
577
581
|
import "../../chunk-PUFA7FQ7.js";
|
|
578
582
|
import "../../chunk-ESOM4KVQ.js";
|
|
579
583
|
import {
|
|
@@ -604,11 +608,11 @@ import {
|
|
|
604
608
|
import "../../chunk-6OS4AKWT.js";
|
|
605
609
|
import {
|
|
606
610
|
HoverCard
|
|
607
|
-
} from "../../chunk-
|
|
611
|
+
} from "../../chunk-HBHBRRSW.js";
|
|
612
|
+
import "../../chunk-Z3USLQQT.js";
|
|
608
613
|
import "../../chunk-NRIV2CQ2.js";
|
|
609
614
|
import "../../chunk-ABF64CAQ.js";
|
|
610
615
|
import "../../chunk-ZHV7TCAC.js";
|
|
611
|
-
import "../../chunk-Z3USLQQT.js";
|
|
612
616
|
import "../../chunk-TAF3YYMK.js";
|
|
613
617
|
import {
|
|
614
618
|
InteractiveTooltip
|
|
@@ -633,13 +637,13 @@ import {
|
|
|
633
637
|
} from "../../chunk-B4OZU7J4.js";
|
|
634
638
|
import "../../chunk-RUIV5TVA.js";
|
|
635
639
|
import "../../chunk-KEPLO2AB.js";
|
|
636
|
-
import "../../chunk-Z64TMGYT.js";
|
|
637
|
-
import "../../chunk-6FDLBWTE.js";
|
|
638
640
|
import {
|
|
639
641
|
CarouselArrows,
|
|
640
642
|
CarouselIndicators,
|
|
641
643
|
CarouselThumbnails
|
|
642
644
|
} from "../../chunk-GXYOBTOY.js";
|
|
645
|
+
import "../../chunk-Z64TMGYT.js";
|
|
646
|
+
import "../../chunk-6FDLBWTE.js";
|
|
643
647
|
import "../../chunk-2GTORM5E.js";
|
|
644
648
|
import {
|
|
645
649
|
Chip
|
|
@@ -804,9 +808,9 @@ import {
|
|
|
804
808
|
DataGrid
|
|
805
809
|
} from "../../chunk-OA6T2ME3.js";
|
|
806
810
|
import "../../chunk-5RYPVYWP.js";
|
|
811
|
+
import "../../chunk-K6FW4YDA.js";
|
|
807
812
|
import "../../chunk-EARWC6PD.js";
|
|
808
813
|
import "../../chunk-LDROG4QI.js";
|
|
809
|
-
import "../../chunk-K6FW4YDA.js";
|
|
810
814
|
import "../../chunk-G3E66C6J.js";
|
|
811
815
|
import "../../chunk-M6K6PCOS.js";
|
|
812
816
|
import {
|
|
@@ -814,18 +818,18 @@ import {
|
|
|
814
818
|
} from "../../chunk-EZBBLLEU.js";
|
|
815
819
|
import {
|
|
816
820
|
DayRuler
|
|
817
|
-
} from "../../chunk-
|
|
818
|
-
import "../../chunk-
|
|
819
|
-
import "../../chunk-
|
|
821
|
+
} from "../../chunk-KV7LTOWC.js";
|
|
822
|
+
import "../../chunk-HN36UVOE.js";
|
|
823
|
+
import "../../chunk-RAQD5QCM.js";
|
|
820
824
|
import "../../chunk-WSSD7H5E.js";
|
|
821
825
|
import "../../chunk-F2ZUUEXC.js";
|
|
822
|
-
import "../../chunk-
|
|
826
|
+
import "../../chunk-REHGWN5M.js";
|
|
823
827
|
import "../../chunk-ZHCZOPKE.js";
|
|
824
|
-
import "../../chunk-
|
|
825
|
-
import "../../chunk-5AZEDQXX.js";
|
|
826
|
-
import "../../chunk-273OLFJD.js";
|
|
828
|
+
import "../../chunk-GZITNT7O.js";
|
|
827
829
|
import "../../chunk-WG7CAT5D.js";
|
|
828
830
|
import "../../chunk-L5CAHQIN.js";
|
|
831
|
+
import "../../chunk-5AZEDQXX.js";
|
|
832
|
+
import "../../chunk-273OLFJD.js";
|
|
829
833
|
import "../../chunk-SJAOQGQI.js";
|
|
830
834
|
import "../../chunk-35HMJQLO.js";
|
|
831
835
|
import "../../chunk-YE44HUFF.js";
|
|
@@ -843,14 +847,15 @@ import {
|
|
|
843
847
|
} from "../../chunk-LKTJ26ST.js";
|
|
844
848
|
import "../../chunk-KLPTOVIX.js";
|
|
845
849
|
import "../../chunk-MWFSIB6K.js";
|
|
846
|
-
import "../../chunk-
|
|
850
|
+
import "../../chunk-AG4F6NVT.js";
|
|
847
851
|
import {
|
|
848
852
|
Alert
|
|
849
|
-
} from "../../chunk-
|
|
850
|
-
import "../../chunk-
|
|
851
|
-
import "../../chunk-
|
|
852
|
-
import "../../chunk-7HZ36QDH.js";
|
|
853
|
+
} from "../../chunk-Q5SCBQLY.js";
|
|
854
|
+
import "../../chunk-UN5WU2OX.js";
|
|
855
|
+
import "../../chunk-YBF2WUGQ.js";
|
|
853
856
|
import "../../chunk-L7VH6IMR.js";
|
|
857
|
+
import "../../chunk-QXUXO22M.js";
|
|
858
|
+
import "../../chunk-LNZJJFZQ.js";
|
|
854
859
|
import "../../chunk-2IBFEHIX.js";
|
|
855
860
|
import {
|
|
856
861
|
AlertDialog
|
|
@@ -868,9 +873,11 @@ import "../../chunk-3UIDKLML.js";
|
|
|
868
873
|
import "../../chunk-PYC4CWCQ.js";
|
|
869
874
|
import {
|
|
870
875
|
Banner
|
|
871
|
-
} from "../../chunk-
|
|
872
|
-
import "../../chunk-
|
|
873
|
-
import
|
|
876
|
+
} from "../../chunk-SRAIV6U6.js";
|
|
877
|
+
import "../../chunk-2RC6EAGD.js";
|
|
878
|
+
import {
|
|
879
|
+
POINTER_STATES
|
|
880
|
+
} from "../../chunk-TBQR5VCN.js";
|
|
874
881
|
import "../../chunk-PGGGKYWG.js";
|
|
875
882
|
import "../../chunk-YEKPQAOW.js";
|
|
876
883
|
import "../../chunk-TB4UTV25.js";
|
|
@@ -885,17 +892,6 @@ import {
|
|
|
885
892
|
import {
|
|
886
893
|
Chart
|
|
887
894
|
} from "../../chunk-HI7JPDD6.js";
|
|
888
|
-
import "../../chunk-QADTI63U.js";
|
|
889
|
-
import {
|
|
890
|
-
ChartContainer,
|
|
891
|
-
ChartLegend,
|
|
892
|
-
ChartLegendContent,
|
|
893
|
-
ChartTooltip,
|
|
894
|
-
ChartTooltipContent
|
|
895
|
-
} from "../../chunk-RIRTW5EU.js";
|
|
896
|
-
import "../../chunk-TZC6KIK2.js";
|
|
897
|
-
import "../../chunk-TCWISGSS.js";
|
|
898
|
-
import "../../chunk-SOHQPPYJ.js";
|
|
899
895
|
import {
|
|
900
896
|
CHART_SEMANTIC_COLORS,
|
|
901
897
|
ChartSpecError,
|
|
@@ -907,10 +903,21 @@ import {
|
|
|
907
903
|
getRegisteredChartSpecTypes,
|
|
908
904
|
registerChartSpecRenderer
|
|
909
905
|
} from "../../chunk-WKUA6P3W.js";
|
|
906
|
+
import "../../chunk-QADTI63U.js";
|
|
907
|
+
import {
|
|
908
|
+
ChartContainer,
|
|
909
|
+
ChartLegend,
|
|
910
|
+
ChartLegendContent,
|
|
911
|
+
ChartTooltip,
|
|
912
|
+
ChartTooltipContent
|
|
913
|
+
} from "../../chunk-RIRTW5EU.js";
|
|
910
914
|
import {
|
|
911
915
|
chartValueFormatter,
|
|
912
916
|
formatChartValue
|
|
913
917
|
} from "../../chunk-6GPNZSAE.js";
|
|
918
|
+
import "../../chunk-TZC6KIK2.js";
|
|
919
|
+
import "../../chunk-TCWISGSS.js";
|
|
920
|
+
import "../../chunk-SOHQPPYJ.js";
|
|
914
921
|
import "../../chunk-6GP2DOOO.js";
|
|
915
922
|
import {
|
|
916
923
|
Heading
|
|
@@ -984,6 +991,7 @@ import "../../chunk-YKCAJ2TN.js";
|
|
|
984
991
|
import "../../chunk-MFU4Y25U.js";
|
|
985
992
|
import "../../chunk-PZ5AY32C.js";
|
|
986
993
|
export {
|
|
994
|
+
POINTER_STATES as ALERT_POINTER_STATES,
|
|
987
995
|
Accordion,
|
|
988
996
|
AccordionActions,
|
|
989
997
|
AccordionDetails,
|
|
@@ -1187,6 +1195,7 @@ export {
|
|
|
1187
1195
|
highlightOf,
|
|
1188
1196
|
hitRegion,
|
|
1189
1197
|
initialsOf,
|
|
1198
|
+
latLngAt,
|
|
1190
1199
|
mapCentre,
|
|
1191
1200
|
markDashboardSlot,
|
|
1192
1201
|
nextSelection,
|
|
@@ -1199,6 +1208,7 @@ export {
|
|
|
1199
1208
|
resetPwaInstallStash,
|
|
1200
1209
|
resolveDayRange,
|
|
1201
1210
|
rosterOrder,
|
|
1211
|
+
scaleMetres,
|
|
1202
1212
|
sectionNavBarInset,
|
|
1203
1213
|
specToChartProps,
|
|
1204
1214
|
splitToFit,
|
package/dist/charts.js
CHANGED
|
@@ -5,17 +5,6 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
Chart
|
|
7
7
|
} from "./chunk-HI7JPDD6.js";
|
|
8
|
-
import "./chunk-QADTI63U.js";
|
|
9
|
-
import {
|
|
10
|
-
ChartContainer,
|
|
11
|
-
ChartLegend,
|
|
12
|
-
ChartLegendContent,
|
|
13
|
-
ChartTooltip,
|
|
14
|
-
ChartTooltipContent
|
|
15
|
-
} from "./chunk-RIRTW5EU.js";
|
|
16
|
-
import "./chunk-TZC6KIK2.js";
|
|
17
|
-
import "./chunk-TCWISGSS.js";
|
|
18
|
-
import "./chunk-SOHQPPYJ.js";
|
|
19
8
|
import {
|
|
20
9
|
CHART_SEMANTIC_COLORS,
|
|
21
10
|
ChartSpecError,
|
|
@@ -27,10 +16,21 @@ import {
|
|
|
27
16
|
getRegisteredChartSpecTypes,
|
|
28
17
|
registerChartSpecRenderer
|
|
29
18
|
} from "./chunk-WKUA6P3W.js";
|
|
19
|
+
import "./chunk-QADTI63U.js";
|
|
20
|
+
import {
|
|
21
|
+
ChartContainer,
|
|
22
|
+
ChartLegend,
|
|
23
|
+
ChartLegendContent,
|
|
24
|
+
ChartTooltip,
|
|
25
|
+
ChartTooltipContent
|
|
26
|
+
} from "./chunk-RIRTW5EU.js";
|
|
30
27
|
import {
|
|
31
28
|
chartValueFormatter,
|
|
32
29
|
formatChartValue
|
|
33
30
|
} from "./chunk-6GPNZSAE.js";
|
|
31
|
+
import "./chunk-TZC6KIK2.js";
|
|
32
|
+
import "./chunk-TCWISGSS.js";
|
|
33
|
+
import "./chunk-SOHQPPYJ.js";
|
|
34
34
|
import "./chunk-B7ZHEOQQ.js";
|
|
35
35
|
import "./chunk-BRHRK7BK.js";
|
|
36
36
|
import "./chunk-25MSGLNU.js";
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
+
import {
|
|
2
|
+
StandaloneContainer,
|
|
3
|
+
useRowLayout
|
|
4
|
+
} from "./chunk-E6K2UZGR.js";
|
|
1
5
|
import {
|
|
2
6
|
DiscloseSlot,
|
|
3
7
|
DragSlot,
|
|
4
8
|
SelectSlot
|
|
5
9
|
} from "./chunk-QO7UJXXO.js";
|
|
6
|
-
import {
|
|
7
|
-
useDisclosure
|
|
8
|
-
} from "./chunk-2JCRNWHE.js";
|
|
9
|
-
import {
|
|
10
|
-
StandaloneContainer,
|
|
11
|
-
useRowLayout
|
|
12
|
-
} from "./chunk-E6K2UZGR.js";
|
|
13
10
|
import {
|
|
14
11
|
actionProps,
|
|
15
12
|
metaShape,
|
|
16
13
|
rowStyles,
|
|
17
14
|
useRowShell
|
|
18
15
|
} from "./chunk-UMOHHWXY.js";
|
|
16
|
+
import {
|
|
17
|
+
useDisclosure
|
|
18
|
+
} from "./chunk-2JCRNWHE.js";
|
|
19
19
|
import {
|
|
20
20
|
ListCardActions,
|
|
21
21
|
ListCardCaption,
|
|
@@ -185,4 +185,4 @@ function BaseListCard(props) {
|
|
|
185
185
|
export {
|
|
186
186
|
BaseListCard
|
|
187
187
|
};
|
|
188
|
-
//# sourceMappingURL=chunk-
|
|
188
|
+
//# sourceMappingURL=chunk-255WTBZ5.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ACTIVE,
|
|
3
3
|
HOVER
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-TBQR5VCN.js";
|
|
5
5
|
import {
|
|
6
6
|
modeInk
|
|
7
7
|
} from "./chunk-XJAD6E3V.js";
|
|
@@ -140,4 +140,4 @@ export {
|
|
|
140
140
|
bannerPointerStates,
|
|
141
141
|
BANNER_TINT_S
|
|
142
142
|
};
|
|
143
|
-
//# sourceMappingURL=chunk-
|
|
143
|
+
//# sourceMappingURL=chunk-2RC6EAGD.js.map
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "./chunk-4SQ2WCZA.js";
|
|
13
13
|
import {
|
|
14
14
|
Alert
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-Q5SCBQLY.js";
|
|
16
16
|
|
|
17
17
|
// src/components/data-display/DataViews/data-views-table-parts.tsx
|
|
18
18
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -121,4 +121,4 @@ export {
|
|
|
121
121
|
ViewsMenuSlot,
|
|
122
122
|
ViewDialogs
|
|
123
123
|
};
|
|
124
|
-
//# sourceMappingURL=chunk-
|
|
124
|
+
//# sourceMappingURL=chunk-37MJZLQU.js.map
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
} from "./chunk-2ORD2FMN.js";
|
|
18
18
|
import {
|
|
19
19
|
Alert
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-Q5SCBQLY.js";
|
|
21
21
|
import {
|
|
22
22
|
Button
|
|
23
23
|
} from "./chunk-YOXYSAUI.js";
|
|
@@ -160,4 +160,4 @@ export {
|
|
|
160
160
|
SequenceStepBody,
|
|
161
161
|
SequenceDoneBody
|
|
162
162
|
};
|
|
163
|
-
//# sourceMappingURL=chunk-
|
|
163
|
+
//# sourceMappingURL=chunk-3I7KE2N6.js.map
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import {
|
|
2
|
+
progressLabelText,
|
|
3
|
+
resolveProgressProps
|
|
4
|
+
} from "./chunk-5JEOLUWJ.js";
|
|
1
5
|
import {
|
|
2
6
|
barEmphasisStyles,
|
|
3
7
|
barVariantStyles,
|
|
@@ -6,10 +10,6 @@ import {
|
|
|
6
10
|
getSizeStyles,
|
|
7
11
|
pulseAnimation
|
|
8
12
|
} from "./chunk-2L7GNARR.js";
|
|
9
|
-
import {
|
|
10
|
-
progressLabelText,
|
|
11
|
-
resolveProgressProps
|
|
12
|
-
} from "./chunk-5JEOLUWJ.js";
|
|
13
13
|
import {
|
|
14
14
|
rem,
|
|
15
15
|
rems
|
|
@@ -246,4 +246,4 @@ Progress.displayName = "Progress";
|
|
|
246
246
|
export {
|
|
247
247
|
Progress
|
|
248
248
|
};
|
|
249
|
-
//# sourceMappingURL=chunk-
|
|
249
|
+
//# sourceMappingURL=chunk-3V3Z4EML.js.map
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
labelPosition
|
|
3
|
-
} from "./chunk-COOSJKZL.js";
|
|
4
1
|
import {
|
|
5
2
|
labelOrder,
|
|
6
3
|
placeLabels
|
|
7
4
|
} from "./chunk-J3AWGTJY.js";
|
|
5
|
+
import {
|
|
6
|
+
PinOverlay,
|
|
7
|
+
PinShapes
|
|
8
|
+
} from "./chunk-DRYBA76G.js";
|
|
9
|
+
import {
|
|
10
|
+
labelPosition
|
|
11
|
+
} from "./chunk-MNJZPJ5S.js";
|
|
8
12
|
import {
|
|
9
13
|
rem,
|
|
10
14
|
remPx
|
|
@@ -16,23 +20,15 @@ import Typography from "@mui/material/Typography/index.js";
|
|
|
16
20
|
import { alpha } from "@mui/material/styles/index.js";
|
|
17
21
|
import React from "react";
|
|
18
22
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
19
|
-
function RegionMapDrawing({
|
|
20
|
-
model,
|
|
21
|
-
overlay,
|
|
22
|
-
showCenter,
|
|
23
|
-
highlightedIds,
|
|
24
|
-
maxHeight,
|
|
25
|
-
label,
|
|
26
|
-
tappable,
|
|
27
|
-
testId,
|
|
28
|
-
theme
|
|
29
|
-
}) {
|
|
23
|
+
function RegionMapDrawing(props) {
|
|
24
|
+
const { model, overlay, showCenter, moving, highlightedIds, maxHeight, label, tappable, testId, theme } = props;
|
|
30
25
|
const hatchId = `${React.useId().replace(/:/g, "")}-hatch`;
|
|
31
26
|
const { view, drawn } = model;
|
|
32
27
|
const wanted = new Set(highlightedIds);
|
|
33
28
|
const highlighted = drawn.filter((d) => wanted.has(d.id));
|
|
34
29
|
const labelled = labelOrder(drawn.filter((d) => d.excluded || wanted.has(d.id)), wanted);
|
|
35
30
|
const boxRef = React.useRef(null);
|
|
31
|
+
const svgRef = React.useRef(null);
|
|
36
32
|
useLabelPlacement(boxRef, labelled.map((d) => d.id).join("|"), remPx(theme, 4));
|
|
37
33
|
const base = drawn.map((d) => ({ id: d.id, name: d.name, geometry: d.geometry, outside: d.outside === true }));
|
|
38
34
|
return /* @__PURE__ */ jsxs(
|
|
@@ -56,6 +52,7 @@ function RegionMapDrawing({
|
|
|
56
52
|
/* @__PURE__ */ jsxs(
|
|
57
53
|
"svg",
|
|
58
54
|
{
|
|
55
|
+
ref: svgRef,
|
|
59
56
|
viewBox: `${view.minX} ${view.minY} ${view.spanX} ${view.spanY}`,
|
|
60
57
|
role: "img",
|
|
61
58
|
"aria-label": label,
|
|
@@ -69,9 +66,9 @@ function RegionMapDrawing({
|
|
|
69
66
|
overlay && model.projection && // `pointer-events` is inherited in SVG: nothing the host draws here
|
|
70
67
|
// takes a tap from the areas beneath.
|
|
71
68
|
/* @__PURE__ */ jsx("g", { pointerEvents: "none", "data-testid": `${testId}-overlay`, children: overlay({ view, projection: model.projection }) }),
|
|
72
|
-
/* @__PURE__ */ jsx(Circles, { radii: model.radii, theme }),
|
|
69
|
+
/* @__PURE__ */ jsx(PinShapes, { model, moving, testId, theme, fallback: /* @__PURE__ */ jsx(Circles, { radii: model.radii, theme }) }),
|
|
73
70
|
/* @__PURE__ */ jsx(Highlights, { areas: highlighted, testId, theme }),
|
|
74
|
-
showCenter && /* @__PURE__ */ jsx(
|
|
71
|
+
showCenter && !moving?.pin && /* @__PURE__ */ jsx(
|
|
75
72
|
"circle",
|
|
76
73
|
{
|
|
77
74
|
cx: 0,
|
|
@@ -88,7 +85,8 @@ function RegionMapDrawing({
|
|
|
88
85
|
]
|
|
89
86
|
}
|
|
90
87
|
),
|
|
91
|
-
labelled.map((d) => /* @__PURE__ */ jsx(AreaLabel, { area: d, view, testId, theme }, `l-${d.id}`))
|
|
88
|
+
labelled.map((d) => /* @__PURE__ */ jsx(AreaLabel, { area: d, view, testId, theme }, `l-${d.id}`)),
|
|
89
|
+
/* @__PURE__ */ jsx(PinOverlay, { model, moving, svgRef, testId, theme })
|
|
92
90
|
]
|
|
93
91
|
}
|
|
94
92
|
);
|
|
@@ -256,4 +254,4 @@ function AreaLabel({
|
|
|
256
254
|
export {
|
|
257
255
|
RegionMapDrawing
|
|
258
256
|
};
|
|
259
|
-
//# sourceMappingURL=chunk-
|
|
257
|
+
//# sourceMappingURL=chunk-3V5V44UP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/RegionMap/RegionMapDrawing.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { alpha, type Theme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport { rem, remPx } from '../../../tokens/relative';\n\nimport { labelPosition, type AreaGeometry, type DrawnRegion, type PlaneBox } from './RegionMap.helpers';\nimport type { RegionMapModel } from './RegionMap.hooks';\nimport { labelOrder, placeLabels } from './RegionMap.labels';\nimport type { RegionMapLayer } from './RegionMap.types';\nimport type { Moving } from './RegionMapPin';\nimport { PinOverlay, PinShapes } from './RegionMapPin';\n\nexport interface RegionMapDrawingProps {\n model: RegionMapModel & { view: PlaneBox };\n /** The host's layer, drawn inside the SVG under the circles (`RegionMapProps.overlay`). */\n overlay?: (layer: RegionMapLayer) => React.ReactNode;\n showCenter: boolean;\n /** The movable centre and what is drawn with it (`RegionMapProps.pin`, `ghost`, `dots`). */\n moving?: Moving;\n highlightedIds: readonly string[];\n maxHeight: string | undefined;\n label: string;\n tappable: boolean;\n testId: string;\n theme: Theme;\n}\n\n/**\n * The drawing: one `role=\"img\"`, square, with HTML labels laid over it.\n *\n * Strokes are `non-scaling-stroke` and labels are HTML at theme sizes, so the\n * picture reads the same at 320 px and 1600 px; `maxHeight` caps it on a wide\n * screen. Where it sits in a wider box is the host's call.\n *\n * The base areas are a memoised layer: a toggle changes `excluded`, not the\n * geometry, so only the hatch, highlight and label layers re-render.\n */\nexport function RegionMapDrawing(props: RegionMapDrawingProps): React.JSX.Element {\n const { model, overlay, showCenter, moving, highlightedIds, maxHeight, label, tappable, testId, theme } = props;\n const hatchId = `${React.useId().replace(/:/g, '')}-hatch`;\n const { view, drawn } = model;\n const wanted = new Set(highlightedIds);\n const highlighted = drawn.filter((d) => wanted.has(d.id));\n // Highlighted, then excluded, then larger, then by name: the order labels\n // claim their place in, so a collision hides the less important one.\n const labelled = labelOrder(drawn.filter((d) => d.excluded || wanted.has(d.id)), wanted);\n const boxRef = React.useRef<HTMLDivElement>(null);\n const svgRef = React.useRef<SVGSVGElement>(null);\n useLabelPlacement(boxRef, labelled.map((d) => d.id).join('|'), remPx(theme, 4));\n const base = drawn.map((d) => ({ id: d.id, name: d.name, geometry: d.geometry, outside: d.outside === true }));\n return (\n <Box\n sx={{\n position: 'relative',\n width: '100%',\n maxWidth: maxHeight,\n maxHeight,\n aspectRatio: '1 / 1',\n border: 1,\n borderColor: 'divider',\n borderRadius: 1,\n overflow: 'hidden',\n bgcolor: 'background.paper',\n }}\n data-testid={`${testId}-canvas`}\n ref={boxRef}\n >\n <svg\n ref={svgRef}\n viewBox={`${view.minX} ${view.minY} ${view.spanX} ${view.spanY}`}\n role=\"img\"\n aria-label={label}\n onPointerDown={model.onPointerDown}\n onClick={model.onClick}\n style={{ display: 'block', width: '100%', height: '100%', cursor: tappable ? 'pointer' : 'default' }}\n >\n <Hatch id={hatchId} pitch={view.spanX / 70} theme={theme} />\n <BaseAreas areas={base} testId={testId} theme={theme} />\n <ExcludedAreas drawn={drawn} hatchId={hatchId} testId={testId} theme={theme} />\n {overlay && model.projection && (\n // `pointer-events` is inherited in SVG: nothing the host draws here\n // takes a tap from the areas beneath.\n <g pointerEvents=\"none\" data-testid={`${testId}-overlay`}>\n {overlay({ view, projection: model.projection })}\n </g>\n )}\n <PinShapes model={model} moving={moving} testId={testId} theme={theme} fallback={<Circles radii={model.radii} theme={theme} />} />\n <Highlights areas={highlighted} testId={testId} theme={theme} />\n {showCenter && !moving?.pin && (\n <circle\n cx={0}\n cy={0}\n r={view.spanX / 90}\n fill={theme.palette.primary.main}\n stroke={theme.palette.background.paper}\n strokeWidth={2}\n vectorEffect=\"non-scaling-stroke\"\n pointerEvents=\"none\"\n data-testid={`${testId}-center`}\n />\n )}\n </svg>\n {labelled.map((d) => (\n <AreaLabel key={`l-${d.id}`} area={d} view={view} testId={testId} theme={theme} />\n ))}\n <PinOverlay model={model} moving={moving} svgRef={svgRef} testId={testId} theme={theme} />\n </Box>\n );\n}\n\n/** The highlighted areas, drawn over everything but the centre. */\nfunction Highlights({\n areas,\n testId,\n theme,\n}: {\n areas: readonly DrawnRegion[];\n testId: string;\n theme: Theme;\n}): React.JSX.Element {\n return (\n <>\n {areas.map((d) => (\n <path\n key={`h-${d.id}`}\n d={d.geometry.path}\n fillRule=\"evenodd\"\n vectorEffect=\"non-scaling-stroke\"\n fill={alpha(theme.palette.primary.main, 0.3)}\n stroke={theme.palette.primary.main}\n strokeWidth={2.5}\n pointerEvents=\"none\"\n data-testid={`${testId}-highlight-${d.id}`}\n />\n ))}\n </>\n );\n}\n\n/** The hatch an excluded area is filled with: lines, not a colour. */\nfunction Hatch({ id, pitch, theme }: { id: string; pitch: number; theme: Theme }): React.JSX.Element {\n return (\n <defs>\n <pattern id={id} width={pitch} height={pitch} patternUnits=\"userSpaceOnUse\" patternTransform=\"rotate(45)\">\n <rect width={pitch} height={pitch} fill={alpha(theme.palette.text.primary, 0.1)} />\n <rect width={pitch / 3} height={pitch} fill={theme.palette.text.secondary} />\n </pattern>\n </defs>\n );\n}\n\ninterface BaseArea {\n id: string;\n name: string;\n geometry: AreaGeometry;\n outside: boolean;\n}\n\ninterface BaseAreasProps {\n areas: readonly BaseArea[];\n testId: string;\n theme: Theme;\n}\n\n/** Same areas, same geometry objects, same look: nothing to re-render. */\nfunction sameBase(a: BaseAreasProps, b: BaseAreasProps): boolean {\n if (a.theme !== b.theme || a.testId !== b.testId || a.areas.length !== b.areas.length) return false;\n return a.areas.every((area, i) => {\n const other = b.areas[i]!;\n return (\n area.id === other.id &&\n area.geometry === other.geometry &&\n area.outside === other.outside &&\n area.name === other.name\n );\n });\n}\n\n/** Every area's fill and border — the tap targets. Memoised: see `sameBase`. */\nconst BaseAreas = React.memo(function BaseAreas({ areas, testId, theme }: BaseAreasProps): React.JSX.Element {\n const { palette } = theme;\n return (\n <>\n {areas.map((d) => (\n <path\n key={d.id}\n d={d.geometry.path}\n fillRule=\"evenodd\"\n vectorEffect=\"non-scaling-stroke\"\n fill={d.outside ? palette.background.paper : palette.action.hover}\n stroke={palette.divider}\n strokeWidth={1}\n data-region-id={d.id}\n data-testid={`${testId}-area-${d.id}`}\n >\n <title>{d.name}</title>\n </path>\n ))}\n </>\n );\n}, sameBase);\n\n/** The hatch over every excluded area. */\nfunction ExcludedAreas({\n drawn,\n hatchId,\n testId,\n theme,\n}: {\n drawn: readonly DrawnRegion[];\n hatchId: string;\n testId: string;\n theme: Theme;\n}): React.JSX.Element {\n return (\n <>\n {drawn\n .filter((d) => d.excluded)\n .map((d) => (\n <path\n key={`x-${d.id}`}\n d={d.geometry.path}\n fillRule=\"evenodd\"\n vectorEffect=\"non-scaling-stroke\"\n fill={`url(#${hatchId})`}\n stroke={theme.palette.text.secondary}\n strokeWidth={1.5}\n pointerEvents=\"none\"\n data-testid={`${testId}-excluded-${d.id}`}\n />\n ))}\n </>\n );\n}\n\n/** The dashed circles around the centre. */\nfunction Circles({ radii, theme }: { radii: readonly number[]; theme: Theme }): React.JSX.Element {\n return (\n <>\n {radii.map((radius) => (\n <circle\n key={radius}\n cx={0}\n cy={0}\n r={radius}\n fill=\"none\"\n stroke={theme.palette.info.main}\n strokeWidth={1.75}\n strokeDasharray=\"7 5\"\n vectorEffect=\"non-scaling-stroke\"\n pointerEvents=\"none\"\n />\n ))}\n </>\n );\n}\n\n/**\n * Places every label the drawing carries, in their DOM order (the priority\n * order), and hides one that would overlap a label already drawn\n * (`placeLabels`). Measured by a ResizeObserver, never in a layout effect: its\n * first call comes after the browser's own layout, so mounting a label on a\n * tap forces no synchronous reflow of the drawing.\n */\nfunction useLabelPlacement(boxRef: React.RefObject<HTMLDivElement | null>, key: string, gap: number): void {\n React.useEffect(() => {\n const box = boxRef.current;\n if (!box || typeof ResizeObserver === 'undefined') return undefined;\n const labels = Array.from(box.querySelectorAll<HTMLElement>('[data-region-label]'));\n const place = (): void => {\n const spanX = box.clientWidth;\n const spanY = box.clientHeight;\n if (spanX === 0 || spanY === 0) return;\n const placed = placeLabels(\n labels.map((label) => ({\n fractionX: Number(label.dataset.fractionX),\n fractionY: Number(label.dataset.fractionY),\n spanX: label.offsetWidth,\n spanY: label.offsetHeight,\n })),\n { spanX, spanY },\n gap,\n );\n placed.forEach(({ x, y, visible }, index) => {\n const label = labels[index]!;\n label.style.left = `${(x / spanX) * 100}%`;\n label.style.top = `${(y / spanY) * 100}%`;\n label.style.visibility = visible ? 'visible' : 'hidden';\n label.dataset.hidden = visible ? 'false' : 'true';\n });\n };\n const observer = new ResizeObserver(place);\n observer.observe(box);\n for (const label of labels) observer.observe(label);\n return () => observer.disconnect();\n }, [boxRef, key, gap]);\n}\n\n/**\n * An area's name over the drawing, at the theme's type size whatever the\n * width. Placed — and hidden on a collision — by {@link useLabelPlacement}.\n * Decorative (`aria-hidden`): the area's name is its `<title>` and its row in\n * the list.\n */\nfunction AreaLabel({\n area,\n view,\n testId,\n theme,\n}: {\n area: DrawnRegion;\n view: PlaneBox;\n testId: string;\n theme: Theme;\n}): React.JSX.Element {\n const at = labelPosition(area.geometry.rings, view);\n const halo = `0 0 ${rem(theme, 3)} ${theme.palette.background.paper}`;\n return (\n <Typography\n component=\"span\"\n aria-hidden\n data-testid={`${testId}-label-${area.id}`}\n data-region-label=\"\"\n data-fraction-x={at.fractionX}\n data-fraction-y={at.fractionY}\n // Position as an inline style, not `sx`: a per-label class would insert\n // a new CSS rule (and a style recalculation) on every tap.\n style={{\n left: `${(at.fractionX * 100).toFixed(2)}%`,\n top: `${(at.fractionY * 100).toFixed(2)}%`,\n }}\n sx={{\n position: 'absolute',\n transform: 'translate(-50%, -50%)',\n fontSize: rem(theme, 12),\n fontWeight: 700,\n lineHeight: 1.1,\n textAlign: 'center',\n maxWidth: '45%',\n color: 'text.primary',\n pointerEvents: 'none',\n textShadow: `${halo}, ${halo}`,\n }}\n >\n {area.name}\n </Typography>\n );\n}\n"],"mappings":"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","names":["BaseAreas"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
FleetBody
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-6WAP7BJS.js";
|
|
4
4
|
import {
|
|
5
5
|
FLEET_DEFAULT_LAGGING_AFTER_SECONDS,
|
|
6
6
|
FLEET_DEFAULT_STALE_AFTER_SECONDS,
|
|
@@ -117,4 +117,4 @@ export {
|
|
|
117
117
|
FleetMap,
|
|
118
118
|
FleetMap_default
|
|
119
119
|
};
|
|
120
|
-
//# sourceMappingURL=chunk-
|
|
120
|
+
//# sourceMappingURL=chunk-54DOLCJ3.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SequenceHeader
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-CWRQGA2T.js";
|
|
4
4
|
import {
|
|
5
5
|
chromeSx,
|
|
6
6
|
columnSx,
|
|
@@ -60,4 +60,4 @@ function ResolverFrame(props) {
|
|
|
60
60
|
export {
|
|
61
61
|
ResolverFrame
|
|
62
62
|
};
|
|
63
|
-
//# sourceMappingURL=chunk-
|
|
63
|
+
//# sourceMappingURL=chunk-643YFWNK.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
FleetCanvas
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KVP5A3YK.js";
|
|
4
4
|
import {
|
|
5
5
|
FleetRoster
|
|
6
6
|
} from "./chunk-A4B27HYU.js";
|
|
@@ -79,4 +79,4 @@ function FleetBody({
|
|
|
79
79
|
export {
|
|
80
80
|
FleetBody
|
|
81
81
|
};
|
|
82
|
-
//# sourceMappingURL=chunk-
|
|
82
|
+
//# sourceMappingURL=chunk-6WAP7BJS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=chunk-AG4F6NVT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
useRegionMap
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-NWUMGE6T.js";
|
|
4
4
|
import {
|
|
5
5
|
RegionMapList
|
|
6
6
|
} from "./chunk-BRZKOUEL.js";
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
} from "./chunk-PBRCKHN3.js";
|
|
10
10
|
import {
|
|
11
11
|
RegionMapDrawing
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-3V5V44UP.js";
|
|
13
13
|
|
|
14
14
|
// src/components/data-display/RegionMap/RegionMap.tsx
|
|
15
15
|
import Box from "@mui/material/Box/index.js";
|
|
@@ -20,6 +20,9 @@ function RegionMap({
|
|
|
20
20
|
regions,
|
|
21
21
|
center,
|
|
22
22
|
circles,
|
|
23
|
+
pin,
|
|
24
|
+
ghost,
|
|
25
|
+
dots,
|
|
23
26
|
reach,
|
|
24
27
|
overlay,
|
|
25
28
|
onToggle,
|
|
@@ -43,6 +46,7 @@ function RegionMap({
|
|
|
43
46
|
model: { ...model, view },
|
|
44
47
|
overlay,
|
|
45
48
|
showCenter: center !== null,
|
|
49
|
+
moving: center === null ? void 0 : { center, pin, ghost, dots, copy },
|
|
46
50
|
highlightedIds,
|
|
47
51
|
maxHeight,
|
|
48
52
|
label: copy.mapLabel,
|
|
@@ -80,4 +84,4 @@ function RegionMap({
|
|
|
80
84
|
export {
|
|
81
85
|
RegionMap
|
|
82
86
|
};
|
|
83
|
-
//# sourceMappingURL=chunk-
|
|
87
|
+
//# sourceMappingURL=chunk-AYDVNXGR.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/RegionMap/RegionMap.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport { useTheme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport { useRegionMap } from './RegionMap.hooks';\nimport type { RegionMapProps } from './RegionMap.types';\nimport { RegionMapDrawing } from './RegionMapDrawing';\nimport { RegionMapLegend } from './RegionMapLegend';\nimport { RegionMapList } from './RegionMapList';\n\n/** One empty list, so the default does not change identity per render. */\nconst NO_IDS: readonly string[] = [];\n\n/**\n * A hand-drawn map of named areas around a centre; a tap toggles an area.\n *\n * Drawn as inline SVG over a plain background — no tile server, no API key,\n * nothing fetched — because the question it answers is \"which of THESE areas\",\n * not \"what is the street called\". Four choices shape it:\n *\n * - **The list is the accessible way in.** The drawing is one `role=\"img\"`\n * with a name; its areas are not tab stops (dozens of them, many too small to\n * tap on a phone). Every area is also a toggle button in the list beneath,\n * with `aria-pressed`, which is what a keyboard and a screen reader use —\n * and what reaches a sliver no finger can.\n * - **Excluded is hatched AND named, never only coloured,** and never in the\n * error colour: leaving an area out is a choice, not a failure.\n * - **The hit test is ours, not only the browser's.** A mouse click on a path\n * is that path. A finger's tap takes the SMALLEST area within a few pixels'\n * worth of metres (`hitRegion`), so a sliver beside a big area can be hit\n * from the map; one too thin even for that is still on the list.\n * - **The host can draw inside it.** `reach` widens the view past the largest\n * circle and `overlay` draws a layer in the SVG at the map's own projection,\n * tap-transparent; `regionMapView` gives the same view to HTML laid over it.\n * - **A toggle is cheap.** Geometry is projected once per `rings` identity,\n * and the base layer is memoised, so a tap re-renders the hatch and labels.\n */\nexport function RegionMap({\n regions,\n center,\n circles,\n pin,\n ghost,\n dots,\n reach,\n overlay,\n onToggle,\n highlightedIds = NO_IDS,\n copy,\n listMode = 'collapsed',\n listSort = 'given',\n maxHeight,\n className,\n dataTestId = 'region-map',\n}: RegionMapProps): React.JSX.Element | null {\n const theme = useTheme();\n const model = useRegionMap({ regions, center, circles, reach, onToggle });\n const { view } = model;\n if (view === null && regions.length === 0) return null;\n return (\n <Box className={className} data-testid={dataTestId}>\n {view && (\n <>\n <RegionMapDrawing\n model={{ ...model, view }}\n overlay={overlay}\n showCenter={center !== null}\n moving={center === null ? undefined : { center, pin, ghost, dots, copy }}\n highlightedIds={highlightedIds}\n maxHeight={maxHeight}\n label={copy.mapLabel}\n tappable={onToggle !== undefined}\n testId={dataTestId}\n theme={theme}\n />\n <RegionMapLegend\n copy={copy}\n outermostMetres={model.outermostMetres}\n showCenter={center !== null}\n theme={theme}\n testId={dataTestId}\n />\n </>\n )}\n {listMode !== 'none' && (\n <RegionMapList\n regions={regions}\n copy={copy}\n mode={listMode}\n sort={listSort}\n onToggle={onToggle}\n testId={dataTestId}\n theme={theme}\n />\n )}\n </Box>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA,OAAO,SAAS;AAChB,SAAS,gBAAgB;AA6DjB,mBACE,KADF;AAnDR,IAAM,SAA4B,CAAC;AA0B5B,SAAS,UAAU;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,iBAAiB;AAAA,EACjB;AAAA,EACA,WAAW;AAAA,EACX,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA,aAAa;AACf,GAA6C;AAC3C,QAAM,QAAQ,SAAS;AACvB,QAAM,QAAQ,aAAa,EAAE,SAAS,QAAQ,SAAS,OAAO,SAAS,CAAC;AACxE,QAAM,EAAE,KAAK,IAAI;AACjB,MAAI,SAAS,QAAQ,QAAQ,WAAW,EAAG,QAAO;AAClD,SACE,qBAAC,OAAI,WAAsB,eAAa,YACrC;AAAA,YACC,iCACE;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,OAAO,EAAE,GAAG,OAAO,KAAK;AAAA,UACxB;AAAA,UACA,YAAY,WAAW;AAAA,UACvB,QAAQ,WAAW,OAAO,SAAY,EAAE,QAAQ,KAAK,OAAO,MAAM,KAAK;AAAA,UACvE;AAAA,UACA;AAAA,UACA,OAAO,KAAK;AAAA,UACZ,UAAU,aAAa;AAAA,UACvB,QAAQ;AAAA,UACR;AAAA;AAAA,MACF;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,iBAAiB,MAAM;AAAA,UACvB,YAAY,WAAW;AAAA,UACvB;AAAA,UACA,QAAQ;AAAA;AAAA,MACV;AAAA,OACF;AAAA,IAED,aAAa,UACZ;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,MAAM;AAAA,QACN,MAAM;AAAA,QACN;AAAA,QACA,QAAQ;AAAA,QACR;AAAA;AAAA,IACF;AAAA,KAEJ;AAEJ;","names":[]}
|