@cocoar/vue-data-grid 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/CoarDataGrid.vue.d.ts.map +1 -1
  2. package/dist/CoarDataGridPanel.vue.d.ts +36 -0
  3. package/dist/CoarDataGridPanel.vue.d.ts.map +1 -0
  4. package/dist/CoarDataGridSearch.vue.d.ts +35 -0
  5. package/dist/CoarDataGridSearch.vue.d.ts.map +1 -0
  6. package/dist/builders/coar-grid-builder.d.ts +151 -2
  7. package/dist/builders/coar-grid-builder.d.ts.map +1 -1
  8. package/dist/builders/coar-grid-column-builder.d.ts +45 -5
  9. package/dist/builders/coar-grid-column-builder.d.ts.map +1 -1
  10. package/dist/builders/coar-grid-column-factory.d.ts +16 -0
  11. package/dist/builders/coar-grid-column-factory.d.ts.map +1 -1
  12. package/dist/builders/index.d.ts +2 -2
  13. package/dist/builders/index.d.ts.map +1 -1
  14. package/dist/cell-renderers/DateCellRenderer.vue.d.ts.map +1 -1
  15. package/dist/cell-renderers/IconCellRenderer.vue.d.ts.map +1 -1
  16. package/dist/cell-renderers/TagCellRenderer.vue.d.ts.map +1 -1
  17. package/dist/cell-renderers/TreeCellRenderer.vue.d.ts +7 -0
  18. package/dist/cell-renderers/TreeCellRenderer.vue.d.ts.map +1 -0
  19. package/dist/cell-renderers/index.d.ts +2 -0
  20. package/dist/cell-renderers/index.d.ts.map +1 -1
  21. package/dist/cell-renderers/tree-cell-renderer.models.d.ts +5 -0
  22. package/dist/cell-renderers/tree-cell-renderer.models.d.ts.map +1 -0
  23. package/dist/header/CoarGridHeader.vue.d.ts +7 -0
  24. package/dist/header/CoarGridHeader.vue.d.ts.map +1 -0
  25. package/dist/index.css +1 -1
  26. package/dist/index.d.ts +6 -4
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +4880 -4329
  29. package/dist/models/index.d.ts +1 -1
  30. package/dist/models/index.d.ts.map +1 -1
  31. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"CoarDataGrid.vue.d.ts","sourceRoot":"","sources":["../src/CoarDataGrid.vue"],"names":[],"mappings":"AAiGA,OAAO,KAAK,EAAkB,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,6BAA6B,CAAC;yBAEpB,KAAK,GAAG,OAAO,EAC/B,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,eAAe,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EACjE;WAsJO,mBAAmB,CAAC;QA3IxB,gDAAgD;iBACvC,eAAe,CAAC,KAAK,CAAC;QAC/B,uDAAuD;gBAC/C,KAAK;QACb,+CAA+C;gBACvC,MAAM;QACd,kDAAkD;gBAC1C,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;mBAoImD,CAAC,4BAA2B;oBACzG,OAAO,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI;WAClD,GAAG;;UAEJ,EAAE;EAEL,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAE;AAjKzE,wBAiK4E;AAC5E,KAAK,mBAAmB,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"CoarDataGrid.vue.d.ts","sourceRoot":"","sources":["../src/CoarDataGrid.vue"],"names":[],"mappings":"AAoGA,OAAO,KAAK,EAAkB,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,6BAA6B,CAAC;yBAEpB,KAAK,GAAG,OAAO,EAC/B,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,eAAe,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EACjE;WA6JO,mBAAmB,CAAC;QAhJxB,gDAAgD;iBACvC,eAAe,CAAC,KAAK,CAAC;QAC/B,uDAAuD;gBAC/C,KAAK;QACb,+CAA+C;gBACvC,MAAM;QACd,kDAAkD;gBAC1C,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;mBAyImD,CAAC,4BAA2B;oBACzG,OAAO,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI;WAClD,GAAG;;UAEJ,EAAE;EAEL,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAE;AAxKzE,wBAwK4E;AAC5E,KAAK,mBAAmB,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { Theme } from 'ag-grid-community';
2
+ import { CoarTextInputSize } from '@cocoar/vue-ui';
3
+ import { CoarGridBuilder } from './builders';
4
+ declare const _default: <TData = unknown>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
5
+ props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
6
+ readonly "onUpdate:search"?: ((value: string) => any) | undefined;
7
+ } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>, "onUpdate:search"> & ({
8
+ search?: string;
9
+ } & {
10
+ /** The grid builder configuration (required) */
11
+ builder: CoarGridBuilder<TData>;
12
+ /** AG Grid theme override */
13
+ theme?: Theme;
14
+ /** Placeholder text for the search input */
15
+ searchPlaceholder?: string;
16
+ /** Search input size variant */
17
+ searchSize?: CoarTextInputSize;
18
+ /** Custom CSS class for the grid wrapper */
19
+ gridClass?: string;
20
+ /** Custom inline style for the grid wrapper */
21
+ gridStyle?: string | Record<string, string>;
22
+ }) & Partial<{}>> & import('vue').PublicProps;
23
+ expose(exposed: import('vue').ShallowUnwrapRef<{}>): void;
24
+ attrs: any;
25
+ slots: {
26
+ actions?(_: {}): any;
27
+ };
28
+ emit: (evt: "update:search", value: string) => void;
29
+ }>) => import('vue').VNode & {
30
+ __ctx?: Awaited<typeof __VLS_setup>;
31
+ };
32
+ export default _default;
33
+ type __VLS_PrettifyLocal<T> = {
34
+ [K in keyof T]: T[K];
35
+ } & {};
36
+ //# sourceMappingURL=CoarDataGridPanel.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoarDataGridPanel.vue.d.ts","sourceRoot":"","sources":["../src/CoarDataGridPanel.vue"],"names":[],"mappings":"AAiFA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;yBAK5B,KAAK,GAAG,OAAO,EAC/B,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,eAAe,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EACjE;WA+IO,mBAAmB,CAAC;;;iBAnFjB,MAAM;;QA1Db,gDAAgD;iBACvC,eAAe,CAAC,KAAK,CAAC;QAC/B,6BAA6B;gBACrB,KAAK;QACb,4CAA4C;4BACxB,MAAM;QAC1B,gCAAgC;qBACnB,iBAAiB;QAC9B,4CAA4C;oBAChC,MAAM;QAClB,+CAA+C;oBACnC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;oBAkI+C,CAAC,4BAA2B;oBACzG,OAAO,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI;WAClD,GAAG;;yBAhCkB,GAAG;;;EAoC5B,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAE;AA1JzE,wBA0J4E;AAC5E,KAAK,mBAAmB,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { CoarTextInputSize } from '@cocoar/vue-ui';
2
+ type __VLS_Props = {
3
+ /** Placeholder text for the search input */
4
+ placeholder?: string;
5
+ /** Input size variant */
6
+ size?: CoarTextInputSize;
7
+ };
8
+ type __VLS_PublicProps = {
9
+ modelValue?: string;
10
+ } & __VLS_Props;
11
+ declare function __VLS_template(): {
12
+ attrs: Partial<{}>;
13
+ slots: {
14
+ default?(_: {}): any;
15
+ };
16
+ refs: {};
17
+ rootEl: HTMLDivElement;
18
+ };
19
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
20
+ declare const __VLS_component: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
21
+ "update:modelValue": (value: string) => any;
22
+ }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
23
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
24
+ }>, {
25
+ size: CoarTextInputSize;
26
+ placeholder: string;
27
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
28
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
29
+ export default _default;
30
+ type __VLS_WithTemplateSlots<T, S> = T & {
31
+ new (): {
32
+ $slots: S;
33
+ };
34
+ };
35
+ //# sourceMappingURL=CoarDataGridSearch.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoarDataGridSearch.vue.d.ts","sourceRoot":"","sources":["../src/CoarDataGridSearch.vue"],"names":[],"mappings":"AA6DA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,KAAK,WAAW,GAAG;IACf,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B,CAAC;AAmBJ,KAAK,iBAAiB,GAAG;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,WAAW,CAAC;AAKhB,iBAAS,cAAc;WAsET,OAAO,IAA6B;;yBAVpB,GAAG;;;;EAehC;AAaD,KAAK,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAC9D,QAAA,MAAM,eAAe;;;;;UApHV,iBAAiB;iBAFV,MAAM;wFA+HtB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAAnG,wBAAoG;AAapG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IACxC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Ref, WatchSource } from 'vue';
2
- import { ColDef, GridApi, GridOptions, GridReadyEvent, RowClickedEvent, RowDoubleClickedEvent, CellClickedEvent, CellDoubleClickedEvent, GetRowIdFunc, RowClassParams, IRowNode, IsExternalFilterPresentParams, GridSizeChangedEvent, CellContextMenuEvent, ColumnState, PostSortRowsParams } from 'ag-grid-community';
2
+ import { ColDef, GridApi, GridOptions, GridReadyEvent, RowClickedEvent, RowDoubleClickedEvent, CellClickedEvent, CellDoubleClickedEvent, GetRowIdFunc, RowClassParams, IRowNode, IsExternalFilterPresentParams, GridSizeChangedEvent, CellContextMenuEvent, ColumnState, PostSortRowsParams, RowDragEndEvent } from 'ag-grid-community';
3
3
  import { CoarGridColumnBuilder } from './coar-grid-column-builder';
4
4
  import { CoarGridColumnFactory } from './coar-grid-column-factory';
5
5
  type ColumnBuilderLike<TData> = {
@@ -7,6 +7,35 @@ type ColumnBuilderLike<TData> = {
7
7
  };
8
8
  /** Column definition input - either a builder or a factory function */
9
9
  export type ColumnDefinition<TData> = ColumnBuilderLike<TData> | ((factory: CoarGridColumnFactory<TData>) => ColumnBuilderLike<TData>);
10
+ /** Configuration for tree (hierarchical) data */
11
+ export interface TreeDataConfig<TData> {
12
+ /** Extract children from a row. Return empty array for leaf nodes. */
13
+ children: (row: TData) => TData[];
14
+ /** Extract a unique ID from a row. Used for tracking expanded state. */
15
+ rowId: (row: TData) => string;
16
+ }
17
+ /** Metadata about a tree node, available to cell renderers via AG Grid context */
18
+ export interface TreeNodeMeta {
19
+ /** Nesting depth (0 = root) */
20
+ depth: number;
21
+ /** Whether this node has children */
22
+ hasChildren: boolean;
23
+ /** Whether this node is currently expanded */
24
+ isExpanded: boolean;
25
+ /** Number of direct children */
26
+ childCount: number;
27
+ }
28
+ /** Tree context available on AG Grid's `context.coarTree` */
29
+ export interface CoarTreeContext<TData = unknown> {
30
+ meta: Map<string, TreeNodeMeta>;
31
+ toggleRow: (id: string) => void;
32
+ getRowId: (row: TData) => string;
33
+ }
34
+ /** Options for row drag highlight */
35
+ export interface RowDragHighlightOptions<TData> {
36
+ /** Validate if dragged row can be dropped on target. Return `false` to show "not allowed" feedback. */
37
+ canDrop?: (draggedData: TData, targetData: TData) => boolean;
38
+ }
10
39
  /** Options for row selection */
11
40
  export interface RowSelectionOptions {
12
41
  /** Show a checkbox column for selection (default: false for 'single', true for 'multiple') */
@@ -82,6 +111,22 @@ export declare class CoarGridBuilder<TData = unknown> {
82
111
  updateSortAndFilterWhen(trigger: WatchSource): this;
83
112
  /** Merge column state to restore column widths, order, visibility */
84
113
  columnState(state: ColumnState[] | Ref<ColumnState[] | undefined>): this;
114
+ /**
115
+ * Enable tree data mode with nested children.
116
+ *
117
+ * The builder flattens the tree before passing it to AG Grid,
118
+ * respecting `openRows()` for expand/collapse. When a quick filter
119
+ * is active, matching branches are automatically expanded.
120
+ *
121
+ * @example
122
+ * ```ts
123
+ * builder.treeData({
124
+ * children: (row) => row.children ?? [],
125
+ * rowId: (row) => row.id,
126
+ * })
127
+ * ```
128
+ */
129
+ treeData(config: TreeDataConfig<TData>): this;
85
130
  /** Set which parent rows are expanded (reactive ref of row IDs) */
86
131
  openRows(openRows: Ref<string[]>): this;
87
132
  /** Enable full-row editing mode */
@@ -90,6 +135,70 @@ export declare class CoarGridBuilder<TData = unknown> {
90
135
  stopEditingWhenCellsLoseFocus(value?: boolean): this;
91
136
  /** Enable shift-key column resize mode */
92
137
  shiftResizeMode(value?: boolean): this;
138
+ /**
139
+ * Set the column auto-size strategy.
140
+ *
141
+ * @param strategy - `'fitGridWidth'` (columns fill the grid) or `'fitCellContents'` (columns fit their content)
142
+ *
143
+ * @example
144
+ * ```ts
145
+ * builder.autoSize('fitGridWidth')
146
+ * ```
147
+ */
148
+ autoSize(strategy: 'fitGridWidth' | 'fitCellContents'): this;
149
+ /**
150
+ * Enable managed row drag & drop reordering.
151
+ * AG Grid handles the visual reorder. Dragging is automatically
152
+ * disabled when a column sort is active.
153
+ *
154
+ * Use `onRowDragEnd()` to persist the new order.
155
+ * Use `.rowDrag()` on a column to show the drag handle.
156
+ *
157
+ * @example
158
+ * ```ts
159
+ * builder
160
+ * .columns([col => col.field('name').rowDrag().flex(1)])
161
+ * .rowDragManaged()
162
+ * .onRowDragEnd(() => {
163
+ * const newOrder = builder.getDisplayedRowData();
164
+ * store.updateOrder(newOrder);
165
+ * });
166
+ * ```
167
+ */
168
+ rowDragManaged(value?: boolean): this;
169
+ /**
170
+ * Handle row drag end event. Fires after a row has been dropped.
171
+ * Use `getDisplayedRowData()` to read the new order.
172
+ *
173
+ * For tree data, use `event.node.data` (dragged) and `event.overNode?.data` (target).
174
+ */
175
+ onRowDragEnd(handler: (event: RowDragEndEvent<TData>) => void): this;
176
+ /**
177
+ * Enable drop target highlighting during row drag.
178
+ * Shows visual feedback on the target row:
179
+ * - `.coar-drop-target` (blue outline) for valid targets
180
+ * - `.coar-drop-target--invalid` (red dashed) for invalid targets
181
+ *
182
+ * @param options - Pass `canDrop` to validate drop targets
183
+ *
184
+ * @example
185
+ * ```ts
186
+ * builder.rowDragHighlight({
187
+ * canDrop: (dragged, target) => dragged.id !== target.id,
188
+ * })
189
+ * ```
190
+ */
191
+ rowDragHighlight(options?: RowDragHighlightOptions<TData> | boolean): this;
192
+ /**
193
+ * Get tree node metadata (depth, hasChildren, isExpanded, childCount) for a given row ID.
194
+ * Requires `treeData()` to be configured. Returns `undefined` if not found.
195
+ */
196
+ getTreeMeta(rowId: string): TreeNodeMeta | undefined;
197
+ /**
198
+ * Get all row data in the current display order.
199
+ * Useful after drag & drop to persist the new order.
200
+ */
201
+ getDisplayedRowData(): TData[];
93
202
  /** Handle grid ready event */
94
203
  onGridReady(handler: (event: GridReadyEvent<TData>) => void): this;
95
204
  /** Handle row click */
@@ -118,6 +227,46 @@ export declare class CoarGridBuilder<TData = unknown> {
118
227
  externalFilter(doesFilterPass: (node: IRowNode<TData>) => boolean, isFilterPresent?: (params: IsExternalFilterPresentParams<TData>) => boolean): this;
119
228
  /** Re-trigger external filter when the given watch source changes */
120
229
  updateExternalFilterWhen(trigger: WatchSource): this;
230
+ /**
231
+ * Set the quick filter search text (reactive ref).
232
+ * When set, row data is filtered before being passed to AG Grid.
233
+ *
234
+ * @example
235
+ * ```ts
236
+ * const search = ref('');
237
+ * builder.quickFilterText(search);
238
+ * ```
239
+ */
240
+ quickFilterText(source: Ref<string>): this;
241
+ /**
242
+ * Set a custom quick filter function. Overrides the default per-column matching.
243
+ *
244
+ * @param fn - Receives the normalized (lowercased, trimmed) search value and row data.
245
+ * Return `true` to keep the row visible.
246
+ *
247
+ * @example
248
+ * ```ts
249
+ * builder.quickFilterFn((search, data) => {
250
+ * return data.name.toLowerCase().includes(search)
251
+ * || data.email.toLowerCase().includes(search);
252
+ * });
253
+ * ```
254
+ */
255
+ quickFilterFn(fn: (searchValue: string, data: TData) => boolean): this;
256
+ /**
257
+ * Enable search text highlighting using the CSS Custom Highlight API.
258
+ * Matching text in grid cells is highlighted without modifying the DOM.
259
+ *
260
+ * Requires `quickFilterText()` to be set.
261
+ *
262
+ * @example
263
+ * ```ts
264
+ * builder
265
+ * .quickFilterText(searchRef)
266
+ * .searchHighlight()
267
+ * ```
268
+ */
269
+ searchHighlight(value?: boolean): this;
121
270
  /** Enable row animation */
122
271
  animateRows(value?: boolean): this;
123
272
  /** Set any AG Grid option directly */
@@ -125,7 +274,7 @@ export declare class CoarGridBuilder<TData = unknown> {
125
274
  /** Merge additional grid options */
126
275
  options(options: GridOptions<TData>): this;
127
276
  /** @internal Called by the wrapper component to bind to AG Grid */
128
- _bind(api: GridApi<TData>): void;
277
+ _bind(api: GridApi<TData>, gridElement?: HTMLElement): void;
129
278
  /** @internal Called by the wrapper component on unmount */
130
279
  _destroy(): void;
131
280
  /** @internal Get viewport click handler (for wrapper component) */
@@ -1 +1 @@
1
- {"version":3,"file":"coar-grid-builder.d.ts","sourceRoot":"","sources":["../../src/builders/coar-grid-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coar-grid-builder.d.ts","sourceRoot":"","sources":["../../src/builders/coar-grid-builder.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,17 @@
1
1
  import { Component } from 'vue';
2
- import { ColDef, CellClassParams, CellStyle, ValueFormatterParams, ValueGetterFunc, CellDoubleClickedEvent, ITooltipParams, GetQuickFilterTextParams, RowDragCallback, IRowNode } from 'ag-grid-community';
2
+ import { ColDef, CellClassParams, CellStyle, ValueFormatterParams, ValueGetterFunc, CellDoubleClickedEvent, ITooltipParams, RowDragCallback, IRowNode } from 'ag-grid-community';
3
+ /**
4
+ * Key used to store custom quick filter configuration on ColDef.
5
+ * @internal
6
+ */
7
+ export declare const COAR_QUICK_FILTER_KEY = "__coarQuickFilter";
8
+ /**
9
+ * Key used to store i18n header key on ColDef.
10
+ * @internal
11
+ */
12
+ export declare const COAR_HEADER_I18N_KEY = "__coarHeaderI18nKey";
13
+ /** Quick filter configuration for a column */
14
+ export type QuickFilterConfig<TData = unknown, TValue = unknown> = false | true | ((value: TValue, data: TData) => string);
3
15
  /**
4
16
  * Fluent builder for AG Grid column definitions.
5
17
  *
@@ -17,8 +29,21 @@ export declare class CoarGridColumnBuilder<TData = unknown, TValue = unknown> {
17
29
  constructor(field?: keyof TData | string);
18
30
  /** Set the field name (data property) */
19
31
  field(value: keyof TData | string): this;
20
- /** Set the column header text */
21
- header(value: string): this;
32
+ /**
33
+ * Set the column header text.
34
+ *
35
+ * @param value - Display text (used as-is, or as fallback when i18nKey is set)
36
+ * @param i18nKey - Optional translation key. Requires `@cocoar/vue-localization`.
37
+ * If the package is not installed or the key has no translation,
38
+ * `value` is shown as fallback.
39
+ *
40
+ * @example
41
+ * ```ts
42
+ * col.header('Name') // static text
43
+ * col.header('Name', 'todo.grid.header.title') // i18n with fallback
44
+ * ```
45
+ */
46
+ header(value: string, i18nKey?: string): this;
22
47
  /** Set header tooltip */
23
48
  headerTooltip(value: string): this;
24
49
  /** Set fixed width in pixels */
@@ -63,8 +88,23 @@ export declare class CoarGridColumnBuilder<TData = unknown, TValue = unknown> {
63
88
  filter(value?: boolean | string): this;
64
89
  /** Set filter parameters */
65
90
  filterParams(params: Record<string, unknown>): this;
66
- /** Set quick filter text extractor or disable quick filtering for this column */
67
- quickFilter(fn: boolean | ((params: GetQuickFilterTextParams<TData, TValue>) => string)): this;
91
+ /**
92
+ * Configure how this column participates in quick filtering.
93
+ *
94
+ * - `true` — include column, use `String(value)` for matching (default behavior)
95
+ * - `false` — exclude column from quick filter
96
+ * - `(value, data) => string` — custom text extractor for matching
97
+ *
98
+ * @example
99
+ * ```ts
100
+ * // Exclude from search
101
+ * col.field('id').quickFilter(false)
102
+ *
103
+ * // Custom text for tags
104
+ * col.field('tags').quickFilter((tags, row) => tags.map(t => t.label).join(' '))
105
+ * ```
106
+ */
107
+ quickFilter(fn: boolean | ((value: TValue, data: TData) => string)): this;
68
108
  /** Set custom sort comparator */
69
109
  comparator(fn: (valueA: TValue, valueB: TValue, nodeA: IRowNode<TData>, nodeB: IRowNode<TData>, isDescending: boolean) => number): this;
70
110
  /** Enable row drag on this column */
@@ -1 +1 @@
1
- {"version":3,"file":"coar-grid-column-builder.d.ts","sourceRoot":"","sources":["../../src/builders/coar-grid-column-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coar-grid-column-builder.d.ts","sourceRoot":"","sources":["../../src/builders/coar-grid-column-builder.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { CoarGridColumnBuilder } from './coar-grid-column-builder';
2
2
  import { TagCellRendererConfig } from '../cell-renderers/tag-cell-renderer.models';
3
3
  import { IconCellRendererConfig } from '../cell-renderers/icon-cell-renderer.models';
4
4
  import { DateCellRendererConfig } from '../cell-renderers/date-cell-renderer.models';
5
+ import { TreeCellRendererConfig } from '../cell-renderers/tree-cell-renderer.models';
5
6
  /**
6
7
  * Factory for creating typed column builders.
7
8
  * Provides convenient methods for common column types.
@@ -68,5 +69,20 @@ export declare class CoarGridColumnFactory<TData = unknown> {
68
69
  * @param config - Date rendering configuration (showSeconds, customFormat)
69
70
  */
70
71
  localDate(fieldName: keyof TData | string, config?: DateCellRendererConfig): CoarGridColumnBuilder<TData, Date | string>;
72
+ /**
73
+ * Create a tree column with expand/collapse toggle, indentation, and optional child count.
74
+ *
75
+ * Requires `builder.treeData()` and `builder.openRows()` to be configured.
76
+ *
77
+ * @param config - Tree cell renderer configuration
78
+ *
79
+ * @example
80
+ * ```ts
81
+ * .columns([
82
+ * col => col.tree('name').header('Name').flex(1),
83
+ * ])
84
+ * ```
85
+ */
86
+ tree<TValue = unknown>(fieldName: keyof TData | string, config?: TreeCellRendererConfig): CoarGridColumnBuilder<TData, TValue>;
71
87
  }
72
88
  //# sourceMappingURL=coar-grid-column-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"coar-grid-column-factory.d.ts","sourceRoot":"","sources":["../../src/builders/coar-grid-column-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAE1F;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,qBAAqB,CAAC,KAAK,GAAG,OAAO;IAChD;;OAEG;IACH,KAAK,CAAC,MAAM,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,GAAG,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;IAI9F;;;;OAIG;IACH,IAAI,CACF,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,GAAE,MAAM,GAAG,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAW,GAC/E,qBAAqB,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC;IAwC9C;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAAE,QAAQ,SAAI,GAAG,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;IAkB3F;;OAEG;IACH,QAAQ,CACN,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,QAAQ,SAAQ,GACf,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;IAkBvC;;OAEG;IACH,OAAO,CACL,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAO,GACxD,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC;IAgBxC;;;;;;OAMG;IACH,GAAG,CACD,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,CAAC,EAAE,qBAAqB,GAC7B,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAwBlD;;;;;;OAMG;IACH,IAAI,CACF,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,CAAC,EAAE,sBAAsB,GAC9B,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;IAMvC;;;;;;OAMG;IACH,SAAS,CACP,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,CAAC,EAAE,sBAAsB,GAC9B,qBAAqB,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC;CAM/C"}
1
+ {"version":3,"file":"coar-grid-column-factory.d.ts","sourceRoot":"","sources":["../../src/builders/coar-grid-column-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAKnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAE1F;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,qBAAqB,CAAC,KAAK,GAAG,OAAO;IAChD;;OAEG;IACH,KAAK,CAAC,MAAM,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,GAAG,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;IAI9F;;;;OAIG;IACH,IAAI,CACF,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,GAAE,MAAM,GAAG,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAW,GAC/E,qBAAqB,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC;IAwC9C;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAAE,QAAQ,SAAI,GAAG,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;IAkB3F;;OAEG;IACH,QAAQ,CACN,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,QAAQ,SAAQ,GACf,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;IAkBvC;;OAEG;IACH,OAAO,CACL,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAO,GACxD,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC;IAgBxC;;;;;;OAMG;IACH,GAAG,CACD,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,CAAC,EAAE,qBAAqB,GAC7B,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAwBlD;;;;;;OAMG;IACH,IAAI,CACF,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,CAAC,EAAE,sBAAsB,GAC9B,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;IAMvC;;;;;;OAMG;IACH,SAAS,CACP,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,CAAC,EAAE,sBAAsB,GAC9B,qBAAqB,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC;IAO9C;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,MAAM,GAAG,OAAO,EACnB,SAAS,EAAE,MAAM,KAAK,GAAG,MAAM,EAC/B,MAAM,CAAC,EAAE,sBAAsB,GAC9B,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC;CAKxC"}
@@ -1,4 +1,4 @@
1
- export { CoarGridBuilder, type ColumnDefinition, type RowSelectionOptions } from './coar-grid-builder';
2
- export { CoarGridColumnBuilder } from './coar-grid-column-builder';
1
+ export { CoarGridBuilder, type ColumnDefinition, type RowSelectionOptions, type RowDragHighlightOptions, type TreeDataConfig, type TreeNodeMeta, type CoarTreeContext } from './coar-grid-builder';
2
+ export { CoarGridColumnBuilder, COAR_QUICK_FILTER_KEY, COAR_HEADER_I18N_KEY, type QuickFilterConfig } from './coar-grid-column-builder';
3
3
  export { CoarGridColumnFactory } from './coar-grid-column-factory';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/builders/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACvG,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/builders/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,KAAK,uBAAuB,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACnM,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACxI,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"DateCellRenderer.vue.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/DateCellRenderer.vue"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;;AA4DF,wBAOG"}
1
+ {"version":3,"file":"DateCellRenderer.vue.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/DateCellRenderer.vue"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;;AA2DF,wBAOG"}
@@ -1 +1 @@
1
- {"version":3,"file":"IconCellRenderer.vue.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/IconCellRenderer.vue"],"names":[],"mappings":"AAsDA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAK7D,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;;AAkFF,wBAOG"}
1
+ {"version":3,"file":"IconCellRenderer.vue.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/IconCellRenderer.vue"],"names":[],"mappings":"AAsDA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAK7D,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;;AA+EF,wBAOG"}
@@ -1 +1 @@
1
- {"version":3,"file":"TagCellRenderer.vue.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/TagCellRenderer.vue"],"names":[],"mappings":"AA8FA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAW7D,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;;AAmHF,wBAOG"}
1
+ {"version":3,"file":"TagCellRenderer.vue.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/TagCellRenderer.vue"],"names":[],"mappings":"AA8FA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAW7D,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;;AAkHF,wBAOG"}
@@ -0,0 +1,7 @@
1
+ import { ICellRendererParams } from 'ag-grid-community';
2
+ type __VLS_Props = {
3
+ params: ICellRendererParams;
4
+ };
5
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
6
+ export default _default;
7
+ //# sourceMappingURL=TreeCellRenderer.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeCellRenderer.vue.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/TreeCellRenderer.vue"],"names":[],"mappings":"AA+GA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAK7D,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;;AAsHF,wBAOG"}
@@ -1,7 +1,9 @@
1
1
  export { default as TagCellRenderer } from './TagCellRenderer.vue';
2
2
  export { default as IconCellRenderer } from './IconCellRenderer.vue';
3
3
  export { default as DateCellRenderer } from './DateCellRenderer.vue';
4
+ export { default as TreeCellRenderer } from './TreeCellRenderer.vue';
4
5
  export type { TagCellRendererConfig } from './tag-cell-renderer.models';
5
6
  export type { IconCellRendererConfig } from './icon-cell-renderer.models';
6
7
  export type { DateCellRendererConfig } from './date-cell-renderer.models';
8
+ export type { TreeCellRendererConfig } from './tree-cell-renderer.models';
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAGrE,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAGrE,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,5 @@
1
+ export interface TreeCellRendererConfig {
2
+ /** Show child count badge next to the label (default: true) */
3
+ showChildCount?: boolean;
4
+ }
5
+ //# sourceMappingURL=tree-cell-renderer.models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-cell-renderer.models.d.ts","sourceRoot":"","sources":["../../src/cell-renderers/tree-cell-renderer.models.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,sBAAsB;IACrC,+DAA+D;IAC/D,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B"}
@@ -0,0 +1,7 @@
1
+ import { IHeaderParams } from 'ag-grid-community';
2
+ type __VLS_Props = {
3
+ params: IHeaderParams;
4
+ };
5
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
6
+ export default _default;
7
+ //# sourceMappingURL=CoarGridHeader.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoarGridHeader.vue.d.ts","sourceRoot":"","sources":["../../src/header/CoarGridHeader.vue"],"names":[],"mappings":"AAwFA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIvD,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;;AA0FF,wBAOG"}
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- .coar-tag-cell-renderer[data-v-599ccec7]{display:flex;align-items:center;gap:var(--coar-spacing-xs, 4px);flex-wrap:wrap;height:100%}.coar-icon-cell-renderer[data-v-033b7a87]{display:flex;align-items:center;justify-content:center;height:100%}.coar-icon-cell-renderer.clickable[data-v-033b7a87]{cursor:pointer}.coar-date-cell-renderer[data-v-6c20261d]{display:flex;align-items:center;height:100%}.ag-theme-cocoar{--ag-font-family: var(--coar-font-family-body, Poppins, sans-serif);--ag-font-size: var(--coar-font-size-xs, 14px);--ag-grid-size: 4px;--ag-cell-horizontal-padding: var(--coar-spacing-m, 16px);--ag-row-height: 40px;--ag-header-height: 40px;--ag-list-item-height: 36px;--ag-borders: solid 1px;--ag-border-radius: var(--coar-radius-m, 8px);--ag-wrapper-border-radius: var(--coar-radius-m, 8px);--ag-row-border-style: solid;--ag-row-border-width: 1px;--ag-background-color: var(--coar-background-neutral-primary, #ffffff);--ag-header-background-color: var(--coar-background-neutral-secondary, #f5f5f5);--ag-odd-row-background-color: var(--coar-background-neutral-primary, #ffffff);--ag-row-hover-color: var(--coar-background-neutral-tertiary, #e5e5e5);--ag-selected-row-background-color: var(--coar-background-accent-tertiary, #e6f0ff);--ag-modal-overlay-background-color: rgba(0, 0, 0, .5);--ag-border-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-row-border-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-header-column-separator-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-foreground-color: var(--coar-text-neutral-primary, #171717);--ag-header-foreground-color: var(--coar-text-neutral-secondary, #404040);--ag-secondary-foreground-color: var(--coar-text-neutral-tertiary, #525252);--ag-disabled-foreground-color: var(--coar-text-neutral-disabled, #a3a3a3);--ag-range-selection-border-color: var(--coar-border-accent-primary, #0066cc);--ag-range-selection-background-color: var(--coar-background-accent-tertiary, #e6f0ff);--ag-range-selection-highlight-color: var(--coar-background-accent-secondary, #cce0ff);--ag-input-focus-border-color: var(--coar-border-accent-primary, #0066cc);--ag-input-disabled-background-color: var(--coar-background-neutral-disabled, #d4d4d4);--ag-icon-font-color: var(--coar-icon-neutral-secondary, #404040);--ag-subheader-background-color: var(--coar-background-neutral-secondary, #f5f5f5);--ag-control-panel-background-color: var(--coar-background-neutral-primary, #ffffff);--ag-side-button-selected-background-color: var(--coar-background-accent-tertiary, #e6f0ff);--ag-menu-background-color: var(--coar-background-neutral-primary, #ffffff);--ag-menu-border-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-checkbox-checked-color: var(--coar-background-accent-primary, #0066cc);--ag-checkbox-unchecked-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-checkbox-indeterminate-color: var(--coar-background-accent-secondary, #cce0ff);--ag-chip-background-color: var(--coar-background-neutral-secondary, #f5f5f5);--ag-invalid-color: var(--coar-text-semantic-error-bold, #dc2626)}.dark-mode .ag-theme-cocoar,.ag-theme-cocoar.dark-mode{--ag-background-color: var(--coar-background-neutral-primary, #18181b);--ag-header-background-color: var(--coar-background-neutral-secondary, #27272a);--ag-odd-row-background-color: var(--coar-background-neutral-primary, #18181b);--ag-row-hover-color: var(--coar-background-neutral-tertiary, #3f3f46);--ag-selected-row-background-color: var(--coar-background-accent-tertiary, #1e3a5f);--ag-border-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-row-border-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-header-column-separator-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-foreground-color: var(--coar-text-neutral-primary, #fafafa);--ag-header-foreground-color: var(--coar-text-neutral-secondary, #e4e4e7);--ag-secondary-foreground-color: var(--coar-text-neutral-tertiary, #a1a1aa);--ag-disabled-foreground-color: var(--coar-text-neutral-disabled, #71717a);--ag-icon-font-color: var(--coar-icon-neutral-secondary, #e4e4e7);--ag-subheader-background-color: var(--coar-background-neutral-secondary, #27272a);--ag-control-panel-background-color: var(--coar-background-neutral-primary, #18181b);--ag-menu-background-color: var(--coar-background-neutral-primary, #18181b);--ag-menu-border-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-checkbox-unchecked-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-chip-background-color: var(--coar-background-neutral-secondary, #27272a);--ag-input-disabled-background-color: var(--coar-background-neutral-disabled, #3f3f46)}.ag-theme-cocoar .ag-row-focus{outline:none}.ag-theme-cocoar .ag-row-selected{background-color:var(--ag-selected-row-background-color)!important}.ag-theme-cocoar .ag-header{font-weight:600}.ag-theme-cocoar .ag-header-cell{padding-left:var(--coar-spacing-m, 16px);padding-right:var(--coar-spacing-m, 16px)}.ag-theme-cocoar .ag-cell{display:flex;align-items:center}.ag-theme-cocoar .ag-cell-focus{border-color:var(--ag-range-selection-border-color, var(--coar-border-accent-primary, #0066cc))!important}.ag-theme-cocoar .ag-row{transition:background-color .15s ease}.ag-theme-cocoar .ag-cell.clickable{cursor:pointer;color:var(--coar-text-accent-primary, #0066cc)}.ag-theme-cocoar .ag-cell.clickable:hover{text-decoration:underline}.ag-theme-cocoar .ag-cell.text-right{justify-content:flex-end;text-align:right}.ag-theme-cocoar .ag-cell.text-center{justify-content:center;text-align:center}.ag-theme-cocoar .ag-overlay-loading-wrapper{background-color:var(--ag-background-color)}.ag-theme-cocoar .ag-overlay-no-rows-wrapper{color:var(--ag-secondary-foreground-color)}
1
+ .coar-tag-cell-renderer{display:flex;align-items:center;gap:var(--coar-spacing-xs, 4px);flex-wrap:wrap;height:100%}.coar-icon-cell-renderer{display:flex;align-items:center;justify-content:center;height:100%}.coar-icon-cell-renderer.clickable{cursor:pointer}.coar-date-cell-renderer{display:flex;align-items:center;height:100%}.coar-tree-cell{display:flex;align-items:center;height:100%;gap:2px;overflow:hidden}.coar-tree-cell__toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;cursor:pointer;border-radius:4px;transition:background-color .1s}.coar-tree-cell__toggle:hover{background-color:var(--coar-surface-neutral-hover, rgba(0, 0, 0, .06))}.coar-tree-cell__spacer{width:20px;flex-shrink:0}.coar-tree-cell__content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coar-tree-cell__count{color:var(--coar-text-neutral-tertiary, #888);font-size:.85em;flex-shrink:0;margin-left:4px}.coar-grid-header{display:flex;align-items:center;width:100%;height:100%;gap:4px;overflow:hidden}.coar-grid-header--sortable{cursor:pointer}.coar-grid-header__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coar-grid-header__spacer{flex:1}.coar-grid-header__sort-icon{font-size:.65em;opacity:.6;flex-shrink:0}.ag-theme-cocoar{--ag-font-family: var(--coar-font-family-body, Poppins, sans-serif);--ag-font-size: var(--coar-font-size-xs, 14px);--ag-grid-size: 4px;--ag-cell-horizontal-padding: var(--coar-spacing-m, 16px);--ag-row-height: 40px;--ag-header-height: 40px;--ag-list-item-height: 36px;--ag-borders: solid 1px;--ag-border-radius: var(--coar-radius-m, 8px);--ag-wrapper-border-radius: var(--coar-radius-m, 8px);--ag-row-border-style: solid;--ag-row-border-width: 1px;--ag-background-color: var(--coar-background-neutral-primary, #ffffff);--ag-header-background-color: var(--coar-background-neutral-secondary, #f5f5f5);--ag-odd-row-background-color: var(--coar-background-neutral-primary, #ffffff);--ag-row-hover-color: var(--coar-background-neutral-tertiary, #e5e5e5);--ag-selected-row-background-color: var(--coar-background-accent-tertiary, #e6f0ff);--ag-modal-overlay-background-color: rgba(0, 0, 0, .5);--ag-border-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-row-border-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-header-column-separator-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-foreground-color: var(--coar-text-neutral-primary, #171717);--ag-header-foreground-color: var(--coar-text-neutral-secondary, #404040);--ag-secondary-foreground-color: var(--coar-text-neutral-tertiary, #525252);--ag-disabled-foreground-color: var(--coar-text-neutral-disabled, #a3a3a3);--ag-range-selection-border-color: var(--coar-border-accent-primary, #0066cc);--ag-range-selection-background-color: var(--coar-background-accent-tertiary, #e6f0ff);--ag-range-selection-highlight-color: var(--coar-background-accent-secondary, #cce0ff);--ag-input-focus-border-color: var(--coar-border-accent-primary, #0066cc);--ag-input-disabled-background-color: var(--coar-background-neutral-disabled, #d4d4d4);--ag-icon-font-color: var(--coar-icon-neutral-secondary, #404040);--ag-subheader-background-color: var(--coar-background-neutral-secondary, #f5f5f5);--ag-control-panel-background-color: var(--coar-background-neutral-primary, #ffffff);--ag-side-button-selected-background-color: var(--coar-background-accent-tertiary, #e6f0ff);--ag-menu-background-color: var(--coar-background-neutral-primary, #ffffff);--ag-menu-border-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-checkbox-checked-color: var(--coar-background-accent-primary, #0066cc);--ag-checkbox-unchecked-color: var(--coar-border-neutral-tertiary, #e5e5e5);--ag-checkbox-indeterminate-color: var(--coar-background-accent-secondary, #cce0ff);--ag-chip-background-color: var(--coar-background-neutral-secondary, #f5f5f5);--ag-invalid-color: var(--coar-text-semantic-error-bold, #dc2626)}.dark-mode .ag-theme-cocoar,.ag-theme-cocoar.dark-mode{--ag-background-color: var(--coar-background-neutral-primary, #18181b);--ag-header-background-color: var(--coar-background-neutral-secondary, #27272a);--ag-odd-row-background-color: var(--coar-background-neutral-primary, #18181b);--ag-row-hover-color: var(--coar-background-neutral-tertiary, #3f3f46);--ag-selected-row-background-color: var(--coar-background-accent-tertiary, #1e3a5f);--ag-border-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-row-border-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-header-column-separator-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-foreground-color: var(--coar-text-neutral-primary, #fafafa);--ag-header-foreground-color: var(--coar-text-neutral-secondary, #e4e4e7);--ag-secondary-foreground-color: var(--coar-text-neutral-tertiary, #a1a1aa);--ag-disabled-foreground-color: var(--coar-text-neutral-disabled, #71717a);--ag-icon-font-color: var(--coar-icon-neutral-secondary, #e4e4e7);--ag-subheader-background-color: var(--coar-background-neutral-secondary, #27272a);--ag-control-panel-background-color: var(--coar-background-neutral-primary, #18181b);--ag-menu-background-color: var(--coar-background-neutral-primary, #18181b);--ag-menu-border-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-checkbox-unchecked-color: var(--coar-border-neutral-tertiary, #3f3f46);--ag-chip-background-color: var(--coar-background-neutral-secondary, #27272a);--ag-input-disabled-background-color: var(--coar-background-neutral-disabled, #3f3f46)}.ag-theme-cocoar .ag-row-focus{outline:none}.ag-theme-cocoar .ag-row-selected{background-color:var(--ag-selected-row-background-color)!important}.ag-theme-cocoar .ag-header{font-weight:600}.ag-theme-cocoar .ag-header-cell{padding-left:var(--coar-spacing-m, 16px);padding-right:var(--coar-spacing-m, 16px)}.ag-theme-cocoar .ag-cell{display:flex;align-items:center}.ag-theme-cocoar .ag-cell-focus{border-color:var(--ag-range-selection-border-color, var(--coar-border-accent-primary, #0066cc))!important}.ag-theme-cocoar .ag-row{transition:background-color .15s ease}.ag-theme-cocoar .ag-cell.clickable{cursor:pointer;color:var(--coar-text-accent-primary, #0066cc)}.ag-theme-cocoar .ag-cell.clickable:hover{text-decoration:underline}.ag-theme-cocoar .ag-cell.text-right{justify-content:flex-end;text-align:right}.ag-theme-cocoar .ag-cell.text-center{justify-content:center;text-align:center}.ag-theme-cocoar .ag-overlay-loading-wrapper{background-color:var(--ag-background-color)}.ag-theme-cocoar .ag-overlay-no-rows-wrapper{color:var(--ag-secondary-foreground-color)}.ag-theme-cocoar .ag-row.coar-drop-target{background-color:var(--coar-surface-accent-subtle, rgba(0, 102, 204, .1))!important;outline:2px solid var(--coar-border-accent, #0066cc);outline-offset:-2px;border-radius:var(--coar-radius-s, 6px)}.ag-theme-cocoar.coar-drop-target-root{outline:2px dashed var(--coar-border-accent, #0066cc);outline-offset:-2px;border-radius:var(--coar-radius-s, 6px)}.ag-theme-cocoar .ag-row.coar-drop-target--invalid{background-color:var(--coar-surface-semantic-error-subtle, rgba(204, 0, 0, .06))!important;outline:2px dashed var(--coar-border-semantic-error, rgba(204, 0, 0, .4));outline-offset:-2px;border-radius:var(--coar-radius-s, 6px);cursor:not-allowed}::highlight(coar-search){text-decoration:underline;text-decoration-color:var(--coar-border-accent, #0066cc);text-decoration-thickness:2px;text-underline-offset:2px;background-color:transparent;color:inherit}.coar-data-grid-search[data-v-8436d7a5]{display:flex;align-items:center;gap:var(--coar-spacing-s, 8px)}.coar-data-grid-search__input[data-v-8436d7a5]{flex:1;min-width:0}.coar-data-grid-search__actions[data-v-8436d7a5]{display:flex;align-items:center;gap:var(--coar-spacing-xs, 4px);flex-shrink:0}.coar-data-grid-panel[data-v-5c0a49b6]{display:flex;flex-direction:column;flex:1 1 auto;height:100%;gap:var(--coar-spacing-s, 8px)}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,12 @@
1
- export { CoarGridBuilder, type ColumnDefinition } from './builders';
1
+ export { CoarGridBuilder, type ColumnDefinition, type TreeDataConfig, type TreeNodeMeta, type CoarTreeContext } from './builders';
2
2
  export { CoarGridColumnBuilder } from './builders';
3
3
  export { CoarGridColumnFactory } from './builders';
4
- export { TagCellRenderer, IconCellRenderer, DateCellRenderer } from './cell-renderers';
5
- export type { TagCellRendererConfig, IconCellRendererConfig, DateCellRendererConfig } from './cell-renderers';
4
+ export { TagCellRenderer, IconCellRenderer, DateCellRenderer, TreeCellRenderer } from './cell-renderers';
5
+ export type { TagCellRendererConfig, IconCellRendererConfig, DateCellRendererConfig, TreeCellRendererConfig } from './cell-renderers';
6
6
  export { cocoarTheme, createCocoarTheme } from './theme';
7
- export type { ColDef, GridOptions, GridApi, GridReadyEvent, RowClickedEvent, RowDoubleClickedEvent, CellClickedEvent, CellDoubleClickedEvent, CellContextMenuEvent, GridSizeChangedEvent, ColumnState, GetRowIdFunc, RowClassParams, ValueFormatterParams, ValueGetterParams, CellClassParams, ICellRendererParams, IRowNode, PostSortRowsParams, GetQuickFilterTextParams, RowDragCallback, } from './models';
7
+ export type { ColDef, GridOptions, GridApi, GridReadyEvent, RowClickedEvent, RowDoubleClickedEvent, CellClickedEvent, CellDoubleClickedEvent, CellContextMenuEvent, GridSizeChangedEvent, ColumnState, GetRowIdFunc, RowClassParams, ValueFormatterParams, ValueGetterParams, CellClassParams, ICellRendererParams, IRowNode, PostSortRowsParams, GetQuickFilterTextParams, RowDragCallback, RowDragEndEvent, } from './models';
8
8
  export { default as CoarDataGrid } from './CoarDataGrid.vue';
9
+ export { default as CoarDataGridSearch } from './CoarDataGridSearch.vue';
10
+ export { default as CoarDataGridPanel } from './CoarDataGridPanel.vue';
9
11
  export { useDataGrid } from './useDataGrid';
10
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAGnD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvF,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAG9G,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAGzD,YAAY,EACV,MAAM,EACN,WAAW,EACX,OAAO,EACP,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,GAChB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAClI,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAGnD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzG,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAGtI,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAGzD,YAAY,EACV,MAAM,EACN,WAAW,EACX,OAAO,EACP,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,EACf,eAAe,GAChB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}