patha
Version:
File paths library. All you need to work with paths. Tiny drop-in replacement for 'path'. Works in Node, Browser, and Deno.
146 lines • 5.18 kB
JSON
{
"name": "patha",
"version": "0.4.1",
"description": "File paths library. All you need to work with paths. Tiny drop-in replacement for 'path'. Works in Node, Browser, and Deno.",
"homepage": "https://github.com/aminya/patha",
"repository": "https://github.com/aminya/patha",
"license": "Apache-2.0",
"author": "Amin Yahyaabadi",
"exports": {
"import": "./dist/index.node.mjs",
"require": "./dist/index.node.cjs"
},
"main": "./dist/index.node.cjs",
"module": "./dist/index.node.mjs",
"main.browser": "./dist/index.browser.legacy.js",
"module.browser": "./dist/index.browser.mjs",
"module.deno": "./dist/index.deno.mjs",
"source": "./src/index.ts",
"browser": {
"path": "./node_modules/path-browserify",
"process": "./node_modules/process"
},
"targets": {
"main": {
"source": "./src/index-node.ts",
"context": "node",
"engines": {
"node": ">=12.x"
},
"optimize": true,
"includeNodeModules": {
"escape-string-regexp": true,
"replace-ext": false
},
"outputFormat": "commonjs",
"isLibrary": true
},
"module": {
"source": "./src/index.ts",
"context": "node",
"engines": {
"node": ">=16.x"
},
"optimize": true,
"includeNodeModules": false,
"outputFormat": "esmodule",
"isLibrary": true
},
"main.browser": {
"source": "./src/index-browser.ts",
"context": "browser",
"engines": {
"browsers": "> 0.5%"
},
"optimize": true,
"includeNodeModules": true,
"outputFormat": "global",
"isLibrary": true
},
"module.browser": {
"source": "./src/index-browser.ts",
"context": "browser",
"engines": {
"browsers": "last 2 versions"
},
"optimize": true,
"includeNodeModules": true,
"outputFormat": "esmodule",
"isLibrary": true
}
},
"files": [
"dist/",
"src/",
"tsconfig.json",
"dev/tsc-mjs.mjs",
"LICENSE_dependencies.txt"
],
"prettier": "prettier-config-atomic",
"dependencies": {
"escape-string-regexp": "^5.0.0",
"replace-ext": "^2.0.0"
},
"devDependencies": {
"@types/jest": "^28.1.6",
"cross-env": "7.0.3",
"cspell": "^6.5.0",
"eslint": "^8.21.0",
"eslint-config-atomic": "^1.18.1",
"jest": "^28.1.3",
"npm-check-updates": "^16.0.5",
"npm-run-all2": "^6.0.1",
"parcel": "2.6.2",
"prettier": "2.7.1",
"prettier-config-atomic": "^3.0.10",
"readme-md-generator": "^1.0.0",
"shx": "0.3.4",
"terser-config-atomic": "^0.1.1",
"ts-jest": "^28.0.7",
"ts-readme": "^1.1.3",
"typescript": "^4.7.4"
},
"optionalDependencies": {
"@types/node": "^18.6.3",
"@types/replace-ext": "^2.0.0",
"path-browserify": "^1.0.1",
"process": "^0.11.10"
},
"keywords": [
"file-path",
"path",
"file",
"prefix",
"extension",
"fs",
"file system",
"node-path",
"path-extra",
"paths",
"path-plus"
],
"scripts": {
"build": "run-s clean build.tsc build.parcel build.types build.deno",
"build.parcel": "shx rm -rf dist/node/index.js* && cross-env NODE_ENV=production parcel build --target main --target module --target main.browser --target module.browser",
"build.types": "shx cp ./dist/index.d.ts ./dist/index.node.d.ts && shx cp ./dist/index.d.ts ./dist/index.node.d.cts && shx cp ./dist/index.d.ts ./dist/browser.d.ts && shx cp ./dist/index.d.ts ./dist/index.deno.d.ts",
"build.deno": "shx cp ./dist/index.browser.mjs ./dist/index.deno.mjs && shx cp ./dist/index.browser.mjs.map ./dist/index.deno.mjs.map",
"build.tsc": "tsc -p ./tsconfig.json && node ./dev/tsc-mjs.mjs",
"bump": "ncu -u -x execa,numerous && pnpm update",
"clean": "shx rm -rf dist && shx mkdir ./dist",
"dev": "cross-env NODE_ENV=development parcel watch",
"docs": "shx rm -rf ./README.md && pnpm exec readme --path ./dev/docs/readme.md -y && pnpm exec ts-readme --header-depth 3 && pnpm run format",
"format": "run-s lint.prettier",
"lint": "run-p --aggregate-output --continue-on-error lint.cspell lint.eslint lint.prettier",
"lint.cspell": "cspell lint --no-progress --show-suggestions",
"lint.eslint": "eslint **/*.{ts,tsx,js,jsx,cjs,mjs,json,yaml} --no-error-on-unmatched-pattern --cache --cache-location ./.cache/eslint/ --fix",
"lint.prettier": "prettier --write .",
"test": "run-s build && run-p --continue-on-error --aggregate-output test.lint test.unit test.integration.node.js test.integration.node.mjs test.integration.deno",
"test.integration.node.js": "node ./test/node-integration.js",
"test.integration.node.mjs": "node ./test/node-integration.mjs",
"test.integration.deno": "deno run ./test/deno-integration.ts",
"test.lint": "run-p --aggregate-output --continue-on-error lint.cspell test.lint.eslint test.lint.prettier",
"test.lint.eslint": "eslint **/*.{ts,tsx,js,jsx,cjs,mjs,json,yaml} --no-error-on-unmatched-pattern --cache --cache-location ./.cache/eslint/",
"test.lint.prettier": "prettier . --check",
"test.unit": "jest --runInBand"
}
}