{
  "name": "@mlightcad/libredwg-web",
  "description": "A DWG/DXF JavaScript parser based on libredwg",
  "license": "GPL-3.0",
  "private": false,
  "version": "0.7.1",
  "author": "MLight Lee <mlight.lee@outlook.com>",
  "type": "module",
  "repository": {
    "type": "git",
    "url": "https://github.com/mlightcad/libredwg-web"
  },
  "keywords": [
    "AutoCAD",
    "cad",
    "dxf",
    "dxf-reader",
    "dxf-writer",
    "dwg",
    "dwg-reader",
    "libredwg",
    "mlight",
    "mlightcad",
    "wasm",
    "webassembly"
  ],
  "files": [
    "dist",
    "lib/**/*.js",
    "lib/**/*.ts",
    "wasm",
    "README.md",
    "package.json"
  ],
  "main": "./dist/libredwg-web.umd.cjs",
  "module": "./dist/libredwg-web.js",
  "types": "./lib/index.d.ts",
  "exports": {
    "types": "./lib/index.d.ts",
    "import": "./dist/libredwg-web.js",
    "require": "./dist/libredwg-web.umd.cjs"
  },
  "devDependencies": {
    "@typescript-eslint/parser": "^8.4.0",
    "eslint": "^9.9.1",
    "eslint-config-prettier": "^9.1.0",
    "eslint-plugin-prettier": "^5.2.1",
    "eslint-plugin-simple-import-sort": "^12.1.1",
    "globals": "^16.0.0",
    "lint-staged": "^15.2.7",
    "live-server": "^1.2.2",
    "prettier": "^3.3.3",
    "rimraf": "^6.0.1",
    "shelljs": "^0.9.2",
    "typedoc": "^0.27.4",
    "typescript": "^5.5.2",
    "typescript-eslint": "^8.4.0",
    "vite": "^5.2.10"
  },
  "lint-staged": {
    "*.{ts,js}": [
      "prettier --config ./.prettierrc.js --write",
      "eslint --config ./.eslintrc.js --fix --quiet"
    ],
    "*.md": [
      "prettier --config ./.prettierrc.js --write"
    ]
  },
  "scripts": {
    "demo": "live-server examples --entry-file=index.html",
    "doc": "typedoc",
    "build": "tsc && vite build && cp -rf wasm examples/ && cp -rf dist examples/",
    "build:prepare": "mkdir -p ../../build-wasm && cd ../../build-wasm && emconfigure ../configure CFLAGS=\"-O2 -sUSE_ZLIB=1\" CC=emcc --enable-release --disable-docs --disable-write --disable-python --disable-bindings --disable-shared --disable-json --enable-partial --enable-experimental",
    "build:obj": "cd ../../build-wasm && emmake make",
    "build:wasm": "cd ../../build-wasm && emcc ../bindings/javascript/embind/*.cpp src/*.o -O2 -lembind -std=c++17 -Isrc -I../src -I../include -o libredwg-web.js -s ALLOW_MEMORY_GROWTH=1 -s EXPORT_ES6=1 -s MODULARIZE=1 -s EXPORT_NAME=\"createModule\" -sEXPORTED_RUNTIME_METHODS=FS,ENV,ccall,cwrap,UTF8ToString,stringToNewUTF8,setValue --emit-tsd libredwg-web.d.ts",
    "clean": "rm -rf ../../build-wasm ./docs ./dist ./lib",
    "copy": "cp -f ../../build-wasm/libredwg-web.d.ts ../../build-wasm/libredwg-web.js ../../build-wasm/libredwg-web.wasm wasm/ && cp -f ../../build-wasm/libredwg-web.js src/",
    "format": "prettier --config ./.prettierrc.js --write src/**/*.{ts,js}",
    "install:emsdk": "cd $EMSDK && ./emsdk install latest && ./emsdk activate latest",
    "link": "node script/create-symlink.js ./wasm/libredwg-web.js ./src/libredwg-web.js",
    "lint": "eslint src/",
    "lint:fix": "eslint --fix --quiet src/"
  }
}