@xwordly/xword-parser
Version:
Fast, type-safe TypeScript library for parsing crossword puzzles (PUZ, iPUZ, JPZ, XD)
136 lines (135 loc) • 3.65 kB
JSON
{
"name": "@xwordly/xword-parser",
"version": "1.0.5",
"description": "Fast, type-safe TypeScript library for parsing crossword puzzles (PUZ, iPUZ, JPZ, XD)",
"main": "./dist/index.js",
"module": "./dist/index.mjs",
"types": "./dist/index.d.ts",
"exports": {
".": {
"types": "./dist/index.d.ts",
"browser": "./dist/xword-parser.browser.min.js",
"import": "./dist/index.mjs",
"require": "./dist/index.js"
},
"./lazy": {
"types": "./dist/lazy.d.ts",
"import": "./dist/lazy.mjs",
"require": "./dist/lazy.js"
},
"./package.json": "./package.json"
},
"sideEffects": false,
"files": [
"dist",
"README.md",
"LICENSE"
],
"publishConfig": {
"access": "public",
"registry": "https://registry.npmjs.org/"
},
"scripts": {
"build": "tsup",
"dev": "tsup --watch",
"test": "vitest run",
"test:watch": "vitest watch",
"test:coverage": "vitest run --coverage --reporter=default --reporter=junit --outputFile.junit=./test-results.xml",
"test:fuzz": "jest --config jest.config.fuzz.js",
"bench": "vitest bench",
"bench:ci": "vitest bench --run --outputJson bench-results.json",
"bench:compare": "node scripts/compare-benchmarks.js",
"fuzz": "node scripts/run-fuzzers.js",
"fuzz:seed": "node scripts/seed-corpus.js",
"fuzz:concurrent": "node scripts/run-fuzzers.js --concurrent",
"fuzz:quick": "node scripts/run-fuzzers.js --duration 60",
"lint": "eslint .",
"lint:fix": "eslint . --fix",
"format": "prettier --write \"**/*.{ts,tsx,json,yml,yaml}\"",
"typecheck": "tsc --noEmit",
"analyze": "tsup --metafile && npx esbuild-visualizer --metadata ./dist/metafile-cjs.json --open",
"prepack": "npm run lint && npm run typecheck && npm run build",
"prepare": "husky"
},
"keywords": [
"crossword",
"crossword-puzzle",
"puzzle",
"parser",
"puz",
"ipuz",
"jpz",
"xd",
"typescript",
"converter",
"puzzle-parser",
"file-parser",
"acrosslite",
"puzzle-format",
"ipuz-format",
"puz-format",
"jpz-format",
"xd-format",
"crossword-converter",
"puzzle-library"
],
"author": "Xwordly Team",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/mjkoo/xword-parser"
},
"bugs": {
"url": "https://github.com/xwordly/xword-parser/issues"
},
"homepage": "https://github.com/xwordly/xword-parser#readme",
"type": "module",
"devDependencies": {
"@eslint/js": "^9.33.0",
"@fast-check/vitest": "^0.2.2",
"@jazzer.js/jest-runner": "^2.1.0",
"@types/jest": "^30.0.0",
"@types/node": "^24.2.1",
"@typescript-eslint/eslint-plugin": "^8.39.0",
"@typescript-eslint/parser": "^8.39.0",
"@vitest/coverage-v8": "^3.2.4",
"eslint": "^9.33.0",
"eslint-config-prettier": "^10.1.8",
"globals": "^16.3.0",
"husky": "^9.1.7",
"jest": "^30.0.5",
"lint-staged": "^16.1.5",
"prettier": "^3.6.2",
"ts-jest": "^29.4.1",
"tsup": "^8.5.0",
"typescript": "^5.9.2",
"vitest": "^3.2.4",
"vitest-sonar-reporter": "^2.0.4"
},
"engines": {
"node": ">=18"
},
"dependencies": {
"buffer": "^6.0.3",
"fast-xml-parser": "^5.2.5"
},
"overrides": {
"@jazzer.js/jest-runner": {
"@types/jest": "$@types/jest",
"jest": "$jest"
}
},
"lint-staged": {
"*.{ts,tsx}": [
"prettier --check",
"eslint",
"bash -c 'npm run typecheck'"
],
"*.{json,yml,yaml}": [
"prettier --check"
],
"src/**/*.ts": [
"bash -c 'npm test'"
]
}
}