@peers-app/peers-device 0.16.4 → 0.16.6

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.
@@ -0,0 +1,310 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const peers_sdk_1 = require("@peers-app/peers-sdk");
4
+ const local_data_source_1 = require("../../local.data-source");
5
+ const test_packages_1 = require("./test-packages");
6
+ jest.setTimeout(30_000);
7
+ beforeAll(() => {
8
+ (0, peers_sdk_1.setSchemaToFieldsFn)(peers_sdk_1.schemaToFields);
9
+ });
10
+ async function createTestUserContext() {
11
+ const userId = (0, peers_sdk_1.newid)();
12
+ const deviceId = (0, peers_sdk_1.newid)();
13
+ const db = new local_data_source_1.DBLocal(":memory:");
14
+ const dataSourceFactory = (metaData, schema, _groupId) => {
15
+ return new peers_sdk_1.SQLDataSource(db, metaData, schema);
16
+ };
17
+ const userContext = new peers_sdk_1.UserContext(userId, dataSourceFactory, true);
18
+ await userContext.loadingPromise;
19
+ userContext.deviceId(deviceId);
20
+ return userContext;
21
+ }
22
+ describe("Contract persistence — integration", () => {
23
+ let userContext;
24
+ let registry;
25
+ let persistentRegistry;
26
+ beforeEach(async () => {
27
+ userContext = await createTestUserContext();
28
+ registry = new peers_sdk_1.ContractRegistry();
29
+ persistentRegistry = new peers_sdk_1.PersistentContractRegistry(registry, userContext.userDataContext);
30
+ });
31
+ // -------------------------------------------------------------------------
32
+ // 1. Persistence round-trip
33
+ // -------------------------------------------------------------------------
34
+ describe("persistence round-trip", () => {
35
+ it("persists a contract definition and hydrates it into a fresh registry", async () => {
36
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
37
+ const definition = tasksPkg.contracts[0];
38
+ const providerPkgId = (0, peers_sdk_1.newid)();
39
+ // Register in-memory
40
+ const regResult = registry.register(providerPkgId, definition);
41
+ expect(regResult.valid).toBe(true);
42
+ // Persist
43
+ await persistentRegistry.persist(definition, providerPkgId, true);
44
+ // Verify DB records
45
+ const defs = await (0, peers_sdk_1.Contracts)(userContext.userDataContext).list();
46
+ expect(defs).toHaveLength(1);
47
+ expect(defs[0].contractId).toBe(test_packages_1.TASKS_BASIC_CONTRACT_ID);
48
+ expect(defs[0].version).toBe(1);
49
+ const providers = await (0, peers_sdk_1.ContractProviders)(userContext.userDataContext).list();
50
+ expect(providers).toHaveLength(1);
51
+ expect(providers[0].providerPackageId).toBe(providerPkgId);
52
+ expect(providers[0].isActive).toBe(true);
53
+ // Hydrate into a fresh registry
54
+ const freshRegistry = new peers_sdk_1.ContractRegistry();
55
+ const freshPersistent = new peers_sdk_1.PersistentContractRegistry(freshRegistry, userContext.userDataContext);
56
+ await freshPersistent.hydrate();
57
+ const resolved = freshRegistry.resolve(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1);
58
+ expect(resolved).toBeDefined();
59
+ expect(resolved?.tables[0].name).toBe("Tasks");
60
+ expect(resolved?.tools[0].name).toBe("create-task");
61
+ expect(resolved?.observables[0].name).toBe("taskCount");
62
+ expect(freshRegistry.getProviderPackageId(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1)).toBe(providerPkgId);
63
+ });
64
+ it("updates an existing definition record on re-persist", async () => {
65
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
66
+ const definition = tasksPkg.contracts[0];
67
+ const providerPkgId = (0, peers_sdk_1.newid)();
68
+ registry.register(providerPkgId, definition);
69
+ await persistentRegistry.persist(definition, providerPkgId, true);
70
+ // Re-persist (same shape, should update not duplicate)
71
+ await persistentRegistry.persist(definition, providerPkgId, true);
72
+ const defs = await (0, peers_sdk_1.Contracts)(userContext.userDataContext).list();
73
+ expect(defs).toHaveLength(1);
74
+ const providers = await (0, peers_sdk_1.ContractProviders)(userContext.userDataContext).list();
75
+ expect(providers).toHaveLength(1);
76
+ });
77
+ });
78
+ // -------------------------------------------------------------------------
79
+ // 2. Provider registration + swap
80
+ // -------------------------------------------------------------------------
81
+ describe("provider registration and swap", () => {
82
+ it("registers two providers and swaps active, persisting the change", async () => {
83
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
84
+ const enhancedPkg = (0, test_packages_1.defineTasksEnhancedPackage)();
85
+ const pkgA = (0, peers_sdk_1.newid)();
86
+ const pkgB = (0, peers_sdk_1.newid)();
87
+ // Register tasks-basic from package A
88
+ registry.register(pkgA, tasksPkg.contracts[0]);
89
+ await persistentRegistry.persist(tasksPkg.contracts[0], pkgA, true);
90
+ // Register tasks-enhanced from package B (also satisfies tasks-basic via alsoImplements)
91
+ const enhancedKey = (0, peers_sdk_1.contractKey)(test_packages_1.TASKS_ENHANCED_CONTRACT_ID, 1);
92
+ const alsoImpl = enhancedPkg.alsoImplements.get(enhancedKey) ?? [];
93
+ registry.register(pkgB, enhancedPkg.contracts[0], alsoImpl);
94
+ await persistentRegistry.persist(enhancedPkg.contracts[0], pkgB, true);
95
+ // Also register pkgB as a provider of the original tasks-basic contract
96
+ registry.register(pkgB, tasksPkg.contracts[0]);
97
+ await persistentRegistry.persist(tasksPkg.contracts[0], pkgB, false);
98
+ // Verify pkgA is active for tasks-basic
99
+ expect(registry.getProviderPackageId(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1)).toBe(pkgA);
100
+ // Swap active provider to pkgB
101
+ const switched = await persistentRegistry.setActiveProvider(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1, pkgB);
102
+ expect(switched).toBe(true);
103
+ expect(registry.getProviderPackageId(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1)).toBe(pkgB);
104
+ // Verify persistence reflects the swap
105
+ const providers = await (0, peers_sdk_1.ContractProviders)(userContext.userDataContext).list({
106
+ contractId: test_packages_1.TASKS_BASIC_CONTRACT_ID,
107
+ version: 1,
108
+ });
109
+ const activeProvider = providers.find((p) => p.isActive);
110
+ expect(activeProvider?.providerPackageId).toBe(pkgB);
111
+ });
112
+ });
113
+ // -------------------------------------------------------------------------
114
+ // 3. Consumer dependency checking
115
+ // -------------------------------------------------------------------------
116
+ describe("consumer dependency checking", () => {
117
+ it("satisfies consumer deps when all providers are registered", async () => {
118
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
119
+ const notesPkg = (0, test_packages_1.defineNotesPackage)();
120
+ const consumerPkg = (0, test_packages_1.defineConsumerPackage)();
121
+ const tasksPkgId = (0, peers_sdk_1.newid)();
122
+ const notesPkgId = (0, peers_sdk_1.newid)();
123
+ const consumerPkgId = (0, peers_sdk_1.newid)();
124
+ registry.register(tasksPkgId, tasksPkg.contracts[0]);
125
+ registry.register(notesPkgId, notesPkg.contracts[0]);
126
+ registry.register(consumerPkgId, consumerPkg.contracts[0]);
127
+ const deps = registry.checkConsumerDependencies(consumerPkg.consumes);
128
+ expect(deps.satisfied).toHaveLength(2);
129
+ expect(deps.missing).toHaveLength(0);
130
+ });
131
+ it("reports missing deps when a provider is unregistered", async () => {
132
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
133
+ const notesPkg = (0, test_packages_1.defineNotesPackage)();
134
+ const consumerPkg = (0, test_packages_1.defineConsumerPackage)();
135
+ const tasksPkgId = (0, peers_sdk_1.newid)();
136
+ const notesPkgId = (0, peers_sdk_1.newid)();
137
+ const consumerPkgId = (0, peers_sdk_1.newid)();
138
+ registry.register(tasksPkgId, tasksPkg.contracts[0]);
139
+ registry.register(notesPkgId, notesPkg.contracts[0]);
140
+ registry.register(consumerPkgId, consumerPkg.contracts[0]);
141
+ // Remove tasks provider
142
+ registry.unregister(tasksPkgId);
143
+ const deps = registry.checkConsumerDependencies(consumerPkg.consumes);
144
+ expect(deps.satisfied).toHaveLength(1);
145
+ expect(deps.satisfied[0].contractId).toBe(test_packages_1.NOTES_CONTRACT_ID);
146
+ expect(deps.missing).toHaveLength(1);
147
+ expect(deps.missing[0].contractId).toBe(test_packages_1.TASKS_BASIC_CONTRACT_ID);
148
+ });
149
+ it("reports all deps missing when no providers are registered", async () => {
150
+ const consumerPkg = (0, test_packages_1.defineConsumerPackage)();
151
+ const deps = registry.checkConsumerDependencies(consumerPkg.consumes);
152
+ expect(deps.missing).toHaveLength(2);
153
+ });
154
+ });
155
+ // -------------------------------------------------------------------------
156
+ // 4. Immutability enforcement
157
+ // -------------------------------------------------------------------------
158
+ describe("immutability enforcement", () => {
159
+ it("rejects a modified stable contract on re-registration", () => {
160
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
161
+ const pkgId = (0, peers_sdk_1.newid)();
162
+ // Register stable contract
163
+ const result1 = registry.register(pkgId, tasksPkg.contracts[0]);
164
+ expect(result1.valid).toBe(true);
165
+ // Attempt to register with a different shape (add an extra required field)
166
+ const modified = {
167
+ ...tasksPkg.contracts[0],
168
+ tables: [
169
+ {
170
+ ...tasksPkg.contracts[0].tables[0],
171
+ fields: [
172
+ ...tasksPkg.contracts[0].tables[0].fields,
173
+ { name: "extraField", type: peers_sdk_1.FieldType.string, description: "Extra" },
174
+ ],
175
+ },
176
+ ],
177
+ };
178
+ const result2 = registry.register((0, peers_sdk_1.newid)(), modified);
179
+ expect(result2.valid).toBe(false);
180
+ expect(result2.errors[0].kind).toBe("contract");
181
+ expect(result2.errors[0].message).toContain("frozen");
182
+ });
183
+ it("allows identical stable contract to be re-registered by another provider", () => {
184
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
185
+ const pkgA = (0, peers_sdk_1.newid)();
186
+ const pkgB = (0, peers_sdk_1.newid)();
187
+ registry.register(pkgA, tasksPkg.contracts[0]);
188
+ const result = registry.register(pkgB, tasksPkg.contracts[0]);
189
+ expect(result.valid).toBe(true);
190
+ });
191
+ });
192
+ // -------------------------------------------------------------------------
193
+ // 5. Dev-to-stable lifecycle
194
+ // -------------------------------------------------------------------------
195
+ describe("dev-to-stable lifecycle", () => {
196
+ it("allows shape changes while in dev, then freezes on stable", () => {
197
+ const pkgId = (0, peers_sdk_1.newid)();
198
+ // Register as dev
199
+ const lifecycleContractId = "00mp0ajl9pxnifs5az3mx7elj";
200
+ const devDef = {
201
+ contractId: lifecycleContractId,
202
+ version: 1,
203
+ devTag: "dev",
204
+ name: "lifecycle-test:v1",
205
+ description: "lifecycle-test:v1",
206
+ tables: [
207
+ {
208
+ name: "Items",
209
+ description: "Test items",
210
+ primaryKeyName: "itemId",
211
+ fields: [{ name: "itemId", type: peers_sdk_1.FieldType.id, description: "PK" }],
212
+ },
213
+ ],
214
+ tools: [],
215
+ observables: [],
216
+ };
217
+ const r1 = registry.register(pkgId, devDef);
218
+ expect(r1.valid).toBe(true);
219
+ // Modify shape while still dev
220
+ const devDef2 = {
221
+ ...devDef,
222
+ tables: [
223
+ {
224
+ name: "Items",
225
+ description: "Test items v2",
226
+ primaryKeyName: "itemId",
227
+ fields: [
228
+ { name: "itemId", type: peers_sdk_1.FieldType.id, description: "PK" },
229
+ { name: "name", type: peers_sdk_1.FieldType.string, description: "Name" },
230
+ ],
231
+ },
232
+ ],
233
+ };
234
+ const r2 = registry.register((0, peers_sdk_1.newid)(), devDef2);
235
+ expect(r2.valid).toBe(true);
236
+ // Freeze by registering without devTag
237
+ const stableDef = {
238
+ ...devDef2,
239
+ devTag: undefined,
240
+ };
241
+ const r3 = registry.register((0, peers_sdk_1.newid)(), stableDef);
242
+ expect(r3.valid).toBe(true);
243
+ // Attempt to go back to dev — should be rejected
244
+ const backToDev = {
245
+ ...stableDef,
246
+ devTag: "dev",
247
+ };
248
+ const r4 = registry.register((0, peers_sdk_1.newid)(), backToDev);
249
+ expect(r4.valid).toBe(false);
250
+ expect(r4.errors[0].message).toContain("frozen");
251
+ });
252
+ });
253
+ // -------------------------------------------------------------------------
254
+ // 6. Full lifecycle persistence
255
+ // -------------------------------------------------------------------------
256
+ describe("full lifecycle with persistence", () => {
257
+ it("persists all packages, clears registry, hydrates, and verifies state", async () => {
258
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
259
+ const notesPkg = (0, test_packages_1.defineNotesPackage)();
260
+ const consumerPkg = (0, test_packages_1.defineConsumerPackage)();
261
+ const tasksPkgId = (0, peers_sdk_1.newid)();
262
+ const notesPkgId = (0, peers_sdk_1.newid)();
263
+ const consumerPkgId = (0, peers_sdk_1.newid)();
264
+ // Register all
265
+ registry.register(tasksPkgId, tasksPkg.contracts[0]);
266
+ registry.register(notesPkgId, notesPkg.contracts[0]);
267
+ registry.register(consumerPkgId, consumerPkg.contracts[0]);
268
+ // Persist all
269
+ await persistentRegistry.persist(tasksPkg.contracts[0], tasksPkgId, true);
270
+ await persistentRegistry.persist(notesPkg.contracts[0], notesPkgId, true);
271
+ await persistentRegistry.persist(consumerPkg.contracts[0], consumerPkgId, true);
272
+ // Verify consumer deps are satisfied in original registry
273
+ let deps = registry.checkConsumerDependencies(consumerPkg.consumes);
274
+ expect(deps.missing).toHaveLength(0);
275
+ // Create a completely fresh registry and hydrate from DB
276
+ const freshRegistry = new peers_sdk_1.ContractRegistry();
277
+ const freshPersistent = new peers_sdk_1.PersistentContractRegistry(freshRegistry, userContext.userDataContext);
278
+ await freshPersistent.hydrate();
279
+ // All contracts should resolve
280
+ expect(freshRegistry.resolve(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1)).toBeDefined();
281
+ expect(freshRegistry.resolve(test_packages_1.NOTES_CONTRACT_ID, 1)).toBeDefined();
282
+ expect(freshRegistry.resolve(test_packages_1.DASHBOARDS_CONTRACT_ID, 1)).toBeDefined();
283
+ // Provider IDs should match
284
+ expect(freshRegistry.getProviderPackageId(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1)).toBe(tasksPkgId);
285
+ expect(freshRegistry.getProviderPackageId(test_packages_1.NOTES_CONTRACT_ID, 1)).toBe(notesPkgId);
286
+ expect(freshRegistry.getProviderPackageId(test_packages_1.DASHBOARDS_CONTRACT_ID, 1)).toBe(consumerPkgId);
287
+ // Consumer deps still satisfied after hydration
288
+ deps = freshRegistry.checkConsumerDependencies(consumerPkg.consumes);
289
+ expect(deps.missing).toHaveLength(0);
290
+ });
291
+ it("persists provider swap and hydrates correctly", async () => {
292
+ const tasksPkg = (0, test_packages_1.defineTasksBasicPackage)();
293
+ const pkgA = (0, peers_sdk_1.newid)();
294
+ const pkgB = (0, peers_sdk_1.newid)();
295
+ // Two providers for the same contract
296
+ registry.register(pkgA, tasksPkg.contracts[0]);
297
+ registry.register(pkgB, tasksPkg.contracts[0]);
298
+ await persistentRegistry.persist(tasksPkg.contracts[0], pkgA, true);
299
+ await persistentRegistry.persist(tasksPkg.contracts[0], pkgB, false);
300
+ // Swap
301
+ await persistentRegistry.setActiveProvider(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1, pkgB);
302
+ // Hydrate fresh
303
+ const freshRegistry = new peers_sdk_1.ContractRegistry();
304
+ const freshPersistent = new peers_sdk_1.PersistentContractRegistry(freshRegistry, userContext.userDataContext);
305
+ await freshPersistent.hydrate();
306
+ expect(freshRegistry.getProviderPackageId(test_packages_1.TASKS_BASIC_CONTRACT_ID, 1)).toBe(pkgB);
307
+ });
308
+ });
309
+ });
310
+ //# sourceMappingURL=contracts-integration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts-integration.test.js","sourceRoot":"","sources":["../../../src/__tests__/contracts/contracts-integration.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { type IPackageDefinitionResult } from "@peers-app/peers-sdk";
2
+ export declare const TASKS_BASIC_CONTRACT_ID = "00mp0ajdfr23cmt2bb73yqmvk";
3
+ export declare const TASKS_ENHANCED_CONTRACT_ID = "00mp0ajdftt5f2ka8t5hlefi3";
4
+ export declare const NOTES_CONTRACT_ID = "00mp0ajdft5r1czhuu2sc1vhv";
5
+ export declare const DASHBOARDS_CONTRACT_ID = "00mp0ajdftdisqgeq4x7gkkdi";
6
+ export declare function defineTasksBasicPackage(): IPackageDefinitionResult;
7
+ export declare function defineTasksEnhancedPackage(): IPackageDefinitionResult;
8
+ export declare function defineNotesPackage(): IPackageDefinitionResult;
9
+ export declare function defineConsumerPackage(): IPackageDefinitionResult;
@@ -0,0 +1,241 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DASHBOARDS_CONTRACT_ID = exports.NOTES_CONTRACT_ID = exports.TASKS_ENHANCED_CONTRACT_ID = exports.TASKS_BASIC_CONTRACT_ID = void 0;
4
+ exports.defineTasksBasicPackage = defineTasksBasicPackage;
5
+ exports.defineTasksEnhancedPackage = defineTasksEnhancedPackage;
6
+ exports.defineNotesPackage = defineNotesPackage;
7
+ exports.defineConsumerPackage = defineConsumerPackage;
8
+ const peers_sdk_1 = require("@peers-app/peers-sdk");
9
+ const zod_1 = require("zod");
10
+ (0, peers_sdk_1.setSchemaToFieldsFn)(peers_sdk_1.schemaToFields);
11
+ // ---------------------------------------------------------------------------
12
+ // Contract IDs
13
+ // ---------------------------------------------------------------------------
14
+ exports.TASKS_BASIC_CONTRACT_ID = "00mp0ajdfr23cmt2bb73yqmvk";
15
+ exports.TASKS_ENHANCED_CONTRACT_ID = "00mp0ajdftt5f2ka8t5hlefi3";
16
+ exports.NOTES_CONTRACT_ID = "00mp0ajdft5r1czhuu2sc1vhv";
17
+ exports.DASHBOARDS_CONTRACT_ID = "00mp0ajdftdisqgeq4x7gkkdi";
18
+ // ---------------------------------------------------------------------------
19
+ // tasks-basic: 1 table, 1 tool, 1 observable
20
+ // ---------------------------------------------------------------------------
21
+ function defineTasksBasicPackage() {
22
+ return (0, peers_sdk_1.definePackage)((pkg) => {
23
+ pkg.packageId = (0, peers_sdk_1.newid)();
24
+ const tasks = pkg.contract(exports.TASKS_BASIC_CONTRACT_ID, 1, "Tasks Basic");
25
+ tasks.tables = [
26
+ {
27
+ metaData: {
28
+ name: "Tasks",
29
+ description: "Basic task tracking table",
30
+ primaryKeyName: "taskId",
31
+ fields: [],
32
+ },
33
+ schema: zod_1.z.object({
34
+ taskId: zod_1.z.string().describe("Primary key"),
35
+ title: zod_1.z.string().describe("Task title"),
36
+ status: zod_1.z.string().describe("Task status"),
37
+ sortOrder: zod_1.z.number().describe("Sort priority"),
38
+ }),
39
+ },
40
+ ];
41
+ tasks.tools = [
42
+ {
43
+ tool: {
44
+ name: "create-task",
45
+ usageDescription: "Creates a new task",
46
+ inputSchema: {
47
+ fields: [
48
+ { name: "title", type: peers_sdk_1.FieldType.string, description: "Task title" },
49
+ {
50
+ name: "status",
51
+ type: peers_sdk_1.FieldType.string,
52
+ description: "Initial status",
53
+ optional: true,
54
+ },
55
+ ],
56
+ },
57
+ outputSchema: {
58
+ fields: [{ name: "taskId", type: peers_sdk_1.FieldType.id, description: "Created task ID" }],
59
+ },
60
+ },
61
+ },
62
+ ];
63
+ tasks.observables = [
64
+ {
65
+ name: "taskCount",
66
+ description: "Total number of tasks",
67
+ valueType: peers_sdk_1.FieldType.number,
68
+ writable: false,
69
+ },
70
+ ];
71
+ });
72
+ }
73
+ // ---------------------------------------------------------------------------
74
+ // tasks-enhanced: alsoImplements tasks-basic v1, adds optional fields + tool
75
+ // ---------------------------------------------------------------------------
76
+ function defineTasksEnhancedPackage() {
77
+ return (0, peers_sdk_1.definePackage)((pkg) => {
78
+ pkg.packageId = (0, peers_sdk_1.newid)();
79
+ const enhanced = pkg.contract(exports.TASKS_ENHANCED_CONTRACT_ID, 1, "Tasks Enhanced");
80
+ enhanced.alsoImplements(exports.TASKS_BASIC_CONTRACT_ID, 1);
81
+ enhanced.tables = [
82
+ {
83
+ metaData: {
84
+ name: "Tasks",
85
+ description: "Enhanced task table with priority and tags",
86
+ primaryKeyName: "taskId",
87
+ fields: [],
88
+ },
89
+ schema: zod_1.z.object({
90
+ taskId: zod_1.z.string().describe("Primary key"),
91
+ title: zod_1.z.string().describe("Task title"),
92
+ status: zod_1.z.string().describe("Task status"),
93
+ sortOrder: zod_1.z.number().describe("Sort priority"),
94
+ priority: zod_1.z.number().optional().describe("Priority level (1-5)"),
95
+ tags: zod_1.z.string().array().optional().describe("Freeform tags"),
96
+ }),
97
+ },
98
+ ];
99
+ enhanced.tools = [
100
+ {
101
+ tool: {
102
+ name: "create-task",
103
+ usageDescription: "Creates an enhanced task with priority",
104
+ inputSchema: {
105
+ fields: [
106
+ { name: "title", type: peers_sdk_1.FieldType.string, description: "Task title" },
107
+ {
108
+ name: "status",
109
+ type: peers_sdk_1.FieldType.string,
110
+ description: "Initial status",
111
+ optional: true,
112
+ },
113
+ { name: "priority", type: peers_sdk_1.FieldType.number, description: "Priority", optional: true },
114
+ ],
115
+ },
116
+ outputSchema: {
117
+ fields: [{ name: "taskId", type: peers_sdk_1.FieldType.id, description: "Created task ID" }],
118
+ },
119
+ },
120
+ },
121
+ {
122
+ tool: {
123
+ name: "bulk-update-tasks",
124
+ usageDescription: "Bulk-update task statuses",
125
+ inputSchema: {
126
+ fields: [
127
+ {
128
+ name: "taskIds",
129
+ type: peers_sdk_1.FieldType.string,
130
+ description: "Comma-separated IDs",
131
+ isArray: true,
132
+ },
133
+ { name: "status", type: peers_sdk_1.FieldType.string, description: "New status" },
134
+ ],
135
+ },
136
+ outputSchema: {
137
+ fields: [
138
+ { name: "updatedCount", type: peers_sdk_1.FieldType.number, description: "Count updated" },
139
+ ],
140
+ },
141
+ },
142
+ },
143
+ ];
144
+ enhanced.observables = [
145
+ {
146
+ name: "taskCount",
147
+ description: "Total number of tasks",
148
+ valueType: peers_sdk_1.FieldType.number,
149
+ writable: false,
150
+ },
151
+ ];
152
+ });
153
+ }
154
+ // ---------------------------------------------------------------------------
155
+ // notes-simple: independent contract with 1 table
156
+ // ---------------------------------------------------------------------------
157
+ function defineNotesPackage() {
158
+ return (0, peers_sdk_1.definePackage)((pkg) => {
159
+ pkg.packageId = (0, peers_sdk_1.newid)();
160
+ const notes = pkg.contract(exports.NOTES_CONTRACT_ID, 1, "Notes");
161
+ notes.tables = [
162
+ {
163
+ metaData: {
164
+ name: "Notes",
165
+ description: "Freeform note storage",
166
+ primaryKeyName: "noteId",
167
+ fields: [],
168
+ },
169
+ schema: zod_1.z.object({
170
+ noteId: zod_1.z.string().describe("Primary key"),
171
+ title: zod_1.z.string().describe("Note title"),
172
+ body: zod_1.z.string().describe("Note body content"),
173
+ createdAt: zod_1.z.string().describe("ISO creation timestamp"),
174
+ }),
175
+ },
176
+ ];
177
+ notes.tools = [
178
+ {
179
+ tool: {
180
+ name: "create-note",
181
+ usageDescription: "Creates a new note",
182
+ inputSchema: {
183
+ fields: [
184
+ { name: "title", type: peers_sdk_1.FieldType.string, description: "Note title" },
185
+ { name: "body", type: peers_sdk_1.FieldType.string, description: "Note body" },
186
+ ],
187
+ },
188
+ outputSchema: {
189
+ fields: [{ name: "noteId", type: peers_sdk_1.FieldType.id, description: "Created note ID" }],
190
+ },
191
+ },
192
+ },
193
+ ];
194
+ });
195
+ }
196
+ // ---------------------------------------------------------------------------
197
+ // consumer-pkg: consumes tasks-basic v1 + notes v1, provides dashboards
198
+ // ---------------------------------------------------------------------------
199
+ function defineConsumerPackage() {
200
+ return (0, peers_sdk_1.definePackage)((pkg) => {
201
+ pkg.packageId = (0, peers_sdk_1.newid)();
202
+ pkg.consumes(exports.TASKS_BASIC_CONTRACT_ID, 1);
203
+ pkg.consumes(exports.NOTES_CONTRACT_ID, 1);
204
+ const dashboards = pkg.contract(exports.DASHBOARDS_CONTRACT_ID, 1, "Dashboards");
205
+ dashboards.tables = [
206
+ {
207
+ metaData: {
208
+ name: "Dashboards",
209
+ description: "User-defined dashboards aggregating tasks and notes",
210
+ primaryKeyName: "dashboardId",
211
+ fields: [],
212
+ },
213
+ schema: zod_1.z.object({
214
+ dashboardId: zod_1.z.string().describe("Primary key"),
215
+ name: zod_1.z.string().describe("Dashboard display name"),
216
+ layout: zod_1.z.string().describe("JSON layout configuration"),
217
+ }),
218
+ },
219
+ ];
220
+ dashboards.tools = [
221
+ {
222
+ tool: {
223
+ name: "create-dashboard",
224
+ usageDescription: "Creates a dashboard",
225
+ inputSchema: {
226
+ fields: [
227
+ { name: "name", type: peers_sdk_1.FieldType.string, description: "Dashboard name" },
228
+ { name: "layout", type: peers_sdk_1.FieldType.string, description: "Layout JSON" },
229
+ ],
230
+ },
231
+ outputSchema: {
232
+ fields: [
233
+ { name: "dashboardId", type: peers_sdk_1.FieldType.id, description: "Created dashboard ID" },
234
+ ],
235
+ },
236
+ },
237
+ },
238
+ ];
239
+ });
240
+ }
241
+ //# sourceMappingURL=test-packages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-packages.js","sourceRoot":"","sources":["../../../src/__tests__/contracts/test-packages.ts"],"names":[],"mappings":"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"}
@@ -644,4 +644,83 @@ describe("Persistent Variables - Update Loop Bug", () => {
644
644
  });
645
645
  });
646
646
  });
647
+ describe("Deterministic pvar IDs", () => {
648
+ async function createTestUserContext() {
649
+ const userId = (0, peers_sdk_1.newid)();
650
+ const deviceId = (0, peers_sdk_1.newid)();
651
+ const db = new local_data_source_1.DBLocal(":memory:");
652
+ const dataSourceFactory = (metaData, schema) => {
653
+ return new peers_sdk_1.SQLDataSource(db, metaData, schema);
654
+ };
655
+ const userContext = new peers_sdk_1.UserContext(userId, dataSourceFactory, true);
656
+ await userContext.loadingPromise;
657
+ userContext.deviceId(deviceId);
658
+ return userContext;
659
+ }
660
+ describe("deterministicPvarId utility", () => {
661
+ it("should produce a 25-char base-36 ID with the 000pvar0 prefix", () => {
662
+ const id = (0, peers_sdk_1.deterministicPvarId)("testVar");
663
+ expect(id).toHaveLength(25);
664
+ expect(id).toMatch(/^[0-9a-z]{25}$/);
665
+ expect(id.startsWith("000pvar0")).toBe(true);
666
+ });
667
+ it("should return the same ID for the same name", () => {
668
+ expect((0, peers_sdk_1.deterministicPvarId)("foo")).toBe((0, peers_sdk_1.deterministicPvarId)("foo"));
669
+ });
670
+ it("should return different IDs for different names", () => {
671
+ expect((0, peers_sdk_1.deterministicPvarId)("foo")).not.toBe((0, peers_sdk_1.deterministicPvarId)("bar"));
672
+ });
673
+ it("isDeterministicPvarId should detect deterministic IDs", () => {
674
+ expect((0, peers_sdk_1.isDeterministicPvarId)((0, peers_sdk_1.deterministicPvarId)("x"))).toBe(true);
675
+ expect((0, peers_sdk_1.isDeterministicPvarId)((0, peers_sdk_1.newid)())).toBe(false);
676
+ });
677
+ });
678
+ describe("new pvars get deterministic IDs", () => {
679
+ it("should assign a deterministic ID when saving a new pvar", async () => {
680
+ const userContext = await createTestUserContext();
681
+ const pvar = (0, peers_sdk_1.deviceVar)("deterministicNewVar", {
682
+ defaultValue: "hello",
683
+ userContext,
684
+ });
685
+ await pvar.loadingPromise;
686
+ pvar("world");
687
+ await pvar.loadingPromise;
688
+ await (0, peers_sdk_1.sleep)(200);
689
+ const table = (0, peers_sdk_1.PersistentVars)(userContext.userDataContext);
690
+ const rec = await table.findOne({ name: "deterministicNewVar" });
691
+ expect(rec).toBeDefined();
692
+ expect((0, peers_sdk_1.isDeterministicPvarId)(rec?.persistentVarId ?? "")).toBe(true);
693
+ expect(rec?.persistentVarId).toBe((0, peers_sdk_1.deterministicPvarId)("deterministicNewVar"));
694
+ });
695
+ });
696
+ describe("lazy migration", () => {
697
+ it("should migrate an existing pvar with a random ID to a deterministic ID", async () => {
698
+ const userContext = await createTestUserContext();
699
+ const table = (0, peers_sdk_1.PersistentVars)(userContext.userDataContext);
700
+ const oldId = (0, peers_sdk_1.newid)();
701
+ await table.save({
702
+ persistentVarId: oldId,
703
+ name: "migrateTestVar",
704
+ scope: "device",
705
+ value: { value: "migrated-value" },
706
+ });
707
+ const beforeMigration = await table.get(oldId);
708
+ expect(beforeMigration).toBeDefined();
709
+ expect((0, peers_sdk_1.isDeterministicPvarId)(beforeMigration?.persistentVarId ?? "")).toBe(false);
710
+ const pvar = (0, peers_sdk_1.deviceVar)("migrateTestVar", {
711
+ defaultValue: "default",
712
+ userContext,
713
+ });
714
+ await pvar.loadingPromise;
715
+ expect(pvar()).toBe("migrated-value");
716
+ const expectedId = (0, peers_sdk_1.deterministicPvarId)("migrateTestVar");
717
+ const afterMigration = await table.get(expectedId);
718
+ expect(afterMigration).toBeDefined();
719
+ expect(afterMigration?.persistentVarId).toBe(expectedId);
720
+ expect(afterMigration?.value.value).toBe("migrated-value");
721
+ const oldRecord = await table.get(oldId);
722
+ expect(oldRecord).toBeUndefined();
723
+ });
724
+ });
725
+ });
647
726
  //# sourceMappingURL=persistent-vars.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"persistent-vars.test.js","sourceRoot":"","sources":["../src/persistent-vars.test.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;;AAEH,oDAU8B;AAC9B,2DAA8C;AAE9C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAExB,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;IACtD;;;OAGG;IACH,KAAK,UAAU,qBAAqB;QAClC,MAAM,MAAM,GAAG,IAAA,iBAAK,GAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAA,iBAAK,GAAE,CAAC;QAEzB,MAAM,EAAE,GAAG,IAAI,2BAAO,CAAC,UAAU,CAAC,CAAC;QAEnC,MAAM,iBAAiB,GAAsB,CAC3C,QAAwB,EACxB,MAAuB,EACvB,OAAgB,EACE,EAAE;YACpB,MAAM,aAAa,GAAG,IAAI,yBAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9D,OAAO,aAAa,CAAC;QACvB,CAAC,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,uBAAW,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACrF,MAAM,WAAW,CAAC,cAAc,CAAC;QACjC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;YACtD,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAS,cAAc,EAAE;gBAC7C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC;YAE1B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE/B,IAAI,CAAC,SAAS,CAAC,CAAC;YAChB,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,aAAa,EAAE;gBAC7C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,aAAa,EAAE;gBAC7C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,2CAA2C;YAC3C,KAAK,CAAC,eAAe,CAAC,CAAC;YACvB,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,kCAAkC;YAClC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YACzF,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,iBAAiB,EAAE;gBACjD,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,iBAAiB,EAAE;gBACjD,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,iDAAiD;YACjD,oDAAoD;YACpD,MAAM,eAAe,GAAG,KAAK,KAAK,KAAK,CAAC;YACxC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAChF,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,IAAI,eAAe,GAAG,CAAC,CAAC;YACxB,IAAI,gBAAgB,GAAG,CAAC,CAAC;YAEzB,+CAA+C;YAC/C,WAAW,CAAC,qCAAqC,CAAC,gBAAgB,EAAE,CAAC,GAAQ,EAAE,EAAE;gBAC/E,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAChC,eAAe,EAAE,CAAC;gBACpB,CAAC;qBAAM,CAAC;oBACN,gBAAgB,EAAE,CAAC;gBACrB,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAS,cAAc,EAAE;gBAC7C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC;YAE1B,IAAI,CAAC,YAAY,CAAC,CAAC;YACnB,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,wEAAwE;YACxE,qEAAqE;YACrE,wDAAwD;YACxD,MAAM,CAAC,eAAe,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mDAAmD,EAAE,GAAG,EAAE;QACjE,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,MAAM,UAAU,GAAG,EAAE,CAAC;YAEtB,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,aAAa,EAAE;gBAC7C,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,aAAa,EAAE;gBAC7C,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;gBACnB,WAAW,EAAE,CAAC;gBACd,IAAI,WAAW,GAAG,UAAU,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CAAC,kBAAkB,WAAW,UAAU,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;gBACnB,WAAW,EAAE,CAAC;gBACd,IAAI,WAAW,GAAG,UAAU,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CAAC,kBAAkB,WAAW,UAAU,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,mBAAmB;YACnB,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,oBAAoB,EAAE;gBACpD,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,oBAAoB,EAAE;gBACpD,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,0EAA0E;YAC1E,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,eAAe,EAAE;gBAC/C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,eAAe,EAAE;gBAC/C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,gDAAgD;YAChD,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAClF,MAAM,YAAY,GAAG,MAAM,qBAAqB,EAAE,CAAC;YACnD,MAAM,YAAY,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAEnD,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,kBAAkB,EAAE;gBAClD,YAAY,EAAE,SAAS;gBACvB,WAAW,EAAE,YAAY;aAC1B,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,kBAAkB,EAAE;gBAClD,YAAY,EAAE,SAAS;gBACvB,WAAW,EAAE,YAAY;aAC1B,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,wFAAwF;YACxF,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAE9B,iCAAiC;YACjC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChB,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChB,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH;;;;OAIG;IACH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAClD,IAAI,WAAW,GAAG,CAAC,CAAC;YAEpB,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,aAAa,EAAE;gBAC7C,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,aAAa,EAAE;gBAC7C,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YACrC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YAErC,2BAA2B;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,KAAK,CAAC,CAAC,CAAC,CAAC;YACX,CAAC;YAED,MAAM,IAAA,iBAAK,EAAC,IAAI,CAAC,CAAC;YAElB,kEAAkE;YAClE,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,IAAI,WAAW,GAAG,CAAC,CAAC;YAEpB,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,iBAAiB,EAAE;gBACjD,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,iBAAiB,EAAE;gBACjD,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YACrC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YAErC,wCAAwC;YACxC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChB,KAAK,CAAC,QAAQ,CAAC,CAAC;YAEhB,MAAM,IAAA,iBAAK,EAAC,IAAI,CAAC,CAAC;YAElB,kEAAkE;YAClE,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH;;;;WAIG;QACH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;YACvF,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAI,YAAY,GAAG,KAAK,CAAC;YAEzB,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,mBAAmB,EAAE;gBACnD,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,mBAAmB,EAAE;gBACnD,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,yDAAyD;YACzD,MAAM,iBAAiB,GAAG,EAAE,CAAC;YAE7B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;gBACnB,WAAW,EAAE,CAAC;gBACd,IAAI,WAAW,GAAG,iBAAiB,EAAE,CAAC;oBACpC,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC;YACH,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;gBACnB,WAAW,EAAE,CAAC;gBACd,IAAI,WAAW,GAAG,iBAAiB,EAAE,CAAC;oBACpC,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,6CAA6C;YAC7C,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,2BAA2B;YAC3B,MAAM,MAAM,GAAG,WAAW,CAAC;YAE3B,+DAA+D;YAC/D,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YACjB,MAAM,MAAM,GAAG,WAAW,CAAC;YAE3B,yDAAyD;YACzD,8DAA8D;YAC9D,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACzC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEjC,sCAAsC;YACtC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH;;;;;WAKG;QACH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,EAAE,CAAC;YAEvB,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,cAAc,EAAE;gBAC9C,YAAY,EAAE,OAAO;gBACrB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,cAAc,EAAE;gBAC9C,YAAY,EAAE,OAAO;gBACrB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,oBAAoB;YACpB,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpB,IAAI,OAAO,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;oBACjC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpB,IAAI,OAAO,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;oBACjC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,gBAAgB;YAChB,KAAK,CAAC,SAAS,CAAC,CAAC;YAEjB,gBAAgB;YAChB,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YACjB,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;YAExC,2CAA2C;YAC3C,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YACjB,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;YAExC,0CAA0C;YAC1C,MAAM,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEpD,kCAAkC;YAClC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAEhC,gFAAgF;YAChF,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH;;;;;;;;WAQG;QACH,EAAE,CAAC,8EAA8E,EAAE,KAAK,IAAI,EAAE;YAC5F,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,eAAe,EAAE;gBAC/C,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,oEAAoE;YACpE,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B;YAEpC,yCAAyC;YACzC,MAAM,KAAK,CAAC,cAAc,CAAC;YAC3B,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,mDAAmD;YACnD,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,eAAe,EAAE;gBAC/C,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,qEAAqE;YACrE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH;;;;WAIG;QACH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,eAAe,EAAE;gBAC/C,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,4BAA4B;YAC5B,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpB,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;YAEH,2BAA2B;YAC3B,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,KAAK,CAAC,CAAC,CAAC,CAAC;YAET,gCAAgC;YAChC,MAAM,KAAK,CAAC,cAAc,CAAC;YAC3B,MAAM,IAAA,iBAAK,EAAC,IAAI,CAAC,CAAC;YAElB,kDAAkD;YAClD,wEAAwE;YACxE,IAAI,OAAO,GAAG,CAAC,CAAC;YAChB,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;gBAC/B,IAAI,CAAC,GAAG,OAAO,EAAE,CAAC;oBAChB,2CAA2C;oBAC3C,IAAI,CAAC,wBAAwB,OAAO,OAAO,CAAC,iBAAiB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC5F,CAAC;gBACD,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACjC,CAAC;YAED,0BAA0B;YAC1B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH;;;;;;;;;;;;;;;;;;;;;WAqBG;QACH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;YAC1F,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,EAAE,CAAC,CAAC,2CAA2C;YAEnE,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,kBAAkB,EAAE;gBAClD,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,kBAAkB,EAAE;gBAClD,YAAY,EAAE,CAAC;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,+DAA+D;YAC/D,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpB,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,IAAI,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;oBAC1D,MAAM,IAAI,KAAK,CACb,2BAA2B,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,UAAU,CAC7E,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpB,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,IAAI,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;oBAC1D,MAAM,IAAI,KAAK,CACb,2BAA2B,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,UAAU,CAC7E,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,+DAA+D;YAC/D,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,KAAK,CAAC,CAAC,CAAC,CAAC;YAET,kEAAkE;YAClE,MAAM,KAAK,CAAC,cAAc,CAAC;YAC3B,MAAM,KAAK,CAAC,cAAc,CAAC;YAC3B,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,4CAA4C;YAC5C,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAExB,iDAAiD;YACjD,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;gBAC5B,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC;oBACjB,IAAI,CAAC,wBAAwB,QAAQ,OAAO,CAAC,aAAa,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtF,CAAC;gBACD,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACnC,CAAC;YAED,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;gBAC5B,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC;oBACjB,IAAI,CAAC,wBAAwB,QAAQ,OAAO,CAAC,aAAa,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtF,CAAC;gBACD,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAS,iBAAiB,EAAE;gBAChD,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC;YAE1B,4CAA4C;YAC5C,IAAI,CAAC,SAAS,CAAC,CAAC;YAChB,MAAM,IAAI,CAAC,cAAc,CAAC;YAC1B,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,0BAA0B;YAC1B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE/B,gCAAgC;YAChC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChB,MAAM,IAAI,CAAC,cAAc,CAAC;YAC1B,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,qDAAqD;YACrD,kEAAkE;YAClE,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,iBAAiB,EAAE;gBACjD,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,oEAAoE;YACpE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAS,eAAe,EAAE;gBAC9C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC;YAE1B,0BAA0B;YAC1B,IAAI,CAAC,cAAc,CAAC,CAAC;YACrB,MAAM,IAAI,CAAC,cAAc,CAAC;YAC1B,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAEpC,cAAc;YACd,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,mCAAmC;YACnC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE/B,uEAAuE;YACvE,iEAAiE;YACjE,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,eAAe,EAAE;gBAC/C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAE3B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,iDAAiD;YACjD,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAS,eAAe,EAAE;gBAC9C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC;YAE1B,+DAA+D;YAC/D,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YAEpB,sCAAsC;YACtC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;YAC5C,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAS,gBAAgB,EAAE;gBAC/C,YAAY,EAAE,SAAS;gBACvB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC;YAE1B,IAAI,CAAC,OAAO,CAAC,CAAC;YACd,MAAM,IAAI,CAAC,cAAc,CAAC;YAE1B,iDAAiD;YACjD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,CAAC,YAAY,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAE7C,MAAM,YAAY,CAAC;YAEnB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;YAC7F,MAAM,WAAW,GAAG,MAAM,qBAAqB,EAAE,CAAC;YAElD,gEAAgE;YAChE,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAS,sBAAsB,EAAE;gBACrD,YAAY,EAAE,EAAE;gBAChB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC;YAE1B,0EAA0E;YAC1E,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;gBACvB,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,2BAA2B;YAC3B,IAAI,CAAC,eAAe,CAAC,CAAC;YACtB,MAAM,IAAI,CAAC,cAAc,CAAC;YAC1B,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,8BAA8B;YAC9B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAErC,2CAA2C;YAC3C,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,sBAAsB,EAAE;gBACtD,YAAY,EAAE,EAAE;gBAChB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAC3B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAEtC,uEAAuE;YACvE,IAAI,CAAC,EAAE,CAAC,CAAC;YACT,MAAM,IAAI,CAAC,cAAc,CAAC;YAC1B,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC,CAAC,mCAAmC;YAErD,kCAAkC;YAClC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAExB,iEAAiE;YACjE,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,sBAAsB,EAAE;gBACtD,YAAY,EAAE,EAAE;gBAChB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAC3B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,mCAAmC;YAE7D,2DAA2D;YAC3D,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC1B,MAAM,IAAI,CAAC,cAAc,CAAC;YAC1B,MAAM,IAAA,iBAAK,EAAC,GAAG,CAAC,CAAC;YAEjB,sCAAsC;YACtC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAEzC,+DAA+D;YAC/D,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAS,sBAAsB,EAAE;gBACtD,YAAY,EAAE,EAAE;gBAChB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,KAAK,CAAC,cAAc,CAAC;YAC3B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"persistent-vars.test.js","sourceRoot":"","sources":["../src/persistent-vars.test.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ export declare const systemTools: () => {
29
29
  subType?: string | undefined;
30
30
  }[];
31
31
  };
32
+ packageId?: string | undefined;
32
33
  detailedDescription?: string | undefined;
33
34
  configSchema?: {
34
35
  type: IOSchemaType;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peers-app/peers-device",
3
- "version": "0.16.4",
3
+ "version": "0.16.6",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "repository": {
@@ -40,12 +40,12 @@
40
40
  "zod-to-json-schema": "^3.24.5"
41
41
  },
42
42
  "peerDependencies": {
43
- "@peers-app/peers-sdk": "^0.16.4"
43
+ "@peers-app/peers-sdk": "^0.16.6"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@biomejs/biome": "2.3.11",
47
47
  "@electron/rebuild": "^4.0.1",
48
- "@peers-app/peers-sdk": "0.16.4",
48
+ "@peers-app/peers-sdk": "0.16.6",
49
49
  "@types/diff-match-patch": "^1.0.36",
50
50
  "@types/jest": "^29.5.13",
51
51
  "@types/lodash": "^4.17.20",