@toonstore/torm 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +357 -75
- package/dist/cli.d.ts +7 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +210 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.d.ts +69 -39
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +233 -124
- package/dist/index.js.map +1 -1
- package/dist/studio-server.d.ts +23 -0
- package/dist/studio-server.d.ts.map +1 -0
- package/dist/studio-server.js +302 -0
- package/dist/studio-server.js.map +1 -0
- package/package.json +21 -9
- package/studio/index.html +631 -0
package/dist/index.js
CHANGED
|
@@ -2,26 +2,37 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* @toonstore/torm - ToonStore ORM Client for Node.js
|
|
4
4
|
*
|
|
5
|
-
* A Mongoose-style ORM client for ToonStore
|
|
5
|
+
* A Mongoose-style ORM client for ToonStore connecting directly to Redis
|
|
6
6
|
*/
|
|
7
7
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
8
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
9
|
};
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
11
|
exports.QueryBuilder = exports.Model = exports.TormClient = void 0;
|
|
12
|
-
const
|
|
12
|
+
const ioredis_1 = __importDefault(require("ioredis"));
|
|
13
13
|
// ============================================================================
|
|
14
14
|
// TormClient
|
|
15
15
|
// ============================================================================
|
|
16
16
|
class TormClient {
|
|
17
17
|
constructor(options = {}) {
|
|
18
|
-
this.
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
this.connected = false;
|
|
19
|
+
const redisOptions = {
|
|
20
|
+
host: options.host || 'localhost',
|
|
21
|
+
port: options.port || 6379,
|
|
22
|
+
...options,
|
|
23
|
+
};
|
|
24
|
+
if (options.url) {
|
|
25
|
+
this.redis = new ioredis_1.default(options.url, redisOptions);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
this.redis = new ioredis_1.default(redisOptions);
|
|
29
|
+
}
|
|
30
|
+
this.redis.on('connect', () => {
|
|
31
|
+
this.connected = true;
|
|
32
|
+
});
|
|
33
|
+
this.redis.on('error', (err) => {
|
|
34
|
+
console.error('Redis connection error:', err);
|
|
35
|
+
this.connected = false;
|
|
25
36
|
});
|
|
26
37
|
}
|
|
27
38
|
/**
|
|
@@ -31,24 +42,35 @@ class TormClient {
|
|
|
31
42
|
return new Model(this, name, schema, options);
|
|
32
43
|
}
|
|
33
44
|
/**
|
|
34
|
-
* Get
|
|
45
|
+
* Get Redis client instance
|
|
35
46
|
*/
|
|
36
|
-
|
|
37
|
-
return this.
|
|
47
|
+
getRedis() {
|
|
48
|
+
return this.redis;
|
|
38
49
|
}
|
|
39
50
|
/**
|
|
40
|
-
* Check
|
|
51
|
+
* Check connection health
|
|
41
52
|
*/
|
|
42
53
|
async health() {
|
|
43
|
-
|
|
44
|
-
|
|
54
|
+
try {
|
|
55
|
+
await this.redis.ping();
|
|
56
|
+
return { status: 'ok', connected: true };
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
return { status: 'error', connected: false };
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Close Redis connection
|
|
64
|
+
*/
|
|
65
|
+
async disconnect() {
|
|
66
|
+
await this.redis.quit();
|
|
67
|
+
this.connected = false;
|
|
45
68
|
}
|
|
46
69
|
/**
|
|
47
|
-
*
|
|
70
|
+
* Check if connected
|
|
48
71
|
*/
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
return response.data;
|
|
72
|
+
isConnected() {
|
|
73
|
+
return this.connected;
|
|
52
74
|
}
|
|
53
75
|
}
|
|
54
76
|
exports.TormClient = TormClient;
|
|
@@ -62,72 +84,156 @@ class Model {
|
|
|
62
84
|
this.schema = schema;
|
|
63
85
|
this.options = { validate: true, ...options };
|
|
64
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Get the Redis key pattern for this collection
|
|
89
|
+
*/
|
|
90
|
+
getKeyPattern(id) {
|
|
91
|
+
return id ? `toonstore:${this.collectionName}:${id}` : `toonstore:${this.collectionName}:*`;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Generate a unique ID
|
|
95
|
+
*/
|
|
96
|
+
generateId() {
|
|
97
|
+
return `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
|
|
98
|
+
}
|
|
65
99
|
/**
|
|
66
100
|
* Create a new document
|
|
67
101
|
*/
|
|
68
102
|
async create(data) {
|
|
69
103
|
if (this.options.validate && this.schema) {
|
|
70
|
-
this.validate(data);
|
|
104
|
+
await this.validate(data);
|
|
71
105
|
}
|
|
72
|
-
const
|
|
73
|
-
|
|
106
|
+
const id = this.generateId();
|
|
107
|
+
const document = {
|
|
108
|
+
...data,
|
|
109
|
+
_id: id,
|
|
110
|
+
_createdAt: new Date().toISOString(),
|
|
111
|
+
_updatedAt: new Date().toISOString(),
|
|
112
|
+
};
|
|
113
|
+
const key = this.getKeyPattern(id);
|
|
114
|
+
await this.client.getRedis().set(key, JSON.stringify(document));
|
|
115
|
+
return document;
|
|
74
116
|
}
|
|
75
117
|
/**
|
|
76
118
|
* Find all documents
|
|
77
119
|
*/
|
|
78
120
|
async find() {
|
|
79
|
-
const
|
|
80
|
-
|
|
121
|
+
const redis = this.client.getRedis();
|
|
122
|
+
const pattern = this.getKeyPattern();
|
|
123
|
+
const keys = await redis.keys(pattern);
|
|
124
|
+
if (keys.length === 0) {
|
|
125
|
+
return [];
|
|
126
|
+
}
|
|
127
|
+
const values = await redis.mget(...keys);
|
|
128
|
+
return values
|
|
129
|
+
.filter((v) => v !== null)
|
|
130
|
+
.map(v => JSON.parse(v));
|
|
81
131
|
}
|
|
82
132
|
/**
|
|
83
133
|
* Find document by ID
|
|
84
134
|
*/
|
|
85
135
|
async findById(id) {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
136
|
+
const key = this.getKeyPattern(id);
|
|
137
|
+
const value = await this.client.getRedis().get(key);
|
|
138
|
+
if (!value) {
|
|
139
|
+
return null;
|
|
89
140
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
141
|
+
return JSON.parse(value);
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Find one document matching criteria
|
|
145
|
+
*/
|
|
146
|
+
async findOne(filter) {
|
|
147
|
+
const documents = await this.find();
|
|
148
|
+
for (const doc of documents) {
|
|
149
|
+
let matches = true;
|
|
150
|
+
for (const [key, value] of Object.entries(filter)) {
|
|
151
|
+
if (doc[key] !== value) {
|
|
152
|
+
matches = false;
|
|
153
|
+
break;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
if (matches) {
|
|
157
|
+
return doc;
|
|
93
158
|
}
|
|
94
|
-
throw error;
|
|
95
159
|
}
|
|
160
|
+
return null;
|
|
96
161
|
}
|
|
97
162
|
/**
|
|
98
163
|
* Update document by ID
|
|
99
164
|
*/
|
|
100
165
|
async update(id, data) {
|
|
166
|
+
const existing = await this.findById(id);
|
|
167
|
+
if (!existing) {
|
|
168
|
+
return null;
|
|
169
|
+
}
|
|
101
170
|
if (this.options.validate && this.schema) {
|
|
102
|
-
this.validate(data);
|
|
171
|
+
await this.validate(data);
|
|
103
172
|
}
|
|
104
|
-
const
|
|
105
|
-
|
|
173
|
+
const updated = {
|
|
174
|
+
...existing,
|
|
175
|
+
...data,
|
|
176
|
+
_updatedAt: new Date().toISOString(),
|
|
177
|
+
};
|
|
178
|
+
const key = this.getKeyPattern(id);
|
|
179
|
+
await this.client.getRedis().set(key, JSON.stringify(updated));
|
|
180
|
+
return updated;
|
|
106
181
|
}
|
|
107
182
|
/**
|
|
108
183
|
* Delete document by ID
|
|
109
184
|
*/
|
|
110
185
|
async delete(id) {
|
|
111
|
-
const
|
|
112
|
-
|
|
186
|
+
const key = this.getKeyPattern(id);
|
|
187
|
+
const result = await this.client.getRedis().del(key);
|
|
188
|
+
return result > 0;
|
|
113
189
|
}
|
|
114
190
|
/**
|
|
115
191
|
* Count documents
|
|
116
192
|
*/
|
|
117
193
|
async count() {
|
|
118
|
-
const
|
|
119
|
-
return
|
|
194
|
+
const keys = await this.client.getRedis().keys(this.getKeyPattern());
|
|
195
|
+
return keys.length;
|
|
120
196
|
}
|
|
121
197
|
/**
|
|
122
198
|
* Query documents with filters
|
|
123
199
|
*/
|
|
124
200
|
query() {
|
|
125
|
-
return new QueryBuilder(this
|
|
201
|
+
return new QueryBuilder(this);
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Delete all documents in collection
|
|
205
|
+
*/
|
|
206
|
+
async deleteMany(filter) {
|
|
207
|
+
if (!filter || Object.keys(filter).length === 0) {
|
|
208
|
+
// Delete all documents in collection
|
|
209
|
+
const keys = await this.client.getRedis().keys(this.getKeyPattern());
|
|
210
|
+
if (keys.length === 0)
|
|
211
|
+
return 0;
|
|
212
|
+
await this.client.getRedis().del(...keys);
|
|
213
|
+
return keys.length;
|
|
214
|
+
}
|
|
215
|
+
// Delete documents matching filter
|
|
216
|
+
const documents = await this.find();
|
|
217
|
+
let deleted = 0;
|
|
218
|
+
for (const doc of documents) {
|
|
219
|
+
let matches = true;
|
|
220
|
+
for (const [key, value] of Object.entries(filter)) {
|
|
221
|
+
if (doc[key] !== value) {
|
|
222
|
+
matches = false;
|
|
223
|
+
break;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
if (matches) {
|
|
227
|
+
await this.delete(doc._id);
|
|
228
|
+
deleted++;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
return deleted;
|
|
126
232
|
}
|
|
127
233
|
/**
|
|
128
234
|
* Validate data against schema
|
|
129
235
|
*/
|
|
130
|
-
validate(data) {
|
|
236
|
+
async validate(data) {
|
|
131
237
|
if (!this.schema)
|
|
132
238
|
return;
|
|
133
239
|
for (const [field, rules] of Object.entries(this.schema)) {
|
|
@@ -155,12 +261,12 @@ class Model {
|
|
|
155
261
|
throw new Error(`Validation error: Field '${field}' must be at most ${rules.maxLength} characters`);
|
|
156
262
|
}
|
|
157
263
|
if (rules.pattern && !rules.pattern.test(value)) {
|
|
158
|
-
throw new Error(`Validation error: Field '${field}' does not match pattern`);
|
|
264
|
+
throw new Error(`Validation error: Field '${field}' does not match required pattern`);
|
|
159
265
|
}
|
|
160
|
-
if (rules.email && !this.
|
|
266
|
+
if (rules.email && !this.isValidEmail(value)) {
|
|
161
267
|
throw new Error(`Validation error: Field '${field}' must be a valid email`);
|
|
162
268
|
}
|
|
163
|
-
if (rules.url && !this.
|
|
269
|
+
if (rules.url && !this.isValidUrl(value)) {
|
|
164
270
|
throw new Error(`Validation error: Field '${field}' must be a valid URL`);
|
|
165
271
|
}
|
|
166
272
|
}
|
|
@@ -174,16 +280,26 @@ class Model {
|
|
|
174
280
|
}
|
|
175
281
|
}
|
|
176
282
|
// Custom validation
|
|
177
|
-
if (rules.validate
|
|
178
|
-
|
|
283
|
+
if (rules.validate) {
|
|
284
|
+
const isValid = await rules.validate(value);
|
|
285
|
+
if (!isValid) {
|
|
286
|
+
throw new Error(`Validation error: Field '${field}' failed custom validation`);
|
|
287
|
+
}
|
|
179
288
|
}
|
|
180
289
|
}
|
|
181
290
|
}
|
|
182
|
-
|
|
183
|
-
|
|
291
|
+
isValidEmail(email) {
|
|
292
|
+
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
293
|
+
return emailRegex.test(email);
|
|
184
294
|
}
|
|
185
|
-
|
|
186
|
-
|
|
295
|
+
isValidUrl(url) {
|
|
296
|
+
try {
|
|
297
|
+
new URL(url);
|
|
298
|
+
return true;
|
|
299
|
+
}
|
|
300
|
+
catch {
|
|
301
|
+
return false;
|
|
302
|
+
}
|
|
187
303
|
}
|
|
188
304
|
}
|
|
189
305
|
exports.Model = Model;
|
|
@@ -191,115 +307,108 @@ exports.Model = Model;
|
|
|
191
307
|
// QueryBuilder
|
|
192
308
|
// ============================================================================
|
|
193
309
|
class QueryBuilder {
|
|
194
|
-
constructor(
|
|
195
|
-
this.
|
|
196
|
-
this.
|
|
197
|
-
this.collectionName = collectionName;
|
|
310
|
+
constructor(model) {
|
|
311
|
+
this.filterConditions = [];
|
|
312
|
+
this.model = model;
|
|
198
313
|
}
|
|
199
314
|
/**
|
|
200
|
-
* Add
|
|
315
|
+
* Add filter condition
|
|
201
316
|
*/
|
|
202
|
-
|
|
203
|
-
this.
|
|
317
|
+
where(field, operator, value) {
|
|
318
|
+
this.filterConditions.push({ field, operator, value });
|
|
204
319
|
return this;
|
|
205
320
|
}
|
|
206
321
|
/**
|
|
207
|
-
*
|
|
322
|
+
* Shorthand for equals filter
|
|
208
323
|
*/
|
|
209
|
-
|
|
210
|
-
return this.
|
|
324
|
+
equals(field, value) {
|
|
325
|
+
return this.where(field, 'eq', value);
|
|
211
326
|
}
|
|
212
327
|
/**
|
|
213
328
|
* Sort results
|
|
214
329
|
*/
|
|
215
330
|
sort(field, order = 'asc') {
|
|
216
|
-
this.
|
|
217
|
-
this.sortOrder = order;
|
|
331
|
+
this.sortOptions = { field, order };
|
|
218
332
|
return this;
|
|
219
333
|
}
|
|
220
334
|
/**
|
|
221
|
-
* Limit results
|
|
335
|
+
* Limit number of results
|
|
222
336
|
*/
|
|
223
|
-
limit(
|
|
224
|
-
this.limitValue =
|
|
337
|
+
limit(value) {
|
|
338
|
+
this.limitValue = value;
|
|
225
339
|
return this;
|
|
226
340
|
}
|
|
227
341
|
/**
|
|
228
|
-
* Skip results
|
|
342
|
+
* Skip number of results
|
|
229
343
|
*/
|
|
230
|
-
skip(
|
|
231
|
-
this.skipValue =
|
|
344
|
+
skip(value) {
|
|
345
|
+
this.skipValue = value;
|
|
232
346
|
return this;
|
|
233
347
|
}
|
|
234
348
|
/**
|
|
235
|
-
* Execute query
|
|
349
|
+
* Execute the query
|
|
236
350
|
*/
|
|
237
351
|
async exec() {
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
352
|
+
let results = await this.model.find();
|
|
353
|
+
// Apply filters
|
|
354
|
+
if (this.filterConditions.length > 0) {
|
|
355
|
+
results = results.filter(doc => {
|
|
356
|
+
return this.filterConditions.every(filter => {
|
|
357
|
+
const fieldValue = doc[filter.field];
|
|
358
|
+
switch (filter.operator) {
|
|
359
|
+
case 'eq':
|
|
360
|
+
return fieldValue === filter.value;
|
|
361
|
+
case 'ne':
|
|
362
|
+
return fieldValue !== filter.value;
|
|
363
|
+
case 'gt':
|
|
364
|
+
return fieldValue > filter.value;
|
|
365
|
+
case 'gte':
|
|
366
|
+
return fieldValue >= filter.value;
|
|
367
|
+
case 'lt':
|
|
368
|
+
return fieldValue < filter.value;
|
|
369
|
+
case 'lte':
|
|
370
|
+
return fieldValue <= filter.value;
|
|
371
|
+
case 'contains':
|
|
372
|
+
return String(fieldValue).includes(String(filter.value));
|
|
373
|
+
case 'in':
|
|
374
|
+
return Array.isArray(filter.value) && filter.value.includes(fieldValue);
|
|
375
|
+
case 'not_in':
|
|
376
|
+
return Array.isArray(filter.value) && !filter.value.includes(fieldValue);
|
|
377
|
+
default:
|
|
378
|
+
return false;
|
|
379
|
+
}
|
|
259
380
|
});
|
|
260
381
|
});
|
|
261
382
|
}
|
|
262
|
-
// Apply
|
|
263
|
-
if (this.
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
const
|
|
267
|
-
const
|
|
268
|
-
|
|
383
|
+
// Apply sorting
|
|
384
|
+
if (this.sortOptions) {
|
|
385
|
+
const { field, order } = this.sortOptions;
|
|
386
|
+
results.sort((a, b) => {
|
|
387
|
+
const aVal = a[field];
|
|
388
|
+
const bVal = b[field];
|
|
389
|
+
if (aVal < bVal)
|
|
390
|
+
return order === 'asc' ? -1 : 1;
|
|
391
|
+
if (aVal > bVal)
|
|
392
|
+
return order === 'asc' ? 1 : -1;
|
|
393
|
+
return 0;
|
|
269
394
|
});
|
|
270
395
|
}
|
|
271
|
-
|
|
396
|
+
// Apply skip
|
|
397
|
+
if (this.skipValue) {
|
|
398
|
+
results = results.slice(this.skipValue);
|
|
399
|
+
}
|
|
400
|
+
// Apply limit
|
|
401
|
+
if (this.limitValue) {
|
|
402
|
+
results = results.slice(0, this.limitValue);
|
|
403
|
+
}
|
|
404
|
+
return results;
|
|
272
405
|
}
|
|
273
406
|
/**
|
|
274
|
-
*
|
|
407
|
+
* Get count of matching documents
|
|
275
408
|
*/
|
|
276
409
|
async count() {
|
|
277
|
-
const
|
|
278
|
-
return
|
|
279
|
-
}
|
|
280
|
-
matchesFilter(value, operator, filterValue) {
|
|
281
|
-
switch (operator) {
|
|
282
|
-
case 'eq':
|
|
283
|
-
return value === filterValue;
|
|
284
|
-
case 'ne':
|
|
285
|
-
return value !== filterValue;
|
|
286
|
-
case 'gt':
|
|
287
|
-
return value > filterValue;
|
|
288
|
-
case 'gte':
|
|
289
|
-
return value >= filterValue;
|
|
290
|
-
case 'lt':
|
|
291
|
-
return value < filterValue;
|
|
292
|
-
case 'lte':
|
|
293
|
-
return value <= filterValue;
|
|
294
|
-
case 'contains':
|
|
295
|
-
return String(value).includes(String(filterValue));
|
|
296
|
-
case 'in':
|
|
297
|
-
return Array.isArray(filterValue) && filterValue.includes(value);
|
|
298
|
-
case 'not_in':
|
|
299
|
-
return Array.isArray(filterValue) && !filterValue.includes(value);
|
|
300
|
-
default:
|
|
301
|
-
return false;
|
|
302
|
-
}
|
|
410
|
+
const results = await this.exec();
|
|
411
|
+
return results.length;
|
|
303
412
|
}
|
|
304
413
|
}
|
|
305
414
|
exports.QueryBuilder = QueryBuilder;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TORM Studio Server (Node.js)
|
|
3
|
+
* Web-based visual database manager for ToonStoreDB
|
|
4
|
+
*/
|
|
5
|
+
export interface StudioServerOptions {
|
|
6
|
+
port?: number;
|
|
7
|
+
host?: string;
|
|
8
|
+
redisUrl?: string;
|
|
9
|
+
redisHost?: string;
|
|
10
|
+
redisPort?: number;
|
|
11
|
+
}
|
|
12
|
+
export declare class StudioServer {
|
|
13
|
+
private app;
|
|
14
|
+
private redis;
|
|
15
|
+
private port;
|
|
16
|
+
private host;
|
|
17
|
+
constructor(options?: StudioServerOptions);
|
|
18
|
+
private setupMiddleware;
|
|
19
|
+
private setupRoutes;
|
|
20
|
+
start(): Promise<void>;
|
|
21
|
+
stop(): Promise<void>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=studio-server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"studio-server.d.ts","sourceRoot":"","sources":["../src/studio-server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAS;gBAET,OAAO,GAAE,mBAAwB;IAyB7C,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,WAAW;IAgMb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAG5B"}
|