@contember/bindx-dataview 0.1.33 → 0.1.35
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/columns.d.ts +6 -2
- package/dist/columns.d.ts.map +1 -1
- package/dist/createColumn.d.ts +10 -0
- package/dist/createColumn.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/columns.tsx +21 -9
- package/src/createColumn.ts +26 -10
- package/src/index.ts +1 -0
package/dist/columns.d.ts
CHANGED
|
@@ -69,8 +69,12 @@ export declare const DataGridNumberColumn: import("./createColumn.js").ColumnCom
|
|
|
69
69
|
export declare const DataGridDateColumn: import("./createColumn.js").ColumnComponent<object>;
|
|
70
70
|
export declare const DataGridDateTimeColumn: import("./createColumn.js").ColumnComponent<object>;
|
|
71
71
|
export declare const DataGridBooleanColumn: import("./createColumn.js").ColumnComponent<object>;
|
|
72
|
-
export declare const DataGridEnumColumn: <TValue extends string>(
|
|
73
|
-
|
|
72
|
+
export declare const DataGridEnumColumn: (<TValue extends string>(_props: DataGridEnumColumnProps<TValue>) => null) & {
|
|
73
|
+
staticRender: (props: Record<string, unknown>) => React.ReactNode;
|
|
74
|
+
};
|
|
75
|
+
export declare const DataGridEnumListColumn: (<TValue extends string>(_props: DataGridEnumListColumnProps<TValue>) => null) & {
|
|
76
|
+
staticRender: (props: Record<string, unknown>) => React.ReactNode;
|
|
77
|
+
};
|
|
74
78
|
export declare const DataGridUuidColumn: import("./createColumn.js").ColumnComponent<object>;
|
|
75
79
|
export declare const DataGridIsDefinedColumn: import("./createColumn.js").ColumnComponent<object>;
|
|
76
80
|
export interface DataGridHasOneColumnProps<TEntity, TSelected> extends RelationColumnProps<TEntity, TSelected> {
|
package/dist/columns.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columns.d.ts","sourceRoot":"","sources":["../src/columns.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAA6D,MAAM,kBAAkB,CAAA;AAEjL,OAAO,EAAE,cAAc,EAAwB,MAAM,wBAAwB,CAAA;AAG7E,OAAO,EAA6D,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAchI,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAMlE,MAAM,MAAM,UAAU,GAAG,eAAe,CAAA;AAMxC,UAAU,mBAAmB;IAC5B,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE;QAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;QAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;QACzB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;QAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAC1B,CAAA;CACD;AAED,mEAAmE;AACnE,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,mBAAmB,CAExE;AAED,yFAAyF;AACzF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAE5D;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEhE;AAED,kEAAkE;AAClE,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAIpE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAEjH;
|
|
1
|
+
{"version":3,"file":"columns.d.ts","sourceRoot":"","sources":["../src/columns.tsx"],"names":[],"mappings":"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"}
|
package/dist/createColumn.d.ts
CHANGED
|
@@ -13,6 +13,8 @@ export interface ColumnRenderProps<TValue> {
|
|
|
13
13
|
readonly accessor: EntityAccessor<object>;
|
|
14
14
|
readonly fieldRef: FieldRef<unknown> | null;
|
|
15
15
|
readonly fieldName: string | null;
|
|
16
|
+
readonly enumOptions: Readonly<Record<string, React.ReactNode>> | undefined;
|
|
17
|
+
readonly enumName: string | undefined;
|
|
16
18
|
}
|
|
17
19
|
export interface FilterRenderProps<TFilterArtifact> {
|
|
18
20
|
readonly artifact: TFilterArtifact;
|
|
@@ -33,5 +35,13 @@ export interface ColumnComponent<TExtraProps = object> {
|
|
|
33
35
|
<T>(props: ColumnComponentProps<T> & TExtraProps): null;
|
|
34
36
|
staticRender: (props: Record<string, unknown>) => React.ReactNode;
|
|
35
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* Build the static-render function for a column type definition. Used both by
|
|
40
|
+
* {@link createColumn} and by column components that need a narrower generic
|
|
41
|
+
* signature than `ColumnComponent` can express (e.g. enum columns constrained
|
|
42
|
+
* to `T extends string`) — those define their own component and attach this
|
|
43
|
+
* static render via `Object.assign`.
|
|
44
|
+
*/
|
|
45
|
+
export declare function createColumnStaticRender<TValue, TFilterArtifact extends FilterArtifact>(columnType: ColumnTypeDef<TValue, TFilterArtifact>, config: CreateColumnConfig<TValue, TFilterArtifact>): (props: Record<string, unknown>) => React.ReactNode;
|
|
36
46
|
export declare function createColumn<TValue, TFilterArtifact extends FilterArtifact, TExtraProps = object>(columnType: ColumnTypeDef<TValue, TFilterArtifact>, config: CreateColumnConfig<TValue, TFilterArtifact>): ColumnComponent<TExtraProps>;
|
|
37
47
|
//# sourceMappingURL=createColumn.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createColumn.d.ts","sourceRoot":"","sources":["../src/createColumn.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAiB,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC/F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAQrD,MAAM,WAAW,iBAAiB,CAAC,MAAM;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;IAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"createColumn.d.ts","sourceRoot":"","sources":["../src/createColumn.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAiB,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC/F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAQrD,MAAM,WAAW,iBAAiB,CAAC,MAAM;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;IAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS,CAAA;IAC3E,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;CACrC;AAED,MAAM,WAAW,iBAAiB,CAAC,eAAe;IACjD,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAA;IAClC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,IAAI,CAAA;CACzD;AAMD,MAAM,WAAW,kBAAkB,CAAC,MAAM,EAAE,eAAe,SAAS,cAAc;IACjF,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;IAC1E,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,eAAe,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;CACtF;AAMD,MAAM,WAAW,oBAAoB,CAAC,MAAM,GAAG,OAAO;IACrD,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IACvB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;CACtF;AAMD,MAAM,WAAW,eAAe,CAAC,WAAW,GAAG,MAAM;IACpD,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,IAAI,CAAA;IACvD,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;CACjE;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,eAAe,SAAS,cAAc,EACtF,UAAU,EAAE,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC,EAClD,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,eAAe,CAAC,GACjD,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,KAAK,CAAC,SAAS,CA4DrD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,EAChG,UAAU,EAAE,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC,EAClD,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,eAAe,CAAC,GACjD,eAAe,CAAC,WAAW,CAAC,CAM9B"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export { HasManyDataGrid, type HasManyDataGridProps } from './HasManyDataGrid.js
|
|
|
3
3
|
export { defineColumnType, type ColumnTypeDef, textColumnDef, numberColumnDef, dateColumnDef, dateTimeColumnDef, booleanColumnDef, enumColumnDef, enumListColumnDef, uuidColumnDef, isDefinedColumnDef, hasOneColumnDef, hasManyColumnDef, accessField, } from './columnTypes.js';
|
|
4
4
|
export { ColumnLeaf, type ColumnLeafProps, extractColumnLeaves, analyzeChildren, type ChildrenAnalysisResult, } from './columnLeaf.js';
|
|
5
5
|
export { DataGridToolbarContent, type DataGridToolbarContentProps, DataGridLayout, type DataGridLayoutProps, } from './markers.js';
|
|
6
|
-
export { createColumn, type ColumnRenderProps, type FilterRenderProps, type CreateColumnConfig, type ColumnComponentProps, type ColumnComponent, } from './createColumn.js';
|
|
6
|
+
export { createColumn, createColumnStaticRender, type ColumnRenderProps, type FilterRenderProps, type CreateColumnConfig, type ColumnComponentProps, type ColumnComponent, } from './createColumn.js';
|
|
7
7
|
export { createRelationColumn, hasOneCellConfig, hasManyCellConfig, type RelationColumnConfig, type RelationFilterContext, type RelationCellWrapperContext, type RelationColumnProps, type RelationColumnComponent, } from './createRelationColumn.jsx';
|
|
8
8
|
export { DataGridTextColumn, DataGridNumberColumn, DataGridDateColumn, DataGridDateTimeColumn, DataGridBooleanColumn, DataGridEnumColumn, DataGridEnumListColumn, DataGridUuidColumn, DataGridIsDefinedColumn, DataGridHasOneColumn, DataGridHasManyColumn, DataGridActionColumn, DataGridColumn, type DataGridTextColumnProps, type DataGridNumberColumnProps, type DataGridDateColumnProps, type DataGridDateTimeColumnProps, type DataGridBooleanColumnProps, type DataGridEnumColumnProps, type DataGridEnumListColumnProps, type DataGridUuidColumnProps, type DataGridIsDefinedColumnProps, type DataGridHasOneColumnProps, type DataGridHasManyColumnProps, type DataGridActionColumnProps, type DataGridColumnProps, type ColumnMeta, extractFieldName, extractRelatedEntityName, hasFieldRefMeta, getRelatedAccessor, } from './columns.js';
|
|
9
9
|
export { useFilteringState, useSortingState, usePagingState, useSelectionState, type FilteringState, type RegisteredFilter, type UseFilteringOptions, type UseSortingOptions, type SortingStateResult, type UsePagingOptions, type PagingStateResult, type UseSelectionOptions, type SelectionStateResult, } from './useDataViewState.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAGjF,OAAO,EACN,gBAAgB,EAChB,KAAK,aAAa,EAClB,aAAa,EACb,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,WAAW,GACX,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EACN,UAAU,EACV,KAAK,eAAe,EACpB,mBAAmB,EACnB,eAAe,EACf,KAAK,sBAAsB,GAC3B,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EACN,sBAAsB,EACtB,KAAK,2BAA2B,EAChC,cAAc,EACd,KAAK,mBAAmB,GACxB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACN,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACpB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACN,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,GAC5B,MAAM,4BAA4B,CAAA;AAGnC,OAAO,EACN,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC5B,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,gBAAgB,EAChB,wBAAwB,EACxB,eAAe,EACf,kBAAkB,GAClB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACN,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GACzB,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACN,kBAAkB,EAClB,0BAA0B,EAC1B,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,mBAAmB,IAAI,uBAAuB,EACnD,KAAK,mBAAmB,GACxB,MAAM,sBAAsB,CAAA;AAG7B,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAG5F,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAGlD,OAAO,EACN,qBAAqB,EACrB,6BAA6B,EAC7B,0BAA0B,GAC1B,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EACN,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,cAAc,EACd,KAAK,mBAAmB,EACxB,qBAAqB,EACrB,KAAK,0BAA0B,GAC/B,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EACN,kBAAkB,EAClB,KAAK,uBAAuB,EAC5B,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,oBAAoB,EACpB,KAAK,yBAAyB,EAC9B,kBAAkB,EAClB,KAAK,uBAAuB,EAC5B,kBAAkB,EAClB,KAAK,uBAAuB,EAC5B,sBAAsB,EACtB,KAAK,2BAA2B,EAChC,oBAAoB,EACpB,KAAK,yBAAyB,EAC9B,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,uBAAuB,EACvB,KAAK,4BAA4B,GACjC,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACN,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,wBAAwB,EACxB,+BAA+B,EAC/B,KAAK,8BAA8B,EACnC,KAAK,4BAA4B,EACjC,KAAK,8BAA8B,EACnC,qBAAqB,EACrB,4BAA4B,EAC5B,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,yBAAyB,EACzB,gCAAgC,EAChC,KAAK,+BAA+B,EACpC,KAAK,6BAA6B,EAClC,KAAK,+BAA+B,EACpC,0BAA0B,EAC1B,KAAK,gCAAgC,EACrC,8BAA8B,EAC9B,KAAK,oCAAoC,EACzC,4BAA4B,EAC5B,KAAK,kCAAkC,EACvC,KAAK,iCAAiC,EACtC,qBAAqB,EACrB,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,GAChC,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EACN,KAAK,mBAAmB,EACxB,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,kCAAkC,EAClC,KAAK,uCAAuC,EAC5C,gCAAgC,EAChC,KAAK,qCAAqC,EAC1C,8BAA8B,EAC9B,KAAK,mCAAmC,EACxC,yBAAyB,EACzB,KAAK,8BAA8B,EACnC,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,4BAA4B,EAC5B,KAAK,iCAAiC,EACtC,yBAAyB,EACzB,KAAK,8BAA8B,EACnC,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,6BAA6B,EAC7B,KAAK,kCAAkC,EACvC,2BAA2B,EAC3B,KAAK,gCAAgC,EACrC,yBAAyB,EACzB,KAAK,8BAA8B,EACnC,0BAA0B,EAC1B,KAAK,+BAA+B,EACpC,8BAA8B,EAC9B,KAAK,mCAAmC,EACxC,gCAAgC,EAChC,KAAK,qCAAqC,GAC1C,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACN,sBAAsB,EACtB,KAAK,2BAA2B,EAChC,qBAAqB,EACrB,KAAK,0BAA0B,GAC/B,MAAM,wBAAwB,CAAA;AAG/B,OAAO,EACN,yBAAyB,EACzB,KAAK,8BAA8B,EACnC,8BAA8B,EAC9B,KAAK,mCAAmC,EACxC,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,kBAAkB,EAClB,KAAK,uBAAuB,GAC5B,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACN,yBAAyB,EACzB,KAAK,8BAA8B,EACnC,eAAe,EACf,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,cAAc,EACd,KAAK,mBAAmB,EACxB,qBAAqB,EACrB,KAAK,0BAA0B,GAC/B,MAAM,0BAA0B,CAAA;AAGjC,OAAO,EACN,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,KAAK,kBAAkB,GACvB,MAAM,aAAa,CAAA;AAGpB,OAAO,EACN,4BAA4B,EAC5B,KAAK,iCAAiC,EACtC,2BAA2B,EAC3B,KAAK,gCAAgC,EACrC,kCAAkC,EAClC,KAAK,uCAAuC,EAC5C,8BAA8B,GAC9B,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACN,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,KAAK,8BAA8B,EACnC,sBAAsB,EACtB,iBAAiB,EACjB,yBAAyB,EACzB,aAAa,EACb,KAAK,kBAAkB,EACvB,gBAAgB,EAChB,KAAK,qBAAqB,EAC1B,eAAe,EACf,KAAK,oBAAoB,EACzB,oBAAoB,EACpB,KAAK,yBAAyB,EAC9B,4BAA4B,EAC5B,KAAK,iCAAiC,GACtC,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACN,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,qBAAqB,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,gCAAgC,EAChC,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,mBAAmB,GACnB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACN,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,cAAc,EACd,gBAAgB,GAChB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACN,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,cAAc,GACd,MAAM,0BAA0B,CAAA;AAGjC,cAAc,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contember/bindx-dataview",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.35",
|
|
4
4
|
"description": "Headless DataGrid and DataView components for bindx",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./src/index.ts",
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
"react": ">=18.0.0"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@contember/bindx": "0.1.
|
|
19
|
-
"@contember/bindx-react": "0.1.
|
|
18
|
+
"@contember/bindx": "0.1.35",
|
|
19
|
+
"@contember/bindx-react": "0.1.35",
|
|
20
20
|
"@radix-ui/primitive": "^1.1.3",
|
|
21
21
|
"@radix-ui/react-slot": "^1.2.4"
|
|
22
22
|
},
|
package/src/columns.tsx
CHANGED
|
@@ -13,7 +13,7 @@ import React, { ReactNode } from 'react'
|
|
|
13
13
|
import type { FieldRef, HasOneRef, HasManyRef, FilterHandler, FilterArtifact, EntityAccessor, EnumFilterArtifact, EnumListFilterArtifact, SelectionMeta } from '@contember/bindx'
|
|
14
14
|
import { SelectionScope } from '@contember/bindx'
|
|
15
15
|
import { FIELD_REF_META, createCollectorProxy } from '@contember/bindx-react'
|
|
16
|
-
import { createColumn, type ColumnRenderProps } from './createColumn.js'
|
|
16
|
+
import { createColumn, createColumnStaticRender, type ColumnRenderProps } from './createColumn.js'
|
|
17
17
|
import { accessField } from './columnTypes.js'
|
|
18
18
|
import { createRelationColumn, hasOneCellConfig, hasManyCellConfig, type RelationColumnProps } from './createRelationColumn.jsx'
|
|
19
19
|
import {
|
|
@@ -104,9 +104,19 @@ function renderDateTimeDefault({ value }: ColumnRenderProps<string | null>): Rea
|
|
|
104
104
|
return date.toLocaleString()
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
-
function
|
|
107
|
+
function renderEnumDefault({ value, enumOptions }: ColumnRenderProps<string | null>): React.ReactNode {
|
|
108
|
+
if (value == null) return ''
|
|
109
|
+
return enumOptions?.[value] ?? value
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
function renderEnumListDefault({ value, enumOptions }: ColumnRenderProps<readonly string[] | null>): React.ReactNode {
|
|
108
113
|
if (!Array.isArray(value)) return ''
|
|
109
|
-
return value.
|
|
114
|
+
return value.map((v, i) => (
|
|
115
|
+
<React.Fragment key={i}>
|
|
116
|
+
{i > 0 ? ', ' : null}
|
|
117
|
+
{enumOptions?.[v] ?? v}
|
|
118
|
+
</React.Fragment>
|
|
119
|
+
))
|
|
110
120
|
}
|
|
111
121
|
|
|
112
122
|
// ============================================================================
|
|
@@ -164,13 +174,15 @@ export const DataGridBooleanColumn = createColumn(booleanColumnDef, {
|
|
|
164
174
|
renderCell: renderBooleanDefault,
|
|
165
175
|
})
|
|
166
176
|
|
|
167
|
-
export const DataGridEnumColumn =
|
|
168
|
-
|
|
169
|
-
|
|
177
|
+
export const DataGridEnumColumn = Object.assign(
|
|
178
|
+
<TValue extends string>(_props: DataGridEnumColumnProps<TValue>): null => null,
|
|
179
|
+
{ staticRender: createColumnStaticRender(enumColumnDef, { renderCell: renderEnumDefault }) },
|
|
180
|
+
)
|
|
170
181
|
|
|
171
|
-
export const DataGridEnumListColumn =
|
|
172
|
-
|
|
173
|
-
|
|
182
|
+
export const DataGridEnumListColumn = Object.assign(
|
|
183
|
+
<TValue extends string>(_props: DataGridEnumListColumnProps<TValue>): null => null,
|
|
184
|
+
{ staticRender: createColumnStaticRender(enumListColumnDef, { renderCell: renderEnumListDefault }) },
|
|
185
|
+
)
|
|
174
186
|
|
|
175
187
|
export const DataGridUuidColumn = createColumn(uuidColumnDef, {
|
|
176
188
|
renderCell: renderScalarDefault,
|
package/src/createColumn.ts
CHANGED
|
@@ -21,6 +21,8 @@ export interface ColumnRenderProps<TValue> {
|
|
|
21
21
|
readonly accessor: EntityAccessor<object>
|
|
22
22
|
readonly fieldRef: FieldRef<unknown> | null
|
|
23
23
|
readonly fieldName: string | null
|
|
24
|
+
readonly enumOptions: Readonly<Record<string, React.ReactNode>> | undefined
|
|
25
|
+
readonly enumName: string | undefined
|
|
24
26
|
}
|
|
25
27
|
|
|
26
28
|
export interface FilterRenderProps<TFilterArtifact> {
|
|
@@ -58,15 +60,18 @@ export interface ColumnComponent<TExtraProps = object> {
|
|
|
58
60
|
staticRender: (props: Record<string, unknown>) => React.ReactNode
|
|
59
61
|
}
|
|
60
62
|
|
|
61
|
-
|
|
63
|
+
/**
|
|
64
|
+
* Build the static-render function for a column type definition. Used both by
|
|
65
|
+
* {@link createColumn} and by column components that need a narrower generic
|
|
66
|
+
* signature than `ColumnComponent` can express (e.g. enum columns constrained
|
|
67
|
+
* to `T extends string`) — those define their own component and attach this
|
|
68
|
+
* static render via `Object.assign`.
|
|
69
|
+
*/
|
|
70
|
+
export function createColumnStaticRender<TValue, TFilterArtifact extends FilterArtifact>(
|
|
62
71
|
columnType: ColumnTypeDef<TValue, TFilterArtifact>,
|
|
63
72
|
config: CreateColumnConfig<TValue, TFilterArtifact>,
|
|
64
|
-
):
|
|
65
|
-
|
|
66
|
-
return null
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
Column.staticRender = (props: Record<string, unknown>): React.ReactNode => {
|
|
73
|
+
): (props: Record<string, unknown>) => React.ReactNode {
|
|
74
|
+
return (props: Record<string, unknown>): React.ReactNode => {
|
|
70
75
|
const fieldRef = props['field'] as FieldRef<unknown> | undefined
|
|
71
76
|
const fieldName = fieldRef ? extractFieldName(fieldRef) : null
|
|
72
77
|
const header = props['header'] as React.ReactNode | undefined
|
|
@@ -74,9 +79,9 @@ export function createColumn<TValue, TFilterArtifact extends FilterArtifact, TEx
|
|
|
74
79
|
const filterEnabled = (props['filter'] as boolean | undefined) ?? false
|
|
75
80
|
const children = props['children'] as ((value: TValue | null, accessor: EntityAccessor<object>) => React.ReactNode) | undefined
|
|
76
81
|
const rawOptions = props['options'] as readonly string[] | Readonly<Record<string, React.ReactNode>> | undefined
|
|
77
|
-
const enumOptions = Array.isArray(rawOptions)
|
|
78
|
-
? Object.fromEntries(rawOptions.map(v => [v, v]))
|
|
79
|
-
: rawOptions
|
|
82
|
+
const enumOptions: Readonly<Record<string, React.ReactNode>> | undefined = Array.isArray(rawOptions)
|
|
83
|
+
? Object.fromEntries((rawOptions as readonly string[]).map(v => [v, v]))
|
|
84
|
+
: rawOptions as Readonly<Record<string, React.ReactNode>> | undefined
|
|
80
85
|
const enumName = extractEnumName(fieldRef)
|
|
81
86
|
|
|
82
87
|
const renderCell = children
|
|
@@ -95,6 +100,8 @@ export function createColumn<TValue, TFilterArtifact extends FilterArtifact, TEx
|
|
|
95
100
|
accessor,
|
|
96
101
|
fieldRef: fieldRef ?? null,
|
|
97
102
|
fieldName,
|
|
103
|
+
enumOptions,
|
|
104
|
+
enumName,
|
|
98
105
|
})
|
|
99
106
|
}
|
|
100
107
|
|
|
@@ -123,6 +130,15 @@ export function createColumn<TValue, TFilterArtifact extends FilterArtifact, TEx
|
|
|
123
130
|
|
|
124
131
|
return React.createElement(ColumnLeaf, leafProps as ColumnLeafProps)
|
|
125
132
|
}
|
|
133
|
+
}
|
|
126
134
|
|
|
135
|
+
export function createColumn<TValue, TFilterArtifact extends FilterArtifact, TExtraProps = object>(
|
|
136
|
+
columnType: ColumnTypeDef<TValue, TFilterArtifact>,
|
|
137
|
+
config: CreateColumnConfig<TValue, TFilterArtifact>,
|
|
138
|
+
): ColumnComponent<TExtraProps> {
|
|
139
|
+
function Column(_props: ColumnComponentProps<unknown> & TExtraProps): null {
|
|
140
|
+
return null
|
|
141
|
+
}
|
|
142
|
+
Column.staticRender = createColumnStaticRender(columnType, config)
|
|
127
143
|
return Column as ColumnComponent<TExtraProps>
|
|
128
144
|
}
|