@geovi/the-datagrid 0.0.0-preview.0.0.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.
- package/README.md +293 -0
- package/dist/ReactDataGrid.d.ts +9 -0
- package/dist/ReactDataGrid.d.ts.map +1 -0
- package/dist/components/ui/button.d.ts +12 -0
- package/dist/components/ui/button.d.ts.map +1 -0
- package/dist/components/ui/checkbox.d.ts +5 -0
- package/dist/components/ui/checkbox.d.ts.map +1 -0
- package/dist/components/ui/command.d.ts +81 -0
- package/dist/components/ui/command.d.ts.map +1 -0
- package/dist/components/ui/dialog.d.ts +20 -0
- package/dist/components/ui/dialog.d.ts.map +1 -0
- package/dist/components/ui/dropdown-menu.d.ts +28 -0
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/components/ui/input.d.ts +4 -0
- package/dist/components/ui/input.d.ts.map +1 -0
- package/dist/components/ui/label.d.ts +6 -0
- package/dist/components/ui/label.d.ts.map +1 -0
- package/dist/components/ui/popover.d.ts +8 -0
- package/dist/components/ui/popover.d.ts.map +1 -0
- package/dist/components/ui/select.d.ts +14 -0
- package/dist/components/ui/select.d.ts.map +1 -0
- package/dist/components/ui/table.d.ts +11 -0
- package/dist/components/ui/table.d.ts.map +1 -0
- package/dist/filters/utils.d.ts +12 -0
- package/dist/filters/utils.d.ts.map +1 -0
- package/dist/hooks/useControllableState.d.ts +6 -0
- package/dist/hooks/useControllableState.d.ts.map +1 -0
- package/dist/index.js +4064 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/main.d.ts +3 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/sorting/utils.d.ts +13 -0
- package/dist/sorting/utils.d.ts.map +1 -0
- package/dist/types.d.ts +169 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/utils/column.d.ts +4 -0
- package/dist/utils/column.d.ts.map +1 -0
- package/dist/utils/helpers.d.ts +11 -0
- package/dist/utils/helpers.d.ts.map +1 -0
- package/package.json +90 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,MAAM,CAAA;AAG5C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
|
package/dist/main.d.ts
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { default, ReactDataGrid, plugins } from './ReactDataGrid';
|
|
2
|
+
export type { IColumn, SortDirection, TypeColumn, TypeColumns, TypeComputedProps, TypeDataGridProps, TypeDataSource, TypeFilterOperator, TypeFilterType, TypeFilterTypes, TypeFilterValue, TypeI18n, TypeOnSelectionChangeArg, TypePaginationMode, TypeRowSelection, TypeSingleFilterValue, TypeSingleSortInfo, TypeSortInfo, } from './types';
|
|
3
|
+
//# sourceMappingURL=main.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACjE,YAAY,EACV,OAAO,EACP,aAAa,EACb,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,eAAe,EACf,QAAQ,EACR,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,YAAY,GACb,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { TypeSortInfo, TypeColumn } from '../types';
|
|
2
|
+
import { SortingState } from '@tanstack/react-table';
|
|
3
|
+
export declare function getSortDir(sortInfo: TypeSortInfo, sortName: string): 0 | 1 | -1;
|
|
4
|
+
export declare function toggleSortInfo(opts: {
|
|
5
|
+
sortInfo: TypeSortInfo;
|
|
6
|
+
col: TypeColumn;
|
|
7
|
+
allowUnsort: boolean;
|
|
8
|
+
defaultDir: 1 | -1;
|
|
9
|
+
multi: boolean;
|
|
10
|
+
}): TypeSortInfo;
|
|
11
|
+
export declare function toTanstackSorting(sortInfo: TypeSortInfo, columns: TypeColumn[]): SortingState;
|
|
12
|
+
export declare function applyLocalSort(data: any[], sortInfo: TypeSortInfo): any[];
|
|
13
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/sorting/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EAEZ,UAAU,EACX,MAAM,UAAU,CAAA;AACjB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAKzD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAK/E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE;IACnC,QAAQ,EAAE,YAAY,CAAA;IACtB,GAAG,EAAE,UAAU,CAAA;IACf,WAAW,EAAE,OAAO,CAAA;IACpB,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;IAClB,KAAK,EAAE,OAAO,CAAA;CACf,GAAG,YAAY,CA8Bf;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,UAAU,EAAE,GACpB,YAAY,CAgBd;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,YAAY,GAAG,GAAG,EAAE,CA6BzE"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* the-datagrid
|
|
3
|
+
*
|
|
4
|
+
* Compatibility-oriented type surface inspired by Inovua ReactDataGrid (MIT).
|
|
5
|
+
* Goal: keep familiar type names/contracts while implementing our own runtime.
|
|
6
|
+
*/
|
|
7
|
+
import type * as React from 'react';
|
|
8
|
+
export type TypeDataSource = unknown[] | Promise<unknown[]> | Promise<{
|
|
9
|
+
data: unknown[];
|
|
10
|
+
count: number;
|
|
11
|
+
}> | ((props: unknown) => unknown[]) | ((props: unknown) => Promise<unknown[]>) | ((props: unknown) => Promise<{
|
|
12
|
+
data: unknown[];
|
|
13
|
+
count: number;
|
|
14
|
+
}>);
|
|
15
|
+
export type SortDirection = 1 | -1 | 0;
|
|
16
|
+
export type TypeSingleSortInfo = {
|
|
17
|
+
dir: SortDirection;
|
|
18
|
+
name: string;
|
|
19
|
+
id?: string;
|
|
20
|
+
type?: string;
|
|
21
|
+
fn?: (...args: unknown[]) => unknown;
|
|
22
|
+
columnName?: string;
|
|
23
|
+
};
|
|
24
|
+
export type TypeSortInfo = TypeSingleSortInfo | TypeSingleSortInfo[] | null;
|
|
25
|
+
export type TypeSingleFilterValue = {
|
|
26
|
+
name: string;
|
|
27
|
+
type: string;
|
|
28
|
+
operator: string;
|
|
29
|
+
value: unknown;
|
|
30
|
+
emptyValue?: unknown;
|
|
31
|
+
fn?: (arg: unknown) => unknown;
|
|
32
|
+
getFilterValue?: (...args: unknown[]) => unknown;
|
|
33
|
+
active?: boolean;
|
|
34
|
+
};
|
|
35
|
+
export type TypeFilterValue = TypeSingleFilterValue[] | null;
|
|
36
|
+
export type TypeFilterOperator = {
|
|
37
|
+
name: string;
|
|
38
|
+
fn: (args: {
|
|
39
|
+
value: unknown;
|
|
40
|
+
filterValue: unknown;
|
|
41
|
+
emptyValue?: unknown;
|
|
42
|
+
data?: unknown;
|
|
43
|
+
column?: unknown;
|
|
44
|
+
}) => boolean;
|
|
45
|
+
filterOnEmptyValue?: boolean;
|
|
46
|
+
valueOnOperatorSelect?: unknown;
|
|
47
|
+
disableFilterEditor?: boolean;
|
|
48
|
+
};
|
|
49
|
+
export type TypeFilterType = {
|
|
50
|
+
type: string;
|
|
51
|
+
emptyValue: unknown;
|
|
52
|
+
operators: TypeFilterOperator[];
|
|
53
|
+
};
|
|
54
|
+
export type TypeFilterTypes = Record<string, TypeFilterType>;
|
|
55
|
+
export interface IColumn {
|
|
56
|
+
name?: string;
|
|
57
|
+
id?: string;
|
|
58
|
+
header?: React.ReactNode;
|
|
59
|
+
renderHeader?: (cellProps: unknown) => React.ReactNode;
|
|
60
|
+
render?: (value: unknown, args: {
|
|
61
|
+
data: unknown;
|
|
62
|
+
rowIndex: number;
|
|
63
|
+
column: TypeColumn;
|
|
64
|
+
columnId: string;
|
|
65
|
+
}) => React.ReactNode;
|
|
66
|
+
width?: number;
|
|
67
|
+
defaultWidth?: number;
|
|
68
|
+
minWidth?: number;
|
|
69
|
+
maxWidth?: number;
|
|
70
|
+
flex?: number | null;
|
|
71
|
+
defaultFlex?: number | null;
|
|
72
|
+
visible?: boolean;
|
|
73
|
+
defaultVisible?: boolean;
|
|
74
|
+
hideable?: boolean;
|
|
75
|
+
draggable?: boolean;
|
|
76
|
+
sortable?: boolean;
|
|
77
|
+
sortName?: string;
|
|
78
|
+
filterable?: boolean;
|
|
79
|
+
filterType?: string;
|
|
80
|
+
filterName?: string;
|
|
81
|
+
filterEditor?: React.ComponentType<Record<string, unknown>>;
|
|
82
|
+
filterEditorProps?: unknown;
|
|
83
|
+
textAlign?: 'start' | 'end' | 'left' | 'right' | 'center';
|
|
84
|
+
headerAlign?: 'start' | 'end' | 'left' | 'right' | 'center';
|
|
85
|
+
className?: string;
|
|
86
|
+
style?: unknown;
|
|
87
|
+
headerProps?: {
|
|
88
|
+
className?: string;
|
|
89
|
+
style?: React.CSSProperties;
|
|
90
|
+
};
|
|
91
|
+
[key: string]: unknown;
|
|
92
|
+
}
|
|
93
|
+
export type TypeColumn = IColumn;
|
|
94
|
+
export type TypeColumns = TypeColumn[];
|
|
95
|
+
export type TypeI18n = {
|
|
96
|
+
[key: string]: string | React.ReactNode;
|
|
97
|
+
};
|
|
98
|
+
export type TypeRowSelection = string | number | boolean | {
|
|
99
|
+
[key: string]: boolean;
|
|
100
|
+
} | null;
|
|
101
|
+
export type TypeOnSelectionChangeArg = {
|
|
102
|
+
selected: TypeRowSelection;
|
|
103
|
+
data?: unknown;
|
|
104
|
+
unselected?: TypeRowSelection;
|
|
105
|
+
originalData?: TypeDataSource;
|
|
106
|
+
};
|
|
107
|
+
export type TypeComputedProps = {
|
|
108
|
+
reload: () => void;
|
|
109
|
+
getData: () => unknown[];
|
|
110
|
+
getCount: () => number;
|
|
111
|
+
getSkip: () => number;
|
|
112
|
+
getLimit: () => number;
|
|
113
|
+
setSkip: (skip: number) => void;
|
|
114
|
+
setLimit: (limit: number) => void;
|
|
115
|
+
getSortInfo: () => TypeSortInfo;
|
|
116
|
+
setSortInfo: (sortInfo: TypeSortInfo) => void;
|
|
117
|
+
getFilterValue: () => TypeFilterValue;
|
|
118
|
+
setFilterValue: (filterValue: TypeFilterValue) => void;
|
|
119
|
+
getColumnOrder: () => string[];
|
|
120
|
+
setColumnOrder: (columnOrder: string[]) => void;
|
|
121
|
+
};
|
|
122
|
+
export type TypePaginationMode = true | false | 'remote' | 'local';
|
|
123
|
+
export type TypeDataGridProps = {
|
|
124
|
+
theme?: string;
|
|
125
|
+
idProperty: string;
|
|
126
|
+
columns: TypeColumns;
|
|
127
|
+
dataSource: TypeDataSource;
|
|
128
|
+
columnOrder?: string[];
|
|
129
|
+
onColumnOrderChange?: (columnOrder: string[]) => void;
|
|
130
|
+
enableColumnFilterContextMenu?: boolean;
|
|
131
|
+
enableColumnAutosize?: boolean;
|
|
132
|
+
skipHeaderOnAutoSize?: boolean;
|
|
133
|
+
enableFiltering?: boolean;
|
|
134
|
+
filterValue?: TypeFilterValue;
|
|
135
|
+
defaultFilterValue?: TypeFilterValue;
|
|
136
|
+
onFilterValueChange?: (filterValue: TypeFilterValue) => void;
|
|
137
|
+
filterTypes?: TypeFilterTypes;
|
|
138
|
+
filteredRowsCount?: (filteredRows: number) => void;
|
|
139
|
+
sortInfo?: TypeSortInfo;
|
|
140
|
+
defaultSortInfo?: TypeSortInfo;
|
|
141
|
+
onSortInfoChange?: (sortInfo: TypeSortInfo) => void;
|
|
142
|
+
allowUnsort?: boolean;
|
|
143
|
+
defaultSortingDirection?: 'desc' | 'asc';
|
|
144
|
+
pagination?: TypePaginationMode;
|
|
145
|
+
skip?: number;
|
|
146
|
+
defaultSkip?: number;
|
|
147
|
+
limit?: number;
|
|
148
|
+
defaultLimit?: number;
|
|
149
|
+
onSkipChange?: (skip: number) => void;
|
|
150
|
+
onLimitChange?: (limit: number) => void;
|
|
151
|
+
pageSizes?: number[];
|
|
152
|
+
virtualized?: boolean;
|
|
153
|
+
columnUserSelect?: true | false | 'text' | 'none';
|
|
154
|
+
i18n?: TypeI18n;
|
|
155
|
+
showColumnMenuTool?: boolean;
|
|
156
|
+
rowHeight?: number;
|
|
157
|
+
headerHeight?: number;
|
|
158
|
+
filterRowHeight?: number;
|
|
159
|
+
loading?: boolean;
|
|
160
|
+
checkboxColumn?: boolean | IColumn;
|
|
161
|
+
selected?: TypeRowSelection;
|
|
162
|
+
defaultSelected?: TypeRowSelection;
|
|
163
|
+
onSelectionChange?: (config: TypeOnSelectionChangeArg) => void;
|
|
164
|
+
onReady?: (computedPropsRef: React.MutableRefObject<TypeComputedProps | null>) => void;
|
|
165
|
+
handle?: (gridApiRef: React.MutableRefObject<TypeComputedProps | null>) => void;
|
|
166
|
+
className?: string;
|
|
167
|
+
style?: React.CSSProperties;
|
|
168
|
+
};
|
|
169
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"column.d.ts","sourceRoot":"","sources":["../../src/utils/column.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAE1C,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,CAMnD;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,CAEzD"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TypeDataSource, TypeDataGridProps } from '../types';
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
export declare function t(i18n: TypeDataGridProps["i18n"], key: string, fallback: string): React.ReactNode;
|
|
4
|
+
export declare function coerceUserSelect(v: TypeDataGridProps["columnUserSelect"]): "none" | "text";
|
|
5
|
+
export declare function isRemoteDataSource(ds: TypeDataSource): boolean;
|
|
6
|
+
export declare function clamp(n: number, min: number, max: number): number;
|
|
7
|
+
export declare function estimateAutoWidth(args: {
|
|
8
|
+
header?: string;
|
|
9
|
+
values: any[];
|
|
10
|
+
}): number;
|
|
11
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAEjE,wBAAgB,CAAC,CACf,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAC/B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACf,KAAK,CAAC,SAAS,CAGjB;AAED,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,GACvC,MAAM,GAAG,MAAM,CAGjB;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAE9D;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,GAAG,EAAE,CAAA;CACd,GAAG,MAAM,CAST"}
|
package/package.json
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@geovi/the-datagrid",
|
|
3
|
+
"version": "0.0.0-preview.0.0.0",
|
|
4
|
+
"description": "A modern, feature-rich React data grid component built with shadcn/ui and TanStack Table",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/main.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/main.d.ts",
|
|
12
|
+
"import": "./dist/index.js"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"README.md"
|
|
18
|
+
],
|
|
19
|
+
"keywords": [
|
|
20
|
+
"react",
|
|
21
|
+
"datagrid",
|
|
22
|
+
"data-grid",
|
|
23
|
+
"table",
|
|
24
|
+
"shadcn",
|
|
25
|
+
"tanstack-table",
|
|
26
|
+
"virtualized",
|
|
27
|
+
"filtering",
|
|
28
|
+
"sorting"
|
|
29
|
+
],
|
|
30
|
+
"author": "",
|
|
31
|
+
"license": "MIT",
|
|
32
|
+
"repository": {
|
|
33
|
+
"type": "git",
|
|
34
|
+
"url": "https://github.com/geo-vi/the-datagrid.git"
|
|
35
|
+
},
|
|
36
|
+
"scripts": {
|
|
37
|
+
"dev": "vite",
|
|
38
|
+
"build": "tsc -p ./tsconfig-build.json && vite build",
|
|
39
|
+
"lint": "eslint .",
|
|
40
|
+
"format": "prettier --write \"src/**/*.{ts,tsx,js,jsx,json,css,md}\" \"examples/src/**/*.{ts,tsx,js,jsx,json,css}\"",
|
|
41
|
+
"format:check": "prettier --check \"src/**/*.{ts,tsx,js,jsx,json,css,md}\" \"examples/src/**/*.{ts,tsx,js,jsx,json,css}\"",
|
|
42
|
+
"preview": "vite preview",
|
|
43
|
+
"prepublishOnly": "npm run build",
|
|
44
|
+
"publish-release": "npm run build && npm publish --tag latest --access public"
|
|
45
|
+
},
|
|
46
|
+
"dependencies": {
|
|
47
|
+
"@radix-ui/react-checkbox": "^1.3.3",
|
|
48
|
+
"@radix-ui/react-dialog": "^1.1.15",
|
|
49
|
+
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
50
|
+
"@radix-ui/react-label": "^2.1.8",
|
|
51
|
+
"@radix-ui/react-popover": "^1.1.15",
|
|
52
|
+
"@radix-ui/react-select": "^2.2.6",
|
|
53
|
+
"@radix-ui/react-slot": "^1.2.4",
|
|
54
|
+
"@tabler/icons-react": "^3.36.1",
|
|
55
|
+
"@tailwindcss/vite": "^4.1.18",
|
|
56
|
+
"@tanstack/react-table": "^8.21.3",
|
|
57
|
+
"@tanstack/react-virtual": "^3.13.14",
|
|
58
|
+
"class-variance-authority": "^0.7.1",
|
|
59
|
+
"clsx": "^2.1.1",
|
|
60
|
+
"cmdk": "^1.1.1",
|
|
61
|
+
"lucide-react": "^0.562.0",
|
|
62
|
+
"react": "^19.2.0",
|
|
63
|
+
"react-dom": "^19.2.0",
|
|
64
|
+
"tailwind-merge": "^3.4.0",
|
|
65
|
+
"tailwindcss-animate": "^1.0.7"
|
|
66
|
+
},
|
|
67
|
+
"devDependencies": {
|
|
68
|
+
"@eslint/js": "^9.39.2",
|
|
69
|
+
"@types/node": "^25.0.3",
|
|
70
|
+
"@types/react": "^19.2.7",
|
|
71
|
+
"@types/react-dom": "^19.2.3",
|
|
72
|
+
"@vitejs/plugin-react": "^5.1.2",
|
|
73
|
+
"eslint": "^9.39.2",
|
|
74
|
+
"eslint-plugin-react-hooks": "^7.0.1",
|
|
75
|
+
"eslint-plugin-react-refresh": "^0.4.26",
|
|
76
|
+
"globals": "^17.0.0",
|
|
77
|
+
"prettier": "^3.7.4",
|
|
78
|
+
"tailwindcss": "^4.1.18",
|
|
79
|
+
"tw-animate-css": "^1.4.0",
|
|
80
|
+
"typescript": "^5.9.3",
|
|
81
|
+
"typescript-eslint": "^8.51.0",
|
|
82
|
+
"vite": "^7.3.0",
|
|
83
|
+
"vite-plugin-dts": "^4.5.4"
|
|
84
|
+
},
|
|
85
|
+
"peerDependencies": {
|
|
86
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
87
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
88
|
+
},
|
|
89
|
+
"packageManager": "yarn@4.12.0"
|
|
90
|
+
}
|