@ibgib/core-gib 0.1.8 → 0.1.10

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 (80) hide show
  1. package/dist/agent-helpers.d.mts +45 -0
  2. package/dist/agent-helpers.d.mts.map +1 -0
  3. package/dist/agent-helpers.mjs +36 -0
  4. package/dist/agent-helpers.mjs.map +1 -0
  5. package/dist/keystone/keystone-config-builder.respec.d.mts +2 -0
  6. package/dist/keystone/keystone-config-builder.respec.d.mts.map +1 -0
  7. package/dist/keystone/keystone-config-builder.respec.mjs +34 -0
  8. package/dist/keystone/keystone-config-builder.respec.mjs.map +1 -0
  9. package/dist/keystone/keystone-constants.d.mts +2 -0
  10. package/dist/keystone/keystone-constants.d.mts.map +1 -1
  11. package/dist/keystone/keystone-constants.mjs +2 -0
  12. package/dist/keystone/keystone-constants.mjs.map +1 -1
  13. package/dist/keystone/keystone-helpers.d.mts +54 -1
  14. package/dist/keystone/keystone-helpers.d.mts.map +1 -1
  15. package/dist/keystone/keystone-helpers.mjs +185 -1
  16. package/dist/keystone/keystone-helpers.mjs.map +1 -1
  17. package/dist/keystone/keystone-service-v1.d.mts +49 -16
  18. package/dist/keystone/keystone-service-v1.d.mts.map +1 -1
  19. package/dist/keystone/keystone-service-v1.mjs +151 -328
  20. package/dist/keystone/keystone-service-v1.mjs.map +1 -1
  21. package/dist/keystone/keystone-service-v1.respec.mjs +401 -20
  22. package/dist/keystone/keystone-service-v1.respec.mjs.map +1 -1
  23. package/dist/keystone/keystone-types.d.mts +22 -0
  24. package/dist/keystone/keystone-types.d.mts.map +1 -1
  25. package/dist/sync/sync-constants.d.mts +17 -0
  26. package/dist/sync/sync-constants.d.mts.map +1 -0
  27. package/dist/sync/sync-constants.mjs +16 -0
  28. package/dist/sync/sync-constants.mjs.map +1 -0
  29. package/dist/sync/sync-helpers.d.mts +15 -0
  30. package/dist/sync/sync-helpers.d.mts.map +1 -0
  31. package/dist/sync/sync-helpers.mjs +46 -0
  32. package/dist/sync/sync-helpers.mjs.map +1 -0
  33. package/dist/sync/sync-local-spaces.respec.d.mts +2 -0
  34. package/dist/sync/sync-local-spaces.respec.d.mts.map +1 -0
  35. package/dist/sync/sync-local-spaces.respec.mjs +159 -0
  36. package/dist/sync/sync-local-spaces.respec.mjs.map +1 -0
  37. package/dist/sync/sync-saga-coordinator.d.mts +118 -0
  38. package/dist/sync/sync-saga-coordinator.d.mts.map +1 -0
  39. package/dist/sync/sync-saga-coordinator.mjs +399 -0
  40. package/dist/sync/sync-saga-coordinator.mjs.map +1 -0
  41. package/dist/sync/sync-saga-coordinator.respec.d.mts +2 -0
  42. package/dist/sync/sync-saga-coordinator.respec.d.mts.map +1 -0
  43. package/dist/sync/sync-saga-coordinator.respec.mjs +40 -0
  44. package/dist/sync/sync-saga-coordinator.respec.mjs.map +1 -0
  45. package/dist/sync/sync-types.d.mts +103 -0
  46. package/dist/sync/sync-types.d.mts.map +1 -0
  47. package/dist/sync/sync-types.mjs +2 -0
  48. package/dist/sync/sync-types.mjs.map +1 -0
  49. package/dist/test/mock-space.d.mts +39 -0
  50. package/dist/test/mock-space.d.mts.map +1 -0
  51. package/dist/test/mock-space.mjs +79 -0
  52. package/dist/test/mock-space.mjs.map +1 -0
  53. package/dist/witness/space/inner-space/inner-space-v1.respec.mjs +163 -201
  54. package/dist/witness/space/inner-space/inner-space-v1.respec.mjs.map +1 -1
  55. package/dist/witness/space/space-helper.d.mts.map +1 -1
  56. package/dist/witness/space/space-helper.mjs +43 -4
  57. package/dist/witness/space/space-helper.mjs.map +1 -1
  58. package/dist/witness/space/space-helper.respec.d.mts +2 -0
  59. package/dist/witness/space/space-helper.respec.d.mts.map +1 -0
  60. package/dist/witness/space/space-helper.respec.mjs +30 -0
  61. package/dist/witness/space/space-helper.respec.mjs.map +1 -0
  62. package/package.json +2 -2
  63. package/src/agent-helpers.mts +58 -0
  64. package/src/keystone/keystone-config-builder.respec.mts +49 -0
  65. package/src/keystone/keystone-constants.mts +2 -0
  66. package/src/keystone/keystone-helpers.mts +211 -2
  67. package/src/keystone/keystone-service-v1.mts +183 -367
  68. package/src/keystone/keystone-service-v1.respec.mts +484 -21
  69. package/src/keystone/keystone-types.mts +24 -0
  70. package/src/sync/sync-constants.mts +24 -0
  71. package/src/sync/sync-helpers.mts +59 -0
  72. package/src/sync/sync-local-spaces.respec.mts +200 -0
  73. package/src/sync/sync-saga-coordinator.mts +477 -0
  74. package/src/sync/sync-saga-coordinator.respec.mts +52 -0
  75. package/src/sync/sync-types.mts +120 -0
  76. package/src/test/mock-space.mts +85 -0
  77. package/src/witness/space/inner-space/inner-space-v1.respec.mts +181 -228
  78. package/src/witness/space/space-helper.mts +42 -4
  79. package/src/witness/space/space-helper.respec.mts +42 -0
  80. package/tmp.md +11 -0
@@ -0,0 +1,45 @@
1
+ /**
2
+ * @module agent-helpers
3
+ *
4
+ * Helper functions designed to simplify common ibGib operations for agentic usage.
5
+ * These abstract away the low-level Factory_V1 details and provide clear, semantic
6
+ * actions for creating and modifying data.
7
+ */
8
+ import { IbGib_V1, IbGibRel8ns_V1 } from '@ibgib/ts-gib/dist/V1/types.mjs';
9
+ import { KeystoneService_V1 } from './keystone/keystone-service-v1.mjs';
10
+ import { IbGibSpaceAny } from './witness/space/space-base-v1.mjs';
11
+ /**
12
+ * Creates a "Stone" ibGib - an immutable, primitive-like data record with no history/timeline.
13
+ * Useful for static data, configurations, or standalone records.
14
+ */
15
+ export declare function createStoneHelper<TData = any>(opts: {
16
+ ib: string;
17
+ data?: TData;
18
+ rel8ns?: IbGibRel8ns_V1;
19
+ uuid?: boolean;
20
+ }): Promise<IbGib_V1<TData>>;
21
+ /**
22
+ * Creates a new "Living" Timeline Root.
23
+ * This is the starting point for any mutable data structure (a file, a user profile, a post).
24
+ */
25
+ export declare function createTimelineRootHelper<TData = any>(opts: {
26
+ ib: string;
27
+ data?: TData;
28
+ space: IbGibSpaceAny;
29
+ }): Promise<IbGib_V1<TData>>;
30
+ /**
31
+ * Forks an existing timeline to create a new version (a child).
32
+ * Used for updating data, adding a comment to a thread (if threading via timeline), etc.
33
+ */
34
+ export declare function forkTimelineHelper<TData = any>(opts: {
35
+ timeline: IbGib_V1<TData>;
36
+ dataToAddOrPatch?: Partial<TData>;
37
+ rel8nsToAdd?: IbGibRel8ns_V1;
38
+ space: IbGibSpaceAny;
39
+ }): Promise<IbGib_V1<TData>>;
40
+ /**
41
+ * Creates a valid, mock Keystone Service for testing purposes.
42
+ * This mocks the identity and signing logic needed for Sync operations.
43
+ */
44
+ export declare function getTestKeystoneServiceHelper(): Promise<KeystoneService_V1>;
45
+ //# sourceMappingURL=agent-helpers.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-helpers.d.mts","sourceRoot":"","sources":["../src/agent-helpers.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAgB,MAAM,iCAAiC,CAAC;AAEzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAElE;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,GAAG,GAAG,EAAE,IAAI,EAAE;IACvD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAE3B;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAAC,KAAK,GAAG,GAAG,EAAE,IAAI,EAAE;IAC9D,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,aAAa,CAAC;CACxB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAE3B;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,GAAG,GAAG,EAAE,IAAI,EAAE;IACxD,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,KAAK,EAAE,aAAa,CAAC;CACxB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAE3B;AAED;;;GAGG;AACH,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAEhF"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @module agent-helpers
3
+ *
4
+ * Helper functions designed to simplify common ibGib operations for agentic usage.
5
+ * These abstract away the low-level Factory_V1 details and provide clear, semantic
6
+ * actions for creating and modifying data.
7
+ */
8
+ /**
9
+ * Creates a "Stone" ibGib - an immutable, primitive-like data record with no history/timeline.
10
+ * Useful for static data, configurations, or standalone records.
11
+ */
12
+ export async function createStoneHelper(opts) {
13
+ throw new Error("Not implemented yet. Agent waiting for user implementation.");
14
+ }
15
+ /**
16
+ * Creates a new "Living" Timeline Root.
17
+ * This is the starting point for any mutable data structure (a file, a user profile, a post).
18
+ */
19
+ export async function createTimelineRootHelper(opts) {
20
+ throw new Error("Not implemented yet. Agent waiting for user implementation.");
21
+ }
22
+ /**
23
+ * Forks an existing timeline to create a new version (a child).
24
+ * Used for updating data, adding a comment to a thread (if threading via timeline), etc.
25
+ */
26
+ export async function forkTimelineHelper(opts) {
27
+ throw new Error("Not implemented yet. Agent waiting for user implementation.");
28
+ }
29
+ /**
30
+ * Creates a valid, mock Keystone Service for testing purposes.
31
+ * This mocks the identity and signing logic needed for Sync operations.
32
+ */
33
+ export async function getTestKeystoneServiceHelper() {
34
+ throw new Error("Not implemented yet. Agent waiting for user implementation.");
35
+ }
36
+ //# sourceMappingURL=agent-helpers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-helpers.mjs","sourceRoot":"","sources":["../src/agent-helpers.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAc,IAKpD;IACG,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;AACnF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAc,IAI3D;IACG,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;AACnF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAc,IAKrD;IACG,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;AACnF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B;IAC9C,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;AACnF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=keystone-config-builder.respec.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keystone-config-builder.respec.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-config-builder.respec.mts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ import { respecfully, iReckon, ifWe } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
2
+ const maam = `[${import.meta.url}]`, sir = maam;
3
+ import { GLOBAL_LOG_A_LOT } from '../core-constants.mjs';
4
+ import { createRevocationPoolConfig, createStandardPoolConfig } from './keystone-config-builder.mjs';
5
+ import { KEYSTONE_VERB_REVOKE, } from './keystone-constants.mjs';
6
+ const logalot = GLOBAL_LOG_A_LOT;
7
+ await respecfully(sir, 'Config Builders', async () => {
8
+ await ifWe(sir, 'createStandardPoolConfig defaults are correct', async () => {
9
+ const config = createStandardPoolConfig("test_salt");
10
+ iReckon(sir, config.salt).willEqual("test_salt");
11
+ iReckon(sir, config.id).willEqual("test_salt");
12
+ iReckon(sir, config.type).willEqual("hash-reveal-v1");
13
+ // Behavior check
14
+ const b = config.behavior;
15
+ iReckon(sir, b.size).willEqual(100);
16
+ iReckon(sir, b.selectSequentially).willEqual(2);
17
+ iReckon(sir, b.selectRandomly).willEqual(2);
18
+ iReckon(sir, b.replenish).willEqual("top-up");
19
+ // Verbs should be empty/undefined (permissive)
20
+ iReckon(sir, config.allowedVerbs.length).willEqual(0);
21
+ });
22
+ await ifWe(sir, 'createRevocationPoolConfig defaults are correct', async () => {
23
+ const config = createRevocationPoolConfig("revoke_salt");
24
+ iReckon(sir, config.salt).willEqual("revoke_salt");
25
+ // Behavior check
26
+ const b = config.behavior;
27
+ iReckon(sir, b.size).willEqual(500); // Higher security
28
+ iReckon(sir, b.replenish).willEqual("scorched-earth");
29
+ // Verbs should be restricted
30
+ iReckon(sir, config.allowedVerbs).includes(KEYSTONE_VERB_REVOKE);
31
+ iReckon(sir, config.allowedVerbs.length).willEqual(1);
32
+ });
33
+ });
34
+ //# sourceMappingURL=keystone-config-builder.respec.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keystone-config-builder.respec.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-config-builder.respec.mts"],"names":[],"mappings":"AAAA,OAAO,EACH,WAAW,EAAE,OAAO,EAAE,IAAI,EAC7B,MAAM,kDAAkD,CAAC;AAC1D,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;AAGhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACrG,OAAO,EAAE,oBAAoB,GAAG,MAAM,0BAA0B,CAAC;AAEjE,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAGjC,MAAM,WAAW,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,IAAI,EAAE;IAEjD,MAAM,IAAI,CAAC,GAAG,EAAE,+CAA+C,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,MAAM,GAAG,wBAAwB,CAAC,WAAW,CAA8B,CAAC;QAElF,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAEtD,iBAAiB;QACjB,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC1B,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE9C,+CAA+C;QAC/C,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,GAAG,EAAE,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,MAAM,GAAG,0BAA0B,CAAC,aAAa,CAA8B,CAAC;QAEtF,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAEnD,iBAAiB;QACjB,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC1B,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,kBAAkB;QACvD,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAEtD,6BAA6B;QAC7B,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -22,6 +22,8 @@ export declare const KeystoneVerb: {
22
22
  * specifically adding or removing challenge pools.
23
23
  *
24
24
  * "Root access" to the identity.
25
+ *
26
+ * Basically, this is the verb for the "admin" pool.
25
27
  */
26
28
  MANAGE: "manage";
27
29
  };
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-constants.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-constants.mts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,aAAa,CAAC;AAGxC;;GAEG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C;;GAEG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,MAAM,MAAM,YAAY,GAClB,OAAO,oBAAoB,GAC3B,OAAO,oBAAoB,CAAC;AAElC;;GAEG;AACH,eAAO,MAAM,YAAY;IACrB;;;OAGG;;IAEH;;;;;OAKG;;CAEoC,CAAC;AAC5C,eAAO,MAAM,0BAA0B,yBAA8B,CAAC;AACtE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,YAAY,CAEnE;AAGD;;GAEG;AACH,eAAO,MAAM,cAAc,WAAuB,CAAC;AACnD,eAAO,MAAM,cAAc,WAAuB,CAAC;AACnD,eAAO,MAAM,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"keystone-constants.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-constants.mts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,aAAa,CAAC;AAGxC;;GAEG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C;;GAEG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,MAAM,MAAM,YAAY,GAClB,OAAO,oBAAoB,GAC3B,OAAO,oBAAoB,CAAC;AAElC;;GAEG;AACH,eAAO,MAAM,YAAY;IACrB;;;OAGG;;IAEH;;;;;;;OAOG;;CAEoC,CAAC;AAC5C,eAAO,MAAM,0BAA0B,yBAA8B,CAAC;AACtE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,YAAY,CAEnE;AAGD;;GAEG;AACH,eAAO,MAAM,cAAc,WAAuB,CAAC;AACnD,eAAO,MAAM,cAAc,WAAuB,CAAC;AACnD,eAAO,MAAM,eAAe,YAAY,CAAC"}
@@ -22,6 +22,8 @@ export const KeystoneVerb = {
22
22
  * specifically adding or removing challenge pools.
23
23
  *
24
24
  * "Root access" to the identity.
25
+ *
26
+ * Basically, this is the verb for the "admin" pool.
25
27
  */
26
28
  MANAGE: KEYSTONE_VERB_MANAGE,
27
29
  };
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-constants.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-constants.mts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC;AAExC,4BAA4B;AAC5B;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAC7C;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAK7C;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB;;;OAGG;IACH,MAAM,EAAE,oBAAoB;IAC5B;;;;;OAKG;IACH,MAAM,EAAE,oBAAoB;CACW,CAAC;AAC5C,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACtE,MAAM,UAAU,cAAc,CAAC,KAAa;IACxC,OAAO,0BAA0B,CAAC,QAAQ,CAAC,KAAqB,CAAC,CAAC;AACtE,CAAC;AACD,+BAA+B;AAE/B;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AACnD,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC"}
1
+ {"version":3,"file":"keystone-constants.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-constants.mts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC;AAExC,4BAA4B;AAC5B;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAC7C;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAK7C;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB;;;OAGG;IACH,MAAM,EAAE,oBAAoB;IAC5B;;;;;;;OAOG;IACH,MAAM,EAAE,oBAAoB;CACW,CAAC;AAC5C,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACtE,MAAM,UAAU,cAAc,CAAC,KAAa;IACxC,OAAO,0BAA0B,CAAC,QAAQ,CAAC,KAAqB,CAAC,CAAC;AACtE,CAAC;AACD,+BAA+B;AAE/B;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AACnD,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { Ib } from "@ibgib/ts-gib/dist/types.mjs";
2
- import { KeystoneData_V1, KeystoneIbGib_V1, KeystoneIbInfo_V1, KeystoneChallengePool, DeterministicResult, KeystoneProof, KeystonePoolConfig } from "./keystone-types.mjs";
2
+ import { KeystoneData_V1, KeystoneIbGib_V1, KeystoneIbInfo_V1, KeystoneChallengePool, DeterministicResult, KeystoneProof, KeystonePoolConfig, KeystoneClaim } from "./keystone-types.mjs";
3
+ import { MetaspaceService } from "../witness/space/metaspace/metaspace-types.mjs";
4
+ import { IbGibSpaceAny } from "../witness/space/space-base-v1.mjs";
3
5
  /**
4
6
  * space-delimited keystone ib containing select keystone metadata.
5
7
  *
@@ -79,6 +81,15 @@ export declare function selectChallengeIds({ pool, targetAddr, requiredChallenge
79
81
  */
80
82
  requiredChallengeIds?: string[];
81
83
  }): string[];
84
+ /**
85
+ * Generates an opaque, collision-resistant ID for a challenge.
86
+ * atow (2025/12/22) - Hash(Salt + Timestamp + Index)
87
+ */
88
+ export declare function generateOpaqueChallengeId({ salt, timestamp, index }: {
89
+ salt: string;
90
+ timestamp: string;
91
+ index: number;
92
+ }): Promise<string>;
82
93
  /**
83
94
  * Calculates the NEXT state of the Challenge Pools given a specific consumption event.
84
95
  * Handles TopUp, ReplaceAll, Consume, and ScorchedEarth strategies.
@@ -96,6 +107,34 @@ export declare function applyReplenishmentStrategy({ prevPools, targetPoolId, co
96
107
  strategy: any;
97
108
  config: KeystonePoolConfig;
98
109
  }): Promise<KeystoneChallengePool[]>;
110
+ /**
111
+ * High-level orchestration helper.
112
+ * 1. Instantiates Strategy.
113
+ * 2. Derives Secret.
114
+ * 3. Solves Challenges (Generates Solutions).
115
+ * 4. Replenishes Pool (Calculates the next state of ALL pools).
116
+ * 5. Constructs Proof.
117
+ *
118
+ * @returns The resulting Proof and the full list of Next Pools.
119
+ */
120
+ export declare function solveAndReplenish({ targetPoolId, prevPools, masterSecret, challengeIds, claim, requiredChallengeIds, }: {
121
+ /**
122
+ * The ID of the pool to use for signing.
123
+ */
124
+ targetPoolId: string;
125
+ /**
126
+ * The full list of pools from the previous Keystone frame.
127
+ * Required to reconstruct the full state for the next frame.
128
+ */
129
+ prevPools: KeystoneChallengePool[];
130
+ masterSecret: string;
131
+ challengeIds: string[];
132
+ claim: Partial<KeystoneClaim>;
133
+ requiredChallengeIds?: string[];
134
+ }): Promise<{
135
+ proof: KeystoneProof;
136
+ nextPools: KeystoneChallengePool[];
137
+ }>;
99
138
  /**
100
139
  * Validates the transition from Prev -> Curr.
101
140
  * Enforces Cryptography AND Behavioral Policy.
@@ -114,4 +153,18 @@ export declare function verifyProofAgainstPool({ proof, pool, errors, }: {
114
153
  pool: KeystoneChallengePool;
115
154
  errors: string[];
116
155
  }): Promise<void>;
156
+ export declare function evolvePersistAndRegisterKeystone({ prevIbGib, newData, metaspace, space, }: {
157
+ prevIbGib: KeystoneIbGib_V1;
158
+ newData: KeystoneData_V1;
159
+ metaspace: MetaspaceService;
160
+ space: IbGibSpaceAny;
161
+ }): Promise<KeystoneIbGib_V1>;
162
+ /**
163
+ * Creates a new keystone ibgib that has no dna and no past.
164
+ */
165
+ export declare function createKeystoneIbGibImpl({ data, metaspace, space, }: {
166
+ data: KeystoneData_V1;
167
+ metaspace: MetaspaceService;
168
+ space?: IbGibSpaceAny;
169
+ }): Promise<KeystoneIbGib_V1>;
117
170
  //# sourceMappingURL=keystone-helpers.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-helpers.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-helpers.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keystone-helpers.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-helpers.mts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  import { extractErrorMsg, hash, pretty } from "@ibgib/helper-gib/dist/helpers/utils-helper.mjs";
2
2
  import { getIbAndGib, getIbGibAddr } from "@ibgib/ts-gib/dist/helper.mjs";
3
3
  import { validateIbGibIntrinsically } from "@ibgib/ts-gib/dist/V1/validate-helper.mjs";
4
+ import { mut8 } from "@ibgib/ts-gib/dist/V1/transforms/mut8.mjs";
5
+ import { Factory_V1 } from "@ibgib/ts-gib/dist/V1/factory.mjs";
6
+ import { getGib } from "@ibgib/ts-gib/dist/V1/transforms/transform-helper.mjs";
4
7
  import { GLOBAL_LOG_A_LOT } from "../core-constants.mjs";
5
8
  import { KEYSTONE_ATOM } from "./keystone-constants.mjs";
6
9
  import { KeystoneReplenishStrategy, KEYSTONE_REPLENISH_STRATEGY_VALID_VALUES } from "./keystone-types.mjs";
@@ -250,7 +253,7 @@ export function selectChallengeIds({ pool, targetAddr, requiredChallengeIds, })
250
253
  * Generates an opaque, collision-resistant ID for a challenge.
251
254
  * atow (2025/12/22) - Hash(Salt + Timestamp + Index)
252
255
  */
253
- async function generateOpaqueChallengeId({ salt, timestamp, index }) {
256
+ export async function generateOpaqueChallengeId({ salt, timestamp, index }) {
254
257
  // Use first 16 chars of hex (64 bits) for brevity + safety.
255
258
  const raw = await hash({ s: `${salt}${timestamp}${index}` });
256
259
  return raw.substring(0, 16);
@@ -329,6 +332,58 @@ export async function applyReplenishmentStrategy({ prevPools, targetPoolId, cons
329
332
  throw error;
330
333
  }
331
334
  }
335
+ /**
336
+ * High-level orchestration helper.
337
+ * 1. Instantiates Strategy.
338
+ * 2. Derives Secret.
339
+ * 3. Solves Challenges (Generates Solutions).
340
+ * 4. Replenishes Pool (Calculates the next state of ALL pools).
341
+ * 5. Constructs Proof.
342
+ *
343
+ * @returns The resulting Proof and the full list of Next Pools.
344
+ */
345
+ export async function solveAndReplenish({ targetPoolId, prevPools, masterSecret, challengeIds, claim, requiredChallengeIds, }) {
346
+ const lc = `[solveAndReplenish]`;
347
+ try {
348
+ if (logalot) {
349
+ console.log(`${lc} starting... poolId: ${targetPoolId}, ids: ${challengeIds.length}`);
350
+ }
351
+ const pool = prevPools.find(p => p.id === targetPoolId);
352
+ if (!pool) {
353
+ throw new Error(`Target pool not found: ${targetPoolId} (E: a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6)`);
354
+ }
355
+ const strategy = KeystoneStrategyFactory.create({ config: pool.config });
356
+ const poolSecret = await strategy.derivePoolSecret({ masterSecret });
357
+ const solutions = [];
358
+ // 1. Solve
359
+ for (const id of challengeIds) {
360
+ const solution = await strategy.generateSolution({
361
+ poolSecret, poolId: pool.id, challengeId: id,
362
+ });
363
+ solutions.push(solution);
364
+ }
365
+ // 2. Construct Proof
366
+ const proof = {
367
+ claim,
368
+ solutions,
369
+ requiredChallengeIds: (requiredChallengeIds && requiredChallengeIds.length > 0) ? requiredChallengeIds : undefined
370
+ };
371
+ // 3. Replenish
372
+ const nextPools = await applyReplenishmentStrategy({
373
+ prevPools,
374
+ targetPoolId: pool.id,
375
+ consumedIds: challengeIds,
376
+ masterSecret,
377
+ strategy,
378
+ config: pool.config
379
+ });
380
+ return { proof, nextPools };
381
+ }
382
+ catch (error) {
383
+ console.error(`${lc} ${extractErrorMsg(error)}`);
384
+ throw error;
385
+ }
386
+ }
332
387
  /**
333
388
  * Validates the transition from Prev -> Curr.
334
389
  * Enforces Cryptography AND Behavioral Policy.
@@ -452,4 +507,133 @@ export async function verifyProofAgainstPool({ proof, pool, errors, }) {
452
507
  }
453
508
  }
454
509
  }
510
+ export async function evolvePersistAndRegisterKeystone({ prevIbGib, newData, metaspace, space, }) {
511
+ const lc = `[${evolvePersistAndRegisterKeystone.name}]`;
512
+ try {
513
+ if (logalot) {
514
+ console.log(`${lc} starting... (I: 8b10e8920f08b7842803665834cf8925)`);
515
+ }
516
+ if (!prevIbGib.data) {
517
+ throw new Error(`(UNEXPECTED) prevIbGib.data falsy? (E: 5e84875bf992c585b979e6c8ed5bf225)`);
518
+ }
519
+ if (prevIbGib.data.revocationInfo) {
520
+ throw new Error(`Keystone has already been revoked (prevIbGib.data.revocationInfo truthy), so we cannot evolve the keystone. Keystone addr: ${getIbGibAddr({ ibGib: prevIbGib })} (E: 45d7f846556829de6b2a701838c3f825)`);
521
+ }
522
+ const prevData = prevIbGib.data;
523
+ /**
524
+ * we want to completely replace these keys, so we will remove them
525
+ * from the data. This occurs first in the underlying mut8
526
+ * transform.
527
+ * @see {@link mut8}
528
+ */
529
+ let dataToRemove = {};
530
+ if (prevData.proofs) {
531
+ dataToRemove.proofs = [];
532
+ }
533
+ if (prevData.challengePools) {
534
+ dataToRemove.challengePools = [];
535
+ }
536
+ if (prevData.frameDetails) {
537
+ dataToRemove.frameDetails = {};
538
+ }
539
+ if (Object.keys(dataToRemove).length === 0) {
540
+ dataToRemove = undefined;
541
+ }
542
+ const resMut8 = await mut8({
543
+ src: prevIbGib,
544
+ dataToRemove,
545
+ dataToAddOrPatch: newData,
546
+ // dna: false, // explicitly set to false just to show
547
+ nCounter: true,
548
+ });
549
+ if (!!resMut8.intermediateIbGibs) {
550
+ throw new Error(`(UNEXPECTED) resMut8.intermediateIbGibs truthy? I'm not sure if we expect there to be intermediateIbGibs, but I feel like we shouldn't. Pretty sure we shouldn't, definitely don't *want* them. (E: ba40d55d7c2d36d438c413886f148625)`);
551
+ }
552
+ if (!!resMut8.dnas) {
553
+ throw new Error(`(UNEXPECTED) resMut8.dnas truthy? We do not want dnas with keystones. (E: 49470513d018f97d28024f4e82da3b25)`);
554
+ }
555
+ const newKeystoneIbGib = resMut8.newIbGib;
556
+ // run validation here
557
+ const errors = await validateKeystoneTransition({
558
+ currentIbGib: newKeystoneIbGib,
559
+ prevIbGib,
560
+ });
561
+ if (errors.length > 0) {
562
+ console.error(`${lc} Validation Failed:\n${errors.join('\n')}`);
563
+ throw new Error(`(UNEXPECTED) invalid keystone after we just evolved it? Errors: ${errors.join('; ')} (E: ae2c58406c1db7687879dfb89fc1f825)`);
564
+ }
565
+ // save and register
566
+ await metaspace.put({ ibGib: newKeystoneIbGib, space, });
567
+ await metaspace.registerNewIbGib({ ibGib: newKeystoneIbGib, space, });
568
+ return newKeystoneIbGib;
569
+ }
570
+ catch (error) {
571
+ console.error(`${lc} ${extractErrorMsg(error)}`);
572
+ throw error;
573
+ }
574
+ finally {
575
+ if (logalot) {
576
+ console.log(`${lc} complete.`);
577
+ }
578
+ }
579
+ }
580
+ /**
581
+ * Creates a new keystone ibgib that has no dna and no past.
582
+ */
583
+ export async function createKeystoneIbGibImpl({ data, metaspace, space, }) {
584
+ const lc = `[${createKeystoneIbGibImpl.name}]`;
585
+ try {
586
+ if (logalot) {
587
+ console.log(`${lc} starting... (I: 5e32389700e9899e788cbefacef7c825)`);
588
+ }
589
+ space ??= await metaspace.getLocalUserSpace({ lock: false });
590
+ if (!space) {
591
+ throw new Error(`(UNEXPECTED) space was falsy and we couldn't get default local user space from metaspace? (E: 9a6498cf16a8801f19ec376749742225)`);
592
+ }
593
+ // create the actual keystoneIbGib
594
+ const resFirstGen = await Factory_V1.firstGen({
595
+ parentIbGib: Factory_V1.primitive({ ib: KEYSTONE_ATOM }),
596
+ ib: await getKeystoneIb({ keystoneData: data }),
597
+ data,
598
+ dna: false,
599
+ nCounter: true,
600
+ tjp: {
601
+ timestamp: true,
602
+ uuid: true,
603
+ },
604
+ });
605
+ const keystoneIbGib = resFirstGen.newIbGib;
606
+ if (!keystoneIbGib.data) {
607
+ throw new Error(`(UNEXPECTED) keystoneIbGib.data falsy? We expect the data to be populated with real keystone data. (E: 38a358facdb89d16d81d48c8520d3d25)`);
608
+ }
609
+ if (!keystoneIbGib.rel8ns) {
610
+ throw new Error(`(UNEXPECTED) keystoneIbGib.rel8ns falsy? we expect the rel8ns to have ancestor and past. (E: 20cb7723dc33ae1ef808fe76d1bf4b25)`);
611
+ }
612
+ if (!keystoneIbGib.rel8ns.past || keystoneIbGib.rel8ns.past.length === 0) {
613
+ throw new Error(`(UNEXPECTED) keystoneIbGib.rel8ns.past falsy or empty? we expect the firstGen call to generate an interstitial ibgib that we will splice out. (E: 0fd8388d045ab9f37834c27d67e78825)`);
614
+ }
615
+ // reset n
616
+ keystoneIbGib.data.n = 0;
617
+ // reset tjp
618
+ keystoneIbGib.data.isTjp = true;
619
+ delete keystoneIbGib.rel8ns.tjp;
620
+ // reset past
621
+ delete keystoneIbGib.rel8ns.past;
622
+ // recalculate gib
623
+ keystoneIbGib.gib = await getGib({ ibGib: keystoneIbGib });
624
+ // save and register
625
+ await metaspace.put({ ibGib: keystoneIbGib, space, });
626
+ await metaspace.registerNewIbGib({ ibGib: keystoneIbGib, space, });
627
+ return keystoneIbGib;
628
+ }
629
+ catch (error) {
630
+ console.error(`${lc} ${extractErrorMsg(error)}`);
631
+ throw error;
632
+ }
633
+ finally {
634
+ if (logalot) {
635
+ console.log(`${lc} complete.`);
636
+ }
637
+ }
638
+ }
455
639
  //# sourceMappingURL=keystone-helpers.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-helpers.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-helpers.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,iDAAiD,CAAC;AAEhG,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAEvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAuI,yBAAyB,EAAE,wCAAwC,EAAE,MAAM,sBAAsB,CAAC;AAGhP,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAEnF,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAEjC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAChC,YAAY,GAGf;IACG,MAAM,EAAE,GAAG,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC;IACrC,IAAI,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,oDAAoD,CAAC,CAAC;QAAC,CAAC;QAExF,MAAM,IAAI,GAAG,aAAa,CAAC;QAE3B,MAAM,EAAE,GAAG;YACP,IAAI;SACP,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEZ,OAAO,EAAE,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC;IAChB,CAAC;YAAS,CAAC;QACP,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAAC,CAAC;IACpD,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EAClC,EAAE,GAGL;IACG,MAAM,EAAE,GAAG,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC;IACvC,IAAI,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,oDAAoD,CAAC,CAAC;QAAC,CAAC;QACxF,MAAM,CACF,IAAI,CACP,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAElB,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,0CAA0C,IAAI,mCAAmC,aAAa,yCAAyC,CAAC,CAAC;QAC7J,CAAC;QAED,OAAO;YACH,IAAI;SACP,CAAA;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC;IAChB,CAAC;YAAS,CAAC;QACP,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAAC,CAAC;IACpD,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAC,EACzC,IAAI,EACJ,oBAAoB,EACpB,UAAU,EAKb;IACG,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IAEpC,gCAAgC;IAChC,8EAA8E;IAC9E,IAAI,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE7C,4DAA4D;IAC5D,6CAA6C;IAC7C,4DAA4D;IAC5D,IAAI,oBAAoB,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,KAAK,MAAM,EAAE,IAAI,oBAAoB,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,yDAAyD,EAAE,gBAAgB,CAAC,CAAC;YACjG,CAAC;YACD,sBAAsB;YACtB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC1B,uEAAuE;gBACvE,SAAS;YACb,CAAC;YACD,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;QACD,6BAA6B;QAC7B,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,4DAA4D;IAC5D,uCAAuC;IACvC,4DAA4D;IAC5D,IAAI,QAAQ,CAAC,kBAAkB,GAAG,CAAC,IAAI,UAAU,EAAE,CAAC;QAChD,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QACvD,IAAI,GAAG,EAAE,CAAC;YACN,sDAAsD;YACtD,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC,WAAW,EAAE,CAAC;YAE7E,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC1B,8BAA8B;gBAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAE3C,gEAAgE;gBAChE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;gBAExD,IAAI,CAAC,KAAK,EAAE,CAAC;oBACT,MAAM,IAAI,KAAK,CAAC,wDAAwD,IAAI,kBAAkB,CAAC,CAAC;gBACpG,CAAC;gBAED,sBAAsB;gBACtB,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACrB,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;IACL,CAAC;IAED,4DAA4D;IAC5D,uBAAuB;IACvB,4DAA4D;IAC5D,IAAI,QAAQ,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;QAClC,qDAAqD;QACrD,IAAI,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YACjD,OAAO,CAAC,KAAK,CAAC,sEAAsE,SAAS,CAAC,MAAM,mBAAmB,QAAQ,CAAC,kBAAkB,oBAAoB,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7L,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;QACvG,CAAC;QAED,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAChE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzC,wBAAwB;QACxB,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC3B,GAAiC,EACjC,WAAmB;IAEnB,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACtD,qBAAqB;IACrB,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QACzC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEjC,mDAAmD;QACnD,iDAAiD;QACjD,wDAAwD;IAC5D,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAChC,GAAiC,EACjC,WAAmB;IAEnB,kFAAkF;IAClF,mEAAmE;IACnE,yCAAyC;IACzC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,WAAW,CAAC,CAAC;IACzD,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAC9B,KAAK,EACL,MAAM,EACN,UAAU,EACV,IAAI,GAiBP;IACG,MAAM,EAAE,GAAG,qBAAqB,CAAC;IACjC,IAAI,CAAC;QACD,IAAI,IAAuC,CAAC;QAE5C,IAAI,MAAM,EAAE,CAAC;YACT,0BAA0B;YAC1B,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAAC,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,wCAAwC,CAAC,CAAC;YAAC,CAAC;QAC9G,CAAC;aAAM,IAAI,UAAU,EAAE,CAAC;YACpB,qBAAqB;YACrB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACzC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAAC,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;YAAC,CAAC;YAC5H,yFAAyF;YACzF,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACJ,sCAAsC;YACtC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAAC,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;YAAC,CAAC;YAEjH,wEAAwE;YACxE,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAClB,CAAC,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAChE,CAAC;YAEF,oEAAoE;YACpE,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAClB,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,CAC/D,CAAC;YACN,CAAC;YAED,IAAI,CAAC,IAAI,EAAE,CAAC;gBAAC,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,wCAAwC,CAAC,CAAC;YAAC,CAAC;QACrH,CAAC;QAED,wEAAwE;QACxE,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1E,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,EAAE,gCAAgC,IAAI,wCAAwC,CAAC,CAAC;YACjH,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAC/B,IAAI,EACJ,UAAU,EACV,oBAAoB,GAWvB;IACG,MAAM,EAAE,GAAG,sBAAsB,CAAC;IAClC,IAAI,CAAC;QACD,oCAAoC;QACpC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,4BAA4B,CAAC;YAChE,IAAI;YACJ,oBAAoB;YACpB,UAAU;SACb,CAAC,CAAC;QAEH,0BAA0B;QAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;QACxD,MAAM,SAAS,GAAa,EAAE,CAAC;QAE/B,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YAClB,IAAI,YAAY,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CAAC,wDAAwD,WAAW,UAAU,YAAY,CAAC,MAAM,wCAAwC,CAAC,CAAC;YAC9J,CAAC;YACD,iBAAiB;YACjB,2EAA2E;YAC3E,uDAAuD;YACvD,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACnE,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,aAAa;QACb,OAAO,CAAC,GAAG,YAAY,EAAE,GAAG,SAAS,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,yBAAyB,CAAC,EACrC,IAAI,EACJ,SAAS,EACT,KAAK,EAKR;IACG,4DAA4D;IAC5D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC;IAC7D,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,EAC7C,SAAS,EACT,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,MAAM,GAWT;IACG,MAAM,EAAE,GAAG,8BAA8B,CAAC;IAC1C,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;QACxE,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,eAAe,YAAY,oEAAoE,CAAC,CAAC;QAAC,CAAC;QAC3I,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEjC,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QAExC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;QAE/C,wCAAwC;QACxC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACrB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAAC,CAAC;QACvE,CAAC,CAAC,CAAC;QAEH,IAAI,YAAY,KAAK,yBAAyB,CAAC,KAAK,EAAE,CAAC;YACnD,kBAAkB;YAClB,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;YAEtD,UAAU;YACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,MAAM,KAAK,GAAG,MAAM,yBAAyB,CAAC;oBAC1C,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;iBACzC,CAAC,CAAC;gBAEH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC;oBAC7C,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK;iBAClD,CAAC,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,MAAM,QAAQ,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAExE,qBAAqB;gBACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;oBAAC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBAAC,CAAC;gBAC/C,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC;aAAM,IAAI,YAAY,KAAK,yBAAyB,CAAC,UAAU,EAAE,CAAC;YAC/D,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YAErB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5C,MAAM,KAAK,GAAG,MAAM,yBAAyB,CAAC;oBAC1C,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;iBACzC,CAAC,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC;oBAC7C,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK;iBAClD,CAAC,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,MAAM,QAAQ,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACxE,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC;aAAM,IAAI,YAAY,KAAK,yBAAyB,CAAC,OAAO,EAAE,CAAC;YAC5D,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,YAAY,KAAK,yBAAyB,CAAC,aAAa,EAAE,CAAC;YAClE,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACzB,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,iBAAiB,MAAM,CAAC,wCAAwC,CAAC,wCAAwC,CAAC,CAAC;QAC1K,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,EAC7C,YAAY,EACZ,SAAS,GAIZ;IACG,MAAM,EAAE,GAAG,IAAI,0BAA0B,CAAC,IAAI,GAAG,CAAC;IAClD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAAC,CAAC;QACjH,IAAI,CAAC,SAAS,EAAE,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;QAAC,CAAC;QAE3G,uBAAuB;QACvB,MAAM,gBAAgB,GAAG,MAAM,0BAA0B,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QACnF,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,MAAM,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAK,CAAC;QACpC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAK,CAAC;QAEjC,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,EAAE,IAAI,SAAS,oBAAoB,CAAC,CAAC;gBAChE,SAAS;YACb,CAAC;YAED,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAEzC,8CAA8C;YAC9C,kDAAkD;YAClD,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;YAChE,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,MAAM,CAAC,IAAI,CAAC,kCAAkC,MAAM,EAAE,CAAC,CAAC;gBACxD,SAAS;YACb,CAAC;YAED,MAAM,sBAAsB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAE1D,CAAC,CAAC,iBAAiB;QAEnB,0BAA0B;QAC1B,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;YAC1D,MAAM,cAAc,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YAC1D,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC,wCAAwC,cAAc,SAAS,MAAM,EAAE,CAAC,CAAC;YACzF,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC,CAAC,4BAA4B;IAC7C,CAAC;YAAS,CAAC;QACP,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAAC,CAAC;IACpD,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EACzC,KAAK,EACL,IAAI,EACJ,MAAM,GAKT;IACG,MAAM,EAAE,GAAG,IAAI,sBAAsB,CAAC,IAAI,GAAG,CAAC;IAC9C,IAAI,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,oDAAoD,CAAC,CAAC;QAAC,CAAC;QAExF,eAAe;QACf,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5E,MAAM,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,EAAE,+BAA+B,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACpG,CAAC;QACL,CAAC;QAED,4CAA4C;QAC5C,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,4BAA4B,CAAC;YAChE,IAAI;YACJ,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;YAChD,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,mEAAmE;SACrG,CAAC,CAAC;QAEH,qBAAqB;QACrB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAClE,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;YAC5B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE,EAAE,CAAC,CAAC;YACvE,CAAC;QACL,CAAC;QAED,gBAAgB;QAChB,MAAM,gBAAgB,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3E,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChE,IAAI,gBAAgB,CAAC,MAAM,GAAG,mBAAmB,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,qDAAqD,mBAAmB,SAAS,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5H,CAAC;QAED,uCAAuC;QACvC,KAAK,MAAM,EAAE,IAAI,gBAAgB,EAAE,CAAC;YAChC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,+BAA+B,CAAC,CAAC;YAC3E,CAAC;QACL,CAAC;QAED,YAAY;QACZ,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACxD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,+BAA+B,QAAQ,CAAC,WAAW,qBAAqB,CAAC,CAAC;YAC1F,CAAC;iBAAM,CAAC;gBACJ,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;gBACzE,IAAI,CAAC,OAAO,EAAE,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,kCAAkC,QAAQ,CAAC,WAAW,cAAc,CAAC,CAAC;gBACtF,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC;IAChB,CAAC;YAAS,CAAC;QACP,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAAC,CAAC;IACpD,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"keystone-helpers.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-helpers.mts"],"names":[],"mappings":"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"}