├── .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 |
--------------------------------------------------------------------------------