UNPKG

preact-missing-hooks

Version:

A lightweight, extendable collection of missing React-like hooks for Preact — plus fresh, powerful new ones designed specifically for modern Preact apps.

216 lines (215 loc) 6.82 kB
{ "name": "preact-missing-hooks", "version": "4.9.0", "description": "A lightweight, extendable collection of missing React-like hooks for Preact — plus fresh, powerful new ones designed specifically for modern Preact apps.", "author": "Prakhar Dubey", "license": "MIT", "main": "dist/index.js", "module": "dist/index.module.js", "types": "dist/index.d.ts", "source": "src/index.ts", "exports": { ".": { "types": "./dist/index.d.ts", "import": { "react": "./dist/react.module.js", "default": "./dist/index.module.js" }, "require": "./dist/entry.cjs" }, "./useTransition": { "types": "./dist/useTransition.d.ts", "import": "./dist/useTransition.module.js", "require": "./dist/useTransition.js" }, "./useMutationObserver": { "types": "./dist/useMutationObserver.d.ts", "import": "./dist/useMutationObserver.module.js", "require": "./dist/useMutationObserver.js" }, "./useEventBus": { "types": "./dist/useEventBus.d.ts", "import": "./dist/useEventBus.module.js", "require": "./dist/useEventBus.js" }, "./useWrappedChildren": { "types": "./dist/useWrappedChildren.d.ts", "import": "./dist/useWrappedChildren.module.js", "require": "./dist/useWrappedChildren.js" }, "./usePreferredTheme": { "types": "./dist/usePreferredTheme.d.ts", "import": "./dist/usePreferredTheme.module.js", "require": "./dist/usePreferredTheme.js" }, "./useNetworkState": { "types": "./dist/useNetworkState.d.ts", "import": "./dist/useNetworkState.module.js", "require": "./dist/useNetworkState.js" }, "./useClipboard": { "types": "./dist/useClipboard.d.ts", "import": "./dist/useClipboard.module.js", "require": "./dist/useClipboard.js" }, "./useRageClick": { "types": "./dist/useRageClick.d.ts", "import": "./dist/useRageClick.module.js", "require": "./dist/useRageClick.js" }, "./useThreadedWorker": { "types": "./dist/useThreadedWorker.d.ts", "import": "./dist/useThreadedWorker.module.js", "require": "./dist/useThreadedWorker.js" }, "./useIndexedDB": { "types": "./dist/useIndexedDB.d.ts", "import": "./dist/useIndexedDB.module.js", "require": "./dist/useIndexedDB.js" }, "./useWebRTCIP": { "types": "./dist/useWebRTCIP.d.ts", "import": "./dist/useWebRTCIP.module.js", "require": "./dist/useWebRTCIP.js" }, "./useWasmCompute": { "types": "./dist/useWasmCompute.d.ts", "import": "./dist/useWasmCompute.module.js", "require": "./dist/useWasmCompute.js" }, "./useWorkerNotifications": { "types": "./dist/useWorkerNotifications.d.ts", "import": "./dist/useWorkerNotifications.module.js", "require": "./dist/useWorkerNotifications.js" }, "./useRefPrint": { "types": "./dist/useRefPrint.d.ts", "import": "./dist/useRefPrint.module.js", "require": "./dist/useRefPrint.js" }, "./useRBAC": { "types": "./dist/useRBAC.d.ts", "import": "./dist/useRBAC.module.js", "require": "./dist/useRBAC.js" }, "./usePrefetch": { "types": "./dist/usePrefetch.d.ts", "import": "./dist/usePrefetch.module.js", "require": "./dist/usePrefetch.js" }, "./usePoll": { "types": "./dist/usePoll.d.ts", "import": "./dist/usePoll.module.js", "require": "./dist/usePoll.js" }, "./useDeviceData": { "types": "./dist/useDeviceData.d.ts", "import": "./dist/useDeviceData.module.js", "require": "./dist/useDeviceData.js" }, "./react": { "types": "./dist/index.d.ts", "import": "./dist/react.module.js", "require": "./dist/react.js" } }, "scripts": { "build": "node scripts/ensure-microbundle-patch.cjs && microbundle --alias react=preact/compat && npm run build:react && node scripts/generate-entry.cjs", "llm:generate": "hayagriva-llm generate --mode ai --include-src --verbose", "build:react": "rollup -c scripts/rollup.react.config.cjs", "dev": "microbundle watch", "prepublishOnly": "npm run build", "test": "vitest run", "test:preact": "vitest run --project preact", "test:react": "vitest run --project react", "type-check": "tsc --noEmit", "demo": "npx serve -l 5000", "lint": "eslint src", "format": "prettier --write \"src/**/*.{ts,tsx,json,md}\"", "format:check": "prettier --check \"src/**/*.{ts,tsx,json,md}\"", "prepare": "husky && node scripts/ensure-microbundle-patch.cjs", "clean:cache": "node -e \"try{require('fs').rmSync('node_modules/.cache',{recursive:true,force:true});console.log('Cache cleared');}catch(e){}\"", "size": "npm run clean:cache && npm run build && size-limit" }, "size-limit": [ { "path": "dist/index.module.js", "limit": "20 KB" }, { "path": "dist/index.js", "limit": "20 KB" }, { "path": "dist/react.module.js", "limit": "20 KB" }, { "path": "dist/react.js", "limit": "20 KB" } ], "keywords": [ "preact", "hooks", "usetransition", "useMutationObserver", "useEventBus", "useWrappedChildren", "usePreferredTheme", "useNetworkState", "useClipboard", "usePrefetch", "usePoll", "useDeviceData", "useRageClick", "rage click", "sentry", "react-hooks", "microbundle", "typescript", "preact-hooks" ], "repository": { "type": "git", "url": "https://github.com/prakhardubey2002/Preact-Missing-Hooks" }, "dependencies": { "preact": ">=10.0.0" }, "devDependencies": { "@eslint/js": "^9.15.0", "@size-limit/file": "^11.2.0", "@testing-library/jest-dom": "^6.6.3", "@testing-library/preact": "^3.2.4", "@testing-library/react": "^16.0.1", "@types/jest": "^29.5.14", "@types/react": "^18.3.0", "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "fake-indexeddb": "^6.0.2", "hayagriva-llm": "^1.2.0", "husky": "^9.1.7", "jsdom": "^26.1.0", "microbundle": "^0.15.1", "prettier": "^3.3.3", "react": "^18.3.1", "react-dom": "^18.3.1", "size-limit": "^11.2.0", "typescript": "^5.8.3", "typescript-eslint": "^8.15.0", "vitest": "^3.1.4" }, "peerDependencies": { "preact": ">=10.0.0", "react": ">=17.0.0" }, "peerDependenciesMeta": { "preact": { "optional": true }, "react": { "optional": true } } }