{
  "name": "@rabjs/kit",
  "version": "1.0.1",
  "description": "Typed lodash-shaped utilities for humans and coding agents.",
  "author": "ximing",
  "license": "MIT",
  "type": "module",
  "sideEffects": false,
  "engines": {
    "node": ">=20",
    "pnpm": ">=10.0.0"
  },
  "files": [
    "dist"
  ],
  "main": "./dist/index.cjs",
  "module": "./dist/index.mjs",
  "types": "./dist/index.d.cts",
  "repository": {
    "type": "git",
    "url": "https://github.com/ximing/kit.git"
  },
  "tags": [
    "utility",
    "toolkit",
    "lodash",
    "helpers",
    "typescript",
    "array",
    "object",
    "string",
    "function",
    "promise",
    "date",
    "collection"
  ],
  "keywords": [
    "utility",
    "toolkit",
    "lodash",
    "helpers",
    "typescript",
    "array",
    "object",
    "string",
    "function",
    "promise",
    "date",
    "collection",
    "pi-package",
    "skills"
  ],
  "pi": {
    "skills": [
      "./skills"
    ]
  },
  "lint-staged": {
    "*.{json,md}": [
      "prettier --write"
    ],
    "*.ts": [
      "eslint --max-warnings 0 --fix",
      "prettier --write"
    ]
  },
  "devDependencies": {
    "@changesets/cli": "^3.0.1",
    "@types/node": "^22.5.1",
    "@typescript-eslint/eslint-plugin": "^8.52.0",
    "@typescript-eslint/parser": "^8.52.0",
    "@vitest/coverage-v8": "^4.1.11",
    "eslint": "^9.17.0",
    "eslint-config-prettier": "^10.1.8",
    "eslint-plugin-vitest": "^0.5.4",
    "husky": "^9.1.7",
    "lint-staged": "^16.2.7",
    "prettier": "^3.4.2",
    "tsdown": "^0.22.14",
    "tslib": "^2.8.1",
    "tsx": "^4.7.0",
    "typescript": "^5.9.3",
    "vitest": "^4.1.11"
  },
  "exports": {
    ".": {
      "import": "./dist/index.mjs",
      "require": "./dist/index.cjs"
    },
    "./array": {
      "import": "./dist/array/index.mjs",
      "require": "./dist/array/index.cjs"
    },
    "./array/chunk": {
      "import": "./dist/array/chunk.mjs",
      "require": "./dist/array/chunk.cjs"
    },
    "./array/compact": {
      "import": "./dist/array/compact.mjs",
      "require": "./dist/array/compact.cjs"
    },
    "./array/difference": {
      "import": "./dist/array/difference.mjs",
      "require": "./dist/array/difference.cjs"
    },
    "./array/drop": {
      "import": "./dist/array/drop.mjs",
      "require": "./dist/array/drop.cjs"
    },
    "./array/findIndex": {
      "import": "./dist/array/findIndex.mjs",
      "require": "./dist/array/findIndex.cjs"
    },
    "./array/flatten": {
      "import": "./dist/array/flatten.mjs",
      "require": "./dist/array/flatten.cjs"
    },
    "./array/flattenDeep": {
      "import": "./dist/array/flattenDeep.mjs",
      "require": "./dist/array/flattenDeep.cjs"
    },
    "./array/intersection": {
      "import": "./dist/array/intersection.mjs",
      "require": "./dist/array/intersection.cjs"
    },
    "./array/remove": {
      "import": "./dist/array/remove.mjs",
      "require": "./dist/array/remove.cjs"
    },
    "./array/take": {
      "import": "./dist/array/take.mjs",
      "require": "./dist/array/take.cjs"
    },
    "./array/union": {
      "import": "./dist/array/union.mjs",
      "require": "./dist/array/union.cjs"
    },
    "./array/uniq": {
      "import": "./dist/array/uniq.mjs",
      "require": "./dist/array/uniq.cjs"
    },
    "./array/uniqBy": {
      "import": "./dist/array/uniqBy.mjs",
      "require": "./dist/array/uniqBy.cjs"
    },
    "./array/zip": {
      "import": "./dist/array/zip.mjs",
      "require": "./dist/array/zip.cjs"
    },
    "./collection": {
      "import": "./dist/collection/index.mjs",
      "require": "./dist/collection/index.cjs"
    },
    "./collection/countBy": {
      "import": "./dist/collection/countBy.mjs",
      "require": "./dist/collection/countBy.cjs"
    },
    "./collection/groupBy": {
      "import": "./dist/collection/groupBy.mjs",
      "require": "./dist/collection/groupBy.cjs"
    },
    "./collection/keyBy": {
      "import": "./dist/collection/keyBy.mjs",
      "require": "./dist/collection/keyBy.cjs"
    },
    "./collection/orderBy": {
      "import": "./dist/collection/orderBy.mjs",
      "require": "./dist/collection/orderBy.cjs"
    },
    "./collection/partition": {
      "import": "./dist/collection/partition.mjs",
      "require": "./dist/collection/partition.cjs"
    },
    "./collection/sample": {
      "import": "./dist/collection/sample.mjs",
      "require": "./dist/collection/sample.cjs"
    },
    "./collection/sampleSize": {
      "import": "./dist/collection/sampleSize.mjs",
      "require": "./dist/collection/sampleSize.cjs"
    },
    "./collection/shuffle": {
      "import": "./dist/collection/shuffle.mjs",
      "require": "./dist/collection/shuffle.cjs"
    },
    "./collection/sortBy": {
      "import": "./dist/collection/sortBy.mjs",
      "require": "./dist/collection/sortBy.cjs"
    },
    "./date": {
      "import": "./dist/date/index.mjs",
      "require": "./dist/date/index.cjs"
    },
    "./date/addDays": {
      "import": "./dist/date/addDays.mjs",
      "require": "./dist/date/addDays.cjs"
    },
    "./date/addMonths": {
      "import": "./dist/date/addMonths.mjs",
      "require": "./dist/date/addMonths.cjs"
    },
    "./date/addYears": {
      "import": "./dist/date/addYears.mjs",
      "require": "./dist/date/addYears.cjs"
    },
    "./date/diffDays": {
      "import": "./dist/date/diffDays.mjs",
      "require": "./dist/date/diffDays.cjs"
    },
    "./date/diffMonths": {
      "import": "./dist/date/diffMonths.mjs",
      "require": "./dist/date/diffMonths.cjs"
    },
    "./date/diffYears": {
      "import": "./dist/date/diffYears.mjs",
      "require": "./dist/date/diffYears.cjs"
    },
    "./date/endOfDay": {
      "import": "./dist/date/endOfDay.mjs",
      "require": "./dist/date/endOfDay.cjs"
    },
    "./date/format": {
      "import": "./dist/date/format.mjs",
      "require": "./dist/date/format.cjs"
    },
    "./date/parse": {
      "import": "./dist/date/parse.mjs",
      "require": "./dist/date/parse.cjs"
    },
    "./date/startOfDay": {
      "import": "./dist/date/startOfDay.mjs",
      "require": "./dist/date/startOfDay.cjs"
    },
    "./function": {
      "import": "./dist/function/index.mjs",
      "require": "./dist/function/index.cjs"
    },
    "./function/bind": {
      "import": "./dist/function/bind.mjs",
      "require": "./dist/function/bind.cjs"
    },
    "./function/compose": {
      "import": "./dist/function/compose.mjs",
      "require": "./dist/function/compose.cjs"
    },
    "./function/curry": {
      "import": "./dist/function/curry.mjs",
      "require": "./dist/function/curry.cjs"
    },
    "./function/debounce": {
      "import": "./dist/function/debounce.mjs",
      "require": "./dist/function/debounce.cjs"
    },
    "./function/memoize": {
      "import": "./dist/function/memoize.mjs",
      "require": "./dist/function/memoize.cjs"
    },
    "./function/negate": {
      "import": "./dist/function/negate.mjs",
      "require": "./dist/function/negate.cjs"
    },
    "./function/once": {
      "import": "./dist/function/once.mjs",
      "require": "./dist/function/once.cjs"
    },
    "./function/partial": {
      "import": "./dist/function/partial.mjs",
      "require": "./dist/function/partial.cjs"
    },
    "./function/pipe": {
      "import": "./dist/function/pipe.mjs",
      "require": "./dist/function/pipe.cjs"
    },
    "./function/throttle": {
      "import": "./dist/function/throttle.mjs",
      "require": "./dist/function/throttle.cjs"
    },
    "./is": {
      "import": "./dist/is/index.mjs",
      "require": "./dist/is/index.cjs"
    },
    "./is/isArray": {
      "import": "./dist/is/isArray.mjs",
      "require": "./dist/is/isArray.cjs"
    },
    "./is/isBoolean": {
      "import": "./dist/is/isBoolean.mjs",
      "require": "./dist/is/isBoolean.cjs"
    },
    "./is/isDate": {
      "import": "./dist/is/isDate.mjs",
      "require": "./dist/is/isDate.cjs"
    },
    "./is/isEmpty": {
      "import": "./dist/is/isEmpty.mjs",
      "require": "./dist/is/isEmpty.cjs"
    },
    "./is/isError": {
      "import": "./dist/is/isError.mjs",
      "require": "./dist/is/isError.cjs"
    },
    "./is/isFunction": {
      "import": "./dist/is/isFunction.mjs",
      "require": "./dist/is/isFunction.cjs"
    },
    "./is/isMap": {
      "import": "./dist/is/isMap.mjs",
      "require": "./dist/is/isMap.cjs"
    },
    "./is/isNil": {
      "import": "./dist/is/isNil.mjs",
      "require": "./dist/is/isNil.cjs"
    },
    "./is/isNull": {
      "import": "./dist/is/isNull.mjs",
      "require": "./dist/is/isNull.cjs"
    },
    "./is/isNumber": {
      "import": "./dist/is/isNumber.mjs",
      "require": "./dist/is/isNumber.cjs"
    },
    "./is/isObject": {
      "import": "./dist/is/isObject.mjs",
      "require": "./dist/is/isObject.cjs"
    },
    "./is/isPlainObject": {
      "import": "./dist/is/isPlainObject.mjs",
      "require": "./dist/is/isPlainObject.cjs"
    },
    "./is/isPromise": {
      "import": "./dist/is/isPromise.mjs",
      "require": "./dist/is/isPromise.cjs"
    },
    "./is/isRegExp": {
      "import": "./dist/is/isRegExp.mjs",
      "require": "./dist/is/isRegExp.cjs"
    },
    "./is/isSet": {
      "import": "./dist/is/isSet.mjs",
      "require": "./dist/is/isSet.cjs"
    },
    "./is/isString": {
      "import": "./dist/is/isString.mjs",
      "require": "./dist/is/isString.cjs"
    },
    "./is/isSymbol": {
      "import": "./dist/is/isSymbol.mjs",
      "require": "./dist/is/isSymbol.cjs"
    },
    "./is/isUndefined": {
      "import": "./dist/is/isUndefined.mjs",
      "require": "./dist/is/isUndefined.cjs"
    },
    "./is/isWeakMap": {
      "import": "./dist/is/isWeakMap.mjs",
      "require": "./dist/is/isWeakMap.cjs"
    },
    "./is/isWeakSet": {
      "import": "./dist/is/isWeakSet.mjs",
      "require": "./dist/is/isWeakSet.cjs"
    },
    "./math": {
      "import": "./dist/math/index.mjs",
      "require": "./dist/math/index.cjs"
    },
    "./math/max": {
      "import": "./dist/math/max.mjs",
      "require": "./dist/math/max.cjs"
    },
    "./math/maxBy": {
      "import": "./dist/math/maxBy.mjs",
      "require": "./dist/math/maxBy.cjs"
    },
    "./math/meanBy": {
      "import": "./dist/math/meanBy.mjs",
      "require": "./dist/math/meanBy.cjs"
    },
    "./math/min": {
      "import": "./dist/math/min.mjs",
      "require": "./dist/math/min.cjs"
    },
    "./math/minBy": {
      "import": "./dist/math/minBy.mjs",
      "require": "./dist/math/minBy.cjs"
    },
    "./math/sumBy": {
      "import": "./dist/math/sumBy.mjs",
      "require": "./dist/math/sumBy.cjs"
    },
    "./number": {
      "import": "./dist/number/index.mjs",
      "require": "./dist/number/index.cjs"
    },
    "./number/ceil": {
      "import": "./dist/number/ceil.mjs",
      "require": "./dist/number/ceil.cjs"
    },
    "./number/clamp": {
      "import": "./dist/number/clamp.mjs",
      "require": "./dist/number/clamp.cjs"
    },
    "./number/floor": {
      "import": "./dist/number/floor.mjs",
      "require": "./dist/number/floor.cjs"
    },
    "./number/inRange": {
      "import": "./dist/number/inRange.mjs",
      "require": "./dist/number/inRange.cjs"
    },
    "./number/mean": {
      "import": "./dist/number/mean.mjs",
      "require": "./dist/number/mean.cjs"
    },
    "./number/median": {
      "import": "./dist/number/median.mjs",
      "require": "./dist/number/median.cjs"
    },
    "./number/random": {
      "import": "./dist/number/random.mjs",
      "require": "./dist/number/random.cjs"
    },
    "./number/range": {
      "import": "./dist/number/range.mjs",
      "require": "./dist/number/range.cjs"
    },
    "./number/round": {
      "import": "./dist/number/round.mjs",
      "require": "./dist/number/round.cjs"
    },
    "./number/sum": {
      "import": "./dist/number/sum.mjs",
      "require": "./dist/number/sum.cjs"
    },
    "./object": {
      "import": "./dist/object/index.mjs",
      "require": "./dist/object/index.cjs"
    },
    "./object/clone": {
      "import": "./dist/object/clone.mjs",
      "require": "./dist/object/clone.cjs"
    },
    "./object/cloneDeep": {
      "import": "./dist/object/cloneDeep.mjs",
      "require": "./dist/object/cloneDeep.cjs"
    },
    "./object/entries": {
      "import": "./dist/object/entries.mjs",
      "require": "./dist/object/entries.cjs"
    },
    "./object/get": {
      "import": "./dist/object/get.mjs",
      "require": "./dist/object/get.cjs"
    },
    "./object/has": {
      "import": "./dist/object/has.mjs",
      "require": "./dist/object/has.cjs"
    },
    "./object/invert": {
      "import": "./dist/object/invert.mjs",
      "require": "./dist/object/invert.cjs"
    },
    "./object/keys": {
      "import": "./dist/object/keys.mjs",
      "require": "./dist/object/keys.cjs"
    },
    "./object/mapKeys": {
      "import": "./dist/object/mapKeys.mjs",
      "require": "./dist/object/mapKeys.cjs"
    },
    "./object/mapValues": {
      "import": "./dist/object/mapValues.mjs",
      "require": "./dist/object/mapValues.cjs"
    },
    "./object/merge": {
      "import": "./dist/object/merge.mjs",
      "require": "./dist/object/merge.cjs"
    },
    "./object/mergeDeep": {
      "import": "./dist/object/mergeDeep.mjs",
      "require": "./dist/object/mergeDeep.cjs"
    },
    "./object/omit": {
      "import": "./dist/object/omit.mjs",
      "require": "./dist/object/omit.cjs"
    },
    "./object/pick": {
      "import": "./dist/object/pick.mjs",
      "require": "./dist/object/pick.cjs"
    },
    "./object/set": {
      "import": "./dist/object/set.mjs",
      "require": "./dist/object/set.cjs"
    },
    "./object/values": {
      "import": "./dist/object/values.mjs",
      "require": "./dist/object/values.cjs"
    },
    "./promise": {
      "import": "./dist/promise/index.mjs",
      "require": "./dist/promise/index.cjs"
    },
    "./promise/abort": {
      "import": "./dist/promise/abort.mjs",
      "require": "./dist/promise/abort.cjs"
    },
    "./promise/delay": {
      "import": "./dist/promise/delay.mjs",
      "require": "./dist/promise/delay.cjs"
    },
    "./promise/filter": {
      "import": "./dist/promise/filter.mjs",
      "require": "./dist/promise/filter.cjs"
    },
    "./promise/map": {
      "import": "./dist/promise/map.mjs",
      "require": "./dist/promise/map.cjs"
    },
    "./promise/parallel": {
      "import": "./dist/promise/parallel.mjs",
      "require": "./dist/promise/parallel.cjs"
    },
    "./promise/reduce": {
      "import": "./dist/promise/reduce.mjs",
      "require": "./dist/promise/reduce.cjs"
    },
    "./promise/retry": {
      "import": "./dist/promise/retry.mjs",
      "require": "./dist/promise/retry.cjs"
    },
    "./promise/series": {
      "import": "./dist/promise/series.mjs",
      "require": "./dist/promise/series.cjs"
    },
    "./promise/timeout": {
      "import": "./dist/promise/timeout.mjs",
      "require": "./dist/promise/timeout.cjs"
    },
    "./string": {
      "import": "./dist/string/index.mjs",
      "require": "./dist/string/index.cjs"
    },
    "./string/camelCase": {
      "import": "./dist/string/camelCase.mjs",
      "require": "./dist/string/camelCase.cjs"
    },
    "./string/capitalize": {
      "import": "./dist/string/capitalize.mjs",
      "require": "./dist/string/capitalize.cjs"
    },
    "./string/kebabCase": {
      "import": "./dist/string/kebabCase.mjs",
      "require": "./dist/string/kebabCase.cjs"
    },
    "./string/lowerFirst": {
      "import": "./dist/string/lowerFirst.mjs",
      "require": "./dist/string/lowerFirst.cjs"
    },
    "./string/padEnd": {
      "import": "./dist/string/padEnd.mjs",
      "require": "./dist/string/padEnd.cjs"
    },
    "./string/padStart": {
      "import": "./dist/string/padStart.mjs",
      "require": "./dist/string/padStart.cjs"
    },
    "./string/pascalCase": {
      "import": "./dist/string/pascalCase.mjs",
      "require": "./dist/string/pascalCase.cjs"
    },
    "./string/repeat": {
      "import": "./dist/string/repeat.mjs",
      "require": "./dist/string/repeat.cjs"
    },
    "./string/snakeCase": {
      "import": "./dist/string/snakeCase.mjs",
      "require": "./dist/string/snakeCase.cjs"
    },
    "./string/template": {
      "import": "./dist/string/template.mjs",
      "require": "./dist/string/template.cjs"
    },
    "./string/trim": {
      "import": "./dist/string/trim.mjs",
      "require": "./dist/string/trim.cjs"
    },
    "./string/trimEnd": {
      "import": "./dist/string/trimEnd.mjs",
      "require": "./dist/string/trimEnd.cjs"
    },
    "./string/trimStart": {
      "import": "./dist/string/trimStart.mjs",
      "require": "./dist/string/trimStart.cjs"
    },
    "./string/truncate": {
      "import": "./dist/string/truncate.mjs",
      "require": "./dist/string/truncate.cjs"
    },
    "./string/upperFirst": {
      "import": "./dist/string/upperFirst.mjs",
      "require": "./dist/string/upperFirst.cjs"
    },
    "./types": {
      "import": "./dist/types/index.mjs",
      "require": "./dist/types/index.cjs"
    },
    "./package.json": "./package.json"
  },
  "publishConfig": {
    "access": "public",
    "registry": "https://registry.npmjs.org/"
  },
  "scripts": {
    "build": "tsdown",
    "typecheck": "tsc --noEmit -p tsconfig.json",
    "test": "vitest run --coverage",
    "test:watch": "vitest",
    "test:ci": "vitest run --coverage",
    "lint": "eslint --max-warnings 0 src test scripts",
    "lint:check": "eslint --max-warnings 0 src test scripts",
    "lint:fix": "eslint --max-warnings 0 --fix src test scripts",
    "prettier:fix": "prettier --write \"**/*.{ts,tsx,md,json}\"",
    "prettier:check": "prettier --check \"**/*.{ts,tsx,md,json}\"",
    "docs:catalog": "tsx scripts/generate-catalog.ts",
    "docs:catalog:check": "tsx scripts/generate-catalog.ts --check",
    "docs:dev": "pnpm --filter website dev",
    "docs:build": "pnpm docs:catalog && pnpm --filter website build",
    "release": "changeset publish"
  }
}