primitive-admin 1.2.0-alpha.6 → 1.2.0-alpha.8

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.
Files changed (110) hide show
  1. package/README.md +9 -3
  2. package/assets/skill/skills/primitive-platform/SKILL.md +12 -6
  3. package/dist/src/commands/apps-children.d.ts +1 -1
  4. package/dist/src/commands/apps-children.js +172 -28
  5. package/dist/src/commands/apps-children.js.map +1 -1
  6. package/dist/src/commands/auth.js +147 -38
  7. package/dist/src/commands/auth.js.map +1 -1
  8. package/dist/src/commands/config.js +43 -4
  9. package/dist/src/commands/config.js.map +1 -1
  10. package/dist/src/commands/database-types.js +313 -13
  11. package/dist/src/commands/database-types.js.map +1 -1
  12. package/dist/src/commands/databases.js +143 -54
  13. package/dist/src/commands/databases.js.map +1 -1
  14. package/dist/src/commands/documents.js +70 -11
  15. package/dist/src/commands/documents.js.map +1 -1
  16. package/dist/src/commands/init.d.ts +7 -0
  17. package/dist/src/commands/init.js +9 -1
  18. package/dist/src/commands/init.js.map +1 -1
  19. package/dist/src/commands/llm.js +6 -9
  20. package/dist/src/commands/llm.js.map +1 -1
  21. package/dist/src/commands/settings.d.ts +9 -12
  22. package/dist/src/commands/settings.js +79 -31
  23. package/dist/src/commands/settings.js.map +1 -1
  24. package/dist/src/commands/sync-app-settings.d.ts +12 -2
  25. package/dist/src/commands/sync-app-settings.js +35 -10
  26. package/dist/src/commands/sync-app-settings.js.map +1 -1
  27. package/dist/src/commands/sync.d.ts +118 -6
  28. package/dist/src/commands/sync.js +638 -65
  29. package/dist/src/commands/sync.js.map +1 -1
  30. package/dist/src/lib/api-client.d.ts +25 -6
  31. package/dist/src/lib/api-client.js +106 -72
  32. package/dist/src/lib/api-client.js.map +1 -1
  33. package/dist/src/lib/app-settings-descriptor.d.ts +38 -0
  34. package/dist/src/lib/app-settings-descriptor.js +96 -4
  35. package/dist/src/lib/app-settings-descriptor.js.map +1 -1
  36. package/dist/src/lib/child-apps-local.d.ts +45 -21
  37. package/dist/src/lib/child-apps-local.js +68 -30
  38. package/dist/src/lib/child-apps-local.js.map +1 -1
  39. package/dist/src/lib/credentials-home.d.ts +51 -0
  40. package/dist/src/lib/credentials-home.js +169 -0
  41. package/dist/src/lib/credentials-home.js.map +1 -0
  42. package/dist/src/lib/credentials-lock.d.ts +80 -0
  43. package/dist/src/lib/credentials-lock.js +222 -0
  44. package/dist/src/lib/credentials-lock.js.map +1 -0
  45. package/dist/src/lib/credentials-store.d.ts +92 -5
  46. package/dist/src/lib/credentials-store.js +377 -53
  47. package/dist/src/lib/credentials-store.js.map +1 -1
  48. package/dist/src/lib/env-resolver-core.d.ts +1 -1
  49. package/dist/src/lib/env-resolver-core.js.map +1 -1
  50. package/dist/src/lib/function-bundle.d.ts +38 -18
  51. package/dist/src/lib/function-bundle.js +60 -35
  52. package/dist/src/lib/function-bundle.js.map +1 -1
  53. package/dist/src/lib/function-collect.d.ts +1 -1
  54. package/dist/src/lib/function-collect.js +4 -0
  55. package/dist/src/lib/function-collect.js.map +1 -1
  56. package/dist/src/lib/function-document-types.d.ts +5 -3
  57. package/dist/src/lib/function-document-types.js +10 -14
  58. package/dist/src/lib/function-document-types.js.map +1 -1
  59. package/dist/src/lib/function-source-roots.d.ts +67 -0
  60. package/dist/src/lib/function-source-roots.js +148 -0
  61. package/dist/src/lib/function-source-roots.js.map +1 -0
  62. package/dist/src/lib/function-sync.d.ts +27 -0
  63. package/dist/src/lib/function-sync.js +16 -3
  64. package/dist/src/lib/function-sync.js.map +1 -1
  65. package/dist/src/lib/function-triggers.d.ts +3 -15
  66. package/dist/src/lib/function-triggers.js +10 -72
  67. package/dist/src/lib/function-triggers.js.map +1 -1
  68. package/dist/src/lib/function-typecheck.d.ts +37 -2
  69. package/dist/src/lib/function-typecheck.js +210 -28
  70. package/dist/src/lib/function-typecheck.js.map +1 -1
  71. package/dist/src/lib/generated-config-surfaces.d.ts +148 -0
  72. package/dist/src/lib/generated-config-surfaces.js +229 -35
  73. package/dist/src/lib/generated-config-surfaces.js.map +1 -1
  74. package/dist/src/lib/generated-sdk-types.d.ts +1 -1
  75. package/dist/src/lib/generated-sdk-types.js +1 -1
  76. package/dist/src/lib/generated-sdk-types.js.map +1 -1
  77. package/dist/src/lib/local-state.d.ts +21 -6
  78. package/dist/src/lib/local-state.js +78 -34
  79. package/dist/src/lib/local-state.js.map +1 -1
  80. package/dist/src/lib/login-scope-lines.d.ts +1 -1
  81. package/dist/src/lib/login-scope-lines.js +1 -1
  82. package/dist/src/lib/login-scope-lines.js.map +1 -1
  83. package/dist/src/lib/project-config.d.ts +7 -0
  84. package/dist/src/lib/project-config.js +22 -1
  85. package/dist/src/lib/project-config.js.map +1 -1
  86. package/dist/src/lib/push-failure-report.d.ts +45 -0
  87. package/dist/src/lib/push-failure-report.js +57 -0
  88. package/dist/src/lib/push-failure-report.js.map +1 -0
  89. package/dist/src/lib/root-import-decision.d.ts +9 -4
  90. package/dist/src/lib/root-import-decision.js +24 -3
  91. package/dist/src/lib/root-import-decision.js.map +1 -1
  92. package/dist/src/lib/scope-request.d.ts +8 -5
  93. package/dist/src/lib/scope-request.js +17 -8
  94. package/dist/src/lib/scope-request.js.map +1 -1
  95. package/dist/src/lib/sync-selectors.d.ts +5 -1
  96. package/dist/src/lib/sync-selectors.js +23 -13
  97. package/dist/src/lib/sync-selectors.js.map +1 -1
  98. package/dist/src/lib/transient-retry.d.ts +9 -0
  99. package/dist/src/lib/transient-retry.js +37 -0
  100. package/dist/src/lib/transient-retry.js.map +1 -1
  101. package/dist/src/lib/vars-override.d.ts +105 -0
  102. package/dist/src/lib/vars-override.js +143 -0
  103. package/dist/src/lib/vars-override.js.map +1 -0
  104. package/package.json +2 -2
  105. package/dist/src/lib/generated-workflow-model-fields.d.ts +0 -20
  106. package/dist/src/lib/generated-workflow-model-fields.js +0 -53
  107. package/dist/src/lib/generated-workflow-model-fields.js.map +0 -1
  108. package/dist/src/lib/workflow-field-descriptor.d.ts +0 -91
  109. package/dist/src/lib/workflow-field-descriptor.js +0 -153
  110. package/dist/src/lib/workflow-field-descriptor.js.map +0 -1
@@ -122,10 +122,12 @@ export const APP_SETTINGS_ABSENT_VALUES = {
122
122
  // #4195: absent ⇒ cleared, which mints legacy root documents. Roots that
123
123
  // already exist keep their format either way.
124
124
  rootDocumentFormat: { value: null },
125
- // #3886: absent ⇒ unprotected, the read default (`!!app.protected`). A
126
- // non-owner pushing a file without the line against a protected app is
127
- // refused by the server, which is the protection working.
128
- protected: { value: false },
125
+ // #4564: absent ⇒ `default`, the level of an app that never set one. A
126
+ // non-owner pushing a file without the line against a `protected` or
127
+ // `internal` app is refused by the server, which is the rule working. A
128
+ // file carrying only the deprecated `[app].protected` sends that instead
129
+ // (`buildAppSettingsPayload`).
130
+ protection: { value: "default" },
129
131
  // [auth]
130
132
  googleOAuthEnabled: { value: null },
131
133
  googleClients: { value: null },
@@ -300,6 +302,36 @@ export function comparableAppSettingValue(descriptor, value) {
300
302
  }
301
303
  return canonical ?? null;
302
304
  }
305
+ /** The three protection levels (#4564), as the server declares them. */
306
+ export const PROTECTION_LEVELS = ["default", "protected", "internal"];
307
+ function isProtectionLevel(value) {
308
+ return typeof value === "string" && PROTECTION_LEVELS.includes(value);
309
+ }
310
+ /**
311
+ * The level a settings record asks for, the way the server reads a write
312
+ * (#4564, DSO-4564-001): `protection` when it states one; the deprecated
313
+ * `protected = true` as `protected`; `protected = false` as "not protected",
314
+ * which keeps `remoteLevel` when that is `default` or `internal` and is
315
+ * `default` otherwise. Undefined when the record carries neither key.
316
+ *
317
+ * Read on a server's settings with no `remoteLevel`, it is that server's
318
+ * level: an older server that reports only `protected` is `protected` or
319
+ * `default`.
320
+ */
321
+ export function requestedProtectionLevel(fileApp, remoteLevel) {
322
+ if (isProtectionLevel(fileApp?.protection))
323
+ return fileApp.protection;
324
+ if (fileApp?.protected === true)
325
+ return "protected";
326
+ if (fileApp?.protected === false) {
327
+ return remoteLevel === "default" || remoteLevel === "internal" ? remoteLevel : "default";
328
+ }
329
+ return undefined;
330
+ }
331
+ /** A server settings record's level: what it reports, `default` when nothing. */
332
+ export function settingsProtectionLevel(settings) {
333
+ return requestedProtectionLevel(settings) ?? "default";
334
+ }
303
335
  /**
304
336
  * Project a settings record (either side) onto the full writable field set.
305
337
  *
@@ -307,12 +339,26 @@ export function comparableAppSettingValue(descriptor, value) {
307
339
  * name exclusion is active, BOTH sides and the stamped baseline are hashed
308
340
  * without `name`, so `classifyPushChange`'s `remoteHash === baselineHash ⇒
309
341
  * local-edited` arithmetic stays valid.
342
+ *
343
+ * `excludeProtection` leaves the protection level out, as a machine-local
344
+ * (child) environment's push and diff do (#4564). `legacyProtectedAgainst` is
345
+ * the remote level a local record's deprecated `protected` key is read
346
+ * against, so a file carrying only that key compares as the level the
347
+ * server's write would leave (DSO-4564-001).
310
348
  */
311
349
  export function projectAppSettingsForComparison(settings, options = {}) {
312
350
  const projected = {};
313
351
  for (const d of APP_SETTINGS_DESCRIPTOR) {
314
352
  if (options.excludeName && d.field === "name")
315
353
  continue;
354
+ if (d.field === "protection") {
355
+ if (options.excludeProtection)
356
+ continue;
357
+ projected[d.field] =
358
+ requestedProtectionLevel(settings, options.legacyProtectedAgainst) ??
359
+ APP_SETTINGS_ABSENT_VALUES.protection.value;
360
+ continue;
361
+ }
316
362
  const raw = settings?.[d.field];
317
363
  const absent = APP_SETTINGS_ABSENT_VALUES[d.field];
318
364
  projected[d.field] = comparableAppSettingValue(d, raw === undefined && absent && absent.required !== true
@@ -428,6 +474,14 @@ export function serializeAppSettingsToToml(settings) {
428
474
  function appSettingsNameStripped(options) {
429
475
  return !!(options.isCrossAppPush || options.excludeName);
430
476
  }
477
+ /**
478
+ * The deprecated `[app].protected` key (#3886), accepted until its
479
+ * scheduled retirement (#4564): `true` reads as `protection = "protected"`.
480
+ */
481
+ export const LEGACY_PROTECTED_KEY = "protected";
482
+ /** The one warning a file carrying the deprecated key gets. */
483
+ export const LEGACY_PROTECTED_WARNING = "app.toml: [app].protected is deprecated and will be removed in the first breaking release after 2026-12-15; " +
484
+ 'it is read as [app].protection ("protected" when true). Run `primitive config pull --only app` to rewrite it as protection.';
431
485
  /**
432
486
  * Translate a parsed `app.toml` object into the settings the FILE STATES —
433
487
  * only the keys it carries. This is the parse half; `buildAppSettingsPayload`
@@ -478,6 +532,21 @@ export function parseTomlToAppSettings(tomlData, options = {}) {
478
532
  const byKey = new Map(descriptors.map((d) => [d.key, d]));
479
533
  for (const key of Object.keys(sectionData)) {
480
534
  const d = byKey.get(key);
535
+ if (!d && section === "app" && key === LEGACY_PROTECTED_KEY) {
536
+ // The deprecated key (#4564): validated as it always was, forwarded
537
+ // verbatim, and announced once. A machine-local environment leaves
538
+ // it out with the level it stands for.
539
+ if (options.excludeProtection)
540
+ continue;
541
+ const value = sectionData[key];
542
+ if (typeof value !== "boolean") {
543
+ errors.push(`[app].protected must be a boolean (got ${typeOfValue(value)})`);
544
+ continue;
545
+ }
546
+ settings.protected = value;
547
+ warnings.push(LEGACY_PROTECTED_WARNING);
548
+ continue;
549
+ }
481
550
  if (!d) {
482
551
  // A RETIRED key is not an unknown key (#2803's rule, extended to
483
552
  // app-settings by #2891/DSO-2891-005). "Check the spelling, or upgrade
@@ -501,15 +570,28 @@ export function parseTomlToAppSettings(tomlData, options = {}) {
501
570
  }
502
571
  if (excludeName && d.field === "name")
503
572
  continue;
573
+ if (options.excludeProtection && d.field === "protection")
574
+ continue;
504
575
  const value = sectionData[key];
505
576
  const err = typeError(d, value);
506
577
  if (err) {
507
578
  errors.push(err);
508
579
  continue;
509
580
  }
581
+ if (d.field === "protection" && !isProtectionLevel(value)) {
582
+ errors.push(`[app].protection must be one of ${PROTECTION_LEVELS.map((l) => `"${l}"`).join(", ")} (got "${String(value)}")`);
583
+ continue;
584
+ }
510
585
  settings[d.field] = value;
511
586
  }
512
587
  }
588
+ // Both keys must agree on whether the app is protected (#4564).
589
+ if ("protected" in settings &&
590
+ "protection" in settings &&
591
+ settings.protected !== (settings.protection === "protected")) {
592
+ errors.push(`app.toml: [app].protected = ${settings.protected} disagrees with [app].protection = "${settings.protection}". ` +
593
+ "Delete the deprecated protected line.");
594
+ }
513
595
  return { settings, warnings, errors };
514
596
  }
515
597
  /**
@@ -580,6 +662,16 @@ export function buildAppSettingsPayload(tomlData, options = {}) {
580
662
  for (const d of APP_SETTINGS_DESCRIPTOR) {
581
663
  if (excludeName && d.field === "name")
582
664
  continue;
665
+ if (d.field === "protection") {
666
+ if (options.excludeProtection)
667
+ continue;
668
+ // A file carrying only the deprecated key sends it as authored, and no
669
+ // absent-value level beside it; both keys (agreeing) send the level.
670
+ if (!("protection" in parsed.settings) && "protected" in parsed.settings) {
671
+ settings.protected = parsed.settings.protected;
672
+ continue;
673
+ }
674
+ }
583
675
  if (d.field in parsed.settings) {
584
676
  settings[d.field] = parsed.settings[d.field];
585
677
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"app-settings-descriptor.js","sourceRoot":"","sources":["../../../src/lib/app-settings-descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE7E;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,cAAc,CAAC,CAAC;AA8BlE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAClC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC5C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;IAClB,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAsB;IAC/C,GAAG,EAAE,KAAK,CAAC,OAAO;IAClB,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAmB;IACvE,IAAI,EAAE,KAAK,CAAC,IAAI;CACjB,CAAC,CAAC,CACJ,CAAC;AAEJ;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAChC,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAC7B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAsB,CAClD,CAAC;AAEJ;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC;IAC3D,OAAO;IACP,8EAA8E;IAC9E,yEAAyE;IACzE,6EAA6E;IAC7E,6EAA6E;IAC7E,4EAA4E;IAC5E,qEAAqE;IACrE,EAAE;IACF,yEAAyE;IACzE,oEAAoE;IACpE,cAAc;IACd,YAAY;IACZ,WAAW;IACX,YAAY;CACb,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAwB,IAAI,GAAG;AACtE,0EAA0E;AAC1E,2DAA2D;AAC3D,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC5C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;KAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,KAAK,YAAY,CAAC;KACpE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAC3B,CACF,CAAC;AAgCF,MAAM,CAAC,MAAM,0BAA0B,GAEnC;IACF,QAAQ;IACR,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IACxB,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IACxB,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACxB,eAAe,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IACjC,oBAAoB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACrC,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC/B,qBAAqB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACtC,uEAAuE;IACvE,wEAAwE;IACxE,8DAA8D;IAC9D,uBAAuB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACxC,yEAAyE;IACzE,8CAA8C;IAC9C,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,uEAAuE;IACvE,uEAAuE;IACvE,0DAA0D;IAC1D,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IAC3B,SAAS;IACT,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,aAAa,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC9B,cAAc,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IAChC,6EAA6E;IAC7E,qEAAqE;IACrE,0EAA0E;IAC1E,6EAA6E;IAC7E,2EAA2E;IAC3E,4EAA4E;IAC5E,iDAAiD;IACjD,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC/B,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAClC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAChC,qEAAqE;IACrE,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,uBAAuB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACxC,SAAS;IACT,QAAQ,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;IAChC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,oBAAoB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IACtC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC3B,gBAAgB;IAChB,wBAAwB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IAC1C,qBAAqB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;CACpC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,MAAM,KAAK,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,2DAA2D,KAAK,MAAM;YACpE,gFAAgF;YAChF,wDAAwD,CAC3D,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,2BAA2B,GACtC,uBAAuB,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,KAAK,IAAI,CAC9D,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAExB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAa,EACb,KAAc;IAEd,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACjD,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;IACzC,CAAC;IACD,IAAI,KAAK,KAAK,uBAAuB,IAAI,KAAK,KAAK,mBAAmB,EAAE,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,MAAM,KAAK,GAAG,KAAK,KAAK,uBAAuB,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,GAAG,GAAc,EAAE,CAAC;QAC1B,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChB,SAAS;YACX,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACrE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;gBAAE,SAAS;YACnC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,KAAK,KAAK,gBAAgB,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,0EAA0E;QAC1E,mEAAmE;QACnE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,KAAK,KAAK,eAAe;QAAE,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,yBAAyB,CAAC,KAAc;IAC/C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9E,MAAM,OAAO,GAAI,KAA+B,CAAC,OAAO,CAAC;IACzD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CACxC,OAAkC,CACnC,EAAE,CAAC;QACF,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;YAClB,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,KAAgC,CAAC;QAChD,MAAM,SAAS,GAA4B,EAAE,GAAG,MAAM,EAAE,CAAC;QACzD,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACxC,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC9C,CAAC;QACD,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACtC,SAAS,CAAC,YAAY,GAAG,2BAA2B,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC5E,CAAC;QACD,2EAA2E;QAC3E,0EAA0E;QAC1E,oDAAoD;QACpD,SAAS,CAAC,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;YACzD,CAAC,CAAC;gBACE,GAAG,IAAI,GAAG,CACR,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC9B,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAC3C,CACF;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;IACxB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAAgC,EAChC,KAAc;IAEd,MAAM,SAAS,GAAG,2BAA2B,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvE,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,SAAS,IAAI,IAAI,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,+BAA+B,CAC7C,QAAgD,EAChD,UAAqC,EAAE;IAEvC,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACxC,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;YAAE,SAAS;QACxD,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,0BAA0B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACnD,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,yBAAyB,CAC5C,CAAC,EACD,GAAG,KAAK,SAAS,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;YACrD,CAAC,CAAC,MAAM,CAAC,KAAK;YACd,CAAC,CAAC,GAAG,CACR,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,qBAAqB,GACzB,CAAC,GAAG,EAAE;IACJ,MAAM,CAAC,GAAG,IAAI,GAAG,EAA6C,CAAC;IAC/D,KAAK,MAAM,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC,CAAC,EAAE,CAAC;AAEP,2DAA2D;AAC3D,MAAM,CAAC,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAC3D,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAC5C,CAAC;AAEF,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACzD,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC/C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,iEAAiE;AACjE,SAAS,cAAc,CAAC,KAAc,EAAE,IAAoB;IAC1D,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,KAAK,EAAE,CAAC;IAC3C,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IAC5E,IAAI,IAAI,KAAK,QAAQ;QACnB,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,MAAM,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC,MAAM,KAAK,CAAC,CAC1C,CAAC;IACJ,OAAO,KAAK,CAAC,CAAC,+DAA+D;AAC/E,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAChB,UAAgC,EAChC,KAAc;IAEd,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC,CAAC,2CAA2C;IAC/E,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;YACxE,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,CAAC,GAAG,qCAAqC,MAAM,GAAG,CAAC;QACjG,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACjC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,CAAC,GAAG,yBAAyB,MAAM,GAAG,CAAC;QACrF,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAM,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,CAAC,GAAG,cAAc,UAAU,CAAC,IAAI,SAAS,MAAM,GAAG,CAAC;IAClG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,QAA6B,EAC7B,OAA0B;IAE1B,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QACpD,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;YAAE,SAAS;QACpE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAA6B;IAE7B,MAAM,IAAI,GAAwB,EAAE,CAAC;IACrC,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC;IACvD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAeD;;;;;;GAMG;AACH,SAAS,uBAAuB,CAAC,OAGhC;IACC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAA6B,EAC7B,UAA+D,EAAE;IAEjE,MAAM,WAAW,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,6EAA6E;IAC7E,4EAA4E;IAC5E,8EAA8E;IAC9E,yDAAyD;IACzD,KAAK,MAAM,GAAG,IAAI,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC;QAC1E,MAAM,CAAC,IAAI,CACT,2CAA2C,GAAG,wBAAwB;YACpE,wCAAwC,qBAAqB,CAAC,GAAG,CAC/D,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAChB,CAAC,IAAI,CAAC,IAAI,CAAC,6DAA6D,CAC5E,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,IAAI;YAAE,SAAS;QAChE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAClE,MAAM,CAAC,IAAI,CAAC,IAAI,OAAO,mBAAmB,CAAC,CAAC;YAC5C,SAAS;QACX,CAAC;QACD,MAAM,WAAW,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,CAAC,EAAE,CAAC;gBACP,iEAAiE;gBACjE,uEAAuE;gBACvE,kEAAkE;gBAClE,wEAAwE;gBACxE,wEAAwE;gBACxE,oEAAoE;gBACpE,yDAAyD;gBACzD,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC7C,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,CAAC,IAAI,CAAC,cAAc,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC/D,SAAS;gBACX,CAAC;gBACD,wEAAwE;gBACxE,iEAAiE;gBACjE,6DAA6D;gBAC7D,MAAM,CAAC,IAAI,CACT,+BAA+B,OAAO,KAAK,GAAG,iBAAiB;oBAC7D,wDAAwD;oBACxD,oBAAoB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAClE,CAAC;gBACF,SAAS;YACX,CAAC;YACD,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;gBAAE,SAAS;YAChD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAChC,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACxC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,wBAAwB,CACtC,QAA6B,EAC7B,UAAsC,EAAE;IAExC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,2BAA2B,EAAE,CAAC;QAChD,IAAI,OAAO,CAAC,YAAY,IAAI,KAAK,KAAK,MAAM;YAAE,SAAS;QACvD,MAAM,CAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,OAAO,GACX,OAAO,KAAK,IAAI;YAChB,OAAO,OAAO,KAAK,QAAQ;YAC3B,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YACvB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;QAC/B,IAAI,OAAO;YAAE,SAAS;QACtB,MAAM,CAAC,IAAI,CACT,cAAc,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,GAAG,yCAAyC;YACxE,qEAAqE;YACrE,+DAA+D,CAClE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAA6B,EAC7B,UAAuF,EAAE;IAEzF,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG;QACb,GAAG,MAAM,CAAC,MAAM;QAChB,GAAG,wBAAwB,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;KAC9E,CAAC;IACF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC7D,CAAC;IAED,MAAM,WAAW,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACxC,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;YAAE,SAAS;QAChD,IAAI,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC/B,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC7C,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9C,0EAA0E;QAC1E,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;YAAE,SAAS;QACvC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"app-settings-descriptor.js","sourceRoot":"","sources":["../../../src/lib/app-settings-descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE7E;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,cAAc,CAAC,CAAC;AA8BlE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAClC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC5C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;IAClB,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAsB;IAC/C,GAAG,EAAE,KAAK,CAAC,OAAO;IAClB,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAmB;IACvE,IAAI,EAAE,KAAK,CAAC,IAAI;CACjB,CAAC,CAAC,CACJ,CAAC;AAEJ;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAChC,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAC7B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAsB,CAClD,CAAC;AAEJ;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC;IAC3D,OAAO;IACP,8EAA8E;IAC9E,yEAAyE;IACzE,6EAA6E;IAC7E,6EAA6E;IAC7E,4EAA4E;IAC5E,qEAAqE;IACrE,EAAE;IACF,yEAAyE;IACzE,oEAAoE;IACpE,cAAc;IACd,YAAY;IACZ,WAAW;IACX,YAAY;CACb,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAwB,IAAI,GAAG;AACtE,0EAA0E;AAC1E,2DAA2D;AAC3D,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC5C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;KAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,KAAK,YAAY,CAAC;KACpE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAC3B,CACF,CAAC;AAgCF,MAAM,CAAC,MAAM,0BAA0B,GAEnC;IACF,QAAQ;IACR,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IACxB,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IACxB,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACxB,eAAe,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IACjC,oBAAoB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACrC,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC/B,qBAAqB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACtC,uEAAuE;IACvE,wEAAwE;IACxE,8DAA8D;IAC9D,uBAAuB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACxC,yEAAyE;IACzE,8CAA8C;IAC9C,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,uEAAuE;IACvE,qEAAqE;IACrE,wEAAwE;IACxE,yEAAyE;IACzE,+BAA+B;IAC/B,UAAU,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;IAChC,SAAS;IACT,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,aAAa,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC9B,cAAc,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IAChC,6EAA6E;IAC7E,qEAAqE;IACrE,0EAA0E;IAC1E,6EAA6E;IAC7E,2EAA2E;IAC3E,4EAA4E;IAC5E,iDAAiD;IACjD,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC/B,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAClC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAChC,qEAAqE;IACrE,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,uBAAuB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACxC,SAAS;IACT,QAAQ,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;IAChC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,oBAAoB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IACtC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACnC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC3B,gBAAgB;IAChB,wBAAwB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IAC1C,qBAAqB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;CACpC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,MAAM,KAAK,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,2DAA2D,KAAK,MAAM;YACpE,gFAAgF;YAChF,wDAAwD,CAC3D,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,2BAA2B,GACtC,uBAAuB,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,KAAK,IAAI,CAC9D,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAExB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAa,EACb,KAAc;IAEd,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACjD,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;IACzC,CAAC;IACD,IAAI,KAAK,KAAK,uBAAuB,IAAI,KAAK,KAAK,mBAAmB,EAAE,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,MAAM,KAAK,GAAG,KAAK,KAAK,uBAAuB,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,GAAG,GAAc,EAAE,CAAC;QAC1B,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChB,SAAS;YACX,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACrE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;gBAAE,SAAS;YACnC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,KAAK,KAAK,gBAAgB,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,0EAA0E;QAC1E,mEAAmE;QACnE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,KAAK,KAAK,eAAe;QAAE,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,yBAAyB,CAAC,KAAc;IAC/C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9E,MAAM,OAAO,GAAI,KAA+B,CAAC,OAAO,CAAC;IACzD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CACxC,OAAkC,CACnC,EAAE,CAAC;QACF,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;YAClB,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,KAAgC,CAAC;QAChD,MAAM,SAAS,GAA4B,EAAE,GAAG,MAAM,EAAE,CAAC;QACzD,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACxC,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC9C,CAAC;QACD,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACtC,SAAS,CAAC,YAAY,GAAG,2BAA2B,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC5E,CAAC;QACD,2EAA2E;QAC3E,0EAA0E;QAC1E,oDAAoD;QACpD,SAAS,CAAC,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;YACzD,CAAC,CAAC;gBACE,GAAG,IAAI,GAAG,CACR,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC9B,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAC3C,CACF;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;IACxB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAAgC,EAChC,KAAc;IAEd,MAAM,SAAS,GAAG,2BAA2B,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvE,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,SAAS,IAAI,IAAI,CAAC;AAC3B,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,CAAU,CAAC;AAK/E,SAAS,iBAAiB,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,iBAAuC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC/F,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAyE,EACzE,WAA6B;IAE7B,IAAI,iBAAiB,CAAC,OAAO,EAAE,UAAU,CAAC;QAAE,OAAO,OAAQ,CAAC,UAA6B,CAAC;IAC1F,IAAI,OAAO,EAAE,SAAS,KAAK,IAAI;QAAE,OAAO,WAAW,CAAC;IACpD,IAAI,OAAO,EAAE,SAAS,KAAK,KAAK,EAAE,CAAC;QACjC,OAAO,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3F,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,uBAAuB,CACrC,QAAgD;IAEhD,OAAO,wBAAwB,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,+BAA+B,CAC7C,QAAgD,EAChD,UAII,EAAE;IAEN,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACxC,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;YAAE,SAAS;QACxD,IAAI,CAAC,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,iBAAiB;gBAAE,SAAS;YACxC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;gBAChB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,CAAC,sBAAsB,CAAC;oBACjE,0BAA0B,CAAC,UAAiC,CAAC,KAAK,CAAC;YACtE,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,0BAA0B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACnD,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,yBAAyB,CAC5C,CAAC,EACD,GAAG,KAAK,SAAS,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;YACrD,CAAC,CAAC,MAAM,CAAC,KAAK;YACd,CAAC,CAAC,GAAG,CACR,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,qBAAqB,GACzB,CAAC,GAAG,EAAE;IACJ,MAAM,CAAC,GAAG,IAAI,GAAG,EAA6C,CAAC;IAC/D,KAAK,MAAM,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC,CAAC,EAAE,CAAC;AAEP,2DAA2D;AAC3D,MAAM,CAAC,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAC3D,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAC5C,CAAC;AAEF,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACzD,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC/C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,iEAAiE;AACjE,SAAS,cAAc,CAAC,KAAc,EAAE,IAAoB;IAC1D,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,KAAK,EAAE,CAAC;IAC3C,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IAC5E,IAAI,IAAI,KAAK,QAAQ;QACnB,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,MAAM,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC,MAAM,KAAK,CAAC,CAC1C,CAAC;IACJ,OAAO,KAAK,CAAC,CAAC,+DAA+D;AAC/E,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAChB,UAAgC,EAChC,KAAc;IAEd,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC,CAAC,2CAA2C;IAC/E,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;YACxE,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,CAAC,GAAG,qCAAqC,MAAM,GAAG,CAAC;QACjG,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACjC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,CAAC,GAAG,yBAAyB,MAAM,GAAG,CAAC;QACrF,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAM,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,CAAC,GAAG,cAAc,UAAU,CAAC,IAAI,SAAS,MAAM,GAAG,CAAC;IAClG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,QAA6B,EAC7B,OAA0B;IAE1B,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QACpD,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;YAAE,SAAS;QACpE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAA6B;IAE7B,MAAM,IAAI,GAAwB,EAAE,CAAC;IACrC,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC;IACvD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAeD;;;;;;GAMG;AACH,SAAS,uBAAuB,CAAC,OAGhC;IACC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;AAC3D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC;AAEhD,+DAA+D;AAC/D,MAAM,CAAC,MAAM,wBAAwB,GACnC,8GAA8G;IAC9G,6HAA6H,CAAC;AAEhI;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAA6B,EAC7B,UAA4F,EAAE;IAE9F,MAAM,WAAW,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,6EAA6E;IAC7E,4EAA4E;IAC5E,8EAA8E;IAC9E,yDAAyD;IACzD,KAAK,MAAM,GAAG,IAAI,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC;QAC1E,MAAM,CAAC,IAAI,CACT,2CAA2C,GAAG,wBAAwB;YACpE,wCAAwC,qBAAqB,CAAC,GAAG,CAC/D,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAChB,CAAC,IAAI,CAAC,IAAI,CAAC,6DAA6D,CAC5E,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,IAAI;YAAE,SAAS;QAChE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAClE,MAAM,CAAC,IAAI,CAAC,IAAI,OAAO,mBAAmB,CAAC,CAAC;YAC5C,SAAS;QACX,CAAC;QACD,MAAM,WAAW,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,CAAC,IAAI,OAAO,KAAK,KAAK,IAAI,GAAG,KAAK,oBAAoB,EAAE,CAAC;gBAC5D,oEAAoE;gBACpE,mEAAmE;gBACnE,uCAAuC;gBACvC,IAAI,OAAO,CAAC,iBAAiB;oBAAE,SAAS;gBACxC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;gBAC/B,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC/B,MAAM,CAAC,IAAI,CAAC,0CAA0C,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC7E,SAAS;gBACX,CAAC;gBACD,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC;gBAC3B,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBACxC,SAAS;YACX,CAAC;YACD,IAAI,CAAC,CAAC,EAAE,CAAC;gBACP,iEAAiE;gBACjE,uEAAuE;gBACvE,kEAAkE;gBAClE,wEAAwE;gBACxE,wEAAwE;gBACxE,oEAAoE;gBACpE,yDAAyD;gBACzD,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC7C,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,CAAC,IAAI,CAAC,cAAc,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC/D,SAAS;gBACX,CAAC;gBACD,wEAAwE;gBACxE,iEAAiE;gBACjE,6DAA6D;gBAC7D,MAAM,CAAC,IAAI,CACT,+BAA+B,OAAO,KAAK,GAAG,iBAAiB;oBAC7D,wDAAwD;oBACxD,oBAAoB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAClE,CAAC;gBACF,SAAS;YACX,CAAC;YACD,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;gBAAE,SAAS;YAChD,IAAI,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC,KAAK,KAAK,YAAY;gBAAE,SAAS;YACpE,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAChC,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,SAAS;YACX,CAAC;YACD,IAAI,CAAC,CAAC,KAAK,KAAK,YAAY,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,IAAI,CACT,mCAAmC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,KAAK,CAAC,IAAI,CAChH,CAAC;gBACF,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,IACE,WAAW,IAAI,QAAQ;QACvB,YAAY,IAAI,QAAQ;QACxB,QAAQ,CAAC,SAAS,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,WAAW,CAAC,EAC5D,CAAC;QACD,MAAM,CAAC,IAAI,CACT,+BAA+B,QAAQ,CAAC,SAAS,uCAAuC,QAAQ,CAAC,UAAU,KAAK;YAC9G,uCAAuC,CAC1C,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACxC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,wBAAwB,CACtC,QAA6B,EAC7B,UAAsC,EAAE;IAExC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,2BAA2B,EAAE,CAAC;QAChD,IAAI,OAAO,CAAC,YAAY,IAAI,KAAK,KAAK,MAAM;YAAE,SAAS;QACvD,MAAM,CAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,OAAO,GACX,OAAO,KAAK,IAAI;YAChB,OAAO,OAAO,KAAK,QAAQ;YAC3B,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YACvB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;QAC/B,IAAI,OAAO;YAAE,SAAS;QACtB,MAAM,CAAC,IAAI,CACT,cAAc,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,GAAG,yCAAyC;YACxE,qEAAqE;YACrE,+DAA+D,CAClE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAA6B,EAC7B,UAKI,EAAE;IAEN,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG;QACb,GAAG,MAAM,CAAC,MAAM;QAChB,GAAG,wBAAwB,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;KAC9E,CAAC;IACF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC7D,CAAC;IAED,MAAM,WAAW,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACxC,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;YAAE,SAAS;QAChD,IAAI,CAAC,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,iBAAiB;gBAAE,SAAS;YACxC,uEAAuE;YACvE,qEAAqE;YACrE,IAAI,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,WAAW,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACzE,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC/C,SAAS;YACX,CAAC;QACH,CAAC;QACD,IAAI,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC/B,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC7C,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9C,0EAA0E;QAC1E,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;YAAE,SAAS;QACvC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AAC7D,CAAC"}
@@ -7,8 +7,9 @@
7
7
  * the committed environment whose `primitive/<tree>/` it shares — its parent.
8
8
  * This module owns everything the verbs do to this machine around the server
9
9
  * calls: finding the parent of the current environment, registering a child
10
- * (baseline, login, entry), finding entries whose child is gone, and removing
11
- * a deleted child's local state.
10
+ * (baseline, entry), finding entries whose child is gone, and removing a
11
+ * deleted child's local state. A child has no login of its own: it uses its
12
+ * parent's (#4511, `credentials-store.ts`).
12
13
  *
13
14
  * Local state is always related to a server child by APP ID, never by name. A
14
15
  * local name is unique per checkout, while a slug is unique per parent, so an
@@ -17,7 +18,6 @@
17
18
  import type { AppChildSummary } from "./api-client.js";
18
19
  import { type CoreLocalEnvironmentEntry } from "./env-resolver-core.js";
19
20
  import { type ResolvedEnvironment } from "./env-resolver.js";
20
- import type { Credentials } from "../types/index.js";
21
21
  /** A machine-local environment and the name it is registered under. */
22
22
  export interface LocalEnvironmentRef {
23
23
  name: string;
@@ -109,26 +109,17 @@ export interface ChildRegistration {
109
109
  appId: string;
110
110
  appName?: string;
111
111
  parentAppId: string;
112
- /**
113
- * The login copied into the child's credentials slot. Credentials from
114
- * `PRIMITIVE_TOKEN` (#3890) are never copied: the child gets no slot.
115
- */
116
- credentials: Credentials;
117
112
  }
118
113
  /**
119
114
  * Registers a child as the machine-local environment `name`: its baseline
120
- * (seeded as {@link seedChildBaseline} does), a copy of `credentials` in its
121
- * slot, and last the `.primitive/local.json` entry, which is the commit point.
122
- * When any step fails the steps already written are removed, so no entry is
123
- * left pointing at a missing login or baseline, and a
115
+ * (seeded as {@link seedChildBaseline} does), then the `.primitive/local.json`
116
+ * entry, which is the commit point. No credentials slot is written: the child
117
+ * uses its parent's login. When the entry cannot be written the baseline is
118
+ * removed, so no half-registered child is left, and a
124
119
  * {@link ChildRegistrationError} naming the app id is thrown.
125
- *
126
- * Under `PRIMITIVE_TOKEN` no slot is written (`loginCopied: false`): the
127
- * token stays in the environment, and the child is reached with it too.
128
120
  */
129
121
  export declare function registerChildEnvironment(input: ChildRegistration): {
130
122
  baselineSource: "committed" | "empty";
131
- loginCopied: boolean;
132
123
  };
133
124
  /** What {@link removeLocalStateForApp} removed for one entry. */
134
125
  export interface LocalStateRemoval {
@@ -140,6 +131,8 @@ export interface LocalStateRemoval {
140
131
  loginRemoved: boolean;
141
132
  baselineRemoved: boolean;
142
133
  backupsRemoved: boolean;
134
+ /** Its `vars.<name>.override.toml` in its tree was removed (#4485). */
135
+ overrideRemoved: boolean;
143
136
  /**
144
137
  * Why the cleanup stopped, when it did. The entry is then kept, with
145
138
  * whatever was not removed, so a later cleanup finds it again by app id.
@@ -148,8 +141,10 @@ export interface LocalStateRemoval {
148
141
  }
149
142
  /**
150
143
  * Removes this machine's state for the app `appId`: for every machine-local
151
- * entry holding it, its credentials slot, its baseline, its backups and last
152
- * the entry (clearing a selection naming it). The entry goes last because it
144
+ * entry holding it, any credentials slot it kept from before children used
145
+ * their parent's login, its baseline, its backups, its vars
146
+ * override file in its tree and last the entry (clearing a selection naming
147
+ * it). The entry goes last because it
153
148
  * is what identifies the rest: when an earlier removal fails the entry stays
154
149
  * and the record carries `failure`, so a rerun can finish the job. Entries
155
150
  * holding other apps are untouched whatever they are named. Returns one record
@@ -173,12 +168,41 @@ export declare function gitBranchExists(root: string, branch: string): boolean;
173
168
  * for the parent's debugger port.
174
169
  */
175
170
  export declare function firstPushArgs(name: string, execArgv?: readonly string[], entry?: string): string[];
171
+ /** One run of the first push: its exit code, and whether its failure was transient. */
172
+ export interface FirstPushRun {
173
+ exitCode: number;
174
+ /** True only for a failed push that reported every failure as transient. */
175
+ transient: boolean;
176
+ }
176
177
  /**
177
178
  * Runs `primitive --env <name> config push --yes` as a separate invocation of
178
179
  * this same CLI, the command a developer would type, and returns its exit
179
- * code. Its output passes through; under `--json` it goes to stderr so stdout
180
- * stays one JSON document.
180
+ * code and whether a failure was transient (`push-failure-report.ts`). Its
181
+ * output passes through; under `--json` it goes to stderr so stdout stays one
182
+ * JSON document.
181
183
  */
182
184
  export declare function runFirstPush(name: string, options?: {
183
185
  json?: boolean;
184
- }): number;
186
+ }): FirstPushRun;
187
+ /** How the first push ended: the last run's exit code, after how many runs. */
188
+ export interface FirstPushOutcome {
189
+ exitCode: number;
190
+ attempts: number;
191
+ }
192
+ /**
193
+ * Runs the first push, and runs it again after a transient failure, waiting
194
+ * `TRANSIENT_RETRY_DELAYS_MS` between runs: four runs at most. Running it
195
+ * again is safe, since a push applies only what the server does not hold yet.
196
+ * A failure that is not transient is returned at once. `onRetry` is told the
197
+ * wait and the number of the run about to start; `run` and `sleep` are
198
+ * replaced in tests.
199
+ */
200
+ export declare function runFirstPushWithRetry(name: string, options?: {
201
+ json?: boolean;
202
+ onRetry?: (delayMs: number, attempt: number) => void;
203
+ run?: (name: string, options: {
204
+ json?: boolean;
205
+ }) => FirstPushRun;
206
+ sleep?: (ms: number) => Promise<void>;
207
+ delaysMs?: readonly number[];
208
+ }): Promise<FirstPushOutcome>;
@@ -7,21 +7,26 @@
7
7
  * the committed environment whose `primitive/<tree>/` it shares — its parent.
8
8
  * This module owns everything the verbs do to this machine around the server
9
9
  * calls: finding the parent of the current environment, registering a child
10
- * (baseline, login, entry), finding entries whose child is gone, and removing
11
- * a deleted child's local state.
10
+ * (baseline, entry), finding entries whose child is gone, and removing a
11
+ * deleted child's local state. A child has no login of its own: it uses its
12
+ * parent's (#4511, `credentials-store.ts`).
12
13
  *
13
14
  * Local state is always related to a server child by APP ID, never by name. A
14
15
  * local name is unique per checkout, while a slug is unique per parent, so an
15
16
  * entry named `feature-x` may hold another parent's `feature-x`.
16
17
  */
17
18
  import { execFileSync, spawnSync } from "child_process";
18
- import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "fs";
19
+ import { existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from "fs";
20
+ import { tmpdir } from "os";
19
21
  import { dirname, join } from "path";
20
22
  import { PROJECT_TREE_DIR, projectRootForConfigPath, readCoreProjectConfig, readLocalState, } from "./env-resolver-core.js";
21
23
  import { getProjectConfig, requireCurrentEnvironment, } from "./env-resolver.js";
22
24
  import { removeLocalEnvironment, writeLocalEnvironment } from "./local-state.js";
23
- import { clearCredentialsForEnvInProject, removeCredentialsSlotInProject, seedCredentialsForEnvInProject, } from "./credentials-store.js";
25
+ import { PUSH_FAILURE_REPORT_ENV, readPushFailureReport } from "./push-failure-report.js";
26
+ import { TRANSIENT_RETRY_DELAYS_MS } from "./transient-retry.js";
27
+ import { removeCredentialsSlotInProject } from "./credentials-store.js";
24
28
  import { localBackupsRootFor, localSyncStatePathFor, syncStateReadPath, } from "./sync-paths.js";
29
+ import { varsOverrideFileName } from "./vars-override.js";
25
30
  const trimSlash = (url) => url.replace(/\/+$/, "");
26
31
  /**
27
32
  * The parent of the current environment: the committed environment named by
@@ -135,38 +140,27 @@ export class ChildRegistrationError extends Error {
135
140
  }
136
141
  /**
137
142
  * Registers a child as the machine-local environment `name`: its baseline
138
- * (seeded as {@link seedChildBaseline} does), a copy of `credentials` in its
139
- * slot, and last the `.primitive/local.json` entry, which is the commit point.
140
- * When any step fails the steps already written are removed, so no entry is
141
- * left pointing at a missing login or baseline, and a
143
+ * (seeded as {@link seedChildBaseline} does), then the `.primitive/local.json`
144
+ * entry, which is the commit point. No credentials slot is written: the child
145
+ * uses its parent's login. When the entry cannot be written the baseline is
146
+ * removed, so no half-registered child is left, and a
142
147
  * {@link ChildRegistrationError} naming the app id is thrown.
143
- *
144
- * Under `PRIMITIVE_TOKEN` no slot is written (`loginCopied: false`): the
145
- * token stays in the environment, and the child is reached with it too.
146
148
  */
147
149
  export function registerChildEnvironment(input) {
148
150
  const projectRoot = projectRootForConfigPath(input.configPath);
149
151
  let baselinePath = null;
150
- let slotWritten = false;
151
152
  try {
152
153
  const seeded = seedChildBaseline(projectRoot, input.tree, input.name, input.parentAppId, input.apiUrl);
153
154
  baselinePath = seeded.path;
154
- const loginCopied = input.credentials.source !== "env";
155
- if (loginCopied) {
156
- seedCredentialsForEnvInProject(projectRoot, input.name, input.credentials);
157
- slotWritten = true;
158
- }
159
155
  writeLocalEnvironment(input.configPath, input.name, {
160
156
  apiUrl: input.apiUrl,
161
157
  appId: input.appId,
162
158
  ...(input.appName !== undefined ? { appName: input.appName } : {}),
163
159
  tree: input.tree,
164
160
  });
165
- return { baselineSource: seeded.source, loginCopied };
161
+ return { baselineSource: seeded.source };
166
162
  }
167
163
  catch (err) {
168
- if (slotWritten)
169
- clearCredentialsForEnvInProject(projectRoot, input.name);
170
164
  if (baselinePath)
171
165
  rmSync(baselinePath, { force: true });
172
166
  throw new ChildRegistrationError(`Could not register child app ${input.appId} as the machine-local environment "${input.name}": ${err?.message || String(err)}`, input.appId);
@@ -174,8 +168,10 @@ export function registerChildEnvironment(input) {
174
168
  }
175
169
  /**
176
170
  * Removes this machine's state for the app `appId`: for every machine-local
177
- * entry holding it, its credentials slot, its baseline, its backups and last
178
- * the entry (clearing a selection naming it). The entry goes last because it
171
+ * entry holding it, any credentials slot it kept from before children used
172
+ * their parent's login, its baseline, its backups, its vars
173
+ * override file in its tree and last the entry (clearing a selection naming
174
+ * it). The entry goes last because it
179
175
  * is what identifies the rest: when an earlier removal fails the entry stays
180
176
  * and the record carries `failure`, so a rerun can finish the job. Entries
181
177
  * holding other apps are untouched whatever they are named. Returns one record
@@ -187,6 +183,7 @@ export function removeLocalStateForApp(configPath, appId) {
187
183
  return localEntriesForApp(configPath, appId).map(({ name, entry }) => {
188
184
  const baseline = localSyncStatePathFor(projectRoot, name);
189
185
  const backups = localBackupsRootFor(projectRoot, name);
186
+ const override = join(projectRoot, PROJECT_TREE_DIR, entry.tree, varsOverrideFileName(name));
190
187
  const record = {
191
188
  name,
192
189
  tree: entry.tree,
@@ -195,6 +192,7 @@ export function removeLocalStateForApp(configPath, appId) {
195
192
  loginRemoved: false,
196
193
  baselineRemoved: false,
197
194
  backupsRemoved: false,
195
+ overrideRemoved: false,
198
196
  };
199
197
  let step = "login";
200
198
  try {
@@ -205,6 +203,9 @@ export function removeLocalStateForApp(configPath, appId) {
205
203
  step = "backups";
206
204
  record.backupsRemoved = existsSync(backups);
207
205
  rmSync(backups, { recursive: true, force: true });
206
+ step = "vars override";
207
+ record.overrideRemoved = existsSync(override);
208
+ rmSync(override, { force: true });
208
209
  step = "entry";
209
210
  record.entryRemoved = removeLocalEnvironment(configPath, name);
210
211
  record.selectionCleared = record.entryRemoved && selected === name;
@@ -214,6 +215,8 @@ export function removeLocalStateForApp(configPath, appId) {
214
215
  record.baselineRemoved = false;
215
216
  if (step === "backups")
216
217
  record.backupsRemoved = false;
218
+ if (step === "vars override")
219
+ record.overrideRemoved = false;
217
220
  record.failure = `could not remove its ${step}: ${err?.message || String(err)}`;
218
221
  }
219
222
  return record;
@@ -268,15 +271,50 @@ export function firstPushArgs(name, execArgv = process.execArgv, entry = process
268
271
  /**
269
272
  * Runs `primitive --env <name> config push --yes` as a separate invocation of
270
273
  * this same CLI, the command a developer would type, and returns its exit
271
- * code. Its output passes through; under `--json` it goes to stderr so stdout
272
- * stays one JSON document.
274
+ * code and whether a failure was transient (`push-failure-report.ts`). Its
275
+ * output passes through; under `--json` it goes to stderr so stdout stays one
276
+ * JSON document.
273
277
  */
274
278
  export function runFirstPush(name, options = {}) {
275
- const result = spawnSync(process.execPath, firstPushArgs(name), {
276
- stdio: ["ignore", options.json ? 2 : "inherit", "inherit"],
277
- });
278
- if (result.error)
279
- throw result.error;
280
- return result.status ?? 1;
279
+ const dir = mkdtempSync(join(tmpdir(), "primitive-first-push-"));
280
+ const reportPath = join(dir, "report.json");
281
+ try {
282
+ const result = spawnSync(process.execPath, firstPushArgs(name), {
283
+ stdio: ["ignore", options.json ? 2 : "inherit", "inherit"],
284
+ env: { ...process.env, [PUSH_FAILURE_REPORT_ENV]: reportPath },
285
+ });
286
+ if (result.error)
287
+ throw result.error;
288
+ const exitCode = result.status ?? 1;
289
+ return {
290
+ exitCode,
291
+ transient: exitCode !== 0 && readPushFailureReport(reportPath)?.transient === true,
292
+ };
293
+ }
294
+ finally {
295
+ rmSync(dir, { recursive: true, force: true });
296
+ }
297
+ }
298
+ /**
299
+ * Runs the first push, and runs it again after a transient failure, waiting
300
+ * `TRANSIENT_RETRY_DELAYS_MS` between runs: four runs at most. Running it
301
+ * again is safe, since a push applies only what the server does not hold yet.
302
+ * A failure that is not transient is returned at once. `onRetry` is told the
303
+ * wait and the number of the run about to start; `run` and `sleep` are
304
+ * replaced in tests.
305
+ */
306
+ export async function runFirstPushWithRetry(name, options = {}) {
307
+ const run = options.run ?? runFirstPush;
308
+ const sleep = options.sleep ?? ((ms) => new Promise((done) => setTimeout(done, ms)));
309
+ const delaysMs = options.delaysMs ?? TRANSIENT_RETRY_DELAYS_MS;
310
+ for (let attempts = 1;; attempts++) {
311
+ const result = run(name, { json: options.json });
312
+ if (result.exitCode === 0 || !result.transient || attempts > delaysMs.length) {
313
+ return { exitCode: result.exitCode, attempts };
314
+ }
315
+ const delayMs = delaysMs[attempts - 1];
316
+ options.onRetry?.(delayMs, attempts + 1);
317
+ await sleep(delayMs);
318
+ }
281
319
  }
282
320
  //# sourceMappingURL=child-apps-local.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"child-apps-local.js","sourceRoot":"","sources":["../../../src/lib/child-apps-local.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"child-apps-local.js","sourceRoot":"","sources":["../../../src/lib/child-apps-local.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Where a project's login lives (#4492).
3
+ *
4
+ * A project's credentials file is `<projectRoot>/.primitive/credentials.json`,
5
+ * except in a linked git worktree: there it is the main worktree's file for
6
+ * the same project, so a new worktree of a logged-in project is logged in.
7
+ * Every worktree reads and writes that one file; everything else under
8
+ * `.primitive/` (the selection, machine-local environments, sync state,
9
+ * backups) stays per worktree.
10
+ *
11
+ * The answer is the project root itself whenever there is no main checkout to
12
+ * share with: outside a git repository, without a git that knows
13
+ * `--path-format` (2.31), in the main worktree, in a bare repository's
14
+ * worktrees, and in a linked worktree whose main checkout does not hold the
15
+ * project. Nothing here throws.
16
+ */
17
+ /**
18
+ * The project root whose `.primitive/credentials.json` holds `projectRoot`'s
19
+ * login: the same project in the main worktree when `projectRoot` is in a
20
+ * linked git worktree and the main worktree holds the project, otherwise
21
+ * `projectRoot` itself. Cached per process per project root.
22
+ */
23
+ export declare function credentialsRootFor(projectRoot: string): string;
24
+ /**
25
+ * Forget every cached {@link credentialsRootFor} answer. One invocation
26
+ * resolves one project, so nothing in the CLI calls this; it exists for tests.
27
+ */
28
+ export declare function resetCredentialsHomeCache(): void;
29
+ /**
30
+ * Whether the nearest `.git` above `projectRoot` is a file, which is how a
31
+ * linked worktree is marked. Read without running git.
32
+ */
33
+ export declare function linkedWorktreeMarker(projectRoot: string): boolean;
34
+ /**
35
+ * Why a linked worktree is not using the main checkout's login, when that is
36
+ * git's doing: git could not answer and the project sits in a linked
37
+ * worktree. Null otherwise.
38
+ */
39
+ export declare function oldGitHint(projectRoot: string): string | null;
40
+ /**
41
+ * The linked worktree's own `.primitive/credentials.json` when it exists but
42
+ * the main worktree's is the one used, or null. It is never read or changed.
43
+ */
44
+ export declare function ignoredLocalCredentialsFile(projectRoot: string): string | null;
45
+ /**
46
+ * How many worktrees of `projectRoot`'s repository hold the project and share
47
+ * its login: the worktrees `git worktree list` names, except a bare entry,
48
+ * whose copy of the project resolves to the same credentials home. At least
49
+ * 1; 1 on any git failure.
50
+ */
51
+ export declare function sharedWorktreeCount(projectRoot: string): number;