@infra-blocks/aws-dynamodb 0.18.1 → 0.19.0-alpha.1
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/lib/cjs/commands/expressions/index.js +6 -0
- package/lib/cjs/commands/expressions/index.js.map +1 -1
- package/lib/cjs/commands/expressions/update.d.ts +18 -1
- package/lib/cjs/commands/expressions/update.js +37 -11
- package/lib/cjs/commands/expressions/update.js.map +1 -1
- package/lib/esm/commands/expressions/index.js +6 -0
- package/lib/esm/commands/expressions/index.js.map +1 -1
- package/lib/esm/commands/expressions/update.d.ts +18 -1
- package/lib/esm/commands/expressions/update.js +34 -10
- package/lib/esm/commands/expressions/update.js.map +1 -1
- package/package.json +1 -1
|
@@ -18,4 +18,10 @@ __exportStar(require("./condition.js"), exports);
|
|
|
18
18
|
__exportStar(require("./key-condition.js"), exports);
|
|
19
19
|
__exportStar(require("./operands.js"), exports);
|
|
20
20
|
__exportStar(require("./update.js"), exports);
|
|
21
|
+
/*
|
|
22
|
+
TODO: In the expression interfaces, a slight QoL improvement would be to assume that
|
|
23
|
+
strings are attribute names by default, and other types are values by default. The user
|
|
24
|
+
always has the option to be explicit. For example, he could write:
|
|
25
|
+
`where(attribute("name")).eq(value(42))` or `where("name").eq(42)`.
|
|
26
|
+
*/
|
|
21
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/expressions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,qDAAmC;AACnC,gDAA8B;AAC9B,8CAA4B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/expressions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,qDAAmC;AACnC,gDAA8B;AAC9B,8CAA4B;AAE5B;;;;;GAKG"}
|
|
@@ -18,7 +18,7 @@ export interface IUpdateAction {
|
|
|
18
18
|
values: AttributeValues;
|
|
19
19
|
}): string;
|
|
20
20
|
}
|
|
21
|
-
export type UpdateAction = SetAction;
|
|
21
|
+
export type UpdateAction = SetAction | RemoveAction;
|
|
22
22
|
export type SetAction = Assignment | PlusAssignment | MinusAssignment;
|
|
23
23
|
export type SetOperand = Operand | IfNotExistsOperand;
|
|
24
24
|
declare class Assignment implements IUpdateAction {
|
|
@@ -65,6 +65,23 @@ declare class AssignmentBuilder {
|
|
|
65
65
|
to(operand: SetOperand): Assignment;
|
|
66
66
|
}
|
|
67
67
|
export declare function assign(path: AttributeOperand): AssignmentBuilder;
|
|
68
|
+
export declare class RemoveAction implements IUpdateAction {
|
|
69
|
+
private readonly path;
|
|
70
|
+
private constructor();
|
|
71
|
+
stringify(params: {
|
|
72
|
+
names: AttributeNames;
|
|
73
|
+
values: AttributeValues;
|
|
74
|
+
}): string;
|
|
75
|
+
static from(path: AttributeOperand): RemoveAction;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Returns an action that will remove the specific attribute at the provided path.
|
|
79
|
+
*
|
|
80
|
+
* @param path - The path of the attribute to remove.
|
|
81
|
+
*
|
|
82
|
+
* @returns A {@link RemoveAction} corresponding to the path provided.
|
|
83
|
+
*/
|
|
84
|
+
export declare function remove(path: AttributeOperand): RemoveAction;
|
|
68
85
|
export declare class IfNotExistsOperand implements IOperand {
|
|
69
86
|
private readonly path;
|
|
70
87
|
private readonly defaultValue;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IfNotExistsOperand = exports.MinusAssignment = exports.PlusAssignment = exports.UpdateExpression = void 0;
|
|
3
|
+
exports.IfNotExistsOperand = exports.RemoveAction = exports.MinusAssignment = exports.PlusAssignment = exports.UpdateExpression = void 0;
|
|
4
4
|
exports.assign = assign;
|
|
5
|
+
exports.remove = remove;
|
|
5
6
|
exports.ifNotExists = ifNotExists;
|
|
6
7
|
class UpdateExpression {
|
|
7
8
|
clauses;
|
|
@@ -16,6 +17,11 @@ class UpdateExpression {
|
|
|
16
17
|
.map((action) => action.stringify({ names, values }))
|
|
17
18
|
.join(",")}`);
|
|
18
19
|
}
|
|
20
|
+
if (this.clauses.remove != null) {
|
|
21
|
+
parts.push(`REMOVE ${this.clauses.remove
|
|
22
|
+
.map((action) => action.stringify({ names, values }))
|
|
23
|
+
.join(",")}`);
|
|
24
|
+
}
|
|
19
25
|
return parts.join("\n");
|
|
20
26
|
}
|
|
21
27
|
static from(params) {
|
|
@@ -24,12 +30,12 @@ class UpdateExpression {
|
|
|
24
30
|
if (action instanceof Assignment ||
|
|
25
31
|
action instanceof PlusAssignment ||
|
|
26
32
|
action instanceof MinusAssignment) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
+
clauses.set ??= [];
|
|
34
|
+
clauses.set.push(action);
|
|
35
|
+
}
|
|
36
|
+
else if (action instanceof RemoveAction) {
|
|
37
|
+
clauses.remove ??= [];
|
|
38
|
+
clauses.remove.push(action);
|
|
33
39
|
}
|
|
34
40
|
else {
|
|
35
41
|
throw new Error("unknown action type in update expression");
|
|
@@ -39,10 +45,6 @@ class UpdateExpression {
|
|
|
39
45
|
}
|
|
40
46
|
}
|
|
41
47
|
exports.UpdateExpression = UpdateExpression;
|
|
42
|
-
// Note: incrementation works with attribute names and values no prob.
|
|
43
|
-
// There can only be one "+" sign.
|
|
44
|
-
// Nothing forces the operation to happen on the same attribute. For example: SET x = y + 2 is valid and should
|
|
45
|
-
// be supported. Increment should only be a fast track there.
|
|
46
48
|
class Assignment {
|
|
47
49
|
path;
|
|
48
50
|
operand;
|
|
@@ -112,6 +114,30 @@ class AssignmentBuilder {
|
|
|
112
114
|
function assign(path) {
|
|
113
115
|
return new AssignmentBuilder(path);
|
|
114
116
|
}
|
|
117
|
+
class RemoveAction {
|
|
118
|
+
path;
|
|
119
|
+
constructor(path) {
|
|
120
|
+
this.path = path;
|
|
121
|
+
}
|
|
122
|
+
stringify(params) {
|
|
123
|
+
const { names, values } = params;
|
|
124
|
+
return this.path.substitute({ names, values });
|
|
125
|
+
}
|
|
126
|
+
static from(path) {
|
|
127
|
+
return new RemoveAction(path);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
exports.RemoveAction = RemoveAction;
|
|
131
|
+
/**
|
|
132
|
+
* Returns an action that will remove the specific attribute at the provided path.
|
|
133
|
+
*
|
|
134
|
+
* @param path - The path of the attribute to remove.
|
|
135
|
+
*
|
|
136
|
+
* @returns A {@link RemoveAction} corresponding to the path provided.
|
|
137
|
+
*/
|
|
138
|
+
function remove(path) {
|
|
139
|
+
return RemoveAction.from(path);
|
|
140
|
+
}
|
|
115
141
|
class IfNotExistsOperand {
|
|
116
142
|
path;
|
|
117
143
|
defaultValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/expressions/update.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/expressions/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,4 +2,10 @@ export * from "./condition.js";
|
|
|
2
2
|
export * from "./key-condition.js";
|
|
3
3
|
export * from "./operands.js";
|
|
4
4
|
export * from "./update.js";
|
|
5
|
+
/*
|
|
6
|
+
TODO: In the expression interfaces, a slight QoL improvement would be to assume that
|
|
7
|
+
strings are attribute names by default, and other types are values by default. The user
|
|
8
|
+
always has the option to be explicit. For example, he could write:
|
|
9
|
+
`where(attribute("name")).eq(value(42))` or `where("name").eq(42)`.
|
|
10
|
+
*/
|
|
5
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/expressions/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/expressions/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAE5B;;;;;GAKG"}
|
|
@@ -18,7 +18,7 @@ export interface IUpdateAction {
|
|
|
18
18
|
values: AttributeValues;
|
|
19
19
|
}): string;
|
|
20
20
|
}
|
|
21
|
-
export type UpdateAction = SetAction;
|
|
21
|
+
export type UpdateAction = SetAction | RemoveAction;
|
|
22
22
|
export type SetAction = Assignment | PlusAssignment | MinusAssignment;
|
|
23
23
|
export type SetOperand = Operand | IfNotExistsOperand;
|
|
24
24
|
declare class Assignment implements IUpdateAction {
|
|
@@ -65,6 +65,23 @@ declare class AssignmentBuilder {
|
|
|
65
65
|
to(operand: SetOperand): Assignment;
|
|
66
66
|
}
|
|
67
67
|
export declare function assign(path: AttributeOperand): AssignmentBuilder;
|
|
68
|
+
export declare class RemoveAction implements IUpdateAction {
|
|
69
|
+
private readonly path;
|
|
70
|
+
private constructor();
|
|
71
|
+
stringify(params: {
|
|
72
|
+
names: AttributeNames;
|
|
73
|
+
values: AttributeValues;
|
|
74
|
+
}): string;
|
|
75
|
+
static from(path: AttributeOperand): RemoveAction;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Returns an action that will remove the specific attribute at the provided path.
|
|
79
|
+
*
|
|
80
|
+
* @param path - The path of the attribute to remove.
|
|
81
|
+
*
|
|
82
|
+
* @returns A {@link RemoveAction} corresponding to the path provided.
|
|
83
|
+
*/
|
|
84
|
+
export declare function remove(path: AttributeOperand): RemoveAction;
|
|
68
85
|
export declare class IfNotExistsOperand implements IOperand {
|
|
69
86
|
private readonly path;
|
|
70
87
|
private readonly defaultValue;
|
|
@@ -11,6 +11,11 @@ export class UpdateExpression {
|
|
|
11
11
|
.map((action) => action.stringify({ names, values }))
|
|
12
12
|
.join(",")}`);
|
|
13
13
|
}
|
|
14
|
+
if (this.clauses.remove != null) {
|
|
15
|
+
parts.push(`REMOVE ${this.clauses.remove
|
|
16
|
+
.map((action) => action.stringify({ names, values }))
|
|
17
|
+
.join(",")}`);
|
|
18
|
+
}
|
|
14
19
|
return parts.join("\n");
|
|
15
20
|
}
|
|
16
21
|
static from(params) {
|
|
@@ -19,12 +24,12 @@ export class UpdateExpression {
|
|
|
19
24
|
if (action instanceof Assignment ||
|
|
20
25
|
action instanceof PlusAssignment ||
|
|
21
26
|
action instanceof MinusAssignment) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
clauses.set ??= [];
|
|
28
|
+
clauses.set.push(action);
|
|
29
|
+
}
|
|
30
|
+
else if (action instanceof RemoveAction) {
|
|
31
|
+
clauses.remove ??= [];
|
|
32
|
+
clauses.remove.push(action);
|
|
28
33
|
}
|
|
29
34
|
else {
|
|
30
35
|
throw new Error("unknown action type in update expression");
|
|
@@ -33,10 +38,6 @@ export class UpdateExpression {
|
|
|
33
38
|
return new UpdateExpression(clauses);
|
|
34
39
|
}
|
|
35
40
|
}
|
|
36
|
-
// Note: incrementation works with attribute names and values no prob.
|
|
37
|
-
// There can only be one "+" sign.
|
|
38
|
-
// Nothing forces the operation to happen on the same attribute. For example: SET x = y + 2 is valid and should
|
|
39
|
-
// be supported. Increment should only be a fast track there.
|
|
40
41
|
class Assignment {
|
|
41
42
|
path;
|
|
42
43
|
operand;
|
|
@@ -104,6 +105,29 @@ class AssignmentBuilder {
|
|
|
104
105
|
export function assign(path) {
|
|
105
106
|
return new AssignmentBuilder(path);
|
|
106
107
|
}
|
|
108
|
+
export class RemoveAction {
|
|
109
|
+
path;
|
|
110
|
+
constructor(path) {
|
|
111
|
+
this.path = path;
|
|
112
|
+
}
|
|
113
|
+
stringify(params) {
|
|
114
|
+
const { names, values } = params;
|
|
115
|
+
return this.path.substitute({ names, values });
|
|
116
|
+
}
|
|
117
|
+
static from(path) {
|
|
118
|
+
return new RemoveAction(path);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Returns an action that will remove the specific attribute at the provided path.
|
|
123
|
+
*
|
|
124
|
+
* @param path - The path of the attribute to remove.
|
|
125
|
+
*
|
|
126
|
+
* @returns A {@link RemoveAction} corresponding to the path provided.
|
|
127
|
+
*/
|
|
128
|
+
export function remove(path) {
|
|
129
|
+
return RemoveAction.from(path);
|
|
130
|
+
}
|
|
107
131
|
export class IfNotExistsOperand {
|
|
108
132
|
path;
|
|
109
133
|
defaultValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/expressions/update.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/expressions/update.ts"],"names":[],"mappings":"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"}
|