@osdk/react-components 0.1.0-beta.4 → 0.1.0-beta.6
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/CHANGELOG.md +26 -0
- package/build/browser/action-form/ActionFormApi.js +2 -0
- package/build/browser/action-form/ActionFormApi.js.map +1 -0
- package/build/browser/action-form/FormFieldApi.js +2 -0
- package/build/browser/action-form/FormFieldApi.js.map +1 -0
- package/build/browser/base-components/checkbox/Checkbox.module.css +1 -2
- package/build/browser/object-table/ObjectTable.js +35 -9
- package/build/browser/object-table/ObjectTable.js.map +1 -1
- package/build/browser/object-table/ObjectTableApi.js.map +1 -1
- package/build/browser/object-table/Table.js +1 -1
- package/build/browser/object-table/Table.js.map +1 -1
- package/build/browser/object-table/Table.module.css +1 -0
- package/build/browser/object-table/TableCell.js +7 -4
- package/build/browser/object-table/TableCell.js.map +1 -1
- package/build/browser/object-table/TableCell.module.css +18 -1
- package/build/browser/object-table/TableHeader.js +28 -13
- package/build/browser/object-table/TableHeader.js.map +1 -1
- package/build/browser/object-table/TableHeader.module.css +17 -0
- package/build/browser/object-table/TableHeaderContent.js +27 -0
- package/build/browser/object-table/TableHeaderContent.js.map +1 -0
- package/build/browser/object-table/TableHeaderContent.module.css +30 -0
- package/build/browser/object-table/TableHeaderWithPopover.js +155 -0
- package/build/browser/object-table/TableHeaderWithPopover.js.map +1 -0
- package/build/browser/object-table/TableHeaderWithPopover.module.css +105 -0
- package/build/browser/object-table/hooks/__tests__/useColumnPinning.test.js +266 -0
- package/build/browser/object-table/hooks/__tests__/useColumnPinning.test.js.map +1 -0
- package/build/browser/object-table/hooks/__tests__/{useDefaultTableStates.test.js → useColumnVisibility.test.js} +16 -16
- package/build/browser/object-table/hooks/__tests__/useColumnVisibility.test.js.map +1 -0
- package/build/browser/object-table/hooks/__tests__/useSelectionColumn.test.js +2 -1
- package/build/browser/object-table/hooks/__tests__/useSelectionColumn.test.js.map +1 -1
- package/build/browser/object-table/hooks/__tests__/useTableSorting.test.js +211 -0
- package/build/browser/object-table/hooks/__tests__/useTableSorting.test.js.map +1 -0
- package/build/browser/object-table/hooks/useColumnPinning.js +95 -0
- package/build/browser/object-table/hooks/useColumnPinning.js.map +1 -0
- package/build/{esm/object-table/hooks/useDefaultTableStates.js → browser/object-table/hooks/useColumnVisibility.js} +3 -5
- package/build/browser/object-table/hooks/useColumnVisibility.js.map +1 -0
- package/build/browser/object-table/hooks/useObjectTableData.js +15 -3
- package/build/browser/object-table/hooks/useObjectTableData.js.map +1 -1
- package/build/browser/object-table/hooks/useSelectionColumn.js +3 -2
- package/build/browser/object-table/hooks/useSelectionColumn.js.map +1 -1
- package/build/browser/object-table/hooks/useTableSorting.js +66 -0
- package/build/browser/object-table/hooks/useTableSorting.js.map +1 -0
- package/build/browser/object-table/utils/constants.js +18 -0
- package/build/browser/object-table/utils/constants.js.map +1 -0
- package/build/browser/object-table/utils/getColumnPinningStyles.js +27 -0
- package/build/browser/object-table/utils/getColumnPinningStyles.js.map +1 -0
- package/build/browser/public/experimental.js +4 -0
- package/build/browser/public/experimental.js.map +1 -1
- package/build/cjs/public/experimental.cjs +412 -85
- package/build/cjs/public/experimental.cjs.map +1 -1
- package/build/cjs/public/experimental.css +113 -1
- package/build/cjs/public/experimental.css.map +1 -1
- package/build/cjs/public/experimental.d.cts +25 -3
- package/build/esm/action-form/ActionFormApi.js +2 -0
- package/build/esm/action-form/ActionFormApi.js.map +1 -0
- package/build/esm/action-form/FormFieldApi.js +2 -0
- package/build/esm/action-form/FormFieldApi.js.map +1 -0
- package/build/esm/base-components/checkbox/Checkbox.module.css +1 -2
- package/build/esm/object-table/ObjectTable.js +35 -9
- package/build/esm/object-table/ObjectTable.js.map +1 -1
- package/build/esm/object-table/ObjectTableApi.js.map +1 -1
- package/build/esm/object-table/Table.js +1 -1
- package/build/esm/object-table/Table.js.map +1 -1
- package/build/esm/object-table/Table.module.css +1 -0
- package/build/esm/object-table/TableCell.js +7 -4
- package/build/esm/object-table/TableCell.js.map +1 -1
- package/build/esm/object-table/TableCell.module.css +18 -1
- package/build/esm/object-table/TableHeader.js +28 -13
- package/build/esm/object-table/TableHeader.js.map +1 -1
- package/build/esm/object-table/TableHeader.module.css +17 -0
- package/build/esm/object-table/TableHeaderContent.js +27 -0
- package/build/esm/object-table/TableHeaderContent.js.map +1 -0
- package/build/esm/object-table/TableHeaderContent.module.css +30 -0
- package/build/esm/object-table/TableHeaderWithPopover.js +155 -0
- package/build/esm/object-table/TableHeaderWithPopover.js.map +1 -0
- package/build/esm/object-table/TableHeaderWithPopover.module.css +105 -0
- package/build/esm/object-table/hooks/__tests__/useColumnPinning.test.js +266 -0
- package/build/esm/object-table/hooks/__tests__/useColumnPinning.test.js.map +1 -0
- package/build/esm/object-table/hooks/__tests__/{useDefaultTableStates.test.js → useColumnVisibility.test.js} +16 -16
- package/build/esm/object-table/hooks/__tests__/useColumnVisibility.test.js.map +1 -0
- package/build/esm/object-table/hooks/__tests__/useSelectionColumn.test.js +2 -1
- package/build/esm/object-table/hooks/__tests__/useSelectionColumn.test.js.map +1 -1
- package/build/esm/object-table/hooks/__tests__/useTableSorting.test.js +211 -0
- package/build/esm/object-table/hooks/__tests__/useTableSorting.test.js.map +1 -0
- package/build/esm/object-table/hooks/useColumnPinning.js +95 -0
- package/build/esm/object-table/hooks/useColumnPinning.js.map +1 -0
- package/build/{browser/object-table/hooks/useDefaultTableStates.js → esm/object-table/hooks/useColumnVisibility.js} +3 -5
- package/build/esm/object-table/hooks/useColumnVisibility.js.map +1 -0
- package/build/esm/object-table/hooks/useObjectTableData.js +15 -3
- package/build/esm/object-table/hooks/useObjectTableData.js.map +1 -1
- package/build/esm/object-table/hooks/useSelectionColumn.js +3 -2
- package/build/esm/object-table/hooks/useSelectionColumn.js.map +1 -1
- package/build/esm/object-table/hooks/useTableSorting.js +66 -0
- package/build/esm/object-table/hooks/useTableSorting.js.map +1 -0
- package/build/esm/object-table/utils/constants.js +18 -0
- package/build/esm/object-table/utils/constants.js.map +1 -0
- package/build/esm/object-table/utils/getColumnPinningStyles.js +27 -0
- package/build/esm/object-table/utils/getColumnPinningStyles.js.map +1 -0
- package/build/esm/public/experimental.js +4 -0
- package/build/esm/public/experimental.js.map +1 -1
- package/build/types/action-form/ActionFormApi.d.ts +76 -0
- package/build/types/action-form/ActionFormApi.d.ts.map +1 -0
- package/build/types/action-form/FormFieldApi.d.ts +241 -0
- package/build/types/action-form/FormFieldApi.d.ts.map +1 -0
- package/build/types/object-table/ObjectTable.d.ts +1 -1
- package/build/types/object-table/ObjectTable.d.ts.map +1 -1
- package/build/types/object-table/ObjectTableApi.d.ts +10 -0
- package/build/types/object-table/ObjectTableApi.d.ts.map +1 -1
- package/build/types/object-table/Table.d.ts +2 -3
- package/build/types/object-table/Table.d.ts.map +1 -1
- package/build/types/object-table/TableCell.d.ts.map +1 -1
- package/build/types/object-table/TableHeader.d.ts.map +1 -1
- package/build/types/object-table/TableHeaderContent.d.ts +7 -0
- package/build/types/object-table/TableHeaderContent.d.ts.map +1 -0
- package/build/types/object-table/TableHeaderWithPopover.d.ts +13 -0
- package/build/types/object-table/TableHeaderWithPopover.d.ts.map +1 -0
- package/build/types/object-table/hooks/__tests__/useColumnPinning.test.d.ts.map +1 -0
- package/build/types/object-table/hooks/__tests__/useColumnVisibility.test.d.ts +1 -0
- package/build/types/object-table/hooks/__tests__/useColumnVisibility.test.d.ts.map +1 -0
- package/build/types/object-table/hooks/__tests__/useTableSorting.test.d.ts +1 -0
- package/build/types/object-table/hooks/__tests__/useTableSorting.test.d.ts.map +1 -0
- package/build/types/object-table/hooks/useColumnPinning.d.ts +22 -0
- package/build/types/object-table/hooks/useColumnPinning.d.ts.map +1 -0
- package/build/types/object-table/hooks/{useDefaultTableStates.d.ts → useColumnVisibility.d.ts} +3 -6
- package/build/types/object-table/hooks/useColumnVisibility.d.ts.map +1 -0
- package/build/types/object-table/hooks/useObjectTableData.d.ts +2 -1
- package/build/types/object-table/hooks/useObjectTableData.d.ts.map +1 -1
- package/build/types/object-table/hooks/useSelectionColumn.d.ts +0 -1
- package/build/types/object-table/hooks/useSelectionColumn.d.ts.map +1 -1
- package/build/types/object-table/hooks/useTableSorting.d.ts +22 -0
- package/build/types/object-table/hooks/useTableSorting.d.ts.map +1 -0
- package/build/types/object-table/utils/constants.d.ts +1 -0
- package/build/types/object-table/utils/constants.d.ts.map +1 -0
- package/build/types/object-table/utils/getColumnPinningStyles.d.ts +7 -0
- package/build/types/object-table/utils/getColumnPinningStyles.d.ts.map +1 -0
- package/build/types/public/experimental.d.ts +2 -0
- package/build/types/public/experimental.d.ts.map +1 -1
- package/package.json +5 -5
- package/build/browser/object-table/hooks/__tests__/useDefaultTableStates.test.js.map +0 -1
- package/build/browser/object-table/hooks/useDefaultTableStates.js.map +0 -1
- package/build/esm/object-table/hooks/__tests__/useDefaultTableStates.test.js.map +0 -1
- package/build/esm/object-table/hooks/useDefaultTableStates.js.map +0 -1
- package/build/types/object-table/hooks/__tests__/useDefaultTableStates.test.d.ts.map +0 -1
- package/build/types/object-table/hooks/useDefaultTableStates.d.ts.map +0 -1
- /package/build/types/object-table/hooks/__tests__/{useDefaultTableStates.test.d.ts → useColumnPinning.test.d.ts} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type Header, type RowData } from "@tanstack/react-table";
|
|
2
|
+
import React from "react";
|
|
3
|
+
interface TableHeaderContentProps<TData extends RowData> {
|
|
4
|
+
header: Header<TData, unknown>;
|
|
5
|
+
}
|
|
6
|
+
export declare function TableHeaderContent<TData extends RowData>({ header }: TableHeaderContentProps<TData>): React.ReactElement;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AAgBA,cAA0B,aAAa,eAAe,uBAAwB;AAC9E,OAAO,WAAW,OAAQ;UAGhB,wBAAwB,cAAc,SAAS;CACvD,QAAQ,OAAO;AAChB;AAED,OAAO,iBAAS,mBAAmB,cAAc,SAC/C,EAAE,QAAwC,EAA9B,wBAAwB,SACnC,MAAM","names":[],"sources":["../../../src/object-table/TableHeaderContent.tsx"],"version":3,"file":"TableHeaderContent.d.ts"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ColumnPinningState, Header, RowData, SortingState } from "@tanstack/react-table";
|
|
2
|
+
import React from "react";
|
|
3
|
+
interface TableHeaderWithPopoverProps<TData extends RowData> {
|
|
4
|
+
header: Header<TData, unknown>;
|
|
5
|
+
isColumnPinned: false | "left" | "right";
|
|
6
|
+
setColumnPinning: React.Dispatch<React.SetStateAction<ColumnPinningState>>;
|
|
7
|
+
onSortChange?: (sorting: SortingState) => void;
|
|
8
|
+
onResetSize?: () => void;
|
|
9
|
+
onColumnConfig?: () => void;
|
|
10
|
+
enableColumnPinningRight?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare function TableHeaderWithPopover<TData extends RowData>({ header, isColumnPinned, setColumnPinning, onSortChange, onResetSize }: TableHeaderWithPopoverProps<TData>): React.ReactElement;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AA0BA,cACE,oBACA,QACA,SACA,oBACK,uBAAwB;AAE/B,OAAO,WAAsC,OAAQ;UAkC3C,4BAA4B,cAAc,SAAS;CAC3D,QAAQ,OAAO;CACf,gBAAgB,QAAQ,SAAS;CACjC,kBAAkB,MAAM,SAAS,MAAM,eAAe;CACtD,gBAAgBA,SAAS;CACzB;CACA;CACA;AACD;AAED,OAAO,iBAAS,uBAAuB,cAAc,SAAS,EAC5D,QACA,gBACA,kBACA,cACA,aACmC,EAAlC,4BAA4B,SAAS,MAAM","names":["sorting: SortingState"],"sources":["../../../src/object-table/TableHeaderWithPopover.tsx"],"version":3,"file":"TableHeaderWithPopover.d.ts"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"","names":[],"sources":["../../../../../src/object-table/hooks/__tests__/useColumnPinning.test.tsx"],"version":3,"file":"useColumnPinning.test.d.ts"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"","names":[],"sources":["../../../../../src/object-table/hooks/__tests__/useColumnVisibility.test.tsx"],"version":3,"file":"useColumnVisibility.test.d.ts"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"","names":[],"sources":["../../../../../src/object-table/hooks/__tests__/useTableSorting.test.tsx"],"version":3,"file":"useTableSorting.test.d.ts"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ObjectTypeDefinition, QueryDefinition, SimplePropertyDef } from "@osdk/api";
|
|
2
|
+
import type { ColumnPinningState, OnChangeFn } from "@tanstack/react-table";
|
|
3
|
+
import type { ObjectTableProps } from "../ObjectTableApi.js";
|
|
4
|
+
interface UseColumnPinningProps<
|
|
5
|
+
Q extends ObjectTypeDefinition,
|
|
6
|
+
RDPs extends Record<string, SimplePropertyDef> = {},
|
|
7
|
+
FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<string, never>
|
|
8
|
+
> {
|
|
9
|
+
columnDefinitions: ObjectTableProps<Q, RDPs, FunctionColumns>["columnDefinitions"];
|
|
10
|
+
hasSelectionColumn?: boolean;
|
|
11
|
+
onColumnsPinnedChanged?: ObjectTableProps<Q, RDPs, FunctionColumns>["onColumnsPinnedChanged"];
|
|
12
|
+
}
|
|
13
|
+
interface UseColumnPinningResults {
|
|
14
|
+
columnPinning: ColumnPinningState;
|
|
15
|
+
onColumnPinningChange: OnChangeFn<ColumnPinningState>;
|
|
16
|
+
}
|
|
17
|
+
export declare const useColumnPinning: <
|
|
18
|
+
Q extends ObjectTypeDefinition,
|
|
19
|
+
RDPs extends Record<string, SimplePropertyDef> = {},
|
|
20
|
+
FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<string, never>
|
|
21
|
+
>({ columnDefinitions, hasSelectionColumn, onColumnsPinnedChanged }: UseColumnPinningProps<Q, RDPs, FunctionColumns>) => UseColumnPinningResults;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AAgBA,cACE,sBACA,iBACA,yBACK,WAAY;AACnB,cAAc,oBAAoB,kBAAkB,uBAAwB;AAE5E,cAAc,wBAAwB,sBAAuB;UAGnD;CACR,UAAU;CACV,aAAa,eAAe,qBAAqB,CAAE;CACnD,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAI9D;CACA,mBAAmB,iBACjB,GACA,MACA,iBACA;CAEF;CAEA,yBAAyB,iBACvB,GACA,MACA,iBACA;AACH;UAES,wBAAwB;CAChC,eAAe;CACf,uBAAuB,WAAW;AACnC;AAED,OAAO,cAAM;CACX,UAAU;CACV,aAAa,eAAe,qBAAqB,CAAE;CACnD,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAI9D,EACA,mBACA,oBACA,wBAKD,EAJE,sBACD,GACA,MACA,qBACE","names":[],"sources":["../../../../src/object-table/hooks/useColumnPinning.ts"],"version":3,"file":"useColumnPinning.d.ts"}
|
package/build/types/object-table/hooks/{useDefaultTableStates.d.ts → useColumnVisibility.d.ts}
RENAMED
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
import type { ObjectTypeDefinition, QueryDefinition, SimplePropertyDef } from "@osdk/api";
|
|
2
2
|
import type { VisibilityState } from "@tanstack/react-table";
|
|
3
3
|
import type { ObjectTableProps } from "../ObjectTableApi.js";
|
|
4
|
-
interface
|
|
4
|
+
interface UseColumnVisibilityProps<
|
|
5
5
|
Q extends ObjectTypeDefinition,
|
|
6
6
|
RDPs extends Record<string, SimplePropertyDef> = {},
|
|
7
7
|
FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<string, never>
|
|
8
8
|
> {
|
|
9
9
|
columnDefinitions: ObjectTableProps<Q, RDPs, FunctionColumns>["columnDefinitions"];
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
columnVisibility: VisibilityState | undefined;
|
|
13
|
-
}
|
|
14
|
-
export declare const useDefaultTableStates: <
|
|
11
|
+
export declare const useColumnVisibility: <
|
|
15
12
|
Q extends ObjectTypeDefinition,
|
|
16
13
|
RDPs extends Record<string, SimplePropertyDef> = {},
|
|
17
14
|
FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<string, never>
|
|
18
|
-
>({ columnDefinitions }:
|
|
15
|
+
>({ columnDefinitions }: UseColumnVisibilityProps<Q, RDPs, FunctionColumns>) => VisibilityState | undefined;
|
|
19
16
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AAgBA,cACE,sBACA,iBACA,yBACK,WAAY;AACnB,cAAc,uBAAuB,uBAAwB;AAE7D,cAAc,wBAAwB,sBAAuB;UAEnD;CACR,UAAU;CACV,aAAa,eAAe,qBAAqB,CAAE;CACnD,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAI9D;CACA,mBAAmB,iBACjB,GACA,MACA,iBACA;AACH;AAED,OAAO,cAAM;CACX,UAAU;CACV,aAAa,eAAe,qBAAqB,CAAE;CACnD,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAK9D,EAAE,mBAID,EAJsB,yBACrB,GACA,MACA,qBAED","names":[],"sources":["../../../../src/object-table/hooks/useColumnVisibility.ts"],"version":3,"file":"useColumnVisibility.d.ts"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ObjectSet, ObjectTypeDefinition, QueryDefinition, SimplePropertyDef, WhereClause } from "@osdk/api";
|
|
2
2
|
import { useObjectSet } from "@osdk/react/experimental";
|
|
3
|
+
import type { SortingState } from "@tanstack/react-table";
|
|
3
4
|
import type { ColumnDefinition } from "../ObjectTableApi.js";
|
|
4
5
|
/**
|
|
5
6
|
* This hook is a wrapper around useObjectSet
|
|
@@ -10,4 +11,4 @@ export declare function useObjectTableData<
|
|
|
10
11
|
Q extends ObjectTypeDefinition,
|
|
11
12
|
RDPs extends Record<string, SimplePropertyDef>,
|
|
12
13
|
FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<string, never>
|
|
13
|
-
>(objectSet: ObjectSet<Q>, columnDefinitions?: Array<ColumnDefinition<Q, RDPs, FunctionColumns>>, filter?: WhereClause<Q, RDPs
|
|
14
|
+
>(objectSet: ObjectSet<Q>, columnDefinitions?: Array<ColumnDefinition<Q, RDPs, FunctionColumns>>, filter?: WhereClause<Q, RDPs>, sorting?: SortingState): ReturnType<typeof useObjectSet<Q, never, RDPs>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAEE,WACA,
|
|
1
|
+
{"mappings":"AAgBA,cAEE,WACA,sBAEA,iBACA,mBACA,mBACK,WAAY;AACnB,SAAS,oBAAoB,0BAA2B;AACxD,cAAc,oBAAoB,uBAAwB;AAE1D,cAAc,wBAAwB,sBAAuB;;;;;;AAU7D,OAAO,iBAAS;CACd,UAAU;CACV,aAAa,eAAe;CAC5B,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAK9DA,WAAW,UAAU,IACrBC,oBAAoB,MAAM,iBAAiB,GAAG,MAAM,mBACpDC,SAAS,YAAY,GAAG,OACxBC,UAAU,eACT,kBAAkB,aAAa,UAAU","names":["objectSet: ObjectSet<Q>","columnDefinitions?: Array<ColumnDefinition<Q, RDPs, FunctionColumns>>","filter?: WhereClause<Q, RDPs>","sorting?: SortingState"],"sources":["../../../../src/object-table/hooks/useObjectTableData.ts"],"version":3,"file":"useObjectTableData.d.ts"}
|
|
@@ -7,7 +7,6 @@ interface UseSelectionColumnProps {
|
|
|
7
7
|
onToggleAll: () => void;
|
|
8
8
|
onToggleRow: (id: string, rowIndex: number, isShiftClick: boolean) => void;
|
|
9
9
|
}
|
|
10
|
-
export declare const SELECTION_COLUMN_ID = "__selection__";
|
|
11
10
|
export declare const useSelectionColumn: <
|
|
12
11
|
Q extends ObjectTypeDefinition,
|
|
13
12
|
RDPs extends Record<string, SimplePropertyDef> = Record<string, never>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cACE,sBACA,MACA,cACA,yBACK,WAAY;AACnB,cAAc,iBAAiB,uBAAwB;
|
|
1
|
+
{"mappings":"AAgBA,cACE,sBACA,MACA,cACA,yBACK,WAAY;AACnB,cAAc,iBAAiB,uBAAwB;UAK7C,wBAAwB;CAChC,gBAAgB,WAAW,aAAa;CACxC;CACA;CACA;CACA,cAAcA,YAAYC,kBAAkBC;AAC7C;AAED,OAAO,cAAM;CACX,UAAU;CACV,aAAa,eAAe,qBAAqB;EAIjD,EACA,eACA,eACA,cACA,aACA,aACwB,EAAvB,4BACC,UACA,KAAK,SAAS,GAAG,sBAAsB,aAAa,IAAI","names":["id: string","rowIndex: number","isShiftClick: boolean"],"sources":["../../../../src/object-table/hooks/useSelectionColumn.tsx"],"version":3,"file":"useSelectionColumn.d.ts"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ObjectTypeDefinition, QueryDefinition, SimplePropertyDef } from "@osdk/api";
|
|
2
|
+
import type { OnChangeFn, SortingState } from "@tanstack/react-table";
|
|
3
|
+
import type { ObjectTableProps } from "../ObjectTableApi.js";
|
|
4
|
+
interface UseTableSortingProps<
|
|
5
|
+
Q extends ObjectTypeDefinition,
|
|
6
|
+
RDPs extends Record<string, SimplePropertyDef> = {},
|
|
7
|
+
FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<string, never>
|
|
8
|
+
> {
|
|
9
|
+
orderBy?: ObjectTableProps<Q, RDPs, FunctionColumns>["orderBy"];
|
|
10
|
+
defaultOrderBy?: ObjectTableProps<Q, RDPs, FunctionColumns>["defaultOrderBy"];
|
|
11
|
+
onOrderByChanged?: ObjectTableProps<Q, RDPs, FunctionColumns>["onOrderByChanged"];
|
|
12
|
+
}
|
|
13
|
+
interface UseTableSortingResults {
|
|
14
|
+
sorting: SortingState;
|
|
15
|
+
onSortingChange: OnChangeFn<SortingState>;
|
|
16
|
+
}
|
|
17
|
+
export declare const useTableSorting: <
|
|
18
|
+
Q extends ObjectTypeDefinition,
|
|
19
|
+
RDPs extends Record<string, SimplePropertyDef> = {},
|
|
20
|
+
FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<string, never>
|
|
21
|
+
>({ orderBy, defaultOrderBy, onOrderByChanged }: UseTableSortingProps<Q, RDPs, FunctionColumns>) => UseTableSortingResults;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AAgBA,cACE,sBAEA,iBACA,yBACK,WAAY;AACnB,cAAc,YAAY,oBAAoB,uBAAwB;AAEtE,cAAc,wBAAwB,sBAAuB;UAEnD;CACR,UAAU;CACV,aAAa,eAAe,qBAAqB,CAAE;CACnD,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAI9D;CACA,UAAU,iBAAiB,GAAG,MAAM,iBAAiB;CAErD,iBAAiB,iBAAiB,GAAG,MAAM,iBAAiB;CAE5D,mBAAmB,iBACjB,GACA,MACA,iBACA;AACH;UAES,uBAAuB;CAC/B,SAAS;CACT,iBAAiB,WAAW;AAC7B;AAED,OAAO,cAAM;CACX,UAAU;CACV,aAAa,eAAe,qBAAqB,CAAE;CACnD,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAI9D,EACA,SACA,gBACA,kBAC+C,EAA9C,qBAAqB,GAAG,MAAM,qBAAmB","names":[],"sources":["../../../../src/object-table/hooks/useTableSorting.ts"],"version":3,"file":"useTableSorting.d.ts"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SELECTION_COLUMN_ID = "__selection__";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AAgBA,OAAO,cAAM,sBAAsB","names":[],"sources":["../../../../src/object-table/utils/constants.ts"],"version":3,"file":"constants.d.ts"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Column } from "@tanstack/react-table";
|
|
2
|
+
import type React from "react";
|
|
3
|
+
interface PinningStyles {
|
|
4
|
+
columnStyles: React.CSSProperties;
|
|
5
|
+
}
|
|
6
|
+
export declare function getColumnPinningStyles<TData>(column: Column<TData, unknown>): PinningStyles;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AAgBA,cAAc,cAAc,uBAAwB;AACpD,YAAY,WAAW,OAAQ;UAErB,cAAc;CACtB,cAAc,MAAM;AACrB;AAED,OAAO,iBAAS,uBAAuB,OACrCA,QAAQ,OAAO,kBACd","names":["column: Column<TData, unknown>"],"sources":["../../../../src/object-table/utils/getColumnPinningStyles.ts"],"version":3,"file":"getColumnPinningStyles.d.ts"}
|
|
@@ -2,3 +2,5 @@ export type { FilterListProps } from "../filter-list/FilterListApi.js";
|
|
|
2
2
|
export type { FilterListItemProps } from "../filter-list/FilterListItemApi.js";
|
|
3
3
|
export { ObjectTable } from "../object-table/ObjectTable.js";
|
|
4
4
|
export type { ColumnDefinition, ColumnDefinitionLocator, ObjectTableProps } from "../object-table/ObjectTableApi.js";
|
|
5
|
+
export type { BaseTableProps } from "../object-table/Table.js";
|
|
6
|
+
export { BaseTable } from "../object-table/Table.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,uBAAuB;AACrC,cAAc,2BAA2B;AAGzC,SAAS,mBAAmB;AAC5B,cACE,kBACA,yBACA,wBACK","names":[],"sources":["../../../src/public/experimental.ts"],"version":3,"file":"experimental.d.ts"}
|
|
1
|
+
{"mappings":"AAgBA,cAAc,uBAAuB;AACrC,cAAc,2BAA2B;AAGzC,SAAS,mBAAmB;AAC5B,cACE,kBACA,yBACA,wBACK;AAGP,cAAc,sBAAsB;AACpC,SAAS,iBAAiB","names":[],"sources":["../../../src/public/experimental.ts"],"version":3,"file":"experimental.d.ts"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osdk/react-components",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.6",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -58,11 +58,11 @@
|
|
|
58
58
|
"p-defer": "^4.0.1",
|
|
59
59
|
"react": "^18.3.1",
|
|
60
60
|
"typescript": "~5.5.4",
|
|
61
|
-
"@osdk/api": "2.7.0-beta.13",
|
|
62
|
-
"@osdk/client": "2.7.0-beta.13",
|
|
63
|
-
"@osdk/react": "0.9.0-beta.8",
|
|
64
61
|
"@osdk/monorepo.api-extractor": "~0.6.0-beta.1",
|
|
65
|
-
"@osdk/
|
|
62
|
+
"@osdk/client": "2.7.0-beta.14",
|
|
63
|
+
"@osdk/monorepo.tsconfig": "~0.6.0-beta.1",
|
|
64
|
+
"@osdk/api": "2.7.0-beta.14",
|
|
65
|
+
"@osdk/react": "0.9.0-beta.10"
|
|
66
66
|
},
|
|
67
67
|
"publishConfig": {
|
|
68
68
|
"access": "public"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDefaultTableStates.test.js","names":["renderHook","waitFor","describe","expect","it","useDefaultTableStates","TestObjectType","type","apiName","result","columnDefinitions","undefined","current","columnVisibility","toBeUndefined","locator","id","toEqual","isVisible","creator","name","myFunction","myRdp","rerender","initialProps","email","age","not","toHaveProperty"],"sources":["useDefaultTableStates.test.tsx"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n DerivedProperty,\n ObjectTypeDefinition,\n PropertyKeys,\n QueryDefinition,\n SimplePropertyDef,\n} from \"@osdk/api\";\nimport { renderHook, waitFor } from \"@testing-library/react\";\nimport { describe, expect, it } from \"vitest\";\nimport type { ColumnDefinition } from \"../../ObjectTableApi.js\";\nimport { useDefaultTableStates } from \"../useDefaultTableStates.js\";\n\nconst TestObjectType = {\n type: \"object\",\n apiName: \"TestObject\",\n} as const satisfies ObjectTypeDefinition;\n\ntype TestObject = typeof TestObjectType;\ntype TestObjectKeys = PropertyKeys<TestObject>;\n\ndescribe(useDefaultTableStates, () => {\n it(\"returns undefined columnVisibility when no columnDefinitions provided\", () => {\n const { result } = renderHook(() =>\n useDefaultTableStates({\n columnDefinitions: undefined,\n })\n );\n\n expect(result.current.columnVisibility).toBeUndefined();\n });\n\n it(\"returns empty columnVisibility when columnDefinitions have no isVisible properties\", () => {\n const columnDefinitions: Array<ColumnDefinition<TestObject, {}, {}>> = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n },\n {\n locator: { type: \"property\", id: \"email\" as TestObjectKeys },\n },\n ];\n\n const { result } = renderHook(() =>\n useDefaultTableStates({\n columnDefinitions,\n })\n );\n\n expect(result.current.columnVisibility).toEqual({});\n });\n\n it(\"handles mixed column types with different visibility states\", async () => {\n const mockRdpCreator = (() => ({})) as unknown as DerivedProperty.Creator<\n TestObject,\n SimplePropertyDef\n >;\n\n const columnDefinitions: Array<\n ColumnDefinition<\n TestObject,\n { myRdp: SimplePropertyDef },\n { myFunction: QueryDefinition<{}> }\n >\n > = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n isVisible: true,\n },\n {\n locator: { type: \"function\", id: \"myFunction\" },\n isVisible: false,\n },\n {\n locator: { type: \"rdp\", id: \"myRdp\", creator: mockRdpCreator },\n isVisible: true,\n },\n {\n locator: { type: \"property\", id: \"email\" as TestObjectKeys },\n },\n ];\n\n const { result } = renderHook(() =>\n useDefaultTableStates({\n columnDefinitions,\n })\n );\n\n await waitFor(() => {\n expect(result.current.columnVisibility).toEqual({\n name: true,\n myFunction: false,\n myRdp: true,\n });\n });\n });\n\n it(\"updates columnVisibility when columnDefinitions change\", async () => {\n const initialColumnDefinitions: Array<\n ColumnDefinition<TestObject, {}, {}>\n > = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n isVisible: true,\n },\n ];\n\n const { result, rerender } = renderHook(\n ({ columnDefinitions }) =>\n useDefaultTableStates({\n columnDefinitions,\n }),\n {\n initialProps: { columnDefinitions: initialColumnDefinitions },\n },\n );\n\n await waitFor(() => {\n expect(result.current.columnVisibility).toEqual({\n name: true,\n });\n });\n\n const updatedColumnDefinitions: Array<\n ColumnDefinition<TestObject, {}, {}>\n > = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n isVisible: false,\n },\n {\n locator: { type: \"property\", id: \"email\" as TestObjectKeys },\n isVisible: true,\n },\n ];\n\n rerender({ columnDefinitions: updatedColumnDefinitions });\n\n await waitFor(() => {\n expect(result.current.columnVisibility).toEqual({\n name: false,\n email: true,\n });\n });\n });\n\n it(\"only includes columns with explicit isVisible in the visibility state\", async () => {\n const columnDefinitions: Array<ColumnDefinition<TestObject, {}, {}>> = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n isVisible: true,\n },\n {\n locator: { type: \"property\", id: \"email\" as TestObjectKeys },\n },\n {\n locator: { type: \"property\", id: \"age\" as TestObjectKeys },\n isVisible: false,\n },\n {\n locator: { type: \"property\", id: \"id\" as TestObjectKeys },\n },\n ];\n\n const { result } = renderHook(() =>\n useDefaultTableStates({\n columnDefinitions,\n })\n );\n\n await waitFor(() => {\n expect(result.current.columnVisibility).toEqual({\n name: true,\n age: false,\n });\n });\n\n // Verify that columns without isVisible are not in the state\n expect(result.current.columnVisibility).not.toHaveProperty(\"email\");\n expect(result.current.columnVisibility).not.toHaveProperty(\"id\");\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDefaultTableStates.js","names":["useMemo","useDefaultTableStates","columnDefinitions","columnVisibility","colVisibility","reduce","acc","colDef","isVisible","undefined","locator","colKey","id"],"sources":["useDefaultTableStates.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n ObjectTypeDefinition,\n QueryDefinition,\n SimplePropertyDef,\n} from \"@osdk/api\";\nimport type { VisibilityState } from \"@tanstack/react-table\";\nimport { useMemo } from \"react\";\nimport type { ObjectTableProps } from \"../ObjectTableApi.js\";\n\ninterface UseDefaultTableStatesProps<\n Q extends ObjectTypeDefinition,\n RDPs extends Record<string, SimplePropertyDef> = {},\n FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<\n string,\n never\n >,\n> {\n columnDefinitions: ObjectTableProps<\n Q,\n RDPs,\n FunctionColumns\n >[\"columnDefinitions\"];\n}\n\ninterface UseDefaultTableStatesResult {\n columnVisibility: VisibilityState | undefined;\n}\n\nexport const useDefaultTableStates = <\n Q extends ObjectTypeDefinition,\n RDPs extends Record<string, SimplePropertyDef> = {},\n FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<\n string,\n never\n >,\n>(\n { columnDefinitions }: UseDefaultTableStatesProps<\n Q,\n RDPs,\n FunctionColumns\n >,\n): UseDefaultTableStatesResult => {\n const columnVisibility = useMemo(() => {\n if (columnDefinitions) {\n const colVisibility: VisibilityState = columnDefinitions.reduce(\n (acc, colDef) => {\n if (colDef.isVisible !== undefined) {\n const { locator } = colDef;\n\n const colKey = locator.id;\n\n return {\n ...acc,\n [colKey]: colDef.isVisible,\n };\n }\n return acc;\n },\n {},\n );\n\n return colVisibility;\n }\n }, [columnDefinitions]);\n\n return { columnVisibility };\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAQA,SAASA,OAAO,QAAQ,OAAO;AAsB/B,OAAO,MAAMC,qBAAqB,GAAGA,CAQnC;EAAEC;AAIF,CAAC,KAC+B;EAChC,MAAMC,gBAAgB,GAAGH,OAAO,CAAC,MAAM;IACrC,IAAIE,iBAAiB,EAAE;MACrB,MAAME,aAA8B,GAAGF,iBAAiB,CAACG,MAAM,CAC7D,CAACC,GAAG,EAAEC,MAAM,KAAK;QACf,IAAIA,MAAM,CAACC,SAAS,KAAKC,SAAS,EAAE;UAClC,MAAM;YAAEC;UAAQ,CAAC,GAAGH,MAAM;UAE1B,MAAMI,MAAM,GAAGD,OAAO,CAACE,EAAE;UAEzB,OAAO;YACL,GAAGN,GAAG;YACN,CAACK,MAAM,GAAGJ,MAAM,CAACC;UACnB,CAAC;QACH;QACA,OAAOF,GAAG;MACZ,CAAC,EACD,CAAC,CACH,CAAC;MAED,OAAOF,aAAa;IACtB;EACF,CAAC,EAAE,CAACF,iBAAiB,CAAC,CAAC;EAEvB,OAAO;IAAEC;EAAiB,CAAC;AAC7B,CAAC","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDefaultTableStates.test.js","names":["renderHook","waitFor","describe","expect","it","useDefaultTableStates","TestObjectType","type","apiName","result","columnDefinitions","undefined","current","columnVisibility","toBeUndefined","locator","id","toEqual","isVisible","creator","name","myFunction","myRdp","rerender","initialProps","email","age","not","toHaveProperty"],"sources":["useDefaultTableStates.test.tsx"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n DerivedProperty,\n ObjectTypeDefinition,\n PropertyKeys,\n QueryDefinition,\n SimplePropertyDef,\n} from \"@osdk/api\";\nimport { renderHook, waitFor } from \"@testing-library/react\";\nimport { describe, expect, it } from \"vitest\";\nimport type { ColumnDefinition } from \"../../ObjectTableApi.js\";\nimport { useDefaultTableStates } from \"../useDefaultTableStates.js\";\n\nconst TestObjectType = {\n type: \"object\",\n apiName: \"TestObject\",\n} as const satisfies ObjectTypeDefinition;\n\ntype TestObject = typeof TestObjectType;\ntype TestObjectKeys = PropertyKeys<TestObject>;\n\ndescribe(useDefaultTableStates, () => {\n it(\"returns undefined columnVisibility when no columnDefinitions provided\", () => {\n const { result } = renderHook(() =>\n useDefaultTableStates({\n columnDefinitions: undefined,\n })\n );\n\n expect(result.current.columnVisibility).toBeUndefined();\n });\n\n it(\"returns empty columnVisibility when columnDefinitions have no isVisible properties\", () => {\n const columnDefinitions: Array<ColumnDefinition<TestObject, {}, {}>> = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n },\n {\n locator: { type: \"property\", id: \"email\" as TestObjectKeys },\n },\n ];\n\n const { result } = renderHook(() =>\n useDefaultTableStates({\n columnDefinitions,\n })\n );\n\n expect(result.current.columnVisibility).toEqual({});\n });\n\n it(\"handles mixed column types with different visibility states\", async () => {\n const mockRdpCreator = (() => ({})) as unknown as DerivedProperty.Creator<\n TestObject,\n SimplePropertyDef\n >;\n\n const columnDefinitions: Array<\n ColumnDefinition<\n TestObject,\n { myRdp: SimplePropertyDef },\n { myFunction: QueryDefinition<{}> }\n >\n > = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n isVisible: true,\n },\n {\n locator: { type: \"function\", id: \"myFunction\" },\n isVisible: false,\n },\n {\n locator: { type: \"rdp\", id: \"myRdp\", creator: mockRdpCreator },\n isVisible: true,\n },\n {\n locator: { type: \"property\", id: \"email\" as TestObjectKeys },\n },\n ];\n\n const { result } = renderHook(() =>\n useDefaultTableStates({\n columnDefinitions,\n })\n );\n\n await waitFor(() => {\n expect(result.current.columnVisibility).toEqual({\n name: true,\n myFunction: false,\n myRdp: true,\n });\n });\n });\n\n it(\"updates columnVisibility when columnDefinitions change\", async () => {\n const initialColumnDefinitions: Array<\n ColumnDefinition<TestObject, {}, {}>\n > = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n isVisible: true,\n },\n ];\n\n const { result, rerender } = renderHook(\n ({ columnDefinitions }) =>\n useDefaultTableStates({\n columnDefinitions,\n }),\n {\n initialProps: { columnDefinitions: initialColumnDefinitions },\n },\n );\n\n await waitFor(() => {\n expect(result.current.columnVisibility).toEqual({\n name: true,\n });\n });\n\n const updatedColumnDefinitions: Array<\n ColumnDefinition<TestObject, {}, {}>\n > = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n isVisible: false,\n },\n {\n locator: { type: \"property\", id: \"email\" as TestObjectKeys },\n isVisible: true,\n },\n ];\n\n rerender({ columnDefinitions: updatedColumnDefinitions });\n\n await waitFor(() => {\n expect(result.current.columnVisibility).toEqual({\n name: false,\n email: true,\n });\n });\n });\n\n it(\"only includes columns with explicit isVisible in the visibility state\", async () => {\n const columnDefinitions: Array<ColumnDefinition<TestObject, {}, {}>> = [\n {\n locator: { type: \"property\", id: \"name\" as TestObjectKeys },\n isVisible: true,\n },\n {\n locator: { type: \"property\", id: \"email\" as TestObjectKeys },\n },\n {\n locator: { type: \"property\", id: \"age\" as TestObjectKeys },\n isVisible: false,\n },\n {\n locator: { type: \"property\", id: \"id\" as TestObjectKeys },\n },\n ];\n\n const { result } = renderHook(() =>\n useDefaultTableStates({\n columnDefinitions,\n })\n );\n\n await waitFor(() => {\n expect(result.current.columnVisibility).toEqual({\n name: true,\n age: false,\n });\n });\n\n // Verify that columns without isVisible are not in the state\n expect(result.current.columnVisibility).not.toHaveProperty(\"email\");\n expect(result.current.columnVisibility).not.toHaveProperty(\"id\");\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDefaultTableStates.js","names":["useMemo","useDefaultTableStates","columnDefinitions","columnVisibility","colVisibility","reduce","acc","colDef","isVisible","undefined","locator","colKey","id"],"sources":["useDefaultTableStates.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n ObjectTypeDefinition,\n QueryDefinition,\n SimplePropertyDef,\n} from \"@osdk/api\";\nimport type { VisibilityState } from \"@tanstack/react-table\";\nimport { useMemo } from \"react\";\nimport type { ObjectTableProps } from \"../ObjectTableApi.js\";\n\ninterface UseDefaultTableStatesProps<\n Q extends ObjectTypeDefinition,\n RDPs extends Record<string, SimplePropertyDef> = {},\n FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<\n string,\n never\n >,\n> {\n columnDefinitions: ObjectTableProps<\n Q,\n RDPs,\n FunctionColumns\n >[\"columnDefinitions\"];\n}\n\ninterface UseDefaultTableStatesResult {\n columnVisibility: VisibilityState | undefined;\n}\n\nexport const useDefaultTableStates = <\n Q extends ObjectTypeDefinition,\n RDPs extends Record<string, SimplePropertyDef> = {},\n FunctionColumns extends Record<string, QueryDefinition<{}>> = Record<\n string,\n never\n >,\n>(\n { columnDefinitions }: UseDefaultTableStatesProps<\n Q,\n RDPs,\n FunctionColumns\n >,\n): UseDefaultTableStatesResult => {\n const columnVisibility = useMemo(() => {\n if (columnDefinitions) {\n const colVisibility: VisibilityState = columnDefinitions.reduce(\n (acc, colDef) => {\n if (colDef.isVisible !== undefined) {\n const { locator } = colDef;\n\n const colKey = locator.id;\n\n return {\n ...acc,\n [colKey]: colDef.isVisible,\n };\n }\n return acc;\n },\n {},\n );\n\n return colVisibility;\n }\n }, [columnDefinitions]);\n\n return { columnVisibility };\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAQA,SAASA,OAAO,QAAQ,OAAO;AAsB/B,OAAO,MAAMC,qBAAqB,GAAGA,CAQnC;EAAEC;AAIF,CAAC,KAC+B;EAChC,MAAMC,gBAAgB,GAAGH,OAAO,CAAC,MAAM;IACrC,IAAIE,iBAAiB,EAAE;MACrB,MAAME,aAA8B,GAAGF,iBAAiB,CAACG,MAAM,CAC7D,CAACC,GAAG,EAAEC,MAAM,KAAK;QACf,IAAIA,MAAM,CAACC,SAAS,KAAKC,SAAS,EAAE;UAClC,MAAM;YAAEC;UAAQ,CAAC,GAAGH,MAAM;UAE1B,MAAMI,MAAM,GAAGD,OAAO,CAACE,EAAE;UAEzB,OAAO;YACL,GAAGN,GAAG;YACN,CAACK,MAAM,GAAGJ,MAAM,CAACC;UACnB,CAAC;QACH;QACA,OAAOF,GAAG;MACZ,CAAC,EACD,CAAC,CACH,CAAC;MAED,OAAOF,aAAa;IACtB;EACF,CAAC,EAAE,CAACF,iBAAiB,CAAC,CAAC;EAEvB,OAAO;IAAEC;EAAiB,CAAC;AAC7B,CAAC","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"","names":[],"sources":["../../../../../src/object-table/hooks/__tests__/useDefaultTableStates.test.tsx"],"version":3,"file":"useDefaultTableStates.test.d.ts"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cACE,sBACA,iBACA,yBACK,WAAY;AACnB,cAAc,uBAAuB,uBAAwB;AAE7D,cAAc,wBAAwB,sBAAuB;UAEnD;CACR,UAAU;CACV,aAAa,eAAe,qBAAqB,CAAE;CACnD,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAI9D;CACA,mBAAmB,iBACjB,GACA,MACA,iBACA;AACH;UAES,4BAA4B;CACpC,kBAAkB;AACnB;AAED,OAAO,cAAM;CACX,UAAU;CACV,aAAa,eAAe,qBAAqB,CAAE;CACnD,wBAAwB,eAAe,gBAAgB,CAAE,MAAK;EAK9D,EAAE,mBAID,EAJsB,2BACrB,GACA,MACA,qBAED","names":[],"sources":["../../../../src/object-table/hooks/useDefaultTableStates.ts"],"version":3,"file":"useDefaultTableStates.d.ts"}
|
|
File without changes
|