orm-dynamodb 1.2.3 → 1.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 +9 -6
- package/dist/BaseEntity.d.ts +4 -2
- package/dist/BaseEntity.d.ts.map +1 -1
- package/dist/BaseEntity.js +76 -45
- package/dist/BaseEntity.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -104,13 +104,15 @@ class Post extends BaseEntity {
|
|
|
104
104
|
@ToDbModel
|
|
105
105
|
static toDbModel(post: Post) {
|
|
106
106
|
return {
|
|
107
|
+
...post,
|
|
107
108
|
publishedAt: post.publishedAt ? post.publishedAt.toISOString() : null
|
|
108
109
|
};
|
|
109
110
|
}
|
|
110
111
|
|
|
111
112
|
@FromDbModel
|
|
112
|
-
static fromDbModel(item:
|
|
113
|
+
static fromDbModel(item: any): Post {
|
|
113
114
|
return {
|
|
115
|
+
...item,
|
|
114
116
|
publishedAt: item.publishedAt ? new Date(item.publishedAt) : null
|
|
115
117
|
};
|
|
116
118
|
}
|
|
@@ -139,13 +141,13 @@ async function run() {
|
|
|
139
141
|
- **`@SortKeyValue`** - Defines the sort key value getter
|
|
140
142
|
- **`@LinkObject(EntityClass, options?)`** - Creates a reference to a single entity (options: `{ inline?: boolean }`)
|
|
141
143
|
- **`@LinkArray(EntityClass, options?)`** - Creates a reference to an array of entities (options: `{ inline?: boolean }`)
|
|
142
|
-
- **`@ToDbModel`** -
|
|
143
|
-
- **`@FromDbModel`** -
|
|
144
|
+
- **`@ToDbModel`** - Full serialization contract for writing to DynamoDB; return exactly the fields you want saved
|
|
145
|
+
- **`@FromDbModel`** - Full deserialization contract for reading from DynamoDB; return exactly the fields you want on the entity
|
|
144
146
|
|
|
145
147
|
### Core Methods
|
|
146
148
|
|
|
147
|
-
|
|
148
|
-
- `update(attributes)` - Partial update
|
|
149
|
+
**`insert()`** - Insert or replace the entity (cascade saves linked entities when requested)
|
|
150
|
+
- `update(attributes)` - Partial update for entities without `@ToDbModel`; full serialized save for entities with `@ToDbModel`
|
|
149
151
|
- `delete()` - Remove the entity from DynamoDB
|
|
150
152
|
- `loadLinks()` - Load all linked entities
|
|
151
153
|
|
|
@@ -229,7 +231,8 @@ Apache-2.0
|
|
|
229
231
|
|
|
230
232
|
## 📖 Examples
|
|
231
233
|
|
|
232
|
-
See [
|
|
234
|
+
See [examples_simple.ts](./examples_simple.ts) for examples.
|
|
235
|
+
See [examples_advanced.ts](./examples_advanced.ts) for advanced examples.
|
|
233
236
|
|
|
234
237
|
## 🤝 Contributing
|
|
235
238
|
|
package/dist/BaseEntity.d.ts
CHANGED
|
@@ -3,8 +3,10 @@ import type { QueryOptions, EntityMetadata } from './types';
|
|
|
3
3
|
type QueryHelperOptions = Omit<QueryOptions, 'sortKeyCondition'>;
|
|
4
4
|
export declare class BaseEntity {
|
|
5
5
|
protected getMetadata(): EntityMetadata;
|
|
6
|
-
protected getKey(): any;
|
|
7
|
-
protected toItem(): any;
|
|
6
|
+
protected getKey(source?: any): any;
|
|
7
|
+
protected toItem(source?: any): any;
|
|
8
|
+
protected fromItem<T extends BaseEntity>(this: T, item: any): T;
|
|
9
|
+
protected saveItem(source?: any, cascadeSave?: boolean): Promise<this>;
|
|
8
10
|
insert(cascadeSave?: boolean): Promise<this>;
|
|
9
11
|
update(attributes: Partial<this>): Promise<this>;
|
|
10
12
|
delete(): Promise<void>;
|
package/dist/BaseEntity.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseEntity.d.ts","sourceRoot":"","sources":["../BaseEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAS1D,OAAO,KAAK,EAAgB,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAG1E,KAAK,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;AAEjE,qBAAa,UAAU;IAEnB,SAAS,CAAC,WAAW,IAAI,cAAc;IAIvC,SAAS,CAAC,MAAM;
|
|
1
|
+
{"version":3,"file":"BaseEntity.d.ts","sourceRoot":"","sources":["../BaseEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAS1D,OAAO,KAAK,EAAgB,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAG1E,KAAK,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;AAEjE,qBAAa,UAAU;IAEnB,SAAS,CAAC,WAAW,IAAI,cAAc;IAIvC,SAAS,CAAC,MAAM,CAAC,MAAM,GAAE,GAAU;IAenC,SAAS,CAAC,MAAM,CAAC,MAAM,GAAE,GAAU;IA+DnC,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;cA+B/C,QAAQ,CAAC,MAAM,GAAE,GAAU,EAAE,WAAW,GAAE,OAAe;IA0InE,MAAM,CAAC,WAAW,GAAE,OAAe;IAKnC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC;IAmDhC,MAAM;IA2EN,SAAS;IA6Ff,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,cAAc,EAAE,oBAAoB,CAAC,EAAE,GAAG;WAI9D,GAAG,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;WA2BhG,KAAK,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;WA+ElG,QAAQ,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;WAI3G,eAAe,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;WAOzI,YAAY,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;WAOrI,gBAAgB,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;WAOtI,aAAa,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;WAOnI,WAAW,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAMjJ"}
|
package/dist/BaseEntity.js
CHANGED
|
@@ -8,36 +8,36 @@ class BaseEntity {
|
|
|
8
8
|
getMetadata() {
|
|
9
9
|
return this.constructor.__entityMetadata__;
|
|
10
10
|
}
|
|
11
|
-
getKey() {
|
|
11
|
+
getKey(source = this) {
|
|
12
12
|
const metadata = this.getMetadata();
|
|
13
13
|
const key = {};
|
|
14
14
|
if (metadata.hashKeyGetter) {
|
|
15
|
-
key[metadata.hashKeyName] =
|
|
15
|
+
key[metadata.hashKeyName] = source[metadata.hashKeyGetter];
|
|
16
16
|
}
|
|
17
17
|
if (metadata.sortKeyName && metadata.sortKeyGetter) {
|
|
18
|
-
key[metadata.sortKeyName] =
|
|
18
|
+
key[metadata.sortKeyName] = source[metadata.sortKeyGetter];
|
|
19
19
|
}
|
|
20
20
|
return key;
|
|
21
21
|
}
|
|
22
|
-
toItem() {
|
|
23
|
-
const item = { ...this };
|
|
22
|
+
toItem(source = this) {
|
|
24
23
|
const metadata = this.getMetadata();
|
|
25
|
-
const key = this.getKey();
|
|
26
|
-
//
|
|
24
|
+
const key = this.getKey(source);
|
|
25
|
+
// @ToDbModel is a full serializer: when present, its return value is the
|
|
26
|
+
// complete user-controlled DB shape. Keys and link metadata are added by the ORM.
|
|
27
27
|
const toDbModelMapper = this.constructor[symbols_1.TO_DB_MODEL_METADATA];
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
28
|
+
const item = toDbModelMapper
|
|
29
|
+
? { ...this.constructor[toDbModelMapper](source) }
|
|
30
|
+
: { ...source };
|
|
32
31
|
// Handle linked entities
|
|
33
32
|
const links = this.constructor.prototype[symbols_1.LINKS_METADATA] || [];
|
|
34
33
|
for (const link of links) {
|
|
35
|
-
const value =
|
|
34
|
+
const value = source[link.propertyKey];
|
|
36
35
|
const isInline = link.inline ?? false;
|
|
36
|
+
const idField = `__${link.propertyKey}ID`;
|
|
37
37
|
if (isInline) {
|
|
38
38
|
if (value !== undefined && value !== null) {
|
|
39
39
|
if (link.isArray) {
|
|
40
|
-
item[
|
|
40
|
+
item[idField] = value.map((linkedItem) => {
|
|
41
41
|
const linkedKey = linkedItem.getKey();
|
|
42
42
|
const linkedMetadata = linkedItem.getMetadata();
|
|
43
43
|
const result = {
|
|
@@ -59,29 +59,60 @@ class BaseEntity {
|
|
|
59
59
|
if (linkedMetadata.sortKeyName) {
|
|
60
60
|
result[linkedMetadata.sortKeyName] = linkedKey[linkedMetadata.sortKeyName];
|
|
61
61
|
}
|
|
62
|
-
item[
|
|
62
|
+
item[idField] = result;
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
+
else if (value === undefined && source[idField] !== undefined) {
|
|
66
|
+
item[idField] = source[idField];
|
|
67
|
+
}
|
|
68
|
+
else if (value === null) {
|
|
69
|
+
delete item[idField];
|
|
70
|
+
}
|
|
65
71
|
}
|
|
66
72
|
else {
|
|
67
73
|
// Non-inline: ensure no stale __propertyID from a previous loadLinks() is persisted
|
|
68
|
-
delete item[
|
|
74
|
+
delete item[idField];
|
|
69
75
|
}
|
|
70
76
|
// Remove the actual linked entity instances from being saved
|
|
71
77
|
delete item[link.propertyKey];
|
|
72
78
|
}
|
|
73
79
|
return {
|
|
74
|
-
...
|
|
75
|
-
...
|
|
80
|
+
...item,
|
|
81
|
+
...key
|
|
76
82
|
};
|
|
77
83
|
}
|
|
78
|
-
|
|
84
|
+
fromItem(item) {
|
|
85
|
+
const fromDbModelMapper = this.constructor[symbols_1.FROM_DB_MODEL_METADATA];
|
|
86
|
+
const itemData = fromDbModelMapper
|
|
87
|
+
? this.constructor[fromDbModelMapper](item)
|
|
88
|
+
: item;
|
|
89
|
+
if (fromDbModelMapper) {
|
|
90
|
+
for (const key of Object.keys(this)) {
|
|
91
|
+
delete this[key];
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
Object.assign(this, itemData);
|
|
95
|
+
const links = this.constructor.prototype[symbols_1.LINKS_METADATA] || [];
|
|
96
|
+
for (const link of links) {
|
|
97
|
+
const idField = `__${link.propertyKey}ID`;
|
|
98
|
+
if (item[idField] !== undefined) {
|
|
99
|
+
Object.defineProperty(this, idField, {
|
|
100
|
+
value: item[idField],
|
|
101
|
+
writable: true,
|
|
102
|
+
configurable: true,
|
|
103
|
+
enumerable: false
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return this;
|
|
108
|
+
}
|
|
109
|
+
async saveItem(source = this, cascadeSave = false) {
|
|
79
110
|
const metadata = this.getMetadata();
|
|
80
111
|
// Save linked entities first (cascade save) only if cascadeSave is true
|
|
81
112
|
if (cascadeSave) {
|
|
82
113
|
const links = this.constructor.prototype[symbols_1.LINKS_METADATA] || [];
|
|
83
114
|
for (const link of links) {
|
|
84
|
-
const value =
|
|
115
|
+
const value = source[link.propertyKey];
|
|
85
116
|
if (value !== undefined && value !== null) {
|
|
86
117
|
if (Array.isArray(value)) {
|
|
87
118
|
// Save all linked entities in parallel
|
|
@@ -94,7 +125,7 @@ class BaseEntity {
|
|
|
94
125
|
}
|
|
95
126
|
}
|
|
96
127
|
}
|
|
97
|
-
const item = this.toItem();
|
|
128
|
+
const item = this.toItem(source);
|
|
98
129
|
await (0, client_1.getDocClient)().send(new lib_dynamodb_1.PutCommand({
|
|
99
130
|
TableName: metadata.tableName,
|
|
100
131
|
Item: item
|
|
@@ -114,11 +145,11 @@ class BaseEntity {
|
|
|
114
145
|
`Non-inline links require a sort key. Use @Link(..., { inline: true }) or add a sort key.`);
|
|
115
146
|
}
|
|
116
147
|
if (metadata.sortKeyName && nonInlineLinks.length > 0) {
|
|
117
|
-
const parentKey = this.getKey();
|
|
148
|
+
const parentKey = this.getKey(source);
|
|
118
149
|
const parentHKVal = String(parentKey[metadata.hashKeyName]);
|
|
119
150
|
const parentSKVal = String(parentKey[metadata.sortKeyName]);
|
|
120
151
|
for (const link of nonInlineLinks) {
|
|
121
|
-
const value =
|
|
152
|
+
const value = source[link.propertyKey];
|
|
122
153
|
// Delete all existing link records for this property before writing new ones.
|
|
123
154
|
// Runs even when value is null/undefined so clearing a link removes stale records.
|
|
124
155
|
const skPrefix = `${(0, client_1.encodeLinkSegment)(parentHKVal)}#${(0, client_1.encodeLinkSegment)(parentSKVal)}#${(0, client_1.encodeLinkSegment)(link.propertyKey)}#`;
|
|
@@ -198,9 +229,29 @@ class BaseEntity {
|
|
|
198
229
|
}
|
|
199
230
|
return this;
|
|
200
231
|
}
|
|
232
|
+
async insert(cascadeSave = false) {
|
|
233
|
+
await this.saveItem(this, cascadeSave);
|
|
234
|
+
return this;
|
|
235
|
+
}
|
|
201
236
|
async update(attributes) {
|
|
202
237
|
const metadata = this.getMetadata();
|
|
203
238
|
const key = this.getKey();
|
|
239
|
+
const snapshot = Object.assign(Object.create(Object.getPrototypeOf(this)), this, attributes);
|
|
240
|
+
const nextKey = this.getKey(snapshot);
|
|
241
|
+
const hashKeyChanged = key[metadata.hashKeyName] !== nextKey[metadata.hashKeyName];
|
|
242
|
+
const sortKeyChanged = metadata.sortKeyName
|
|
243
|
+
? key[metadata.sortKeyName] !== nextKey[metadata.sortKeyName]
|
|
244
|
+
: false;
|
|
245
|
+
if (hashKeyChanged || sortKeyChanged) {
|
|
246
|
+
throw new Error(`Cannot update key fields for entity "${metadata.tableName}". ` +
|
|
247
|
+
`Hash key and sort key values are immutable; create a new entity and delete the old one instead.`);
|
|
248
|
+
}
|
|
249
|
+
const toDbModelMapper = this.constructor[symbols_1.TO_DB_MODEL_METADATA];
|
|
250
|
+
if (toDbModelMapper) {
|
|
251
|
+
await this.saveItem(snapshot);
|
|
252
|
+
Object.assign(this, attributes);
|
|
253
|
+
return this;
|
|
254
|
+
}
|
|
204
255
|
const updateExpressions = [];
|
|
205
256
|
const expressionAttributeNames = {};
|
|
206
257
|
const expressionAttributeValues = {};
|
|
@@ -296,15 +347,9 @@ class BaseEntity {
|
|
|
296
347
|
continue;
|
|
297
348
|
const EntityClass = link.entityClass;
|
|
298
349
|
const entityMetadata = EntityClass.__entityMetadata__;
|
|
299
|
-
const fromDbModelMapper = EntityClass[symbols_1.FROM_DB_MODEL_METADATA];
|
|
300
350
|
const instantiate = (raw) => {
|
|
301
|
-
let itemData = raw;
|
|
302
|
-
if (fromDbModelMapper) {
|
|
303
|
-
itemData = { ...raw, ...EntityClass[fromDbModelMapper](raw) };
|
|
304
|
-
}
|
|
305
351
|
const instance = new EntityClass();
|
|
306
|
-
|
|
307
|
-
return instance;
|
|
352
|
+
return instance.fromItem(raw);
|
|
308
353
|
};
|
|
309
354
|
const idField = `__${link.propertyKey}ID`;
|
|
310
355
|
const idValue = this[idField];
|
|
@@ -394,15 +439,8 @@ class BaseEntity {
|
|
|
394
439
|
if (!result.Item) {
|
|
395
440
|
return null;
|
|
396
441
|
}
|
|
397
|
-
const fromDbModelMapper = this[symbols_1.FROM_DB_MODEL_METADATA];
|
|
398
|
-
let itemData = result.Item;
|
|
399
|
-
if (fromDbModelMapper) {
|
|
400
|
-
const mappedData = this[fromDbModelMapper](result.Item);
|
|
401
|
-
itemData = { ...result.Item, ...mappedData };
|
|
402
|
-
}
|
|
403
442
|
const instance = new this();
|
|
404
|
-
|
|
405
|
-
return instance;
|
|
443
|
+
return instance.fromItem(result.Item);
|
|
406
444
|
}
|
|
407
445
|
static async query(options) {
|
|
408
446
|
const metadata = this.__entityMetadata__;
|
|
@@ -467,16 +505,9 @@ class BaseEntity {
|
|
|
467
505
|
if (!result.Items || result.Items.length === 0) {
|
|
468
506
|
return [];
|
|
469
507
|
}
|
|
470
|
-
const fromDbModelMapper = this[symbols_1.FROM_DB_MODEL_METADATA];
|
|
471
508
|
return result.Items.map(item => {
|
|
472
|
-
let itemData = item;
|
|
473
|
-
if (fromDbModelMapper) {
|
|
474
|
-
const mappedData = this[fromDbModelMapper](item);
|
|
475
|
-
itemData = { ...item, ...mappedData };
|
|
476
|
-
}
|
|
477
509
|
const instance = new this();
|
|
478
|
-
|
|
479
|
-
return instance;
|
|
510
|
+
return instance.fromItem(item);
|
|
480
511
|
});
|
|
481
512
|
}
|
|
482
513
|
static async queryAll(options) {
|
package/dist/BaseEntity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseEntity.js","sourceRoot":"","sources":["../BaseEntity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseEntity.js","sourceRoot":"","sources":["../BaseEntity.ts"],"names":[],"mappings":"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"}
|