@globalart/ddd 1.0.11 → 1.0.12

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/dist/index.js CHANGED
@@ -1,42 +1,11 @@
1
- //#region rolldown:runtime
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __copyProps = (to, from, except, desc) => {
9
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
10
- key = keys[i];
11
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
12
- get: ((k) => from[k]).bind(null, key),
13
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
14
- });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
19
- value: mod,
20
- enumerable: true
21
- }) : target, mod));
22
-
23
- //#endregion
24
- let uuid = require("uuid");
25
- uuid = __toESM(uuid);
26
- let zod = require("zod");
27
- zod = __toESM(zod);
28
- let lodash = require("lodash");
29
- lodash = __toESM(lodash);
30
- let oxide_ts = require("oxide.ts");
31
- oxide_ts = __toESM(oxide_ts);
32
- let ts_pattern = require("ts-pattern");
33
- ts_pattern = __toESM(ts_pattern);
34
- let dequal = require("dequal");
35
- dequal = __toESM(dequal);
36
- let date_fns = require("date-fns");
37
- date_fns = __toESM(date_fns);
38
- let nanoid = require("nanoid");
39
- nanoid = __toESM(nanoid);
1
+ import { v4 } from "uuid";
2
+ import { z } from "zod";
3
+ import { isEmpty, isNil, isNumber } from "lodash";
4
+ import { None, Ok, Some } from "oxide.ts";
5
+ import { match } from "ts-pattern";
6
+ import { dequal } from "dequal";
7
+ import { isAfter, isBefore, isEqual, isToday, isTomorrow, isWithinInterval, isYesterday } from "date-fns";
8
+ import { customAlphabet } from "nanoid";
40
9
 
41
10
  //#region src/aggregate-root.ts
42
11
  var AggregateRoot = class {
@@ -58,27 +27,24 @@ var AggregateRoot = class {
58
27
  //#endregion
59
28
  //#region src/command.ts
60
29
  var Command = class {
61
- commandId;
62
- correlationId;
63
- causationId;
64
30
  constructor(props) {
65
- this.correlationId = props.correlationId ?? (0, uuid.v4)();
66
- this.commandId = props.commandId ?? (0, uuid.v4)();
31
+ this.correlationId = props.correlationId ?? v4();
32
+ this.commandId = props.commandId ?? v4();
67
33
  }
68
34
  };
69
35
 
70
36
  //#endregion
71
37
  //#region src/event.ts
72
- const eventSchema = (name, payload, meta) => zod.z.object({
73
- id: zod.z.string().uuid(),
74
- name: zod.z.literal(name),
75
- operatorId: zod.z.string().optional(),
38
+ const eventSchema = (name, payload, meta) => z.object({
39
+ id: z.string().uuid(),
40
+ name: z.literal(name),
41
+ operatorId: z.string().optional(),
76
42
  payload,
77
- timestamp: zod.z.coerce.date(),
43
+ timestamp: z.coerce.date(),
78
44
  meta
79
45
  });
80
46
  var BaseEvent = class {
81
- constructor(payload, operatorId, meta, id = (0, uuid.v4)(), timestamp = /* @__PURE__ */ new Date()) {
47
+ constructor(payload, operatorId, meta, id = v4(), timestamp = /* @__PURE__ */ new Date()) {
82
48
  this.payload = payload;
83
49
  this.operatorId = operatorId;
84
50
  this.meta = meta;
@@ -100,7 +66,6 @@ var BaseEvent = class {
100
66
  //#endregion
101
67
  //#region src/exception.base.ts
102
68
  var ExceptionBase = class extends Error {
103
- correlationId;
104
69
  /**
105
70
  *
106
71
  * @param message
@@ -130,17 +95,17 @@ var ExceptionBase = class extends Error {
130
95
 
131
96
  //#endregion
132
97
  //#region src/filter/base.filter.ts
133
- const baseFilter = zod.z.object({
134
- field: zod.z.string().min(1),
135
- relation: zod.z.string().min(1).optional()
98
+ const baseFilter = z.object({
99
+ field: z.string().min(1),
100
+ relation: z.string().min(1).optional()
136
101
  });
137
102
 
138
103
  //#endregion
139
104
  //#region src/filter/conjunction.ts
140
- const $and = zod.z.literal("$and");
141
- const $or = zod.z.literal("$or");
142
- const $not = zod.z.literal("$not");
143
- const conjunctions = zod.z.union([
105
+ const $and = z.literal("$and");
106
+ const $or = z.literal("$or");
107
+ const $not = z.literal("$not");
108
+ const conjunctions = z.union([
144
109
  $and,
145
110
  $or,
146
111
  $not
@@ -171,7 +136,7 @@ var ValueObject = class ValueObject {
171
136
  }
172
137
  equals(vo) {
173
138
  if (vo === null || vo === void 0) return false;
174
- return (0, dequal.dequal)(vo, this);
139
+ return dequal(vo, this);
175
140
  }
176
141
  static isValueObject(obj) {
177
142
  return obj instanceof ValueObject;
@@ -208,46 +173,46 @@ var DateFieldValue = class extends FieldValueBase {
208
173
 
209
174
  //#endregion
210
175
  //#region src/filter/operators.ts
211
- const $eq = zod.z.literal("$eq");
212
- const $neq = zod.z.literal("$neq");
213
- const $contains = zod.z.literal("$contains");
214
- const $not_contains = zod.z.literal("$not_contains");
215
- const $starts_with = zod.z.literal("$starts_with");
216
- const $ends_with = zod.z.literal("$ends_with");
217
- const $regex = zod.z.literal("$regex");
218
- const $is_true = zod.z.literal("$is_true");
219
- const $is_false = zod.z.literal("$is_false");
220
- const $in = zod.z.literal("$in");
221
- const $nin = zod.z.literal("$nin");
222
- const $gt = zod.z.literal("$gt");
223
- const $lt = zod.z.literal("$lt");
224
- const $gte = zod.z.literal("$gte");
225
- const $lte = zod.z.literal("$lte");
226
- const $start_eq = zod.z.literal("$start_eq");
227
- const $start_neq = zod.z.literal("$start_neq");
228
- const $start_gt = zod.z.literal("$start_gt");
229
- const $start_lt = zod.z.literal("$start_lt");
230
- const $start_gte = zod.z.literal("$start_gte");
231
- const $start_lte = zod.z.literal("$start_lte");
232
- const $end_eq = zod.z.literal("$end_eq");
233
- const $end_neq = zod.z.literal("$end_neq");
234
- const $end_gt = zod.z.literal("$end_gt");
235
- const $end_lt = zod.z.literal("$end_lt");
236
- const $end_gte = zod.z.literal("$end_gte");
237
- const $end_lte = zod.z.literal("$end_lte");
238
- const $is_empty = zod.z.literal("$is_empty");
239
- const $is_not_empty = zod.z.literal("$is_not_empty");
240
- const $is_today = zod.z.literal("$is_today");
241
- const $is_not_today = zod.z.literal("$is_not_today");
242
- const $is_tomorrow = zod.z.literal("$is_tomorrow");
243
- const $is_yesterday = zod.z.literal("$is_yesterday");
244
- const $between = zod.z.literal("$between");
245
- const $has_file_type = zod.z.literal("$has_file_type");
246
- const $has_file_extension = zod.z.literal("$has_file_extension");
247
- const $is_root = zod.z.literal("$is_root");
248
- const $is_me = zod.z.literal("$is_me");
249
- const $is_not_me = zod.z.literal("$is_not_me");
250
- const operatorsWihtoutValue = zod.z.union([
176
+ const $eq = z.literal("$eq");
177
+ const $neq = z.literal("$neq");
178
+ const $contains = z.literal("$contains");
179
+ const $not_contains = z.literal("$not_contains");
180
+ const $starts_with = z.literal("$starts_with");
181
+ const $ends_with = z.literal("$ends_with");
182
+ const $regex = z.literal("$regex");
183
+ const $is_true = z.literal("$is_true");
184
+ const $is_false = z.literal("$is_false");
185
+ const $in = z.literal("$in");
186
+ const $nin = z.literal("$nin");
187
+ const $gt = z.literal("$gt");
188
+ const $lt = z.literal("$lt");
189
+ const $gte = z.literal("$gte");
190
+ const $lte = z.literal("$lte");
191
+ const $start_eq = z.literal("$start_eq");
192
+ const $start_neq = z.literal("$start_neq");
193
+ const $start_gt = z.literal("$start_gt");
194
+ const $start_lt = z.literal("$start_lt");
195
+ const $start_gte = z.literal("$start_gte");
196
+ const $start_lte = z.literal("$start_lte");
197
+ const $end_eq = z.literal("$end_eq");
198
+ const $end_neq = z.literal("$end_neq");
199
+ const $end_gt = z.literal("$end_gt");
200
+ const $end_lt = z.literal("$end_lt");
201
+ const $end_gte = z.literal("$end_gte");
202
+ const $end_lte = z.literal("$end_lte");
203
+ const $is_empty = z.literal("$is_empty");
204
+ const $is_not_empty = z.literal("$is_not_empty");
205
+ const $is_today = z.literal("$is_today");
206
+ const $is_not_today = z.literal("$is_not_today");
207
+ const $is_tomorrow = z.literal("$is_tomorrow");
208
+ const $is_yesterday = z.literal("$is_yesterday");
209
+ const $between = z.literal("$between");
210
+ const $has_file_type = z.literal("$has_file_type");
211
+ const $has_file_extension = z.literal("$has_file_extension");
212
+ const $is_root = z.literal("$is_root");
213
+ const $is_me = z.literal("$is_me");
214
+ const $is_not_me = z.literal("$is_not_me");
215
+ const operatorsWihtoutValue = z.union([
251
216
  $is_empty,
252
217
  $is_not_empty,
253
218
  $is_today,
@@ -262,7 +227,7 @@ const isOperatorWithoutValue = (value) => operatorsWihtoutValue.safeParse(value)
262
227
 
263
228
  //#endregion
264
229
  //#region src/filter/fields/date/date.filter.ts
265
- const dateFilterOperators = zod.z.union([
230
+ const dateFilterOperators = z.union([
266
231
  $eq,
267
232
  $neq,
268
233
  $gt,
@@ -275,9 +240,9 @@ const dateFilterOperators = zod.z.union([
275
240
  $is_yesterday,
276
241
  $is_not_today
277
242
  ]);
278
- const dateFilterValue = zod.z.string().nullable().or(zod.z.tuple([zod.z.string(), zod.z.string()]));
279
- const dateFilter = zod.z.object({
280
- type: zod.z.literal("date"),
243
+ const dateFilterValue = z.string().nullable().or(z.tuple([z.string(), z.string()]));
244
+ const dateFilter = z.object({
245
+ type: z.literal("date"),
281
246
  operator: dateFilterOperators,
282
247
  value: dateFilterValue
283
248
  }).merge(baseFilter);
@@ -295,7 +260,7 @@ var NumberFieldValue = class extends FieldValueBase {
295
260
 
296
261
  //#endregion
297
262
  //#region src/filter/fields/number/number.filter.ts
298
- const numberFilterOperators = zod.z.union([
263
+ const numberFilterOperators = z.union([
299
264
  $eq,
300
265
  $neq,
301
266
  $gt,
@@ -305,9 +270,9 @@ const numberFilterOperators = zod.z.union([
305
270
  $is_empty,
306
271
  $is_not_empty
307
272
  ]);
308
- const numberFilterValue = zod.z.number().nullable();
309
- const numberFilter = zod.z.object({
310
- type: zod.z.literal("number"),
273
+ const numberFilterValue = z.number().nullable();
274
+ const numberFilter = z.object({
275
+ type: z.literal("number"),
311
276
  operator: numberFilterOperators,
312
277
  value: numberFilterValue
313
278
  }).merge(baseFilter);
@@ -325,7 +290,7 @@ var StringFieldValue = class extends FieldValueBase {
325
290
 
326
291
  //#endregion
327
292
  //#region src/filter/fields/string/string.filter.ts
328
- const stringFilterOperators = zod.z.union([
293
+ const stringFilterOperators = z.union([
329
294
  $eq,
330
295
  $neq,
331
296
  $contains,
@@ -336,9 +301,9 @@ const stringFilterOperators = zod.z.union([
336
301
  $is_empty,
337
302
  $is_not_empty
338
303
  ]);
339
- const stringFilterValue = zod.z.string().nullable();
340
- const stringFilter = zod.z.object({
341
- type: zod.z.literal("string"),
304
+ const stringFilterValue = z.string().nullable();
305
+ const stringFilter = z.object({
306
+ type: z.literal("string"),
342
307
  operator: stringFilterOperators,
343
308
  value: stringFilterValue
344
309
  }).merge(baseFilter);
@@ -386,7 +351,7 @@ var Or = class extends CompositeSpecification {
386
351
  }
387
352
  accept(v) {
388
353
  v.or(this.left, this.right);
389
- return (0, oxide_ts.Ok)(void 0);
354
+ return Ok(void 0);
390
355
  }
391
356
  };
392
357
  var Not = class extends CompositeSpecification {
@@ -405,19 +370,19 @@ var Not = class extends CompositeSpecification {
405
370
  }
406
371
  };
407
372
  const and = (...specs) => {
408
- if (!specs.length) return oxide_ts.None;
373
+ if (!specs.length) return None;
409
374
  let s = specs[0];
410
375
  for (const spec of specs.slice(1)) s = s.and(spec);
411
- return (0, oxide_ts.Some)(s);
376
+ return Some(s);
412
377
  };
413
378
  const andOptions = (...specs) => {
414
379
  return and(...specs.filter((spec) => spec.isSome()).map((spec) => spec.unwrap()));
415
380
  };
416
381
  const or = (...specs) => {
417
- if (!specs.length) return oxide_ts.None;
382
+ if (!specs.length) return None;
418
383
  let s = specs[0];
419
384
  for (const spec of specs.slice(1)) s = s.or(spec);
420
- return (0, oxide_ts.Some)(s);
385
+ return Some(s);
421
386
  };
422
387
 
423
388
  //#endregion
@@ -442,7 +407,7 @@ var DateEqual = class extends BaseFilterSpecification {
442
407
  }
443
408
  accept(v) {
444
409
  v.dateEqual(this);
445
- return (0, oxide_ts.Ok)(void 0);
410
+ return Ok(void 0);
446
411
  }
447
412
  };
448
413
  var DateGreaterThan = class extends BaseFilterSpecification {
@@ -450,11 +415,11 @@ var DateGreaterThan = class extends BaseFilterSpecification {
450
415
  if (!(value instanceof DateFieldValue)) return false;
451
416
  const d1 = value.unpack();
452
417
  const d2 = this.value.unpack();
453
- return !!d1 && !!d2 && (0, date_fns.isAfter)(d1, d2);
418
+ return !!d1 && !!d2 && isAfter(d1, d2);
454
419
  }
455
420
  accept(v) {
456
421
  v.dateGreaterThan(this);
457
- return (0, oxide_ts.Ok)(void 0);
422
+ return Ok(void 0);
458
423
  }
459
424
  };
460
425
  var DateLessThan = class extends BaseFilterSpecification {
@@ -462,11 +427,11 @@ var DateLessThan = class extends BaseFilterSpecification {
462
427
  if (!(value instanceof DateFieldValue)) return false;
463
428
  const d1 = value.unpack();
464
429
  const d2 = this.value.unpack();
465
- return !!d1 && !!d2 && (0, date_fns.isBefore)(d1, d2);
430
+ return !!d1 && !!d2 && isBefore(d1, d2);
466
431
  }
467
432
  accept(v) {
468
433
  v.dateLessThan(this);
469
- return (0, oxide_ts.Ok)(void 0);
434
+ return Ok(void 0);
470
435
  }
471
436
  };
472
437
  var DateGreaterThanOrEqual = class extends BaseFilterSpecification {
@@ -474,11 +439,11 @@ var DateGreaterThanOrEqual = class extends BaseFilterSpecification {
474
439
  if (!(value instanceof DateFieldValue)) return false;
475
440
  const d1 = value.unpack();
476
441
  const d2 = this.value.unpack();
477
- return !!d1 && !!d2 && ((0, date_fns.isEqual)(d1, d2) || (0, date_fns.isAfter)(d1, d2));
442
+ return !!d1 && !!d2 && (isEqual(d1, d2) || isAfter(d1, d2));
478
443
  }
479
444
  accept(v) {
480
445
  v.dateGreaterThanOrEqual(this);
481
- return (0, oxide_ts.Ok)(void 0);
446
+ return Ok(void 0);
482
447
  }
483
448
  };
484
449
  var DateLessThanOrEqual = class extends BaseFilterSpecification {
@@ -486,44 +451,44 @@ var DateLessThanOrEqual = class extends BaseFilterSpecification {
486
451
  if (!(value instanceof DateFieldValue)) return false;
487
452
  const d1 = value.unpack();
488
453
  const d2 = this.value.unpack();
489
- return !!d1 && !!d2 && ((0, date_fns.isEqual)(d1, d2) || (0, date_fns.isBefore)(d1, d2));
454
+ return !!d1 && !!d2 && (isEqual(d1, d2) || isBefore(d1, d2));
490
455
  }
491
456
  accept(v) {
492
457
  v.dateLessThanOrEqual(this);
493
- return (0, oxide_ts.Ok)(void 0);
458
+ return Ok(void 0);
494
459
  }
495
460
  };
496
461
  var DateIsToday = class extends BaseFilterSpecification {
497
462
  isSatisfiedBy(value) {
498
463
  if (!(value instanceof DateFieldValue)) return false;
499
464
  const date = value.unpack();
500
- return !!date && (0, date_fns.isToday)(date);
465
+ return !!date && isToday(date);
501
466
  }
502
467
  accept(v) {
503
468
  v.dateIsToday(this);
504
- return (0, oxide_ts.Ok)(void 0);
469
+ return Ok(void 0);
505
470
  }
506
471
  };
507
472
  var DateIsTomorrow = class extends BaseFilterSpecification {
508
473
  isSatisfiedBy(value) {
509
474
  if (!(value instanceof DateFieldValue)) return false;
510
475
  const date = value.unpack();
511
- return !!date && (0, date_fns.isTomorrow)(date);
476
+ return !!date && isTomorrow(date);
512
477
  }
513
478
  accept(v) {
514
479
  v.dateIsTomorrow(this);
515
- return (0, oxide_ts.Ok)(void 0);
480
+ return Ok(void 0);
516
481
  }
517
482
  };
518
483
  var DateIsYesterday = class extends BaseFilterSpecification {
519
484
  isSatisfiedBy(value) {
520
485
  if (!(value instanceof DateFieldValue)) return false;
521
486
  const date = value.unpack();
522
- return !!date && (0, date_fns.isYesterday)(date);
487
+ return !!date && isYesterday(date);
523
488
  }
524
489
  accept(v) {
525
490
  v.dateIsYesterday(this);
526
- return (0, oxide_ts.Ok)(void 0);
491
+ return Ok(void 0);
527
492
  }
528
493
  };
529
494
  var DateBetween = class extends BaseFilterSpecification {
@@ -537,14 +502,14 @@ var DateBetween = class extends BaseFilterSpecification {
537
502
  isSatisfiedBy(value) {
538
503
  if (!(value instanceof DateFieldValue)) return false;
539
504
  const date = value.unpack();
540
- return !!date && (0, date_fns.isWithinInterval)(date, {
505
+ return !!date && isWithinInterval(date, {
541
506
  start: this.dateStart,
542
507
  end: this.dateEnd
543
508
  });
544
509
  }
545
510
  accept(v) {
546
511
  v.dateBetween(this);
547
- return (0, oxide_ts.Ok)(void 0);
512
+ return Ok(void 0);
548
513
  }
549
514
  };
550
515
 
@@ -556,7 +521,7 @@ var NumberEqual = class extends BaseFilterSpecification {
556
521
  }
557
522
  accept(v) {
558
523
  v.numberEqual(this);
559
- return (0, oxide_ts.Ok)(void 0);
524
+ return Ok(void 0);
560
525
  }
561
526
  };
562
527
  var NumberGreaterThan = class extends BaseFilterSpecification {
@@ -564,12 +529,12 @@ var NumberGreaterThan = class extends BaseFilterSpecification {
564
529
  if (!(value instanceof NumberFieldValue)) return false;
565
530
  const n1 = value.unpack();
566
531
  const n2 = this.value.unpack();
567
- if (n1 === null && (0, lodash.isNumber)(n2)) return true;
532
+ if (n1 === null && isNumber(n2)) return true;
568
533
  return n1 !== null && n2 !== null && n1 > n2;
569
534
  }
570
535
  accept(v) {
571
536
  v.numberGreaterThan(this);
572
- return (0, oxide_ts.Ok)(void 0);
537
+ return Ok(void 0);
573
538
  }
574
539
  };
575
540
  var NumberLessThan = class extends BaseFilterSpecification {
@@ -581,7 +546,7 @@ var NumberLessThan = class extends BaseFilterSpecification {
581
546
  }
582
547
  accept(v) {
583
548
  v.numberLessThan(this);
584
- return (0, oxide_ts.Ok)(void 0);
549
+ return Ok(void 0);
585
550
  }
586
551
  };
587
552
  var NumberGreaterThanOrEqual = class extends BaseFilterSpecification {
@@ -589,12 +554,12 @@ var NumberGreaterThanOrEqual = class extends BaseFilterSpecification {
589
554
  if (!(value instanceof NumberFieldValue)) return false;
590
555
  const n1 = value.unpack();
591
556
  const n2 = this.value.unpack();
592
- if (n1 === null && (0, lodash.isNumber)(n2)) return true;
557
+ if (n1 === null && isNumber(n2)) return true;
593
558
  return n1 !== null && n2 !== null && n1 >= n2;
594
559
  }
595
560
  accept(v) {
596
561
  v.numberGreaterThanOrEqual(this);
597
- return (0, oxide_ts.Ok)(void 0);
562
+ return Ok(void 0);
598
563
  }
599
564
  };
600
565
  var NumberLessThanOrEqual = class extends BaseFilterSpecification {
@@ -606,7 +571,7 @@ var NumberLessThanOrEqual = class extends BaseFilterSpecification {
606
571
  }
607
572
  accept(v) {
608
573
  v.numberLessThanOrEqual(this);
609
- return (0, oxide_ts.Ok)(void 0);
574
+ return Ok(void 0);
610
575
  }
611
576
  };
612
577
  var NumberEmpty = class extends BaseFilterSpecification {
@@ -615,11 +580,11 @@ var NumberEmpty = class extends BaseFilterSpecification {
615
580
  this.field = field;
616
581
  }
617
582
  isSatisfiedBy(value) {
618
- return value instanceof NumberFieldValue && (0, lodash.isNil)(value.unpack());
583
+ return value instanceof NumberFieldValue && isNil(value.unpack());
619
584
  }
620
585
  accept(v) {
621
586
  v.numberEmpty(this);
622
- return (0, oxide_ts.Ok)(void 0);
587
+ return Ok(void 0);
623
588
  }
624
589
  };
625
590
 
@@ -631,7 +596,7 @@ var StringEqual = class extends BaseFilterSpecification {
631
596
  }
632
597
  accept(v) {
633
598
  v.stringEqual(this);
634
- return (0, oxide_ts.Ok)(void 0);
599
+ return Ok(void 0);
635
600
  }
636
601
  };
637
602
  var StringNotEqual = class extends BaseFilterSpecification {
@@ -640,7 +605,7 @@ var StringNotEqual = class extends BaseFilterSpecification {
640
605
  }
641
606
  accept(v) {
642
607
  v.stringNotEqual(this);
643
- return (0, oxide_ts.Ok)(void 0);
608
+ return Ok(void 0);
644
609
  }
645
610
  };
646
611
  var StringContain = class extends BaseFilterSpecification {
@@ -652,7 +617,7 @@ var StringContain = class extends BaseFilterSpecification {
652
617
  }
653
618
  accept(v) {
654
619
  v.stringContain(this);
655
- return (0, oxide_ts.Ok)(void 0);
620
+ return Ok(void 0);
656
621
  }
657
622
  };
658
623
  var StringStartsWith = class extends BaseFilterSpecification {
@@ -664,7 +629,7 @@ var StringStartsWith = class extends BaseFilterSpecification {
664
629
  }
665
630
  accept(v) {
666
631
  v.stringStartsWith(this);
667
- return (0, oxide_ts.Ok)(void 0);
632
+ return Ok(void 0);
668
633
  }
669
634
  };
670
635
  var StringEndsWith = class extends BaseFilterSpecification {
@@ -676,7 +641,7 @@ var StringEndsWith = class extends BaseFilterSpecification {
676
641
  }
677
642
  accept(v) {
678
643
  v.stringEndsWith(this);
679
- return (0, oxide_ts.Ok)(void 0);
644
+ return Ok(void 0);
680
645
  }
681
646
  };
682
647
  var StringRegex = class extends BaseFilterSpecification {
@@ -688,7 +653,7 @@ var StringRegex = class extends BaseFilterSpecification {
688
653
  }
689
654
  accept(v) {
690
655
  v.stringRegex(this);
691
- return (0, oxide_ts.Ok)(void 0);
656
+ return Ok(void 0);
692
657
  }
693
658
  };
694
659
  var StringEmpty = class extends BaseFilterSpecification {
@@ -701,7 +666,7 @@ var StringEmpty = class extends BaseFilterSpecification {
701
666
  }
702
667
  accept(v) {
703
668
  v.stringEmpty(this);
704
- return (0, oxide_ts.Ok)(void 0);
669
+ return Ok(void 0);
705
670
  }
706
671
  };
707
672
 
@@ -709,22 +674,22 @@ var StringEmpty = class extends BaseFilterSpecification {
709
674
  //#region src/filter/filter.ts
710
675
  const filterRoorFilter = (filters) => {
711
676
  const filterTuple = [filters[0], ...filters.slice(1)];
712
- const filter$1 = zod.z.union(filterTuple);
713
- const group$1 = zod.z.lazy(() => zod.z.object({
677
+ const filter$1 = z.union(filterTuple);
678
+ const group$1 = z.lazy(() => z.object({
714
679
  conjunction: conjunctions,
715
- children: zod.z.union([group$1, filter$1]).array().nonempty().optional()
680
+ children: z.union([group$1, filter$1]).array().nonempty().optional()
716
681
  }));
717
682
  const filterOrGroupList$1 = filter$1.or(group$1).array();
718
683
  return group$1.or(filterOrGroupList$1);
719
684
  };
720
- const filter = zod.z.discriminatedUnion("type", [
685
+ const filter = z.discriminatedUnion("type", [
721
686
  numberFilter,
722
687
  stringFilter,
723
688
  dateFilter
724
689
  ]);
725
- const group = zod.z.lazy(() => zod.z.object({
690
+ const group = z.lazy(() => z.object({
726
691
  conjunction: conjunctions,
727
- children: zod.z.union([group, filter]).array().nonempty().optional()
692
+ children: z.union([group, filter]).array().nonempty().optional()
728
693
  }));
729
694
  const filterOrGroup = filter.or(group);
730
695
  const filterOrGroupList = filterOrGroup.array();
@@ -735,54 +700,54 @@ const isGroup = (filterOrGroup$1) => {
735
700
  const isFilter = (filterOrGroup$1) => {
736
701
  return Reflect.has(filterOrGroup$1, "type") && Reflect.has(filterOrGroup$1, "operator");
737
702
  };
738
- const operators = zod.z.union([numberFilterOperators, stringFilterOperators]);
703
+ const operators = z.union([numberFilterOperators, stringFilterOperators]);
739
704
  const operatorsMap = { number: numberFilterOperators.options.map((v) => v.value) };
740
705
  const convertStringFilter = (filter$1) => {
741
- if (filter$1.value === void 0) return oxide_ts.None;
706
+ if (filter$1.value === void 0) return None;
742
707
  switch (filter$1.operator) {
743
- case "$eq": return (0, oxide_ts.Some)(new StringEqual(filter$1.field, new StringFieldValue(filter$1.value), filter$1.relation));
744
- case "$neq": return (0, oxide_ts.Some)(new StringNotEqual(filter$1.field, new StringFieldValue(filter$1.value), filter$1.relation));
745
- case "$contains": return (0, oxide_ts.Some)(new StringContain(filter$1.field, new StringFieldValue(filter$1.value)));
746
- case "$not_contains": return (0, oxide_ts.Some)(new StringContain(filter$1.field, new StringFieldValue(filter$1.value)).not());
747
- case "$starts_with": return (0, oxide_ts.Some)(new StringStartsWith(filter$1.field, new StringFieldValue(filter$1.value)));
748
- case "$ends_with": return (0, oxide_ts.Some)(new StringEndsWith(filter$1.field, new StringFieldValue(filter$1.value)));
749
- case "$regex": return (0, oxide_ts.Some)(new StringRegex(filter$1.field, new StringFieldValue(filter$1.value)));
750
- case "$is_empty": return (0, oxide_ts.Some)(new StringEmpty(filter$1.field));
751
- case "$is_not_empty": return (0, oxide_ts.Some)(new StringEmpty(filter$1.field).not());
752
- default: return oxide_ts.None;
708
+ case "$eq": return Some(new StringEqual(filter$1.field, new StringFieldValue(filter$1.value), filter$1.relation));
709
+ case "$neq": return Some(new StringNotEqual(filter$1.field, new StringFieldValue(filter$1.value), filter$1.relation));
710
+ case "$contains": return Some(new StringContain(filter$1.field, new StringFieldValue(filter$1.value)));
711
+ case "$not_contains": return Some(new StringContain(filter$1.field, new StringFieldValue(filter$1.value)).not());
712
+ case "$starts_with": return Some(new StringStartsWith(filter$1.field, new StringFieldValue(filter$1.value)));
713
+ case "$ends_with": return Some(new StringEndsWith(filter$1.field, new StringFieldValue(filter$1.value)));
714
+ case "$regex": return Some(new StringRegex(filter$1.field, new StringFieldValue(filter$1.value)));
715
+ case "$is_empty": return Some(new StringEmpty(filter$1.field));
716
+ case "$is_not_empty": return Some(new StringEmpty(filter$1.field).not());
717
+ default: return None;
753
718
  }
754
719
  };
755
720
  const convertNumberFilter = (filter$1) => {
756
- if (filter$1 === void 0) return oxide_ts.None;
721
+ if (filter$1 === void 0) return None;
757
722
  switch (filter$1.operator) {
758
- case "$eq": return (0, oxide_ts.Some)(new NumberEqual(filter$1.field, new NumberFieldValue(filter$1.value)));
759
- case "$neq": return (0, oxide_ts.Some)(new NumberEqual(filter$1.field, new NumberFieldValue(filter$1.value)).not());
760
- case "$gt": return (0, oxide_ts.Some)(new NumberGreaterThan(filter$1.field, new NumberFieldValue(filter$1.value)));
761
- case "$gte": return (0, oxide_ts.Some)(new NumberGreaterThanOrEqual(filter$1.field, new NumberFieldValue(filter$1.value)));
762
- case "$lt": return (0, oxide_ts.Some)(new NumberLessThan(filter$1.field, new NumberFieldValue(filter$1.value)));
763
- case "$lte": return (0, oxide_ts.Some)(new NumberLessThanOrEqual(filter$1.field, new NumberFieldValue(filter$1.value)));
764
- case "$is_empty": return (0, oxide_ts.Some)(new NumberEmpty(filter$1.field));
765
- case "$is_not_empty": return (0, oxide_ts.Some)(new NumberEmpty(filter$1.field).not());
766
- default: return oxide_ts.None;
723
+ case "$eq": return Some(new NumberEqual(filter$1.field, new NumberFieldValue(filter$1.value)));
724
+ case "$neq": return Some(new NumberEqual(filter$1.field, new NumberFieldValue(filter$1.value)).not());
725
+ case "$gt": return Some(new NumberGreaterThan(filter$1.field, new NumberFieldValue(filter$1.value)));
726
+ case "$gte": return Some(new NumberGreaterThanOrEqual(filter$1.field, new NumberFieldValue(filter$1.value)));
727
+ case "$lt": return Some(new NumberLessThan(filter$1.field, new NumberFieldValue(filter$1.value)));
728
+ case "$lte": return Some(new NumberLessThanOrEqual(filter$1.field, new NumberFieldValue(filter$1.value)));
729
+ case "$is_empty": return Some(new NumberEmpty(filter$1.field));
730
+ case "$is_not_empty": return Some(new NumberEmpty(filter$1.field).not());
731
+ default: return None;
767
732
  }
768
733
  };
769
734
  const convertDateFilter = (filter$1) => {
770
- if (filter$1 === void 0) return oxide_ts.None;
735
+ if (filter$1 === void 0) return None;
771
736
  switch (filter$1.operator) {
772
- case "$eq": return (0, oxide_ts.Some)(new DateEqual(filter$1.field, DateFieldValue.fromNullableString(filter$1.value), filter$1.relation));
773
- case "$between": return (0, oxide_ts.Some)(new DateBetween(filter$1.field, new Date(filter$1.value[0]), new Date(filter$1.value[1])));
737
+ case "$eq": return Some(new DateEqual(filter$1.field, DateFieldValue.fromNullableString(filter$1.value), filter$1.relation));
738
+ case "$between": return Some(new DateBetween(filter$1.field, new Date(filter$1.value[0]), new Date(filter$1.value[1])));
774
739
  }
775
740
  };
776
741
  const convertFilter = (filter$1) => {
777
- return (0, ts_pattern.match)(filter$1).returnType().with({ type: "number" }, (f) => convertNumberFilter(f)).with({ type: "string" }, (f) => convertStringFilter(f)).with({ type: "date" }, (f) => convertDateFilter(f)).otherwise(() => oxide_ts.None);
742
+ return match(filter$1).returnType().with({ type: "number" }, (f) => convertNumberFilter(f)).with({ type: "string" }, (f) => convertStringFilter(f)).with({ type: "date" }, (f) => convertDateFilter(f)).otherwise(() => None);
778
743
  };
779
744
  const convertFilterOrGroup = (filterOrGroup$1) => {
780
745
  if (isGroup(filterOrGroup$1)) return convertFilterOrGroupList(filterOrGroup$1.children, filterOrGroup$1.conjunction);
781
746
  else if (isFilter(filterOrGroup$1)) return convertFilter(filterOrGroup$1);
782
- return oxide_ts.None;
747
+ return None;
783
748
  };
784
749
  const convertFilterOrGroupList = (filterOrGroupList$1 = [], conjunction = "$and") => {
785
- let spec = oxide_ts.None;
750
+ let spec = None;
786
751
  for (const filter$1 of filterOrGroupList$1) if (spec.isNone()) {
787
752
  spec = convertFilterOrGroup(filter$1);
788
753
  if (conjunction === "$not") return spec.map((s) => s.not());
@@ -802,19 +767,19 @@ const convertFilterSpec = (filter$1) => {
802
767
  if (Array.isArray(filter$1)) return convertFilterOrGroupList(filter$1);
803
768
  return convertFilterOrGroup(filter$1);
804
769
  };
805
- const isEmptyFilter = (filter$1) => (0, lodash.isEmpty)(filter$1);
770
+ const isEmptyFilter = (filter$1) => isEmpty(filter$1);
806
771
 
807
772
  //#endregion
808
773
  //#region src/filter/fields/date/date-field.type.ts
809
- const dateFieldValue = zod.z.date().nullable();
774
+ const dateFieldValue = z.date().nullable();
810
775
 
811
776
  //#endregion
812
777
  //#region src/filter/fields/number/number-field.type.ts
813
- const numberFieldValue = zod.z.number().or(zod.z.null());
778
+ const numberFieldValue = z.number().or(z.null());
814
779
 
815
780
  //#endregion
816
781
  //#region src/filter/fields/string/string-field.type.ts
817
- const stringFieldValue = zod.z.string().nullable();
782
+ const stringFieldValue = z.string().nullable();
818
783
 
819
784
  //#endregion
820
785
  //#region src/filter/root-filter.ts
@@ -843,11 +808,11 @@ var RootFilter = class extends ValueObject {
843
808
 
844
809
  //#endregion
845
810
  //#region src/pagination.ts
846
- const paginationSchema = zod.z.object({
847
- limit: zod.z.coerce.number().positive().int().optional(),
848
- offset: zod.z.coerce.number().nonnegative().int().optional()
811
+ const paginationSchema = z.object({
812
+ limit: z.coerce.number().positive().int().optional(),
813
+ offset: z.coerce.number().nonnegative().int().optional()
849
814
  });
850
- const paginatedResponseSchema = paginationSchema.extend({ total: zod.z.number().nonnegative().int() });
815
+ const paginatedResponseSchema = paginationSchema.extend({ total: z.number().nonnegative().int() });
851
816
 
852
817
  //#endregion
853
818
  //#region src/query.ts
@@ -855,7 +820,7 @@ var Query = class {};
855
820
 
856
821
  //#endregion
857
822
  //#region src/sort.ts
858
- const sortingSchema = zod.z.record(zod.z.string(), zod.z.enum(["ASC", "DESC"]));
823
+ const sortingSchema = z.record(z.string(), z.enum(["ASC", "DESC"]));
859
824
 
860
825
  //#endregion
861
826
  //#region src/value-objects/boolean.vo.ts
@@ -908,9 +873,11 @@ var ID = class extends ValueObject {
908
873
  //#endregion
909
874
  //#region src/value-objects/nanoid.vo.ts
910
875
  var NanoID = class NanoID extends ID {
911
- static ALPHABETS = "0123456789abcdefghijklmnopqrstuvwxyz";
876
+ static {
877
+ this.ALPHABETS = "0123456789abcdefghijklmnopqrstuvwxyz";
878
+ }
912
879
  static createId(prefix = "", size = 5) {
913
- const id = (0, nanoid.customAlphabet)(NanoID.ALPHABETS, size)();
880
+ const id = customAlphabet(NanoID.ALPHABETS, size)();
914
881
  return prefix + id;
915
882
  }
916
883
  get value() {
@@ -950,117 +917,5 @@ var StringVO = class StringVO extends ValueObject {
950
917
  };
951
918
 
952
919
  //#endregion
953
- exports.$between = $between;
954
- exports.$contains = $contains;
955
- exports.$end_eq = $end_eq;
956
- exports.$end_gt = $end_gt;
957
- exports.$end_gte = $end_gte;
958
- exports.$end_lt = $end_lt;
959
- exports.$end_lte = $end_lte;
960
- exports.$end_neq = $end_neq;
961
- exports.$ends_with = $ends_with;
962
- exports.$eq = $eq;
963
- exports.$gt = $gt;
964
- exports.$gte = $gte;
965
- exports.$has_file_extension = $has_file_extension;
966
- exports.$has_file_type = $has_file_type;
967
- exports.$in = $in;
968
- exports.$is_empty = $is_empty;
969
- exports.$is_false = $is_false;
970
- exports.$is_me = $is_me;
971
- exports.$is_not_empty = $is_not_empty;
972
- exports.$is_not_me = $is_not_me;
973
- exports.$is_not_today = $is_not_today;
974
- exports.$is_root = $is_root;
975
- exports.$is_today = $is_today;
976
- exports.$is_tomorrow = $is_tomorrow;
977
- exports.$is_true = $is_true;
978
- exports.$is_yesterday = $is_yesterday;
979
- exports.$lt = $lt;
980
- exports.$lte = $lte;
981
- exports.$neq = $neq;
982
- exports.$nin = $nin;
983
- exports.$not_contains = $not_contains;
984
- exports.$regex = $regex;
985
- exports.$start_eq = $start_eq;
986
- exports.$start_gt = $start_gt;
987
- exports.$start_gte = $start_gte;
988
- exports.$start_lt = $start_lt;
989
- exports.$start_lte = $start_lte;
990
- exports.$start_neq = $start_neq;
991
- exports.$starts_with = $starts_with;
992
- exports.AggregateRoot = AggregateRoot;
993
- exports.BaseEvent = BaseEvent;
994
- exports.BaseFilterSpecification = BaseFilterSpecification;
995
- exports.BoolVO = BoolVO;
996
- exports.Command = Command;
997
- exports.CompositeSpecification = CompositeSpecification;
998
- exports.DateBetween = DateBetween;
999
- exports.DateEqual = DateEqual;
1000
- exports.DateFieldValue = DateFieldValue;
1001
- exports.DateGreaterThan = DateGreaterThan;
1002
- exports.DateGreaterThanOrEqual = DateGreaterThanOrEqual;
1003
- exports.DateIsToday = DateIsToday;
1004
- exports.DateIsTomorrow = DateIsTomorrow;
1005
- exports.DateIsYesterday = DateIsYesterday;
1006
- exports.DateLessThan = DateLessThan;
1007
- exports.DateLessThanOrEqual = DateLessThanOrEqual;
1008
- exports.DateVO = DateVO;
1009
- exports.ExceptionBase = ExceptionBase;
1010
- exports.FieldValueBase = FieldValueBase;
1011
- exports.ID = ID;
1012
- exports.IntegerVO = IntegerVO;
1013
- exports.NanoID = NanoID;
1014
- exports.NumberEmpty = NumberEmpty;
1015
- exports.NumberEqual = NumberEqual;
1016
- exports.NumberFieldValue = NumberFieldValue;
1017
- exports.NumberGreaterThan = NumberGreaterThan;
1018
- exports.NumberGreaterThanOrEqual = NumberGreaterThanOrEqual;
1019
- exports.NumberLessThan = NumberLessThan;
1020
- exports.NumberLessThanOrEqual = NumberLessThanOrEqual;
1021
- exports.Query = Query;
1022
- exports.RootFilter = RootFilter;
1023
- exports.StringContain = StringContain;
1024
- exports.StringEmpty = StringEmpty;
1025
- exports.StringEndsWith = StringEndsWith;
1026
- exports.StringEqual = StringEqual;
1027
- exports.StringFieldValue = StringFieldValue;
1028
- exports.StringNotEqual = StringNotEqual;
1029
- exports.StringRegex = StringRegex;
1030
- exports.StringStartsWith = StringStartsWith;
1031
- exports.StringVO = StringVO;
1032
- exports.ValueObject = ValueObject;
1033
- exports.and = and;
1034
- exports.andOptions = andOptions;
1035
- exports.baseFilter = baseFilter;
1036
- exports.conjunctions = conjunctions;
1037
- exports.convertFilterSpec = convertFilterSpec;
1038
- exports.convertPropsToObject = convertPropsToObject;
1039
- exports.dateFieldValue = dateFieldValue;
1040
- exports.dateFilter = dateFilter;
1041
- exports.dateFilterOperators = dateFilterOperators;
1042
- exports.dateFilterValue = dateFilterValue;
1043
- exports.eventSchema = eventSchema;
1044
- exports.filterOrGroupList = filterOrGroupList;
1045
- exports.filterRoorFilter = filterRoorFilter;
1046
- exports.isEmptyFilter = isEmptyFilter;
1047
- exports.isFilter = isFilter;
1048
- exports.isGroup = isGroup;
1049
- exports.isOperatorWithoutValue = isOperatorWithoutValue;
1050
- exports.numberFieldValue = numberFieldValue;
1051
- exports.numberFilter = numberFilter;
1052
- exports.numberFilterOperators = numberFilterOperators;
1053
- exports.numberFilterValue = numberFilterValue;
1054
- exports.operators = operators;
1055
- exports.operatorsMap = operatorsMap;
1056
- exports.operatorsWihtoutValue = operatorsWihtoutValue;
1057
- exports.or = or;
1058
- exports.paginatedResponseSchema = paginatedResponseSchema;
1059
- exports.paginationSchema = paginationSchema;
1060
- exports.rootFilter = rootFilter;
1061
- exports.sortingSchema = sortingSchema;
1062
- exports.stringFieldValue = stringFieldValue;
1063
- exports.stringFilter = stringFilter;
1064
- exports.stringFilterOperators = stringFilterOperators;
1065
- exports.stringFilterValue = stringFilterValue;
920
+ export { $between, $contains, $end_eq, $end_gt, $end_gte, $end_lt, $end_lte, $end_neq, $ends_with, $eq, $gt, $gte, $has_file_extension, $has_file_type, $in, $is_empty, $is_false, $is_me, $is_not_empty, $is_not_me, $is_not_today, $is_root, $is_today, $is_tomorrow, $is_true, $is_yesterday, $lt, $lte, $neq, $nin, $not_contains, $regex, $start_eq, $start_gt, $start_gte, $start_lt, $start_lte, $start_neq, $starts_with, AggregateRoot, BaseEvent, BaseFilterSpecification, BoolVO, Command, CompositeSpecification, DateBetween, DateEqual, DateFieldValue, DateGreaterThan, DateGreaterThanOrEqual, DateIsToday, DateIsTomorrow, DateIsYesterday, DateLessThan, DateLessThanOrEqual, DateVO, ExceptionBase, FieldValueBase, ID, IntegerVO, NanoID, NumberEmpty, NumberEqual, NumberFieldValue, NumberGreaterThan, NumberGreaterThanOrEqual, NumberLessThan, NumberLessThanOrEqual, Query, RootFilter, StringContain, StringEmpty, StringEndsWith, StringEqual, StringFieldValue, StringNotEqual, StringRegex, StringStartsWith, StringVO, ValueObject, and, andOptions, baseFilter, conjunctions, convertFilterSpec, convertPropsToObject, dateFieldValue, dateFilter, dateFilterOperators, dateFilterValue, eventSchema, filterOrGroupList, filterRoorFilter, isEmptyFilter, isFilter, isGroup, isOperatorWithoutValue, numberFieldValue, numberFilter, numberFilterOperators, numberFilterValue, operators, operatorsMap, operatorsWihtoutValue, or, paginatedResponseSchema, paginationSchema, rootFilter, sortingSchema, stringFieldValue, stringFilter, stringFilterOperators, stringFilterValue };
1066
921
  //# sourceMappingURL=index.js.map