@start9labs/start-sdk 0.4.0-beta.51 → 0.4.0-beta.53
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/base/lib/actions/input/builder/inputSpec.d.ts +126 -5
- package/base/lib/actions/input/builder/inputSpec.js +219 -9
- package/base/lib/actions/input/builder/inputSpec.js.map +1 -1
- package/base/lib/actions/input/builder/list.d.ts +21 -0
- package/base/lib/actions/input/builder/list.js +21 -0
- package/base/lib/actions/input/builder/list.js.map +1 -1
- package/base/lib/actions/input/builder/value.d.ts +54 -0
- package/base/lib/actions/input/builder/value.js +56 -1
- package/base/lib/actions/input/builder/value.js.map +1 -1
- package/base/lib/actions/input/builder/variants.d.ts +11 -0
- package/base/lib/actions/input/builder/variants.js +17 -2
- package/base/lib/actions/input/builder/variants.js.map +1 -1
- package/base/lib/actions/input/inputSpecConstants.d.ts +203 -5
- package/base/lib/actions/input/inputSpecConstants.js +118 -38
- package/base/lib/actions/input/inputSpecConstants.js.map +1 -1
- package/base/lib/actions/input/inputSpecTypes.d.ts +99 -0
- package/base/lib/actions/input/inputSpecTypes.js +6 -1
- package/base/lib/actions/input/inputSpecTypes.js.map +1 -1
- package/base/lib/actions/setupActions.d.ts +6 -3
- package/base/lib/actions/setupActions.js +6 -3
- package/base/lib/actions/setupActions.js.map +1 -1
- package/base/lib/exver/index.d.ts +233 -2
- package/base/lib/exver/index.js +197 -3
- package/base/lib/exver/index.js.map +1 -1
- package/base/lib/index.d.ts +9 -1
- package/base/lib/index.js +3 -1
- package/base/lib/index.js.map +1 -1
- package/base/lib/inits/setupInit.d.ts +17 -0
- package/base/lib/inits/setupInit.js +7 -0
- package/base/lib/inits/setupInit.js.map +1 -1
- package/base/lib/inits/setupUninit.d.ts +12 -0
- package/base/lib/inits/setupUninit.js +7 -0
- package/base/lib/inits/setupUninit.js.map +1 -1
- package/base/lib/osBindings/AddPackageSignerParams.d.ts +1 -0
- package/base/lib/osBindings/ServerHostname.d.ts +1 -0
- package/base/lib/osBindings/{IpHostname.js → ServerHostname.js} +1 -1
- package/base/lib/osBindings/ServerHostname.js.map +1 -0
- package/base/lib/osBindings/ServerInfo.d.ts +1 -0
- package/base/lib/osBindings/SetServerHostnameParams.d.ts +4 -0
- package/base/lib/osBindings/{OnionHostname.js → SetServerHostnameParams.js} +1 -1
- package/base/lib/osBindings/SetServerHostnameParams.js.map +1 -0
- package/base/lib/osBindings/SetupExecuteParams.d.ts +3 -1
- package/base/lib/osBindings/SmtpSecurity.d.ts +1 -0
- package/base/lib/osBindings/{Hostname.js → SmtpSecurity.js} +1 -1
- package/base/lib/osBindings/SmtpSecurity.js.map +1 -0
- package/base/lib/osBindings/SmtpValue.d.ts +4 -2
- package/base/lib/osBindings/SmtpValue.js +0 -1
- package/base/lib/osBindings/SmtpValue.js.map +1 -1
- package/base/lib/osBindings/StartOsRecoveryInfo.d.ts +2 -2
- package/base/lib/osBindings/TestSmtpParams.d.ts +4 -2
- package/base/lib/osBindings/TestSmtpParams.js +0 -1
- package/base/lib/osBindings/TestSmtpParams.js.map +1 -1
- package/base/lib/osBindings/index.d.ts +3 -1
- package/base/lib/s9pk/index.d.ts +66 -0
- package/base/lib/s9pk/index.js +70 -1
- package/base/lib/s9pk/index.js.map +1 -1
- package/base/lib/types.d.ts +68 -2
- package/base/lib/types.js +14 -0
- package/base/lib/types.js.map +1 -1
- package/base/lib/util/asError.d.ts +8 -0
- package/base/lib/util/asError.js +8 -0
- package/base/lib/util/asError.js.map +1 -1
- package/base/lib/util/deepEqual.d.ts +15 -0
- package/base/lib/util/deepEqual.js +15 -0
- package/base/lib/util/deepEqual.js.map +1 -1
- package/base/lib/util/deepMerge.d.ts +18 -0
- package/base/lib/util/deepMerge.js +18 -0
- package/base/lib/util/deepMerge.js.map +1 -1
- package/base/lib/util/getDefaultString.d.ts +8 -0
- package/base/lib/util/getDefaultString.js +8 -0
- package/base/lib/util/getDefaultString.js.map +1 -1
- package/base/lib/util/graph.d.ts +57 -0
- package/base/lib/util/graph.js +47 -0
- package/base/lib/util/graph.js.map +1 -1
- package/base/lib/util/inMs.d.ts +15 -0
- package/base/lib/util/inMs.js +15 -0
- package/base/lib/util/inMs.js.map +1 -1
- package/base/lib/util/ip.d.ts +81 -0
- package/base/lib/util/ip.js +81 -0
- package/base/lib/util/ip.js.map +1 -1
- package/base/lib/util/once.d.ts +13 -0
- package/base/lib/util/once.js +13 -0
- package/base/lib/util/once.js.map +1 -1
- package/base/lib/util/patterns.d.ts +11 -0
- package/base/lib/util/patterns.js +11 -0
- package/base/lib/util/patterns.js.map +1 -1
- package/base/lib/util/regexes.d.ts +38 -0
- package/base/lib/util/regexes.js +38 -0
- package/base/lib/util/regexes.js.map +1 -1
- package/base/lib/util/splitCommand.d.ts +14 -0
- package/base/lib/util/splitCommand.js +14 -0
- package/base/lib/util/splitCommand.js.map +1 -1
- package/base/lib/util/stringFromStdErrOut.d.ts +7 -0
- package/base/lib/util/stringFromStdErrOut.js +7 -0
- package/base/lib/util/stringFromStdErrOut.js.map +1 -1
- package/base/lib/util/typeHelpers.d.ts +35 -0
- package/base/lib/util/typeHelpers.js +7 -0
- package/base/lib/util/typeHelpers.js.map +1 -1
- package/package/lib/StartSdk.d.ts +328 -2
- package/package/lib/StartSdk.js +142 -1
- package/package/lib/StartSdk.js.map +1 -1
- package/package/lib/backup/Backups.d.ts +71 -0
- package/package/lib/backup/Backups.js +69 -0
- package/package/lib/backup/Backups.js.map +1 -1
- package/package/lib/backup/setupBackups.d.ts +14 -0
- package/package/lib/backup/setupBackups.js +9 -0
- package/package/lib/backup/setupBackups.js.map +1 -1
- package/package/lib/health/HealthCheck.d.ts +16 -0
- package/package/lib/health/HealthCheck.js +15 -0
- package/package/lib/health/HealthCheck.js.map +1 -1
- package/package/lib/health/checkFns/HealthCheckResult.d.ts +6 -0
- package/package/lib/health/checkFns/index.d.ts +8 -0
- package/package/lib/health/checkFns/index.js +8 -0
- package/package/lib/health/checkFns/index.js.map +1 -1
- package/package/lib/mainFn/CommandController.d.ts +29 -0
- package/package/lib/mainFn/CommandController.js +29 -0
- package/package/lib/mainFn/CommandController.js.map +1 -1
- package/package/lib/mainFn/Daemon.d.ts +38 -2
- package/package/lib/mainFn/Daemon.js +38 -2
- package/package/lib/mainFn/Daemon.js.map +1 -1
- package/package/lib/mainFn/Daemons.d.ts +31 -0
- package/package/lib/mainFn/Daemons.js +13 -0
- package/package/lib/mainFn/Daemons.js.map +1 -1
- package/package/lib/mainFn/Mounts.d.ts +38 -0
- package/package/lib/mainFn/Mounts.js +38 -0
- package/package/lib/mainFn/Mounts.js.map +1 -1
- package/package/lib/mainFn/index.d.ts +1 -0
- package/package/lib/mainFn/index.js +1 -0
- package/package/lib/mainFn/index.js.map +1 -1
- package/package/lib/manifest/setupManifest.d.ts +9 -0
- package/package/lib/manifest/setupManifest.js +9 -0
- package/package/lib/manifest/setupManifest.js.map +1 -1
- package/package/lib/test/output.sdk.d.ts +192 -2
- package/package/lib/util/SubContainer.d.ts +46 -0
- package/package/lib/util/SubContainer.js +10 -0
- package/package/lib/util/SubContainer.js.map +1 -1
- package/package/lib/util/fileHelper.d.ts +41 -8
- package/package/lib/util/fileHelper.js +6 -4
- package/package/lib/util/fileHelper.js.map +1 -1
- package/package/lib/version/VersionGraph.d.ts +61 -0
- package/package/lib/version/VersionGraph.js +61 -0
- package/package/lib/version/VersionGraph.js.map +1 -1
- package/package/lib/version/VersionInfo.d.ts +17 -0
- package/package/lib/version/VersionInfo.js +12 -0
- package/package/lib/version/VersionInfo.js.map +1 -1
- package/package/package.json +3 -2
- package/package.json +3 -2
- package/base/lib/osBindings/BindingGatewaySetEnabledParams.d.ts +0 -6
- package/base/lib/osBindings/BindingGatewaySetEnabledParams.js +0 -3
- package/base/lib/osBindings/BindingGatewaySetEnabledParams.js.map +0 -1
- package/base/lib/osBindings/Hostname.d.ts +0 -1
- package/base/lib/osBindings/Hostname.js.map +0 -1
- package/base/lib/osBindings/IpHostname.d.ts +0 -22
- package/base/lib/osBindings/IpHostname.js.map +0 -1
- package/base/lib/osBindings/OnionHostname.d.ts +0 -5
- package/base/lib/osBindings/OnionHostname.js.map +0 -1
- package/package/lib/test/health.readyCheck.test.d.ts +0 -1
- package/package/lib/test/health.readyCheck.test.js +0 -18
- package/package/lib/test/health.readyCheck.test.js.map +0 -1
- package/package/lib/test/host.test.d.ts +0 -1
- package/package/lib/test/host.test.js +0 -29
- package/package/lib/test/host.test.js.map +0 -1
- package/package/lib/test/inputSpecBuilder.test.d.ts +0 -1
- package/package/lib/test/inputSpecBuilder.test.js +0 -782
- package/package/lib/test/inputSpecBuilder.test.js.map +0 -1
- package/package/lib/test/makeOutput.d.ts +0 -1
- package/package/lib/test/makeOutput.js +0 -398
- package/package/lib/test/makeOutput.js.map +0 -1
- package/package/lib/test/output.d.ts +0 -158
- package/package/lib/test/output.js +0 -446
- package/package/lib/test/output.js.map +0 -1
- package/package/lib/test/output.test.d.ts +0 -2
- package/package/lib/test/output.test.js +0 -121
- package/package/lib/test/output.test.js.map +0 -1
- package/package/scripts/oldSpecToBuilder.d.ts +0 -6
- package/package/scripts/oldSpecToBuilder.js +0 -334
- package/package/scripts/oldSpecToBuilder.js.map +0 -1
package/base/lib/exver/index.js
CHANGED
|
@@ -358,6 +358,28 @@ class VersionRangeTable {
|
|
|
358
358
|
return VersionRange.or(...sum_terms);
|
|
359
359
|
}
|
|
360
360
|
}
|
|
361
|
+
/**
|
|
362
|
+
* Represents a parsed version range expression used to match against {@link Version} or {@link ExtendedVersion} values.
|
|
363
|
+
*
|
|
364
|
+
* Version ranges support standard comparison operators (`=`, `>`, `<`, `>=`, `<=`, `!=`),
|
|
365
|
+
* caret (`^`) and tilde (`~`) ranges, boolean logic (`&&`, `||`, `!`), and flavor matching (`#flavor`).
|
|
366
|
+
*
|
|
367
|
+
* @example
|
|
368
|
+
* ```ts
|
|
369
|
+
* const range = VersionRange.parse(">=1.0.0:0 && <2.0.0:0")
|
|
370
|
+
* const version = ExtendedVersion.parse("1.5.0:0")
|
|
371
|
+
* console.log(range.satisfiedBy(version)) // true
|
|
372
|
+
*
|
|
373
|
+
* // Combine ranges with boolean logic
|
|
374
|
+
* const combined = VersionRange.and(
|
|
375
|
+
* VersionRange.parse(">=1.0:0"),
|
|
376
|
+
* VersionRange.parse("<3.0:0"),
|
|
377
|
+
* )
|
|
378
|
+
*
|
|
379
|
+
* // Match a specific flavor
|
|
380
|
+
* const flavored = VersionRange.parse("#bitcoin")
|
|
381
|
+
* ```
|
|
382
|
+
*/
|
|
361
383
|
class VersionRange {
|
|
362
384
|
constructor(atom) {
|
|
363
385
|
this.atom = atom;
|
|
@@ -386,6 +408,7 @@ class VersionRange {
|
|
|
386
408
|
return this.toString();
|
|
387
409
|
}
|
|
388
410
|
}
|
|
411
|
+
/** Serializes this version range back to its canonical string representation. */
|
|
389
412
|
toString() {
|
|
390
413
|
switch (this.atom.type) {
|
|
391
414
|
case 'Anchor':
|
|
@@ -448,27 +471,58 @@ class VersionRange {
|
|
|
448
471
|
}
|
|
449
472
|
return result;
|
|
450
473
|
}
|
|
474
|
+
/**
|
|
475
|
+
* Parses a version range string into a `VersionRange`.
|
|
476
|
+
*
|
|
477
|
+
* @param range - A version range expression, e.g. `">=1.0.0:0 && <2.0.0:0"`, `"^1.2:0"`, `"*"`
|
|
478
|
+
* @returns The parsed `VersionRange`
|
|
479
|
+
* @throws If the string is not a valid version range expression
|
|
480
|
+
*/
|
|
451
481
|
static parse(range) {
|
|
452
482
|
return VersionRange.parseRange(P.parse(range, { startRule: 'VersionRange' }));
|
|
453
483
|
}
|
|
484
|
+
/**
|
|
485
|
+
* Creates a version range from a comparison operator and an {@link ExtendedVersion}.
|
|
486
|
+
*
|
|
487
|
+
* @param operator - One of `"="`, `">"`, `"<"`, `">="`, `"<="`, `"!="`, `"^"`, `"~"`
|
|
488
|
+
* @param version - The version to compare against
|
|
489
|
+
*/
|
|
454
490
|
static anchor(operator, version) {
|
|
455
491
|
return new VersionRange({ type: 'Anchor', operator, version });
|
|
456
492
|
}
|
|
493
|
+
/**
|
|
494
|
+
* Creates a version range that matches only versions with the specified flavor.
|
|
495
|
+
*
|
|
496
|
+
* @param flavor - The flavor string to match, or `null` for the default (unflavored) variant
|
|
497
|
+
*/
|
|
457
498
|
static flavor(flavor) {
|
|
458
499
|
return new VersionRange({ type: 'Flavor', flavor });
|
|
459
500
|
}
|
|
501
|
+
/**
|
|
502
|
+
* Parses a legacy "emver" format version range string.
|
|
503
|
+
*
|
|
504
|
+
* @param range - A version range in the legacy emver format
|
|
505
|
+
* @returns The parsed `VersionRange`
|
|
506
|
+
*/
|
|
460
507
|
static parseEmver(range) {
|
|
461
508
|
return VersionRange.parseRange(P.parse(range, { startRule: 'EmverVersionRange' }));
|
|
462
509
|
}
|
|
510
|
+
/** Returns the intersection of this range with another (logical AND). */
|
|
463
511
|
and(right) {
|
|
464
512
|
return new VersionRange({ type: 'And', left: this, right });
|
|
465
513
|
}
|
|
514
|
+
/** Returns the union of this range with another (logical OR). */
|
|
466
515
|
or(right) {
|
|
467
516
|
return new VersionRange({ type: 'Or', left: this, right });
|
|
468
517
|
}
|
|
518
|
+
/** Returns the negation of this range (logical NOT). */
|
|
469
519
|
not() {
|
|
470
520
|
return new VersionRange({ type: 'Not', value: this });
|
|
471
521
|
}
|
|
522
|
+
/**
|
|
523
|
+
* Returns the logical AND (intersection) of multiple version ranges.
|
|
524
|
+
* Short-circuits on `none()` and skips `any()`.
|
|
525
|
+
*/
|
|
472
526
|
static and(...xs) {
|
|
473
527
|
let y = VersionRange.any();
|
|
474
528
|
for (let x of xs) {
|
|
@@ -487,6 +541,10 @@ class VersionRange {
|
|
|
487
541
|
}
|
|
488
542
|
return y;
|
|
489
543
|
}
|
|
544
|
+
/**
|
|
545
|
+
* Returns the logical OR (union) of multiple version ranges.
|
|
546
|
+
* Short-circuits on `any()` and skips `none()`.
|
|
547
|
+
*/
|
|
490
548
|
static or(...xs) {
|
|
491
549
|
let y = VersionRange.none();
|
|
492
550
|
for (let x of xs) {
|
|
@@ -505,12 +563,19 @@ class VersionRange {
|
|
|
505
563
|
}
|
|
506
564
|
return y;
|
|
507
565
|
}
|
|
566
|
+
/** Returns a version range that matches all versions (wildcard `*`). */
|
|
508
567
|
static any() {
|
|
509
568
|
return new VersionRange({ type: 'Any' });
|
|
510
569
|
}
|
|
570
|
+
/** Returns a version range that matches no versions (`!`). */
|
|
511
571
|
static none() {
|
|
512
572
|
return new VersionRange({ type: 'None' });
|
|
513
573
|
}
|
|
574
|
+
/**
|
|
575
|
+
* Returns `true` if the given version satisfies this range.
|
|
576
|
+
*
|
|
577
|
+
* @param version - A {@link Version} or {@link ExtendedVersion} to test
|
|
578
|
+
*/
|
|
514
579
|
satisfiedBy(version) {
|
|
515
580
|
return version.satisfies(this);
|
|
516
581
|
}
|
|
@@ -554,25 +619,58 @@ class VersionRange {
|
|
|
554
619
|
return false;
|
|
555
620
|
}
|
|
556
621
|
}
|
|
622
|
+
/** Returns `true` if any version exists that could satisfy this range. */
|
|
557
623
|
satisfiable() {
|
|
558
624
|
return VersionRangeTable.collapse(this.tables()) !== false;
|
|
559
625
|
}
|
|
626
|
+
/** Returns `true` if this range and `other` share at least one satisfying version. */
|
|
560
627
|
intersects(other) {
|
|
561
628
|
return VersionRange.and(this, other).satisfiable();
|
|
562
629
|
}
|
|
630
|
+
/**
|
|
631
|
+
* Returns a canonical (simplified) form of this range using minterm expansion.
|
|
632
|
+
* Useful for normalizing complex boolean expressions into a minimal representation.
|
|
633
|
+
*/
|
|
563
634
|
normalize() {
|
|
564
635
|
return VersionRangeTable.minterms(this.tables());
|
|
565
636
|
}
|
|
566
637
|
}
|
|
567
638
|
exports.VersionRange = VersionRange;
|
|
639
|
+
/**
|
|
640
|
+
* Represents a semantic version number with numeric segments and optional prerelease identifiers.
|
|
641
|
+
*
|
|
642
|
+
* Follows semver precedence rules: numeric segments are compared left-to-right,
|
|
643
|
+
* and a version with prerelease identifiers has lower precedence than the same version without.
|
|
644
|
+
*
|
|
645
|
+
* @example
|
|
646
|
+
* ```ts
|
|
647
|
+
* const v = Version.parse("1.2.3")
|
|
648
|
+
* console.log(v.toString()) // "1.2.3"
|
|
649
|
+
* console.log(v.compare(Version.parse("1.3.0"))) // "less"
|
|
650
|
+
*
|
|
651
|
+
* const pre = Version.parse("2.0.0-beta.1")
|
|
652
|
+
* console.log(pre.compare(Version.parse("2.0.0"))) // "less" (prerelease < release)
|
|
653
|
+
* ```
|
|
654
|
+
*/
|
|
568
655
|
class Version {
|
|
569
|
-
constructor(
|
|
656
|
+
constructor(
|
|
657
|
+
/** The numeric version segments (e.g. `[1, 2, 3]` for `"1.2.3"`). */
|
|
658
|
+
number,
|
|
659
|
+
/** Optional prerelease identifiers (e.g. `["beta", 1]` for `"-beta.1"`). */
|
|
660
|
+
prerelease) {
|
|
570
661
|
this.number = number;
|
|
571
662
|
this.prerelease = prerelease;
|
|
572
663
|
}
|
|
664
|
+
/** Serializes this version to its string form (e.g. `"1.2.3"` or `"1.0.0-beta.1"`). */
|
|
573
665
|
toString() {
|
|
574
666
|
return `${this.number.join('.')}${this.prerelease.length > 0 ? `-${this.prerelease.join('.')}` : ''}`;
|
|
575
667
|
}
|
|
668
|
+
/**
|
|
669
|
+
* Compares this version against another using semver precedence rules.
|
|
670
|
+
*
|
|
671
|
+
* @param other - The version to compare against
|
|
672
|
+
* @returns `'greater'`, `'equal'`, or `'less'`
|
|
673
|
+
*/
|
|
576
674
|
compare(other) {
|
|
577
675
|
const numLen = Math.max(this.number.length, other.number.length);
|
|
578
676
|
for (let i = 0; i < numLen; i++) {
|
|
@@ -616,6 +714,11 @@ class Version {
|
|
|
616
714
|
}
|
|
617
715
|
return 'equal';
|
|
618
716
|
}
|
|
717
|
+
/**
|
|
718
|
+
* Compares two versions, returning a numeric value suitable for use with `Array.sort()`.
|
|
719
|
+
*
|
|
720
|
+
* @returns `-1` if less, `0` if equal, `1` if greater
|
|
721
|
+
*/
|
|
619
722
|
compareForSort(other) {
|
|
620
723
|
switch (this.compare(other)) {
|
|
621
724
|
case 'greater':
|
|
@@ -626,25 +729,70 @@ class Version {
|
|
|
626
729
|
return -1;
|
|
627
730
|
}
|
|
628
731
|
}
|
|
732
|
+
/**
|
|
733
|
+
* Parses a version string into a `Version` instance.
|
|
734
|
+
*
|
|
735
|
+
* @param version - A semver-compatible string, e.g. `"1.2.3"` or `"1.0.0-beta.1"`
|
|
736
|
+
* @throws If the string is not a valid version
|
|
737
|
+
*/
|
|
629
738
|
static parse(version) {
|
|
630
739
|
const parsed = P.parse(version, { startRule: 'Version' });
|
|
631
740
|
return new Version(parsed.number, parsed.prerelease);
|
|
632
741
|
}
|
|
742
|
+
/**
|
|
743
|
+
* Returns `true` if this version satisfies the given {@link VersionRange}.
|
|
744
|
+
* Internally treats this as an unflavored {@link ExtendedVersion} with downstream `0`.
|
|
745
|
+
*/
|
|
633
746
|
satisfies(versionRange) {
|
|
634
747
|
return new ExtendedVersion(null, this, new Version([0], [])).satisfies(versionRange);
|
|
635
748
|
}
|
|
636
749
|
}
|
|
637
750
|
exports.Version = Version;
|
|
638
|
-
|
|
751
|
+
/**
|
|
752
|
+
* Represents an extended version with an optional flavor, an upstream version, and a downstream version.
|
|
753
|
+
*
|
|
754
|
+
* The format is `#flavor:upstream:downstream` (e.g. `#bitcoin:1.2.3:0`) or `upstream:downstream`
|
|
755
|
+
* for unflavored versions. Flavors allow multiple variants of a package to coexist.
|
|
756
|
+
*
|
|
757
|
+
* - **flavor**: An optional string identifier for the variant (e.g. `"bitcoin"`, `"litecoin"`)
|
|
758
|
+
* - **upstream**: The version of the upstream software being packaged
|
|
759
|
+
* - **downstream**: The version of the StartOS packaging itself
|
|
760
|
+
*
|
|
761
|
+
* Versions with different flavors are incomparable (comparison returns `null`).
|
|
762
|
+
*
|
|
763
|
+
* @example
|
|
764
|
+
* ```ts
|
|
765
|
+
* const v = ExtendedVersion.parse("#bitcoin:1.2.3:0")
|
|
766
|
+
* console.log(v.flavor) // "bitcoin"
|
|
767
|
+
* console.log(v.upstream) // Version { number: [1, 2, 3] }
|
|
768
|
+
* console.log(v.downstream) // Version { number: [0] }
|
|
769
|
+
* console.log(v.toString()) // "#bitcoin:1.2.3:0"
|
|
770
|
+
*
|
|
771
|
+
* const range = VersionRange.parse(">=1.0.0:0")
|
|
772
|
+
* console.log(v.satisfies(range)) // true
|
|
773
|
+
* ```
|
|
774
|
+
*/
|
|
639
775
|
class ExtendedVersion {
|
|
640
|
-
constructor(
|
|
776
|
+
constructor(
|
|
777
|
+
/** The flavor identifier (e.g. `"bitcoin"`), or `null` for unflavored versions. */
|
|
778
|
+
flavor,
|
|
779
|
+
/** The upstream software version. */
|
|
780
|
+
upstream,
|
|
781
|
+
/** The downstream packaging version. */
|
|
782
|
+
downstream) {
|
|
641
783
|
this.flavor = flavor;
|
|
642
784
|
this.upstream = upstream;
|
|
643
785
|
this.downstream = downstream;
|
|
644
786
|
}
|
|
787
|
+
/** Serializes this extended version to its string form (e.g. `"#bitcoin:1.2.3:0"` or `"1.0.0:1"`). */
|
|
645
788
|
toString() {
|
|
646
789
|
return `${this.flavor ? `#${this.flavor}:` : ''}${this.upstream.toString()}:${this.downstream.toString()}`;
|
|
647
790
|
}
|
|
791
|
+
/**
|
|
792
|
+
* Compares this extended version against another.
|
|
793
|
+
*
|
|
794
|
+
* @returns `'greater'`, `'equal'`, `'less'`, or `null` if the flavors differ (incomparable)
|
|
795
|
+
*/
|
|
648
796
|
compare(other) {
|
|
649
797
|
if (this.flavor !== other.flavor) {
|
|
650
798
|
return null;
|
|
@@ -655,6 +803,10 @@ class ExtendedVersion {
|
|
|
655
803
|
}
|
|
656
804
|
return this.downstream.compare(other.downstream);
|
|
657
805
|
}
|
|
806
|
+
/**
|
|
807
|
+
* Lexicographic comparison — compares flavors alphabetically first, then versions.
|
|
808
|
+
* Unlike {@link compare}, this never returns `null`: different flavors are ordered alphabetically.
|
|
809
|
+
*/
|
|
658
810
|
compareLexicographic(other) {
|
|
659
811
|
if ((this.flavor || '') > (other.flavor || '')) {
|
|
660
812
|
return 'greater';
|
|
@@ -666,6 +818,10 @@ class ExtendedVersion {
|
|
|
666
818
|
return this.compare(other);
|
|
667
819
|
}
|
|
668
820
|
}
|
|
821
|
+
/**
|
|
822
|
+
* Returns a numeric comparison result suitable for use with `Array.sort()`.
|
|
823
|
+
* Uses lexicographic ordering (flavors sorted alphabetically, then by version).
|
|
824
|
+
*/
|
|
669
825
|
compareForSort(other) {
|
|
670
826
|
switch (this.compareLexicographic(other)) {
|
|
671
827
|
case 'greater':
|
|
@@ -676,25 +832,42 @@ class ExtendedVersion {
|
|
|
676
832
|
return -1;
|
|
677
833
|
}
|
|
678
834
|
}
|
|
835
|
+
/** Returns `true` if this version is strictly greater than `other`. Returns `false` if flavors differ. */
|
|
679
836
|
greaterThan(other) {
|
|
680
837
|
return this.compare(other) === 'greater';
|
|
681
838
|
}
|
|
839
|
+
/** Returns `true` if this version is greater than or equal to `other`. Returns `false` if flavors differ. */
|
|
682
840
|
greaterThanOrEqual(other) {
|
|
683
841
|
return ['greater', 'equal'].includes(this.compare(other));
|
|
684
842
|
}
|
|
843
|
+
/** Returns `true` if this version equals `other` (same flavor, upstream, and downstream). */
|
|
685
844
|
equals(other) {
|
|
686
845
|
return this.compare(other) === 'equal';
|
|
687
846
|
}
|
|
847
|
+
/** Returns `true` if this version is strictly less than `other`. Returns `false` if flavors differ. */
|
|
688
848
|
lessThan(other) {
|
|
689
849
|
return this.compare(other) === 'less';
|
|
690
850
|
}
|
|
851
|
+
/** Returns `true` if this version is less than or equal to `other`. Returns `false` if flavors differ. */
|
|
691
852
|
lessThanOrEqual(other) {
|
|
692
853
|
return ['less', 'equal'].includes(this.compare(other));
|
|
693
854
|
}
|
|
855
|
+
/**
|
|
856
|
+
* Parses an extended version string into an `ExtendedVersion`.
|
|
857
|
+
*
|
|
858
|
+
* @param extendedVersion - A string like `"1.2.3:0"` or `"#bitcoin:1.0.0:0"`
|
|
859
|
+
* @throws If the string is not a valid extended version
|
|
860
|
+
*/
|
|
694
861
|
static parse(extendedVersion) {
|
|
695
862
|
const parsed = P.parse(extendedVersion, { startRule: 'ExtendedVersion' });
|
|
696
863
|
return new ExtendedVersion(parsed.flavor || null, new Version(parsed.upstream.number, parsed.upstream.prerelease), new Version(parsed.downstream.number, parsed.downstream.prerelease));
|
|
697
864
|
}
|
|
865
|
+
/**
|
|
866
|
+
* Parses a legacy "emver" format extended version string.
|
|
867
|
+
*
|
|
868
|
+
* @param extendedVersion - A version string in the legacy emver format
|
|
869
|
+
* @throws If the string is not a valid emver version (error message includes the input string)
|
|
870
|
+
*/
|
|
698
871
|
static parseEmver(extendedVersion) {
|
|
699
872
|
try {
|
|
700
873
|
const parsed = P.parse(extendedVersion, { startRule: 'Emver' });
|
|
@@ -806,8 +979,29 @@ class ExtendedVersion {
|
|
|
806
979
|
}
|
|
807
980
|
}
|
|
808
981
|
exports.ExtendedVersion = ExtendedVersion;
|
|
982
|
+
/**
|
|
983
|
+
* Compile-time type-checking helper that validates an extended version string literal.
|
|
984
|
+
* If the string is invalid, TypeScript will report a type error at the call site.
|
|
985
|
+
*
|
|
986
|
+
* @example
|
|
987
|
+
* ```ts
|
|
988
|
+
* testTypeExVer("1.2.3:0") // compiles
|
|
989
|
+
* testTypeExVer("#bitcoin:1.0:0") // compiles
|
|
990
|
+
* testTypeExVer("invalid") // type error
|
|
991
|
+
* ```
|
|
992
|
+
*/
|
|
809
993
|
const testTypeExVer = (t) => t;
|
|
810
994
|
exports.testTypeExVer = testTypeExVer;
|
|
995
|
+
/**
|
|
996
|
+
* Compile-time type-checking helper that validates a version string literal.
|
|
997
|
+
* If the string is invalid, TypeScript will report a type error at the call site.
|
|
998
|
+
*
|
|
999
|
+
* @example
|
|
1000
|
+
* ```ts
|
|
1001
|
+
* testTypeVersion("1.2.3") // compiles
|
|
1002
|
+
* testTypeVersion("-3") // type error
|
|
1003
|
+
* ```
|
|
1004
|
+
*/
|
|
811
1005
|
const testTypeVersion = (t) => t;
|
|
812
1006
|
exports.testTypeVersion = testTypeVersion;
|
|
813
1007
|
function tests() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../base/lib/exver/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iFAAuD;AACvD,2CAA4B;AAuE5B,SAAS,yBAAyB,CAChC,CAAoB,EACpB,CAAoB;IAEpB,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC9C,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;QACZ,OAAO,EAAE,CAAA;IACX,CAAC;IACD,IAAI,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;IAChD,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACd,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACpB,OAAO,CAAC,CAAC,CAAA;IACX,CAAC;SAAM,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAA;IACV,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,CAAA;IACV,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CACjC,CAAoB,EACpB,CAAoB;IAEpB,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC9C,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;QACZ,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;IAChD,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACd,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAA;AACpC,CAAC;AAED,SAAS,SAAS,CAAC,CAAa,EAAE,CAAa;IAC7C,IAAI,CAAC,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBACzB,OAAO,CAAC,CAAA;YACV,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAA;YACb,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,CAAA;YACV,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAA;YACb,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,CAAA;YACV,CAAC;QACH,CAAC;aAAM,CAAC;YACN,mDAAmD;YACnD,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;aAC/C,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AASD;;;GAGG;AACH,MAAM,iBAAiB;IACrB,YACY,MAAgC,EAChC,MAAiB;QADjB,WAAM,GAAN,MAAM,CAA0B;QAChC,WAAM,GAAN,MAAM,CAAW;IAC1B,CAAC;IAEJ,MAAM,CAAC,GAAG,CACR,CAAoB,EACpB,CAAoB,EACpB,IAAyC;QAEzC,IAAI,CAAC,GAAG,IAAI,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QACrC,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YACzC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;gBACjE,yBAAyB;gBACzB,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAA;YAChB,CAAC;iBAAM,CAAC;gBACN,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACrB,CAAC;YAED,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBACzB,qDAAqD;oBACrD,OAAO,CAAC,CAAA;gBACV,CAAC;qBAAM,CAAC;oBACN,mCAAmC;oBACnC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC1B,CAAC,IAAI,CAAC,CAAA;gBACR,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBACzB,qCAAqC;oBACrC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC1B,CAAC,IAAI,CAAC,CAAA;gBACR,CAAC;qBAAM,CAAC;oBACN,mDAAmD;oBACnD,QAAQ,yBAAyB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5D,KAAK,CAAC,CAAC;4BACL,uBAAuB;4BACvB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;4BAC1B,CAAC,IAAI,CAAC,CAAA;4BACN,MAAK;wBACP,KAAK,CAAC;4BACJ,uBAAuB;4BACvB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;4BAC1B,CAAC,IAAI,CAAC,CAAA;4BACN,MAAK;wBACP;4BACE,iBAAiB;4BACjB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;4BAC1B,CAAC,IAAI,CAAC,CAAA;4BACN,CAAC,IAAI,CAAC,CAAA;4BACN,MAAK;oBACT,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAqB;QACnC,OAAO,IAAI,uCAAO,CAAC;YACjB;gBACE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAgB;gBACxC,IAAI,iBAAiB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;aAClC;YACD,4EAA4E;YAC5E;gBACE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAAgB;gBAC/D,IAAI,iBAAiB,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;aACnC;SACF,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,QAAQ,CACb,MAAqB,EACrB,KAAwB,EACxB,IAAa,EACb,KAAc;QAEd,OAAO,IAAI,uCAAO,CAAC;YACjB;gBACE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAgB;gBACxC,IAAI,iBAAiB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aAC9C;YACD,4EAA4E;YAC5E;gBACE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAAgB;gBAC/D,IAAI,iBAAiB,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;aACnC;SACF,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,GAAG,CACR,OAAwB,EACxB,IAAY,EACZ,IAAa,EACb,KAAc;QAEd,OAAO,iBAAiB,CAAC,QAAQ,CAC/B,OAAO,CAAC,MAAM,EACd,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,EACpE,IAAI,EACJ,KAAK,CACN,CAAA;IACH,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,MAA0B;QACnC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACxC,OAAO,CAAC,MAAM,CAAA;QAChB,CAAC;QACD,wEAAwE;QACxE,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC;YAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,GAAG,CACR,QAA4B,EAC5B,QAA4B;QAE5B,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC5C,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,QAAQ,GAAuB,IAAI,CAAA;QACvC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC9B,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC9B,IAAI,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;gBAChC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,SAAQ;gBACV,CAAC;gBACD,IAAI,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;gBACrD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACtB,QAAQ,GAAG,IAAI,uCAAO,EAAE,CAAA;gBAC1B,CAAC;gBACD,IAAI,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACjC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBACzB,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,GAAG,CACV,MAAM,EACN,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CACnD,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,EAAE,CAAC,GAAG,SAA+B;QAC1C,IAAI,UAAU,GAAuB,KAAK,CAAA;QAC1C,KAAK,IAAI,MAAM,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBACrB,SAAQ;YACV,CAAC;YACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;gBACzB,UAAU,GAAG,IAAI,uCAAO,EAAE,CAAA;YAC5B,CAAC;YACD,KAAK,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;gBACnC,IAAI,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACjC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;oBACjB,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;gBAC/B,CAAC;qBAAM,CAAC;oBACN,UAAU,CAAC,GAAG,CACZ,MAAM,EACN,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CACrD,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,MAA0B;QACxC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACxC,OAAO,MAAM,CAAA;QACf,CAAC;aAAM,CAAC;YACN,IAAI,KAAK,GAAG,IAAI,CAAA;YAChB,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;gBAClC,KAAK,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAC3B,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;wBAClB,KAAK,GAAG,CAAC,CAAA;oBACX,CAAC;yBAAM,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;wBACtB,OAAO,IAAI,CAAA;oBACb,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,MAA0B;QACxC,IAAI,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACjD,IAAI,MAAM,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACzC,OAAO,YAAY,CAAC,GAAG,EAAE,CAAA;QAC3B,CAAC;QACD,IAAI,MAAM,IAAI,KAAK,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC1C,OAAO,YAAY,CAAC,IAAI,EAAE,CAAA;QAC5B,CAAC;QACD,IAAI,SAAS,GAAmB,EAAE,CAAA;QAClC,KAAK,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YACnC,IAAI,UAAU,GAAG,IAAI,CAAA;YACrB,IAAI,MAAM,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC5B,UAAU,GAAG,MAAM,CAAC,MAAM,CAAA;YAC5B,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,IAAI,IAAI,GAAmB,EAAE,CAAA;gBAC7B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrB,SAAQ;gBACV,CAAC;gBAED,IAAI,MAAM,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;oBAC/B,KAAK,IAAI,UAAU,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACtC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,CAAC,CAAA;oBAClD,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,GAAG,IAAI,CAAA;gBACZ,IAAI,CAAC,GAAG,IAAI,CAAA;gBACZ,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBACV,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBACzB,CAAC;gBACD,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC5B,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;gBACrB,CAAC;gBAED,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAC/D,IAAI,CAAC,IAAI,CACP,YAAY,CAAC,MAAM,CACjB,GAAG,EACH,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,CAC1D,CACF,CAAA;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;wBAC5B,IAAI,CAAC,IAAI,CACP,YAAY,CAAC,MAAM,CACjB,IAAI,EACJ,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,CAC1D,CACF,CAAA;oBACH,CAAC;oBACD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;wBAC7B,IAAI,CAAC,IAAI,CACP,YAAY,CAAC,MAAM,CACjB,GAAG,EACH,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,CAC1D,CACF,CAAA;oBACH,CAAC;oBACD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;wBAC5B,IAAI,CAAC,IAAI,CACP,YAAY,CAAC,MAAM,CACjB,GAAG,EACH,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,CAC1D,CACF,CAAA;oBACH,CAAC;oBACD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;wBAC7B,IAAI,CAAC,IAAI,CACP,YAAY,CAAC,MAAM,CACjB,IAAI,EACJ,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,CAC1D,CACF,CAAA;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;oBACrB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;gBAC5C,CAAC;gBAED,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;QACD,OAAO,YAAY,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAA;IACtC,CAAC;CACF;AAED,MAAa,YAAY;IACvB,YAAmB,IAAuD;QAAvD,SAAI,GAAJ,IAAI,CAAmD;IAAG,CAAC;IAE9E,cAAc,CAAC,MAA4B;QACzC,IAAI,KAAK,GAAG,IAAI,CAAA;QAChB,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,KAAK,CAAC;YACX,KAAK,IAAI;gBACP,KAAK,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;gBAChC,MAAK;YACP,KAAK,QAAQ,CAAC;YACd,KAAK,KAAK,CAAC;YACX,KAAK,MAAM;gBACT,KAAK,GAAG,MAAM,IAAI,KAAK,CAAA;gBACvB,MAAK;YACP,KAAK,KAAK,CAAC;YACX,KAAK,QAAQ;gBACX,KAAK,GAAG,KAAK,CAAA;gBACb,MAAK;QACT,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;QACxB,CAAC;IACH,CAAC;IAED,QAAQ;QACN,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,QAAQ;gBACX,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;YACpD,KAAK,KAAK;gBACR,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;YAChH,KAAK,IAAI;gBACP,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;YAChH,KAAK,KAAK;gBACR,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;YAC7D,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAA;YAChE,KAAK,KAAK;gBACR,OAAO,GAAG,CAAA;YACZ,KAAK,MAAM;gBACT,OAAO,GAAG,CAAA;QACd,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,SAAS,CAAC,IAAwB;QAC/C,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,KAAK;gBACR,OAAO,IAAI,YAAY,CAAC;oBACtB,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;iBAC1C,CAAC,CAAA;YACJ,KAAK,QAAQ;gBACX,OAAO,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,KAAK,QAAQ;gBACX,OAAO,IAAI,YAAY,CAAC;oBACtB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,GAAG;oBAC9B,OAAO,EAAE,IAAI,eAAe,CAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,IAAI,OAAO,CACT,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAC5B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CACjC,EACD,IAAI,OAAO,CACT,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,EAC9B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CACnC,CACF;iBACF,CAAC,CAAA;YACJ,KAAK,QAAQ;gBACX,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACzC;gBACE,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,UAAU,CAAC,KAAqB;QAC7C,IAAI,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,KAAK,IAAI;oBACP,MAAM,GAAG,IAAI,YAAY,CAAC;wBACxB,IAAI,EAAE,IAAI;wBACV,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;qBACvC,CAAC,CAAA;oBACF,MAAK;gBACP,KAAK,IAAI,CAAC;gBACV;oBACE,MAAM,GAAG,IAAI,YAAY,CAAC;wBACxB,IAAI,EAAE,KAAK;wBACX,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;qBACvC,CAAC,CAAA;oBACF,MAAK;YACT,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAa;QACxB,OAAO,YAAY,CAAC,UAAU,CAC5B,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAC9C,CAAA;IACH,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,QAAiB,EAAE,OAAwB;QACvD,OAAO,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;IAChE,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,MAAqB;QACjC,OAAO,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAA;IACrD,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAa;QAC7B,OAAO,YAAY,CAAC,UAAU,CAC5B,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CACnD,CAAA;IACH,CAAC;IAED,GAAG,CAAC,KAAmB;QACrB,OAAO,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC7D,CAAC;IAED,EAAE,CAAC,KAAmB;QACpB,OAAO,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,GAAG;QACD,OAAO,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,GAAG,EAAuB;QACnC,IAAI,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,CAAA;QAC1B,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACjB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,SAAQ;YACV,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,OAAO,CAAC,CAAA;YACV,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,CAAC,GAAG,CAAC,CAAA;YACP,CAAC;iBAAM,CAAC;gBACN,CAAC,GAAG,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;YAC1D,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,CAAC,EAAE,CAAC,GAAG,EAAuB;QAClC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,CAAA;QAC3B,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACjB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,SAAQ;YACV,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,OAAO,CAAC,CAAA;YACV,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,CAAC,GAAG,CAAC,CAAA;YACP,CAAC;iBAAM,CAAC;gBACN,CAAC,GAAG,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;YACzD,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,CAAC,GAAG;QACR,OAAO,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,CAAC,IAAI;QACT,OAAO,IAAI,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,WAAW,CAAC,OAAkC;QAC5C,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,MAAM;QACJ,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,QAAQ;gBACX,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC3B,KAAK,GAAG;wBACN,4DAA4D;wBAC5D,OAAO,iBAAiB,CAAC,GAAG,CAC1B,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EACzD,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CACzD,CAAA;oBACH,KAAK,GAAG;wBACN,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;oBACjE,KAAK,GAAG;wBACN,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;oBAClE,KAAK,IAAI;wBACP,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;oBAClE,KAAK,IAAI;wBACP,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;oBACjE,KAAK,IAAI;wBACP,gEAAgE;wBAChE,wDAAwD;wBACxD,OAAO,iBAAiB,CAAC,GAAG,CAC1B,iBAAiB,CAAC,GAAG,CACnB,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EACzD,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CACzD,CACF,CAAA;oBACH,KAAK,GAAG;wBACN,2DAA2D;wBAC3D,OAAO,iBAAiB,CAAC,GAAG,CAC1B,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EACzD,iBAAiB,CAAC,GAAG,CACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAClC,CAAC,CAAC,EACF,IAAI,EACJ,KAAK,CACN,CACF,CAAA;oBACH,KAAK,GAAG;wBACN,2DAA2D;wBAC3D,OAAO,iBAAiB,CAAC,GAAG,CAC1B,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EACzD,iBAAiB,CAAC,GAAG,CACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAClC,CAAC,CAAC,EACF,IAAI,EACJ,KAAK,CACN,CACF,CAAA;gBACL,CAAC;YACH,KAAK,QAAQ;gBACX,OAAO,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACrD,KAAK,KAAK;gBACR,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;YACxD,KAAK,KAAK;gBACR,OAAO,iBAAiB,CAAC,GAAG,CAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CACzB,CAAA;YACH,KAAK,IAAI;gBACP,OAAO,iBAAiB,CAAC,EAAE,CACzB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CACzB,CAAA;YACH,KAAK,KAAK;gBACR,OAAO,IAAI,CAAA;YACb,KAAK,MAAM;gBACT,OAAO,KAAK,CAAA;QAChB,CAAC;IACH,CAAC;IAED,WAAW;QACT,OAAO,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,KAAK,CAAA;IAC5D,CAAC;IAED,UAAU,CAAC,KAAmB;QAC5B,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IACpD,CAAC;IAED,SAAS;QACP,OAAO,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;IAClD,CAAC;CACF;AAzQD,oCAyQC;AAED,MAAa,OAAO;IAClB,YACS,MAAgB,EAChB,UAA+B;QAD/B,WAAM,GAAN,MAAM,CAAU;QAChB,eAAU,GAAV,UAAU,CAAqB;IACrC,CAAC;IAEJ,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;IACvG,CAAC;IAED,OAAO,CAAC,KAAc;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAChE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBACnD,OAAO,SAAS,CAAA;YAClB,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC1D,OAAO,MAAM,CAAA;YACf,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClE,OAAO,SAAS,CAAA;QAClB,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzE,OAAO,MAAM,CAAA;QACf,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAC5B,IAAI,CAAC,UAAU,CAAC,MAAM,EACtB,KAAK,CAAC,UAAU,CAAC,MAAM,CACxB,CAAA;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7C,OAAO,SAAS,CAAA;gBAClB,CAAC;qBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpD,OAAO,MAAM,CAAA;gBACf,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBACrE,KAAK,eAAe;wBAClB,OAAO,MAAM,CAAA;oBACf,KAAK,eAAe;wBAClB,OAAO,SAAS,CAAA;oBAClB,KAAK,kBAAkB,CAAC;oBACxB,KAAK,kBAAkB;wBACrB,OAAO,SAAS,CAAA;oBAClB,KAAK,kBAAkB,CAAC;oBACxB,KAAK,kBAAkB;wBACrB,OAAO,MAAM,CAAA;gBACjB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,cAAc,CAAC,KAAc;QAC3B,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,KAAK,SAAS;gBACZ,OAAO,CAAC,CAAA;YACV,KAAK,OAAO;gBACV,OAAO,CAAC,CAAA;YACV,KAAK,MAAM;gBACT,OAAO,CAAC,CAAC,CAAA;QACb,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAe;QAC1B,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAA;QACzD,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;IACtD,CAAC;IAED,SAAS,CAAC,YAA0B;QAClC,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CACpE,YAAY,CACb,CAAA;IACH,CAAC;CACF;AA7ED,0BA6EC;AAED,yBAAyB;AACzB,MAAa,eAAe;IAC1B,YACS,MAAqB,EACrB,QAAiB,EACjB,UAAmB;QAFnB,WAAM,GAAN,MAAM,CAAe;QACrB,aAAQ,GAAR,QAAQ,CAAS;QACjB,eAAU,GAAV,UAAU,CAAS;IACzB,CAAC;IAEJ,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAA;IAC5G,CAAC;IAED,OAAO,CAAC,KAAsB;QAC5B,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YACjC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACzD,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,WAAW,CAAA;QACpB,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAClD,CAAC;IAED,oBAAoB,CAAC,KAAsB;QACzC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;YAC/C,OAAO,SAAS,CAAA;QAClB,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;YACtD,OAAO,MAAM,CAAA;QACf,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAE,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,cAAc,CAAC,KAAsB;QACnC,QAAQ,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,KAAK,SAAS;gBACZ,OAAO,CAAC,CAAA;YACV,KAAK,OAAO;gBACV,OAAO,CAAC,CAAA;YACV,KAAK,MAAM;gBACT,OAAO,CAAC,CAAC,CAAA;QACb,CAAC;IACH,CAAC;IAED,WAAW,CAAC,KAAsB;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,SAAS,CAAA;IAC1C,CAAC;IAED,kBAAkB,CAAC,KAAsB;QACvC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAW,CAAC,CAAA;IACrE,CAAC;IAED,MAAM,CAAC,KAAsB;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,OAAO,CAAA;IACxC,CAAC;IAED,QAAQ,CAAC,KAAsB;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,CAAA;IACvC,CAAC;IAED,eAAe,CAAC,KAAsB;QACpC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAW,CAAC,CAAA;IAClE,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,eAAuB;QAClC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAA;QACzE,OAAO,IAAI,eAAe,CACxB,MAAM,CAAC,MAAM,IAAI,IAAI,EACrB,IAAI,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAC/D,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CACpE,CAAA;IACH,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,eAAuB;QACvC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAA;YAC/D,OAAO,IAAI,eAAe,CACxB,MAAM,CAAC,MAAM,IAAI,IAAI,EACrB,IAAI,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAC/D,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CACpE,CAAA;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;gBACvB,CAAC,CAAC,OAAO,IAAI,KAAK,eAAe,GAAG,CAAA;YACtC,CAAC;YACD,MAAM,CAAC,CAAA;QACT,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,cAAc;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;QAE3E,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAU,EAAE;YAChE,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC;gBACnB,OAAO,CAAC,CAAA;YACV,CAAC;iBAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,GAAG,GAAG,CAAC,CAAA;YAChB,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC,CAAC,CAAA;QAEF,MAAM,mBAAmB,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACxD,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAE9C,OAAO,IAAI,eAAe,CACxB,IAAI,CAAC,MAAM,EACX,mBAAmB,EACnB,iBAAiB,CAClB,CAAA;IACH,CAAC;IAED;;;;OAIG;IACH,cAAc;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;QAC3E,IAAI,QAAQ,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAA;QAExD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAU,EAAE;YAChE,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC;gBACnB,OAAO,CAAC,CAAA;YACV,CAAC;iBAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,GAAG,GAAG,CAAC,CAAA;YAChB,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC,CAAC,CAAA;QAEF,MAAM,mBAAmB,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACxD,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAE9C,OAAO,IAAI,eAAe,CACxB,IAAI,CAAC,MAAM,EACX,mBAAmB,EACnB,iBAAiB,CAClB,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,YAA0B;QAClC,QAAQ,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,KAAK,QAAQ;gBACX,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAA;gBAC9C,QAAQ,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACnC,KAAK,GAAG;wBACN,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;oBAClC,KAAK,GAAG;wBACN,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;oBACvC,KAAK,GAAG;wBACN,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;oBACpC,KAAK,IAAI;wBACP,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAA;oBAC9C,KAAK,IAAI;wBACP,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;oBAC3C,KAAK,IAAI;wBACP,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;oBACnC,KAAK,GAAG;wBACN,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAA;wBAC5D,IACE,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC;4BACrC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EACxB,CAAC;4BACD,OAAO,IAAI,CAAA;wBACb,CAAC;6BAAM,CAAC;4BACN,OAAO,KAAK,CAAA;wBACd,CAAC;oBACH,KAAK,GAAG;wBACN,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAA;wBAC5D,IACE,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC;4BACrC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EACxB,CAAC;4BACD,OAAO,IAAI,CAAA;wBACb,CAAC;6BAAM,CAAC;4BACN,OAAO,KAAK,CAAA;wBACd,CAAC;gBACL,CAAC;YACH,KAAK,QAAQ;gBACX,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAA;YAChD,KAAK,KAAK;gBACR,OAAO,CACL,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CACxC,CAAA;YACH,KAAK,IAAI;gBACP,OAAO,CACL,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CACxC,CAAA;YACH,KAAK,KAAK;gBACR,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACjD,KAAK,KAAK;gBACR,OAAO,IAAI,CAAA;YACb,KAAK,MAAM;gBACT,OAAO,KAAK,CAAA;QAChB,CAAC;IACH,CAAC;CACF;AA7MD,0CA6MC;AAEM,MAAM,aAAa,GAAG,CAAmB,CAAuB,EAAE,EAAE,CAAC,CAAC,CAAA;AAAhE,QAAA,aAAa,iBAAmD;AAEtE,MAAM,eAAe,GAAG,CAAmB,CAAyB,EAAE,EAAE,CAC7E,CAAC,CAAA;AADU,QAAA,eAAe,mBACzB;AAEH,SAAS,KAAK;IACZ,IAAA,uBAAe,EAAC,OAAO,CAAC,CAAA;IACxB,IAAA,uBAAe,EAAC,GAAG,CAAC,CAAA;IACpB,IAAA,uBAAe,EAAC,UAAU,CAAC,CAAA;IAC3B,IAAA,uBAAe,EAAC,OAAO,CAAC,CAAA;IACxB,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;IACtB,IAAA,uBAAe,EAAC,SAAS,CAAC,CAAA;IAC1B,mBAAmB;IACnB,IAAA,uBAAe,EAAC,IAAI,CAAC,CAAA;IACrB,mBAAmB;IACnB,IAAA,uBAAe,EAAC,SAAS,CAAC,CAAA;IAC1B,mBAAmB;IACnB,IAAA,uBAAe,EAAC,UAAU,CAAC,CAAA;IAE3B,IAAA,qBAAa,EAAC,aAAa,CAAC,CAAA;IAC5B,IAAA,qBAAa,EAAC,uBAAuB,CAAC,CAAA;IACtC,IAAA,qBAAa,EAAC,OAAO,CAAC,CAAA;IACtB,IAAA,qBAAa,EAAC,UAAU,CAAC,CAAA;IACzB,IAAA,qBAAa,EAAC,8BAA8B,CAAC,CAAA;IAC7C,IAAA,qBAAa,EAAC,OAAO,CAAC,CAAA;IACtB,IAAA,qBAAa,EAAC,OAAO,CAAC,CAAA;IACtB,mBAAmB;IACnB,IAAA,qBAAa,EAAC,OAAO,CAAC,CAAA;IACtB,mBAAmB;IACnB,IAAA,qBAAa,EAAC,KAAK,CAAC,CAAA;IACpB,mBAAmB;IACnB,IAAA,qBAAa,EAAC,0BAAoC,CAAC,CAAA;IACnD,mBAAmB;IACnB,IAAA,qBAAa,EAAC,QAAQ,CAAC,CAAA;IACvB,mBAAmB;IACnB,IAAA,qBAAa,EAAC,UAAU,CAAC,CAAA;AAC3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../base/lib/exver/index.ts"],"names":[],"mappings":"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"}
|
package/base/lib/index.d.ts
CHANGED
|
@@ -7,5 +7,13 @@ export * as types from './types';
|
|
|
7
7
|
export * as T from './types';
|
|
8
8
|
export * as yaml from 'yaml';
|
|
9
9
|
export * as inits from './inits';
|
|
10
|
-
|
|
10
|
+
import { z as _z } from 'zod';
|
|
11
|
+
import type { DeepPartial } from './types';
|
|
12
|
+
type ZodDeepPartial = <T>(a: _z.ZodType<T>) => _z.ZodType<DeepPartial<T>>;
|
|
13
|
+
declare module 'zod' {
|
|
14
|
+
namespace z {
|
|
15
|
+
const deepPartial: ZodDeepPartial;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export { _z as z };
|
|
11
19
|
export * as utils from './util';
|
package/base/lib/index.js
CHANGED
|
@@ -47,7 +47,9 @@ exports.types = __importStar(require("./types"));
|
|
|
47
47
|
exports.T = __importStar(require("./types"));
|
|
48
48
|
exports.yaml = __importStar(require("yaml"));
|
|
49
49
|
exports.inits = __importStar(require("./inits"));
|
|
50
|
-
|
|
50
|
+
const zod_1 = require("zod");
|
|
51
51
|
Object.defineProperty(exports, "z", { enumerable: true, get: function () { return zod_1.z; } });
|
|
52
|
+
const zod_deep_partial_1 = require("zod-deep-partial");
|
|
53
|
+
zod_1.z.deepPartial = (a) => (0, zod_deep_partial_1.zodDeepPartial)(a).passthrough();
|
|
52
54
|
exports.utils = __importStar(require("./util"));
|
|
53
55
|
//# sourceMappingURL=index.js.map
|
package/base/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../base/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,iCAAgE;AAAvD,qGAAA,YAAY,OAAA;AAAE,wGAAA,eAAe,OAAA;AAAE,gGAAA,OAAO,OAAA;AAE/C,6DAA4C;AAC5C,+DAA8C;AAC9C,sEAAqD;AACrD,iDAAgC;AAChC,6CAA4B;AAC5B,6CAA4B;AAC5B,iDAAgC;AAChC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../base/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,iCAAgE;AAAvD,qGAAA,YAAY,OAAA;AAAE,wGAAA,eAAe,OAAA;AAAE,gGAAA,OAAO,OAAA;AAE/C,6DAA4C;AAC5C,+DAA8C;AAC9C,sEAAqD;AACrD,iDAAgC;AAChC,6CAA4B;AAC5B,6CAA4B;AAC5B,iDAAgC;AAChC,6BAA6B;AAiBd,kFAjBD,OAAE,OAiBA;AAhBhB,uDAAiD;AAM/C,OAAU,CAAC,WAAW,GAAG,CAAI,CAAgB,EAAE,EAAE,CAChD,IAAA,iCAAc,EAAC,CAAC,CAAS,CAAC,WAAW,EAAE,CAAA;AAW1C,gDAA+B"}
|
|
@@ -1,9 +1,26 @@
|
|
|
1
1
|
import * as T from '../../../base/lib/types';
|
|
2
|
+
/**
|
|
3
|
+
* The reason a service's init function is being called:
|
|
4
|
+
* - `'install'` — first-time installation
|
|
5
|
+
* - `'update'` — after a package update
|
|
6
|
+
* - `'restore'` — after restoring from backup
|
|
7
|
+
* - `null` — regular startup (no special lifecycle event)
|
|
8
|
+
*/
|
|
2
9
|
export type InitKind = 'install' | 'update' | 'restore' | null;
|
|
10
|
+
/** Function signature for an init handler that runs during service startup. */
|
|
3
11
|
export type InitFn<Kind extends InitKind = InitKind> = (effects: T.Effects, kind: Kind) => Promise<void | null | undefined>;
|
|
12
|
+
/** Object form of an init handler — implements an `init()` method. */
|
|
4
13
|
export interface InitScript<Kind extends InitKind = InitKind> {
|
|
5
14
|
init(effects: T.Effects, kind: Kind): Promise<void>;
|
|
6
15
|
}
|
|
16
|
+
/** Either an {@link InitScript} object or an {@link InitFn} function. */
|
|
7
17
|
export type InitScriptOrFn<Kind extends InitKind = InitKind> = InitScript<Kind> | InitFn<Kind>;
|
|
18
|
+
/**
|
|
19
|
+
* Composes multiple init handlers into a single `ExpectedExports.init`-compatible function.
|
|
20
|
+
* Handlers are executed sequentially in the order provided.
|
|
21
|
+
*
|
|
22
|
+
* @param inits - One or more init handlers to compose
|
|
23
|
+
*/
|
|
8
24
|
export declare function setupInit(...inits: InitScriptOrFn[]): T.ExpectedExports.init;
|
|
25
|
+
/** Normalizes an {@link InitScriptOrFn} into an {@link InitScript} object. */
|
|
9
26
|
export declare function setupOnInit(onInit: InitScriptOrFn): InitScript;
|
|
@@ -3,6 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.setupInit = setupInit;
|
|
4
4
|
exports.setupOnInit = setupOnInit;
|
|
5
5
|
const util_1 = require("../util");
|
|
6
|
+
/**
|
|
7
|
+
* Composes multiple init handlers into a single `ExpectedExports.init`-compatible function.
|
|
8
|
+
* Handlers are executed sequentially in the order provided.
|
|
9
|
+
*
|
|
10
|
+
* @param inits - One or more init handlers to compose
|
|
11
|
+
*/
|
|
6
12
|
function setupInit(...inits) {
|
|
7
13
|
return async (opts) => {
|
|
8
14
|
for (const idx in inits) {
|
|
@@ -28,6 +34,7 @@ function setupInit(...inits) {
|
|
|
28
34
|
}
|
|
29
35
|
};
|
|
30
36
|
}
|
|
37
|
+
/** Normalizes an {@link InitScriptOrFn} into an {@link InitScript} object. */
|
|
31
38
|
function setupOnInit(onInit) {
|
|
32
39
|
return 'init' in onInit
|
|
33
40
|
? onInit
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupInit.js","sourceRoot":"","sources":["../../../../base/lib/inits/setupInit.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"setupInit.js","sourceRoot":"","sources":["../../../../base/lib/inits/setupInit.ts"],"names":[],"mappings":";;AAmCA,8BAuBC;AAGD,kCAQC;AAnED,kCAA8B;AA2B9B;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,GAAG,KAAuB;IAClD,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;QACpB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;YACvB,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE;gBACpB,IAAI,GAAG,GAAgC,GAAG,EAAE,GAAE,CAAC,CAAA;gBAC/C,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBACvC,GAAG,GAAG,OAAO,CAAA;gBACf,CAAC,CAAC,CAAA;gBACF,MAAM,CAAC,GAAc,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAA;gBACtD,CAAC,CAAC,UAAU,GAAG,IAAA,WAAI,EAAC,GAAG,EAAE,CACvB,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAC/C,CAAA;gBACD,IAAI,CAAC;oBACH,IAAI,MAAM,IAAI,IAAI;wBAAE,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;;wBAC5C,MAAM,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC/B,CAAC;wBAAS,CAAC;oBACT,GAAG,EAAE,CAAA;gBACP,CAAC;YACH,CAAC,CAAA;YACD,MAAM,EAAE,EAAE,CAAA;QACZ,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,SAAgB,WAAW,CAAC,MAAsB;IAChD,OAAO,MAAM,IAAI,MAAM;QACrB,CAAC,CAAC,MAAM;QACR,CAAC,CAAC;YACE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBAC5B,MAAM,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;YAC7B,CAAC;SACF,CAAA;AACP,CAAC"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { ExtendedVersion, VersionRange } from '../../../base/lib/exver';
|
|
2
2
|
import * as T from '../../../base/lib/types';
|
|
3
|
+
/**
|
|
4
|
+
* Function signature for an uninit handler that runs during service shutdown/uninstall.
|
|
5
|
+
*/
|
|
3
6
|
export type UninitFn = (effects: T.Effects,
|
|
4
7
|
/**
|
|
5
8
|
* @description the target version to prepare for
|
|
@@ -9,6 +12,7 @@ export type UninitFn = (effects: T.Effects,
|
|
|
9
12
|
* on shutdown: the current version
|
|
10
13
|
*/
|
|
11
14
|
target: VersionRange | ExtendedVersion | null) => Promise<void | null | undefined>;
|
|
15
|
+
/** Object form of an uninit handler — implements an `uninit()` method. */
|
|
12
16
|
export interface UninitScript {
|
|
13
17
|
uninit(effects: T.Effects,
|
|
14
18
|
/**
|
|
@@ -20,6 +24,14 @@ export interface UninitScript {
|
|
|
20
24
|
*/
|
|
21
25
|
target: VersionRange | ExtendedVersion | null): Promise<void>;
|
|
22
26
|
}
|
|
27
|
+
/** Either a {@link UninitScript} object or a {@link UninitFn} function. */
|
|
23
28
|
export type UninitScriptOrFn = UninitScript | UninitFn;
|
|
29
|
+
/**
|
|
30
|
+
* Composes multiple uninit handlers into a single `ExpectedExports.uninit`-compatible function.
|
|
31
|
+
* Handlers are executed sequentially in the order provided.
|
|
32
|
+
*
|
|
33
|
+
* @param uninits - One or more uninit handlers to compose
|
|
34
|
+
*/
|
|
24
35
|
export declare function setupUninit(...uninits: UninitScriptOrFn[]): T.ExpectedExports.uninit;
|
|
36
|
+
/** Normalizes a {@link UninitScriptOrFn} into a {@link UninitScript} object. */
|
|
25
37
|
export declare function setupOnUninit(onUninit: UninitScriptOrFn): UninitScript;
|
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.setupUninit = setupUninit;
|
|
4
4
|
exports.setupOnUninit = setupOnUninit;
|
|
5
|
+
/**
|
|
6
|
+
* Composes multiple uninit handlers into a single `ExpectedExports.uninit`-compatible function.
|
|
7
|
+
* Handlers are executed sequentially in the order provided.
|
|
8
|
+
*
|
|
9
|
+
* @param uninits - One or more uninit handlers to compose
|
|
10
|
+
*/
|
|
5
11
|
function setupUninit(...uninits) {
|
|
6
12
|
return async (opts) => {
|
|
7
13
|
for (const uninit of uninits) {
|
|
@@ -12,6 +18,7 @@ function setupUninit(...uninits) {
|
|
|
12
18
|
}
|
|
13
19
|
};
|
|
14
20
|
}
|
|
21
|
+
/** Normalizes a {@link UninitScriptOrFn} into a {@link UninitScript} object. */
|
|
15
22
|
function setupOnUninit(onUninit) {
|
|
16
23
|
return 'uninit' in onUninit
|
|
17
24
|
? onUninit
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupUninit.js","sourceRoot":"","sources":["../../../../base/lib/inits/setupUninit.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"setupUninit.js","sourceRoot":"","sources":["../../../../base/lib/inits/setupUninit.ts"],"names":[],"mappings":";;AA0CA,kCASC;AAGD,sCAQC;AA1BD;;;;;GAKG;AACH,SAAgB,WAAW,CACzB,GAAG,OAA2B;IAE9B,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;QACpB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,QAAQ,IAAI,MAAM;gBAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;;gBACjE,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,gFAAgF;AAChF,SAAgB,aAAa,CAAC,QAA0B;IACtD,OAAO,QAAQ,IAAI,QAAQ;QACzB,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC;YACE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;gBAChC,MAAM,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YACjC,CAAC;SACF,CAAA;AACP,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type ServerHostname = string;
|