{ "name": "wnfs", "collaborators": [ "The Fission Authors" ], "description": "WebNative Filesystem API (WebAssembly)", "version": "0.2.2", "license": "Apache-2.0", "homepage": "https://fission.codes", "repository": { "type": "git", "url": "https://github.com/wnfs-wg/rs-wnfs/tree/main/wnfs-wasm" }, "keywords": [ "wnfs", "wasm", "webnative", "ipfs", "decentralisation" ], "type": "module", "module": "dist/bundler/wnfs_wasm.js", "types": "dist/nodejs/wnfs_wasm.d.ts", "exports": { ".": { "workerd": "./dist/web/workerd.js", "browser": "./dist/bundler/wnfs_wasm.js", "node": "./dist/nodejs/wnfs_wasm.cjs", "default": "./dist/bundler/wnfs_wasm.js", "types": "./dist/nodejs/wnfs_wasm.d.ts" }, "./nodejs": { "default": "./dist/nodejs/wnfs_wasm.cjs", "types": "./dist/nodejs/wnfs_wasm.d.ts" }, "./web": { "default": "./dist/web/wnfs_wasm.js", "types": "./dist/web/wnfs_wasm.d.ts" }, "./workerd": { "default": "./dist/web/workerd.js", "types": "./dist/web/wnfs_wasm.d.ts" } }, "files": [ "dist" ], "scripts": { "build": "export PROFILE=dev && export TARGET_DIR=debug && yarn run build:all", "release": "export PROFILE=release && export TARGET_DIR=release && yarn run build:all", "build:all": "wireit", "test": "yarn playwright test" }, "wireit": { "compile": { "command": "cargo build --target wasm32-unknown-unknown --profile $PROFILE", "env": { "PROFILE": { "external": true } } }, "opt": { "command": "wasm-opt -O1 ../target/wasm32-unknown-unknown/$TARGET_DIR/wnfs_wasm.wasm -o ../target/wasm32-unknown-unknown/$TARGET_DIR/wnfs_wasm.wasm", "env": { "TARGET_DIR": { "external": true } }, "dependencies": [ "compile" ] }, "bindgen:bundler": { "command": "wasm-bindgen --weak-refs --target bundler --out-dir dist/bundler ../target/wasm32-unknown-unknown/$TARGET_DIR/wnfs_wasm.wasm", "env": { "TARGET_DIR": { "external": true } }, "dependencies": [ "opt" ], "output": [ "dist/bundler" ] }, "bindgen:nodejs": { "command": "wasm-bindgen --weak-refs --target nodejs --out-dir dist/nodejs ../target/wasm32-unknown-unknown/$TARGET_DIR/wnfs_wasm.wasm && move-file dist/nodejs/wnfs_wasm.js dist/nodejs/wnfs_wasm.cjs", "env": { "TARGET_DIR": { "external": true } }, "dependencies": [ "opt" ], "output": [ "dist/nodejs" ] }, "bindgen:web": { "command": "wasm-bindgen --weak-refs --target web --out-dir dist/web ../target/wasm32-unknown-unknown/$TARGET_DIR/wnfs_wasm.wasm && cpy --flat src/loaders/workerd.js dist/web", "env": { "TARGET_DIR": { "external": true } }, "dependencies": [ "opt" ], "output": [ "dist/web" ] }, "build:all": { "dependencies": [ "bindgen:bundler", "bindgen:nodejs", "bindgen:web" ] } }, "devDependencies": { "@playwright/test": "^1.36.1", "cpy-cli": "^5.0.0", "css-loader": "^6.8.1", "file-loader": "^6.2.0", "html-webpack-plugin": "^5.5.3", "move-file-cli": "^3.0.0", "multiformats": "^13.0.0", "style-loader": "^3.3.3", "text-encoding": "^0.7.0", "ts-loader": "^9.4.4", "typescript": "^5.1.6", "uint8arrays": "^5.0.0", "webpack": "^5.88.2", "webpack-cli": "^5.1.4", "webpack-dev-server": "^4.15.1", "wireit": "^0.14.1" } }