@effect-app/infra 0.200.2 → 0.201.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 CHANGED
@@ -1,5 +1,21 @@
1
1
  # @effect-app/infra
2
2
 
3
+ ## 0.201.0
4
+
5
+ ### Minor Changes
6
+
7
+ - f37bb93: improve filter
8
+
9
+ ### Patch Changes
10
+
11
+ - 0a312c3: update packages
12
+
13
+ ## 0.200.3
14
+
15
+ ### Patch Changes
16
+
17
+ - cleanup
18
+
3
19
  ## 0.200.2
4
20
 
5
21
  ### Patch Changes
@@ -24,6 +24,9 @@ var _ContextMapContainer = require("./Store/ContextMapContainer.cjs");
24
24
  var Q = _interopRequireWildcard(require("./Store/filterApi/query.cjs"));
25
25
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
26
26
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
27
+ /* eslint-disable @typescript-eslint/no-unsafe-return */
28
+ /* eslint-disable @typescript-eslint/no-unsafe-argument */
29
+ /* eslint-disable @typescript-eslint/no-unsafe-assignment */
27
30
  /* eslint-disable @typescript-eslint/no-explicit-any */
28
31
  /* eslint-disable @typescript-eslint/ban-types */
29
32
  // import type { ParserEnv } from "@effect-app/schema/custom/Parser"
@@ -86,13 +89,13 @@ class RepositoryBaseC3 extends RepositoryBaseC2 {
86
89
  save = (...items) => this.saveAndPublish(items);
87
90
  saveWithEvents = events => (...items) => this.saveAndPublish(items, events);
88
91
  q2AndSaveOnePure = (q, pure) => this.q2((0, _effectApp.flow)(q, (0, _query.page)({
89
- limit: 1
92
+ take: 1
90
93
  }))).pipe(_effectApp.Effect.map(_effectApp.ReadonlyArray.toNonEmptyArray), _effectApp.Effect.flatMap(_effectApp.Effect.mapError(() => new _errors.NotFoundError({
91
94
  type: this.itemType,
92
95
  id: q
93
96
  }))), _effectApp.Effect.andThen(_ => (0, _Repository.saveWithPure_)(this, _[0], pure)));
94
97
  q2AndSavePure = (q, pure, batchSize) => this.q2((0, _effectApp.flow)(q, (0, _query.page)({
95
- limit: 1
98
+ take: 1
96
99
  }))).pipe(_effectApp.Effect.andThen(_ => batchSize === undefined ? (0, _Repository.saveManyWithPure_)(this, _, pure) : (0, _Repository.saveManyWithPureBatched_)(this, _, pure, batchSize)));
97
100
  /**
98
101
  * NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
@@ -285,6 +288,10 @@ function makeRepo() {
285
288
  yield* $(changeFeed.publish([it, "remove"]));
286
289
  });
287
290
  }
291
+ const query = (repo, q) => {
292
+ const a = Q2.toFilter(q);
293
+ return _effectApp.Effect.flatMap(repo.utils.filter(a), _ => _effectApp.Unify.unify(a.schema ? repo.utils.parseMany2(_, a.schema) : repo.utils.parseMany(_)));
294
+ };
288
295
  const r = {
289
296
  /**
290
297
  * @internal
@@ -325,7 +332,7 @@ function makeRepo() {
325
332
  all,
326
333
  saveAndPublish,
327
334
  removeAndPublish,
328
- q2: q => (0, _query.query)(r, typeof q === "function" ? q((0, _query.make)()) : q)
335
+ q2: q => query(r, typeof q === "function" ? q((0, _query.make)()) : q)
329
336
  };
330
337
  return r;
331
338
  }).pipe(_effectApp.Effect
@@ -1 +1 @@
1
- {"version":3,"file":"RepositoryBase.cjs","names":["_Repository","require","_Store","_Array","_Effect","_filter","_schema","_effectApp","_Pure","_service","_errors","_query","_interopRequireWildcard","Q2","_ContextMapContainer","Q","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RepositoryBaseC","exports","RepositoryBaseC1","itemType","constructor","RepositoryBaseC2","impl","saveAndPublish","removeAndPublish","find","all","utils","changeFeed","mapped","q2","anyQb","QueryBuilder","make","RepositoryBaseC3","id","Effect","andThen","_","mapError","NotFoundError","type","log","evt","AnyPureDSL","removeById","count","filter","map","projectEffect","sync","NonNegativeInt","length","save","items","saveWithEvents","events","q2AndSaveOnePure","q","pure","flow","page","limit","pipe","ReadonlyArray","toNonEmptyArray","flatMap","saveWithPure_","q2AndSavePure","batchSize","undefined","saveManyWithPure_","saveManyWithPureBatched_","handleByIdAndSaveWithPure","req","ctx","byIdAndSaveWithPure","saveManyWithPure","saveAllWithEffectInt","runTerm","item","saveWithPure","f","collect","filterMap","project","queryEffect","parseMany","queryOneEffect","queryLegacy","query","b","fields","queryOne","queryAndSaveOnePureEffect","queryAndSaveOnePure","queryAndSavePureEffect","queryAndSavePure","queryAndSavePureEffectBatched","saveManyWithPureBatched","queryAndSavePureBatched","forEach","chunk_","batch","makeRepo","name","schema","mapFrom","mapTo","where","makeWhere","mapToPersistenceModel","getEtag","mapReverse","_etag","setEtag","mkStore","makeStore","args","gen","$","rctx","context","encode","S","provide","decode","store","makeInitial","config","ContextMapContainer","cms","etag","pubCfg","pub","publishEvents","unit","PubSub","unbounded","allE","concurrency","batching","orDie","structSchema","ast","_tag","union","types","from","pick","encodeId","findEId","Option","findE","flatMapOption","saveAllE","ret","batchSet","asUnit","saveAll","Array","it","Chunk","fromIterable","publish","toArray","remove","cm","parseMany2","tap","select","dec","encMany","array","decMany","xes","makeQuery","withLogSpan","Where","Query","self","f_","makeFilters","makeFilter_","mode","m","isArray","pluralize","s","endsWith","substring","encodeToPM","StoreMaker","withSpan","attributes","partitionValue","makeRepoFunctions","tag","serviceConstants","serviceFunctions","RepositoryBaseImpl","jitM","mkRepo","pm","Cls","makeWith","assignTag","assign","RepositoryDefaultImpl"],"sources":["../../src/services/RepositoryBase.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"RepositoryBase.cjs","names":["_Repository","require","_Store","_Array","_Effect","_filter","_schema","_effectApp","_Pure","_service","_errors","_query","_interopRequireWildcard","Q2","_ContextMapContainer","Q","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RepositoryBaseC","exports","RepositoryBaseC1","itemType","constructor","RepositoryBaseC2","impl","saveAndPublish","removeAndPublish","find","all","utils","changeFeed","mapped","q2","anyQb","QueryBuilder","make","RepositoryBaseC3","id","Effect","andThen","_","mapError","NotFoundError","type","log","evt","AnyPureDSL","removeById","count","filter","map","projectEffect","sync","NonNegativeInt","length","save","items","saveWithEvents","events","q2AndSaveOnePure","q","pure","flow","page","take","pipe","ReadonlyArray","toNonEmptyArray","flatMap","saveWithPure_","q2AndSavePure","batchSize","undefined","saveManyWithPure_","saveManyWithPureBatched_","handleByIdAndSaveWithPure","req","ctx","byIdAndSaveWithPure","saveManyWithPure","saveAllWithEffectInt","runTerm","item","saveWithPure","f","collect","filterMap","project","queryEffect","parseMany","queryOneEffect","limit","queryLegacy","query","b","fields","queryOne","queryAndSaveOnePureEffect","queryAndSaveOnePure","queryAndSavePureEffect","queryAndSavePure","queryAndSavePureEffectBatched","saveManyWithPureBatched","queryAndSavePureBatched","forEach","chunk_","batch","makeRepo","name","schema","mapFrom","mapTo","where","makeWhere","mapToPersistenceModel","getEtag","mapReverse","_etag","setEtag","mkStore","makeStore","args","gen","$","rctx","context","encode","S","provide","decode","store","makeInitial","config","ContextMapContainer","cms","etag","pubCfg","pub","publishEvents","unit","PubSub","unbounded","allE","concurrency","batching","orDie","structSchema","ast","_tag","union","types","from","pick","encodeId","findEId","Option","findE","flatMapOption","saveAllE","ret","batchSet","asUnit","saveAll","Array","it","Chunk","fromIterable","publish","toArray","remove","repo","toFilter","Unify","unify","parseMany2","cm","tap","select","dec","encMany","array","decMany","xes","makeQuery","withLogSpan","Where","Query","self","f_","makeFilters","makeFilter_","mode","m","isArray","pluralize","s","endsWith","substring","encodeToPM","StoreMaker","withSpan","attributes","partitionValue","makeRepoFunctions","tag","serviceConstants","serviceFunctions","RepositoryBaseImpl","jitM","mkRepo","pm","Cls","makeWith","assignTag","assign","RepositoryDefaultImpl"],"sources":["../../src/services/RepositoryBase.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.where = exports.project = exports.page = exports.order = exports.or = exports.make = exports.and = exports.Where = exports.QId = exports.Project = exports.Page = exports.Order = exports.Or = exports.Initial = exports.And = void 0;
7
+ var _effectApp = require("effect-app");
8
+ const QId = exports.QId = Symbol();
9
+ class Initial extends _effectApp.Data.TaggedClass("value") {
10
+ [QId];
11
+ constructor() {
12
+ super({
13
+ value: "initial"
14
+ });
15
+ }
16
+ }
17
+ exports.Initial = Initial;
18
+ class Where extends _effectApp.Data.TaggedClass("where") {
19
+ [QId];
20
+ }
21
+ exports.Where = Where;
22
+ class And extends _effectApp.Data.TaggedClass("and") {
23
+ [QId];
24
+ }
25
+ exports.And = And;
26
+ class Or extends _effectApp.Data.TaggedClass("or") {
27
+ [QId];
28
+ }
29
+ exports.Or = Or;
30
+ class Page extends _effectApp.Data.TaggedClass("page") {
31
+ [QId];
32
+ }
33
+ exports.Page = Page;
34
+ class Order extends _effectApp.Data.TaggedClass("order") {
35
+ [QId];
36
+ }
37
+ exports.Order = Order;
38
+ class Project extends _effectApp.Data.TaggedClass("project") {
39
+ [QId];
40
+ }
41
+ exports.Project = Project;
42
+ const make = () => new Initial();
43
+ exports.make = make;
44
+ const where = (...operation) => current => new Where({
45
+ current,
46
+ operation
47
+ });
48
+ exports.where = where;
49
+ const and = (...operation) => current => new And({
50
+ current,
51
+ operation: typeof operation[0] === "function" ? operation[0] : operation
52
+ });
53
+ exports.and = and;
54
+ const or = (...operation) => current => new Or({
55
+ current,
56
+ operation: typeof operation[0] === "function" ? operation[0] : operation
57
+ });
58
+ exports.or = or;
59
+ const order = (field, direction = "ASC") => current => new Order({
60
+ current,
61
+ field,
62
+ direction
63
+ });
64
+ exports.order = order;
65
+ const page = ({
66
+ skip,
67
+ take
68
+ }) => current => new Page({
69
+ current,
70
+ take,
71
+ skip
72
+ });
73
+ exports.page = page;
74
+ const project = schema => current => new Project({
75
+ current,
76
+ schema
77
+ });
78
+ exports.project = project;
79
+ //# sourceMappingURL=dsl.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsl.cjs","names":["_effectApp","require","QId","exports","Symbol","Initial","Data","TaggedClass","constructor","value","Where","And","Or","Page","Order","Project","make","where","operation","current","and","or","order","field","direction","page","skip","take","project","schema"],"sources":["../../../src/services/query/dsl.ts"],"sourcesContent":[null],"mappings":";;;;;;AAOA,IAAAA,UAAA,GAAAC,OAAA;AASO,MAAMC,GAAG,GAAAC,OAAA,CAAAD,GAAA,GAAGE,MAAM,EAAE;AAsCrB,MAAOC,OAA0C,SAAQC,eAAI,CAACC,WAAW,CAAC,OAAO,CAAuB;EAGnG,CAACL,GAAG;EACbM,YAAA;IACE,KAAK,CAAC;MAAEC,KAAK,EAAE;IAAkB,CAAE,CAAC;EACtC;;AACDN,OAAA,CAAAE,OAAA,GAAAA,OAAA;AAEK,MAAOK,KAAwC,SAAQJ,eAAI,CAACC,WAAW,CAAC,OAAO,CAGnF;EACS,CAACL,GAAG;;AACdC,OAAA,CAAAO,KAAA,GAAAA,KAAA;AAEK,MAAOC,GAAsC,SAAQL,eAAI,CAACC,WAAW,CAAC,KAAK,CAG/E;EACS,CAACL,GAAG;;AACdC,OAAA,CAAAQ,GAAA,GAAAA,GAAA;AAEK,MAAOC,EAAqC,SAAQN,eAAI,CAACC,WAAW,CAAC,IAAI,CAG7E;EACS,CAACL,GAAG;;AACdC,OAAA,CAAAS,EAAA,GAAAA,EAAA;AAEK,MAAOC,IAAuC,SAAQP,eAAI,CAACC,WAAW,CAAC,MAAM,CAIjF;EACS,CAACL,GAAG;;AACdC,OAAA,CAAAU,IAAA,GAAAA,IAAA;AAEK,MAAOC,KACX,SAAQR,eAAI,CAACC,WAAW,CAAC,OAAO,CAI9B;EAGO,CAACL,GAAG;;AACdC,OAAA,CAAAW,KAAA,GAAAA,KAAA;AAEK,MAAOC,OAAgD,SAAQT,eAAI,CAACC,WAAW,CAAC,SAAS,CAG7F;EACS,CAACL,GAAG;;AACdC,OAAA,CAAAY,OAAA,GAAAA,OAAA;AAEM,MAAMC,IAAI,GAAgEA,CAAA,KAAM,IAAIX,OAAO,EAAE;AAAAF,OAAA,CAAAa,IAAA,GAAAA,IAAA;AAE7F,MAAMC,KAAK,GAAgBA,CAAC,GAAGC,SAAgB,KAAMC,OAAY,IAAK,IAAIT,KAAK,CAAC;EAAES,OAAO;EAAED;AAAS,CAAS,CAAC;AAAAf,OAAA,CAAAc,KAAA,GAAAA,KAAA;AAE9G,MAAMG,GAAG,GAAuBA,CAAC,GAAGF,SAAgB,KAAMC,OAAY,IAC3E,IAAIR,GAAG,CAAC;EAAEQ,OAAO;EAAED,SAAS,EAAE,OAAOA,SAAS,CAAC,CAAC,CAAC,KAAK,UAAU,GAAGA,SAAS,CAAC,CAAC,CAAC,GAAGA;AAAS,CAAS,CAAC;AAAAf,OAAA,CAAAiB,GAAA,GAAAA,GAAA;AAEhG,MAAMC,EAAE,GAAuBA,CAAC,GAAGH,SAAgB,KAAMC,OAAY,IAC1E,IAAIP,EAAE,CAAC;EAAEO,OAAO;EAAED,SAAS,EAAE,OAAOA,SAAS,CAAC,CAAC,CAAC,KAAK,UAAU,GAAGA,SAAS,CAAC,CAAC,CAAC,GAAGA;AAAS,CAAS,CAAC;AAAAf,OAAA,CAAAkB,EAAA,GAAAA,EAAA;AAE/F,MAAMC,KAAK,GAIhBA,CAACC,KAAK,EAAEC,SAAS,GAAG,KAAK,KAAML,OAAO,IAAK,IAAIL,KAAK,CAAC;EAAEK,OAAO;EAAEI,KAAK;EAAEC;AAAS,CAAE,CAAC;AAAArB,OAAA,CAAAmB,KAAA,GAAAA,KAAA;AAE9E,MAAMG,IAAI,GAGfA,CAAC;EAAEC,IAAI;EAAEC;AAAI,CAAE,KAAMR,OAAO,IAC1B,IAAIN,IAAI,CAAC;EACPM,OAAO;EACPQ,IAAI;EACJD;CACD,CAAC;AAAAvB,OAAA,CAAAsB,IAAA,GAAAA,IAAA;AAEC,MAAMG,OAAO,GAIwBC,MAAM,IAAMV,OAAO,IAAK,IAAIJ,OAAO,CAAC;EAAEI,OAAO;EAAEU;AAAM,CAAE,CAAC;AAAA1B,OAAA,CAAAyB,OAAA,GAAAA,OAAA"}
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.toFilter = void 0;
7
+ var _Array = require("@effect-app/core/Array");
8
+ var _effectApp = require("effect-app");
9
+ var _utils = require("effect-app/utils");
10
+ var _query = require("../query.cjs");
11
+ /* eslint-disable @typescript-eslint/no-explicit-any */
12
+ /* eslint-disable @typescript-eslint/no-unsafe-assignment */
13
+
14
+ const interpret = _ => {
15
+ const a = _;
16
+ const data = {
17
+ filter: [],
18
+ schema: undefined,
19
+ limit: undefined,
20
+ skip: undefined,
21
+ order: []
22
+ };
23
+ const upd = v => {
24
+ data.filter.push(...v.filter);
25
+ data.order.push(...v.order);
26
+ data.limit = v.limit;
27
+ data.skip = v.skip;
28
+ data.schema = v.schema;
29
+ };
30
+ (0, _effectApp.pipe)(a, _effectApp.Match.valueTags({
31
+ value: () => {
32
+ // data.filter.push(value)
33
+ },
34
+ where: ({
35
+ current,
36
+ operation
37
+ }) => {
38
+ upd(interpret(current));
39
+ data.filter.push({
40
+ t: "where",
41
+ path: operation[0],
42
+ op: operation.length === 2 ? "eq" : operation[1],
43
+ value: operation.length === 2 ? operation[1] : operation[2]
44
+ });
45
+ },
46
+ and: ({
47
+ current,
48
+ operation
49
+ }) => {
50
+ upd(interpret(current));
51
+ if (typeof operation === "function") {
52
+ data.filter.push({
53
+ t: "and-scope",
54
+ result: interpret(operation((0, _query.make)())).filter
55
+ });
56
+ } else {
57
+ data.filter.push({
58
+ t: "and",
59
+ path: operation[0],
60
+ op: operation.length === 2 ? "eq" : operation[1],
61
+ value: operation.length === 2 ? operation[1] : operation[2]
62
+ });
63
+ }
64
+ },
65
+ or: ({
66
+ current,
67
+ operation
68
+ }) => {
69
+ upd(interpret(current));
70
+ if (typeof operation === "function") {
71
+ data.filter.push({
72
+ t: "or-scope",
73
+ result: interpret(operation((0, _query.make)())).filter
74
+ });
75
+ } else {
76
+ data.filter.push({
77
+ t: "or",
78
+ path: operation[0],
79
+ op: operation.length === 2 ? "eq" : operation[1],
80
+ value: operation.length === 2 ? operation[1] : operation[2]
81
+ });
82
+ }
83
+ },
84
+ order: ({
85
+ current,
86
+ direction,
87
+ field
88
+ }) => {
89
+ upd(interpret(current));
90
+ data.order.push({
91
+ key: field,
92
+ direction
93
+ });
94
+ },
95
+ page: v => {
96
+ upd(interpret(v.current));
97
+ data.limit = v.take;
98
+ data.skip = v.skip;
99
+ },
100
+ project: v => {
101
+ upd(interpret(v.current));
102
+ data.schema = v.schema;
103
+ }
104
+ }));
105
+ return data;
106
+ };
107
+ const toFilter = q => {
108
+ // TODO: Native interpreter for each db adapter, instead of the intermediate "new-kid" format
109
+ const a = interpret(q);
110
+ const schema = a.schema;
111
+ let select = [];
112
+ if (schema) {
113
+ let t = schema.ast;
114
+ if (_effectApp.S.AST.isTransform(t)) {
115
+ t = t.from;
116
+ }
117
+ if (_effectApp.S.AST.isTypeLiteral(t)) {
118
+ select = t.propertySignatures.map(_ => _.name);
119
+ }
120
+ }
121
+ return (0, _utils.dropUndefinedT)({
122
+ limit: a.limit,
123
+ skip: a.skip,
124
+ select: _effectApp.Option.getOrUndefined((0, _Array.toNonEmptyArray)(select)),
125
+ schema,
126
+ order: _effectApp.Option.getOrUndefined((0, _Array.toNonEmptyArray)(a.order)),
127
+ filter: a.filter.length ? {
128
+ type: "new-kid",
129
+ build: () => a.filter
130
+ } : undefined
131
+ });
132
+ };
133
+ exports.toFilter = toFilter;
134
+ //# sourceMappingURL=new-kid-interpreter.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"new-kid-interpreter.cjs","names":["_Array","require","_effectApp","_utils","_query","interpret","_","a","data","filter","schema","undefined","limit","skip","order","upd","v","push","pipe","Match","valueTags","value","where","current","operation","t","path","op","length","and","result","make","or","direction","field","key","page","take","project","toFilter","q","select","ast","S","AST","isTransform","from","isTypeLiteral","propertySignatures","map","name","dropUndefinedT","Option","getOrUndefined","toNonEmptyArray","type","build","exports"],"sources":["../../../src/services/query/new-kid-interpreter.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -3,206 +3,26 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.where = exports.query = exports.project = exports.page = exports.order = exports.or = exports.make = exports.and = exports.Where = exports.Project = exports.Page = exports.Order = exports.Or = exports.Initial = exports.And = void 0;
7
- var _Array = require("@effect-app/core/Array");
8
- var _effectApp = require("effect-app");
9
- /* eslint-disable @typescript-eslint/no-explicit-any */
10
-
11
- class Initial extends _effectApp.Data.TaggedClass("value") {
12
- _id;
13
- args;
14
- constructor() {
15
- super({
16
- value: "initial"
17
- });
18
- }
19
- }
20
- exports.Initial = Initial;
21
- class Where extends _effectApp.Data.TaggedClass("where") {
22
- _id2;
23
- _id;
24
- args;
25
- }
26
- exports.Where = Where;
27
- class And extends _effectApp.Data.TaggedClass("and") {
28
- _id2;
29
- _id;
30
- args;
31
- }
32
- exports.And = And;
33
- class Or extends _effectApp.Data.TaggedClass("or") {
34
- _id2;
35
- _id;
36
- args;
37
- }
38
- exports.Or = Or;
39
- class Page extends _effectApp.Data.TaggedClass("page") {
40
- _id3;
41
- args;
42
- }
43
- exports.Page = Page;
44
- class Order extends _effectApp.Data.TaggedClass("order") {
45
- _id3;
46
- args;
47
- }
48
- exports.Order = Order;
49
- class Project extends _effectApp.Data.TaggedClass("project") {
50
- _id4;
51
- args;
52
- }
53
- exports.Project = Project;
54
- const wh = (...operation) => current => new Where({
55
- current,
56
- operation
57
- });
58
- const where = exports.where = wh;
59
- const and = (...operation) => current => new And({
60
- current,
61
- operation: typeof operation[0] === "function" ? operation[0] : operation
62
- });
63
- exports.and = and;
64
- const or = (...operation) => current => new Or({
65
- current,
66
- operation: typeof operation[0] === "function" ? operation[0] : operation
67
- });
68
- exports.or = or;
69
- const order = (field, desc) => current => new Order({
70
- current,
71
- field,
72
- direction: desc ? "DESC" : "ASC"
73
- });
74
- exports.order = order;
75
- const page = ({
76
- limit,
77
- skip
78
- }) => current => new Page({
79
- current,
80
- limit,
81
- skip
82
- });
83
- exports.page = page;
84
- const project = schema => current => new Project({
85
- current,
86
- schema
87
- });
88
- exports.project = project;
89
- const make = () => new Initial();
90
- exports.make = make;
91
- const interpret = _ => {
92
- const values = [];
93
- const a = _;
94
- let schema = undefined;
95
- let limit = undefined;
96
- let skip = undefined;
97
- const order = [];
98
- const upd = v => {
99
- values.push(...v.filter);
100
- order.push(...v.order);
101
- limit = v.limit;
102
- skip = v.skip;
103
- schema = v.schema;
104
- };
105
- (0, _effectApp.pipe)(a, _effectApp.Match.valueTags({
106
- value: () => {
107
- // values.push(value)
108
- },
109
- where: ({
110
- current,
111
- operation
112
- }) => {
113
- upd(interpret(current));
114
- values.push({
115
- t: "where",
116
- path: operation[0],
117
- op: operation.length === 2 ? "eq" : operation[1],
118
- value: operation.length === 2 ? operation[1] : operation[2]
119
- });
120
- },
121
- and: ({
122
- current,
123
- operation
124
- }) => {
125
- upd(interpret(current));
126
- if (typeof operation === "function") {
127
- values.push({
128
- t: "and-scope",
129
- result: interpret(operation(make())).filter
130
- });
131
- } else {
132
- values.push({
133
- t: "and",
134
- path: operation[0],
135
- op: operation.length === 2 ? "eq" : operation[1],
136
- value: operation.length === 2 ? operation[1] : operation[2]
137
- });
138
- }
139
- },
140
- or: ({
141
- current,
142
- operation
143
- }) => {
144
- upd(interpret(current));
145
- if (typeof operation === "function") {
146
- values.push({
147
- t: "or-scope",
148
- result: interpret(operation(make())).filter
149
- });
150
- } else {
151
- values.push({
152
- t: "or",
153
- path: operation[0],
154
- op: operation.length === 2 ? "eq" : operation[1],
155
- value: operation.length === 2 ? operation[1] : operation[2]
156
- });
157
- }
158
- },
159
- order: ({
160
- current
161
- }) => {
162
- upd(interpret(current));
163
- },
164
- page: v => {
165
- upd(interpret(v.current));
166
- limit = v.limit;
167
- skip = v.skip;
168
- },
169
- project: v => {
170
- upd(interpret(v.current));
171
- schema = v.schema;
172
- }
173
- }));
174
- // TODO
175
- return {
176
- filter: values,
177
- limit,
178
- skip,
179
- schema,
180
- order
181
- };
182
- };
183
- const query = (repo, q) => {
184
- // TODO: Native interpreter for each db adapter, instead of the intermediate "new-kid" format
185
- const a = interpret(q);
186
- const schema = a.schema;
187
- let select = [];
188
- if (schema) {
189
- let t = schema.ast;
190
- if (_effectApp.S.AST.isTransform(t)) {
191
- t = t.from;
6
+ var _dsl = require("./query/dsl.cjs");
7
+ Object.keys(_dsl).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _dsl[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _dsl[key];
192
14
  }
193
- if (_effectApp.S.AST.isTypeLiteral(t)) {
194
- select = t.propertySignatures.map(_ => _.name);
15
+ });
16
+ });
17
+ var _newKidInterpreter = require("./query/new-kid-interpreter.cjs");
18
+ Object.keys(_newKidInterpreter).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _newKidInterpreter[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _newKidInterpreter[key];
195
25
  }
196
- }
197
- return (0, _effectApp.pipe)(a.filter.length === 0 ? repo.utils.all : repo.utils.filter({
198
- limit: a.limit,
199
- skip: a.skip,
200
- select: _effectApp.Option.getOrUndefined((0, _Array.toNonEmptyArray)(select)),
201
- filter: a.filter.length ? {
202
- type: "new-kid",
203
- build: () => a.filter
204
- } : undefined
205
- }), _effectApp.Effect.flatMap(_ => _effectApp.Unify.unify(schema ? repo.utils.parseMany2(_, schema) : repo.utils.parseMany(_))));
206
- };
207
- exports.query = query;
26
+ });
27
+ });
208
28
  //# sourceMappingURL=query.cjs.map