@papernote/ui 2.0.3 → 2.0.5

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.
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
- import { CardViewConfig } from './DataTableCardView';
1
+ import React from "react";
2
+ import { CardViewConfig } from "./DataTableCardView";
3
3
  /**
4
4
  * Base data item interface - all data items must have an id
5
5
  *
@@ -33,14 +33,32 @@ export interface DataTableColumn<T> {
33
33
  render?: (item: T, value: any) => React.ReactNode;
34
34
  /** Secondary line content (smaller, muted text below primary) */
35
35
  renderSecondary?: (item: T, value: any) => React.ReactNode;
36
+ /**
37
+ * Header text for the secondary line. Surfaced as the cell's native
38
+ * tooltip on hover so users can identify the field even though the
39
+ * column header above only labels the primary row.
40
+ */
41
+ secondaryHeader?: string;
42
+ /**
43
+ * Custom tooltip resolver for the primary cell. Receives item + value;
44
+ * return a plain string. Falls back to `String(value)` when omitted so
45
+ * users hovering a truncated cell can still read the full value.
46
+ */
47
+ tooltip?: (item: T, value: any) => string | undefined;
48
+ /**
49
+ * Custom tooltip resolver for the secondary cell. When omitted, the
50
+ * tooltip becomes `${secondaryHeader}: ${value}` so the otherwise-
51
+ * unlabeled second row stays self-describing.
52
+ */
53
+ secondaryTooltip?: (item: T, value: any) => string | undefined;
36
54
  /** Enable sorting for this column */
37
55
  sortable?: boolean;
38
56
  /** Additional CSS classes for column cells */
39
57
  className?: string;
40
58
  /** Horizontal text alignment in column */
41
- align?: 'left' | 'center' | 'right';
59
+ align?: "left" | "center" | "right";
42
60
  /** Vertical alignment of cell content - useful when rows have varying heights */
43
- verticalAlign?: 'top' | 'middle' | 'bottom';
61
+ verticalAlign?: "top" | "middle" | "bottom";
44
62
  }
45
63
  /**
46
64
  * Sort configuration
@@ -51,7 +69,7 @@ export interface SortConfig {
51
69
  /** Column key being sorted */
52
70
  key: string;
53
71
  /** Sort direction */
54
- direction: 'asc' | 'desc';
72
+ direction: "asc" | "desc";
55
73
  /** Optional display label for sort indicator */
56
74
  label?: string;
57
75
  }
@@ -67,7 +85,7 @@ export interface DataTableAction<T> {
67
85
  /** Click handler receives the row item */
68
86
  onClick: (item: T) => void;
69
87
  /** Button styling variant */
70
- variant?: 'primary' | 'secondary' | 'ghost' | 'danger';
88
+ variant?: "primary" | "secondary" | "ghost" | "danger";
71
89
  /** Optional conditional visibility */
72
90
  show?: (item: T) => boolean;
73
91
  /** Optional tooltip text */
@@ -76,7 +94,7 @@ export interface DataTableAction<T> {
76
94
  /**
77
95
  * Expansion mode types
78
96
  */
79
- export type ExpansionMode = 'edit' | 'details' | string;
97
+ export type ExpansionMode = "edit" | "details" | string;
80
98
  /**
81
99
  * Configuration for different expansion modes
82
100
  */
@@ -169,11 +187,11 @@ interface DataTableProps<T extends BaseDataItem = BaseDataItem> {
169
187
  /** Show the expand chevron column - hidden by default when using expandedRowConfig with double-click or menu */
170
188
  showExpandChevron?: boolean;
171
189
  /** Enable zebra striping - true for default, 'odd' or 'even' for specific rows */
172
- striped?: boolean | 'odd' | 'even';
190
+ striped?: boolean | "odd" | "even";
173
191
  /** Custom color for striped rows (Tailwind class like 'bg-primary-50' or 'bg-accent-50') */
174
192
  stripedColor?: string;
175
193
  /** Row density - affects padding and text size */
176
- density?: 'compact' | 'normal' | 'comfortable';
194
+ density?: "compact" | "normal" | "comfortable";
177
195
  /** Custom class name for rows - static string or function returning class per row */
178
196
  rowClassName?: string | ((item: T, index: number) => string);
179
197
  /** Conditional row highlighting - returns color class (e.g., 'bg-warning-50') */
@@ -227,11 +245,11 @@ interface DataTableProps<T extends BaseDataItem = BaseDataItem> {
227
245
  /** Show page size selector (default: true when paginated) */
228
246
  showPageSizeSelector?: boolean;
229
247
  /** Mobile view mode: 'auto' (detect viewport), 'card' (always cards), 'table' (always table) */
230
- mobileView?: 'auto' | 'card' | 'table';
248
+ mobileView?: "auto" | "card" | "table";
231
249
  /** Configuration for card view layout */
232
250
  cardConfig?: CardViewConfig<T>;
233
251
  /** Gap between cards in card view */
234
- cardGap?: 'sm' | 'md' | 'lg';
252
+ cardGap?: "sm" | "md" | "lg";
235
253
  /** Custom class name for cards */
236
254
  cardClassName?: string;
237
255
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DataTable.d.ts","sourceRoot":"","sources":["../../src/components/DataTable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataTable.d.ts","sourceRoot":"","sources":["../../src/components/DataTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAYxE,OAA0B,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGxE;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,0CAA0C;IAC1C,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,4DAA4D;IAC5D,GAAG,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;IACtB,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,KAAK,CAAC,SAAS,CAAC;IAClD,iEAAiE;IACjE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,KAAK,CAAC,SAAS,CAAC;IAC3D;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,MAAM,GAAG,SAAS,CAAC;IAC/D,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,iFAAiF;IACjF,aAAa,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;CAC7C;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,qBAAqB;IACrB,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;IAC1B,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;IAClD,0CAA0C;IAC1C,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;IACvD,sCAAsC;IACtC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC;IAC5B,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,+CAA+C;IAC/C,IAAI,CAAC,EAAE;QACL,MAAM,EAAE,CACN,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EACrC,QAAQ,EAAE,MAAM,IAAI,KACjB,KAAK,CAAC,SAAS,CAAC;QACrB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;KACrC,CAAC;IAEF,kDAAkD;IAClD,OAAO,CAAC,EAAE;QACR,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;QACrC,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;KACrC,CAAC;IAEF,mDAAmD;IACnD,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,EAAE,CACN,UAAU,EAAE,CAAC,EACb,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,EACvC,QAAQ,EAAE,MAAM,IAAI,KACjB,KAAK,CAAC,SAAS,CAAC;QACrB,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC,CAAC;IAEH,6DAA6D;IAC7D,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC;QAChE,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC,CAAC;CACJ;AAUD;;;;;GAKG;AACH,UAAU,cAAc,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IAC5D,qCAAqC;IACrC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,yBAAyB;IACzB,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,4BAA4B;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,iCAAiC;IACjC,WAAW,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAChC,uDAAuD;IACvD,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,+DAA+D;IAC/D,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/B,2FAA2F;IAC3F,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,sCAAsC;IACtC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC/B,6CAA6C;IAC7C,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IACrC,2CAA2C;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iDAAiD;IACjD,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,gCAAgC;IAChC,WAAW,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC/C,mEAAmE;IACnE,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC;IAClC,oEAAoE;IACpE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,wFAAwF;IACxF,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IAChD,gEAAgE;IAChE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACzC,gHAAgH;IAChH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAG5B,kFAAkF;IAClF,OAAO,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;IACnC,4FAA4F;IAC5F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC/C,qFAAqF;IACrF,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IAC7D,iFAAiF;IACjF,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IAC/C,sCAAsC;IACtC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACnC,kEAAkE;IAClE,eAAe,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACtC,iEAAiE;IACjE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACzC,6BAA6B;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yCAAyC;IACzC,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5D,+BAA+B;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yCAAyC;IACzC,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC/C,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,4EAA4E;IAC5E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,+DAA+D;IAC/D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,sCAAsC;IACtC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,6DAA6D;IAC7D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAG/B,gGAAgG;IAChG,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACvC,yCAAyC;IACzC,UAAU,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC/B,qCAAqC;IACrC,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC7B,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAgMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,EACvE,IAAI,EACJ,OAAO,EACP,OAAe,EACf,KAAY,EACZ,YAAkC,EAClC,WAAe,EACf,SAAc,EACd,YAAY,EACZ,WAAkB,EAClB,MAAM,EACN,QAAQ,EACR,OAAY,EACZ,iBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,UAAkB,EAClB,YAAY,EAAE,oBAAoB,EAClC,WAAW,EACX,YAAY,EACZ,UAAkB,EAClB,YAAY,EAAE,oBAAoB,EAClC,iBAAiB,EACjB,iBAAiB,EACjB,iBAAyB,EAEzB,OAAe,EACf,YAAY,EACZ,OAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,eAAoB,EACpB,iBAAwB,EACxB,QAAgB,EAChB,WAAgC,EAChC,YAAoB,EACpB,aAAkB,EAClB,eAAoB,EACpB,gBAAgB,EAAE,sBAAsB,EACxC,SAAiB,EACjB,cAAc,EACd,WAAmB,EACnB,eAAe,EACf,WAAmB,EACnB,aAAuB,EACvB,gBAAqB,EAErB,SAAiB,EACjB,WAAe,EACf,QAAa,EACb,UAAU,EACV,YAAY,EACZ,eAAmC,EACnC,gBAAgB,EAChB,oBAA2B,EAE3B,UAAmB,EACnB,UAAU,EACV,OAAc,EACd,aAAa,GACd,EAAE,cAAc,CAAC,CAAC,CAAC,2CAmnDnB"}
@@ -1,7 +1,7 @@
1
1
  export interface FilterConfig {
2
2
  key: string;
3
3
  label: string;
4
- type: 'text' | 'search' | 'select' | 'date' | 'number' | 'boolean' | 'dateRange' | 'toggle' | 'multiSelect';
4
+ type: "text" | "search" | "select" | "date" | "number" | "boolean" | "dateRange" | "toggle" | "switch" | "multiSelect";
5
5
  placeholder?: string;
6
6
  options?: Array<{
7
7
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBar.d.ts","sourceRoot":"","sources":["../../src/components/FilterBar.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC5G,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAc,EACd,OAAO,EACP,eAAuB,GACxB,EAAE,cAAc,kDA0PhB"}
1
+ {"version":3,"file":"FilterBar.d.ts","sourceRoot":"","sources":["../../src/components/FilterBar.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EACA,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,QAAQ,GACR,SAAS,GACT,WAAW,GACX,QAAQ,GACR,QAAQ,GACR,aAAa,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAc,EACd,OAAO,EACP,eAAuB,GACxB,EAAE,cAAc,kDA6ThB"}
package/dist/index.d.ts CHANGED
@@ -1065,7 +1065,7 @@ declare function FormControl({ label, required, error, helperText, children, cla
1065
1065
  interface FilterConfig {
1066
1066
  key: string;
1067
1067
  label: string;
1068
- type: 'text' | 'search' | 'select' | 'date' | 'number' | 'boolean' | 'dateRange' | 'toggle' | 'multiSelect';
1068
+ type: "text" | "search" | "select" | "date" | "number" | "boolean" | "dateRange" | "toggle" | "switch" | "multiSelect";
1069
1069
  placeholder?: string;
1070
1070
  options?: Array<{
1071
1071
  label: string;
@@ -5958,14 +5958,32 @@ interface DataTableColumn<T> {
5958
5958
  render?: (item: T, value: any) => React__default.ReactNode;
5959
5959
  /** Secondary line content (smaller, muted text below primary) */
5960
5960
  renderSecondary?: (item: T, value: any) => React__default.ReactNode;
5961
+ /**
5962
+ * Header text for the secondary line. Surfaced as the cell's native
5963
+ * tooltip on hover so users can identify the field even though the
5964
+ * column header above only labels the primary row.
5965
+ */
5966
+ secondaryHeader?: string;
5967
+ /**
5968
+ * Custom tooltip resolver for the primary cell. Receives item + value;
5969
+ * return a plain string. Falls back to `String(value)` when omitted so
5970
+ * users hovering a truncated cell can still read the full value.
5971
+ */
5972
+ tooltip?: (item: T, value: any) => string | undefined;
5973
+ /**
5974
+ * Custom tooltip resolver for the secondary cell. When omitted, the
5975
+ * tooltip becomes `${secondaryHeader}: ${value}` so the otherwise-
5976
+ * unlabeled second row stays self-describing.
5977
+ */
5978
+ secondaryTooltip?: (item: T, value: any) => string | undefined;
5961
5979
  /** Enable sorting for this column */
5962
5980
  sortable?: boolean;
5963
5981
  /** Additional CSS classes for column cells */
5964
5982
  className?: string;
5965
5983
  /** Horizontal text alignment in column */
5966
- align?: 'left' | 'center' | 'right';
5984
+ align?: "left" | "center" | "right";
5967
5985
  /** Vertical alignment of cell content - useful when rows have varying heights */
5968
- verticalAlign?: 'top' | 'middle' | 'bottom';
5986
+ verticalAlign?: "top" | "middle" | "bottom";
5969
5987
  }
5970
5988
  /**
5971
5989
  * Sort configuration
@@ -5976,7 +5994,7 @@ interface SortConfig$1 {
5976
5994
  /** Column key being sorted */
5977
5995
  key: string;
5978
5996
  /** Sort direction */
5979
- direction: 'asc' | 'desc';
5997
+ direction: "asc" | "desc";
5980
5998
  /** Optional display label for sort indicator */
5981
5999
  label?: string;
5982
6000
  }
@@ -5992,7 +6010,7 @@ interface DataTableAction<T> {
5992
6010
  /** Click handler receives the row item */
5993
6011
  onClick: (item: T) => void;
5994
6012
  /** Button styling variant */
5995
- variant?: 'primary' | 'secondary' | 'ghost' | 'danger';
6013
+ variant?: "primary" | "secondary" | "ghost" | "danger";
5996
6014
  /** Optional conditional visibility */
5997
6015
  show?: (item: T) => boolean;
5998
6016
  /** Optional tooltip text */
@@ -6001,7 +6019,7 @@ interface DataTableAction<T> {
6001
6019
  /**
6002
6020
  * Expansion mode types
6003
6021
  */
6004
- type ExpansionMode = 'edit' | 'details' | string;
6022
+ type ExpansionMode = "edit" | "details" | string;
6005
6023
  /**
6006
6024
  * Configuration for different expansion modes
6007
6025
  */
@@ -6094,11 +6112,11 @@ interface DataTableProps<T extends BaseDataItem$1 = BaseDataItem$1> {
6094
6112
  /** Show the expand chevron column - hidden by default when using expandedRowConfig with double-click or menu */
6095
6113
  showExpandChevron?: boolean;
6096
6114
  /** Enable zebra striping - true for default, 'odd' or 'even' for specific rows */
6097
- striped?: boolean | 'odd' | 'even';
6115
+ striped?: boolean | "odd" | "even";
6098
6116
  /** Custom color for striped rows (Tailwind class like 'bg-primary-50' or 'bg-accent-50') */
6099
6117
  stripedColor?: string;
6100
6118
  /** Row density - affects padding and text size */
6101
- density?: 'compact' | 'normal' | 'comfortable';
6119
+ density?: "compact" | "normal" | "comfortable";
6102
6120
  /** Custom class name for rows - static string or function returning class per row */
6103
6121
  rowClassName?: string | ((item: T, index: number) => string);
6104
6122
  /** Conditional row highlighting - returns color class (e.g., 'bg-warning-50') */
@@ -6152,11 +6170,11 @@ interface DataTableProps<T extends BaseDataItem$1 = BaseDataItem$1> {
6152
6170
  /** Show page size selector (default: true when paginated) */
6153
6171
  showPageSizeSelector?: boolean;
6154
6172
  /** Mobile view mode: 'auto' (detect viewport), 'card' (always cards), 'table' (always table) */
6155
- mobileView?: 'auto' | 'card' | 'table';
6173
+ mobileView?: "auto" | "card" | "table";
6156
6174
  /** Configuration for card view layout */
6157
6175
  cardConfig?: CardViewConfig<T>;
6158
6176
  /** Gap between cards in card view */
6159
- cardGap?: 'sm' | 'md' | 'lg';
6177
+ cardGap?: "sm" | "md" | "lg";
6160
6178
  /** Custom class name for cards */
6161
6179
  cardClassName?: string;
6162
6180
  }