diff --git a/Tasks/FileTransformV1/package-lock.json b/Tasks/FileTransformV1/package-lock.json index e3881f8374c2..a9008ca4118c 100644 --- a/Tasks/FileTransformV1/package-lock.json +++ b/Tasks/FileTransformV1/package-lock.json @@ -4,20 +4,17 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "@types/concat-stream": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz", - "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==", - "requires": { - "@types/node": "*" - } + "@types/events": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.3.tgz", + "integrity": "sha512-trOc4AAUThEz9hapPtSd7wf5tiQKvTtu5b371UxXdTuqzIh0ArcRspRP0i0Viu+LXstIQ1z96t1nsPxT9ol01g==" }, - "@types/form-data": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", - "integrity": "sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==", + "@types/ltx": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/ltx/-/ltx-3.0.6.tgz", + "integrity": "sha512-ZdHUgFEaBVUHI0si050pQkuGzHQC5UU46JsljUUJkGWbsjKeV3RUspJvvdV80Inrnhx8d3JqXw4qCDRX4A/BdA==", "requires": { - "@types/node": "*" + "@types/events": "*" } }, "@types/mocha": { @@ -35,11 +32,6 @@ "resolved": "https://registry.npmjs.org/@types/q/-/q-1.0.7.tgz", "integrity": "sha512-0WS7XU7sXzQ7J1nbnMKKYdjrrFoO3YtZYgUzeV8JFXffPnHfvSJQleR70I8BOAsOm14i4dyaAZ3YzqIl1YhkXQ==" }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, "@xmldom/xmldom": { "version": "git+https://github.com/xmldom/xmldom.git#238b1ea8431fae8817812c68d55b4933248af07e", "from": "git+https://github.com/xmldom/xmldom.git#0.8.6" @@ -49,6 +41,19 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, + "adm-zip": { + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.10.tgz", + "integrity": "sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==" + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" + } + }, "archiver": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.2.0.tgz", @@ -77,11 +82,6 @@ "readable-stream": "^2.0.0" } }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" - }, "async": { "version": "2.6.4", "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", @@ -90,22 +90,18 @@ "lodash": "^4.17.14" } }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, "azure-pipelines-task-lib": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/azure-pipelines-task-lib/-/azure-pipelines-task-lib-4.3.0.tgz", - "integrity": "sha512-kmOyGE1kuRaWwXYZ5MfA8Q8Awt7aAUExG6w40aos6Y3G0/RlTCeB+5H4oYpoiNB0g8MPYhWG7SM5i6PLycWs1A==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/azure-pipelines-task-lib/-/azure-pipelines-task-lib-4.7.0.tgz", + "integrity": "sha512-5MctDC1Bt7eFi9tQTXlikuWRDc2MenCNruMsEwcKuXqBj1ZY+fA/D+E1DbE0Qi2u8kl1p6szT0we8k6RHSOe/w==", "requires": { + "adm-zip": "^0.5.10", + "deasync": "^0.1.28", "minimatch": "3.0.5", - "mockery": "^2.1.0", + "nodejs-file-downloader": "^4.11.1", "q": "^1.5.1", "semver": "^5.1.0", "shelljs": "^0.8.5", - "sync-request": "6.1.0", "uuid": "^3.0.1" }, "dependencies": { @@ -121,14 +117,20 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==" + }, + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==" } } }, "azure-pipelines-tasks-webdeployment-common": { - "version": "4.219.1", - "resolved": "https://registry.npmjs.org/azure-pipelines-tasks-webdeployment-common/-/azure-pipelines-tasks-webdeployment-common-4.219.1.tgz", - "integrity": "sha512-Uf9b0u33Wwff2EBBxFcvPaL8LetSBT2q8l28SVTOVcDgnQVMKJPR7pMK+DBzLiDlLe164MOcGrlOK+Oi/0+5LA==", + "version": "4.230.6", + "resolved": "https://registry.npmjs.org/azure-pipelines-tasks-webdeployment-common/-/azure-pipelines-tasks-webdeployment-common-4.230.6.tgz", + "integrity": "sha512-lEk6mDpEMIwZ1JZEBH6nQnio7R12gNGECXUYhbyLpL6n/OT+eWd3hWkc4f0F4GfKRSSjpsGEmX56qdAwfpFdeA==", "requires": { + "@types/ltx": "3.0.6", "@types/mocha": "^5.2.7", "@types/node": "^10.17.0", "@xmldom/xmldom": "git+https://github.com/xmldom/xmldom.git#0.8.6", @@ -136,9 +138,11 @@ "azure-pipelines-task-lib": "^4.2.0", "decompress-zip": "^0.3.3", "ltx": "2.8.0", + "node-stream-zip": "^1.15.0", "q": "1.4.1", + "semver": "^7.5.4", "winreg": "1.2.2", - "xml2js": "0.4.13" + "xml2js": "0.6.2" }, "dependencies": { "@types/node": { @@ -167,6 +171,14 @@ "chainsaw": "~0.1.0" } }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "requires": { + "file-uri-to-path": "1.0.0" + } + }, "bl": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", @@ -218,30 +230,11 @@ "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==" }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, "buffers": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==" }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" - }, "chainsaw": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", @@ -250,14 +243,6 @@ "traverse": ">=0.3.0 <0.4" } }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, "compress-commons": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", @@ -274,17 +259,6 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, "core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", @@ -307,6 +281,23 @@ "readable-stream": "^2.0.0" } }, + "deasync": { + "version": "0.1.29", + "resolved": "https://registry.npmjs.org/deasync/-/deasync-0.1.29.tgz", + "integrity": "sha512-EBtfUhVX23CE9GR6m+F8WPeImEE4hR/FW9RkK0PMl9V1t283s0elqsTD8EZjaKX28SY1BW2rYfCgNsAYdpamUw==", + "requires": { + "bindings": "^1.5.0", + "node-addon-api": "^1.7.1" + } + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, "decompress-zip": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/decompress-zip/-/decompress-zip-0.3.3.tgz", @@ -344,11 +335,6 @@ } } }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" - }, "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -357,15 +343,15 @@ "once": "^1.4.0" } }, - "form-data": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", - "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, + "follow-redirects": { + "version": "1.15.3", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", + "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==" }, "fs-constants": { "version": "1.0.0", @@ -378,24 +364,9 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" }, "glob": { "version": "7.2.3", @@ -411,47 +382,25 @@ } }, "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" - }, - "http-basic": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz", - "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==", + "hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", "requires": { - "caseless": "^0.12.0", - "concat-stream": "^1.6.2", - "http-response-object": "^3.0.1", - "parse-cache-control": "^1.0.1" + "function-bind": "^1.1.2" } }, - "http-response-object": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", - "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "requires": { - "@types/node": "^10.0.3" - }, - "dependencies": { - "@types/node": { - "version": "10.17.60", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", - "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" - } + "agent-base": "6", + "debug": "4" } }, "ieee754": { @@ -479,11 +428,11 @@ "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" }, "is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "requires": { - "has": "^1.0.3" + "hasown": "^2.0.0" } }, "isarray": { @@ -504,6 +453,14 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, "ltx": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/ltx/-/ltx-2.8.0.tgz", @@ -538,10 +495,31 @@ "resolved": "https://registry.npmjs.org/mkpath/-/mkpath-0.1.0.tgz", "integrity": "sha512-bauHShmaxVQiEvlrAPWxSPn8spSL8gDVRl11r8vLT4r/KdnknLqtqwQbToZ2Oa8sJkExYY1z6/d+X7pNiqo4yg==" }, - "mockery": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mockery/-/mockery-2.1.0.tgz", - "integrity": "sha512-9VkOmxKlWXoDO/h1jDZaS4lH33aWfRiJiNT/tKj+8OGzrcFDLo8d0syGdbsc3Bc4GvRXPb+NMMvojotmuGJTvA==" + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node-addon-api": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz", + "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==" + }, + "node-stream-zip": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.15.0.tgz", + "integrity": "sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==" + }, + "nodejs-file-downloader": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/nodejs-file-downloader/-/nodejs-file-downloader-4.12.1.tgz", + "integrity": "sha512-LpfCTNhh805AlLnJnzt1PuEj+RmbrccbAQZ6hBRw2e6QPVR0Qntuo6qqyvPHG5s77/0w0IEKgRAD4nbSnr/X4w==", + "requires": { + "follow-redirects": "^1.15.1", + "https-proxy-agent": "^5.0.0", + "mime-types": "^2.1.27", + "sanitize-filename": "^1.6.3" + } }, "nopt": { "version": "3.0.6", @@ -559,11 +537,6 @@ "remove-trailing-separator": "^1.0.1" } }, - "object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" - }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -572,11 +545,6 @@ "wrappy": "1" } }, - "parse-cache-control": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", - "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==" - }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -592,27 +560,11 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, - "promise": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", - "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", - "requires": { - "asap": "~2.0.6" - } - }, "q": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=" }, - "qs": { - "version": "6.11.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.1.tgz", - "integrity": "sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==", - "requires": { - "side-channel": "^1.0.4" - } - }, "readable-stream": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", @@ -641,11 +593,11 @@ "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==" }, "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "requires": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } @@ -655,15 +607,26 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, + "sanitize-filename": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", + "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "requires": { + "truncate-utf8-bytes": "^1.0.0" + } + }, "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "requires": { + "lru-cache": "^6.0.0" + } }, "shelljs": { "version": "0.8.5", @@ -675,16 +638,6 @@ "rechoir": "^0.6.2" } }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -698,24 +651,6 @@ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" }, - "sync-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz", - "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==", - "requires": { - "http-response-object": "^3.0.1", - "sync-rpc": "^1.2.1", - "then-request": "^6.0.0" - } - }, - "sync-rpc": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz", - "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==", - "requires": { - "get-port": "^3.1.0" - } - }, "tar-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", @@ -730,31 +665,6 @@ "xtend": "^4.0.0" } }, - "then-request": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz", - "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==", - "requires": { - "@types/concat-stream": "^1.6.0", - "@types/form-data": "0.0.33", - "@types/node": "^8.0.0", - "@types/qs": "^6.2.31", - "caseless": "~0.12.0", - "concat-stream": "^1.6.0", - "form-data": "^2.2.0", - "http-basic": "^8.1.1", - "http-response-object": "^3.0.1", - "promise": "^8.0.0", - "qs": "^6.4.0" - }, - "dependencies": { - "@types/node": { - "version": "8.10.66", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", - "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" - } - } - }, "to-buffer": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", @@ -783,10 +693,13 @@ "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==" }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + "truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "requires": { + "utf8-byte-length": "^1.0.1" + } }, "typescript": { "version": "4.0.2", @@ -794,6 +707,11 @@ "integrity": "sha512-e4ERvRV2wb+rRZ/IQeb3jm2VxBsirQLpQhdxplZ2MEzGvDkkMmPglecnNDfSUBivMjP93vRbngYYDQqQ/78bcQ==", "dev": true }, + "utf8-byte-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", + "integrity": "sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA==" + }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -815,24 +733,29 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "xml2js": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.13.tgz", - "integrity": "sha512-BoxD65qWA2p4znzbaati/Td19uFEc0X6ydj0bFphJO62RrNaGqOyW6ljLWPo3GKDbvW/6dnxAoRX01BsgEWsMA==", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz", + "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==", "requires": { "sax": ">=0.6.0", - "xmlbuilder": ">=2.4.6" + "xmlbuilder": "~11.0.0" } }, "xmlbuilder": { - "version": "15.1.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==" + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "zip-stream": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", diff --git a/Tasks/FileTransformV1/package.json b/Tasks/FileTransformV1/package.json index c89e7d5c4098..23ff603dd26e 100644 --- a/Tasks/FileTransformV1/package.json +++ b/Tasks/FileTransformV1/package.json @@ -20,7 +20,7 @@ "@types/mocha": "^5.2.7", "@types/node": "^16.11.39", "@types/q": "1.0.7", - "azure-pipelines-tasks-webdeployment-common": "^4.219.1", + "azure-pipelines-tasks-webdeployment-common": "^4.230.6", "q": "1.4.1" }, "devDependencies": { diff --git a/Tasks/FileTransformV1/task.json b/Tasks/FileTransformV1/task.json index 50e3ff3cf46d..8cb53b4ef12f 100644 --- a/Tasks/FileTransformV1/task.json +++ b/Tasks/FileTransformV1/task.json @@ -17,7 +17,7 @@ ], "version": { "Major": 1, - "Minor": 220, + "Minor": 231, "Patch": 0 }, "instanceNameFormat": "File Transform: $(Package)", diff --git a/Tasks/FileTransformV1/task.loc.json b/Tasks/FileTransformV1/task.loc.json index 32d4e09fd232..67e1e00dccb9 100644 --- a/Tasks/FileTransformV1/task.loc.json +++ b/Tasks/FileTransformV1/task.loc.json @@ -17,7 +17,7 @@ ], "version": { "Major": 1, - "Minor": 220, + "Minor": 231, "Patch": 0 }, "instanceNameFormat": "ms-resource:loc.instanceNameFormat", diff --git a/_generated/FileTransformV1.versionmap.txt b/_generated/FileTransformV1.versionmap.txt index 91215571a810..8cab7f731774 100644 --- a/_generated/FileTransformV1.versionmap.txt +++ b/_generated/FileTransformV1.versionmap.txt @@ -1,2 +1,2 @@ -Default|1.220.0 -Node20_229_3|1.230.1 +Default|1.231.0 +Node20_229_3|1.231.1 diff --git a/_generated/FileTransformV1/README.md b/_generated/FileTransformV1/README.md new file mode 100644 index 000000000000..0ef1852d33fb --- /dev/null +++ b/_generated/FileTransformV1/README.md @@ -0,0 +1,94 @@ +# File transform + +## Overview + +Use this task to apply file transformations and variable substitutions on configuration and parameters files. For details of how translations are processed, see [File transforms and variable substitution reference](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/transforms-variable-substitution?view=azure-devops). + +## File transformations + +* At present file transformations are supported for only XML files. + +* To apply XML transformation to configuration files (*.config) you must specify a newline-separated list of transformation file rules using the syntax: + + `-transform -xml -result ` + +* File transformations are useful in many scenarios, particularly when you are deploying to an App service and want to add, remove or modify configurations for different environments (such as Dev, Test, or Prod) by following the standard Web.config Transformation Syntax. + +* You can also use this functionality to transform other files, including Console or Windows service application configuration files (for example, FabrikamService.exe.config). + +* Config file transformations are run before variable substitutions. + +## Variable substitution + +* At present only XML and JSON file formats are supported for variable substitution. + +* Tokens defined in the target configuration files are updated and then replaced with variable values. + +* Variable substitutions are run after config file transformations. + +* Variable substitution is applied for only the JSON keys predefined in the object hierarchy. It does not create new keys. + +* Only custom variables defined in build/release pipelines are used in substitution. Default/system defined pipeline variables are excluded. + +* If same variables are defined in the release pipeline and in the stage, then the stage variables will supersede the release pipeline variables. + +* Predefined or build Variables are skipped during variable substitution. Hence, variables having prefix among ['agent.', 'azure_http_user_agent', 'build.', 'common.', 'release.', 'system.', 'tf_'] are ignored during variable substitution. + +### Examples + +If you need XML transformation to run on all the configuration files named with pattern .Production.config, the transformation rule should be specified as: + +`-transform **\*.Production.config -xml **\*.config` + +If you have a configuration file named based on the stage name in your pipeline, you can use: + +`-transform **\*.$(Release.EnvironmentName).config -xml **\*.config` + +To substitute JSON variables that are nested or hierarchical, specify them using JSONPath expressions. For example, to replace the value of ConnectionString in the sample below, you must define a variable as Data.DefaultConnection.ConnectionString in the build or release pipeline (or in a stage within the release pipeline). + +``` +{ + "Data": { + "DefaultConnection": { + "ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True" + } + } +} +``` + +### YAML snippet + +``` +# File transform +# Replace tokens with variable values in XML or JSON configuration files +- task: FileTransform@1 + inputs: + #folderPath: '$(System.DefaultWorkingDirectory)/**/*.zip' + #enableXmlTransform: # Optional + #xmlTransformationRules: '-transform **\*.Release.config -xml **\*.config-transform **\*.$(Release.EnvironmentName).config -xml **\*.config' # Optional + #fileType: # Optional. Options: xml, json + #targetFiles: # Optional +``` + +### Arguments + +Package or folder -> folderPath File path to the package or a folder. Variables ( Build | Release ), wildcards are supported. For example, `$ (System.DefaultWorkingDirectory)/*/.zip`. For zipped folders, the contents are extracted to the TEMP location, transformations executed, and the results zipped in original artifact location. + +XML transformation +enableXmlTransform -> Enable this option to apply XML transformations based on the rules specified below. Config transforms run prior to any variable substitution. XML transformations are supported only for the Windows platform. + +Transformation rules +xmlTransformationRules -> Provide a newline-separated list of transformation file rules using the syntax +`-transform -xml -result ` +The result file path is optional and, if not specified, the source configuration file will be replaced with the transformed result file. + +File format +fileType -> Specify the file format on which substitution is to be performed. Variable substitution runs after any configuration transforms. For XML, Variables defined in the build or release pipelines will be matched against the token ('key' or 'name') entries in the appSettings, applicationSettings, and connectionStrings sections of any config file and parameters.xml file. + +Target files +targetFiles -> Provide a newline-separated list of files for variable substitution. Files names must be specified relative to the root folder. + +* **File transformation and variable substitution:** Refer to following links: + * [XML transformation](https://docs.microsoft.com/en-us/vsts/build-release/tasks/transforms-variable-substitution?view=vsts#xml-transformation) + * [XML variable substitution](https://docs.microsoft.com/en-us/vsts/build-release/tasks/transforms-variable-substitution?view=vsts#xml-variable-substitution) + * [JSON variable substitution](https://docs.microsoft.com/en-us/vsts/build-release/tasks/transforms-variable-substitution?view=vsts#json-variable-substitution) \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/de-DE/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/de-DE/resources.resjson new file mode 100644 index 000000000000..649f928af00f --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/de-DE/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "Dateitransformation", + "loc.helpMarkDown": "Aufgabe zur Dateitransformation und Variablenersetzung: Aktualisieren Sie Token in Ihren XML-basierten Konfigurationsdateien, und ersetzen Sie diese Token durch Variablenwerte.
Aktuell werden nur XML- und JSON-Dateiformate für die Variablenersetzung unterstützt.
[Weitere Informationen zu dieser Aufgabe](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "Hiermit werden in XML- oder JSON-Konfigurationsdateien Token durch Variablenwerte ersetzt.", + "loc.instanceNameFormat": "Dateitransformation: $(Package)", + "loc.group.displayName.VariableSubstitution": "Variablenersetzung", + "loc.input.label.folderPath": "Paket oder Ordner", + "loc.input.help.folderPath": "Dateipfad zu einem Paket oder einem Ordner.
Variablen ([Build](https://docs.microsoft.com/vsts/pipelines/build/variables) | [Release](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)) und Platzhalter werden unterstützt.
Beispiel: $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip.", + "loc.input.label.enableXmlTransform": "XML-Transformation", + "loc.input.help.enableXmlTransform": "Vor der Variablenersetzung werden Konfigurationstransformationen durchgeführt.
XML-Transformationen werden nur für die Windows-Plattform unterstützt.", + "loc.input.label.xmlTransformationRules": "Transformationsregeln", + "loc.input.help.xmlTransformationRules": "Geben Sie eine Liste mit Transformationsdateiregeln an, bei der jeder Eintrag in einer neuen Zeile enthalten ist. Verwenden Sie hierbei diese Syntax:
-transform -xml ", + "loc.input.label.fileType": "Dateiformat", + "loc.input.help.fileType": "Geben Sie das Dateiformat an, für das die Ersetzung durchgeführt werden soll.
Für XML werden in den Build- oder Releasepipelines definierte Variablen anhand der Einträge \"key\" oder \"name\" in den Abschnitten \"appSettings\", \"applicationSettings\" und \"connectionStrings\" einer beliebigen Konfigurationsdatei und \"parameters.xml\" abgeglichen. Die Variablenersetzung wird nach den Konfigurationstransformationen durchgeführt.
Um JSON-Variablen zu ersetzen, die geschachtelt oder hierarchisch aufgebaut sind, geben Sie diese mithilfe von JSONPath-Ausdrücken an.

Um beispielsweise den Wert von \"ConnectionString\" im Beispiel unten zu ersetzen, müssen Sie eine Variable als \"Data.DefaultConnection.ConnectionString\" in der Build- oder Releasepipeline (oder der Umgebung der Releasepipeline) definieren.
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
Die Variablenersetzung wird nach den Konfigurationstransformationen durchgeführt.

Hinweis: Bei der Ersetzung werden nur benutzerdefinierte Variablen verwendet, die in Build-/Releasepipelines definiert sind. In der Pipeline definierte Standard- oder Systemvariablen werden ausgeschlossen.
Hinweis: Wenn dieselben Variablen für die Releasepipeline und die Stufe definiert werden, haben die Stufenvariablen Vorrang vor den Variablen der Releasepipeline.", + "loc.input.label.targetFiles": "Zieldateien", + "loc.input.help.targetFiles": "Geben Sie eine Liste mit Dateien für die Ersetzung der Variablenwerte an, bei der jede Datei in einer neuen Zeile enthalten ist. Die Dateinamen müssen relativ zum Stammordner angegeben werden.", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "Die JSON-Variablenersetzung wurde erfolgreich angewendet.", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "XML-Variablenersetzung erfolgreich angewendet.", + "loc.messages.XDTTransformationsappliedsuccessfully": "Die XML-Transformationen wurden erfolgreich angewendet.", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "XML-Transformationen können auf einer Nicht-Windows-Plattform nicht ausgeführt werden.", + "loc.messages.XdtTransformationErrorWhileTransforming": "XML-Transformationsfehler beim Transformieren von \"%s\" unter Verwendung von \"%s\".", + "loc.messages.JSONParseError": "Die JSON-Datei konnte nicht analysiert werden: %s. Fehler: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "Keine JSON-Datei stimmte mit dem angegebenen Muster überein: %s", + "loc.messages.FailedToApplyTransformation": "Die Transformation für das angegebene Paket kann nicht angewendet werden.", + "loc.messages.MissingArgumentsforXMLTransformation": "Unvollständige oder fehlende Argumente. Erwartetes Format: -transform -xml -result . Transformations- und Quelldatei sind Pflichteingaben.", + "loc.messages.SubstitutingValueonKey": "Der Wert für den Schlüssel \"%s\" wird ersetzt.", + "loc.messages.SubstitutingValueonKeyWithNumber": "Wert für Schlüssel \"%s\" wird durch (Zahl) Wert ersetzt: %s", + "loc.messages.SubstitutingValueonKeyWithBoolean": "Der Wert für den Schlüssel \"%s\" wird durch den (booleschen) Wert \"%s\" ersetzt.", + "loc.messages.SubstitutingValueonKeyWithObject": "Wert für Schlüssel \"%s\" wird durch (Objekt) Wert ersetzt: %s", + "loc.messages.SubstitutingValueonKeyWithString": "Wert für Schlüssel \"%s\" wird durch (Zeichenfolge) Wert ersetzt: %s", + "loc.messages.JSONvariableSubstitution": "Die JSON-Variablenersetzung für \"%s\" wird angewendet.", + "loc.messages.ApplyingXDTtransformation": "Die XDT-Transformation wird aus Transformationsdatei \"%s\" > Quelldatei \"%s\" angewendet.", + "loc.messages.SubstitutionForXmlNode": "Ersetzung für XML-Knoten wird verarbeitet: %s", + "loc.messages.UpdatingKeyWithTokenValue": "Der Wert für den Schlüssel \"%s\" wird durch den Tokenwert ersetzt: %s", + "loc.messages.SubstitutingConnectionStringValue": "Der connectionString-Wert für connectionString \"%s\" wird durch den Tokenwert ersetzt: %s ", + "loc.messages.VariableSubstitutionInitiated": "Die Variablenersetzung in der Konfigurationsdatei wurde initialisiert: %s", + "loc.messages.ConfigFileUpdated": "Die Konfigurationsdatei \"%s\" wurde aktualisiert.", + "loc.messages.SkippedUpdatingFile": "Die Aktualisierung der Datei wurde übersprungen: %s" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/en-US/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/en-US/resources.resjson new file mode 100644 index 000000000000..6b72c3ef2323 --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/en-US/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "File transform", + "loc.helpMarkDown": "File transformation and variable substitution task: Update tokens in your XML based configuration files and then replaces those tokens with variable values.
Currently only XML, JSON file formats are supported for variable substitution.
[Learn more about this task](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "Replace tokens with variable values in XML or JSON configuration files", + "loc.instanceNameFormat": "File Transform: $(Package)", + "loc.group.displayName.VariableSubstitution": "Variable Substitution", + "loc.input.label.folderPath": "Package or folder", + "loc.input.help.folderPath": "File path to the package or a folder.
Variables ( [Build](https://docs.microsoft.com/vsts/pipelines/build/variables) | [Release](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)), wildcards are supported.
For example, $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip.", + "loc.input.label.enableXmlTransform": "XML transformation", + "loc.input.help.enableXmlTransform": "Config transforms will be run prior to the Variable Substitution.
XML transformations are supported only for Windows platform.", + "loc.input.label.xmlTransformationRules": "Transformation rules", + "loc.input.help.xmlTransformationRules": "Provide new line separated list of transformation file rules using the syntax:
-transform -xml ", + "loc.input.label.fileType": "File format", + "loc.input.help.fileType": "Provide file format on which substitution has to be perfformed
For XML, Variables defined in the build or release pipelines will be matched against the 'key' or 'name' entries in the appSettings, applicationSettings, and connectionStrings sections of any config file and parameters.xml. Variable Substitution is run after config transforms.
To substitute JSON variables that are nested or hierarchical, specify them using JSONPath expressions.

For example, to replace the value of ‘ConnectionString’ in the sample below, you need to define a variable as ‘Data.DefaultConnection.ConnectionString’ in the build or release pipeline (or release pipeline's environment).
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
Variable Substitution is run after configuration transforms.

Note: only custom variables defined in build/release pipelines are used in substitution. Default/system defined pipeline variables are excluded.
Note: If same variables are defined in the release pipeline and in the stage, then the stage variables will supersede the release pipeline variables.", + "loc.input.label.targetFiles": "Target files", + "loc.input.help.targetFiles": "Provide new line separated list of files to substitute the variable values. Files names are to be provided relative to the root folder.", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "JSON variable substitution applied successfully.", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "XML variable substitution applied successfully.", + "loc.messages.XDTTransformationsappliedsuccessfully": "XML Transformations applied successfully", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "Cannot perform XML transformations on a non-Windows platform.", + "loc.messages.XdtTransformationErrorWhileTransforming": "XML transformation error while transforming %s using %s.", + "loc.messages.JSONParseError": "Unable to parse JSON file: %s. Error: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "NO JSON file matched with specific pattern: %s.", + "loc.messages.FailedToApplyTransformation": "Unable to apply transformation for the given package.", + "loc.messages.MissingArgumentsforXMLTransformation": "Incomplete or missing arguments. Expected format -transform -xml -result . Transformation and source file are mandatory inputs.", + "loc.messages.SubstitutingValueonKey": "Substituting value on key: %s", + "loc.messages.SubstitutingValueonKeyWithNumber": "Substituting value on key %s with (number) value: %s", + "loc.messages.SubstitutingValueonKeyWithBoolean": "Substituting value on key %s with (boolean) value: %s", + "loc.messages.SubstitutingValueonKeyWithObject": "Substituting value on key %s with (object) value: %s", + "loc.messages.SubstitutingValueonKeyWithString": "Substituting value on key %s with (string) value: %s", + "loc.messages.JSONvariableSubstitution": "Applying JSON variable substitution for %s", + "loc.messages.ApplyingXDTtransformation": "Applying XDT Transformation from transformation file %s -> source file %s ", + "loc.messages.SubstitutionForXmlNode": "Processing substitution for xml node : %s", + "loc.messages.UpdatingKeyWithTokenValue": "Updating value for key= %s with token value: %s", + "loc.messages.SubstitutingConnectionStringValue": "Substituting connectionString value for connectionString = %s with token value: %s ", + "loc.messages.VariableSubstitutionInitiated": "Initiated variable substitution in config file : %s", + "loc.messages.ConfigFileUpdated": "Config file : %s updated.", + "loc.messages.SkippedUpdatingFile": "Skipped Updating file: %s" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/es-ES/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/es-ES/resources.resjson new file mode 100644 index 000000000000..930965433099 --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/es-ES/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "Transformación de archivo", + "loc.helpMarkDown": "Tarea de transformación de archivos y sustitución de variables: actualice los tokens de los archivos de configuración basados en XML y, a continuación, reemplace esos tokens por valores de variables.
Actualmente solo se admiten los formatos de archivo XML y JSON para la sustitución de variables.
[Obtener más información acerca de esta tarea](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "Reemplaza los tokens por valores de variables en los archivos de configuración XML o JSON.", + "loc.instanceNameFormat": "Transformación de archivo: $(Package)", + "loc.group.displayName.VariableSubstitution": "Sustitución de variables", + "loc.input.label.folderPath": "Paquete o carpeta", + "loc.input.help.folderPath": "Ruta de acceso de archivo al paquete o a una carpeta.
Variables ([Compilación](https://docs.microsoft.com/vsts/pipelines/build/variables) | [Versión](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)), se admiten caracteres comodín.
Por ejemplo, $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip.", + "loc.input.label.enableXmlTransform": "Transformación XML", + "loc.input.help.enableXmlTransform": "Las transformaciones de configuración se ejecutarán antes de la sustitución de variables.
Las transformaciones XML solo se admiten para la plataforma Windows.", + "loc.input.label.xmlTransformationRules": "Reglas de transformación", + "loc.input.help.xmlTransformationRules": "Proporcione una nueva lista separada por líneas de reglas de archivo de transformación con la sintaxis:
-transform -xml ", + "loc.input.label.fileType": "Formato de archivo", + "loc.input.help.fileType": "Proporcione el formato de archivo en el que debe realizarse la sustitución.
Para XML, las variables que se definen en las canalizaciones de compilación o versión se compararán con las entradas \"key\" o \"name\" de las secciones appSettings, applicationSettings y connectionStrings de cualquier archivo de configuración y parameters.xml. La sustitución de variable tiene lugar después de las transformaciones de configuración.
Para sustituir las variables JSON anidadas o jerárquicas, especifíquelas mediante expresiones JSONPath.

Por ejemplo, para reemplazar el valor de “ConnectionString” en el ejemplo siguiente, debe definir una variable como “Data.DefaultConnection.ConnectionString” en la canalización de compilación o versión (o el entorno de la canalización de versión).
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
La sustitución de variables se ejecuta una vez que se transforma la configuración.

Nota: Solo las variables personalizadas definidas en las canalizaciones de compilación o versión se usan en la sustitución. Se excluyen las variables de canalización predeterminadas o definidas por el sistema.
Nota: Si se definen las mismas variables en la canalización de versión y en la fase, las últimas sustituirán a las variables de la canalización de versión.", + "loc.input.label.targetFiles": "Archivos de destino", + "loc.input.help.targetFiles": "Proporcione una nueva lista separada por líneas de los archivos para sustituir los valores de variable. Los nombres de los archivos que se proporcionen deben ser relativos a la carpeta raíz.", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "La sustitución de variable JSON se aplicó correctamente.", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "Sustitución de variables XML aplicada correctamente.", + "loc.messages.XDTTransformationsappliedsuccessfully": "Las transformaciones XML se aplicaron correctamente", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "No se pueden realizar las transformaciones XML en una plataforma que no es Windows.", + "loc.messages.XdtTransformationErrorWhileTransforming": "Error de transformación XML al transformar %s mediante %s.", + "loc.messages.JSONParseError": "No se puede analizar el archivo JSON: %s. Error: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "Ningún archivo JSON coincidía con un patrón específico: %s.", + "loc.messages.FailedToApplyTransformation": "No se puede aplicar la transformación para el paquete dado.", + "loc.messages.MissingArgumentsforXMLTransformation": "Faltan argumentos o están incompletos. Formato esperado: -transform -xml -result . El archivo de transformación y de origen son entradas obligatorias.", + "loc.messages.SubstitutingValueonKey": "Sustituyendo el valor de la clave: %s", + "loc.messages.SubstitutingValueonKeyWithNumber": "Sustituyendo el valor de la clave %s por el valor (número) %s", + "loc.messages.SubstitutingValueonKeyWithBoolean": "Sustituyendo el valor de la clave %s por el valor (booleano) %s", + "loc.messages.SubstitutingValueonKeyWithObject": "Sustituyendo el valor de la clave %s por el valor (objeto) %s", + "loc.messages.SubstitutingValueonKeyWithString": "Sustituyendo el valor de la clave %s por el valor (cadena) %s", + "loc.messages.JSONvariableSubstitution": "Aplicando la sustitución de variables JSON para %s", + "loc.messages.ApplyingXDTtransformation": "Aplicando la transformación XDT del archivo de transformación %s -> archivo de código fuente %s ", + "loc.messages.SubstitutionForXmlNode": "Procesando la sustitución para el nodo XML : %s", + "loc.messages.UpdatingKeyWithTokenValue": "Actualizando el valor de la clave = %s con el valor de token %s", + "loc.messages.SubstitutingConnectionStringValue": "Sustituyendo el valor connectionString por connectionString = %s con el valor de token %s ", + "loc.messages.VariableSubstitutionInitiated": "Sustitución de variables iniciada en el archivo de configuración : %s", + "loc.messages.ConfigFileUpdated": "El archivo de configuración %s está actualizado.", + "loc.messages.SkippedUpdatingFile": "Actualización del archivo omitida: %s" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/fr-FR/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/fr-FR/resources.resjson new file mode 100644 index 000000000000..beeb3016eeae --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/fr-FR/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "Transformation de fichier", + "loc.helpMarkDown": "Tâche de transformation de fichier et de substitution de variable : met à jour les jetons dans vos fichiers config XML, puis remplace ces jetons par des valeurs de variables.
Seuls les formats de fichiers XML et JSON sont pris en charge pour la substitution de variable.
[En savoir plus sur cette tâche](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "Remplacer les jetons par des valeurs de variables dans les fichiers config XML ou JSON", + "loc.instanceNameFormat": "Transformation de fichier : $(Package)", + "loc.group.displayName.VariableSubstitution": "Substitution de variable", + "loc.input.label.folderPath": "Package ou dossier", + "loc.input.help.folderPath": "Chemin de fichier du package ou d'un dossier.
Les variables ([Build](https://docs.microsoft.com/vsts/pipelines/build/variables) | [Mise en production](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)) et les caractères génériques sont pris en charge.
Exemple : $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip.", + "loc.input.label.enableXmlTransform": "Transformation XML", + "loc.input.help.enableXmlTransform": "Les transformations de configuration sont exécutées avant la substitution de variable.
Les transformations XML sont prises en charge uniquement pour la plateforme Windows.", + "loc.input.label.xmlTransformationRules": "Règles de transformation", + "loc.input.help.xmlTransformationRules": "Fournissez une liste de règles de fichier de transformation séparées par une nouvelle ligne, en utilisant la syntaxe suivante :
-transform -xml ", + "loc.input.label.fileType": "Format de fichier", + "loc.input.help.fileType": "Indiquez le format de fichier pour lequel la substitution doit être effectuée.
Pour le format XML, les variables définies dans les pipelines de build ou de mise en production sont mises en correspondance avec les entrées 'key' ou 'name' des sections appSettings, applicationSettings et connectionStrings d'un fichier config et du fichier parameters.xml. La substitution de variable est exécutée après les transformations de configuration.
Pour substituer des variables JSON imbriquées ou hiérarchiques, spécifiez-les à l'aide d'expressions JSONPath.

Par exemple, pour remplacer la valeur de 'ConnectionString' dans l'exemple ci-dessous, vous devez définir une variable en tant que 'Data.DefaultConnection.ConnectionString' dans la définition de build ou de mise en production (ou l'environnement du pipeline de mise en production).
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
La substitution de variable est exécutée après les transformations de configuration.

Remarque : Seules les variables personnalisées définies dans les pipelines de build/mise en production sont utilisées dans la substitution. Les variables de pipeline définies par le système/par défaut sont exclues.
Remarque : Si les mêmes variables sont définies dans le pipeline de mise en production et dans l'index, les variables d'index remplacent les variables de pipeline de mise en production.", + "loc.input.label.targetFiles": "Fichiers cibles", + "loc.input.help.targetFiles": "Fournissez une liste de fichiers séparés par une nouvelle ligne pour remplacer les valeurs de variables. Les noms de fichiers doivent être indiqués par rapport au dossier racine.", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "Substitution de variable JSON correctement appliquée.", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "La substitution de la variable XML a été appliquée.", + "loc.messages.XDTTransformationsappliedsuccessfully": "Transformations XML correctement appliquées", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "Impossible d'effectuer les transformations XML sur une plateforme non-Windows.", + "loc.messages.XdtTransformationErrorWhileTransforming": "Erreur de transformation XML lors de la transformation de %s à l'aide de %s.", + "loc.messages.JSONParseError": "Impossible d'analyser le fichier JSON : %s. Erreur : %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "Aucun fichier JSON ne correspond au modèle spécifique : %s.", + "loc.messages.FailedToApplyTransformation": "Impossible d'appliquer la transformation pour le package donné.", + "loc.messages.MissingArgumentsforXMLTransformation": "Arguments incomplets ou manquants. Format attendu -transform -xml -result . Le fichier de transformation et le fichier source sont des entrées obligatoires.", + "loc.messages.SubstitutingValueonKey": "Substitution de la valeur de la clé %s", + "loc.messages.SubstitutingValueonKeyWithNumber": "Substitution de la valeur de la clé %s par une valeur numérique : %s", + "loc.messages.SubstitutingValueonKeyWithBoolean": "Substitution de la valeur de la clé %s par une valeur booléenne : %s", + "loc.messages.SubstitutingValueonKeyWithObject": "Substitution de la valeur de la clé %s par une valeur d'objet : %s", + "loc.messages.SubstitutingValueonKeyWithString": "Substitution de la valeur de la clé %s par une valeur de chaîne : %s", + "loc.messages.JSONvariableSubstitution": "Application de la substitution de variable JSON pour %s", + "loc.messages.ApplyingXDTtransformation": "Application de la transformation XDT du fichier de transformation %s au fichier source %s ", + "loc.messages.SubstitutionForXmlNode": "Traitement de la substitution pour le nœud XML : %s", + "loc.messages.UpdatingKeyWithTokenValue": "Mise à jour de la valeur de la clé %s par une valeur de jeton : %s", + "loc.messages.SubstitutingConnectionStringValue": "Substitution de la valeur connectionString pour connectionString = %s par la valeur de jeton %s ", + "loc.messages.VariableSubstitutionInitiated": "Substitution de variables lancée dans le fichier config : %s", + "loc.messages.ConfigFileUpdated": "Fichier config %s mis à jour.", + "loc.messages.SkippedUpdatingFile": "Mise à jour du fichier ignorée : %s" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/it-IT/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/it-IT/resources.resjson new file mode 100644 index 000000000000..b21318999080 --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/it-IT/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "Trasformazione file", + "loc.helpMarkDown": "Attività di trasformazione file e sostituzione delle variabili: aggiorna i token nei file di configurazione basati su XML, quindi li sostituisce con valori di variabile.
Per la sostituzione delle variabili sono attualmente supportati solo i formati di file XML e JSON.
[Altre informazioni su questa attività](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "Sostituisce i token con valori di variabile in file di configurazione XML o JSON", + "loc.instanceNameFormat": "Trasformazione file: $(Package)", + "loc.group.displayName.VariableSubstitution": "Sostituzione delle variabili", + "loc.input.label.folderPath": "Pacchetto o cartella", + "loc.input.help.folderPath": "Percorso file del pacchetto o di una cartella.
Variabili ([Compilazione](https://docs.microsoft.com/vsts/pipelines/build/variables) | [Versione](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)). I caratteri jolly sono supportati.
Ad esempio, $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip.", + "loc.input.label.enableXmlTransform": "Trasformazione XML", + "loc.input.help.enableXmlTransform": "Le trasformazioni dei file di configurazione verranno eseguite prima della sostituzione delle variabili.
Le trasformazioni XML sono supportate solo per la piattaforma Windows.", + "loc.input.label.xmlTransformationRules": "Regole di trasformazione", + "loc.input.help.xmlTransformationRules": "Specificare un elenco di regole dei file di trasformazione delimitate da caratteri di nuova riga usando la sintassi seguente:
-transform -xml ", + "loc.input.label.fileType": "Formato di file", + "loc.input.help.fileType": "Specificare il formato di file in cui deve essere eseguita la sostituzione
Per il formato XML le variabili definite nelle pipeline di compilazione o di versione verranno abbinate alle voci 'key' o 'name' nelle sezioni appSettings, applicationSettings e connectionStrings di qualsiasi file di configurazione e di parameters.xml. La sostituzione delle variabili viene eseguita dopo la trasformazione dei file di configurazione.
Per sostituire le variabili JSON annidate o gerarchiche, specificarle usando espressioni JSONPath.

Ad esempio, per sostituire il valore di 'ConnectionString' nell'esempio seguente, è necessario definire una variabile come 'Data.DefaultConnection.ConnectionString' nella pipeline di compilazione o di versione (o nell'ambiente della pipeline di versione).
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
La sostituzione delle variabili viene eseguita dopo le trasformazioni dei file di configurazione.

Nota: nella sostituzione vengono usate solo le variabili personalizzate definite nelle pipeline di compilazione o di versione. Le variabili predefinite o di sistema definite nelle pipeline vengono escluse.
Nota: se le stesse variabili vengono definite sia nella pipeline di versione che nella fase, le variabili della fase sostituiranno quelle della pipeline di versione.", + "loc.input.label.targetFiles": "File di destinazione", + "loc.input.help.targetFiles": "Specificare un elenco di file delimitati da caratteri di nuova riga per sostituire i valori delle variabili. È necessario specificare nomi file relativi alla cartella radice.", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "La sostituzione di variabili JSON è stata applicata.", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "La sostituzione di variabili XML è stata applicata.", + "loc.messages.XDTTransformationsappliedsuccessfully": "Le trasformazioni XML sono state applicate", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "Non è possibile eseguire trasformazioni XML su una piattaforma non Windows.", + "loc.messages.XdtTransformationErrorWhileTransforming": "Si è verificato un errore di trasformazione XML durante la trasformazione di %s con %s.", + "loc.messages.JSONParseError": "Non è possibile analizzare il file JSON: %s. Errore: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "Non sono stati trovati file JSON corrispondenti al criterio specificato: %s.", + "loc.messages.FailedToApplyTransformation": "Non è possibile applicare la trasformazione per il pacchetto specificato.", + "loc.messages.MissingArgumentsforXMLTransformation": "Argomenti incompleti o mancanti. Il formato previsto è -transform -xml -result . Il file di origine e la trasformazione sono valori di input obbligatori.", + "loc.messages.SubstitutingValueonKey": "Sostituzione del valore nella chiave %s", + "loc.messages.SubstitutingValueonKeyWithNumber": "Sostituzione del valore nella chiave %s con il valore %s (numero)", + "loc.messages.SubstitutingValueonKeyWithBoolean": "Sostituzione del valore nella chiave %s con il valore %s (booleano)", + "loc.messages.SubstitutingValueonKeyWithObject": "Sostituzione del valore nella chiave %s con il valore %s (oggetto)", + "loc.messages.SubstitutingValueonKeyWithString": "Sostituzione del valore nella chiave %s con il valore %s (stringa)", + "loc.messages.JSONvariableSubstitution": "Applicazione della sostituzione delle variabili JSON per %s", + "loc.messages.ApplyingXDTtransformation": "Applicazione della trasformazione XDT dal file di trasformazione %s al file di origine %s ", + "loc.messages.SubstitutionForXmlNode": "Elaborazione della sostituzione per il nodo XML: %s", + "loc.messages.UpdatingKeyWithTokenValue": "Aggiornamento del valore per la chiave %s con il valore di token %s", + "loc.messages.SubstitutingConnectionStringValue": "Sostituzione del valore di connectionString per connectionString = %s con il valore di token %s ", + "loc.messages.VariableSubstitutionInitiated": "La sostituzione delle variabili nel file config %s è stata avviata", + "loc.messages.ConfigFileUpdated": "Il file di configurazione %s è stato aggiornato.", + "loc.messages.SkippedUpdatingFile": "L'aggiornamento del file %s è stato ignorato" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/ja-JP/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/ja-JP/resources.resjson new file mode 100644 index 000000000000..b6e6e338c917 --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/ja-JP/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "ファイル変換", + "loc.helpMarkDown": "ファイルの変換および変数の置換タスク: XML ベースの構成ファイル内のトークンを更新し、それらのトークンを変数の値に置き換えます。
現在、変数の置換でサポートされているのは XML と JSON ファイル形式のみです。
[このタスクの詳細を表示](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "XML または JSON 構成ファイル内の変数の値でトークンを置換します", + "loc.instanceNameFormat": "ファイル変換: $(Package)", + "loc.group.displayName.VariableSubstitution": "変数の置換", + "loc.input.label.folderPath": "パッケージまたはフォルダー", + "loc.input.help.folderPath": "パッケージまたはフォルダーへのファイル パス。
変数 ( [ビルド](https://docs.microsoft.com/vsts/pipelines/build/variables) | [リリース](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables))、ワイルドカードを使用できます。
たとえば、$(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip。", + "loc.input.label.enableXmlTransform": "XML 変換", + "loc.input.help.enableXmlTransform": "構成変換は変数の置換の前に実行されます。
XML 変換は Windows プラットフォームでのみサポートされています。", + "loc.input.label.xmlTransformationRules": "変換ルール", + "loc.input.help.xmlTransformationRules": "次の構文を使用して、変換ファイル ルールの改行区切りリストを指定します:
-transform -xml ", + "loc.input.label.fileType": "ファイル形式", + "loc.input.help.fileType": "置換を実行する必要があるファイル形式を指定します
XML の場合、ビルド パイプラインまたはリリース パイプラインで定義された変数は、構成ファイルおよび parameters.xml の appSettings、applicationSettings、および connectionStrings セクションの 'key' エントリまたは 'name' エントリと照合されます。変数置換は構成変換の後に実行されます。
ネストされた、または階層的な JSON 変数を置き換えるには、JSONPath 式を使用してそれらの変数を指定します。

たとえば、以下のサンプルで ‘ConnectionString’ の値を置き換えるには、ビルドまたはリリース パイプライン (またはリリース パイプラインの環境) で変数を ‘Data.DefaultConnection.ConnectionString’ として定義する必要があります。
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
変数置換は構成変換後に実行されます。

メモ: ビルド/リリース パイプラインで定義されたカスタム変数のみが置換として使用されます。既定/システム定義のパイプライン変数は除外されます。
注意: リリース パイプラインとステージで同じ変数が定義されている場合、ステージ変数がリリース パイプライン変数より優先されます。", + "loc.input.label.targetFiles": "ターゲット ファイル", + "loc.input.help.targetFiles": "変数の値を置き換えるファイルの改行区切りリストを指定します。ルート フォルダーへの相対ファイル名が指定されます。", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "JSON 変数置換が正常に適用されました。", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "XML 変数の置換が正常に適用されました。", + "loc.messages.XDTTransformationsappliedsuccessfully": "XML 変換が正常に適用されました", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "非 Windows プラットフォームでは XML 変換を実行できません。", + "loc.messages.XdtTransformationErrorWhileTransforming": "%s の %s による変換中に XML 変換エラーが発生しました。", + "loc.messages.JSONParseError": "JSON ファイルを解析できません: %s。エラー: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "指定のパターンと一致する JSON ファイルはありません: %s。", + "loc.messages.FailedToApplyTransformation": "指定されたパッケージの変換を適用できません。", + "loc.messages.MissingArgumentsforXMLTransformation": "引数が不完全であるか、見つかりません。-transform -xml -result の形式である必要があります。変換ファイルとソース ファイルは必須の入力です。", + "loc.messages.SubstitutingValueonKey": "キーの値を置き換えています: %s", + "loc.messages.SubstitutingValueonKeyWithNumber": "キー %s の値を (数) 値 %s に置き換えています", + "loc.messages.SubstitutingValueonKeyWithBoolean": "キー %s の値を (ブール値の) 値 %s に置き換えています", + "loc.messages.SubstitutingValueonKeyWithObject": "キー %s の値を (オブジェクト) 値 %s に置き換えています", + "loc.messages.SubstitutingValueonKeyWithString": "キー %s の値を (文字列) 値 %s に置き換えています", + "loc.messages.JSONvariableSubstitution": "%s の JSON 変数置換を適用しています", + "loc.messages.ApplyingXDTtransformation": "変換ファイル %s からソース ファイル %s に XDT 変換を適用しています ", + "loc.messages.SubstitutionForXmlNode": "xml ノードの置換を処理しています: %s", + "loc.messages.UpdatingKeyWithTokenValue": "key= %s の値をトークン値 %s で更新しています", + "loc.messages.SubstitutingConnectionStringValue": "connectionString = %s の connectionString 値をトークン値 %s に置き換えています ", + "loc.messages.VariableSubstitutionInitiated": "構成ファイルでの変数の置換を開始しました: %s", + "loc.messages.ConfigFileUpdated": "構成ファイル %s が更新されました。", + "loc.messages.SkippedUpdatingFile": "ファイルの更新がスキップされました: %s" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/ko-KR/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/ko-KR/resources.resjson new file mode 100644 index 000000000000..e8340b34581c --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/ko-KR/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "파일 변환", + "loc.helpMarkDown": "파일 변환 및 변수 대체 작업: XML 기반 구성 파일의 토큰을 업데이트한 다음, 해당 토큰을 변수 값으로 바꿉니다.
현재 XML, JSON 파일 형식만 변수 대체가 지원됩니다.
[이 작업에 대한 자세한 정보](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "XML 또는 JSON 구성 파일의 변수 값으로 토큰을 바꿉니다.", + "loc.instanceNameFormat": "파일 변환: $(Package)", + "loc.group.displayName.VariableSubstitution": "변수 대체", + "loc.input.label.folderPath": "패키지 또는 폴더", + "loc.input.help.folderPath": "패키지 또는 폴더의 파일 경로입니다.
변수([빌드](https://docs.microsoft.com/vsts/pipelines/build/variables) | [릴리스](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)), 와일드카드가 지원됩니다.
예: $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip", + "loc.input.label.enableXmlTransform": "XML 변환", + "loc.input.help.enableXmlTransform": "변수 대체 전에 구성 변환이 실행됩니다.
XML 변환은 Windows 플랫폼에서만 지원됩니다.", + "loc.input.label.xmlTransformationRules": "변환 규칙", + "loc.input.help.xmlTransformationRules": "다음 구문을 사용하는 변환 파일 규칙을 새 줄로 구분된 목록으로 지정합니다.
-transform -xml ", + "loc.input.label.fileType": "파일 형식", + "loc.input.help.fileType": "대체를 수행해야 하는 파일 형식을 지정합니다.
XML의 경우 빌드 또는 릴리스 파이프라인에서 정의된 변수가 구성 파일과 parameters.xml의 appSettings, applicationSettings 및 connectionStrings 섹션에 있는 'key' 또는 'name' 항목과 일치됩니다. 변수 대체는 구성 변환 후에 실행됩니다.
중첩되었거나 계층적인 JSON 변수를 대체하려면 JSONPath 식을 사용하여 지정합니다.

예를 들어 아래 샘플의 'ConnectionString' 값을 바꾸려면 빌드 또는 릴리스 파이프라인(또는 릴리스 파이프라인 환경)에서 변수를 'Data.DefaultConnection.ConnectionString'으로 정의해야 합니다.
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
변수 대체는 구성 변환 후에 실행됩니다.

참고: 빌드/릴리스 파이프라인에서 정의된 사용자 지정 변수만 대체에 사용됩니다. 기본/시스템 정의 파이프라인 변수는 제외됩니다.
참고: 릴리스 파이프라인과 스테이지에서 동일한 변수가 정의된 경우 스테이지 변수가 릴리스 파이프라인 변수를 대체합니다.", + "loc.input.label.targetFiles": "대상 파일", + "loc.input.help.targetFiles": "변수 값을 대체할 파일을 새 줄로 구분된 목록으로 지정합니다. 루트 폴더의 상대 경로로 파일 이름을 지정해야 합니다.", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "JSON 변수 대체를 적용했습니다.", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "XML 변수 대체를 적용했습니다.", + "loc.messages.XDTTransformationsappliedsuccessfully": "XML 변환을 적용했습니다.", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "Windows가 아닌 플랫폼에서는 XML 변환을 수행할 수 없습니다.", + "loc.messages.XdtTransformationErrorWhileTransforming": "%s을(를) 변환(%s 사용)하는 동안 XML 변환 오류가 발생했습니다.", + "loc.messages.JSONParseError": "JSON 파일 %s을(를) 구문 분석할 수 없습니다. 오류: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "특정 패턴과 일치하는 JSON 파일이 없음: %s", + "loc.messages.FailedToApplyTransformation": "지정된 패키지에 변환을 적용할 수 없습니다.", + "loc.messages.MissingArgumentsforXMLTransformation": "인수가 불완전하거나 누락되었습니다. -transform -xml -result 형식이 필요합니다. 변환 및 소스 파일은 필수 입력입니다.", + "loc.messages.SubstitutingValueonKey": "키 %s의 값을 대체하는 중", + "loc.messages.SubstitutingValueonKeyWithNumber": "키 %s의 값을 (숫자) 값 %s(으)로 대체하는 중", + "loc.messages.SubstitutingValueonKeyWithBoolean": "키 %s의 값을 (부울) 값 %s(으)로 대체하는 중", + "loc.messages.SubstitutingValueonKeyWithObject": "키 %s의 값을 (개체) 값 %s(으)로 대체하는 중", + "loc.messages.SubstitutingValueonKeyWithString": "키 %s의 값을 (문자열) 값 %s(으)로 대체하는 중", + "loc.messages.JSONvariableSubstitution": "%s의 대체 JSON 변수를 적용하는 중", + "loc.messages.ApplyingXDTtransformation": "변환 파일 %s에서 소스 파일 %s(으)로 XDT 변환을 적용하는 중 ", + "loc.messages.SubstitutionForXmlNode": "XML 노드에 대한 대체를 처리하는 중입니다. %s", + "loc.messages.UpdatingKeyWithTokenValue": "키=%s의 값을 토큰 값 %s(으)로 업데이트하는 중", + "loc.messages.SubstitutingConnectionStringValue": "connectionString 값을 connectionString = %s, 토큰 값: %s(으)로 대체하는 중 ", + "loc.messages.VariableSubstitutionInitiated": "구성 파일에서 변수 대체를 시작했습니다. %s", + "loc.messages.ConfigFileUpdated": "구성 파일 %s이(가) 업데이트되었습니다.", + "loc.messages.SkippedUpdatingFile": "파일 %s 업데이트를 건너뜀" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/ru-RU/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/ru-RU/resources.resjson new file mode 100644 index 000000000000..51ea66d433b5 --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/ru-RU/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "Преобразование файлов", + "loc.helpMarkDown": "Задача преобразования файлов и подстановки переменных: обновляет токены в файлах конфигурации на базе XML и затем заменяет эти токены значениями переменных.
Сейчас для подстановки переменных поддерживаются только форматы файлов XML и JSON.
[См. дополнительные сведения об этой задаче](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "Заменить токены значениями переменных в файлах конфигурации XML или JSON", + "loc.instanceNameFormat": "Преобразование файлов: $(Package)", + "loc.group.displayName.VariableSubstitution": "Подстановка переменных", + "loc.input.label.folderPath": "Пакет или папка", + "loc.input.help.folderPath": "Путь к файлу пакета или папке.
Поддерживаются переменные ( [сборки](https://docs.microsoft.com/vsts/pipelines/build/variables) | [выпуска](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)), а также подстановочные знаки.
Пример: $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip.", + "loc.input.label.enableXmlTransform": "XML-преобразование", + "loc.input.help.enableXmlTransform": "Преобразования конфигурации будут выполняться перед подстановкой переменной.
XML-преобразования поддерживаются только для платформы Windows.", + "loc.input.label.xmlTransformationRules": "Правила преобразования", + "loc.input.help.xmlTransformationRules": "Укажите новый разделенный на строки список правил файла преобразования, используя синтаксис:
-transform -xml ", + "loc.input.label.fileType": "Формат файла", + "loc.input.help.fileType": "Укажите формат файла, для которого требуется выполнить подстановку
Для XML-кода переменные, определенные в конвейерах сборки или выпуска, будут сопоставляться с записями \"key\" или \"name\" в разделах appSettings, applicationSettings и connectionStrings файла конфигурации и файла parameters.xml. Подстановка переменных запускается после преобразований конфигурации.
Чтобы заменить переменные JSON, являющиеся вложенными или иерархическими, укажите их с помощью выражений JSONPath.

Например, чтобы заменить значение \"ConnectionString\" в примере ниже, нужно определить переменную как \"Data.DefaultConnection.ConnectionString\" в конвейере сборки или выпуска (или среде конвейера выпуска).
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
Подстановка переменных запускается после преобразований конфигурации.

Примечание. При подстановке используются только пользовательские переменные, определенные в конвейерах сборки/выпуска. Используемые по умолчанию или системные переменные конвейеров исключаются.
Примечание. Если одни и те же переменные определены в конвейере выпуска и на этае, то переменные этапа имеют приоритет над переменными конвейера выпуска.", + "loc.input.label.targetFiles": "Целевые файлы", + "loc.input.help.targetFiles": "Укажите новый разделенный строками список файлов для замены значений переменных. Имена файлов должны быть указаны относительно корневой папки.", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "Подстановка переменных JSON успешно применена.", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "Подстановка переменных XML применена.", + "loc.messages.XDTTransformationsappliedsuccessfully": "XML-преобразования успешно применены.", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "Невозможно выполнить XML-преобразования на платформе, отличной от Windows.", + "loc.messages.XdtTransformationErrorWhileTransforming": "Ошибка XML-преобразования при преобразовании %s с помощью %s.", + "loc.messages.JSONParseError": "Не удалось проанализировать JSON-файл: %s. Ошибка: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "Не найден файл JSON, соответствующий заданному шаблону: %s.", + "loc.messages.FailedToApplyTransformation": "Не удалось применить преобразование для указанного пакета.", + "loc.messages.MissingArgumentsforXMLTransformation": "Неполные или отсутствующие аргументы. Ожидался формат -transform -xml -result . Преобразование и исходный файл являются обязательными входными данными.", + "loc.messages.SubstitutingValueonKey": "Идет замена значения ключа: %s", + "loc.messages.SubstitutingValueonKeyWithNumber": "Идет замена значения ключа %s значением (число): %s", + "loc.messages.SubstitutingValueonKeyWithBoolean": "Идет замена значения ключа %s значением (логическое): %s", + "loc.messages.SubstitutingValueonKeyWithObject": "Идет замена значения ключа %s значением (объект): %s", + "loc.messages.SubstitutingValueonKeyWithString": "Идет замена значения ключа %s значением (строка): %s", + "loc.messages.JSONvariableSubstitution": "Применение подстановки переменной JSON для %s", + "loc.messages.ApplyingXDTtransformation": "Применение преобразования XDT из файла преобразования %s в исходный файл %s ", + "loc.messages.SubstitutionForXmlNode": "Обработка подстановки для XML-узла: %s", + "loc.messages.UpdatingKeyWithTokenValue": "Изменение значения ключа = %s на значение токена: %s", + "loc.messages.SubstitutingConnectionStringValue": "Идет замена значения connectionString для connectionString = %s значением токена: %s ", + "loc.messages.VariableSubstitutionInitiated": "Запущена подстановка переменных в файле конфигурации: %s.", + "loc.messages.ConfigFileUpdated": "Файл конфигурации: %s обновлен.", + "loc.messages.SkippedUpdatingFile": "Пропущенный файл обновления: %s" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/zh-CN/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/zh-CN/resources.resjson new file mode 100644 index 000000000000..252c1bf9d259 --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/zh-CN/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "文件转换", + "loc.helpMarkDown": "文件转换和变量替换任务: 更新基于 XML 的配置文件中的标记,然后将这些标记替换为变量值。
当前仅支持使用 XML、JSON 文件格式进行变量替换。
[详细了解此任务](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "将标记替换为 XML 或 JSON 配置文件中的变量值", + "loc.instanceNameFormat": "文件转换: $(Package)", + "loc.group.displayName.VariableSubstitution": "变量替换", + "loc.input.label.folderPath": "包或文件夹", + "loc.input.help.folderPath": "包或文件夹的文件路径。
支持变量([Build](https://docs.microsoft.com/vsts/pipelines/build/variables) | [Release](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables))、通配符。
例如,$(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip。", + "loc.input.label.enableXmlTransform": "XML 转换", + "loc.input.help.enableXmlTransform": "将在变量替换之前运行配置转换。
仅 Windows 平台支持 XML 转换。", + "loc.input.label.xmlTransformationRules": "转换规则", + "loc.input.help.xmlTransformationRules": "使用以下语法提供使用行分隔的新转换文件规则列表:
-transform -xml ", + "loc.input.label.fileType": "文件格式", + "loc.input.help.fileType": "提供必须对其执行替换的文件格式
对于 XML,在生成或发布管道中定义的变量将根据任何配置文件和 parameters.xml 的 appSettings、applicationSettings 和 connectionStrings 部分中的“密钥”或“名称”条目进行匹配。变量替换在配置转换后运行。
若要替换嵌套或分层的 JSON 变量,请使用 JSONPath 表达式来指定它们。

例如,若要替换以下示例中 \"ConnectionString\" 的值,则需要在生成或发布管道(或发布管道的环境)中将某一变量定义为 \"Data.DefaultConnection.ConnectionString\"。
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
变量替换在配置转换后运行。

注意: 仅在替换中使用在生成/发布管道中定义的自定义变量。排除默认/系统定义的管道变量。
注意: 如果在发布管道和阶段中定义了相同的变量,则阶段变量将取代发布管道变量。", + "loc.input.label.targetFiles": "目标文件", + "loc.input.help.targetFiles": "提供使用行分隔的新文件列表以替换变量值。将提供相对于根文件夹的文件名称。", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "JSON 变量替换已成功应用。", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "已成功应用 XML 变量替换。", + "loc.messages.XDTTransformationsappliedsuccessfully": "XML 转换已成功应用", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "无法在非 Windows 平台上执行 XML 转换。", + "loc.messages.XdtTransformationErrorWhileTransforming": "转换 %s (通过使用 %s)时出现 XML 转换错误。", + "loc.messages.JSONParseError": "无法分析 JSON 文件: %s。错误: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "没有与特定模式 %s 匹配的 JSON 文件。", + "loc.messages.FailedToApplyTransformation": "无法对给定的包应用转换。", + "loc.messages.MissingArgumentsforXMLTransformation": "参数不完整或缺失。格式应为 -transform -xml -result 。转换文件和源文件为必需的输入。", + "loc.messages.SubstitutingValueonKey": "正在替换键值: %s", + "loc.messages.SubstitutingValueonKeyWithNumber": "将键 %s 的值替换为(数字)值: %s", + "loc.messages.SubstitutingValueonKeyWithBoolean": "将键 %s 的值替换为(布尔)值: %s", + "loc.messages.SubstitutingValueonKeyWithObject": "将键 %s 的值替换为(对象)值: %s", + "loc.messages.SubstitutingValueonKeyWithString": "将键 %s 的值替换为(字符串)值: %s", + "loc.messages.JSONvariableSubstitution": "正在对 %s 应用 JSON 变量替换", + "loc.messages.ApplyingXDTtransformation": "从转换文件 %s -> 源文件 %s 应用 XDT 转换", + "loc.messages.SubstitutionForXmlNode": "正为 xml 节点 %s 处理替换", + "loc.messages.UpdatingKeyWithTokenValue": "正在使用令牌值 %s 更新密钥 = %s 的值", + "loc.messages.SubstitutingConnectionStringValue": "将 connectionString = %s 的 connectionString 值替换为令牌值: %s", + "loc.messages.VariableSubstitutionInitiated": "已在配置文件 %s 中启动变量替换", + "loc.messages.ConfigFileUpdated": "配置文件 %s 已更新。", + "loc.messages.SkippedUpdatingFile": "已跳过更新文件: %s" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Strings/resources.resjson/zh-TW/resources.resjson b/_generated/FileTransformV1/Strings/resources.resjson/zh-TW/resources.resjson new file mode 100644 index 000000000000..dfa9578c5fc8 --- /dev/null +++ b/_generated/FileTransformV1/Strings/resources.resjson/zh-TW/resources.resjson @@ -0,0 +1,39 @@ +{ + "loc.friendlyName": "檔案轉換", + "loc.helpMarkDown": "檔案轉換和變數替代工作: 更新 XML 式組態檔中的權杖,然後將這些權杖取代為變數值。
變數替代目前只支援 XML、JSON 檔案格式。
[深入了解此工作](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "loc.description": "使用 XML 或 JSON 組態檔中的變數值取代權杖", + "loc.instanceNameFormat": "檔案轉換: $(Package)", + "loc.group.displayName.VariableSubstitution": "變數替代", + "loc.input.label.folderPath": "套件或資料夾", + "loc.input.help.folderPath": "套件或資料夾的檔案路徑。
變數 ([建置](https://docs.microsoft.com/vsts/pipelines/build/variables) | [發行](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)),支援萬用字元。
例如 $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip。", + "loc.input.label.enableXmlTransform": "XML 轉換", + "loc.input.help.enableXmlTransform": "替代變數前,會先轉換組態。
只有 Windows 平台支援 XML 轉換。", + "loc.input.label.xmlTransformationRules": "轉換規則", + "loc.input.help.xmlTransformationRules": "使用下列語法提供轉換檔案規則的新分行清單:
-transform -xml ", + "loc.input.label.fileType": "檔案格式", + "loc.input.help.fileType": "提供必須執行替代的目標檔案格式
若為 XML,則會根據任何組態檔和 parameters.xml 之 appSettings、applicationSettings 和 connectionStrings 區段中的 'key' 或 'name' 項目,比對在建置或發佈管線中定義的變數。轉換好組態後,才會替代變數。
若要替代巢狀或階層式 JSON 變數,請使用 JSONPath 運算式指定它們。

例如,若要取代以下範例中 'ConnectionString' 的值,您需要在建置或發佈管線 (或發佈管線的環境) 中將變數定義為 'Data.DefaultConnection.ConnectionString'。
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
轉換好組態後,才會替代變數。

請注意: 只有在建置/發佈管線中定義的自訂變數會用於替代。不會使用預設/系統定義的管線變數。
請注意: 如果在發佈管線和階段中定義了相同的變數,則階段變數會取代發佈管線變數。", + "loc.input.label.targetFiles": "目標檔案", + "loc.input.help.targetFiles": "提供用來替代變數值之檔案的新分行清單。提供的檔案名稱需相對於根資料夾。", + "loc.messages.JSONvariablesubstitutionappliedsuccessfully": "已成功套用 JSON 變數替代。", + "loc.messages.XMLvariablesubstitutionappliedsuccessfully": "已成功套用替代的 XML 變數。", + "loc.messages.XDTTransformationsappliedsuccessfully": "已成功套用 XML 轉換", + "loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform": "無法在非 Windows 平台執行 XML 轉換。", + "loc.messages.XdtTransformationErrorWhileTransforming": "轉換 %s (使用 %s) 時發生 XML 轉換錯誤。", + "loc.messages.JSONParseError": "無法剖析 JSON 檔案: %s。錯誤: %s", + "loc.messages.NOJSONfilematchedwithspecificpattern": "沒有符合特定模式 %s 的 JSON 檔案。", + "loc.messages.FailedToApplyTransformation": "無法針對指定的套件套用轉換。", + "loc.messages.MissingArgumentsforXMLTransformation": "引數不完整或缺少引數。預期的格式為 -transform <轉換檔> -xml <來源檔案> -result <目的檔案>。轉換和來源檔案均為強制輸入。", + "loc.messages.SubstitutingValueonKey": "替代索引鍵 %s 上的值", + "loc.messages.SubstitutingValueonKeyWithNumber": "以 (數值) 值 %s 替代索引鍵 %s 上的值", + "loc.messages.SubstitutingValueonKeyWithBoolean": "以 (布林) 值 %s 替代索引鍵 %s 上的值", + "loc.messages.SubstitutingValueonKeyWithObject": "以 (物件) 值 %s 替代索引鍵 %s 上的值", + "loc.messages.SubstitutingValueonKeyWithString": "以 (字串) 值 %s 替代索引鍵 %s 上的值", + "loc.messages.JSONvariableSubstitution": "正在為 %s 套用 JSON 變數替代", + "loc.messages.ApplyingXDTtransformation": "正在套用從轉換檔案 %s 轉換為來源檔案 %s 的 XDT 轉換 ", + "loc.messages.SubstitutionForXmlNode": "正在處理 XML 節點的替代: %s", + "loc.messages.UpdatingKeyWithTokenValue": "正在使用權杖值 %s 為索引鍵= %s 更新值", + "loc.messages.SubstitutingConnectionStringValue": "以權杖值 %s 取代 connectionString = %s 的 connectionString 值 ", + "loc.messages.VariableSubstitutionInitiated": "已起始組態檔中的變數替代: %s", + "loc.messages.ConfigFileUpdated": "組態檔: %s 已更新。", + "loc.messages.SkippedUpdatingFile": "已跳過更新檔案: %s" +} \ No newline at end of file diff --git a/_generated/FileTransformV1/Tests/L0.ts b/_generated/FileTransformV1/Tests/L0.ts new file mode 100644 index 000000000000..23c46725a954 --- /dev/null +++ b/_generated/FileTransformV1/Tests/L0.ts @@ -0,0 +1,16 @@ +import fs = require('fs'); +import assert = require('assert'); +import path = require('path'); + +describe('FileTransformV1 Suite', function () { + before(() => { + }); + + after(() => { + }); + + it('Does a basic hello world test', function(done: MochaDone) { + // TODO - add real tests + done(); + }); +}); diff --git a/_generated/FileTransformV1/Tests/package-lock.json b/_generated/FileTransformV1/Tests/package-lock.json new file mode 100644 index 000000000000..0adff3646f02 --- /dev/null +++ b/_generated/FileTransformV1/Tests/package-lock.json @@ -0,0 +1,5 @@ +{ + "name": "file-transform-tests", + "version": "1.0.0", + "lockfileVersion": 1 +} diff --git a/_generated/FileTransformV1/Tests/package.json b/_generated/FileTransformV1/Tests/package.json new file mode 100644 index 000000000000..8c714f13d8a1 --- /dev/null +++ b/_generated/FileTransformV1/Tests/package.json @@ -0,0 +1,19 @@ +{ + "name": "file-transform-tests", + "version": "1.0.0", + "description": "Azure Pipelines File Transform V1 Task Tests", + "main": "L0.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/Microsoft/azure-pipelines-tasks.git" + }, + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Microsoft/azure-pipelines-tasks/issues" + }, + "homepage": "https://github.com/Microsoft/azure-pipelines-tasks#readme" +} diff --git a/_generated/FileTransformV1/ThirdPartyNotices.txt b/_generated/FileTransformV1/ThirdPartyNotices.txt new file mode 100644 index 000000000000..73cb7ae854e9 --- /dev/null +++ b/_generated/FileTransformV1/ThirdPartyNotices.txt @@ -0,0 +1,2013 @@ + +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do Not Translate or Localize + +Azure App Service Deploy incorporates third party material from the projects listed below. The original copyright notice and the license under which Microsoft received such third party material are set forth below. Microsoft reserves all other rights not expressly granted, whether by implication, estoppel or otherwise. + +1. abbrev (https://github.com/isaacs/abbrev-js) +2. Archiver (https://github.com/archiverjs/node-archiver) +3. archiver-utils (https://github.com/archiverjs/archiver-utils) +4. async (https://github.com/caolan/async) +5. balanced-match (https://github.com/juliangruber/balanced-match) +6. binary (https://github.com/substack/node-binary) +7. bl (Buffer List) (https://github.com/rvagg/bl) +8. brace-expansion (https://github.com/juliangruber/brace-expansion) +9. buffer-crc32 (https://github.com/brianloveswords/buffer-crc32) +10. buffers (DefinitelyTyped) (https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/buffers) +11. buffer-alloc (https://github.com/LinusU/buffer-alloc) +12. buffer-alloc-unsafe (https://github.com/LinusU/buffer-alloc-unsafe) +13. buffer-fill (https://github.com/LinusU/buffer-fill) +14. chainsaw (https://github.com/substack/node-chainsaw) +15. compress-commons (https://github.com/archiverjs/node-compress-commons) +16. concat-map (https://github.com/substack/node-concat-map) +17. core-util-is (https://github.com/isaacs/core-util-is) +18. Crc32-stream (https://github.com/archiverjs/node-crc32-stream) +19. decompress-zip (https://github.com/bower/decompress-zip) +20. end-of-stream (https://github.com/mafintosh/end-of-stream) +21. fs.realpath (https://github.com/isaacs/fs.realpath) +22. Glob (https://github.com/isaacs/node-glob) +23. graceful-fs (https://github.com/isaacs/node-graceful-fs) +25. inflight (https://github.com/npm/inflight) +26. inherits (https://github.com/isaacs/inherits) +27. isarray (https://github.com/juliangruber/isarray/) +28. lazystream (https://github.com/jpommerening/node-lazystream) +29. lodash (https://lodash.com/) + Includes:File(s) copyright John Resig (http://ejohn.org/blog/javascript-micro-templating/) + Includes:File(s) copyright Laura Doktorova (https://github.com/olado/doT) +30. Ltx (https://github.com/node-xmpp/ltx) +31. minimatch (https://github.com/isaacs/minimatch) +32. mkpath (https://github.com/jrajav/mkpath) +33. Mockery (https://github.com/mfncooper/mockery) +34. Node.js (https://nodejs.org/) +35. node-ecdsa-sig-formatter (https://github.com/Brightspace/node-ecdsa-sig-formatter) +36. node-jwa (https://github.com/brianloveswords/node-jwa) +37. node-jws (https://github.com/brianloveswords/node-jws) +38. node-tar (https://github.com/npm/node-tar/) +39. node-uuid (https://github.com/broofa/node-uuid/) +40. nopt (https://github.com/npm/nopt) +41. normalize-path (https://github.com/jonschlinkert/normalize-path) +42. OpenSSL (http://www.openssl.org) +43. once (https://github.com/isaacs/once) +44. path-is-absolute (https://github.com/sindresorhus/path-is-absolute) +45. process-nextick-args (https://github.com/calvinmetcalf/process-nextick-args) +46. Q (https://github.com/kriskowal/q) +47. readable-stream (https://github.com/isaacs/readable-stream) +48. safe-buffer (https://github.com/feross/safe-buffer) +49. sax js (https://github.com/isaacs/sax-js) +50. semver (https://github.com/npm/node-semver/) +51. ShellJS (https://github.com/shelljs/shelljs) +52. string_decoder (https://github.com/rvagg/string_decoder) +53. tar-stream (https://github.com/mafintosh/tar-stream) +54. topo (https://github.com/hapijs/topo) +55. touch (https://github.com/isaacs/node-touch) +56. traverse (https://github.com/substack/js-traverse) +57. tunnel (https://github.com/koichik/node-tunnel) +58. underscore.js (http://underscorejs.org/; https://github.com/jashkenas/underscore) +59. util-deprecate (https://github.com/TooTallNate/util-deprecate) +60. VSTS-task-lib (https://github.com/Microsoft/vsts-task-lib) +61. winreg (https://github.com/fresc81/node-winreg) +62. wrappy (https://github.com/npm/wrappy) +63. Xml2JS (https://github.com/Leonidas-from-XIV/node-xml2js) +64. Xmlbuilder (https://github.com/oozcitak/xmlbuilder-js) +65. xtend (https://github.com/Raynos/xtend) +66. zip-stream (https://github.com/archiverjs/node-zip-stream) +67. uuid (https://github.com/kelektiv/node-uuid) +68. @types/node (https://www.github.com/DefinitelyTyped/DefinitelyTyped.git) +69. @types/q (https://www.github.com/DefinitelyTyped/DefinitelyTyped.git) +70. @types/mocha (https://github.com/DefinitelyTyped/DefinitelyTyped.git) + + +%% abbrev NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED AS IS AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF abbrev NOTICES, INFORMATION, AND LICENSE + +%% Archiver NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2012-2014 Chris Talkington, contributors. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF Archiver NOTICES, INFORMATION, AND LICENSE + +%% archiver-utils NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2015 Chris Talkington. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF archiver-utils NOTICES, INFORMATION, AND LICENSE + +%% async NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= + +Copyright (c) 2010-2016 Caolan McMahon + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF async NOTICES, INFORMATION, AND LICENSE + +%% balanced-match NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +(MIT) + +Copyright (c) 2013 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +========================================= +END OF balanced-match NOTICES, INFORMATION, AND LICENSE + +%% binary NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2012 James Halliday + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the Software), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF binary NOTICES, INFORMATION, AND LICENSE + +%% bl (Buffer List) NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) +Copyright (c) 2014 bl contributors + +bl contributors listed at https://github.com/rvagg/bl#contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the Software), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF bl (Buffer List) NOTICES, INFORMATION, AND LICENSE + +%% brace-expansion NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +(MIT) + +Copyright (c) 2013 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +========================================= +END OF brace-expansion NOTICES, INFORMATION, AND LICENSE + +%% buffer-crc32 NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License + +Copyright (c) 2013 Brian J. Brennan + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the +Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF buffer-crc32 NOTICES, INFORMATION, AND LICENSE + +%% buffer-equal-constant-time NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2013, GoInstant Inc., a salesforce.com company +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +* Neither the name of salesforce.com, nor GoInstant, nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +========================================= +END OF buffer-equal-constant-time NOTICES, INFORMATION, AND LICENSE + +%% buffers (DefinitelyTyped) NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +This project is licensed under the MIT license. + +Copyrights are respective of each contributor listed at the beginning of each definition file. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +========================================= +END OF buffers (DefinitelyTyped) NOTICES, INFORMATION, AND LICENSE + +%% buffer-alloc NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +MIT License + +Copyright (c) 2016, 2018 Linus Unnebäck + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +========================================= +END OF buffer-alloc NOTICES, INFORMATION, AND LICENSE + +%% buffer-alloc-unsafe NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +MIT License + +Copyright (c) 2016, 2018 Linus Unnebäck + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +========================================= +END OF buffer-alloc-unsafe NOTICES, INFORMATION, AND LICENSE + +%% buffer-fill NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +MIT License + +Copyright (c) 2016, 2018 Linus Unnebäck + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +========================================= +END OF buffer-fill NOTICES, INFORMATION, AND LICENSE + +%% chainsaw NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright 2010 James Halliday (mail@substack.net) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF chainsaw NOTICES, INFORMATION, AND LICENSE + +%% compress-commons NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2014 Chris Talkington, contributors. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF compress-commons NOTICES, INFORMATION, AND LICENSE + +%% concat-map NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) James Halliday/substack + +This software is released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF concat-map NOTICES, INFORMATION, AND LICENSE + +%% core-util-is NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright Node.js contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +========================================= +END OF core-util-is NOTICES, INFORMATION, AND LICENSE + +%% Crc32-stream NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2014 Chris Talkington, contributors. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF Crc32-stream NOTICES, INFORMATION, AND License + +%% decompress-zip NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) Bower Team + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF decompress-zip NOTICES, INFORMATION, AND LICENSE + +%% end-of-stream NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) 2014 Mathias Buus + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF end-of-stream NOTICES, INFORMATION, AND LICENSE + +%% fs.realpath NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +---- + +This library bundles a version of the `fs.realpath` and `fs.realpathSync` +methods from Node.js v0.10 under the terms of the Node.js MIT license, as follows: + + Copyright Joyent, Inc. and other Node contributors. + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + +========================================= +END OF fs.realpath NOTICES, INFORMATION, AND LICENSE + +%% Glob NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF Glob NOTICES, INFORMATION, AND LICENSE + +%% graceful-fs NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED AS IS AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF graceful-fs NOTICES, INFORMATION, AND LICENSE + +%% inflight NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF inflight NOTICES, INFORMATION, AND LICENSE + +%% inherits NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF inherits NOTICES, INFORMATION, AND LICENSE + +%% isarray NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +(MIT) + +Copyright (c) 2013 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the Software), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF isarray NOTICES, INFORMATION, AND LICENSE + +%% lazystream NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2013 J. Pommerening, contributors. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +========================================= +END OF lazystream NOTICES, INFORMATION, AND LICENSE + +%% lodash NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright jQuery Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. + +========================================= +// Based on John Resig's `tmpl` implementation (http://ejohn.org/blog/javascript-micro-templating/) + +Copyright 2008 John Resig + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +========================================= +// Based on Laura Doktorova's doT.js (https://github.com/olado/doT). + +Copyright (c) 2011 Laura Doktorova + +Software includes portions from jQote2 Copyright (c) 2010 aefxx, +http://aefxx.com/ licensed under the MIT license. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF lodash NOTICES, INFORMATION, AND LICENSE + +%% Ltx NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2010 Stephan Maka + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +========================================= +END OF Ltx NOTICES, INFORMATION, AND LICENSE + +%% minimatch NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF minimatch NOTICES, INFORMATION, AND LICENSE + +%% mkpath NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (C) 2012 Jonathan Rajavuori + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the Software), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF mkpath NOTICES, INFORMATION, AND LICENSE + +%% Mockery NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyrights for code authored by Yahoo! Inc. is licensed under the following +terms: + + MIT License + + Copyright (c) 2011 Yahoo! Inc. All Rights Reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to + deal in the Software without restriction, including without limitation the + rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. +========================================= +END OF Mockery NOTICES, INFORMATION, AND LICENSE + +%% Node.js NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Node.js is licensed for use as follows: + +""" +Copyright Node.js contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +""" + +This license applies to parts of Node.js originating from the +https://github.com/joyent/node repository: + +""" +Copyright Joyent, Inc. and other Node contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +""" + +The Node.js license applies to all parts of Node.js that are not externally +maintained libraries. +========================================= +END OF Node.js NOTICES, INFORMATION, AND LICENSE + +%% node-ecdsa-sig-formatter NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= + Copyright 2015 D2L Corporation + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +========================================= +END OF node-ecdsa-sig-formatter NOTICES, INFORMATION, AND LICENSE + +%% node-jwa NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2013 Brian J. Brennan + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the +Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF node-jwa NOTICES, INFORMATION, AND LICENSE + +%% node-jws NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2013 Brian J. Brennan + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the +Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF node-jws NOTICES, INFORMATION, AND LICENSE + +%% node-tar NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License +Copyright (c) Isaac Z. Schlueter and Contributors +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF node-tar NOTICES, INFORMATION, AND LICENSE + +%% node-uuid NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) 2010-2012 Robert Kieffer + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the Software), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF node-uuid NOTICES, INFORMATION, AND LICENSE + +%% nopt NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED AS IS AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF nopt NOTICES, INFORMATION, AND LICENSE + +%% normalize-path NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) 2014-2015, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF normalize-path NOTICES, INFORMATION, AND LICENSE + +%% OpenSSL NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= + LICENSE ISSUES + ============== + + The OpenSSL toolkit stays under a dual license, i.e. both the conditions of + the OpenSSL License and the original SSLeay license apply to the toolkit. + See below for the actual license texts. Actually both licenses are BSD-style + Open Source licenses. In case of any license issues related to OpenSSL + please contact openssl-core@openssl.org. + + OpenSSL License + --------------- + +/* ==================================================================== + * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/) + * + * 4. The names OpenSSL Toolkit and OpenSSL Project must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called OpenSSL + * nor may OpenSSL appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/) + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + + Original SSLeay License + ----------------------- + +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com) + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * This product includes software written by Tim Hudson (tjh@cryptsoft.com) + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] +========================================= +END OF OpenSSL NOTICES, INFORMATION, AND LICENSE + +%% once NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF once NOTICES, INFORMATION, AND LICENSE + +%% path-is-absolute NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +path-is-absolute + +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +node.js: + +Copyright Joyent, Inc. and other Node contributors. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +Software), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the +following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF path-is-absolute NOTICES, INFORMATION, AND LICENSE + +%% process-nextick-args NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2015 Calvin Metcalf + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the Software), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF process-nextick-args NOTICES, INFORMATION, AND LICENSE + +%% Q NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright 2009�2014 Kristopher Michael Kowal. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. + +The file q.js is prefaced by the following additional third-party subcomponent information: + +/*! + * + * Copyright 2009-2012 Kris Kowal under the terms of the MIT + * license found at http://github.com/kriskowal/q/raw/master/LICENSE + * + * With parts by Tyler Close + * Copyright 2007-2009 Tyler Close under the terms of the MIT X license found + * at http://www.opensource.org/licenses/mit-license.html + * Forked at ref_send.js version: 2009-05-11 + * + * With parts by Mark Miller + * Copyright (C) 2011 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ +========================================= +END OF Q NOTICES, INFORMATION, AND LICENSE + +%% readable-stream NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright Joyent, Inc. and other Node contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +========================================= +END OF readable-stream NOTICES, INFORMATION, AND LICENSE + +%% safe-buffer NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) Feross Aboukhadijeh + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF safe-buffer NOTICES, INFORMATION, AND LICENSE + + +%% sax js NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +==== + +`String.fromCodePoint` by Mathias Bynens used according to terms of MIT +License, as follows: + + Copyright Mathias Bynens + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF sax js NOTICES, INFORMATION, AND LICENSE + +%% semver NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF semver NOTICES, INFORMATION, AND LICENSE + +%% ShellJS NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2012, Artur Adib +All rights reserved. + +You may use this project under the terms of the New BSD license as follows: + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of Artur Adib nor the + names of the contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL ARTUR ADIB BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +========================================= +END OF ShellJS NOTICES, INFORMATION, AND LICENSE + +%% string_decoder NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= + +Copyright Joyent, Inc. and other Node contributors. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +Software), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the +following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF string_decoder NOTICES, INFORMATION, AND LICENSE + +%% tar-stream NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) 2014 Mathias Buus + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF tar-stream NOTICES, INFORMATION, AND LICENSE + +%% topo NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2012-2014, Walmart and other contributors. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * The names of any contributors may not be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + * * * + +The complete list of contributors can be found at: https://github.com/hapijs/topo/graphs/contributors +========================================= +END OF topo NOTICES, INFORMATION, AND LICENSE + +%% touch NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED AS IS AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF touch NOTICES, INFORMATION, AND LICENSE + +%% traverse NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright 2010 James Halliday (mail@substack.net) + +This project is free software released under the MIT/X11 license: +http://www.opensource.org/licenses/mit-license.php + +Copyright 2010 James Halliday (mail@substack.net) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF traverse NOTICES, INFORMATION, AND LICENSE + +%% tunnel NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) 2012 Koichi Kobayashi + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF tunnel NOTICES, INFORMATION, AND LICENSE + +%% underscore.js NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2009-2017 Jeremy Ashkenas, DocumentCloud and Investigative +Reporters & Editors + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +========================================= +END OF underscore.js NOTICES, INFORMATION, AND LICENSE + +%% util-deprecate NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +(The MIT License) + +Copyright (c) 2014 Nathan Rajlich + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the Software), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF util-deprecate NOTICES, INFORMATION, AND LICENSE + +%% VSTS-task-lib NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) Microsoft Corporation. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +========================================= +END OF VSTS-task-lib NOTICES, INFORMATION, AND LICENSE + +%% winreg NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +This project is released under BSD 2-Clause License. + +Copyright (c) 2016, Paul Bottin All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +========================================= +END OF winreg NOTICES, INFORMATION, AND LICENSE + +%% wrappy NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF wrappy NOTICES, INFORMATION, AND LICENSE + +%% Xml2JS NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright 2010, 2011, 2012, 2013. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +========================================= +END OF Xml2JS NOTICES, INFORMATION, AND LICENSE + +%% Xmlbuilder NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) 2013 Ozgur Ozcitak + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF Xmlbuilder NOTICES, INFORMATION, AND LICENSE + +%% xtend NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2012-2014 Raynos. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF xtend NOTICES, INFORMATION, AND LICENSE + +%% zip-stream NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2014 Chris Talkington, contributors. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF zip-stream NOTICES, INFORMATION, AND LICENSE + +%% uuid NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2010-2016 Robert Kieffer and other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Includes Chris Veness' SHA1 + +Copyright (c) 2014 Chris Veness + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +========================================= +END OF uuid NOTICES, INFORMATION, AND LICENSE + +%% @types/mocha NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) Microsoft Corporation. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF @types/mocha NOTICES, INFORMATION, AND LICENSE + +%% @types/node NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +MIT License + +Copyright (c) Microsoft Corporation. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF @types/node NOTICES, INFORMATION, AND LICENSE + +%% @types/q NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +MIT License + +Copyright (c) Microsoft Corporation. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +========================================= +END OF @types/q NOTICES, INFORMATION, AND LICENSE diff --git a/_generated/FileTransformV1/filetransform.ts b/_generated/FileTransformV1/filetransform.ts new file mode 100644 index 000000000000..34d3b9f129f4 --- /dev/null +++ b/_generated/FileTransformV1/filetransform.ts @@ -0,0 +1,36 @@ +import tl = require('azure-pipelines-task-lib/task'); +import path = require('path'); +import { Package } from 'azure-pipelines-tasks-webdeployment-common/packageUtility'; +import { generateTemporaryFolderForDeployment } from 'azure-pipelines-tasks-webdeployment-common/utility'; +import { archiveFolder } from 'azure-pipelines-tasks-webdeployment-common/ziputility'; +import { advancedFileTransformations } from 'azure-pipelines-tasks-webdeployment-common/fileTransformationsUtility'; + +async function main() { + tl.setResourcePath(path.join( __dirname, 'task.json')); + tl.setResourcePath(path.join( __dirname, 'node_modules/azure-pipelines-tasks-webdeployment-common/module.json')); + let webPackage = new Package(tl.getPathInput('folderPath', true)); + let packagePath = webPackage.getPath(); + let fileType = tl.getInput("fileType", false); + let targetFiles = tl.getDelimitedInput('targetFiles', '\n', false); + let xmlTransformation = tl.getBoolInput('enableXmlTransform', false); + let xmlTransformationRules = tl.getDelimitedInput('xmlTransformationRules', '\n', false); + let applyFileTransformFlag = fileType || xmlTransformation; + if (applyFileTransformFlag) { + let isFolderBasedDeployment: boolean = tl.stats(packagePath).isDirectory(); + if(!isFolderBasedDeployment) { + let folderPath = await generateTemporaryFolderForDeployment(isFolderBasedDeployment, packagePath, webPackage.getPackageType()); + advancedFileTransformations(isFolderBasedDeployment, targetFiles, xmlTransformation, fileType, folderPath, xmlTransformationRules); + await archiveFolder(folderPath, path.dirname(packagePath), path.basename(packagePath)); + } + else { + advancedFileTransformations(isFolderBasedDeployment, targetFiles, xmlTransformation, fileType, packagePath, xmlTransformationRules); + } + } + else { + tl.debug('File Transformation not enabled'); + } +} + +main().catch((error) => { + tl.setResult(tl.TaskResult.Failed, error); +}); diff --git a/_generated/FileTransformV1/icon.png b/_generated/FileTransformV1/icon.png new file mode 100644 index 000000000000..09147672cca3 Binary files /dev/null and b/_generated/FileTransformV1/icon.png differ diff --git a/_generated/FileTransformV1/icon.svg b/_generated/FileTransformV1/icon.svg new file mode 100644 index 000000000000..be8b5a002eaa --- /dev/null +++ b/_generated/FileTransformV1/icon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/_generated/FileTransformV1/make.json b/_generated/FileTransformV1/make.json new file mode 100644 index 000000000000..65aef0088694 --- /dev/null +++ b/_generated/FileTransformV1/make.json @@ -0,0 +1,11 @@ +{ + "externals": { + "archivePackages": [ + { + "archiveName": "ctt.zip", + "url": "https://vstsagenttools.blob.core.windows.net/tools/ctt/1.6/ctt.zip", + "dest": "./" + } + ] + } +} \ No newline at end of file diff --git a/_generated/FileTransformV1/package-lock.json b/_generated/FileTransformV1/package-lock.json new file mode 100644 index 000000000000..a9008ca4118c --- /dev/null +++ b/_generated/FileTransformV1/package-lock.json @@ -0,0 +1,771 @@ +{ + "name": "vsts-tasks-filetransform", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@types/events": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.3.tgz", + "integrity": "sha512-trOc4AAUThEz9hapPtSd7wf5tiQKvTtu5b371UxXdTuqzIh0ArcRspRP0i0Viu+LXstIQ1z96t1nsPxT9ol01g==" + }, + "@types/ltx": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/ltx/-/ltx-3.0.6.tgz", + "integrity": "sha512-ZdHUgFEaBVUHI0si050pQkuGzHQC5UU46JsljUUJkGWbsjKeV3RUspJvvdV80Inrnhx8d3JqXw4qCDRX4A/BdA==", + "requires": { + "@types/events": "*" + } + }, + "@types/mocha": { + "version": "5.2.7", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.7.tgz", + "integrity": "sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ==" + }, + "@types/node": { + "version": "16.18.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.3.tgz", + "integrity": "sha512-jh6m0QUhIRcZpNv7Z/rpN+ZWXOicUUQbSoWks7Htkbb9IjFQj4kzcX/xFCkjstCj5flMsN8FiSvt+q+Tcs4Llg==" + }, + "@types/q": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.0.7.tgz", + "integrity": "sha512-0WS7XU7sXzQ7J1nbnMKKYdjrrFoO3YtZYgUzeV8JFXffPnHfvSJQleR70I8BOAsOm14i4dyaAZ3YzqIl1YhkXQ==" + }, + "@xmldom/xmldom": { + "version": "git+https://github.com/xmldom/xmldom.git#238b1ea8431fae8817812c68d55b4933248af07e", + "from": "git+https://github.com/xmldom/xmldom.git#0.8.6" + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "adm-zip": { + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.10.tgz", + "integrity": "sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==" + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" + } + }, + "archiver": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.2.0.tgz", + "integrity": "sha512-5GQRAgpHGPwWIiMzL9lthd+t75fLi8BpRBYtflomSYv2i6+EO9trtwWAm2+zGjIuwKmVmBRknAZFFBSqxYxiJw==", + "requires": { + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "zip-stream": "^1.1.0" + } + }, + "archiver-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", + "integrity": "sha512-h+hTREBXcW5e1L9RihGXdH4PHHdGipG/jE2sMZrqIH6BmZAxeGU5IWjVsKhokdCSWX7km6Kkh406zZNEElHFPQ==", + "requires": { + "glob": "^7.0.0", + "graceful-fs": "^4.1.0", + "lazystream": "^1.0.0", + "lodash": "^4.8.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "requires": { + "lodash": "^4.17.14" + } + }, + "azure-pipelines-task-lib": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/azure-pipelines-task-lib/-/azure-pipelines-task-lib-4.7.0.tgz", + "integrity": "sha512-5MctDC1Bt7eFi9tQTXlikuWRDc2MenCNruMsEwcKuXqBj1ZY+fA/D+E1DbE0Qi2u8kl1p6szT0we8k6RHSOe/w==", + "requires": { + "adm-zip": "^0.5.10", + "deasync": "^0.1.28", + "minimatch": "3.0.5", + "nodejs-file-downloader": "^4.11.1", + "q": "^1.5.1", + "semver": "^5.1.0", + "shelljs": "^0.8.5", + "uuid": "^3.0.1" + }, + "dependencies": { + "minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==" + }, + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==" + } + } + }, + "azure-pipelines-tasks-webdeployment-common": { + "version": "4.230.6", + "resolved": "https://registry.npmjs.org/azure-pipelines-tasks-webdeployment-common/-/azure-pipelines-tasks-webdeployment-common-4.230.6.tgz", + "integrity": "sha512-lEk6mDpEMIwZ1JZEBH6nQnio7R12gNGECXUYhbyLpL6n/OT+eWd3hWkc4f0F4GfKRSSjpsGEmX56qdAwfpFdeA==", + "requires": { + "@types/ltx": "3.0.6", + "@types/mocha": "^5.2.7", + "@types/node": "^10.17.0", + "@xmldom/xmldom": "git+https://github.com/xmldom/xmldom.git#0.8.6", + "archiver": "1.2.0", + "azure-pipelines-task-lib": "^4.2.0", + "decompress-zip": "^0.3.3", + "ltx": "2.8.0", + "node-stream-zip": "^1.15.0", + "q": "1.4.1", + "semver": "^7.5.4", + "winreg": "1.2.2", + "xml2js": "0.6.2" + }, + "dependencies": { + "@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" + } + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "binary": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", + "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", + "requires": { + "buffers": "~0.1.1", + "chainsaw": "~0.1.0" + } + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "bl": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==" + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==" + }, + "buffers": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", + "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==" + }, + "chainsaw": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", + "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", + "requires": { + "traverse": ">=0.3.0 <0.4" + } + }, + "compress-commons": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", + "integrity": "sha512-SLTU8iWWmcORfUN+4351Z2aZXKJe1tr0jSilPMCZlLPzpdTXnkBW1LevW/MfuANBKJek8Xu9ggqrtVmQrChLtg==", + "requires": { + "buffer-crc32": "^0.2.1", + "crc32-stream": "^2.0.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "crc": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "requires": { + "buffer": "^5.1.0" + } + }, + "crc32-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", + "integrity": "sha512-UjZSqFCbn+jZUHJIh6Y3vMF7EJLcJWNm4tKDf2peJRwlZKHvkkvOMTvAei6zjU9gO1xONVr3rRFw0gixm2eUng==", + "requires": { + "crc": "^3.4.4", + "readable-stream": "^2.0.0" + } + }, + "deasync": { + "version": "0.1.29", + "resolved": "https://registry.npmjs.org/deasync/-/deasync-0.1.29.tgz", + "integrity": "sha512-EBtfUhVX23CE9GR6m+F8WPeImEE4hR/FW9RkK0PMl9V1t283s0elqsTD8EZjaKX28SY1BW2rYfCgNsAYdpamUw==", + "requires": { + "bindings": "^1.5.0", + "node-addon-api": "^1.7.1" + } + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "decompress-zip": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/decompress-zip/-/decompress-zip-0.3.3.tgz", + "integrity": "sha512-/fy1L4s+4jujqj3kNptWjilFw3E6De8U6XUFvqmh4npN3Vsypm3oT2V0bXcmbBWS+5j5tr4okYaFrOmyZkszEg==", + "requires": { + "binary": "^0.3.0", + "graceful-fs": "^4.1.3", + "mkpath": "^0.1.0", + "nopt": "^3.0.1", + "q": "^1.1.2", + "readable-stream": "^1.1.8", + "touch": "0.0.3" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" + } + } + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, + "follow-redirects": { + "version": "1.15.3", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", + "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==" + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "requires": { + "function-bind": "^1.1.2" + } + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" + }, + "is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "requires": { + "hasown": "^2.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "requires": { + "readable-stream": "^2.0.5" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "ltx": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/ltx/-/ltx-2.8.0.tgz", + "integrity": "sha512-SJJUrmDgXP0gkUzgErfkaeD+pugM8GYxerTALQa1gTUb5W1wrC4k07GZU+QNZd7MpFqJSYWXTQSUy8Ps03hx5Q==", + "requires": { + "inherits": "^2.0.1" + } + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "mkpath": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/mkpath/-/mkpath-0.1.0.tgz", + "integrity": "sha512-bauHShmaxVQiEvlrAPWxSPn8spSL8gDVRl11r8vLT4r/KdnknLqtqwQbToZ2Oa8sJkExYY1z6/d+X7pNiqo4yg==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node-addon-api": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz", + "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==" + }, + "node-stream-zip": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.15.0.tgz", + "integrity": "sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==" + }, + "nodejs-file-downloader": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/nodejs-file-downloader/-/nodejs-file-downloader-4.12.1.tgz", + "integrity": "sha512-LpfCTNhh805AlLnJnzt1PuEj+RmbrccbAQZ6hBRw2e6QPVR0Qntuo6qqyvPHG5s77/0w0IEKgRAD4nbSnr/X4w==", + "requires": { + "follow-redirects": "^1.15.1", + "https-proxy-agent": "^5.0.0", + "mime-types": "^2.1.27", + "sanitize-filename": "^1.6.3" + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", + "requires": { + "abbrev": "1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "q": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", + "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=" + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "requires": { + "resolve": "^1.1.6" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==" + }, + "resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "sanitize-filename": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", + "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "requires": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "sax": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "requires": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + } + }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" + }, + "touch": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/touch/-/touch-0.0.3.tgz", + "integrity": "sha512-/LQ54KM9rPf3rGXGo2UPQWx3ol242Zg6Whq27H5DEmZhCJo+pm9N5BzRGepO9vTVhYxpXJdcc1+3uaYt9NyeKg==", + "requires": { + "nopt": "~1.0.10" + }, + "dependencies": { + "nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", + "requires": { + "abbrev": "1" + } + } + } + }, + "traverse": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", + "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==" + }, + "truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "requires": { + "utf8-byte-length": "^1.0.1" + } + }, + "typescript": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.0.2.tgz", + "integrity": "sha512-e4ERvRV2wb+rRZ/IQeb3jm2VxBsirQLpQhdxplZ2MEzGvDkkMmPglecnNDfSUBivMjP93vRbngYYDQqQ/78bcQ==", + "dev": true + }, + "utf8-byte-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", + "integrity": "sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + }, + "winreg": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/winreg/-/winreg-1.2.2.tgz", + "integrity": "sha512-I1mQ2HDZbOXm3XctfGPNzm9p/md7FAxHtACVFeBNrnOE4p4b3a0baqNObx1OqHE8DEx25l5CaCDipxFM5FSYOg==" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "xml2js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz", + "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + } + }, + "xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "zip-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", + "integrity": "sha512-2olrDUuPM4NvRIgGPhvrp84f7/HmWR6RiQrgwFF2VctmnssFiogtYL3DcA8Vl2bsSmju79sVXe38TsII7JleUg==", + "requires": { + "archiver-utils": "^1.3.0", + "compress-commons": "^1.2.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0" + } + } + } +} diff --git a/_generated/FileTransformV1/package.json b/_generated/FileTransformV1/package.json new file mode 100644 index 000000000000..23ff603dd26e --- /dev/null +++ b/_generated/FileTransformV1/package.json @@ -0,0 +1,29 @@ +{ + "name": "vsts-tasks-filetransform", + "version": "1.0.0", + "description": "File transformation and variable substitution", + "main": "filetransformtask.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/Microsoft/vsts-tasks.git" + }, + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Microsoft/vsts-tasks/issues" + }, + "homepage": "https://github.com/Microsoft/vsts-tasks#readme", + "dependencies": { + "@types/mocha": "^5.2.7", + "@types/node": "^16.11.39", + "@types/q": "1.0.7", + "azure-pipelines-tasks-webdeployment-common": "^4.230.6", + "q": "1.4.1" + }, + "devDependencies": { + "typescript": "4.0.2" + } +} diff --git a/_generated/FileTransformV1/task.json b/_generated/FileTransformV1/task.json new file mode 100644 index 000000000000..00215deefe3a --- /dev/null +++ b/_generated/FileTransformV1/task.json @@ -0,0 +1,122 @@ +{ + "id": "8ce97e91-56cc-4743-bfab-9a9315be5f27", + "name": "FileTransform", + "friendlyName": "File transform", + "description": "Replace tokens with variable values in XML or JSON configuration files", + "author": "Microsoft Corporation", + "helpUrl": "https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform", + "helpMarkDown": "File transformation and variable substitution task: Update tokens in your XML based configuration files and then replaces those tokens with variable values.
Currently only XML, JSON file formats are supported for variable substitution.
[Learn more about this task](https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform)", + "category": "Utility", + "visibility": [ + "Build", + "Release" + ], + "runsOn": [ + "Agent", + "DeploymentGroup" + ], + "version": { + "Major": 1, + "Minor": 231, + "Patch": 0 + }, + "instanceNameFormat": "File Transform: $(Package)", + "groups": [ + { + "name": "VariableSubstitution", + "displayName": "Variable Substitution", + "isExpanded": true + } + ], + "inputs": [ + { + "name": "folderPath", + "type": "filePath", + "label": "Package or folder", + "defaultValue": "$(System.DefaultWorkingDirectory)/**/*.zip", + "required": true, + "helpMarkDown": "File path to the package or a folder.
Variables ( [Build](https://docs.microsoft.com/vsts/pipelines/build/variables) | [Release](https://docs.microsoft.com/vsts/pipelines/release/variables#default-variables)), wildcards are supported.
For example, $(System.DefaultWorkingDirectory)/\\*\\*/\\*.zip." + }, + { + "name": "enableXmlTransform", + "type": "boolean", + "label": "XML transformation", + "required": false, + "defaultValue": false, + "helpMarkDown": "Config transforms will be run prior to the Variable Substitution.
XML transformations are supported only for Windows platform." + }, + { + "name": "xmlTransformationRules", + "type": "multiLine", + "label": "Transformation rules", + "defaultValue": "-transform **\\*.Release.config -xml **\\*.config", + "required": false, + "helpMarkDown": "Provide new line separated list of transformation file rules using the syntax:
-transform -xml ", + "visibleRule": "enableXmlTransform == true" + }, + { + "name": "fileType", + "type": "pickList", + "label": "File format", + "defaultValue": "", + "required": false, + "options": { + "xml": "XML", + "json": "JSON" + }, + "properties": { + "EditableOptions": "False" + }, + "groupName": "VariableSubstitution", + "helpMarkDown": "Provide file format on which substitution has to be perfformed
For XML, Variables defined in the build or release pipelines will be matched against the 'key' or 'name' entries in the appSettings, applicationSettings, and connectionStrings sections of any config file and parameters.xml. Variable Substitution is run after config transforms.
To substitute JSON variables that are nested or hierarchical, specify them using JSONPath expressions.

For example, to replace the value of ‘ConnectionString’ in the sample below, you need to define a variable as ‘Data.DefaultConnection.ConnectionString’ in the build or release pipeline (or release pipeline's environment).
{
  \"Data\": {
    \"DefaultConnection\": {
      \"ConnectionString\": \"Server=(localdb)\\SQLEXPRESS;Database=MyDB;Trusted_Connection=True\"
    }
  }
}
Variable Substitution is run after configuration transforms.

Note: only custom variables defined in build/release pipelines are used in substitution. Default/system defined pipeline variables are excluded.
Note: If same variables are defined in the release pipeline and in the stage, then the stage variables will supersede the release pipeline variables." + }, + { + "name": "targetFiles", + "type": "multiLine", + "label": "Target files", + "required": false, + "defaultValue": "", + "groupName": "VariableSubstitution", + "visibleRule": "fileType = xml || fileType = json", + "helpMarkDown": "Provide new line separated list of files to substitute the variable values. Files names are to be provided relative to the root folder." + } + ], + "execution": { + "Node10": { + "target": "filetransform.js", + "argumentFormat": "" + }, + "Node16": { + "target": "filetransform.js", + "argumentFormat": "" + } + }, + "messages": { + "JSONvariablesubstitutionappliedsuccessfully": "JSON variable substitution applied successfully.", + "XMLvariablesubstitutionappliedsuccessfully": "XML variable substitution applied successfully.", + "XDTTransformationsappliedsuccessfully": "XML Transformations applied successfully", + "CannotPerformXdtTransformationOnNonWindowsPlatform": "Cannot perform XML transformations on a non-Windows platform.", + "XdtTransformationErrorWhileTransforming": "XML transformation error while transforming %s using %s.", + "JSONParseError": "Unable to parse JSON file: %s. Error: %s", + "NOJSONfilematchedwithspecificpattern": "NO JSON file matched with specific pattern: %s.", + "FailedToApplyTransformation": "Unable to apply transformation for the given package.", + "MissingArgumentsforXMLTransformation": "Incomplete or missing arguments. Expected format -transform -xml -result . Transformation and source file are mandatory inputs.", + "SubstitutingValueonKey": "Substituting value on key: %s", + "SubstitutingValueonKeyWithNumber": "Substituting value on key %s with (number) value: %s", + "SubstitutingValueonKeyWithBoolean": "Substituting value on key %s with (boolean) value: %s", + "SubstitutingValueonKeyWithObject": "Substituting value on key %s with (object) value: %s", + "SubstitutingValueonKeyWithString": "Substituting value on key %s with (string) value: %s", + "JSONvariableSubstitution": "Applying JSON variable substitution for %s", + "ApplyingXDTtransformation": "Applying XDT Transformation from transformation file %s -> source file %s ", + "SubstitutionForXmlNode": "Processing substitution for xml node : %s", + "UpdatingKeyWithTokenValue": "Updating value for key= %s with token value: %s", + "SubstitutingConnectionStringValue": "Substituting connectionString value for connectionString = %s with token value: %s ", + "VariableSubstitutionInitiated": "Initiated variable substitution in config file : %s", + "ConfigFileUpdated": "Config file : %s updated.", + "SkippedUpdatingFile": "Skipped Updating file: %s" + }, + "_buildConfigMapping": { + "Default": "1.231.0", + "Node20_229_3": "1.231.1" + } +} \ No newline at end of file diff --git a/_generated/FileTransformV1/task.loc.json b/_generated/FileTransformV1/task.loc.json new file mode 100644 index 000000000000..63d95aa0438b --- /dev/null +++ b/_generated/FileTransformV1/task.loc.json @@ -0,0 +1,122 @@ +{ + "id": "8ce97e91-56cc-4743-bfab-9a9315be5f27", + "name": "FileTransform", + "friendlyName": "ms-resource:loc.friendlyName", + "description": "ms-resource:loc.description", + "author": "Microsoft Corporation", + "helpUrl": "https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/file-transform", + "helpMarkDown": "ms-resource:loc.helpMarkDown", + "category": "Utility", + "visibility": [ + "Build", + "Release" + ], + "runsOn": [ + "Agent", + "DeploymentGroup" + ], + "version": { + "Major": 1, + "Minor": 231, + "Patch": 0 + }, + "instanceNameFormat": "ms-resource:loc.instanceNameFormat", + "groups": [ + { + "name": "VariableSubstitution", + "displayName": "ms-resource:loc.group.displayName.VariableSubstitution", + "isExpanded": true + } + ], + "inputs": [ + { + "name": "folderPath", + "type": "filePath", + "label": "ms-resource:loc.input.label.folderPath", + "defaultValue": "$(System.DefaultWorkingDirectory)/**/*.zip", + "required": true, + "helpMarkDown": "ms-resource:loc.input.help.folderPath" + }, + { + "name": "enableXmlTransform", + "type": "boolean", + "label": "ms-resource:loc.input.label.enableXmlTransform", + "required": false, + "defaultValue": false, + "helpMarkDown": "ms-resource:loc.input.help.enableXmlTransform" + }, + { + "name": "xmlTransformationRules", + "type": "multiLine", + "label": "ms-resource:loc.input.label.xmlTransformationRules", + "defaultValue": "-transform **\\*.Release.config -xml **\\*.config", + "required": false, + "helpMarkDown": "ms-resource:loc.input.help.xmlTransformationRules", + "visibleRule": "enableXmlTransform == true" + }, + { + "name": "fileType", + "type": "pickList", + "label": "ms-resource:loc.input.label.fileType", + "defaultValue": "", + "required": false, + "options": { + "xml": "XML", + "json": "JSON" + }, + "properties": { + "EditableOptions": "False" + }, + "groupName": "VariableSubstitution", + "helpMarkDown": "ms-resource:loc.input.help.fileType" + }, + { + "name": "targetFiles", + "type": "multiLine", + "label": "ms-resource:loc.input.label.targetFiles", + "required": false, + "defaultValue": "", + "groupName": "VariableSubstitution", + "visibleRule": "fileType = xml || fileType = json", + "helpMarkDown": "ms-resource:loc.input.help.targetFiles" + } + ], + "execution": { + "Node10": { + "target": "filetransform.js", + "argumentFormat": "" + }, + "Node16": { + "target": "filetransform.js", + "argumentFormat": "" + } + }, + "messages": { + "JSONvariablesubstitutionappliedsuccessfully": "ms-resource:loc.messages.JSONvariablesubstitutionappliedsuccessfully", + "XMLvariablesubstitutionappliedsuccessfully": "ms-resource:loc.messages.XMLvariablesubstitutionappliedsuccessfully", + "XDTTransformationsappliedsuccessfully": "ms-resource:loc.messages.XDTTransformationsappliedsuccessfully", + "CannotPerformXdtTransformationOnNonWindowsPlatform": "ms-resource:loc.messages.CannotPerformXdtTransformationOnNonWindowsPlatform", + "XdtTransformationErrorWhileTransforming": "ms-resource:loc.messages.XdtTransformationErrorWhileTransforming", + "JSONParseError": "ms-resource:loc.messages.JSONParseError", + "NOJSONfilematchedwithspecificpattern": "ms-resource:loc.messages.NOJSONfilematchedwithspecificpattern", + "FailedToApplyTransformation": "ms-resource:loc.messages.FailedToApplyTransformation", + "MissingArgumentsforXMLTransformation": "ms-resource:loc.messages.MissingArgumentsforXMLTransformation", + "SubstitutingValueonKey": "ms-resource:loc.messages.SubstitutingValueonKey", + "SubstitutingValueonKeyWithNumber": "ms-resource:loc.messages.SubstitutingValueonKeyWithNumber", + "SubstitutingValueonKeyWithBoolean": "ms-resource:loc.messages.SubstitutingValueonKeyWithBoolean", + "SubstitutingValueonKeyWithObject": "ms-resource:loc.messages.SubstitutingValueonKeyWithObject", + "SubstitutingValueonKeyWithString": "ms-resource:loc.messages.SubstitutingValueonKeyWithString", + "JSONvariableSubstitution": "ms-resource:loc.messages.JSONvariableSubstitution", + "ApplyingXDTtransformation": "ms-resource:loc.messages.ApplyingXDTtransformation", + "SubstitutionForXmlNode": "ms-resource:loc.messages.SubstitutionForXmlNode", + "UpdatingKeyWithTokenValue": "ms-resource:loc.messages.UpdatingKeyWithTokenValue", + "SubstitutingConnectionStringValue": "ms-resource:loc.messages.SubstitutingConnectionStringValue", + "VariableSubstitutionInitiated": "ms-resource:loc.messages.VariableSubstitutionInitiated", + "ConfigFileUpdated": "ms-resource:loc.messages.ConfigFileUpdated", + "SkippedUpdatingFile": "ms-resource:loc.messages.SkippedUpdatingFile" + }, + "_buildConfigMapping": { + "Default": "1.231.0", + "Node20_229_3": "1.231.1" + } +} \ No newline at end of file diff --git a/_generated/FileTransformV1/tsconfig.json b/_generated/FileTransformV1/tsconfig.json new file mode 100644 index 000000000000..0438b79f69ac --- /dev/null +++ b/_generated/FileTransformV1/tsconfig.json @@ -0,0 +1,6 @@ +{ + "compilerOptions": { + "target": "ES6", + "module": "commonjs" + } +} \ No newline at end of file diff --git a/_generated/FileTransformV1_Node20/task.json b/_generated/FileTransformV1_Node20/task.json index 4e9c152d8e27..29a6af2e8ec5 100644 --- a/_generated/FileTransformV1_Node20/task.json +++ b/_generated/FileTransformV1_Node20/task.json @@ -17,7 +17,7 @@ ], "version": { "Major": 1, - "Minor": 230, + "Minor": 231, "Patch": 1 }, "instanceNameFormat": "File Transform: $(Package)", @@ -90,7 +90,7 @@ "target": "filetransform.js", "argumentFormat": "" }, - "Node20": { + "Node20_1": { "target": "filetransform.js", "argumentFormat": "" } @@ -120,7 +120,7 @@ "SkippedUpdatingFile": "Skipped Updating file: %s" }, "_buildConfigMapping": { - "Default": "1.220.0", - "Node20_229_3": "1.230.1" + "Default": "1.231.0", + "Node20_229_3": "1.231.1" } } \ No newline at end of file diff --git a/_generated/FileTransformV1_Node20/task.loc.json b/_generated/FileTransformV1_Node20/task.loc.json index 08c8301abd8e..caf073cb8a78 100644 --- a/_generated/FileTransformV1_Node20/task.loc.json +++ b/_generated/FileTransformV1_Node20/task.loc.json @@ -17,7 +17,7 @@ ], "version": { "Major": 1, - "Minor": 230, + "Minor": 231, "Patch": 1 }, "instanceNameFormat": "ms-resource:loc.instanceNameFormat", @@ -90,7 +90,7 @@ "target": "filetransform.js", "argumentFormat": "" }, - "Node20": { + "Node20_1": { "target": "filetransform.js", "argumentFormat": "" } @@ -120,7 +120,7 @@ "SkippedUpdatingFile": "ms-resource:loc.messages.SkippedUpdatingFile" }, "_buildConfigMapping": { - "Default": "1.220.0", - "Node20_229_3": "1.230.1" + "Default": "1.231.0", + "Node20_229_3": "1.231.1" } } \ No newline at end of file