{
  "name": "granny-ro-js",
  "version": "1.5.0",
  "description": "Pure-JS reader for .gr2 (Granny3D format 6) files : Oodle0 decompression + skeleton / mesh / animation / texture extraction + pose composition.",
  "type": "module",
  "main": "./dist/granny-ro.cjs",
  "module": "./dist/granny-ro.esm.js",
  "types": "./dist/granny-ro.d.ts",
  "browser": "./dist/granny-ro.esm.js",
  "jsdelivr": "./dist/granny-ro.esm.js",
  "unpkg": "./dist/granny-ro.esm.js",
  "exports": {
    ".": {
      "types": "./dist/granny-ro.d.ts",
      "import": "./dist/granny-ro.esm.js",
      "require": "./dist/granny-ro.cjs"
    },
    "./split": {
      "types": "./dist/granny-ro.d.ts",
      "import": "./dist/granny-ro.split.esm.js"
    },
    "./wasm": {
      "types": "./dist/granny-ro.d.ts",
      "import": "./dist/granny-ro.wasm.esm.js"
    },
    "./file": {
      "types": "./dist/file.d.ts",
      "import": "./dist/file.esm.js",
      "require": "./dist/file.cjs"
    },
    "./oodle0": {
      "types": "./dist/oodle0.d.ts",
      "import": "./dist/oodle0.esm.js",
      "require": "./dist/oodle0.cjs"
    },
    "./typetree": {
      "types": "./dist/typetree.d.ts",
      "import": "./dist/typetree.esm.js",
      "require": "./dist/typetree.cjs"
    },
    "./package.json": "./package.json"
  },
  "files": [
    "dist/",
    "index.d.ts",
    "README.md",
    "LICENSE",
    "CHANGELOG.md"
  ],
  "scripts": {
    "build": "node scripts/build-dist.mjs",
    "build:wasm": "asc src/wasm/kernels.ts -o src/wasm/kernels.wasm --optimize --runtime stub --use abort= && node scripts/wasm-inline.mjs",
    "prepack": "node scripts/build-dist.mjs",
    "bake": "node scripts/bake-all.mjs",
    "bake:textures": "node scripts/bake-textures.mjs",
    "build:shim": "node scripts/build-shim.mjs",
    "test": "vitest run",
    "test:unit": "vitest run tests/unit",
    "test:js": "node scripts/test-js.mjs",
    "test:dll": "vitest run tests/integration/worldpose-oracle.test.js",
    "test:live": "node scripts/test-live.mjs",
    "test:watch": "vitest",
    "rebake": "node scripts/regenerate-manifest.mjs --run-bake",
    "regenerate-manifest": "node scripts/regenerate-manifest.mjs",
    "coverage:gr2": "node scripts/coverage-report.mjs",
    "typecheck": "tsc --noEmit -p jsconfig.json",
    "bench": "vitest bench --run",
    "bench:browser": "node scripts/bench-browser-prep.mjs",
    "perf": "node scripts/perf.mjs",
    "perf:load": "node scripts/perf-load.mjs",
    "perf:load:compare": "node scripts/perf-load-compare.mjs",
    "perf:regress": "node scripts/perf-regress.mjs",
    "perf:profile": "node --prof scripts/perf-profile.mjs",
    "perf:load:profile": "node --prof scripts/perf-profile.mjs full"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/stitchuuuu/granny-ro-js.git"
  },
  "homepage": "https://github.com/stitchuuuu/granny-ro-js#readme",
  "bugs": {
    "url": "https://github.com/stitchuuuu/granny-ro-js/issues"
  },
  "keywords": [
    "granny",
    "granny2",
    "granny3d",
    "gr2",
    "oodle",
    "oodle0",
    "decompression",
    "skeletal-animation"
  ],
  "author": "Stitchuuuu <stitchuuuu@icloud.com>",
  "license": "MIT",
  "devDependencies": {
    "@types/node": "^26.0.1",
    "assemblyscript": "^0.28.19",
    "dts-bundle-generator": "^9.5.1",
    "rolldown": "^1.1.5",
    "typescript": "5.7",
    "vitest": "^4.1.9"
  },
  "engines": {
    "node": ">=20"
  }
}
