From b59abe241e06c067af25da81c23c8834560a9737 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sat, 9 May 2020 02:17:48 +0100 Subject: [PATCH 01/15] signed off: added stricter scalar type checks Signed-off-by: Ifeora Okechukwu --- package-lock.json | 255 ++++++++++++++++-- package.json | 12 +- packages/openapi-to-graphql/package.json | 2 + .../openapi-to-graphql/src/schema_builder.ts | 101 ++++++- packages/openapi-to-graphql/src/types/oas3.ts | 5 + packages/openapi-to-graphql/src/utils.ts | 56 ++++ 6 files changed, 400 insertions(+), 31 deletions(-) diff --git a/package-lock.json b/package-lock.json index 19a5c6ee..d4fbedb3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1873,9 +1873,9 @@ "dev": true }, "@types/node": { - "version": "12.12.31", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.31.tgz", - "integrity": "sha512-T+wnJno8uh27G9c+1T+a1/WYCHzLeDqtsGJkoEdSp2X8RTh3oOCZQcUnjAx90CS8cmmADX51O0FI/tu9s0yssg==", + "version": "13.13.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.5.tgz", + "integrity": "sha512-3ySmiBYJPqgjiHA7oEaIo2Rzz0HrOZ7yrNO5HWyaE5q0lQ3BppDZ3N53Miz8bw2I7gh1/zir2MGVZBvpb1zq9g==", "dev": true }, "@types/stack-utils": { @@ -2084,6 +2084,11 @@ "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", "dev": true }, + "array-filter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", + "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=" + }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -2180,6 +2185,14 @@ "integrity": "sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY=", "dev": true }, + "available-typed-arrays": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz", + "integrity": "sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ==", + "requires": { + "array-filter": "^1.0.0" + } + }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", @@ -3266,6 +3279,34 @@ "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", "dev": true }, + "deep-equal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.3.tgz", + "integrity": "sha512-Spqdl4H+ky45I9ByyJtXteOm9CaIrPmnIPmOhrkKGNYWeDgCvJ8jNYVCTjChxW4FqGuZnLHADc8EKRMX6+CgvA==", + "requires": { + "es-abstract": "^1.17.5", + "es-get-iterator": "^1.1.0", + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.2", + "is-regex": "^1.0.5", + "isarray": "^2.0.5", + "object-is": "^1.1.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "regexp.prototype.flags": "^1.3.0", + "side-channel": "^1.0.2", + "which-boxed-primitive": "^1.0.1", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.2" + }, + "dependencies": { + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + } + } + }, "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", @@ -3285,7 +3326,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, "requires": { "object-keys": "^1.0.12" } @@ -3487,7 +3527,6 @@ "version": "1.17.5", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", - "dev": true, "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -3502,11 +3541,31 @@ "string.prototype.trimright": "^2.1.1" } }, + "es-get-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.0.tgz", + "integrity": "sha512-UfrmHuWQlNMTs35e1ypnvikg6jCz3SK8v8ImvmDsh36fCVUR1MqoFDiyn0/k52C8NqO3YsO8Oe0azeesNuqSsQ==", + "requires": { + "es-abstract": "^1.17.4", + "has-symbols": "^1.0.1", + "is-arguments": "^1.0.4", + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-string": "^1.0.5", + "isarray": "^2.0.5" + }, + "dependencies": { + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + } + } + }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -3890,6 +3949,11 @@ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", "dev": true }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" + }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -3907,6 +3971,11 @@ "mime-types": "^2.1.12" } }, + "form-urlencoded": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/form-urlencoded/-/form-urlencoded-4.1.3.tgz", + "integrity": "sha512-z0YJtPuq0BSOrErlpj+o1KHTRaOH6LN16043ZVK2Wk5uUGpX308PJ5ZJDtU++ndoZkzASHVclUTD2mb1jHzqlA==" + }, "fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", @@ -4584,8 +4653,7 @@ "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "gauge": { "version": "2.7.4", @@ -5164,6 +5232,29 @@ "iterall": "^1.2.2" } }, + "graphql-input-number": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/graphql-input-number/-/graphql-input-number-0.0.10.tgz", + "integrity": "sha1-UJscH7W67virUWp8gsQNzruPg1g=" + }, + "graphql-input-string": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/graphql-input-string/-/graphql-input-string-0.0.16.tgz", + "integrity": "sha1-bHkIpcIcXRwk153dKa5IKbQJWUk=" + }, + "graphql-subscriptions": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/graphql-subscriptions/-/graphql-subscriptions-1.1.0.tgz", + "integrity": "sha512-6WzlBFC0lWmXJbIVE8OgFgXIP4RJi3OQgTPa0DVMsDXdpRDjTsM1K9wfl5HSYX7R87QAGlvcv2Y4BIZa/ItonA==", + "requires": { + "iterall": "^1.2.1" + } + }, + "graphql-type-json": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/graphql-type-json/-/graphql-type-json-0.3.1.tgz", + "integrity": "sha512-1lPkUXQ2L8o+ERLzVAuc3rzc/E6pGF+6HnjihCVTK0VzR0jCuUd92FqNxoHdfILXqOn2L6b4y47TBxiPyieUVA==" + }, "growly": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", @@ -5202,7 +5293,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -5216,8 +5306,7 @@ "has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, "has-unicode": { "version": "2.0.1", @@ -5543,12 +5632,27 @@ } } }, + "is-arguments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", + "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==" + }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, + "is-bigint": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.0.tgz", + "integrity": "sha512-t5mGUXC/xRheCK431ylNiSkGGpBp8bHENBcENTkDT6ppwPzEVxNGZRvgvmOEfbWkFhA7D2GEuE2mmQTr78sl2g==" + }, + "is-boolean-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.0.1.tgz", + "integrity": "sha512-TqZuVwa/sppcrhUCAYkGBk7w0yxfQQnxq28fjkO53tnK9FQXmdwz2JS5+GjsWQ6RByES1K40nI+yDic5c9/aAQ==" + }, "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", @@ -5558,8 +5662,7 @@ "is-callable": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", - "dev": true + "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==" }, "is-ci": { "version": "2.0.0", @@ -5593,8 +5696,7 @@ "is-date-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, "is-descriptor": { "version": "0.1.6", @@ -5660,6 +5762,11 @@ "is-extglob": "^2.1.1" } }, + "is-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.1.tgz", + "integrity": "sha512-T/S49scO8plUiAOA2DBTBG3JHpn1yiw0kRp6dgiZ0v2/6twi5eiB0rHtHFH9ZIrvlWc6+4O+m4zg5+Z833aXgw==" + }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -5680,6 +5787,11 @@ } } }, + "is-number-object": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", + "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==" + }, "is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", @@ -5711,11 +5823,15 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "dev": true, "requires": { "has": "^1.0.3" } }, + "is-set": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.1.tgz", + "integrity": "sha512-eJEzOtVyenDs1TMzSQ3kU3K+E0GUS9sno+F0OBT97xsgcJsF9nXMBtkT9/kut5JEpM7oL7X/0qxR17K3mcwIAA==" + }, "is-ssh": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.1.tgz", @@ -5731,11 +5847,15 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, + "is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==" + }, "is-symbol": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, "requires": { "has-symbols": "^1.0.1" } @@ -5749,6 +5869,17 @@ "text-extensions": "^1.0.0" } }, + "is-typed-array": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.3.tgz", + "integrity": "sha512-BSYUBOK/HJibQ30wWkWold5txYwMUXQct9YHAQJr8fSwvZoiglcqB0pd7vEN23+Tsi9IUEjztdOSzl4qLVYGTQ==", + "requires": { + "available-typed-arrays": "^1.0.0", + "es-abstract": "^1.17.4", + "foreach": "^2.0.5", + "has-symbols": "^1.0.1" + } + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -5761,6 +5892,16 @@ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "dev": true }, + "is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==" + }, + "is-weakset": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.1.tgz", + "integrity": "sha512-pi4vhbhVHGLxohUw7PhGsueT4vRGFoXhP7+RGN0jKIv9+8PWYCQTqtADngrxOm2g46hoH0+g8uZZBzMrvVGDmw==" + }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -5890,8 +6031,7 @@ "iterall": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.3.0.tgz", - "integrity": "sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==", - "dev": true + "integrity": "sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==" }, "jest": { "version": "24.9.0", @@ -6429,6 +6569,11 @@ "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", "dev": true }, + "jsonpath-plus": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-4.0.0.tgz", + "integrity": "sha512-e0Jtg4KAzDJKKwzbLaUtinCn0RZseWBVRTRGihSpvFlM3wTR7ExSp+PTdeTsDrLNJUe7L7JYJe8mblHX5SCT6A==" + }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -7294,14 +7439,21 @@ "object-inspect": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "dev": true + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" + }, + "object-is": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", + "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object-visit": { "version": "1.0.1", @@ -7316,7 +7468,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -7940,6 +8091,15 @@ "safe-regex": "^1.1.0" } }, + "regexp.prototype.flags": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", @@ -8230,6 +8390,15 @@ "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", "dev": true }, + "side-channel": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.2.tgz", + "integrity": "sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==", + "requires": { + "es-abstract": "^1.17.0-next.1", + "object-inspect": "^1.7.0" + } + }, "signal-exit": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", @@ -8630,7 +8799,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", - "dev": true, "requires": { "define-properties": "^1.1.3", "function-bind": "^1.1.1" @@ -8640,7 +8808,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", - "dev": true, "requires": { "define-properties": "^1.1.3", "function-bind": "^1.1.1" @@ -9255,12 +9422,48 @@ "isexe": "^2.0.0" } }, + "which-boxed-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.1.tgz", + "integrity": "sha512-7BT4TwISdDGBgaemWU0N0OU7FeAEJ9Oo2P1PHRm/FCWoEi2VLWC9b6xvxAA3C/NMpxg3HXVgi0sMmGbNUbNepQ==", + "requires": { + "is-bigint": "^1.0.0", + "is-boolean-object": "^1.0.0", + "is-number-object": "^1.0.3", + "is-string": "^1.0.4", + "is-symbol": "^1.0.2" + } + }, + "which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "requires": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + } + }, "which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, + "which-typed-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.2.tgz", + "integrity": "sha512-KT6okrd1tE6JdZAy3o2VhMoYPh3+J6EMZLyrxBQsZflI1QCZIxMrIYLkosd8Twf+YfknVIHmYQPgJt238p8dnQ==", + "requires": { + "available-typed-arrays": "^1.0.2", + "es-abstract": "^1.17.5", + "foreach": "^2.0.5", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.1", + "is-typed-array": "^1.1.3" + } + }, "wide-align": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", diff --git a/package.json b/package.json index b5615bfa..ddc152aa 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ }, "devDependencies": { "@types/jest": "^24.0.18", + "@types/node": "^13.13.5", "graphql": "^14.5.0", "jest": "^24.8.0", "lerna": "^3.4.3", @@ -18,5 +19,14 @@ "contributors": [ "Alan Cha", "Erik Wittern" - ] + ], + "dependencies": { + "deep-equal": "^2.0.3", + "form-urlencoded": "^4.1.3", + "graphql-input-number": "0.0.10", + "graphql-input-string": "0.0.16", + "graphql-subscriptions": "^1.1.0", + "graphql-type-json": "^0.3.1", + "jsonpath-plus": "^4.0.0" + } } diff --git a/packages/openapi-to-graphql/package.json b/packages/openapi-to-graphql/package.json index dd5c7f79..f5ac2c89 100644 --- a/packages/openapi-to-graphql/package.json +++ b/packages/openapi-to-graphql/package.json @@ -69,6 +69,8 @@ "debug": "^4.1.0", "deep-equal": "^2.0.1", "form-urlencoded": "^4.1.1", + "graphql-input-number": "0.0.10", + "graphql-input-string": "0.0.16", "graphql-subscriptions": "^1.1.0", "graphql-type-json": "^0.2.1", "jsonpath-plus": "^3.0.0", diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index 3e834fc9..64460127 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -18,7 +18,14 @@ import { LinkObject } from './types/oas3' import { Args, GraphQLType, ResolveFunction } from './types/graphql' +import GraphQLInputString from 'graphql-input-string'; import { + GraphQLInputInt, + GraphQLInputFloat, +} from 'graphql-input-number'; + +import { + GraphQLError, GraphQLScalarType, GraphQLObjectType, GraphQLString, @@ -41,7 +48,7 @@ import * as Oas3Tools from './oas_3_tools' import { getResolver } from './resolver_builder' import { createDataDef } from './preprocessor' import debug from 'debug' -import { handleWarning, sortObject } from './utils' +import { handleWarning, sortObject, strictTypeOf } from './utils' type GetArgsParams = { requestPayloadDef?: DataDefinition @@ -52,6 +59,7 @@ type GetArgsParams = { type CreateOrReuseComplexTypeParams = { def: DataDefinition + schema?: SchemaObject operation?: Operation iteration?: number // Count of recursions used to create type isInputObjectType?: boolean // Does not require isInputObjectType because unions must be composed of objects @@ -60,6 +68,8 @@ type CreateOrReuseComplexTypeParams = { type CreateOrReuseSimpleTypeParams = { def: DataDefinition + schema?: SchemaObject + isInputObjectType?: boolean // Does not require isInputObjectType because unions must be composed of objects data: PreprocessingData } @@ -79,6 +89,20 @@ type LinkOpRefToOpIdParams = { data: PreprocessingData } +type StrictScalarConfig = { + name: string + description?: string + min?: number + max?: number + trim?: boolean + empty?: boolean + pattern?: string | RegExp + test?: Function + sanitize?: Function + parse?: Function + error?: () => GraphQLError +} + const translationLog = debug('translation') /** @@ -86,6 +110,7 @@ const translationLog = debug('translation') */ export function getGraphQLType({ def, + schema, operation, data, iteration = 0, @@ -125,6 +150,7 @@ export function getGraphQLType({ return createOrReuseList({ def, operation, + schema, data, iteration, isInputObjectType @@ -141,6 +167,8 @@ export function getGraphQLType({ default: return getScalarType({ def, + schema, + isInputObjectType, data }) } @@ -422,6 +450,7 @@ function checkAmbiguousMemberTypes( function createOrReuseList({ def, operation, + schema, iteration, isInputObjectType, data @@ -461,6 +490,7 @@ function createOrReuseList({ const itemsType = getGraphQLType({ def: itemDef, data, + schema, operation, iteration: iteration + 1, isInputObjectType @@ -523,20 +553,82 @@ function createOrReuseEnum({ */ function getScalarType({ def, + schema, + isInputObjectType, data }: CreateOrReuseSimpleTypeParams): GraphQLScalarType { + + const name = isInputObjectType + ? def.graphQLInputObjectTypeName + : def.graphQLTypeName; + + const options = {} as StrictScalarConfig; + const typeSet = { type: null, defaultValue: undefined } + + if(isInputObjectType){ + + options.name = name; + + const type = schema.type + + switch(true){ + case typeof schema.minimum === 'number': + case typeof schema.minLength === 'number': + options.min = schema.minLength || schema.minimum + break; + case typeof schema.maximum === 'number': + case typeof schema.maxLength === 'number': + options.max = schema.maxLength || schema.maximum + break; + case typeof schema.pattern === 'string': + options.pattern = schema.pattern + break; + case typeof schema.description === 'string': + options.description = schema.description.replace(/\s/g, '').trim() + break; + case typeof schema.format === 'string': + case typeof schema.enum !== 'undefined': + const format = schema.format || '' + const $enum = schema.enum || [] + + options.sanitize = (data) => format.startsWith('int') ? parseInt( data ) : ( format === 'float' ? parseFloat( data ) : data) + options.test = (data) => format === 'int64' ? Number.isSafeInteger( data ) : ( format === 'int32' ? data <= Math.pow(2, 31) : ($enum.includes(data) || strictTypeOf(data, type)) ) + break; + } + } + switch (def.targetGraphQLType) { case 'id': def.graphQLType = GraphQLID break case 'string': - def.graphQLType = GraphQLString + options.trim = true + options.empty = schema.nullable || !schema.required + typeSet.type = isInputObjectType ? GraphQLInputString(options) : GraphQLString + + if(schema.default){ + typeSet.defaultValue = schema.default + } + + def.graphQLType = typeSet break case 'integer': - def.graphQLType = GraphQLInt + typeSet.type = isInputObjectType ? GraphQLInputInt(options) : GraphQLInt + + if(schema.default){ + typeSet.defaultValue = schema.default + } + + def.graphQLType = typeSet break case 'number': - def.graphQLType = GraphQLFloat + typeSet.type = isInputObjectType ? GraphQLInputFloat(options) : GraphQLFloat + + if(schema.default){ + typeSet.defaultValue = schema.default + } + + def.graphQLType = typeSet break case 'boolean': def.graphQLType = GraphQLBoolean @@ -1113,6 +1205,7 @@ export function getArgs({ const type = getGraphQLType({ def: paramDef, operation, + schema, data, iteration: 0, isInputObjectType: true diff --git a/packages/openapi-to-graphql/src/types/oas3.ts b/packages/openapi-to-graphql/src/types/oas3.ts index c9349cf3..606b1470 100644 --- a/packages/openapi-to-graphql/src/types/oas3.ts +++ b/packages/openapi-to-graphql/src/types/oas3.ts @@ -17,6 +17,11 @@ type ExternalDocumentationObject = { export type SchemaObject = { $ref?: string title?: string + minimum?: number + maximum?: number + maxLength?: number + minLength?: number + pattern?: string type?: 'string' | 'number' | 'object' | 'array' | 'boolean' | 'integer' format?: string nullable?: boolean diff --git a/packages/openapi-to-graphql/src/utils.ts b/packages/openapi-to-graphql/src/utils.ts index 47a6753c..9eba492e 100644 --- a/packages/openapi-to-graphql/src/utils.ts +++ b/packages/openapi-to-graphql/src/utils.ts @@ -51,6 +51,62 @@ export const mitigations = { OAUTH_SECURITY_SCHEME: `Ignore security scheme` } +/** + * check if a literal is falsy or not + */ +const isLiteralFalsey = (variable): boolean => { + return (variable === "" || variable === false || variable === 0) +} + +/** + * provide the name of primitive and/or reference types + */ +const checkTypeName = (target, type): boolean => { + let typeName = "" + + if(isLiteralFalsey(target)){ + typeName = (typeof target) + }else{ + typeName = ("" + (target && target.constructor.name)) + } + return !!(typeName.toLowerCase().indexOf(type) + 1) +} + +/** + * get the correct type of a variable + */ + export function strictTypeOf (value, type): boolean { + let result = false + + type = type || [] + + if(typeof type === 'object'){ + if(typeof type.length !== 'number'){ + return result + } + + let bitPiece = 0 + + type = [].slice.call(type) + + type.forEach( _type => { + if(typeof _type === 'function'){ + _type = (_type.name || _type.displayName).toLowerCase() + } + bitPiece |= Number(checkTypeName(value, _type)) + }); + + result = Boolean(bitPiece) + }else{ + if(typeof type === 'function'){ + type = (type.name || type.displayName).toLowerCase() + } + + result = checkTypeName(value, type) + } + return result +} + /** * Utilities that are specific to OpenAPI-to-GraphQL */ From 3ca285d9c7bf3039cad54d4ce2fa0f37e41f05cb Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sat, 9 May 2020 03:30:39 +0100 Subject: [PATCH 02/15] updated regex info Signed-off-by: Ifeora Okechukwu --- packages/openapi-to-graphql/src/schema_builder.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index 64460127..9fae5c95 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -581,14 +581,17 @@ function getScalarType({ options.max = schema.maxLength || schema.maximum break; case typeof schema.pattern === 'string': - options.pattern = schema.pattern + const qualifier = schema.pattern.match(/\/(.)$/) || ['', ''] + const $pattern = schema.pattern.replace(/^\//, '').replace(/\/(.)?$/, '') + + options.pattern = new RegExp($pattern, qualifier[1]) break; case typeof schema.description === 'string': options.description = schema.description.replace(/\s/g, '').trim() break; case typeof schema.format === 'string': case typeof schema.enum !== 'undefined': - const format = schema.format || '' + const format = schema.format || '-' const $enum = schema.enum || [] options.sanitize = (data) => format.startsWith('int') ? parseInt( data ) : ( format === 'float' ? parseFloat( data ) : data) From 3dc3f30795ed41b3ac9886e0de55cccfcc028783 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sat, 9 May 2020 03:41:56 +0100 Subject: [PATCH 03/15] fixed incorrect addition to root package json Signed-off-by: Ifeora Okechukwu --- package.json | 12 +----------- packages/openapi-to-graphql/package-lock.json | 12 +++++++++++- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index ddc152aa..b5615bfa 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,6 @@ }, "devDependencies": { "@types/jest": "^24.0.18", - "@types/node": "^13.13.5", "graphql": "^14.5.0", "jest": "^24.8.0", "lerna": "^3.4.3", @@ -19,14 +18,5 @@ "contributors": [ "Alan Cha", "Erik Wittern" - ], - "dependencies": { - "deep-equal": "^2.0.3", - "form-urlencoded": "^4.1.3", - "graphql-input-number": "0.0.10", - "graphql-input-string": "0.0.16", - "graphql-subscriptions": "^1.1.0", - "graphql-type-json": "^0.3.1", - "jsonpath-plus": "^4.0.0" - } + ] } diff --git a/packages/openapi-to-graphql/package-lock.json b/packages/openapi-to-graphql/package-lock.json index e27da7d7..e24d210c 100644 --- a/packages/openapi-to-graphql/package-lock.json +++ b/packages/openapi-to-graphql/package-lock.json @@ -1,6 +1,6 @@ { "name": "openapi-to-graphql", - "version": "2.0.0", + "version": "2.1.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -3851,6 +3851,16 @@ "iterall": "^1.2.2" } }, + "graphql-input-number": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/graphql-input-number/-/graphql-input-number-0.0.10.tgz", + "integrity": "sha1-UJscH7W67virUWp8gsQNzruPg1g=" + }, + "graphql-input-string": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/graphql-input-string/-/graphql-input-string-0.0.16.tgz", + "integrity": "sha1-bHkIpcIcXRwk153dKa5IKbQJWUk=" + }, "graphql-mqtt-subscriptions": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/graphql-mqtt-subscriptions/-/graphql-mqtt-subscriptions-1.2.0.tgz", From 80ae531f5bbebec3a99a710969520e8372d1f92b Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sat, 9 May 2020 03:46:37 +0100 Subject: [PATCH 04/15] signed-off: added stricter scalar type checks + build Signed-off-by: Ifeora Okechukwu --- .../lib/schema_builder.d.ts | 5 +- .../openapi-to-graphql/lib/schema_builder.js | 67 +++++++++++++++++-- .../lib/schema_builder.js.map | 2 +- .../openapi-to-graphql/lib/types/oas3.d.ts | 5 ++ packages/openapi-to-graphql/lib/utils.d.ts | 4 ++ packages/openapi-to-graphql/lib/utils.js | 48 +++++++++++++ packages/openapi-to-graphql/lib/utils.js.map | 2 +- packages/openapi-to-graphql/src/utils.ts | 50 +++++++------- 8 files changed, 148 insertions(+), 35 deletions(-) diff --git a/packages/openapi-to-graphql/lib/schema_builder.d.ts b/packages/openapi-to-graphql/lib/schema_builder.d.ts index dd7ae510..7405f51c 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.d.ts +++ b/packages/openapi-to-graphql/lib/schema_builder.d.ts @@ -3,7 +3,7 @@ */ import { PreprocessingData } from './types/preprocessing_data'; import { Operation, DataDefinition } from './types/operation'; -import { ParameterObject } from './types/oas3'; +import { SchemaObject, ParameterObject } from './types/oas3'; import { Args, GraphQLType } from './types/graphql'; declare type GetArgsParams = { requestPayloadDef?: DataDefinition; @@ -13,6 +13,7 @@ declare type GetArgsParams = { }; declare type CreateOrReuseComplexTypeParams = { def: DataDefinition; + schema?: SchemaObject; operation?: Operation; iteration?: number; isInputObjectType?: boolean; @@ -21,7 +22,7 @@ declare type CreateOrReuseComplexTypeParams = { /** * Creates and returns a GraphQL type for the given JSON schema. */ -export declare function getGraphQLType({ def, operation, data, iteration, isInputObjectType }: CreateOrReuseComplexTypeParams): GraphQLType; +export declare function getGraphQLType({ def, schema, operation, data, iteration, isInputObjectType }: CreateOrReuseComplexTypeParams): GraphQLType; /** * Creates the arguments for resolving a field */ diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index fc559aa0..d5c2ed62 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -4,6 +4,8 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); +const graphql_input_string_1 = require("graphql-input-string"); +const graphql_input_number_1 = require("graphql-input-number"); const graphql_1 = require("graphql"); // Imports: const GraphQLJSON = require("graphql-type-json"); @@ -16,7 +18,7 @@ const translationLog = debug_1.default('translation'); /** * Creates and returns a GraphQL type for the given JSON schema. */ -function getGraphQLType({ def, operation, data, iteration = 0, isInputObjectType = false }) { +function getGraphQLType({ def, schema, operation, data, iteration = 0, isInputObjectType = false }) { const name = isInputObjectType ? def.graphQLInputObjectTypeName : def.graphQLTypeName; @@ -47,6 +49,7 @@ function getGraphQLType({ def, operation, data, iteration = 0, isInputObjectType return createOrReuseList({ def, operation, + schema, data, iteration, isInputObjectType @@ -61,6 +64,8 @@ function getGraphQLType({ def, operation, data, iteration = 0, isInputObjectType default: return getScalarType({ def, + schema, + isInputObjectType, data }); } @@ -273,7 +278,7 @@ function checkAmbiguousMemberTypes(def, types, data) { /** * Creates a list type or returns an existing one, and stores it in data */ -function createOrReuseList({ def, operation, iteration, isInputObjectType, data }) { +function createOrReuseList({ def, operation, schema, iteration, isInputObjectType, data }) { const name = isInputObjectType ? def.graphQLInputObjectTypeName : def.graphQLTypeName; @@ -301,6 +306,7 @@ function createOrReuseList({ def, operation, iteration, isInputObjectType, data const itemsType = getGraphQLType({ def: itemDef, data, + schema, operation, iteration: iteration + 1, isInputObjectType @@ -354,19 +360,67 @@ function createOrReuseEnum({ def, data }) { /** * Returns the GraphQL scalar type matching the given JSON schema type */ -function getScalarType({ def, data }) { +function getScalarType({ def, schema, isInputObjectType, data }) { + const name = isInputObjectType + ? def.graphQLInputObjectTypeName + : def.graphQLTypeName; + const options = {}; + const typeSet = { type: null, defaultValue: undefined }; + if (isInputObjectType) { + options.name = name; + const type = schema.type; + switch (true) { + case typeof schema.minimum === 'number': + case typeof schema.minLength === 'number': + options.min = schema.minLength || schema.minimum; + break; + case typeof schema.maximum === 'number': + case typeof schema.maxLength === 'number': + options.max = schema.maxLength || schema.maximum; + break; + case typeof schema.pattern === 'string': + const qualifier = schema.pattern.match(/\/(.)$/) || ['', '']; + const $pattern = schema.pattern.replace(/^\//, '').replace(/\/(.)?$/, ''); + options.pattern = new RegExp($pattern, qualifier[1]); + break; + case typeof schema.description === 'string': + options.description = schema.description.replace(/\s/g, '').trim(); + break; + case typeof schema.format === 'string': + case typeof schema.enum !== 'undefined': + const format = schema.format || '-'; + const $enum = schema.enum || []; + options.sanitize = (data) => format.startsWith('int') ? parseInt(data) : (format === 'float' ? parseFloat(data) : data); + options.test = (data) => format === 'int64' ? Number.isSafeInteger(data) : (format === 'int32' ? data <= Math.pow(2, 31) : ($enum.includes(data) || utils_1.strictTypeOf(data, type))); + break; + } + } switch (def.targetGraphQLType) { case 'id': def.graphQLType = graphql_1.GraphQLID; break; case 'string': - def.graphQLType = graphql_1.GraphQLString; + options.trim = true; + options.empty = schema.nullable || !schema.required; + typeSet.type = isInputObjectType ? graphql_input_string_1.default(options) : graphql_1.GraphQLString; + if (schema.default) { + typeSet.defaultValue = schema.default; + } + def.graphQLType = typeSet; break; case 'integer': - def.graphQLType = graphql_1.GraphQLInt; + typeSet.type = isInputObjectType ? graphql_input_number_1.GraphQLInputInt(options) : graphql_1.GraphQLInt; + if (schema.default) { + typeSet.defaultValue = schema.default; + } + def.graphQLType = typeSet; break; case 'number': - def.graphQLType = graphql_1.GraphQLFloat; + typeSet.type = isInputObjectType ? graphql_input_number_1.GraphQLInputFloat(options) : graphql_1.GraphQLFloat; + if (schema.default) { + typeSet.defaultValue = schema.default; + } + def.graphQLType = typeSet; break; case 'boolean': def.graphQLType = graphql_1.GraphQLBoolean; @@ -828,6 +882,7 @@ function getArgs({ requestPayloadDef, parameters, operation, data }) { const type = getGraphQLType({ def: paramDef, operation, + schema, data, iteration: 0, isInputObjectType: true diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index 53577a72..f500104d 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/types/oas3.d.ts b/packages/openapi-to-graphql/lib/types/oas3.d.ts index 7e55ca5f..06f76370 100644 --- a/packages/openapi-to-graphql/lib/types/oas3.d.ts +++ b/packages/openapi-to-graphql/lib/types/oas3.d.ts @@ -8,6 +8,11 @@ declare type ExternalDocumentationObject = { export declare type SchemaObject = { $ref?: string; title?: string; + minimum?: number; + maximum?: number; + maxLength?: number; + minLength?: number; + pattern?: string; type?: 'string' | 'number' | 'object' | 'array' | 'boolean' | 'integer'; format?: string; nullable?: boolean; diff --git a/packages/openapi-to-graphql/lib/utils.d.ts b/packages/openapi-to-graphql/lib/utils.d.ts index 088caa1e..fa83249f 100644 --- a/packages/openapi-to-graphql/lib/utils.d.ts +++ b/packages/openapi-to-graphql/lib/utils.d.ts @@ -33,6 +33,10 @@ export declare const mitigations: { LIMIT_ARGUMENT_NAME_COLLISION: string; OAUTH_SECURITY_SCHEME: string; }; +/** + * get the correct type of a variable + */ +export declare function strictTypeOf(value: any, type: any): boolean; /** * Utilities that are specific to OpenAPI-to-GraphQL */ diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index c488a429..89ed9d63 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -43,6 +43,54 @@ exports.mitigations = { // Miscellaneous OAUTH_SECURITY_SCHEME: `Ignore security scheme` }; +/** + * check if a literal is falsy or not + */ +const isLiteralFalsey = (variable) => { + return (variable === "" || variable === false || variable === 0); +}; +/** + * provide the name of primitive and/or reference types + */ +const checkTypeName = (target, type) => { + let typeName = ""; + if (isLiteralFalsey(target)) { + typeName = (typeof target); + } + else { + typeName = ("" + (target && target.constructor.name)); + } + return !!(typeName.toLowerCase().indexOf(type) + 1); +}; +/** + * get the correct type of a variable + */ +function strictTypeOf(value, type) { + let result = false; + type = type || []; + if (typeof type === 'object') { + if (typeof type.length !== 'number') { + return result; + } + let bitPiece = 0; + type = [].slice.call(type); + type.forEach(_type => { + if (typeof _type === 'function') { + _type = (_type.name || _type.displayName).toLowerCase(); + } + bitPiece |= Number(checkTypeName(value, _type)); + }); + result = Boolean(bitPiece); + } + else { + if (typeof type === 'function') { + type = (type.name || type.displayName).toLowerCase(); + } + result = checkTypeName(value, type); + } + return result; +} +exports.strictTypeOf = strictTypeOf; /** * Utilities that are specific to OpenAPI-to-GraphQL */ diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index a4e56371..6ba7fe8f 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/utils.ts b/packages/openapi-to-graphql/src/utils.ts index 9eba492e..bbdda38a 100644 --- a/packages/openapi-to-graphql/src/utils.ts +++ b/packages/openapi-to-graphql/src/utils.ts @@ -55,19 +55,19 @@ export const mitigations = { * check if a literal is falsy or not */ const isLiteralFalsey = (variable): boolean => { - return (variable === "" || variable === false || variable === 0) + return variable === '' || variable === false || variable === 0 } /** * provide the name of primitive and/or reference types */ const checkTypeName = (target, type): boolean => { - let typeName = "" + let typeName = '' - if(isLiteralFalsey(target)){ - typeName = (typeof target) - }else{ - typeName = ("" + (target && target.constructor.name)) + if (isLiteralFalsey(target)) { + typeName = typeof target + } else { + typeName = '' + (target && target.constructor.name) } return !!(typeName.toLowerCase().indexOf(type) + 1) } @@ -75,34 +75,34 @@ const checkTypeName = (target, type): boolean => { /** * get the correct type of a variable */ - export function strictTypeOf (value, type): boolean { +export function strictTypeOf(value, type): boolean { let result = false type = type || [] - if(typeof type === 'object'){ - if(typeof type.length !== 'number'){ - return result - } - - let bitPiece = 0 + if (typeof type === 'object') { + if (typeof type.length !== 'number') { + return result + } - type = [].slice.call(type) + let bitPiece = 0 - type.forEach( _type => { - if(typeof _type === 'function'){ - _type = (_type.name || _type.displayName).toLowerCase() - } - bitPiece |= Number(checkTypeName(value, _type)) - }); + type = [].slice.call(type) - result = Boolean(bitPiece) - }else{ - if(typeof type === 'function'){ - type = (type.name || type.displayName).toLowerCase() + type.forEach(_type => { + if (typeof _type === 'function') { + _type = (_type.name || _type.displayName).toLowerCase() } + bitPiece |= Number(checkTypeName(value, _type)) + }) + + result = Boolean(bitPiece) + } else { + if (typeof type === 'function') { + type = (type.name || type.displayName).toLowerCase() + } - result = checkTypeName(value, type) + result = checkTypeName(value, type) } return result } From c506e345f7f48b064bd398209d76c51d0f811ce0 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sat, 9 May 2020 04:03:27 +0100 Subject: [PATCH 05/15] signed off: added stricter type checks Signed-off-by: Ifeora Okechukwu --- package-lock.json | 1660 ++++----- packages/openapi-to-graphql/lib/utils.js | 8 +- packages/openapi-to-graphql/lib/utils.js.map | 2 +- packages/openapi-to-graphql/package-lock.json | 2960 +++++++++-------- 4 files changed, 2085 insertions(+), 2545 deletions(-) diff --git a/package-lock.json b/package-lock.json index d4fbedb3..9e74e136 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,19 +13,19 @@ } }, "@babel/core": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", - "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.6.tgz", + "integrity": "sha512-nD3deLvbsApbHAHttzIssYqgb883yU/d9roe4RZymBCDaZryMJDbptVpEpeQuRh4BJ+SYI8le9YGxKvFEvl1Wg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", + "@babel/generator": "^7.9.6", "@babel/helper-module-transforms": "^7.9.0", - "@babel/helpers": "^7.9.0", - "@babel/parser": "^7.9.0", + "@babel/helpers": "^7.9.6", + "@babel/parser": "^7.9.6", "@babel/template": "^7.8.6", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0", + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -60,12 +60,12 @@ } }, "@babel/generator": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.4.tgz", - "integrity": "sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.6.tgz", + "integrity": "sha512-+htwWKJbH2bL72HRluF8zumBxzuX0ZZUFl3JLNyoUjM/Ho8wnVpPXM6aUz8cfKDqQ/h7zHqKt4xzJteUosckqQ==", "dev": true, "requires": { - "@babel/types": "^7.9.0", + "@babel/types": "^7.9.6", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -80,14 +80,14 @@ } }, "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz", + "integrity": "sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==", "dev": true, "requires": { "@babel/helper-get-function-arity": "^7.8.3", "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/types": "^7.9.5" } }, "@babel/helper-get-function-arity": { @@ -148,15 +148,15 @@ "dev": true }, "@babel/helper-replace-supers": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz", - "integrity": "sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.9.6.tgz", + "integrity": "sha512-qX+chbxkbArLyCImk3bWV+jB5gTNU/rsze+JlcF6Nf8tVTigPJSI1o1oBow/9Resa1yehUO9lIipsmu9oG4RzA==", "dev": true, "requires": { "@babel/helper-member-expression-to-functions": "^7.8.3", "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6" } }, "@babel/helper-simple-access": { @@ -179,20 +179,20 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz", - "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==", + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", + "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==", "dev": true }, "@babel/helpers": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", - "integrity": "sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.6.tgz", + "integrity": "sha512-tI4bUbldloLcHWoRUMAj4g1bF313M/o6fBKhIsb3QnGVPwRm9JsNf/gqMkQ7zjqReABiffPV6RWj7hEglID5Iw==", "dev": true, "requires": { "@babel/template": "^7.8.3", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0" + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6" } }, "@babel/highlight": { @@ -207,9 +207,9 @@ } }, "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.6.tgz", + "integrity": "sha512-AoeIEJn8vt+d/6+PXDRPaksYhnlbMIiejioBZvvMQsOjW/JYK6k/0dKnvvP3EhK5GfMBWDPtrxRtegWdAcdq9Q==", "dev": true }, "@babel/plugin-syntax-object-rest-spread": { @@ -233,17 +233,17 @@ } }, "@babel/traverse": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz", - "integrity": "sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.6.tgz", + "integrity": "sha512-b3rAHSjbxy6VEAvlxM8OV/0X4XrG72zoxme6q1MOoe2vd0bEc+TwayhuC1+Dfgqh1QEG+pj7atQqvUprHIccsg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", - "@babel/helper-function-name": "^7.8.3", + "@babel/generator": "^7.9.6", + "@babel/helper-function-name": "^7.9.5", "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.9.0", - "@babel/types": "^7.9.0", + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -267,12 +267,12 @@ } }, "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.6.tgz", + "integrity": "sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.9.0", + "@babel/helper-validator-identifier": "^7.9.5", "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } @@ -1610,12 +1610,12 @@ } }, "@octokit/endpoint": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.0.tgz", - "integrity": "sha512-3nx+MEYoZeD0uJ+7F/gvELLvQJzLXhep2Az0bBSXagbApDvDW0LWwpnAIY/hb0Jwe17A0fJdz0O12dPh05cj7A==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.1.tgz", + "integrity": "sha512-pOPHaSz57SFT/m3R5P8MUu4wLPszokn5pXcB/pzavLTQf2jbU+6iayTvzaY6/BiotuRS0qyEUkx3QglT4U958A==", "dev": true, "requires": { - "@octokit/types": "^2.0.0", + "@octokit/types": "^2.11.1", "is-plain-object": "^3.0.0", "universal-user-agent": "^5.0.0" }, @@ -1678,14 +1678,14 @@ } }, "@octokit/request": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.3.4.tgz", - "integrity": "sha512-qyj8G8BxQyXjt9Xu6NvfvOr1E0l35lsXtwm3SopsYg/JWXjlsnwqLc8rsD2OLguEL/JjLfBvrXr4az7z8Lch2A==", + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.2.tgz", + "integrity": "sha512-zKdnGuQ2TQ2vFk9VU8awFT4+EYf92Z/v3OlzRaSh4RIP0H6cvW1BFPXq4XYvNez+TPQjqN+0uSkCYnMFFhcFrw==", "dev": true, "requires": { - "@octokit/endpoint": "^6.0.0", + "@octokit/endpoint": "^6.0.1", "@octokit/request-error": "^2.0.0", - "@octokit/types": "^2.0.0", + "@octokit/types": "^2.11.1", "deprecation": "^2.0.0", "is-plain-object": "^3.0.0", "node-fetch": "^2.3.0", @@ -1766,18 +1766,18 @@ } }, "@octokit/types": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.5.1.tgz", - "integrity": "sha512-q4Wr7RexkPRrkQpXzUYF5Fj/14Mr65RyOHj6B9d/sQACpqGcStkHZj4qMEtlMY5SnD/69jlL9ItGPbDM0dR/dA==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.15.0.tgz", + "integrity": "sha512-0mnpenB8rLhBVu8VUklp38gWi+EatjvcEcLWcdProMKauSaQWWepOAybZ714sOGsEyhXPlIcHICggn8HUsCXVw==", "dev": true, "requires": { "@types/node": ">= 8" } }, "@types/babel__core": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.6.tgz", - "integrity": "sha512-tTnhWszAqvXnhW7m5jQU9PomXSiKXk2sFxpahXvI20SZKu9ylPi8WtIxueZ6ehDWikPT0jeFujMj3X4ZHuf3Tg==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.7.tgz", + "integrity": "sha512-RL62NqSFPCDK2FM1pSDH0scHpJvsXtZNiYlMB73DgPBaG1E38ZYVL+ei5EkWRbr+KC4YNiAUNBnRj+bgwpgjMw==", "dev": true, "requires": { "@babel/parser": "^7.1.0", @@ -1807,9 +1807,9 @@ } }, "@types/babel__traverse": { - "version": "7.0.9", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.9.tgz", - "integrity": "sha512-jEFQ8L1tuvPjOI8lnpaf73oCJe+aoxL6ygqSy6c8LcW98zaC+4mzWuQIRCEvKeCOu+lbqdXcg4Uqmm1S8AP1tw==", + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.11.tgz", + "integrity": "sha512-ddHK5icION5U6q11+tV2f9Mo6CZVuT8GJKld2q9LqHSZbvLbH34Kcu2yFGckZut453+eQU6btIA3RihmnRgI+Q==", "dev": true, "requires": { "@babel/types": "^7.3.0" @@ -1872,12 +1872,24 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", "dev": true }, + "@types/minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", + "dev": true + }, "@types/node": { "version": "13.13.5", "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.5.tgz", "integrity": "sha512-3ySmiBYJPqgjiHA7oEaIo2Rzz0HrOZ7yrNO5HWyaE5q0lQ3BppDZ3N53Miz8bw2I7gh1/zir2MGVZBvpb1zq9g==", "dev": true }, + "@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "dev": true + }, "@types/stack-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", @@ -1981,9 +1993,9 @@ } }, "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -2084,11 +2096,6 @@ "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", "dev": true }, - "array-filter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", - "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=" - }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -2185,14 +2192,6 @@ "integrity": "sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY=", "dev": true }, - "available-typed-arrays": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz", - "integrity": "sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ==", - "requires": { - "array-filter": "^1.0.0" - } - }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", @@ -2538,22 +2537,14 @@ "dev": true }, "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", "dev": true, "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" } }, "capture-exit": { @@ -2633,9 +2624,9 @@ } }, "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", "dev": true }, "cliui": { @@ -2808,9 +2799,9 @@ "dev": true }, "conventional-changelog-angular": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.6.tgz", - "integrity": "sha512-QDEmLa+7qdhVIv8sFZfVxU1VSyVvnXPsxq8Vam49mKUcO1Z8VTLEJk9uI21uiJUsnmm0I4Hrsdc9TgkOQo9WSA==", + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.10.tgz", + "integrity": "sha512-k7RPPRs0vp8+BtPsM9uDxRl6KcgqtCJmzRD1wRtgqmhQ96g8ifBGo9O/TZBG23jqlXS/rg8BKRDELxfnQQGiaA==", "dev": true, "requires": { "compare-func": "^1.3.1", @@ -2903,24 +2894,24 @@ } }, "conventional-changelog-preset-loader": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.0.tgz", - "integrity": "sha512-/rHb32J2EJnEXeK4NpDgMaAVTFZS3o1ExmjKMtYVgIC4MQn0vkNSbYpdGRotkfGGRWiqk3Ri3FBkiZGbAfIfOQ==", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz", + "integrity": "sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==", "dev": true }, "conventional-changelog-writer": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.11.tgz", - "integrity": "sha512-g81GQOR392I+57Cw3IyP1f+f42ME6aEkbR+L7v1FBBWolB0xkjKTeCWVguzRrp6UiT1O6gBpJbEy2eq7AnV1rw==", + "version": "4.0.16", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.16.tgz", + "integrity": "sha512-jmU1sDJDZpm/dkuFxBeRXvyNcJQeKhGtVcFFkwTphUAzyYWcwz2j36Wcv+Mv2hU3tpvLMkysOPXJTLO55AUrYQ==", "dev": true, "requires": { "compare-func": "^1.3.1", - "conventional-commits-filter": "^2.0.2", + "conventional-commits-filter": "^2.0.6", "dateformat": "^3.0.0", - "handlebars": "^4.4.0", + "handlebars": "^4.7.6", "json-stringify-safe": "^5.0.1", "lodash": "^4.17.15", - "meow": "^5.0.0", + "meow": "^7.0.0", "semver": "^6.0.0", "split": "^1.0.0", "through2": "^3.0.0" @@ -2944,9 +2935,9 @@ } }, "conventional-commits-filter": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.2.tgz", - "integrity": "sha512-WpGKsMeXfs21m1zIw4s9H5sys2+9JccTzpN6toXtxhpw2VNF2JUXwIakthKBy+LN4DvJm+TzWhxOMWOs1OFCFQ==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.6.tgz", + "integrity": "sha512-4g+sw8+KA50/Qwzfr0hL5k5NWxqtrOVw4DDk3/h6L85a9Gz0/Eqp3oP+CWCNfesBvZZZEFHF7OTEbRe+yYSyKw==", "dev": true, "requires": { "lodash.ismatch": "^4.4.0", @@ -2954,15 +2945,15 @@ } }, "conventional-commits-parser": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.8.tgz", - "integrity": "sha512-YcBSGkZbYp7d+Cr3NWUeXbPDFUN6g3SaSIzOybi8bjHL5IJ5225OSCxJJ4LgziyEJ7AaJtE9L2/EU6H7Nt/DDQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.1.0.tgz", + "integrity": "sha512-RSo5S0WIwXZiRxUGTPuYFbqvrR4vpJ1BDdTlthFgvHt5kEdnd1+pdvwWphWn57/oIl4V72NMmOocFqqJ8mFFhA==", "dev": true, "requires": { "JSONStream": "^1.0.4", "is-text-path": "^1.0.1", "lodash": "^4.17.15", - "meow": "^5.0.0", + "meow": "^7.0.0", "split2": "^2.0.0", "through2": "^3.0.0", "trim-off-newlines": "^1.0.0" @@ -2995,6 +2986,23 @@ "q": "^1.5.1" }, "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, "concat-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", @@ -3016,6 +3024,12 @@ "locate-path": "^2.0.0" } }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", @@ -3026,6 +3040,12 @@ "path-exists": "^3.0.0" } }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, "meow": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", @@ -3043,6 +3063,16 @@ "trim-newlines": "^2.0.0" } }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, "p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", @@ -3067,6 +3097,12 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, "read-pkg-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", @@ -3087,6 +3123,28 @@ "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true } } }, @@ -3279,34 +3337,6 @@ "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", "dev": true }, - "deep-equal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.3.tgz", - "integrity": "sha512-Spqdl4H+ky45I9ByyJtXteOm9CaIrPmnIPmOhrkKGNYWeDgCvJ8jNYVCTjChxW4FqGuZnLHADc8EKRMX6+CgvA==", - "requires": { - "es-abstract": "^1.17.5", - "es-get-iterator": "^1.1.0", - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.2", - "is-regex": "^1.0.5", - "isarray": "^2.0.5", - "object-is": "^1.1.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "regexp.prototype.flags": "^1.3.0", - "side-channel": "^1.0.2", - "which-boxed-primitive": "^1.0.1", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.2" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - } - } - }, "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", @@ -3326,6 +3356,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, "requires": { "object-keys": "^1.0.12" } @@ -3503,9 +3534,9 @@ "dev": true }, "envinfo": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.5.0.tgz", - "integrity": "sha512-jDgnJaF/Btomk+m3PZDTTCb5XIIIX3zYItnCRfF73zVgvinLoRomuhi75Y4su0PtQxWz4v66XnLLckyvyJTOIQ==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.5.1.tgz", + "integrity": "sha512-hQBkDf2iO4Nv0CNHpCuSBeaSrveU6nThVxFGTrq/eDlV716UQk09zChaJae4mZRsos1x4YLY2TaH3LHUae3ZmQ==", "dev": true }, "err-code": { @@ -3527,6 +3558,7 @@ "version": "1.17.5", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", + "dev": true, "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -3541,31 +3573,11 @@ "string.prototype.trimright": "^2.1.1" } }, - "es-get-iterator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.0.tgz", - "integrity": "sha512-UfrmHuWQlNMTs35e1ypnvikg6jCz3SK8v8ImvmDsh36fCVUR1MqoFDiyn0/k52C8NqO3YsO8Oe0azeesNuqSsQ==", - "requires": { - "es-abstract": "^1.17.4", - "has-symbols": "^1.0.1", - "is-arguments": "^1.0.4", - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-string": "^1.0.5", - "isarray": "^2.0.5" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - } - } - }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -3949,11 +3961,6 @@ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", "dev": true }, - "foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" - }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -3971,11 +3978,6 @@ "mime-types": "^2.1.12" } }, - "form-urlencoded": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/form-urlencoded/-/form-urlencoded-4.1.3.tgz", - "integrity": "sha512-z0YJtPuq0BSOrErlpj+o1KHTRaOH6LN16043ZVK2Wk5uUGpX308PJ5ZJDtU++ndoZkzASHVclUTD2mb1jHzqlA==" - }, "fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", @@ -4034,626 +4036,21 @@ "dev": true }, "fsevents": { - "version": "1.2.12", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz", - "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", "dev": true, "optional": true, "requires": { "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": false, - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": false, - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "resolved": false, - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": false, - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": false, - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": false, - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": false, - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": false, - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": false, - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "resolved": false, - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": false, - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": false, - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": false, - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "resolved": false, - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": false, - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": false, - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": false, - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "resolved": false, - "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": false, - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": false, - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "resolved": false, - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": false, - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": false, - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "resolved": false, - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": false, - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.3", - "resolved": false, - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", - "dev": true, - "optional": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "ms": { - "version": "2.1.2", - "resolved": false, - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.3", - "resolved": false, - "integrity": "sha512-EkY0GeSq87rWp1hoq/sH/wnTWgFVhYlnIkbJ0YJFfRgEFlz2RraCjBpFQ+vrEgEdp0ThfyHADmkChEhcb7PKyw==", - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "resolved": false, - "integrity": "sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==", - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.3", - "resolved": false, - "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "resolved": false, - "integrity": "sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==", - "dev": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": false, - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.8", - "resolved": false, - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": false, - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": false, - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": false, - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": false, - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "resolved": false, - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": false, - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": false, - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "resolved": false, - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "readable-stream": { - "version": "2.3.7", - "resolved": false, - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "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" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": false, - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": false, - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": false, - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "resolved": false, - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "resolved": false, - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": false, - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": false, - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": false, - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": false, - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "resolved": false, - "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": false, - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "resolved": false, - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true, - "optional": true - } + "nan": "^2.12.1" } }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, "gauge": { "version": "2.7.4", @@ -4952,6 +4349,23 @@ "through2": "^2.0.0" }, "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", @@ -4961,6 +4375,12 @@ "locate-path": "^2.0.0" } }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", @@ -4971,6 +4391,12 @@ "path-exists": "^3.0.0" } }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, "meow": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", @@ -4988,6 +4414,16 @@ "trim-newlines": "^2.0.0" } }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, "p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", @@ -5012,6 +4448,12 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, "read-pkg-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", @@ -5021,6 +4463,28 @@ "find-up": "^2.0.0", "read-pkg": "^3.0.0" } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true } } }, @@ -5052,6 +4516,23 @@ "semver": "^6.0.0" }, "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", @@ -5061,6 +4542,12 @@ "locate-path": "^2.0.0" } }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", @@ -5071,6 +4558,12 @@ "path-exists": "^3.0.0" } }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, "meow": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", @@ -5088,6 +4581,16 @@ "trim-newlines": "^2.0.0" } }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, "p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", @@ -5112,6 +4615,12 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, "read-pkg-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", @@ -5122,11 +4631,33 @@ "read-pkg": "^3.0.0" } }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true } } }, @@ -5218,9 +4749,9 @@ } }, "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", "dev": true }, "graphql": { @@ -5232,29 +4763,6 @@ "iterall": "^1.2.2" } }, - "graphql-input-number": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/graphql-input-number/-/graphql-input-number-0.0.10.tgz", - "integrity": "sha1-UJscH7W67virUWp8gsQNzruPg1g=" - }, - "graphql-input-string": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/graphql-input-string/-/graphql-input-string-0.0.16.tgz", - "integrity": "sha1-bHkIpcIcXRwk153dKa5IKbQJWUk=" - }, - "graphql-subscriptions": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/graphql-subscriptions/-/graphql-subscriptions-1.1.0.tgz", - "integrity": "sha512-6WzlBFC0lWmXJbIVE8OgFgXIP4RJi3OQgTPa0DVMsDXdpRDjTsM1K9wfl5HSYX7R87QAGlvcv2Y4BIZa/ItonA==", - "requires": { - "iterall": "^1.2.1" - } - }, - "graphql-type-json": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/graphql-type-json/-/graphql-type-json-0.3.1.tgz", - "integrity": "sha512-1lPkUXQ2L8o+ERLzVAuc3rzc/E6pGF+6HnjihCVTK0VzR0jCuUd92FqNxoHdfILXqOn2L6b4y47TBxiPyieUVA==" - }, "growly": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", @@ -5262,15 +4770,16 @@ "dev": true }, "handlebars": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.3.tgz", - "integrity": "sha512-SRGwSYuNfx8DwHD/6InAPzD6RgeruWLT+B8e8a7gGs8FWgHzlExpTFMEq2IA6QpAfOClpKHy6+8IqTjeBCu6Kg==", + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "dev": true, "requires": { + "minimist": "^1.2.5", "neo-async": "^2.6.0", - "optimist": "^0.6.1", "source-map": "^0.6.1", - "uglify-js": "^3.1.4" + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" } }, "har-schema": { @@ -5289,10 +4798,17 @@ "har-schema": "^2.0.0" } }, + "hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true + }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -5306,7 +4822,8 @@ "has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true }, "has-unicode": { "version": "2.0.1", @@ -5498,9 +5015,9 @@ "dev": true }, "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, "infer-owner": { @@ -5632,27 +5149,12 @@ } } }, - "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==" - }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, - "is-bigint": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.0.tgz", - "integrity": "sha512-t5mGUXC/xRheCK431ylNiSkGGpBp8bHENBcENTkDT6ppwPzEVxNGZRvgvmOEfbWkFhA7D2GEuE2mmQTr78sl2g==" - }, - "is-boolean-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.0.1.tgz", - "integrity": "sha512-TqZuVwa/sppcrhUCAYkGBk7w0yxfQQnxq28fjkO53tnK9FQXmdwz2JS5+GjsWQ6RByES1K40nI+yDic5c9/aAQ==" - }, "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", @@ -5662,7 +5164,8 @@ "is-callable": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==" + "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", + "dev": true }, "is-ci": { "version": "2.0.0", @@ -5696,7 +5199,8 @@ "is-date-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true }, "is-descriptor": { "version": "0.1.6", @@ -5762,11 +5266,6 @@ "is-extglob": "^2.1.1" } }, - "is-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.1.tgz", - "integrity": "sha512-T/S49scO8plUiAOA2DBTBG3JHpn1yiw0kRp6dgiZ0v2/6twi5eiB0rHtHFH9ZIrvlWc6+4O+m4zg5+Z833aXgw==" - }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -5787,11 +5286,6 @@ } } }, - "is-number-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", - "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==" - }, "is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", @@ -5813,25 +5307,15 @@ "isobject": "^3.0.1" } }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, "is-regex": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", + "dev": true, "requires": { "has": "^1.0.3" } }, - "is-set": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.1.tgz", - "integrity": "sha512-eJEzOtVyenDs1TMzSQ3kU3K+E0GUS9sno+F0OBT97xsgcJsF9nXMBtkT9/kut5JEpM7oL7X/0qxR17K3mcwIAA==" - }, "is-ssh": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.1.tgz", @@ -5847,15 +5331,11 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, - "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==" - }, "is-symbol": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, "requires": { "has-symbols": "^1.0.1" } @@ -5869,17 +5349,6 @@ "text-extensions": "^1.0.0" } }, - "is-typed-array": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.3.tgz", - "integrity": "sha512-BSYUBOK/HJibQ30wWkWold5txYwMUXQct9YHAQJr8fSwvZoiglcqB0pd7vEN23+Tsi9IUEjztdOSzl4qLVYGTQ==", - "requires": { - "available-typed-arrays": "^1.0.0", - "es-abstract": "^1.17.4", - "foreach": "^2.0.5", - "has-symbols": "^1.0.1" - } - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -5892,16 +5361,6 @@ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "dev": true }, - "is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==" - }, - "is-weakset": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.1.tgz", - "integrity": "sha512-pi4vhbhVHGLxohUw7PhGsueT4vRGFoXhP7+RGN0jKIv9+8PWYCQTqtADngrxOm2g46hoH0+g8uZZBzMrvVGDmw==" - }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -6031,7 +5490,8 @@ "iterall": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.3.0.tgz", - "integrity": "sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==" + "integrity": "sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==", + "dev": true }, "jest": { "version": "24.9.0", @@ -6546,9 +6006,9 @@ "dev": true }, "json5": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.2.tgz", - "integrity": "sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -6569,11 +6029,6 @@ "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", "dev": true }, - "jsonpath-plus": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-4.0.0.tgz", - "integrity": "sha512-e0Jtg4KAzDJKKwzbLaUtinCn0RZseWBVRTRGihSpvFlM3wTR7ExSp+PTdeTsDrLNJUe7L7JYJe8mblHX5SCT6A==" - }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -6646,6 +6101,12 @@ "type-check": "~0.3.2" } }, + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, "load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -6834,9 +6295,9 @@ "dev": true }, "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", + "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", "dev": true }, "map-visit": { @@ -6849,88 +6310,130 @@ } }, "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-7.0.0.tgz", + "integrity": "sha512-He6nRo6zYQtzdm0rUKRjpc+V2uvfUnz76i2zxosiLrAvKhk9dSRqWabL/3fNZv9hpb3PQIJNym0M0pzPZa0pvw==", "dev": true, "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" + "@types/minimist": "^1.2.0", + "arrify": "^2.0.1", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "^4.0.2", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.13.1", + "yargs-parser": "^18.1.3" }, "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true }, "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "locate-path": "^2.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "p-try": "^1.0.0" + "p-limit": "^2.2.0" } }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "parse-json": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", + "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", "dev": true, "requires": { - "p-limit": "^1.1.0" + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" } }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true + } + } + }, "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "dependencies": { + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + } } }, + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true + }, "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { - "camelcase": "^4.1.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } @@ -6969,18 +6472,18 @@ } }, "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", "dev": true }, "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "dev": true, "requires": { - "mime-db": "1.43.0" + "mime-db": "1.44.0" } }, "mimic-fn": { @@ -6989,6 +6492,12 @@ "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "dev": true }, + "min-indent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.0.tgz", + "integrity": "sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY=", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -7005,9 +6514,9 @@ "dev": true }, "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.0.2.tgz", + "integrity": "sha512-seq4hpWkYSUh1y7NXxzucwAN9yVlBc3Upgdjz8vLCP97jG8kaOmzYrVH/m7tQ1NYD1wdtZbSLfdy4zFmRWuc/w==", "dev": true, "requires": { "arrify": "^1.0.1", @@ -7073,9 +6582,9 @@ } }, "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -7146,9 +6655,9 @@ } }, "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", "dev": true, "optional": true }, @@ -7439,21 +6948,14 @@ "object-inspect": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" - }, - "object-is": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", - "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", + "dev": true }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true }, "object-visit": { "version": "1.0.1", @@ -7468,6 +6970,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -7518,24 +7021,6 @@ "mimic-fn": "^1.0.0" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - } - } - }, "optionator": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", @@ -7598,9 +7083,9 @@ "dev": true }, "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -7961,9 +7446,9 @@ "dev": true }, "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true }, "react-is": { @@ -8072,13 +7557,13 @@ } }, "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "dev": true, "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" } }, "regex-not": { @@ -8091,15 +7576,6 @@ "safe-regex": "^1.1.0" } }, - "regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", @@ -8188,9 +7664,9 @@ "dev": true }, "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, "requires": { "path-parse": "^1.0.6" @@ -8255,13 +7731,10 @@ "dev": true }, "run-async": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", - "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true }, "run-queue": { "version": "1.0.3", @@ -8273,9 +7746,9 @@ } }, "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz", + "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -8390,15 +7863,6 @@ "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", "dev": true }, - "side-channel": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.2.tgz", - "integrity": "sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==", - "requires": { - "es-abstract": "^1.17.0-next.1", - "object-inspect": "^1.7.0" - } - }, "signal-exit": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", @@ -8602,9 +8066,9 @@ } }, "source-map-support": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", - "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -8628,9 +8092,9 @@ } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { @@ -8795,22 +8259,46 @@ "strip-ansi": "^5.1.0" } }, + "string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, "string.prototype.trimleft": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", - "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz", + "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==", + "dev": true, "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5", + "string.prototype.trimstart": "^1.0.0" } }, "string.prototype.trimright": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", - "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz", + "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==", + "dev": true, "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5", + "string.prototype.trimend": "^1.0.0" + } + }, + "string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" } }, "string_decoder": { @@ -8844,10 +8332,13 @@ "dev": true }, "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } }, "strong-log-transformer": { "version": "2.1.0", @@ -9062,9 +8553,9 @@ } }, "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", + "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", "dev": true }, "trim-off-newlines": { @@ -9109,9 +8600,9 @@ } }, "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.2.tgz", + "integrity": "sha512-tTSkux6IGPnUGUd1XAZHcpu85MOkIl5zX49pO+jfsie3eP0B6pyhOlLXm3cAC6T7s+euSDDUUV+Acop5WmtkVg==", "dev": true }, "tunnel-agent": { @@ -9157,14 +8648,13 @@ "dev": true }, "uglify-js": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.8.0.tgz", - "integrity": "sha512-ugNSTT8ierCsDHso2jkBHXYrU8Y5/fY2ZUprfrJUiD7YpuFvV4jODLFmb3h4btQjqr5Nh4TX4XtgDfCU1WdioQ==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.2.tgz", + "integrity": "sha512-zGVwKslUAD/EeqOrD1nQaBmXIHl1Vw371we8cvS8I6mYK9rmgX5tv8AAeJdfsQ3Kk5mGax2SVV/AizxdNGhl7Q==", "dev": true, "optional": true, "requires": { - "commander": "~2.20.3", - "source-map": "~0.6.1" + "commander": "~2.20.3" } }, "uid-number": { @@ -9422,48 +8912,12 @@ "isexe": "^2.0.0" } }, - "which-boxed-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.1.tgz", - "integrity": "sha512-7BT4TwISdDGBgaemWU0N0OU7FeAEJ9Oo2P1PHRm/FCWoEi2VLWC9b6xvxAA3C/NMpxg3HXVgi0sMmGbNUbNepQ==", - "requires": { - "is-bigint": "^1.0.0", - "is-boolean-object": "^1.0.0", - "is-number-object": "^1.0.3", - "is-string": "^1.0.4", - "is-symbol": "^1.0.2" - } - }, - "which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "requires": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - } - }, "which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, - "which-typed-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.2.tgz", - "integrity": "sha512-KT6okrd1tE6JdZAy3o2VhMoYPh3+J6EMZLyrxBQsZflI1QCZIxMrIYLkosd8Twf+YfknVIHmYQPgJt238p8dnQ==", - "requires": { - "available-typed-arrays": "^1.0.2", - "es-abstract": "^1.17.5", - "foreach": "^2.0.5", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.1", - "is-typed-array": "^1.1.3" - } - }, "wide-align": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", @@ -9501,9 +8955,9 @@ } }, "windows-release": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz", - "integrity": "sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.0.tgz", + "integrity": "sha512-2HetyTg1Y+R+rUgrKeUEhAG/ZuOmTrI1NBb3ZyAGQMYmOJjBBPe4MTodghRkmLJZHwkuPi02anbeGP+Zf401LQ==", "dev": true, "requires": { "execa": "^1.0.0" @@ -9516,9 +8970,9 @@ "dev": true }, "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", "dev": true }, "wrap-ansi": { diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index 89ed9d63..1c450230 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -47,18 +47,18 @@ exports.mitigations = { * check if a literal is falsy or not */ const isLiteralFalsey = (variable) => { - return (variable === "" || variable === false || variable === 0); + return variable === '' || variable === false || variable === 0; }; /** * provide the name of primitive and/or reference types */ const checkTypeName = (target, type) => { - let typeName = ""; + let typeName = ''; if (isLiteralFalsey(target)) { - typeName = (typeof target); + typeName = typeof target; } else { - typeName = ("" + (target && target.constructor.name)); + typeName = '' + (target && target.constructor.name); } return !!(typeName.toLowerCase().indexOf(type) + 1); }; diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index 6ba7fe8f..321a54e3 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/package-lock.json b/packages/openapi-to-graphql/package-lock.json index e24d210c..68224d42 100644 --- a/packages/openapi-to-graphql/package-lock.json +++ b/packages/openapi-to-graphql/package-lock.json @@ -13,19 +13,19 @@ } }, "@babel/core": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", - "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.6.tgz", + "integrity": "sha512-nD3deLvbsApbHAHttzIssYqgb883yU/d9roe4RZymBCDaZryMJDbptVpEpeQuRh4BJ+SYI8le9YGxKvFEvl1Wg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", + "@babel/generator": "^7.9.6", "@babel/helper-module-transforms": "^7.9.0", - "@babel/helpers": "^7.9.0", - "@babel/parser": "^7.9.0", + "@babel/helpers": "^7.9.6", + "@babel/parser": "^7.9.6", "@babel/template": "^7.8.6", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0", + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -45,12 +45,12 @@ } }, "@babel/generator": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.4.tgz", - "integrity": "sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.6.tgz", + "integrity": "sha512-+htwWKJbH2bL72HRluF8zumBxzuX0ZZUFl3JLNyoUjM/Ho8wnVpPXM6aUz8cfKDqQ/h7zHqKt4xzJteUosckqQ==", "dev": true, "requires": { - "@babel/types": "^7.9.0", + "@babel/types": "^7.9.6", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -65,14 +65,14 @@ } }, "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz", + "integrity": "sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==", "dev": true, "requires": { "@babel/helper-get-function-arity": "^7.8.3", "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/types": "^7.9.5" } }, "@babel/helper-get-function-arity": { @@ -133,15 +133,15 @@ "dev": true }, "@babel/helper-replace-supers": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz", - "integrity": "sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.9.6.tgz", + "integrity": "sha512-qX+chbxkbArLyCImk3bWV+jB5gTNU/rsze+JlcF6Nf8tVTigPJSI1o1oBow/9Resa1yehUO9lIipsmu9oG4RzA==", "dev": true, "requires": { "@babel/helper-member-expression-to-functions": "^7.8.3", "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6" } }, "@babel/helper-simple-access": { @@ -164,19 +164,19 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz", - "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==" + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", + "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==" }, "@babel/helpers": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", - "integrity": "sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.6.tgz", + "integrity": "sha512-tI4bUbldloLcHWoRUMAj4g1bF313M/o6fBKhIsb3QnGVPwRm9JsNf/gqMkQ7zjqReABiffPV6RWj7hEglID5Iw==", "dev": true, "requires": { "@babel/template": "^7.8.3", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0" + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6" } }, "@babel/highlight": { @@ -190,11 +190,20 @@ } }, "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.6.tgz", + "integrity": "sha512-AoeIEJn8vt+d/6+PXDRPaksYhnlbMIiejioBZvvMQsOjW/JYK6k/0dKnvvP3EhK5GfMBWDPtrxRtegWdAcdq9Q==", "dev": true }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, "@babel/plugin-syntax-bigint": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", @@ -204,6 +213,51 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-class-properties": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.8.3.tgz", + "integrity": "sha512-UcAyQWg2bAN647Q+O811tG9MrJ38Z10jjhQdKNAL8fsyPzE3cCN/uT+f55cFVY4aGO4jqJAvmqsuY3GQDwAoXg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.8.3.tgz", + "integrity": "sha512-Zpg2Sgc++37kuFl6ppq2Q7Awc6E6AIW671x5PY8E/f7MCIyPPGK/EoeZXvvY3P42exZ3Q4/t3YOzP/HiN79jDg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.8.3.tgz", + "integrity": "sha512-H7dCMAdN83PcCmqmkHB5dtp+Xa9a6LKSvA2hiFBC/5alSHxM5VgWZXFqDi0YFe8XNGT6iCa+z4V4zSt/PdZ7Dw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, "@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", @@ -213,10 +267,28 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, "@babel/runtime": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz", - "integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.6.tgz", + "integrity": "sha512-64AF1xY3OAkFHqOb9s4jpgk1Mm5vDZ4L3acHvAml+53nO1XbXLuDodsVpO4OIUsmemlUHMxNdYMNJmsvOwLrvQ==", "requires": { "regenerator-runtime": "^0.13.4" } @@ -233,29 +305,29 @@ } }, "@babel/traverse": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz", - "integrity": "sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.6.tgz", + "integrity": "sha512-b3rAHSjbxy6VEAvlxM8OV/0X4XrG72zoxme6q1MOoe2vd0bEc+TwayhuC1+Dfgqh1QEG+pj7atQqvUprHIccsg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", - "@babel/helper-function-name": "^7.8.3", + "@babel/generator": "^7.9.6", + "@babel/helper-function-name": "^7.9.5", "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.9.0", - "@babel/types": "^7.9.0", + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" } }, "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.6.tgz", + "integrity": "sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.9.0", + "@babel/helper-validator-identifier": "^7.9.5", "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } @@ -288,40 +360,6 @@ "resolve-from": "^5.0.0" }, "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, "resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", @@ -337,14 +375,15 @@ "dev": true }, "@jest/console": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.2.6.tgz", - "integrity": "sha512-bGp+0PicZVCEhb+ifnW9wpKWONNdkhtJsRE7ap729hiAfTvCN6VhGx0s/l/V/skA2pnyqq+N/7xl9ZWfykDpsg==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", "dev": true, "requires": { - "@jest/source-map": "^25.2.6", + "@jest/types": "^25.5.0", "chalk": "^3.0.0", - "jest-util": "^25.2.6", + "jest-message-util": "^25.5.0", + "jest-util": "^25.5.0", "slash": "^3.0.0" }, "dependencies": { @@ -401,33 +440,33 @@ } }, "@jest/core": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-25.2.7.tgz", - "integrity": "sha512-Nd6ELJyR+j0zlwhzkfzY70m04hAur0VnMwJXVe4VmmD/SaQ6DEyal++ERQ1sgyKIKKEqRuui6k/R0wHLez4P+g==", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-25.5.4.tgz", + "integrity": "sha512-3uSo7laYxF00Dg/DMgbn4xMJKmDdWvZnf89n8Xj/5/AeQ2dOQmn6b6Hkj/MleyzZWXpwv+WSdYWl4cLsy2JsoA==", "dev": true, "requires": { - "@jest/console": "^25.2.6", - "@jest/reporters": "^25.2.6", - "@jest/test-result": "^25.2.6", - "@jest/transform": "^25.2.6", - "@jest/types": "^25.2.6", + "@jest/console": "^25.5.0", + "@jest/reporters": "^25.5.1", + "@jest/test-result": "^25.5.0", + "@jest/transform": "^25.5.1", + "@jest/types": "^25.5.0", "ansi-escapes": "^4.2.1", "chalk": "^3.0.0", "exit": "^0.1.2", - "graceful-fs": "^4.2.3", - "jest-changed-files": "^25.2.6", - "jest-config": "^25.2.7", - "jest-haste-map": "^25.2.6", - "jest-message-util": "^25.2.6", + "graceful-fs": "^4.2.4", + "jest-changed-files": "^25.5.0", + "jest-config": "^25.5.4", + "jest-haste-map": "^25.5.1", + "jest-message-util": "^25.5.0", "jest-regex-util": "^25.2.6", - "jest-resolve": "^25.2.6", - "jest-resolve-dependencies": "^25.2.7", - "jest-runner": "^25.2.7", - "jest-runtime": "^25.2.7", - "jest-snapshot": "^25.2.7", - "jest-util": "^25.2.6", - "jest-validate": "^25.2.6", - "jest-watcher": "^25.2.7", + "jest-resolve": "^25.5.1", + "jest-resolve-dependencies": "^25.5.4", + "jest-runner": "^25.5.4", + "jest-runtime": "^25.5.4", + "jest-snapshot": "^25.5.1", + "jest-util": "^25.5.0", + "jest-validate": "^25.5.0", + "jest-watcher": "^25.5.0", "micromatch": "^4.0.2", "p-each-series": "^2.1.0", "realpath-native": "^2.0.0", @@ -436,12 +475,6 @@ "strip-ansi": "^6.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", @@ -483,15 +516,6 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", @@ -504,59 +528,71 @@ } }, "@jest/environment": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.2.6.tgz", - "integrity": "sha512-17WIw+wCb9drRNFw1hi8CHah38dXVdOk7ga9exThhGtXlZ9mK8xH4DjSB9uGDGXIWYSHmrxoyS6KJ7ywGr7bzg==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.5.0.tgz", + "integrity": "sha512-U2VXPEqL07E/V7pSZMSQCvV5Ea4lqOlT+0ZFijl/i316cRMHvZ4qC+jBdryd+lmRetjQo0YIQr6cVPNxxK87mA==", "dev": true, "requires": { - "@jest/fake-timers": "^25.2.6", - "@jest/types": "^25.2.6", - "jest-mock": "^25.2.6" + "@jest/fake-timers": "^25.5.0", + "@jest/types": "^25.5.0", + "jest-mock": "^25.5.0" } }, "@jest/fake-timers": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.2.6.tgz", - "integrity": "sha512-A6qtDIA2zg/hVgUJJYzQSHFBIp25vHdSxW/s4XmTJAYxER6eL0NQdQhe4+232uUSviKitubHGXXirt5M7blPiA==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz", + "integrity": "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==", "dev": true, "requires": { - "@jest/types": "^25.2.6", - "jest-message-util": "^25.2.6", - "jest-mock": "^25.2.6", - "jest-util": "^25.2.6", + "@jest/types": "^25.5.0", + "jest-message-util": "^25.5.0", + "jest-mock": "^25.5.0", + "jest-util": "^25.5.0", "lolex": "^5.0.0" } }, + "@jest/globals": { + "version": "25.5.2", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-25.5.2.tgz", + "integrity": "sha512-AgAS/Ny7Q2RCIj5kZ+0MuKM1wbF0WMLxbCVl/GOMoCNbODRdJ541IxJ98xnZdVSZXivKpJlNPIWa3QmY0l4CXA==", + "dev": true, + "requires": { + "@jest/environment": "^25.5.0", + "@jest/types": "^25.5.0", + "expect": "^25.5.0" + } + }, "@jest/reporters": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.2.6.tgz", - "integrity": "sha512-DRMyjaxcd6ZKctiXNcuVObnPwB1eUs7xrUVu0J2V0p5/aZJei5UM9GL3s/bmN4hRV8Mt3zXh+/9X2o0Q4ClZIA==", + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.5.1.tgz", + "integrity": "sha512-3jbd8pPDTuhYJ7vqiHXbSwTJQNavczPs+f1kRprRDxETeE3u6srJ+f0NPuwvOmk+lmunZzPkYWIFZDLHQPkviw==", "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^25.2.6", - "@jest/test-result": "^25.2.6", - "@jest/transform": "^25.2.6", - "@jest/types": "^25.2.6", + "@jest/console": "^25.5.0", + "@jest/test-result": "^25.5.0", + "@jest/transform": "^25.5.1", + "@jest/types": "^25.5.0", "chalk": "^3.0.0", "collect-v8-coverage": "^1.0.0", "exit": "^0.1.2", "glob": "^7.1.2", + "graceful-fs": "^4.2.4", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.0", "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.0", - "jest-haste-map": "^25.2.6", - "jest-resolve": "^25.2.6", - "jest-util": "^25.2.6", - "jest-worker": "^25.2.6", + "istanbul-reports": "^3.0.2", + "jest-haste-map": "^25.5.1", + "jest-resolve": "^25.5.1", + "jest-util": "^25.5.0", + "jest-worker": "^25.5.0", "node-notifier": "^6.0.0", "slash": "^3.0.0", "source-map": "^0.6.0", "string-length": "^3.1.0", "terminal-link": "^2.0.0", - "v8-to-istanbul": "^4.0.1" + "v8-to-istanbul": "^4.1.3" }, "dependencies": { "ansi-styles": { @@ -612,56 +648,57 @@ } }, "@jest/source-map": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.2.6.tgz", - "integrity": "sha512-VuIRZF8M2zxYFGTEhkNSvQkUKafQro4y+mwUxy5ewRqs5N/ynSFUODYp3fy1zCnbCMy1pz3k+u57uCqx8QRSQQ==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.5.0.tgz", + "integrity": "sha512-eIGx0xN12yVpMcPaVpjXPnn3N30QGJCJQSkEDUt9x1fI1Gdvb07Ml6K5iN2hG7NmMP6FDmtPEssE3z6doOYUwQ==", "dev": true, "requires": { "callsites": "^3.0.0", - "graceful-fs": "^4.2.3", + "graceful-fs": "^4.2.4", "source-map": "^0.6.0" } }, "@jest/test-result": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.2.6.tgz", - "integrity": "sha512-gmGgcF4qz/pkBzyfJuVHo2DA24kIgVQ5Pf/VpW4QbyMLSegi8z+9foSZABfIt5se6k0fFj/3p/vrQXdaOgit0w==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", "dev": true, "requires": { - "@jest/console": "^25.2.6", - "@jest/types": "^25.2.6", + "@jest/console": "^25.5.0", + "@jest/types": "^25.5.0", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" } }, "@jest/test-sequencer": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.2.7.tgz", - "integrity": "sha512-s2uYGOXONDSTJQcZJ9A3Zkg3hwe53RlX1HjUNqjUy3HIqwgwCKJbnAKYsORPbhxXi3ARMKA7JNBi9arsTxXoYw==", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.5.4.tgz", + "integrity": "sha512-pTJGEkSeg1EkCO2YWq6hbFvKNXk8ejqlxiOg1jBNLnWrgXOkdY6UmqZpwGFXNnRt9B8nO1uWMzLLZ4eCmhkPNA==", "dev": true, "requires": { - "@jest/test-result": "^25.2.6", - "jest-haste-map": "^25.2.6", - "jest-runner": "^25.2.7", - "jest-runtime": "^25.2.7" + "@jest/test-result": "^25.5.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^25.5.1", + "jest-runner": "^25.5.4", + "jest-runtime": "^25.5.4" } }, "@jest/transform": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.2.6.tgz", - "integrity": "sha512-rZnjCjZf9avPOf9q/w9RUZ9Uc29JmB53uIXNJmNz04QbDMD5cR/VjfikiMKajBsXe2vnFl5sJ4RTt+9HPicauQ==", + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.5.1.tgz", + "integrity": "sha512-Y8CEoVwXb4QwA6Y/9uDkn0Xfz0finGkieuV0xkdF9UtZGJeLukD5nLkaVrVsODB1ojRWlaoD0AJZpVHCSnJEvg==", "dev": true, "requires": { "@babel/core": "^7.1.0", - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "babel-plugin-istanbul": "^6.0.0", "chalk": "^3.0.0", "convert-source-map": "^1.4.0", "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.2.6", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^25.5.1", "jest-regex-util": "^25.2.6", - "jest-util": "^25.2.6", + "jest-util": "^25.5.0", "micromatch": "^4.0.2", "pirates": "^4.0.1", "realpath-native": "^2.0.0", @@ -723,9 +760,9 @@ } }, "@jest/types": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.2.6.tgz", - "integrity": "sha512-myJTTV37bxK7+3NgKc4Y/DlQ5q92/NOwZsZ+Uch7OXdElxOg61QYc72fPYNAjlvbnJ2YvbXLamIsa9tj48BmyQ==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", + "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", "dev": true, "requires": { "@types/istanbul-lib-coverage": "^2.0.0", @@ -786,15 +823,30 @@ } } }, + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true + }, "@sinonjs/commons": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.1.tgz", - "integrity": "sha512-Debi3Baff1Qu1Unc3mjJ96MgpbwTn43S1+9yJ0llWygPwDNu2aaWBD6yc9y/Z8XDRNhx7U+u2UDg2OGQXkclUQ==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.2.tgz", + "integrity": "sha512-+DUO6pnp3udV/v2VfUWgaY5BIE1IfT7lLfeDzPVeMT1XKkaAp9LgSI9x5RtrFQoZ9Oi0PgXQQHPaoKu7dCjVxw==", "dev": true, "requires": { "type-detect": "4.0.8" } }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "requires": { + "defer-to-connect": "^1.0.1" + } + }, "@types/babel__core": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.7.tgz", @@ -828,9 +880,9 @@ } }, "@types/babel__traverse": { - "version": "7.0.10", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.10.tgz", - "integrity": "sha512-74fNdUGrWsgIB/V9kTO5FGHPWYY6Eqn+3Z7L6Hc4e/BxjYV7puvBqp5HwsVYYfLm6iURYBNCx4Ut37OF9yitCw==", + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.11.tgz", + "integrity": "sha512-ddHK5icION5U6q11+tV2f9Mo6CZVuT8GJKld2q9LqHSZbvLbH34Kcu2yFGckZut453+eQU6btIA3RihmnRgI+Q==", "dev": true, "requires": { "@babel/types": "^7.3.0" @@ -845,8 +897,16 @@ "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" + }, + "@types/graceful-fs": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.3.tgz", + "integrity": "sha512-AiHRaEB50LQg0pZmm659vNBb9f4SJ0qrAnteuzhSeAUcJKxoYgEnprg/83kppCnc2zvtCKbdZry1a5pVY3lOTQ==", + "dev": true, + "requires": { + "@types/node": "*" + } }, "@types/graphql": { "version": "14.5.0", @@ -899,9 +959,15 @@ "dev": true }, "@types/node": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.11.0.tgz", - "integrity": "sha512-uM4mnmsIIPK/yeO+42F2RQhGUIs39K2RFmugcJANppXe6J1nvH87PvzPZYpza7Xhhs8Yn9yIAVdLZ84z61+0xQ==", + "version": "13.13.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.5.tgz", + "integrity": "sha512-3ySmiBYJPqgjiHA7oEaIo2Rzz0HrOZ7yrNO5HWyaE5q0lQ3BppDZ3N53Miz8bw2I7gh1/zir2MGVZBvpb1zq9g==", + "dev": true + }, + "@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", "dev": true }, "@types/parse-json": { @@ -928,11 +994,16 @@ "form-data": "^2.5.0" }, "dependencies": { - "@types/node": { - "version": "12.12.31", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.31.tgz", - "integrity": "sha512-T+wnJno8uh27G9c+1T+a1/WYCHzLeDqtsGJkoEdSp2X8RTh3oOCZQcUnjAx90CS8cmmADX51O0FI/tu9s0yssg==", - "dev": true + "form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } } } }, @@ -943,9 +1014,9 @@ "dev": true }, "@types/tough-cookie": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.6.tgz", - "integrity": "sha512-wHNBMnkoEBiRAd3s8KTKwIuO9biFtTf0LehITzBhSco+HQI0xkXZbLOD55SW3Aqw3oUkHstkm5SPv58yaAdFPQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-I99sngh224D0M7XgW1s120zxCt3VYQ3IQsuw3P3jbq5GG4yc79+ZjyKznyOGIQrflfylLgcfekeZW/vk0yng6A==", "dev": true }, "@types/yargs": { @@ -1078,12 +1149,52 @@ } }, "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", + "integrity": "sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==", "dev": true, "requires": { - "string-width": "^2.0.0" + "string-width": "^3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } } }, "ansi-escapes": { @@ -1093,12 +1204,20 @@ "dev": true, "requires": { "type-fest": "^0.11.0" + }, + "dependencies": { + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + } } }, "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" }, "ansi-styles": { "version": "3.2.1", @@ -1264,17 +1383,18 @@ "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" }, "babel-jest": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.2.6.tgz", - "integrity": "sha512-MDJOAlwtIeIQiGshyX0d2PxTbV73xZMpNji40ivVTPQOm59OdRR9nYCkffqI7ugtsK4JR98HgNKbDbuVf4k5QQ==", + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.5.1.tgz", + "integrity": "sha512-9dA9+GmMjIzgPnYtkhBg73gOo/RHqPmLruP3BaGL4KEX3Dwz6pI8auSN8G8+iuEG90+GSswyKvslN+JYSaacaQ==", "dev": true, "requires": { - "@jest/transform": "^25.2.6", - "@jest/types": "^25.2.6", - "@types/babel__core": "^7.1.0", + "@jest/transform": "^25.5.1", + "@jest/types": "^25.5.0", + "@types/babel__core": "^7.1.7", "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^25.2.6", + "babel-preset-jest": "^25.5.0", "chalk": "^3.0.0", + "graceful-fs": "^4.2.4", "slash": "^3.0.0" }, "dependencies": { @@ -1344,23 +1464,42 @@ } }, "babel-plugin-jest-hoist": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.2.6.tgz", - "integrity": "sha512-qE2xjMathybYxjiGFJg0mLFrz0qNp83aNZycWDY/SuHiZNq+vQfRQtuINqyXyue1ELd8Rd+1OhFSLjms8msMbw==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.5.0.tgz", + "integrity": "sha512-u+/W+WAjMlvoocYGTwthAiQSxDcJAyHpQ6oWlHdFZaaN+Rlk8Q7iiwDPg2lN/FyJtAYnKjFxbn7xus4HCFkg5g==", "dev": true, "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", "@types/babel__traverse": "^7.0.6" } }, + "babel-preset-current-node-syntax": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.2.tgz", + "integrity": "sha512-u/8cS+dEiK1SFILbOC8/rUI3ml9lboKuuMvZ/4aQnQmhecQAgPw5ew066C1ObnEAUmlx7dv/s2z52psWEtLNiw==", + "dev": true, + "requires": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, "babel-preset-jest": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.2.6.tgz", - "integrity": "sha512-Xh2eEAwaLY9+SyMt/xmGZDnXTW/7pSaBPG0EMo7EuhvosFKVWYB6CqwYD31DaEQuoTL090oDZ0FEqygffGRaSQ==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.5.0.tgz", + "integrity": "sha512-8ZczygctQkBU+63DtSOKGh7tFL0CeCuz+1ieud9lJ1WPQ9O6A1a/r+LGn6Y705PA6whHQ3T1XuB/PmpfNYf8Fw==", "dev": true, "requires": { - "@babel/plugin-syntax-bigint": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "babel-plugin-jest-hoist": "^25.2.6" + "babel-plugin-jest-hoist": "^25.5.0", + "babel-preset-current-node-syntax": "^0.1.2" } }, "backo2": { @@ -1526,25 +1665,70 @@ } }, "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", + "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", "dev": true, "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" + "ansi-align": "^3.0.0", + "camelcase": "^5.3.1", + "chalk": "^3.0.0", + "cli-boxes": "^2.2.0", + "string-width": "^4.1.0", + "term-size": "^2.1.0", + "type-fest": "^0.8.1", + "widest-line": "^3.1.0" }, "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } } } }, @@ -1666,6 +1850,38 @@ "unset-value": "^1.0.0" } }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "get-stream": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", + "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true + } + } + }, "call-me-maybe": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", @@ -1701,12 +1917,6 @@ "rsvp": "^4.8.4" } }, - "capture-stack-trace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", - "dev": true - }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -1729,9 +1939,9 @@ "dev": true }, "chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.0.tgz", + "integrity": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==", "dev": true, "requires": { "anymatch": "~3.1.1", @@ -1741,7 +1951,7 @@ "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.3.0" + "readdirp": "~3.4.0" }, "dependencies": { "glob-parent": { @@ -1800,9 +2010,9 @@ "dev": true }, "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.0.tgz", + "integrity": "sha512-gpaBrMAizVEANOpfZp/EEUixTXDyGt7DFzdK5hU+UbWt/J0lB0w20ncZj59Z9a93xHb9u12zF5BS6i9RKbtg4w==", "dev": true }, "cli-cursor": { @@ -1815,19 +2025,36 @@ } }, "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", "dev": true }, "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "mimic-response": "^1.0.0" + }, + "dependencies": { + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true + } } }, "cluster-key-slot": { @@ -1944,45 +2171,17 @@ } }, "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", "dev": true, "requires": { - "dot-prop": "^4.1.0", + "dot-prop": "^5.2.0", "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, - "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - } + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" } }, "contains-path": { @@ -2060,9 +2259,9 @@ "dev": true }, "core-js": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz", - "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==" + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.5.tgz", + "integrity": "sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA==" }, "core-util-is": { "version": "1.0.2", @@ -2092,15 +2291,6 @@ "printj": "~1.1.0" } }, - "create-error-class": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -2114,9 +2304,9 @@ } }, "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", "dev": true }, "cssom": { @@ -2126,9 +2316,9 @@ "dev": true }, "cssstyle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.2.0.tgz", - "integrity": "sha512-sEb3XFPx3jNnCAMtqrXPDeSgQr+jojtCeNf8cvMNMh1cG970+lljssvQDzPq6lmmJu2Vhqood/gtEomBiHOGnA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", "dev": true, "requires": { "cssom": "~0.3.6" @@ -2206,9 +2396,9 @@ } }, "deep-equal": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.2.tgz", - "integrity": "sha512-kX0bjV7tdMuhrhzKPEnVwqfQCuf+IEfN+4Xqv4eKd75xGRyn8yzdQ9ujPY6a221rgJKyQC4KBu1PibDTpa6m9w==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.3.tgz", + "integrity": "sha512-Spqdl4H+ky45I9ByyJtXteOm9CaIrPmnIPmOhrkKGNYWeDgCvJ8jNYVCTjChxW4FqGuZnLHADc8EKRMX6+CgvA==", "requires": { "es-abstract": "^1.17.5", "es-get-iterator": "^1.1.0", @@ -2216,20 +2406,14 @@ "is-date-object": "^1.0.2", "is-regex": "^1.0.5", "isarray": "^2.0.5", - "object-is": "^1.0.2", + "object-is": "^1.1.2", "object-keys": "^1.1.1", + "object.assign": "^4.1.0", "regexp.prototype.flags": "^1.3.0", "side-channel": "^1.0.2", "which-boxed-primitive": "^1.0.1", "which-collection": "^1.0.1", - "which-typed-array": "^1.1.1" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - } + "which-typed-array": "^1.1.2" } }, "deep-extend": { @@ -2250,6 +2434,12 @@ "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", "dev": true }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, "define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", @@ -2380,12 +2570,12 @@ } }, "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", + "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", "dev": true, "requires": { - "is-obj": "^1.0.0" + "is-obj": "^2.0.0" } }, "duplexer3": { @@ -2424,8 +2614,7 @@ "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "encodeurl": { "version": "1.0.2", @@ -2480,13 +2669,6 @@ "is-set": "^2.0.1", "is-string": "^1.0.5", "isarray": "^2.0.5" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - } } }, "es-to-primitive": { @@ -2575,6 +2757,12 @@ "ext": "^1.1.2" } }, + "escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "dev": true + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -2645,9 +2833,9 @@ }, "dependencies": { "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -2727,12 +2915,6 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz", "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==", "dev": true - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true } } }, @@ -2843,6 +3025,12 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, "pkg-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", @@ -2910,11 +3098,102 @@ "isarray": "^1.0.0" } }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + } } } }, @@ -3023,18 +3302,18 @@ "dev": true }, "esquery": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.2.0.tgz", - "integrity": "sha512-weltsSqdeWIX9G2qQZz7KlTRJdkkOCTPgLYJUz1Hacf48R4YOwGPHO3+ORfWedqJKbq5WQmsgK90n+pFLIKt/Q==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", "dev": true, "requires": { - "estraverse": "^5.0.0" + "estraverse": "^5.1.0" }, "dependencies": { "estraverse": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", - "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", + "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", "dev": true } } @@ -3165,16 +3444,16 @@ } }, "expect": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/expect/-/expect-25.2.7.tgz", - "integrity": "sha512-yA+U2Ph0MkMsJ9N8q5hs9WgWI6oJYfecdXta6LkP/alY/jZZL1MHlJ2wbLh60Ucqf3G+51ytbqV3mlGfmxkpNw==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-25.5.0.tgz", + "integrity": "sha512-w7KAXo0+6qqZZhovCaBVPSIqQp7/UTcx4M9uKt2m6pd2VB1voyC8JizLRqeEqud3AAVP02g+hbErDu5gu64tlA==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "ansi-styles": "^4.0.0", "jest-get-type": "^25.2.6", - "jest-matcher-utils": "^25.2.7", - "jest-message-util": "^25.2.6", + "jest-matcher-utils": "^25.5.0", + "jest-message-util": "^25.5.0", "jest-regex-util": "^25.2.6" }, "dependencies": { @@ -3451,6 +3730,11 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, + "fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" + }, "fastfall": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/fastfall/-/fastfall-1.5.1.tgz", @@ -3555,11 +3839,12 @@ "dev": true }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "find-versions": { @@ -3616,10 +3901,9 @@ "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, "form-data": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", - "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", - "dev": true, + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", "requires": { "asynckit": "^0.4.0", "combined-stream": "^1.0.6", @@ -3669,9 +3953,9 @@ "dev": true }, "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", "dev": true, "optional": true }, @@ -3693,9 +3977,9 @@ "dev": true }, "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" }, "get-stdin": { "version": "7.0.0", @@ -3778,12 +4062,12 @@ } }, "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.0.1.tgz", + "integrity": "sha512-5HqUqdhkEovj2Of/ms3IeS/EekcO54ytHRLV4PEY2rhRwrHXLQjeVEES0Lhka0xwNDtGYn58wyC4s5+MHsOO6A==", "dev": true, "requires": { - "ini": "^1.3.4" + "ini": "^1.3.5" } }, "globals": { @@ -3805,36 +4089,45 @@ "dev": true }, "got": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", "dev": true, "requires": { - "create-error-class": "^3.0.0", + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" }, "dependencies": { - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", "dev": true } } }, "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", "dev": true }, "grapheme-splitter": { @@ -3843,13 +4136,10 @@ "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" }, "graphql": { - "version": "14.6.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-14.6.0.tgz", - "integrity": "sha512-VKzfvHEKybTKjQVpTFrA5yUq2S9ihcZvfJAtsDBBCuV6wauPu1xl/f9ehgVf0FcEJJs4vz6ysb/ZMkGigQZseg==", - "dev": true, - "requires": { - "iterall": "^1.2.2" - } + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.0.0.tgz", + "integrity": "sha512-ZyVO1xIF9F+4cxfkdhOJINM+51B06Friuv4M66W7HzUOeFd+vNzUn4vtswYINPi6sysjf1M2Ri/rwZALqgwbaQ==", + "dev": true }, "graphql-input-number": { "version": "0.0.10", @@ -3985,9 +4275,9 @@ }, "dependencies": { "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -4077,6 +4367,12 @@ } } }, + "has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "dev": true + }, "help-me": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz", @@ -4122,6 +4418,12 @@ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, "http-errors": { "version": "1.7.2", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", @@ -4165,14 +4467,14 @@ "dev": true }, "husky": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/husky/-/husky-4.2.3.tgz", - "integrity": "sha512-VxTsSTRwYveKXN4SaH1/FefRJYCtx+wx04sSVcOpD7N2zjoHxa+cEJ07Qg5NmV3HAK+IRKOyNVpi2YBIVccIfQ==", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/husky/-/husky-4.2.5.tgz", + "integrity": "sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ==", "dev": true, "requires": { - "chalk": "^3.0.0", + "chalk": "^4.0.0", "ci-info": "^2.0.0", - "compare-versions": "^3.5.1", + "compare-versions": "^3.6.0", "cosmiconfig": "^6.0.0", "find-versions": "^3.2.0", "opencollective-postinstall": "^2.0.2", @@ -4193,9 +4495,9 @@ } }, "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", + "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", "dev": true, "requires": { "ansi-styles": "^4.1.0", @@ -4330,12 +4632,6 @@ "through": "^2.3.6" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", @@ -4377,32 +4673,6 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", @@ -4420,9 +4690,9 @@ "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==" }, "ioredis": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-4.16.0.tgz", - "integrity": "sha512-tlalhtuvnxXJNtrPjec1nGicuOCpi9ErYV/fRfwaWSzktX9ESrzHlcFwj1pVAL326E8dmt7h9pPQZyyVPPksRA==", + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-4.16.3.tgz", + "integrity": "sha512-Ejvcs2yW19Vq8AipvbtfcX3Ig8XG9EAyFOvGbhI/Q1QoVOK9ZdgY092kdOyOWIYBnPHjfjMJhU9qhsnp0i0K1w==", "dev": true, "optional": true, "requires": { @@ -4573,6 +4843,13 @@ } } }, + "is-docker": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz", + "integrity": "sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==", + "dev": true, + "optional": true + }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -4586,9 +4863,9 @@ "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-generator-fn": { "version": "2.1.0", @@ -4606,13 +4883,13 @@ } }, "is-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", + "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", "dev": true, "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" + "global-dirs": "^2.0.1", + "is-path-inside": "^3.0.1" } }, "is-map": { @@ -4627,9 +4904,9 @@ "dev": true }, "is-npm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", + "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", "dev": true }, "is-number": { @@ -4644,19 +4921,16 @@ "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==" }, "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "dev": true }, "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "dev": true }, "is-plain-object": { "version": "2.0.4", @@ -4667,18 +4941,6 @@ "isobject": "^3.0.1" } }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, "is-regex": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", @@ -4696,12 +4958,6 @@ "is-unc-path": "^1.0.0" } }, - "is-retry-allowed": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", - "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", - "dev": true - }, "is-set": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.1.tgz", @@ -4767,18 +5023,26 @@ "dev": true }, "is-wsl": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.1.1.tgz", - "integrity": "sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", "dev": true, - "optional": true + "optional": true, + "requires": { + "is-docker": "^2.0.0" + } }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", "dev": true }, + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -4915,22 +5179,16 @@ "integrity": "sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==" }, "jest": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest/-/jest-25.2.7.tgz", - "integrity": "sha512-XV1n/CE2McCikl4tfpCY950RytHYvxdo/wvtgmn/qwA8z1s16fuvgFL/KoPrrmkqJTaPMUlLVE58pwiaTX5TdA==", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest/-/jest-25.5.4.tgz", + "integrity": "sha512-hHFJROBTqZahnO+X+PMtT6G2/ztqAZJveGqz//FnWWHurizkD05PQGzRZOhF3XP6z7SJmL+5tCfW8qV06JypwQ==", "dev": true, "requires": { - "@jest/core": "^25.2.7", + "@jest/core": "^25.5.4", "import-local": "^3.0.2", - "jest-cli": "^25.2.7" + "jest-cli": "^25.5.4" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", @@ -4951,17 +5209,6 @@ "supports-color": "^7.1.0" } }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -4977,105 +5224,34 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "jest-cli": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.2.7.tgz", - "integrity": "sha512-OOAZwY4Jkd3r5WhVM5L3JeLNFaylvHUczMLxQDVLrrVyb1Cy+DNJ6MVsb5TLh6iBklB42m5TOP+IbOgKGGOtMw==", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.5.4.tgz", + "integrity": "sha512-rG8uJkIiOUpnREh1768/N3n27Cm+xPFkSNFO91tgg+8o2rXeVLStz+vkXkGr4UtzH6t1SNbjwoiswd7p4AhHTw==", "dev": true, "requires": { - "@jest/core": "^25.2.7", - "@jest/test-result": "^25.2.6", - "@jest/types": "^25.2.6", + "@jest/core": "^25.5.4", + "@jest/test-result": "^25.5.0", + "@jest/types": "^25.5.0", "chalk": "^3.0.0", "exit": "^0.1.2", + "graceful-fs": "^4.2.4", "import-local": "^3.0.2", "is-ci": "^2.0.0", - "jest-config": "^25.2.7", - "jest-util": "^25.2.6", - "jest-validate": "^25.2.6", + "jest-config": "^25.5.4", + "jest-util": "^25.5.0", + "jest-validate": "^25.5.0", "prompts": "^2.0.1", "realpath-native": "^2.0.0", "yargs": "^15.3.1" } }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", @@ -5084,56 +5260,16 @@ "requires": { "has-flag": "^4.0.0" } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" - } - }, - "yargs-parser": { - "version": "18.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", - "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, "jest-changed-files": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.2.6.tgz", - "integrity": "sha512-F7l2m5n55jFnJj4ItB9XbAlgO+6umgvz/mdK76BfTd2NGkvGf9x96hUXP/15a1K0k14QtVOoutwpRKl360msvg==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.5.0.tgz", + "integrity": "sha512-EOw9QEqapsDT7mKF162m8HFzRPbmP8qJQny6ldVOdOVBz3ACgPm/1nAn5fPQ/NDaYhX/AHkrGwwkCncpAVSXcw==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "execa": "^3.2.0", "throat": "^5.0.0" }, @@ -5230,28 +5366,29 @@ } }, "jest-config": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.2.7.tgz", - "integrity": "sha512-rIdPPXR6XUxi+7xO4CbmXXkE6YWprvlKc4kg1SrkCL2YV5m/8MkHstq9gBZJ19Qoa3iz/GP+0sTG/PcIwkFojg==", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.5.4.tgz", + "integrity": "sha512-SZwR91SwcdK6bz7Gco8qL7YY2sx8tFJYzvg216DLihTWf+LKY/DoJXpM9nTzYakSyfblbqeU48p/p7Jzy05Atg==", "dev": true, "requires": { "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^25.2.7", - "@jest/types": "^25.2.6", - "babel-jest": "^25.2.6", + "@jest/test-sequencer": "^25.5.4", + "@jest/types": "^25.5.0", + "babel-jest": "^25.5.1", "chalk": "^3.0.0", "deepmerge": "^4.2.2", "glob": "^7.1.1", - "jest-environment-jsdom": "^25.2.6", - "jest-environment-node": "^25.2.6", + "graceful-fs": "^4.2.4", + "jest-environment-jsdom": "^25.5.0", + "jest-environment-node": "^25.5.0", "jest-get-type": "^25.2.6", - "jest-jasmine2": "^25.2.7", + "jest-jasmine2": "^25.5.4", "jest-regex-util": "^25.2.6", - "jest-resolve": "^25.2.6", - "jest-util": "^25.2.6", - "jest-validate": "^25.2.6", + "jest-resolve": "^25.5.1", + "jest-util": "^25.5.0", + "jest-validate": "^25.5.0", "micromatch": "^4.0.2", - "pretty-format": "^25.2.6", + "pretty-format": "^25.5.0", "realpath-native": "^2.0.0" }, "dependencies": { @@ -5308,15 +5445,15 @@ } }, "jest-diff": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.2.6.tgz", - "integrity": "sha512-KuadXImtRghTFga+/adnNrv9s61HudRMR7gVSbP35UKZdn4IK2/0N0PpGZIqtmllK9aUyye54I3nu28OYSnqOg==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.5.0.tgz", + "integrity": "sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==", "dev": true, "requires": { "chalk": "^3.0.0", "diff-sequences": "^25.2.6", "jest-get-type": "^25.2.6", - "pretty-format": "^25.2.6" + "pretty-format": "^25.5.0" }, "dependencies": { "ansi-styles": { @@ -5372,25 +5509,25 @@ } }, "jest-docblock": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.2.6.tgz", - "integrity": "sha512-VAYrljEq0upq0oERfIaaNf28gC6p9gORndhHstCYF8NWGNQJnzoaU//S475IxfWMk4UjjVmS9rJKLe5Jjjbixw==", + "version": "25.3.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.3.0.tgz", + "integrity": "sha512-aktF0kCar8+zxRHxQZwxMy70stc9R1mOmrLsT5VO3pIT0uzGRSDAXxSlz4NqQWpuLjPpuMhPRl7H+5FRsvIQAg==", "dev": true, "requires": { "detect-newline": "^3.0.0" } }, "jest-each": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.2.6.tgz", - "integrity": "sha512-OgQ01VINaRD6idWJOhCYwUc5EcgHBiFlJuw+ON2VgYr7HLtMFyCcuo+3mmBvuLUH4QudREZN7cDCZviknzsaJQ==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.5.0.tgz", + "integrity": "sha512-QBogUxna3D8vtiItvn54xXde7+vuzqRrEeaw8r1s+1TG9eZLVJE5ZkKoSUlqFwRjnlaA4hyKGiu9OlkFIuKnjA==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "chalk": "^3.0.0", "jest-get-type": "^25.2.6", - "jest-util": "^25.2.6", - "pretty-format": "^25.2.6" + "jest-util": "^25.5.0", + "pretty-format": "^25.5.0" }, "dependencies": { "ansi-styles": { @@ -5446,30 +5583,30 @@ } }, "jest-environment-jsdom": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.2.6.tgz", - "integrity": "sha512-/o7MZIhGmLGIEG5j7r5B5Az0umWLCHU+F5crwfbm0BzC4ybHTJZOQTFQWhohBg+kbTCNOuftMcqHlVkVduJCQQ==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.5.0.tgz", + "integrity": "sha512-7Jr02ydaq4jaWMZLY+Skn8wL5nVIYpWvmeatOHL3tOcV3Zw8sjnPpx+ZdeBfc457p8jCR9J6YCc+Lga0oIy62A==", "dev": true, "requires": { - "@jest/environment": "^25.2.6", - "@jest/fake-timers": "^25.2.6", - "@jest/types": "^25.2.6", - "jest-mock": "^25.2.6", - "jest-util": "^25.2.6", + "@jest/environment": "^25.5.0", + "@jest/fake-timers": "^25.5.0", + "@jest/types": "^25.5.0", + "jest-mock": "^25.5.0", + "jest-util": "^25.5.0", "jsdom": "^15.2.1" } }, "jest-environment-node": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.2.6.tgz", - "integrity": "sha512-D1Ihj14fxZiMHGeTtU/LunhzSI+UeBvlr/rcXMTNyRMUMSz2PEhuqGbB78brBY6Dk3FhJDk7Ta+8reVaGjLWhA==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.5.0.tgz", + "integrity": "sha512-iuxK6rQR2En9EID+2k+IBs5fCFd919gVVK5BeND82fYeLWPqvRcFNPKu9+gxTwfB5XwBGBvZ0HFQa+cHtIoslA==", "dev": true, "requires": { - "@jest/environment": "^25.2.6", - "@jest/fake-timers": "^25.2.6", - "@jest/types": "^25.2.6", - "jest-mock": "^25.2.6", - "jest-util": "^25.2.6", + "@jest/environment": "^25.5.0", + "@jest/fake-timers": "^25.5.0", + "@jest/types": "^25.5.0", + "jest-mock": "^25.5.0", + "jest-util": "^25.5.0", "semver": "^6.3.0" }, "dependencies": { @@ -5488,19 +5625,20 @@ "dev": true }, "jest-haste-map": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.2.6.tgz", - "integrity": "sha512-nom0+fnY8jwzelSDQnrqaKAcDZczYQvMEwcBjeL3PQ4MlcsqeB7dmrsAniUw/9eLkngT5DE6FhnenypilQFsgA==", + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", + "@types/graceful-fs": "^4.1.2", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.2.6", - "jest-util": "^25.2.6", - "jest-worker": "^25.2.6", + "graceful-fs": "^4.2.4", + "jest-serializer": "^25.5.0", + "jest-util": "^25.5.0", + "jest-worker": "^25.5.0", "micromatch": "^4.0.2", "sane": "^4.0.3", "walker": "^1.0.7", @@ -5519,27 +5657,27 @@ } }, "jest-jasmine2": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.2.7.tgz", - "integrity": "sha512-HeQxEbonp8fUvik9jF0lkU9ab1u5TQdIb7YSU9Fj7SxWtqHNDGyCpF6ZZ3r/5yuertxi+R95Ba9eA91GMQ38eA==", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.5.4.tgz", + "integrity": "sha512-9acbWEfbmS8UpdcfqnDO+uBUgKa/9hcRh983IHdM+pKmJPL77G0sWAAK0V0kr5LK3a8cSBfkFSoncXwQlRZfkQ==", "dev": true, "requires": { "@babel/traverse": "^7.1.0", - "@jest/environment": "^25.2.6", - "@jest/source-map": "^25.2.6", - "@jest/test-result": "^25.2.6", - "@jest/types": "^25.2.6", + "@jest/environment": "^25.5.0", + "@jest/source-map": "^25.5.0", + "@jest/test-result": "^25.5.0", + "@jest/types": "^25.5.0", "chalk": "^3.0.0", "co": "^4.6.0", - "expect": "^25.2.7", + "expect": "^25.5.0", "is-generator-fn": "^2.0.0", - "jest-each": "^25.2.6", - "jest-matcher-utils": "^25.2.7", - "jest-message-util": "^25.2.6", - "jest-runtime": "^25.2.7", - "jest-snapshot": "^25.2.7", - "jest-util": "^25.2.6", - "pretty-format": "^25.2.6", + "jest-each": "^25.5.0", + "jest-matcher-utils": "^25.5.0", + "jest-message-util": "^25.5.0", + "jest-runtime": "^25.5.4", + "jest-snapshot": "^25.5.1", + "jest-util": "^25.5.0", + "pretty-format": "^25.5.0", "throat": "^5.0.0" }, "dependencies": { @@ -5596,25 +5734,25 @@ } }, "jest-leak-detector": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.2.6.tgz", - "integrity": "sha512-n+aJUM+j/x1kIaPVxzerMqhAUuqTU1PL5kup46rXh+l9SP8H6LqECT/qD1GrnylE1L463/0StSPkH4fUpkuEjA==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.5.0.tgz", + "integrity": "sha512-rV7JdLsanS8OkdDpZtgBf61L5xZ4NnYLBq72r6ldxahJWWczZjXawRsoHyXzibM5ed7C2QRjpp6ypgwGdKyoVA==", "dev": true, "requires": { "jest-get-type": "^25.2.6", - "pretty-format": "^25.2.6" + "pretty-format": "^25.5.0" } }, "jest-matcher-utils": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.2.7.tgz", - "integrity": "sha512-jNYmKQPRyPO3ny0KY1I4f0XW4XnpJ3Nx5ovT4ik0TYDOYzuXJW40axqOyS61l/voWbVT9y9nZ1THL1DlpaBVpA==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.5.0.tgz", + "integrity": "sha512-VWI269+9JS5cpndnpCwm7dy7JtGQT30UHfrnM3mXl22gHGt/b7NkjBqXfbhZ8V4B7ANUsjK18PlSBmG0YH7gjw==", "dev": true, "requires": { "chalk": "^3.0.0", - "jest-diff": "^25.2.6", + "jest-diff": "^25.5.0", "jest-get-type": "^25.2.6", - "pretty-format": "^25.2.6" + "pretty-format": "^25.5.0" }, "dependencies": { "ansi-styles": { @@ -5670,15 +5808,16 @@ } }, "jest-message-util": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.2.6.tgz", - "integrity": "sha512-Hgg5HbOssSqOuj+xU1mi7m3Ti2nwSQJQf/kxEkrz2r2rp2ZLO1pMeKkz2WiDUWgSR+APstqz0uMFcE5yc0qdcg==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "@types/stack-utils": "^1.0.1", "chalk": "^3.0.0", + "graceful-fs": "^4.2.4", "micromatch": "^4.0.2", "slash": "^3.0.0", "stack-utils": "^1.0.1" @@ -5737,12 +5876,12 @@ } }, "jest-mock": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.2.6.tgz", - "integrity": "sha512-vc4nibavi2RGPdj/MyZy/azuDjZhpYZLvpfgq1fxkhbyTpKVdG7CgmRVKJ7zgLpY5kuMjTzDYA6QnRwhsCU+tA==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", "dev": true, "requires": { - "@jest/types": "^25.2.6" + "@jest/types": "^25.5.0" } }, "jest-pnp-resolver": { @@ -5758,17 +5897,20 @@ "dev": true }, "jest-resolve": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.2.6.tgz", - "integrity": "sha512-7O61GVdcAXkLz/vNGKdF+00A80/fKEAA47AEXVNcZwj75vEjPfZbXDaWFmAQCyXj4oo9y9dC9D+CLA11t8ieGw==", + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.5.1.tgz", + "integrity": "sha512-Hc09hYch5aWdtejsUZhA+vSzcotf7fajSlPA6EZPE1RmPBAD39XtJhvHWFStid58iit4IPDLI/Da4cwdDmAHiQ==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "browser-resolve": "^1.11.3", "chalk": "^3.0.0", + "graceful-fs": "^4.2.4", "jest-pnp-resolver": "^1.2.1", + "read-pkg-up": "^7.0.1", "realpath-native": "^2.0.0", - "resolve": "^1.15.1" + "resolve": "^1.17.0", + "slash": "^3.0.0" }, "dependencies": { "ansi-styles": { @@ -5824,39 +5966,39 @@ } }, "jest-resolve-dependencies": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.2.7.tgz", - "integrity": "sha512-IrnMzCAh11Xd2gAOJL+ThEW6QO8DyqNdvNkQcaCticDrOAr9wtKT7yT6QBFFjqKFgjjvaVKDs59WdgUhgYnHnQ==", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.5.4.tgz", + "integrity": "sha512-yFmbPd+DAQjJQg88HveObcGBA32nqNZ02fjYmtL16t1xw9bAttSn5UGRRhzMHIQbsep7znWvAvnD4kDqOFM0Uw==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "jest-regex-util": "^25.2.6", - "jest-snapshot": "^25.2.7" + "jest-snapshot": "^25.5.1" } }, "jest-runner": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.2.7.tgz", - "integrity": "sha512-RFEr71nMrtNwcpoHzie5+fe1w3JQCGMyT2xzNwKe3f88+bK+frM2o1v24gEcPxQ2QqB3COMCe2+1EkElP+qqqQ==", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.5.4.tgz", + "integrity": "sha512-V/2R7fKZo6blP8E9BL9vJ8aTU4TH2beuqGNxHbxi6t14XzTb+x90B3FRgdvuHm41GY8ch4xxvf0ATH4hdpjTqg==", "dev": true, "requires": { - "@jest/console": "^25.2.6", - "@jest/environment": "^25.2.6", - "@jest/test-result": "^25.2.6", - "@jest/types": "^25.2.6", + "@jest/console": "^25.5.0", + "@jest/environment": "^25.5.0", + "@jest/test-result": "^25.5.0", + "@jest/types": "^25.5.0", "chalk": "^3.0.0", "exit": "^0.1.2", - "graceful-fs": "^4.2.3", - "jest-config": "^25.2.7", - "jest-docblock": "^25.2.6", - "jest-haste-map": "^25.2.6", - "jest-jasmine2": "^25.2.7", - "jest-leak-detector": "^25.2.6", - "jest-message-util": "^25.2.6", - "jest-resolve": "^25.2.6", - "jest-runtime": "^25.2.7", - "jest-util": "^25.2.6", - "jest-worker": "^25.2.6", + "graceful-fs": "^4.2.4", + "jest-config": "^25.5.4", + "jest-docblock": "^25.3.0", + "jest-haste-map": "^25.5.1", + "jest-jasmine2": "^25.5.4", + "jest-leak-detector": "^25.5.0", + "jest-message-util": "^25.5.0", + "jest-resolve": "^25.5.1", + "jest-runtime": "^25.5.4", + "jest-util": "^25.5.0", + "jest-worker": "^25.5.0", "source-map-support": "^0.5.6", "throat": "^5.0.0" }, @@ -5914,44 +6056,39 @@ } }, "jest-runtime": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.2.7.tgz", - "integrity": "sha512-Gw3X8KxTTFylu2T/iDSNKRUQXQiPIYUY0b66GwVYa7W8wySkUljKhibQHSq0VhmCAN7vRBEQjlVQ+NFGNmQeBw==", - "dev": true, - "requires": { - "@jest/console": "^25.2.6", - "@jest/environment": "^25.2.6", - "@jest/source-map": "^25.2.6", - "@jest/test-result": "^25.2.6", - "@jest/transform": "^25.2.6", - "@jest/types": "^25.2.6", + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.5.4.tgz", + "integrity": "sha512-RWTt8LeWh3GvjYtASH2eezkc8AehVoWKK20udV6n3/gC87wlTbE1kIA+opCvNWyyPeBs6ptYsc6nyHUb1GlUVQ==", + "dev": true, + "requires": { + "@jest/console": "^25.5.0", + "@jest/environment": "^25.5.0", + "@jest/globals": "^25.5.2", + "@jest/source-map": "^25.5.0", + "@jest/test-result": "^25.5.0", + "@jest/transform": "^25.5.1", + "@jest/types": "^25.5.0", "@types/yargs": "^15.0.0", "chalk": "^3.0.0", "collect-v8-coverage": "^1.0.0", "exit": "^0.1.2", "glob": "^7.1.3", - "graceful-fs": "^4.2.3", - "jest-config": "^25.2.7", - "jest-haste-map": "^25.2.6", - "jest-message-util": "^25.2.6", - "jest-mock": "^25.2.6", + "graceful-fs": "^4.2.4", + "jest-config": "^25.5.4", + "jest-haste-map": "^25.5.1", + "jest-message-util": "^25.5.0", + "jest-mock": "^25.5.0", "jest-regex-util": "^25.2.6", - "jest-resolve": "^25.2.6", - "jest-snapshot": "^25.2.7", - "jest-util": "^25.2.6", - "jest-validate": "^25.2.6", + "jest-resolve": "^25.5.1", + "jest-snapshot": "^25.5.1", + "jest-util": "^25.5.0", + "jest-validate": "^25.5.0", "realpath-native": "^2.0.0", "slash": "^3.0.0", "strip-bom": "^4.0.0", "yargs": "^15.3.1" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", @@ -5972,17 +6109,6 @@ "supports-color": "^7.1.0" } }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -5998,160 +6124,52 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" - } - }, - "yargs-parser": { - "version": "18.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", - "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", "dev": true, "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "has-flag": "^4.0.0" } } } }, "jest-serializer": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.2.6.tgz", - "integrity": "sha512-RMVCfZsezQS2Ww4kB5HJTMaMJ0asmC0BHlnobQC6yEtxiFKIxohFA4QSXSabKwSggaNkqxn6Z2VwdFCjhUWuiQ==", - "dev": true + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.4" + } }, "jest-snapshot": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.2.7.tgz", - "integrity": "sha512-Rm8k7xpGM4tzmYhB6IeRjsOMkXaU8/FOz5XlU6oYwhy53mq6txVNqIKqN1VSiexzpC80oWVxVDfUDt71M6XPOA==", + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.5.1.tgz", + "integrity": "sha512-C02JE1TUe64p2v1auUJ2ze5vcuv32tkv9PyhEb318e8XOKF7MOyXdJ7kdjbvrp3ChPLU2usI7Rjxs97Dj5P0uQ==", "dev": true, "requires": { "@babel/types": "^7.0.0", - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "@types/prettier": "^1.19.0", "chalk": "^3.0.0", - "expect": "^25.2.7", - "jest-diff": "^25.2.6", + "expect": "^25.5.0", + "graceful-fs": "^4.2.4", + "jest-diff": "^25.5.0", "jest-get-type": "^25.2.6", - "jest-matcher-utils": "^25.2.7", - "jest-message-util": "^25.2.6", - "jest-resolve": "^25.2.6", + "jest-matcher-utils": "^25.5.0", + "jest-message-util": "^25.5.0", + "jest-resolve": "^25.5.1", "make-dir": "^3.0.0", "natural-compare": "^1.4.0", - "pretty-format": "^25.2.6", + "pretty-format": "^25.5.0", "semver": "^6.3.0" }, "dependencies": { @@ -6214,13 +6232,14 @@ } }, "jest-util": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.2.6.tgz", - "integrity": "sha512-gpXy0H5ymuQ0x2qgl1zzHg7LYHZYUmDEq6F7lhHA8M0eIwDB2WteOcCnQsohl9c/vBKZ3JF2r4EseipCZz3s4Q==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "chalk": "^3.0.0", + "graceful-fs": "^4.2.4", "is-ci": "^2.0.0", "make-dir": "^3.0.0" }, @@ -6278,17 +6297,17 @@ } }, "jest-validate": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.2.6.tgz", - "integrity": "sha512-a4GN7hYbqQ3Rt9iHsNLFqQz7HDV7KiRPCwPgo5nqtTIWNZw7gnT8KchG+Riwh+UTSn8REjFCodGp50KX/fRNgQ==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "camelcase": "^5.3.1", "chalk": "^3.0.0", "jest-get-type": "^25.2.6", "leven": "^3.1.0", - "pretty-format": "^25.2.6" + "pretty-format": "^25.5.0" }, "dependencies": { "ansi-styles": { @@ -6344,16 +6363,16 @@ } }, "jest-watcher": { - "version": "25.2.7", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.2.7.tgz", - "integrity": "sha512-RdHuW+f49tahWtluTnUdZ2iPliebleROI2L/J5phYrUS6DPC9RB3SuUtqYyYhGZJsbvRSuLMIlY/cICJ+PIecw==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.5.0.tgz", + "integrity": "sha512-XrSfJnVASEl+5+bb51V0Q7WQx65dTSk7NL4yDdVjPnRNpM0hG+ncFmDYJo9O8jaSRcAitVbuVawyXCRoxGrT5Q==", "dev": true, "requires": { - "@jest/test-result": "^25.2.6", - "@jest/types": "^25.2.6", + "@jest/test-result": "^25.5.0", + "@jest/types": "^25.5.0", "ansi-escapes": "^4.2.1", "chalk": "^3.0.0", - "jest-util": "^25.2.6", + "jest-util": "^25.5.0", "string-length": "^3.1.0" }, "dependencies": { @@ -6410,9 +6429,9 @@ } }, "jest-worker": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.2.6.tgz", - "integrity": "sha512-FJn9XDUSxcOR4cwDzRfL1z56rUofNTFs539FGASpd50RHdb6EVkhxQqktodW2mI49l+W3H+tFJDotCHUQF6dmA==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", "dev": true, "requires": { "merge-stream": "^2.0.0", @@ -6502,9 +6521,9 @@ } }, "ws": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.2.3.tgz", - "integrity": "sha512-HTDl9G9hbkNDk98naoR/cHDws7+EyYMOdL1BmjsZXRUjf7d+MficC4B7HLUPlSiho0vg+CWKrGIt/VJBd1xunQ==", + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.2.5.tgz", + "integrity": "sha512-C34cIU4+DB2vMyAbmEKossWq2ZQDr6QEyuuCzWrM9zfw1sGc0mYiJ0UnG9zzNykt49C2Fi34hvr2vssFQRS6EA==", "dev": true } } @@ -6515,6 +6534,12 @@ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -6591,6 +6616,15 @@ "object.assign": "^4.1.0" } }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "requires": { + "json-buffer": "3.0.0" + } + }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -6604,12 +6638,12 @@ "dev": true }, "latest-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", "dev": true, "requires": { - "package-json": "^4.0.0" + "package-json": "^6.3.0" } }, "lcid": { @@ -6677,12 +6711,11 @@ } }, "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, "lodash": { @@ -6741,20 +6774,10 @@ "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", "dev": true }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, "make-dir": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz", - "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { "semver": "^6.0.0" @@ -6863,16 +6886,16 @@ "dev": true }, "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==" + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" }, "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "requires": { - "mime-db": "1.43.0" + "mime-db": "1.44.0" } }, "mimic-fn": { @@ -7146,9 +7169,9 @@ } }, "nodemon": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.2.tgz", - "integrity": "sha512-GWhYPMfde2+M0FsHnggIHXTqPDHXia32HRhh6H0d75Mt9FKUoCBvumNHr7LdrpPBTKxsWmIEOjoN+P4IU6Hcaw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.3.tgz", + "integrity": "sha512-lLQLPS90Lqwc99IHe0U94rDgvjo+G9I4uEIxRG3evSLROcqQ9hwc0AxlSHKS4T1JW/IMj/7N5mthiN58NL/5kw==", "dev": true, "requires": { "chokidar": "^3.2.2", @@ -7160,7 +7183,7 @@ "supports-color": "^5.5.0", "touch": "^3.1.0", "undefsafe": "^2.0.2", - "update-notifier": "^2.5.0" + "update-notifier": "^4.0.0" }, "dependencies": { "debug": { @@ -7201,6 +7224,12 @@ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true }, + "normalize-url": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", + "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", + "dev": true + }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", @@ -7221,38 +7250,38 @@ "dev": true }, "oas-kit-common": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.7.tgz", - "integrity": "sha512-8+P8gBjN9bGfa5HPgyefO78o394PUwHoQjuD4hM0Bpl56BkcxoyW4MpWMPM6ATm+yIIz4qT1igmuVukUtjP/pQ==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", + "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", "requires": { - "safe-json-stringify": "^1.2.0" + "fast-safe-stringify": "^2.0.7" } }, "oas-linter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.1.0.tgz", - "integrity": "sha512-Q2GD5QSmx1zFvW8RpDVIdRbR86mgpjTvO7b5XNnCSGkx96Hs7MdA/pWGctSZKNcxlbDy0c4eNSKC1dFbKGEjbg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.1.2.tgz", + "integrity": "sha512-mv3HBG9aQz8PLGvonewIN9Y2Ra8QL6jvotRvf7NCdZ20n5vg4dO4y61UZh6s+KRDfJaU1PO+9Oxrn3EUN4Xygw==", "requires": { "should": "^13.2.1", "yaml": "^1.8.3" } }, "oas-resolver": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.3.0.tgz", - "integrity": "sha512-JCPGqXKXfqA2sTTAX5YGksQYxXlr5tJRci6lWlkxvCw9x16bnZ2bZhyK7XaTuKcwGi27ZJzu9E1c9uLVG3XoPw==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.3.2.tgz", + "integrity": "sha512-toGCUv8wyZZmUAAsw4jn+511xNpUFW2ZLp4sAZ7xpERIeosrbxBxtkVxot9kXvdUHtPjRafi5+bkJ56TwQeYSQ==", "requires": { "node-fetch-h2": "^2.3.0", - "oas-kit-common": "^1.0.7", - "reftools": "^1.1.0", + "oas-kit-common": "^1.0.8", + "reftools": "^1.1.1", "yaml": "^1.8.3", - "yargs": "^12.0.5" + "yargs": "^15.3.1" } }, "oas-schema-walker": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.3.tgz", - "integrity": "sha512-spY1UVlewUhQs3v0ATsGySRCwVs4Uzutm9KvbwxkaitfisdJy9p51vLjaDGDV0g1xMcZIUH5f704/CwMPSZxHA==" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.4.tgz", + "integrity": "sha512-foVDDS0RJYMfhQEDh/WdBuCzydTcsCnGo9EeD8SpWq1uW10JXiz+8SfYVDA7LO87kjmlnTRZle/2gr5qxabaEA==" }, "oas-validator": { "version": "3.4.0", @@ -7319,9 +7348,13 @@ "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" }, "object-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.2.tgz", - "integrity": "sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", + "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } }, "object-keys": { "version": "1.1.1", @@ -7464,6 +7497,12 @@ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true + }, "p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", @@ -7486,19 +7525,19 @@ "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==" }, "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "requires": { "p-try": "^2.0.0" } }, "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "requires": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.0" } }, "p-try": { @@ -7507,15 +7546,23 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", "dev": true, "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "pako": { @@ -7570,9 +7617,9 @@ "dev": true }, "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" }, "path-is-absolute": { "version": "1.0.1", @@ -7580,12 +7627,6 @@ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", @@ -7645,6 +7686,15 @@ "load-json-file": "^5.2.0" }, "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, "load-json-file": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", @@ -7658,6 +7708,25 @@ "type-fest": "^0.3.0" } }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -7668,6 +7737,12 @@ "json-parse-better-errors": "^1.0.1" } }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, "strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", @@ -7700,42 +7775,6 @@ "dev": true, "requires": { "find-up": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - } } }, "please-upgrade-node": { @@ -7771,9 +7810,9 @@ "dev": true }, "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", "dev": true }, "prettier": { @@ -7783,23 +7822,17 @@ "dev": true }, "pretty-format": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.2.6.tgz", - "integrity": "sha512-DEiWxLBaCHneffrIT4B+TpMvkV9RNvvJrd3lY9ew1CEQobDzEXmYT1mg0hJhljZty7kCc10z13ohOFAE8jrUDg==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", "dev": true, "requires": { - "@jest/types": "^25.2.6", + "@jest/types": "^25.5.0", "ansi-regex": "^5.0.0", "ansi-styles": "^4.0.0", "react-is": "^16.12.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", @@ -7869,16 +7902,6 @@ "strip-final-newline": "^2.0.0" } }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, "get-stream": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", @@ -7894,15 +7917,6 @@ "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, "npm-run-path": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz", @@ -7918,21 +7932,6 @@ "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", "dev": true }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -8015,15 +8014,9 @@ } }, "proxy-protocol-js": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/proxy-protocol-js/-/proxy-protocol-js-4.0.4.tgz", - "integrity": "sha512-sFXpnjURynaVcTY47UPchrImDQ4iV7p8kWBogKLm2HVqmCv2Zn7EgZalon3rhRgVNMplN3pofIj5f96ke8QtPA==", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/proxy-protocol-js/-/proxy-protocol-js-4.0.5.tgz", + "integrity": "sha512-53BHGoSSquDJg7fyDrMKWa85jfF34LPKAeRSij+Eiktlh2YE4rAk5U9uba3mGRswE/grDiAi2mZWknbzbXiB9w==", "dev": true }, "psl": { @@ -8074,6 +8067,15 @@ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, + "pupa": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.0.1.tgz", + "integrity": "sha512-hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA==", + "dev": true, + "requires": { + "escape-goat": "^2.0.0" + } + }, "qlobber": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/qlobber/-/qlobber-3.1.0.tgz", @@ -8122,86 +8124,34 @@ "dev": true }, "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "dependencies": { - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true } } }, "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - } + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" } }, "readable-stream": { @@ -8219,6 +8169,12 @@ "util-deprecate": "~1.0.1" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -8228,12 +8184,12 @@ } }, "readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", "dev": true, "requires": { - "picomatch": "^2.0.7" + "picomatch": "^2.2.1" } }, "realpath-native": { @@ -8267,9 +8223,9 @@ } }, "reftools": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.0.tgz", - "integrity": "sha512-j3tFfOg3Zf0w/TT5bA6G/URUqAmsDhDJkBQ1cQX94Tfg/I4XO3j0p4Zf+2KQU90Ks6LHrQen5+gbe4POQu+jdQ==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.1.tgz", + "integrity": "sha512-7ySkzK7YpUeJP16rzJqEXTZ7IrAq/AL/p+wWejD9wdKQOe+mYYVAOB3w5ZTs2eoHfmAidwr/6PcC+q+LzPF/DQ==" }, "regenerator-runtime": { "version": "0.13.5", @@ -8302,22 +8258,21 @@ "dev": true }, "registry-auth-token": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", - "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz", + "integrity": "sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA==", "dev": true, "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" + "rc": "^1.2.8" } }, "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", "dev": true, "requires": { - "rc": "^1.0.1" + "rc": "^1.2.8" } }, "reinterval": { @@ -8369,18 +8324,6 @@ "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" - }, - "dependencies": { - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - } } }, "request-promise-core": { @@ -8409,14 +8352,14 @@ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" }, "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" }, "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, "requires": { "path-parse": "^1.0.6" @@ -8451,6 +8394,15 @@ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", "dev": true }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "requires": { + "lowercase-keys": "^1.0.0" + } + }, "restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -8495,13 +8447,10 @@ "dev": true }, "run-async": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", - "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true }, "run-parallel": { "version": "1.1.9", @@ -8523,11 +8472,6 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" }, - "safe-json-stringify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", - "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==" - }, "safe-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", @@ -8704,12 +8648,20 @@ "dev": true }, "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", "dev": true, "requires": { - "semver": "^5.0.3" + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "semver-regex": { @@ -8929,9 +8881,9 @@ } }, "simple-statistics": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/simple-statistics/-/simple-statistics-7.0.8.tgz", - "integrity": "sha512-cKK4U1ciuG7NG2P/FfbYtfoZYvn6VkIHxurRGuqW1bBOrKY0WK1Zr9C3EFjh8RAOldIRznm5kQvWTa3bsvkMIA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/simple-statistics/-/simple-statistics-7.1.0.tgz", + "integrity": "sha512-aA7JgiiptQJFB1xJDySzUJ64XTtl1zkR5U79Qa0AxSYVTxws2UlsZt/chyJm+2lMt3xIPKzAsNzVhZhMUXlY+g==", "dev": true }, "sisteransi": { @@ -8955,6 +8907,14 @@ "ansi-styles": "^3.2.0", "astral-regex": "^1.0.0", "is-fullwidth-code-point": "^2.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + } } }, "snapdragon": { @@ -9105,9 +9065,9 @@ } }, "source-map-support": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", - "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -9131,9 +9091,9 @@ } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { @@ -9235,14 +9195,14 @@ "optional": true }, "standard-engine": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-12.0.0.tgz", - "integrity": "sha512-gJIIRb0LpL7AHyGbN9+hJ4UJns37lxmNTnMGRLC8CFrzQ+oB/K60IQjKNgPBCB2VP60Ypm6f8DFXvhVWdBOO+g==", + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-12.0.1.tgz", + "integrity": "sha512-XtR9NfoTqvHkWQCwL1aLMwXw1Qxy5s4rdSIqetgBNw+8faNbQ+BbB49hPhKXjxxfC4yg+fpH0lx/T5fuUbpDcQ==", "dev": true, "requires": { - "deglob": "^4.0.0", + "deglob": "^4.0.1", "get-stdin": "^7.0.0", - "minimist": "^1.1.0", + "minimist": "^1.2.5", "pkg-conf": "^3.1.0" } }, @@ -9313,18 +9273,19 @@ } }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "string.prototype.trimend": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.0.tgz", - "integrity": "sha512-EEJnGqa/xNfIg05SxiPSqRS7S9qwDhYts1TSLR1BQfYUfPe1stofgGKvwERK9+9yf+PpfBMlpBaCHucXGPQfUA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" @@ -9351,9 +9312,9 @@ } }, "string.prototype.trimstart": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.0.tgz", - "integrity": "sha512-iCP8g01NFYiiBOnwG1Xc3WZLyoo+RuBymwIlWncShXDDJYWN6DbnM3odslBJdgCdRlq94B5s63NWAZlcn2CS4w==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" @@ -9377,11 +9338,11 @@ } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^5.0.0" } }, "strip-bom": { @@ -9420,12 +9381,6 @@ "ws": "^5.2.0" }, "dependencies": { - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true - }, "ws": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", @@ -9488,8 +9443,163 @@ "reftools": "^1.1.0", "yaml": "^1.8.3", "yargs": "^12.0.5" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } } }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, "symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", @@ -9509,9 +9619,9 @@ }, "dependencies": { "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -9538,6 +9648,12 @@ "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", "dev": true }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -9567,47 +9683,10 @@ } }, "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - }, - "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - } - } + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz", + "integrity": "sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==", + "dev": true }, "terminal-link": { "version": "2.1.1", @@ -9679,12 +9758,6 @@ } } }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -9736,6 +9809,12 @@ } } }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true + }, "to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", @@ -9797,9 +9876,9 @@ } }, "ts-jest": { - "version": "25.3.1", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-25.3.1.tgz", - "integrity": "sha512-O53FtKguoMUByalAJW+NWEv7c4tus5ckmhfa7/V0jBb2z8v5rDSLFC1Ate7wLknYPC1euuhY6eJjQq4FtOZrkg==", + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-25.5.0.tgz", + "integrity": "sha512-govrjbOk1UEzcJ5cX5k8X8IUtFuP3lp3mrF3ZuKtCdAOQzdeCM7qualhb/U8s8SWFwEDutOqfF5PLkJ+oaYD4w==", "dev": true, "requires": { "bs-logger": "0.x", @@ -9809,46 +9888,29 @@ "lodash.memoize": "4.x", "make-error": "1.x", "micromatch": "4.x", - "mkdirp": "1.x", - "resolve": "1.x", + "mkdirp": "0.x", "semver": "6.x", "yargs-parser": "18.x" }, "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true - }, - "yargs-parser": { - "version": "18.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", - "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.2.tgz", + "integrity": "sha512-tTSkux6IGPnUGUd1XAZHcpu85MOkIl5zX49pO+jfsie3eP0B6pyhOlLXm3cAC6T7s+euSDDUUV+Acop5WmtkVg==", "dev": true }, "tslint": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.1.tgz", - "integrity": "sha512-kd6AQ/IgPRpLn6g5TozqzPdGNZ0q0jtXW4//hRcj10qLYBaa3mTUU2y2MCG+RXZm8Zx+KZi0eA+YCrMyNlF4UA==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.2.tgz", + "integrity": "sha512-UyNrLdK3E0fQG/xWNqAFAC5ugtFyPO4JJR1KyyfQAyzR8W0fTRrC91A8Wej4BntFzcvETdCSDa/4PnNYJQLYiA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -9969,9 +10031,9 @@ "dev": true }, "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true }, "type-is": { @@ -10072,12 +10134,12 @@ } }, "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", "dev": true, "requires": { - "crypto-random-string": "^1.0.0" + "crypto-random-string": "^2.0.0" } }, "unpipe": { @@ -10123,46 +10185,84 @@ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true } } }, - "unzip-response": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true - }, "update-notifier": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", - "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.0.tgz", + "integrity": "sha512-w3doE1qtI0/ZmgeoDoARmI5fjDoT93IfKgEGqm26dGUOh8oNpaSTsGNdYRN/SjOuo10jcJGwkEL3mroKzktkew==", "dev": true, "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", + "boxen": "^4.2.0", + "chalk": "^3.0.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" + "is-ci": "^2.0.0", + "is-installed-globally": "^0.3.1", + "is-npm": "^4.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.0.0", + "pupa": "^2.0.1", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" }, "dependencies": { - "ci-info": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", - "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "is-ci": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", - "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", "dev": true, "requires": { - "ci-info": "^1.5.0" + "has-flag": "^4.0.0" } } } @@ -10182,12 +10282,12 @@ "dev": true }, "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", "dev": true, "requires": { - "prepend-http": "^1.0.1" + "prepend-http": "^2.0.0" } }, "use": { @@ -10220,9 +10320,9 @@ "dev": true }, "v8-to-istanbul": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.3.tgz", - "integrity": "sha512-sAjOC+Kki6aJVbUOXJbcR0MnbfjvBzwKZazEJymA2IX49uoOdEdk+4fBq5cXgYgiyKtAyrrJNtBZdOeDIF+Fng==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz", + "integrity": "sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ==", "dev": true, "requires": { "@types/istanbul-lib-coverage": "^2.0.1", @@ -10388,24 +10488,25 @@ "dev": true }, "which-typed-array": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.1.tgz", - "integrity": "sha512-IWlkoJZ4Zdfi4YBn2wnYB8AVox+4A2+Kmr4kHFAraffHYrQZFiTOjgjk9et8e6RSPZOV1QjZOC51PVCK9SkR/A==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.2.tgz", + "integrity": "sha512-KT6okrd1tE6JdZAy3o2VhMoYPh3+J6EMZLyrxBQsZflI1QCZIxMrIYLkosd8Twf+YfknVIHmYQPgJt238p8dnQ==", "requires": { - "available-typed-arrays": "^1.0.1", - "es-abstract": "^1.17.4", + "available-typed-arrays": "^1.0.2", + "es-abstract": "^1.17.5", + "foreach": "^2.0.5", "function-bind": "^1.1.1", "has-symbols": "^1.0.1", "is-typed-array": "^1.1.3" } }, "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", "dev": true, "requires": { - "string-width": "^2.1.1" + "string-width": "^4.0.0" } }, "word-wrap": { @@ -10415,44 +10516,36 @@ "dev": true }, "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", "requires": { - "number-is-nan": "^1.0.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "color-name": "~1.1.4" } }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" } } }, @@ -10502,9 +10595,9 @@ } }, "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, "xml-name-validator": { @@ -10530,43 +10623,36 @@ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, "yaml": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.8.3.tgz", - "integrity": "sha512-X/v7VDnK+sxbQ2Imq4Jt2PRUsRsP7UcpSl3Llg6+NRRqWLIvxkMFYtH1FmvwNGYRKKPa+EPA4qDBlI9WVG1UKw==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.9.2.tgz", + "integrity": "sha512-HPT7cGGI0DuRcsO51qC1j9O16Dh1mZ2bnXwsi0jrSpsLz0WxOLSLXfkABVl6bZO629py3CU+OMJtpNHDLB97kg==", "requires": { - "@babel/runtime": "^7.8.7" + "@babel/runtime": "^7.9.2" } }, "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", + "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", "requires": { - "cliui": "^4.0.0", + "cliui": "^6.0.0", "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", + "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^2.0.0", + "string-width": "^4.2.0", "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" + "y18n": "^4.0.0", + "yargs-parser": "^18.1.1" } }, "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "requires": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" From 4d517b3063baba21263a980ff812a1eeac6e5f98 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sat, 9 May 2020 21:43:19 +0100 Subject: [PATCH 06/15] signedoff: added stricter type/validation checks Signed-off-by: Ifeora Okechukwu --- .../openapi-to-graphql/lib/schema_builder.js | 49 +++--- .../lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/lib/utils.d.ts | 3 + packages/openapi-to-graphql/lib/utils.js | 24 +++ packages/openapi-to-graphql/lib/utils.js.map | 2 +- packages/openapi-to-graphql/package-lock.json | 15 +- packages/openapi-to-graphql/package.json | 3 +- .../openapi-to-graphql/src/schema_builder.ts | 146 ++++++++++-------- packages/openapi-to-graphql/src/utils.ts | 25 +++ 9 files changed, 163 insertions(+), 106 deletions(-) diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index d5c2ed62..5abff12f 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -4,8 +4,7 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); -const graphql_input_string_1 = require("graphql-input-string"); -const graphql_input_number_1 = require("graphql-input-number"); +const graphql_scalar_1 = require("graphql-scalar"); const graphql_1 = require("graphql"); // Imports: const GraphQLJSON = require("graphql-type-json"); @@ -361,22 +360,23 @@ function createOrReuseEnum({ def, data }) { * Returns the GraphQL scalar type matching the given JSON schema type */ function getScalarType({ def, schema, isInputObjectType, data }) { - const name = isInputObjectType - ? def.graphQLInputObjectTypeName - : def.graphQLTypeName; - const options = {}; - const typeSet = { type: null, defaultValue: undefined }; - if (isInputObjectType) { - options.name = name; + const options = { name: '' }; + if (isInputObjectType + && schema) { const type = schema.type; + options.name = schema.title || 'StrictType' + (Math.random() * Date.now()).toString(16).replace('.', ''); + if (type === 'string') { + options.trim = true; + // options.nonEmpty = !schema.nullable + } switch (true) { case typeof schema.minimum === 'number': case typeof schema.minLength === 'number': - options.min = schema.minLength || schema.minimum; + options.minimum = type === 'string' ? schema.minLength : schema.minimum; break; case typeof schema.maximum === 'number': case typeof schema.maxLength === 'number': - options.max = schema.maxLength || schema.maximum; + options.maximum = type === 'string' ? schema.maxLength : schema.maximum; break; case typeof schema.pattern === 'string': const qualifier = schema.pattern.match(/\/(.)$/) || ['', '']; @@ -388,39 +388,26 @@ function getScalarType({ def, schema, isInputObjectType, data }) { break; case typeof schema.format === 'string': case typeof schema.enum !== 'undefined': - const format = schema.format || '-'; + const $format = schema.format || '-'; const $enum = schema.enum || []; - options.sanitize = (data) => format.startsWith('int') ? parseInt(data) : (format === 'float' ? parseFloat(data) : data); - options.test = (data) => format === 'int64' ? Number.isSafeInteger(data) : (format === 'int32' ? data <= Math.pow(2, 31) : ($enum.includes(data) || utils_1.strictTypeOf(data, type))); + options.sanitize = (data) => $format.startsWith('int') ? parseInt(data) : ($format === 'float' ? parseFloat(data) : ($format === 'date' || $format === 'date-time' ? utils_1.isSafeDate(data) : data)); + options.validate = (data) => $format === 'int64' ? utils_1.isSafeLong(data) : ($format === 'int32' ? utils_1.isSafeInteger(data) : ($enum.includes(String(data)) || utils_1.strictTypeOf(data, type))); break; } + // options.default = schema.default } switch (def.targetGraphQLType) { case 'id': def.graphQLType = graphql_1.GraphQLID; break; case 'string': - options.trim = true; - options.empty = schema.nullable || !schema.required; - typeSet.type = isInputObjectType ? graphql_input_string_1.default(options) : graphql_1.GraphQLString; - if (schema.default) { - typeSet.defaultValue = schema.default; - } - def.graphQLType = typeSet; + def.graphQLType = isInputObjectType && schema ? graphql_scalar_1.createStringScalar(options) : graphql_1.GraphQLString; break; case 'integer': - typeSet.type = isInputObjectType ? graphql_input_number_1.GraphQLInputInt(options) : graphql_1.GraphQLInt; - if (schema.default) { - typeSet.defaultValue = schema.default; - } - def.graphQLType = typeSet; + def.graphQLType = isInputObjectType && schema ? graphql_scalar_1.createIntScalar(options) : graphql_1.GraphQLInt; break; case 'number': - typeSet.type = isInputObjectType ? graphql_input_number_1.GraphQLInputFloat(options) : graphql_1.GraphQLFloat; - if (schema.default) { - typeSet.defaultValue = schema.default; - } - def.graphQLType = typeSet; + def.graphQLType = isInputObjectType && schema ? graphql_scalar_1.createFloatScalar(options) : graphql_1.GraphQLFloat; break; case 'boolean': def.graphQLType = graphql_1.GraphQLBoolean; diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index f500104d..c790299a 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/utils.d.ts b/packages/openapi-to-graphql/lib/utils.d.ts index fa83249f..b9440f4b 100644 --- a/packages/openapi-to-graphql/lib/utils.d.ts +++ b/packages/openapi-to-graphql/lib/utils.d.ts @@ -33,6 +33,9 @@ export declare const mitigations: { LIMIT_ARGUMENT_NAME_COLLISION: string; OAUTH_SECURITY_SCHEME: string; }; +export declare function isSafeInteger(n: unknown): n is number; +export declare function isSafeLong(n: unknown): n is number; +export declare function isSafeDate(n: string): boolean; /** * get the correct type of a variable */ diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index 1c450230..df0e8d99 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -43,6 +43,30 @@ exports.mitigations = { // Miscellaneous OAUTH_SECURITY_SCHEME: `Ignore security scheme` }; +const MAX_INT = 2147483647; +const MIN_INT = -2147483648; +const MAX_LONG = 9007199254740991; +const MIN_LONG = -9007199254740992; +function isSafeInteger(n) { + return typeof n === 'number' && + isFinite(n) && + Math.floor(n) === n && + n <= MAX_INT && + n >= MIN_INT; +} +exports.isSafeInteger = isSafeInteger; +function isSafeLong(n) { + return typeof n === 'number' && + isFinite(n) && + n <= MAX_LONG && + n >= MIN_LONG; +} +exports.isSafeLong = isSafeLong; +function isSafeDate(n) { + const parsed = Date.parse(n); + return typeof parsed === 'number' && parsed !== NaN && parsed > 0; +} +exports.isSafeDate = isSafeDate; /** * check if a literal is falsy or not */ diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index 321a54e3..d7963942 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/package-lock.json b/packages/openapi-to-graphql/package-lock.json index 68224d42..1223ee08 100644 --- a/packages/openapi-to-graphql/package-lock.json +++ b/packages/openapi-to-graphql/package-lock.json @@ -4141,16 +4141,6 @@ "integrity": "sha512-ZyVO1xIF9F+4cxfkdhOJINM+51B06Friuv4M66W7HzUOeFd+vNzUn4vtswYINPi6sysjf1M2Ri/rwZALqgwbaQ==", "dev": true }, - "graphql-input-number": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/graphql-input-number/-/graphql-input-number-0.0.10.tgz", - "integrity": "sha1-UJscH7W67virUWp8gsQNzruPg1g=" - }, - "graphql-input-string": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/graphql-input-string/-/graphql-input-string-0.0.16.tgz", - "integrity": "sha1-bHkIpcIcXRwk153dKa5IKbQJWUk=" - }, "graphql-mqtt-subscriptions": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/graphql-mqtt-subscriptions/-/graphql-mqtt-subscriptions-1.2.0.tgz", @@ -4240,6 +4230,11 @@ "iterall": "^1.3.0" } }, + "graphql-scalar": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/graphql-scalar/-/graphql-scalar-0.0.11.tgz", + "integrity": "sha512-VsXecg3QL6WLD2/75kjhmqUU6fDQLg5itc2mQCQhyC6URKWNThzzS3fDYBLkxhSQBXp6amc5T137KLtFRsB+Dw==" + }, "graphql-subscriptions": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/graphql-subscriptions/-/graphql-subscriptions-1.1.0.tgz", diff --git a/packages/openapi-to-graphql/package.json b/packages/openapi-to-graphql/package.json index f5ac2c89..e527f91b 100644 --- a/packages/openapi-to-graphql/package.json +++ b/packages/openapi-to-graphql/package.json @@ -69,8 +69,7 @@ "debug": "^4.1.0", "deep-equal": "^2.0.1", "form-urlencoded": "^4.1.1", - "graphql-input-number": "0.0.10", - "graphql-input-string": "0.0.16", + "graphql-scalar": "0.0.11", "graphql-subscriptions": "^1.1.0", "graphql-type-json": "^0.2.1", "jsonpath-plus": "^3.0.0", diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index 9fae5c95..e924232c 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -18,14 +18,15 @@ import { LinkObject } from './types/oas3' import { Args, GraphQLType, ResolveFunction } from './types/graphql' -import GraphQLInputString from 'graphql-input-string'; import { - GraphQLInputInt, - GraphQLInputFloat, -} from 'graphql-input-number'; + createStringScalar, + createIntScalar, + createFloatScalar, + ScalarSanitizeFunction, + ScalarValidateFunction +} from 'graphql-scalar' import { - GraphQLError, GraphQLScalarType, GraphQLObjectType, GraphQLString, @@ -48,7 +49,14 @@ import * as Oas3Tools from './oas_3_tools' import { getResolver } from './resolver_builder' import { createDataDef } from './preprocessor' import debug from 'debug' -import { handleWarning, sortObject, strictTypeOf } from './utils' +import { + handleWarning, + sortObject, + isSafeInteger, + isSafeLong, + strictTypeOf, + isSafeDate +} from './utils' type GetArgsParams = { requestPayloadDef?: DataDefinition @@ -89,18 +97,27 @@ type LinkOpRefToOpIdParams = { data: PreprocessingData } -type StrictScalarConfig = { +interface StrictScalarConfig { name: string description?: string - min?: number - max?: number + maximum?: number + minimum?: number + maxLength?: number + minLength?: number + nonEmpty?: boolean + pattern?: RegExp | string + singleline?: string trim?: boolean - empty?: boolean - pattern?: string | RegExp - test?: Function - sanitize?: Function - parse?: Function - error?: () => GraphQLError +} + +interface StrictScalarNumberConfig extends StrictScalarConfig { + sanitize?: ScalarSanitizeFunction + validate?: ScalarValidateFunction +} + +interface StrictScalarStringConfig extends StrictScalarConfig { + sanitize?: ScalarSanitizeFunction + validate?: ScalarValidateFunction } const translationLog = debug('translation') @@ -557,47 +574,65 @@ function getScalarType({ isInputObjectType, data }: CreateOrReuseSimpleTypeParams): GraphQLScalarType { + const options: StrictScalarNumberConfig | StrictScalarStringConfig = { + name: '' + } - const name = isInputObjectType - ? def.graphQLInputObjectTypeName - : def.graphQLTypeName; - - const options = {} as StrictScalarConfig; - const typeSet = { type: null, defaultValue: undefined } - - if(isInputObjectType){ + if (isInputObjectType && schema) { + const type = schema.type - options.name = name; + options.name = + schema.title || + 'StrictType' + (Math.random() * Date.now()).toString(16).replace('.', '') - const type = schema.type + if (type === 'string') { + options.trim = true + // options.nonEmpty = !schema.nullable + } - switch(true){ + switch (true) { case typeof schema.minimum === 'number': case typeof schema.minLength === 'number': - options.min = schema.minLength || schema.minimum - break; + options.minimum = type === 'string' ? schema.minLength : schema.minimum + break case typeof schema.maximum === 'number': case typeof schema.maxLength === 'number': - options.max = schema.maxLength || schema.maximum - break; + options.maximum = type === 'string' ? schema.maxLength : schema.maximum + break case typeof schema.pattern === 'string': const qualifier = schema.pattern.match(/\/(.)$/) || ['', ''] - const $pattern = schema.pattern.replace(/^\//, '').replace(/\/(.)?$/, '') + const $pattern = schema.pattern + .replace(/^\//, '') + .replace(/\/(.)?$/, '') options.pattern = new RegExp($pattern, qualifier[1]) - break; + break case typeof schema.description === 'string': - options.description = schema.description.replace(/\s/g, '').trim() - break; + options.description = schema.description.replace(/\s/g, '').trim() + break case typeof schema.format === 'string': case typeof schema.enum !== 'undefined': - const format = schema.format || '-' + const $format = schema.format || '-' const $enum = schema.enum || [] - options.sanitize = (data) => format.startsWith('int') ? parseInt( data ) : ( format === 'float' ? parseFloat( data ) : data) - options.test = (data) => format === 'int64' ? Number.isSafeInteger( data ) : ( format === 'int32' ? data <= Math.pow(2, 31) : ($enum.includes(data) || strictTypeOf(data, type)) ) - break; + options.sanitize = (data: any) => + $format.startsWith('int') + ? parseInt(data) + : $format === 'float' + ? parseFloat(data) + : $format === 'date' || $format === 'date-time' + ? isSafeDate(data) + : data + options.validate = (data: any) => + $format === 'int64' + ? isSafeLong(data) + : $format === 'int32' + ? isSafeInteger(data) + : $enum.includes(String(data)) || strictTypeOf(data, type) + break } + + // options.default = schema.default } switch (def.targetGraphQLType) { @@ -605,33 +640,22 @@ function getScalarType({ def.graphQLType = GraphQLID break case 'string': - options.trim = true - options.empty = schema.nullable || !schema.required - typeSet.type = isInputObjectType ? GraphQLInputString(options) : GraphQLString - - if(schema.default){ - typeSet.defaultValue = schema.default - } - - def.graphQLType = typeSet + def.graphQLType = + isInputObjectType && schema + ? createStringScalar(options as StrictScalarStringConfig) + : GraphQLString break case 'integer': - typeSet.type = isInputObjectType ? GraphQLInputInt(options) : GraphQLInt - - if(schema.default){ - typeSet.defaultValue = schema.default - } - - def.graphQLType = typeSet + def.graphQLType = + isInputObjectType && schema + ? createIntScalar(options as StrictScalarNumberConfig) + : GraphQLInt break case 'number': - typeSet.type = isInputObjectType ? GraphQLInputFloat(options) : GraphQLFloat - - if(schema.default){ - typeSet.defaultValue = schema.default - } - - def.graphQLType = typeSet + def.graphQLType = + isInputObjectType && schema + ? createFloatScalar(options as StrictScalarNumberConfig) + : GraphQLFloat break case 'boolean': def.graphQLType = GraphQLBoolean diff --git a/packages/openapi-to-graphql/src/utils.ts b/packages/openapi-to-graphql/src/utils.ts index bbdda38a..a047467a 100644 --- a/packages/openapi-to-graphql/src/utils.ts +++ b/packages/openapi-to-graphql/src/utils.ts @@ -51,6 +51,31 @@ export const mitigations = { OAUTH_SECURITY_SCHEME: `Ignore security scheme` } +const MAX_INT = 2147483647 +const MIN_INT = -2147483648 + +const MAX_LONG = 9007199254740991 +const MIN_LONG = -9007199254740992 + +export function isSafeInteger(n: unknown): n is number { + return ( + typeof n === 'number' && + isFinite(n) && + Math.floor(n) === n && + n <= MAX_INT && + n >= MIN_INT + ) +} + +export function isSafeLong(n: unknown): n is number { + return typeof n === 'number' && isFinite(n) && n <= MAX_LONG && n >= MIN_LONG +} + +export function isSafeDate(n: string): boolean { + const parsed = Date.parse(n) + return typeof parsed === 'number' && parsed !== NaN && parsed > 0 +} + /** * check if a literal is falsy or not */ From ceea4bff93b2d7a6afd5e5368c8012769993566c Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sun, 10 May 2020 21:58:29 +0100 Subject: [PATCH 07/15] fixing regex checks for scalar input types Signed-off-by: Ifeora Okechukwu --- .../openapi-to-graphql/lib/schema_builder.js | 99 ++++++++++++++--- .../lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/lib/utils.d.ts | 17 +++ packages/openapi-to-graphql/lib/utils.js | 46 ++++++-- packages/openapi-to-graphql/lib/utils.js.map | 2 +- .../openapi-to-graphql/src/schema_builder.ts | 102 +++++++++++++++--- packages/openapi-to-graphql/src/utils.ts | 47 +++++++- 7 files changed, 271 insertions(+), 44 deletions(-) diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 5abff12f..54f36c8e 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -360,54 +360,117 @@ function createOrReuseEnum({ def, data }) { * Returns the GraphQL scalar type matching the given JSON schema type */ function getScalarType({ def, schema, isInputObjectType, data }) { - const options = { name: '' }; - if (isInputObjectType - && schema) { + const options = { + name: '' + }; + if (isInputObjectType && schema) { const type = schema.type; - options.name = schema.title || 'StrictType' + (Math.random() * Date.now()).toString(16).replace('.', ''); + const title = schema.title || ''; + options.name = + title.split(' ').join('') || + 'StrictScalarType' + (Math.random() * Date.now()).toString(16).replace('.', ''); if (type === 'string') { options.trim = true; - // options.nonEmpty = !schema.nullable + if ('nullable' in schema) + options.nonEmpty = !schema.nullable; } switch (true) { case typeof schema.minimum === 'number': case typeof schema.minLength === 'number': - options.minimum = type === 'string' ? schema.minLength : schema.minimum; + if (type === 'string') { + options.minLength = schema.minLength; + } + if (type === 'number' || type === 'integer') { + options.minimum = schema.minimum; + } break; case typeof schema.maximum === 'number': case typeof schema.maxLength === 'number': - options.maximum = type === 'string' ? schema.maxLength : schema.maximum; + if (type === 'string') { + options.maxLength = schema.maxLength; + } + if (type === 'number' || type === 'integer') { + options.maximum = schema.maximum; + } break; case typeof schema.pattern === 'string': - const qualifier = schema.pattern.match(/\/(.)$/) || ['', '']; - const $pattern = schema.pattern.replace(/^\//, '').replace(/\/(.)?$/, ''); - options.pattern = new RegExp($pattern, qualifier[1]); + const $qualifier = schema.pattern.match(/\/(.)$/) || ['', '']; + const $pattern = schema.pattern + .replace(/^\//, '') + .replace(/\/(.)?$/, ''); + if (type === 'string') { + options.pattern = new RegExp($pattern, $qualifier[1]); + } break; case typeof schema.description === 'string': options.description = schema.description.replace(/\s/g, '').trim(); break; + case type !== 'object' && type !== 'array' && type === 'boolean': case typeof schema.format === 'string': case typeof schema.enum !== 'undefined': const $format = schema.format || '-'; const $enum = schema.enum || []; - options.sanitize = (data) => $format.startsWith('int') ? parseInt(data) : ($format === 'float' ? parseFloat(data) : ($format === 'date' || $format === 'date-time' ? utils_1.isSafeDate(data) : data)); - options.validate = (data) => $format === 'int64' ? utils_1.isSafeLong(data) : ($format === 'int32' ? utils_1.isSafeInteger(data) : ($enum.includes(String(data)) || utils_1.strictTypeOf(data, type))); + options.parse = (data) => { + if (type === 'string') { + return String(data); + } + return data; + }; + options.coerce = (data) => { + if (type === 'number' || $format === 'float') { + if (!isFinite(data)) { + throw new graphql_1.GraphQLError('Float cannot represent non numeric value'); + } + } + if (type === 'string') { + if (typeof data !== 'string') { + throw new graphql_1.GraphQLError('String cannot represent a non string value'); + } + } + return data; + }; + options.sanitize = (data) => { + return type === 'integer' || $format.startsWith('int') + ? parseInt(data, 10) + : type === 'number' || $format === 'float' + ? parseFloat(data) + : $format === 'date' || $format === 'date-time' + ? utils_1.isSafeDate(data) && data + : data; + }; + options.validate = (data) => $format === 'int64' + ? utils_1.isSafeLong(data) + : $format === 'int32' + ? utils_1.isSafeInteger(data) + : $format === 'uuid' + ? utils_1.isUUID(data) + : $format === 'url' + ? utils_1.isURL(data) + : $enum.includes(String(data)) || utils_1.strictTypeOf(data, type); break; } - // options.default = schema.default } switch (def.targetGraphQLType) { case 'id': def.graphQLType = graphql_1.GraphQLID; break; case 'string': - def.graphQLType = isInputObjectType && schema ? graphql_scalar_1.createStringScalar(options) : graphql_1.GraphQLString; + def.graphQLType = + isInputObjectType && schema + ? graphql_scalar_1.createStringScalar(options) + : graphql_1.GraphQLString; break; case 'integer': - def.graphQLType = isInputObjectType && schema ? graphql_scalar_1.createIntScalar(options) : graphql_1.GraphQLInt; + def.graphQLType = + isInputObjectType && schema + ? graphql_scalar_1.createIntScalar(options) + : graphql_1.GraphQLInt; break; case 'number': - def.graphQLType = isInputObjectType && schema ? graphql_scalar_1.createFloatScalar(options) : graphql_1.GraphQLFloat; + def.graphQLType = + isInputObjectType && schema + ? graphql_scalar_1.createFloatScalar(options) + : graphql_1.GraphQLFloat; break; case 'boolean': def.graphQLType = graphql_1.GraphQLBoolean; @@ -434,6 +497,7 @@ function createFields({ def, links, operation, data, iteration, isInputObjectTyp const objectType = getGraphQLType({ def: fieldTypeDefinition, operation, + schema: fieldSchema, data, iteration: iteration + 1, isInputObjectType @@ -934,6 +998,7 @@ function getArgs({ requestPayloadDef, parameters, operation, data }) { const reqObjectType = getGraphQLType({ def: requestPayloadDef, data, + schema: requestPayloadDef.schema, operation, isInputObjectType: true // Request payloads will always be an input object type }); @@ -946,7 +1011,7 @@ function getArgs({ requestPayloadDef, parameters, operation, data }) { ? operation.payloadRequired : false; args[saneName] = { - type: reqRequired ? new graphql_1.GraphQLNonNull(reqObjectType) : reqObjectType, + type: reqRequired ? new graphql_1.GraphQLNonNull(reqObjectType) : typeof requestPayloadDef.schema.default !== 'undefined' ? { type: reqObjectType, defaultValue: requestPayloadDef.schema.default } : reqObjectType, // TODO: addendum to the description explaining this is the request body description: requestPayloadDef.schema.description }; diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index c790299a..5fc31168 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/utils.d.ts b/packages/openapi-to-graphql/lib/utils.d.ts index b9440f4b..b71fbe10 100644 --- a/packages/openapi-to-graphql/lib/utils.d.ts +++ b/packages/openapi-to-graphql/lib/utils.d.ts @@ -33,8 +33,25 @@ export declare const mitigations: { LIMIT_ARGUMENT_NAME_COLLISION: string; OAUTH_SECURITY_SCHEME: string; }; +/** + * verify that a variable contains a safe int (2^31) + */ export declare function isSafeInteger(n: unknown): n is number; +/** + * verify that a variable contains a safe long (2^53) + */ export declare function isSafeLong(n: unknown): n is number; +/** + * verify that a vriable contains a valid UUID string + */ +export declare function isUUID(s: any): boolean; +/** + * verify + */ +export declare function isURL(s: any): boolean; +/** + * verify that a vriable contains a safe date/date-time string + */ export declare function isSafeDate(n: string): boolean; /** * get the correct type of a variable diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index df0e8d99..95f9d70f 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -47,24 +47,53 @@ const MAX_INT = 2147483647; const MIN_INT = -2147483648; const MAX_LONG = 9007199254740991; const MIN_LONG = -9007199254740992; +/** + * verify that a variable contains a safe int (2^31) + */ function isSafeInteger(n) { - return typeof n === 'number' && + return (typeof n === 'number' && isFinite(n) && Math.floor(n) === n && n <= MAX_INT && - n >= MIN_INT; + n >= MIN_INT); } exports.isSafeInteger = isSafeInteger; +/** + * verify that a variable contains a safe long (2^53) + */ function isSafeLong(n) { - return typeof n === 'number' && - isFinite(n) && - n <= MAX_LONG && - n >= MIN_LONG; + return typeof n === 'number' && isFinite(n) && n <= MAX_LONG && n >= MIN_LONG; } exports.isSafeLong = isSafeLong; +/** + * verify that a vriable contains a valid UUID string + */ +function isUUID(s) { + const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i; + return uuidRegExp.test(s); +} +exports.isUUID = isUUID; +/** + * verify + */ +function isURL(s) { + let res = null; + try { + res = s.match(/(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z0-9]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g); + } + catch (e) { + res = null; + } + return (res !== null); +} +exports.isURL = isURL; +; +/** + * verify that a vriable contains a safe date/date-time string + */ function isSafeDate(n) { const parsed = Date.parse(n); - return typeof parsed === 'number' && parsed !== NaN && parsed > 0; + return typeof parsed === 'number' && parsed !== NaN && parsed > 0 && String(parsed).length === 13; } exports.isSafeDate = isSafeDate; /** @@ -91,6 +120,9 @@ const checkTypeName = (target, type) => { */ function strictTypeOf(value, type) { let result = false; + if (type === 'integer') { + type = 'number'; + } type = type || []; if (typeof type === 'object') { if (typeof type.length !== 'number') { diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index d7963942..36df8131 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index e924232c..b473d21f 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -23,10 +23,13 @@ import { createIntScalar, createFloatScalar, ScalarSanitizeFunction, - ScalarValidateFunction + ScalarValidateFunction, + ScalarCoerceFunction, + ScalarParseFunction } from 'graphql-scalar' import { + GraphQLError, GraphQLScalarType, GraphQLObjectType, GraphQLString, @@ -55,7 +58,9 @@ import { isSafeInteger, isSafeLong, strictTypeOf, - isSafeDate + isSafeDate, + isUUID, + isURL } from './utils' type GetArgsParams = { @@ -111,11 +116,17 @@ interface StrictScalarConfig { } interface StrictScalarNumberConfig extends StrictScalarConfig { + serialize?: ScalarSanitizeFunction + parse?: ScalarParseFunction + coerce?: ScalarCoerceFunction sanitize?: ScalarSanitizeFunction validate?: ScalarValidateFunction } interface StrictScalarStringConfig extends StrictScalarConfig { + serialize?: ScalarSanitizeFunction + parse?: ScalarParseFunction + coerce?: ScalarCoerceFunction sanitize?: ScalarSanitizeFunction validate?: ScalarValidateFunction } @@ -580,59 +591,106 @@ function getScalarType({ if (isInputObjectType && schema) { const type = schema.type + const title = schema.title || '' options.name = - schema.title || - 'StrictType' + (Math.random() * Date.now()).toString(16).replace('.', '') + title.split(' ').join('') || + 'StrictScalarType' + + (Math.random() * Date.now()).toString(16).replace('.', '') if (type === 'string') { options.trim = true - // options.nonEmpty = !schema.nullable + if ('nullable' in schema) options.nonEmpty = !schema.nullable } switch (true) { case typeof schema.minimum === 'number': case typeof schema.minLength === 'number': - options.minimum = type === 'string' ? schema.minLength : schema.minimum + if (type === 'string') { + options.minLength = schema.minLength + } + + if (type === 'number' || type === 'integer') { + options.minimum = schema.minimum + } break case typeof schema.maximum === 'number': case typeof schema.maxLength === 'number': - options.maximum = type === 'string' ? schema.maxLength : schema.maximum + if (type === 'string') { + options.maxLength = schema.maxLength + } + + if (type === 'number' || type === 'integer') { + options.maximum = schema.maximum + } break case typeof schema.pattern === 'string': - const qualifier = schema.pattern.match(/\/(.)$/) || ['', ''] + const $qualifier = schema.pattern.match(/\/(.)$/) || ['', ''] const $pattern = schema.pattern .replace(/^\//, '') .replace(/\/(.)?$/, '') - options.pattern = new RegExp($pattern, qualifier[1]) + if (type === 'string') { + options.pattern = new RegExp($pattern, $qualifier[1]) + } break case typeof schema.description === 'string': options.description = schema.description.replace(/\s/g, '').trim() break + case type !== 'object' && type !== 'array' && type === 'boolean': case typeof schema.format === 'string': case typeof schema.enum !== 'undefined': const $format = schema.format || '-' const $enum = schema.enum || [] - options.sanitize = (data: any) => - $format.startsWith('int') - ? parseInt(data) - : $format === 'float' + options.parse = (data: any) => { + if (type === 'string') { + return String(data) as string + } + + return data + } + + options.coerce = (data: any) => { + if (type === 'number' || $format === 'float') { + if (!isFinite(data)) { + throw new GraphQLError('Float cannot represent non numeric value') + } + } + + if (type === 'string') { + if (typeof data !== 'string') { + throw new GraphQLError( + 'String cannot represent a non string value' + ) + } + } + + return data + } + + options.sanitize = (data: any) => { + return type === 'integer' || $format.startsWith('int') + ? parseInt(data, 10) + : type === 'number' || $format === 'float' ? parseFloat(data) : $format === 'date' || $format === 'date-time' - ? isSafeDate(data) + ? isSafeDate(data) && data : data + } + options.validate = (data: any) => $format === 'int64' ? isSafeLong(data) : $format === 'int32' ? isSafeInteger(data) + : $format === 'uuid' + ? isUUID(data) + : $format === 'url' + ? isURL(data) : $enum.includes(String(data)) || strictTypeOf(data, type) break } - - // options.default = schema.default } switch (def.targetGraphQLType) { @@ -696,6 +754,7 @@ function createFields({ const objectType = getGraphQLType({ def: fieldTypeDefinition, operation, + schema: fieldSchema, data, iteration: iteration + 1, isInputObjectType @@ -1308,6 +1367,7 @@ export function getArgs({ const reqObjectType = getGraphQLType({ def: requestPayloadDef, data, + schema: requestPayloadDef.schema, operation, isInputObjectType: true // Request payloads will always be an input object type }) @@ -1324,7 +1384,15 @@ export function getArgs({ : false args[saneName] = { - type: reqRequired ? new GraphQLNonNull(reqObjectType) : reqObjectType, + type: reqRequired + ? new GraphQLNonNull(reqObjectType) + : typeof (requestPayloadDef.schema as SchemaObject).default !== + 'undefined' + ? { + type: reqObjectType, + defaultValue: (requestPayloadDef.schema as SchemaObject).default + } + : reqObjectType, // TODO: addendum to the description explaining this is the request body description: requestPayloadDef.schema.description } diff --git a/packages/openapi-to-graphql/src/utils.ts b/packages/openapi-to-graphql/src/utils.ts index a047467a..937aaa17 100644 --- a/packages/openapi-to-graphql/src/utils.ts +++ b/packages/openapi-to-graphql/src/utils.ts @@ -57,6 +57,9 @@ const MIN_INT = -2147483648 const MAX_LONG = 9007199254740991 const MIN_LONG = -9007199254740992 +/** + * verify that a variable contains a safe int (2^31) + */ export function isSafeInteger(n: unknown): n is number { return ( typeof n === 'number' && @@ -67,13 +70,51 @@ export function isSafeInteger(n: unknown): n is number { ) } +/** + * verify that a variable contains a safe long (2^53) + */ + export function isSafeLong(n: unknown): n is number { return typeof n === 'number' && isFinite(n) && n <= MAX_LONG && n >= MIN_LONG } +/** + * verify that a vriable contains a valid UUID string + */ + +export function isUUID(s: any): boolean { + const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i + return uuidRegExp.test(s) +} + +/** + * verify + */ + +export function isURL(s: any): boolean { + let res = null + try { + res = s.match( + /(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z0-9]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g + ) + } catch (e) { + res = null + } + return res !== null +} + +/** + * verify that a vriable contains a safe date/date-time string + */ + export function isSafeDate(n: string): boolean { const parsed = Date.parse(n) - return typeof parsed === 'number' && parsed !== NaN && parsed > 0 + return ( + typeof parsed === 'number' && + parsed !== NaN && + parsed > 0 && + String(parsed).length === 13 + ) } /** @@ -103,6 +144,10 @@ const checkTypeName = (target, type): boolean => { export function strictTypeOf(value, type): boolean { let result = false + if (type === 'integer') { + type = 'number' + } + type = type || [] if (typeof type === 'object') { From 9d19d030f04ac95757aa9ae8ad95889de4564bf0 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sun, 10 May 2020 22:09:16 +0100 Subject: [PATCH 08/15] signedoff: linting checks Signed-off-by: Ifeora Okechukwu --- packages/openapi-to-graphql/lib/schema_builder.js | 13 +++++++++++-- .../openapi-to-graphql/lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/lib/utils.js | 8 +++++--- packages/openapi-to-graphql/lib/utils.js.map | 2 +- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 54f36c8e..12cdb887 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -368,7 +368,8 @@ function getScalarType({ def, schema, isInputObjectType, data }) { const title = schema.title || ''; options.name = title.split(' ').join('') || - 'StrictScalarType' + (Math.random() * Date.now()).toString(16).replace('.', ''); + 'StrictScalarType' + + (Math.random() * Date.now()).toString(16).replace('.', ''); if (type === 'string') { options.trim = true; if ('nullable' in schema) @@ -1011,7 +1012,15 @@ function getArgs({ requestPayloadDef, parameters, operation, data }) { ? operation.payloadRequired : false; args[saneName] = { - type: reqRequired ? new graphql_1.GraphQLNonNull(reqObjectType) : typeof requestPayloadDef.schema.default !== 'undefined' ? { type: reqObjectType, defaultValue: requestPayloadDef.schema.default } : reqObjectType, + type: reqRequired + ? new graphql_1.GraphQLNonNull(reqObjectType) + : typeof requestPayloadDef.schema.default !== + 'undefined' + ? { + type: reqObjectType, + defaultValue: requestPayloadDef.schema.default + } + : reqObjectType, // TODO: addendum to the description explaining this is the request body description: requestPayloadDef.schema.description }; diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index 5fc31168..07cdd528 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index 95f9d70f..eee9910a 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -84,16 +84,18 @@ function isURL(s) { catch (e) { res = null; } - return (res !== null); + return res !== null; } exports.isURL = isURL; -; /** * verify that a vriable contains a safe date/date-time string */ function isSafeDate(n) { const parsed = Date.parse(n); - return typeof parsed === 'number' && parsed !== NaN && parsed > 0 && String(parsed).length === 13; + return (typeof parsed === 'number' && + parsed !== NaN && + parsed > 0 && + String(parsed).length === 13); } exports.isSafeDate = isSafeDate; /** diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index 36df8131..b559cea8 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file From babbf9a332e728bde803bf3cd51eda0c5edd5a13 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Wed, 13 May 2020 00:52:05 +0100 Subject: [PATCH 09/15] signed-off: added strict scalar types based on openapi schema object for input type Signed-off-by: Ifeora Okechukwu --- .../lib/scalar_validators/StrictFloat.d.ts | 3 + .../lib/scalar_validators/StrictFloat.js | 89 +++++++ .../lib/scalar_validators/StrictFloat.js.map | 1 + .../lib/scalar_validators/StrictInt.d.ts | 3 + .../lib/scalar_validators/StrictInt.js | 88 +++++++ .../lib/scalar_validators/StrictInt.js.map | 1 + .../lib/scalar_validators/StrictString.d.ts | 3 + .../lib/scalar_validators/StrictString.js | 177 +++++++++++++ .../lib/scalar_validators/StrictString.js.map | 1 + .../lib/scalar_validators/common_def.d.ts | 5 + .../lib/scalar_validators/common_def.js | 26 ++ .../lib/scalar_validators/common_def.js.map | 1 + .../lib/scalar_validators/strict_float.d.ts | 3 + .../lib/scalar_validators/strict_float.js | 89 +++++++ .../lib/scalar_validators/strict_float.js.map | 1 + .../lib/scalar_validators/strict_int.d.ts | 3 + .../lib/scalar_validators/strict_int.js | 88 +++++++ .../lib/scalar_validators/strict_int.js.map | 1 + .../lib/scalar_validators/strict_string.d.ts | 3 + .../lib/scalar_validators/strict_string.js | 176 +++++++++++++ .../scalar_validators/strict_string.js.map | 1 + .../openapi-to-graphql/lib/schema_builder.js | 58 +++-- .../lib/schema_builder.js.map | 2 +- .../openapi-to-graphql/lib/types/oas3.d.ts | 4 +- .../lib/types/strict_scalars.d.ts | 52 ++++ .../lib/types/strict_scalars.js | 3 + .../lib/types/strict_scalars.js.map | 1 + packages/openapi-to-graphql/lib/utils.d.ts | 24 +- packages/openapi-to-graphql/lib/utils.js | 68 +++-- packages/openapi-to-graphql/lib/utils.js.map | 2 +- packages/openapi-to-graphql/package-lock.json | 5 - packages/openapi-to-graphql/package.json | 1 - .../src/scalar_validators/common_def.ts | 40 +++ .../src/scalar_validators/strict_float.ts | 124 +++++++++ .../src/scalar_validators/strict_int.ts | 121 +++++++++ .../src/scalar_validators/strict_string.ts | 236 ++++++++++++++++++ .../openapi-to-graphql/src/schema_builder.ts | 97 +++---- packages/openapi-to-graphql/src/types/oas3.ts | 4 +- .../src/types/strict_scalars.ts | 76 ++++++ packages/openapi-to-graphql/src/utils.ts | 86 +++++-- 40 files changed, 1628 insertions(+), 139 deletions(-) create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.d.ts create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.js create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.js.map create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictInt.d.ts create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictInt.js create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictInt.js.map create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictString.d.ts create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictString.js create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/StrictString.js.map create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/common_def.d.ts create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/common_def.js create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_float.d.ts create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_float.js create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_int.d.ts create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_int.js create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_string.d.ts create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_string.js create mode 100644 packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map create mode 100644 packages/openapi-to-graphql/lib/types/strict_scalars.d.ts create mode 100644 packages/openapi-to-graphql/lib/types/strict_scalars.js create mode 100644 packages/openapi-to-graphql/lib/types/strict_scalars.js.map create mode 100644 packages/openapi-to-graphql/src/scalar_validators/common_def.ts create mode 100644 packages/openapi-to-graphql/src/scalar_validators/strict_float.ts create mode 100644 packages/openapi-to-graphql/src/scalar_validators/strict_int.ts create mode 100644 packages/openapi-to-graphql/src/scalar_validators/strict_string.ts create mode 100644 packages/openapi-to-graphql/src/types/strict_scalars.ts diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.d.ts b/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.d.ts new file mode 100644 index 00000000..d2f9dc30 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.d.ts @@ -0,0 +1,3 @@ +import { GraphQLScalarType } from 'graphql'; +import { StrictScalarNumberConfig } from '../types/strict_scalars'; +export declare const createFloatScalar: (config: StrictScalarNumberConfig) => GraphQLScalarType; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.js b/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.js new file mode 100644 index 00000000..18e864a1 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.js @@ -0,0 +1,89 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const graphql_1 = require("graphql"); +const common_def_1 = require("./common_def"); +const utils_1 = require("../utils"); +// https://github.com/graphql/graphql-js/blob/master/src/type/scalars.js +exports.createFloatScalar = (config) => { + const { coerce, errorHandler, maximum, minimum, parse, sanitize, validate, serialize } = config, scalarConfig = __rest(config, ["coerce", "errorHandler", "maximum", "minimum", "parse", "sanitize", "validate", "serialize"]); + const handleError = errorHandler || common_def_1.defaultErrorHandler; + const parseValue = (unknownValue, ast) => { + // null inputs don't come here + // Coersion Phase + if (unknownValue == null) { + return null; + } + let value; + if (utils_1.strictTypeOf(unknownValue, 'number')) { + value = unknownValue; + } + else { + if (coerce) { + const valueOrNull = coerce(unknownValue); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config, + }); + } + } + // Sanitization Phase + if (sanitize && value != null) { + const valueOrNull = sanitize(value); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + // Validation Phase + if (minimum != null && value < minimum) { + return handleError({ + code: 'minimum', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (maximum != null && value > maximum) { + return handleError({ + code: 'maximum', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config, + }); + } + return value; + }; + return new graphql_1.GraphQLScalarType(Object.assign(Object.assign({}, scalarConfig), { serialize: serialize || common_def_1.defaultSerialize, parseValue, parseLiteral: (ast) => parseValue(common_def_1.getValueFromValueNode(ast), ast) })); +}; +//# sourceMappingURL=StrictFloat.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.js.map b/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.js.map new file mode 100644 index 00000000..b98eea44 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictFloat.js.map @@ -0,0 +1 @@ +{"version":3,"file":"StrictFloat.js","sourceRoot":"","sources":["../../src/scalar_validators/StrictFloat.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAuD;AAEvD,6CAIsB;AAGtB,oCAAuC;AAIvC,wEAAwE;AAE3D,QAAA,iBAAiB,GAAG,CAC7B,MAAgC,EACb,EAAE;IAErB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,6HACQ,CAAC;IAEX,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAC;IAExD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QAEpB,8BAA8B;QAE9B,iBAAiB;QAGjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAC;SACb;QAGD,IAAI,KAAa,CAAC;QAElB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAC;SAEhC;aAAM;YAEL,IAAI,MAAM,EAAE;gBAEV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEzC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAC;iBACb;gBAED,KAAK,GAAG,WAAW,CAAC;aAErB;iBAAM;gBAEL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAC;aACJ;SACF;QAGD,qBAAqB;QAGrB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAE7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEpC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAC;aACb;YACD,KAAK,GAAG,WAAW,CAAC;SACrB;QAID,mBAAmB;QAGnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAEhC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAGD,OAAO,KAAY,CAAC;IAEtB,CAAC,CAAC;IAIF,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAC;AAEL,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.d.ts b/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.d.ts new file mode 100644 index 00000000..621141fb --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.d.ts @@ -0,0 +1,3 @@ +import { GraphQLScalarType } from 'graphql'; +import { StrictScalarNumberConfig } from '../types/strict_scalars'; +export declare const createIntScalar: (config: StrictScalarNumberConfig) => GraphQLScalarType; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.js b/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.js new file mode 100644 index 00000000..ed1332d6 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.js @@ -0,0 +1,88 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const graphql_1 = require("graphql"); +const common_def_1 = require("./common_def"); +const utils_1 = require("../utils"); +exports.createIntScalar = (config) => { + const { coerce, errorHandler, maximum, minimum, sanitize, validate, serialize } = config, scalarConfig = __rest(config, ["coerce", "errorHandler", "maximum", "minimum", "sanitize", "validate", "serialize"]); + const handleError = errorHandler || common_def_1.defaultErrorHandler; + const parseValue = (unknownValue, ast) => { + // null inputs don't come here + // Coersion Phase + if (unknownValue == null) { + return null; + } + let value; + if (utils_1.strictTypeOf(unknownValue, 'number')) { + value = unknownValue; + } + else { + if (coerce) { + const valueOrNull = coerce(unknownValue); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config, + }); + } + } + // Sanitization Phase + if (sanitize && value != null) { + const valueOrNull = sanitize(value); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + // Validation Phase + if (minimum != null && value < minimum) { + return handleError({ + code: 'minimum', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (maximum != null && value > maximum) { + return handleError({ + code: 'maximum', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config, + }); + } + return value; + }; + return new graphql_1.GraphQLScalarType(Object.assign(Object.assign({}, scalarConfig), { serialize: serialize || common_def_1.defaultSerialize, parseValue, parseLiteral: (ast) => parseValue(common_def_1.getValueFromValueNode(ast), ast) })); +}; +//# sourceMappingURL=StrictInt.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.js.map b/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.js.map new file mode 100644 index 00000000..ef07e8c6 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictInt.js.map @@ -0,0 +1 @@ +{"version":3,"file":"StrictInt.js","sourceRoot":"","sources":["../../src/scalar_validators/StrictInt.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAuD;AACvD,6CAIsB;AAGtB,oCAAuC;AAI1B,QAAA,eAAe,GAAG,CAE3B,MAAgC,EAEb,EAAE;IAErB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,oHACQ,CAAC;IAGX,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAC;IAExD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QAEpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAC;SACb;QAGD,IAAI,KAAa,CAAC;QAElB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAC;SAChC;aAAM;YAEL,IAAI,MAAM,EAAE;gBAEV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEzC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAC;iBACb;gBAED,KAAK,GAAG,WAAW,CAAC;aAErB;iBAAM;gBAEL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAC;aACJ;SACF;QAGD,uBAAuB;QAEvB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAE7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEpC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAC;aACb;YAED,KAAK,GAAG,WAAW,CAAC;SACrB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAEhC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAED,OAAO,KAAY,CAAC;IACtB,CAAC,CAAC;IAEF,OAAO,IAAI,2BAAiB,iCACzB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACpC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAE7C,CAAC;AACP,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictString.d.ts b/packages/openapi-to-graphql/lib/scalar_validators/StrictString.d.ts new file mode 100644 index 00000000..0ee8e348 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictString.d.ts @@ -0,0 +1,3 @@ +import { GraphQLScalarType } from 'graphql'; +import { StrictScalarStringConfig } from '../types/strict_scalars'; +export declare const createStringScalar: (config: StrictScalarStringConfig) => GraphQLScalarType; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictString.js b/packages/openapi-to-graphql/lib/scalar_validators/StrictString.js new file mode 100644 index 00000000..707c62c4 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictString.js @@ -0,0 +1,177 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const graphql_1 = require("graphql"); +const common_def_1 = require("./common_def"); +const utils_1 = require("../utils"); +const strToUpperCase = (str) => str.toUpperCase(); +const wordRegex = /(?:^|\s)\S/g; +const sentenceRegex = /(?:^|\.\s)\S/g; +const newlineRegex = /[\r\n]+/g; +const newlineWithWSRegex = /\s*[\r\n]+\s*/g; +const linebreakRegex = /\r\n|\r|\n/g; +const whitespace = /\s+/g; +const collapseWS = (str) => str.replace(whitespace, ' '); +const trimAndCollapseWS = (str) => str.trim().replace(whitespace, ' '); +exports.createStringScalar = (config) => { + const { capitalize, coerce, collapseWhitespace, errorHandler, lowercase, maxEmptyLines, maxLength, minLength, nonEmpty, pattern, sanitize, serialize, singleline, trim, truncate, uppercase, validate } = config, scalarConfig = __rest(config, ["capitalize", "coerce", "collapseWhitespace", "errorHandler", "lowercase", "maxEmptyLines", "maxLength", "minLength", "nonEmpty", "pattern", "sanitize", "serialize", "singleline", "trim", "truncate", "uppercase", "validate"]); + const regex = typeof pattern === 'string' ? new RegExp(pattern) : (utils_1.strictTypeOf(pattern, 'regexp') ? pattern : /^.$/); + const handleError = errorHandler || common_def_1.defaultErrorHandler; + let emptyLineRegex = null; + let emptyLineString = null; + if (maxEmptyLines) { + emptyLineRegex = new RegExp(`\n{${maxEmptyLines + 2},}`, 'g'); + emptyLineString = '\n'.repeat(maxEmptyLines + 1); + } + const parseValue = (unknownValue, ast) => { + // null inputs don't come here + // Coersion Phase + if (unknownValue == null) { + return null; + } + let value; + if (typeof unknownValue === 'string') { + value = unknownValue; + } + else { + if (coerce) { + const valueOrNull = coerce(unknownValue); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config, + }); + } + } + // Sanitization Phase + if (value) { + if (trim) { + value = value.trim(); + } + if (value) { + if (singleline) { + value = value.replace(newlineRegex, singleline); + } + if (collapseWhitespace) { + if (singleline) { + // newlines replaced already + value = value.replace(whitespace, ' '); + } + else if (maxEmptyLines) { + value = value + .split(linebreakRegex) + .map(trimAndCollapseWS) + .join('\n') + .replace(emptyLineRegex, emptyLineString); + } + else { + value = value + .split(newlineWithWSRegex) + .map(collapseWS) + .join('\n'); + } + } + if (truncate != null && value.length > truncate) { + value = value.substring(0, truncate); + } + if (uppercase) { + value = value.toUpperCase(); + } + else if (lowercase) { + value = value.toLowerCase(); + } + if (capitalize) { + switch (capitalize) { + case 'characters': + value = value.toUpperCase(); + break; + case 'words': + value = value.replace(wordRegex, strToUpperCase); + break; + case 'sentences': + value = value.replace(sentenceRegex, strToUpperCase); + break; + case 'first': + default: + value = value[0].toUpperCase() + value.slice(1); + break; + } + } + } + } + if (sanitize) { + const valueOrNull = sanitize(value); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + // Validation Phase + if (nonEmpty && !value) { + return handleError({ + code: 'empty', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (minLength != null && value.length < minLength) { + return handleError({ + code: 'minLength', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (maxLength != null && value.length > maxLength) { + return handleError({ + code: 'maxLength', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (regex != null && !regex.test(value)) { + return handleError({ + code: 'pattern', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config, + }); + } + return value; + }; + return new graphql_1.GraphQLScalarType(Object.assign(Object.assign({}, scalarConfig), { serialize: serialize || common_def_1.defaultSerialize, parseValue, parseLiteral: (ast) => parseValue(common_def_1.getValueFromValueNode(ast), ast) })); +}; +//# sourceMappingURL=StrictString.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/StrictString.js.map b/packages/openapi-to-graphql/lib/scalar_validators/StrictString.js.map new file mode 100644 index 00000000..fc2b91be --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/StrictString.js.map @@ -0,0 +1 @@ +{"version":3,"file":"StrictString.js","sourceRoot":"","sources":["../../src/scalar_validators/StrictString.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/common_def.d.ts b/packages/openapi-to-graphql/lib/scalar_validators/common_def.d.ts new file mode 100644 index 00000000..d59e33ac --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/common_def.d.ts @@ -0,0 +1,5 @@ +import { ValueNode } from 'graphql'; +import { ScalarParseErrorHandler } from '../types/strict_scalars'; +export declare const defaultErrorHandler: ScalarParseErrorHandler; +export declare const defaultSerialize: (x: any) => any; +export declare const getValueFromValueNode: (ast: ValueNode) => any; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js new file mode 100644 index 00000000..d46cf35a --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js @@ -0,0 +1,26 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const graphql_1 = require("graphql"); +const graphql_2 = require("graphql"); +exports.defaultErrorHandler = ({ code, ast, }) => { + throw new graphql_2.GraphQLError(`code=${code}`, ast ? [ast] : []); +}; +exports.defaultSerialize = (x) => x; +exports.getValueFromValueNode = (ast) => { + switch (ast.kind) { + case graphql_1.Kind.BOOLEAN: + return ast.value; + case graphql_1.Kind.FLOAT: + return parseFloat(ast.value); + case graphql_1.Kind.INT: + return parseInt(ast.value, 10); + case graphql_1.Kind.NULL: + return null; + case graphql_1.Kind.STRING: + return ast.value; + case graphql_1.Kind.ENUM: + return ast.value; + } + return undefined; +}; +//# sourceMappingURL=common_def.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map new file mode 100644 index 00000000..046531ba --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map @@ -0,0 +1 @@ +{"version":3,"file":"common_def.js","sourceRoot":"","sources":["../../src/scalar_validators/common_def.ts"],"names":[],"mappings":";;AAAA,qCAQmB;AAEjB,qCAAuC;AAM1B,QAAA,mBAAmB,GAAsC,CAAC,EACrE,IAAI,EACJ,GAAG,GACJ,EAAS,EAAE;IACV,MAAM,IAAI,sBAAY,CAAC,QAAQ,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC7D,CAAC,CAAC;AAIW,QAAA,gBAAgB,GAAG,CAAC,CAAM,EAAO,EAAE,CAAC,CAAC,CAAC;AAItC,QAAA,qBAAqB,GAAG,CAAC,GAAc,EAAO,EAAE;IAEzD,QAAQ,GAAG,CAAC,IAAI,EAAE;QAChB,KAAK,cAAI,CAAC,OAAO;YACf,OAAQ,GAAwB,CAAC,KAAK,CAAC;QACzC,KAAK,cAAI,CAAC,KAAK;YACb,OAAO,UAAU,CAAE,GAAsB,CAAC,KAAK,CAAC,CAAC;QACnD,KAAK,cAAI,CAAC,GAAG;YACX,OAAO,QAAQ,CAAE,GAAoB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnD,KAAK,cAAI,CAAC,IAAI;YACZ,OAAO,IAAI,CAAC;QACd,KAAK,cAAI,CAAC,MAAM;YACd,OAAQ,GAAuB,CAAC,KAAK,CAAC;QACxC,KAAK,cAAI,CAAC,IAAI;YACZ,OAAQ,GAAqB,CAAC,KAAK,CAAC;KACvC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.d.ts b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.d.ts new file mode 100644 index 00000000..d2f9dc30 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.d.ts @@ -0,0 +1,3 @@ +import { GraphQLScalarType } from 'graphql'; +import { StrictScalarNumberConfig } from '../types/strict_scalars'; +export declare const createFloatScalar: (config: StrictScalarNumberConfig) => GraphQLScalarType; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js new file mode 100644 index 00000000..63484f22 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js @@ -0,0 +1,89 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const graphql_1 = require("graphql"); +const common_def_1 = require("./common_def"); +const utils_1 = require("../utils"); +// https://github.com/graphql/graphql-js/blob/master/src/type/scalars.js +exports.createFloatScalar = (config) => { + const { coerce, errorHandler, maximum, minimum, parse, sanitize, validate, serialize } = config, scalarConfig = __rest(config, ["coerce", "errorHandler", "maximum", "minimum", "parse", "sanitize", "validate", "serialize"]); + const handleError = errorHandler || common_def_1.defaultErrorHandler; + const parseValue = (unknownValue, ast) => { + // null inputs don't come here + // Coersion Phase + if (unknownValue == null) { + return null; + } + let value; + if (utils_1.strictTypeOf(unknownValue, 'number')) { + value = unknownValue; + } + else { + if (coerce) { + const valueOrNull = coerce(unknownValue); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config, + }); + } + } + // Sanitization Phase + if (sanitize && value != null) { + const valueOrNull = sanitize(value); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + // Validation Phase + if (minimum != null && value < minimum) { + return handleError({ + code: 'minimum', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (maximum != null && value > maximum) { + return handleError({ + code: 'maximum', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config, + }); + } + return value; + }; + return new graphql_1.GraphQLScalarType(Object.assign(Object.assign({}, scalarConfig), { serialize: serialize || common_def_1.defaultSerialize, parseValue, parseLiteral: (ast) => parseValue(common_def_1.getValueFromValueNode(ast), ast) })); +}; +//# sourceMappingURL=strict_float.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map new file mode 100644 index 00000000..d34e8b81 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map @@ -0,0 +1 @@ +{"version":3,"file":"strict_float.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_float.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAuD;AAEvD,6CAIsB;AAGtB,oCAAuC;AAIvC,wEAAwE;AAE3D,QAAA,iBAAiB,GAAG,CAC7B,MAAgC,EACb,EAAE;IAErB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,6HACQ,CAAC;IAEX,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAC;IAExD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QAEpB,8BAA8B;QAE9B,iBAAiB;QAGjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAC;SACb;QAGD,IAAI,KAAa,CAAC;QAElB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAC;SAEhC;aAAM;YAEL,IAAI,MAAM,EAAE;gBAEV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEzC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAC;iBACb;gBAED,KAAK,GAAG,WAAW,CAAC;aAErB;iBAAM;gBAEL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAC;aACJ;SACF;QAGD,qBAAqB;QAGrB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAE7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEpC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAC;aACb;YACD,KAAK,GAAG,WAAW,CAAC;SACrB;QAID,mBAAmB;QAGnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAEhC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAGD,OAAO,KAAY,CAAC;IAEtB,CAAC,CAAC;IAIF,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAC;AAEL,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.d.ts b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.d.ts new file mode 100644 index 00000000..621141fb --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.d.ts @@ -0,0 +1,3 @@ +import { GraphQLScalarType } from 'graphql'; +import { StrictScalarNumberConfig } from '../types/strict_scalars'; +export declare const createIntScalar: (config: StrictScalarNumberConfig) => GraphQLScalarType; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js new file mode 100644 index 00000000..5af2caf0 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js @@ -0,0 +1,88 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const graphql_1 = require("graphql"); +const common_def_1 = require("./common_def"); +const utils_1 = require("../utils"); +exports.createIntScalar = (config) => { + const { coerce, errorHandler, maximum, minimum, sanitize, validate, serialize } = config, scalarConfig = __rest(config, ["coerce", "errorHandler", "maximum", "minimum", "sanitize", "validate", "serialize"]); + const handleError = errorHandler || common_def_1.defaultErrorHandler; + const parseValue = (unknownValue, ast) => { + // null inputs don't come here + // Coersion Phase + if (unknownValue == null) { + return null; + } + let value; + if (utils_1.strictTypeOf(unknownValue, 'number')) { + value = unknownValue; + } + else { + if (coerce) { + const valueOrNull = coerce(unknownValue); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config, + }); + } + } + // Sanitization Phase + if (sanitize && value != null) { + const valueOrNull = sanitize(value); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + // Validation Phase + if (minimum != null && value < minimum) { + return handleError({ + code: 'minimum', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (maximum != null && value > maximum) { + return handleError({ + code: 'maximum', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config, + }); + } + return value; + }; + return new graphql_1.GraphQLScalarType(Object.assign(Object.assign({}, scalarConfig), { serialize: serialize || common_def_1.defaultSerialize, parseValue, parseLiteral: (ast) => parseValue(common_def_1.getValueFromValueNode(ast), ast) })); +}; +//# sourceMappingURL=strict_int.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map new file mode 100644 index 00000000..291ff13e --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map @@ -0,0 +1 @@ +{"version":3,"file":"strict_int.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_int.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAuD;AACvD,6CAIsB;AAGtB,oCAAuC;AAI1B,QAAA,eAAe,GAAG,CAE3B,MAAgC,EAEb,EAAE;IAErB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,oHACQ,CAAC;IAGX,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAC;IAExD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QAEpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAC;SACb;QAGD,IAAI,KAAa,CAAC;QAElB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAC;SAChC;aAAM;YAEL,IAAI,MAAM,EAAE;gBAEV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEzC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAC;iBACb;gBAED,KAAK,GAAG,WAAW,CAAC;aAErB;iBAAM;gBAEL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAC;aACJ;SACF;QAGD,uBAAuB;QAEvB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAE7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEpC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAC;aACb;YAED,KAAK,GAAG,WAAW,CAAC;SACrB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAEhC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAED,OAAO,KAAY,CAAC;IACtB,CAAC,CAAC;IAEF,OAAO,IAAI,2BAAiB,iCACzB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACpC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAE7C,CAAC;AACP,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.d.ts b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.d.ts new file mode 100644 index 00000000..0ee8e348 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.d.ts @@ -0,0 +1,3 @@ +import { GraphQLScalarType } from 'graphql'; +import { StrictScalarStringConfig } from '../types/strict_scalars'; +export declare const createStringScalar: (config: StrictScalarStringConfig) => GraphQLScalarType; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js new file mode 100644 index 00000000..412d3230 --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js @@ -0,0 +1,176 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const graphql_1 = require("graphql"); +const common_def_1 = require("./common_def"); +const strToUpperCase = (str) => str.toUpperCase(); +const wordRegex = /(?:^|\s)\S/g; +const sentenceRegex = /(?:^|\.\s)\S/g; +const newlineRegex = /[\r\n]+/g; +const newlineWithWSRegex = /\s*[\r\n]+\s*/g; +const linebreakRegex = /\r\n|\r|\n/g; +const whitespace = /\s+/g; +const collapseWS = (str) => str.replace(whitespace, ' '); +const trimAndCollapseWS = (str) => str.trim().replace(whitespace, ' '); +exports.createStringScalar = (config) => { + const { capitalize, coerce, collapseWhitespace, errorHandler, lowercase, maxEmptyLines, maxLength, minLength, nonEmpty, pattern, sanitize, serialize, singleline, trim, truncate, uppercase, validate } = config, scalarConfig = __rest(config, ["capitalize", "coerce", "collapseWhitespace", "errorHandler", "lowercase", "maxEmptyLines", "maxLength", "minLength", "nonEmpty", "pattern", "sanitize", "serialize", "singleline", "trim", "truncate", "uppercase", "validate"]); + const regex = typeof pattern === 'string' ? new RegExp(pattern) : pattern; + const handleError = errorHandler || common_def_1.defaultErrorHandler; + let emptyLineRegex = null; + let emptyLineString = null; + if (maxEmptyLines) { + emptyLineRegex = new RegExp(`\n{${maxEmptyLines + 2},}`, 'g'); + emptyLineString = '\n'.repeat(maxEmptyLines + 1); + } + const parseValue = (unknownValue, ast) => { + // null inputs don't come here + // Coersion Phase + if (unknownValue == null) { + return null; + } + let value; + if (typeof unknownValue === 'string') { + value = unknownValue; + } + else { + if (coerce) { + const valueOrNull = coerce(unknownValue); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config, + }); + } + } + // Sanitization Phase + if (value) { + if (trim) { + value = value.trim(); + } + if (value) { + if (singleline) { + value = value.replace(newlineRegex, singleline); + } + if (collapseWhitespace) { + if (singleline) { + // newlines replaced already + value = value.replace(whitespace, ' '); + } + else if (maxEmptyLines) { + value = value + .split(linebreakRegex) + .map(trimAndCollapseWS) + .join('\n') + .replace(emptyLineRegex, emptyLineString); + } + else { + value = value + .split(newlineWithWSRegex) + .map(collapseWS) + .join('\n'); + } + } + if (truncate != null && value.length > truncate) { + value = value.substring(0, truncate); + } + if (uppercase) { + value = value.toUpperCase(); + } + else if (lowercase) { + value = value.toLowerCase(); + } + if (capitalize) { + switch (capitalize) { + case 'characters': + value = value.toUpperCase(); + break; + case 'words': + value = value.replace(wordRegex, strToUpperCase); + break; + case 'sentences': + value = value.replace(sentenceRegex, strToUpperCase); + break; + case 'first': + default: + value = value[0].toUpperCase() + value.slice(1); + break; + } + } + } + } + if (sanitize) { + const valueOrNull = sanitize(value); + if (valueOrNull == null) { + return null; + } + value = valueOrNull; + } + // Validation Phase + if (nonEmpty && !value) { + return handleError({ + code: 'empty', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (minLength != null && value.length < minLength) { + return handleError({ + code: 'minLength', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (maxLength != null && value.length > maxLength) { + return handleError({ + code: 'maxLength', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (regex != null && !regex.test(value)) { + return handleError({ + code: 'pattern', + originalValue: unknownValue, + value, + ast, + config, + }); + } + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config, + }); + } + return value; + }; + return new graphql_1.GraphQLScalarType(Object.assign(Object.assign({}, scalarConfig), { serialize: serialize || common_def_1.defaultSerialize, parseValue, parseLiteral: (ast) => parseValue(common_def_1.getValueFromValueNode(ast), ast) })); +}; +//# sourceMappingURL=strict_string.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map new file mode 100644 index 00000000..89ae321a --- /dev/null +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map @@ -0,0 +1 @@ +{"version":3,"file":"strict_string.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_string.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 12cdb887..15e96fde 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -4,7 +4,9 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); -const graphql_scalar_1 = require("graphql-scalar"); +const strict_string_1 = require("./scalar_validators/strict_string"); +const strict_int_1 = require("./scalar_validators/strict_int"); +const strict_float_1 = require("./scalar_validators/strict_float"); const graphql_1 = require("graphql"); // Imports: const GraphQLJSON = require("graphql-type-json"); @@ -411,14 +413,10 @@ function getScalarType({ def, schema, isInputObjectType, data }) { case typeof schema.enum !== 'undefined': const $format = schema.format || '-'; const $enum = schema.enum || []; - options.parse = (data) => { - if (type === 'string') { - return String(data); - } - return data; - }; options.coerce = (data) => { - if (type === 'number' || $format === 'float') { + if ($format === 'int64' + || $format === 'long' + || $format === 'float') { if (!isFinite(data)) { throw new graphql_1.GraphQLError('Float cannot represent non numeric value'); } @@ -430,24 +428,32 @@ function getScalarType({ def, schema, isInputObjectType, data }) { } return data; }; + options.serialize = (data) => { + if ($format === 'date' || $format === 'date-time') { + return utils_1.serializeDate(data); + } + return data; + }; options.sanitize = (data) => { return type === 'integer' || $format.startsWith('int') - ? parseInt(data, 10) - : type === 'number' || $format === 'float' - ? parseFloat(data) - : $format === 'date' || $format === 'date-time' - ? utils_1.isSafeDate(data) && data - : data; + ? utils_1.isSafeInteger(data) && parseInt(data, 10) + : $format === 'long' + ? utils_1.isSafeLong(data) && data + : type === 'number' || $format === 'float' + ? utils_1.isSafeFloat(data) && parseFloat(data) + : $format === 'date' || $format === 'date-time' + ? utils_1.isSafeDate(data) && data + : $format === 'uuid' + ? utils_1.isUUIDOrGUID(data) && data + : $format === 'email' + ? utils_1.isEmail(data) && data + : $format === 'url' + ? utils_1.isURL(data) && data + : data; + }; + options.validate = (data) => { + return $enum.includes(data) || utils_1.strictTypeOf(data, type); }; - options.validate = (data) => $format === 'int64' - ? utils_1.isSafeLong(data) - : $format === 'int32' - ? utils_1.isSafeInteger(data) - : $format === 'uuid' - ? utils_1.isUUID(data) - : $format === 'url' - ? utils_1.isURL(data) - : $enum.includes(String(data)) || utils_1.strictTypeOf(data, type); break; } } @@ -458,19 +464,19 @@ function getScalarType({ def, schema, isInputObjectType, data }) { case 'string': def.graphQLType = isInputObjectType && schema - ? graphql_scalar_1.createStringScalar(options) + ? strict_string_1.createStringScalar(options) : graphql_1.GraphQLString; break; case 'integer': def.graphQLType = isInputObjectType && schema - ? graphql_scalar_1.createIntScalar(options) + ? strict_int_1.createIntScalar(options) : graphql_1.GraphQLInt; break; case 'number': def.graphQLType = isInputObjectType && schema - ? graphql_scalar_1.createFloatScalar(options) + ? strict_float_1.createFloatScalar(options) : graphql_1.GraphQLFloat; break; case 'boolean': diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index 07cdd528..b1dd0abd 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/types/oas3.d.ts b/packages/openapi-to-graphql/lib/types/oas3.d.ts index 06f76370..3958e11a 100644 --- a/packages/openapi-to-graphql/lib/types/oas3.d.ts +++ b/packages/openapi-to-graphql/lib/types/oas3.d.ts @@ -25,7 +25,7 @@ export declare type SchemaObject = { additionalProperties?: SchemaObject | ReferenceObject; items?: SchemaObject | ReferenceObject; additionalItems?: boolean | string[]; - enum?: string[]; + enum?: any[]; allOf?: (SchemaObject | ReferenceObject)[]; anyOf?: (SchemaObject | ReferenceObject)[]; oneOf?: (SchemaObject | ReferenceObject)[]; @@ -69,7 +69,7 @@ export declare type MediaTypeObject = { }; export declare type ParameterObject = { name: string; - in: 'query' | 'header' | 'path' | 'cookie'; + in: 'query' | 'header' | 'path' | 'cookie' | 'body'; description?: string; required?: boolean; deprecated?: boolean; diff --git a/packages/openapi-to-graphql/lib/types/strict_scalars.d.ts b/packages/openapi-to-graphql/lib/types/strict_scalars.d.ts new file mode 100644 index 00000000..92cec748 --- /dev/null +++ b/packages/openapi-to-graphql/lib/types/strict_scalars.d.ts @@ -0,0 +1,52 @@ +import { ValueNode } from 'graphql'; +export interface IScalarParseError { + code: TCode; + originalValue: unknown; + value: unknown; + ast?: ValueNode; + config: TConfig; +} +export declare type ScalarParseErrorHandler = (errorInfo: IScalarParseError) => TInternal; +declare type ScalarCoerceFunction = (raw: unknown) => T | null | undefined; +declare type ScalarSanitizeFunction = (value: T) => T | null | undefined; +declare type ScalarValidateFunction = (value: T) => boolean; +declare type ScalarParseFunction = (value: T) => U; +declare type ScalarSerializeFunction = (value: T) => U; +interface StrictScalarConfig { + name: string; + maximum?: number; + minimum?: number; + pattern?: RegExp | string; + maxLength?: number; + minLength?: number; + description?: string; + trim?: boolean; + nonEmpty?: boolean; +} +export declare type CaptilizeForm = 'characters' | 'words' | 'sentences' | 'first'; +export declare type NumberScalarErrorCode = 'type' | 'minimum' | 'maximum' | 'validate'; +export declare type StringScalarErrorCode = 'type' | 'empty' | 'minLength' | 'maxLength' | 'pattern' | 'validate'; +export interface StrictScalarNumberConfig extends StrictScalarConfig { + errorHandler?: ScalarParseErrorHandler; + serialize?: ScalarSerializeFunction; + parse?: ScalarParseFunction; + coerce?: ScalarCoerceFunction; + sanitize?: ScalarSanitizeFunction; + validate?: ScalarValidateFunction; +} +export interface StrictScalarStringConfig extends StrictScalarConfig { + maxEmptyLines?: number; + capitalize?: CaptilizeForm; + collapseWhitespace?: boolean; + truncate?: number; + uppercase?: boolean; + lowercase?: boolean; + singleline?: string; + errorHandler?: ScalarParseErrorHandler; + serialize?: ScalarSerializeFunction; + parse?: ScalarParseFunction; + coerce?: ScalarCoerceFunction; + sanitize?: ScalarSanitizeFunction; + validate?: ScalarValidateFunction; +} +export {}; diff --git a/packages/openapi-to-graphql/lib/types/strict_scalars.js b/packages/openapi-to-graphql/lib/types/strict_scalars.js new file mode 100644 index 00000000..264eddaa --- /dev/null +++ b/packages/openapi-to-graphql/lib/types/strict_scalars.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=strict_scalars.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/types/strict_scalars.js.map b/packages/openapi-to-graphql/lib/types/strict_scalars.js.map new file mode 100644 index 00000000..9aa31527 --- /dev/null +++ b/packages/openapi-to-graphql/lib/types/strict_scalars.js.map @@ -0,0 +1 @@ +{"version":3,"file":"strict_scalars.js","sourceRoot":"","sources":["../../src/types/strict_scalars.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/utils.d.ts b/packages/openapi-to-graphql/lib/utils.d.ts index b71fbe10..d315aed0 100644 --- a/packages/openapi-to-graphql/lib/utils.d.ts +++ b/packages/openapi-to-graphql/lib/utils.d.ts @@ -36,23 +36,35 @@ export declare const mitigations: { /** * verify that a variable contains a safe int (2^31) */ -export declare function isSafeInteger(n: unknown): n is number; +export declare function isSafeInteger(n: unknown): boolean; /** * verify that a variable contains a safe long (2^53) */ -export declare function isSafeLong(n: unknown): n is number; +export declare function isSafeLong(n: unknown): boolean; /** - * verify that a vriable contains a valid UUID string + * */ -export declare function isUUID(s: any): boolean; +export declare function isSafeFloat(n: unknown): boolean; /** - * verify + * */ -export declare function isURL(s: any): boolean; +export declare function serializeDate(n: string): string; /** * verify that a vriable contains a safe date/date-time string */ export declare function isSafeDate(n: string): boolean; +/** + * + */ +export declare function isURL(s: string): boolean; +/** + * + */ +export declare function isEmail(s: string): boolean; +/** + * + */ +export declare function isUUIDOrGUID(s: string): boolean; /** * get the correct type of a variable */ diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index eee9910a..205b23b8 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -66,20 +66,49 @@ function isSafeLong(n) { } exports.isSafeLong = isSafeLong; /** - * verify that a vriable contains a valid UUID string + * */ -function isUUID(s) { - const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i; - return uuidRegExp.test(s); +function isSafeFloat(n) { + return false; +} +exports.isSafeFloat = isSafeFloat; +/** + * + */ +function toDate(n) { + const parsed = Date.parse(n); + const $ref = new Date(); + $ref.setTime(parsed); + return typeof parsed === 'number' && + parsed !== NaN && + parsed > 0 && + String(parsed).length === 13 && $ref || null; } -exports.isUUID = isUUID; /** - * verify + * + */ +function serializeDate(n) { + const date = toDate(n); + return date && date.toJSON(); +} +exports.serializeDate = serializeDate; +/** + * verify that a vriable contains a safe date/date-time string + */ +function isSafeDate(n) { + const date = toDate(n); + return (date !== null && + (date.getTime()) !== NaN); +} +exports.isSafeDate = isSafeDate; +/** + * */ function isURL(s) { let res = null; + const urlRegex = /(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z0-9]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g; try { - res = s.match(/(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z0-9]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g); + res = s.match(urlRegex); } catch (e) { res = null; @@ -88,16 +117,25 @@ function isURL(s) { } exports.isURL = isURL; /** - * verify that a vriable contains a safe date/date-time string + * */ -function isSafeDate(n) { - const parsed = Date.parse(n); - return (typeof parsed === 'number' && - parsed !== NaN && - parsed > 0 && - String(parsed).length === 13); +function isEmail(s) { + const emailRegex = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/; + return emailRegex.test(s); } -exports.isSafeDate = isSafeDate; +exports.isEmail = isEmail; +/** + * + */ +function isUUIDOrGUID(s) { + const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i; + const guidRegExp = /^(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}$/gi; + if (s.startsWith('{')) { + s = s.substring(1, s.length - 1); + } + return uuidRegExp.test(s) || guidRegExp.test(s); +} +exports.isUUIDOrGUID = isUUIDOrGUID; /** * check if a literal is falsy or not */ diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index b559cea8..a340acab 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/package-lock.json b/packages/openapi-to-graphql/package-lock.json index 1223ee08..b14df6f5 100644 --- a/packages/openapi-to-graphql/package-lock.json +++ b/packages/openapi-to-graphql/package-lock.json @@ -4230,11 +4230,6 @@ "iterall": "^1.3.0" } }, - "graphql-scalar": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/graphql-scalar/-/graphql-scalar-0.0.11.tgz", - "integrity": "sha512-VsXecg3QL6WLD2/75kjhmqUU6fDQLg5itc2mQCQhyC6URKWNThzzS3fDYBLkxhSQBXp6amc5T137KLtFRsB+Dw==" - }, "graphql-subscriptions": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/graphql-subscriptions/-/graphql-subscriptions-1.1.0.tgz", diff --git a/packages/openapi-to-graphql/package.json b/packages/openapi-to-graphql/package.json index e527f91b..dd5c7f79 100644 --- a/packages/openapi-to-graphql/package.json +++ b/packages/openapi-to-graphql/package.json @@ -69,7 +69,6 @@ "debug": "^4.1.0", "deep-equal": "^2.0.1", "form-urlencoded": "^4.1.1", - "graphql-scalar": "0.0.11", "graphql-subscriptions": "^1.1.0", "graphql-type-json": "^0.2.1", "jsonpath-plus": "^3.0.0", diff --git a/packages/openapi-to-graphql/src/scalar_validators/common_def.ts b/packages/openapi-to-graphql/src/scalar_validators/common_def.ts new file mode 100644 index 00000000..d3ac4b58 --- /dev/null +++ b/packages/openapi-to-graphql/src/scalar_validators/common_def.ts @@ -0,0 +1,40 @@ +import { + BooleanValueNode, + EnumValueNode, + FloatValueNode, + IntValueNode, + Kind, + StringValueNode, + ValueNode +} from 'graphql' + +import { GraphQLError } from 'graphql' + +import { ScalarParseErrorHandler } from '../types/strict_scalars' + +export const defaultErrorHandler: ScalarParseErrorHandler = ({ + code, + ast +}): never => { + throw new GraphQLError(`code=${code}`, ast ? [ast] : []) +} + +export const defaultSerialize = (x: any): any => x + +export const getValueFromValueNode = (ast: ValueNode): any => { + switch (ast.kind) { + case Kind.BOOLEAN: + return (ast as BooleanValueNode).value + case Kind.FLOAT: + return parseFloat((ast as FloatValueNode).value) + case Kind.INT: + return parseInt((ast as IntValueNode).value, 10) + case Kind.NULL: + return null + case Kind.STRING: + return (ast as StringValueNode).value + case Kind.ENUM: + return (ast as EnumValueNode).value + } + return undefined +} diff --git a/packages/openapi-to-graphql/src/scalar_validators/strict_float.ts b/packages/openapi-to-graphql/src/scalar_validators/strict_float.ts new file mode 100644 index 00000000..7e666b1c --- /dev/null +++ b/packages/openapi-to-graphql/src/scalar_validators/strict_float.ts @@ -0,0 +1,124 @@ +import { GraphQLScalarType, ValueNode } from 'graphql' + +import { + defaultErrorHandler, + defaultSerialize, + getValueFromValueNode +} from './common_def' + +import { strictTypeOf } from '../utils' + +import { + StrictScalarNumberConfig, + NumberScalarErrorCode +} from '../types/strict_scalars' + +// https://github.com/graphql/graphql-js/blob/master/src/type/scalars.js + +export const createFloatScalar = ( + config: StrictScalarNumberConfig +): GraphQLScalarType => { + const { + coerce, + errorHandler, + maximum, + minimum, + parse, + sanitize, + validate, + serialize, + ...scalarConfig + } = config + + const handleError = errorHandler || defaultErrorHandler + + const parseValue = ( + unknownValue: unknown, + ast?: ValueNode + ): TInternal | null => { + // null inputs don't come here + + // Coersion Phase + + if (unknownValue == null) { + return null + } + + let value: number + + if (strictTypeOf(unknownValue, 'number')) { + value = unknownValue as number + } else { + if (coerce) { + const valueOrNull = coerce(unknownValue) + + if (valueOrNull == null) { + return null + } + + value = valueOrNull + } else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config + }) + } + } + + // Sanitization Phase + + if (sanitize && value != null) { + const valueOrNull = sanitize(value) + + if (valueOrNull == null) { + return null + } + value = valueOrNull + } + + // Validation Phase + + if (minimum != null && value < minimum) { + return handleError({ + code: 'minimum', + originalValue: unknownValue, + value, + ast, + config + }) + } + + if (maximum != null && value > maximum) { + return handleError({ + code: 'maximum', + originalValue: unknownValue, + value, + ast, + config + }) + } + + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config + }) + } + + return value as any + } + + return new GraphQLScalarType({ + ...scalarConfig, + serialize: serialize || defaultSerialize, + parseValue, + parseLiteral: (ast): TInternal | null => + parseValue(getValueFromValueNode(ast), ast) + }) +} diff --git a/packages/openapi-to-graphql/src/scalar_validators/strict_int.ts b/packages/openapi-to-graphql/src/scalar_validators/strict_int.ts new file mode 100644 index 00000000..0e09a83a --- /dev/null +++ b/packages/openapi-to-graphql/src/scalar_validators/strict_int.ts @@ -0,0 +1,121 @@ +import { GraphQLScalarType, ValueNode } from 'graphql' +import { + defaultErrorHandler, + defaultSerialize, + getValueFromValueNode +} from './common_def' + +import { strictTypeOf } from '../utils' + +import { + StrictScalarNumberConfig, + NumberScalarErrorCode +} from '../types/strict_scalars' + +export const createIntScalar = ( + config: StrictScalarNumberConfig +): GraphQLScalarType => { + const { + coerce, + errorHandler, + maximum, + minimum, + sanitize, + validate, + serialize, + ...scalarConfig + } = config + + const handleError = errorHandler || defaultErrorHandler + + const parseValue = ( + unknownValue: unknown, + ast?: ValueNode + ): TInternal | null => { + // null inputs don't come here + + // Coersion Phase + + if (unknownValue == null) { + return null + } + + let value: number + + if (strictTypeOf(unknownValue, 'number')) { + value = unknownValue as number + } else { + if (coerce) { + const valueOrNull = coerce(unknownValue) + + if (valueOrNull == null) { + return null + } + + value = valueOrNull + } else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config + }) + } + } + + // Sanitization Phase + + if (sanitize && value != null) { + const valueOrNull = sanitize(value) + + if (valueOrNull == null) { + return null + } + + value = valueOrNull + } + + // Validation Phase + + if (minimum != null && value < minimum) { + return handleError({ + code: 'minimum', + originalValue: unknownValue, + value, + ast, + config + }) + } + + if (maximum != null && value > maximum) { + return handleError({ + code: 'maximum', + originalValue: unknownValue, + value, + ast, + config + }) + } + + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config + }) + } + + return value as any + } + + return new GraphQLScalarType({ + ...scalarConfig, + serialize: serialize || defaultSerialize, + parseValue, + parseLiteral: (ast): TInternal | null => + parseValue(getValueFromValueNode(ast), ast) + }) +} diff --git a/packages/openapi-to-graphql/src/scalar_validators/strict_string.ts b/packages/openapi-to-graphql/src/scalar_validators/strict_string.ts new file mode 100644 index 00000000..55e6f264 --- /dev/null +++ b/packages/openapi-to-graphql/src/scalar_validators/strict_string.ts @@ -0,0 +1,236 @@ +import { GraphQLScalarType, ValueNode } from 'graphql' +import { StrictScalarStringConfig } from '../types/strict_scalars' + +import { + defaultErrorHandler, + defaultSerialize, + getValueFromValueNode +} from './common_def' + +import { strictTypeOf } from '../utils' + +const strToUpperCase = (str: string): string => str.toUpperCase() + +const wordRegex = /(?:^|\s)\S/g + +const sentenceRegex = /(?:^|\.\s)\S/g + +const newlineRegex = /[\r\n]+/g + +const newlineWithWSRegex = /\s*[\r\n]+\s*/g + +const linebreakRegex = /\r\n|\r|\n/g + +const whitespace = /\s+/g + +const collapseWS = (str: string): string => str.replace(whitespace, ' ') + +const trimAndCollapseWS = (str: string): string => + str.trim().replace(whitespace, ' ') + +export const createStringScalar = ( + config: StrictScalarStringConfig +): GraphQLScalarType => { + const { + capitalize, + coerce, + collapseWhitespace, + errorHandler, + lowercase, + maxEmptyLines, + maxLength, + minLength, + nonEmpty, + pattern, + sanitize, + serialize, + singleline, + trim, + truncate, + uppercase, + validate, + ...scalarConfig + } = config + + const regex: RegExp = + typeof pattern === 'string' ? new RegExp(pattern) : (pattern as RegExp) + + const handleError = errorHandler || defaultErrorHandler + + let emptyLineRegex: RegExp | null = null + + let emptyLineString: string | null = null + + if (maxEmptyLines) { + emptyLineRegex = new RegExp(`\n{${maxEmptyLines + 2},}`, 'g') + + emptyLineString = '\n'.repeat(maxEmptyLines + 1) + } + + const parseValue = ( + unknownValue: unknown, + + ast?: ValueNode + ): TInternal | null => { + // null inputs don't come here + + // Coersion Phase + + if (unknownValue == null) { + return null + } + + let value: string + if (typeof unknownValue === 'string') { + value = unknownValue + } else { + if (coerce) { + const valueOrNull = coerce(unknownValue) + + if (valueOrNull == null) { + return null + } + value = valueOrNull + } else { + return handleError({ + code: 'type', + originalValue: unknownValue, + value: unknownValue, + ast, + config + }) + } + } + + // Sanitization Phase + + if (value) { + if (trim) { + value = value.trim() + } + + if (value) { + if (singleline) { + value = value.replace(newlineRegex, singleline) + } + + if (collapseWhitespace) { + if (singleline) { + // newlines replaced already + value = value.replace(whitespace, ' ') + } else if (maxEmptyLines) { + value = value + .split(linebreakRegex) + .map(trimAndCollapseWS) + .join('\n') + .replace(emptyLineRegex!, emptyLineString!) + } else { + value = value + .split(newlineWithWSRegex) + .map(collapseWS) + .join('\n') + } + } + + if (truncate != null && value.length > truncate) { + value = value.substring(0, truncate) + } + + if (uppercase) { + value = value.toUpperCase() + } else if (lowercase) { + value = value.toLowerCase() + } + + if (capitalize) { + switch (capitalize) { + case 'characters': + value = value.toUpperCase() + break + case 'words': + value = value.replace(wordRegex, strToUpperCase) + break + case 'sentences': + value = value.replace(sentenceRegex, strToUpperCase) + break + case 'first': + + default: + value = value[0].toUpperCase() + value.slice(1) + break + } + } + } + } + + if (sanitize) { + const valueOrNull = sanitize(value) + if (valueOrNull == null) { + return null + } + value = valueOrNull + } + + // Validation Phase + + if (nonEmpty && !value) { + return handleError({ + code: 'empty', + originalValue: unknownValue, + value, + ast, + config + }) + } + + if (minLength != null && value.length < minLength) { + return handleError({ + code: 'minLength', + originalValue: unknownValue, + value, + ast, + config + }) + } + + if (maxLength != null && value.length > maxLength) { + return handleError({ + code: 'maxLength', + originalValue: unknownValue, + value, + ast, + config + }) + } + + if (regex != null && !regex.test(value)) { + return handleError({ + code: 'pattern', + originalValue: unknownValue, + value, + ast, + config + }) + } + + if (validate && !validate(value)) { + return handleError({ + code: 'validate', + originalValue: unknownValue, + value, + ast, + config + }) + } + + return value as any + } + + return new GraphQLScalarType({ + ...scalarConfig, + serialize: serialize || defaultSerialize, + parseValue, + parseLiteral: (ast): TInternal | null => + parseValue(getValueFromValueNode(ast), ast) + }) +} diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index b473d21f..80703936 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -10,6 +10,10 @@ // Type imports: import { PreprocessingData } from './types/preprocessing_data' import { Operation, DataDefinition } from './types/operation' +import { + StrictScalarNumberConfig, + StrictScalarStringConfig +} from './types/strict_scalars' import { Oas3, SchemaObject, @@ -18,15 +22,10 @@ import { LinkObject } from './types/oas3' import { Args, GraphQLType, ResolveFunction } from './types/graphql' -import { - createStringScalar, - createIntScalar, - createFloatScalar, - ScalarSanitizeFunction, - ScalarValidateFunction, - ScalarCoerceFunction, - ScalarParseFunction -} from 'graphql-scalar' + +import { createStringScalar } from './scalar_validators/strict_string' +import { createIntScalar } from './scalar_validators/strict_int' +import { createFloatScalar } from './scalar_validators/strict_float' import { GraphQLError, @@ -57,11 +56,15 @@ import { sortObject, isSafeInteger, isSafeLong, + isSafeFloat, strictTypeOf, isSafeDate, - isUUID, + serializeDate, + isUUIDOrGUID, + isEmail, isURL } from './utils' +import { serialize } from 'v8' type GetArgsParams = { requestPayloadDef?: DataDefinition @@ -102,35 +105,6 @@ type LinkOpRefToOpIdParams = { data: PreprocessingData } -interface StrictScalarConfig { - name: string - description?: string - maximum?: number - minimum?: number - maxLength?: number - minLength?: number - nonEmpty?: boolean - pattern?: RegExp | string - singleline?: string - trim?: boolean -} - -interface StrictScalarNumberConfig extends StrictScalarConfig { - serialize?: ScalarSanitizeFunction - parse?: ScalarParseFunction - coerce?: ScalarCoerceFunction - sanitize?: ScalarSanitizeFunction - validate?: ScalarValidateFunction -} - -interface StrictScalarStringConfig extends StrictScalarConfig { - serialize?: ScalarSanitizeFunction - parse?: ScalarParseFunction - coerce?: ScalarCoerceFunction - sanitize?: ScalarSanitizeFunction - validate?: ScalarValidateFunction -} - const translationLog = debug('translation') /** @@ -643,16 +617,12 @@ function getScalarType({ const $format = schema.format || '-' const $enum = schema.enum || [] - options.parse = (data: any) => { - if (type === 'string') { - return String(data) as string - } - - return data - } - options.coerce = (data: any) => { - if (type === 'number' || $format === 'float') { + if ( + $format === 'int64' || + $format === 'long' || + $format === 'float' + ) { if (!isFinite(data)) { throw new GraphQLError('Float cannot represent non numeric value') } @@ -665,30 +635,37 @@ function getScalarType({ ) } } + return data + } + options.serialize = (data: any) => { + if ($format === 'date' || $format === 'date-time') { + return serializeDate(data) + } return data } options.sanitize = (data: any) => { return type === 'integer' || $format.startsWith('int') - ? parseInt(data, 10) + ? isSafeInteger(data) && parseInt(data, 10) + : $format === 'long' + ? isSafeLong(data) && data : type === 'number' || $format === 'float' - ? parseFloat(data) + ? isSafeFloat(data) && parseFloat(data) : $format === 'date' || $format === 'date-time' ? isSafeDate(data) && data + : $format === 'uuid' + ? isUUIDOrGUID(data) && data + : $format === 'email' + ? isEmail(data) && data + : $format === 'url' + ? isURL(data) && data : data } - options.validate = (data: any) => - $format === 'int64' - ? isSafeLong(data) - : $format === 'int32' - ? isSafeInteger(data) - : $format === 'uuid' - ? isUUID(data) - : $format === 'url' - ? isURL(data) - : $enum.includes(String(data)) || strictTypeOf(data, type) + options.validate = (data: any) => { + return $enum.includes(data) || strictTypeOf(data, type) + } break } } diff --git a/packages/openapi-to-graphql/src/types/oas3.ts b/packages/openapi-to-graphql/src/types/oas3.ts index 606b1470..8c728c37 100644 --- a/packages/openapi-to-graphql/src/types/oas3.ts +++ b/packages/openapi-to-graphql/src/types/oas3.ts @@ -34,7 +34,7 @@ export type SchemaObject = { additionalProperties?: SchemaObject | ReferenceObject items?: SchemaObject | ReferenceObject // MUST be a single schema object in OAS, see https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.1.md#properties additionalItems?: boolean | string[] - enum?: string[] + enum?: any[] allOf?: (SchemaObject | ReferenceObject)[] anyOf?: (SchemaObject | ReferenceObject)[] oneOf?: (SchemaObject | ReferenceObject)[] @@ -84,7 +84,7 @@ export type MediaTypeObject = { export type ParameterObject = { name: string - in: 'query' | 'header' | 'path' | 'cookie' + in: 'query' | 'header' | 'path' | 'cookie' | 'body' description?: string required?: boolean deprecated?: boolean diff --git a/packages/openapi-to-graphql/src/types/strict_scalars.ts b/packages/openapi-to-graphql/src/types/strict_scalars.ts new file mode 100644 index 00000000..b8b63b0d --- /dev/null +++ b/packages/openapi-to-graphql/src/types/strict_scalars.ts @@ -0,0 +1,76 @@ +import { GraphQLScalarTypeConfig, ValueNode } from 'graphql' + +export interface IScalarParseError { + code: TCode + originalValue: unknown + value: unknown + ast?: ValueNode + config: TConfig +} + +// may throw + +export type ScalarParseErrorHandler = ( + errorInfo: IScalarParseError +) => TInternal + +// coerce raw external input value into internal value + +type ScalarCoerceFunction = (raw: unknown) => T | null | undefined + +type ScalarSanitizeFunction = (value: T) => T | null | undefined + +type ScalarValidateFunction = (value: T) => boolean + +type ScalarParseFunction = (value: T) => U + +type ScalarSerializeFunction = (value: T) => U + +interface StrictScalarConfig { + name: string + maximum?: number + minimum?: number + pattern?: RegExp | string + maxLength?: number + minLength?: number + description?: string + trim?: boolean + nonEmpty?: boolean +} + +export type CaptilizeForm = 'characters' | 'words' | 'sentences' | 'first' + +export type NumberScalarErrorCode = 'type' | 'minimum' | 'maximum' | 'validate' + +export type StringScalarErrorCode = + | 'type' + | 'empty' + | 'minLength' + | 'maxLength' + | 'pattern' + | 'validate' + +export interface StrictScalarNumberConfig extends StrictScalarConfig { + errorHandler?: ScalarParseErrorHandler + serialize?: ScalarSerializeFunction + parse?: ScalarParseFunction + coerce?: ScalarCoerceFunction + sanitize?: ScalarSanitizeFunction + validate?: ScalarValidateFunction +} + +export interface StrictScalarStringConfig extends StrictScalarConfig { + maxEmptyLines?: number + capitalize?: CaptilizeForm + collapseWhitespace?: boolean + truncate?: number + uppercase?: boolean + lowercase?: boolean + singleline?: string + errorHandler?: ScalarParseErrorHandler + serialize?: ScalarSerializeFunction + parse?: ScalarParseFunction + coerce?: ScalarCoerceFunction + sanitize?: ScalarSanitizeFunction + validate?: ScalarValidateFunction +} diff --git a/packages/openapi-to-graphql/src/utils.ts b/packages/openapi-to-graphql/src/utils.ts index 937aaa17..730011a2 100644 --- a/packages/openapi-to-graphql/src/utils.ts +++ b/packages/openapi-to-graphql/src/utils.ts @@ -60,7 +60,7 @@ const MIN_LONG = -9007199254740992 /** * verify that a variable contains a safe int (2^31) */ -export function isSafeInteger(n: unknown): n is number { +export function isSafeInteger(n: unknown): boolean { return ( typeof n === 'number' && isFinite(n) && @@ -74,29 +74,65 @@ export function isSafeInteger(n: unknown): n is number { * verify that a variable contains a safe long (2^53) */ -export function isSafeLong(n: unknown): n is number { +export function isSafeLong(n: unknown): boolean { return typeof n === 'number' && isFinite(n) && n <= MAX_LONG && n >= MIN_LONG } /** - * verify that a vriable contains a valid UUID string + * */ -export function isUUID(s: any): boolean { - const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i - return uuidRegExp.test(s) +export function isSafeFloat(n: unknown): boolean { + return false } /** - * verify + * */ -export function isURL(s: any): boolean { +function toDate(n: string) { + const parsed = Date.parse(n) + const $ref = new Date() + + $ref.setTime(parsed) + + return ( + (typeof parsed === 'number' && + parsed !== NaN && + parsed > 0 && + String(parsed).length === 13 && + $ref) || + null + ) +} + +/** + * + */ + +export function serializeDate(n: string) { + const date = toDate(n) + return date && date.toJSON() +} + +/** + * verify that a vriable contains a safe date/date-time string + */ + +export function isSafeDate(n: string): boolean { + const date = toDate(n) + return date !== null && date.getTime() !== NaN +} + +/** + * + */ + +export function isURL(s: string): boolean { let res = null + const urlRegex = /(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z0-9]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g try { - res = s.match( - /(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z0-9]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g - ) + res = s.match(urlRegex) } catch (e) { res = null } @@ -104,17 +140,27 @@ export function isURL(s: any): boolean { } /** - * verify that a vriable contains a safe date/date-time string + * */ -export function isSafeDate(n: string): boolean { - const parsed = Date.parse(n) - return ( - typeof parsed === 'number' && - parsed !== NaN && - parsed > 0 && - String(parsed).length === 13 - ) +export function isEmail(s: string): boolean { + const emailRegex = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/ + return emailRegex.test(s) +} + +/** + * + */ + +export function isUUIDOrGUID(s: string): boolean { + const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i + const guidRegExp = /^(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}$/gi + + if (s.startsWith('{')) { + s = s.substring(1, s.length - 1) + } + + return uuidRegExp.test(s) || guidRegExp.test(s) } /** From 7688475a30c703896b7da467d0d27def84e5886b Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Wed, 13 May 2020 00:54:30 +0100 Subject: [PATCH 10/15] signed-off: fixed linting TS errors Signed-off-by: Ifeora Okechukwu --- .../lib/scalar_validators/common_def.js | 2 +- .../lib/scalar_validators/common_def.js.map | 2 +- .../lib/scalar_validators/strict_float.js | 8 ++++---- .../lib/scalar_validators/strict_float.js.map | 2 +- .../lib/scalar_validators/strict_int.js | 10 +++++----- .../lib/scalar_validators/strict_int.js.map | 2 +- .../lib/scalar_validators/strict_string.js | 12 ++++++------ .../lib/scalar_validators/strict_string.js.map | 2 +- packages/openapi-to-graphql/lib/schema_builder.js | 6 +++--- .../openapi-to-graphql/lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/lib/utils.js | 9 +++++---- packages/openapi-to-graphql/lib/utils.js.map | 2 +- 12 files changed, 30 insertions(+), 29 deletions(-) diff --git a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js index d46cf35a..875895bc 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js +++ b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js @@ -2,7 +2,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); const graphql_1 = require("graphql"); const graphql_2 = require("graphql"); -exports.defaultErrorHandler = ({ code, ast, }) => { +exports.defaultErrorHandler = ({ code, ast }) => { throw new graphql_2.GraphQLError(`code=${code}`, ast ? [ast] : []); }; exports.defaultSerialize = (x) => x; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map index 046531ba..5a720d42 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map +++ b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map @@ -1 +1 @@ -{"version":3,"file":"common_def.js","sourceRoot":"","sources":["../../src/scalar_validators/common_def.ts"],"names":[],"mappings":";;AAAA,qCAQmB;AAEjB,qCAAuC;AAM1B,QAAA,mBAAmB,GAAsC,CAAC,EACrE,IAAI,EACJ,GAAG,GACJ,EAAS,EAAE;IACV,MAAM,IAAI,sBAAY,CAAC,QAAQ,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC7D,CAAC,CAAC;AAIW,QAAA,gBAAgB,GAAG,CAAC,CAAM,EAAO,EAAE,CAAC,CAAC,CAAC;AAItC,QAAA,qBAAqB,GAAG,CAAC,GAAc,EAAO,EAAE;IAEzD,QAAQ,GAAG,CAAC,IAAI,EAAE;QAChB,KAAK,cAAI,CAAC,OAAO;YACf,OAAQ,GAAwB,CAAC,KAAK,CAAC;QACzC,KAAK,cAAI,CAAC,KAAK;YACb,OAAO,UAAU,CAAE,GAAsB,CAAC,KAAK,CAAC,CAAC;QACnD,KAAK,cAAI,CAAC,GAAG;YACX,OAAO,QAAQ,CAAE,GAAoB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnD,KAAK,cAAI,CAAC,IAAI;YACZ,OAAO,IAAI,CAAC;QACd,KAAK,cAAI,CAAC,MAAM;YACd,OAAQ,GAAuB,CAAC,KAAK,CAAC;QACxC,KAAK,cAAI,CAAC,IAAI;YACZ,OAAQ,GAAqB,CAAC,KAAK,CAAC;KACvC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"common_def.js","sourceRoot":"","sources":["../../src/scalar_validators/common_def.ts"],"names":[],"mappings":";;AAAA,qCAQgB;AAEhB,qCAAsC;AAIzB,QAAA,mBAAmB,GAAsC,CAAC,EACrE,IAAI,EACJ,GAAG,EACJ,EAAS,EAAE;IACV,MAAM,IAAI,sBAAY,CAAC,QAAQ,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AAC1D,CAAC,CAAA;AAEY,QAAA,gBAAgB,GAAG,CAAC,CAAM,EAAO,EAAE,CAAC,CAAC,CAAA;AAErC,QAAA,qBAAqB,GAAG,CAAC,GAAc,EAAO,EAAE;IAC3D,QAAQ,GAAG,CAAC,IAAI,EAAE;QAChB,KAAK,cAAI,CAAC,OAAO;YACf,OAAQ,GAAwB,CAAC,KAAK,CAAA;QACxC,KAAK,cAAI,CAAC,KAAK;YACb,OAAO,UAAU,CAAE,GAAsB,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,cAAI,CAAC,GAAG;YACX,OAAO,QAAQ,CAAE,GAAoB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAClD,KAAK,cAAI,CAAC,IAAI;YACZ,OAAO,IAAI,CAAA;QACb,KAAK,cAAI,CAAC,MAAM;YACd,OAAQ,GAAuB,CAAC,KAAK,CAAA;QACvC,KAAK,cAAI,CAAC,IAAI;YACZ,OAAQ,GAAqB,CAAC,KAAK,CAAA;KACtC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js index 63484f22..5e91a9c7 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js @@ -42,7 +42,7 @@ exports.createFloatScalar = (config) => { originalValue: unknownValue, value: unknownValue, ast, - config, + config }); } } @@ -61,7 +61,7 @@ exports.createFloatScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } if (maximum != null && value > maximum) { @@ -70,7 +70,7 @@ exports.createFloatScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } if (validate && !validate(value)) { @@ -79,7 +79,7 @@ exports.createFloatScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } return value; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map index d34e8b81..b7a611bf 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map @@ -1 +1 @@ -{"version":3,"file":"strict_float.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_float.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAuD;AAEvD,6CAIsB;AAGtB,oCAAuC;AAIvC,wEAAwE;AAE3D,QAAA,iBAAiB,GAAG,CAC7B,MAAgC,EACb,EAAE;IAErB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,6HACQ,CAAC;IAEX,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAC;IAExD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QAEpB,8BAA8B;QAE9B,iBAAiB;QAGjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAC;SACb;QAGD,IAAI,KAAa,CAAC;QAElB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAC;SAEhC;aAAM;YAEL,IAAI,MAAM,EAAE;gBAEV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEzC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAC;iBACb;gBAED,KAAK,GAAG,WAAW,CAAC;aAErB;iBAAM;gBAEL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAC;aACJ;SACF;QAGD,qBAAqB;QAGrB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAE7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEpC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAC;aACb;YACD,KAAK,GAAG,WAAW,CAAC;SACrB;QAID,mBAAmB;QAGnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAEhC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAGD,OAAO,KAAY,CAAC;IAEtB,CAAC,CAAC;IAIF,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAC;AAEL,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"strict_float.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_float.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAsD;AAEtD,6CAIqB;AAErB,oCAAuC;AAOvC,wEAAwE;AAE3D,QAAA,iBAAiB,GAAG,CAC/B,MAAgC,EACb,EAAE;IACrB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,6HACQ,CAAA;IAEV,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAA;IAEvD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QACpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,KAAa,CAAA;QAEjB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAA;SAC/B;aAAM;YACL,IAAI,MAAM,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;gBAExC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBAED,KAAK,GAAG,WAAW,CAAA;aACpB;iBAAM;gBACL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAA;aACH;SACF;QAED,qBAAqB;QAErB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAC7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;YAEnC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAA;aACZ;YACD,KAAK,GAAG,WAAW,CAAA;SACpB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAChC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,OAAO,KAAY,CAAA;IACrB,CAAC,CAAA;IAED,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAA;AACJ,CAAC,CAAA"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js index 5af2caf0..15d2a65b 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js @@ -41,11 +41,11 @@ exports.createIntScalar = (config) => { originalValue: unknownValue, value: unknownValue, ast, - config, + config }); } } - // Sanitization Phase + // Sanitization Phase if (sanitize && value != null) { const valueOrNull = sanitize(value); if (valueOrNull == null) { @@ -60,7 +60,7 @@ exports.createIntScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } if (maximum != null && value > maximum) { @@ -69,7 +69,7 @@ exports.createIntScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } if (validate && !validate(value)) { @@ -78,7 +78,7 @@ exports.createIntScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } return value; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map index 291ff13e..c07c4319 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map @@ -1 +1 @@ -{"version":3,"file":"strict_int.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_int.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAuD;AACvD,6CAIsB;AAGtB,oCAAuC;AAI1B,QAAA,eAAe,GAAG,CAE3B,MAAgC,EAEb,EAAE;IAErB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,oHACQ,CAAC;IAGX,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAC;IAExD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QAEpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAC;SACb;QAGD,IAAI,KAAa,CAAC;QAElB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAC;SAChC;aAAM;YAEL,IAAI,MAAM,EAAE;gBAEV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEzC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAC;iBACb;gBAED,KAAK,GAAG,WAAW,CAAC;aAErB;iBAAM;gBAEL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAC;aACJ;SACF;QAGD,uBAAuB;QAEvB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAE7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEpC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAC;aACb;YAED,KAAK,GAAG,WAAW,CAAC;SACrB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YAEtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAID,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAEhC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAC;SACJ;QAED,OAAO,KAAY,CAAC;IACtB,CAAC,CAAC;IAEF,OAAO,IAAI,2BAAiB,iCACzB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACpC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAE7C,CAAC;AACP,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"strict_int.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_int.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAsD;AACtD,6CAIqB;AAErB,oCAAuC;AAO1B,QAAA,eAAe,GAAG,CAC7B,MAAgC,EACb,EAAE;IACrB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,oHACQ,CAAA;IAEV,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAA;IAEvD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QACpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,KAAa,CAAA;QAEjB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAA;SAC/B;aAAM;YACL,IAAI,MAAM,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;gBAExC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBAED,KAAK,GAAG,WAAW,CAAA;aACpB;iBAAM;gBACL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAA;aACH;SACF;QAED,qBAAqB;QAErB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAC7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;YAEnC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAA;aACZ;YAED,KAAK,GAAG,WAAW,CAAA;SACpB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAChC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,OAAO,KAAY,CAAA;IACrB,CAAC,CAAA;IAED,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAA;AACJ,CAAC,CAAA"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js index 412d3230..d3c0f32f 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js @@ -56,7 +56,7 @@ exports.createStringScalar = (config) => { originalValue: unknownValue, value: unknownValue, ast, - config, + config }); } } @@ -130,7 +130,7 @@ exports.createStringScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } if (minLength != null && value.length < minLength) { @@ -139,7 +139,7 @@ exports.createStringScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } if (maxLength != null && value.length > maxLength) { @@ -148,7 +148,7 @@ exports.createStringScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } if (regex != null && !regex.test(value)) { @@ -157,7 +157,7 @@ exports.createStringScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } if (validate && !validate(value)) { @@ -166,7 +166,7 @@ exports.createStringScalar = (config) => { originalValue: unknownValue, value, ast, - config, + config }); } return value; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map index 89ae321a..dcd2fcb6 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map @@ -1 +1 @@ -{"version":3,"file":"strict_string.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_string.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"strict_string.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_string.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAsD;AAGtD,6CAIqB;AAIrB,MAAM,cAAc,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAA;AAEjE,MAAM,SAAS,GAAG,aAAa,CAAA;AAE/B,MAAM,aAAa,GAAG,eAAe,CAAA;AAErC,MAAM,YAAY,GAAG,UAAU,CAAA;AAE/B,MAAM,kBAAkB,GAAG,gBAAgB,CAAA;AAE3C,MAAM,cAAc,GAAG,aAAa,CAAA;AAEpC,MAAM,UAAU,GAAG,MAAM,CAAA;AAEzB,MAAM,UAAU,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;AAExE,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAU,EAAE,CAChD,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;AAExB,QAAA,kBAAkB,GAAG,CAChC,MAAgC,EACb,EAAE;IACrB,MAAM,EACJ,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,YAAY,EACZ,SAAS,EACT,aAAa,EACb,SAAS,EACT,SAAS,EACT,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,SAAS,EACT,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,QAAQ,KAEN,MAAM,EADR,gQACQ,CAAA;IAEV,MAAM,KAAK,GACT,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,OAAkB,CAAA;IAEzE,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAA;IAEvD,IAAI,cAAc,GAAkB,IAAI,CAAA;IAExC,IAAI,eAAe,GAAkB,IAAI,CAAA;IAEzC,IAAI,aAAa,EAAE;QACjB,cAAc,GAAG,IAAI,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAE7D,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC,CAAA;KACjD;IAED,MAAM,UAAU,GAAG,CACjB,YAAqB,EAErB,GAAe,EACG,EAAE;QACpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,KAAa,CAAA;QACjB,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;YACpC,KAAK,GAAG,YAAY,CAAA;SACrB;aAAM;YACL,IAAI,MAAM,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;gBAExC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBACD,KAAK,GAAG,WAAW,CAAA;aACpB;iBAAM;gBACL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAA;aACH;SACF;QAED,qBAAqB;QAErB,IAAI,KAAK,EAAE;YACT,IAAI,IAAI,EAAE;gBACR,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;aACrB;YAED,IAAI,KAAK,EAAE;gBACT,IAAI,UAAU,EAAE;oBACd,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;iBAChD;gBAED,IAAI,kBAAkB,EAAE;oBACtB,IAAI,UAAU,EAAE;wBACd,4BAA4B;wBAC5B,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;qBACvC;yBAAM,IAAI,aAAa,EAAE;wBACxB,KAAK,GAAG,KAAK;6BACV,KAAK,CAAC,cAAc,CAAC;6BACrB,GAAG,CAAC,iBAAiB,CAAC;6BACtB,IAAI,CAAC,IAAI,CAAC;6BACV,OAAO,CAAC,cAAe,EAAE,eAAgB,CAAC,CAAA;qBAC9C;yBAAM;wBACL,KAAK,GAAG,KAAK;6BACV,KAAK,CAAC,kBAAkB,CAAC;6BACzB,GAAG,CAAC,UAAU,CAAC;6BACf,IAAI,CAAC,IAAI,CAAC,CAAA;qBACd;iBACF;gBAED,IAAI,QAAQ,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ,EAAE;oBAC/C,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;iBACrC;gBAED,IAAI,SAAS,EAAE;oBACb,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;iBAC5B;qBAAM,IAAI,SAAS,EAAE;oBACpB,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;iBAC5B;gBAED,IAAI,UAAU,EAAE;oBACd,QAAQ,UAAU,EAAE;wBAClB,KAAK,YAAY;4BACf,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;4BAC3B,MAAK;wBACP,KAAK,OAAO;4BACV,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;4BAChD,MAAK;wBACP,KAAK,WAAW;4BACd,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;4BACpD,MAAK;wBACP,KAAK,OAAO,CAAC;wBAEb;4BACE,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;4BAC/C,MAAK;qBACR;iBACF;aACF;SACF;QAED,IAAI,QAAQ,EAAE;YACZ,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;YACnC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAA;aACZ;YACD,KAAK,GAAG,WAAW,CAAA;SACpB;QAED,mBAAmB;QAEnB,IAAI,QAAQ,IAAI,CAAC,KAAK,EAAE;YACtB,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,OAAO;gBACb,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE;YACjD,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,WAAW;gBACjB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE;YACjD,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,WAAW;gBACjB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACvC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAChC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,OAAO,KAAY,CAAA;IACrB,CAAC,CAAA;IAED,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAA;AACJ,CAAC,CAAA"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 15e96fde..011ba5f8 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -414,9 +414,9 @@ function getScalarType({ def, schema, isInputObjectType, data }) { const $format = schema.format || '-'; const $enum = schema.enum || []; options.coerce = (data) => { - if ($format === 'int64' - || $format === 'long' - || $format === 'float') { + if ($format === 'int64' || + $format === 'long' || + $format === 'float') { if (!isFinite(data)) { throw new graphql_1.GraphQLError('Float cannot represent non numeric value'); } diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index b1dd0abd..23f1c8dd 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;AAmBhE,qEAE0C;AAC1C,+DAEuC;AACvC,mEAEyC;AAEzC,qCAgBgB;AAEhB,WAAW;AACX,iDAAgD;AAChD,2CAA0C;AAC1C,yDAAgD;AAChD,iDAA8C;AAC9C,iCAAyB;AACzB,mCAYgB;AA0ChB,MAAM,cAAc,GAAG,eAAK,CAAC,aAAa,CAAC,CAAA;AAE3C;;GAEG;AACH,SAAgB,cAAc,CAAC,EAC7B,GAAG,EACH,MAAM,EACN,SAAS,EACT,IAAI,EACJ,SAAS,GAAG,CAAC,EACb,iBAAiB,GAAG,KAAK,EACM;IAC/B,MAAM,IAAI,GAAG,iBAAiB;QAC5B,CAAC,CAAC,GAAG,CAAC,0BAA0B;QAChC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAA;IAEvB,6BAA6B;IAC7B,IAAI,SAAS,KAAK,EAAE,EAAE;QACpB,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,uCAAuC,CAAC,CAAA;KAC7E;IAED,QAAQ,GAAG,CAAC,iBAAiB,EAAE;QAC7B,oCAAoC;QACpC,KAAK,QAAQ;YACX,OAAO,eAAe,CAAC;gBACrB,GAAG;gBACH,SAAS;gBACT,IAAI;gBACJ,SAAS;gBACT,iBAAiB;aAClB,CAAC,CAAA;QAEJ,kCAAkC;QAClC,KAAK,OAAO;YACV,OAAO,kBAAkB,CAAC;gBACxB,GAAG;gBACH,SAAS;gBACT,IAAI;gBACJ,SAAS;aACV,CAAC,CAAA;QAEJ,gCAAgC;QAChC,KAAK,MAAM;YACT,OAAO,iBAAiB,CAAC;gBACvB,GAAG;gBACH,SAAS;gBACT,MAAM;gBACN,IAAI;gBACJ,SAAS;gBACT,iBAAiB;aAClB,CAAC,CAAA;QAEJ,gCAAgC;QAChC,KAAK,MAAM;YACT,OAAO,iBAAiB,CAAC;gBACvB,GAAG;gBACH,IAAI;aACL,CAAC,CAAA;QAEJ,oCAAoC;QACpC;YACE,OAAO,aAAa,CAAC;gBACnB,GAAG;gBACH,MAAM;gBACN,iBAAiB;gBACjB,IAAI;aACL,CAAC,CAAA;KACL;AACH,CAAC;AAhED,wCAgEC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,eAAe,CAAC,EACvB,GAAG,EACH,SAAS,EACT,IAAI,EACJ,SAAS,EACT,iBAAiB,EACc;IAI/B,iDAAiD;IAEjD,kCAAkC;IAClC,IAAI,CAAC,iBAAiB,EAAE;QACtB,IAAI,GAAG,CAAC,WAAW,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,EAAE;YAC7D,cAAc,CACZ,sBAAsB,GAAG,CAAC,eAAe,GAAG;gBAC1C,CAAC,OAAO,SAAS,KAAK,QAAQ;oBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;oBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;YAED,OAAO,GAAG,CAAC,WAGU,CAAA;SACtB;QAED,2CAA2C;KAC5C;SAAM;QACL,IACE,GAAG,CAAC,sBAAsB;YAC1B,OAAO,GAAG,CAAC,sBAAsB,KAAK,WAAW,EACjD;YACA,cAAc,CACZ,4BAA4B,GAAG,CAAC,0BAA0B,GAAG;gBAC3D,CAAC,OAAO,SAAS,KAAK,QAAQ;oBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;oBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;YACD,OAAO,GAAG,CAAC,sBAAgD,CAAA;SAC5D;KACF;IAED,qEAAqE;IAErE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;IACzB,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;IAEtC,mCAAmC;IACnC,IAAI,CAAC,iBAAiB,EAAE;QACtB,cAAc,CACZ,uBAAuB,GAAG,CAAC,eAAe,GAAG;YAC3C,CAAC,OAAO,SAAS,KAAK,QAAQ;gBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;QAED,GAAG,CAAC,WAAW,GAAG,IAAI,2BAAiB,CAAC;YACtC,IAAI,EAAE,GAAG,CAAC,eAAe;YACzB,WAAW;YACX,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO,YAAY,CAAC;oBAClB,GAAG;oBACH,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,SAAS;oBACT,IAAI;oBACJ,SAAS;oBACT,iBAAiB,EAAE,KAAK;iBACzB,CAAC,CAAA;YACJ,CAAC;SACF,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,WAAW,CAAA;QAEtB,4CAA4C;KAC7C;SAAM;QACL,cAAc,CACZ,6BAA6B,GAAG,CAAC,0BAA0B,GAAG;YAC5D,CAAC,OAAO,SAAS,KAAK,QAAQ;gBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;QAED,GAAG,CAAC,sBAAsB,GAAG,IAAI,gCAAsB,CAAC;YACtD,IAAI,EAAE,GAAG,CAAC,0BAA0B;YACpC,WAAW;YACX,aAAa;YACb,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO,YAAY,CAAC;oBAClB,GAAG;oBACH,KAAK,EAAE,EAAE;oBACT,SAAS;oBACT,IAAI;oBACJ,SAAS;oBACT,iBAAiB,EAAE,IAAI;iBACxB,CAAC,CAAA;YACJ,CAAC;SACF,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,sBAAsB,CAAA;KAClC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,EAC1B,GAAG,EACH,SAAS,EACT,IAAI,EACJ,SAAS,EACsB;IAC/B,mCAAmC;IACnC,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,EAAE;QAC1C,cAAc,CACZ,qBAAqB,GAAG,CAAC,eAAe,GAAG;YACzC,CAAC,OAAO,SAAS,KAAK,QAAQ;gBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;QACD,OAAO,GAAG,CAAC,WAA+B,CAAA;KAC3C;SAAM;QACL,cAAc,CACZ,sBAAsB,GAAG,CAAC,eAAe,GAAG;YAC1C,CAAC,OAAO,SAAS,KAAK,QAAQ;gBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;QAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QAEzB,MAAM,WAAW,GACf,OAAO,MAAM,CAAC,WAAW,KAAK,WAAW;YACvC,CAAC,CAAC,MAAM,CAAC,WAAW;YACpB,CAAC,CAAC,2BAA2B,CAAA;QAEjC,MAAM,qBAAqB,GAAG,GAAG,CAAC,cAAkC,CAAA;QAEpE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CACpD,oBAAoB,CAAC,EAAE;YACrB,OAAO,cAAc,CAAC;gBACpB,GAAG,EAAE,oBAAoB;gBACzB,SAAS;gBACT,IAAI;gBACJ,SAAS,EAAE,SAAS,GAAG,CAAC;gBACxB,iBAAiB,EAAE,KAAK;aACzB,CAAsB,CAAA;QACzB,CAAC,CACF,CAAA;QAED;;;;WAIG;QACH,yBAAyB,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QAE3C,GAAG,CAAC,WAAW,GAAG,IAAI,0BAAgB,CAAC;YACrC,IAAI,EAAE,GAAG,CAAC,eAAe;YACzB,WAAW;YACX,KAAK;YACL,WAAW,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACrC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAEtC,6DAA6D;gBAC7D,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;gBACxD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE;oBACnB,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;iBAC/B;gBAED;;;;;;;;;;mBAUG;gBACH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACvB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;oBAEhD,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE;wBAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BAC1C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;gCACvC,OAAO,KAAK,CAAA;6BACb;yBACF;wBACD,OAAO,IAAI,CAAA;qBACZ;oBAED,OAAO,KAAK,CAAA;gBACd,CAAC,CAAC,CAAA;YACJ,CAAC;SACF,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,WAAW,CAAA;KACvB;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,yBAAyB,CAChC,GAAmB,EACnB,KAA0B,EAC1B,IAAuB;IAEvB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAClB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAA;QACtD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAA;QAEtD,IAAI,YAAY,GAAG,YAAY,EAAE;YAC/B,OAAO,CAAC,CAAC,CAAA;SACV;aAAM,IAAI,YAAY,GAAG,YAAY,EAAE;YACtC,OAAO,CAAC,CAAA;SACT;aAAM;YACL,OAAO,CAAC,CAAA;SACT;IACH,CAAC,CAAC,CAAA;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACzC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YAE1B,iDAAiD;YACjD,IACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACjD,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YAC3D,CAAC,CAAC,EACF;gBACA,qBAAa,CAAC;oBACZ,OAAO,EAAE,yBAAyB;oBAClC,OAAO,EACL,8BAA8B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa;wBAC9D,yBAAyB,WAAW,UAAU,SAAS,IAAI;wBAC3D,wDAAwD;wBACxD,wCAAwC;oBAC1C,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;gBAEF,OAAM;aACP;SACF;KACF;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,EACzB,GAAG,EACH,SAAS,EACT,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,IAAI,EAC2B;IAC/B,MAAM,IAAI,GAAG,iBAAiB;QAC5B,CAAC,CAAC,GAAG,CAAC,0BAA0B;QAChC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAA;IAEvB,oCAAoC;IACpC,IACE,CAAC,iBAAiB;QAClB,GAAG,CAAC,WAAW;QACf,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,EACtC;QACA,cAAc,CAAC,sBAAsB,GAAG,CAAC,eAAe,GAAG,CAAC,CAAA;QAC5D,OAAO,GAAG,CAAC,WAA+B,CAAA;KAC3C;SAAM,IACL,iBAAiB;QACjB,GAAG,CAAC,sBAAsB;QAC1B,OAAO,GAAG,CAAC,sBAAsB,KAAK,WAAW,EACjD;QACA,cAAc,CAAC,sBAAsB,GAAG,CAAC,0BAA0B,GAAG,CAAC,CAAA;QACvE,OAAO,GAAG,CAAC,sBAA0C,CAAA;KACtD;IAED,8BAA8B;IAC9B,cAAc,CAAC,uBAAuB,GAAG,CAAC,eAAe,GAAG,CAAC,CAAA;IAE7D,0EAA0E;IAC1E,MAAM,OAAO,GAAG,GAAG,CAAC,cAAgC,CAAA;IAEpD,6BAA6B;IAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAA;IAClC,iCAAiC;IACjC,MAAM,SAAS,GAAG,OAAO,CAAC,eAAe,CAAA;IAEzC,MAAM,SAAS,GAAG,cAAc,CAAC;QAC/B,GAAG,EAAE,OAAO;QACZ,IAAI;QACJ,MAAM;QACN,SAAS;QACT,SAAS,EAAE,SAAS,GAAG,CAAC;QACxB,iBAAiB;KAClB,CAAC,CAAA;IAEF,IAAI,SAAS,KAAK,IAAI,EAAE;QACtB,MAAM,cAAc,GAAG,IAAI,qBAAW,CAAC,SAAS,CAAC,CAAA;QAEjD,gCAAgC;QAChC,IAAI,CAAC,iBAAiB,EAAE;YACtB,GAAG,CAAC,WAAW,GAAG,cAAc,CAAA;SACjC;aAAM;YACL,GAAG,CAAC,sBAAsB,GAAG,cAAc,CAAA;SAC5C;QACD,OAAO,cAAc,CAAA;KACtB;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,wCAAwC,SAAS;OAC9D,IAAI,kBAAkB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;KACzD;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,EACzB,GAAG,EACH,IAAI,EAC0B;IAC9B;;;;OAIG;IACH,IAAI,GAAG,CAAC,WAAW,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,EAAE;QAC7D,cAAc,CAAC,0BAA0B,GAAG,CAAC,eAAe,GAAG,CAAC,CAAA;QAChE,OAAO,GAAG,CAAC,WAA8B,CAAA;KAC1C;SAAM;QACL,cAAc,CAAC,2BAA2B,GAAG,CAAC,eAAe,GAAG,CAAC,CAAA;QAEjE,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC1B,8DAA8D;YAC9D,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG;gBACvE,KAAK,EAAE,CAAC;aACT,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,uCAAuC;QACvC,GAAG,CAAC,WAAW,GAAG,IAAI,yBAAe,CAAC;YACpC,IAAI,EAAE,GAAG,CAAC,eAAe;YACzB,MAAM;SACP,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,WAAW,CAAA;KACvB;AACH,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,EACrB,GAAG,EACH,MAAM,EACN,iBAAiB,EACjB,IAAI,EAC0B;IAC9B,MAAM,OAAO,GAAwD;QACnE,IAAI,EAAE,EAAE;KACT,CAAA;IAED,IAAI,iBAAiB,IAAI,MAAM,EAAE;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAA;QAEhC,OAAO,CAAC,IAAI;YACV,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,kBAAkB;oBAChB,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAE9D,IAAI,IAAI,KAAK,QAAQ,EAAE;YACrB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;YACnB,IAAI,UAAU,IAAI,MAAM;gBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAA;SAC9D;QAED,QAAQ,IAAI,EAAE;YACZ,KAAK,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC;YACxC,KAAK,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;gBACvC,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;iBACrC;gBAED,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE;oBAC3C,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;iBACjC;gBACD,MAAK;YACP,KAAK,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC;YACxC,KAAK,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;gBACvC,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;iBACrC;gBAED,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE;oBAC3C,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;iBACjC;gBACD,MAAK;YACP,KAAK,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;gBACrC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO;qBAC5B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;qBAClB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;gBAEzB,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,OAAO,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;iBACtD;gBACD,MAAK;YACP,KAAK,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ;gBACzC,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBAClE,MAAK;YACP,KAAK,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,SAAS,CAAC;YACjE,KAAK,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC;YACvC,KAAK,OAAO,MAAM,CAAC,IAAI,KAAK,WAAW;gBACrC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,GAAG,CAAA;gBACpC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAA;gBAE/B,OAAO,CAAC,MAAM,GAAG,CAAC,IAAS,EAAE,EAAE;oBAC7B,IAAI,OAAO,KAAK,OAAO;2BACd,OAAO,KAAK,MAAM;2BACd,OAAO,KAAK,OAAO,EAAE;wBAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;4BACnB,MAAM,IAAI,sBAAY,CAAC,0CAA0C,CAAC,CAAA;yBACnE;qBACF;oBAED,IAAI,IAAI,KAAK,QAAQ,EAAE;wBACrB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;4BAC5B,MAAM,IAAI,sBAAY,CACpB,4CAA4C,CAC7C,CAAA;yBACF;qBACF;oBACD,OAAO,IAAI,CAAA;gBACb,CAAC,CAAC;gBAEF,OAAO,CAAC,SAAS,GAAG,CAAC,IAAS,EAAE,EAAE;oBAChC,IAAG,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,WAAW,EAAC;wBAC/C,OAAO,qBAAa,CAAC,IAAI,CAAC,CAAA;qBAC3B;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAA;gBAED,OAAO,CAAC,QAAQ,GAAG,CAAC,IAAS,EAAE,EAAE;oBAC/B,OAAO,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;wBACpD,CAAC,CAAC,qBAAa,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC3C,CAAC,CAAC,OAAO,KAAK,MAAM;4BACpB,CAAC,CAAC,kBAAU,CAAC,IAAI,CAAC,IAAI,IAAI;4BAC1B,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,OAAO;gCAC1C,CAAC,CAAC,mBAAW,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC;gCACvC,CAAC,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,WAAW;oCAC/C,CAAC,CAAC,kBAAU,CAAC,IAAI,CAAC,IAAI,IAAI;oCAC1B,CAAC,CAAC,OAAO,KAAK,MAAM;wCACpB,CAAC,CAAC,oBAAY,CAAC,IAAI,CAAC,IAAI,IAAI;wCAC5B,CAAC,CAAC,OAAO,KAAK,OAAO;4CACrB,CAAC,CAAC,eAAO,CAAC,IAAI,CAAC,IAAI,IAAI;4CACvB,CAAC,CAAC,OAAO,KAAK,KAAK;gDACnB,CAAC,CAAC,aAAK,CAAC,IAAI,CAAC,IAAI,IAAI;gDACrB,CAAC,CAAC,IAAI,CAAA;gBACV,CAAC,CAAA;gBAED,OAAO,CAAC,QAAQ,GAAG,CAAC,IAAS,EAAE,EAAE;oBAC/B,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oBAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBACzD,CAAC,CAAA;gBACD,MAAK;SACR;KACF;IAED,QAAQ,GAAG,CAAC,iBAAiB,EAAE;QAC7B,KAAK,IAAI;YACP,GAAG,CAAC,WAAW,GAAG,mBAAS,CAAA;YAC3B,MAAK;QACP,KAAK,QAAQ;YACX,GAAG,CAAC,WAAW;gBACb,iBAAiB,IAAI,MAAM;oBACzB,CAAC,CAAC,kCAAkB,CAAC,OAAmC,CAAC;oBACzD,CAAC,CAAC,uBAAa,CAAA;YACnB,MAAK;QACP,KAAK,SAAS;YACZ,GAAG,CAAC,WAAW;gBACb,iBAAiB,IAAI,MAAM;oBACzB,CAAC,CAAC,4BAAe,CAAC,OAAmC,CAAC;oBACtD,CAAC,CAAC,oBAAU,CAAA;YAChB,MAAK;QACP,KAAK,QAAQ;YACX,GAAG,CAAC,WAAW;gBACb,iBAAiB,IAAI,MAAM;oBACzB,CAAC,CAAC,gCAAiB,CAAC,OAAmC,CAAC;oBACxD,CAAC,CAAC,sBAAY,CAAA;YAClB,MAAK;QACP,KAAK,SAAS;YACZ,GAAG,CAAC,WAAW,GAAG,wBAAc,CAAA;YAChC,MAAK;QACP,KAAK,MAAM;YACT,GAAG,CAAC,WAAW,GAAG,WAAW,CAAA;YAC7B,MAAK;QACP;YACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,CAAC,iBAAiB,IAAI,CAAC,CAAA;KAC5E;IAED,OAAO,GAAG,CAAC,WAAgC,CAAA;AAC7C,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,EACpB,GAAG,EACH,KAAK,EACL,SAAS,EACT,IAAI,EACJ,SAAS,EACT,iBAAiB,EACE;IACnB,IAAI,MAAM,GAAoC,EAAE,CAAA;IAEhD,MAAM,oBAAoB,GAAG,GAAG,CAAC,cAEhC,CAAA;IAED,+BAA+B;IAC/B,KAAK,IAAI,YAAY,IAAI,oBAAoB,EAAE;QAC7C,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAA;QAC9D,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAA;QAE9C,0CAA0C;QAC1C,MAAM,UAAU,GAAG,cAAc,CAAC;YAChC,GAAG,EAAE,mBAAmB;YACxB,SAAS;YACT,MAAM,EAAE,WAAW;YACnB,IAAI;YACJ,SAAS,EAAE,SAAS,GAAG,CAAC;YACxB,iBAAiB;SAClB,CAAC,CAAA;QAEF,MAAM,gBAAgB,GACpB,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;QAEzE,0EAA0E;QAC1E,IAAI,UAAU,EAAE;YACd,MAAM,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CACzC,YAAY,EACZ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;gBACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;gBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;YAED,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,CAC1C,gBAAgB,EAChB,YAAY,EACZ,IAAI,CAAC,OAAO,CACb,CAAA;YAED,MAAM,CAAC,YAAY,CAAC,GAAG;gBACrB,IAAI,EAAE,gBAAgB;oBACpB,CAAC,CAAC,IAAI,wBAAc,CAAC,UAAU,CAAC;oBAChC,CAAC,CAAE,UAAgC;gBAErC,WAAW,EACT,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;aACnE,CAAA;SACF;aAAM;YACL,qBAAa,CAAC;gBACZ,OAAO,EAAE,uBAAuB;gBAChC,OAAO,EACL,yCAAyC,YAAY,OAAO;oBAC5D,iBAAiB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI;gBACjD,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;SACH;KACF;IAED,IACE,OAAO,KAAK,KAAK,QAAQ,IAAI,oBAAoB;QACjD,CAAC,iBAAiB,CAAC,iEAAiE;MACpF;QACA,KAAK,IAAI,WAAW,IAAI,KAAK,EAAE;YAC7B,cAAc,CAAC,gBAAgB,WAAW,MAAM,CAAC,CAAA;YAEjD,oCAAoC;YACpC,IAAI,WAAW,IAAI,MAAM,EAAE;gBACzB,qBAAa,CAAC;oBACZ,OAAO,EAAE,qBAAqB;oBAC9B,OAAO,EACL,uBAAuB,WAAW,mBAAmB;wBACrD,sEAAsE;oBACxE,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;aACH;iBAAM;gBACL,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,CAAA;gBAE/B,uBAAuB;gBACvB,IAAI,UAAU,CAAA;gBACd,wEAAwE;gBACxE,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE;oBACxC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAA;iBAC9B;qBAAM,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE;oBAChD,UAAU,GAAG,eAAe,CAAC;wBAC3B,KAAK;wBACL,OAAO,EAAE,WAAW;wBACpB,SAAS;wBACT,IAAI;qBACL,CAAC,CAAA;iBACH;gBAED;;;mBAGG;gBACH,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE;oBACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;oBAE5C,yCAAyC;oBACzC,IAAI,YAAY,GAAG,IAAI,CAAC,UAAU,CAAA;oBAElC,8DAA8D;oBAC9D,IAAI,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAA;oBACvC,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;wBACpC,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;4BAC3C,OAAO,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,WAAW,CAAA;wBACxD,CAAC,CAAC,CAAA;qBACH;oBAED,gCAAgC;oBAChC,MAAM,YAAY,GAAG,8BAAW,CAAC;wBAC/B,SAAS,EAAE,QAAQ;wBACnB,YAAY,EAAE,YAAyC;wBACvD,IAAI;wBACJ,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;wBAC7B,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc;qBAC5C,CAAC,CAAA;oBAEF,yBAAyB;oBACzB,MAAM,IAAI,GAAG,OAAO,CAAC;wBACnB,UAAU,EAAE,aAAa;wBACzB,SAAS,EAAE,QAAQ;wBACnB,IAAI;qBACL,CAAC,CAAA;oBAEF,2BAA2B;oBAC3B,MAAM,aAAa,GACjB,QAAQ,CAAC,kBAAkB,CAAC,WAAW,KAAK,SAAS;wBACnD,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,WAAW;wBACzC,CAAC,CAAC,cAAc,CAAC;4BACb,GAAG,EAAE,QAAQ,CAAC,kBAAkB;4BAChC,SAAS;4BACT,IAAI;4BACJ,SAAS,EAAE,SAAS,GAAG,CAAC;4BACxB,iBAAiB,EAAE,KAAK;yBACzB,CAAC,CAAA;oBAER,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;oBAElC,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,IAAI,WAAW,EAAE;wBACpD,WAAW,IAAI,qBAAqB,QAAQ,CAAC,eAAe,EAAE,CAAA;qBAC/D;oBAED,0EAA0E;oBAC1E,oDAAoD;oBACpD,MAAM,CAAC,WAAW,CAAC,GAAG;wBACpB,IAAI,EAAE,aAAa;wBACnB,OAAO,EAAE,YAAY;wBACrB,IAAI;wBACJ,WAAW;qBACZ,CAAA;iBACF;qBAAM;oBACL,qBAAa,CAAC;wBACZ,OAAO,EAAE,mBAAmB;wBAC5B,OAAO,EAAE,kCAAkC,WAAW,GAAG;wBACzD,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;iBACH;aACF;SACF;KACF;IAED,MAAM,GAAG,kBAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,eAAe,CAAC,EACvB,KAAK,EACL,OAAO,EACP,SAAS,EACT,IAAI,EACkB;IACtB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;IAE3B,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE;QACzC,sBAAsB;QAEtB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;QACtC,IAAI,YAAY,CAAA;QAChB,IAAI,yBAAyB,CAAA;QAE7B;;;;WAIG;QACH,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,UAAU,EAAE;YAC/C,yBAAyB,GAAG,YAAY,CAAA;YAExC,2CAA2C;SAC5C;aAAM;YACL;;;eAGG;YACH,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAEvD,kCAAkC;YAClC,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE;gBACzB,2DAA2D;gBAC3D,MAAM,aAAa,GAAG,YAAY,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;gBAC1D,IAAI,cAAc,KAAK,aAAa,EAAE;oBACpC,qBAAa,CAAC;wBACZ,OAAO,EAAE,gBAAgB;wBACzB,OAAO,EACL,aAAa,OAAO,mBAAmB,SAAS,CAAC,eAAe,IAAI;4BACpE,uCAAuC,YAAY,KAAK;4BACxD,4DAA4D;wBAC9D,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,CAAA;gBACxD,yBAAyB,GAAG,YAAY,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;gBAElE,sCAAsC;aACvC;iBAAM;gBACL,qBAAa,CAAC;oBACZ,OAAO,EAAE,mBAAmB;oBAC5B,OAAO,EACL,aAAa,OAAO,mBAAmB,SAAS,CAAC,eAAe,IAAI;wBACpE,kDAAkD,YAAY,KAAK;wBACnE,iDAAiD;oBACnD,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;gBAEF,OAAM;aACP;SACF;QAED,uCAAuC;QACvC,IAAI,OAAO,yBAAyB,KAAK,QAAQ,EAAE;YACjD,IAAI,QAAQ,CAAA;YACZ,IAAI,UAAU,CAAA;YAEd;;;;;;;eAOG;YAEH;;;;eAIG;YACH,MAAM,eAAe,GAAG,yBAAyB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YAElE,6CAA6C;YAC7C,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE;gBAC1B,aAAa;gBAEb,wDAAwD;gBACxD,IAAI,eAAe,KAAK,yBAAyB,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5D,sDAAsD;oBACtD,UAAU,GAAG,yBAAyB,CAAC,SAAS,CAAC,eAAe,GAAG,CAAC,CAAC,CAAA;oBAErE,oCAAoC;oBACpC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;wBAClD,qBAAa,CAAC;4BACZ,OAAO,EAAE,mBAAmB;4BAC5B,OAAO,EACL,qBAAqB,YAAY,gBAAgB;gCACjD,wBAAwB,UAAU,GAAG;4BACvC,IAAI;4BACJ,GAAG,EAAE,cAAc;yBACpB,CAAC,CAAA;wBAEF,OAAM;qBACP;oBACD,4CAA4C;iBAC7C;qBAAM;oBACL,qBAAa,CAAC;wBACZ,OAAO,EAAE,mBAAmB;wBAC5B,OAAO,EACL,qBAAqB,YAAY,uBAAuB;4BACxD,aAAa;wBACf,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED;;;;;;;mBAOG;gBACH,QAAQ,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,CAAA;gBAElE;;;;mBAIG;gBACH,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;gBAEvC,qBAAqB;gBACrB,MAAM,GAAG,GACP,OAAO,YAAY,KAAK,WAAW;oBACjC,CAAC,CAAC,SAAS,CAAC,GAAG;oBACf,CAAC,CAAC,sBAAsB,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;gBAEtD,sEAAsE;gBACtE,IAAI,OAAO,GAAG,KAAK,WAAW,EAAE;oBAC9B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;wBAClE,IAAI,UAAU,CAAA;wBAEd,IAAI,QAAQ,IAAI,GAAG,CAAC,KAAK,IAAI,UAAU,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;4BAC9D,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;4BAEtD,IAAI,aAAa,IAAI,cAAc,EAAE;gCACnC,UAAU,GAAG,cAAc,CAAC,WAAW,CAAA;6BACxC;yBACF;wBAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;4BAClC,UAAU,GAAG,SAAS,CAAC,mBAAmB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;yBACjE;wBAED,IAAI,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE;4BACjC,OAAO,UAAU,CAAA;yBAClB;6BAAM;4BACL,qBAAa,CAAC;gCACZ,OAAO,EAAE,mBAAmB;gCAC5B,OAAO,EACL,aAAa,OAAO,iCAAiC;oCACrD,gBAAgB,UAAU,kCAAkC;oCAC5D,qDAAqD;oCACrD,4DAA4D;gCAC9D,IAAI;gCACJ,GAAG,EAAE,cAAc;6BACpB,CAAC,CAAA;4BAEF,OAAM;yBACP;wBAED,qCAAqC;qBACtC;yBAAM;wBACL,qBAAa,CAAC;4BACZ,OAAO,EAAE,mBAAmB;4BAC5B,OAAO,EACL,wCAAwC,QAAQ,OAAO;gCACvD,IAAI,UAAU,oCAAoC;gCAClD,IAAI,YAAY,cAAc,OAAO,GAAG;4BAC1C,IAAI;4BACJ,GAAG,EAAE,cAAc;yBACpB,CAAC,CAAA;wBAEF,OAAM;qBACP;oBAED,sCAAsC;iBACvC;qBAAM;oBACL,qBAAa,CAAC;wBACZ,OAAO,EAAE,mBAAmB;wBAC5B,OAAO,EACL,aAAa,IAAI,CAAC,YAAY,+BAA+B;4BAC7D,yBAAyB;wBAC3B,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED,2DAA2D;aAC5D;iBAAM;gBACL,qBAAa,CAAC;oBACZ,OAAO,EAAE,mBAAmB;oBAC5B,OAAO,EACL,sDAAsD;wBACtD,IAAI,YAAY,cAAc,OAAO,GAAG;oBAC1C,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;gBAEF,OAAM;aACP;YAED,kDAAkD;SACnD;aAAM;YACL,qBAAa,CAAC;gBACZ,OAAO,EAAE,mBAAmB;gBAC5B,OAAO,EACL,sDAAsD;oBACtD,IAAI,YAAY,cAAc,OAAO,GAAG;gBAC1C,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;YAEF,OAAM;SACP;KACF;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,OAAO,CAAC,EACtB,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,IAAI,EACU;IACd,IAAI,IAAI,GAAG,EAAE,CAAA;IAEb,iBAAiB;IACjB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClC,0BAA0B;QAC1B,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE;YACtC,qBAAa,CAAC;gBACZ,OAAO,EAAE,aAAa;gBACtB,OAAO,EACL,kBAAkB,SAAS,CAAC,eAAe,eAAe;oBAC1D,cAAc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,2BAA2B;gBACpE,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;YACF,SAAQ;SACT;QAED,oDAAoD;QACpD,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE;YACpC,QAAQ,SAAS,CAAC,EAAE,EAAE;gBACpB,KAAK,QAAQ;oBACX,sBAAsB;oBACtB,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ;wBACxC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EACtC;wBACA,SAAQ;qBACT;oBAED,8BAA8B;oBAC9B,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ;wBAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,KAAK,QAAQ;wBACvD,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EACrD;wBACA,SAAQ;qBACT;oBAED,MAAK;gBAEP,KAAK,OAAO;oBACV,sBAAsB;oBACtB,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ;wBACnC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,EACjC;wBACA,SAAQ;qBACT;oBAED,8BAA8B;oBAC9B,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ;wBAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK,QAAQ;wBAClD,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,EAChD;wBACA,SAAQ;qBACT;oBAED,MAAK;aACR;SACF;QAED;;;;;WAKG;QACH,IAAI,MAAsC,CAAA;QAC1C,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;SAC1B;aAAM,IAAI,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,EAAE;YAChD,IACE,OAAO,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,QAAQ;gBACzD,OAAO,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,MAAM,KAAK,QAAQ,EAChE;gBACA,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAA;aACtD;iBAAM;gBACL,qBAAa,CAAC;oBACZ,OAAO,EAAE,6BAA6B;oBACtC,OAAO,EACL,kBAAkB,SAAS,CAAC,eAAe,eAAe;wBAC1D,cAAc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,yBAAyB;wBAChE,0DAA0D;wBAC1D,+BAA+B;oBACjC,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;gBACF,SAAQ;aACT;SACF;aAAM;YACL,iCAAiC;YACjC,qBAAa,CAAC;gBACZ,OAAO,EAAE,aAAa;gBACtB,OAAO,EACL,kBAAkB,SAAS,CAAC,eAAe,eAAe;oBAC1D,cAAc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,wBAAwB;oBAC/D,oBAAoB;gBACtB,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;YACF,SAAQ;SACT;QAED;;;WAGG;QACH,IAAI,MAAM,IAAI,MAAM,EAAE;YACpB,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAA;SAC7D;QAED,eAAe;QACf,MAAM,QAAQ,GAAG,4BAAa,CAC5B,EAAE,UAAU,EAAE,SAAS,CAAC,IAAI,EAAE,EAC9B,MAAsB,EACtB,IAAI,EACJ,IAAI,CACL,CAAA;QAED,aAAa;QACb,MAAM,IAAI,GAAG,cAAc,CAAC;YAC1B,GAAG,EAAE,QAAQ;YACb,SAAS;YACT,MAAM;YACN,IAAI;YACJ,SAAS,EAAE,CAAC;YACZ,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAA;QAEF;;;;;WAKG;QACH,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,SAAS,CAAC,IAAI,EACd,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;YACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;YAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;QAED,qDAAqD;QACrD,IAAI,UAAU,GAAG,KAAK,CAAA;QACtB,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE;YACxC,IAAI,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;YAC7B,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACnC,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAA;aACpE;YACD,IAAI,OAAQ,MAAuB,CAAC,OAAO,KAAK,WAAW,EAAE;gBAC3D,UAAU,GAAG,IAAI,CAAA;aAClB;SACF;QACD,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAA;QAEvD,IAAI,CAAC,QAAQ,CAAC,GAAG;YACf,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,wBAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YACrD,WAAW,EAAE,SAAS,CAAC,WAAW,CAAC,qBAAqB;SACzD,CAAA;KACF;IAED,qBAAqB;IACrB,IACE,IAAI,CAAC,OAAO,CAAC,gBAAgB;QAC7B,OAAO,SAAS,CAAC,kBAAkB,KAAK,QAAQ;QAChD,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;QACpD,iFAAiF;QACjF,CAAE,SAAS,CAAC,kBAAkB,CAAC,cAAiC,CAAC,MAAM;aACpE,IAAI,KAAK,QAAQ;YACjB,SAAS,CAAC,kBAAkB,CAAC,cAAiC,CAAC,MAAM;iBACnE,IAAI,KAAK,OAAO,CAAC,EACtB;QACA,uEAAuE;QACvE,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,qBAAa,CAAC;gBACZ,OAAO,EAAE,+BAA+B;gBACxC,OAAO,EACL,uCAAuC;oBACvC,uCAAuC;oBACvC,aAAa,SAAS,CAAC,eAAe,EAAE;gBAC1C,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;SACH;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,GAAG;gBACd,IAAI,EAAE,oBAAU;gBAChB,WAAW,EACT,kDAAkD;oBAClD,2DAA2D;oBAC3D,sBAAsB;aACzB,CAAA;SACF;KACF;IAED,uCAAuC;IACvC,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,MAAM,aAAa,GAAG,cAAc,CAAC;YACnC,GAAG,EAAE,iBAAiB;YACtB,IAAI;YACJ,MAAM,EAAE,iBAAiB,CAAC,MAAM;YAChC,SAAS;YACT,iBAAiB,EAAE,IAAI,CAAC,uDAAuD;SAChF,CAAC,CAAA;QAEF,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB;YACjD,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,CAAA,CAAC,oBAAoB;QAE7F,MAAM,WAAW,GACf,OAAO,SAAS,KAAK,QAAQ;YAC7B,OAAO,SAAS,CAAC,eAAe,KAAK,SAAS;YAC5C,CAAC,CAAC,SAAS,CAAC,eAAe;YAC3B,CAAC,CAAC,KAAK,CAAA;QAEX,IAAI,CAAC,QAAQ,CAAC,GAAG;YACf,IAAI,EAAE,WAAW;gBACf,CAAC,CAAC,IAAI,wBAAc,CAAC,aAAa,CAAC;gBACnC,CAAC,CAAC,OAAQ,iBAAiB,CAAC,MAAuB,CAAC,OAAO;oBACzD,WAAW;oBACb,CAAC,CAAC;wBACE,IAAI,EAAE,aAAa;wBACnB,YAAY,EAAG,iBAAiB,CAAC,MAAuB,CAAC,OAAO;qBACjE;oBACH,CAAC,CAAC,aAAa;YACjB,wEAAwE;YACxE,WAAW,EAAE,iBAAiB,CAAC,MAAM,CAAC,WAAW;SAClD,CAAA;KACF;IAED,IAAI,GAAG,kBAAU,CAAC,IAAI,CAAC,CAAA;IACvB,OAAO,IAAI,CAAA;AACb,CAAC;AA/OD,0BA+OC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,YAAoB;IAC/C,+DAA+D;IAC/D,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAC7B,YAAoB,EACpB,IAAgB,EAChB,IAAuB;IAEvB,+BAA+B;IAC/B,QAAQ,mBAAmB,CAAC,YAAY,CAAC,EAAE;QACzC,KAAK,OAAO;YACV,mBAAmB;YACnB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;gBAC1C,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,YAAY,CAAA;YACxC,CAAC,CAAC,CAAA;YAEF,uCAAuC;YACvC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC7B,eAAe;gBACf,OAAO,YAAY,CAAC,CAAC,CAAC,CAAA;aACvB;iBAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBAClC,iBAAiB;gBACjB,qBAAa,CAAC;oBACZ,OAAO,EAAE,gBAAgB;oBACzB,OAAO,EACL,qBAAqB,IAAI,CAAC,YAAY,kBAAkB;wBACxD,QAAQ,YAAY,0CAA0C;oBAChE,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;aACH;iBAAM;gBACL,gCAAgC;gBAChC,qBAAa,CAAC;oBACZ,OAAO,EAAE,mBAAmB;oBAC5B,OAAO,EACL,qBAAqB,IAAI,CAAC,YAAY,kBAAkB;wBACxD,QAAQ,YAAY,gCAAgC;oBACtD,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;aACH;YACD,MAAK;QAEP,UAAU;QACV,cAAc;QACd,UAAU;QAEV,UAAU;QACV,eAAe;QACf,UAAU;QAEV,iCAAiC;QACjC,gCAAgC;QAChC;YACE,qBAAa,CAAC;gBACZ,OAAO,EAAE,mBAAmB;gBAC5B,OAAO,EACL,wCAAwC;oBACxC,IAAI,IAAI,CAAC,YAAY,gCAAgC;oBACrD,kDAAkD;gBACpD,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;KACL;AACH,CAAC"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index 205b23b8..e821d149 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -79,10 +79,12 @@ function toDate(n) { const parsed = Date.parse(n); const $ref = new Date(); $ref.setTime(parsed); - return typeof parsed === 'number' && + return ((typeof parsed === 'number' && parsed !== NaN && parsed > 0 && - String(parsed).length === 13 && $ref || null; + String(parsed).length === 13 && + $ref) || + null); } /** * @@ -97,8 +99,7 @@ exports.serializeDate = serializeDate; */ function isSafeDate(n) { const date = toDate(n); - return (date !== null && - (date.getTime()) !== NaN); + return date !== null && date.getTime() !== NaN; } exports.isSafeDate = isSafeDate; /** diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index a340acab..5c84fc6f 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;AAKnD,QAAA,WAAW,GAAG;IACzB;;;;OAIG;IACH,WAAW,EAAE,4BAA4B;IACzC,iBAAiB,EAAE,mBAAmB;IAEtC,mBAAmB;IACnB,uBAAuB,EAAE,4BAA4B;IACrD,qBAAqB,EAAE,4BAA4B;IACnD,eAAe,EAAE,6CAA6C;IAC9D,oBAAoB,EAAE,8CAA8C;IACpE,kBAAkB,EAAE,4CAA4C;IAChE,uBAAuB,EAAE,mBAAmB;IAC5C,cAAc,EAAE,0BAA0B;IAC1C,kBAAkB,EAAE,qEAAqE;IACzF,2BAA2B,EAAE,eAAe;IAC5C,yBAAyB,EAAE,2DAA2D;IACtF,mBAAmB,EAAE,wDAAwD;IAC7E,mBAAmB,EAAE,uDAAuD;IAC5E,gCAAgC,EAAE,yBAAyB;IAC3D,+BAA+B,EAAE,8BAA8B;IAC/D,oCAAoC,EAAE,mCAAmC;IAEzE,QAAQ;IACR,cAAc,EAAE,8BAA8B;IAC9C,mBAAmB,EAAE,6CAA6C;IAClE,iBAAiB,EAAE,cAAc;IAEjC,eAAe;IACf,qBAAqB,EAAE,sDAAsD;IAC7E,yBAAyB,EAAE,yDAAyD;IACpF,uBAAuB,EAAE,4BAA4B;IAErD,UAAU;IACV,2BAA2B,EAAE,sCAAsC;IACnE,mCAAmC,EAAE,sCAAsC;IAC3E,6BAA6B,EAAE,4CAA4C;IAE3E,gBAAgB;IAChB,qBAAqB,EAAE,wBAAwB;CAChD,CAAA;AAED,MAAM,OAAO,GAAG,UAAU,CAAA;AAC1B,MAAM,OAAO,GAAG,CAAC,UAAU,CAAA;AAE3B,MAAM,QAAQ,GAAG,gBAAgB,CAAA;AACjC,MAAM,QAAQ,GAAG,CAAC,gBAAgB,CAAA;AAElC;;GAEG;AACH,SAAgB,aAAa,CAAC,CAAU;IACtC,OAAO,CACL,OAAO,CAAC,KAAK,QAAQ;QACrB,QAAQ,CAAC,CAAC,CAAC;QACX,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QACnB,CAAC,IAAI,OAAO;QACZ,CAAC,IAAI,OAAO,CACb,CAAA;AACH,CAAC;AARD,sCAQC;AAED;;GAEG;AAEH,SAAgB,UAAU,CAAC,CAAU;IACnC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,IAAI,QAAQ,CAAA;AAC/E,CAAC;AAFD,gCAEC;AAED;;GAEG;AAEF,SAAgB,WAAW,CAAC,CAAU;IACpC,OAAO,KAAK,CAAC;AACf,CAAC;AAFD,kCAEC;AAEF;;GAEG;AAEH,SAAS,MAAM,CAAC,CAAS;IACrB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC5B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAExB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAErB,OAAO,OAAO,MAAM,KAAK,QAAQ;QACjC,MAAM,KAAK,GAAG;QACd,MAAM,GAAG,CAAC;QACV,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,EAAE,IAAI,IAAI,IAAI,IAAI,CAAC;AACjD,CAAC;AAED;;GAEG;AAEH,SAAgB,aAAa,CAAE,CAAS;IACtC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACtB,OAAO,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;AAC/B,CAAC;AAHD,sCAGC;AAED;;GAEG;AAEH,SAAgB,UAAU,CAAC,CAAS;IAClC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACtB,OAAO,CACL,IAAI,KAAK,IAAI;QACb,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,GAAG,CACzB,CAAA;AACH,CAAC;AAND,gCAMC;AAED;;GAEG;AAEH,SAAgB,KAAK,CAAC,CAAS;IAC7B,IAAI,GAAG,GAAG,IAAI,CAAA;IACd,MAAM,QAAQ,GAAG,uGAAuG,CAAA;IACxH,IAAI;QACF,GAAG,GAAG,CAAC,CAAC,KAAK,CACX,QAAQ,CACT,CAAA;KACF;IAAC,OAAO,CAAC,EAAE;QACV,GAAG,GAAG,IAAI,CAAA;KACX;IACD,OAAO,GAAG,KAAK,IAAI,CAAA;AACrB,CAAC;AAXD,sBAWC;AAED;;GAEG;AAEH,SAAgB,OAAO,CAAC,CAAS;IAC/B,MAAM,UAAU,GAAG,sEAAsE,CAAC;IAC1F,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AAHD,0BAGC;AAED;;GAEG;AAEH,SAAgB,YAAY,CAAC,CAAS;IACpC,MAAM,UAAU,GAAG,4EAA4E,CAAA;IAC/F,MAAM,UAAU,GAAG,uGAAuG,CAAA;IAE1H,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QACrB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KAClC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjD,CAAC;AATD,oCASC;AAED;;GAEG;AACH,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAW,EAAE;IAC5C,OAAO,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,CAAC,CAAA;AAChE,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,IAAI,EAAW,EAAE;IAC9C,IAAI,QAAQ,GAAG,EAAE,CAAA;IAEjB,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE;QAC3B,QAAQ,GAAG,OAAO,MAAM,CAAA;KACzB;SAAM;QACL,QAAQ,GAAG,EAAE,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;KACpD;IACD,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACrD,CAAC,CAAA;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,KAAK,EAAE,IAAI;IACtC,IAAI,MAAM,GAAG,KAAK,CAAA;IAElB,IAAI,IAAI,KAAK,SAAS,EAAE;QACtB,IAAI,GAAG,QAAQ,CAAA;KAChB;IAED,IAAI,GAAG,IAAI,IAAI,EAAE,CAAA;IAEjB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YACnC,OAAO,MAAM,CAAA;SACd;QAED,IAAI,QAAQ,GAAG,CAAC,CAAA;QAEhB,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAE1B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACnB,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;gBAC/B,KAAK,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAA;aACxD;YACD,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;QAEF,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;KAC3B;SAAM;QACL,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;YAC9B,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAA;SACrD;QAED,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;KACpC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAlCD,oCAkCC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,OAAO,EACP,kBAAkB,EAClB,IAAI,EACJ,IAAI,EACJ,GAAG,EAQJ;IACC,MAAM,UAAU,GAAG,mBAAW,CAAC,OAAO,CAAC,CAAA;IAEvC,MAAM,OAAO,GAAY;QACvB,IAAI,EAAE,OAAO;QACb,OAAO;QACP,UAAU,EAAE,kBAAkB;YAC5B,CAAC,CAAC,GAAG,UAAU,IAAI,kBAAkB,EAAE;YACvC,CAAC,CAAC,UAAU;KACf,CAAA;IAED,IAAI,OAAO,IAAI,KAAK,SAAS,EAAE;QAC7B,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;KACvB;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;KACxD;SAAM;QACL,MAAM,MAAM,GAAG,YAAY,OAAO,CAAC,OAAO,MAAM,OAAO,CAAC,UAAU,EAAE,CAAA;QACpE,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;YAC7B,GAAG,CAAC,MAAM,CAAC,CAAA;SACZ;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;SACpB;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAC3C;AACH,CAAC;AAxCD,sCAwCC;AAED,gDAAgD;AAChD,6CAA6C;AAC7C,SAAgB,UAAU,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SAClB,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AAC7C,CAAC;AAJD,gCAIC;AAED;;GAEG;AACH,SAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO;IACrD,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAChD,OAAO,YAAY,IAAI,OAAO,CAAA;IAChC,CAAC,CAAC,CAAA;AACJ,CAAC;AAJD,wDAIC"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;AAKnD,QAAA,WAAW,GAAG;IACzB;;;;OAIG;IACH,WAAW,EAAE,4BAA4B;IACzC,iBAAiB,EAAE,mBAAmB;IAEtC,mBAAmB;IACnB,uBAAuB,EAAE,4BAA4B;IACrD,qBAAqB,EAAE,4BAA4B;IACnD,eAAe,EAAE,6CAA6C;IAC9D,oBAAoB,EAAE,8CAA8C;IACpE,kBAAkB,EAAE,4CAA4C;IAChE,uBAAuB,EAAE,mBAAmB;IAC5C,cAAc,EAAE,0BAA0B;IAC1C,kBAAkB,EAAE,qEAAqE;IACzF,2BAA2B,EAAE,eAAe;IAC5C,yBAAyB,EAAE,2DAA2D;IACtF,mBAAmB,EAAE,wDAAwD;IAC7E,mBAAmB,EAAE,uDAAuD;IAC5E,gCAAgC,EAAE,yBAAyB;IAC3D,+BAA+B,EAAE,8BAA8B;IAC/D,oCAAoC,EAAE,mCAAmC;IAEzE,QAAQ;IACR,cAAc,EAAE,8BAA8B;IAC9C,mBAAmB,EAAE,6CAA6C;IAClE,iBAAiB,EAAE,cAAc;IAEjC,eAAe;IACf,qBAAqB,EAAE,sDAAsD;IAC7E,yBAAyB,EAAE,yDAAyD;IACpF,uBAAuB,EAAE,4BAA4B;IAErD,UAAU;IACV,2BAA2B,EAAE,sCAAsC;IACnE,mCAAmC,EAAE,sCAAsC;IAC3E,6BAA6B,EAAE,4CAA4C;IAE3E,gBAAgB;IAChB,qBAAqB,EAAE,wBAAwB;CAChD,CAAA;AAED,MAAM,OAAO,GAAG,UAAU,CAAA;AAC1B,MAAM,OAAO,GAAG,CAAC,UAAU,CAAA;AAE3B,MAAM,QAAQ,GAAG,gBAAgB,CAAA;AACjC,MAAM,QAAQ,GAAG,CAAC,gBAAgB,CAAA;AAElC;;GAEG;AACH,SAAgB,aAAa,CAAC,CAAU;IACtC,OAAO,CACL,OAAO,CAAC,KAAK,QAAQ;QACrB,QAAQ,CAAC,CAAC,CAAC;QACX,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QACnB,CAAC,IAAI,OAAO;QACZ,CAAC,IAAI,OAAO,CACb,CAAA;AACH,CAAC;AARD,sCAQC;AAED;;GAEG;AAEH,SAAgB,UAAU,CAAC,CAAU;IACnC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,IAAI,QAAQ,CAAA;AAC/E,CAAC;AAFD,gCAEC;AAED;;GAEG;AAEH,SAAgB,WAAW,CAAC,CAAU;IACpC,OAAO,KAAK,CAAA;AACd,CAAC;AAFD,kCAEC;AAED;;GAEG;AAEH,SAAS,MAAM,CAAC,CAAS;IACvB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC5B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAA;IAEvB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAEpB,OAAO,CACL,CAAC,OAAO,MAAM,KAAK,QAAQ;QACzB,MAAM,KAAK,GAAG;QACd,MAAM,GAAG,CAAC;QACV,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,EAAE;QAC5B,IAAI,CAAC;QACP,IAAI,CACL,CAAA;AACH,CAAC;AAED;;GAEG;AAEH,SAAgB,aAAa,CAAC,CAAS;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACtB,OAAO,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAA;AAC9B,CAAC;AAHD,sCAGC;AAED;;GAEG;AAEH,SAAgB,UAAU,CAAC,CAAS;IAClC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACtB,OAAO,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,CAAA;AAChD,CAAC;AAHD,gCAGC;AAED;;GAEG;AAEH,SAAgB,KAAK,CAAC,CAAS;IAC7B,IAAI,GAAG,GAAG,IAAI,CAAA;IACd,MAAM,QAAQ,GAAG,uGAAuG,CAAA;IACxH,IAAI;QACF,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;KACxB;IAAC,OAAO,CAAC,EAAE;QACV,GAAG,GAAG,IAAI,CAAA;KACX;IACD,OAAO,GAAG,KAAK,IAAI,CAAA;AACrB,CAAC;AATD,sBASC;AAED;;GAEG;AAEH,SAAgB,OAAO,CAAC,CAAS;IAC/B,MAAM,UAAU,GAAG,sEAAsE,CAAA;IACzF,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAC3B,CAAC;AAHD,0BAGC;AAED;;GAEG;AAEH,SAAgB,YAAY,CAAC,CAAS;IACpC,MAAM,UAAU,GAAG,4EAA4E,CAAA;IAC/F,MAAM,UAAU,GAAG,uGAAuG,CAAA;IAE1H,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QACrB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;KACjC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjD,CAAC;AATD,oCASC;AAED;;GAEG;AACH,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAW,EAAE;IAC5C,OAAO,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,CAAC,CAAA;AAChE,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,IAAI,EAAW,EAAE;IAC9C,IAAI,QAAQ,GAAG,EAAE,CAAA;IAEjB,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE;QAC3B,QAAQ,GAAG,OAAO,MAAM,CAAA;KACzB;SAAM;QACL,QAAQ,GAAG,EAAE,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;KACpD;IACD,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACrD,CAAC,CAAA;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,KAAK,EAAE,IAAI;IACtC,IAAI,MAAM,GAAG,KAAK,CAAA;IAElB,IAAI,IAAI,KAAK,SAAS,EAAE;QACtB,IAAI,GAAG,QAAQ,CAAA;KAChB;IAED,IAAI,GAAG,IAAI,IAAI,EAAE,CAAA;IAEjB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YACnC,OAAO,MAAM,CAAA;SACd;QAED,IAAI,QAAQ,GAAG,CAAC,CAAA;QAEhB,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAE1B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACnB,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;gBAC/B,KAAK,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAA;aACxD;YACD,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;QAEF,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;KAC3B;SAAM;QACL,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;YAC9B,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAA;SACrD;QAED,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;KACpC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAlCD,oCAkCC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,OAAO,EACP,kBAAkB,EAClB,IAAI,EACJ,IAAI,EACJ,GAAG,EAQJ;IACC,MAAM,UAAU,GAAG,mBAAW,CAAC,OAAO,CAAC,CAAA;IAEvC,MAAM,OAAO,GAAY;QACvB,IAAI,EAAE,OAAO;QACb,OAAO;QACP,UAAU,EAAE,kBAAkB;YAC5B,CAAC,CAAC,GAAG,UAAU,IAAI,kBAAkB,EAAE;YACvC,CAAC,CAAC,UAAU;KACf,CAAA;IAED,IAAI,OAAO,IAAI,KAAK,SAAS,EAAE;QAC7B,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;KACvB;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;KACxD;SAAM;QACL,MAAM,MAAM,GAAG,YAAY,OAAO,CAAC,OAAO,MAAM,OAAO,CAAC,UAAU,EAAE,CAAA;QACpE,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;YAC7B,GAAG,CAAC,MAAM,CAAC,CAAA;SACZ;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;SACpB;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAC3C;AACH,CAAC;AAxCD,sCAwCC;AAED,gDAAgD;AAChD,6CAA6C;AAC7C,SAAgB,UAAU,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SAClB,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AAC7C,CAAC;AAJD,gCAIC;AAED;;GAEG;AACH,SAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO;IACrD,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAChD,OAAO,YAAY,IAAI,OAAO,CAAA;IAChC,CAAC,CAAC,CAAA;AACJ,CAAC;AAJD,wDAIC"} \ No newline at end of file From 7fb06b59cb89874a1629ae77e3d56fc91c661693 Mon Sep 17 00:00:00 2001 From: Alan Cha Date: Wed, 13 May 2020 11:23:30 -0400 Subject: [PATCH 11/15] Remove old Node versions from tests Signed-off-by: Alan Cha --- .travis.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 791e5b5f..669b9065 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,10 +1,7 @@ sudo: false language: node_js node_js: - - "8" - - "9" - "10" - - "11" - "12" os: From 9df9a7a6eb32c8c3aae3638d435c56864ad53e64 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Wed, 13 May 2020 17:21:50 +0100 Subject: [PATCH 12/15] signed-off: ensure schema title represents graphql scalar type name or provide default Signed-off-by: Ifeora Okechukwu --- packages/openapi-to-graphql/lib/schema_builder.js | 4 ++-- .../openapi-to-graphql/lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/lib/utils.d.ts | 4 ++++ packages/openapi-to-graphql/lib/utils.js | 12 +++++++++++- packages/openapi-to-graphql/lib/utils.js.map | 2 +- packages/openapi-to-graphql/src/schema_builder.ts | 10 ++++++++-- packages/openapi-to-graphql/src/utils.ts | 14 +++++++++++++- 7 files changed, 40 insertions(+), 8 deletions(-) diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 011ba5f8..e451027e 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -369,8 +369,8 @@ function getScalarType({ def, schema, isInputObjectType, data }) { const type = schema.type; const title = schema.title || ''; options.name = - title.split(' ').join('') || - 'StrictScalarType' + + title.split(/\s+/).map(utils_1.ucFirst).join('') || + 'StrictScalar' + utils_1.ucFirst(type) + 'Type' + (Math.random() * Date.now()).toString(16).replace('.', ''); if (type === 'string') { options.trim = true; diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index 23f1c8dd..973b0648 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/utils.d.ts b/packages/openapi-to-graphql/lib/utils.d.ts index d315aed0..ae5195a3 100644 --- a/packages/openapi-to-graphql/lib/utils.d.ts +++ b/packages/openapi-to-graphql/lib/utils.d.ts @@ -65,6 +65,10 @@ export declare function isEmail(s: string): boolean; * */ export declare function isUUIDOrGUID(s: string): boolean; +/** + * + */ +export declare function ucFirst(s: string): string; /** * get the correct type of a variable */ diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index e821d149..247f124b 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -69,7 +69,7 @@ exports.isSafeLong = isSafeLong; * */ function isSafeFloat(n) { - return false; + return typeof n === 'number' && (n % 1 !== 0); } exports.isSafeFloat = isSafeFloat; /** @@ -137,6 +137,16 @@ function isUUIDOrGUID(s) { return uuidRegExp.test(s) || guidRegExp.test(s); } exports.isUUIDOrGUID = isUUIDOrGUID; +/** + * + */ +function ucFirst(s) { + if (typeof s !== 'string') { + return ''; + } + return s.replace(/^./, (c) => c.toUpperCase()); +} +exports.ucFirst = ucFirst; /** * check if a literal is falsy or not */ diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index 5c84fc6f..22a29c1a 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index 80703936..8b174711 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -54,6 +54,7 @@ import debug from 'debug' import { handleWarning, sortObject, + ucFirst, isSafeInteger, isSafeLong, isSafeFloat, @@ -568,8 +569,13 @@ function getScalarType({ const title = schema.title || '' options.name = - title.split(' ').join('') || - 'StrictScalarType' + + title + .split(/\s+/) + .map(ucFirst) + .join('') || + 'StrictScalar' + + ucFirst(type) + + 'Type' + (Math.random() * Date.now()).toString(16).replace('.', '') if (type === 'string') { diff --git a/packages/openapi-to-graphql/src/utils.ts b/packages/openapi-to-graphql/src/utils.ts index 730011a2..6614f4ef 100644 --- a/packages/openapi-to-graphql/src/utils.ts +++ b/packages/openapi-to-graphql/src/utils.ts @@ -83,7 +83,7 @@ export function isSafeLong(n: unknown): boolean { */ export function isSafeFloat(n: unknown): boolean { - return false + return typeof n === 'number' && n % 1 !== 0 } /** @@ -163,6 +163,18 @@ export function isUUIDOrGUID(s: string): boolean { return uuidRegExp.test(s) || guidRegExp.test(s) } +/** + * + */ + +export function ucFirst(s: string): string { + if (typeof s !== 'string') { + return '' + } + + return s.replace(/^./, c => c.toUpperCase()) +} + /** * check if a literal is falsy or not */ From e4b2acf04f301e8c2ed51ef0ada28bb4bc8b22e3 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Mon, 18 May 2020 23:45:53 +0100 Subject: [PATCH 13/15] signed-off: updated for comments and references Signed-off-by: Ifeora Okechukwu --- .../openapi-to-graphql/lib/schema_builder.js | 9 +- .../lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/lib/utils.d.ts | 14 +-- packages/openapi-to-graphql/lib/utils.js | 69 +++++++------- packages/openapi-to-graphql/lib/utils.js.map | 2 +- .../src/types/strict_scalars.ts | 2 +- packages/openapi-to-graphql/src/utils.ts | 92 ++++++++++--------- 7 files changed, 97 insertions(+), 93 deletions(-) diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index e451027e..696aab31 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -369,8 +369,13 @@ function getScalarType({ def, schema, isInputObjectType, data }) { const type = schema.type; const title = schema.title || ''; options.name = - title.split(/\s+/).map(utils_1.ucFirst).join('') || - 'StrictScalar' + utils_1.ucFirst(type) + 'Type' + + title + .split(/\s+/) + .map(utils_1.ucFirst) + .join('') || + 'StrictScalar' + + utils_1.ucFirst(type) + + 'Type' + (Math.random() * Date.now()).toString(16).replace('.', ''); if (type === 'string') { options.trim = true; diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index 973b0648..e24d36cf 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;AAsBhE,qEAAsE;AACtE,+DAAgE;AAChE,mEAAoE;AAEpE,qCAgBgB;AAEhB,WAAW;AACX,iDAAgD;AAChD,2CAA0C;AAC1C,yDAAgD;AAChD,iDAA8C;AAC9C,iCAAyB;AACzB,mCAagB;AA0ChB,MAAM,cAAc,GAAG,eAAK,CAAC,aAAa,CAAC,CAAA;AAE3C;;GAEG;AACH,SAAgB,cAAc,CAAC,EAC7B,GAAG,EACH,MAAM,EACN,SAAS,EACT,IAAI,EACJ,SAAS,GAAG,CAAC,EACb,iBAAiB,GAAG,KAAK,EACM;IAC/B,MAAM,IAAI,GAAG,iBAAiB;QAC5B,CAAC,CAAC,GAAG,CAAC,0BAA0B;QAChC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAA;IAEvB,6BAA6B;IAC7B,IAAI,SAAS,KAAK,EAAE,EAAE;QACpB,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,uCAAuC,CAAC,CAAA;KAC7E;IAED,QAAQ,GAAG,CAAC,iBAAiB,EAAE;QAC7B,oCAAoC;QACpC,KAAK,QAAQ;YACX,OAAO,eAAe,CAAC;gBACrB,GAAG;gBACH,SAAS;gBACT,IAAI;gBACJ,SAAS;gBACT,iBAAiB;aAClB,CAAC,CAAA;QAEJ,kCAAkC;QAClC,KAAK,OAAO;YACV,OAAO,kBAAkB,CAAC;gBACxB,GAAG;gBACH,SAAS;gBACT,IAAI;gBACJ,SAAS;aACV,CAAC,CAAA;QAEJ,gCAAgC;QAChC,KAAK,MAAM;YACT,OAAO,iBAAiB,CAAC;gBACvB,GAAG;gBACH,SAAS;gBACT,MAAM;gBACN,IAAI;gBACJ,SAAS;gBACT,iBAAiB;aAClB,CAAC,CAAA;QAEJ,gCAAgC;QAChC,KAAK,MAAM;YACT,OAAO,iBAAiB,CAAC;gBACvB,GAAG;gBACH,IAAI;aACL,CAAC,CAAA;QAEJ,oCAAoC;QACpC;YACE,OAAO,aAAa,CAAC;gBACnB,GAAG;gBACH,MAAM;gBACN,iBAAiB;gBACjB,IAAI;aACL,CAAC,CAAA;KACL;AACH,CAAC;AAhED,wCAgEC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,eAAe,CAAC,EACvB,GAAG,EACH,SAAS,EACT,IAAI,EACJ,SAAS,EACT,iBAAiB,EACc;IAI/B,iDAAiD;IAEjD,kCAAkC;IAClC,IAAI,CAAC,iBAAiB,EAAE;QACtB,IAAI,GAAG,CAAC,WAAW,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,EAAE;YAC7D,cAAc,CACZ,sBAAsB,GAAG,CAAC,eAAe,GAAG;gBAC1C,CAAC,OAAO,SAAS,KAAK,QAAQ;oBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;oBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;YAED,OAAO,GAAG,CAAC,WAGU,CAAA;SACtB;QAED,2CAA2C;KAC5C;SAAM;QACL,IACE,GAAG,CAAC,sBAAsB;YAC1B,OAAO,GAAG,CAAC,sBAAsB,KAAK,WAAW,EACjD;YACA,cAAc,CACZ,4BAA4B,GAAG,CAAC,0BAA0B,GAAG;gBAC3D,CAAC,OAAO,SAAS,KAAK,QAAQ;oBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;oBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;YACD,OAAO,GAAG,CAAC,sBAAgD,CAAA;SAC5D;KACF;IAED,qEAAqE;IAErE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;IACzB,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;IAEtC,mCAAmC;IACnC,IAAI,CAAC,iBAAiB,EAAE;QACtB,cAAc,CACZ,uBAAuB,GAAG,CAAC,eAAe,GAAG;YAC3C,CAAC,OAAO,SAAS,KAAK,QAAQ;gBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;QAED,GAAG,CAAC,WAAW,GAAG,IAAI,2BAAiB,CAAC;YACtC,IAAI,EAAE,GAAG,CAAC,eAAe;YACzB,WAAW;YACX,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO,YAAY,CAAC;oBAClB,GAAG;oBACH,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,SAAS;oBACT,IAAI;oBACJ,SAAS;oBACT,iBAAiB,EAAE,KAAK;iBACzB,CAAC,CAAA;YACJ,CAAC;SACF,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,WAAW,CAAA;QAEtB,4CAA4C;KAC7C;SAAM;QACL,cAAc,CACZ,6BAA6B,GAAG,CAAC,0BAA0B,GAAG;YAC5D,CAAC,OAAO,SAAS,KAAK,QAAQ;gBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;QAED,GAAG,CAAC,sBAAsB,GAAG,IAAI,gCAAsB,CAAC;YACtD,IAAI,EAAE,GAAG,CAAC,0BAA0B;YACpC,WAAW;YACX,aAAa;YACb,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO,YAAY,CAAC;oBAClB,GAAG;oBACH,KAAK,EAAE,EAAE;oBACT,SAAS;oBACT,IAAI;oBACJ,SAAS;oBACT,iBAAiB,EAAE,IAAI;iBACxB,CAAC,CAAA;YACJ,CAAC;SACF,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,sBAAsB,CAAA;KAClC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,EAC1B,GAAG,EACH,SAAS,EACT,IAAI,EACJ,SAAS,EACsB;IAC/B,mCAAmC;IACnC,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,EAAE;QAC1C,cAAc,CACZ,qBAAqB,GAAG,CAAC,eAAe,GAAG;YACzC,CAAC,OAAO,SAAS,KAAK,QAAQ;gBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;QACD,OAAO,GAAG,CAAC,WAA+B,CAAA;KAC3C;SAAM;QACL,cAAc,CACZ,sBAAsB,GAAG,CAAC,eAAe,GAAG;YAC1C,CAAC,OAAO,SAAS,KAAK,QAAQ;gBAC5B,CAAC,CAAC,oBAAoB,SAAS,CAAC,eAAe,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;QAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QAEzB,MAAM,WAAW,GACf,OAAO,MAAM,CAAC,WAAW,KAAK,WAAW;YACvC,CAAC,CAAC,MAAM,CAAC,WAAW;YACpB,CAAC,CAAC,2BAA2B,CAAA;QAEjC,MAAM,qBAAqB,GAAG,GAAG,CAAC,cAAkC,CAAA;QAEpE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CACpD,oBAAoB,CAAC,EAAE;YACrB,OAAO,cAAc,CAAC;gBACpB,GAAG,EAAE,oBAAoB;gBACzB,SAAS;gBACT,IAAI;gBACJ,SAAS,EAAE,SAAS,GAAG,CAAC;gBACxB,iBAAiB,EAAE,KAAK;aACzB,CAAsB,CAAA;QACzB,CAAC,CACF,CAAA;QAED;;;;WAIG;QACH,yBAAyB,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QAE3C,GAAG,CAAC,WAAW,GAAG,IAAI,0BAAgB,CAAC;YACrC,IAAI,EAAE,GAAG,CAAC,eAAe;YACzB,WAAW;YACX,KAAK;YACL,WAAW,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACrC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAEtC,6DAA6D;gBAC7D,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;gBACxD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE;oBACnB,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;iBAC/B;gBAED;;;;;;;;;;mBAUG;gBACH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACvB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;oBAEhD,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE;wBAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BAC1C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;gCACvC,OAAO,KAAK,CAAA;6BACb;yBACF;wBACD,OAAO,IAAI,CAAA;qBACZ;oBAED,OAAO,KAAK,CAAA;gBACd,CAAC,CAAC,CAAA;YACJ,CAAC;SACF,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,WAAW,CAAA;KACvB;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,yBAAyB,CAChC,GAAmB,EACnB,KAA0B,EAC1B,IAAuB;IAEvB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAClB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAA;QACtD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAA;QAEtD,IAAI,YAAY,GAAG,YAAY,EAAE;YAC/B,OAAO,CAAC,CAAC,CAAA;SACV;aAAM,IAAI,YAAY,GAAG,YAAY,EAAE;YACtC,OAAO,CAAC,CAAA;SACT;aAAM;YACL,OAAO,CAAC,CAAA;SACT;IACH,CAAC,CAAC,CAAA;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACzC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YAE1B,iDAAiD;YACjD,IACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACjD,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YAC3D,CAAC,CAAC,EACF;gBACA,qBAAa,CAAC;oBACZ,OAAO,EAAE,yBAAyB;oBAClC,OAAO,EACL,8BAA8B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa;wBAC9D,yBAAyB,WAAW,UAAU,SAAS,IAAI;wBAC3D,wDAAwD;wBACxD,wCAAwC;oBAC1C,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;gBAEF,OAAM;aACP;SACF;KACF;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,EACzB,GAAG,EACH,SAAS,EACT,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,IAAI,EAC2B;IAC/B,MAAM,IAAI,GAAG,iBAAiB;QAC5B,CAAC,CAAC,GAAG,CAAC,0BAA0B;QAChC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAA;IAEvB,oCAAoC;IACpC,IACE,CAAC,iBAAiB;QAClB,GAAG,CAAC,WAAW;QACf,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,EACtC;QACA,cAAc,CAAC,sBAAsB,GAAG,CAAC,eAAe,GAAG,CAAC,CAAA;QAC5D,OAAO,GAAG,CAAC,WAA+B,CAAA;KAC3C;SAAM,IACL,iBAAiB;QACjB,GAAG,CAAC,sBAAsB;QAC1B,OAAO,GAAG,CAAC,sBAAsB,KAAK,WAAW,EACjD;QACA,cAAc,CAAC,sBAAsB,GAAG,CAAC,0BAA0B,GAAG,CAAC,CAAA;QACvE,OAAO,GAAG,CAAC,sBAA0C,CAAA;KACtD;IAED,8BAA8B;IAC9B,cAAc,CAAC,uBAAuB,GAAG,CAAC,eAAe,GAAG,CAAC,CAAA;IAE7D,0EAA0E;IAC1E,MAAM,OAAO,GAAG,GAAG,CAAC,cAAgC,CAAA;IAEpD,6BAA6B;IAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAA;IAClC,iCAAiC;IACjC,MAAM,SAAS,GAAG,OAAO,CAAC,eAAe,CAAA;IAEzC,MAAM,SAAS,GAAG,cAAc,CAAC;QAC/B,GAAG,EAAE,OAAO;QACZ,IAAI;QACJ,MAAM;QACN,SAAS;QACT,SAAS,EAAE,SAAS,GAAG,CAAC;QACxB,iBAAiB;KAClB,CAAC,CAAA;IAEF,IAAI,SAAS,KAAK,IAAI,EAAE;QACtB,MAAM,cAAc,GAAG,IAAI,qBAAW,CAAC,SAAS,CAAC,CAAA;QAEjD,gCAAgC;QAChC,IAAI,CAAC,iBAAiB,EAAE;YACtB,GAAG,CAAC,WAAW,GAAG,cAAc,CAAA;SACjC;aAAM;YACL,GAAG,CAAC,sBAAsB,GAAG,cAAc,CAAA;SAC5C;QACD,OAAO,cAAc,CAAA;KACtB;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,wCAAwC,SAAS;OAC9D,IAAI,kBAAkB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;KACzD;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,EACzB,GAAG,EACH,IAAI,EAC0B;IAC9B;;;;OAIG;IACH,IAAI,GAAG,CAAC,WAAW,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,EAAE;QAC7D,cAAc,CAAC,0BAA0B,GAAG,CAAC,eAAe,GAAG,CAAC,CAAA;QAChE,OAAO,GAAG,CAAC,WAA8B,CAAA;KAC1C;SAAM;QACL,cAAc,CAAC,2BAA2B,GAAG,CAAC,eAAe,GAAG,CAAC,CAAA;QAEjE,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC1B,8DAA8D;YAC9D,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG;gBACvE,KAAK,EAAE,CAAC;aACT,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,uCAAuC;QACvC,GAAG,CAAC,WAAW,GAAG,IAAI,yBAAe,CAAC;YACpC,IAAI,EAAE,GAAG,CAAC,eAAe;YACzB,MAAM;SACP,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,WAAW,CAAA;KACvB;AACH,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,EACrB,GAAG,EACH,MAAM,EACN,iBAAiB,EACjB,IAAI,EAC0B;IAC9B,MAAM,OAAO,GAAwD;QACnE,IAAI,EAAE,EAAE;KACT,CAAA;IAED,IAAI,iBAAiB,IAAI,MAAM,EAAE;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAA;QAEhC,OAAO,CAAC,IAAI;YACV,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,eAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,cAAc,GAAG,eAAO,CAAC,IAAI,CAAC,GAAG,MAAM;oBACrC,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAE9D,IAAI,IAAI,KAAK,QAAQ,EAAE;YACrB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;YACnB,IAAI,UAAU,IAAI,MAAM;gBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAA;SAC9D;QAED,QAAQ,IAAI,EAAE;YACZ,KAAK,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC;YACxC,KAAK,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;gBACvC,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;iBACrC;gBAED,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE;oBAC3C,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;iBACjC;gBACD,MAAK;YACP,KAAK,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC;YACxC,KAAK,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;gBACvC,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;iBACrC;gBAED,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE;oBAC3C,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;iBACjC;gBACD,MAAK;YACP,KAAK,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;gBACrC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO;qBAC5B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;qBAClB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;gBAEzB,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,OAAO,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;iBACtD;gBACD,MAAK;YACP,KAAK,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ;gBACzC,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBAClE,MAAK;YACP,KAAK,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,SAAS,CAAC;YACjE,KAAK,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC;YACvC,KAAK,OAAO,MAAM,CAAC,IAAI,KAAK,WAAW;gBACrC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,GAAG,CAAA;gBACpC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAA;gBAE/B,OAAO,CAAC,MAAM,GAAG,CAAC,IAAS,EAAE,EAAE;oBAC7B,IACE,OAAO,KAAK,OAAO;wBACnB,OAAO,KAAK,MAAM;wBAClB,OAAO,KAAK,OAAO,EACnB;wBACA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;4BACnB,MAAM,IAAI,sBAAY,CAAC,0CAA0C,CAAC,CAAA;yBACnE;qBACF;oBAED,IAAI,IAAI,KAAK,QAAQ,EAAE;wBACrB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;4BAC5B,MAAM,IAAI,sBAAY,CACpB,4CAA4C,CAC7C,CAAA;yBACF;qBACF;oBACD,OAAO,IAAI,CAAA;gBACb,CAAC,CAAA;gBAED,OAAO,CAAC,SAAS,GAAG,CAAC,IAAS,EAAE,EAAE;oBAChC,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,WAAW,EAAE;wBACjD,OAAO,qBAAa,CAAC,IAAI,CAAC,CAAA;qBAC3B;oBACD,OAAO,IAAI,CAAA;gBACb,CAAC,CAAA;gBAED,OAAO,CAAC,QAAQ,GAAG,CAAC,IAAS,EAAE,EAAE;oBAC/B,OAAO,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;wBACpD,CAAC,CAAC,qBAAa,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC3C,CAAC,CAAC,OAAO,KAAK,MAAM;4BACpB,CAAC,CAAC,kBAAU,CAAC,IAAI,CAAC,IAAI,IAAI;4BAC1B,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,OAAO;gCAC1C,CAAC,CAAC,mBAAW,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC;gCACvC,CAAC,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,WAAW;oCAC/C,CAAC,CAAC,kBAAU,CAAC,IAAI,CAAC,IAAI,IAAI;oCAC1B,CAAC,CAAC,OAAO,KAAK,MAAM;wCACpB,CAAC,CAAC,oBAAY,CAAC,IAAI,CAAC,IAAI,IAAI;wCAC5B,CAAC,CAAC,OAAO,KAAK,OAAO;4CACrB,CAAC,CAAC,eAAO,CAAC,IAAI,CAAC,IAAI,IAAI;4CACvB,CAAC,CAAC,OAAO,KAAK,KAAK;gDACnB,CAAC,CAAC,aAAK,CAAC,IAAI,CAAC,IAAI,IAAI;gDACrB,CAAC,CAAC,IAAI,CAAA;gBACV,CAAC,CAAA;gBAED,OAAO,CAAC,QAAQ,GAAG,CAAC,IAAS,EAAE,EAAE;oBAC/B,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oBAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBACzD,CAAC,CAAA;gBACD,MAAK;SACR;KACF;IAED,QAAQ,GAAG,CAAC,iBAAiB,EAAE;QAC7B,KAAK,IAAI;YACP,GAAG,CAAC,WAAW,GAAG,mBAAS,CAAA;YAC3B,MAAK;QACP,KAAK,QAAQ;YACX,GAAG,CAAC,WAAW;gBACb,iBAAiB,IAAI,MAAM;oBACzB,CAAC,CAAC,kCAAkB,CAAC,OAAmC,CAAC;oBACzD,CAAC,CAAC,uBAAa,CAAA;YACnB,MAAK;QACP,KAAK,SAAS;YACZ,GAAG,CAAC,WAAW;gBACb,iBAAiB,IAAI,MAAM;oBACzB,CAAC,CAAC,4BAAe,CAAC,OAAmC,CAAC;oBACtD,CAAC,CAAC,oBAAU,CAAA;YAChB,MAAK;QACP,KAAK,QAAQ;YACX,GAAG,CAAC,WAAW;gBACb,iBAAiB,IAAI,MAAM;oBACzB,CAAC,CAAC,gCAAiB,CAAC,OAAmC,CAAC;oBACxD,CAAC,CAAC,sBAAY,CAAA;YAClB,MAAK;QACP,KAAK,SAAS;YACZ,GAAG,CAAC,WAAW,GAAG,wBAAc,CAAA;YAChC,MAAK;QACP,KAAK,MAAM;YACT,GAAG,CAAC,WAAW,GAAG,WAAW,CAAA;YAC7B,MAAK;QACP;YACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,CAAC,iBAAiB,IAAI,CAAC,CAAA;KAC5E;IAED,OAAO,GAAG,CAAC,WAAgC,CAAA;AAC7C,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,EACpB,GAAG,EACH,KAAK,EACL,SAAS,EACT,IAAI,EACJ,SAAS,EACT,iBAAiB,EACE;IACnB,IAAI,MAAM,GAAoC,EAAE,CAAA;IAEhD,MAAM,oBAAoB,GAAG,GAAG,CAAC,cAEhC,CAAA;IAED,+BAA+B;IAC/B,KAAK,IAAI,YAAY,IAAI,oBAAoB,EAAE;QAC7C,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAA;QAC9D,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAA;QAE9C,0CAA0C;QAC1C,MAAM,UAAU,GAAG,cAAc,CAAC;YAChC,GAAG,EAAE,mBAAmB;YACxB,SAAS;YACT,MAAM,EAAE,WAAW;YACnB,IAAI;YACJ,SAAS,EAAE,SAAS,GAAG,CAAC;YACxB,iBAAiB;SAClB,CAAC,CAAA;QAEF,MAAM,gBAAgB,GACpB,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;QAEzE,0EAA0E;QAC1E,IAAI,UAAU,EAAE;YACd,MAAM,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CACzC,YAAY,EACZ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;gBACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;gBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;YAED,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,CAC1C,gBAAgB,EAChB,YAAY,EACZ,IAAI,CAAC,OAAO,CACb,CAAA;YAED,MAAM,CAAC,YAAY,CAAC,GAAG;gBACrB,IAAI,EAAE,gBAAgB;oBACpB,CAAC,CAAC,IAAI,wBAAc,CAAC,UAAU,CAAC;oBAChC,CAAC,CAAE,UAAgC;gBAErC,WAAW,EACT,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;aACnE,CAAA;SACF;aAAM;YACL,qBAAa,CAAC;gBACZ,OAAO,EAAE,uBAAuB;gBAChC,OAAO,EACL,yCAAyC,YAAY,OAAO;oBAC5D,iBAAiB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI;gBACjD,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;SACH;KACF;IAED,IACE,OAAO,KAAK,KAAK,QAAQ,IAAI,oBAAoB;QACjD,CAAC,iBAAiB,CAAC,iEAAiE;MACpF;QACA,KAAK,IAAI,WAAW,IAAI,KAAK,EAAE;YAC7B,cAAc,CAAC,gBAAgB,WAAW,MAAM,CAAC,CAAA;YAEjD,oCAAoC;YACpC,IAAI,WAAW,IAAI,MAAM,EAAE;gBACzB,qBAAa,CAAC;oBACZ,OAAO,EAAE,qBAAqB;oBAC9B,OAAO,EACL,uBAAuB,WAAW,mBAAmB;wBACrD,sEAAsE;oBACxE,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;aACH;iBAAM;gBACL,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,CAAA;gBAE/B,uBAAuB;gBACvB,IAAI,UAAU,CAAA;gBACd,wEAAwE;gBACxE,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE;oBACxC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAA;iBAC9B;qBAAM,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE;oBAChD,UAAU,GAAG,eAAe,CAAC;wBAC3B,KAAK;wBACL,OAAO,EAAE,WAAW;wBACpB,SAAS;wBACT,IAAI;qBACL,CAAC,CAAA;iBACH;gBAED;;;mBAGG;gBACH,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE;oBACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;oBAE5C,yCAAyC;oBACzC,IAAI,YAAY,GAAG,IAAI,CAAC,UAAU,CAAA;oBAElC,8DAA8D;oBAC9D,IAAI,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAA;oBACvC,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;wBACpC,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;4BAC3C,OAAO,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,WAAW,CAAA;wBACxD,CAAC,CAAC,CAAA;qBACH;oBAED,gCAAgC;oBAChC,MAAM,YAAY,GAAG,8BAAW,CAAC;wBAC/B,SAAS,EAAE,QAAQ;wBACnB,YAAY,EAAE,YAAyC;wBACvD,IAAI;wBACJ,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;wBAC7B,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc;qBAC5C,CAAC,CAAA;oBAEF,yBAAyB;oBACzB,MAAM,IAAI,GAAG,OAAO,CAAC;wBACnB,UAAU,EAAE,aAAa;wBACzB,SAAS,EAAE,QAAQ;wBACnB,IAAI;qBACL,CAAC,CAAA;oBAEF,2BAA2B;oBAC3B,MAAM,aAAa,GACjB,QAAQ,CAAC,kBAAkB,CAAC,WAAW,KAAK,SAAS;wBACnD,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,WAAW;wBACzC,CAAC,CAAC,cAAc,CAAC;4BACb,GAAG,EAAE,QAAQ,CAAC,kBAAkB;4BAChC,SAAS;4BACT,IAAI;4BACJ,SAAS,EAAE,SAAS,GAAG,CAAC;4BACxB,iBAAiB,EAAE,KAAK;yBACzB,CAAC,CAAA;oBAER,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;oBAElC,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,IAAI,WAAW,EAAE;wBACpD,WAAW,IAAI,qBAAqB,QAAQ,CAAC,eAAe,EAAE,CAAA;qBAC/D;oBAED,0EAA0E;oBAC1E,oDAAoD;oBACpD,MAAM,CAAC,WAAW,CAAC,GAAG;wBACpB,IAAI,EAAE,aAAa;wBACnB,OAAO,EAAE,YAAY;wBACrB,IAAI;wBACJ,WAAW;qBACZ,CAAA;iBACF;qBAAM;oBACL,qBAAa,CAAC;wBACZ,OAAO,EAAE,mBAAmB;wBAC5B,OAAO,EAAE,kCAAkC,WAAW,GAAG;wBACzD,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;iBACH;aACF;SACF;KACF;IAED,MAAM,GAAG,kBAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,eAAe,CAAC,EACvB,KAAK,EACL,OAAO,EACP,SAAS,EACT,IAAI,EACkB;IACtB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;IAE3B,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE;QACzC,sBAAsB;QAEtB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;QACtC,IAAI,YAAY,CAAA;QAChB,IAAI,yBAAyB,CAAA;QAE7B;;;;WAIG;QACH,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,UAAU,EAAE;YAC/C,yBAAyB,GAAG,YAAY,CAAA;YAExC,2CAA2C;SAC5C;aAAM;YACL;;;eAGG;YACH,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAEvD,kCAAkC;YAClC,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE;gBACzB,2DAA2D;gBAC3D,MAAM,aAAa,GAAG,YAAY,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;gBAC1D,IAAI,cAAc,KAAK,aAAa,EAAE;oBACpC,qBAAa,CAAC;wBACZ,OAAO,EAAE,gBAAgB;wBACzB,OAAO,EACL,aAAa,OAAO,mBAAmB,SAAS,CAAC,eAAe,IAAI;4BACpE,uCAAuC,YAAY,KAAK;4BACxD,4DAA4D;wBAC9D,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,CAAA;gBACxD,yBAAyB,GAAG,YAAY,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;gBAElE,sCAAsC;aACvC;iBAAM;gBACL,qBAAa,CAAC;oBACZ,OAAO,EAAE,mBAAmB;oBAC5B,OAAO,EACL,aAAa,OAAO,mBAAmB,SAAS,CAAC,eAAe,IAAI;wBACpE,kDAAkD,YAAY,KAAK;wBACnE,iDAAiD;oBACnD,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;gBAEF,OAAM;aACP;SACF;QAED,uCAAuC;QACvC,IAAI,OAAO,yBAAyB,KAAK,QAAQ,EAAE;YACjD,IAAI,QAAQ,CAAA;YACZ,IAAI,UAAU,CAAA;YAEd;;;;;;;eAOG;YAEH;;;;eAIG;YACH,MAAM,eAAe,GAAG,yBAAyB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YAElE,6CAA6C;YAC7C,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE;gBAC1B,aAAa;gBAEb,wDAAwD;gBACxD,IAAI,eAAe,KAAK,yBAAyB,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5D,sDAAsD;oBACtD,UAAU,GAAG,yBAAyB,CAAC,SAAS,CAAC,eAAe,GAAG,CAAC,CAAC,CAAA;oBAErE,oCAAoC;oBACpC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;wBAClD,qBAAa,CAAC;4BACZ,OAAO,EAAE,mBAAmB;4BAC5B,OAAO,EACL,qBAAqB,YAAY,gBAAgB;gCACjD,wBAAwB,UAAU,GAAG;4BACvC,IAAI;4BACJ,GAAG,EAAE,cAAc;yBACpB,CAAC,CAAA;wBAEF,OAAM;qBACP;oBACD,4CAA4C;iBAC7C;qBAAM;oBACL,qBAAa,CAAC;wBACZ,OAAO,EAAE,mBAAmB;wBAC5B,OAAO,EACL,qBAAqB,YAAY,uBAAuB;4BACxD,aAAa;wBACf,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED;;;;;;;mBAOG;gBACH,QAAQ,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,CAAA;gBAElE;;;;mBAIG;gBACH,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;gBAEvC,qBAAqB;gBACrB,MAAM,GAAG,GACP,OAAO,YAAY,KAAK,WAAW;oBACjC,CAAC,CAAC,SAAS,CAAC,GAAG;oBACf,CAAC,CAAC,sBAAsB,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;gBAEtD,sEAAsE;gBACtE,IAAI,OAAO,GAAG,KAAK,WAAW,EAAE;oBAC9B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;wBAClE,IAAI,UAAU,CAAA;wBAEd,IAAI,QAAQ,IAAI,GAAG,CAAC,KAAK,IAAI,UAAU,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;4BAC9D,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;4BAEtD,IAAI,aAAa,IAAI,cAAc,EAAE;gCACnC,UAAU,GAAG,cAAc,CAAC,WAAW,CAAA;6BACxC;yBACF;wBAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;4BAClC,UAAU,GAAG,SAAS,CAAC,mBAAmB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;yBACjE;wBAED,IAAI,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE;4BACjC,OAAO,UAAU,CAAA;yBAClB;6BAAM;4BACL,qBAAa,CAAC;gCACZ,OAAO,EAAE,mBAAmB;gCAC5B,OAAO,EACL,aAAa,OAAO,iCAAiC;oCACrD,gBAAgB,UAAU,kCAAkC;oCAC5D,qDAAqD;oCACrD,4DAA4D;gCAC9D,IAAI;gCACJ,GAAG,EAAE,cAAc;6BACpB,CAAC,CAAA;4BAEF,OAAM;yBACP;wBAED,qCAAqC;qBACtC;yBAAM;wBACL,qBAAa,CAAC;4BACZ,OAAO,EAAE,mBAAmB;4BAC5B,OAAO,EACL,wCAAwC,QAAQ,OAAO;gCACvD,IAAI,UAAU,oCAAoC;gCAClD,IAAI,YAAY,cAAc,OAAO,GAAG;4BAC1C,IAAI;4BACJ,GAAG,EAAE,cAAc;yBACpB,CAAC,CAAA;wBAEF,OAAM;qBACP;oBAED,sCAAsC;iBACvC;qBAAM;oBACL,qBAAa,CAAC;wBACZ,OAAO,EAAE,mBAAmB;wBAC5B,OAAO,EACL,aAAa,IAAI,CAAC,YAAY,+BAA+B;4BAC7D,yBAAyB;wBAC3B,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED,2DAA2D;aAC5D;iBAAM;gBACL,qBAAa,CAAC;oBACZ,OAAO,EAAE,mBAAmB;oBAC5B,OAAO,EACL,sDAAsD;wBACtD,IAAI,YAAY,cAAc,OAAO,GAAG;oBAC1C,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;gBAEF,OAAM;aACP;YAED,kDAAkD;SACnD;aAAM;YACL,qBAAa,CAAC;gBACZ,OAAO,EAAE,mBAAmB;gBAC5B,OAAO,EACL,sDAAsD;oBACtD,IAAI,YAAY,cAAc,OAAO,GAAG;gBAC1C,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;YAEF,OAAM;SACP;KACF;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,OAAO,CAAC,EACtB,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,IAAI,EACU;IACd,IAAI,IAAI,GAAG,EAAE,CAAA;IAEb,iBAAiB;IACjB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClC,0BAA0B;QAC1B,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE;YACtC,qBAAa,CAAC;gBACZ,OAAO,EAAE,aAAa;gBACtB,OAAO,EACL,kBAAkB,SAAS,CAAC,eAAe,eAAe;oBAC1D,cAAc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,2BAA2B;gBACpE,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;YACF,SAAQ;SACT;QAED,oDAAoD;QACpD,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE;YACpC,QAAQ,SAAS,CAAC,EAAE,EAAE;gBACpB,KAAK,QAAQ;oBACX,sBAAsB;oBACtB,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ;wBACxC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EACtC;wBACA,SAAQ;qBACT;oBAED,8BAA8B;oBAC9B,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ;wBAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,KAAK,QAAQ;wBACvD,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EACrD;wBACA,SAAQ;qBACT;oBAED,MAAK;gBAEP,KAAK,OAAO;oBACV,sBAAsB;oBACtB,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ;wBACnC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,EACjC;wBACA,SAAQ;qBACT;oBAED,8BAA8B;oBAC9B,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ;wBAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK,QAAQ;wBAClD,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,EAChD;wBACA,SAAQ;qBACT;oBAED,MAAK;aACR;SACF;QAED;;;;;WAKG;QACH,IAAI,MAAsC,CAAA;QAC1C,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;SAC1B;aAAM,IAAI,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,EAAE;YAChD,IACE,OAAO,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,QAAQ;gBACzD,OAAO,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,MAAM,KAAK,QAAQ,EAChE;gBACA,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAA;aACtD;iBAAM;gBACL,qBAAa,CAAC;oBACZ,OAAO,EAAE,6BAA6B;oBACtC,OAAO,EACL,kBAAkB,SAAS,CAAC,eAAe,eAAe;wBAC1D,cAAc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,yBAAyB;wBAChE,0DAA0D;wBAC1D,+BAA+B;oBACjC,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;gBACF,SAAQ;aACT;SACF;aAAM;YACL,iCAAiC;YACjC,qBAAa,CAAC;gBACZ,OAAO,EAAE,aAAa;gBACtB,OAAO,EACL,kBAAkB,SAAS,CAAC,eAAe,eAAe;oBAC1D,cAAc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,wBAAwB;oBAC/D,oBAAoB;gBACtB,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;YACF,SAAQ;SACT;QAED;;;WAGG;QACH,IAAI,MAAM,IAAI,MAAM,EAAE;YACpB,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAA;SAC7D;QAED,eAAe;QACf,MAAM,QAAQ,GAAG,4BAAa,CAC5B,EAAE,UAAU,EAAE,SAAS,CAAC,IAAI,EAAE,EAC9B,MAAsB,EACtB,IAAI,EACJ,IAAI,CACL,CAAA;QAED,aAAa;QACb,MAAM,IAAI,GAAG,cAAc,CAAC;YAC1B,GAAG,EAAE,QAAQ;YACb,SAAS;YACT,MAAM;YACN,IAAI;YACJ,SAAS,EAAE,CAAC;YACZ,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAA;QAEF;;;;;WAKG;QACH,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,SAAS,CAAC,IAAI,EACd,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;YACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;YAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;QAED,qDAAqD;QACrD,IAAI,UAAU,GAAG,KAAK,CAAA;QACtB,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE;YACxC,IAAI,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;YAC7B,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACnC,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAA;aACpE;YACD,IAAI,OAAQ,MAAuB,CAAC,OAAO,KAAK,WAAW,EAAE;gBAC3D,UAAU,GAAG,IAAI,CAAA;aAClB;SACF;QACD,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAA;QAEvD,IAAI,CAAC,QAAQ,CAAC,GAAG;YACf,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,wBAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YACrD,WAAW,EAAE,SAAS,CAAC,WAAW,CAAC,qBAAqB;SACzD,CAAA;KACF;IAED,qBAAqB;IACrB,IACE,IAAI,CAAC,OAAO,CAAC,gBAAgB;QAC7B,OAAO,SAAS,CAAC,kBAAkB,KAAK,QAAQ;QAChD,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;QACpD,iFAAiF;QACjF,CAAE,SAAS,CAAC,kBAAkB,CAAC,cAAiC,CAAC,MAAM;aACpE,IAAI,KAAK,QAAQ;YACjB,SAAS,CAAC,kBAAkB,CAAC,cAAiC,CAAC,MAAM;iBACnE,IAAI,KAAK,OAAO,CAAC,EACtB;QACA,uEAAuE;QACvE,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,qBAAa,CAAC;gBACZ,OAAO,EAAE,+BAA+B;gBACxC,OAAO,EACL,uCAAuC;oBACvC,uCAAuC;oBACvC,aAAa,SAAS,CAAC,eAAe,EAAE;gBAC1C,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;SACH;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,GAAG;gBACd,IAAI,EAAE,oBAAU;gBAChB,WAAW,EACT,kDAAkD;oBAClD,2DAA2D;oBAC3D,sBAAsB;aACzB,CAAA;SACF;KACF;IAED,uCAAuC;IACvC,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,MAAM,aAAa,GAAG,cAAc,CAAC;YACnC,GAAG,EAAE,iBAAiB;YACtB,IAAI;YACJ,MAAM,EAAE,iBAAiB,CAAC,MAAM;YAChC,SAAS;YACT,iBAAiB,EAAE,IAAI,CAAC,uDAAuD;SAChF,CAAC,CAAA;QAEF,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB;YACjD,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,CAAA,CAAC,oBAAoB;QAE7F,MAAM,WAAW,GACf,OAAO,SAAS,KAAK,QAAQ;YAC7B,OAAO,SAAS,CAAC,eAAe,KAAK,SAAS;YAC5C,CAAC,CAAC,SAAS,CAAC,eAAe;YAC3B,CAAC,CAAC,KAAK,CAAA;QAEX,IAAI,CAAC,QAAQ,CAAC,GAAG;YACf,IAAI,EAAE,WAAW;gBACf,CAAC,CAAC,IAAI,wBAAc,CAAC,aAAa,CAAC;gBACnC,CAAC,CAAC,OAAQ,iBAAiB,CAAC,MAAuB,CAAC,OAAO;oBACzD,WAAW;oBACb,CAAC,CAAC;wBACE,IAAI,EAAE,aAAa;wBACnB,YAAY,EAAG,iBAAiB,CAAC,MAAuB,CAAC,OAAO;qBACjE;oBACH,CAAC,CAAC,aAAa;YACjB,wEAAwE;YACxE,WAAW,EAAE,iBAAiB,CAAC,MAAM,CAAC,WAAW;SAClD,CAAA;KACF;IAED,IAAI,GAAG,kBAAU,CAAC,IAAI,CAAC,CAAA;IACvB,OAAO,IAAI,CAAA;AACb,CAAC;AA/OD,0BA+OC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,YAAoB;IAC/C,+DAA+D;IAC/D,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAC7B,YAAoB,EACpB,IAAgB,EAChB,IAAuB;IAEvB,+BAA+B;IAC/B,QAAQ,mBAAmB,CAAC,YAAY,CAAC,EAAE;QACzC,KAAK,OAAO;YACV,mBAAmB;YACnB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;gBAC1C,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,YAAY,CAAA;YACxC,CAAC,CAAC,CAAA;YAEF,uCAAuC;YACvC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC7B,eAAe;gBACf,OAAO,YAAY,CAAC,CAAC,CAAC,CAAA;aACvB;iBAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBAClC,iBAAiB;gBACjB,qBAAa,CAAC;oBACZ,OAAO,EAAE,gBAAgB;oBACzB,OAAO,EACL,qBAAqB,IAAI,CAAC,YAAY,kBAAkB;wBACxD,QAAQ,YAAY,0CAA0C;oBAChE,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;aACH;iBAAM;gBACL,gCAAgC;gBAChC,qBAAa,CAAC;oBACZ,OAAO,EAAE,mBAAmB;oBAC5B,OAAO,EACL,qBAAqB,IAAI,CAAC,YAAY,kBAAkB;wBACxD,QAAQ,YAAY,gCAAgC;oBACtD,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;aACH;YACD,MAAK;QAEP,UAAU;QACV,cAAc;QACd,UAAU;QAEV,UAAU;QACV,eAAe;QACf,UAAU;QAEV,iCAAiC;QACjC,gCAAgC;QAChC;YACE,qBAAa,CAAC;gBACZ,OAAO,EAAE,mBAAmB;gBAC5B,OAAO,EACL,wCAAwC;oBACxC,IAAI,IAAI,CAAC,YAAY,gCAAgC;oBACrD,kDAAkD;gBACpD,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;KACL;AACH,CAAC"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/utils.d.ts b/packages/openapi-to-graphql/lib/utils.d.ts index ae5195a3..dbcc8f83 100644 --- a/packages/openapi-to-graphql/lib/utils.d.ts +++ b/packages/openapi-to-graphql/lib/utils.d.ts @@ -46,7 +46,7 @@ export declare function isSafeLong(n: unknown): boolean; */ export declare function isSafeFloat(n: unknown): boolean; /** - * + * serialize a date string into the ISO format */ export declare function serializeDate(n: string): string; /** @@ -54,25 +54,27 @@ export declare function serializeDate(n: string): string; */ export declare function isSafeDate(n: string): boolean; /** - * + * verify is a string is a valid URL */ export declare function isURL(s: string): boolean; /** - * + * verify if a string is a valid EMAIL + * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/EmailAddress.ts#L4 */ export declare function isEmail(s: string): boolean; /** - * + * verify if a string is a valid GUID/UUID + * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/GUID.ts#L4 */ export declare function isUUIDOrGUID(s: string): boolean; /** - * + * convert the fist letter of a word in a string to upper case */ export declare function ucFirst(s: string): string; /** * get the correct type of a variable */ -export declare function strictTypeOf(value: any, type: any): boolean; +export declare function strictTypeOf(value: unknown, type: string): boolean; /** * Utilities that are specific to OpenAPI-to-GraphQL */ diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index 247f124b..8b03f073 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -53,27 +53,27 @@ const MIN_LONG = -9007199254740992; function isSafeInteger(n) { return (typeof n === 'number' && isFinite(n) && - Math.floor(n) === n && n <= MAX_INT && - n >= MIN_INT); + n >= MIN_INT && + n % 1 === 0); } exports.isSafeInteger = isSafeInteger; /** * verify that a variable contains a safe long (2^53) */ function isSafeLong(n) { - return typeof n === 'number' && isFinite(n) && n <= MAX_LONG && n >= MIN_LONG; + return typeof n === 'number' && isFinite(n) && n <= MAX_LONG && n >= MIN_LONG && n % 1 === 0; } exports.isSafeLong = isSafeLong; /** * */ function isSafeFloat(n) { - return typeof n === 'number' && (n % 1 !== 0); + return typeof n === 'number' && n % 0.5 !== 0; } exports.isSafeFloat = isSafeFloat; /** - * + * convert a date and/or date-time string into a date object */ function toDate(n) { const parsed = Date.parse(n); @@ -87,7 +87,7 @@ function toDate(n) { null); } /** - * + * serialize a date string into the ISO format */ function serializeDate(n) { const date = toDate(n); @@ -103,7 +103,7 @@ function isSafeDate(n) { } exports.isSafeDate = isSafeDate; /** - * + * verify is a string is a valid URL */ function isURL(s) { let res = null; @@ -118,7 +118,8 @@ function isURL(s) { } exports.isURL = isURL; /** - * + * verify if a string is a valid EMAIL + * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/EmailAddress.ts#L4 */ function isEmail(s) { const emailRegex = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/; @@ -126,7 +127,8 @@ function isEmail(s) { } exports.isEmail = isEmail; /** - * + * verify if a string is a valid GUID/UUID + * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/GUID.ts#L4 */ function isUUIDOrGUID(s) { const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i; @@ -138,13 +140,13 @@ function isUUIDOrGUID(s) { } exports.isUUIDOrGUID = isUUIDOrGUID; /** - * + * convert the fist letter of a word in a string to upper case */ function ucFirst(s) { if (typeof s !== 'string') { return ''; } - return s.replace(/^./, (c) => c.toUpperCase()); + return s.replace(/^./, c => c.toUpperCase()); } exports.ucFirst = ucFirst; /** @@ -153,49 +155,42 @@ exports.ucFirst = ucFirst; const isLiteralFalsey = (variable) => { return variable === '' || variable === false || variable === 0; }; +/** + * check if a variable contains a reference type (not a literal) + */ +const isPrimitive = (arg) => { + return typeof arg === 'object' || Boolean(arg) && typeof arg.apply === 'function'; +}; /** * provide the name of primitive and/or reference types */ const checkTypeName = (target, type) => { let typeName = ''; - if (isLiteralFalsey(target)) { + // we need to separate checks for literal types and + // primitive types so we can speed up performance and + // keep things simple + if (isLiteralFalsey(target) || !isPrimitive(target)) { + // literal typeName = typeof target; } else { - typeName = '' + (target && target.constructor.name); + // primitive/reference + typeName = (Object.prototype.toString.call(target)).replace(/^\[object (.+)\]$/, '$1'); } - return !!(typeName.toLowerCase().indexOf(type) + 1); + // check if the type matches + return Boolean(typeName.toLowerCase().indexOf(type) + 1); }; /** * get the correct type of a variable */ function strictTypeOf(value, type) { - let result = false; + // swagger/OpenAPI 'integer' type is converted + // a JavaScript 'number' type for compatibility if (type === 'integer') { type = 'number'; } - type = type || []; - if (typeof type === 'object') { - if (typeof type.length !== 'number') { - return result; - } - let bitPiece = 0; - type = [].slice.call(type); - type.forEach(_type => { - if (typeof _type === 'function') { - _type = (_type.name || _type.displayName).toLowerCase(); - } - bitPiece |= Number(checkTypeName(value, _type)); - }); - result = Boolean(bitPiece); - } - else { - if (typeof type === 'function') { - type = (type.name || type.displayName).toLowerCase(); - } - result = checkTypeName(value, type); - } - return result; + type = type || ''; + return checkTypeName(value, type); } exports.strictTypeOf = strictTypeOf; /** diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index 22a29c1a..8b8b903a 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/types/strict_scalars.ts b/packages/openapi-to-graphql/src/types/strict_scalars.ts index b8b63b0d..d9f02004 100644 --- a/packages/openapi-to-graphql/src/types/strict_scalars.ts +++ b/packages/openapi-to-graphql/src/types/strict_scalars.ts @@ -8,7 +8,7 @@ export interface IScalarParseError { config: TConfig } -// may throw +// function type may throw an error export type ScalarParseErrorHandler = ( errorInfo: IScalarParseError diff --git a/packages/openapi-to-graphql/src/utils.ts b/packages/openapi-to-graphql/src/utils.ts index 6614f4ef..64924cc4 100644 --- a/packages/openapi-to-graphql/src/utils.ts +++ b/packages/openapi-to-graphql/src/utils.ts @@ -64,9 +64,9 @@ export function isSafeInteger(n: unknown): boolean { return ( typeof n === 'number' && isFinite(n) && - Math.floor(n) === n && n <= MAX_INT && - n >= MIN_INT + n >= MIN_INT && + n % 1 === 0 ) } @@ -75,7 +75,13 @@ export function isSafeInteger(n: unknown): boolean { */ export function isSafeLong(n: unknown): boolean { - return typeof n === 'number' && isFinite(n) && n <= MAX_LONG && n >= MIN_LONG + return ( + typeof n === 'number' && + isFinite(n) && + n <= MAX_LONG && + n >= MIN_LONG && + n % 1 === 0 + ) } /** @@ -83,11 +89,11 @@ export function isSafeLong(n: unknown): boolean { */ export function isSafeFloat(n: unknown): boolean { - return typeof n === 'number' && n % 1 !== 0 + return typeof n === 'number' && n % 0.5 !== 0 } /** - * + * convert a date and/or date-time string into a date object */ function toDate(n: string) { @@ -107,7 +113,7 @@ function toDate(n: string) { } /** - * + * serialize a date string into the ISO format */ export function serializeDate(n: string) { @@ -125,7 +131,7 @@ export function isSafeDate(n: string): boolean { } /** - * + * verify is a string is a valid URL */ export function isURL(s: string): boolean { @@ -140,7 +146,8 @@ export function isURL(s: string): boolean { } /** - * + * verify if a string is a valid EMAIL + * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/EmailAddress.ts#L4 */ export function isEmail(s: string): boolean { @@ -149,7 +156,8 @@ export function isEmail(s: string): boolean { } /** - * + * verify if a string is a valid GUID/UUID + * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/GUID.ts#L4 */ export function isUUIDOrGUID(s: string): boolean { @@ -164,7 +172,7 @@ export function isUUIDOrGUID(s: string): boolean { } /** - * + * convert the fist letter of a word in a string to upper case */ export function ucFirst(s: string): string { @@ -178,61 +186,55 @@ export function ucFirst(s: string): string { /** * check if a literal is falsy or not */ -const isLiteralFalsey = (variable): boolean => { +const isLiteralFalsey = (variable: unknown): boolean => { return variable === '' || variable === false || variable === 0 } +/** + * check if a variable contains a reference type (not a literal) + */ + +const isPrimitive = (arg: any): boolean => { + return ( + typeof arg === 'object' || (Boolean(arg) && typeof arg.apply === 'function') + ) +} + /** * provide the name of primitive and/or reference types */ -const checkTypeName = (target, type): boolean => { +const checkTypeName = (target: unknown, type: string): boolean => { let typeName = '' - if (isLiteralFalsey(target)) { + // we need to separate checks for literal types and + // primitive types so we can speed up performance and + // keep things simple + if (isLiteralFalsey(target) || !isPrimitive(target)) { + // literal typeName = typeof target } else { - typeName = '' + (target && target.constructor.name) + // primitive/reference + typeName = Object.prototype.toString + .call(target) + .replace(/^\[object (.+)\]$/, '$1') } - return !!(typeName.toLowerCase().indexOf(type) + 1) + + // check if the type matches + return Boolean(typeName.toLowerCase().indexOf(type) + 1) } /** * get the correct type of a variable */ -export function strictTypeOf(value, type): boolean { - let result = false - +export function strictTypeOf(value: unknown, type: string): boolean { + // swagger/OpenAPI 'integer' type is converted + // a JavaScript 'number' type for compatibility if (type === 'integer') { type = 'number' } - type = type || [] - - if (typeof type === 'object') { - if (typeof type.length !== 'number') { - return result - } - - let bitPiece = 0 - - type = [].slice.call(type) - - type.forEach(_type => { - if (typeof _type === 'function') { - _type = (_type.name || _type.displayName).toLowerCase() - } - bitPiece |= Number(checkTypeName(value, _type)) - }) - - result = Boolean(bitPiece) - } else { - if (typeof type === 'function') { - type = (type.name || type.displayName).toLowerCase() - } - - result = checkTypeName(value, type) - } - return result + type = type || '' + return checkTypeName(value, type) } /** From 43e10066b81b2aeea40dba72de462ac3a0f23375 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sun, 28 Feb 2021 04:42:55 +0100 Subject: [PATCH 14/15] updated Signed-off-by: Ifeora Okechukwu --- .../src/types/strict_scalars.ts | 2 +- packages/openapi-to-graphql/src/utils.ts | 48 ++++++++----------- 2 files changed, 22 insertions(+), 28 deletions(-) diff --git a/packages/openapi-to-graphql/src/types/strict_scalars.ts b/packages/openapi-to-graphql/src/types/strict_scalars.ts index d9f02004..cabb6aac 100644 --- a/packages/openapi-to-graphql/src/types/strict_scalars.ts +++ b/packages/openapi-to-graphql/src/types/strict_scalars.ts @@ -1,4 +1,4 @@ -import { GraphQLScalarTypeConfig, ValueNode } from 'graphql' +import { ValueNode } from 'graphql' export interface IScalarParseError { code: TCode diff --git a/packages/openapi-to-graphql/src/utils.ts b/packages/openapi-to-graphql/src/utils.ts index 64924cc4..1d2986c8 100644 --- a/packages/openapi-to-graphql/src/utils.ts +++ b/packages/openapi-to-graphql/src/utils.ts @@ -58,7 +58,7 @@ const MAX_LONG = 9007199254740991 const MIN_LONG = -9007199254740992 /** - * verify that a variable contains a safe int (2^31) + * Verify that a variable contains a safe int (2^31) */ export function isSafeInteger(n: unknown): boolean { return ( @@ -71,9 +71,8 @@ export function isSafeInteger(n: unknown): boolean { } /** - * verify that a variable contains a safe long (2^53) + * Verify that a variable contains a safe long (2^53) */ - export function isSafeLong(n: unknown): boolean { return ( typeof n === 'number' && @@ -85,17 +84,15 @@ export function isSafeLong(n: unknown): boolean { } /** - * + * Check if a number is a safe floating point */ - export function isSafeFloat(n: unknown): boolean { return typeof n === 'number' && n % 0.5 !== 0 } /** - * convert a date and/or date-time string into a date object + * Convert a date and/or date-time string into a date object */ - function toDate(n: string) { const parsed = Date.parse(n) const $ref = new Date() @@ -113,29 +110,27 @@ function toDate(n: string) { } /** - * serialize a date string into the ISO format + * Serialize a date string into the ISO format */ - export function serializeDate(n: string) { const date = toDate(n) return date && date.toJSON() } /** - * verify that a vriable contains a safe date/date-time string + * Verify that a vriable contains a safe date/date-time string */ - export function isSafeDate(n: string): boolean { const date = toDate(n) return date !== null && date.getTime() !== NaN } /** - * verify is a string is a valid URL + * Verify is a string is a valid URL */ - export function isURL(s: string): boolean { let res = null + /* See: https://mathiasbynens.be/demo/url-regex for URL Reg Exp source */ const urlRegex = /(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z0-9]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g try { res = s.match(urlRegex) @@ -146,21 +141,19 @@ export function isURL(s: string): boolean { } /** - * verify if a string is a valid EMAIL - * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/EmailAddress.ts#L4 + * Verify if a string is a valid EMAIL */ - export function isEmail(s: string): boolean { + /* See: See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/EmailAddress.ts#L4 for EMAIL Reg Exp source */ const emailRegex = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/ return emailRegex.test(s) } /** - * verify if a string is a valid GUID/UUID - * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/GUID.ts#L4 + * Verify if a string is a valid GUID/UUID */ - export function isUUIDOrGUID(s: string): boolean { + /* See: See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/GUID.ts#L4 for UUID Reg Exp source */ const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i const guidRegExp = /^(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}$/gi @@ -172,9 +165,8 @@ export function isUUIDOrGUID(s: string): boolean { } /** - * convert the fist letter of a word in a string to upper case + * Convert the fist letter of a word in a string to upper case */ - export function ucFirst(s: string): string { if (typeof s !== 'string') { return '' @@ -184,16 +176,15 @@ export function ucFirst(s: string): string { } /** - * check if a literal is falsy or not + * Check if a literal is falsy or not */ const isLiteralFalsey = (variable: unknown): boolean => { return variable === '' || variable === false || variable === 0 } /** - * check if a variable contains a reference type (not a literal) + * Check if a variable contains a reference type (not a literal) */ - const isPrimitive = (arg: any): boolean => { return ( typeof arg === 'object' || (Boolean(arg) && typeof arg.apply === 'function') @@ -201,7 +192,8 @@ const isPrimitive = (arg: any): boolean => { } /** - * provide the name of primitive and/or reference types + * Check that the data type of primitive and/or reference + * variable mathes the type provided */ const checkTypeName = (target: unknown, type: string): boolean => { let typeName = '' @@ -224,7 +216,7 @@ const checkTypeName = (target: unknown, type: string): boolean => { } /** - * get the correct type of a variable + * Get the correct type of a variable */ export function strictTypeOf(value: unknown, type: string): boolean { // swagger/OpenAPI 'integer' type is converted @@ -234,6 +226,8 @@ export function strictTypeOf(value: unknown, type: string): boolean { } type = type || '' + // checks that the data type of the variable + // matches that that was passed in return checkTypeName(value, type) } @@ -283,7 +277,7 @@ export function handleWarning({ } // Code provided by codename- from StackOverflow -// Link: https://stackoverflow.com/a/29622653 +// See: https://stackoverflow.com/a/29622653 export function sortObject(o) { return Object.keys(o) .sort() From 1df2c0f0384a012fdd7f60413ebcdc8d75621ab5 Mon Sep 17 00:00:00 2001 From: Ifeora Okechukwu Date: Sun, 28 Feb 2021 05:46:42 +0100 Subject: [PATCH 15/15] chore(build): ran build to update map file(s) Signed-off-by: Ifeora Okechukwu --- .../lib/auth_builder.js.map | 2 +- .../openapi-to-graphql/lib/oas_3_tools.js | 19 +- .../openapi-to-graphql/lib/oas_3_tools.js.map | 2 +- .../lib/resolver_builder.js.map | 2 +- .../lib/scalar_validators/common_def.js | 1 + .../lib/scalar_validators/common_def.js.map | 2 +- .../lib/scalar_validators/strict_float.js | 3 +- .../lib/scalar_validators/strict_float.js.map | 2 +- .../lib/scalar_validators/strict_int.js | 3 +- .../lib/scalar_validators/strict_int.js.map | 2 +- .../lib/scalar_validators/strict_string.js | 4 +- .../scalar_validators/strict_string.js.map | 2 +- .../lib/schema_builder.d.ts | 4 +- .../openapi-to-graphql/lib/schema_builder.js | 25 +- .../lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/lib/utils.d.ts | 24 +- packages/openapi-to-graphql/lib/utils.js | 62 +-- packages/openapi-to-graphql/lib/utils.js.map | 2 +- packages/openapi-to-graphql/package-lock.json | 442 +++++++++--------- .../src/scalar_validators/strict_float.ts | 4 +- .../src/scalar_validators/strict_int.ts | 4 +- .../src/scalar_validators/strict_string.ts | 9 +- 22 files changed, 325 insertions(+), 297 deletions(-) diff --git a/packages/openapi-to-graphql/lib/auth_builder.js.map b/packages/openapi-to-graphql/lib/auth_builder.js.map index c24e9dbd..58d2a9ad 100644 --- a/packages/openapi-to-graphql/lib/auth_builder.js.map +++ b/packages/openapi-to-graphql/lib/auth_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"auth_builder.js","sourceRoot":"","sources":["../src/auth_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"auth_builder.js","sourceRoot":"","sources":["../src/auth_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js b/packages/openapi-to-graphql/lib/oas_3_tools.js index d8d7ab26..e03ecf38 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js @@ -62,8 +62,8 @@ function getValidOAS3(spec) { spec.swagger === '2.0') { preprocessingLog(`Received Swagger - going to translate to OpenAPI Specification...`); Swagger2OpenAPI.convertObj(spec, {}) - .then((options) => resolve(options.openapi)) - .catch((error) => reject(`Could not convert Swagger '${spec.info.title}' to OpenAPI Specification. ${error.message}`)); + .then(options => resolve(options.openapi)) + .catch(error => reject(`Could not convert Swagger '${spec.info.title}' to OpenAPI Specification. ${error.message}`)); // CASE: validate } else if (typeof spec.openapi === 'string' && @@ -71,7 +71,7 @@ function getValidOAS3(spec) { preprocessingLog(`Received OpenAPI Specification - going to validate...`); OASValidator.validate(spec, {}) .then(() => resolve(spec)) - .catch((error) => reject(`Could not validate OpenAPI Specification '${spec.info.title}'. ${error.message}`)); + .catch(error => reject(`Could not validate OpenAPI Specification '${spec.info.title}'. ${error.message}`)); } else { reject(`Invalid specification provided`); @@ -256,7 +256,7 @@ exports.sanitizeObjectKeys = sanitizeObjectKeys; * the given mapping. */ function desanitizeObjectKeys(obj, mapping = {}) { - const replaceKeys = (obj) => { + const replaceKeys = obj => { if (obj === null) { return null; } @@ -364,7 +364,10 @@ function extractBasePath(paths) { } } } - const updatedPaths = paths.map((path) => path.split('/').slice(basePathComponents.length).join('/')); + const updatedPaths = paths.map(path => path + .split('/') + .slice(basePathComponents.length) + .join('/')); let basePath = basePathComponents.length === 0 || (basePathComponents.length === 1 && basePathComponents[0] === '') ? '/' @@ -620,7 +623,7 @@ exports.getResponseSchemaAndNames = getResponseSchemaAndNames; function getResponseStatusCode(path, method, operation, oas, data) { if (typeof operation.responses === 'object') { const codes = Object.keys(operation.responses); - const successCodes = codes.filter((code) => { + const successCodes = codes.filter(code => { return exports.SUCCESS_STATUS_RX.test(code); }); if (successCodes.length === 1) { @@ -693,7 +696,7 @@ function getParameters(path, method, operation, pathItem, oas) { // First, consider parameters in Path Item Object: const pathParams = pathItem.parameters; if (Array.isArray(pathParams)) { - const pathItemParameters = pathParams.map((p) => { + const pathItemParameters = pathParams.map(p => { if (typeof p.$ref === 'string') { // Here we know we have a parameter object: return resolveRef(p['$ref'], oas); @@ -708,7 +711,7 @@ function getParameters(path, method, operation, pathItem, oas) { // Second, consider parameters in Operation Object: const opObjectParameters = operation.parameters; if (Array.isArray(opObjectParameters)) { - const operationParameters = opObjectParameters.map((p) => { + const operationParameters = opObjectParameters.map(p => { if (typeof p.$ref === 'string') { // Here we know we have a parameter object: return resolveRef(p['$ref'], oas); diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js.map b/packages/openapi-to-graphql/lib/oas_3_tools.js.map index c5f1e283..4445d912 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js.map +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js.map @@ -1 +1 @@ -{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/resolver_builder.js.map b/packages/openapi-to-graphql/lib/resolver_builder.js.map index 2a0a0654..2a2f3531 100644 --- a/packages/openapi-to-graphql/lib/resolver_builder.js.map +++ b/packages/openapi-to-graphql/lib/resolver_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"resolver_builder.js","sourceRoot":"","sources":["../src/resolver_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"resolver_builder.js","sourceRoot":"","sources":["../src/resolver_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js index 875895bc..c8f67c25 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js +++ b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getValueFromValueNode = exports.defaultSerialize = exports.defaultErrorHandler = void 0; const graphql_1 = require("graphql"); const graphql_2 = require("graphql"); exports.defaultErrorHandler = ({ code, ast }) => { diff --git a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map index 5a720d42..25770ec9 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map +++ b/packages/openapi-to-graphql/lib/scalar_validators/common_def.js.map @@ -1 +1 @@ -{"version":3,"file":"common_def.js","sourceRoot":"","sources":["../../src/scalar_validators/common_def.ts"],"names":[],"mappings":";;AAAA,qCAQgB;AAEhB,qCAAsC;AAIzB,QAAA,mBAAmB,GAAsC,CAAC,EACrE,IAAI,EACJ,GAAG,EACJ,EAAS,EAAE;IACV,MAAM,IAAI,sBAAY,CAAC,QAAQ,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AAC1D,CAAC,CAAA;AAEY,QAAA,gBAAgB,GAAG,CAAC,CAAM,EAAO,EAAE,CAAC,CAAC,CAAA;AAErC,QAAA,qBAAqB,GAAG,CAAC,GAAc,EAAO,EAAE;IAC3D,QAAQ,GAAG,CAAC,IAAI,EAAE;QAChB,KAAK,cAAI,CAAC,OAAO;YACf,OAAQ,GAAwB,CAAC,KAAK,CAAA;QACxC,KAAK,cAAI,CAAC,KAAK;YACb,OAAO,UAAU,CAAE,GAAsB,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,cAAI,CAAC,GAAG;YACX,OAAO,QAAQ,CAAE,GAAoB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAClD,KAAK,cAAI,CAAC,IAAI;YACZ,OAAO,IAAI,CAAA;QACb,KAAK,cAAI,CAAC,MAAM;YACd,OAAQ,GAAuB,CAAC,KAAK,CAAA;QACvC,KAAK,cAAI,CAAC,IAAI;YACZ,OAAQ,GAAqB,CAAC,KAAK,CAAA;KACtC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA"} \ No newline at end of file +{"version":3,"file":"common_def.js","sourceRoot":"","sources":["../../src/scalar_validators/common_def.ts"],"names":[],"mappings":";;;AAAA,qCAQgB;AAEhB,qCAAsC;AAIzB,QAAA,mBAAmB,GAAsC,CAAC,EACrE,IAAI,EACJ,GAAG,EACJ,EAAS,EAAE;IACV,MAAM,IAAI,sBAAY,CAAC,QAAQ,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AAC1D,CAAC,CAAA;AAEY,QAAA,gBAAgB,GAAG,CAAC,CAAM,EAAO,EAAE,CAAC,CAAC,CAAA;AAErC,QAAA,qBAAqB,GAAG,CAAC,GAAc,EAAO,EAAE;IAC3D,QAAQ,GAAG,CAAC,IAAI,EAAE;QAChB,KAAK,cAAI,CAAC,OAAO;YACf,OAAQ,GAAwB,CAAC,KAAK,CAAA;QACxC,KAAK,cAAI,CAAC,KAAK;YACb,OAAO,UAAU,CAAE,GAAsB,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,cAAI,CAAC,GAAG;YACX,OAAO,QAAQ,CAAE,GAAoB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAClD,KAAK,cAAI,CAAC,IAAI;YACZ,OAAO,IAAI,CAAA;QACb,KAAK,cAAI,CAAC,MAAM;YACd,OAAQ,GAAuB,CAAC,KAAK,CAAA;QACvC,KAAK,cAAI,CAAC,IAAI;YACZ,OAAQ,GAAqB,CAAC,KAAK,CAAA;KACtC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js index 5e91a9c7..3a95acca 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js @@ -11,6 +11,7 @@ var __rest = (this && this.__rest) || function (s, e) { return t; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.createFloatScalar = void 0; const graphql_1 = require("graphql"); const common_def_1 = require("./common_def"); const utils_1 = require("../utils"); @@ -25,7 +26,7 @@ exports.createFloatScalar = (config) => { return null; } let value; - if (utils_1.strictTypeOf(unknownValue, 'number')) { + if (utils_1.isTypeOf(unknownValue, 'number')) { value = unknownValue; } else { diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map index b7a611bf..3eb4f689 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_float.js.map @@ -1 +1 @@ -{"version":3,"file":"strict_float.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_float.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAsD;AAEtD,6CAIqB;AAErB,oCAAuC;AAOvC,wEAAwE;AAE3D,QAAA,iBAAiB,GAAG,CAC/B,MAAgC,EACb,EAAE;IACrB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,6HACQ,CAAA;IAEV,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAA;IAEvD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QACpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,KAAa,CAAA;QAEjB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAA;SAC/B;aAAM;YACL,IAAI,MAAM,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;gBAExC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBAED,KAAK,GAAG,WAAW,CAAA;aACpB;iBAAM;gBACL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAA;aACH;SACF;QAED,qBAAqB;QAErB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAC7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;YAEnC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAA;aACZ;YACD,KAAK,GAAG,WAAW,CAAA;SACpB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAChC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,OAAO,KAAY,CAAA;IACrB,CAAC,CAAA;IAED,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAA;AACJ,CAAC,CAAA"} \ No newline at end of file +{"version":3,"file":"strict_float.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_float.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,qCAAsD;AAEtD,6CAIqB;AAErB,oCAAmC;AAOnC,wEAAwE;AAE3D,QAAA,iBAAiB,GAAG,CAC/B,MAAgC,EACb,EAAE;IACrB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADL,YAAY,UACb,MAAM,EAVJ,8FAUL,CAAS,CAAA;IAEV,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAA;IAEvD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QACpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,KAAa,CAAA;QAEjB,IAAI,gBAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACpC,KAAK,GAAG,YAAsB,CAAA;SAC/B;aAAM;YACL,IAAI,MAAM,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;gBAExC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBAED,KAAK,GAAG,WAAW,CAAA;aACpB;iBAAM;gBACL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAA;aACH;SACF;QAED,qBAAqB;QAErB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAC7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;YAEnC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAA;aACZ;YACD,KAAK,GAAG,WAAW,CAAA;SACpB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAChC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,OAAO,KAAY,CAAA;IACrB,CAAC,CAAA;IAED,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAA;AACJ,CAAC,CAAA"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js index 15d2a65b..a936c381 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js @@ -11,6 +11,7 @@ var __rest = (this && this.__rest) || function (s, e) { return t; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.createIntScalar = void 0; const graphql_1 = require("graphql"); const common_def_1 = require("./common_def"); const utils_1 = require("../utils"); @@ -24,7 +25,7 @@ exports.createIntScalar = (config) => { return null; } let value; - if (utils_1.strictTypeOf(unknownValue, 'number')) { + if (utils_1.isTypeOf(unknownValue, 'number')) { value = unknownValue; } else { diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map index c07c4319..54a86ab0 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_int.js.map @@ -1 +1 @@ -{"version":3,"file":"strict_int.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_int.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAsD;AACtD,6CAIqB;AAErB,oCAAuC;AAO1B,QAAA,eAAe,GAAG,CAC7B,MAAgC,EACb,EAAE;IACrB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADR,oHACQ,CAAA;IAEV,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAA;IAEvD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QACpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,KAAa,CAAA;QAEjB,IAAI,oBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACxC,KAAK,GAAG,YAAsB,CAAA;SAC/B;aAAM;YACL,IAAI,MAAM,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;gBAExC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBAED,KAAK,GAAG,WAAW,CAAA;aACpB;iBAAM;gBACL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAA;aACH;SACF;QAED,qBAAqB;QAErB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAC7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;YAEnC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAA;aACZ;YAED,KAAK,GAAG,WAAW,CAAA;SACpB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAChC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,OAAO,KAAY,CAAA;IACrB,CAAC,CAAA;IAED,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAA;AACJ,CAAC,CAAA"} \ No newline at end of file +{"version":3,"file":"strict_int.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_int.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,qCAAsD;AACtD,6CAIqB;AAErB,oCAAmC;AAOtB,QAAA,eAAe,GAAG,CAC7B,MAAgC,EACb,EAAE;IACrB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,KAEP,MAAM,EADL,YAAY,UACb,MAAM,EATJ,qFASL,CAAS,CAAA;IAEV,MAAM,WAAW,GAAG,YAAY,IAAI,gCAAmB,CAAA;IAEvD,MAAM,UAAU,GAAG,CACjB,YAAqB,EACrB,GAAe,EACG,EAAE;QACpB,8BAA8B;QAE9B,iBAAiB;QAEjB,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,KAAa,CAAA;QAEjB,IAAI,gBAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;YACpC,KAAK,GAAG,YAAsB,CAAA;SAC/B;aAAM;YACL,IAAI,MAAM,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;gBAExC,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBAED,KAAK,GAAG,WAAW,CAAA;aACpB;iBAAM;gBACL,OAAO,WAAW,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,YAAY;oBACnB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAA;aACH;SACF;QAED,qBAAqB;QAErB,IAAI,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE;YAC7B,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;YAEnC,IAAI,WAAW,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAA;aACZ;YAED,KAAK,GAAG,WAAW,CAAA;SACpB;QAED,mBAAmB;QAEnB,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,GAAG,OAAO,EAAE;YACtC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAChC,OAAO,WAAW,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,KAAK;gBACL,GAAG;gBACH,MAAM;aACP,CAAC,CAAA;SACH;QAED,OAAO,KAAY,CAAA;IACrB,CAAC,CAAA;IAED,OAAO,IAAI,2BAAiB,iCACvB,YAAY,KACf,SAAS,EAAE,SAAS,IAAI,6BAAgB,EACxC,UAAU,EACV,YAAY,EAAE,CAAC,GAAG,EAAoB,EAAE,CACtC,UAAU,CAAC,kCAAqB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAC7C,CAAA;AACJ,CAAC,CAAA"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js index d3c0f32f..e78fb784 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js @@ -11,8 +11,10 @@ var __rest = (this && this.__rest) || function (s, e) { return t; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.createStringScalar = void 0; const graphql_1 = require("graphql"); const common_def_1 = require("./common_def"); +const utils_1 = require("../utils"); const strToUpperCase = (str) => str.toUpperCase(); const wordRegex = /(?:^|\s)\S/g; const sentenceRegex = /(?:^|\.\s)\S/g; @@ -45,7 +47,7 @@ exports.createStringScalar = (config) => { else { if (coerce) { const valueOrNull = coerce(unknownValue); - if (valueOrNull == null) { + if (utils_1.isTypeOf(valueOrNull, 'null')) { return null; } value = valueOrNull; diff --git a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map index dcd2fcb6..1a3d26f9 100644 --- a/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map +++ b/packages/openapi-to-graphql/lib/scalar_validators/strict_string.js.map @@ -1 +1 @@ -{"version":3,"file":"strict_string.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_string.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"strict_string.js","sourceRoot":"","sources":["../../src/scalar_validators/strict_string.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.d.ts b/packages/openapi-to-graphql/lib/schema_builder.d.ts index a3340a42..abebf119 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.d.ts +++ b/packages/openapi-to-graphql/lib/schema_builder.d.ts @@ -4,7 +4,7 @@ import { PreprocessingData } from './types/preprocessing_data'; import { Operation, DataDefinition } from './types/operation'; import { SchemaObject, ParameterObject } from './types/oas3'; -import { Args, GraphQLType } from './types/graphql'; +import { Args } from './types/graphql'; import { GraphQLOutputType, GraphQLInputType } from 'graphql'; declare type GetArgsParams = { requestPayloadDef?: DataDefinition; @@ -23,7 +23,7 @@ declare type CreateOrReuseComplexTypeParams = { /** * Creates and returns a GraphQL type for the given JSON schema. */ -export declare function getGraphQLType({ def, schema, operation, data, iteration, isInputObjectType }: CreateOrReuseComplexTypeParams): GraphQLOutputType | GraphQLInputType | GraphQLType; +export declare function getGraphQLType({ def, schema, operation, data, iteration, isInputObjectType }: CreateOrReuseComplexTypeParams): GraphQLOutputType | GraphQLInputType; /** * Creates the arguments for resolving a field * diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 540791a2..ecd74b6b 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -4,10 +4,11 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); +exports.getArgs = exports.getGraphQLType = void 0; +//import { Args, GraphQLType, ResolveFunction } from './types/graphql' const strict_string_1 = require("./scalar_validators/strict_string"); const strict_int_1 = require("./scalar_validators/strict_int"); const strict_float_1 = require("./scalar_validators/strict_float"); -exports.getArgs = exports.getGraphQLType = void 0; const graphql_1 = require("graphql"); // Imports: const graphql_type_json_1 = require("graphql-type-json"); @@ -23,7 +24,7 @@ const utils_1 = require("./utils"); * the API requests. Therefore, we need to change the serialize() function * in the GraphQLJSON type. */ -const CleanGraphQLJSON = new graphql_1.GraphQLScalarType(Object.assign(Object.assign({}, graphql_type_json_1.default.toConfig()), { serialize: (value) => { +const CleanGraphQLJSON = new graphql_1.GraphQLScalarType(Object.assign(Object.assign({}, graphql_type_json_1.default.toConfig()), { serialize: value => { let cleanValue; /** * If the value is an object and contains the _openAPIToGraphQL, @@ -216,7 +217,7 @@ function createOrReuseUnion({ def, operation, data, iteration }) { ? schema.description : 'No description available.'; const memberTypeDefinitions = def.subDefinitions; - const types = Object.values(memberTypeDefinitions).map((memberTypeDefinition) => { + const types = Object.values(memberTypeDefinitions).map(memberTypeDefinition => { return getGraphQLType({ def: memberTypeDefinition, operation, @@ -238,7 +239,7 @@ function createOrReuseUnion({ def, operation, data, iteration }) { resolveType: (source, context, info) => { const properties = Object.keys(source) // Remove custom _openAPIToGraphQL property used to pass data - .filter((property) => property !== '_openAPIToGraphQL'); + .filter(property => property !== '_openAPIToGraphQL'); /** * Find appropriate member type * @@ -250,11 +251,11 @@ function createOrReuseUnion({ def, operation, data, iteration }) { * identified if, for whatever reason, the return data is a superset * of the fields specified in the OAS */ - return types.find((type) => { + return types.find(type => { const typeFields = Object.keys(type.getFields()); // The type should be a superset of the properties if (properties.length <= typeFields.length) { - return properties.every((property) => typeFields.includes(property)); + return properties.every(property => typeFields.includes(property)); } return false; }); @@ -287,7 +288,7 @@ function checkAmbiguousMemberTypes(def, types, data) { for (let j = i + 1; j < types.length; j++) { const otherType = types[j]; // TODO: Check the value, not just the field name - if (Object.keys(currentType.getFields()).every((field) => { + if (Object.keys(currentType.getFields()).every(field => { return Object.keys(otherType.getFields()).includes(field); })) { utils_1.handleWarning({ @@ -372,7 +373,7 @@ function createOrReuseEnum({ def, data }) { else { translationLog(`Create GraphQLEnumType '${def.graphQLTypeName}'`); const values = {}; - def.schema.enum.forEach((e) => { + def.schema.enum.forEach(e => { // Force enum values to string and value should be in ALL_CAPS values[Oas3Tools.sanitize(e.toString(), Oas3Tools.CaseStyle.ALL_CAPS)] = { value: e @@ -485,7 +486,7 @@ function getScalarType({ def, schema, isInputObjectType, data }) { : data; }; options.validate = (data) => { - return $enum.includes(data) || utils_1.strictTypeOf(data, type); + return $enum.includes(data) || utils_1.isTypeOf(data, type); }; break; } @@ -608,7 +609,7 @@ function createFields({ def, links, operation, data, iteration, isInputObjectTyp // Get arguments that are not provided by the linked operation let dynamicParams = linkedOp.parameters; if (typeof argsFromLink === 'object') { - dynamicParams = dynamicParams.filter((param) => { + dynamicParams = dynamicParams.filter(param => { return typeof argsFromLink[param.name] === 'undefined'; }); } @@ -930,7 +931,7 @@ function skipArg(parameter, operation, data) { function getArgs({ requestPayloadDef, parameters, operation, data }) { let args = {}; // Handle params: - parameters.forEach((parameter) => { + parameters.forEach(parameter => { // We need at least a name if (typeof parameter.name !== 'string') { utils_1.handleWarning({ @@ -1111,7 +1112,7 @@ function getOasFromLinkLocation(linkLocation, link, data) { switch (getLinkLocationType(linkLocation)) { case 'title': // Get the possible - const possibleOass = data.oass.filter((oas) => { + const possibleOass = data.oass.filter(oas => { return oas.info.title === linkLocation; }); // Check if there are an ambiguous OASs diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index ceca2cbf..c3b07cd5 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/utils.d.ts b/packages/openapi-to-graphql/lib/utils.d.ts index 06a781b2..9e05534f 100644 --- a/packages/openapi-to-graphql/lib/utils.d.ts +++ b/packages/openapi-to-graphql/lib/utils.d.ts @@ -39,47 +39,45 @@ export declare const mitigations: { [mitigationType in MitigationTypes]: string; }; /** - * verify that a variable contains a safe int (2^31) + * Verify that a variable contains a safe int (2^31) */ export declare function isSafeInteger(n: unknown): boolean; /** - * verify that a variable contains a safe long (2^53) + * Verify that a variable contains a safe long (2^53) */ export declare function isSafeLong(n: unknown): boolean; /** - * + * Check if a number is a safe floating point */ export declare function isSafeFloat(n: unknown): boolean; /** - * serialize a date string into the ISO format + * Serialize a date string into the ISO format */ export declare function serializeDate(n: string): string; /** - * verify that a vriable contains a safe date/date-time string + * Verify that a vriable contains a safe date/date-time string */ export declare function isSafeDate(n: string): boolean; /** - * verify is a string is a valid URL + * Verify is a string is a valid URL */ export declare function isURL(s: string): boolean; /** - * verify if a string is a valid EMAIL - * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/EmailAddress.ts#L4 + * Verify if a string is a valid EMAIL */ export declare function isEmail(s: string): boolean; /** - * verify if a string is a valid GUID/UUID - * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/GUID.ts#L4 + * Verify if a string is a valid GUID/UUID */ export declare function isUUIDOrGUID(s: string): boolean; /** - * convert the fist letter of a word in a string to upper case + * Convert the fist letter of a word in a string to upper case */ export declare function ucFirst(s: string): string; /** - * get the correct type of a variable + * Get the correct type of a variable */ -export declare function strictTypeOf(value: unknown, type: string): boolean; +export declare function isTypeOf(value: unknown, type: string): boolean; /** * Utilities that are specific to OpenAPI-to-GraphQL */ diff --git a/packages/openapi-to-graphql/lib/utils.js b/packages/openapi-to-graphql/lib/utils.js index 11cc5b4a..62fb944f 100644 --- a/packages/openapi-to-graphql/lib/utils.js +++ b/packages/openapi-to-graphql/lib/utils.js @@ -4,7 +4,7 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); -exports.getCommonPropertyNames = exports.sortObject = exports.handleWarning = exports.mitigations = exports.MitigationTypes = void 0; +exports.getCommonPropertyNames = exports.sortObject = exports.handleWarning = exports.isTypeOf = exports.ucFirst = exports.isUUIDOrGUID = exports.isEmail = exports.isURL = exports.isSafeDate = exports.serializeDate = exports.isSafeFloat = exports.isSafeLong = exports.isSafeInteger = exports.mitigations = exports.MitigationTypes = void 0; var MitigationTypes; (function (MitigationTypes) { /** @@ -93,7 +93,7 @@ const MIN_INT = -2147483648; const MAX_LONG = 9007199254740991; const MIN_LONG = -9007199254740992; /** - * verify that a variable contains a safe int (2^31) + * Verify that a variable contains a safe int (2^31) */ function isSafeInteger(n) { return (typeof n === 'number' && @@ -104,21 +104,25 @@ function isSafeInteger(n) { } exports.isSafeInteger = isSafeInteger; /** - * verify that a variable contains a safe long (2^53) + * Verify that a variable contains a safe long (2^53) */ function isSafeLong(n) { - return typeof n === 'number' && isFinite(n) && n <= MAX_LONG && n >= MIN_LONG && n % 1 === 0; + return (typeof n === 'number' && + isFinite(n) && + n <= MAX_LONG && + n >= MIN_LONG && + n % 1 === 0); } exports.isSafeLong = isSafeLong; /** - * + * Check if a number is a safe floating point */ function isSafeFloat(n) { return typeof n === 'number' && n % 0.5 !== 0; } exports.isSafeFloat = isSafeFloat; /** - * convert a date and/or date-time string into a date object + * Convert a date and/or date-time string into a date object */ function toDate(n) { const parsed = Date.parse(n); @@ -132,7 +136,7 @@ function toDate(n) { null); } /** - * serialize a date string into the ISO format + * Serialize a date string into the ISO format */ function serializeDate(n) { const date = toDate(n); @@ -140,7 +144,7 @@ function serializeDate(n) { } exports.serializeDate = serializeDate; /** - * verify that a vriable contains a safe date/date-time string + * Verify that a vriable contains a safe date/date-time string */ function isSafeDate(n) { const date = toDate(n); @@ -148,10 +152,11 @@ function isSafeDate(n) { } exports.isSafeDate = isSafeDate; /** - * verify is a string is a valid URL + * Verify is a string is a valid URL */ function isURL(s) { let res = null; + /* See: https://mathiasbynens.be/demo/url-regex for URL Reg Exp source */ const urlRegex = /(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z0-9]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g; try { res = s.match(urlRegex); @@ -163,19 +168,19 @@ function isURL(s) { } exports.isURL = isURL; /** - * verify if a string is a valid EMAIL - * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/EmailAddress.ts#L4 + * Verify if a string is a valid EMAIL */ function isEmail(s) { + /* See: See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/EmailAddress.ts#L4 for EMAIL Reg Exp source */ const emailRegex = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/; return emailRegex.test(s); } exports.isEmail = isEmail; /** - * verify if a string is a valid GUID/UUID - * See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/GUID.ts#L4 + * Verify if a string is a valid GUID/UUID */ function isUUIDOrGUID(s) { + /* See: See: https://github.com/Urigo/graphql-scalars/blob/master/src/resolvers/GUID.ts#L4 for UUID Reg Exp source */ const uuidRegExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i; const guidRegExp = /^(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}$/gi; if (s.startsWith('{')) { @@ -185,7 +190,7 @@ function isUUIDOrGUID(s) { } exports.isUUIDOrGUID = isUUIDOrGUID; /** - * convert the fist letter of a word in a string to upper case + * Convert the fist letter of a word in a string to upper case */ function ucFirst(s) { if (typeof s !== 'string') { @@ -195,49 +200,54 @@ function ucFirst(s) { } exports.ucFirst = ucFirst; /** - * check if a literal is falsy or not + * Check if a literal is falsy or not */ const isLiteralFalsey = (variable) => { return variable === '' || variable === false || variable === 0; }; /** - * check if a variable contains a reference type (not a literal) + * Check if a variable contains a reference type (not a literal) */ const isPrimitive = (arg) => { - return typeof arg === 'object' || Boolean(arg) && typeof arg.apply === 'function'; + return (typeof arg === 'object' || (Boolean(arg) && typeof arg.apply === 'function')); }; /** - * provide the name of primitive and/or reference types + * Check that the data type of primitive and/or reference + * variable mathes the type provided */ const checkTypeName = (target, type) => { let typeName = ''; - // we need to separate checks for literal types and + // we need to separate checks for literal types and // primitive types so we can speed up performance and // keep things simple if (isLiteralFalsey(target) || !isPrimitive(target)) { - // literal + // literal typeName = typeof target; } else { // primitive/reference - typeName = (Object.prototype.toString.call(target)).replace(/^\[object (.+)\]$/, '$1'); + typeName = Object.prototype.toString + .call(target) + .replace(/^\[object (.+)\]$/, '$1'); } // check if the type matches return Boolean(typeName.toLowerCase().indexOf(type) + 1); }; /** - * get the correct type of a variable + * Get the correct type of a variable */ -function strictTypeOf(value, type) { - // swagger/OpenAPI 'integer' type is converted +function isTypeOf(value, type) { + // swagger/OpenAPI 'integer' type is converted // a JavaScript 'number' type for compatibility if (type === 'integer') { type = 'number'; } type = type || ''; + // checks that the data type of the variable + // matches that that was passed in return checkTypeName(value, type); } -exports.strictTypeOf = strictTypeOf; +exports.isTypeOf = isTypeOf; /** * Utilities that are specific to OpenAPI-to-GraphQL */ @@ -269,7 +279,7 @@ function handleWarning({ mitigationType, message, mitigationAddendum, path, data } exports.handleWarning = handleWarning; // Code provided by codename- from StackOverflow -// Link: https://stackoverflow.com/a/29622653 +// See: https://stackoverflow.com/a/29622653 function sortObject(o) { return Object.keys(o) .sort() diff --git a/packages/openapi-to-graphql/lib/utils.js.map b/packages/openapi-to-graphql/lib/utils.js.map index baf04619..ba189f39 100644 --- a/packages/openapi-to-graphql/lib/utils.js.map +++ b/packages/openapi-to-graphql/lib/utils.js.map @@ -1 +1 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/package-lock.json b/packages/openapi-to-graphql/package-lock.json index 2df83607..2f5e6906 100644 --- a/packages/openapi-to-graphql/package-lock.json +++ b/packages/openapi-to-graphql/package-lock.json @@ -453,7 +453,6 @@ "dev": true, "requires": { "camelcase": "^5.3.1", - "find-up": "^4.1.0", "get-package-type": "^0.1.0", "js-yaml": "^3.13.1", "resolve-from": "^5.0.0" @@ -593,8 +592,7 @@ "micromatch": "^4.0.2", "p-each-series": "^2.1.0", "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" + "slash": "^3.0.0" }, "dependencies": { "@jest/types": { @@ -622,8 +620,7 @@ "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" }, "ansi-styles": { "version": "4.2.1", @@ -1284,69 +1281,11 @@ } } }, - "@jest/types": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.2.6.tgz", - "integrity": "sha512-myJTTV37bxK7+3NgKc4Y/DlQ5q92/NOwZsZ+Uch7OXdElxOg61QYc72fPYNAjlvbnJ2YvbXLamIsa9tj48BmyQ==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true }, "@sinonjs/commons": { "version": "1.8.1", @@ -1366,6 +1305,15 @@ "@sinonjs/commons": "^1.7.0" } }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "requires": { + "defer-to-connect": "^1.0.1" + } + }, "@types/babel__core": { "version": "7.1.10", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.10.tgz", @@ -1766,12 +1714,6 @@ } } }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", @@ -2234,6 +2176,12 @@ "widest-line": "^3.1.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", @@ -2275,6 +2223,32 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", @@ -2614,6 +2588,23 @@ } } }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + }, + "dependencies": { + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true + } + } + }, "cluster-key-slot": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz", @@ -2732,6 +2723,17 @@ "unique-string": "^2.0.0", "write-file-atomic": "^3.0.0", "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "requires": { + "is-obj": "^2.0.0" + } + } } }, "contains-path": { @@ -3137,15 +3139,6 @@ } } }, - "dot-prop": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz", - "integrity": "sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ==", - "dev": true, - "requires": { - "is-obj": "^2.0.0" - } - }, "duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", @@ -4486,16 +4479,6 @@ "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", "dev": true }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, "find-versions": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", @@ -5252,6 +5235,12 @@ "through": "^2.3.6" }, "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", @@ -5293,6 +5282,32 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", @@ -5477,12 +5492,6 @@ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, "is-generator-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", @@ -5563,18 +5572,6 @@ "integrity": "sha1-DFLlS8yjkbssSUsh6GJtczbG45c=", "dev": true }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, "is-regex": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", @@ -7788,14 +7785,12 @@ "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, "requires": { "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" @@ -7815,7 +7810,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "requires": { "color-name": "~1.1.4" } @@ -7823,18 +7817,13 @@ "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } + "dev": true }, "get-caller-file": { "version": "2.0.5", @@ -7867,11 +7856,8 @@ "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "ansi-styles": "^4.0.0" } }, "yargs": { @@ -7887,7 +7873,6 @@ "require-directory": "^2.1.1", "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", "yargs-parser": "^18.1.2" @@ -7899,7 +7884,8 @@ "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } @@ -8643,15 +8629,6 @@ } } }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, "lodash": { "version": "4.17.20", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", @@ -9594,6 +9571,12 @@ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true + }, "p-each-series": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.1.0.tgz", @@ -9614,15 +9597,6 @@ "p-try": "^2.0.0" } }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", @@ -9699,12 +9673,6 @@ "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", "dev": true }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -9860,6 +9828,42 @@ "dev": true, "requires": { "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + } } }, "please-upgrade-node": { @@ -9912,6 +9916,18 @@ "react-is": "^16.12.0" }, "dependencies": { + "@jest/types": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", + "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/yargs": "^15.0.0", + "chalk": "^3.0.0" + } + }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", @@ -9928,6 +9944,16 @@ "color-convert": "^2.0.1" } }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -9942,6 +9968,21 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } } } }, @@ -9953,7 +9994,6 @@ "requires": { "chalk": "^3.0.0", "execa": "^4.0.0", - "find-up": "^4.1.0", "ignore": "^5.1.4", "mri": "^1.1.5", "multimatch": "^4.0.0" @@ -10056,7 +10096,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, "requires": { "p-limit": "^2.2.0" } @@ -10064,8 +10103,7 @@ "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" }, "path-key": { "version": "3.1.1", @@ -10163,12 +10201,6 @@ "integrity": "sha512-53BHGoSSquDJg7fyDrMKWa85jfF34LPKAeRSij+Eiktlh2YE4rAk5U9uba3mGRswE/grDiAi2mZWknbzbXiB9w==", "dev": true }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, "psl": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", @@ -10274,37 +10306,6 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true - } - } - }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - } - }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -11427,17 +11428,6 @@ } } }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, "string.prototype.trimend": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", @@ -11493,15 +11483,6 @@ } } }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, "strip-bom": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", @@ -11883,7 +11864,6 @@ "json5": "2.x", "lodash.memoize": "4.x", "make-error": "1.x", - "mkdirp": "1.x", "semver": "7.x", "yargs-parser": "20.x" }, @@ -12501,6 +12481,40 @@ "dev": true, "requires": { "string-width": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } } }, "word-wrap": { diff --git a/packages/openapi-to-graphql/src/scalar_validators/strict_float.ts b/packages/openapi-to-graphql/src/scalar_validators/strict_float.ts index 7e666b1c..8bd4abba 100644 --- a/packages/openapi-to-graphql/src/scalar_validators/strict_float.ts +++ b/packages/openapi-to-graphql/src/scalar_validators/strict_float.ts @@ -6,7 +6,7 @@ import { getValueFromValueNode } from './common_def' -import { strictTypeOf } from '../utils' +import { isTypeOf } from '../utils' import { StrictScalarNumberConfig, @@ -46,7 +46,7 @@ export const createFloatScalar = ( let value: number - if (strictTypeOf(unknownValue, 'number')) { + if (isTypeOf(unknownValue, 'number')) { value = unknownValue as number } else { if (coerce) { diff --git a/packages/openapi-to-graphql/src/scalar_validators/strict_int.ts b/packages/openapi-to-graphql/src/scalar_validators/strict_int.ts index 0e09a83a..d55cbdc6 100644 --- a/packages/openapi-to-graphql/src/scalar_validators/strict_int.ts +++ b/packages/openapi-to-graphql/src/scalar_validators/strict_int.ts @@ -5,7 +5,7 @@ import { getValueFromValueNode } from './common_def' -import { strictTypeOf } from '../utils' +import { isTypeOf } from '../utils' import { StrictScalarNumberConfig, @@ -42,7 +42,7 @@ export const createIntScalar = ( let value: number - if (strictTypeOf(unknownValue, 'number')) { + if (isTypeOf(unknownValue, 'number')) { value = unknownValue as number } else { if (coerce) { diff --git a/packages/openapi-to-graphql/src/scalar_validators/strict_string.ts b/packages/openapi-to-graphql/src/scalar_validators/strict_string.ts index 55e6f264..efa1ccfc 100644 --- a/packages/openapi-to-graphql/src/scalar_validators/strict_string.ts +++ b/packages/openapi-to-graphql/src/scalar_validators/strict_string.ts @@ -7,7 +7,7 @@ import { getValueFromValueNode } from './common_def' -import { strictTypeOf } from '../utils' +import { isTypeOf } from '../utils' const strToUpperCase = (str: string): string => str.toUpperCase() @@ -87,7 +87,7 @@ export const createStringScalar = ( if (coerce) { const valueOrNull = coerce(unknownValue) - if (valueOrNull == null) { + if (isTypeOf(valueOrNull, 'null')) { return null } value = valueOrNull @@ -125,10 +125,7 @@ export const createStringScalar = ( .join('\n') .replace(emptyLineRegex!, emptyLineString!) } else { - value = value - .split(newlineWithWSRegex) - .map(collapseWS) - .join('\n') + value = value.split(newlineWithWSRegex).map(collapseWS).join('\n') } }