@12-apps/ui 6.38.0 → 6.39.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/DataGrid/DataGrid.body.js +3 -2
- package/dist/_internal/components/data-display/DataGrid/DataGrid.cells.js +2 -1
- package/dist/_internal/components/data-display/DataGrid/DataGrid.js +4 -4
- package/dist/_internal/components/data-display/DataGrid/DataGrid.model.js +2 -1
- package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +19 -19
- package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +26 -26
- package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +5 -5
- package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +4 -4
- package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +3 -3
- package/dist/_internal/components/data-display/DataViews/base-list-card.js +5 -5
- package/dist/_internal/components/data-display/DataViews/data-views-columns.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +3 -3
- package/dist/_internal/components/data-display/DataViews/data-views-display-tabs.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +8 -8
- package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +16 -16
- package/dist/_internal/components/data-display/DataViews/data-views-layout-context.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-overflow-costs.js +4 -3
- package/dist/_internal/components/data-display/DataViews/data-views-overflow.js +3 -2
- package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +5 -5
- package/dist/_internal/components/data-display/DataViews/list-card-rails.js +2 -2
- package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +3 -3
- package/dist/_internal/components/data-display/FleetMap/FleetBody.js +9 -9
- package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +8 -8
- package/dist/_internal/components/data-display/FleetMap/FleetMap.js +10 -10
- package/dist/_internal/components/data-display/MapPreview/MapDecorations.js +2 -2
- package/dist/_internal/components/data-display/MapPreview/MapPreview.hooks.js +2 -2
- package/dist/_internal/components/data-display/MapPreview/MapPreview.js +7 -7
- package/dist/_internal/components/data-display/MapPreview/MapTiles.js +2 -2
- package/dist/_internal/components/data-display/MapPreview/StaticMapView.js +4 -4
- package/dist/_internal/components/data-display/MapPreview/mapProjection.js +3 -3
- package/dist/_internal/components/data-display/MapPreview/useMapPreview.js +3 -3
- package/dist/_internal/components/data-display/Table/Table.helpers.js +5 -3
- package/dist/_internal/components/data-display/Table/Table.hooks.js +2 -1
- package/dist/_internal/components/data-display/Table/Table.js +4 -4
- package/dist/_internal/components/data-display/Table/TableParts.hooks.js +4 -2
- package/dist/_internal/components/data-display/Table/TableParts.js +4 -2
- package/dist/_internal/components/data-display/index.js +18 -18
- package/dist/_internal/components/form/Calendar/Calendar.js +5 -4
- package/dist/_internal/components/form/Calendar/CalendarDay.js +2 -1
- package/dist/_internal/components/form/Calendar/CalendarDayCell.js +3 -2
- package/dist/_internal/components/form/Calendar/CalendarMonth.js +4 -3
- package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +5 -5
- package/dist/_internal/components/form/Switch/Switch.js +4 -4
- package/dist/_internal/components/form/Switch/Switch.metrics.js +5 -1
- package/dist/_internal/components/form/Switch/Switch.parts.js +3 -3
- package/dist/_internal/components/form/Switch/Switch.styles.js +2 -2
- package/dist/_internal/components/form/index.js +9 -9
- package/dist/_internal/components/index.js +37 -37
- package/dist/_internal/components/layout/CardGrid/CardGrid.js +2 -1
- package/dist/_internal/components/layout/Resizable/Resizable.helpers.js +8 -3
- package/dist/_internal/components/layout/Resizable/Resizable.hooks.js +3 -2
- package/dist/_internal/components/layout/Resizable/Resizable.js +4 -3
- package/dist/_internal/components/layout/ScrollArea/ScrollArea.helpers.js +1 -1
- package/dist/_internal/components/layout/ScrollArea/ScrollArea.js +2 -2
- package/dist/_internal/components/layout/index.js +5 -5
- package/dist/_internal/components/utility/InfiniteScroll/InfiniteScroll.hooks.js +1 -1
- package/dist/_internal/components/utility/InfiniteScroll/InfiniteScroll.js +4 -3
- package/dist/_internal/components/utility/InfiniteScroll/InfiniteScroll.parts.js +2 -1
- package/dist/_internal/components/utility/VirtualList/VirtualList.hooks.js +6 -3
- package/dist/_internal/components/utility/VirtualList/VirtualList.js +3 -2
- package/dist/_internal/components/utility/index.js +5 -5
- package/dist/{chunk-J2DAQQQH.js → chunk-222HN7GK.js} +33 -64
- package/dist/chunk-222HN7GK.js.map +1 -0
- package/dist/{chunk-MR2HKBHS.js → chunk-27LOJVR3.js} +2 -2
- package/dist/{chunk-S3D5VBHW.js → chunk-3YOXVNO4.js} +7 -7
- package/dist/{chunk-CZIX4BW2.js → chunk-4ALF5PB5.js} +3 -3
- package/dist/{chunk-XJPJ6ESI.js → chunk-4OAKGKK5.js} +3 -3
- package/dist/{chunk-4CHROSWR.js → chunk-5ETBB2DG.js} +2 -2
- package/dist/{chunk-ATSHKSSD.js → chunk-5KNDAC24.js} +20 -7
- package/dist/chunk-5KNDAC24.js.map +1 -0
- package/dist/{chunk-ULTOQ6ZV.js → chunk-5LWB4BYX.js} +80 -89
- package/dist/chunk-5LWB4BYX.js.map +1 -0
- package/dist/{chunk-46UPILLK.js → chunk-5NT2M2JI.js} +2 -2
- package/dist/{chunk-H5BEWPEY.js → chunk-6N2EDWMG.js} +2 -2
- package/dist/{chunk-GJQYM3PM.js → chunk-6PU3JYVY.js} +2 -2
- package/dist/{chunk-PUBPZOQJ.js → chunk-AG3DY5TH.js} +8 -5
- package/dist/chunk-AG3DY5TH.js.map +1 -0
- package/dist/{chunk-PPRV4LTM.js → chunk-BWHOCNGW.js} +4 -4
- package/dist/chunk-BWHOCNGW.js.map +1 -0
- package/dist/{chunk-TUBCN4DJ.js → chunk-CB6DTWD5.js} +7 -7
- package/dist/chunk-CB6DTWD5.js.map +1 -0
- package/dist/{chunk-ZAY6OA6F.js → chunk-D4FZ3ANG.js} +15 -5
- package/dist/chunk-D4FZ3ANG.js.map +1 -0
- package/dist/{chunk-Y7F5JBAT.js → chunk-DDRKYNPB.js} +2 -2
- package/dist/{chunk-DLJGBJZW.js → chunk-DGMDQHMI.js} +16 -9
- package/dist/chunk-DGMDQHMI.js.map +1 -0
- package/dist/{chunk-IAGOUTI6.js → chunk-DNT5PZLF.js} +21 -12
- package/dist/chunk-DNT5PZLF.js.map +1 -0
- package/dist/{chunk-DZA7RSLX.js → chunk-DVSO3EG6.js} +19 -11
- package/dist/chunk-DVSO3EG6.js.map +1 -0
- package/dist/{chunk-OS6KPL4D.js → chunk-EHYI2WCJ.js} +4 -4
- package/dist/{chunk-NB3FGWU4.js → chunk-EQXIW5MQ.js} +2 -2
- package/dist/{chunk-C66RGVAS.js → chunk-ERY6D2OV.js} +6 -4
- package/dist/chunk-ERY6D2OV.js.map +1 -0
- package/dist/{chunk-M2JTIH5M.js → chunk-F44R7US6.js} +2 -2
- package/dist/{chunk-AROBXRC5.js → chunk-F7JTIHV5.js} +18 -7
- package/dist/chunk-F7JTIHV5.js.map +1 -0
- package/dist/{chunk-XJJXBUPN.js → chunk-FX26DAFF.js} +2 -2
- package/dist/{chunk-R6SN73RX.js → chunk-GLHNMTP6.js} +7 -7
- package/dist/{chunk-YU26GBNX.js → chunk-H3AQQOTI.js} +9 -4
- package/dist/chunk-H3AQQOTI.js.map +1 -0
- package/dist/{chunk-HTZNB6IV.js → chunk-H5ZTIELC.js} +23 -8
- package/dist/chunk-H5ZTIELC.js.map +1 -0
- package/dist/{chunk-GSFNH4C5.js → chunk-HBP2OU4Q.js} +15 -8
- package/dist/chunk-HBP2OU4Q.js.map +1 -0
- package/dist/{chunk-I4QA2F4L.js → chunk-HBRQPG7H.js} +5 -5
- package/dist/{chunk-HGMBY5LP.js → chunk-HQWJUHR4.js} +18 -11
- package/dist/chunk-HQWJUHR4.js.map +1 -0
- package/dist/{chunk-CNQUCNEA.js → chunk-I3F4C5SS.js} +3 -3
- package/dist/{chunk-UFJYJHQI.js → chunk-J5VWGQSR.js} +2 -2
- package/dist/{chunk-MTFCPPZ5.js → chunk-JWZJSXI5.js} +3 -2
- package/dist/chunk-JWZJSXI5.js.map +1 -0
- package/dist/{chunk-4JFL62K3.js → chunk-K7FSTB2K.js} +3 -3
- package/dist/{chunk-FFCJ7NR2.js → chunk-KRQUPE4K.js} +4 -4
- package/dist/{chunk-2OYFTSG4.js → chunk-KXLUMEDX.js} +2 -2
- package/dist/{chunk-DVAAUWTC.js → chunk-LCHCE2G5.js} +2 -2
- package/dist/{chunk-G4HBNILE.js → chunk-LEHMWJNZ.js} +3 -3
- package/dist/{chunk-P6TNXBDA.js → chunk-MYKWJCR7.js} +9 -9
- package/dist/chunk-MYKWJCR7.js.map +1 -0
- package/dist/{chunk-TQ6FPOPD.js → chunk-ODW2D5PN.js} +39 -30
- package/dist/chunk-ODW2D5PN.js.map +1 -0
- package/dist/{chunk-RZYSKQTS.js → chunk-PCBZYORN.js} +3 -3
- package/dist/{chunk-5OBXEMQO.js → chunk-PRIBOWX4.js} +3 -3
- package/dist/{chunk-F42MJOHM.js → chunk-PVM7XTLZ.js} +64 -62
- package/dist/chunk-PVM7XTLZ.js.map +1 -0
- package/dist/{chunk-3TDVGZZN.js → chunk-QBTBRJ2Q.js} +37 -13
- package/dist/chunk-QBTBRJ2Q.js.map +1 -0
- package/dist/{chunk-2WFDHFK4.js → chunk-QNCWSDXE.js} +26 -11
- package/dist/chunk-QNCWSDXE.js.map +1 -0
- package/dist/{chunk-PQECNGDE.js → chunk-QSRZOXQI.js} +2 -2
- package/dist/{chunk-RHIDWUK7.js → chunk-QUWK7SYN.js} +1 -2
- package/dist/chunk-QUWK7SYN.js.map +1 -0
- package/dist/{chunk-UN5INW6K.js → chunk-R53ZOW4B.js} +8 -4
- package/dist/chunk-R53ZOW4B.js.map +1 -0
- package/dist/{chunk-DCJSHYE5.js → chunk-RSDYS5B3.js} +4 -4
- package/dist/{chunk-N5GVW6RO.js → chunk-S6IWKDWT.js} +2 -2
- package/dist/{chunk-TKC6WHGB.js → chunk-SBIZXZPP.js} +2 -2
- package/dist/{chunk-D5SZXH7Q.js → chunk-TNBJ4DK4.js} +7 -3
- package/dist/chunk-TNBJ4DK4.js.map +1 -0
- package/dist/{chunk-PMOEG36E.js → chunk-XZJM6EPC.js} +8 -6
- package/dist/chunk-XZJM6EPC.js.map +1 -0
- package/dist/{chunk-QF6LTUCE.js → chunk-Y2X7LYIN.js} +4 -4
- package/dist/chunk-Y2X7LYIN.js.map +1 -0
- package/dist/{chunk-UEVHI62V.js → chunk-YCCY77W5.js} +2 -2
- package/dist/{chunk-DF4K5XVW.js → chunk-YZVR5ROE.js} +14 -6
- package/dist/chunk-YZVR5ROE.js.map +1 -0
- package/dist/{chunk-AUSUCZYR.js → chunk-ZBVU2YWV.js} +5 -5
- package/dist/chunk-ZBVU2YWV.js.map +1 -0
- package/dist/{chunk-VZIB5W5L.js → chunk-ZGCPDA3F.js} +2 -2
- package/dist/data-display/DataGrid.js +4 -4
- package/dist/data-display/DataViews.js +29 -29
- package/dist/data-display/FleetMap.js +10 -10
- package/dist/data-display/MapPreview.js +7 -7
- package/dist/data-display/Table.js +4 -4
- package/dist/form/Calendar.js +5 -4
- package/dist/form/DateRangePicker.js +5 -5
- package/dist/form/Switch.js +4 -4
- package/dist/layout/CardGrid.js +2 -1
- package/dist/layout/Resizable.js +4 -3
- package/dist/layout/ScrollArea.js +2 -2
- package/dist/native/form/Switch.js +3 -1
- package/dist/native/form/Switch.js.map +1 -1
- package/dist/types/components/data-display/DataGrid/DataGrid.body.d.ts.map +1 -1
- package/dist/types/components/data-display/DataGrid/DataGrid.cells.d.ts +4 -2
- package/dist/types/components/data-display/DataGrid/DataGrid.cells.d.ts.map +1 -1
- package/dist/types/components/data-display/DataGrid/DataGrid.model.d.ts +7 -1
- package/dist/types/components/data-display/DataGrid/DataGrid.model.d.ts.map +1 -1
- package/dist/types/components/data-display/DataGrid/DataGrid.types.d.ts +10 -4
- package/dist/types/components/data-display/DataGrid/DataGrid.types.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-columns.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-grid-helpers.d.ts +2 -0
- package/dist/types/components/data-display/DataViews/data-views-grid-helpers.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-layout-context.d.ts +7 -3
- package/dist/types/components/data-display/DataViews/data-views-layout-context.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-overflow-costs.d.ts +19 -9
- package/dist/types/components/data-display/DataViews/data-views-overflow-costs.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-overflow.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/MapTiles.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/mapProjection.d.ts +6 -1
- package/dist/types/components/data-display/MapPreview/mapProjection.d.ts.map +1 -1
- package/dist/types/components/data-display/Table/Table.helpers.d.ts +6 -0
- package/dist/types/components/data-display/Table/Table.helpers.d.ts.map +1 -1
- package/dist/types/components/data-display/Table/Table.hooks.d.ts +9 -1
- package/dist/types/components/data-display/Table/Table.hooks.d.ts.map +1 -1
- package/dist/types/components/data-display/Table/Table.types.d.ts +6 -2
- package/dist/types/components/data-display/Table/Table.types.d.ts.map +1 -1
- package/dist/types/components/data-display/Table/TableParts.d.ts +2 -0
- package/dist/types/components/data-display/Table/TableParts.d.ts.map +1 -1
- package/dist/types/components/form/Calendar/Calendar.d.ts.map +1 -1
- package/dist/types/components/form/Calendar/CalendarDay.d.ts.map +1 -1
- package/dist/types/components/form/Calendar/CalendarMonth.d.ts.map +1 -1
- package/dist/types/components/form/Switch/Switch.metrics.d.ts +13 -3
- package/dist/types/components/form/Switch/Switch.metrics.d.ts.map +1 -1
- package/dist/types/components/form/Switch/Switch.styles.d.ts.map +1 -1
- package/dist/types/components/layout/CardGrid/CardGrid.d.ts +9 -7
- package/dist/types/components/layout/CardGrid/CardGrid.d.ts.map +1 -1
- package/dist/types/components/layout/Resizable/Resizable.d.ts.map +1 -1
- package/dist/types/components/layout/Resizable/Resizable.helpers.d.ts +21 -9
- package/dist/types/components/layout/Resizable/Resizable.helpers.d.ts.map +1 -1
- package/dist/types/components/layout/Resizable/Resizable.hooks.d.ts +13 -3
- package/dist/types/components/layout/Resizable/Resizable.hooks.d.ts.map +1 -1
- package/dist/types/components/layout/Resizable/Resizable.types.d.ts +10 -0
- package/dist/types/components/layout/Resizable/Resizable.types.d.ts.map +1 -1
- package/dist/types/components/layout/ScrollArea/ScrollArea.d.ts.map +1 -1
- package/dist/types/components/layout/ScrollArea/ScrollArea.helpers.d.ts +1 -1
- package/dist/types/components/layout/ScrollArea/ScrollArea.helpers.d.ts.map +1 -1
- package/dist/types/components/layout/ScrollArea/ScrollArea.types.d.ts +4 -1
- package/dist/types/components/layout/ScrollArea/ScrollArea.types.d.ts.map +1 -1
- package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.d.ts.map +1 -1
- package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.hooks.d.ts +3 -2
- package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.hooks.d.ts.map +1 -1
- package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.parts.d.ts +3 -2
- package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.parts.d.ts.map +1 -1
- package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.types.d.ts +9 -0
- package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.types.d.ts.map +1 -1
- package/dist/types/components/utility/VirtualList/VirtualList.d.ts.map +1 -1
- package/dist/types/components/utility/VirtualList/VirtualList.hooks.d.ts +24 -28
- package/dist/types/components/utility/VirtualList/VirtualList.hooks.d.ts.map +1 -1
- package/dist/types/components/utility/VirtualList/VirtualList.types.d.ts +17 -0
- package/dist/types/components/utility/VirtualList/VirtualList.types.d.ts.map +1 -1
- package/dist/types-native/components/form/Switch/Switch.metrics.d.ts +13 -3
- package/dist/types-native/components/form/Switch/Switch.metrics.d.ts.map +1 -1
- package/dist/utility/InfiniteScroll.js +4 -3
- package/dist/utility/VirtualList.js +3 -2
- package/package.json +1 -1
- package/src/components/data-display/DataGrid/DataGrid.body.tsx +27 -7
- package/src/components/data-display/DataGrid/DataGrid.cells.tsx +33 -9
- package/src/components/data-display/DataGrid/DataGrid.model.ts +24 -11
- package/src/components/data-display/DataGrid/DataGrid.types.ts +12 -6
- package/src/components/data-display/DataViews/data-views-columns.ts +14 -3
- package/src/components/data-display/DataViews/data-views-grid-helpers.tsx +5 -3
- package/src/components/data-display/DataViews/data-views-layout-context.tsx +12 -9
- package/src/components/data-display/DataViews/data-views-overflow-costs.ts +32 -14
- package/src/components/data-display/DataViews/data-views-overflow.ts +40 -26
- package/src/components/data-display/MapPreview/MapTiles.tsx +16 -9
- package/src/components/data-display/MapPreview/mapProjection.ts +10 -5
- package/src/components/data-display/Table/Table.helpers.ts +7 -1
- package/src/components/data-display/Table/Table.hooks.ts +16 -5
- package/src/components/data-display/Table/Table.types.ts +6 -2
- package/src/components/data-display/Table/TableParts.tsx +38 -42
- package/src/components/form/Calendar/Calendar.tsx +4 -2
- package/src/components/form/Calendar/CalendarDay.tsx +6 -3
- package/src/components/form/Calendar/CalendarMonth.tsx +6 -3
- package/src/components/form/Switch/Switch.metrics.ts +19 -5
- package/src/components/form/Switch/Switch.styles.ts +5 -3
- package/src/components/layout/CardGrid/CardGrid.tsx +37 -24
- package/src/components/layout/Resizable/Resizable.helpers.ts +43 -21
- package/src/components/layout/Resizable/Resizable.hooks.ts +17 -9
- package/src/components/layout/Resizable/Resizable.md +9 -5
- package/src/components/layout/Resizable/Resizable.tsx +20 -8
- package/src/components/layout/Resizable/Resizable.types.ts +10 -0
- package/src/components/layout/ScrollArea/ScrollArea.helpers.ts +0 -2
- package/src/components/layout/ScrollArea/ScrollArea.tsx +5 -3
- package/src/components/layout/ScrollArea/ScrollArea.types.ts +4 -1
- package/src/components/utility/InfiniteScroll/InfiniteScroll.hooks.ts +5 -4
- package/src/components/utility/InfiniteScroll/InfiniteScroll.parts.tsx +29 -12
- package/src/components/utility/InfiniteScroll/InfiniteScroll.tsx +11 -5
- package/src/components/utility/InfiniteScroll/InfiniteScroll.types.ts +10 -2
- package/src/components/utility/VirtualList/VirtualList.hooks.ts +101 -112
- package/src/components/utility/VirtualList/VirtualList.tsx +36 -65
- package/src/components/utility/VirtualList/VirtualList.types.ts +20 -3
- package/dist/chunk-2WFDHFK4.js.map +0 -1
- package/dist/chunk-3TDVGZZN.js.map +0 -1
- package/dist/chunk-AROBXRC5.js.map +0 -1
- package/dist/chunk-ATSHKSSD.js.map +0 -1
- package/dist/chunk-AUSUCZYR.js.map +0 -1
- package/dist/chunk-C66RGVAS.js.map +0 -1
- package/dist/chunk-D5SZXH7Q.js.map +0 -1
- package/dist/chunk-DF4K5XVW.js.map +0 -1
- package/dist/chunk-DLJGBJZW.js.map +0 -1
- package/dist/chunk-DZA7RSLX.js.map +0 -1
- package/dist/chunk-F42MJOHM.js.map +0 -1
- package/dist/chunk-GSFNH4C5.js.map +0 -1
- package/dist/chunk-HGMBY5LP.js.map +0 -1
- package/dist/chunk-HTZNB6IV.js.map +0 -1
- package/dist/chunk-IAGOUTI6.js.map +0 -1
- package/dist/chunk-J2DAQQQH.js.map +0 -1
- package/dist/chunk-MTFCPPZ5.js.map +0 -1
- package/dist/chunk-P6TNXBDA.js.map +0 -1
- package/dist/chunk-PMOEG36E.js.map +0 -1
- package/dist/chunk-PPRV4LTM.js.map +0 -1
- package/dist/chunk-PUBPZOQJ.js.map +0 -1
- package/dist/chunk-QF6LTUCE.js.map +0 -1
- package/dist/chunk-RHIDWUK7.js.map +0 -1
- package/dist/chunk-TQ6FPOPD.js.map +0 -1
- package/dist/chunk-TUBCN4DJ.js.map +0 -1
- package/dist/chunk-ULTOQ6ZV.js.map +0 -1
- package/dist/chunk-UN5INW6K.js.map +0 -1
- package/dist/chunk-YU26GBNX.js.map +0 -1
- package/dist/chunk-ZAY6OA6F.js.map +0 -1
- /package/dist/{chunk-MR2HKBHS.js.map → chunk-27LOJVR3.js.map} +0 -0
- /package/dist/{chunk-S3D5VBHW.js.map → chunk-3YOXVNO4.js.map} +0 -0
- /package/dist/{chunk-CZIX4BW2.js.map → chunk-4ALF5PB5.js.map} +0 -0
- /package/dist/{chunk-XJPJ6ESI.js.map → chunk-4OAKGKK5.js.map} +0 -0
- /package/dist/{chunk-4CHROSWR.js.map → chunk-5ETBB2DG.js.map} +0 -0
- /package/dist/{chunk-46UPILLK.js.map → chunk-5NT2M2JI.js.map} +0 -0
- /package/dist/{chunk-H5BEWPEY.js.map → chunk-6N2EDWMG.js.map} +0 -0
- /package/dist/{chunk-GJQYM3PM.js.map → chunk-6PU3JYVY.js.map} +0 -0
- /package/dist/{chunk-Y7F5JBAT.js.map → chunk-DDRKYNPB.js.map} +0 -0
- /package/dist/{chunk-OS6KPL4D.js.map → chunk-EHYI2WCJ.js.map} +0 -0
- /package/dist/{chunk-NB3FGWU4.js.map → chunk-EQXIW5MQ.js.map} +0 -0
- /package/dist/{chunk-M2JTIH5M.js.map → chunk-F44R7US6.js.map} +0 -0
- /package/dist/{chunk-XJJXBUPN.js.map → chunk-FX26DAFF.js.map} +0 -0
- /package/dist/{chunk-R6SN73RX.js.map → chunk-GLHNMTP6.js.map} +0 -0
- /package/dist/{chunk-I4QA2F4L.js.map → chunk-HBRQPG7H.js.map} +0 -0
- /package/dist/{chunk-CNQUCNEA.js.map → chunk-I3F4C5SS.js.map} +0 -0
- /package/dist/{chunk-UFJYJHQI.js.map → chunk-J5VWGQSR.js.map} +0 -0
- /package/dist/{chunk-4JFL62K3.js.map → chunk-K7FSTB2K.js.map} +0 -0
- /package/dist/{chunk-FFCJ7NR2.js.map → chunk-KRQUPE4K.js.map} +0 -0
- /package/dist/{chunk-2OYFTSG4.js.map → chunk-KXLUMEDX.js.map} +0 -0
- /package/dist/{chunk-DVAAUWTC.js.map → chunk-LCHCE2G5.js.map} +0 -0
- /package/dist/{chunk-G4HBNILE.js.map → chunk-LEHMWJNZ.js.map} +0 -0
- /package/dist/{chunk-RZYSKQTS.js.map → chunk-PCBZYORN.js.map} +0 -0
- /package/dist/{chunk-5OBXEMQO.js.map → chunk-PRIBOWX4.js.map} +0 -0
- /package/dist/{chunk-PQECNGDE.js.map → chunk-QSRZOXQI.js.map} +0 -0
- /package/dist/{chunk-DCJSHYE5.js.map → chunk-RSDYS5B3.js.map} +0 -0
- /package/dist/{chunk-N5GVW6RO.js.map → chunk-S6IWKDWT.js.map} +0 -0
- /package/dist/{chunk-TKC6WHGB.js.map → chunk-SBIZXZPP.js.map} +0 -0
- /package/dist/{chunk-UEVHI62V.js.map → chunk-YCCY77W5.js.map} +0 -0
- /package/dist/{chunk-VZIB5W5L.js.map → chunk-ZGCPDA3F.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Resizable.helpers.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/Resizable/Resizable.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"Resizable.helpers.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/Resizable/Resizable.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAI3D,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAExF,kDAAkD;AAClD,MAAM,WAAW,IAAI;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,IAAI,CAAC;IACZ,MAAM,EAAE,IAAI,CAAC;CACd;AAED,eAAO,MAAM,cAAc,GAAI,SAAS,gBAAgB,KAAG,YAAY,EAStE,CAAC;AA4BF,eAAO,MAAM,SAAS,GACpB,QAAQ,YAAY,EACpB,OAAO;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC/B,OAAO;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EACxC,QAAQ,MAAM;;;CAWd,CAAC;AAEH,eAAO,MAAM,WAAW,GAAI,OAAO,KAAK,EAAE,QAAQ,YAAY,EAAE,QAAQ,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4C9E,CAAC;AAEF,KAAK,sBAAsB,GAAG,SAAS,GAAG,UAAU,CAAC;AAErD,KAAK,sBAAsB,GAAG,cAAc,GAC1C,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,sBAAsB,CAAC,CAAC,CAAC;AAUzD;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,KAAK,EAAE,QAAQ,MAAM,EAAE,SAAS,MAAM;;;CAGvE,CAAC;AAEH,gFAAgF;AAChF,eAAO,MAAM,MAAM,GAAI,OAAO,KAAK,EAAE,MAAM,MAAM,EAAE,MAAM,MAAM,KAAG,IAGhE,CAAC;AASH,eAAO,MAAM,qBAAqB,GAAI,OAAO,cAAc,KAAG,sBACiB,CAAC"}
|
|
@@ -2,9 +2,15 @@ import React from 'react';
|
|
|
2
2
|
import type { Bounds } from './Resizable.helpers';
|
|
3
3
|
import type { ResizeHandle } from './Resizable.types';
|
|
4
4
|
interface ResizeArgs {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/** Where the box starts, in px (`startSizePx`); a new object re-seats the box. */
|
|
6
|
+
start: {
|
|
7
|
+
width: number;
|
|
8
|
+
height: number;
|
|
9
|
+
};
|
|
10
|
+
/** The clamp, in px (`axisPx` per axis). */
|
|
7
11
|
bounds: Bounds;
|
|
12
|
+
/** Rendered px per design px (`remPx(theme, 1)`) — `onResize` reports design px. */
|
|
13
|
+
pxPerDesignPx: number;
|
|
8
14
|
disabled: boolean;
|
|
9
15
|
onResize?: (width: number, height: number) => void;
|
|
10
16
|
}
|
|
@@ -12,8 +18,12 @@ interface ResizeArgs {
|
|
|
12
18
|
* Tracks the box's size across a drag. The listeners live on the document rather
|
|
13
19
|
* than the handle, so the pointer can leave the handle — or the component — mid
|
|
14
20
|
* drag without the resize sticking.
|
|
21
|
+
*
|
|
22
|
+
* The live size is px, because a drag is pointer pixels. What `onResize`
|
|
23
|
+
* reports is design px — the unit the consumer's `width`/`height` are in — so a
|
|
24
|
+
* controlled box (`onResize` feeding `width`) stays put at any type scale.
|
|
15
25
|
*/
|
|
16
|
-
export declare const useResize: ({
|
|
26
|
+
export declare const useResize: ({ start, bounds, pxPerDesignPx, disabled, onResize }: ResizeArgs) => {
|
|
17
27
|
size: {
|
|
18
28
|
width: number;
|
|
19
29
|
height: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Resizable.hooks.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/Resizable/Resizable.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"Resizable.hooks.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/Resizable/Resizable.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,UAAU,UAAU;IAClB,kFAAkF;IAClF,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,oFAAoF;IACpF,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACpD;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,GAAI,sDAAsD,UAAU;;eAlBxE,MAAM;gBAAU,MAAM;;;;yBA8BhC,KAAK,CAAC,UAAU,UAAU,YAAY;CAqC7C,CAAC"}
|
|
@@ -4,12 +4,22 @@ export type ResizeHandle = 'top' | 'right' | 'bottom' | 'left' | 'topRight' | 'b
|
|
|
4
4
|
export interface ResizableProps {
|
|
5
5
|
children: ReactNode;
|
|
6
6
|
variant?: ResizableVariant;
|
|
7
|
+
/** Starting width (default 200). Design px, scaled with the theme's type scale. */
|
|
7
8
|
width?: number;
|
|
9
|
+
/** Starting height (default 200). Design px, scaled with the theme's type scale. */
|
|
8
10
|
height?: number;
|
|
11
|
+
/** Narrowest a drag can make it (default 50). Design px, scaled with the theme's type scale. */
|
|
9
12
|
minWidth?: number;
|
|
13
|
+
/** Widest a drag can make it (default 1000). Design px, scaled with the theme's type scale. */
|
|
10
14
|
maxWidth?: number;
|
|
15
|
+
/** Shortest a drag can make it (default 50). Design px, scaled with the theme's type scale. */
|
|
11
16
|
minHeight?: number;
|
|
17
|
+
/** Tallest a drag can make it (default 1000). Design px, scaled with the theme's type scale. */
|
|
12
18
|
maxHeight?: number;
|
|
19
|
+
/**
|
|
20
|
+
* Fired on every drag step with the new size, in design px — the unit `width`
|
|
21
|
+
* and `height` take, so feeding it back keeps a controlled box where it is.
|
|
22
|
+
*/
|
|
13
23
|
onResize?: (width: number, height: number) => void;
|
|
14
24
|
disabled?: boolean;
|
|
15
25
|
handles?: ResizeHandle[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Resizable.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/Resizable/Resizable.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;AAClE,MAAM,MAAM,YAAY,GACpB,KAAK,GACL,OAAO,GACP,QAAQ,GACR,MAAM,GACN,UAAU,GACV,aAAa,GACb,YAAY,GACZ,SAAS,CAAC;AAEd,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
|
|
1
|
+
{"version":3,"file":"Resizable.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/Resizable/Resizable.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;AAClE,MAAM,MAAM,YAAY,GACpB,KAAK,GACL,OAAO,GACP,QAAQ,GACR,MAAM,GACN,UAAU,GACV,aAAa,GACb,YAAY,GACZ,SAAS,CAAC;AAEd,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oFAAoF;IACpF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gGAAgG;IAChG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+FAA+F;IAC/F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gGAAgG;IAChG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollArea.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/ScrollArea/ScrollArea.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAOxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"ScrollArea.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/ScrollArea/ScrollArea.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAOxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AA0M1D,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA0EhD,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ScrollAreaProps } from './ScrollArea.types';
|
|
2
|
-
type ScrollAreaDefaultedKeys = 'width' | 'height' | 'orientation' | 'scrollbarSize' | 'autoHide' | 'autoHideDelay' | 'smoothScroll' | 'variant' | 'scrollToTopButton' | '
|
|
2
|
+
type ScrollAreaDefaultedKeys = 'width' | 'height' | 'orientation' | 'scrollbarSize' | 'autoHide' | 'autoHideDelay' | 'smoothScroll' | 'variant' | 'scrollToTopButton' | 'contentPadding' | 'alwaysShowScrollbar' | 'disabled' | 'loading' | 'testId';
|
|
3
3
|
export type ResolvedScrollAreaProps = ScrollAreaProps & Required<Pick<ScrollAreaProps, ScrollAreaDefaultedKeys>>;
|
|
4
4
|
export declare const resolveScrollAreaProps: (props: ScrollAreaProps) => ResolvedScrollAreaProps;
|
|
5
5
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollArea.helpers.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/ScrollArea/ScrollArea.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,KAAK,uBAAuB,GACxB,OAAO,GACP,QAAQ,GACR,aAAa,GACb,eAAe,GACf,UAAU,GACV,eAAe,GACf,cAAc,GACd,SAAS,GACT,mBAAmB,GACnB,
|
|
1
|
+
{"version":3,"file":"ScrollArea.helpers.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/ScrollArea/ScrollArea.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,KAAK,uBAAuB,GACxB,OAAO,GACP,QAAQ,GACR,aAAa,GACb,eAAe,GACf,UAAU,GACV,eAAe,GACf,cAAc,GACd,SAAS,GACT,mBAAmB,GACnB,gBAAgB,GAChB,qBAAqB,GACrB,UAAU,GACV,SAAS,GACT,QAAQ,CAAC;AAEb,MAAM,MAAM,uBAAuB,GAAG,eAAe,GACnD,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAAC,CAAC;AAuB3D,eAAO,MAAM,sBAAsB,GAAI,OAAO,eAAe,KAAG,uBAMjC,CAAC"}
|
|
@@ -49,7 +49,10 @@ export interface ScrollAreaBase extends Omit<BoxProps, 'ref'> {
|
|
|
49
49
|
variant?: ScrollAreaVariant;
|
|
50
50
|
/** Scroll event handler */
|
|
51
51
|
onScroll?: (event: React.UIEvent<HTMLDivElement>) => void;
|
|
52
|
-
/**
|
|
52
|
+
/**
|
|
53
|
+
* How far down the scroll-to-top button appears (default 100) — design px,
|
|
54
|
+
* scaled with the theme's type scale.
|
|
55
|
+
*/
|
|
53
56
|
scrollToTopThreshold?: number;
|
|
54
57
|
/** Custom scrollbar color */
|
|
55
58
|
scrollbarColor?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollArea.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/ScrollArea/ScrollArea.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElD,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CAAC;AACnE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAEhE;;;;GAIG;AACH,KAAK,qBAAqB,GACtB;IAAE,iBAAiB,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,KAAK,CAAA;CAAE,GACvD;IAAE,iBAAiB,EAAE,IAAI,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1D,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,qBAAqB,CAAC;AAErE,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC;IAC3D;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB,wDAAwD;IACxD,QAAQ,EAAE,SAAS,CAAC;IAEpB,+FAA+F;IAC/F,SAAS,CAAC,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAE7C,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3B,yBAAyB;IACzB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAEhC,4BAA4B;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,wCAAwC;IACxC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAE5B,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IAE1D
|
|
1
|
+
{"version":3,"file":"ScrollArea.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/layout/ScrollArea/ScrollArea.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElD,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CAAC;AACnE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAEhE;;;;GAIG;AACH,KAAK,qBAAqB,GACtB;IAAE,iBAAiB,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,KAAK,CAAA;CAAE,GACvD;IAAE,iBAAiB,EAAE,IAAI,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1D,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,qBAAqB,CAAC;AAErE,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC;IAC3D;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB,wDAAwD;IACxD,QAAQ,EAAE,SAAS,CAAC;IAEpB,+FAA+F;IAC/F,SAAS,CAAC,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAE7C,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3B,yBAAyB;IACzB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAEhC,4BAA4B;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,wCAAwC;IACxC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAE5B,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IAE1D;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,6BAA6B;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC,6BAA6B;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,oBAAoB;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,0BAA0B;IAC1B,YAAY,CAAC,EAAE,SAAS,CAAC;IAEzB,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACpE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InfiniteScroll.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/InfiniteScroll/InfiniteScroll.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"InfiniteScroll.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/InfiniteScroll/InfiniteScroll.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA6ExD,CAAC"}
|
|
@@ -2,7 +2,8 @@ import type { InfiniteScrollProps } from './InfiniteScroll.types';
|
|
|
2
2
|
type ScrollableTarget = InfiniteScrollProps['scrollableTarget'];
|
|
3
3
|
interface ObserverArgs {
|
|
4
4
|
testMode: boolean;
|
|
5
|
-
|
|
5
|
+
/** The observer's `rootMargin` — px, which is all `IntersectionObserver` takes. */
|
|
6
|
+
rootMargin: string;
|
|
6
7
|
scrollableTarget: ScrollableTarget;
|
|
7
8
|
}
|
|
8
9
|
/**
|
|
@@ -10,7 +11,7 @@ interface ObserverArgs {
|
|
|
10
11
|
* it fire before the sentinel is actually on screen, so the next page is already
|
|
11
12
|
* loading by the time the user reaches the bottom.
|
|
12
13
|
*/
|
|
13
|
-
export declare const useSentinel: ({ testMode,
|
|
14
|
+
export declare const useSentinel: ({ testMode, rootMargin, scrollableTarget }: ObserverArgs) => {
|
|
14
15
|
sentinelRef: import("react").RefObject<HTMLDivElement | null>;
|
|
15
16
|
isIntersecting: boolean;
|
|
16
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InfiniteScroll.hooks.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/InfiniteScroll/InfiniteScroll.hooks.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE,KAAK,gBAAgB,GAAG,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;AAehE,UAAU,YAAY;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,
|
|
1
|
+
{"version":3,"file":"InfiniteScroll.hooks.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/InfiniteScroll/InfiniteScroll.hooks.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE,KAAK,gBAAgB,GAAG,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;AAehE,UAAU,YAAY;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,mFAAmF;IACnF,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,gBAAgB,CAAC;CACpC;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,4CAA4C,YAAY;;;CA0BnF,CAAC;AAEF,KAAK,QAAQ,GAAG,IAAI,CAClB,mBAAmB,EACnB,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,gBAAgB,CAC5E,GAAG;IACF,cAAc,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,2FASzB,QAAQ,SAsCV,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type Theme } from '@mui/material/styles/index.js';
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import type { InfiniteScrollProps } from './InfiniteScroll.types';
|
|
3
4
|
type Variant = NonNullable<InfiniteScrollProps['variant']>;
|
|
@@ -14,8 +15,8 @@ export declare const DefaultError: React.FC<{
|
|
|
14
15
|
* `horizontal` scrolls along a row; `reverse` stacks bottom-up, for a chat log
|
|
15
16
|
* that loads older messages as you scroll away from the newest.
|
|
16
17
|
*/
|
|
17
|
-
export declare const containerStyles: (variant: Variant, width?: number | string) => {
|
|
18
|
-
width: string
|
|
18
|
+
export declare const containerStyles: (theme: Theme, variant: Variant, width?: number | string) => {
|
|
19
|
+
width: string;
|
|
19
20
|
height: string;
|
|
20
21
|
overflowX: string;
|
|
21
22
|
overflowY: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InfiniteScroll.parts.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/InfiniteScroll/InfiniteScroll.parts.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"InfiniteScroll.parts.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/InfiniteScroll/InfiniteScroll.parts.tsx"],"names":[],"mappings":"AAIA,OAAO,EAA0B,KAAK,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE,KAAK,OAAO,GAAG,WAAW,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;AAS3D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAU3D,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAM3D,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,CAInD,CAAC;AAaF;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,KAAK,EAAE,SAAS,OAAO,EAAE,QAAQ,MAAM,GAAG,MAAM;;;;;;;CAYtF,CAAC"}
|
|
@@ -11,6 +11,10 @@ export interface InfiniteScrollProps {
|
|
|
11
11
|
variant?: InfiniteScrollVariant;
|
|
12
12
|
hasMore: boolean;
|
|
13
13
|
loading: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* How far before the end the next page is requested (default 150) — design
|
|
16
|
+
* px, scaled with the theme's type scale.
|
|
17
|
+
*/
|
|
14
18
|
threshold?: number;
|
|
15
19
|
loadMore: () => void | Promise<void>;
|
|
16
20
|
loader?: ReactNode;
|
|
@@ -20,6 +24,11 @@ export interface InfiniteScrollProps {
|
|
|
20
24
|
onError?: (error: Error) => void;
|
|
21
25
|
className?: string;
|
|
22
26
|
style?: React.CSSProperties;
|
|
27
|
+
/**
|
|
28
|
+
* The `horizontal` variant's width. A number of 1 or less is a fraction of
|
|
29
|
+
* the parent (as in `sx`); a larger number is design px, scaled with the
|
|
30
|
+
* theme's type scale; a string is used as given.
|
|
31
|
+
*/
|
|
23
32
|
width?: number | string;
|
|
24
33
|
scrollableTarget?: string | HTMLElement;
|
|
25
34
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InfiniteScroll.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/InfiniteScroll/InfiniteScroll.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC;AAEzE,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IACrB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"InfiniteScroll.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/InfiniteScroll/InfiniteScroll.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC;AAEzE,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IACrB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACxC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;CACnE;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualList.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/VirtualList/VirtualList.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"VirtualList.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/VirtualList/VirtualList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAGtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAiE9E,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA+BlD,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA+BlD,CAAC"}
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
+
import { type Theme } from '@mui/material/styles/index.js';
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import type { VirtualGridProps, VirtualListProps } from './VirtualList.types';
|
|
3
4
|
type ScrollEvent = React.UIEvent<HTMLDivElement> | Event;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
export declare const useVirtualList: ({ items, variant, height, itemHeight, estimatedItemHeight, overscan, onScroll, scrollContainerRef, }:
|
|
17
|
-
totalHeight:
|
|
5
|
+
/**
|
|
6
|
+
* A `width` prop as CSS. `sx` reads a number of 1 or less as a fraction of the
|
|
7
|
+
* parent, and that stays so; a larger number is design px, through the type
|
|
8
|
+
* scale; a string is as given.
|
|
9
|
+
*/
|
|
10
|
+
export declare const widthCss: (theme: Theme, width: number | string) => string;
|
|
11
|
+
/**
|
|
12
|
+
* `height`, `itemHeight`, `estimatedItemHeight` and an item's own `height` are
|
|
13
|
+
* design px. The range is computed in the px `scrollTop` is measured in
|
|
14
|
+
* (`remPx`), the viewport and the scroll content are drawn in `rem`, and each
|
|
15
|
+
* item's `top`/`height` is the `remPx` of its design offset and height.
|
|
16
|
+
*/
|
|
17
|
+
export declare const useVirtualList: ({ items, variant, height, itemHeight, estimatedItemHeight, overscan, onScroll, scrollContainerRef, }: VirtualListProps) => {
|
|
18
|
+
totalHeight: string;
|
|
19
|
+
viewportHeight: string;
|
|
18
20
|
visibleItems: {
|
|
19
21
|
item: import("./VirtualList.types").VirtualListItem;
|
|
20
22
|
index: number;
|
|
@@ -28,20 +30,14 @@ export declare const useVirtualList: ({ items, variant, height, itemHeight, esti
|
|
|
28
30
|
}[];
|
|
29
31
|
handleScroll: (event: ScrollEvent) => void;
|
|
30
32
|
};
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
overscan: number;
|
|
40
|
-
onScroll: VirtualGridProps['onScroll'];
|
|
41
|
-
scrollContainerRef: VirtualGridProps['scrollContainerRef'];
|
|
42
|
-
}
|
|
43
|
-
export declare const useVirtualGrid: ({ items, height, width, columnCount, rowHeight, columnWidth, gap, overscan, onScroll, scrollContainerRef, }: GridArgs) => {
|
|
44
|
-
totalHeight: number;
|
|
33
|
+
/**
|
|
34
|
+
* `height`, `rowHeight`, `columnWidth` and `gap` are design px: the range and
|
|
35
|
+
* every cell's box are computed through `remPx`, the viewport and the content
|
|
36
|
+
* are drawn through `rem`.
|
|
37
|
+
*/
|
|
38
|
+
export declare const useVirtualGrid: ({ items, height, width, columnCount, rowHeight, columnWidth, gap, overscan, onScroll, scrollContainerRef, }: VirtualGridProps) => {
|
|
39
|
+
totalHeight: string;
|
|
40
|
+
viewportHeight: string;
|
|
45
41
|
visibleItems: {
|
|
46
42
|
item: import("./VirtualList.types").VirtualListItem;
|
|
47
43
|
index: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualList.hooks.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/VirtualList/VirtualList.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"VirtualList.hooks.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/VirtualList/VirtualList.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAoD,MAAM,OAAO,CAAC;AAIzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,KAAK,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC;AA0DzD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,KAAK,EAAE,OAAO,MAAM,GAAG,MAAM,KAAG,MAG/D,CAAC;AAoFF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,sGAS5B,gBAAgB;;;;;;;;;;;;;;0BAzHP,WAAW;CAuKtB,CAAC;AAgBF;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,6GAW5B,gBAAgB;;;;;;;;;;;;;;;;0BAvMP,WAAW;CAgQtB,CAAC"}
|
|
@@ -2,15 +2,23 @@ import type { CSSProperties, ReactNode, RefObject } from 'react';
|
|
|
2
2
|
export type VirtualListVariant = 'fixed' | 'variable' | 'grid';
|
|
3
3
|
export interface VirtualListItem {
|
|
4
4
|
id: string | number;
|
|
5
|
+
/** This item's own height, for a `variable` list — design px, scaled with the theme's type scale. */
|
|
5
6
|
height?: number;
|
|
6
7
|
data?: unknown;
|
|
7
8
|
}
|
|
8
9
|
export interface VirtualListProps {
|
|
9
10
|
items: VirtualListItem[];
|
|
10
11
|
variant?: VirtualListVariant;
|
|
12
|
+
/** The viewport's height — design px, scaled with the theme's type scale. */
|
|
11
13
|
height: number;
|
|
14
|
+
/**
|
|
15
|
+
* The viewport's width. A number of 1 or less is a fraction of the parent (as
|
|
16
|
+
* in `sx`); a larger number is design px, scaled with the theme's type scale; a string is used as given.
|
|
17
|
+
*/
|
|
12
18
|
width?: number | string;
|
|
19
|
+
/** Every row's height in a `fixed` list (default 40) — design px, scaled with the theme's type scale. */
|
|
13
20
|
itemHeight?: number;
|
|
21
|
+
/** The height assumed for a `variable` item that declares none (default 40) — design px, scaled with the theme's type scale. */
|
|
14
22
|
estimatedItemHeight?: number;
|
|
15
23
|
overscan?: number;
|
|
16
24
|
renderItem: (params: {
|
|
@@ -30,11 +38,20 @@ export interface VirtualListProps {
|
|
|
30
38
|
}
|
|
31
39
|
export interface VirtualGridProps {
|
|
32
40
|
items: VirtualListItem[];
|
|
41
|
+
/** The viewport's height — design px, scaled with the theme's type scale. */
|
|
33
42
|
height: number;
|
|
43
|
+
/**
|
|
44
|
+
* The viewport's width. A number of 1 or less is a fraction of the parent (as
|
|
45
|
+
* in `sx`); a larger number is design px, scaled with the theme's type scale, and also what an unset
|
|
46
|
+
* `columnWidth` is shared out of; a string is used as given.
|
|
47
|
+
*/
|
|
34
48
|
width?: number | string;
|
|
35
49
|
columnCount: number;
|
|
50
|
+
/** Every row's height — design px, scaled with the theme's type scale. */
|
|
36
51
|
rowHeight: number;
|
|
52
|
+
/** Every column's width — design px, scaled with the theme's type scale. */
|
|
37
53
|
columnWidth?: number;
|
|
54
|
+
/** The space between two rows and between two columns — design px, scaled with the theme's type scale. */
|
|
38
55
|
gap?: number;
|
|
39
56
|
overscan?: number;
|
|
40
57
|
renderItem: (params: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualList.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/VirtualList/VirtualList.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEjE,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAE/D,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,eAAe,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,aAAa,CAAA;KAAE,KAAK,SAAS,CAAC;IAClG,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yFAAyF;IACzF,kBAAkB,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACnD,sFAAsF;IACtF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,CAAC,MAAM,EAAE;QACnB,IAAI,EAAE,eAAe,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,aAAa,CAAC;KACtB,KAAK,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yFAAyF;IACzF,kBAAkB,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACnD,sFAAsF;IACtF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC"}
|
|
1
|
+
{"version":3,"file":"VirtualList.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/utility/VirtualList/VirtualList.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEjE,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAE/D,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,qGAAqG;IACrG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,yGAAyG;IACzG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gIAAgI;IAChI,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,eAAe,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,aAAa,CAAA;KAAE,KAAK,SAAS,CAAC;IAClG,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yFAAyF;IACzF,kBAAkB,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACnD,sFAAsF;IACtF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0GAA0G;IAC1G,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,CAAC,MAAM,EAAE;QACnB,IAAI,EAAE,eAAe,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,aAAa,CAAC;KACtB,KAAK,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yFAAyF;IACzF,kBAAkB,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACnD,sFAAsF;IACtF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC"}
|
|
@@ -42,10 +42,20 @@ export declare const thumbRadius: (look: SwitchLook, thumbSize: number) => numbe
|
|
|
42
42
|
*/
|
|
43
43
|
export declare const THUMB_ELEVATION: Record<SwitchLook, number>;
|
|
44
44
|
export declare const MUI_SHADOWS: Record<number, string>;
|
|
45
|
-
/**
|
|
45
|
+
/**
|
|
46
|
+
* How a shadow builder writes one of its lengths. Native takes the px as they
|
|
47
|
+
* stand ({@link AS_PX}); the web hands in its type scale (`rem`), so the iOS
|
|
48
|
+
* shadows scale with the theme like every other length it draws.
|
|
49
|
+
*/
|
|
50
|
+
export type ShadowLength = (px: number) => string;
|
|
51
|
+
/** A length written as the px it was drawn at — what native reads. */
|
|
52
|
+
export declare const AS_PX: ShadowLength;
|
|
53
|
+
/** The iOS thumb's own three-layer shadow. */
|
|
54
|
+
export declare const iosThumbShadow: (length?: ShadowLength) => string;
|
|
55
|
+
/** {@link iosThumbShadow} in px, as native draws it. */
|
|
46
56
|
export declare const IOS_THUMB_SHADOW: string;
|
|
47
|
-
/** The iOS track's inset hairline. */
|
|
48
|
-
export declare const iosTrackShadow: () => string;
|
|
57
|
+
/** The iOS track's inset hairline and inner shade. */
|
|
58
|
+
export declare const iosTrackShadow: (length?: ShadowLength) => string;
|
|
49
59
|
/** The resting track: a black wash on iOS, the disabled ink elsewhere. */
|
|
50
60
|
export declare const TRACK_ALPHA: {
|
|
51
61
|
readonly ios: 0.1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Switch.metrics.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/Switch/Switch.metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D;;;;;;;;;;;GAWG;AAEH,oEAAoE;AACpE,eAAO,MAAM,YAAY,QAAqB,CAAC;AAE/C,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,cAAc,CAM1D,CAAC;AAEF,gFAAgF;AAChF,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAEpE,eAAO,MAAM,MAAM,GAAI,UAAU,MAAM,KAAG,UAKzC,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,UAAU,GAAI,MAAM,SAAS,GAAG,SAAS,EAAE,QAAQ,MAAM,EAAE,SAAS,MAAM,KAAG,cAGzF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAKnF,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAKvE,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,WAAW,GAAI,MAAM,UAAU,EAAE,WAAW,MAAM,KAAG,MAGjE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAmD,CAAC;AAE3G,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAG9C,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"Switch.metrics.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/Switch/Switch.metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import "../chunk-H7NA4TXY.js";
|
|
2
2
|
import {
|
|
3
3
|
InfiniteScroll
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
6
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-HBP2OU4Q.js";
|
|
5
|
+
import "../chunk-5KNDAC24.js";
|
|
6
|
+
import "../chunk-Y2X7LYIN.js";
|
|
7
|
+
import "../chunk-YKCAJ2TN.js";
|
|
7
8
|
import "../chunk-PZ5AY32C.js";
|
|
8
9
|
export {
|
|
9
10
|
InfiniteScroll
|
|
@@ -2,8 +2,9 @@ import "../chunk-53AAAF37.js";
|
|
|
2
2
|
import {
|
|
3
3
|
VirtualGrid,
|
|
4
4
|
VirtualList
|
|
5
|
-
} from "../chunk-
|
|
6
|
-
import "../chunk-
|
|
5
|
+
} from "../chunk-222HN7GK.js";
|
|
6
|
+
import "../chunk-PVM7XTLZ.js";
|
|
7
|
+
import "../chunk-YKCAJ2TN.js";
|
|
7
8
|
import "../chunk-PZ5AY32C.js";
|
|
8
9
|
export {
|
|
9
10
|
VirtualGrid,
|
package/package.json
CHANGED
|
@@ -13,6 +13,8 @@ import TableRow from '@mui/material/TableRow/index.js';
|
|
|
13
13
|
import { useTheme } from '@mui/material/styles/index.js';
|
|
14
14
|
import type React from 'react';
|
|
15
15
|
|
|
16
|
+
import { rem } from '../../../tokens/relative';
|
|
17
|
+
|
|
16
18
|
import { GridRow, HeaderCell } from './DataGrid.cells';
|
|
17
19
|
import type { DataGridModel } from './DataGrid.model';
|
|
18
20
|
import type { DataGridProps } from './DataGrid.types';
|
|
@@ -78,7 +80,10 @@ export function GridHeader<T extends Record<string, unknown>>(
|
|
|
78
80
|
section: GridSectionProps<T>,
|
|
79
81
|
): React.JSX.Element {
|
|
80
82
|
const { model, props } = section;
|
|
81
|
-
const
|
|
83
|
+
const theme = useTheme();
|
|
84
|
+
const { sorting = {}, stickyHeader = true } = props;
|
|
85
|
+
// 56 design px unless the caller says, drawn through the type scale.
|
|
86
|
+
const headerHeight = rem(theme, props.headerHeight ?? 56);
|
|
82
87
|
const sortable = sorting.mode === 'client' || sorting.mode === 'server';
|
|
83
88
|
return (
|
|
84
89
|
<TableHead data-slot="header">
|
|
@@ -100,12 +105,27 @@ export function GridHeader<T extends Record<string, unknown>>(
|
|
|
100
105
|
);
|
|
101
106
|
}
|
|
102
107
|
|
|
103
|
-
/**
|
|
104
|
-
|
|
105
|
-
|
|
108
|
+
/**
|
|
109
|
+
* An invisible row standing in for `rows` rows the window is not rendering —
|
|
110
|
+
* that many times the row's own CSS height, so the spacer and the rows it
|
|
111
|
+
* replaces are the same length by construction.
|
|
112
|
+
*/
|
|
113
|
+
function Spacer({
|
|
114
|
+
rows,
|
|
115
|
+
rowHeight,
|
|
116
|
+
colSpan,
|
|
117
|
+
}: {
|
|
118
|
+
rows: number;
|
|
119
|
+
rowHeight: string;
|
|
120
|
+
colSpan: number;
|
|
121
|
+
}): React.JSX.Element | null {
|
|
122
|
+
if (rows <= 0) return null;
|
|
106
123
|
return (
|
|
107
124
|
<TableRow>
|
|
108
|
-
<TableCell
|
|
125
|
+
<TableCell
|
|
126
|
+
colSpan={colSpan}
|
|
127
|
+
sx={{ height: `calc(${rows} * ${rowHeight})`, border: 'none', p: 0 }}
|
|
128
|
+
/>
|
|
109
129
|
</TableRow>
|
|
110
130
|
);
|
|
111
131
|
}
|
|
@@ -119,7 +139,7 @@ export function GridBody<T extends Record<string, unknown>>(
|
|
|
119
139
|
return (
|
|
120
140
|
<TableBody data-slot="body">
|
|
121
141
|
{model.virtualized ? (
|
|
122
|
-
<Spacer
|
|
142
|
+
<Spacer rows={start} rowHeight={model.rowHeight} colSpan={totalColumns} />
|
|
123
143
|
) : null}
|
|
124
144
|
{model.visibleRows.map((row, offset) => {
|
|
125
145
|
const index = model.virtualized ? start + offset : offset;
|
|
@@ -139,7 +159,7 @@ export function GridBody<T extends Record<string, unknown>>(
|
|
|
139
159
|
);
|
|
140
160
|
})}
|
|
141
161
|
{model.virtualized ? (
|
|
142
|
-
<Spacer
|
|
162
|
+
<Spacer rows={trailing} rowHeight={model.rowHeight} colSpan={totalColumns} />
|
|
143
163
|
) : null}
|
|
144
164
|
</TableBody>
|
|
145
165
|
);
|
|
@@ -16,9 +16,11 @@ import IconButton from '@mui/material/IconButton/index.js';
|
|
|
16
16
|
import TableCell from '@mui/material/TableCell/index.js';
|
|
17
17
|
import TableRow from '@mui/material/TableRow/index.js';
|
|
18
18
|
import Typography from '@mui/material/Typography/index.js';
|
|
19
|
-
import { useTheme } from '@mui/material/styles/index.js';
|
|
19
|
+
import { useTheme, type Theme } from '@mui/material/styles/index.js';
|
|
20
20
|
import React from 'react';
|
|
21
21
|
|
|
22
|
+
import { rem } from '../../../tokens/relative';
|
|
23
|
+
|
|
22
24
|
import { cellValue } from './DataGrid.rows';
|
|
23
25
|
import type { DataGridModel } from './DataGrid.model';
|
|
24
26
|
import type { DataGridProps, GridColumn, GridSort } from './DataGrid.types';
|
|
@@ -35,12 +37,36 @@ function ariaSort(dir: GridSort['dir'] | undefined): 'none' | 'ascending' | 'des
|
|
|
35
37
|
return dir === 'asc' ? 'ascending' : 'descending';
|
|
36
38
|
}
|
|
37
39
|
|
|
40
|
+
/**
|
|
41
|
+
* One of a column's `width`/`minWidth`/`maxWidth` as CSS. A number is design
|
|
42
|
+
* px through the type scale — except 1 or less, which `sx` has always read as a
|
|
43
|
+
* fraction of the table and still does; a string (`'312px'`, `'20%'`) is used as
|
|
44
|
+
* given.
|
|
45
|
+
*/
|
|
46
|
+
function columnLength(theme: Theme, value: number | string | undefined): string | undefined {
|
|
47
|
+
if (typeof value !== 'number') return value;
|
|
48
|
+
return value <= 1 && value !== 0 ? `${value * 100}%` : rem(theme, value);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/** A column's size constraints, as the `sx` of its header and its cells. */
|
|
52
|
+
function columnBox<T extends Record<string, unknown>>(
|
|
53
|
+
theme: Theme,
|
|
54
|
+
column: GridColumn<T>,
|
|
55
|
+
): { minWidth?: string; maxWidth?: string; width?: string } {
|
|
56
|
+
return {
|
|
57
|
+
minWidth: columnLength(theme, column.minWidth),
|
|
58
|
+
maxWidth: columnLength(theme, column.maxWidth),
|
|
59
|
+
width: columnLength(theme, column.width),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
|
|
38
63
|
export interface HeaderCellProps<T extends Record<string, unknown>> {
|
|
39
64
|
column: GridColumn<T>;
|
|
40
65
|
sort: GridSort | undefined;
|
|
41
66
|
sortable: boolean;
|
|
42
67
|
stickyHeader: boolean;
|
|
43
|
-
|
|
68
|
+
/** The header row's height, as CSS. */
|
|
69
|
+
headerHeight: string;
|
|
44
70
|
onSort: (columnId: string) => void;
|
|
45
71
|
}
|
|
46
72
|
|
|
@@ -65,9 +91,7 @@ export function HeaderCell<T extends Record<string, unknown>>({
|
|
|
65
91
|
backgroundColor: theme.palette.background.paper,
|
|
66
92
|
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
67
93
|
height: headerHeight,
|
|
68
|
-
|
|
69
|
-
maxWidth: column.maxWidth,
|
|
70
|
-
width: column.width,
|
|
94
|
+
...columnBox(theme, column),
|
|
71
95
|
}}
|
|
72
96
|
role="columnheader"
|
|
73
97
|
aria-sort={ariaSort(sort?.dir)}
|
|
@@ -103,7 +127,8 @@ export interface DataCellProps<T extends Record<string, unknown>> {
|
|
|
103
127
|
rowIndex: number;
|
|
104
128
|
rowId: string | number;
|
|
105
129
|
column: GridColumn<T>;
|
|
106
|
-
rowHeight
|
|
130
|
+
/** The row's height, as CSS — `DataGridModel.rowHeight`. */
|
|
131
|
+
rowHeight: string;
|
|
107
132
|
editing: NonNullable<DataGridProps<T>['editing']>;
|
|
108
133
|
model: Pick<DataGridModel<T>, 'editingCell' | 'setEditingCell'>;
|
|
109
134
|
}
|
|
@@ -117,6 +142,7 @@ export function DataCell<T extends Record<string, unknown>>({
|
|
|
117
142
|
editing,
|
|
118
143
|
model,
|
|
119
144
|
}: DataCellProps<T>): React.JSX.Element {
|
|
145
|
+
const theme = useTheme();
|
|
120
146
|
const value = cellValue(row, column);
|
|
121
147
|
const isEditing =
|
|
122
148
|
model.editingCell?.rowId === rowId && model.editingCell?.colId === column.id;
|
|
@@ -129,9 +155,7 @@ export function DataCell<T extends Record<string, unknown>>({
|
|
|
129
155
|
data-col-id={column.id}
|
|
130
156
|
data-editing={isEditing}
|
|
131
157
|
sx={{
|
|
132
|
-
|
|
133
|
-
maxWidth: column.maxWidth,
|
|
134
|
-
width: column.width,
|
|
158
|
+
...columnBox(theme, column),
|
|
135
159
|
height: rowHeight,
|
|
136
160
|
}}
|
|
137
161
|
role="gridcell"
|