next-data-kit 7.3.0 → 7.4.1

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/README.md CHANGED
@@ -169,6 +169,53 @@ export function UsersTable() {
169
169
  }
170
170
  ```
171
171
 
172
+ #### Pagination Modes
173
+
174
+ Both `DataKit` and `DataKitTable` support two pagination modes:
175
+
176
+ ```tsx
177
+ // NUMBER (default) - Full numbered pagination with mobile responsiveness
178
+ <DataKitTable
179
+ action={fetchUsers}
180
+ pagination="NUMBER" // Default - shows page numbers
181
+ table={columns}
182
+ />
183
+
184
+ // SIMPLE - Basic prev/next buttons only
185
+ <DataKitTable
186
+ action={fetchUsers}
187
+ pagination="SIMPLE"
188
+ table={columns}
189
+ />
190
+ ```
191
+
192
+ **NUMBER mode features:**
193
+
194
+ - Desktop: Shows Previous, page numbers (1, 2, ... 10), Next
195
+ - Mobile: Shows prev icon, current page number, next icon
196
+ - Automatically adds ellipsis for skipped pages
197
+ - Fully responsive with Tailwind CSS
198
+
199
+ **Dynamic Limit Options:**
200
+
201
+ When you set a custom limit, it's automatically added to the dropdown:
202
+
203
+ ```tsx
204
+ <DataKitTable
205
+ action={fetchUsers}
206
+ limit={{ default: 15 }} // 15 will appear in dropdown alongside 10, 25, 50, 100
207
+ table={columns}
208
+ />
209
+
210
+ // Works with any custom value
211
+ <DataKit
212
+ action={fetchUsers}
213
+ limit={{ default: 30 }} // Dropdown will show: 10, 25, 30, 50, 100
214
+ >
215
+ {dataKit => /* ... */}
216
+ </DataKit>
217
+ ```
218
+
172
219
  ### Client-side (DataKit Component - Custom Layout)
173
220
 
174
221
  Use `DataKit` for grids, cards, or any custom layout. It provides toolbar/pagination but lets you render content:
@@ -406,29 +453,33 @@ setFilter('priceRange', 100);
406
453
 
407
454
  Full-featured table component with built-in UI.
408
455
 
409
- | Prop | Type | Description |
410
- | ----------------- | ---------------------------- | -------------------------- |
411
- | `action` | `(input) => Promise<Result>` | Server action function |
412
- | `table` | `Column[]` | Column definitions |
413
- | `filters` | `FilterItem[]` | Filter configurations |
414
- | `selectable` | `{ enabled, actions? }` | Selection & bulk actions |
415
- | `limit` | `{ default: number }` | Items per page |
416
- | `controller` | `Ref<Controller>` | External control ref |
417
- | `className` | `string` | Container class |
418
- | `bordered` | `boolean \| 'rounded'` | Border style |
419
- | `refetchInterval` | `number` | Auto-refresh interval (ms) |
456
+ | Prop | Type | Description |
457
+ | ----------------- | ---------------------------- | --------------------------------------- |
458
+ | `action` | `(input) => Promise<Result>` | Server action function |
459
+ | `table` | `Column[]` | Column definitions |
460
+ | `filters` | `FilterItem[]` | Filter configurations |
461
+ | `selectable` | `{ enabled, actions? }` | Selection & bulk actions |
462
+ | `limit` | `{ default: number }` | Items per page (auto-added to dropdown) |
463
+ | `defaultSort` | `TSortEntry[]` | Initial sort configuration |
464
+ | `pagination` | `'SIMPLE' \| 'NUMBER'` | Pagination mode (default: `'NUMBER'`) |
465
+ | `controller` | `Ref<Controller>` | External control ref |
466
+ | `className` | `string` | Container class |
467
+ | `bordered` | `boolean \| 'rounded'` | Border style |
468
+ | `refetchInterval` | `number` | Auto-refresh interval (ms) |
420
469
 
421
470
  #### `<DataKit>` Component
422
471
 
423
472
  Headless component for custom layouts (grids, cards, etc).
424
473
 
425
- | Prop | Type | Description |
426
- | ---------- | ---------------------------- | --------------------------------- |
427
- | `action` | `(input) => Promise<Result>` | Server action function |
428
- | `filters` | `FilterItem[]` | Filter configurations |
429
- | `limit` | `{ default: number }` | Items per page |
430
- | `manual` | `boolean` | Skip loading/empty state handling |
431
- | `children` | `(dataKit) => ReactNode` | Render function |
474
+ | Prop | Type | Description |
475
+ | ------------- | ---------------------------- | --------------------------------------- |
476
+ | `action` | `(input) => Promise<Result>` | Server action function |
477
+ | `filters` | `FilterItem[]` | Filter configurations |
478
+ | `limit` | `{ default: number }` | Items per page (auto-added to dropdown) |
479
+ | `defaultSort` | `TSortEntry[]` | Initial sort configuration |
480
+ | `pagination` | `'SIMPLE' \| 'NUMBER'` | Pagination mode (default: `'NUMBER'`) |
481
+ | `manual` | `boolean` | Skip loading/empty state handling |
482
+ | `children` | `(dataKit) => ReactNode` | Render function |
432
483
 
433
484
  #### `useDataKit(options)`
434
485
 
@@ -42,9 +42,18 @@ type TMongoFilterQuery<T> = {
42
42
  /**
43
43
  * Minimal Mongoose Model interface for the adapter.
44
44
  */
45
- type TMongoModel<_TRawDocType = unknown, _TQueryHelpers = object> = {
46
- countDocuments(filter?: any): Promise<number>;
47
- find(filter?: any, projection?: any, options?: any): any;
45
+ type TMongoModel<T = unknown> = {
46
+ countDocuments(filter?: TMongoFilterQuery<T>): Promise<number>;
47
+ find(filter?: TMongoFilterQuery<T>, projection?: unknown, options?: unknown): TMongoQuery<T>;
48
+ };
49
+ /**
50
+ * Mongoose Query interface.
51
+ */
52
+ type TMongoQuery<T> = {
53
+ sort(sort: Record<string, TSortOrder>): TMongoQuery<T>;
54
+ limit(limit: number): TMongoQuery<T>;
55
+ skip(skip: number): TMongoQuery<T>;
56
+ then<TResult1 = T[], TResult2 = never>(onfulfilled?: ((value: T[]) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>;
48
57
  };
49
58
 
50
59
  /**
@@ -42,9 +42,18 @@ type TMongoFilterQuery<T> = {
42
42
  /**
43
43
  * Minimal Mongoose Model interface for the adapter.
44
44
  */
45
- type TMongoModel<_TRawDocType = unknown, _TQueryHelpers = object> = {
46
- countDocuments(filter?: any): Promise<number>;
47
- find(filter?: any, projection?: any, options?: any): any;
45
+ type TMongoModel<T = unknown> = {
46
+ countDocuments(filter?: TMongoFilterQuery<T>): Promise<number>;
47
+ find(filter?: TMongoFilterQuery<T>, projection?: unknown, options?: unknown): TMongoQuery<T>;
48
+ };
49
+ /**
50
+ * Mongoose Query interface.
51
+ */
52
+ type TMongoQuery<T> = {
53
+ sort(sort: Record<string, TSortOrder>): TMongoQuery<T>;
54
+ limit(limit: number): TMongoQuery<T>;
55
+ skip(skip: number): TMongoQuery<T>;
56
+ then<TResult1 = T[], TResult2 = never>(onfulfilled?: ((value: T[]) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>;
48
57
  };
49
58
 
50
59
  /**
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { TableCell, TableHead } from './ui';
3
- import type { TDataKitInput, TDataKitResult, TDataKitComponentColumn, TDataKitFilterItem, TDataKitBulkAction, TDataKitController, TDataKitStateMode, TExtractDataKitItemType, TFilterConfig } from '../../types';
4
- export declare const DataKitTable: (<TAction extends (input: TDataKitInput<unknown>) => Promise<TDataKitResult<any>>, TRowState = unknown>(props: Readonly<{
3
+ import type { TDataKitInput, TDataKitResult, TDataKitComponentColumn, TDataKitFilterItem, TDataKitBulkAction, TDataKitController, TDataKitStateMode, TExtractDataKitItemType, TFilterConfig, TDataKitSelectableItem } from '../../types';
4
+ export declare const DataKitTable: (<TAction extends (input: TDataKitInput<unknown>) => Promise<TDataKitResult<TDataKitSelectableItem>>, TRowState = unknown>(props: Readonly<{
5
5
  action: TAction;
6
6
  query?: Record<string, unknown>;
7
7
  filterConfig?: TFilterConfig;
@@ -21,6 +21,7 @@ export declare const DataKitTable: (<TAction extends (input: TDataKitInput<unkno
21
21
  bordered?: boolean | "rounded";
22
22
  refetchInterval?: number;
23
23
  state?: TDataKitStateMode;
24
+ pagination?: "SIMPLE" | "NUMBER";
24
25
  controller?: React.MutableRefObject<TDataKitController<TExtractDataKitItemType<TAction>> | null>;
25
26
  }>) => import("react/jsx-runtime").JSX.Element) & {
26
27
  Cell: typeof TableCell;
@@ -1 +1 @@
1
- {"version":3,"file":"data-kit-table.d.ts","sourceRoot":"","sources":["../../../src/client/components/data-kit-table.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,OAAO,EAkBF,SAAS,EACT,SAAS,EAGb,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,EACP,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACjB,MAAM,aAAa,CAAC;AAyXrB,eAAO,MAAM,YAAY,IArXpB,OAAO,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAC/E,SAAS,mBACL,QAAQ,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,KAAK,EAAE,uBAAuB,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;IAC9E,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,UAAU,CAAC,EAAE;QACR,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KACnF,CAAC;IACF,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,UAAU,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;CACrG,CAAC;;;CAmWA,CAAC"}
1
+ {"version":3,"file":"data-kit-table.d.ts","sourceRoot":"","sources":["../../../src/client/components/data-kit-table.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,OAAO,EAyBF,SAAS,EACT,SAAS,EAGb,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,EACP,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,sBAAsB,EAC1B,MAAM,aAAa,CAAC;AA0brB,eAAO,MAAM,YAAY,IAtbpB,OAAO,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAClG,SAAS,mBACL,QAAQ,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,KAAK,EAAE,uBAAuB,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;IAC9E,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,UAAU,CAAC,EAAE;QACR,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KACnF,CAAC;IACF,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,UAAU,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;CACrG,CAAC;;;CAmaA,CAAC"}
@@ -5,10 +5,10 @@ import { ArrowDown, ArrowUp, ChevronLeft, ChevronRight, Filter, Loader2, MoreHor
5
5
  import { useDataKit } from '../hooks/useDataKit';
6
6
  import { useSelectionWithTotal } from '../hooks/useSelection';
7
7
  import { usePagination } from '../hooks/usePagination';
8
- import { Button, Checkbox, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, Popover, PopoverContent, PopoverTrigger, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Switch, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from './ui';
8
+ import { Button, Checkbox, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverContent, PopoverTrigger, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Switch, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from './ui';
9
9
  const DataKitRoot = (props) => {
10
10
  // ** Deconstruct Props
11
- const { action, query, filterConfig, table: columns, filters = [], selectable, initialState, limit: limitConfig, className, autoFetch = true, debounce = 300, bordered, refetchInterval, state: stateMode = 'memory', controller, } = props;
11
+ const { action, query, filterConfig, table: columns, filters = [], selectable, initialState, limit: limitConfig, className, autoFetch = true, debounce = 300, bordered, refetchInterval, state: stateMode = 'memory', pagination: paginationType = 'NUMBER', controller, } = props;
12
12
  // ** Ref
13
13
  const tableRef = useRef(null);
14
14
  const intervalRef = useRef(null);
@@ -47,6 +47,14 @@ const DataKitRoot = (props) => {
47
47
  // ** Variable
48
48
  const selectedCount = selection.selectedIds.size;
49
49
  const colSpan = columns.length + (selectable?.enabled ? 1 : 0);
50
+ const limitOptions = React.useMemo(() => {
51
+ const standardOptions = [10, 25, 50, 100];
52
+ const currentLimit = dataKit.limit;
53
+ if (!standardOptions.includes(currentLimit)) {
54
+ return [...standardOptions, currentLimit].sort((a, b) => a - b);
55
+ }
56
+ return standardOptions;
57
+ }, [dataKit.limit]);
50
58
  // ** Handlers
51
59
  const handleSort = useCallback((path) => {
52
60
  const currentSort = dataKit.sorts.find((s) => s.path === path);
@@ -115,14 +123,14 @@ const DataKitRoot = (props) => {
115
123
  }, [refetchInterval, isVisible, dataKit.actions]);
116
124
  useEffect(() => { selection.deselectAll(); }, [dataKit.items.length]);
117
125
  // ** Render
118
- return (_jsxs("div", { ref: tableRef, className: `space-y-3 ${className ?? ''}`, children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("div", { className: "flex items-center gap-2", children: filters.length > 0 && (_jsxs(Popover, { open: isFilterOpen, onOpenChange: setIsFilterOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { variant: "outline", size: "sm", children: [_jsx(Filter, { className: "mr-1.5 size-4" }), "Filters"] }) }), _jsxs(PopoverContent, { align: "start", className: "w-80", container: overlayContainer, children: [_jsx("div", { className: "grid gap-3", children: filters.map((f) => (_jsxs("div", { className: "grid gap-1.5", children: [_jsx("label", { className: "text-sm font-medium", children: f.label }), f.type === 'TEXT' && (_jsx("input", { type: "text", className: "h-9 w-full rounded-md border bg-transparent px-3 text-sm outline-none focus:ring-2 focus:ring-ring", placeholder: f.placeholder, value: dataKit.filter[f.id] ?? '', onChange: (e) => dataKit.actions.setFilter(f.id, e.target.value) })), f.type === 'SELECT' && (_jsxs(Select, { value: String(dataKit.filter[f.id] || '__all__'), onValueChange: (v) => dataKit.actions.setFilter(f.id, v === '__all__' ? '' : v), children: [_jsx(SelectTrigger, { children: _jsx(SelectValue, {}) }), _jsxs(SelectContent, { container: overlayContainer, children: [_jsx(SelectItem, { value: "__all__", children: "All" }), f.dataset?.map((d) => (_jsx(SelectItem, { value: d.id, children: d.label }, d.id)))] })] })), f.type === 'BOOLEAN' && (_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: f.placeholder ?? 'Enable' }), _jsx(Switch, { checked: Boolean(dataKit.filter[f.id]), onCheckedChange: (c) => dataKit.actions.setFilter(f.id, c) })] }))] }, f.id))) }), _jsxs("div", { className: "mt-4 flex justify-between border-t pt-3", children: [_jsx(Button, { variant: "outline", size: "sm", onClick: handleResetFilters, children: "Reset" }), _jsx(Button, { size: "sm", onClick: () => setIsFilterOpen(false), children: "Done" })] })] })] })) }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsxs("span", { className: "mr-2 text-sm text-muted-foreground", children: [dataKit.items.length, " of ", dataKit.total] }), _jsxs(Select, { value: String(dataKit.limit), onValueChange: (v) => dataKit.actions.setLimit(Number(v)), disabled: dataKit.state.isLoading, children: [_jsx(SelectTrigger, { className: "w-16", children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { container: overlayContainer, children: [10, 25, 50, 100].map((v) => (_jsx(SelectItem, { value: String(v), children: v }, v))) })] })] })] }), _jsx("div", { className: `overflow-hidden border border-gray-200 dark:border-gray-800 ${bordered === 'rounded' ? 'rounded-lg' : bordered ? '' : 'rounded-lg'}`, children: _jsxs(Table, { children: [_jsx(TableHeader, { children: _jsxs(TableRow, { children: [selectable?.enabled && (_jsx(TableHead, { className: "w-12", children: _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Checkbox, { checked: selection.isIndeterminate ? 'indeterminate' : selection.isAllSelected, onCheckedChange: () => selection.toggleAll() }), selectable.actions && Object.keys(selectable.actions).length > 0 && (_jsxs(DropdownMenu, { open: actionsMenuOpen, onOpenChange: setActionsMenuOpen, children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "icon", className: "size-6", disabled: selectedCount === 0 || !!actionLoading, children: actionLoading ? _jsx(Loader2, { className: "size-4 animate-spin" }) : _jsx(MoreHorizontal, { className: "size-4" }) }) }), _jsx(DropdownMenuContent, { align: "start", container: overlayContainer, children: Object.entries(selectable.actions).map(([key, action]) => (_jsx(DropdownMenuItem, { disabled: !!actionLoading, onSelect: () => handleSelectionAction(key), children: actionLoading === key ? 'Working…' : action.name }, key))) })] }))] }) })), columns.map((col, idx) => (_jsx(React.Fragment, { children: col.sortable ? (_jsx(TableHead, { ...(React.isValidElement(col.head) ? col.head.props : {}), children: _jsxs(Button, { variant: "ghost", size: "sm", className: "-ml-3", onClick: () => handleSort(col.sortable.path), children: [React.isValidElement(col.head) ? col.head.props.children : col.head, getSortFor(col.sortable.path) === 1 && _jsx(ArrowUp, { className: "ml-1 size-4" }), getSortFor(col.sortable.path) === -1 && _jsx(ArrowDown, { className: "ml-1 size-4" })] }) })) : (col.head) }, idx)))] }) }), _jsx(TableBody, { children: dataKit.state.isLoading ? (_jsx(TableRow, { children: _jsx(TableCell, { colSpan: colSpan, className: "h-24 text-center", children: _jsx(Loader2, { className: "mx-auto size-5 animate-spin" }) }) })) : dataKit.state.error ? (_jsx(TableRow, { children: _jsxs(TableCell, { colSpan: colSpan, className: "h-24 text-center text-red-500", children: ["Error: ", dataKit.state.error.message] }) })) : dataKit.items.length === 0 ? (_jsx(TableRow, { children: _jsx(TableCell, { colSpan: colSpan, className: "h-24 text-center text-muted-foreground", children: "No results found." }) })) : (dataKit.items.map((item, idx) => (_jsxs(TableRow, { children: [selectable?.enabled && (_jsx(TableCell, { children: _jsx(Checkbox, { checked: selection.isSelected(item.id), onCheckedChange: () => selection.toggle(item.id) }) })), columns.map((col, colIdx) => (_jsx(React.Fragment, { children: col.body({
126
+ return (_jsxs("div", { ref: tableRef, className: `space-y-3 ${className ?? ''}`, children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("div", { className: "flex items-center gap-2", children: filters.length > 0 && (_jsxs(Popover, { open: isFilterOpen, onOpenChange: setIsFilterOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { variant: "outline", size: "sm", children: [_jsx(Filter, { className: "mr-1.5 size-4" }), "Filters"] }) }), _jsxs(PopoverContent, { align: "start", className: "w-80", container: overlayContainer, children: [_jsx("div", { className: "grid gap-3", children: filters.map((f) => (_jsxs("div", { className: "grid gap-1.5", children: [_jsx("label", { className: "text-sm font-medium", children: f.label }), f.type === 'TEXT' && (_jsx("input", { type: "text", className: "h-9 w-full rounded-md border bg-transparent px-3 text-sm outline-none focus:ring-2 focus:ring-ring", placeholder: f.placeholder, value: dataKit.filter[f.id] ?? '', onChange: (e) => dataKit.actions.setFilter(f.id, e.target.value) })), f.type === 'SELECT' && (_jsxs(Select, { value: String(dataKit.filter[f.id] || '__all__'), onValueChange: (v) => dataKit.actions.setFilter(f.id, v === '__all__' ? '' : v), children: [_jsx(SelectTrigger, { children: _jsx(SelectValue, {}) }), _jsxs(SelectContent, { container: overlayContainer, children: [_jsx(SelectItem, { value: "__all__", children: "All" }), f.dataset?.map((d) => (_jsx(SelectItem, { value: d.id, children: d.label }, d.id)))] })] })), f.type === 'BOOLEAN' && (_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: f.placeholder ?? 'Enable' }), _jsx(Switch, { checked: Boolean(dataKit.filter[f.id]), onCheckedChange: (c) => dataKit.actions.setFilter(f.id, c) })] }))] }, f.id))) }), _jsxs("div", { className: "mt-4 flex justify-between border-t pt-3", children: [_jsx(Button, { variant: "outline", size: "sm", onClick: handleResetFilters, children: "Reset" }), _jsx(Button, { size: "sm", onClick: () => setIsFilterOpen(false), children: "Done" })] })] })] })) }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsxs("span", { className: "mr-2 text-sm text-muted-foreground", children: [dataKit.items.length, " of ", dataKit.total] }), _jsxs(Select, { value: String(dataKit.limit), onValueChange: (v) => dataKit.actions.setLimit(Number(v)), disabled: dataKit.state.isLoading, children: [_jsx(SelectTrigger, { className: "w-16", children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { container: overlayContainer, children: limitOptions.map((v) => (_jsx(SelectItem, { value: String(v), children: v }, v))) })] })] })] }), _jsx("div", { className: `overflow-hidden border border-gray-200 dark:border-gray-800 ${bordered === 'rounded' ? 'rounded-lg' : bordered ? '' : 'rounded-lg'}`, children: _jsxs(Table, { children: [_jsx(TableHeader, { children: _jsxs(TableRow, { children: [selectable?.enabled && (_jsx(TableHead, { className: "w-12", children: _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Checkbox, { checked: selection.isIndeterminate ? 'indeterminate' : selection.isAllSelected, onCheckedChange: () => selection.toggleAll() }), selectable.actions && Object.keys(selectable.actions).length > 0 && (_jsxs(DropdownMenu, { open: actionsMenuOpen, onOpenChange: setActionsMenuOpen, children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "icon", className: "size-6", disabled: selectedCount === 0 || !!actionLoading, children: actionLoading ? _jsx(Loader2, { className: "size-4 animate-spin" }) : _jsx(MoreHorizontal, { className: "size-4" }) }) }), _jsx(DropdownMenuContent, { align: "start", container: overlayContainer, children: Object.entries(selectable.actions).map(([key, action]) => (_jsx(DropdownMenuItem, { disabled: !!actionLoading, onSelect: () => handleSelectionAction(key), children: actionLoading === key ? 'Working…' : action.name }, key))) })] }))] }) })), columns.map((col, idx) => (_jsx(React.Fragment, { children: col.sortable ? (_jsx(TableHead, { ...(React.isValidElement(col.head) ? col.head.props : {}), children: _jsxs(Button, { variant: "ghost", size: "sm", className: "-ml-3", onClick: () => handleSort(col.sortable.path), children: [React.isValidElement(col.head) ? col.head.props.children : col.head, getSortFor(col.sortable.path) === 1 && _jsx(ArrowUp, { className: "ml-1 size-4" }), getSortFor(col.sortable.path) === -1 && _jsx(ArrowDown, { className: "ml-1 size-4" })] }) })) : (col.head) }, idx)))] }) }), _jsx(TableBody, { children: dataKit.state.isLoading ? (_jsx(TableRow, { children: _jsx(TableCell, { colSpan: colSpan, className: "h-24 text-center", children: _jsx(Loader2, { className: "mx-auto size-5 animate-spin" }) }) })) : dataKit.state.error ? (_jsx(TableRow, { children: _jsxs(TableCell, { colSpan: colSpan, className: "h-24 text-center text-red-500", children: ["Error: ", dataKit.state.error.message] }) })) : dataKit.items.length === 0 ? (_jsx(TableRow, { children: _jsx(TableCell, { colSpan: colSpan, className: "h-24 text-center text-muted-foreground", children: "No results found." }) })) : (dataKit.items.map((item, idx) => (_jsxs(TableRow, { children: [selectable?.enabled && (_jsx(TableCell, { children: _jsx(Checkbox, { checked: selection.isSelected(item.id), onCheckedChange: () => selection.toggle(item.id) }) })), columns.map((col, colIdx) => (_jsx(React.Fragment, { children: col.body({
119
127
  item,
120
128
  index: idx,
121
129
  state: initialState,
122
130
  setState: () => { },
123
131
  setItem: (updatedItem) => dataKit.actions.setItemAt(idx, updatedItem),
124
132
  deleteItem: () => dataKit.actions.deleteItemAt(idx),
125
- }) }, colIdx)))] }, item.id ?? idx)))) })] }) }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("p", { className: "text-sm text-muted-foreground", children: ["Page ", dataKit.page, " of ", pagination.totalPages, selectable?.enabled && selectedCount > 0 && (_jsxs("span", { className: "ml-2 text-foreground", children: ["(", selectedCount, " selected)"] }))] }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsx(Button, { variant: "outline", size: "icon", disabled: !pagination.hasPrevPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page - 1), children: _jsx(ChevronLeft, { className: "size-4" }) }), _jsx(Button, { variant: "outline", size: "icon", disabled: !pagination.hasNextPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page + 1), children: _jsx(ChevronRight, { className: "size-4" }) })] })] })] }));
133
+ }) }, colIdx)))] }, item.id ?? idx)))) })] }) }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("p", { className: "text-sm text-muted-foreground", children: ["Page ", dataKit.page, " of ", pagination.totalPages, selectable?.enabled && selectedCount > 0 && (_jsxs("span", { className: "ml-2 text-foreground", children: ["(", selectedCount, " selected)"] }))] }), paginationType === 'SIMPLE' ? (_jsxs("div", { className: "flex items-center gap-1", children: [_jsx(Button, { variant: "outline", size: "icon", disabled: !pagination.hasPrevPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page - 1), children: _jsx(ChevronLeft, { className: "size-4" }) }), _jsx(Button, { variant: "outline", size: "icon", disabled: !pagination.hasNextPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page + 1), children: _jsx(ChevronRight, { className: "size-4" }) })] })) : (_jsx(Pagination, { className: "mx-0 w-auto", children: _jsxs(PaginationContent, { children: [_jsx(PaginationItem, { className: "hidden sm:block", children: _jsx(PaginationPrevious, { disabled: !pagination.hasPrevPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page - 1) }) }), _jsx(PaginationItem, { className: "sm:hidden", children: _jsx(PaginationLink, { disabled: !pagination.hasPrevPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page - 1), children: _jsx(ChevronLeft, { className: "size-4" }) }) }), pagination.pages.map((pageNum, idx) => (_jsx(PaginationItem, { className: "hidden sm:block", children: pageNum === 'ellipsis' ? (_jsx(PaginationEllipsis, {})) : (_jsx(PaginationLink, { isActive: pageNum === dataKit.page, disabled: dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(pageNum), children: pageNum })) }, idx))), _jsx(PaginationItem, { className: "sm:hidden", children: _jsx("span", { className: "flex size-9 items-center justify-center text-sm", children: dataKit.page }) }), _jsx(PaginationItem, { className: "hidden sm:block", children: _jsx(PaginationNext, { disabled: !pagination.hasNextPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page + 1) }) }), _jsx(PaginationItem, { className: "sm:hidden", children: _jsx(PaginationLink, { disabled: !pagination.hasNextPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page + 1), children: _jsx(ChevronRight, { className: "size-4" }) }) })] }) }))] })] }));
126
134
  };
127
135
  export const DataKitTable = Object.assign(DataKitRoot, {
128
136
  Cell: TableCell,
@@ -1 +1 @@
1
- {"version":3,"file":"data-kit-table.js","sourceRoot":"","sources":["../../../src/client/components/data-kit-table.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9G,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EACF,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,aAAa,EACb,UAAU,EACV,aAAa,EACb,WAAW,EACX,MAAM,EACN,KAAK,EACL,SAAS,EACT,SAAS,EACT,SAAS,EACT,WAAW,EACX,QAAQ,GACZ,MAAM,MAAM,CAAC;AAcd,MAAM,WAAW,GAAG,CAGlB,KAmBA,EAAE,EAAE;IACD,uBAAuB;IACvB,MAAM,EACD,MAAM,EACN,KAAK,EACL,YAAY,EACZ,KAAK,EAAE,OAAO,EACd,OAAO,GAAG,EAAE,EACZ,UAAU,EACV,YAAY,EACZ,KAAK,EAAE,WAAW,EAClB,SAAS,EACT,SAAS,GAAG,IAAI,EAChB,QAAQ,GAAG,GAAG,EACd,QAAQ,EACR,eAAe,EACf,KAAK,EAAE,SAAS,GAAG,QAAQ,EAC3B,UAAU,GACd,GAAG,KAAK,CAAC;IAKV,SAAS;IACT,MAAM,QAAQ,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,MAAM,CAAwC,IAAI,CAAC,CAAC;IAExE,WAAW;IACX,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9D,cAAc;IACd,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC;IAE1C,WAAW;IACX,MAAM,OAAO,GAAG,UAAU,CAAiB;QACtC,MAAM,EAAE,MAAsF;QAC9F,YAAY;QACZ,SAAS;QACT,QAAQ;QACR,KAAK,EAAE,SAAS;QAChB,OAAO,EAAE;YACJ,KAAK,EAAE,WAAW,EAAE,OAAO,IAAI,EAAE;YACjC,KAAK,EAAE,KAAK,IAAI,EAAE;YAClB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAoC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACjE,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;oBAC5C,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAiB,EAAE,CAAC,CAAC;gBAClF,CAAC;gBACD,OAAO,GAAG,CAAC;YAChB,CAAC,EAAE,EAAE,CAAC;YACN,MAAM,EAAE,OAAO,CAAC,MAAM,CAA0B,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;gBACtD,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;oBAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;gBAC7D,OAAO,GAAG,CAAC;YAChB,CAAC,EAAE,EAAE,CAAC;SACV;KACL,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC;IACtH,MAAM,SAAS,GAAG,qBAAqB,CAAkB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAE/F,cAAc;IACd,MAAM,aAAa,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/D,cAAc;IACd,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,IAAY,EAAE,EAAE;QAC3C,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAC/D,MAAM,SAAS,GAAG,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACvF,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAErC,MAAM,qBAAqB,GAAG,WAAW,CAAC,KAAK,EAAE,SAAiB,EAAE,EAAE;QACjE,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,aAAa;YAAE,OAAO;QAC/D,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC5B,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC;YACA,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACpF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC3E,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAA8B,CAAC;gBACpD,IAAI,IAAI,CAAC,WAAW;oBAAE,SAAS,CAAC,WAAW,EAAE,CAAC;gBAC9C,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;gBAAS,CAAC;YACN,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;IACN,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpF,MAAM,kBAAkB,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACjB,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;IACR,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAE/B,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAE7H,aAAa;IACb,SAAS,CAAC,GAAG,EAAE;QACV,IAAI,UAAU,EAAE,CAAC;YACZ,UAAU,CAAC,OAAO,GAAG;gBAChB,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ;gBAClC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO;gBACpC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU;gBACtC,gBAAgB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrF,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE;aACjD,CAAC;QACP,CAAC;IACN,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACV,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,eAAe;YAAE,OAAO;QAClD,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,EAClE,EAAE,SAAS,EAAE,GAAG,EAAE,CACtB,CAAC;QACF,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC;QACpC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7B,OAAO,GAAG,EAAE,GAAG,IAAI,UAAU;YAAE,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,SAAS,CAAC,GAAG,EAAE;QACV,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACrB,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACnC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAChC,CAAC;QACD,IAAI,eAAe,IAAI,SAAS,EAAE,CAAC;YAC9B,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,GAAG,EAAE,GAAG,IAAI,WAAW,CAAC,OAAO;YAAE,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC,EAAE,CAAC,eAAe,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAElD,SAAS,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAEtE,YAAY;IACZ,OAAO,CACF,eAAK,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,SAAS,IAAI,EAAE,EAAE,aAExD,eAAK,SAAS,EAAC,yCAAyC,aACnD,cAAK,SAAS,EAAC,yBAAyB,YAClC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAClB,MAAC,OAAO,IAAC,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,aACrD,KAAC,cAAc,IAAC,OAAO,kBAClB,MAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,aAC9B,KAAC,MAAM,IAAC,SAAS,EAAC,eAAe,GAAG,eAEhC,GACG,EACjB,MAAC,cAAc,IAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAE,gBAAgB,aACrE,cAAK,SAAS,EAAC,YAAY,YACrB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACf,eAAgB,SAAS,EAAC,cAAc,aACnC,gBAAO,SAAS,EAAC,qBAAqB,YAAE,CAAC,CAAC,KAAK,GAAS,EACvD,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CACjB,gBACK,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,oGAAoG,EAC9G,WAAW,EAAE,CAAC,CAAC,WAAW,EAC1B,KAAK,EAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAY,IAAI,EAAE,EAC7C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GACnE,CACN,EACA,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CACnB,MAAC,MAAM,IACF,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,EAChD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,aAE/E,KAAC,aAAa,cAAC,KAAC,WAAW,KAAG,GAAgB,EAC9C,MAAC,aAAa,IAAC,SAAS,EAAE,gBAAgB,aACrC,KAAC,UAAU,IAAC,KAAK,EAAC,SAAS,oBAAiB,EAC3C,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,KAAC,UAAU,IAAY,KAAK,EAAE,CAAC,CAAC,EAAE,YAAG,CAAC,CAAC,KAAK,IAA3B,CAAC,CAAC,EAAE,CAAqC,CAC9D,CAAC,IACS,IACZ,CACb,EACA,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CACpB,eAAK,SAAS,EAAC,mCAAmC,aAC7C,eAAM,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,WAAW,IAAI,QAAQ,GAAQ,EAClF,KAAC,MAAM,IACF,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EACtC,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAC7D,IACD,CACV,KAjCI,CAAC,CAAC,EAAE,CAkCR,CACV,CAAC,GACD,EACN,eAAK,SAAS,EAAC,yCAAyC,aACnD,KAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,kBAAkB,sBAAgB,EAC/E,KAAC,MAAM,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,qBAAe,IACrE,IACM,IACZ,CACd,GACA,EAEN,eAAK,SAAS,EAAC,yBAAyB,aACnC,gBAAM,SAAS,EAAC,oCAAoC,aAC9C,OAAO,CAAC,KAAK,CAAC,MAAM,UAAM,OAAO,CAAC,KAAK,IACtC,EACP,MAAC,MAAM,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,aAC7H,KAAC,aAAa,IAAC,SAAS,EAAC,MAAM,YAAC,KAAC,WAAW,KAAG,GAAgB,EAC/D,KAAC,aAAa,IAAC,SAAS,EAAE,gBAAgB,YACpC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACzB,KAAC,UAAU,IAAS,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,YAAG,CAAC,IAAvB,CAAC,CAAoC,CAC1D,CAAC,GACS,IACZ,IACR,IACL,EAGN,cAAK,SAAS,EAAE,+DAA+D,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,YAChJ,MAAC,KAAK,eACD,KAAC,WAAW,cACP,MAAC,QAAQ,eACH,UAAU,EAAE,OAAO,IAAI,CACnB,KAAC,SAAS,IAAC,SAAS,EAAC,MAAM,YACtB,eAAK,SAAS,EAAC,yBAAyB,aACnC,KAAC,QAAQ,IACJ,OAAO,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,EAC9E,eAAe,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,GAC/C,EACD,UAAU,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAChE,MAAC,YAAY,IAAC,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,aAChE,KAAC,mBAAmB,IAAC,OAAO,kBACvB,KAAC,MAAM,IACF,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,QAAQ,EAClB,QAAQ,EAAE,aAAa,KAAK,CAAC,IAAI,CAAC,CAAC,aAAa,YAE/C,aAAa,CAAC,CAAC,CAAC,KAAC,OAAO,IAAC,SAAS,EAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC,KAAC,cAAc,IAAC,SAAS,EAAC,QAAQ,GAAG,GAChG,GACQ,EACtB,KAAC,mBAAmB,IAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAE,gBAAgB,YACxD,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CACtD,KAAC,gBAAgB,IAAW,QAAQ,EAAE,CAAC,CAAC,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,YAC3F,aAAa,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAD/B,GAAG,CAEP,CACvB,CAAC,GACe,IACZ,CACnB,IACA,GACC,CAChB,EACA,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CACtB,KAAC,KAAK,CAAC,QAAQ,cACT,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CACX,KAAC,SAAS,OAAK,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,GAAG,CAAC,IAAI,CAAC,KAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,YAC5E,MAAC,MAAM,IACF,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,OAAO,EACjB,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,QAAS,CAAC,IAAI,CAAC,aAE5C,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,GAAG,CAAC,IAA2D,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAC3H,UAAU,CAAC,GAAG,CAAC,QAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAC,OAAO,IAAC,SAAS,EAAC,aAAa,GAAG,EAC3E,UAAU,CAAC,GAAG,CAAC,QAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,KAAC,SAAS,IAAC,SAAS,EAAC,aAAa,GAAG,IAC3E,GACF,CAChB,CAAC,CAAC,CAAC,CACC,GAAG,CAAC,IAAI,CACZ,IAhBe,GAAG,CAiBP,CACrB,CAAC,IACI,GACF,EACd,KAAC,SAAS,cACJ,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CACtB,KAAC,QAAQ,cACJ,KAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAC,kBAAkB,YACpD,KAAC,OAAO,IAAC,SAAS,EAAC,6BAA6B,GAAG,GAC5C,GACN,CACf,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CACrB,KAAC,QAAQ,cACJ,MAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAC,+BAA+B,wBACzD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAC5B,GACN,CACf,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC5B,KAAC,QAAQ,cACJ,KAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAC,wCAAwC,kCAEnE,GACN,CACf,CAAC,CAAC,CAAC,CACC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAC5B,MAAC,QAAQ,eACH,UAAU,EAAE,OAAO,IAAI,CACnB,KAAC,SAAS,cACL,KAAC,QAAQ,IACJ,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EACtC,eAAe,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,GACnD,GACK,CAChB,EACA,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CACzB,KAAC,KAAK,CAAC,QAAQ,cACT,GAAG,CAAC,IAAI,CAAC;4CACL,IAAI;4CACJ,KAAK,EAAE,GAAG;4CACV,KAAK,EAAE,YAAyB;4CAChC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC;4CACnB,OAAO,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC;4CACrE,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC;yCACvD,CAAC,IARc,MAAM,CASV,CACrB,CAAC,KApBQ,IAAI,CAAC,EAAE,IAAI,GAAG,CAqBlB,CACf,CAAC,CACN,GACM,IACT,GACP,EAGN,eAAK,SAAS,EAAC,mCAAmC,aAC7C,aAAG,SAAS,EAAC,+BAA+B,sBACjC,OAAO,CAAC,IAAI,UAAM,UAAU,CAAC,UAAU,EAC5C,UAAU,EAAE,OAAO,IAAI,aAAa,GAAG,CAAC,IAAI,CACxC,gBAAM,SAAS,EAAC,sBAAsB,kBAAG,aAAa,kBAAkB,CAC5E,IACF,EACJ,eAAK,SAAS,EAAC,yBAAyB,aACnC,KAAC,MAAM,IACF,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,EAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,YAExD,KAAC,WAAW,IAAC,SAAS,EAAC,QAAQ,GAAG,GAC9B,EACT,KAAC,MAAM,IACF,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,EAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,YAExD,KAAC,YAAY,IAAC,SAAS,EAAC,QAAQ,GAAG,GAC/B,IACR,IACL,IACL,CACV,CAAC;AACP,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;IAClD,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;CACnB,CAAC,CAAC"}
1
+ {"version":3,"file":"data-kit-table.js","sourceRoot":"","sources":["../../../src/client/components/data-kit-table.tsx"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export declare const DataKit: <TAction extends (input: TDataKitInput<unknown>) =
18
18
  refetchInterval?: number;
19
19
  state?: TDataKitStateMode;
20
20
  manual?: boolean;
21
+ pagination?: "SIMPLE" | "NUMBER";
21
22
  children: (dataKit: TUseDataKitReturn<unknown, TExtractDataKitItemType<TAction>>) => React.ReactNode;
22
23
  ref?: React.Ref<TDataKitRef<unknown, TExtractDataKitItemType<TAction>>>;
23
24
  }>) => React.ReactElement;
@@ -1 +1 @@
1
- {"version":3,"file":"data-kit.d.ts","sourceRoot":"","sources":["../../../src/client/components/data-kit.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAgBxE,OAAO,KAAK,EACP,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,WAAW,EACf,MAAM,aAAa,CAAC;AAoOrB,eAAO,MAAM,OAAO,EAAgD,CAC/D,OAAO,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAElG,KAAK,EAAE,QAAQ,CAAC;IACX,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;KAAE,EAAE,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IACrG,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;CAC5E,CAAC,KACF,KAAK,CAAC,YAAY,CAAC"}
1
+ {"version":3,"file":"data-kit.d.ts","sourceRoot":"","sources":["../../../src/client/components/data-kit.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAuBxE,OAAO,KAAK,EACP,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,WAAW,EACf,MAAM,aAAa,CAAC;AAqSrB,eAAO,MAAM,OAAO,EAAgD,CAC/D,OAAO,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAElG,KAAK,EAAE,QAAQ,CAAC;IACX,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;KAAE,EAAE,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,QAAQ,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IACrG,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;CAC5E,CAAC,KACF,KAAK,CAAC,YAAY,CAAC"}
@@ -4,10 +4,10 @@ import React, { useState, useEffect, useRef, useCallback } from 'react';
4
4
  import { ChevronLeft, ChevronRight, Filter, Loader2 } from 'lucide-react';
5
5
  import { useDataKit } from '../hooks/useDataKit';
6
6
  import { usePagination } from '../hooks/usePagination';
7
- import { Button, Popover, PopoverContent, PopoverTrigger, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Switch, } from './ui';
7
+ import { Button, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverContent, PopoverTrigger, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Switch, } from './ui';
8
8
  const DataKitInner = (props, ref) => {
9
9
  // ** Deconstruct Props
10
- const { action, query, filterConfig, filters = [], limit: limitConfig, defaultSort = [], className, autoFetch = true, debounce = 300, refetchInterval, state: stateMode = 'memory', manual = false, children, } = props;
10
+ const { action, query, filterConfig, filters = [], limit: limitConfig, defaultSort = [], className, autoFetch = true, debounce = 300, refetchInterval, state: stateMode = 'memory', manual = false, pagination: paginationType = 'NUMBER', children, } = props;
11
11
  // ** Ref
12
12
  const containerRef = useRef(null);
13
13
  const intervalRef = useRef(null);
@@ -35,6 +35,14 @@ const DataKitInner = (props, ref) => {
35
35
  },
36
36
  });
37
37
  const pagination = usePagination({ page: dataKit.page, limit: dataKit.limit, total: dataKit.total, siblingCount: 1 });
38
+ const limitOptions = React.useMemo(() => {
39
+ const standardOptions = [10, 25, 50, 100];
40
+ const currentLimit = dataKit.limit;
41
+ if (!standardOptions.includes(currentLimit)) {
42
+ return [...standardOptions, currentLimit].sort((a, b) => a - b);
43
+ }
44
+ return standardOptions;
45
+ }, [dataKit.limit]);
38
46
  // ** Imperative Handle
39
47
  React.useImperativeHandle(ref, () => dataKit, [dataKit]);
40
48
  // ** Handlers
@@ -65,7 +73,7 @@ const DataKitInner = (props, ref) => {
65
73
  clearInterval(intervalRef.current); };
66
74
  }, [refetchInterval, isVisible, dataKit.actions]);
67
75
  // ** Render
68
- return (_jsxs("div", { ref: containerRef, className: `space-y-3 ${className ?? ''}`, children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("div", { className: "flex items-center gap-2", children: filters.length > 0 && (_jsxs(Popover, { open: isFilterOpen, onOpenChange: setIsFilterOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { variant: "outline", size: "sm", children: [_jsx(Filter, { className: "mr-1.5 size-4" }), "Filters"] }) }), _jsxs(PopoverContent, { align: "start", className: "w-80", container: overlayContainer, children: [_jsx("div", { className: "grid gap-3", children: filters.map((f) => (_jsxs("div", { className: "grid gap-1.5", children: [_jsx("label", { className: "text-sm font-medium", children: f.label }), f.type === 'TEXT' && (_jsx("input", { type: "text", className: "h-9 w-full rounded-md border bg-transparent px-3 text-sm outline-none focus:ring-2 focus:ring-ring", placeholder: f.placeholder, value: dataKit.filter[f.id] ?? '', onChange: (e) => dataKit.actions.setFilter(f.id, e.target.value) })), f.type === 'SELECT' && (_jsxs(Select, { value: String(dataKit.filter[f.id] || '__all__'), onValueChange: (v) => dataKit.actions.setFilter(f.id, v === '__all__' ? '' : v), children: [_jsx(SelectTrigger, { children: _jsx(SelectValue, {}) }), _jsxs(SelectContent, { container: overlayContainer, children: [_jsx(SelectItem, { value: "__all__", children: "All" }), f.dataset?.map((d) => (_jsx(SelectItem, { value: d.id, children: d.label }, d.id)))] })] })), f.type === 'BOOLEAN' && (_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: f.placeholder ?? 'Enable' }), _jsx(Switch, { checked: Boolean(dataKit.filter[f.id]), onCheckedChange: (c) => dataKit.actions.setFilter(f.id, c) })] }))] }, f.id))) }), _jsxs("div", { className: "mt-4 flex justify-between border-t pt-3", children: [_jsx(Button, { variant: "outline", size: "sm", onClick: handleResetFilters, children: "Reset" }), _jsx(Button, { size: "sm", onClick: () => setIsFilterOpen(false), children: "Done" })] })] })] })) }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsxs("span", { className: "mr-2 text-sm text-muted-foreground", children: [dataKit.items.length, " of ", dataKit.total] }), _jsxs(Select, { value: String(dataKit.limit), onValueChange: (v) => dataKit.actions.setLimit(Number(v)), disabled: dataKit.state.isLoading, children: [_jsx(SelectTrigger, { className: "w-16", children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { container: overlayContainer, children: [10, 25, 50, 100].map((v) => (_jsx(SelectItem, { value: String(v), children: v }, v))) })] })] })] }), manual ? (children(dataKit)) : (_jsx("div", { className: "min-h-[200px]", children: dataKit.state.isLoading ? (_jsx("div", { className: "flex h-48 items-center justify-center", children: _jsx(Loader2, { className: "size-6 animate-spin text-muted-foreground" }) })) : dataKit.items.length === 0 ? (_jsx("div", { className: "flex h-48 items-center justify-center text-muted-foreground", children: "No results found." })) : (children(dataKit)) })), _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("p", { className: "text-sm text-muted-foreground", children: ["Page ", dataKit.page, " of ", pagination.totalPages] }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsx(Button, { variant: "outline", size: "icon", disabled: !pagination.hasPrevPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page - 1), children: _jsx(ChevronLeft, { className: "size-4" }) }), _jsx(Button, { variant: "outline", size: "icon", disabled: !pagination.hasNextPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page + 1), children: _jsx(ChevronRight, { className: "size-4" }) })] })] })] }));
76
+ return (_jsxs("div", { ref: containerRef, className: `space-y-3 ${className ?? ''}`, children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("div", { className: "flex items-center gap-2", children: filters.length > 0 && (_jsxs(Popover, { open: isFilterOpen, onOpenChange: setIsFilterOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { variant: "outline", size: "sm", children: [_jsx(Filter, { className: "mr-1.5 size-4" }), "Filters"] }) }), _jsxs(PopoverContent, { align: "start", className: "w-80", container: overlayContainer, children: [_jsx("div", { className: "grid gap-3", children: filters.map((f) => (_jsxs("div", { className: "grid gap-1.5", children: [_jsx("label", { className: "text-sm font-medium", children: f.label }), f.type === 'TEXT' && (_jsx("input", { type: "text", className: "h-9 w-full rounded-md border bg-transparent px-3 text-sm outline-none focus:ring-2 focus:ring-ring", placeholder: f.placeholder, value: dataKit.filter[f.id] ?? '', onChange: (e) => dataKit.actions.setFilter(f.id, e.target.value) })), f.type === 'SELECT' && (_jsxs(Select, { value: String(dataKit.filter[f.id] || '__all__'), onValueChange: (v) => dataKit.actions.setFilter(f.id, v === '__all__' ? '' : v), children: [_jsx(SelectTrigger, { children: _jsx(SelectValue, {}) }), _jsxs(SelectContent, { container: overlayContainer, children: [_jsx(SelectItem, { value: "__all__", children: "All" }), f.dataset?.map((d) => (_jsx(SelectItem, { value: d.id, children: d.label }, d.id)))] })] })), f.type === 'BOOLEAN' && (_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: f.placeholder ?? 'Enable' }), _jsx(Switch, { checked: Boolean(dataKit.filter[f.id]), onCheckedChange: (c) => dataKit.actions.setFilter(f.id, c) })] }))] }, f.id))) }), _jsxs("div", { className: "mt-4 flex justify-between border-t pt-3", children: [_jsx(Button, { variant: "outline", size: "sm", onClick: handleResetFilters, children: "Reset" }), _jsx(Button, { size: "sm", onClick: () => setIsFilterOpen(false), children: "Done" })] })] })] })) }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsxs("span", { className: "mr-2 text-sm text-muted-foreground", children: [dataKit.items.length, " of ", dataKit.total] }), _jsxs(Select, { value: String(dataKit.limit), onValueChange: (v) => dataKit.actions.setLimit(Number(v)), disabled: dataKit.state.isLoading, children: [_jsx(SelectTrigger, { className: "w-16", children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { container: overlayContainer, children: limitOptions.map((v) => (_jsx(SelectItem, { value: String(v), children: v }, v))) })] })] })] }), manual ? (children(dataKit)) : (_jsx("div", { className: "min-h-[200px]", children: dataKit.state.isLoading ? (_jsx("div", { className: "flex h-48 items-center justify-center", children: _jsx(Loader2, { className: "size-6 animate-spin text-muted-foreground" }) })) : dataKit.items.length === 0 ? (_jsx("div", { className: "flex h-48 items-center justify-center text-muted-foreground", children: "No results found." })) : (children(dataKit)) })), _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("p", { className: "text-sm text-muted-foreground", children: ["Page ", dataKit.page, " of ", pagination.totalPages] }), paginationType === 'SIMPLE' ? (_jsxs("div", { className: "flex items-center gap-1", children: [_jsx(Button, { variant: "outline", size: "icon", disabled: !pagination.hasPrevPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page - 1), children: _jsx(ChevronLeft, { className: "size-4" }) }), _jsx(Button, { variant: "outline", size: "icon", disabled: !pagination.hasNextPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page + 1), children: _jsx(ChevronRight, { className: "size-4" }) })] })) : (_jsx(Pagination, { className: "mx-0 w-auto", children: _jsxs(PaginationContent, { children: [_jsx(PaginationItem, { className: "hidden sm:block", children: _jsx(PaginationPrevious, { disabled: !pagination.hasPrevPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page - 1) }) }), _jsx(PaginationItem, { className: "sm:hidden", children: _jsx(PaginationLink, { disabled: !pagination.hasPrevPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page - 1), children: _jsx(ChevronLeft, { className: "size-4" }) }) }), pagination.pages.map((pageNum, idx) => (_jsx(PaginationItem, { className: "hidden sm:block", children: pageNum === 'ellipsis' ? (_jsx(PaginationEllipsis, {})) : (_jsx(PaginationLink, { isActive: pageNum === dataKit.page, disabled: dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(pageNum), children: pageNum })) }, idx))), _jsx(PaginationItem, { className: "sm:hidden", children: _jsx("span", { className: "flex size-9 items-center justify-center text-sm", children: dataKit.page }) }), _jsx(PaginationItem, { className: "hidden sm:block", children: _jsx(PaginationNext, { disabled: !pagination.hasNextPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page + 1) }) }), _jsx(PaginationItem, { className: "sm:hidden", children: _jsx(PaginationLink, { disabled: !pagination.hasNextPage || dataKit.state.isLoading, onClick: () => dataKit.actions.setPage(dataKit.page + 1), children: _jsx(ChevronRight, { className: "size-4" }) }) })] }) }))] })] }));
69
77
  };
70
78
  export const DataKit = React.forwardRef(DataKitInner);
71
79
  //# sourceMappingURL=data-kit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-kit.js","sourceRoot":"","sources":["../../../src/client/components/data-kit.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-kit.js","sourceRoot":"","sources":["../../../src/client/components/data-kit.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EACF,MAAM,EACN,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,aAAa,EACb,UAAU,EACV,aAAa,EACb,WAAW,EACX,MAAM,GACV,MAAM,MAAM,CAAC;AAcd,MAAM,YAAY,GAAG,CAEnB,KAeA,EAAE,GAA+E,EAAE,EAAE;IAClF,uBAAuB;IACvB,MAAM,EACD,MAAM,EACN,KAAK,EACL,YAAY,EACZ,OAAO,GAAG,EAAE,EACZ,KAAK,EAAE,WAAW,EAClB,WAAW,GAAG,EAAE,EAChB,SAAS,EACT,SAAS,GAAG,IAAI,EAChB,QAAQ,GAAG,GAAG,EACd,eAAe,EACf,KAAK,EAAE,SAAS,GAAG,QAAQ,EAC3B,MAAM,GAAG,KAAK,EACd,UAAU,EAAE,cAAc,GAAG,QAAQ,EACrC,QAAQ,GACZ,GAAG,KAAK,CAAC;IAKV,SAAS;IACT,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,MAAM,CAAwC,IAAI,CAAC,CAAC;IAExE,WAAW;IACX,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,cAAc;IACd,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC;IAE9C,WAAW;IACX,MAAM,OAAO,GAAG,UAAU,CAAiB;QACtC,MAAM,EAAE,MAAsF;QAC9F,YAAY;QACZ,SAAS;QACT,QAAQ;QACR,KAAK,EAAE,SAAS;QAChB,OAAO,EAAE;YACJ,KAAK,EAAE,WAAW,EAAE,OAAO,IAAI,EAAE;YACjC,KAAK,EAAE,KAAK,IAAI,EAAE;YAClB,KAAK,EAAE,WAAW;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM,CAA0B,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;gBACtD,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;oBAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;gBAC7D,OAAO,GAAG,CAAC;YAChB,CAAC,EAAE,EAAE,CAAC;SACV;KACL,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC;IACtH,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACnC,MAAM,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC;QACnC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,GAAG,eAAe,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,eAAe,CAAC;IAC5B,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAEpB,uBAAuB;IACvB,KAAK,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAiD,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEnG,cAAc;IACd,MAAM,kBAAkB,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACjB,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;IACR,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAE/B,aAAa;IACb,SAAS,CAAC,GAAG,EAAE;QACV,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,eAAe;YAAE,OAAO;QACtD,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,EAClE,EAAE,SAAS,EAAE,GAAG,EAAE,CACtB,CAAC;QACF,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC;QACxC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7B,OAAO,GAAG,EAAE,GAAG,IAAI,UAAU;YAAE,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,SAAS,CAAC,GAAG,EAAE;QACV,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACrB,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACnC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAChC,CAAC;QACD,IAAI,eAAe,IAAI,SAAS,EAAE,CAAC;YAC9B,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,GAAG,EAAE,GAAG,IAAI,WAAW,CAAC,OAAO;YAAE,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC,EAAE,CAAC,eAAe,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAElD,YAAY;IACZ,OAAO,CACF,eAAK,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,SAAS,IAAI,EAAE,EAAE,aAE5D,eAAK,SAAS,EAAC,yCAAyC,aACnD,cAAK,SAAS,EAAC,yBAAyB,YAClC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAClB,MAAC,OAAO,IAAC,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,aACrD,KAAC,cAAc,IAAC,OAAO,kBAClB,MAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,aAC9B,KAAC,MAAM,IAAC,SAAS,EAAC,eAAe,GAAG,eAEhC,GACG,EACjB,MAAC,cAAc,IAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAE,gBAAgB,aACrE,cAAK,SAAS,EAAC,YAAY,YACrB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACf,eAAgB,SAAS,EAAC,cAAc,aACnC,gBAAO,SAAS,EAAC,qBAAqB,YAAE,CAAC,CAAC,KAAK,GAAS,EACvD,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CACjB,gBACK,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,oGAAoG,EAC9G,WAAW,EAAE,CAAC,CAAC,WAAW,EAC1B,KAAK,EAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAY,IAAI,EAAE,EAC7C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GACnE,CACN,EACA,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CACnB,MAAC,MAAM,IACF,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,EAChD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,aAE/E,KAAC,aAAa,cAAC,KAAC,WAAW,KAAG,GAAgB,EAC9C,MAAC,aAAa,IAAC,SAAS,EAAE,gBAAgB,aACrC,KAAC,UAAU,IAAC,KAAK,EAAC,SAAS,oBAAiB,EAC3C,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,KAAC,UAAU,IAAY,KAAK,EAAE,CAAC,CAAC,EAAE,YAAG,CAAC,CAAC,KAAK,IAA3B,CAAC,CAAC,EAAE,CAAqC,CAC9D,CAAC,IACS,IACZ,CACb,EACA,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CACpB,eAAK,SAAS,EAAC,mCAAmC,aAC7C,eAAM,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,WAAW,IAAI,QAAQ,GAAQ,EAClF,KAAC,MAAM,IACF,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EACtC,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAC7D,IACD,CACV,KAjCI,CAAC,CAAC,EAAE,CAkCR,CACV,CAAC,GACD,EACN,eAAK,SAAS,EAAC,yCAAyC,aACnD,KAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,kBAAkB,sBAAgB,EAC/E,KAAC,MAAM,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,qBAAe,IACrE,IACM,IACZ,CACd,GACA,EAEN,eAAK,SAAS,EAAC,yBAAyB,aACnC,gBAAM,SAAS,EAAC,oCAAoC,aAC9C,OAAO,CAAC,KAAK,CAAC,MAAM,UAAM,OAAO,CAAC,KAAK,IACtC,EACP,MAAC,MAAM,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,aAC7H,KAAC,aAAa,IAAC,SAAS,EAAC,MAAM,YAAC,KAAC,WAAW,KAAG,GAAgB,EAC/D,KAAC,aAAa,IAAC,SAAS,EAAE,gBAAgB,YACpC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACpB,KAAC,UAAU,IAAS,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,YAAG,CAAC,IAAvB,CAAC,CAAoC,CAC1D,CAAC,GACS,IACZ,IACR,IACL,EAGL,MAAM,CAAC,CAAC,CAAC,CACL,QAAQ,CAAC,OAAO,CAAC,CACrB,CAAC,CAAC,CAAC,CACC,cAAK,SAAS,EAAC,eAAe,YACxB,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CACtB,cAAK,SAAS,EAAC,uCAAuC,YACjD,KAAC,OAAO,IAAC,SAAS,EAAC,2CAA2C,GAAG,GAChE,CACV,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC5B,cAAK,SAAS,EAAC,6DAA6D,kCAEtE,CACV,CAAC,CAAC,CAAC,CACC,QAAQ,CAAC,OAAO,CAAC,CACrB,GACA,CACV,EAGD,eAAK,SAAS,EAAC,mCAAmC,aAC7C,aAAG,SAAS,EAAC,+BAA+B,sBACjC,OAAO,CAAC,IAAI,UAAM,UAAU,CAAC,UAAU,IAC9C,EACH,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC1B,eAAK,SAAS,EAAC,yBAAyB,aACnC,KAAC,MAAM,IACF,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,EAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,YAExD,KAAC,WAAW,IAAC,SAAS,EAAC,QAAQ,GAAG,GAC9B,EACT,KAAC,MAAM,IACF,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,EAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,YAExD,KAAC,YAAY,IAAC,SAAS,EAAC,QAAQ,GAAG,GAC/B,IACR,CACV,CAAC,CAAC,CAAC,CACC,KAAC,UAAU,IAAC,SAAS,EAAC,aAAa,YAC9B,MAAC,iBAAiB,eACb,KAAC,cAAc,IAAC,SAAS,EAAC,iBAAiB,YACtC,KAAC,kBAAkB,IACd,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,EAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,GAC3D,GACU,EACjB,KAAC,cAAc,IAAC,SAAS,EAAC,WAAW,YAChC,KAAC,cAAc,IACV,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,EAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,YAExD,KAAC,WAAW,IAAC,SAAS,EAAC,QAAQ,GAAG,GACtB,GACL,EAChB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,CACnC,KAAC,cAAc,IAAW,SAAS,EAAC,iBAAiB,YAC/C,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,CACrB,KAAC,kBAAkB,KAAG,CAC1B,CAAC,CAAC,CAAC,CACC,KAAC,cAAc,IACV,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,EAClC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,EACjC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,YAE9C,OAAO,GACI,CACrB,IAXe,GAAG,CAYP,CACrB,CAAC,EACF,KAAC,cAAc,IAAC,SAAS,EAAC,WAAW,YAChC,eAAM,SAAS,EAAC,iDAAiD,YAC3D,OAAO,CAAC,IAAI,GACX,GACK,EACjB,KAAC,cAAc,IAAC,SAAS,EAAC,iBAAiB,YACtC,KAAC,cAAc,IACV,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,EAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,GAC3D,GACU,EACjB,KAAC,cAAc,IAAC,SAAS,EAAC,WAAW,YAChC,KAAC,cAAc,IACV,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,EAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,YAExD,KAAC,YAAY,IAAC,SAAS,EAAC,QAAQ,GAAG,GACvB,GACL,IACF,GACZ,CACjB,IACA,IACL,CACV,CAAC;AACP,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAoB7B,CAAC"}