@woltz/rich-domain 1.9.2 → 1.9.3

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.
Files changed (122) hide show
  1. package/dist/cjs/constants.d.ts +1 -1
  2. package/dist/cjs/constants.d.ts.map +1 -1
  3. package/dist/cjs/core/base-entity.d.ts +2 -1
  4. package/dist/cjs/core/base-entity.d.ts.map +1 -1
  5. package/dist/cjs/core/base-entity.js +9 -7
  6. package/dist/cjs/core/base-entity.js.map +1 -1
  7. package/dist/cjs/core/change-tracker.d.ts +1 -0
  8. package/dist/cjs/core/change-tracker.d.ts.map +1 -1
  9. package/dist/cjs/core/change-tracker.js +24 -15
  10. package/dist/cjs/core/change-tracker.js.map +1 -1
  11. package/dist/cjs/core/domain-event.d.ts +1 -1
  12. package/dist/cjs/core/domain-event.d.ts.map +1 -1
  13. package/dist/cjs/core/domain-event.js +2 -2
  14. package/dist/cjs/core/domain-event.js.map +1 -1
  15. package/dist/cjs/core/entities.d.ts +8 -0
  16. package/dist/cjs/core/entities.d.ts.map +1 -0
  17. package/dist/cjs/core/entities.js +12 -0
  18. package/dist/cjs/core/entities.js.map +1 -0
  19. package/dist/cjs/core/index.d.ts +9 -9
  20. package/dist/cjs/core/index.d.ts.map +1 -1
  21. package/dist/cjs/core/index.js +9 -9
  22. package/dist/cjs/core/index.js.map +1 -1
  23. package/dist/cjs/repository/base-repository.d.ts +1 -1
  24. package/dist/cjs/repository/base-repository.d.ts.map +1 -1
  25. package/dist/cjs/repository/entity-schema-registry.d.ts +1 -1
  26. package/dist/cjs/repository/entity-schema-registry.d.ts.map +1 -1
  27. package/dist/cjs/repository/entity-schema-registry.js +5 -5
  28. package/dist/cjs/repository/entity-schema-registry.js.map +1 -1
  29. package/dist/cjs/types/change-tracker.d.ts +1 -1
  30. package/dist/cjs/types/change-tracker.d.ts.map +1 -1
  31. package/dist/cjs/types/domain.d.ts +1 -1
  32. package/dist/cjs/types/domain.d.ts.map +1 -1
  33. package/dist/cjs/types/event-bus.d.ts +1 -1
  34. package/dist/cjs/types/event-bus.d.ts.map +1 -1
  35. package/dist/cjs/types/unit-of-work.d.ts +2 -2
  36. package/dist/cjs/types/unit-of-work.d.ts.map +1 -1
  37. package/dist/cjs/types/utils.d.ts +1 -1
  38. package/dist/cjs/types/utils.d.ts.map +1 -1
  39. package/dist/esm/constants.d.ts +1 -1
  40. package/dist/esm/constants.d.ts.map +1 -1
  41. package/dist/esm/core/base-entity.d.ts +2 -1
  42. package/dist/esm/core/base-entity.d.ts.map +1 -1
  43. package/dist/esm/core/base-entity.js +3 -1
  44. package/dist/esm/core/base-entity.js.map +1 -1
  45. package/dist/esm/core/change-tracker.d.ts +1 -0
  46. package/dist/esm/core/change-tracker.d.ts.map +1 -1
  47. package/dist/esm/core/change-tracker.js +24 -15
  48. package/dist/esm/core/change-tracker.js.map +1 -1
  49. package/dist/esm/core/domain-event.d.ts +1 -1
  50. package/dist/esm/core/domain-event.d.ts.map +1 -1
  51. package/dist/esm/core/domain-event.js +1 -1
  52. package/dist/esm/core/domain-event.js.map +1 -1
  53. package/dist/esm/core/entities.d.ts +8 -0
  54. package/dist/esm/core/entities.d.ts.map +1 -0
  55. package/dist/esm/core/entities.js +7 -0
  56. package/dist/esm/core/entities.js.map +1 -0
  57. package/dist/esm/core/index.d.ts +9 -9
  58. package/dist/esm/core/index.d.ts.map +1 -1
  59. package/dist/esm/core/index.js +9 -9
  60. package/dist/esm/core/index.js.map +1 -1
  61. package/dist/esm/repository/base-repository.d.ts +1 -1
  62. package/dist/esm/repository/base-repository.d.ts.map +1 -1
  63. package/dist/esm/repository/entity-schema-registry.d.ts +1 -1
  64. package/dist/esm/repository/entity-schema-registry.d.ts.map +1 -1
  65. package/dist/esm/repository/entity-schema-registry.js +1 -1
  66. package/dist/esm/repository/entity-schema-registry.js.map +1 -1
  67. package/dist/esm/types/change-tracker.d.ts +1 -1
  68. package/dist/esm/types/change-tracker.d.ts.map +1 -1
  69. package/dist/esm/types/domain.d.ts +1 -1
  70. package/dist/esm/types/domain.d.ts.map +1 -1
  71. package/dist/esm/types/event-bus.d.ts +1 -1
  72. package/dist/esm/types/event-bus.d.ts.map +1 -1
  73. package/dist/esm/types/unit-of-work.d.ts +2 -2
  74. package/dist/esm/types/unit-of-work.d.ts.map +1 -1
  75. package/dist/esm/types/utils.d.ts +1 -1
  76. package/dist/esm/types/utils.d.ts.map +1 -1
  77. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  78. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  79. package/dist/tsconfig.types.tsbuildinfo +1 -1
  80. package/dist/types/constants.d.ts +1 -1
  81. package/dist/types/constants.d.ts.map +1 -1
  82. package/dist/types/core/base-entity.d.ts +2 -1
  83. package/dist/types/core/base-entity.d.ts.map +1 -1
  84. package/dist/types/core/change-tracker.d.ts +1 -0
  85. package/dist/types/core/change-tracker.d.ts.map +1 -1
  86. package/dist/types/core/domain-event.d.ts +1 -1
  87. package/dist/types/core/domain-event.d.ts.map +1 -1
  88. package/dist/types/core/entities.d.ts +8 -0
  89. package/dist/types/core/entities.d.ts.map +1 -0
  90. package/dist/types/core/index.d.ts +9 -9
  91. package/dist/types/core/index.d.ts.map +1 -1
  92. package/dist/types/repository/base-repository.d.ts +1 -1
  93. package/dist/types/repository/base-repository.d.ts.map +1 -1
  94. package/dist/types/repository/entity-schema-registry.d.ts +1 -1
  95. package/dist/types/repository/entity-schema-registry.d.ts.map +1 -1
  96. package/dist/types/types/change-tracker.d.ts +1 -1
  97. package/dist/types/types/change-tracker.d.ts.map +1 -1
  98. package/dist/types/types/domain.d.ts +1 -1
  99. package/dist/types/types/domain.d.ts.map +1 -1
  100. package/dist/types/types/event-bus.d.ts +1 -1
  101. package/dist/types/types/event-bus.d.ts.map +1 -1
  102. package/dist/types/types/unit-of-work.d.ts +2 -2
  103. package/dist/types/types/unit-of-work.d.ts.map +1 -1
  104. package/dist/types/types/utils.d.ts +1 -1
  105. package/dist/types/types/utils.d.ts.map +1 -1
  106. package/package.json +68 -68
  107. package/src/constants.ts +82 -82
  108. package/src/core/aggregate-changes.ts +466 -466
  109. package/src/core/base-entity.ts +4 -1
  110. package/src/core/change-tracker.ts +30 -16
  111. package/src/core/domain-event.ts +41 -41
  112. package/src/core/{entity.ts → entities.ts} +13 -13
  113. package/src/core/index.ts +9 -9
  114. package/src/core/value-object.ts +179 -179
  115. package/src/repository/base-repository.ts +81 -81
  116. package/src/repository/entity-schema-registry.ts +1 -1
  117. package/src/types/change-tracker.ts +268 -268
  118. package/src/types/domain.ts +41 -41
  119. package/src/types/event-bus.ts +17 -17
  120. package/src/types/unit-of-work.ts +46 -46
  121. package/src/types/utils.ts +24 -24
  122. package/src/utils/helpers.ts +50 -50
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../../src/types/event-bus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5C;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD"}
1
+ {"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../../src/types/event-bus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5C;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD"}
@@ -1,5 +1,5 @@
1
- import { Aggregate } from "../core/index";
2
- import { Repository } from "../repository/base-repository.js";
1
+ import type { Aggregate } from "../core/index.js";
2
+ import type { Repository } from "../repository/base-repository.js";
3
3
  /**
4
4
  * Transaction context for Unit of Work
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"unit-of-work.d.ts","sourceRoot":"","sources":["../../../src/types/unit-of-work.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAExB;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAErC;;;OAGG;IACH,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1E;;OAEG;IACH,aAAa,CAAC,OAAO,SAAS,SAAS,CAAC,GAAG,CAAC,EAC1C,UAAU,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,UAAU,CAAC,OAAO,CAAC,GACtD,UAAU,CAAC,OAAO,CAAC,CAAC;CACxB"}
1
+ {"version":3,"file":"unit-of-work.d.ts","sourceRoot":"","sources":["../../../src/types/unit-of-work.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAExB;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAErC;;;OAGG;IACH,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1E;;OAEG;IACH,aAAa,CAAC,OAAO,SAAS,SAAS,CAAC,GAAG,CAAC,EAC1C,UAAU,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,UAAU,CAAC,OAAO,CAAC,GACtD,UAAU,CAAC,OAAO,CAAC,CAAC;CACxB"}
@@ -1,4 +1,4 @@
1
- import { Id, ValueObject } from "../core/index";
1
+ import { Id, ValueObject } from "../core/index.js";
2
2
  type JsonPrimitive = string | number | boolean | null;
3
3
  export type DeepJsonResult<T> = T extends Id ? string : T extends ValueObject<infer U> ? U : T extends Date ? string : T extends Array<infer U> ? DeepJsonResult<U>[] : T extends {
4
4
  toJSON(): infer R;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/types/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEhD,KAAK,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAEtD,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,GACxC,MAAM,GACN,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAC5B,CAAC,GACD,CAAC,SAAS,IAAI,GACZ,MAAM,GACN,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GACtB,cAAc,CAAC,CAAC,CAAC,EAAE,GACnB,CAAC,SAAS;IAAE,MAAM,IAAI,MAAM,CAAC,CAAA;CAAE,GAC7B,cAAc,CAAC,CAAC,CAAC,GACjB,CAAC,SAAS,MAAM,GACd;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACxC,CAAC,SAAS,aAAa,GACrB,CAAC,GACD,KAAK,CAAC;AAEtB,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;AAC5E,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAClE,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAC7D,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/types/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEnD,KAAK,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAEtD,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,GACxC,MAAM,GACN,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAC5B,CAAC,GACD,CAAC,SAAS,IAAI,GACZ,MAAM,GACN,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GACtB,cAAc,CAAC,CAAC,CAAC,EAAE,GACnB,CAAC,SAAS;IAAE,MAAM,IAAI,MAAM,CAAC,CAAA;CAAE,GAC7B,cAAc,CAAC,CAAC,CAAC,GACjB,CAAC,SAAS,MAAM,GACd;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACxC,CAAC,SAAS,aAAa,GACrB,CAAC,GACD,KAAK,CAAC;AAEtB,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;AAC5E,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAClE,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAC7D,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,68 +1,68 @@
1
- {
2
- "name": "@woltz/rich-domain",
3
- "version": "1.9.2",
4
- "description": "Rich Domain Library with Standard Schema validation support",
5
- "homepage": "https://woltz.mintlify.app",
6
- "main": "./dist/cjs/index.js",
7
- "module": "./dist/esm/index.js",
8
- "types": "./dist/types/index.d.ts",
9
- "exports": {
10
- ".": {
11
- "types": "./dist/types/index.d.ts",
12
- "require": "./dist/cjs/index.js",
13
- "import": "./dist/esm/index.js"
14
- }
15
- },
16
- "author": "Tarcisio Andrade",
17
- "license": "MIT",
18
- "publishConfig": {
19
- "access": "public"
20
- },
21
- "bugs": {
22
- "url": "https://github.com/tarcisioandrade/rich-domain/issues"
23
- },
24
- "repository": {
25
- "type": "git",
26
- "url": "https://github.com/tarcisioandrade/rich-domain.git",
27
- "directory": "packages/rich-domain"
28
- },
29
- "scripts": {
30
- "build": "npm run build:cjs && npm run build:esm && npm run build:types && npm run postbuild",
31
- "build:cjs": "tsc -p tsconfig.cjs.json",
32
- "build:esm": "tsc -p tsconfig.esm.json",
33
- "build:types": "tsc -p tsconfig.types.json",
34
- "postbuild": "node postbuild.js",
35
- "test": "jest",
36
- "test:watch": "jest --watch",
37
- "check": "tsc -b --noEmit",
38
- "coverage": "jest --coverage",
39
- "lint": "eslint src",
40
- "clean": "rm -rf dist coverage node_modules *.tsbuildinfo",
41
- "prepublishOnly": "npm run build",
42
- "format": "prettier --write ."
43
- },
44
- "keywords": [
45
- "ddd",
46
- "domain-driven-design",
47
- "entity",
48
- "aggregate",
49
- "value-object",
50
- "validation",
51
- "standard-schema",
52
- "typescript"
53
- ],
54
- "files": [
55
- "dist",
56
- "src"
57
- ],
58
- "devDependencies": {
59
- "@faker-js/faker": "^8.4.1",
60
- "zod": "^4.1.5"
61
- },
62
- "peerDependencies": {
63
- "typescript": ">=4.7.0"
64
- },
65
- "engines": {
66
- "node": ">=22.12.0"
67
- }
68
- }
1
+ {
2
+ "name": "@woltz/rich-domain",
3
+ "version": "1.9.3",
4
+ "description": "Rich Domain Library with Standard Schema validation support",
5
+ "homepage": "https://woltz.mintlify.app",
6
+ "main": "./dist/cjs/index.js",
7
+ "module": "./dist/esm/index.js",
8
+ "types": "./dist/types/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/types/index.d.ts",
12
+ "require": "./dist/cjs/index.js",
13
+ "import": "./dist/esm/index.js"
14
+ }
15
+ },
16
+ "author": "Tarcisio Andrade",
17
+ "license": "MIT",
18
+ "publishConfig": {
19
+ "access": "public"
20
+ },
21
+ "bugs": {
22
+ "url": "https://github.com/tarcisioandrade/rich-domain/issues"
23
+ },
24
+ "repository": {
25
+ "type": "git",
26
+ "url": "https://github.com/tarcisioandrade/rich-domain.git",
27
+ "directory": "packages/rich-domain"
28
+ },
29
+ "scripts": {
30
+ "build": "npm run build:cjs && npm run build:esm && npm run build:types && npm run postbuild",
31
+ "build:cjs": "tsc -p tsconfig.cjs.json",
32
+ "build:esm": "tsc -p tsconfig.esm.json",
33
+ "build:types": "tsc -p tsconfig.types.json",
34
+ "postbuild": "node postbuild.js",
35
+ "test": "jest",
36
+ "test:watch": "jest --watch",
37
+ "check": "tsc -b --noEmit",
38
+ "coverage": "jest --coverage",
39
+ "lint": "eslint src",
40
+ "clean": "rm -rf dist coverage node_modules *.tsbuildinfo",
41
+ "prepublishOnly": "npm run build",
42
+ "format": "prettier --write ."
43
+ },
44
+ "keywords": [
45
+ "ddd",
46
+ "domain-driven-design",
47
+ "entity",
48
+ "aggregate",
49
+ "value-object",
50
+ "validation",
51
+ "standard-schema",
52
+ "typescript"
53
+ ],
54
+ "files": [
55
+ "dist",
56
+ "src"
57
+ ],
58
+ "devDependencies": {
59
+ "@faker-js/faker": "^8.4.1",
60
+ "zod": "^4.1.5"
61
+ },
62
+ "peerDependencies": {
63
+ "typescript": ">=4.7.0"
64
+ },
65
+ "engines": {
66
+ "node": ">=22.12.0"
67
+ }
68
+ }
package/src/constants.ts CHANGED
@@ -1,82 +1,82 @@
1
- import {
2
- ArrayOperators,
3
- BooleanOperators,
4
- DateOperators,
5
- FilterOperator,
6
- NumberOperators,
7
- StringOperators,
8
- ValidationConfig,
9
- } from ".";
10
-
11
- export const DEFAULT_VALIDATION_CONFIG: Required<ValidationConfig> = {
12
- onCreate: true,
13
- onUpdate: true,
14
- throwOnError: true,
15
- persistInvalidMutations: true,
16
- };
17
-
18
- export const ARRAY_OPERATORS: ArrayOperators[] = [
19
- "in",
20
- "notIn",
21
- "isNull",
22
- "isNotNull",
23
- ];
24
- export const BOOLEAN_OPERATORS: BooleanOperators[] = [
25
- "equals",
26
- "notEquals",
27
- "isNull",
28
- "isNotNull",
29
- ];
30
- export const DATE_OPERATORS: DateOperators[] = [
31
- "equals",
32
- "notEquals",
33
- "greaterThan",
34
- "greaterThanOrEqual",
35
- "lessThan",
36
- "lessThanOrEqual",
37
- "in",
38
- "notIn",
39
- "between",
40
- "isNull",
41
- "isNotNull",
42
- ];
43
- export const NUMBER_OPERATORS: NumberOperators[] = [
44
- "equals",
45
- "notEquals",
46
- "greaterThan",
47
- "greaterThanOrEqual",
48
- "lessThan",
49
- "lessThanOrEqual",
50
- "in",
51
- "notIn",
52
- "between",
53
- "isNull",
54
- "isNotNull",
55
- ];
56
- export const STRING_OPERATORS: StringOperators[] = [
57
- "equals",
58
- "notEquals",
59
- "contains",
60
- "startsWith",
61
- "endsWith",
62
- "in",
63
- "notIn",
64
- "isNull",
65
- "isNotNull",
66
- ];
67
- export const FILTER_OPERATORS: FilterOperator[] = [
68
- "equals",
69
- "notEquals",
70
- "greaterThan",
71
- "greaterThanOrEqual",
72
- "lessThan",
73
- "lessThanOrEqual",
74
- "contains",
75
- "startsWith",
76
- "endsWith",
77
- "in",
78
- "notIn",
79
- "between",
80
- "isNull",
81
- "isNotNull",
82
- ];
1
+ import type {
2
+ ArrayOperators,
3
+ BooleanOperators,
4
+ DateOperators,
5
+ FilterOperator,
6
+ NumberOperators,
7
+ StringOperators,
8
+ ValidationConfig,
9
+ } from "./types/index.js";
10
+
11
+ export const DEFAULT_VALIDATION_CONFIG: Required<ValidationConfig> = {
12
+ onCreate: true,
13
+ onUpdate: true,
14
+ throwOnError: true,
15
+ persistInvalidMutations: true,
16
+ };
17
+
18
+ export const ARRAY_OPERATORS: ArrayOperators[] = [
19
+ "in",
20
+ "notIn",
21
+ "isNull",
22
+ "isNotNull",
23
+ ];
24
+ export const BOOLEAN_OPERATORS: BooleanOperators[] = [
25
+ "equals",
26
+ "notEquals",
27
+ "isNull",
28
+ "isNotNull",
29
+ ];
30
+ export const DATE_OPERATORS: DateOperators[] = [
31
+ "equals",
32
+ "notEquals",
33
+ "greaterThan",
34
+ "greaterThanOrEqual",
35
+ "lessThan",
36
+ "lessThanOrEqual",
37
+ "in",
38
+ "notIn",
39
+ "between",
40
+ "isNull",
41
+ "isNotNull",
42
+ ];
43
+ export const NUMBER_OPERATORS: NumberOperators[] = [
44
+ "equals",
45
+ "notEquals",
46
+ "greaterThan",
47
+ "greaterThanOrEqual",
48
+ "lessThan",
49
+ "lessThanOrEqual",
50
+ "in",
51
+ "notIn",
52
+ "between",
53
+ "isNull",
54
+ "isNotNull",
55
+ ];
56
+ export const STRING_OPERATORS: StringOperators[] = [
57
+ "equals",
58
+ "notEquals",
59
+ "contains",
60
+ "startsWith",
61
+ "endsWith",
62
+ "in",
63
+ "notIn",
64
+ "isNull",
65
+ "isNotNull",
66
+ ];
67
+ export const FILTER_OPERATORS: FilterOperator[] = [
68
+ "equals",
69
+ "notEquals",
70
+ "greaterThan",
71
+ "greaterThanOrEqual",
72
+ "lessThan",
73
+ "lessThanOrEqual",
74
+ "contains",
75
+ "startsWith",
76
+ "endsWith",
77
+ "in",
78
+ "notIn",
79
+ "between",
80
+ "isNull",
81
+ "isNotNull",
82
+ ];