betterddb 0.6.1 → 0.6.4
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/.eslintrc.cjs +41 -0
- package/lib/betterddb.js +26 -18
- package/lib/builders/batch-get-builder.js +6 -2
- package/lib/builders/create-builder.js +14 -6
- package/lib/builders/delete-builder.js +8 -5
- package/lib/builders/get-builder.js +11 -6
- package/lib/builders/query-builder.js +38 -31
- package/lib/builders/scan-builder.js +17 -11
- package/lib/builders/update-builder.js +21 -16
- package/lib/operator.js +10 -10
- package/lib/{betterddb.d.ts → types/betterddb.d.ts} +10 -9
- package/lib/types/betterddb.d.ts.map +1 -0
- package/lib/{builders → types/builders}/batch-get-builder.d.ts +2 -1
- package/lib/types/builders/batch-get-builder.d.ts.map +1 -0
- package/lib/{builders → types/builders}/create-builder.d.ts +3 -2
- package/lib/types/builders/create-builder.d.ts.map +1 -0
- package/lib/{builders → types/builders}/delete-builder.d.ts +3 -2
- package/lib/types/builders/delete-builder.d.ts.map +1 -0
- package/lib/{builders → types/builders}/get-builder.d.ts +3 -2
- package/lib/types/builders/get-builder.d.ts.map +1 -0
- package/lib/{builders → types/builders}/query-builder.d.ts +4 -3
- package/lib/types/builders/query-builder.d.ts.map +1 -0
- package/lib/{builders → types/builders}/scan-builder.d.ts +4 -3
- package/lib/types/builders/scan-builder.d.ts.map +1 -0
- package/lib/{builders → types/builders}/update-builder.d.ts +3 -2
- package/lib/types/builders/update-builder.d.ts.map +1 -0
- package/lib/types/index.d.ts +2 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/operator.d.ts +3 -0
- package/lib/types/operator.d.ts.map +1 -0
- package/lib/types/{paginated-result.d.ts → types/paginated-result.d.ts} +1 -0
- package/lib/types/types/paginated-result.d.ts.map +1 -0
- package/package.json +15 -5
- package/prettier.config.js +6 -0
- package/src/betterddb.ts +39 -35
- package/src/builders/batch-get-builder.ts +11 -6
- package/src/builders/create-builder.ts +42 -27
- package/src/builders/delete-builder.ts +28 -17
- package/src/builders/get-builder.ts +26 -19
- package/src/builders/query-builder.ts +64 -44
- package/src/builders/scan-builder.ts +18 -14
- package/src/builders/update-builder.ts +49 -28
- package/src/index.ts +1 -1
- package/src/operator.ts +21 -21
- package/src/types/paginated-result.ts +1 -1
- package/tsconfig.json +25 -11
- package/lib/index.d.ts +0 -1
- package/lib/operator.d.ts +0 -2
package/src/operator.ts
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
export type Operator =
|
|
2
|
-
|
|
|
3
|
-
|
|
|
4
|
-
|
|
|
5
|
-
|
|
|
6
|
-
|
|
|
7
|
-
|
|
|
8
|
-
|
|
|
9
|
-
|
|
|
10
|
-
|
|
|
2
|
+
| "=="
|
|
3
|
+
| "!="
|
|
4
|
+
| "<"
|
|
5
|
+
| "<="
|
|
6
|
+
| ">"
|
|
7
|
+
| ">="
|
|
8
|
+
| "begins_with"
|
|
9
|
+
| "between"
|
|
10
|
+
| "contains";
|
|
11
11
|
|
|
12
12
|
export function getOperatorExpression(
|
|
13
13
|
operator: Operator,
|
|
14
14
|
nameKey: string,
|
|
15
15
|
valueKey: string,
|
|
16
|
-
secondValueKey?: string
|
|
16
|
+
secondValueKey?: string,
|
|
17
17
|
): string {
|
|
18
18
|
switch (operator) {
|
|
19
|
-
case
|
|
19
|
+
case "==":
|
|
20
20
|
return `${nameKey} = ${valueKey}`;
|
|
21
|
-
case
|
|
21
|
+
case "!=":
|
|
22
22
|
return `${nameKey} <> ${valueKey}`;
|
|
23
|
-
case
|
|
23
|
+
case "<":
|
|
24
24
|
return `${nameKey} < ${valueKey}`;
|
|
25
|
-
case
|
|
25
|
+
case "<=":
|
|
26
26
|
return `${nameKey} <= ${valueKey}`;
|
|
27
|
-
case
|
|
27
|
+
case ">":
|
|
28
28
|
return `${nameKey} > ${valueKey}`;
|
|
29
|
-
case
|
|
29
|
+
case ">=":
|
|
30
30
|
return `${nameKey} >= ${valueKey}`;
|
|
31
|
-
case
|
|
31
|
+
case "begins_with":
|
|
32
32
|
return `begins_with(${nameKey}, ${valueKey})`;
|
|
33
|
-
case
|
|
33
|
+
case "between":
|
|
34
34
|
if (!secondValueKey) {
|
|
35
35
|
throw new Error("The 'between' operator requires two value keys");
|
|
36
36
|
}
|
|
37
37
|
return `${nameKey} BETWEEN ${valueKey} AND ${secondValueKey}`;
|
|
38
|
-
case
|
|
38
|
+
case "contains":
|
|
39
39
|
return `contains(${nameKey}, ${valueKey})`;
|
|
40
40
|
default:
|
|
41
|
-
throw new Error(
|
|
41
|
+
throw new Error("Unsupported operator");
|
|
42
42
|
}
|
|
43
|
-
}
|
|
43
|
+
}
|
package/tsconfig.json
CHANGED
|
@@ -1,12 +1,26 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
"
|
|
11
|
-
|
|
12
|
-
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"lib": ["ES2022", "DOM"],
|
|
4
|
+
"target": "ES2022",
|
|
5
|
+
"module": "NodeNext",
|
|
6
|
+
"moduleResolution": "NodeNext",
|
|
7
|
+
"outDir": "./lib/",
|
|
8
|
+
"declarationDir": "./lib/types",
|
|
9
|
+
"strict": true,
|
|
10
|
+
"esModuleInterop": true,
|
|
11
|
+
"forceConsistentCasingInFileNames": true,
|
|
12
|
+
"skipLibCheck": true,
|
|
13
|
+
"checkJs": true,
|
|
14
|
+
"allowJs": true,
|
|
15
|
+
"declaration": true,
|
|
16
|
+
"declarationMap": true,
|
|
17
|
+
"allowSyntheticDefaultImports": true
|
|
18
|
+
},
|
|
19
|
+
/* Path Aliases */
|
|
20
|
+
"baseUrl": ".",
|
|
21
|
+
"paths": {
|
|
22
|
+
"~/*": ["./src/*"]
|
|
23
|
+
},
|
|
24
|
+
"files": ["./src/index.ts"],
|
|
25
|
+
"exclude": ["node_modules"]
|
|
26
|
+
}
|
package/lib/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './betterddb';
|
package/lib/operator.d.ts
DELETED