├── .DS_Store ├── .gitignore ├── .idea ├── .gitignore ├── misc.xml ├── modules.xml ├── monorepo.iml └── vcs.xml ├── README.md ├── package-lock.json ├── package.json └── packages ├── app ├── .gitignore ├── index.ts ├── package.json ├── src │ └── index.ts └── tsconfig.json ├── helpers ├── .gitignore ├── index.ts ├── package.json ├── src │ ├── index.ts │ └── utils │ │ ├── dateUtils.ts │ │ └── index.ts └── tsconfig.json └── types ├── .gitignore ├── index.ts ├── package.json ├── src ├── enums │ ├── dogNames.ts │ └── index.ts ├── index.ts ├── interfaces │ ├── doWork.ts │ ├── index.ts │ └── work.ts └── types │ ├── dog.ts │ ├── index.ts │ └── man.ts └── tsconfig.json /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euhoo/monorepo-typescript/6b14cb30123c62a512848e1476fa167e512704b0/.DS_Store -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .idea 3 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Datasource local storage ignored files 5 | /dataSources/ 6 | /dataSources.local.xml 7 | # Editor-based HTTP Client requests 8 | /httpRequests/ 9 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/monorepo.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Typescript monorepo with workspaces and npm(not yarn). 2 | Forked js repo and making ts repo with workspaces. 3 | To work with npm need npm version 7 or higher. 4 | https://stackoverflow.com/questions/46947557/do-yarn-workspaces-work-with-npm-too 5 | https://habr.com/ru/post/448766/ 6 | to add packages we need to do organization on npm 7 | https://stackoverflow.com/questions/43824012/how-to-publish-npm-scoped-packages-npm-scope-not-found 8 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "monorepo-typescript", 3 | "version": "2.0.3", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "monorepo-typescript", 9 | "version": "2.0.3", 10 | "license": "ISC", 11 | "workspaces": [ 12 | "packages/*" 13 | ], 14 | "dependencies": { 15 | "typescript": "^4.1.3" 16 | }, 17 | "devDependencies": {} 18 | }, 19 | "node_modules/@monorepo-typescript/app": { 20 | "resolved": "packages/app", 21 | "link": true 22 | }, 23 | "node_modules/@monorepo-typescript/helpers": { 24 | "resolved": "packages/helpers", 25 | "link": true 26 | }, 27 | "node_modules/@monorepo-typescript/types": { 28 | "resolved": "packages/types", 29 | "link": true 30 | }, 31 | "node_modules/@types/strip-bom": { 32 | "version": "3.0.0", 33 | "resolved": "https://registry.npmjs.org/@types/strip-bom/-/strip-bom-3.0.0.tgz", 34 | "integrity": "sha1-FKjsOVbC6B7bdSB5CuzyHCkK69I=" 35 | }, 36 | "node_modules/@types/strip-json-comments": { 37 | "version": "0.0.30", 38 | "resolved": "https://registry.npmjs.org/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz", 39 | "integrity": "sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ==" 40 | }, 41 | "node_modules/anymatch": { 42 | "version": "3.1.1", 43 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", 44 | "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", 45 | "dependencies": { 46 | "normalize-path": "^3.0.0", 47 | "picomatch": "^2.0.4" 48 | }, 49 | "engines": { 50 | "node": ">= 8" 51 | } 52 | }, 53 | "node_modules/arg": { 54 | "version": "4.1.3", 55 | "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", 56 | "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" 57 | }, 58 | "node_modules/array-find-index": { 59 | "version": "1.0.2", 60 | "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", 61 | "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", 62 | "engines": { 63 | "node": ">=0.10.0" 64 | } 65 | }, 66 | "node_modules/balanced-match": { 67 | "version": "1.0.0", 68 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 69 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 70 | }, 71 | "node_modules/binary-extensions": { 72 | "version": "2.2.0", 73 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 74 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 75 | "engines": { 76 | "node": ">=8" 77 | } 78 | }, 79 | "node_modules/brace-expansion": { 80 | "version": "1.1.11", 81 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 82 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 83 | "dependencies": { 84 | "balanced-match": "^1.0.0", 85 | "concat-map": "0.0.1" 86 | } 87 | }, 88 | "node_modules/braces": { 89 | "version": "3.0.2", 90 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 91 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 92 | "dependencies": { 93 | "fill-range": "^7.0.1" 94 | }, 95 | "engines": { 96 | "node": ">=8" 97 | } 98 | }, 99 | "node_modules/buffer-from": { 100 | "version": "1.1.1", 101 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 102 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" 103 | }, 104 | "node_modules/camelcase": { 105 | "version": "2.1.1", 106 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", 107 | "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", 108 | "engines": { 109 | "node": ">=0.10.0" 110 | } 111 | }, 112 | "node_modules/camelcase-keys": { 113 | "version": "2.1.0", 114 | "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", 115 | "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", 116 | "dependencies": { 117 | "camelcase": "^2.0.0", 118 | "map-obj": "^1.0.0" 119 | }, 120 | "engines": { 121 | "node": ">=0.10.0" 122 | } 123 | }, 124 | "node_modules/chokidar": { 125 | "version": "3.5.1", 126 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", 127 | "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", 128 | "dependencies": { 129 | "anymatch": "~3.1.1", 130 | "braces": "~3.0.2", 131 | "fsevents": "~2.3.1", 132 | "glob-parent": "~5.1.0", 133 | "is-binary-path": "~2.1.0", 134 | "is-glob": "~4.0.1", 135 | "normalize-path": "~3.0.0", 136 | "readdirp": "~3.5.0" 137 | }, 138 | "engines": { 139 | "node": ">= 8.10.0" 140 | }, 141 | "optionalDependencies": { 142 | "fsevents": "~2.3.1" 143 | } 144 | }, 145 | "node_modules/concat-map": { 146 | "version": "0.0.1", 147 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 148 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 149 | }, 150 | "node_modules/create-require": { 151 | "version": "1.1.1", 152 | "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", 153 | "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" 154 | }, 155 | "node_modules/currently-unhandled": { 156 | "version": "0.4.1", 157 | "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", 158 | "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", 159 | "dependencies": { 160 | "array-find-index": "^1.0.1" 161 | }, 162 | "engines": { 163 | "node": ">=0.10.0" 164 | } 165 | }, 166 | "node_modules/dateformat": { 167 | "version": "1.0.12", 168 | "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", 169 | "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", 170 | "dependencies": { 171 | "get-stdin": "^4.0.1", 172 | "meow": "^3.3.0" 173 | }, 174 | "bin": { 175 | "dateformat": "bin/cli.js" 176 | }, 177 | "engines": { 178 | "node": "*" 179 | } 180 | }, 181 | "node_modules/decamelize": { 182 | "version": "1.2.0", 183 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 184 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", 185 | "engines": { 186 | "node": ">=0.10.0" 187 | } 188 | }, 189 | "node_modules/diff": { 190 | "version": "4.0.2", 191 | "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", 192 | "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", 193 | "engines": { 194 | "node": ">=0.3.1" 195 | } 196 | }, 197 | "node_modules/dynamic-dedupe": { 198 | "version": "0.3.0", 199 | "resolved": "https://registry.npmjs.org/dynamic-dedupe/-/dynamic-dedupe-0.3.0.tgz", 200 | "integrity": "sha1-BuRMIj9eTpTXjvnbI6ZRXOL5YqE=", 201 | "dependencies": { 202 | "xtend": "^4.0.0" 203 | } 204 | }, 205 | "node_modules/error-ex": { 206 | "version": "1.3.2", 207 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", 208 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", 209 | "dependencies": { 210 | "is-arrayish": "^0.2.1" 211 | } 212 | }, 213 | "node_modules/fill-range": { 214 | "version": "7.0.1", 215 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 216 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 217 | "dependencies": { 218 | "to-regex-range": "^5.0.1" 219 | }, 220 | "engines": { 221 | "node": ">=8" 222 | } 223 | }, 224 | "node_modules/find-up": { 225 | "version": "1.1.2", 226 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", 227 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", 228 | "dependencies": { 229 | "path-exists": "^2.0.0", 230 | "pinkie-promise": "^2.0.0" 231 | }, 232 | "engines": { 233 | "node": ">=0.10.0" 234 | } 235 | }, 236 | "node_modules/fs.realpath": { 237 | "version": "1.0.0", 238 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 239 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 240 | }, 241 | "node_modules/function-bind": { 242 | "version": "1.1.1", 243 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 244 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 245 | }, 246 | "node_modules/get-stdin": { 247 | "version": "4.0.1", 248 | "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", 249 | "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", 250 | "engines": { 251 | "node": ">=0.10.0" 252 | } 253 | }, 254 | "node_modules/glob": { 255 | "version": "7.1.6", 256 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 257 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", 258 | "dependencies": { 259 | "fs.realpath": "^1.0.0", 260 | "inflight": "^1.0.4", 261 | "inherits": "2", 262 | "minimatch": "^3.0.4", 263 | "once": "^1.3.0", 264 | "path-is-absolute": "^1.0.0" 265 | }, 266 | "engines": { 267 | "node": "*" 268 | }, 269 | "funding": { 270 | "url": "https://github.com/sponsors/isaacs" 271 | } 272 | }, 273 | "node_modules/glob-parent": { 274 | "version": "5.1.1", 275 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", 276 | "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", 277 | "dependencies": { 278 | "is-glob": "^4.0.1" 279 | }, 280 | "engines": { 281 | "node": ">= 6" 282 | } 283 | }, 284 | "node_modules/graceful-fs": { 285 | "version": "4.2.4", 286 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 287 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" 288 | }, 289 | "node_modules/has": { 290 | "version": "1.0.3", 291 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 292 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 293 | "dependencies": { 294 | "function-bind": "^1.1.1" 295 | }, 296 | "engines": { 297 | "node": ">= 0.4.0" 298 | } 299 | }, 300 | "node_modules/hosted-git-info": { 301 | "version": "2.8.8", 302 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", 303 | "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" 304 | }, 305 | "node_modules/indent-string": { 306 | "version": "2.1.0", 307 | "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", 308 | "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", 309 | "dependencies": { 310 | "repeating": "^2.0.0" 311 | }, 312 | "engines": { 313 | "node": ">=0.10.0" 314 | } 315 | }, 316 | "node_modules/inflight": { 317 | "version": "1.0.6", 318 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 319 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 320 | "dependencies": { 321 | "once": "^1.3.0", 322 | "wrappy": "1" 323 | } 324 | }, 325 | "node_modules/inherits": { 326 | "version": "2.0.4", 327 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 328 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 329 | }, 330 | "node_modules/is-arrayish": { 331 | "version": "0.2.1", 332 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 333 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" 334 | }, 335 | "node_modules/is-binary-path": { 336 | "version": "2.1.0", 337 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 338 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 339 | "dependencies": { 340 | "binary-extensions": "^2.0.0" 341 | }, 342 | "engines": { 343 | "node": ">=8" 344 | } 345 | }, 346 | "node_modules/is-core-module": { 347 | "version": "2.2.0", 348 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", 349 | "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", 350 | "dependencies": { 351 | "has": "^1.0.3" 352 | }, 353 | "funding": { 354 | "url": "https://github.com/sponsors/ljharb" 355 | } 356 | }, 357 | "node_modules/is-extglob": { 358 | "version": "2.1.1", 359 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 360 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 361 | "engines": { 362 | "node": ">=0.10.0" 363 | } 364 | }, 365 | "node_modules/is-finite": { 366 | "version": "1.1.0", 367 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", 368 | "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", 369 | "engines": { 370 | "node": ">=0.10.0" 371 | }, 372 | "funding": { 373 | "url": "https://github.com/sponsors/sindresorhus" 374 | } 375 | }, 376 | "node_modules/is-glob": { 377 | "version": "4.0.1", 378 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 379 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 380 | "dependencies": { 381 | "is-extglob": "^2.1.1" 382 | }, 383 | "engines": { 384 | "node": ">=0.10.0" 385 | } 386 | }, 387 | "node_modules/is-number": { 388 | "version": "7.0.0", 389 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 390 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 391 | "engines": { 392 | "node": ">=0.12.0" 393 | } 394 | }, 395 | "node_modules/is-utf8": { 396 | "version": "0.2.1", 397 | "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", 398 | "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" 399 | }, 400 | "node_modules/load-json-file": { 401 | "version": "1.1.0", 402 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", 403 | "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", 404 | "dependencies": { 405 | "graceful-fs": "^4.1.2", 406 | "parse-json": "^2.2.0", 407 | "pify": "^2.0.0", 408 | "pinkie-promise": "^2.0.0", 409 | "strip-bom": "^2.0.0" 410 | }, 411 | "engines": { 412 | "node": ">=0.10.0" 413 | } 414 | }, 415 | "node_modules/loud-rejection": { 416 | "version": "1.6.0", 417 | "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", 418 | "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", 419 | "dependencies": { 420 | "currently-unhandled": "^0.4.1", 421 | "signal-exit": "^3.0.0" 422 | }, 423 | "engines": { 424 | "node": ">=0.10.0" 425 | } 426 | }, 427 | "node_modules/make-error": { 428 | "version": "1.3.6", 429 | "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", 430 | "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" 431 | }, 432 | "node_modules/map-obj": { 433 | "version": "1.0.1", 434 | "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", 435 | "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", 436 | "engines": { 437 | "node": ">=0.10.0" 438 | } 439 | }, 440 | "node_modules/meow": { 441 | "version": "3.7.0", 442 | "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", 443 | "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", 444 | "dependencies": { 445 | "camelcase-keys": "^2.0.0", 446 | "decamelize": "^1.1.2", 447 | "loud-rejection": "^1.0.0", 448 | "map-obj": "^1.0.1", 449 | "minimist": "^1.1.3", 450 | "normalize-package-data": "^2.3.4", 451 | "object-assign": "^4.0.1", 452 | "read-pkg-up": "^1.0.1", 453 | "redent": "^1.0.0", 454 | "trim-newlines": "^1.0.0" 455 | }, 456 | "engines": { 457 | "node": ">=0.10.0" 458 | } 459 | }, 460 | "node_modules/minimatch": { 461 | "version": "3.0.4", 462 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 463 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 464 | "dependencies": { 465 | "brace-expansion": "^1.1.7" 466 | }, 467 | "engines": { 468 | "node": "*" 469 | } 470 | }, 471 | "node_modules/minimist": { 472 | "version": "1.2.5", 473 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", 474 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" 475 | }, 476 | "node_modules/mkdirp": { 477 | "version": "1.0.4", 478 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", 479 | "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", 480 | "bin": { 481 | "mkdirp": "bin/cmd.js" 482 | }, 483 | "engines": { 484 | "node": ">=10" 485 | } 486 | }, 487 | "node_modules/normalize-package-data": { 488 | "version": "2.5.0", 489 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", 490 | "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", 491 | "dependencies": { 492 | "hosted-git-info": "^2.1.4", 493 | "resolve": "^1.10.0", 494 | "semver": "2 || 3 || 4 || 5", 495 | "validate-npm-package-license": "^3.0.1" 496 | } 497 | }, 498 | "node_modules/normalize-path": { 499 | "version": "3.0.0", 500 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 501 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 502 | "engines": { 503 | "node": ">=0.10.0" 504 | } 505 | }, 506 | "node_modules/object-assign": { 507 | "version": "4.1.1", 508 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 509 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", 510 | "engines": { 511 | "node": ">=0.10.0" 512 | } 513 | }, 514 | "node_modules/once": { 515 | "version": "1.4.0", 516 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 517 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 518 | "dependencies": { 519 | "wrappy": "1" 520 | } 521 | }, 522 | "node_modules/parse-json": { 523 | "version": "2.2.0", 524 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 525 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 526 | "dependencies": { 527 | "error-ex": "^1.2.0" 528 | }, 529 | "engines": { 530 | "node": ">=0.10.0" 531 | } 532 | }, 533 | "node_modules/path-exists": { 534 | "version": "2.1.0", 535 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", 536 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", 537 | "dependencies": { 538 | "pinkie-promise": "^2.0.0" 539 | }, 540 | "engines": { 541 | "node": ">=0.10.0" 542 | } 543 | }, 544 | "node_modules/path-is-absolute": { 545 | "version": "1.0.1", 546 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 547 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 548 | "engines": { 549 | "node": ">=0.10.0" 550 | } 551 | }, 552 | "node_modules/path-parse": { 553 | "version": "1.0.6", 554 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", 555 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" 556 | }, 557 | "node_modules/path-type": { 558 | "version": "1.1.0", 559 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", 560 | "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", 561 | "dependencies": { 562 | "graceful-fs": "^4.1.2", 563 | "pify": "^2.0.0", 564 | "pinkie-promise": "^2.0.0" 565 | }, 566 | "engines": { 567 | "node": ">=0.10.0" 568 | } 569 | }, 570 | "node_modules/picomatch": { 571 | "version": "2.2.2", 572 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", 573 | "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", 574 | "engines": { 575 | "node": ">=8.6" 576 | }, 577 | "funding": { 578 | "url": "https://github.com/sponsors/jonschlinkert" 579 | } 580 | }, 581 | "node_modules/pify": { 582 | "version": "2.3.0", 583 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 584 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 585 | "engines": { 586 | "node": ">=0.10.0" 587 | } 588 | }, 589 | "node_modules/pinkie": { 590 | "version": "2.0.4", 591 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 592 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 593 | "engines": { 594 | "node": ">=0.10.0" 595 | } 596 | }, 597 | "node_modules/pinkie-promise": { 598 | "version": "2.0.1", 599 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 600 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 601 | "dependencies": { 602 | "pinkie": "^2.0.0" 603 | }, 604 | "engines": { 605 | "node": ">=0.10.0" 606 | } 607 | }, 608 | "node_modules/read-pkg": { 609 | "version": "1.1.0", 610 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", 611 | "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", 612 | "dependencies": { 613 | "load-json-file": "^1.0.0", 614 | "normalize-package-data": "^2.3.2", 615 | "path-type": "^1.0.0" 616 | }, 617 | "engines": { 618 | "node": ">=0.10.0" 619 | } 620 | }, 621 | "node_modules/read-pkg-up": { 622 | "version": "1.0.1", 623 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", 624 | "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", 625 | "dependencies": { 626 | "find-up": "^1.0.0", 627 | "read-pkg": "^1.0.0" 628 | }, 629 | "engines": { 630 | "node": ">=0.10.0" 631 | } 632 | }, 633 | "node_modules/readdirp": { 634 | "version": "3.5.0", 635 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", 636 | "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", 637 | "dependencies": { 638 | "picomatch": "^2.2.1" 639 | }, 640 | "engines": { 641 | "node": ">=8.10.0" 642 | } 643 | }, 644 | "node_modules/redent": { 645 | "version": "1.0.0", 646 | "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", 647 | "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", 648 | "dependencies": { 649 | "indent-string": "^2.1.0", 650 | "strip-indent": "^1.0.1" 651 | }, 652 | "engines": { 653 | "node": ">=0.10.0" 654 | } 655 | }, 656 | "node_modules/repeating": { 657 | "version": "2.0.1", 658 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", 659 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", 660 | "dependencies": { 661 | "is-finite": "^1.0.0" 662 | }, 663 | "engines": { 664 | "node": ">=0.10.0" 665 | } 666 | }, 667 | "node_modules/resolve": { 668 | "version": "1.19.0", 669 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", 670 | "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", 671 | "dependencies": { 672 | "is-core-module": "^2.1.0", 673 | "path-parse": "^1.0.6" 674 | }, 675 | "funding": { 676 | "url": "https://github.com/sponsors/ljharb" 677 | } 678 | }, 679 | "node_modules/rimraf": { 680 | "version": "2.7.1", 681 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", 682 | "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", 683 | "dependencies": { 684 | "glob": "^7.1.3" 685 | }, 686 | "bin": { 687 | "rimraf": "bin.js" 688 | } 689 | }, 690 | "node_modules/semver": { 691 | "version": "5.7.1", 692 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 693 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 694 | "bin": { 695 | "semver": "bin/semver" 696 | } 697 | }, 698 | "node_modules/signal-exit": { 699 | "version": "3.0.3", 700 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", 701 | "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" 702 | }, 703 | "node_modules/source-map": { 704 | "version": "0.6.1", 705 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 706 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 707 | "engines": { 708 | "node": ">=0.10.0" 709 | } 710 | }, 711 | "node_modules/source-map-support": { 712 | "version": "0.5.19", 713 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", 714 | "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", 715 | "dependencies": { 716 | "buffer-from": "^1.0.0", 717 | "source-map": "^0.6.0" 718 | } 719 | }, 720 | "node_modules/spdx-correct": { 721 | "version": "3.1.1", 722 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", 723 | "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", 724 | "dependencies": { 725 | "spdx-expression-parse": "^3.0.0", 726 | "spdx-license-ids": "^3.0.0" 727 | } 728 | }, 729 | "node_modules/spdx-exceptions": { 730 | "version": "2.3.0", 731 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", 732 | "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" 733 | }, 734 | "node_modules/spdx-expression-parse": { 735 | "version": "3.0.1", 736 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", 737 | "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", 738 | "dependencies": { 739 | "spdx-exceptions": "^2.1.0", 740 | "spdx-license-ids": "^3.0.0" 741 | } 742 | }, 743 | "node_modules/spdx-license-ids": { 744 | "version": "3.0.7", 745 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", 746 | "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==" 747 | }, 748 | "node_modules/strip-bom": { 749 | "version": "2.0.0", 750 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", 751 | "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", 752 | "dependencies": { 753 | "is-utf8": "^0.2.0" 754 | }, 755 | "engines": { 756 | "node": ">=0.10.0" 757 | } 758 | }, 759 | "node_modules/strip-indent": { 760 | "version": "1.0.1", 761 | "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", 762 | "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", 763 | "dependencies": { 764 | "get-stdin": "^4.0.1" 765 | }, 766 | "bin": { 767 | "strip-indent": "cli.js" 768 | }, 769 | "engines": { 770 | "node": ">=0.10.0" 771 | } 772 | }, 773 | "node_modules/strip-json-comments": { 774 | "version": "2.0.1", 775 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 776 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 777 | "engines": { 778 | "node": ">=0.10.0" 779 | } 780 | }, 781 | "node_modules/to-regex-range": { 782 | "version": "5.0.1", 783 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 784 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 785 | "dependencies": { 786 | "is-number": "^7.0.0" 787 | }, 788 | "engines": { 789 | "node": ">=8.0" 790 | } 791 | }, 792 | "node_modules/tree-kill": { 793 | "version": "1.2.2", 794 | "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", 795 | "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", 796 | "bin": { 797 | "tree-kill": "cli.js" 798 | } 799 | }, 800 | "node_modules/trim-newlines": { 801 | "version": "1.0.0", 802 | "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", 803 | "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", 804 | "engines": { 805 | "node": ">=0.10.0" 806 | } 807 | }, 808 | "node_modules/ts-node": { 809 | "version": "9.1.1", 810 | "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", 811 | "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", 812 | "dependencies": { 813 | "arg": "^4.1.0", 814 | "create-require": "^1.1.0", 815 | "diff": "^4.0.1", 816 | "make-error": "^1.1.1", 817 | "source-map-support": "^0.5.17", 818 | "yn": "3.1.1" 819 | }, 820 | "bin": { 821 | "ts-node": "dist/bin.js", 822 | "ts-node-script": "dist/bin-script.js", 823 | "ts-node-transpile-only": "dist/bin-transpile.js", 824 | "ts-script": "dist/bin-script-deprecated.js" 825 | }, 826 | "engines": { 827 | "node": ">=10.0.0" 828 | }, 829 | "peerDependencies": { 830 | "typescript": ">=2.7" 831 | } 832 | }, 833 | "node_modules/ts-node-dev": { 834 | "version": "1.1.1", 835 | "resolved": "https://registry.npmjs.org/ts-node-dev/-/ts-node-dev-1.1.1.tgz", 836 | "integrity": "sha512-kAO8LUZgXZSY0+PucMPsQ0Bbdv0x+lgbN7j8gcD4PuTI4uKC6YchekaspmYTBNilkiu+rQYkWJA7cK+Q8/B0tQ==", 837 | "dependencies": { 838 | "chokidar": "^3.4.0", 839 | "dateformat": "~1.0.4-1.2.3", 840 | "dynamic-dedupe": "^0.3.0", 841 | "minimist": "^1.2.5", 842 | "mkdirp": "^1.0.4", 843 | "resolve": "^1.0.0", 844 | "rimraf": "^2.6.1", 845 | "source-map-support": "^0.5.12", 846 | "tree-kill": "^1.2.2", 847 | "ts-node": "^9.0.0", 848 | "tsconfig": "^7.0.0" 849 | }, 850 | "bin": { 851 | "ts-node-dev": "lib/bin.js", 852 | "tsnd": "lib/bin.js" 853 | }, 854 | "engines": { 855 | "node": ">=0.8.0" 856 | }, 857 | "peerDependencies": { 858 | "node-notifier": "*", 859 | "typescript": "*" 860 | }, 861 | "peerDependenciesMeta": { 862 | "node-notifier": { 863 | "optional": true 864 | } 865 | } 866 | }, 867 | "node_modules/tsconfig": { 868 | "version": "7.0.0", 869 | "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-7.0.0.tgz", 870 | "integrity": "sha512-vZXmzPrL+EmC4T/4rVlT2jNVMWCi/O4DIiSj3UHg1OE5kCKbk4mfrXc6dZksLgRM/TZlKnousKH9bbTazUWRRw==", 871 | "dependencies": { 872 | "@types/strip-bom": "^3.0.0", 873 | "@types/strip-json-comments": "0.0.30", 874 | "strip-bom": "^3.0.0", 875 | "strip-json-comments": "^2.0.0" 876 | } 877 | }, 878 | "node_modules/tsconfig/node_modules/strip-bom": { 879 | "version": "3.0.0", 880 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 881 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", 882 | "engines": { 883 | "node": ">=4" 884 | } 885 | }, 886 | "node_modules/typescript": { 887 | "version": "4.1.3", 888 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", 889 | "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==", 890 | "bin": { 891 | "tsc": "bin/tsc", 892 | "tsserver": "bin/tsserver" 893 | }, 894 | "engines": { 895 | "node": ">=4.2.0" 896 | } 897 | }, 898 | "node_modules/validate-npm-package-license": { 899 | "version": "3.0.4", 900 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", 901 | "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", 902 | "dependencies": { 903 | "spdx-correct": "^3.0.0", 904 | "spdx-expression-parse": "^3.0.0" 905 | } 906 | }, 907 | "node_modules/wrappy": { 908 | "version": "1.0.2", 909 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 910 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 911 | }, 912 | "node_modules/xtend": { 913 | "version": "4.0.2", 914 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 915 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", 916 | "engines": { 917 | "node": ">=0.4" 918 | } 919 | }, 920 | "node_modules/yn": { 921 | "version": "3.1.1", 922 | "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", 923 | "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", 924 | "engines": { 925 | "node": ">=6" 926 | } 927 | }, 928 | "packages/app": { 929 | "name": "@monorepo-typescript/app", 930 | "version": "2.0.3", 931 | "license": "ISC", 932 | "dependencies": { 933 | "@monorepo-typescript/helpers": "^2.0.0", 934 | "@monorepo-typescript/types": "^2.0.0", 935 | "ts-node-dev": "^1.1.1" 936 | } 937 | }, 938 | "packages/helpers": { 939 | "name": "@monorepo-typescript/helpers", 940 | "version": "2.0.3", 941 | "license": "ISC" 942 | }, 943 | "packages/types": { 944 | "name": "@monorepo-typescript/types", 945 | "version": "2.0.3", 946 | "license": "ISC" 947 | } 948 | }, 949 | "dependencies": { 950 | "@monorepo-typescript/app": { 951 | "version": "file:packages/app", 952 | "requires": { 953 | "@monorepo-typescript/helpers": "^2.0.0", 954 | "@monorepo-typescript/types": "^2.0.0", 955 | "ts-node-dev": "^1.1.1" 956 | } 957 | }, 958 | "@monorepo-typescript/helpers": { 959 | "version": "file:packages/helpers" 960 | }, 961 | "@monorepo-typescript/types": { 962 | "version": "file:packages/types" 963 | }, 964 | "@types/strip-bom": { 965 | "version": "3.0.0", 966 | "resolved": "https://registry.npmjs.org/@types/strip-bom/-/strip-bom-3.0.0.tgz", 967 | "integrity": "sha1-FKjsOVbC6B7bdSB5CuzyHCkK69I=" 968 | }, 969 | "@types/strip-json-comments": { 970 | "version": "0.0.30", 971 | "resolved": "https://registry.npmjs.org/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz", 972 | "integrity": "sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ==" 973 | }, 974 | "anymatch": { 975 | "version": "3.1.1", 976 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", 977 | "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", 978 | "requires": { 979 | "normalize-path": "^3.0.0", 980 | "picomatch": "^2.0.4" 981 | } 982 | }, 983 | "arg": { 984 | "version": "4.1.3", 985 | "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", 986 | "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" 987 | }, 988 | "array-find-index": { 989 | "version": "1.0.2", 990 | "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", 991 | "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" 992 | }, 993 | "balanced-match": { 994 | "version": "1.0.0", 995 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 996 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 997 | }, 998 | "binary-extensions": { 999 | "version": "2.2.0", 1000 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 1001 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" 1002 | }, 1003 | "brace-expansion": { 1004 | "version": "1.1.11", 1005 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 1006 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 1007 | "requires": { 1008 | "balanced-match": "^1.0.0", 1009 | "concat-map": "0.0.1" 1010 | } 1011 | }, 1012 | "braces": { 1013 | "version": "3.0.2", 1014 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 1015 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 1016 | "requires": { 1017 | "fill-range": "^7.0.1" 1018 | } 1019 | }, 1020 | "buffer-from": { 1021 | "version": "1.1.1", 1022 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 1023 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" 1024 | }, 1025 | "camelcase": { 1026 | "version": "2.1.1", 1027 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", 1028 | "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" 1029 | }, 1030 | "camelcase-keys": { 1031 | "version": "2.1.0", 1032 | "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", 1033 | "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", 1034 | "requires": { 1035 | "camelcase": "^2.0.0", 1036 | "map-obj": "^1.0.0" 1037 | } 1038 | }, 1039 | "chokidar": { 1040 | "version": "3.5.1", 1041 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", 1042 | "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", 1043 | "requires": { 1044 | "anymatch": "~3.1.1", 1045 | "braces": "~3.0.2", 1046 | "fsevents": "~2.3.1", 1047 | "glob-parent": "~5.1.0", 1048 | "is-binary-path": "~2.1.0", 1049 | "is-glob": "~4.0.1", 1050 | "normalize-path": "~3.0.0", 1051 | "readdirp": "~3.5.0" 1052 | } 1053 | }, 1054 | "concat-map": { 1055 | "version": "0.0.1", 1056 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1057 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 1058 | }, 1059 | "create-require": { 1060 | "version": "1.1.1", 1061 | "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", 1062 | "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" 1063 | }, 1064 | "currently-unhandled": { 1065 | "version": "0.4.1", 1066 | "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", 1067 | "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", 1068 | "requires": { 1069 | "array-find-index": "^1.0.1" 1070 | } 1071 | }, 1072 | "dateformat": { 1073 | "version": "1.0.12", 1074 | "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", 1075 | "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", 1076 | "requires": { 1077 | "get-stdin": "^4.0.1", 1078 | "meow": "^3.3.0" 1079 | } 1080 | }, 1081 | "decamelize": { 1082 | "version": "1.2.0", 1083 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 1084 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" 1085 | }, 1086 | "diff": { 1087 | "version": "4.0.2", 1088 | "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", 1089 | "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" 1090 | }, 1091 | "dynamic-dedupe": { 1092 | "version": "0.3.0", 1093 | "resolved": "https://registry.npmjs.org/dynamic-dedupe/-/dynamic-dedupe-0.3.0.tgz", 1094 | "integrity": "sha1-BuRMIj9eTpTXjvnbI6ZRXOL5YqE=", 1095 | "requires": { 1096 | "xtend": "^4.0.0" 1097 | } 1098 | }, 1099 | "error-ex": { 1100 | "version": "1.3.2", 1101 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", 1102 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", 1103 | "requires": { 1104 | "is-arrayish": "^0.2.1" 1105 | } 1106 | }, 1107 | "fill-range": { 1108 | "version": "7.0.1", 1109 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 1110 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 1111 | "requires": { 1112 | "to-regex-range": "^5.0.1" 1113 | } 1114 | }, 1115 | "find-up": { 1116 | "version": "1.1.2", 1117 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", 1118 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", 1119 | "requires": { 1120 | "path-exists": "^2.0.0", 1121 | "pinkie-promise": "^2.0.0" 1122 | } 1123 | }, 1124 | "fs.realpath": { 1125 | "version": "1.0.0", 1126 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1127 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 1128 | }, 1129 | "function-bind": { 1130 | "version": "1.1.1", 1131 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 1132 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 1133 | }, 1134 | "get-stdin": { 1135 | "version": "4.0.1", 1136 | "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", 1137 | "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" 1138 | }, 1139 | "glob": { 1140 | "version": "7.1.6", 1141 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 1142 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", 1143 | "requires": { 1144 | "fs.realpath": "^1.0.0", 1145 | "inflight": "^1.0.4", 1146 | "inherits": "2", 1147 | "minimatch": "^3.0.4", 1148 | "once": "^1.3.0", 1149 | "path-is-absolute": "^1.0.0" 1150 | } 1151 | }, 1152 | "glob-parent": { 1153 | "version": "5.1.1", 1154 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", 1155 | "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", 1156 | "requires": { 1157 | "is-glob": "^4.0.1" 1158 | } 1159 | }, 1160 | "graceful-fs": { 1161 | "version": "4.2.4", 1162 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 1163 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" 1164 | }, 1165 | "has": { 1166 | "version": "1.0.3", 1167 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 1168 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 1169 | "requires": { 1170 | "function-bind": "^1.1.1" 1171 | } 1172 | }, 1173 | "hosted-git-info": { 1174 | "version": "2.8.8", 1175 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", 1176 | "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" 1177 | }, 1178 | "indent-string": { 1179 | "version": "2.1.0", 1180 | "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", 1181 | "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", 1182 | "requires": { 1183 | "repeating": "^2.0.0" 1184 | } 1185 | }, 1186 | "inflight": { 1187 | "version": "1.0.6", 1188 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1189 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 1190 | "requires": { 1191 | "once": "^1.3.0", 1192 | "wrappy": "1" 1193 | } 1194 | }, 1195 | "inherits": { 1196 | "version": "2.0.4", 1197 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1198 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 1199 | }, 1200 | "is-arrayish": { 1201 | "version": "0.2.1", 1202 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 1203 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" 1204 | }, 1205 | "is-binary-path": { 1206 | "version": "2.1.0", 1207 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 1208 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 1209 | "requires": { 1210 | "binary-extensions": "^2.0.0" 1211 | } 1212 | }, 1213 | "is-core-module": { 1214 | "version": "2.2.0", 1215 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", 1216 | "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", 1217 | "requires": { 1218 | "has": "^1.0.3" 1219 | } 1220 | }, 1221 | "is-extglob": { 1222 | "version": "2.1.1", 1223 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1224 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" 1225 | }, 1226 | "is-finite": { 1227 | "version": "1.1.0", 1228 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", 1229 | "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==" 1230 | }, 1231 | "is-glob": { 1232 | "version": "4.0.1", 1233 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 1234 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 1235 | "requires": { 1236 | "is-extglob": "^2.1.1" 1237 | } 1238 | }, 1239 | "is-number": { 1240 | "version": "7.0.0", 1241 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1242 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" 1243 | }, 1244 | "is-utf8": { 1245 | "version": "0.2.1", 1246 | "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", 1247 | "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" 1248 | }, 1249 | "load-json-file": { 1250 | "version": "1.1.0", 1251 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", 1252 | "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", 1253 | "requires": { 1254 | "graceful-fs": "^4.1.2", 1255 | "parse-json": "^2.2.0", 1256 | "pify": "^2.0.0", 1257 | "pinkie-promise": "^2.0.0", 1258 | "strip-bom": "^2.0.0" 1259 | } 1260 | }, 1261 | "loud-rejection": { 1262 | "version": "1.6.0", 1263 | "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", 1264 | "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", 1265 | "requires": { 1266 | "currently-unhandled": "^0.4.1", 1267 | "signal-exit": "^3.0.0" 1268 | } 1269 | }, 1270 | "make-error": { 1271 | "version": "1.3.6", 1272 | "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", 1273 | "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" 1274 | }, 1275 | "map-obj": { 1276 | "version": "1.0.1", 1277 | "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", 1278 | "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" 1279 | }, 1280 | "meow": { 1281 | "version": "3.7.0", 1282 | "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", 1283 | "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", 1284 | "requires": { 1285 | "camelcase-keys": "^2.0.0", 1286 | "decamelize": "^1.1.2", 1287 | "loud-rejection": "^1.0.0", 1288 | "map-obj": "^1.0.1", 1289 | "minimist": "^1.1.3", 1290 | "normalize-package-data": "^2.3.4", 1291 | "object-assign": "^4.0.1", 1292 | "read-pkg-up": "^1.0.1", 1293 | "redent": "^1.0.0", 1294 | "trim-newlines": "^1.0.0" 1295 | } 1296 | }, 1297 | "minimatch": { 1298 | "version": "3.0.4", 1299 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 1300 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 1301 | "requires": { 1302 | "brace-expansion": "^1.1.7" 1303 | } 1304 | }, 1305 | "minimist": { 1306 | "version": "1.2.5", 1307 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", 1308 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" 1309 | }, 1310 | "mkdirp": { 1311 | "version": "1.0.4", 1312 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", 1313 | "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" 1314 | }, 1315 | "normalize-package-data": { 1316 | "version": "2.5.0", 1317 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", 1318 | "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", 1319 | "requires": { 1320 | "hosted-git-info": "^2.1.4", 1321 | "resolve": "^1.10.0", 1322 | "semver": "2 || 3 || 4 || 5", 1323 | "validate-npm-package-license": "^3.0.1" 1324 | } 1325 | }, 1326 | "normalize-path": { 1327 | "version": "3.0.0", 1328 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1329 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" 1330 | }, 1331 | "object-assign": { 1332 | "version": "4.1.1", 1333 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 1334 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 1335 | }, 1336 | "once": { 1337 | "version": "1.4.0", 1338 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1339 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 1340 | "requires": { 1341 | "wrappy": "1" 1342 | } 1343 | }, 1344 | "parse-json": { 1345 | "version": "2.2.0", 1346 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 1347 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 1348 | "requires": { 1349 | "error-ex": "^1.2.0" 1350 | } 1351 | }, 1352 | "path-exists": { 1353 | "version": "2.1.0", 1354 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", 1355 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", 1356 | "requires": { 1357 | "pinkie-promise": "^2.0.0" 1358 | } 1359 | }, 1360 | "path-is-absolute": { 1361 | "version": "1.0.1", 1362 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 1363 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 1364 | }, 1365 | "path-parse": { 1366 | "version": "1.0.6", 1367 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", 1368 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" 1369 | }, 1370 | "path-type": { 1371 | "version": "1.1.0", 1372 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", 1373 | "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", 1374 | "requires": { 1375 | "graceful-fs": "^4.1.2", 1376 | "pify": "^2.0.0", 1377 | "pinkie-promise": "^2.0.0" 1378 | } 1379 | }, 1380 | "picomatch": { 1381 | "version": "2.2.2", 1382 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", 1383 | "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" 1384 | }, 1385 | "pify": { 1386 | "version": "2.3.0", 1387 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 1388 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" 1389 | }, 1390 | "pinkie": { 1391 | "version": "2.0.4", 1392 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 1393 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" 1394 | }, 1395 | "pinkie-promise": { 1396 | "version": "2.0.1", 1397 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 1398 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 1399 | "requires": { 1400 | "pinkie": "^2.0.0" 1401 | } 1402 | }, 1403 | "read-pkg": { 1404 | "version": "1.1.0", 1405 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", 1406 | "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", 1407 | "requires": { 1408 | "load-json-file": "^1.0.0", 1409 | "normalize-package-data": "^2.3.2", 1410 | "path-type": "^1.0.0" 1411 | } 1412 | }, 1413 | "read-pkg-up": { 1414 | "version": "1.0.1", 1415 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", 1416 | "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", 1417 | "requires": { 1418 | "find-up": "^1.0.0", 1419 | "read-pkg": "^1.0.0" 1420 | } 1421 | }, 1422 | "readdirp": { 1423 | "version": "3.5.0", 1424 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", 1425 | "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", 1426 | "requires": { 1427 | "picomatch": "^2.2.1" 1428 | } 1429 | }, 1430 | "redent": { 1431 | "version": "1.0.0", 1432 | "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", 1433 | "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", 1434 | "requires": { 1435 | "indent-string": "^2.1.0", 1436 | "strip-indent": "^1.0.1" 1437 | } 1438 | }, 1439 | "repeating": { 1440 | "version": "2.0.1", 1441 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", 1442 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", 1443 | "requires": { 1444 | "is-finite": "^1.0.0" 1445 | } 1446 | }, 1447 | "resolve": { 1448 | "version": "1.19.0", 1449 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", 1450 | "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", 1451 | "requires": { 1452 | "is-core-module": "^2.1.0", 1453 | "path-parse": "^1.0.6" 1454 | } 1455 | }, 1456 | "rimraf": { 1457 | "version": "2.7.1", 1458 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", 1459 | "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", 1460 | "requires": { 1461 | "glob": "^7.1.3" 1462 | } 1463 | }, 1464 | "semver": { 1465 | "version": "5.7.1", 1466 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 1467 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" 1468 | }, 1469 | "signal-exit": { 1470 | "version": "3.0.3", 1471 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", 1472 | "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" 1473 | }, 1474 | "source-map": { 1475 | "version": "0.6.1", 1476 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 1477 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" 1478 | }, 1479 | "source-map-support": { 1480 | "version": "0.5.19", 1481 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", 1482 | "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", 1483 | "requires": { 1484 | "buffer-from": "^1.0.0", 1485 | "source-map": "^0.6.0" 1486 | } 1487 | }, 1488 | "spdx-correct": { 1489 | "version": "3.1.1", 1490 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", 1491 | "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", 1492 | "requires": { 1493 | "spdx-expression-parse": "^3.0.0", 1494 | "spdx-license-ids": "^3.0.0" 1495 | } 1496 | }, 1497 | "spdx-exceptions": { 1498 | "version": "2.3.0", 1499 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", 1500 | "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" 1501 | }, 1502 | "spdx-expression-parse": { 1503 | "version": "3.0.1", 1504 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", 1505 | "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", 1506 | "requires": { 1507 | "spdx-exceptions": "^2.1.0", 1508 | "spdx-license-ids": "^3.0.0" 1509 | } 1510 | }, 1511 | "spdx-license-ids": { 1512 | "version": "3.0.7", 1513 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", 1514 | "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==" 1515 | }, 1516 | "strip-bom": { 1517 | "version": "2.0.0", 1518 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", 1519 | "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", 1520 | "requires": { 1521 | "is-utf8": "^0.2.0" 1522 | } 1523 | }, 1524 | "strip-indent": { 1525 | "version": "1.0.1", 1526 | "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", 1527 | "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", 1528 | "requires": { 1529 | "get-stdin": "^4.0.1" 1530 | } 1531 | }, 1532 | "strip-json-comments": { 1533 | "version": "2.0.1", 1534 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 1535 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" 1536 | }, 1537 | "to-regex-range": { 1538 | "version": "5.0.1", 1539 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 1540 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 1541 | "requires": { 1542 | "is-number": "^7.0.0" 1543 | } 1544 | }, 1545 | "tree-kill": { 1546 | "version": "1.2.2", 1547 | "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", 1548 | "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==" 1549 | }, 1550 | "trim-newlines": { 1551 | "version": "1.0.0", 1552 | "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", 1553 | "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" 1554 | }, 1555 | "ts-node": { 1556 | "version": "9.1.1", 1557 | "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", 1558 | "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", 1559 | "requires": { 1560 | "arg": "^4.1.0", 1561 | "create-require": "^1.1.0", 1562 | "diff": "^4.0.1", 1563 | "make-error": "^1.1.1", 1564 | "source-map-support": "^0.5.17", 1565 | "yn": "3.1.1" 1566 | } 1567 | }, 1568 | "ts-node-dev": { 1569 | "version": "1.1.1", 1570 | "resolved": "https://registry.npmjs.org/ts-node-dev/-/ts-node-dev-1.1.1.tgz", 1571 | "integrity": "sha512-kAO8LUZgXZSY0+PucMPsQ0Bbdv0x+lgbN7j8gcD4PuTI4uKC6YchekaspmYTBNilkiu+rQYkWJA7cK+Q8/B0tQ==", 1572 | "requires": { 1573 | "chokidar": "^3.4.0", 1574 | "dateformat": "~1.0.4-1.2.3", 1575 | "dynamic-dedupe": "^0.3.0", 1576 | "minimist": "^1.2.5", 1577 | "mkdirp": "^1.0.4", 1578 | "resolve": "^1.0.0", 1579 | "rimraf": "^2.6.1", 1580 | "source-map-support": "^0.5.12", 1581 | "tree-kill": "^1.2.2", 1582 | "ts-node": "^9.0.0", 1583 | "tsconfig": "^7.0.0" 1584 | } 1585 | }, 1586 | "tsconfig": { 1587 | "version": "7.0.0", 1588 | "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-7.0.0.tgz", 1589 | "integrity": "sha512-vZXmzPrL+EmC4T/4rVlT2jNVMWCi/O4DIiSj3UHg1OE5kCKbk4mfrXc6dZksLgRM/TZlKnousKH9bbTazUWRRw==", 1590 | "requires": { 1591 | "@types/strip-bom": "^3.0.0", 1592 | "@types/strip-json-comments": "0.0.30", 1593 | "strip-bom": "^3.0.0", 1594 | "strip-json-comments": "^2.0.0" 1595 | }, 1596 | "dependencies": { 1597 | "strip-bom": { 1598 | "version": "3.0.0", 1599 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 1600 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" 1601 | } 1602 | } 1603 | }, 1604 | "typescript": { 1605 | "version": "4.1.3", 1606 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", 1607 | "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==" 1608 | }, 1609 | "validate-npm-package-license": { 1610 | "version": "3.0.4", 1611 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", 1612 | "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", 1613 | "requires": { 1614 | "spdx-correct": "^3.0.0", 1615 | "spdx-expression-parse": "^3.0.0" 1616 | } 1617 | }, 1618 | "wrappy": { 1619 | "version": "1.0.2", 1620 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 1621 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 1622 | }, 1623 | "xtend": { 1624 | "version": "4.0.2", 1625 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 1626 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" 1627 | }, 1628 | "yn": { 1629 | "version": "3.1.1", 1630 | "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", 1631 | "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" 1632 | } 1633 | } 1634 | } 1635 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "monorepo-typescript", 3 | "version": "2.0.15", 4 | "license": "ISC", 5 | "author": "EugeneKvach", 6 | "workspaces": [ 7 | "./packages/*" 8 | ], 9 | "scripts": { 10 | "build:app": "npm run build --prefix packages/app", 11 | "build:types": "npm run build --prefix packages/types", 12 | "build:helpers": "npm run build --prefix packages/helpers", 13 | "build:all": "npm run build:app & npm run build:types & npm run build:helpers", 14 | "start": "npm run start:app --prefix packages/app" 15 | }, 16 | "dependencies": { 17 | "typescript": "^4.1.3" 18 | }, 19 | "engines": { 20 | "npm": "^7.0.0" 21 | }, 22 | "devDependencies": {} 23 | } 24 | -------------------------------------------------------------------------------- /packages/app/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist 3 | -------------------------------------------------------------------------------- /packages/app/index.ts: -------------------------------------------------------------------------------- 1 | import {someLogic} from './src' 2 | 3 | export const app = async () => { 4 | console.log('app started'); 5 | await someLogic('Eugene', 33, 'gray') 6 | console.log('app finished'); 7 | } 8 | -------------------------------------------------------------------------------- /packages/app/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@monorepo-typescript/app", 3 | "version": "2.0.15", 4 | "main": "dist/index.ts", 5 | "types": "dist/index.d.ts", 6 | "license": "ISC", 7 | "publishConfig": { 8 | "access": "public" 9 | }, 10 | "repository": { 11 | "type": "git", 12 | "url": "https://github.com/euhoo/monorepo-typescript.git", 13 | "directory": "packages/app" 14 | }, 15 | "scripts": { 16 | "build": "tsc", 17 | "start:app": "ts-node-dev index.ts", 18 | "prepare": "npm run build" 19 | }, 20 | 21 | "dependencies": { 22 | "ts-node-dev": "^1.1.1", 23 | "@monorepo-typescript/types": "^2.0.0", 24 | "@monorepo-typescript/helpers": "^2.0.0" 25 | }, 26 | "files": [ 27 | "dist" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /packages/app/src/index.ts: -------------------------------------------------------------------------------- 1 | import {Dog, DoWork, Man, Work} from '@monorepo-typescript/types' 2 | import {DogNames} from "@monorepo-typescript/types/src/enums"; 3 | 4 | 5 | export const someLogic = async (name: string, age: number, eyeColor: string) => { 6 | const luckyOwner: Man = { 7 | age, 8 | eyeColor, 9 | name 10 | } 11 | 12 | const lucky: Dog = { 13 | say(luckyOwner): void { 14 | console.log(`Hello, ${luckyOwner.name}`); 15 | }, 16 | age: 1, 17 | name: DogNames.LUCKY 18 | } 19 | 20 | lucky.say(luckyOwner) 21 | class BadWork implements Work { 22 | isDone: boolean; 23 | worker: Man; 24 | constructor(worker: Man) { 25 | this.worker = worker 26 | } 27 | } 28 | class WorkDone implements DoWork { 29 | work: Work 30 | constructor(work: Work) { 31 | this.work = work 32 | } 33 | bad(): void { 34 | console.log(`${this.work.worker.name} doing bad work`); 35 | } 36 | 37 | good(): void { 38 | console.log(`${this.work.worker.name} doing good work`); 39 | } 40 | 41 | async isDone(): Promise { 42 | return this.work.isDone 43 | } 44 | 45 | } 46 | const someWork = new BadWork(luckyOwner); 47 | 48 | const someWorkDone = new WorkDone(someWork); 49 | someWorkDone.bad(); 50 | const isWorkDone = await someWorkDone.isDone(); 51 | console.log(`The work is ${isWorkDone ? 'done' : "didn't done yet"}`); 52 | } 53 | 54 | -------------------------------------------------------------------------------- /packages/app/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "experimentalDecorators": true, 4 | "module": "commonjs", 5 | "esModuleInterop": true, 6 | "allowSyntheticDefaultImports": true, 7 | "allowJs": true, 8 | "target": "ES2020", 9 | "noImplicitAny": true, 10 | "declaration": true, // Создавать ли соответствующие файлы ".d.ts"? 11 | "emitDecoratorMetadata": true, 12 | "moduleResolution": "node", 13 | "sourceMap": true, 14 | "skipLibCheck": true, 15 | "baseUrl": ".", 16 | "outDir": "dist", 17 | "paths": { 18 | "*": [ 19 | "node_modules/*" 20 | ] 21 | } 22 | }, 23 | "files": [ 24 | "index.ts" 25 | ], 26 | } 27 | -------------------------------------------------------------------------------- /packages/helpers/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist 3 | -------------------------------------------------------------------------------- /packages/helpers/index.ts: -------------------------------------------------------------------------------- 1 | export * from './src' 2 | -------------------------------------------------------------------------------- /packages/helpers/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@monorepo-typescript/helpers", 3 | "version": "2.0.15", 4 | "main": "dist/index.js", 5 | "types": "dist/index.d.ts", 6 | "license": "ISC", 7 | "publishConfig": { 8 | "access": "public" 9 | }, 10 | "repository": { 11 | "type": "git", 12 | "url": "https://github.com/euhoo/monorepo-typescript.git", 13 | "directory": "packages/helpers" 14 | }, 15 | "scripts": { 16 | "build": "tsc", 17 | "prepare": "npm run build" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /packages/helpers/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from './utils' 2 | -------------------------------------------------------------------------------- /packages/helpers/src/utils/dateUtils.ts: -------------------------------------------------------------------------------- 1 | const getCurrentDate = (): Date => new Date() 2 | 3 | export const DateUtils = { 4 | getCurrentDate 5 | } 6 | -------------------------------------------------------------------------------- /packages/helpers/src/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './dateUtils' 2 | -------------------------------------------------------------------------------- /packages/helpers/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "experimentalDecorators": true, 4 | "module": "commonjs", 5 | "esModuleInterop": true, 6 | "allowSyntheticDefaultImports": true, 7 | "allowJs": true, 8 | "target": "ES2020", 9 | "noImplicitAny": true, 10 | "declaration": true, // Создавать ли соответствующие файлы ".d.ts"? 11 | "emitDecoratorMetadata": true, 12 | "moduleResolution": "node", 13 | "sourceMap": true, 14 | "skipLibCheck": true, 15 | "baseUrl": ".", 16 | "outDir": "dist", 17 | "paths": { 18 | "*": [ 19 | "node_modules/*" 20 | ] 21 | } 22 | }, 23 | "files": [ 24 | "index.ts" 25 | ], 26 | } 27 | -------------------------------------------------------------------------------- /packages/types/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist 3 | -------------------------------------------------------------------------------- /packages/types/index.ts: -------------------------------------------------------------------------------- 1 | export * from './src'; 2 | 3 | 4 | -------------------------------------------------------------------------------- /packages/types/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@monorepo-typescript/types", 3 | "version": "2.0.15", 4 | "main": "dist/index.js", 5 | "types": "dist/index.d.ts", 6 | "license": "ISC", 7 | "publishConfig": { 8 | "access": "public" 9 | }, 10 | "repository": { 11 | "type": "git", 12 | "url": "https://github.com/euhoo/monorepo-typescript.git", 13 | "directory": "packages/types" 14 | }, 15 | "scripts": { 16 | "build": "tsc", 17 | "prepare": "npm run build" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /packages/types/src/enums/dogNames.ts: -------------------------------------------------------------------------------- 1 | export enum DogNames { 2 | LUCKY = 'LUCKY', 3 | DOGGY = 'DOGGY', 4 | } 5 | -------------------------------------------------------------------------------- /packages/types/src/enums/index.ts: -------------------------------------------------------------------------------- 1 | export * from './dogNames' 2 | -------------------------------------------------------------------------------- /packages/types/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from './types' 2 | export * from './interfaces' 3 | -------------------------------------------------------------------------------- /packages/types/src/interfaces/doWork.ts: -------------------------------------------------------------------------------- 1 | import {Work} from "./work"; 2 | 3 | export interface DoWork { 4 | work: Work 5 | good: () => void 6 | bad: () => void 7 | isDone: () => Promise 8 | } 9 | -------------------------------------------------------------------------------- /packages/types/src/interfaces/index.ts: -------------------------------------------------------------------------------- 1 | export * from './doWork' 2 | export * from './work' 3 | -------------------------------------------------------------------------------- /packages/types/src/interfaces/work.ts: -------------------------------------------------------------------------------- 1 | import {Man} from "../types"; 2 | 3 | export interface Work { 4 | isDone: boolean 5 | worker: Man 6 | } 7 | -------------------------------------------------------------------------------- /packages/types/src/types/dog.ts: -------------------------------------------------------------------------------- 1 | import {DogNames} from "../enums"; 2 | import {Man} from "./man"; 3 | 4 | export type Dog = { 5 | name: DogNames 6 | age: number 7 | say: (owner: Man) => void 8 | } 9 | -------------------------------------------------------------------------------- /packages/types/src/types/index.ts: -------------------------------------------------------------------------------- 1 | export * from './dog' 2 | export * from './man' 3 | -------------------------------------------------------------------------------- /packages/types/src/types/man.ts: -------------------------------------------------------------------------------- 1 | export type Man = { 2 | age: number 3 | eyeColor: string 4 | name: string 5 | } 6 | -------------------------------------------------------------------------------- /packages/types/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "experimentalDecorators": true, 4 | "module": "commonjs", 5 | "esModuleInterop": true, 6 | "allowSyntheticDefaultImports": true, 7 | "allowJs": true, 8 | "target": "ES2020", 9 | "noImplicitAny": true, 10 | "declaration": true, // Создавать ли соответствующие файлы ".d.ts"? 11 | "emitDecoratorMetadata": true, 12 | "moduleResolution": "node", 13 | "sourceMap": true, 14 | "skipLibCheck": true, 15 | "baseUrl": ".", 16 | "outDir": "dist", 17 | "paths": { 18 | "*": [ 19 | "node_modules/*" 20 | ] 21 | } 22 | }, 23 | "files": [ 24 | "index.ts" 25 | ], 26 | } 27 | --------------------------------------------------------------------------------