@effect-app/infra 0.31.0 → 0.32.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/CHANGELOG.md +12 -0
- package/_cjs/filter.cjs +121 -3
- package/_cjs/filter.cjs.map +1 -1
- package/_cjs/services/Store/Cosmos.cjs +5 -2
- package/_cjs/services/Store/Cosmos.cjs.map +1 -1
- package/_cjs/services/Store/service.cjs +3 -0
- package/_cjs/services/Store/service.cjs.map +1 -1
- package/_cjs/services/Store/utils.cjs +13 -1
- package/_cjs/services/Store/utils.cjs.map +1 -1
- package/_src/filter.ts +123 -4
- package/_src/services/Store/Cosmos.ts +17 -1
- package/_src/services/Store/service.ts +13 -6
- package/_src/services/Store/utils.ts +33 -1
- package/dist/filter.d.ts +68 -2
- package/dist/filter.d.ts.map +1 -1
- package/dist/filter.js +88 -2
- package/dist/services/Repository.d.ts +14 -14
- package/dist/services/Store/Cosmos.d.ts +3 -3
- package/dist/services/Store/Cosmos.d.ts.map +1 -1
- package/dist/services/Store/Cosmos.js +24 -9
- package/dist/services/Store/service.d.ts +10 -1
- package/dist/services/Store/service.d.ts.map +1 -1
- package/dist/services/Store/service.js +4 -1
- package/dist/services/Store/utils.d.ts.map +1 -1
- package/dist/services/Store/utils.js +32 -4
- package/package.json +2 -2
|
@@ -496,6 +496,14 @@ export function buildWhereCosmosQuery(
|
|
|
496
496
|
? `ARRAY_CONTAINS(@v${i}, ${x.f}.${x.key})`
|
|
497
497
|
: x.t === "not-in"
|
|
498
498
|
? `(NOT ARRAY_CONTAINS(@v${i}, ${x.f}.${x.key}))`
|
|
499
|
+
: x.t === "lt"
|
|
500
|
+
? `${lowerIfNeeded(`${x.f}.${x.key}`, x.value)} < ${lowerIfNeeded(`@v${i}`, x.value)}`
|
|
501
|
+
: x.t === "lte"
|
|
502
|
+
? `${lowerIfNeeded(`${x.f}.${x.key}`, x.value)} <= ${lowerIfNeeded(`@v${i}`, x.value)}`
|
|
503
|
+
: x.t === "gt"
|
|
504
|
+
? `${lowerIfNeeded(`${x.f}.${x.key}`, x.value)} > ${lowerIfNeeded(`@v${i}`, x.value)}`
|
|
505
|
+
: x.t === "gte"
|
|
506
|
+
? `${lowerIfNeeded(`${x.f}.${x.key}`, x.value)} >= ${lowerIfNeeded(`@v${i}`, x.value)}`
|
|
499
507
|
: x.t === "not-eq"
|
|
500
508
|
? x.value === null
|
|
501
509
|
? `IS_NULL(${x.f}.${x.key}) = false`
|
|
@@ -512,12 +520,20 @@ export function buildWhereCosmosQuery(
|
|
|
512
520
|
...filter.where
|
|
513
521
|
.map((x, i) => ({
|
|
514
522
|
name: `@v${i}`,
|
|
515
|
-
value: x.value
|
|
523
|
+
value: isArray(x.value)
|
|
524
|
+
? x.value.map(_ => _ instanceof Date ? _.toISOString() : _)
|
|
525
|
+
: x.value instanceof Date
|
|
526
|
+
? x.value.toISOString()
|
|
527
|
+
: x.value
|
|
516
528
|
}))
|
|
517
529
|
]
|
|
518
530
|
}
|
|
519
531
|
}
|
|
520
532
|
|
|
533
|
+
function isArray(t: SupportedValues | readonly SupportedValues[]): t is readonly SupportedValues[] {
|
|
534
|
+
return Array.isArray(t)
|
|
535
|
+
}
|
|
536
|
+
|
|
521
537
|
const lowerIfNeeded = (key: unknown, value: unknown) => typeof value === "string" ? `LOWER(${key})` : `${key}`
|
|
522
538
|
|
|
523
539
|
export function buildCosmosQuery<PM>(
|
|
@@ -12,14 +12,18 @@ export type StoreConfig<E> = {
|
|
|
12
12
|
allowNamespace?: (namespace: string) => boolean
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
export type SupportedValues = string | boolean | number | null
|
|
15
|
+
export type SupportedValues = string | boolean | number | Date | null
|
|
16
|
+
export type SupportedValues2 = string | boolean | number | Date
|
|
16
17
|
|
|
17
18
|
// default is eq
|
|
18
|
-
export type Where =
|
|
19
|
-
key: string
|
|
20
|
-
t: "
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
export type Where =
|
|
20
|
+
| { key: string; t?: "eq" | "not-eq"; value: SupportedValues }
|
|
21
|
+
| { key: string; t: "gt" | "lt" | "gte" | "lte"; value: SupportedValues2 }
|
|
22
|
+
| {
|
|
23
|
+
key: string
|
|
24
|
+
t: "in" | "not-in"
|
|
25
|
+
value: readonly (SupportedValues)[]
|
|
26
|
+
}
|
|
23
27
|
|
|
24
28
|
// default is where
|
|
25
29
|
export type StoreWhereFilter = {
|
|
@@ -87,6 +91,9 @@ export abstract class StoreMaker extends TagClass<StoreMaker>() {
|
|
|
87
91
|
) => Effect<never, never, Store<E, Id>>
|
|
88
92
|
}
|
|
89
93
|
|
|
94
|
+
/**
|
|
95
|
+
* @tsplus static ContextMap.Ops Make
|
|
96
|
+
*/
|
|
90
97
|
export const makeMap = Effect.sync((): ContextMap => {
|
|
91
98
|
const etags = new Map<string, string>()
|
|
92
99
|
const getEtag = (id: string) => etags.get(id)
|
|
@@ -2,7 +2,7 @@ import { get } from "@effect-app/prelude/utils"
|
|
|
2
2
|
|
|
3
3
|
import { OptimisticConcurrencyException } from "../../errors.js"
|
|
4
4
|
|
|
5
|
-
import type { Filter, FilterJoinSelect, PersistenceModelType } from "./service.js"
|
|
5
|
+
import type { Filter, FilterJoinSelect, PersistenceModelType, SupportedValues2 } from "./service.js"
|
|
6
6
|
|
|
7
7
|
import objectHash from "object-hash"
|
|
8
8
|
|
|
@@ -62,6 +62,14 @@ export function codeFilter<E extends { id: string }, NE extends E>(filter: Filte
|
|
|
62
62
|
? p.value.includes(get(x, p.key))
|
|
63
63
|
: p.t === "not-in"
|
|
64
64
|
? !p.value.includes(get(x, p.key))
|
|
65
|
+
: p.t === "lt"
|
|
66
|
+
? ltCaseInsensitive(get(x, p.key), p.value)
|
|
67
|
+
: p.t === "lte"
|
|
68
|
+
? lteCaseInsensitive(get(x, p.key), p.value)
|
|
69
|
+
: p.t === "gt"
|
|
70
|
+
? gtCaseInsensitive(get(x, p.key), p.value)
|
|
71
|
+
: p.t === "gte"
|
|
72
|
+
? gteCaseInsensitive(get(x, p.key), p.value)
|
|
65
73
|
: p.t === "not-eq"
|
|
66
74
|
? !compareCaseInsensitive(get(x, p.key), p.value)
|
|
67
75
|
: compareCaseInsensitive(get(x, p.key), p.value)
|
|
@@ -124,3 +132,27 @@ function compareCaseInsensitive(valA: unknown, valB: unknown) {
|
|
|
124
132
|
? valA.toLowerCase() === valB.toLowerCase()
|
|
125
133
|
: valA === valB
|
|
126
134
|
}
|
|
135
|
+
|
|
136
|
+
function ltCaseInsensitive(valA: SupportedValues2, valB: SupportedValues2) {
|
|
137
|
+
return typeof valB === "string" && typeof valA === "string"
|
|
138
|
+
? valA.toLowerCase() < valB.toLowerCase()
|
|
139
|
+
: valA < valB
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
function lteCaseInsensitive(valA: SupportedValues2, valB: SupportedValues2) {
|
|
143
|
+
return typeof valB === "string" && typeof valA === "string"
|
|
144
|
+
? valA.toLowerCase() <= valB.toLowerCase()
|
|
145
|
+
: valA <= valB
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
function gtCaseInsensitive(valA: SupportedValues2, valB: SupportedValues2) {
|
|
149
|
+
return typeof valB === "string" && typeof valA === "string"
|
|
150
|
+
? valA.toLowerCase() > valB.toLowerCase()
|
|
151
|
+
: valA > valB
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
function gteCaseInsensitive(valA: SupportedValues2, valB: SupportedValues2) {
|
|
155
|
+
return typeof valB === "string" && typeof valA === "string"
|
|
156
|
+
? valA.toLowerCase() >= valB.toLowerCase()
|
|
157
|
+
: valA >= valB
|
|
158
|
+
}
|
package/dist/filter.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { FieldValues } from "./filter/types/fields.js";
|
|
2
2
|
import type { FieldPath } from "./filter/types/path/eager.js";
|
|
3
|
+
import type { SupportedValues } from "./services/Store.js";
|
|
3
4
|
/**
|
|
4
5
|
* the function defaults to "eq", but has additional properties for notEq, in and notIn
|
|
5
6
|
*/
|
|
@@ -29,18 +30,37 @@ declare function makeHelpers_<TFieldValues extends FieldValues>(): {
|
|
|
29
30
|
value: V_3;
|
|
30
31
|
t: "not-eq";
|
|
31
32
|
};
|
|
33
|
+
gt<TFieldName_4 extends FieldPath<TFieldValues>, V_4 extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName_4>>(this: void, path: TFieldName_4, value: V_4): {
|
|
34
|
+
key: TFieldName_4;
|
|
35
|
+
value: V_4;
|
|
36
|
+
t: "gt";
|
|
37
|
+
};
|
|
38
|
+
gte<TFieldName_5 extends FieldPath<TFieldValues>, V_5 extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName_5>>(this: void, path: TFieldName_5, value: V_5): {
|
|
39
|
+
key: TFieldName_5;
|
|
40
|
+
value: V_5;
|
|
41
|
+
t: "gte";
|
|
42
|
+
};
|
|
43
|
+
lt<TFieldName_6 extends FieldPath<TFieldValues>, V_6 extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName_6>>(this: void, path: TFieldName_6, value: V_6): {
|
|
44
|
+
key: TFieldName_6;
|
|
45
|
+
value: V_6;
|
|
46
|
+
t: "lt";
|
|
47
|
+
};
|
|
48
|
+
lte<TFieldName_7 extends FieldPath<TFieldValues>, V_7 extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName_7>>(this: void, path: TFieldName_7, value: V_7): {
|
|
49
|
+
key: TFieldName_7;
|
|
50
|
+
value: V_7;
|
|
51
|
+
t: "lte";
|
|
52
|
+
};
|
|
32
53
|
};
|
|
33
54
|
declare function makeWhereFilter_<TFieldValues extends FieldValues>(): (<TFieldName extends import("./filter/types/path/eager.js").Path<TFieldValues>, V extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName>>(this: void, path: TFieldName, value: V) => {
|
|
34
55
|
key: TFieldName;
|
|
35
56
|
value: V;
|
|
36
57
|
t: "eq";
|
|
37
58
|
}) & WhereHelpers<TFieldValues>;
|
|
38
|
-
export type WhereValue<T extends "eq" | "not-eq" | "starts-with" | "ends-with" | "includes" | "contains" | "not-contains", A, // extends SupportedValues,
|
|
59
|
+
export type WhereValue<T extends "eq" | "not-eq" | "lt" | "gt" | "lte" | "gte" | "starts-with" | "ends-with" | "includes" | "contains" | "not-contains", A, // extends SupportedValues,
|
|
39
60
|
V extends A = A> = {
|
|
40
61
|
t: T;
|
|
41
62
|
v: V;
|
|
42
63
|
};
|
|
43
|
-
type SupportedValues = string | boolean | number | null;
|
|
44
64
|
export type WhereIn<T extends "in" | "not-in", V, Values extends readonly V[] = readonly V[]> = {
|
|
45
65
|
t: T;
|
|
46
66
|
v: Values;
|
|
@@ -71,6 +91,7 @@ export declare function $in<A extends SupportedValues, Values extends readonly A
|
|
|
71
91
|
export declare function $notIn<A extends SupportedValues, Values extends readonly A[]>(_: A, ...v: Values): WhereIn<"not-in", A, Values>;
|
|
72
92
|
/**
|
|
73
93
|
* @tsplus fluent string $is
|
|
94
|
+
* @tsplus fluent Date $is
|
|
74
95
|
* @tsplus fluent boolean $is
|
|
75
96
|
* @tsplus fluent number $is
|
|
76
97
|
* @tsplus fluent Object $is
|
|
@@ -79,14 +100,55 @@ export declare function $notIn<A extends SupportedValues, Values extends readonl
|
|
|
79
100
|
export declare function $is<A, V extends A>(_: A, v: V): WhereValue<"eq", A, V>;
|
|
80
101
|
/**
|
|
81
102
|
* @tsplus fluent string $isnt
|
|
103
|
+
* @tsplus fluent Date $isnt
|
|
82
104
|
* @tsplus fluent boolean $isnt
|
|
83
105
|
* @tsplus fluent number $isnt
|
|
84
106
|
* @tsplus fluent Object $isnt
|
|
85
107
|
* @tsplus location "@effect-app/infra/filter"
|
|
86
108
|
*/
|
|
87
109
|
export declare function $isnt<A, V extends A>(_: A, v: V): WhereValue<"not-eq", A, V>;
|
|
110
|
+
/**
|
|
111
|
+
* @tsplus fluent string $gt
|
|
112
|
+
* @tsplus fluent Date $gt
|
|
113
|
+
* @tsplus fluent boolean $gt
|
|
114
|
+
* @tsplus fluent number $gt
|
|
115
|
+
* @tsplus fluent Object $gt
|
|
116
|
+
* @tsplus location "@effect-app/infra/filter"
|
|
117
|
+
*/
|
|
118
|
+
export declare function $gt<A, V extends A>(_: A, v: V): WhereValue<"gt", A, V>;
|
|
119
|
+
/**
|
|
120
|
+
* @tsplus fluent string $gte
|
|
121
|
+
* @tsplus fluent Date $gte
|
|
122
|
+
* @tsplus fluent boolean $gte
|
|
123
|
+
* @tsplus fluent number $gte
|
|
124
|
+
* @tsplus fluent Object $gte
|
|
125
|
+
* @tsplus location "@effect-app/infra/filter"
|
|
126
|
+
*/
|
|
127
|
+
export declare function $gte<A, V extends A>(_: A, v: V): WhereValue<"gte", A, V>;
|
|
128
|
+
/**
|
|
129
|
+
* @tsplus fluent string $lt
|
|
130
|
+
* @tsplus fluent Date $lt
|
|
131
|
+
* @tsplus fluent boolean $lt
|
|
132
|
+
* @tsplus fluent number $lt
|
|
133
|
+
* @tsplus fluent Object $lt
|
|
134
|
+
* @tsplus location "@effect-app/infra/filter"
|
|
135
|
+
*/
|
|
136
|
+
export declare function $lt<A, V extends A>(_: A, v: V): WhereValue<"lt", A, V>;
|
|
137
|
+
/**
|
|
138
|
+
* @tsplus fluent string $lte
|
|
139
|
+
* @tsplus fluent Date $lte
|
|
140
|
+
* @tsplus fluent boolean $lte
|
|
141
|
+
* @tsplus fluent number $lte
|
|
142
|
+
* @tsplus fluent Object $lte
|
|
143
|
+
* @tsplus location "@effect-app/infra/filter"
|
|
144
|
+
*/
|
|
145
|
+
export declare function $lte<A, V extends A>(_: A, v: V): WhereValue<"lte", A, V>;
|
|
88
146
|
declare function $is__<V extends A, A>(v: V): (_: A) => WhereValue<"eq", A, V>;
|
|
89
147
|
declare function $isnt__<V extends A, A>(v: V): (_: A) => WhereValue<"not-eq", A, V>;
|
|
148
|
+
declare function $lt__<V extends A, A>(v: V): (_: A) => WhereValue<"lt", A, V>;
|
|
149
|
+
declare function $lte__<V extends A, A>(v: V): (_: A) => WhereValue<"lte", A, V>;
|
|
150
|
+
declare function $gt__<V extends A, A>(v: V): (_: A) => WhereValue<"gt", A, V>;
|
|
151
|
+
declare function $gte__<V extends A, A>(v: V): (_: A) => WhereValue<"gte", A, V>;
|
|
90
152
|
declare function $in__<A extends SupportedValues, Values extends readonly A[]>(...v: Values): (_: A) => WhereIn<"in", A, [...Values]>;
|
|
91
153
|
declare function $notIn__<A extends SupportedValues, Values extends readonly A[]>(...v: Values): (_: A) => WhereIn<"not-in", A, [...Values]>;
|
|
92
154
|
export declare const Filters: {
|
|
@@ -94,6 +156,10 @@ export declare const Filters: {
|
|
|
94
156
|
$isnt: typeof $isnt__;
|
|
95
157
|
$in: typeof $in__;
|
|
96
158
|
$notIn: typeof $notIn__;
|
|
159
|
+
$gt: typeof $gt__;
|
|
160
|
+
$gte: typeof $gte__;
|
|
161
|
+
$lt: typeof $lt__;
|
|
162
|
+
$lte: typeof $lte__;
|
|
97
163
|
};
|
|
98
164
|
/**
|
|
99
165
|
* @tsplus fluent string $startsWith
|
package/dist/filter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../_src/filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAkB,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../_src/filter.ts"],"names":[],"mappings":"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"}
|
package/dist/filter.js
CHANGED
|
@@ -2,6 +2,10 @@ export const $in = $in_1;
|
|
|
2
2
|
export const $notIn = $notIn_1;
|
|
3
3
|
export const $is = $is_1;
|
|
4
4
|
export const $isnt = $isnt_1;
|
|
5
|
+
export const $gt = $gt_1;
|
|
6
|
+
export const $gte = $gte_1;
|
|
7
|
+
export const $lt = $lt_1;
|
|
8
|
+
export const $lte = $lte_1;
|
|
5
9
|
export function makeWhereFilter() {
|
|
6
10
|
const f = makeWhereFilter_();
|
|
7
11
|
return f;
|
|
@@ -23,6 +27,18 @@ function makeHelpers_() {
|
|
|
23
27
|
},
|
|
24
28
|
notEq(path, value) {
|
|
25
29
|
return { key: path, value, t: "not-eq" };
|
|
30
|
+
},
|
|
31
|
+
gt(path, value) {
|
|
32
|
+
return { key: path, value, t: "gt" };
|
|
33
|
+
},
|
|
34
|
+
gte(path, value) {
|
|
35
|
+
return { key: path, value, t: "gte" };
|
|
36
|
+
},
|
|
37
|
+
lt(path, value) {
|
|
38
|
+
return { key: path, value, t: "lt" };
|
|
39
|
+
},
|
|
40
|
+
lte(path, value) {
|
|
41
|
+
return { key: path, value, t: "lte" };
|
|
26
42
|
}
|
|
27
43
|
};
|
|
28
44
|
}
|
|
@@ -61,6 +77,7 @@ function $notIn_1(_, ...v) {
|
|
|
61
77
|
}
|
|
62
78
|
/**
|
|
63
79
|
* @tsplus fluent string $is
|
|
80
|
+
* @tsplus fluent Date $is
|
|
64
81
|
* @tsplus fluent boolean $is
|
|
65
82
|
* @tsplus fluent number $is
|
|
66
83
|
* @tsplus fluent Object $is
|
|
@@ -70,6 +87,7 @@ function $is_1(_, v) {
|
|
|
70
87
|
}
|
|
71
88
|
/**
|
|
72
89
|
* @tsplus fluent string $isnt
|
|
90
|
+
* @tsplus fluent Date $isnt
|
|
73
91
|
* @tsplus fluent boolean $isnt
|
|
74
92
|
* @tsplus fluent number $isnt
|
|
75
93
|
* @tsplus fluent Object $isnt
|
|
@@ -77,12 +95,64 @@ function $is_1(_, v) {
|
|
|
77
95
|
function $isnt_1(_, v) {
|
|
78
96
|
return $$isnt(v);
|
|
79
97
|
}
|
|
98
|
+
/**
|
|
99
|
+
* @tsplus fluent string $gt
|
|
100
|
+
* @tsplus fluent Date $gt
|
|
101
|
+
* @tsplus fluent boolean $gt
|
|
102
|
+
* @tsplus fluent number $gt
|
|
103
|
+
* @tsplus fluent Object $gt
|
|
104
|
+
*/
|
|
105
|
+
function $gt_1(_, v) {
|
|
106
|
+
return $$gt(v);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* @tsplus fluent string $gte
|
|
110
|
+
* @tsplus fluent Date $gte
|
|
111
|
+
* @tsplus fluent boolean $gte
|
|
112
|
+
* @tsplus fluent number $gte
|
|
113
|
+
* @tsplus fluent Object $gte
|
|
114
|
+
*/
|
|
115
|
+
function $gte_1(_, v) {
|
|
116
|
+
return $$gte(v);
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* @tsplus fluent string $lt
|
|
120
|
+
* @tsplus fluent Date $lt
|
|
121
|
+
* @tsplus fluent boolean $lt
|
|
122
|
+
* @tsplus fluent number $lt
|
|
123
|
+
* @tsplus fluent Object $lt
|
|
124
|
+
*/
|
|
125
|
+
function $lt_1(_, v) {
|
|
126
|
+
return $$lt(v);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* @tsplus fluent string $lte
|
|
130
|
+
* @tsplus fluent Date $lte
|
|
131
|
+
* @tsplus fluent boolean $lte
|
|
132
|
+
* @tsplus fluent number $lte
|
|
133
|
+
* @tsplus fluent Object $lte
|
|
134
|
+
*/
|
|
135
|
+
function $lte_1(_, v) {
|
|
136
|
+
return $$lte(v);
|
|
137
|
+
}
|
|
80
138
|
function $is__(v) {
|
|
81
139
|
return (_) => $is_1(_, v);
|
|
82
140
|
}
|
|
83
141
|
function $isnt__(v) {
|
|
84
142
|
return (_) => $isnt_1(_, v);
|
|
85
143
|
}
|
|
144
|
+
function $lt__(v) {
|
|
145
|
+
return (_) => $lt_1(_, v);
|
|
146
|
+
}
|
|
147
|
+
function $lte__(v) {
|
|
148
|
+
return (_) => $lte_1(_, v);
|
|
149
|
+
}
|
|
150
|
+
function $gt__(v) {
|
|
151
|
+
return (_) => $gt_1(_, v);
|
|
152
|
+
}
|
|
153
|
+
function $gte__(v) {
|
|
154
|
+
return (_) => $gte_1(_, v);
|
|
155
|
+
}
|
|
86
156
|
function $in__(...v) {
|
|
87
157
|
return (_) => $in_1(_, ...v);
|
|
88
158
|
}
|
|
@@ -103,7 +173,11 @@ export const Filters = {
|
|
|
103
173
|
$is: $is__,
|
|
104
174
|
$isnt: $isnt__,
|
|
105
175
|
$in: $in__,
|
|
106
|
-
$notIn: $notIn__
|
|
176
|
+
$notIn: $notIn__,
|
|
177
|
+
$gt: $gt__,
|
|
178
|
+
$gte: $gte__,
|
|
179
|
+
$lt: $lt__,
|
|
180
|
+
$lte: $lte__
|
|
107
181
|
// $contains: $contains__,
|
|
108
182
|
// $notContains: $notContains__,
|
|
109
183
|
};
|
|
@@ -137,6 +211,18 @@ function $$is(v) {
|
|
|
137
211
|
function $$isnt(v) {
|
|
138
212
|
return { t: "not-eq", v };
|
|
139
213
|
}
|
|
214
|
+
function $$lt(v) {
|
|
215
|
+
return { t: "lt", v };
|
|
216
|
+
}
|
|
217
|
+
function $$lte(v) {
|
|
218
|
+
return { t: "lte", v };
|
|
219
|
+
}
|
|
220
|
+
function $$gt(v) {
|
|
221
|
+
return { t: "gt", v };
|
|
222
|
+
}
|
|
223
|
+
function $$gte(v) {
|
|
224
|
+
return { t: "gte", v };
|
|
225
|
+
}
|
|
140
226
|
// containsAny, containsAll?
|
|
141
227
|
function $$contains(v) {
|
|
142
228
|
return { t: "contains", v };
|
|
@@ -168,4 +254,4 @@ export function makeFilters() {
|
|
|
168
254
|
}
|
|
169
255
|
return test;
|
|
170
256
|
}
|
|
171
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
257
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vX3NyYy9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6ImFBMklnQixHQUFHO2FBWUgsTUFBTTthQWNOLEdBQUc7YUFVSCxLQUFLO2FBV0wsR0FBRzthQVdILElBQUk7YUFXSixHQUFHO2FBV0gsSUFBSTtBQWpOcEIsTUFBTSxVQUFVLGVBQWU7SUFDN0IsTUFBTSxDQUFDLEdBQUcsZ0JBQWdCLEVBQWdCLENBQUE7SUFDMUMsT0FBTyxDQUE4QixDQUFBO0FBQ3ZDLENBQUM7QUFFRCxTQUFTLFdBQVc7SUFDbEIsTUFBTSxPQUFPLEdBQUcsWUFBWSxFQUFnQixDQUFBO0lBQzVDLE9BQU8sT0FBcUMsQ0FBQTtBQUM5QyxDQUFDO0FBSUQsU0FBUyxZQUFZO0lBSW5CLE9BQU87UUFDTCxFQUFFLENBRUEsSUFBZ0IsRUFDaEIsS0FBbUI7WUFFbkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFhLEVBQUUsQ0FBQTtRQUMvQyxDQUFDO1FBQ0QsS0FBSyxDQUVILElBQWdCLEVBQ2hCLEtBQW1CO1lBRW5CLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsUUFBaUIsRUFBRSxDQUFBO1FBQ25ELENBQUM7UUFDRCxFQUFFLENBRUEsSUFBZ0IsRUFDaEIsS0FBUTtZQUVSLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBYSxFQUFFLENBQUE7UUFDL0MsQ0FBQztRQUNELEtBQUssQ0FFSCxJQUFnQixFQUNoQixLQUFRO1lBRVIsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxRQUFpQixFQUFFLENBQUE7UUFDbkQsQ0FBQztRQUNELEVBQUUsQ0FFQSxJQUFnQixFQUNoQixLQUFRO1lBRVIsT0FBTyxFQUFFLEdBQUcs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
|
|
@@ -182,7 +182,7 @@ export declare function queryAndSavePureEffect<Id extends string, T extends {
|
|
|
182
182
|
skip?: number;
|
|
183
183
|
}>): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | R | Exclude<R2, {
|
|
184
184
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
185
|
-
}>,
|
|
185
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E | E2, A>;
|
|
186
186
|
/**
|
|
187
187
|
* @tsplus fluent Repository queryAndSavePure
|
|
188
188
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -198,7 +198,7 @@ export declare function queryAndSavePure<Id extends string, T extends {
|
|
|
198
198
|
skip?: number;
|
|
199
199
|
}): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R2, {
|
|
200
200
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
201
|
-
}>,
|
|
201
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E2, A>;
|
|
202
202
|
/**
|
|
203
203
|
* @tsplus getter Repository saveManyWithPure
|
|
204
204
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -209,7 +209,7 @@ export declare function saveManyWithPure<Id extends string, T extends {
|
|
|
209
209
|
id: string;
|
|
210
210
|
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
211
211
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
212
|
-
}>,
|
|
212
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, A>;
|
|
213
213
|
/**
|
|
214
214
|
* @tsplus fluent Repository byIdAndSaveWithPure
|
|
215
215
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -220,7 +220,7 @@ export declare function byIdAndSaveWithPure<Id extends string, T extends {
|
|
|
220
220
|
id: string;
|
|
221
221
|
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, id: Id): <R, A, E, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
222
222
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, T, S2>;
|
|
223
|
-
}>,
|
|
223
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E | NotFoundError<ItemType>, A>;
|
|
224
224
|
/**
|
|
225
225
|
* NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
|
|
226
226
|
* @tsplus getter Repository handleByIdAndSaveWithPure
|
|
@@ -234,7 +234,7 @@ export declare function handleByIdAndSaveWithPure<Id extends string, T extends {
|
|
|
234
234
|
id: Id;
|
|
235
235
|
}, Context_1, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
236
236
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, T, S2>;
|
|
237
|
-
}>,
|
|
237
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E | NotFoundError<ItemType>, A>;
|
|
238
238
|
/**
|
|
239
239
|
* @tsplus fluent Repository saveManyWithPure_
|
|
240
240
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -245,7 +245,7 @@ export declare function saveManyWithPure_<Id extends string, R, T extends {
|
|
|
245
245
|
id: string;
|
|
246
246
|
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, Chunk<S1>, Chunk<S2>>, E, A>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
247
247
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
248
|
-
}>,
|
|
248
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, A>;
|
|
249
249
|
/**
|
|
250
250
|
* @tsplus fluent Repository saveWithPure_
|
|
251
251
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -256,12 +256,12 @@ export declare function saveWithPure_<Id extends string, R, T extends {
|
|
|
256
256
|
id: string;
|
|
257
257
|
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, item: S1, pure: Effect<FixEnv<R, Evt, S1, S2>, E, A>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
258
258
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S1, S2>;
|
|
259
|
-
}>,
|
|
259
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, A>;
|
|
260
260
|
export declare function saveAllWithEffectInt<Id extends string, T extends {
|
|
261
261
|
id: Id;
|
|
262
262
|
}, PM extends {
|
|
263
263
|
id: string;
|
|
264
|
-
}, P extends T, Evt, ItemType extends string, R, E, A>(self: Repository<T, PM, Evt, Id, ItemType>, gen: Effect<R, E, readonly [Iterable<P>, Iterable<Evt>, A]>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | R,
|
|
264
|
+
}, P extends T, Evt, ItemType extends string, R, E, A>(self: Repository<T, PM, Evt, Id, ItemType>, gen: Effect<R, E, readonly [Iterable<P>, Iterable<Evt>, A]>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | R, OptimisticConcurrencyException | InvalidStateError | E, A>;
|
|
265
265
|
/**
|
|
266
266
|
* @tsplus fluent Repository queryAndSavePureEffectBatched
|
|
267
267
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -277,7 +277,7 @@ export declare function queryAndSavePureEffectBatched<Id extends string, T exten
|
|
|
277
277
|
skip?: number;
|
|
278
278
|
}>, batchSize?: number): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | R | Exclude<R2, {
|
|
279
279
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
280
|
-
}>,
|
|
280
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E | E2, import("@effect/data/Chunk").Chunk<A>>;
|
|
281
281
|
/**
|
|
282
282
|
* @tsplus fluent Repository queryAndSavePureBatched
|
|
283
283
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -293,7 +293,7 @@ export declare function queryAndSavePureBatched<Id extends string, T extends {
|
|
|
293
293
|
skip?: number;
|
|
294
294
|
}, batchSize?: number): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R2, {
|
|
295
295
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
296
|
-
}>,
|
|
296
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E2, import("@effect/data/Chunk").Chunk<A>>;
|
|
297
297
|
/**
|
|
298
298
|
* @tsplus fluent Repository saveManyWithPureBatched
|
|
299
299
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -304,7 +304,7 @@ export declare function saveManyWithPureBatched<Id extends string, T extends {
|
|
|
304
304
|
id: string;
|
|
305
305
|
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, batchSize?: number): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
306
306
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
307
|
-
}>,
|
|
307
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, import("@effect/data/Chunk").Chunk<A>>;
|
|
308
308
|
/**
|
|
309
309
|
* @tsplus fluent Repository saveManyWithPureBatched_
|
|
310
310
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -315,7 +315,7 @@ export declare function saveManyWithPureBatched_<Id extends string, R, T extends
|
|
|
315
315
|
id: string;
|
|
316
316
|
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, Chunk<S1>, Chunk<S2>>, E, A>, batchSize?: number): import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
317
317
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
318
|
-
}>,
|
|
318
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, import("@effect/data/Chunk").Chunk<A>>;
|
|
319
319
|
export type AllDSL<T, Evt> = (<R, A, E, S1 extends T, S2 extends T>(pure: (dsl: PureDSL<Chunk<S1>, Chunk<S2>, Evt>) => Effect<R, E, A>) => Effect<FixEnv<R, Evt, Chunk<S1>, Chunk<S2>>, E, A>) & AllDSLExt<T, Evt>;
|
|
320
320
|
/**
|
|
321
321
|
* @tsplus type DSLExt
|
|
@@ -364,7 +364,7 @@ export declare function save<Id extends string, T extends {
|
|
|
364
364
|
id: Id;
|
|
365
365
|
}, PM extends {
|
|
366
366
|
id: string;
|
|
367
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<RequestContext | ContextMap,
|
|
367
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<RequestContext | ContextMap, OptimisticConcurrencyException | InvalidStateError, void>;
|
|
368
368
|
/**
|
|
369
369
|
* @tsplus getter Repository saveWithEvents
|
|
370
370
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -373,5 +373,5 @@ export declare function saveWithEvents<Id extends string, T extends {
|
|
|
373
373
|
id: Id;
|
|
374
374
|
}, PM extends {
|
|
375
375
|
id: string;
|
|
376
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<RequestContext | ContextMap,
|
|
376
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<RequestContext | ContextMap, OptimisticConcurrencyException | InvalidStateError, void>;
|
|
377
377
|
//# sourceMappingURL=Repository.d.ts.map
|
|
@@ -2,7 +2,7 @@ import { Effect } from "@effect/io/Effect";
|
|
|
2
2
|
import { NonEmptyReadonlyArray } from "@effect/data/ReadonlyArray";
|
|
3
3
|
import { Config } from "@effect/io/Config";
|
|
4
4
|
import * as CosmosClient from "@effect-app/infra-adapters/cosmos-client";
|
|
5
|
-
import type { FilterJoinSelect, JoinFindFilter, LegacyFilter, PersistenceModelType, StorageConfig, Store, StoreConfig, StoreWhereFilter
|
|
5
|
+
import type { FilterJoinSelect, JoinFindFilter, LegacyFilter, PersistenceModelType, StorageConfig, Store, StoreConfig, StoreWhereFilter } from "./service.js";
|
|
6
6
|
import { StoreMaker } from "./service.js";
|
|
7
7
|
export declare function makeCosmosStore({ prefix }: StorageConfig): import("@effect/io/Effect").Effect<CosmosClient.CosmosClient, never, {
|
|
8
8
|
make: <Id extends string, PM extends PersistenceModelType<Id>, Id2 extends Id>(name: string, seed?: import("@effect/io/Effect").Effect<never, never, ReadonlyMap<Id2, PM>> | undefined, config?: StoreConfig<PM> | undefined) => import("@effect/io/Effect").Effect<never, never, Store<PM, Id>>;
|
|
@@ -41,14 +41,14 @@ export declare function buildWhereCosmosQuery(filter: StoreWhereFilter, name: st
|
|
|
41
41
|
query: string;
|
|
42
42
|
parameters: {
|
|
43
43
|
name: string;
|
|
44
|
-
value:
|
|
44
|
+
value: string | number | boolean | (string | number | boolean | null)[] | null;
|
|
45
45
|
}[];
|
|
46
46
|
};
|
|
47
47
|
export declare function buildCosmosQuery<PM>(filter: LegacyFilter<PM> | StoreWhereFilter, name: string, importedMarkerId: string, skip?: number, limit?: number): {
|
|
48
48
|
query: string;
|
|
49
49
|
parameters: {
|
|
50
50
|
name: string;
|
|
51
|
-
value:
|
|
51
|
+
value: string | number | boolean | (string | number | boolean | null)[] | null;
|
|
52
52
|
}[];
|
|
53
53
|
};
|
|
54
54
|
export declare function CosmosStoreLive(config: Config<StorageConfig>): import("@effect/io/Layer").Layer<CosmosClient.CosmosClient, import("@effect/io/Config/Error").ConfigError, StoreMaker>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cosmos.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/Cosmos.ts"],"names":[],"mappings":";;;AAEA,OAAO,KAAK,YAAY,MAAM,0CAA0C,CAAA;AAMxE,OAAO,KAAK,EAEV,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,KAAK,EACL,WAAW,EACX,gBAAgB,
|
|
1
|
+
{"version":3,"file":"Cosmos.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/Cosmos.ts"],"names":[],"mappings":";;;AAEA,OAAO,KAAK,YAAY,MAAM,0CAA0C,CAAA;AAMxE,OAAO,KAAK,EAEV,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,KAAK,EACL,WAAW,EACX,gBAAgB,EAEjB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,aAAa;yFAK3C,MAAM;GA+UnB;AAuBD;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,gBAAgB,EACxB,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM;;;;;;EAaf;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,cAAc,EACtB,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM;;;;;;EAYf;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EACvC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,EACxB,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EACxB,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM;;;;;;EAyBf;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EACxB,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM;;;;;;EA2Df;AAQD,wBAAgB,gBAAgB,CAAC,EAAE,EACjC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAC3C,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EACxB,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM;;;;;;EAOf;AAKD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,0HAE5D"}
|