@blac/react
Version:
React bindings for BlaC — useBloc hook with automatic re-render optimization
145 lines • 4.06 kB
JSON
{
"name": "@blac/react",
"version": "3.0.0",
"license": "MIT",
"author": "Brendan Mullins <jsnanigans@gmail.com>",
"description": "React bindings for BlaC — useBloc hook with automatic re-render optimization",
"repository": {
"type": "git",
"url": "git+https://github.com/jsnanigans/blac.git",
"directory": "packages/blac-react"
},
"homepage": "https://github.com/jsnanigans/blac#readme",
"bugs": {
"url": "https://github.com/jsnanigans/blac/issues"
},
"type": "module",
"main": "./dist/index.cjs",
"module": "./dist/index.js",
"types": "./dist/index.d.ts",
"typesVersions": {
"*": {
"testing": [
"./dist/testing.d.ts"
]
}
},
"exports": {
".": {
"import": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
},
"require": {
"types": "./dist/index.d.cts",
"default": "./dist/index.cjs"
}
},
"./testing": {
"import": {
"types": "./dist/testing.d.ts",
"default": "./dist/testing.js"
},
"require": {
"types": "./dist/testing.d.cts",
"default": "./dist/testing.cjs"
}
}
},
"files": [
"dist",
"README.md",
"LICENSE"
],
"publishConfig": {
"access": "public"
},
"sideEffects": false,
"keywords": [
"react",
"typescript",
"state-management",
"reactjs",
"observer-pattern",
"bloc",
"bloc-pattern"
],
"size-limit": [
{
"name": "@blac/react (ESM, brotli, excl. peers)",
"path": "dist/index.js",
"limit": "3.5 kB",
"ignore": [
"react",
"react-dom",
"@blac/core",
"@types/react"
]
}
],
"dependencies": {
"@dirtytalk/structural": "^0.0.9"
},
"peerDependencies": {
"@testing-library/react": "^14.0.0 || ^15.0.0 || ^16.0.0",
"@types/react": "^18.0.0 || ^19.0.0",
"react": "^18.0.0 || ^19.0.0",
"@blac/core": "^2.1.0"
},
"peerDependenciesMeta": {
"@types/react": {
"optional": true
},
"@types/react-dom": {
"optional": true
},
"@testing-library/react": {
"optional": true
}
},
"devDependencies": {
"@size-limit/preset-small-lib": "^11.1.6",
"size-limit": "^11.1.6",
"@babel/core": "^7.28.0",
"@rolldown/plugin-babel": "^0.2.3",
"@testing-library/dom": "^10.4.1",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@testing-library/user-event": "^14.6.1",
"@types/babel__core": "^7.20.5",
"@types/react": "^19.2.15",
"@types/react-dom": "^19.2.3",
"@vitejs/plugin-react": "^6.0.2",
"babel-plugin-react-compiler": "^1.0.0",
"happy-dom": "^20.9.0",
"jsdom": "^29.1.1",
"publint": "^0.3.21",
"react": "^19.2.6",
"react-dom": "^19.2.6",
"typescript": "^6.0.3",
"vite": "npm:@voidzero-dev/vite-plus-core@latest",
"vite-plus": "^0.1.23",
"vitest": "npm:@voidzero-dev/vite-plus-test@latest",
"@blac/core": "2.1.0"
},
"scripts": {
"dev": "vp pack --watch",
"build": "vp pack && tsc -p tsconfig.build.json && cp dist/index.d.ts dist/index.d.cts && cp dist/testing.d.ts dist/testing.d.cts",
"clean": "rm -rf dist",
"format": "vp fmt \".\"",
"format:check": "vp fmt \".\" --check",
"lint": "vp lint src",
"lint:fix": "vp lint src --fix",
"test": "vp test run",
"test:watch": "vp test --watch",
"test:memory": "NODE_OPTIONS='--expose-gc' vp test run --config vitest.config.performance.ts",
"test:performance": "vp test run --config vitest.config.performance.ts",
"test:compiler": "vp test run --config vitest.config.compiler.ts",
"test:watch:compiler": "vp test --watch --config vitest.config.compiler.ts",
"test:both": "pnpm test && echo '\n\n=== Running tests WITH React Compiler ===\n' && pnpm test:compiler",
"verify": "node ../../scripts/run-workspace-bin.mjs publint",
"typecheck": "tsc --noEmit",
"size": "size-limit",
"deploy": "pnpm publish --access public"
}
}