@dxos/react-ui-table 0.6.14-main.8b352a0 → 0.6.14-staging.54a8bab
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/lib/browser/index.mjs +39 -38
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/types/src/components/ColumnMenu/ColumnSettings.stories.d.ts +4 -4
- package/dist/types/src/components/ColumnMenu/ColumnSettings.stories.d.ts.map +1 -1
- package/dist/types/src/schema/column-utils.d.ts +3 -0
- package/dist/types/src/schema/column-utils.d.ts.map +1 -1
- package/dist/types/src/schema/types.d.ts +3 -2
- package/dist/types/src/schema/types.d.ts.map +1 -1
- package/package.json +19 -19
- package/src/components/ColumnMenu/ColumnMenu.stories.tsx +4 -4
- package/src/components/ColumnMenu/ColumnSettings.stories.tsx +9 -9
- package/src/components/ColumnMenu/ColumnSettings.tsx +3 -3
- package/src/schema/column-utils.ts +33 -27
- package/src/schema/types.ts +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/ui/react-ui-table/src/translations.ts":{"bytes":2404,"imports":[],"format":"esm"},"packages/ui/react-ui-table/src/components/Cell/CellCombobox.tsx":{"bytes":11824,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-searchlist","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Cell/index.ts":{"bytes":526,"imports":[{"path":"packages/ui/react-ui-table/src/components/Cell/CellCombobox.tsx","kind":"import-statement","original":"./CellCombobox"}],"format":"esm"},"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnSettings.tsx":{"bytes":22442,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/useColumnSizing.ts":{"bytes":5073,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/TableContext.tsx":{"bytes":2892,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/useColumnSorting.ts":{"bytes":6849,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"../components/Table/TableContext"}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/usePinLastRow.ts":{"bytes":4488,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/useRowSelection.ts":{"bytes":5106,"imports":[{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/index.ts":{"bytes":847,"imports":[{"path":"packages/ui/react-ui-table/src/hooks/useColumnSizing.ts","kind":"import-statement","original":"./useColumnSizing"},{"path":"packages/ui/react-ui-table/src/hooks/useColumnSorting.ts","kind":"import-statement","original":"./useColumnSorting"},{"path":"packages/ui/react-ui-table/src/hooks/usePinLastRow.ts","kind":"import-statement","original":"./usePinLastRow"},{"path":"packages/ui/react-ui-table/src/hooks/useRowSelection.ts","kind":"import-statement","original":"./useRowSelection"}],"format":"esm"},"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnMenu.tsx":{"bytes":21065,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnSettings.tsx","kind":"import-statement","original":"./ColumnSettings"},{"path":"packages/ui/react-ui-table/src/hooks/index.ts","kind":"import-statement","original":"../../hooks"}],"format":"esm"},"packages/ui/react-ui-table/src/components/ColumnMenu/index.ts":{"bytes":632,"imports":[{"path":"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnMenu.tsx","kind":"import-statement","original":"./ColumnMenu"},{"path":"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnSettings.tsx","kind":"import-statement","original":"./ColumnSettings"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/props.ts":{"bytes":2883,"imports":[],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts":{"bytes":3971,"imports":[{"path":"@tanstack/react-virtual","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/theme.ts":{"bytes":9209,"imports":[{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/components/Cell/Cell.tsx":{"bytes":10689,"imports":[{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"../../theme"},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"../Table/TableContext"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/TableBody.tsx":{"bytes":9015,"imports":[{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"./TableContext"},{"path":"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts","kind":"import-statement","original":"./TableRootContext"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"../../theme"},{"path":"packages/ui/react-ui-table/src/components/Cell/Cell.tsx","kind":"import-statement","original":"../Cell/Cell"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/TableHead.tsx":{"bytes":8047,"imports":[{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"./TableContext"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"../../theme"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/Table.tsx":{"bytes":31553,"imports":[{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/Table/TableBody.tsx","kind":"import-statement","original":"./TableBody"},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"./TableContext"},{"path":"packages/ui/react-ui-table/src/components/Table/TableHead.tsx","kind":"import-statement","original":"./TableHead"},{"path":"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts","kind":"import-statement","original":"./TableRootContext"},{"path":"packages/ui/react-ui-table/src/hooks/index.ts","kind":"import-statement","original":"../../hooks"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"../../theme"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/index.ts":{"bytes":801,"imports":[{"path":"packages/ui/react-ui-table/src/components/Table/props.ts","kind":"import-statement","original":"./props"},{"path":"packages/ui/react-ui-table/src/components/Table/Table.tsx","kind":"import-statement","original":"./Table"},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"./TableContext"},{"path":"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts","kind":"import-statement","original":"./TableRootContext"}],"format":"esm"},"packages/ui/react-ui-table/src/components/index.ts":{"bytes":676,"imports":[{"path":"packages/ui/react-ui-table/src/components/Cell/index.ts","kind":"import-statement","original":"./Cell"},{"path":"packages/ui/react-ui-table/src/components/ColumnMenu/index.ts","kind":"import-statement","original":"./ColumnMenu"},{"path":"packages/ui/react-ui-table/src/components/Table/index.ts","kind":"import-statement","original":"./Table"}],"format":"esm"},"packages/ui/react-ui-table/src/helpers.tsx":{"bytes":55537,"imports":[{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"date-fns/format","kind":"import-statement","external":true},{"path":"date-fns/formatDistanceToNow","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"./theme"}],"format":"esm"},"packages/ui/react-ui-table/src/schema/column-utils.ts":{"bytes":5832,"imports":[{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/helpers.tsx","kind":"import-statement","original":"../helpers"}],"format":"esm"},"packages/ui/react-ui-table/src/schema/types.ts":{"bytes":1400,"imports":[],"format":"esm"},"packages/ui/react-ui-table/src/schema/index.ts":{"bytes":598,"imports":[{"path":"packages/ui/react-ui-table/src/schema/column-utils.ts","kind":"import-statement","original":"./column-utils"},{"path":"packages/ui/react-ui-table/src/schema/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/ui/react-ui-table/src/types.ts":{"bytes":1862,"imports":[],"format":"esm"},"packages/ui/react-ui-table/src/index.ts":{"bytes":1142,"imports":[{"path":"packages/ui/react-ui-table/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/ui/react-ui-table/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/ui/react-ui-table/src/helpers.tsx","kind":"import-statement","original":"./helpers"},{"path":"packages/ui/react-ui-table/src/hooks/index.ts","kind":"import-statement","original":"./hooks"},{"path":"packages/ui/react-ui-table/src/schema/index.ts","kind":"import-statement","original":"./schema"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"./theme"},{"path":"packages/ui/react-ui-table/src/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"}},"outputs":{"packages/ui/react-ui-table/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":112127},"packages/ui/react-ui-table/dist/lib/browser/index.mjs":{"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-searchlist","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@tanstack/react-virtual","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"date-fns/format","kind":"import-statement","external":true},{"path":"date-fns/formatDistanceToNow","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["CellCombobox","ColumnBuilder","ColumnMenu","ColumnSettings","MemoizedVirtualizedTableContent","SortIndicator","TABLE_NAME","Table","TablePrimitive","TableProvider","TableRootContext","createColumnBuilder","currentRow","flushPadding","gridCellFocusRing","groupTh","headPadding","schemaToColumnDefs","selectedRow","tableRoot","tbodyRoot","tbodyTr","tdRoot","textPadding","theadResizeRoot","theadRoot","theadTh","theadTr","translations","useColumnResizing","useColumnSorting","usePinLastRow","useRowSelection","useSortColumn","useTableContext","useTableRootContext"],"entryPoint":"packages/ui/react-ui-table/src/index.ts","inputs":{"packages/ui/react-ui-table/src/translations.ts":{"bytesInOutput":612},"packages/ui/react-ui-table/src/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/Cell/CellCombobox.tsx":{"bytesInOutput":2993},"packages/ui/react-ui-table/src/components/Cell/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnMenu.tsx":{"bytesInOutput":6108},"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnSettings.tsx":{"bytesInOutput":5748},"packages/ui/react-ui-table/src/hooks/useColumnSizing.ts":{"bytesInOutput":1068},"packages/ui/react-ui-table/src/hooks/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/hooks/useColumnSorting.ts":{"bytesInOutput":1472},"packages/ui/react-ui-table/src/components/Table/TableContext.tsx":{"bytesInOutput":442},"packages/ui/react-ui-table/src/hooks/usePinLastRow.ts":{"bytesInOutput":961},"packages/ui/react-ui-table/src/hooks/useRowSelection.ts":{"bytesInOutput":1055},"packages/ui/react-ui-table/src/components/ColumnMenu/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/Table/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/Table/Table.tsx":{"bytesInOutput":7450},"packages/ui/react-ui-table/src/components/Table/TableBody.tsx":{"bytesInOutput":1994},"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts":{"bytesInOutput":758},"packages/ui/react-ui-table/src/theme.ts":{"bytesInOutput":2144},"packages/ui/react-ui-table/src/components/Cell/Cell.tsx":{"bytesInOutput":2259},"packages/ui/react-ui-table/src/components/Table/TableHead.tsx":{"bytesInOutput":1785},"packages/ui/react-ui-table/src/helpers.tsx":{"bytesInOutput":13559},"packages/ui/react-ui-table/src/schema/column-utils.ts":{"bytesInOutput":1243},"packages/ui/react-ui-table/src/schema/index.ts":{"bytesInOutput":0}},"bytes":53631}}}
|
|
1
|
+
{"inputs":{"packages/ui/react-ui-table/src/translations.ts":{"bytes":2404,"imports":[],"format":"esm"},"packages/ui/react-ui-table/src/components/Cell/CellCombobox.tsx":{"bytes":11824,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-searchlist","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Cell/index.ts":{"bytes":526,"imports":[{"path":"packages/ui/react-ui-table/src/components/Cell/CellCombobox.tsx","kind":"import-statement","original":"./CellCombobox"}],"format":"esm"},"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnSettings.tsx":{"bytes":22415,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/useColumnSizing.ts":{"bytes":5073,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/TableContext.tsx":{"bytes":2892,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/useColumnSorting.ts":{"bytes":6849,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"../components/Table/TableContext"}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/usePinLastRow.ts":{"bytes":4488,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/useRowSelection.ts":{"bytes":5106,"imports":[{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/hooks/index.ts":{"bytes":847,"imports":[{"path":"packages/ui/react-ui-table/src/hooks/useColumnSizing.ts","kind":"import-statement","original":"./useColumnSizing"},{"path":"packages/ui/react-ui-table/src/hooks/useColumnSorting.ts","kind":"import-statement","original":"./useColumnSorting"},{"path":"packages/ui/react-ui-table/src/hooks/usePinLastRow.ts","kind":"import-statement","original":"./usePinLastRow"},{"path":"packages/ui/react-ui-table/src/hooks/useRowSelection.ts","kind":"import-statement","original":"./useRowSelection"}],"format":"esm"},"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnMenu.tsx":{"bytes":21065,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnSettings.tsx","kind":"import-statement","original":"./ColumnSettings"},{"path":"packages/ui/react-ui-table/src/hooks/index.ts","kind":"import-statement","original":"../../hooks"}],"format":"esm"},"packages/ui/react-ui-table/src/components/ColumnMenu/index.ts":{"bytes":632,"imports":[{"path":"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnMenu.tsx","kind":"import-statement","original":"./ColumnMenu"},{"path":"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnSettings.tsx","kind":"import-statement","original":"./ColumnSettings"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/props.ts":{"bytes":2883,"imports":[],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts":{"bytes":3971,"imports":[{"path":"@tanstack/react-virtual","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/theme.ts":{"bytes":9209,"imports":[{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-table/src/components/Cell/Cell.tsx":{"bytes":10689,"imports":[{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"../../theme"},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"../Table/TableContext"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/TableBody.tsx":{"bytes":9015,"imports":[{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"./TableContext"},{"path":"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts","kind":"import-statement","original":"./TableRootContext"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"../../theme"},{"path":"packages/ui/react-ui-table/src/components/Cell/Cell.tsx","kind":"import-statement","original":"../Cell/Cell"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/TableHead.tsx":{"bytes":8047,"imports":[{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"./TableContext"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"../../theme"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/Table.tsx":{"bytes":31553,"imports":[{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/Table/TableBody.tsx","kind":"import-statement","original":"./TableBody"},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"./TableContext"},{"path":"packages/ui/react-ui-table/src/components/Table/TableHead.tsx","kind":"import-statement","original":"./TableHead"},{"path":"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts","kind":"import-statement","original":"./TableRootContext"},{"path":"packages/ui/react-ui-table/src/hooks/index.ts","kind":"import-statement","original":"../../hooks"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"../../theme"}],"format":"esm"},"packages/ui/react-ui-table/src/components/Table/index.ts":{"bytes":801,"imports":[{"path":"packages/ui/react-ui-table/src/components/Table/props.ts","kind":"import-statement","original":"./props"},{"path":"packages/ui/react-ui-table/src/components/Table/Table.tsx","kind":"import-statement","original":"./Table"},{"path":"packages/ui/react-ui-table/src/components/Table/TableContext.tsx","kind":"import-statement","original":"./TableContext"},{"path":"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts","kind":"import-statement","original":"./TableRootContext"}],"format":"esm"},"packages/ui/react-ui-table/src/components/index.ts":{"bytes":676,"imports":[{"path":"packages/ui/react-ui-table/src/components/Cell/index.ts","kind":"import-statement","original":"./Cell"},{"path":"packages/ui/react-ui-table/src/components/ColumnMenu/index.ts","kind":"import-statement","original":"./ColumnMenu"},{"path":"packages/ui/react-ui-table/src/components/Table/index.ts","kind":"import-statement","original":"./Table"}],"format":"esm"},"packages/ui/react-ui-table/src/helpers.tsx":{"bytes":55537,"imports":[{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"date-fns/format","kind":"import-statement","external":true},{"path":"date-fns/formatDistanceToNow","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"./theme"}],"format":"esm"},"packages/ui/react-ui-table/src/schema/column-utils.ts":{"bytes":6706,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-table/src/helpers.tsx","kind":"import-statement","original":"../helpers"}],"format":"esm"},"packages/ui/react-ui-table/src/schema/types.ts":{"bytes":1448,"imports":[],"format":"esm"},"packages/ui/react-ui-table/src/schema/index.ts":{"bytes":598,"imports":[{"path":"packages/ui/react-ui-table/src/schema/column-utils.ts","kind":"import-statement","original":"./column-utils"},{"path":"packages/ui/react-ui-table/src/schema/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/ui/react-ui-table/src/types.ts":{"bytes":1862,"imports":[],"format":"esm"},"packages/ui/react-ui-table/src/index.ts":{"bytes":1142,"imports":[{"path":"packages/ui/react-ui-table/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/ui/react-ui-table/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/ui/react-ui-table/src/helpers.tsx","kind":"import-statement","original":"./helpers"},{"path":"packages/ui/react-ui-table/src/hooks/index.ts","kind":"import-statement","original":"./hooks"},{"path":"packages/ui/react-ui-table/src/schema/index.ts","kind":"import-statement","original":"./schema"},{"path":"packages/ui/react-ui-table/src/theme.ts","kind":"import-statement","original":"./theme"},{"path":"packages/ui/react-ui-table/src/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"}},"outputs":{"packages/ui/react-ui-table/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":112494},"packages/ui/react-ui-table/dist/lib/browser/index.mjs":{"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-searchlist","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@tanstack/react-virtual","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@tanstack/react-table","kind":"import-statement","external":true},{"path":"date-fns/format","kind":"import-statement","external":true},{"path":"date-fns/formatDistanceToNow","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["CellCombobox","ColumnBuilder","ColumnMenu","ColumnSettings","MemoizedVirtualizedTableContent","SortIndicator","TABLE_NAME","Table","TablePrimitive","TableProvider","TableRootContext","createColumnBuilder","currentRow","flushPadding","gridCellFocusRing","groupTh","headPadding","schemaToColumnDefs","selectedRow","tableRoot","tbodyRoot","tbodyTr","tdRoot","textPadding","theadResizeRoot","theadRoot","theadTh","theadTr","translations","useColumnResizing","useColumnSorting","usePinLastRow","useRowSelection","useSortColumn","useTableContext","useTableRootContext"],"entryPoint":"packages/ui/react-ui-table/src/index.ts","inputs":{"packages/ui/react-ui-table/src/translations.ts":{"bytesInOutput":612},"packages/ui/react-ui-table/src/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/Cell/CellCombobox.tsx":{"bytesInOutput":2993},"packages/ui/react-ui-table/src/components/Cell/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnMenu.tsx":{"bytesInOutput":6108},"packages/ui/react-ui-table/src/components/ColumnMenu/ColumnSettings.tsx":{"bytesInOutput":5745},"packages/ui/react-ui-table/src/hooks/useColumnSizing.ts":{"bytesInOutput":1068},"packages/ui/react-ui-table/src/hooks/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/hooks/useColumnSorting.ts":{"bytesInOutput":1472},"packages/ui/react-ui-table/src/components/Table/TableContext.tsx":{"bytesInOutput":442},"packages/ui/react-ui-table/src/hooks/usePinLastRow.ts":{"bytesInOutput":961},"packages/ui/react-ui-table/src/hooks/useRowSelection.ts":{"bytesInOutput":1055},"packages/ui/react-ui-table/src/components/ColumnMenu/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/Table/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-table/src/components/Table/Table.tsx":{"bytesInOutput":7450},"packages/ui/react-ui-table/src/components/Table/TableBody.tsx":{"bytesInOutput":1994},"packages/ui/react-ui-table/src/components/Table/TableRootContext.ts":{"bytesInOutput":758},"packages/ui/react-ui-table/src/theme.ts":{"bytesInOutput":2144},"packages/ui/react-ui-table/src/components/Cell/Cell.tsx":{"bytesInOutput":2259},"packages/ui/react-ui-table/src/components/Table/TableHead.tsx":{"bytesInOutput":1785},"packages/ui/react-ui-table/src/helpers.tsx":{"bytesInOutput":13559},"packages/ui/react-ui-table/src/schema/column-utils.ts":{"bytesInOutput":1476},"packages/ui/react-ui-table/src/schema/index.ts":{"bytesInOutput":0}},"bytes":53861}}}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '@dxos-theme';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import {
|
|
3
|
+
import { TypeEnum } from '@dxos/echo-schema';
|
|
4
4
|
import { type ColumnSettingsProps } from './ColumnSettings';
|
|
5
5
|
import { type TableDef } from '../../schema';
|
|
6
6
|
declare const _default: {
|
|
@@ -38,7 +38,7 @@ export declare const NumberColumn: {
|
|
|
38
38
|
column: {
|
|
39
39
|
id: string;
|
|
40
40
|
prop: string;
|
|
41
|
-
type:
|
|
41
|
+
type: TypeEnum;
|
|
42
42
|
label: string;
|
|
43
43
|
digits: number;
|
|
44
44
|
};
|
|
@@ -54,7 +54,7 @@ export declare const ReferenceColumn: {
|
|
|
54
54
|
column: {
|
|
55
55
|
id: string;
|
|
56
56
|
prop: string;
|
|
57
|
-
type:
|
|
57
|
+
type: TypeEnum;
|
|
58
58
|
label: string;
|
|
59
59
|
refTable: string;
|
|
60
60
|
refProp: string;
|
|
@@ -71,7 +71,7 @@ export declare const NewColumn: {
|
|
|
71
71
|
column: {
|
|
72
72
|
id: string;
|
|
73
73
|
prop: string;
|
|
74
|
-
type:
|
|
74
|
+
type: TypeEnum;
|
|
75
75
|
label: string;
|
|
76
76
|
};
|
|
77
77
|
tableDef: TableDef;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnSettings.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/ColumnMenu/ColumnSettings.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ColumnSettings.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/ColumnMenu/ColumnSettings.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C,OAAO,EAAkB,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;;;;oBAGhB,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;AAMhD,wBAQE;AAqCF,eAAO,MAAM,OAAO;;CAEnB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;CAWxB,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;CAY3B,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;CAUrB,CAAC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { type ColumnDef } from '@tanstack/react-table';
|
|
2
2
|
import { type S } from '@dxos/echo-schema';
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated
|
|
5
|
+
*/
|
|
3
6
|
export declare const schemaToColumnDefs: <T>(schema: S.Schema<T, any>) => ColumnDef<T, any>[];
|
|
4
7
|
//# sourceMappingURL=column-utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column-utils.d.ts","sourceRoot":"","sources":["../../../../src/schema/column-utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,
|
|
1
|
+
{"version":3,"file":"column-utils.d.ts","sourceRoot":"","sources":["../../../../src/schema/column-utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAY,KAAK,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAMrD;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,KAAG,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAsCjF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type TypeEnum, type FormatEnum } from '@dxos/echo-schema';
|
|
2
2
|
/**
|
|
3
3
|
* @deprecated
|
|
4
4
|
*/
|
|
@@ -13,7 +13,8 @@ export type TableDef = {
|
|
|
13
13
|
export type ColumnDef = {
|
|
14
14
|
id: string;
|
|
15
15
|
prop: string;
|
|
16
|
-
type:
|
|
16
|
+
type: TypeEnum;
|
|
17
|
+
format?: FormatEnum;
|
|
17
18
|
size?: number;
|
|
18
19
|
label?: string;
|
|
19
20
|
digits?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/schema/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/schema/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEnE;;GAEG;AAEH,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS,EAAE,CAAC;CACtB,CAAC;AAEF;;GAEG;AAEH,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/react-ui-table",
|
|
3
|
-
"version": "0.6.14-
|
|
3
|
+
"version": "0.6.14-staging.54a8bab",
|
|
4
4
|
"description": "A table component.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -30,17 +30,17 @@
|
|
|
30
30
|
"@tanstack/react-table": "^8.13.2",
|
|
31
31
|
"@tanstack/react-virtual": "^3.9.0",
|
|
32
32
|
"date-fns": "^3.3.1",
|
|
33
|
-
"@dxos/
|
|
34
|
-
"@dxos/
|
|
35
|
-
"@dxos/
|
|
36
|
-
"@dxos/
|
|
37
|
-
"@dxos/
|
|
38
|
-
"@dxos/
|
|
39
|
-
"@dxos/
|
|
40
|
-
"@dxos/
|
|
41
|
-
"@dxos/react-ui-
|
|
42
|
-
"@dxos/
|
|
43
|
-
"@dxos/
|
|
33
|
+
"@dxos/async": "0.6.14-staging.54a8bab",
|
|
34
|
+
"@dxos/debug": "0.6.14-staging.54a8bab",
|
|
35
|
+
"@dxos/echo-schema": "0.6.14-staging.54a8bab",
|
|
36
|
+
"@dxos/invariant": "0.6.14-staging.54a8bab",
|
|
37
|
+
"@dxos/effect": "0.6.14-staging.54a8bab",
|
|
38
|
+
"@dxos/log": "0.6.14-staging.54a8bab",
|
|
39
|
+
"@dxos/react-ui-searchlist": "0.6.14-staging.54a8bab",
|
|
40
|
+
"@dxos/schema": "0.6.14-staging.54a8bab",
|
|
41
|
+
"@dxos/react-ui-types": "0.6.14-staging.54a8bab",
|
|
42
|
+
"@dxos/util": "0.6.14-staging.54a8bab",
|
|
43
|
+
"@dxos/keys": "0.6.14-staging.54a8bab"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@phosphor-icons/react": "^2.1.5",
|
|
@@ -50,18 +50,18 @@
|
|
|
50
50
|
"react": "~18.2.0",
|
|
51
51
|
"react-dom": "~18.2.0",
|
|
52
52
|
"vite": "5.4.7",
|
|
53
|
-
"@dxos/echo-signals": "0.6.14-
|
|
54
|
-
"@dxos/random": "0.6.14-
|
|
55
|
-
"@dxos/react-ui": "0.6.14-
|
|
56
|
-
"@dxos/react-ui-theme": "0.6.14-
|
|
57
|
-
"@dxos/storybook-utils": "0.6.14-
|
|
53
|
+
"@dxos/echo-signals": "0.6.14-staging.54a8bab",
|
|
54
|
+
"@dxos/random": "0.6.14-staging.54a8bab",
|
|
55
|
+
"@dxos/react-ui": "0.6.14-staging.54a8bab",
|
|
56
|
+
"@dxos/react-ui-theme": "0.6.14-staging.54a8bab",
|
|
57
|
+
"@dxos/storybook-utils": "0.6.14-staging.54a8bab"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"@phosphor-icons/react": "^2.1.5",
|
|
61
61
|
"react": "~18.2.0",
|
|
62
62
|
"react-dom": "~18.2.0",
|
|
63
|
-
"@dxos/react-ui": "0.6.14-
|
|
64
|
-
"@dxos/react-ui-theme": "0.6.14-
|
|
63
|
+
"@dxos/react-ui": "0.6.14-staging.54a8bab",
|
|
64
|
+
"@dxos/react-ui-theme": "0.6.14-staging.54a8bab"
|
|
65
65
|
},
|
|
66
66
|
"publishConfig": {
|
|
67
67
|
"access": "public"
|
|
@@ -7,7 +7,7 @@ import '@dxos-theme';
|
|
|
7
7
|
import { type SortDirection } from '@tanstack/react-table';
|
|
8
8
|
import React, { useState } from 'react';
|
|
9
9
|
|
|
10
|
-
import {
|
|
10
|
+
import { TypeEnum } from '@dxos/echo-schema';
|
|
11
11
|
import { withTheme } from '@dxos/storybook-utils';
|
|
12
12
|
|
|
13
13
|
import { ColumnMenu } from './ColumnMenu';
|
|
@@ -24,18 +24,18 @@ const defs: Pick<ColumnSettingsProps, 'tableDef' | 'tablesToReference'> = {
|
|
|
24
24
|
tableDef: {
|
|
25
25
|
id: '1',
|
|
26
26
|
name: 'table 1',
|
|
27
|
-
columns: [{ id: 'col-1', prop: 'one', type:
|
|
27
|
+
columns: [{ id: 'col-1', prop: 'one', type: TypeEnum.String }],
|
|
28
28
|
},
|
|
29
29
|
tablesToReference: [
|
|
30
30
|
{
|
|
31
31
|
id: '1',
|
|
32
32
|
name: 'table 1',
|
|
33
|
-
columns: [{ id: 'col-1', prop: 'one', type:
|
|
33
|
+
columns: [{ id: 'col-1', prop: 'one', type: TypeEnum.String }],
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
id: '2',
|
|
37
37
|
name: 'table 2',
|
|
38
|
-
columns: [{ id: 'col-1', prop: 'two', type:
|
|
38
|
+
columns: [{ id: 'col-1', prop: 'two', type: TypeEnum.String }],
|
|
39
39
|
},
|
|
40
40
|
],
|
|
41
41
|
};
|
|
@@ -6,7 +6,7 @@ import '@dxos-theme';
|
|
|
6
6
|
|
|
7
7
|
import React from 'react';
|
|
8
8
|
|
|
9
|
-
import {
|
|
9
|
+
import { TypeEnum } from '@dxos/echo-schema';
|
|
10
10
|
import { withTheme, withLayout } from '@dxos/storybook-utils';
|
|
11
11
|
|
|
12
12
|
import { ColumnSettings, type ColumnSettingsProps } from './ColumnSettings';
|
|
@@ -33,8 +33,8 @@ const sampleTableDef: TableDef = {
|
|
|
33
33
|
id: '1',
|
|
34
34
|
name: 'Sample Table',
|
|
35
35
|
columns: [
|
|
36
|
-
{ id: 'col-1', prop: 'name', type:
|
|
37
|
-
{ id: 'col-2', prop: 'age', type:
|
|
36
|
+
{ id: 'col-1', prop: 'name', type: TypeEnum.String, label: 'Name' },
|
|
37
|
+
{ id: 'col-2', prop: 'age', type: TypeEnum.Number, label: 'Age', digits: 0 },
|
|
38
38
|
],
|
|
39
39
|
};
|
|
40
40
|
|
|
@@ -44,8 +44,8 @@ const sampleTablesToReference: TableDef[] = [
|
|
|
44
44
|
id: '2',
|
|
45
45
|
name: 'Reference Table',
|
|
46
46
|
columns: [
|
|
47
|
-
{ id: 'ref-col-1', prop: 'id', type:
|
|
48
|
-
{ id: 'ref-col-2', prop: 'description', type:
|
|
47
|
+
{ id: 'ref-col-1', prop: 'id', type: TypeEnum.String, label: 'ID' },
|
|
48
|
+
{ id: 'ref-col-2', prop: 'description', type: TypeEnum.String, label: 'Description' },
|
|
49
49
|
],
|
|
50
50
|
},
|
|
51
51
|
];
|
|
@@ -54,7 +54,7 @@ const defaultArgs: ColumnSettingsProps = {
|
|
|
54
54
|
column: {
|
|
55
55
|
id: 'col-1',
|
|
56
56
|
prop: 'name',
|
|
57
|
-
type:
|
|
57
|
+
type: TypeEnum.String,
|
|
58
58
|
label: 'Name',
|
|
59
59
|
},
|
|
60
60
|
tableDef: sampleTableDef,
|
|
@@ -74,7 +74,7 @@ export const NumberColumn = {
|
|
|
74
74
|
column: {
|
|
75
75
|
id: 'col-2',
|
|
76
76
|
prop: 'age',
|
|
77
|
-
type:
|
|
77
|
+
type: TypeEnum.Number,
|
|
78
78
|
label: 'Age',
|
|
79
79
|
digits: 0,
|
|
80
80
|
},
|
|
@@ -87,7 +87,7 @@ export const ReferenceColumn = {
|
|
|
87
87
|
column: {
|
|
88
88
|
id: 'col-3',
|
|
89
89
|
prop: 'reference',
|
|
90
|
-
type:
|
|
90
|
+
type: TypeEnum.Ref,
|
|
91
91
|
label: 'Reference',
|
|
92
92
|
refTable: '2',
|
|
93
93
|
refProp: 'ref-col-1',
|
|
@@ -101,7 +101,7 @@ export const NewColumn = {
|
|
|
101
101
|
column: {
|
|
102
102
|
id: 'new-col',
|
|
103
103
|
prop: '',
|
|
104
|
-
type:
|
|
104
|
+
type: TypeEnum.String,
|
|
105
105
|
label: '',
|
|
106
106
|
},
|
|
107
107
|
},
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
import React, { useRef, useState } from 'react';
|
|
6
6
|
|
|
7
|
+
import { FormatEnums, type TypeEnum } from '@dxos/echo-schema';
|
|
7
8
|
import { Button, Input, Select, useTranslation } from '@dxos/react-ui';
|
|
8
|
-
import { FieldValueTypes, type FieldValueType } from '@dxos/schema';
|
|
9
9
|
import { safeParseInt } from '@dxos/util';
|
|
10
10
|
|
|
11
11
|
import { type TableDef, type ColumnDef } from '../../schema';
|
|
@@ -67,7 +67,7 @@ export const ColumnSettings = ({
|
|
|
67
67
|
id: prop, // TODO(burdon): Make unique.
|
|
68
68
|
prop,
|
|
69
69
|
label,
|
|
70
|
-
type: type as
|
|
70
|
+
type: type as TypeEnum,
|
|
71
71
|
refTable,
|
|
72
72
|
refProp,
|
|
73
73
|
digits: safeParseInt(digits),
|
|
@@ -117,7 +117,7 @@ export const ColumnSettings = ({
|
|
|
117
117
|
<Select.Portal>
|
|
118
118
|
<Select.Content>
|
|
119
119
|
<Select.Viewport>
|
|
120
|
-
{
|
|
120
|
+
{FormatEnums.map((type) => (
|
|
121
121
|
<Select.Option key={type} value={type}>
|
|
122
122
|
{t(`${type} column type label`)}
|
|
123
123
|
</Select.Option>
|
|
@@ -4,45 +4,51 @@
|
|
|
4
4
|
|
|
5
5
|
import { type ColumnDef } from '@tanstack/react-table';
|
|
6
6
|
|
|
7
|
-
import { type S } from '@dxos/echo-schema';
|
|
8
|
-
import {
|
|
7
|
+
import { TypeEnum, type S } from '@dxos/echo-schema';
|
|
8
|
+
import { FormatEnum } from '@dxos/echo-schema';
|
|
9
|
+
import { mapSchemaToFields } from '@dxos/schema';
|
|
9
10
|
|
|
10
11
|
import { createColumnBuilder } from '../helpers';
|
|
11
12
|
|
|
13
|
+
/**
|
|
14
|
+
* @deprecated
|
|
15
|
+
*/
|
|
12
16
|
export const schemaToColumnDefs = <T>(schema: S.Schema<T, any>): ColumnDef<T, any>[] => {
|
|
13
17
|
const { helper, builder } = createColumnBuilder<T>();
|
|
14
18
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const propertyKey = name.toString();
|
|
19
|
+
return mapSchemaToFields(schema).map(({ property, type, format }) => {
|
|
20
|
+
const propertyKey = property.toString();
|
|
18
21
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
if (!format) {
|
|
23
|
+
switch (type) {
|
|
24
|
+
case TypeEnum.String: {
|
|
25
|
+
return helper.accessor(
|
|
26
|
+
propertyKey as any,
|
|
27
|
+
builder.string({ label: propertyKey, classNames: [property === 'id' && 'font-mono'] }),
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
case TypeEnum.Number: {
|
|
31
|
+
return helper.accessor(propertyKey as any, builder.number({ label: propertyKey }));
|
|
32
|
+
}
|
|
33
|
+
case TypeEnum.Boolean: {
|
|
34
|
+
return helper.accessor(propertyKey as any, builder.switch({ label: propertyKey }));
|
|
35
|
+
}
|
|
36
|
+
default: {
|
|
37
|
+
throw new Error(`Unhandled scalar type: ${type}`);
|
|
38
|
+
}
|
|
24
39
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
column = builder.switch({ label: propertyKey });
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
case FieldValueType.Date: {
|
|
34
|
-
column = builder.date({ label: propertyKey });
|
|
35
|
-
break;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
switch (format) {
|
|
43
|
+
case FormatEnum.Date: {
|
|
44
|
+
return helper.accessor(propertyKey as any, builder.date({ label: propertyKey }));
|
|
36
45
|
}
|
|
37
|
-
case
|
|
38
|
-
|
|
39
|
-
break;
|
|
46
|
+
case FormatEnum.JSON: {
|
|
47
|
+
return helper.accessor(propertyKey as any, builder.json({ label: propertyKey, id: propertyKey }));
|
|
40
48
|
}
|
|
41
49
|
default: {
|
|
42
|
-
throw new Error(`Unhandled
|
|
50
|
+
throw new Error(`Unhandled format: ${format}`);
|
|
43
51
|
}
|
|
44
52
|
}
|
|
45
|
-
|
|
46
|
-
return helper.accessor(propertyKey as any, column);
|
|
47
53
|
});
|
|
48
54
|
};
|
package/src/schema/types.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import { type
|
|
5
|
+
import { type TypeEnum, type FormatEnum } from '@dxos/echo-schema';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* @deprecated
|
|
@@ -21,7 +21,8 @@ export type TableDef = {
|
|
|
21
21
|
export type ColumnDef = {
|
|
22
22
|
id: string;
|
|
23
23
|
prop: string;
|
|
24
|
-
type:
|
|
24
|
+
type: TypeEnum;
|
|
25
|
+
format?: FormatEnum;
|
|
25
26
|
size?: number;
|
|
26
27
|
label?: string;
|
|
27
28
|
|