@cenk1cenk2/oclif-common 6.0.4 → 6.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +6 -5
- package/dist/index.js +230 -228
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -185,10 +185,10 @@ declare class ParserService {
|
|
|
185
185
|
private readonly logger;
|
|
186
186
|
parsers: ClassType<GenericParser>[];
|
|
187
187
|
constructor(moduleRef: ModuleRef, fs: FileSystemService, logger: LoggerService);
|
|
188
|
-
|
|
188
|
+
byFt(file: string): GenericParser;
|
|
189
|
+
fetch<T extends GenericParser>(Parser: ClassType<T>): T;
|
|
189
190
|
inject<T extends GenericParser>(Parser: ClassType<T>): Promise<T>;
|
|
190
|
-
|
|
191
|
-
addParsers(...parsers: ClassType<GenericParser>[]): void;
|
|
191
|
+
register(...parsers: ClassType<GenericParser>[]): Promise<void>;
|
|
192
192
|
read<T = unknown>(file: string): Promise<T>;
|
|
193
193
|
write<T = LockableData>(file: string, data: T): Promise<void>;
|
|
194
194
|
parse<T = unknown>(file: string, data: string | Buffer): Promise<T>;
|
|
@@ -236,7 +236,7 @@ interface UnlockData extends CommonLockerData {
|
|
|
236
236
|
}
|
|
237
237
|
interface LockerServiceOptions {
|
|
238
238
|
file: string;
|
|
239
|
-
parser: GenericParser
|
|
239
|
+
parser: ClassType<GenericParser>;
|
|
240
240
|
root?: string[];
|
|
241
241
|
context?: string;
|
|
242
242
|
token?: InjectionToken;
|
|
@@ -245,11 +245,12 @@ interface LockerServiceOptions {
|
|
|
245
245
|
declare class LockerService<LockFile extends LockableData = LockableData> {
|
|
246
246
|
private readonly logger;
|
|
247
247
|
private readonly fs;
|
|
248
|
+
private readonly parser;
|
|
248
249
|
private readonly options;
|
|
249
250
|
readonly op: typeof op;
|
|
250
251
|
private toLock;
|
|
251
252
|
private toUnlock;
|
|
252
|
-
constructor(logger: LoggerService, fs: FileSystemService, options: LockerServiceOptions);
|
|
253
|
+
constructor(logger: LoggerService, fs: FileSystemService, parser: ParserService, options: LockerServiceOptions);
|
|
253
254
|
hasLock(): boolean;
|
|
254
255
|
hasUnlock(): boolean;
|
|
255
256
|
addLock<T extends LockableData = LockableData>(...data: LockData<T>[]): void;
|
package/dist/index.js
CHANGED
|
@@ -27,7 +27,7 @@ var HelpGroups;
|
|
|
27
27
|
})(HelpGroups || (HelpGroups = {}));
|
|
28
28
|
|
|
29
29
|
// src/lib/config/config.service.ts
|
|
30
|
-
import { Inject as Inject2, Injectable as
|
|
30
|
+
import { Inject as Inject2, Injectable as Injectable5 } from "@nestjs/common";
|
|
31
31
|
import op from "object-path-immutable";
|
|
32
32
|
import { join } from "path";
|
|
33
33
|
|
|
@@ -399,12 +399,13 @@ LoggerModule = _ts_decorate3([
|
|
|
399
399
|
], LoggerModule);
|
|
400
400
|
|
|
401
401
|
// src/lib/parser/parser.service.ts
|
|
402
|
-
import { Injectable as
|
|
402
|
+
import { Injectable as Injectable4 } from "@nestjs/common";
|
|
403
403
|
import { ModuleRef } from "@nestjs/core";
|
|
404
404
|
|
|
405
|
-
// src/lib/
|
|
405
|
+
// src/lib/fs/filesystem.service.ts
|
|
406
406
|
import { Injectable as Injectable3 } from "@nestjs/common";
|
|
407
|
-
import
|
|
407
|
+
import fs from "fs-extra";
|
|
408
|
+
import { extname, dirname } from "path";
|
|
408
409
|
function _ts_decorate4(decorators, target, key, desc) {
|
|
409
410
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
410
411
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
@@ -422,164 +423,7 @@ function _ts_metadata3(k, v) {
|
|
|
422
423
|
}
|
|
423
424
|
__name(_ts_metadata3, "_ts_metadata");
|
|
424
425
|
var _a4;
|
|
425
|
-
var
|
|
426
|
-
constructor(logger) {
|
|
427
|
-
__publicField(this, "logger");
|
|
428
|
-
__publicField(this, "LINE");
|
|
429
|
-
this.logger = logger;
|
|
430
|
-
this.LINE = /(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;
|
|
431
|
-
this.logger.setup(this.constructor.name);
|
|
432
|
-
}
|
|
433
|
-
parse(data) {
|
|
434
|
-
try {
|
|
435
|
-
return data.toString().split(EOL2).reduce((o, line) => {
|
|
436
|
-
const match = this.LINE.exec(line);
|
|
437
|
-
const key = match[1];
|
|
438
|
-
const value = match[2] ?? "";
|
|
439
|
-
return {
|
|
440
|
-
...o,
|
|
441
|
-
[key]: value
|
|
442
|
-
};
|
|
443
|
-
}, {});
|
|
444
|
-
} catch (e) {
|
|
445
|
-
this.logger.trace("Error during parsing environment file: %s", e.message);
|
|
446
|
-
throw e;
|
|
447
|
-
}
|
|
448
|
-
}
|
|
449
|
-
stringify(data) {
|
|
450
|
-
return Object.entries(data).map(([k, v]) => `${k}=${v}`).join(EOL2) + EOL2;
|
|
451
|
-
}
|
|
452
|
-
}, __name(_a4, "EnvironmentVariableParser"), __publicField(_a4, "extensions", [
|
|
453
|
-
"env"
|
|
454
|
-
]), _a4);
|
|
455
|
-
EnvironmentVariableParser = _ts_decorate4([
|
|
456
|
-
Injectable3(),
|
|
457
|
-
_ts_metadata3("design:type", Function),
|
|
458
|
-
_ts_metadata3("design:paramtypes", [
|
|
459
|
-
typeof LoggerService === "undefined" ? Object : LoggerService
|
|
460
|
-
])
|
|
461
|
-
], EnvironmentVariableParser);
|
|
462
|
-
|
|
463
|
-
// src/lib/parser/fts/json-parser.service.ts
|
|
464
|
-
import { Injectable as Injectable4 } from "@nestjs/common";
|
|
465
|
-
function _ts_decorate5(decorators, target, key, desc) {
|
|
466
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
467
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
468
|
-
r = Reflect.decorate(decorators, target, key, desc);
|
|
469
|
-
else
|
|
470
|
-
for (var i = decorators.length - 1; i >= 0; i--)
|
|
471
|
-
if (d = decorators[i])
|
|
472
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
473
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
474
|
-
}
|
|
475
|
-
__name(_ts_decorate5, "_ts_decorate");
|
|
476
|
-
function _ts_metadata4(k, v) {
|
|
477
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
478
|
-
return Reflect.metadata(k, v);
|
|
479
|
-
}
|
|
480
|
-
__name(_ts_metadata4, "_ts_metadata");
|
|
481
|
-
var _a5;
|
|
482
|
-
var JsonParser = (_a5 = class {
|
|
483
|
-
constructor(logger) {
|
|
484
|
-
__publicField(this, "logger");
|
|
485
|
-
this.logger = logger;
|
|
486
|
-
this.logger.setup(this.constructor.name);
|
|
487
|
-
}
|
|
488
|
-
parse(data) {
|
|
489
|
-
try {
|
|
490
|
-
return JSON.parse(data.toString());
|
|
491
|
-
} catch (e) {
|
|
492
|
-
this.logger.trace("Error during parsing JSON file: %s", e.message);
|
|
493
|
-
throw e;
|
|
494
|
-
}
|
|
495
|
-
}
|
|
496
|
-
stringify(data) {
|
|
497
|
-
return JSON.stringify(data, null, 2);
|
|
498
|
-
}
|
|
499
|
-
}, __name(_a5, "JsonParser"), __publicField(_a5, "extensions", [
|
|
500
|
-
"json"
|
|
501
|
-
]), _a5);
|
|
502
|
-
JsonParser = _ts_decorate5([
|
|
503
|
-
Injectable4(),
|
|
504
|
-
_ts_metadata4("design:type", Function),
|
|
505
|
-
_ts_metadata4("design:paramtypes", [
|
|
506
|
-
typeof LoggerService === "undefined" ? Object : LoggerService
|
|
507
|
-
])
|
|
508
|
-
], JsonParser);
|
|
509
|
-
|
|
510
|
-
// src/lib/parser/fts/yaml-parser.service.ts
|
|
511
|
-
import { Injectable as Injectable5 } from "@nestjs/common";
|
|
512
|
-
import { parse, stringify } from "yaml";
|
|
513
|
-
function _ts_decorate6(decorators, target, key, desc) {
|
|
514
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
515
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
516
|
-
r = Reflect.decorate(decorators, target, key, desc);
|
|
517
|
-
else
|
|
518
|
-
for (var i = decorators.length - 1; i >= 0; i--)
|
|
519
|
-
if (d = decorators[i])
|
|
520
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
521
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
522
|
-
}
|
|
523
|
-
__name(_ts_decorate6, "_ts_decorate");
|
|
524
|
-
function _ts_metadata5(k, v) {
|
|
525
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
526
|
-
return Reflect.metadata(k, v);
|
|
527
|
-
}
|
|
528
|
-
__name(_ts_metadata5, "_ts_metadata");
|
|
529
|
-
var _a6;
|
|
530
|
-
var YamlParser = (_a6 = class {
|
|
531
|
-
constructor(logger) {
|
|
532
|
-
__publicField(this, "logger");
|
|
533
|
-
this.logger = logger;
|
|
534
|
-
this.logger.setup(this.constructor.name);
|
|
535
|
-
}
|
|
536
|
-
parse(data) {
|
|
537
|
-
try {
|
|
538
|
-
return parse(data.toString());
|
|
539
|
-
} catch (e) {
|
|
540
|
-
this.logger.trace("Error during parsing YAML file: %s", e.message);
|
|
541
|
-
throw e;
|
|
542
|
-
}
|
|
543
|
-
}
|
|
544
|
-
stringify(data) {
|
|
545
|
-
return stringify(data, {
|
|
546
|
-
prettyErrors: true
|
|
547
|
-
});
|
|
548
|
-
}
|
|
549
|
-
}, __name(_a6, "YamlParser"), __publicField(_a6, "extensions", [
|
|
550
|
-
"yaml",
|
|
551
|
-
"yml"
|
|
552
|
-
]), _a6);
|
|
553
|
-
YamlParser = _ts_decorate6([
|
|
554
|
-
Injectable5(),
|
|
555
|
-
_ts_metadata5("design:type", Function),
|
|
556
|
-
_ts_metadata5("design:paramtypes", [
|
|
557
|
-
typeof LoggerService === "undefined" ? Object : LoggerService
|
|
558
|
-
])
|
|
559
|
-
], YamlParser);
|
|
560
|
-
|
|
561
|
-
// src/lib/fs/filesystem.service.ts
|
|
562
|
-
import { Injectable as Injectable6 } from "@nestjs/common";
|
|
563
|
-
import fs from "fs-extra";
|
|
564
|
-
import { extname, dirname } from "path";
|
|
565
|
-
function _ts_decorate7(decorators, target, key, desc) {
|
|
566
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
567
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
568
|
-
r = Reflect.decorate(decorators, target, key, desc);
|
|
569
|
-
else
|
|
570
|
-
for (var i = decorators.length - 1; i >= 0; i--)
|
|
571
|
-
if (d = decorators[i])
|
|
572
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
573
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
574
|
-
}
|
|
575
|
-
__name(_ts_decorate7, "_ts_decorate");
|
|
576
|
-
function _ts_metadata6(k, v) {
|
|
577
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
578
|
-
return Reflect.metadata(k, v);
|
|
579
|
-
}
|
|
580
|
-
__name(_ts_metadata6, "_ts_metadata");
|
|
581
|
-
var _a7;
|
|
582
|
-
var FileSystemService = (_a7 = class {
|
|
426
|
+
var FileSystemService = (_a4 = class {
|
|
583
427
|
constructor(logger) {
|
|
584
428
|
__publicField(this, "logger");
|
|
585
429
|
__publicField(this, "extra");
|
|
@@ -707,18 +551,18 @@ var FileSystemService = (_a7 = class {
|
|
|
707
551
|
throw new Error(`Error while creating the directory "${directory}": ${e.message}`);
|
|
708
552
|
}
|
|
709
553
|
}
|
|
710
|
-
}, __name(
|
|
711
|
-
FileSystemService =
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
554
|
+
}, __name(_a4, "FileSystemService"), _a4);
|
|
555
|
+
FileSystemService = _ts_decorate4([
|
|
556
|
+
Injectable3(),
|
|
557
|
+
_ts_metadata3("design:type", Function),
|
|
558
|
+
_ts_metadata3("design:paramtypes", [
|
|
715
559
|
typeof LoggerService === "undefined" ? Object : LoggerService
|
|
716
560
|
])
|
|
717
561
|
], FileSystemService);
|
|
718
562
|
|
|
719
563
|
// src/lib/fs/filesystem.module.ts
|
|
720
564
|
import { Global as Global2, Module as Module2 } from "@nestjs/common";
|
|
721
|
-
function
|
|
565
|
+
function _ts_decorate5(decorators, target, key, desc) {
|
|
722
566
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
723
567
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
724
568
|
r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -728,11 +572,11 @@ function _ts_decorate8(decorators, target, key, desc) {
|
|
|
728
572
|
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
729
573
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
730
574
|
}
|
|
731
|
-
__name(
|
|
732
|
-
var
|
|
733
|
-
var FilesystemModule = (
|
|
734
|
-
}, __name(
|
|
735
|
-
FilesystemModule =
|
|
575
|
+
__name(_ts_decorate5, "_ts_decorate");
|
|
576
|
+
var _a5;
|
|
577
|
+
var FilesystemModule = (_a5 = class {
|
|
578
|
+
}, __name(_a5, "FilesystemModule"), _a5);
|
|
579
|
+
FilesystemModule = _ts_decorate5([
|
|
736
580
|
Global2(),
|
|
737
581
|
Module2({
|
|
738
582
|
providers: [
|
|
@@ -745,7 +589,7 @@ FilesystemModule = _ts_decorate8([
|
|
|
745
589
|
], FilesystemModule);
|
|
746
590
|
|
|
747
591
|
// src/lib/parser/parser.service.ts
|
|
748
|
-
function
|
|
592
|
+
function _ts_decorate6(decorators, target, key, desc) {
|
|
749
593
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
750
594
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
751
595
|
r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -755,14 +599,14 @@ function _ts_decorate9(decorators, target, key, desc) {
|
|
|
755
599
|
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
756
600
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
757
601
|
}
|
|
758
|
-
__name(
|
|
759
|
-
function
|
|
602
|
+
__name(_ts_decorate6, "_ts_decorate");
|
|
603
|
+
function _ts_metadata4(k, v) {
|
|
760
604
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
761
605
|
return Reflect.metadata(k, v);
|
|
762
606
|
}
|
|
763
|
-
__name(
|
|
764
|
-
var
|
|
765
|
-
var ParserService = (
|
|
607
|
+
__name(_ts_metadata4, "_ts_metadata");
|
|
608
|
+
var _a6;
|
|
609
|
+
var ParserService = (_a6 = class {
|
|
766
610
|
constructor(moduleRef, fs2, logger) {
|
|
767
611
|
__publicField(this, "moduleRef");
|
|
768
612
|
__publicField(this, "fs");
|
|
@@ -771,32 +615,28 @@ var ParserService = (_a9 = class {
|
|
|
771
615
|
this.moduleRef = moduleRef;
|
|
772
616
|
this.fs = fs2;
|
|
773
617
|
this.logger = logger;
|
|
774
|
-
this.parsers = [
|
|
775
|
-
YamlParser,
|
|
776
|
-
JsonParser,
|
|
777
|
-
EnvironmentVariableParser
|
|
778
|
-
];
|
|
618
|
+
this.parsers = [];
|
|
779
619
|
this.logger.setup(this.constructor.name);
|
|
780
620
|
}
|
|
781
|
-
|
|
621
|
+
byFt(file) {
|
|
782
622
|
const ext = (file.includes(".") ? this.fs.extname(file) : file).replace(/^\./, "");
|
|
783
623
|
const Parser = this.parsers.find((parser) => parser.extensions.includes(ext));
|
|
784
624
|
if (!Parser) {
|
|
785
625
|
throw new Error(`Parser for the extension is not configured: ${ext}`);
|
|
786
626
|
}
|
|
787
|
-
return this.
|
|
627
|
+
return this.fetch(Parser);
|
|
628
|
+
}
|
|
629
|
+
fetch(Parser) {
|
|
630
|
+
return this.moduleRef.get(Parser);
|
|
788
631
|
}
|
|
789
632
|
async inject(Parser) {
|
|
790
633
|
const parser = await this.moduleRef.create(Parser);
|
|
791
634
|
return parser;
|
|
792
635
|
}
|
|
793
|
-
|
|
794
|
-
this.parsers = parsers;
|
|
795
|
-
this.logger.trace("Set parsers: %s", this.parsers.map((p) => p.name));
|
|
796
|
-
}
|
|
797
|
-
addParsers(...parsers) {
|
|
636
|
+
async register(...parsers) {
|
|
798
637
|
this.parsers.push(...parsers);
|
|
799
|
-
|
|
638
|
+
await Promise.all(parsers.map(async (parser) => this.inject(parser)));
|
|
639
|
+
this.logger.trace("Registered parsers: %o", this.parsers.map((p) => p.name));
|
|
800
640
|
}
|
|
801
641
|
async read(file) {
|
|
802
642
|
return this.parse(file, await this.fs.read(file));
|
|
@@ -805,20 +645,20 @@ var ParserService = (_a9 = class {
|
|
|
805
645
|
return this.fs.write(file, await this.stringify(file, data));
|
|
806
646
|
}
|
|
807
647
|
async parse(file, data) {
|
|
808
|
-
const parser =
|
|
648
|
+
const parser = this.byFt(file);
|
|
809
649
|
this.logger.trace("Parsing file: %s -> %s", file, parser.constructor.name);
|
|
810
650
|
return parser.parse(data);
|
|
811
651
|
}
|
|
812
652
|
async stringify(file, data) {
|
|
813
|
-
const parser =
|
|
653
|
+
const parser = this.byFt(file);
|
|
814
654
|
this.logger.trace("Stringifying file: %s -> %s", file, parser.constructor.name);
|
|
815
655
|
return parser.stringify(data);
|
|
816
656
|
}
|
|
817
|
-
}, __name(
|
|
818
|
-
ParserService =
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
657
|
+
}, __name(_a6, "ParserService"), _a6);
|
|
658
|
+
ParserService = _ts_decorate6([
|
|
659
|
+
Injectable4(),
|
|
660
|
+
_ts_metadata4("design:type", Function),
|
|
661
|
+
_ts_metadata4("design:paramtypes", [
|
|
822
662
|
typeof ModuleRef === "undefined" ? Object : ModuleRef,
|
|
823
663
|
typeof FileSystemService === "undefined" ? Object : FileSystemService,
|
|
824
664
|
typeof LoggerService === "undefined" ? Object : LoggerService
|
|
@@ -903,7 +743,7 @@ __name(uniqueArrayFilter, "uniqueArrayFilter");
|
|
|
903
743
|
import { ux } from "@oclif/core";
|
|
904
744
|
|
|
905
745
|
// src/lib/config/config.service.ts
|
|
906
|
-
function
|
|
746
|
+
function _ts_decorate7(decorators, target, key, desc) {
|
|
907
747
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
908
748
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
909
749
|
r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -913,20 +753,20 @@ function _ts_decorate10(decorators, target, key, desc) {
|
|
|
913
753
|
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
914
754
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
915
755
|
}
|
|
916
|
-
__name(
|
|
917
|
-
function
|
|
756
|
+
__name(_ts_decorate7, "_ts_decorate");
|
|
757
|
+
function _ts_metadata5(k, v) {
|
|
918
758
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
919
759
|
return Reflect.metadata(k, v);
|
|
920
760
|
}
|
|
921
|
-
__name(
|
|
761
|
+
__name(_ts_metadata5, "_ts_metadata");
|
|
922
762
|
function _ts_param2(paramIndex, decorator) {
|
|
923
763
|
return function(target, key) {
|
|
924
764
|
decorator(target, key, paramIndex);
|
|
925
765
|
};
|
|
926
766
|
}
|
|
927
767
|
__name(_ts_param2, "_ts_param");
|
|
928
|
-
var
|
|
929
|
-
var ConfigService = (
|
|
768
|
+
var _a7;
|
|
769
|
+
var ConfigService = (_a7 = class {
|
|
930
770
|
constructor(parser, logger, options) {
|
|
931
771
|
__publicField(this, "parser");
|
|
932
772
|
__publicField(this, "logger");
|
|
@@ -1074,12 +914,12 @@ var ConfigService = (_a10 = class {
|
|
|
1074
914
|
async write(path, data) {
|
|
1075
915
|
return this.parser.write(path, data);
|
|
1076
916
|
}
|
|
1077
|
-
}, __name(
|
|
1078
|
-
ConfigService =
|
|
1079
|
-
|
|
917
|
+
}, __name(_a7, "ConfigService"), _a7);
|
|
918
|
+
ConfigService = _ts_decorate7([
|
|
919
|
+
Injectable5(),
|
|
1080
920
|
_ts_param2(2, Inject2(TOKEN_CONFIG_MODULE_OPTIONS)),
|
|
1081
|
-
|
|
1082
|
-
|
|
921
|
+
_ts_metadata5("design:type", Function),
|
|
922
|
+
_ts_metadata5("design:paramtypes", [
|
|
1083
923
|
typeof ParserService === "undefined" ? Object : ParserService,
|
|
1084
924
|
typeof LoggerService === "undefined" ? Object : LoggerService,
|
|
1085
925
|
typeof ConfigModuleOptions === "undefined" ? Object : ConfigModuleOptions
|
|
@@ -1091,7 +931,7 @@ import { Global as Global4, Module as Module4 } from "@nestjs/common";
|
|
|
1091
931
|
|
|
1092
932
|
// src/lib/parser/parser.module.ts
|
|
1093
933
|
import { Global as Global3, Module as Module3 } from "@nestjs/common";
|
|
1094
|
-
function
|
|
934
|
+
function _ts_decorate8(decorators, target, key, desc) {
|
|
1095
935
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1096
936
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
1097
937
|
r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -1101,11 +941,11 @@ function _ts_decorate11(decorators, target, key, desc) {
|
|
|
1101
941
|
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1102
942
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1103
943
|
}
|
|
1104
|
-
__name(
|
|
1105
|
-
var
|
|
1106
|
-
var ParserModule = (
|
|
1107
|
-
}, __name(
|
|
1108
|
-
ParserModule =
|
|
944
|
+
__name(_ts_decorate8, "_ts_decorate");
|
|
945
|
+
var _a8;
|
|
946
|
+
var ParserModule = (_a8 = class {
|
|
947
|
+
}, __name(_a8, "ParserModule"), _a8);
|
|
948
|
+
ParserModule = _ts_decorate8([
|
|
1109
949
|
Global3(),
|
|
1110
950
|
Module3({
|
|
1111
951
|
imports: [
|
|
@@ -1121,7 +961,7 @@ ParserModule = _ts_decorate11([
|
|
|
1121
961
|
], ParserModule);
|
|
1122
962
|
|
|
1123
963
|
// src/lib/config/config.module.ts
|
|
1124
|
-
function
|
|
964
|
+
function _ts_decorate9(decorators, target, key, desc) {
|
|
1125
965
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1126
966
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
1127
967
|
r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -1131,11 +971,11 @@ function _ts_decorate12(decorators, target, key, desc) {
|
|
|
1131
971
|
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1132
972
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1133
973
|
}
|
|
1134
|
-
__name(
|
|
1135
|
-
var
|
|
1136
|
-
var ConfigModule = (
|
|
1137
|
-
}, __name(
|
|
1138
|
-
ConfigModule =
|
|
974
|
+
__name(_ts_decorate9, "_ts_decorate");
|
|
975
|
+
var _a9;
|
|
976
|
+
var ConfigModule = (_a9 = class {
|
|
977
|
+
}, __name(_a9, "ConfigModule"), _a9);
|
|
978
|
+
ConfigModule = _ts_decorate9([
|
|
1139
979
|
Global4(),
|
|
1140
980
|
Module4({
|
|
1141
981
|
imports: [
|
|
@@ -1153,6 +993,164 @@ ConfigModule = _ts_decorate12([
|
|
|
1153
993
|
// src/lib/locker/locker.service.ts
|
|
1154
994
|
import { Injectable as Injectable9 } from "@nestjs/common";
|
|
1155
995
|
import op2 from "object-path-immutable";
|
|
996
|
+
|
|
997
|
+
// src/lib/parser/fts/env-parser.service.ts
|
|
998
|
+
import { Injectable as Injectable6 } from "@nestjs/common";
|
|
999
|
+
import { EOL as EOL2 } from "os";
|
|
1000
|
+
function _ts_decorate10(decorators, target, key, desc) {
|
|
1001
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1002
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
1003
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
1004
|
+
else
|
|
1005
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
1006
|
+
if (d = decorators[i])
|
|
1007
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1008
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1009
|
+
}
|
|
1010
|
+
__name(_ts_decorate10, "_ts_decorate");
|
|
1011
|
+
function _ts_metadata6(k, v) {
|
|
1012
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
1013
|
+
return Reflect.metadata(k, v);
|
|
1014
|
+
}
|
|
1015
|
+
__name(_ts_metadata6, "_ts_metadata");
|
|
1016
|
+
var _a10;
|
|
1017
|
+
var EnvironmentVariableParser = (_a10 = class {
|
|
1018
|
+
constructor(logger) {
|
|
1019
|
+
__publicField(this, "logger");
|
|
1020
|
+
__publicField(this, "LINE");
|
|
1021
|
+
this.logger = logger;
|
|
1022
|
+
this.LINE = /(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;
|
|
1023
|
+
this.logger.setup(this.constructor.name);
|
|
1024
|
+
}
|
|
1025
|
+
parse(data) {
|
|
1026
|
+
try {
|
|
1027
|
+
return data.toString().split(EOL2).reduce((o, line) => {
|
|
1028
|
+
const match = this.LINE.exec(line);
|
|
1029
|
+
const key = match[1];
|
|
1030
|
+
const value = match[2] ?? "";
|
|
1031
|
+
return {
|
|
1032
|
+
...o,
|
|
1033
|
+
[key]: value
|
|
1034
|
+
};
|
|
1035
|
+
}, {});
|
|
1036
|
+
} catch (e) {
|
|
1037
|
+
this.logger.trace("Error during parsing environment file: %s", e.message);
|
|
1038
|
+
throw e;
|
|
1039
|
+
}
|
|
1040
|
+
}
|
|
1041
|
+
stringify(data) {
|
|
1042
|
+
return Object.entries(data).map(([k, v]) => `${k}=${v}`).join(EOL2) + EOL2;
|
|
1043
|
+
}
|
|
1044
|
+
}, __name(_a10, "EnvironmentVariableParser"), __publicField(_a10, "extensions", [
|
|
1045
|
+
"env"
|
|
1046
|
+
]), _a10);
|
|
1047
|
+
EnvironmentVariableParser = _ts_decorate10([
|
|
1048
|
+
Injectable6(),
|
|
1049
|
+
_ts_metadata6("design:type", Function),
|
|
1050
|
+
_ts_metadata6("design:paramtypes", [
|
|
1051
|
+
typeof LoggerService === "undefined" ? Object : LoggerService
|
|
1052
|
+
])
|
|
1053
|
+
], EnvironmentVariableParser);
|
|
1054
|
+
|
|
1055
|
+
// src/lib/parser/fts/json-parser.service.ts
|
|
1056
|
+
import { Injectable as Injectable7 } from "@nestjs/common";
|
|
1057
|
+
function _ts_decorate11(decorators, target, key, desc) {
|
|
1058
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1059
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
1060
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
1061
|
+
else
|
|
1062
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
1063
|
+
if (d = decorators[i])
|
|
1064
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1065
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1066
|
+
}
|
|
1067
|
+
__name(_ts_decorate11, "_ts_decorate");
|
|
1068
|
+
function _ts_metadata7(k, v) {
|
|
1069
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
1070
|
+
return Reflect.metadata(k, v);
|
|
1071
|
+
}
|
|
1072
|
+
__name(_ts_metadata7, "_ts_metadata");
|
|
1073
|
+
var _a11;
|
|
1074
|
+
var JsonParser = (_a11 = class {
|
|
1075
|
+
constructor(logger) {
|
|
1076
|
+
__publicField(this, "logger");
|
|
1077
|
+
this.logger = logger;
|
|
1078
|
+
this.logger.setup(this.constructor.name);
|
|
1079
|
+
}
|
|
1080
|
+
parse(data) {
|
|
1081
|
+
try {
|
|
1082
|
+
return JSON.parse(data.toString());
|
|
1083
|
+
} catch (e) {
|
|
1084
|
+
this.logger.trace("Error during parsing JSON file: %s", e.message);
|
|
1085
|
+
throw e;
|
|
1086
|
+
}
|
|
1087
|
+
}
|
|
1088
|
+
stringify(data) {
|
|
1089
|
+
return JSON.stringify(data, null, 2);
|
|
1090
|
+
}
|
|
1091
|
+
}, __name(_a11, "JsonParser"), __publicField(_a11, "extensions", [
|
|
1092
|
+
"json"
|
|
1093
|
+
]), _a11);
|
|
1094
|
+
JsonParser = _ts_decorate11([
|
|
1095
|
+
Injectable7(),
|
|
1096
|
+
_ts_metadata7("design:type", Function),
|
|
1097
|
+
_ts_metadata7("design:paramtypes", [
|
|
1098
|
+
typeof LoggerService === "undefined" ? Object : LoggerService
|
|
1099
|
+
])
|
|
1100
|
+
], JsonParser);
|
|
1101
|
+
|
|
1102
|
+
// src/lib/parser/fts/yaml-parser.service.ts
|
|
1103
|
+
import { Injectable as Injectable8 } from "@nestjs/common";
|
|
1104
|
+
import { parse, stringify } from "yaml";
|
|
1105
|
+
function _ts_decorate12(decorators, target, key, desc) {
|
|
1106
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1107
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
1108
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
1109
|
+
else
|
|
1110
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
1111
|
+
if (d = decorators[i])
|
|
1112
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1113
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1114
|
+
}
|
|
1115
|
+
__name(_ts_decorate12, "_ts_decorate");
|
|
1116
|
+
function _ts_metadata8(k, v) {
|
|
1117
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
1118
|
+
return Reflect.metadata(k, v);
|
|
1119
|
+
}
|
|
1120
|
+
__name(_ts_metadata8, "_ts_metadata");
|
|
1121
|
+
var _a12;
|
|
1122
|
+
var YamlParser = (_a12 = class {
|
|
1123
|
+
constructor(logger) {
|
|
1124
|
+
__publicField(this, "logger");
|
|
1125
|
+
this.logger = logger;
|
|
1126
|
+
this.logger.setup(this.constructor.name);
|
|
1127
|
+
}
|
|
1128
|
+
parse(data) {
|
|
1129
|
+
try {
|
|
1130
|
+
return parse(data.toString());
|
|
1131
|
+
} catch (e) {
|
|
1132
|
+
this.logger.trace("Error during parsing YAML file: %s", e.message);
|
|
1133
|
+
throw e;
|
|
1134
|
+
}
|
|
1135
|
+
}
|
|
1136
|
+
stringify(data) {
|
|
1137
|
+
return stringify(data, {
|
|
1138
|
+
prettyErrors: true
|
|
1139
|
+
});
|
|
1140
|
+
}
|
|
1141
|
+
}, __name(_a12, "YamlParser"), __publicField(_a12, "extensions", [
|
|
1142
|
+
"yaml",
|
|
1143
|
+
"yml"
|
|
1144
|
+
]), _a12);
|
|
1145
|
+
YamlParser = _ts_decorate12([
|
|
1146
|
+
Injectable8(),
|
|
1147
|
+
_ts_metadata8("design:type", Function),
|
|
1148
|
+
_ts_metadata8("design:paramtypes", [
|
|
1149
|
+
typeof LoggerService === "undefined" ? Object : LoggerService
|
|
1150
|
+
])
|
|
1151
|
+
], YamlParser);
|
|
1152
|
+
|
|
1153
|
+
// src/lib/locker/locker.service.ts
|
|
1156
1154
|
function _ts_decorate13(decorators, target, key, desc) {
|
|
1157
1155
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1158
1156
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
@@ -1171,15 +1169,17 @@ function _ts_metadata9(k, v) {
|
|
|
1171
1169
|
__name(_ts_metadata9, "_ts_metadata");
|
|
1172
1170
|
var _a13;
|
|
1173
1171
|
var LockerService = (_a13 = class {
|
|
1174
|
-
constructor(logger, fs2, options) {
|
|
1172
|
+
constructor(logger, fs2, parser, options) {
|
|
1175
1173
|
__publicField(this, "logger");
|
|
1176
1174
|
__publicField(this, "fs");
|
|
1175
|
+
__publicField(this, "parser");
|
|
1177
1176
|
__publicField(this, "options");
|
|
1178
1177
|
__publicField(this, "op");
|
|
1179
1178
|
__publicField(this, "toLock");
|
|
1180
1179
|
__publicField(this, "toUnlock");
|
|
1181
1180
|
this.logger = logger;
|
|
1182
1181
|
this.fs = fs2;
|
|
1182
|
+
this.parser = parser;
|
|
1183
1183
|
this.options = options;
|
|
1184
1184
|
this.op = op2;
|
|
1185
1185
|
this.toLock = [];
|
|
@@ -1278,11 +1278,11 @@ var LockerService = (_a13 = class {
|
|
|
1278
1278
|
await this.write(lock ?? {});
|
|
1279
1279
|
}
|
|
1280
1280
|
async read() {
|
|
1281
|
-
return this.options.parser.parse(await this.fs.read(this.options.file));
|
|
1281
|
+
return this.parser.fetch(this.options.parser).parse(await this.fs.read(this.options.file));
|
|
1282
1282
|
}
|
|
1283
1283
|
async tryRead() {
|
|
1284
1284
|
try {
|
|
1285
|
-
return this.options.parser.parse(await this.fs.read(this.options.file));
|
|
1285
|
+
return this.parser.fetch(this.options.parser).parse(await this.fs.read(this.options.file));
|
|
1286
1286
|
} catch {
|
|
1287
1287
|
this.logger.trace("Can not read lockfile: %s", this.options.file);
|
|
1288
1288
|
}
|
|
@@ -1292,7 +1292,7 @@ var LockerService = (_a13 = class {
|
|
|
1292
1292
|
this.logger.trace("Trying to write empty lock file, deleting it instead: %s", this.options.file);
|
|
1293
1293
|
return this.fs.remove(this.options.file);
|
|
1294
1294
|
}
|
|
1295
|
-
return this.fs.write(this.options.file, await this.options.parser.stringify(data));
|
|
1295
|
+
return this.fs.write(this.options.file, await this.parser.fetch(this.options.parser).stringify(data));
|
|
1296
1296
|
}
|
|
1297
1297
|
buildPath(d) {
|
|
1298
1298
|
if (d?.root !== true && this.options.root?.length) {
|
|
@@ -1318,6 +1318,7 @@ LockerService = _ts_decorate13([
|
|
|
1318
1318
|
_ts_metadata9("design:paramtypes", [
|
|
1319
1319
|
typeof LoggerService === "undefined" ? Object : LoggerService,
|
|
1320
1320
|
typeof FileSystemService === "undefined" ? Object : FileSystemService,
|
|
1321
|
+
typeof ParserService === "undefined" ? Object : ParserService,
|
|
1321
1322
|
typeof LockerServiceOptions === "undefined" ? Object : LockerServiceOptions
|
|
1322
1323
|
])
|
|
1323
1324
|
], LockerService);
|
|
@@ -1344,10 +1345,11 @@ var LockerModule = (_a14 = class {
|
|
|
1344
1345
|
providers: [
|
|
1345
1346
|
{
|
|
1346
1347
|
provide: token,
|
|
1347
|
-
useFactory: (logger, fs2) => new LockerService(logger, fs2, options),
|
|
1348
|
+
useFactory: (logger, fs2, parser) => new LockerService(logger, fs2, parser, options),
|
|
1348
1349
|
inject: [
|
|
1349
1350
|
LoggerService,
|
|
1350
|
-
FileSystemService
|
|
1351
|
+
FileSystemService,
|
|
1352
|
+
ParserService
|
|
1351
1353
|
]
|
|
1352
1354
|
}
|
|
1353
1355
|
]
|