virtua
Version:
A zero-config, fast and small (~3kB) virtual list (and grid) component for React, Vue, Solid and Svelte.
213 lines (212 loc) • 6.88 kB
JSON
{
"name": "virtua",
"version": "0.40.3",
"description": "A zero-config, fast and small (~3kB) virtual list (and grid) component for React, Vue, Solid and Svelte.",
"main": "lib/index.js",
"module": "lib/index.mjs",
"types": "lib/index.d.ts",
"exports": {
"./package.json": "./package.json",
".": {
"types": "./lib/index.d.ts",
"import": "./lib/index.mjs",
"default": "./lib/index.js"
},
"./vue": {
"types": "./lib/vue/index.d.ts",
"import": "./lib/vue/index.mjs",
"default": "./lib/vue/index.js"
},
"./solid": {
"types": "./lib/solid/index.d.ts",
"solid": "./lib/solid/index.jsx",
"import": "./lib/solid/index.mjs",
"default": "./lib/solid/index.js"
},
"./svelte": {
"types": "./lib/svelte/index.d.ts",
"svelte": "./lib/svelte/index.js",
"default": "./lib/svelte/index.js"
},
"./unstable_core": {
"types": "./lib/core/index.d.ts",
"import": "./lib/core/index.mjs",
"default": "./lib/core/index.js"
}
},
"files": [
"lib"
],
"sideEffects": false,
"scripts": {
"build": "rollup -c",
"tsc": "tsc -p . --noEmit",
"test": "vitest --run --silent",
"lint": "eslint 'src/**/*.{js,jsx,ts,tsx}'",
"check:svelte": "svelte-check --tsconfig ./tsconfig.svelte.json",
"storybook": "storybook dev -p 6006",
"storybook:rtl": "STORYBOOK_RTL=1 npm run storybook",
"storybook:vue": "STORYBOOK_VUE=1 npm run storybook",
"storybook:solid": "STORYBOOK_SOLID=1 npm run storybook",
"storybook:svelte": "STORYBOOK_SVELTE=1 npm run storybook",
"storybook:build": "storybook build",
"storybook:deploy": "STORYBOOK_DEPLOY=1 npm run storybook:build && STORYBOOK_VUE=1 npm run storybook:build -- -o storybook-static/vue && STORYBOOK_SOLID=1 npm run storybook:build -- -o storybook-static/solid && STORYBOOK_SVELTE=1 npm run storybook:build -- -o storybook-static/svelte",
"storybook:test": "concurrently -k -s first -n \"SB,TEST\" -c \"magenta,blue\" \"npm run storybook -- --no-open\" \"wait-on tcp:6006 && test-storybook\"",
"e2e": "npx playwright test",
"typedoc": "typedoc",
"size": "size-limit",
"prepublishOnly": "npm run typedoc && rimraf lib && npm run build",
"deps:patch": "npm-check-updates --target patch -u",
"deps:minor": "npm-check-updates --target minor -u",
"deps:latest": "npm-check-updates --target latest -u"
},
"devDependencies": {
"@atlaskit/pragmatic-drag-and-drop": "^1.4.0",
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.0.0",
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.0.3",
"@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^1.1.4",
"@babel/plugin-transform-react-pure-annotations": "^7.25.9",
"@dnd-kit/core": "^6.3.1",
"@dnd-kit/sortable": "^10.0.0",
"@emotion/react": "^11.13.5",
"@emotion/styled": "^11.13.5",
"@faker-js/faker": "^9.4.0",
"@formkit/auto-animate": "^0.8.2",
"@mui/material": "^6.1.10",
"@playwright/test": "^1.50.1",
"@radix-ui/colors": "^3.0.0",
"@radix-ui/react-icons": "^1.3.2",
"@radix-ui/react-scroll-area": "^1.2.2",
"@radix-ui/react-select": "^2.1.5",
"@rollup/plugin-babel": "^6.0.4",
"@rollup/plugin-terser": "^0.4.4",
"@rollup/plugin-typescript": "^11.1.6",
"@size-limit/preset-small-lib": "^11.1.6",
"@storybook/addon-storysource": "^8.6.2",
"@storybook/docs-tools": "^8.6.2",
"@storybook/react": "^8.6.2",
"@storybook/react-vite": "^8.6.2",
"@storybook/source-loader": "^8.6.2",
"@storybook/svelte": "^8.6.2",
"@storybook/svelte-vite": "^8.6.2",
"@storybook/test-runner": "^0.22.0",
"@storybook/vue3": "^8.6.2",
"@storybook/vue3-vite": "^8.6.2",
"@sveltejs/vite-plugin-svelte": "^4.0.4",
"@tanstack/react-virtual": "^3.11.3",
"@testing-library/dom": "^10.4.0",
"@testing-library/react": "^16.2.0",
"@testing-library/vue": "^8.1.0",
"@types/jsdom": "^21.1.7",
"@types/react": "^18.3.18",
"@types/react-dom": "^18.3.5",
"@types/react-virtualized": "^9.22.0",
"@types/react-window": "^1.8.8",
"@vitejs/plugin-react": "^4.3.4",
"@vitejs/plugin-vue": "^5.1.5",
"@vitejs/plugin-vue-jsx": "^4.1.1",
"babel-preset-solid": "^1.9.3",
"cmdk": "^1.0.4",
"concurrently": "^9.1.2",
"eslint": "^9.19.0",
"eslint-import-resolver-typescript": "^3.7.0",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-react": "^7.37.4",
"eslint-plugin-react-compiler": "19.0.0-beta-e1e972c-20250221",
"eslint-plugin-react-hooks": "^5.0.0",
"eslint-plugin-solid": "^0.14.5",
"eslint-plugin-vue": "^9.32.0",
"glob": "^11.0.1",
"jsdom": "^26.0.0",
"npm-check-updates": "^17.0.6",
"re-resizable": "^6.10.3",
"react": "^18.3.1",
"react-content-loader": "^7.0.2",
"react-dom": "^18.3.1",
"react-is": "^18.3.1",
"react-merge-refs": "^2.1.1",
"react-new-window": "^1.0.1",
"react-virtualized": "^9.22.6",
"react-virtuoso": "^4.12.3",
"react-window": "^1.8.11",
"rimraf": "^6.0.1",
"rollup": "^4.27.4",
"rollup-plugin-banner2": "^1.3.1",
"size-limit": "^11.1.6",
"solid-js": "^1.9.4",
"storybook": "^8.6.2",
"storybook-solidjs": "^1.0.0-beta.6",
"storybook-solidjs-vite": "^1.0.0-beta.6",
"svelte": "^5.0.0",
"svelte-check": "^4.0.0",
"svelte2tsx": "^0.7.34",
"typedoc": "^0.27.9",
"typedoc-plugin-markdown": "^4.4.2",
"typedoc-plugin-vue": "^1.4.0",
"typescript": "^5.7.3",
"typescript-eslint": "^8.26.0",
"unplugin-vue-jsx": "^0.5.0",
"virtua": "^0.40.0",
"vite": "5.1.8",
"vite-plugin-solid": "^2.11.0",
"vitest": "^2.1.8",
"vue": "^3.4.34",
"vue-eslint-parser": "^9.4.3",
"wait-on": "^8.0.2"
},
"peerDependencies": {
"react": ">=16.14.0",
"react-dom": ">=16.14.0",
"solid-js": ">=1.0",
"svelte": ">=5.0",
"vue": ">=3.2"
},
"peerDependenciesMeta": {
"react": {
"optional": true
},
"react-dom": {
"optional": true
},
"vue": {
"optional": true
},
"solid-js": {
"optional": true
},
"svelte": {
"optional": true
}
},
"repository": {
"type": "git",
"url": "git+https://github.com/inokawa/virtua.git"
},
"keywords": [
"react",
"react-component",
"vue",
"solid",
"svelte",
"ui",
"headless",
"list",
"grid",
"table",
"flex",
"scroll",
"scroller",
"scrolling",
"virtual",
"virtualized",
"virtualization",
"infinite",
"windowing"
],
"author": "inokawa <stratoooo-taster@yahoo.co.jp> (https://github.com/inokawa/)",
"license": "MIT",
"bugs": {
"url": "https://github.com/inokawa/virtua/issues"
},
"homepage": "https://github.com/inokawa/virtua#readme"
}