{
  "name": "@observablehq/framework",
  "license": "ISC",
  "version": "1.13.3",
  "type": "module",
  "publishConfig": {
    "access": "public"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/observablehq/framework.git"
  },
  "files": [
    "dist/**/*.js",
    "dist/**/*.css",
    "templates"
  ],
  "bin": {
    "observable": "dist/bin/observable.js"
  },
  "scripts": {
    "dev": "tsx watch --ignore docs --no-warnings=ExperimentalWarning ./src/bin/observable.ts preview --no-open --cors",
    "docs:build": "tsx --no-warnings=ExperimentalWarning ./src/bin/observable.ts build",
    "docs:deploy": "tsx --no-warnings=ExperimentalWarning ./src/bin/observable.ts deploy",
    "build": "rimraf dist && node build.js --outdir=dist --outbase=src \"src/**/*.{ts,js,css}\" --ignore \"**/*.d.ts\"",
    "test": "concurrently npm:test:mocha npm:test:tsc npm:test:lint npm:test:prettier",
    "test:coverage": "c8 --check-coverage --lines 80 --per-file yarn test:mocha:all",
    "test:build": "rimraf test/build && rimraf --glob test/.observablehq/cache test/input/build/*/.observablehq/cache && cross-env npm_package_version=1.0.0-test node build.js --sourcemap --outdir=test/build \"{src,test}/**/*.{ts,js,css}\" --ignore \"test/input/**\" --ignore \"test/output/**\" --ignore \"test/preview/dashboard/**\" --ignore \"**/*.d.ts\" && cp -r templates test/build",
    "test:mocha": "yarn test:mocha:serial -p",
    "test:mocha:serial": "yarn test:build && cross-env OBSERVABLE_TELEMETRY_DISABLE=1 TZ=America/Los_Angeles mocha --timeout 30000 \"test/build/test/**/*-test.js\"",
    "test:mocha:annotate": "yarn test:build && cross-env OBSERVABLE_TELEMETRY_DISABLE=1 OBSERVABLE_ANNOTATE_FILES=true TZ=America/Los_Angeles mocha --timeout 30000 \"test/build/test/**/annotate.js\"",
    "test:mocha:all": "yarn test:mocha && cross-env OBSERVABLE_TELEMETRY_DISABLE=1 OBSERVABLE_ANNOTATE_FILES=true TZ=America/Los_Angeles mocha --timeout 30000 \"test/build/test/**/annotate.js\"",
    "test:lint": "eslint src test --max-warnings=0",
    "test:prettier": "prettier --check src test",
    "test:tsc": "tsc --noEmit",
    "observable": "tsx --no-warnings=ExperimentalWarning ./src/bin/observable.ts",
    "prepublishOnly": "yarn build"
  },
  "c8": {
    "all": true,
    "include": [
      "test/build/src/**/*.js"
    ],
    "exclude": [
      "test/build/src/bin/",
      "test/build/src/client/",
      "test/build/src/convert.js",
      "test/build/src/jsr.js",
      "test/build/src/observableApiConfig.js",
      "test/build/src/preview.js"
    ],
    "reporter": [
      "text",
      "lcov"
    ]
  },
  "dependencies": {
    "@clack/prompts": "^0.7.0",
    "@observablehq/inputs": "^0.12.0",
    "@observablehq/inspector": "^5.0.1",
    "@observablehq/runtime": "^6.0.0",
    "@rollup/plugin-commonjs": "^25.0.7",
    "@rollup/plugin-json": "^6.1.0",
    "@rollup/plugin-node-resolve": "^15.2.3",
    "@rollup/plugin-virtual": "^3.0.2",
    "@sindresorhus/slugify": "^2.2.1",
    "acorn": "^8.11.2",
    "acorn-walk": "^8.3.0",
    "ci-info": "^4.0.0",
    "cross-spawn": "^7.0.3",
    "d3-array": "^3.2.4",
    "d3-hierarchy": "^3.1.2",
    "esbuild": "^0.20.1",
    "fast-array-diff": "^1.1.0",
    "fast-deep-equal": "^3.1.3",
    "glob": "^10.3.10",
    "gray-matter": "^4.0.3",
    "he": "^1.2.0",
    "highlight.js": "^11.8.0",
    "is-docker": "^3.0.0",
    "is-wsl": "^3.1.0",
    "jsdom": "^23.2.0",
    "jszip": "^3.10.1",
    "markdown-it": "^14.0.0",
    "markdown-it-anchor": "^8.6.7",
    "mime": "^4.0.0",
    "minisearch": "^6.3.0",
    "open": "^10.1.0",
    "picocolors": "^1.1.1",
    "pkg-dir": "^8.0.0",
    "resolve.exports": "^2.0.2",
    "rollup": "^4.6.0",
    "rollup-plugin-esbuild": "^6.1.0",
    "semver": "^7.5.4",
    "send": "^0.19.0",
    "tar": "^6.2.0",
    "tar-stream": "^3.1.6",
    "tsx": "^4.7.1",
    "untildify": "^5.0.0",
    "wrap-ansi": "^9.0.0",
    "ws": "^8.14.2"
  },
  "devDependencies": {
    "@types/cross-spawn": "^6.0.6",
    "@types/d3-array": "^3.2.1",
    "@types/d3-format": "^3.0.4",
    "@types/he": "^1.2.0",
    "@types/jsdom": "^21.1.7",
    "@types/markdown-it": "^14.0.0",
    "@types/mime": "^4.0.0",
    "@types/mocha": "^10.0.8",
    "@types/node": "^18.11.9",
    "@types/send": "^0.17.4",
    "@types/tar": "^6.1.13",
    "@types/tar-stream": "^3.1.3",
    "@types/ws": "^8.5.12",
    "@typescript-eslint/eslint-plugin": "^7.2.0",
    "@typescript-eslint/parser": "^7.2.0",
    "c8": "^9.1.0",
    "chai": "^4.3.10",
    "chai-http": "^4.4.0",
    "concurrently": "^8.2.2",
    "cross-env": "^7.0.3",
    "d3-dsv": "^3.0.1",
    "d3-format": "^3.1.0",
    "eslint": "^8.50.0",
    "eslint-config-prettier": "^9.1.0",
    "eslint-import-resolver-typescript": "^3.6.1",
    "eslint-plugin-import": "^2.29.0",
    "mocha": "^10.2.0",
    "prettier": "^3.0.3 <3.1",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "rimraf": "^5.0.5",
    "tempy": "^3.1.0",
    "typescript": "^5.2.2 <5.6.0",
    "undici": "^6.7.1"
  },
  "engines": {
    "node": ">=18"
  }
}
