@effect-dynamodb/language-service 0.1.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.
@@ -0,0 +1,571 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildParams = buildParams;
4
+ function buildParams(op) {
5
+ const { entity, type } = op;
6
+ switch (type) {
7
+ case "get":
8
+ return entity ? buildGetParams(entity, op.arguments) : undefined;
9
+ case "put":
10
+ return entity ? buildPutParams(entity, op.arguments) : undefined;
11
+ case "create":
12
+ return entity ? buildCreateParams(entity, op.arguments) : undefined;
13
+ case "update":
14
+ return entity ? buildUpdateParams(entity, op.arguments, op.updateCombinators) : undefined;
15
+ case "delete":
16
+ return entity ? buildDeleteParams(entity, op.arguments) : undefined;
17
+ case "query":
18
+ return entity ? buildQueryParams(entity, op.indexName, op.arguments) : undefined;
19
+ case "scan":
20
+ return entity ? buildScanParams(entity) : undefined;
21
+ case "entity-query-accessor":
22
+ return op.collection
23
+ ? buildEntityAccessorParams(op.entity, op.collection, op.collectionName, op.arguments)
24
+ : buildEntityIndexAccessorParams(op.entity, op.indexName, op.arguments, op.whereCondition);
25
+ case "collection-accessor":
26
+ return buildCollectionAccessorParams(op.collection, op.collectionName, op.arguments);
27
+ case "bound-query-terminal":
28
+ return buildBoundQueryTerminalParams(op);
29
+ case "table-accessor":
30
+ return buildTableAccessorParams(op.tableName);
31
+ }
32
+ }
33
+ function buildGetParams(entity, args) {
34
+ const primaryIndex = entity.indexes.primary;
35
+ const key = composePrimaryKey(entity, primaryIndex, args);
36
+ return {
37
+ command: "GetItemCommand",
38
+ TableName: "{TableName}",
39
+ Key: key,
40
+ entityType: entity.entityType,
41
+ };
42
+ }
43
+ function buildPutParams(entity, args) {
44
+ const item = buildItemFields(entity, args);
45
+ const hasUnique = entity.unique !== undefined;
46
+ return {
47
+ command: hasUnique ? "TransactWriteItemsCommand" : "PutItemCommand",
48
+ TableName: "{TableName}",
49
+ Item: item,
50
+ entityType: entity.entityType,
51
+ };
52
+ }
53
+ function buildCreateParams(entity, args) {
54
+ const item = buildItemFields(entity, args);
55
+ const hasUnique = entity.unique !== undefined;
56
+ const names = {};
57
+ const primaryIndex = entity.indexes.primary;
58
+ names["#pk"] = primaryIndex.pk.field;
59
+ let condition = "attribute_not_exists(#pk)";
60
+ if (primaryIndex.sk.field) {
61
+ names["#sk"] = primaryIndex.sk.field;
62
+ condition += " AND attribute_not_exists(#sk)";
63
+ }
64
+ return {
65
+ command: hasUnique ? "TransactWriteItemsCommand" : "PutItemCommand",
66
+ TableName: "{TableName}",
67
+ Item: item,
68
+ ConditionExpression: condition,
69
+ ExpressionAttributeNames: names,
70
+ entityType: entity.entityType,
71
+ };
72
+ }
73
+ function buildUpdateParams(entity, args, combinators) {
74
+ const primaryIndex = entity.indexes.primary;
75
+ const key = composePrimaryKey(entity, primaryIndex, args);
76
+ const expr = buildUpdateExpression(entity, combinators);
77
+ return {
78
+ command: "UpdateItemCommand",
79
+ TableName: "{TableName}",
80
+ Key: key,
81
+ UpdateExpression: expr.expression ?? undefined,
82
+ ConditionExpression: expr.condition ?? undefined,
83
+ ExpressionAttributeNames: Object.keys(expr.names).length > 0 ? expr.names : undefined,
84
+ ExpressionAttributeValues: Object.keys(expr.values).length > 0 ? expr.values : undefined,
85
+ entityType: entity.entityType,
86
+ };
87
+ }
88
+ function buildDeleteParams(entity, args) {
89
+ const primaryIndex = entity.indexes.primary;
90
+ const key = composePrimaryKey(entity, primaryIndex, args);
91
+ const isSoftDelete = entity.softDelete !== false;
92
+ return {
93
+ command: isSoftDelete ? "TransactWriteItemsCommand" : "DeleteItemCommand",
94
+ TableName: "{TableName}",
95
+ Key: key,
96
+ entityType: entity.entityType,
97
+ };
98
+ }
99
+ function buildQueryParams(entity, indexName, args) {
100
+ const resolvedIndex = indexName ? entity.indexes[indexName] : entity.indexes.primary;
101
+ const index = resolvedIndex ?? entity.indexes.primary;
102
+ const names = {};
103
+ const values = {};
104
+ const pkValue = composePkValue(entity.schema, entity.entityType, index, args);
105
+ const skPrefix = composeSkPrefixValue(entity.schema, entity.entityType, index, args);
106
+ names["#pk"] = index.pk.field;
107
+ values[":pk"] = pkValue;
108
+ let keyCondition = "#pk = :pk";
109
+ if (skPrefix) {
110
+ names["#sk"] = index.sk.field;
111
+ values[":skPrefix"] = skPrefix;
112
+ keyCondition += " AND begins_with(#sk, :skPrefix)";
113
+ }
114
+ names["#et"] = "__edd_e__";
115
+ values[":et0"] = entity.entityType;
116
+ return {
117
+ command: "QueryCommand",
118
+ TableName: "{TableName}",
119
+ IndexName: index.index ?? undefined,
120
+ KeyConditionExpression: keyCondition,
121
+ FilterExpression: "#et IN (:et0)",
122
+ ExpressionAttributeNames: names,
123
+ ExpressionAttributeValues: values,
124
+ entityType: entity.entityType,
125
+ };
126
+ }
127
+ function buildScanParams(entity) {
128
+ return {
129
+ command: "ScanCommand",
130
+ TableName: "{TableName}",
131
+ FilterExpression: "#et IN (:et0)",
132
+ ExpressionAttributeNames: { "#et": "__edd_e__" },
133
+ ExpressionAttributeValues: { ":et0": entity.entityType },
134
+ entityType: entity.entityType,
135
+ };
136
+ }
137
+ // --- Item builder (for put/create) ---
138
+ function buildItemFields(entity, args) {
139
+ const item = {};
140
+ // Compose key fields for all indexes
141
+ for (const [indexName, index] of Object.entries(entity.indexes)) {
142
+ if (indexName.startsWith("_cascade_"))
143
+ continue;
144
+ item[index.pk.field] = composePkValue(entity.schema, entity.entityType, index, args);
145
+ item[index.sk.field] = composeSkValue(entity.schema, entity.entityType, index, args);
146
+ }
147
+ // Entity type discriminator
148
+ item.__edd_e__ = entity.entityType;
149
+ // System fields
150
+ if (entity.timestamps) {
151
+ item.createdAt = "{now}";
152
+ item.updatedAt = "{now}";
153
+ }
154
+ if (entity.versioned) {
155
+ item.__edd_v__ = "1";
156
+ }
157
+ return item;
158
+ }
159
+ function buildUpdateExpression(entity, combinators) {
160
+ const names = {};
161
+ const values = {};
162
+ const setParts = [];
163
+ const removeParts = [];
164
+ const addParts = [];
165
+ // User-provided SET fields
166
+ if (combinators?.set) {
167
+ for (const [k, v] of Object.entries(combinators.set)) {
168
+ names[`#${k}`] = k;
169
+ values[`:${k}`] = v !== undefined ? String(v) : `{${k}}`;
170
+ setParts.push(`#${k} = :${k}`);
171
+ }
172
+ }
173
+ // Auto SET fields
174
+ if (entity.timestamps) {
175
+ names["#updatedAt"] = "updatedAt";
176
+ values[":updatedAt"] = "{now}";
177
+ setParts.push("#updatedAt = :updatedAt");
178
+ }
179
+ if (entity.versioned) {
180
+ names["#__edd_v__"] = "__edd_v__";
181
+ values[":one"] = "1";
182
+ setParts.push("#__edd_v__ = #__edd_v__ + :one");
183
+ }
184
+ // REMOVE fields
185
+ if (combinators?.remove) {
186
+ for (const f of combinators.remove) {
187
+ names[`#${f}`] = f;
188
+ removeParts.push(`#${f}`);
189
+ }
190
+ }
191
+ // ADD fields (atomic increment)
192
+ if (combinators?.add) {
193
+ for (const [k, v] of Object.entries(combinators.add)) {
194
+ names[`#${k}`] = k;
195
+ values[`:${k}`] = String(v);
196
+ addParts.push(`#${k} :${k}`);
197
+ }
198
+ }
199
+ // Build expression string
200
+ const exprParts = [];
201
+ if (setParts.length > 0)
202
+ exprParts.push(`SET ${setParts.join(", ")}`);
203
+ if (removeParts.length > 0)
204
+ exprParts.push(`REMOVE ${removeParts.join(", ")}`);
205
+ if (addParts.length > 0)
206
+ exprParts.push(`ADD ${addParts.join(", ")}`);
207
+ // Condition (optimistic locking)
208
+ let condition;
209
+ if (combinators?.expectedVersion !== undefined) {
210
+ names["#__edd_v__"] = "__edd_v__";
211
+ values[":expectedVersion"] = String(combinators.expectedVersion);
212
+ condition = "#__edd_v__ = :expectedVersion";
213
+ }
214
+ return {
215
+ expression: exprParts.length > 0 ? exprParts.join(" ") : undefined,
216
+ condition,
217
+ names,
218
+ values,
219
+ };
220
+ }
221
+ // --- Key composition (mirrors DynamoSchema + KeyComposer) ---
222
+ function applyCasing(value, casing) {
223
+ switch (casing) {
224
+ case "lowercase":
225
+ return value.toLowerCase();
226
+ case "uppercase":
227
+ return value.toUpperCase();
228
+ case "preserve":
229
+ return value;
230
+ }
231
+ }
232
+ function schemaPrefix(schema) {
233
+ return `$${applyCasing(schema.name, schema.casing)}#v${schema.version}`;
234
+ }
235
+ function composeKey(schema, entityType, composites, casing) {
236
+ const effectiveCasing = casing ?? schema.casing;
237
+ const pre = schemaPrefix(schema);
238
+ const type = applyCasing(entityType, effectiveCasing);
239
+ if (composites.length === 0)
240
+ return `${pre}#${type}`;
241
+ return `${pre}#${type}#${composites.join("#")}`;
242
+ }
243
+ function composeCollectionKey(schema, collectionName, composites, casing) {
244
+ const effectiveCasing = casing ?? schema.casing;
245
+ const pre = schemaPrefix(schema);
246
+ const collection = applyCasing(collectionName, effectiveCasing);
247
+ if (composites.length === 0)
248
+ return `${pre}#${collection}`;
249
+ return `${pre}#${collection}#${composites.join("#")}`;
250
+ }
251
+ function composeClusteredSortKey(schema, collectionName, entityType, entityVersion, composites, casing) {
252
+ const effectiveCasing = casing ?? schema.casing;
253
+ const pre = schemaPrefix(schema);
254
+ const collection = applyCasing(collectionName, effectiveCasing);
255
+ const type = applyCasing(entityType, effectiveCasing);
256
+ const entityPrefix = `${type}_${entityVersion}`;
257
+ const parts = [pre, collection, entityPrefix, ...composites].filter((p) => p.length > 0);
258
+ return parts.join("#");
259
+ }
260
+ function composeIsolatedSortKey(schema, entityType, entityVersion, composites, casing) {
261
+ const effectiveCasing = casing ?? schema.casing;
262
+ const pre = schemaPrefix(schema);
263
+ const type = applyCasing(entityType, effectiveCasing);
264
+ const entityPrefix = `${type}_${entityVersion}`;
265
+ const parts = [pre, entityPrefix, ...composites].filter((p) => p.length > 0);
266
+ return parts.join("#");
267
+ }
268
+ function composePkValue(schema, entityType, index, record) {
269
+ const composites = extractCompositeValues(index.pk.composite, record);
270
+ const collection = index.collection;
271
+ if (collection !== undefined) {
272
+ const collectionName = Array.isArray(collection) ? collection[0] : collection;
273
+ return composeCollectionKey(schema, collectionName, composites, index.casing);
274
+ }
275
+ return composeKey(schema, entityType, composites, index.casing);
276
+ }
277
+ function composeSkValue(schema, entityType, index, record) {
278
+ const composites = extractCompositeValues(index.sk.composite, record);
279
+ const collection = index.collection;
280
+ const collectionType = index.type ?? "clustered";
281
+ const entityVersion = 1;
282
+ if (collection !== undefined) {
283
+ if (collectionType === "clustered") {
284
+ const collectionName = Array.isArray(collection) ? collection[0] : collection;
285
+ return composeClusteredSortKey(schema, collectionName, entityType, entityVersion, composites, index.casing);
286
+ }
287
+ return composeIsolatedSortKey(schema, entityType, entityVersion, composites, index.casing);
288
+ }
289
+ return composeKey(schema, entityType, composites, index.casing);
290
+ }
291
+ function composeSkPrefixValue(schema, entityType, index, record) {
292
+ const available = [];
293
+ for (const attr of index.sk.composite) {
294
+ const value = record?.[attr];
295
+ if (value === undefined || value === null)
296
+ break;
297
+ available.push(String(value));
298
+ }
299
+ const collection = index.collection;
300
+ const collectionType = index.type ?? "clustered";
301
+ const entityVersion = 1;
302
+ if (collection !== undefined) {
303
+ if (collectionType === "clustered") {
304
+ const collectionName = Array.isArray(collection) ? collection[0] : collection;
305
+ return composeClusteredSortKey(schema, collectionName, entityType, entityVersion, available, index.casing);
306
+ }
307
+ return composeIsolatedSortKey(schema, entityType, entityVersion, available, index.casing);
308
+ }
309
+ return composeKey(schema, entityType, available, index.casing);
310
+ }
311
+ function composePrimaryKey(entity, index, args) {
312
+ return {
313
+ [index.pk.field]: composePkValue(entity.schema, entity.entityType, index, args),
314
+ [index.sk.field]: composeSkValue(entity.schema, entity.entityType, index, args),
315
+ };
316
+ }
317
+ function extractCompositeValues(composite, record) {
318
+ return composite.map((attr) => {
319
+ const value = record?.[attr];
320
+ if (value === undefined || value === null)
321
+ return `{${attr}}`;
322
+ return String(value);
323
+ });
324
+ }
325
+ // ---------------------------------------------------------------------------
326
+ // V2 param builders — entity accessors, collection accessors, BoundQuery terminals
327
+ // ---------------------------------------------------------------------------
328
+ function buildEntityAccessorParams(entity, collection, collectionName, args) {
329
+ if (!entity || !collection) {
330
+ return {
331
+ command: "QueryCommand",
332
+ TableName: "<table>",
333
+ entityType: entity?.entityType ?? "unknown",
334
+ info: `Query accessor '${collectionName ?? "unknown"}'`,
335
+ };
336
+ }
337
+ const pkComposites = collection.pk.composite.join(", ");
338
+ const memberEntry = Object.entries(collection.members).find(([, m]) => m.entityVariableName === entity.variableName);
339
+ const skComposites = memberEntry ? memberEntry[1].sk.composite.join(", ") : "";
340
+ const info = [
341
+ `Query accessor '${collectionName}'`,
342
+ ` Index: ${collection.index} (collection: ${collection.collectionName}, ${collection.type})`,
343
+ ` PK: ${pkComposites} (required)`,
344
+ skComposites ? ` SK: ${skComposites} (optional begins_with)` : undefined,
345
+ ` Returns: BoundQuery<${entity.entityType}>`,
346
+ ]
347
+ .filter(Boolean)
348
+ .join("\n");
349
+ // Build actual query params if we have arguments
350
+ if (args && entity.schema) {
351
+ const indexDef = {
352
+ index: collection.index,
353
+ collection: collection.collectionName,
354
+ type: collection.type,
355
+ pk: collection.pk,
356
+ sk: {
357
+ field: collection.sk.field,
358
+ composite: memberEntry ? [...memberEntry[1].sk.composite] : [],
359
+ },
360
+ };
361
+ const pkValue = composePkValue(entity.schema, entity.entityType, indexDef, args);
362
+ const names = { "#pk": indexDef.pk.field };
363
+ const values = { ":pk": pkValue };
364
+ return {
365
+ command: "QueryCommand",
366
+ TableName: "<table>",
367
+ IndexName: collection.index,
368
+ KeyConditionExpression: "#pk = :pk",
369
+ ExpressionAttributeNames: names,
370
+ ExpressionAttributeValues: values,
371
+ entityType: entity.entityType,
372
+ info,
373
+ };
374
+ }
375
+ return {
376
+ command: "QueryCommand",
377
+ TableName: "<table>",
378
+ IndexName: collection.index,
379
+ entityType: entity.entityType,
380
+ info,
381
+ };
382
+ }
383
+ function buildEntityIndexAccessorParams(entity, indexName, args, whereCondition) {
384
+ if (!entity || !indexName) {
385
+ return {
386
+ command: "QueryCommand",
387
+ TableName: "<table>",
388
+ entityType: entity?.entityType ?? "unknown",
389
+ info: `Query accessor '${indexName ?? "unknown"}'`,
390
+ };
391
+ }
392
+ const indexDef = entity.indexes[indexName];
393
+ if (!indexDef) {
394
+ return {
395
+ command: "QueryCommand",
396
+ TableName: "<table>",
397
+ entityType: entity.entityType,
398
+ info: `Query accessor '${indexName}' (index not found)`,
399
+ };
400
+ }
401
+ const pkComposites = indexDef.pk.composite.join(", ");
402
+ const skComposites = indexDef.sk.composite.join(", ");
403
+ const info = [
404
+ `Query accessor '${indexName}'`,
405
+ ` Index: ${indexDef.index ?? "primary"} (isolated)`,
406
+ ` PK: ${pkComposites} (required)`,
407
+ skComposites ? ` SK: ${skComposites} (optional begins_with)` : undefined,
408
+ ` Returns: BoundQuery<${entity.entityType}>`,
409
+ ]
410
+ .filter(Boolean)
411
+ .join("\n");
412
+ // Build actual query params if we have arguments
413
+ if (args && entity.schema) {
414
+ const pkValue = composePkValue(entity.schema, entity.entityType, indexDef, args);
415
+ const names = { "#pk": indexDef.pk.field };
416
+ const values = { ":pk": pkValue };
417
+ let keyCondition = "#pk = :pk";
418
+ // Merge .where() condition value into args for SK composition
419
+ const mergedArgs = whereCondition
420
+ ? { ...args, [whereCondition.field]: whereCondition.value }
421
+ : args;
422
+ // Add SK condition only if SK composites are actually provided
423
+ const hasSkComposites = indexDef.sk.composite.length > 0 &&
424
+ indexDef.sk.composite.some((attr) => mergedArgs[attr] !== undefined);
425
+ if (hasSkComposites) {
426
+ const allSkProvided = indexDef.sk.composite.every((attr) => mergedArgs[attr] !== undefined);
427
+ if (allSkProvided && !whereCondition) {
428
+ // All SK composites provided in query input → exact match
429
+ const skValue = composeSkValue(entity.schema, entity.entityType, indexDef, mergedArgs);
430
+ names["#sk"] = indexDef.sk.field;
431
+ values[":sk"] = skValue;
432
+ keyCondition += " AND #sk = :sk";
433
+ }
434
+ else {
435
+ // Partial or .where() with range condition → use appropriate SK condition
436
+ const skPrefix = composeSkPrefixValue(entity.schema, entity.entityType, indexDef, mergedArgs);
437
+ if (skPrefix) {
438
+ names["#sk"] = indexDef.sk.field;
439
+ if (whereCondition) {
440
+ // Use the .where() operator on the composed prefix
441
+ switch (whereCondition.op) {
442
+ case "beginsWith":
443
+ values[":skPrefix"] = skPrefix;
444
+ keyCondition += " AND begins_with(#sk, :skPrefix)";
445
+ break;
446
+ case "eq":
447
+ values[":sk"] = skPrefix;
448
+ keyCondition += " AND #sk = :sk";
449
+ break;
450
+ case "gt":
451
+ values[":sk"] = skPrefix;
452
+ keyCondition += " AND #sk > :sk";
453
+ break;
454
+ case "gte":
455
+ values[":sk"] = skPrefix;
456
+ keyCondition += " AND #sk >= :sk";
457
+ break;
458
+ case "lt":
459
+ values[":sk"] = skPrefix;
460
+ keyCondition += " AND #sk < :sk";
461
+ break;
462
+ case "lte":
463
+ values[":sk"] = skPrefix;
464
+ keyCondition += " AND #sk <= :sk";
465
+ break;
466
+ case "between": {
467
+ const skPrefix2 = whereCondition.value2
468
+ ? composeSkPrefixValue(entity.schema, entity.entityType, indexDef, {
469
+ ...args,
470
+ [whereCondition.field]: whereCondition.value2,
471
+ })
472
+ : skPrefix;
473
+ values[":skLow"] = skPrefix;
474
+ values[":skHigh"] = skPrefix2 ?? skPrefix;
475
+ keyCondition += " AND #sk BETWEEN :skLow AND :skHigh";
476
+ break;
477
+ }
478
+ }
479
+ }
480
+ else {
481
+ values[":skPrefix"] = skPrefix;
482
+ keyCondition += " AND begins_with(#sk, :skPrefix)";
483
+ }
484
+ }
485
+ }
486
+ }
487
+ return {
488
+ command: "QueryCommand",
489
+ TableName: "<table>",
490
+ IndexName: indexDef.index,
491
+ KeyConditionExpression: keyCondition,
492
+ ExpressionAttributeNames: names,
493
+ ExpressionAttributeValues: values,
494
+ entityType: entity.entityType,
495
+ info,
496
+ };
497
+ }
498
+ return {
499
+ command: "QueryCommand",
500
+ TableName: "<table>",
501
+ IndexName: indexDef.index,
502
+ entityType: entity.entityType,
503
+ info,
504
+ };
505
+ }
506
+ function buildCollectionAccessorParams(collection, collectionName, _args) {
507
+ if (!collection) {
508
+ return {
509
+ command: "QueryCommand",
510
+ TableName: "<table>",
511
+ entityType: "collection",
512
+ info: `Collection '${collectionName ?? "unknown"}'`,
513
+ };
514
+ }
515
+ const memberLines = Object.entries(collection.members).map(([key, m]) => ` ${key}: ${m.entityVariableName} (sk: [${m.sk.composite.join(", ")}])`);
516
+ const info = [
517
+ `Collection '${collection.collectionName}'`,
518
+ ` Index: ${collection.index} (${collection.type})`,
519
+ ` PK: ${collection.pk.composite.join(", ")} (required)`,
520
+ ` Members:`,
521
+ ...memberLines,
522
+ ` Returns: { ${Object.keys(collection.members).join(", ")} }`,
523
+ ].join("\n");
524
+ return {
525
+ command: "QueryCommand",
526
+ TableName: "<table>",
527
+ IndexName: collection.index,
528
+ entityType: "collection",
529
+ info,
530
+ };
531
+ }
532
+ function buildBoundQueryTerminalParams(op) {
533
+ const terminalDescriptions = {
534
+ collect: "Collect all pages into Array",
535
+ fetch: "Execute single DynamoDB page → Page<T> with cursor",
536
+ paginate: "Lazy Stream of items, auto-paginates",
537
+ count: "Count-only query (no items returned)",
538
+ };
539
+ const desc = terminalDescriptions[op.terminalName ?? ""] ?? op.terminalName ?? "unknown";
540
+ const terminalInfo = `BoundQuery terminal: .${op.terminalName}()\n ${desc}`;
541
+ // Build the root query params (without info text)
542
+ const rootParams = op.collection
543
+ ? buildEntityAccessorParams(op.entity, op.collection, op.collectionName, op.arguments)
544
+ : op.entity && op.indexName
545
+ ? buildEntityIndexAccessorParams(op.entity, op.indexName, op.arguments, op.whereCondition)
546
+ : undefined;
547
+ if (rootParams) {
548
+ return {
549
+ ...rootParams,
550
+ command: op.terminalName === "count" ? "QueryCommand (SELECT: COUNT)" : rootParams.command,
551
+ info: undefined,
552
+ };
553
+ }
554
+ const entityType = op.entity?.entityType ?? op.collection?.collectionName ?? "unknown";
555
+ return {
556
+ command: op.terminalName === "count" ? "QueryCommand (SELECT: COUNT)" : "QueryCommand",
557
+ TableName: "<table>",
558
+ IndexName: op.collection?.index,
559
+ entityType,
560
+ info: terminalInfo,
561
+ };
562
+ }
563
+ function buildTableAccessorParams(tableName) {
564
+ return {
565
+ command: "TableOperations",
566
+ TableName: tableName ?? "<table>",
567
+ entityType: "table",
568
+ info: `Table '${tableName ?? "unknown"}'\n Operations: create, delete, describe, update, backup, enableTTL, tag, ...`,
569
+ };
570
+ }
571
+ //# sourceMappingURL=ParamsBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParamsBuilder.js","sourceRoot":"","sources":["../../src/core/ParamsBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type ts from "typescript";
2
+ export declare const DiagnosticCode: {
3
+ /** Entity.make: primary key must have at least one composite attribute */
4
+ readonly EMPTY_PRIMARY_KEY: 9001;
5
+ /** Entity.make: composite attribute references a field not in the model */
6
+ readonly UNKNOWN_COMPOSITE_ATTR: 9002;
7
+ /** Entity.make: GSI index must use new format { name, pk: { field, composite }, sk: { field, composite } } */
8
+ readonly INVALID_GSI_FORMAT: 9003;
9
+ /** Query accessor: SK composites violate prefix ordering */
10
+ readonly SK_PREFIX_VIOLATION: 9004;
11
+ /** Query accessor: SK composite used in .filter() instead of query input */
12
+ readonly SK_IN_FILTER: 9005;
13
+ /** Query accessor: unknown property in query input */
14
+ readonly UNKNOWN_QUERY_PROPERTY: 9006;
15
+ /** DynamoModel.configure: field rename target collides with existing model field */
16
+ readonly FIELD_RENAME_COLLISION: 9007;
17
+ };
18
+ export declare function getDiagnostics(typescript: typeof ts, info: ts.server.PluginCreateInfo, fileName: string, prior: ts.Diagnostic[]): ts.Diagnostic[];
19
+ //# sourceMappingURL=diagnostics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/features/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAA;AAYhC,eAAO,MAAM,cAAc;IACzB,0EAA0E;;IAE1E,2EAA2E;;IAE3E,8GAA8G;;IAE9G,4DAA4D;;IAE5D,4EAA4E;;IAE5E,sDAAsD;;IAEtD,oFAAoF;;CAE5E,CAAA;AAMV,wBAAgB,cAAc,CAC5B,UAAU,EAAE,OAAO,EAAE,EACrB,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,EAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,EAAE,CAAC,UAAU,EAAE,GACrB,EAAE,CAAC,UAAU,EAAE,CAwBjB"}