{
  "name": "@chenglou/pretext",
  "version": "0.0.9",
  "description": "Fast, accurate & comprehensive text measurement & layout",
  "keywords": [
    "text-layout",
    "text-measurement",
    "line-breaking",
    "typography",
    "canvas",
    "svg",
    "unicode"
  ],
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/chenglou/pretext.git"
  },
  "type": "module",
  "sideEffects": false,
  "publishConfig": {
    "access": "public"
  },
  "main": "./dist/layout.js",
  "types": "./dist/layout.d.ts",
  "exports": {
    ".": {
      "types": "./dist/layout.d.ts",
      "import": "./dist/layout.js",
      "default": "./dist/layout.js"
    },
    "./rich-inline": {
      "types": "./dist/rich-inline.d.ts",
      "import": "./dist/rich-inline.js",
      "default": "./dist/rich-inline.js"
    },
    "./package.json": "./package.json"
  },
  "files": [
    "CHANGELOG.md",
    "dist",
    "src",
    "!src/layout.test.ts",
    "!src/test-data.ts",
    "pages/demos",
    "pages/assets"
  ],
  "scripts": {
    "benchmark-check": "bun run scripts/benchmark-check.ts",
    "benchmark-check:safari": "BENCHMARK_CHECK_BROWSER=safari bun run scripts/benchmark-check.ts",
    "build:package": "rm -rf dist && tsc -p tsconfig.build.json",
    "check": "tsc && oxlint --type-aware src tests/wrapping scripts/wrapping-check.ts && knip",
    "test:wrapping": "bun run scripts/wrapping-check.ts",
    "corpus-check": "bun run scripts/corpus-check.ts",
    "corpus-check:safari": "CORPUS_CHECK_BROWSER=safari bun run scripts/corpus-check.ts",
    "corpus-font-matrix": "bun run scripts/corpus-font-matrix.ts",
    "corpus-font-matrix:safari": "CORPUS_CHECK_BROWSER=safari bun run scripts/corpus-font-matrix.ts",
    "corpus-status": "bun run scripts/corpus-status.ts",
    "corpus-taxonomy": "bun run scripts/corpus-taxonomy.ts",
    "generate:bidi-data": "bun run scripts/generate-bidi-data.ts",
    "package-smoke-test": "bun run scripts/package-smoke-test.ts",
    "prepack": "rm -rf dist && tsc -p tsconfig.build.json",
    "probe-check": "bun run scripts/probe-check.ts",
    "probe-check:safari": "PROBE_CHECK_BROWSER=safari bun run scripts/probe-check.ts",
    "status-dashboard": "bun run scripts/status-dashboard.ts",
    "site:build": "rm -rf site && bun run scripts/build-demo-site.ts",
    "start": "HOST=${HOST:-0.0.0.0}; PORT=3000; pids=$(lsof -tiTCP:$PORT -sTCP:LISTEN 2>/dev/null); if [ -n \"$pids\" ]; then echo \"Freeing port $PORT: terminating $pids\"; kill $pids 2>/dev/null || true; sleep 1; pids=$(lsof -tiTCP:$PORT -sTCP:LISTEN 2>/dev/null); if [ -n \"$pids\" ]; then echo \"Port $PORT still busy: killing $pids\"; kill -9 $pids 2>/dev/null || true; fi; fi; bun pages/*.html pages/demos/*.html pages/demos/*/index.html --host=$HOST:$PORT",
    "start:windows": "bun pages/*.html pages/demos/*.html pages/demos/*/index.html --host=0.0.0.0:3000",
    "justification-check": "bun run scripts/justification-check.ts",
    "font-probe": "bun run scripts/font-probe.ts",
    "test:wrapping:snapshot": "bun run scripts/wrapping-check.ts --browser=all --snapshot && bun run scripts/corpus-status.ts && bun run scripts/status-dashboard.ts"
  },
  "devDependencies": {
    "@types/bun": "latest",
    "knip": "^6.14.2",
    "marked": "^17.0.5",
    "oxlint": "^1.51.0",
    "oxlint-tsgolint": "^0.15.0",
    "playwright-core": "^1.62.1",
    "tsgolint": "^0.0.1",
    "typescript": "6.0.2"
  }
}
