{
  "manifest": {
    "name": "yaml",
    "version": "2.4.1",
    "license": "ISC",
    "author": {
      "name": "Eemeli Aro",
      "email": "eemeli@gmail.com"
    },
    "repository": {
      "type": "git",
      "url": "https://github.com/eemeli/yaml.git"
    },
    "description": "JavaScript parser and stringifier for YAML",
    "keywords": [
      "YAML",
      "parser",
      "stringifier"
    ],
    "homepage": "https://eemeli.org/yaml/",
    "files": [
      "browser/",
      "dist/",
      "util.js"
    ],
    "type": "commonjs",
    "main": "./dist/index.js",
    "bin": {
      "yaml": "bin.mjs"
    },
    "browser": {
      "./dist/index.js": "./browser/index.js",
      "./dist/util.js": "./browser/dist/util.js",
      "./util.js": "./browser/dist/util.js"
    },
    "exports": {
      ".": {
        "types": "./dist/index.d.ts",
        "node": "./dist/index.js",
        "default": "./browser/index.js"
      },
      "./package.json": "./package.json",
      "./util": {
        "types": "./dist/util.d.ts",
        "node": "./dist/util.js",
        "default": "./browser/dist/util.js"
      }
    },
    "scripts": {
      "build": "npm run build:node && npm run build:browser",
      "build:browser": "rollup -c config/rollup.browser-config.mjs",
      "build:node": "rollup -c config/rollup.node-config.mjs",
      "clean": "git clean -fdxe node_modules",
      "lint": "eslint src/",
      "prettier": "prettier --write .",
      "prestart": "npm run build:node",
      "start": "node -i -e 'YAML=require(\"./dist/index.js\")'",
      "test": "jest --config config/jest.config.js",
      "test:all": "npm test && npm run test:types && npm run test:dist && npm run test:dist:types",
      "test:browsers": "cd playground && npm test",
      "test:dist": "npm run build:node && jest --config config/jest.config.js",
      "test:dist:types": "tsc --allowJs --moduleResolution node --noEmit --target es5 dist/index.js",
      "test:types": "tsc --noEmit && tsc --noEmit -p tests/tsconfig.json",
      "docs:install": "cd docs-slate && bundle install",
      "predocs:deploy": "node docs/prepare-docs.mjs",
      "docs:deploy": "cd docs-slate && ./deploy.sh",
      "predocs": "node docs/prepare-docs.mjs",
      "docs": "cd docs-slate && bundle exec middleman server",
      "preversion": "npm test && npm run build",
      "prepublishOnly": "npm run clean && npm test && npm run build"
    },
    "browserslist": "defaults, not ie 11",
    "prettier": {
      "arrowParens": "avoid",
      "semi": false,
      "singleQuote": true,
      "trailingComma": "none"
    },
    "devDependencies": {
      "@babel/core": "^7.12.10",
      "@babel/plugin-transform-class-properties": "^7.23.3",
      "@babel/plugin-transform-nullish-coalescing-operator": "^7.23.4",
      "@babel/plugin-transform-typescript": "^7.12.17",
      "@babel/preset-env": "^7.12.11",
      "@rollup/plugin-babel": "^6.0.3",
      "@rollup/plugin-replace": "^5.0.2",
      "@rollup/plugin-typescript": "^11.0.0",
      "@types/jest": "^29.2.4",
      "@types/node": "^20.11.20",
      "@typescript-eslint/eslint-plugin": "^7.0.2",
      "@typescript-eslint/parser": "^7.0.2",
      "babel-jest": "^29.0.1",
      "cross-env": "^7.0.3",
      "eslint": "^8.2.0",
      "eslint-config-prettier": "^9.0.0",
      "fast-check": "^2.12.0",
      "jest": "^29.0.1",
      "jest-ts-webcompat-resolver": "^1.0.0",
      "prettier": "^3.0.2",
      "rollup": "^4.12.0",
      "tslib": "^2.1.0",
      "typescript": "^5.0.3"
    },
    "engines": {
      "node": ">= 14"
    },
    "_registry": "npm",
    "_loc": "/homez.1033/heliovt/.cache/yarn/v6/npm-yaml-2.4.1-2e57e0b5e995292c25c75d2658f0664765210eed-integrity/node_modules/yaml/package.json",
    "readmeFilename": "README.md",
    "readme": "# YAML <a href=\"https://www.npmjs.com/package/yaml\"><img align=\"right\" src=\"https://badge.fury.io/js/yaml.svg\" title=\"npm package\" /></a>\n\n`yaml` is a definitive library for [YAML](https://yaml.org/), the human friendly data serialization standard.\nThis library:\n\n- Supports both YAML 1.1 and YAML 1.2 and all common data schemas,\n- Passes all of the [yaml-test-suite](https://github.com/yaml/yaml-test-suite) tests,\n- Can accept any string as input without throwing, parsing as much YAML out of it as it can, and\n- Supports parsing, modifying, and writing YAML comments and blank lines.\n\nThe library is released under the ISC open source license, and the code is [available on GitHub](https://github.com/eemeli/yaml/).\nIt has no external dependencies and runs on Node.js as well as modern browsers.\n\nFor the purposes of versioning, any changes that break any of the documented endpoints or APIs will be considered semver-major breaking changes.\nUndocumented library internals may change between minor versions, and previous APIs may be deprecated (but not removed).\n\nThe minimum supported TypeScript version of the included typings is 3.9;\nfor use in earlier versions you may need to set `skipLibCheck: true` in your config.\nThis requirement may be updated between minor versions of the library.\n\nFor more information, see the project's documentation site: [**eemeli.org/yaml**](https://eemeli.org/yaml/)\n\nTo install:\n\n```sh\nnpm install yaml\n```\n\n**Note:** These docs are for `yaml@2`. For v1, see the [v1.10.0 tag](https://github.com/eemeli/yaml/tree/v1.10.0) for the source and [eemeli.org/yaml/v1](https://eemeli.org/yaml/v1/) for the documentation.\n\n## API Overview\n\nThe API provided by `yaml` has three layers, depending on how deep you need to go: [Parse & Stringify](https://eemeli.org/yaml/#parse-amp-stringify), [Documents](https://eemeli.org/yaml/#documents), and the underlying [Lexer/Parser/Composer](https://eemeli.org/yaml/#parsing-yaml).\nThe first has the simplest API and \"just works\", the second gets you all the bells and whistles supported by the library along with a decent [AST](https://eemeli.org/yaml/#content-nodes), and the third lets you get progressively closer to YAML source, if that's your thing.\n\nA [command-line tool](https://eemeli.org/yaml/#command-line-tool) is also included.\n\n```js\nimport { parse, stringify } from 'yaml'\n// or\nimport YAML from 'yaml'\n// or\nconst YAML = require('yaml')\n```\n\n### Parse & Stringify\n\n- [`parse(str, reviver?, options?): value`](https://eemeli.org/yaml/#yaml-parse)\n- [`stringify(value, replacer?, options?): string`](https://eemeli.org/yaml/#yaml-stringify)\n\n### Documents\n\n- [`Document`](https://eemeli.org/yaml/#documents)\n  - [`constructor(value, replacer?, options?)`](https://eemeli.org/yaml/#creating-documents)\n  - [`#anchors`](https://eemeli.org/yaml/#working-with-anchors)\n  - [`#contents`](https://eemeli.org/yaml/#content-nodes)\n  - [`#directives`](https://eemeli.org/yaml/#stream-directives)\n  - [`#errors`](https://eemeli.org/yaml/#errors)\n  - [`#warnings`](https://eemeli.org/yaml/#errors)\n- [`isDocument(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)\n- [`parseAllDocuments(str, options?): Document[]`](https://eemeli.org/yaml/#parsing-documents)\n- [`parseDocument(str, options?): Document`](https://eemeli.org/yaml/#parsing-documents)\n\n### Content Nodes\n\n- [`isAlias(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)\n- [`isCollection(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)\n- [`isMap(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)\n- [`isNode(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)\n- [`isPair(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)\n- [`isScalar(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)\n- [`isSeq(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)\n- [`new Scalar(value)`](https://eemeli.org/yaml/#scalar-values)\n- [`new YAMLMap()`](https://eemeli.org/yaml/#collections)\n- [`new YAMLSeq()`](https://eemeli.org/yaml/#collections)\n- [`doc.createAlias(node, name?): Alias`](https://eemeli.org/yaml/#working-with-anchors)\n- [`doc.createNode(value, options?): Node`](https://eemeli.org/yaml/#creating-nodes)\n- [`doc.createPair(key, value): Pair`](https://eemeli.org/yaml/#creating-nodes)\n- [`visit(node, visitor)`](https://eemeli.org/yaml/#finding-and-modifying-nodes)\n\n### Parsing YAML\n\n- [`new Lexer().lex(src)`](https://eemeli.org/yaml/#lexer)\n- [`new Parser(onNewLine?).parse(src)`](https://eemeli.org/yaml/#parser)\n- [`new Composer(options?).compose(tokens)`](https://eemeli.org/yaml/#composer)\n\n## YAML.parse\n\n```yaml\n# file.yml\nYAML:\n  - A human-readable data serialization language\n  - https://en.wikipedia.org/wiki/YAML\nyaml:\n  - A complete JavaScript implementation\n  - https://www.npmjs.com/package/yaml\n```\n\n```js\nimport fs from 'fs'\nimport YAML from 'yaml'\n\nYAML.parse('3.14159')\n// 3.14159\n\nYAML.parse('[ true, false, maybe, null ]\\n')\n// [ true, false, 'maybe', null ]\n\nconst file = fs.readFileSync('./file.yml', 'utf8')\nYAML.parse(file)\n// { YAML:\n//   [ 'A human-readable data serialization language',\n//     'https://en.wikipedia.org/wiki/YAML' ],\n//   yaml:\n//   [ 'A complete JavaScript implementation',\n//     'https://www.npmjs.com/package/yaml' ] }\n```\n\n## YAML.stringify\n\n```js\nimport YAML from 'yaml'\n\nYAML.stringify(3.14159)\n// '3.14159\\n'\n\nYAML.stringify([true, false, 'maybe', null])\n// `- true\n// - false\n// - maybe\n// - null\n// `\n\nYAML.stringify({ number: 3, plain: 'string', block: 'two\\nlines\\n' })\n// `number: 3\n// plain: string\n// block: |\n//   two\n//   lines\n// `\n```\n\n---\n\nBrowser testing provided by:\n\n<a href=\"https://www.browserstack.com/open-source\">\n<img width=200 src=\"https://eemeli.org/yaml/images/browserstack.svg\" />\n</a>\n",
    "licenseText": "Copyright Eemeli Aro <eemeli@gmail.com>\n\nPermission to use, copy, modify, and/or distribute this software for any purpose\nwith or without fee is hereby granted, provided that the above copyright notice\nand this permission notice appear in all copies.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND\nFITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS\nOF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER\nTORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF\nTHIS SOFTWARE.\n"
  },
  "artifacts": [],
  "remote": {
    "resolved": "https://registry.yarnpkg.com/yaml/-/yaml-2.4.1.tgz#2e57e0b5e995292c25c75d2658f0664765210eed",
    "type": "tarball",
    "reference": "https://registry.yarnpkg.com/yaml/-/yaml-2.4.1.tgz",
    "hash": "2e57e0b5e995292c25c75d2658f0664765210eed",
    "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==",
    "registry": "npm",
    "packageName": "yaml",
    "cacheIntegrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg== sha1-LlfgtemVKSwlx10mWPBmR2UhDu0="
  },
  "registry": "npm",
  "hash": "2e57e0b5e995292c25c75d2658f0664765210eed"
}