From eae785adaa8317b14a609f4346f7a4b5ece0bd16 Mon Sep 17 00:00:00 2001 From: Matei Adriel Date: Sun, 10 May 2020 18:26:21 +0300 Subject: [PATCH] typescript(monorepo-template): chore: basic hygen template Signed-off-by: prescientmoon --- typescript/monorepo-template/.prettierignore | 1 + .../monorepo-template/.vscode/settings.json | 1 + .../_templates/generator/help/index.ejs.t | 5 + .../_templates/generator/new/hello.ejs.t | 18 + .../generator/with-prompt/hello.ejs.t | 18 + .../generator/with-prompt/prompt.ejs.t | 14 + .../_templates/package/new/index.js | 11 + .../_templates/package/new/index.ts.ejs | 4 + .../_templates/package/new/package.json.ejs | 26 ++ typescript/monorepo-template/package.json | 10 +- .../packages/test/package.json | 23 ++ .../packages/test/src/index.ts | 1 + typescript/monorepo-template/pnpm-lock.yaml | 381 ++++++++++++++++++ 13 files changed, 510 insertions(+), 3 deletions(-) create mode 100644 typescript/monorepo-template/.prettierignore create mode 100644 typescript/monorepo-template/_templates/generator/help/index.ejs.t create mode 100644 typescript/monorepo-template/_templates/generator/new/hello.ejs.t create mode 100644 typescript/monorepo-template/_templates/generator/with-prompt/hello.ejs.t create mode 100644 typescript/monorepo-template/_templates/generator/with-prompt/prompt.ejs.t create mode 100644 typescript/monorepo-template/_templates/package/new/index.js create mode 100644 typescript/monorepo-template/_templates/package/new/index.ts.ejs create mode 100644 typescript/monorepo-template/_templates/package/new/package.json.ejs create mode 100644 typescript/monorepo-template/packages/test/package.json create mode 100644 typescript/monorepo-template/packages/test/src/index.ts diff --git a/typescript/monorepo-template/.prettierignore b/typescript/monorepo-template/.prettierignore new file mode 100644 index 0000000..401f4e6 --- /dev/null +++ b/typescript/monorepo-template/.prettierignore @@ -0,0 +1 @@ +_templates/**/*.ejs \ No newline at end of file diff --git a/typescript/monorepo-template/.vscode/settings.json b/typescript/monorepo-template/.vscode/settings.json index d4b2b7b..10f9a89 100644 --- a/typescript/monorepo-template/.vscode/settings.json +++ b/typescript/monorepo-template/.vscode/settings.json @@ -1,5 +1,6 @@ { "cSpell.words": [ + "hygen", "pnpm" ] } \ No newline at end of file diff --git a/typescript/monorepo-template/_templates/generator/help/index.ejs.t b/typescript/monorepo-template/_templates/generator/help/index.ejs.t new file mode 100644 index 0000000..90a29af --- /dev/null +++ b/typescript/monorepo-template/_templates/generator/help/index.ejs.t @@ -0,0 +1,5 @@ +--- +message: | + hygen {bold generator new} --name [NAME] --action [ACTION] + hygen {bold generator with-prompt} --name [NAME] --action [ACTION] +--- \ No newline at end of file diff --git a/typescript/monorepo-template/_templates/generator/new/hello.ejs.t b/typescript/monorepo-template/_templates/generator/new/hello.ejs.t new file mode 100644 index 0000000..5680d96 --- /dev/null +++ b/typescript/monorepo-template/_templates/generator/new/hello.ejs.t @@ -0,0 +1,18 @@ +--- +to: _templates/<%= name %>/<%= action || 'new' %>/hello.ejs.t +--- +--- +to: app/hello.js +--- +const hello = ``` +Hello! +This is your first hygen template. + +Learn what it can do here: + +https://github.com/jondot/hygen +``` + +console.log(hello) + + diff --git a/typescript/monorepo-template/_templates/generator/with-prompt/hello.ejs.t b/typescript/monorepo-template/_templates/generator/with-prompt/hello.ejs.t new file mode 100644 index 0000000..ba6abc5 --- /dev/null +++ b/typescript/monorepo-template/_templates/generator/with-prompt/hello.ejs.t @@ -0,0 +1,18 @@ +--- +to: _templates/<%= name %>/<%= action || 'new' %>/hello.ejs.t +--- +--- +to: app/hello.js +--- +const hello = ``` +Hello! +This is your first prompt based hygen template. + +Learn what it can do here: + +https://github.com/jondot/hygen +``` + +console.log(hello) + + diff --git a/typescript/monorepo-template/_templates/generator/with-prompt/prompt.ejs.t b/typescript/monorepo-template/_templates/generator/with-prompt/prompt.ejs.t new file mode 100644 index 0000000..76ea532 --- /dev/null +++ b/typescript/monorepo-template/_templates/generator/with-prompt/prompt.ejs.t @@ -0,0 +1,14 @@ +--- +to: _templates/<%= name %>/<%= action || 'new' %>/prompt.js +--- + +// see types of prompts: +// https://github.com/enquirer/enquirer/tree/master/examples +// +module.exports = [ + { + type: 'input', + name: 'message', + message: "What's your message?" + } +] diff --git a/typescript/monorepo-template/_templates/package/new/index.js b/typescript/monorepo-template/_templates/package/new/index.js new file mode 100644 index 0000000..45fc4dc --- /dev/null +++ b/typescript/monorepo-template/_templates/package/new/index.js @@ -0,0 +1,11 @@ +const packageJson = require("../../../package.json"); + +console.log(JSON.stringify(packageJson.repository)); + +exports.prompt = async ({ args }) => ({ + ...packageJson, + ...args, + org: packageJson.name, + repository: JSON.stringify(packageJson.repository), + bugs: JSON.stringify(packageJson.bugs), +}); diff --git a/typescript/monorepo-template/_templates/package/new/index.ts.ejs b/typescript/monorepo-template/_templates/package/new/index.ts.ejs new file mode 100644 index 0000000..6b9fb63 --- /dev/null +++ b/typescript/monorepo-template/_templates/package/new/index.ts.ejs @@ -0,0 +1,4 @@ +--- +to: packages/<%= name %>/src/index.ts +--- +export const hello = () => console.log("Hello world from the <%= name %> package!") \ No newline at end of file diff --git a/typescript/monorepo-template/_templates/package/new/package.json.ejs b/typescript/monorepo-template/_templates/package/new/package.json.ejs new file mode 100644 index 0000000..d030f78 --- /dev/null +++ b/typescript/monorepo-template/_templates/package/new/package.json.ejs @@ -0,0 +1,26 @@ +--- +to: packages/<%= name %>/package.json +--- +{ + "name": "@<%= org %>/<%= name %>", + "version": "0.0.0", + "description": "", + "keywords": [], + "main": "dist/bundle.cjs.js", + "module": "dist/bundle.esm.js", + "typings": "./dist/index.d.ts", + "publishConfig": { + "access": "public" + }, + "files": [ + "dist" + ], + "author": "<%= author %>", + "homepage": "<%= homepage %>", + "license": "<%= license %>", + "repository": <%- repository %>, + "bugs": <%- bugs %>, + "dependencies": {}, + "devDependencies": {}, + "sideEffects": false +} \ No newline at end of file diff --git a/typescript/monorepo-template/package.json b/typescript/monorepo-template/package.json index e289205..2841bd0 100644 --- a/typescript/monorepo-template/package.json +++ b/typescript/monorepo-template/package.json @@ -4,7 +4,7 @@ "scripts": {}, "repository": { "type": "git", - "url": "git+https://github.com/Mateiadriel/monorepo.git" + "url": "git+https://github.com/Mateiadrielrafael/monorepo-template.git" }, "keywords": [ "monorepo", @@ -14,10 +14,14 @@ "author": "Matei Adriel", "license": "ISC", "bugs": { - "url": "https://github.com/Mateiadriel/monorepo/issues" + "url": "https://github.com/Mateiadrielrafael/monorepo-temolate/issues" }, - "homepage": "https://github.com/Mateiadriel/monorepo#readme", + "homepage": "https://github.com/Mateiadrielrafael/monorepo-template#readme", "devDependencies": { + "@semantic-release/changelog": "^5.0.1", + "@semantic-release/git": "^9.0.0", + "cross-env": "^7.0.2", + "hygen": "^5.0.3", "semantic-release": "^17.0.7", "semantic-release-monorepo": "^7.0.2" } diff --git a/typescript/monorepo-template/packages/test/package.json b/typescript/monorepo-template/packages/test/package.json new file mode 100644 index 0000000..67c4e05 --- /dev/null +++ b/typescript/monorepo-template/packages/test/package.json @@ -0,0 +1,23 @@ +{ + "name": "@monorepo/test", + "version": "0.0.0", + "description": "", + "keywords": [], + "main": "dist/bundle.cjs.js", + "module": "dist/bundle.esm.js", + "typings": "./dist/index.d.ts", + "publishConfig": { + "access": "public" + }, + "files": [ + "dist" + ], + "author": "Matei Adriel", + "homepage": "https://github.com/Mateiadrielrafael/monorepo-template#readme", + "license": "ISC", + "repository": {"type":"git","url":"git+https://github.com/Mateiadrielrafael/monorepo-template.git"}, + "bugs": {"url":"https://github.com/Mateiadrielrafael/monorepo-temolate/issues"}, + "dependencies": {}, + "devDependencies": {}, + "sideEffects": false +} \ No newline at end of file diff --git a/typescript/monorepo-template/packages/test/src/index.ts b/typescript/monorepo-template/packages/test/src/index.ts new file mode 100644 index 0000000..a265bba --- /dev/null +++ b/typescript/monorepo-template/packages/test/src/index.ts @@ -0,0 +1 @@ +export const hello = () => console.log("Hello world from the test package!") \ No newline at end of file diff --git a/typescript/monorepo-template/pnpm-lock.yaml b/typescript/monorepo-template/pnpm-lock.yaml index 8d13a9e..4b43a5d 100644 --- a/typescript/monorepo-template/pnpm-lock.yaml +++ b/typescript/monorepo-template/pnpm-lock.yaml @@ -1,9 +1,17 @@ importers: .: devDependencies: + '@semantic-release/changelog': 5.0.1_semantic-release@17.0.7 + '@semantic-release/git': 9.0.0_semantic-release@17.0.7 + cross-env: 7.0.2 + hygen: 5.0.3 semantic-release: 17.0.7_semantic-release@17.0.7 semantic-release-monorepo: 7.0.2_semantic-release@17.0.7 specifiers: + '@semantic-release/changelog': ^5.0.1 + '@semantic-release/git': ^9.0.0 + cross-env: ^7.0.2 + hygen: ^5.0.3 semantic-release: ^17.0.7 semantic-release-monorepo: ^7.0.2 lockfileVersion: 5.1 @@ -142,6 +150,20 @@ packages: dev: true resolution: integrity: sha512-0mnpenB8rLhBVu8VUklp38gWi+EatjvcEcLWcdProMKauSaQWWepOAybZ714sOGsEyhXPlIcHICggn8HUsCXVw== + /@semantic-release/changelog/5.0.1_semantic-release@17.0.7: + dependencies: + '@semantic-release/error': 2.2.0 + aggregate-error: 3.0.1 + fs-extra: 9.0.0 + lodash: 4.17.15 + semantic-release: 17.0.7_semantic-release@17.0.7 + dev: true + engines: + node: '>=10.18' + peerDependencies: + semantic-release: '>=15.8.0 <18.0.0' + resolution: + integrity: sha512-unvqHo5jk4dvAf2nZ3aw4imrlwQ2I50eVVvq9D47Qc3R+keNqepx1vDYwkjF8guFXnOYaYcR28yrZWno1hFbiw== /@semantic-release/commit-analyzer/8.0.1_semantic-release@17.0.7: dependencies: conventional-changelog-angular: 5.0.10 @@ -163,6 +185,24 @@ packages: dev: true resolution: integrity: sha512-9Tj/qn+y2j+sjCI3Jd+qseGtHjOAeg7dU2/lVcqIQ9TV3QDaDXDYXcoOHU+7o2Hwh8L8ymL4gfuO7KxDs3q2zg== + /@semantic-release/git/9.0.0_semantic-release@17.0.7: + dependencies: + '@semantic-release/error': 2.2.0 + aggregate-error: 3.0.1 + debug: 4.1.1 + dir-glob: 3.0.1 + execa: 4.0.1 + lodash: 4.17.15 + micromatch: 4.0.2 + p-reduce: 2.1.0 + semantic-release: 17.0.7_semantic-release@17.0.7 + dev: true + engines: + node: '>=10.18' + peerDependencies: + semantic-release: '>=16.0.0 <18.0.0' + resolution: + integrity: sha512-AZ4Zha5NAPAciIJH3ipzw/WU9qLAn8ENaoVAhD6srRPxTpTzuV3NhNh14rcAo8Paj9dO+5u4rTKcpetOBluYVw== /@semantic-release/github/7.0.5_semantic-release@17.0.7: dependencies: '@octokit/rest': 17.8.0 @@ -287,6 +327,12 @@ packages: node: '>=8' resolution: integrity: sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA== + /ansi-colors/3.2.4: + dev: true + engines: + node: '>=6' + resolution: + integrity: sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== /ansi-escapes/4.3.1: dependencies: type-fest: 0.11.0 @@ -322,6 +368,12 @@ packages: dev: true resolution: integrity: sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk= + /argparse/1.0.10: + dependencies: + sprintf-js: 1.0.3 + dev: true + resolution: + integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== /argv-formatter/1.0.0: dev: true resolution: @@ -354,6 +406,10 @@ packages: node: '>= 4.0.0' resolution: integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + /balanced-match/1.0.0: + dev: true + resolution: + integrity: sha1-ibTRmasr7kneFk6gK4nORi1xt2c= /before-after-hook/2.1.0: dev: true resolution: @@ -362,6 +418,13 @@ packages: dev: true resolution: integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw== + /brace-expansion/1.1.11: + dependencies: + balanced-match: 1.0.0 + concat-map: 0.0.1 + dev: true + resolution: + integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== /braces/3.0.2: dependencies: fill-range: 7.0.1 @@ -370,12 +433,31 @@ packages: node: '>=8' resolution: integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + /bs-logger/0.2.6: + dependencies: + fast-json-stable-stringify: 2.1.0 + dev: true + engines: + node: '>= 6' + resolution: + integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + /buffer-from/1.1.1: + dev: true + resolution: + integrity: sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== /callsites/3.1.0: dev: true engines: node: '>=6' resolution: integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + /camel-case/3.0.0: + dependencies: + no-case: 2.3.2 + upper-case: 1.1.3 + dev: true + resolution: + integrity: sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= /camelcase-keys/6.2.2: dependencies: camelcase: 5.3.1 @@ -386,6 +468,12 @@ packages: node: '>=8' resolution: integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== + /camelcase/4.1.0: + dev: true + engines: + node: '>=4' + resolution: + integrity: sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= /camelcase/5.3.1: dev: true engines: @@ -419,6 +507,29 @@ packages: node: '>=10' resolution: integrity: sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A== + /change-case/3.1.0: + dependencies: + camel-case: 3.0.0 + constant-case: 2.0.0 + dot-case: 2.1.1 + header-case: 1.0.1 + is-lower-case: 1.1.3 + is-upper-case: 1.1.2 + lower-case: 1.1.4 + lower-case-first: 1.0.2 + no-case: 2.3.2 + param-case: 2.1.1 + pascal-case: 2.0.1 + path-case: 2.1.1 + sentence-case: 2.1.1 + snake-case: 2.1.0 + swap-case: 1.1.2 + title-case: 2.1.1 + upper-case: 1.1.3 + upper-case-first: 1.1.2 + dev: true + resolution: + integrity: sha512-2AZp7uJZbYEzRPsFoa+ijKdvp9zsrnnt6+yFokfwEpeJm0xuJDVoxiRCAaTzyJND8GJkofo2IcKWaUZ/OECVzw== /clean-stack/2.2.0: dev: true engines: @@ -481,6 +592,17 @@ packages: dev: true resolution: integrity: sha1-md0LpFfh+bxyKxLAjsM+6rMfpkg= + /concat-map/0.0.1: + dev: true + resolution: + integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + /constant-case/2.0.0: + dependencies: + snake-case: 2.1.0 + upper-case: 1.1.3 + dev: true + resolution: + integrity: sha1-QXV2TTidP6nI7NKRhu1gBSQ7akY= /conventional-changelog-angular/5.0.10: dependencies: compare-func: 1.3.2 @@ -548,6 +670,17 @@ packages: node: '>=8' resolution: integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== + /cross-env/7.0.2: + dependencies: + cross-spawn: 7.0.2 + dev: true + engines: + node: '>=10.14' + npm: '>=6' + yarn: '>=1' + hasBin: true + resolution: + integrity: sha512-KZP/bMEOJEDCkDQAyRhu3RL2ZO/SUVrxQVI0G3YEQ+OLbRA3c6zgixe8Mq8a/z7+HKlNEjo8oiLUs8iRijY2Rw== /cross-spawn/5.1.0: dependencies: lru-cache: 4.1.5 @@ -633,6 +766,12 @@ packages: node: '>=8' resolution: integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + /dot-case/2.1.1: + dependencies: + no-case: 2.3.2 + dev: true + resolution: + integrity: sha1-NNzzf1Co6TwrO8qLt/uRVcfaO+4= /dot-prop/3.0.0: dependencies: is-obj: 1.0.1 @@ -647,6 +786,13 @@ packages: dev: true resolution: integrity: sha1-ixLauHjA1p4+eJEFFmKjL8a93ME= + /ejs/2.7.4: + dev: true + engines: + node: '>=0.10.0' + requiresBuild: true + resolution: + integrity: sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA== /emoji-regex/8.0.0: dev: true resolution: @@ -657,6 +803,14 @@ packages: dev: true resolution: integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + /enquirer/2.3.5: + dependencies: + ansi-colors: 3.2.4 + dev: true + engines: + node: '>=8.6' + resolution: + integrity: sha512-BNT1C08P9XD0vNg3J475yIUG+mVdp9T6towYFHUv897X0KoHBjB1shyrNmhmtHWKP17iSWgo7Gqh7BBuzLZMSA== /env-ci/5.0.2: dependencies: execa: 4.0.1 @@ -742,6 +896,10 @@ packages: node: '>=8' resolution: integrity: sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A== + /fast-json-stable-stringify/2.1.0: + dev: true + resolution: + integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== /fastq/1.7.0: dependencies: reusify: 1.0.4 @@ -804,6 +962,22 @@ packages: dev: true resolution: integrity: sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= + /front-matter/2.3.0: + dependencies: + js-yaml: 3.13.1 + dev: true + resolution: + integrity: sha1-cgOviWzjV+4E4qpFFp6pHtf2dQQ= + /fs-extra/7.0.1: + dependencies: + graceful-fs: 4.2.4 + jsonfile: 4.0.0 + universalify: 0.1.2 + dev: true + engines: + node: '>=6 <7 || >=8' + resolution: + integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== /fs-extra/9.0.0: dependencies: at-least-node: 1.0.0 @@ -911,6 +1085,13 @@ packages: node: '>=8' resolution: integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + /header-case/1.0.1: + dependencies: + no-case: 2.3.2 + upper-case: 1.1.3 + dev: true + resolution: + integrity: sha1-lTWXMZfBRLCWE81l0xfvGZY70C0= /hook-std/2.0.0: dev: true engines: @@ -952,6 +1133,29 @@ packages: node: '>=8.12.0' resolution: integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + /hygen/5.0.3: + dependencies: + chalk: 2.4.2 + change-case: 3.1.0 + ejs: 2.7.4 + enquirer: 2.3.5 + execa: 1.0.0 + front-matter: 2.3.0 + fs-extra: 7.0.1 + ignore-walk: 3.0.3 + inflection: 1.12.0 + ts-jest: 24.3.0 + yargs-parser: 13.1.2 + dev: true + hasBin: true + resolution: + integrity: sha512-tepicT366of7FZKfuT/YtTOZ1mU7txQix2EgYEGOCBD4SN3+vf2tRITB/yA7Amd9NPhzijgCYkW/MlIsdXEEEQ== + /ignore-walk/3.0.3: + dependencies: + minimatch: 3.0.4 + dev: true + resolution: + integrity: sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== /ignore/5.1.4: dev: true engines: @@ -981,6 +1185,12 @@ packages: node: '>=8' resolution: integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + /inflection/1.12.0: + dev: true + engines: + '0': node >= 0.4.0 + resolution: + integrity: sha1-ogCTVlbW9fa8TcdQLhrstwMihBY= /inherits/2.0.4: dev: true resolution: @@ -1022,6 +1232,12 @@ packages: node: '>=0.10.0' resolution: integrity: sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + /is-lower-case/1.1.3: + dependencies: + lower-case: 1.1.4 + dev: true + resolution: + integrity: sha1-fhR75HaNxGbbO/shzGCzHmrWk5M= /is-number/7.0.0: dev: true engines: @@ -1068,6 +1284,12 @@ packages: node: '>=0.10.0' resolution: integrity: sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4= + /is-upper-case/1.1.2: + dependencies: + upper-case: 1.1.3 + dev: true + resolution: + integrity: sha1-jQsfp+eTOh5YSDYA7H2WYcuvdW8= /isarray/1.0.0: dev: true resolution: @@ -1104,6 +1326,14 @@ packages: dev: true resolution: integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + /js-yaml/3.13.1: + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + dev: true + hasBin: true + resolution: + integrity: sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== /json-parse-better-errors/1.0.2: dev: true resolution: @@ -1112,6 +1342,21 @@ packages: dev: true resolution: integrity: sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + /json5/2.1.3: + dependencies: + minimist: 1.2.5 + dev: true + engines: + node: '>=6' + hasBin: true + resolution: + integrity: sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== + /jsonfile/4.0.0: + dev: true + optionalDependencies: + graceful-fs: 4.2.4 + resolution: + integrity: sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= /jsonfile/6.0.1: dependencies: universalify: 1.0.0 @@ -1178,6 +1423,10 @@ packages: dev: true resolution: integrity: sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= + /lodash.memoize/4.1.2: + dev: true + resolution: + integrity: sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= /lodash.toarray/4.4.0: dev: true resolution: @@ -1190,6 +1439,16 @@ packages: dev: true resolution: integrity: sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== + /lower-case-first/1.0.2: + dependencies: + lower-case: 1.1.4 + dev: true + resolution: + integrity: sha1-5dp8JvKacHO+AtUrrJmA5ZIq36E= + /lower-case/1.1.4: + dev: true + resolution: + integrity: sha1-miyr0bno4K6ZOkv31YdcOcQujqw= /lru-cache/4.1.5: dependencies: pseudomap: 1.0.2 @@ -1209,6 +1468,10 @@ packages: node: '>=6' resolution: integrity: sha512-OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA== + /make-error/1.3.6: + dev: true + resolution: + integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== /map-obj/1.0.1: dev: true engines: @@ -1299,6 +1562,12 @@ packages: node: '>=4' resolution: integrity: sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY= + /minimatch/3.0.4: + dependencies: + brace-expansion: 1.1.11 + dev: true + resolution: + integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== /minimist-options/4.0.2: dependencies: arrify: 1.0.1 @@ -1312,6 +1581,13 @@ packages: dev: true resolution: integrity: sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + /mkdirp/0.5.5: + dependencies: + minimist: 1.2.5 + dev: true + hasBin: true + resolution: + integrity: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== /modify-values/1.0.1: dev: true engines: @@ -1334,6 +1610,12 @@ packages: dev: true resolution: integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + /no-case/2.3.2: + dependencies: + lower-case: 1.1.4 + dev: true + resolution: + integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== /node-emoji/1.10.0: dependencies: lodash.toarray: 4.4.0 @@ -1622,6 +1904,12 @@ packages: node: '>=6' resolution: integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + /param-case/2.1.1: + dependencies: + no-case: 2.3.2 + dev: true + resolution: + integrity: sha1-35T9jPZTHs915r75oIWPvHK+Ikc= /parent-module/1.0.1: dependencies: callsites: 3.1.0 @@ -1650,6 +1938,19 @@ packages: node: '>=8' resolution: integrity: sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== + /pascal-case/2.0.1: + dependencies: + camel-case: 3.0.0 + upper-case-first: 1.1.2 + dev: true + resolution: + integrity: sha1-LVeNNFX2YNpl7KGO+VtODekSdh4= + /path-case/2.1.1: + dependencies: + no-case: 2.3.2 + dev: true + resolution: + integrity: sha1-lLgDfDctP+KQbkZbtF4l0ibo7qU= /path-exists/3.0.0: dev: true engines: @@ -1988,6 +2289,13 @@ packages: hasBin: true resolution: integrity: sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== + /sentence-case/2.1.1: + dependencies: + no-case: 2.3.2 + upper-case-first: 1.1.2 + dev: true + resolution: + integrity: sha1-H24t2jnBaL+S0T+G1KkYkz9mftQ= /set-blocking/2.0.0: dev: true resolution: @@ -2040,6 +2348,12 @@ packages: node: '>=8' resolution: integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + /snake-case/2.1.0: + dependencies: + no-case: 2.3.2 + dev: true + resolution: + integrity: sha1-Qb2xtz8w7GagTU4srRt2OH1NbZ8= /source-map/0.6.1: dev: true engines: @@ -2090,6 +2404,10 @@ packages: dev: true resolution: integrity: sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== + /sprintf-js/1.0.3: + dev: true + resolution: + integrity: sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= /stream-combiner2/1.1.1: dependencies: duplexer2: 0.1.4 @@ -2184,6 +2502,13 @@ packages: node: '>=8' resolution: integrity: sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== + /swap-case/1.1.2: + dependencies: + lower-case: 1.1.4 + upper-case: 1.1.3 + dev: true + resolution: + integrity: sha1-w5IDpFhzhfrTyFCgvRvK+ggZdOM= /temp-dir/2.0.0: dev: true engines: @@ -2224,6 +2549,13 @@ packages: dev: true resolution: integrity: sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== + /title-case/2.1.1: + dependencies: + no-case: 2.3.2 + upper-case: 1.1.3 + dev: true + resolution: + integrity: sha1-PhJyFtpY0rxb7PE3q5Ha46fNj6o= /to-regex-range/5.0.1: dependencies: is-number: 7.0.0 @@ -2248,6 +2580,26 @@ packages: node: '>=0.10.0' resolution: integrity: sha1-n5up2e+odkw4dpi8v+sshI8RrbM= + /ts-jest/24.3.0: + dependencies: + bs-logger: 0.2.6 + buffer-from: 1.1.1 + fast-json-stable-stringify: 2.1.0 + json5: 2.1.3 + lodash.memoize: 4.1.2 + make-error: 1.3.6 + mkdirp: 0.5.5 + resolve: 1.17.0 + semver: 5.7.1 + yargs-parser: 10.1.0 + dev: true + engines: + node: '>= 6' + hasBin: true + peerDependencies: + jest: '>=24 <25' + resolution: + integrity: sha512-Hb94C/+QRIgjVZlJyiWwouYUF+siNJHJHknyspaOcZ+OQAIdFG/UrdQVXw/0B8Z3No34xkUXZJpOTy9alOWdVQ== /type-fest/0.11.0: dev: true engines: @@ -2302,12 +2654,28 @@ packages: dev: true resolution: integrity: sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q== + /universalify/0.1.2: + dev: true + engines: + node: '>= 4.0.0' + resolution: + integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== /universalify/1.0.0: dev: true engines: node: '>= 10.0.0' resolution: integrity: sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== + /upper-case-first/1.1.2: + dependencies: + upper-case: 1.1.3 + dev: true + resolution: + integrity: sha1-XXm+3P8UQZUY/S7bCgUHybaFkRU= + /upper-case/1.1.3: + dev: true + resolution: + integrity: sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= /url-join/4.0.1: dev: true resolution: @@ -2395,6 +2763,19 @@ packages: node: '>= 6' resolution: integrity: sha512-HPT7cGGI0DuRcsO51qC1j9O16Dh1mZ2bnXwsi0jrSpsLz0WxOLSLXfkABVl6bZO629py3CU+OMJtpNHDLB97kg== + /yargs-parser/10.1.0: + dependencies: + camelcase: 4.1.0 + dev: true + resolution: + integrity: sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== + /yargs-parser/13.1.2: + dependencies: + camelcase: 5.3.1 + decamelize: 1.2.0 + dev: true + resolution: + integrity: sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== /yargs-parser/18.1.3: dependencies: camelcase: 5.3.1