pangu
Version:
Opinionated paranoid text spacing: automatically inserts whitespace between CJK (Chinese, Japanese, Korean) and ANS (alphabetical letters, numerical digits and symbols)
111 lines (110 loc) • 3.56 kB
JSON
{
"name": "pangu",
"description": "Opinionated paranoid text spacing: automatically inserts whitespace between CJK (Chinese, Japanese, Korean) and ANS (alphabetical letters, numerical digits and symbols)",
"keywords": [
"text-spacing",
"text-autospace",
"spacing",
"whitespace",
"cjk",
"chinese",
"japanese",
"korean",
"punctuation",
"typesetting",
"typography",
"cli",
"中文",
"英文",
"數字",
"符號",
"空格"
],
"version": "10.2.0",
"author": {
"name": "Vinta Chen",
"email": "vinta.chen@gmail.com",
"url": "https://vinta.ws/code/"
},
"license": "MIT",
"homepage": "https://github.com/vinta/pangu.js",
"repository": {
"type": "git",
"url": "git+https://github.com/vinta/pangu.js.git"
},
"bugs": {
"url": "https://github.com/vinta/pangu.js/issues"
},
"type": "module",
"sideEffects": false,
"main": "./dist/node/index.cjs",
"bin": {
"pangu": "./dist/node/cli.js",
"pangu-js": "./dist/node/cli.js"
},
"exports": {
".": {
"import": {
"types": "./dist/node/index.d.ts",
"default": "./dist/node/index.js"
},
"require": {
"types": "./dist/node/index.d.cts",
"default": "./dist/node/index.cjs"
},
"default": "./dist/node/index.js"
},
"./browser": {
"import": {
"types": "./dist/browser/pangu.d.ts",
"default": "./dist/browser/pangu.js"
}
},
"./package.json": "./package.json"
},
"files": [
"dist/",
"src/",
"tsconfig.json",
"LICENSE",
"README.md",
"CHANGELOG.md"
],
"scripts": {
"clean": "rm -rf browser-extensions/chrome/dist/ dist/ playwright-report/ test-results/",
"build": "npm run clean && npm run build:lib && npm run build:extension",
"build:lib": "vite build && npm run build:types",
"build:types": "tsc -p src/browser/tsconfig.json --emitDeclarationOnly --declarationDir dist && tsc -p src/node/tsconfig.json --emitDeclarationOnly --declarationDir dist",
"build:extension": "vite build --config browser-extensions/vite.config.extension.ts && cp -f browser-extensions/chrome/src/content-script.css browser-extensions/chrome/dist/",
"test": "npm run build && vitest run tests/ && playwright test --reporter=list",
"test:shared": "npm run build && vitest run tests/shared/",
"test:node": "npm run build && vitest run tests/node/",
"test:browser": "npm run build && playwright test --reporter=list",
"test:extension": "vitest run tests/extension/",
"typecheck": "tsc --noEmit -p tsconfig.json && tsc --noEmit -p src/browser/tsconfig.json && tsc --noEmit -p src/node/tsconfig.json",
"lint": "npm run lint:code && npm run lint:package",
"lint:code": "eslint",
"lint:package": "attw --pack . --entrypoints . && attw --pack . --entrypoints ./browser --profile esm-only && publint",
"bump-version": "node ./scripts/bump-version.js",
"pack-extension": "./scripts/pack-extension-chrome.sh"
},
"devDependencies": {
"@arethetypeswrong/cli": "0.18.5",
"@playwright/test": "1.61.1",
"@types/chrome": "0.2.9",
"@types/dom-chromium-ai": "0.0.17",
"@types/node": "20.19.43",
"eslint": "10.7.0",
"eslint-plugin-baseline-js": "0.7.1",
"prettier": "3.9.6",
"prettier-plugin-organize-imports": "4.3.0",
"publint": "0.3.22",
"typescript": "6.0.3",
"typescript-eslint": "8.65.0",
"vite": "8.1.5",
"vitest": "4.1.11"
},
"engines": {
"node": ">=20.0.0"
}
}