@onchaindb/sdk 0.4.5 → 1.0.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/.claude/settings.local.json +10 -2
- package/README.md +422 -355
- package/dist/batch.d.ts +1 -10
- package/dist/batch.d.ts.map +1 -1
- package/dist/batch.js +4 -26
- package/dist/batch.js.map +1 -1
- package/dist/client.d.ts +29 -43
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +198 -323
- package/dist/client.js.map +1 -1
- package/dist/database.d.ts +14 -131
- package/dist/database.d.ts.map +1 -1
- package/dist/database.js +35 -131
- package/dist/database.js.map +1 -1
- package/dist/index.d.ts +6 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -15
- package/dist/index.js.map +1 -1
- package/dist/query-sdk/ConditionBuilder.d.ts +3 -11
- package/dist/query-sdk/ConditionBuilder.d.ts.map +1 -1
- package/dist/query-sdk/ConditionBuilder.js +10 -48
- package/dist/query-sdk/ConditionBuilder.js.map +1 -1
- package/dist/query-sdk/NestedBuilders.d.ts +33 -30
- package/dist/query-sdk/NestedBuilders.d.ts.map +1 -1
- package/dist/query-sdk/NestedBuilders.js +46 -43
- package/dist/query-sdk/NestedBuilders.js.map +1 -1
- package/dist/query-sdk/QueryBuilder.d.ts +4 -2
- package/dist/query-sdk/QueryBuilder.d.ts.map +1 -1
- package/dist/query-sdk/QueryBuilder.js +47 -169
- package/dist/query-sdk/QueryBuilder.js.map +1 -1
- package/dist/query-sdk/QueryResult.d.ts +0 -38
- package/dist/query-sdk/QueryResult.d.ts.map +1 -1
- package/dist/query-sdk/QueryResult.js +1 -227
- package/dist/query-sdk/QueryResult.js.map +1 -1
- package/dist/query-sdk/index.d.ts +1 -1
- package/dist/query-sdk/index.d.ts.map +1 -1
- package/dist/query-sdk/index.js.map +1 -1
- package/dist/query-sdk/operators.d.ts +32 -28
- package/dist/query-sdk/operators.d.ts.map +1 -1
- package/dist/query-sdk/operators.js +45 -155
- package/dist/query-sdk/operators.js.map +1 -1
- package/dist/types.d.ts +153 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/jest.config.js +4 -0
- package/package.json +1 -1
- package/skills.md +0 -1
- package/src/client.ts +242 -745
- package/src/database.ts +70 -493
- package/src/index.ts +40 -193
- package/src/query-sdk/ConditionBuilder.ts +37 -89
- package/src/query-sdk/NestedBuilders.ts +90 -92
- package/src/query-sdk/QueryBuilder.ts +59 -218
- package/src/query-sdk/QueryResult.ts +4 -330
- package/src/query-sdk/README.md +214 -583
- package/src/query-sdk/index.ts +1 -1
- package/src/query-sdk/operators.ts +91 -200
- package/src/query-sdk/tests/FieldConditionBuilder.test.ts +70 -71
- package/src/query-sdk/tests/LogicalOperator.test.ts +43 -82
- package/src/query-sdk/tests/NestedBuilders.test.ts +229 -309
- package/src/query-sdk/tests/QueryBuilder.test.ts +5 -5
- package/src/query-sdk/tests/QueryResult.test.ts +41 -435
- package/src/query-sdk/tests/comprehensive.test.ts +4 -185
- package/src/tests/client-requests.test.ts +280 -0
- package/src/tests/client-validation.test.ts +80 -0
- package/src/types.ts +229 -8
- package/src/batch.ts +0 -257
- package/src/query-sdk/dist/ConditionBuilder.d.ts +0 -22
- package/src/query-sdk/dist/ConditionBuilder.js +0 -90
- package/src/query-sdk/dist/FieldConditionBuilder.d.ts +0 -1
- package/src/query-sdk/dist/FieldConditionBuilder.js +0 -6
- package/src/query-sdk/dist/NestedBuilders.d.ts +0 -43
- package/src/query-sdk/dist/NestedBuilders.js +0 -144
- package/src/query-sdk/dist/OnChainDB.d.ts +0 -19
- package/src/query-sdk/dist/OnChainDB.js +0 -123
- package/src/query-sdk/dist/QueryBuilder.d.ts +0 -70
- package/src/query-sdk/dist/QueryBuilder.js +0 -295
- package/src/query-sdk/dist/QueryResult.d.ts +0 -52
- package/src/query-sdk/dist/QueryResult.js +0 -293
- package/src/query-sdk/dist/SelectionBuilder.d.ts +0 -20
- package/src/query-sdk/dist/SelectionBuilder.js +0 -80
- package/src/query-sdk/dist/adapters/HttpClientAdapter.d.ts +0 -27
- package/src/query-sdk/dist/adapters/HttpClientAdapter.js +0 -170
- package/src/query-sdk/dist/index.d.ts +0 -36
- package/src/query-sdk/dist/index.js +0 -27
- package/src/query-sdk/dist/operators.d.ts +0 -56
- package/src/query-sdk/dist/operators.js +0 -289
- package/src/query-sdk/dist/tests/setup.d.ts +0 -15
- package/src/query-sdk/dist/tests/setup.js +0 -46
- package/src/query-sdk/jest.config.js +0 -25
- package/src/query-sdk/package.json +0 -46
- package/src/query-sdk/tests/aggregations.test.ts +0 -653
- package/src/query-sdk/tests/integration.test.ts +0 -608
- package/src/query-sdk/tests/operators.test.ts +0 -327
- package/src/query-sdk/tests/unit.test.ts +0 -794
- package/src/query-sdk/tsconfig.json +0 -26
- package/src/query-sdk/yarn.lock +0 -3092
|
@@ -1,85 +1,46 @@
|
|
|
1
1
|
import { FieldConditionBuilder, LogicalOperator } from '../index';
|
|
2
2
|
|
|
3
3
|
describe('LogicalOperator', () => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
{
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
const expected = {
|
|
49
|
-
or: [
|
|
50
|
-
{
|
|
51
|
-
status: {
|
|
52
|
-
is: 'active'
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
{
|
|
56
|
-
status: {
|
|
57
|
-
is: 'pending'
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
]
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
expect(composable).toEqual(expected);
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
test('should handle nested logical operations', () => {
|
|
67
|
-
const condition1 = new FieldConditionBuilder('name').equals('John');
|
|
68
|
-
const condition2 = new FieldConditionBuilder('age').greaterThan(25);
|
|
69
|
-
const condition3 = new FieldConditionBuilder('status').equals('active');
|
|
70
|
-
|
|
71
|
-
const nestedOp = LogicalOperator.Or([
|
|
72
|
-
LogicalOperator.And([
|
|
73
|
-
LogicalOperator.Condition(condition1),
|
|
74
|
-
LogicalOperator.Condition(condition2)
|
|
75
|
-
]),
|
|
76
|
-
LogicalOperator.Condition(condition3)
|
|
77
|
-
]);
|
|
78
|
-
|
|
79
|
-
const composable = nestedOp.toComposable();
|
|
80
|
-
|
|
81
|
-
expect(composable).toHaveProperty('or');
|
|
82
|
-
expect(composable.or).toHaveLength(2);
|
|
83
|
-
expect(composable.or[0]).toHaveProperty('and');
|
|
84
|
-
});
|
|
85
|
-
});
|
|
4
|
+
test('should combine conditions with AND operator', () => {
|
|
5
|
+
const andOp = LogicalOperator.And([
|
|
6
|
+
new FieldConditionBuilder('user.name').equals('John'),
|
|
7
|
+
new FieldConditionBuilder('user.age').greaterThan(25)
|
|
8
|
+
]);
|
|
9
|
+
|
|
10
|
+
expect(andOp.toComposable()).toEqual({
|
|
11
|
+
and: [
|
|
12
|
+
{ user: { name: { is: 'John' } } },
|
|
13
|
+
{ user: { age: { greaterThan: 25 } } }
|
|
14
|
+
]
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
test('should combine conditions with OR operator', () => {
|
|
19
|
+
const orOp = LogicalOperator.Or([
|
|
20
|
+
new FieldConditionBuilder('status').equals('active'),
|
|
21
|
+
new FieldConditionBuilder('status').equals('pending')
|
|
22
|
+
]);
|
|
23
|
+
|
|
24
|
+
expect(orOp.toComposable()).toEqual({
|
|
25
|
+
or: [
|
|
26
|
+
{ status: { is: 'active' } },
|
|
27
|
+
{ status: { is: 'pending' } }
|
|
28
|
+
]
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
test('should handle nested logical operations', () => {
|
|
33
|
+
const nestedOp = LogicalOperator.Or([
|
|
34
|
+
LogicalOperator.And([
|
|
35
|
+
new FieldConditionBuilder('name').equals('John'),
|
|
36
|
+
new FieldConditionBuilder('age').greaterThan(25)
|
|
37
|
+
]),
|
|
38
|
+
new FieldConditionBuilder('status').equals('active')
|
|
39
|
+
]);
|
|
40
|
+
|
|
41
|
+
const composable = nestedOp.toComposable();
|
|
42
|
+
expect(composable).toHaveProperty('or');
|
|
43
|
+
expect(composable.or).toHaveLength(2);
|
|
44
|
+
expect(composable.or[0]).toHaveProperty('and');
|
|
45
|
+
});
|
|
46
|
+
});
|