virtualized-ui 0.0.1 → 0.1.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/dist/index.cjs +477 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +120 -0
- package/dist/index.d.ts +120 -0
- package/dist/index.js +471 -0
- package/dist/index.js.map +1 -0
- package/package.json +59 -3
- package/CLAUDE.MD +0 -54
package/package.json
CHANGED
|
@@ -1,18 +1,74 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "virtualized-ui",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "Headless virtualized table and select components for React",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.cjs",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"import": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"default": "./dist/index.js"
|
|
14
|
+
},
|
|
15
|
+
"require": {
|
|
16
|
+
"types": "./dist/index.d.cts",
|
|
17
|
+
"default": "./dist/index.cjs"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"files": [
|
|
22
|
+
"dist"
|
|
23
|
+
],
|
|
24
|
+
"sideEffects": false,
|
|
5
25
|
"keywords": [
|
|
6
26
|
"react",
|
|
7
27
|
"virtual",
|
|
28
|
+
"virtualized",
|
|
8
29
|
"table",
|
|
9
30
|
"select",
|
|
10
31
|
"headless",
|
|
11
|
-
"tanstack"
|
|
32
|
+
"tanstack",
|
|
33
|
+
"react-table",
|
|
34
|
+
"react-virtual"
|
|
12
35
|
],
|
|
13
36
|
"license": "MIT",
|
|
14
37
|
"repository": {
|
|
15
38
|
"type": "git",
|
|
16
|
-
"url": "git+https://github.com/grishalr/virtualized-ui.git"
|
|
39
|
+
"url": "git+https://github.com/grishalr/virtualized-ui.git",
|
|
40
|
+
"directory": "packages/core"
|
|
41
|
+
},
|
|
42
|
+
"homepage": "https://github.com/grishalr/virtualized-ui#readme",
|
|
43
|
+
"bugs": {
|
|
44
|
+
"url": "https://github.com/grishalr/virtualized-ui/issues"
|
|
45
|
+
},
|
|
46
|
+
"peerDependencies": {
|
|
47
|
+
"react": ">=18.0.0",
|
|
48
|
+
"react-dom": ">=18.0.0"
|
|
49
|
+
},
|
|
50
|
+
"dependencies": {
|
|
51
|
+
"@tanstack/react-table": "^8.20.0",
|
|
52
|
+
"@tanstack/react-virtual": "^3.10.0"
|
|
53
|
+
},
|
|
54
|
+
"devDependencies": {
|
|
55
|
+
"@testing-library/dom": "^10.4.1",
|
|
56
|
+
"@testing-library/react": "^16.3.2",
|
|
57
|
+
"@types/react": "^18.3.0",
|
|
58
|
+
"@types/react-dom": "^18.3.0",
|
|
59
|
+
"@vitejs/plugin-react": "^5.1.2",
|
|
60
|
+
"jsdom": "^27.4.0",
|
|
61
|
+
"react": "^18.3.0",
|
|
62
|
+
"react-dom": "^18.3.0",
|
|
63
|
+
"tsup": "^8.3.0",
|
|
64
|
+
"typescript": "^5.6.0",
|
|
65
|
+
"vitest": "^4.0.18"
|
|
66
|
+
},
|
|
67
|
+
"scripts": {
|
|
68
|
+
"build": "tsup",
|
|
69
|
+
"dev": "tsup --watch",
|
|
70
|
+
"typecheck": "tsc --noEmit",
|
|
71
|
+
"test": "vitest run",
|
|
72
|
+
"test:watch": "vitest"
|
|
17
73
|
}
|
|
18
74
|
}
|
package/CLAUDE.MD
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
# CLAUDE.md
|
|
2
|
-
|
|
3
|
-
## Project Overview
|
|
4
|
-
|
|
5
|
-
virtual-ui is a component library providing virtualized table and select primitives for React. Headless by design — logic and structure, no styles.
|
|
6
|
-
|
|
7
|
-
## Architecture
|
|
8
|
-
|
|
9
|
-
```
|
|
10
|
-
packages/core/ # npm package (@virtual-ui/core)
|
|
11
|
-
docs/ # Astro docs site
|
|
12
|
-
.storybook/ # Storybook config (stories live in packages/core/src/)
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## Key Dependencies
|
|
16
|
-
|
|
17
|
-
- **VirtualTable**: TanStack Table + TanStack Virtual
|
|
18
|
-
- **VirtualSelect**: react-select + TanStack Virtual
|
|
19
|
-
- **Docs**: Astro + Tailwind + daisyUI
|
|
20
|
-
|
|
21
|
-
## Commands
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
pnpm dev # Storybook (development)
|
|
25
|
-
pnpm build # Build package
|
|
26
|
-
pnpm build:docs # Build docs site
|
|
27
|
-
cd docs && pnpm dev # Run docs locally
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Component Guidelines
|
|
31
|
-
|
|
32
|
-
- Single component per feature, props enable variants (no separate AsyncSelect, etc.)
|
|
33
|
-
- All features opt-in via props
|
|
34
|
-
- No default styles — render semantic HTML, let users style
|
|
35
|
-
- Export types alongside components
|
|
36
|
-
|
|
37
|
-
## File Conventions
|
|
38
|
-
|
|
39
|
-
- `ComponentName.tsx` — component implementation
|
|
40
|
-
- `ComponentName.stories.tsx` — Storybook stories
|
|
41
|
-
- `types.ts` — TypeScript types per component folder
|
|
42
|
-
|
|
43
|
-
## Testing Changes
|
|
44
|
-
|
|
45
|
-
1. Run Storybook (`pnpm dev`)
|
|
46
|
-
2. Check relevant stories
|
|
47
|
-
3. Test with 10k items to verify virtualization works
|
|
48
|
-
|
|
49
|
-
## Publishing
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
pnpm build
|
|
53
|
-
cd packages/core && npm publish --access public
|
|
54
|
-
```
|