@wix/wix-data-items-common 1.0.52

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 (228) hide show
  1. package/README.md +8 -0
  2. package/dist/cjs/api/ApiClient.js +186 -0
  3. package/dist/cjs/api/ApiClient.js.map +1 -0
  4. package/dist/cjs/api/QueryBase.js +200 -0
  5. package/dist/cjs/api/QueryBase.js.map +1 -0
  6. package/dist/cjs/api/QueryValidator.js +36 -0
  7. package/dist/cjs/api/QueryValidator.js.map +1 -0
  8. package/dist/cjs/api/WixDataAggregate.js +4 -0
  9. package/dist/cjs/api/WixDataAggregate.js.map +1 -0
  10. package/dist/cjs/api/WixDataApi.js +800 -0
  11. package/dist/cjs/api/WixDataApi.js.map +1 -0
  12. package/dist/cjs/api/WixDataFilter.js +2 -0
  13. package/dist/cjs/api/WixDataFilter.js.map +1 -0
  14. package/dist/cjs/api/WixDataPatch.js +139 -0
  15. package/dist/cjs/api/WixDataPatch.js.map +1 -0
  16. package/dist/cjs/api/WixDataQuery.js +4 -0
  17. package/dist/cjs/api/WixDataQuery.js.map +1 -0
  18. package/dist/cjs/api/WixDataResult.js +4 -0
  19. package/dist/cjs/api/WixDataResult.js.map +1 -0
  20. package/dist/cjs/api/common.js +14 -0
  21. package/dist/cjs/api/common.js.map +1 -0
  22. package/dist/cjs/api/errors.js +67 -0
  23. package/dist/cjs/api/errors.js.map +1 -0
  24. package/dist/cjs/api/impl/WixDataAggregateImpl.js +193 -0
  25. package/dist/cjs/api/impl/WixDataAggregateImpl.js.map +1 -0
  26. package/dist/cjs/api/impl/WixDataQueryImpl.js +116 -0
  27. package/dist/cjs/api/impl/WixDataQueryImpl.js.map +1 -0
  28. package/dist/cjs/api/impl/WixDataResultImpl.js +111 -0
  29. package/dist/cjs/api/impl/WixDataResultImpl.js.map +1 -0
  30. package/dist/cjs/api/index.js +32 -0
  31. package/dist/cjs/api/index.js.map +1 -0
  32. package/dist/cjs/api/types.js +2 -0
  33. package/dist/cjs/api/types.js.map +1 -0
  34. package/dist/cjs/errors/base-validator.js +92 -0
  35. package/dist/cjs/errors/base-validator.js.map +1 -0
  36. package/dist/cjs/errors/errors.js +155 -0
  37. package/dist/cjs/errors/errors.js.map +1 -0
  38. package/dist/cjs/errors/index.js +15 -0
  39. package/dist/cjs/errors/index.js.map +1 -0
  40. package/dist/cjs/errors/validations.js +91 -0
  41. package/dist/cjs/errors/validations.js.map +1 -0
  42. package/dist/cjs/external-types.d.js +2 -0
  43. package/dist/cjs/external-types.d.js.map +1 -0
  44. package/dist/cjs/filter/FilterTree.js +154 -0
  45. package/dist/cjs/filter/FilterTree.js.map +1 -0
  46. package/dist/cjs/filter/WithFilter.js +2 -0
  47. package/dist/cjs/filter/WithFilter.js.map +1 -0
  48. package/dist/cjs/filter/filterBuilder.js +53 -0
  49. package/dist/cjs/filter/filterBuilder.js.map +1 -0
  50. package/dist/cjs/filter/filterMixin.js +144 -0
  51. package/dist/cjs/filter/filterMixin.js.map +1 -0
  52. package/dist/cjs/filter/index.js +16 -0
  53. package/dist/cjs/filter/index.js.map +1 -0
  54. package/dist/cjs/index.js +120 -0
  55. package/dist/cjs/index.js.map +1 -0
  56. package/dist/cjs/sort/sortMixin.js +79 -0
  57. package/dist/cjs/sort/sortMixin.js.map +1 -0
  58. package/dist/cjs/test-types.d.js +2 -0
  59. package/dist/cjs/test-types.d.js.map +1 -0
  60. package/dist/cjs/types/api.js +4 -0
  61. package/dist/cjs/types/api.js.map +1 -0
  62. package/dist/cjs/types/data-item-types.js +46 -0
  63. package/dist/cjs/types/data-item-types.js.map +1 -0
  64. package/dist/cjs/types/error.js +2 -0
  65. package/dist/cjs/types/error.js.map +1 -0
  66. package/dist/cjs/types/index.js +16 -0
  67. package/dist/cjs/types/index.js.map +1 -0
  68. package/dist/cjs/utils/base64url.js +51 -0
  69. package/dist/cjs/utils/base64url.js.map +1 -0
  70. package/dist/cjs/utils/clone.js +21 -0
  71. package/dist/cjs/utils/clone.js.map +1 -0
  72. package/dist/cjs/utils/codec.js +64 -0
  73. package/dist/cjs/utils/codec.js.map +1 -0
  74. package/dist/cjs/utils/field-key-utils.js +18 -0
  75. package/dist/cjs/utils/field-key-utils.js.map +1 -0
  76. package/dist/cjs/utils/index.js +25 -0
  77. package/dist/cjs/utils/index.js.map +1 -0
  78. package/dist/cjs/utils/type-utils.js +54 -0
  79. package/dist/cjs/utils/type-utils.js.map +1 -0
  80. package/dist/esm/api/ApiClient.js +174 -0
  81. package/dist/esm/api/ApiClient.js.map +1 -0
  82. package/dist/esm/api/QueryBase.js +117 -0
  83. package/dist/esm/api/QueryBase.js.map +1 -0
  84. package/dist/esm/api/QueryValidator.js +32 -0
  85. package/dist/esm/api/QueryValidator.js.map +1 -0
  86. package/dist/esm/api/WixDataAggregate.js +2 -0
  87. package/dist/esm/api/WixDataAggregate.js.map +1 -0
  88. package/dist/esm/api/WixDataApi.js +829 -0
  89. package/dist/esm/api/WixDataApi.js.map +1 -0
  90. package/dist/esm/api/WixDataFilter.js +2 -0
  91. package/dist/esm/api/WixDataFilter.js.map +1 -0
  92. package/dist/esm/api/WixDataPatch.js +134 -0
  93. package/dist/esm/api/WixDataPatch.js.map +1 -0
  94. package/dist/esm/api/WixDataQuery.js +2 -0
  95. package/dist/esm/api/WixDataQuery.js.map +1 -0
  96. package/dist/esm/api/WixDataResult.js +2 -0
  97. package/dist/esm/api/WixDataResult.js.map +1 -0
  98. package/dist/esm/api/common.js +10 -0
  99. package/dist/esm/api/common.js.map +1 -0
  100. package/dist/esm/api/errors.js +52 -0
  101. package/dist/esm/api/errors.js.map +1 -0
  102. package/dist/esm/api/impl/WixDataAggregateImpl.js +214 -0
  103. package/dist/esm/api/impl/WixDataAggregateImpl.js.map +1 -0
  104. package/dist/esm/api/impl/WixDataQueryImpl.js +119 -0
  105. package/dist/esm/api/impl/WixDataQueryImpl.js.map +1 -0
  106. package/dist/esm/api/impl/WixDataResultImpl.js +100 -0
  107. package/dist/esm/api/impl/WixDataResultImpl.js.map +1 -0
  108. package/dist/esm/api/index.js +5 -0
  109. package/dist/esm/api/index.js.map +1 -0
  110. package/dist/esm/api/types.js +2 -0
  111. package/dist/esm/api/types.js.map +1 -0
  112. package/dist/esm/errors/base-validator.js +71 -0
  113. package/dist/esm/errors/base-validator.js.map +1 -0
  114. package/dist/esm/errors/errors.js +147 -0
  115. package/dist/esm/errors/errors.js.map +1 -0
  116. package/dist/esm/errors/index.js +5 -0
  117. package/dist/esm/errors/index.js.map +1 -0
  118. package/dist/esm/errors/validations.js +114 -0
  119. package/dist/esm/errors/validations.js.map +1 -0
  120. package/dist/esm/filter/FilterTree.js +148 -0
  121. package/dist/esm/filter/FilterTree.js.map +1 -0
  122. package/dist/esm/filter/WithFilter.js +2 -0
  123. package/dist/esm/filter/WithFilter.js.map +1 -0
  124. package/dist/esm/filter/filterBuilder.js +43 -0
  125. package/dist/esm/filter/filterBuilder.js.map +1 -0
  126. package/dist/esm/filter/filterMixin.js +137 -0
  127. package/dist/esm/filter/filterMixin.js.map +1 -0
  128. package/dist/esm/filter/index.js +5 -0
  129. package/dist/esm/filter/index.js.map +1 -0
  130. package/dist/esm/index.js +9 -0
  131. package/dist/esm/index.js.map +1 -0
  132. package/dist/esm/sort/sortMixin.js +74 -0
  133. package/dist/esm/sort/sortMixin.js.map +1 -0
  134. package/dist/esm/types/api.js +2 -0
  135. package/dist/esm/types/api.js.map +1 -0
  136. package/dist/esm/types/data-item-types.js +35 -0
  137. package/dist/esm/types/data-item-types.js.map +1 -0
  138. package/dist/esm/types/error.js +2 -0
  139. package/dist/esm/types/error.js.map +1 -0
  140. package/dist/esm/types/index.js +3 -0
  141. package/dist/esm/types/index.js.map +1 -0
  142. package/dist/esm/utils/base64url.js +57 -0
  143. package/dist/esm/utils/base64url.js.map +1 -0
  144. package/dist/esm/utils/clone.js +18 -0
  145. package/dist/esm/utils/clone.js.map +1 -0
  146. package/dist/esm/utils/codec.js +60 -0
  147. package/dist/esm/utils/codec.js.map +1 -0
  148. package/dist/esm/utils/field-key-utils.js +14 -0
  149. package/dist/esm/utils/field-key-utils.js.map +1 -0
  150. package/dist/esm/utils/index.js +7 -0
  151. package/dist/esm/utils/index.js.map +1 -0
  152. package/dist/esm/utils/type-utils.js +40 -0
  153. package/dist/esm/utils/type-utils.js.map +1 -0
  154. package/dist/types/api/ApiClient.d.ts +30 -0
  155. package/dist/types/api/ApiClient.d.ts.map +1 -0
  156. package/dist/types/api/QueryBase.d.ts +111 -0
  157. package/dist/types/api/QueryBase.d.ts.map +1 -0
  158. package/dist/types/api/QueryValidator.d.ts +12 -0
  159. package/dist/types/api/QueryValidator.d.ts.map +1 -0
  160. package/dist/types/api/WixDataAggregate.d.ts +320 -0
  161. package/dist/types/api/WixDataAggregate.d.ts.map +1 -0
  162. package/dist/types/api/WixDataApi.d.ts +52 -0
  163. package/dist/types/api/WixDataApi.d.ts.map +1 -0
  164. package/dist/types/api/WixDataFilter.d.ts +424 -0
  165. package/dist/types/api/WixDataFilter.d.ts.map +1 -0
  166. package/dist/types/api/WixDataPatch.d.ts +80 -0
  167. package/dist/types/api/WixDataPatch.d.ts.map +1 -0
  168. package/dist/types/api/WixDataQuery.d.ts +702 -0
  169. package/dist/types/api/WixDataQuery.d.ts.map +1 -0
  170. package/dist/types/api/WixDataResult.d.ts +144 -0
  171. package/dist/types/api/WixDataResult.d.ts.map +1 -0
  172. package/dist/types/api/common.d.ts +3 -0
  173. package/dist/types/api/common.d.ts.map +1 -0
  174. package/dist/types/api/errors.d.ts +12 -0
  175. package/dist/types/api/errors.d.ts.map +1 -0
  176. package/dist/types/api/impl/WixDataAggregateImpl.d.ts +76 -0
  177. package/dist/types/api/impl/WixDataAggregateImpl.d.ts.map +1 -0
  178. package/dist/types/api/impl/WixDataQueryImpl.d.ts +72 -0
  179. package/dist/types/api/impl/WixDataQueryImpl.d.ts.map +1 -0
  180. package/dist/types/api/impl/WixDataResultImpl.d.ts +34 -0
  181. package/dist/types/api/impl/WixDataResultImpl.d.ts.map +1 -0
  182. package/dist/types/api/index.d.ts +11 -0
  183. package/dist/types/api/index.d.ts.map +1 -0
  184. package/dist/types/api/types.d.ts +163 -0
  185. package/dist/types/api/types.d.ts.map +1 -0
  186. package/dist/types/errors/base-validator.d.ts +28 -0
  187. package/dist/types/errors/base-validator.d.ts.map +1 -0
  188. package/dist/types/errors/errors.d.ts +108 -0
  189. package/dist/types/errors/errors.d.ts.map +1 -0
  190. package/dist/types/errors/index.d.ts +5 -0
  191. package/dist/types/errors/index.d.ts.map +1 -0
  192. package/dist/types/errors/validations.d.ts +25 -0
  193. package/dist/types/errors/validations.d.ts.map +1 -0
  194. package/dist/types/filter/FilterTree.d.ts +56 -0
  195. package/dist/types/filter/FilterTree.d.ts.map +1 -0
  196. package/dist/types/filter/WithFilter.d.ts +470 -0
  197. package/dist/types/filter/WithFilter.d.ts.map +1 -0
  198. package/dist/types/filter/filterBuilder.d.ts +105 -0
  199. package/dist/types/filter/filterBuilder.d.ts.map +1 -0
  200. package/dist/types/filter/filterMixin.d.ts +61 -0
  201. package/dist/types/filter/filterMixin.d.ts.map +1 -0
  202. package/dist/types/filter/index.d.ts +8 -0
  203. package/dist/types/filter/index.d.ts.map +1 -0
  204. package/dist/types/index.d.ts +13 -0
  205. package/dist/types/index.d.ts.map +1 -0
  206. package/dist/types/sort/sortMixin.d.ts +46 -0
  207. package/dist/types/sort/sortMixin.d.ts.map +1 -0
  208. package/dist/types/types/api.d.ts +36 -0
  209. package/dist/types/types/api.d.ts.map +1 -0
  210. package/dist/types/types/data-item-types.d.ts +1448 -0
  211. package/dist/types/types/data-item-types.d.ts.map +1 -0
  212. package/dist/types/types/error.d.ts +23 -0
  213. package/dist/types/types/error.d.ts.map +1 -0
  214. package/dist/types/types/index.d.ts +4 -0
  215. package/dist/types/types/index.d.ts.map +1 -0
  216. package/dist/types/utils/base64url.d.ts +2 -0
  217. package/dist/types/utils/base64url.d.ts.map +1 -0
  218. package/dist/types/utils/clone.d.ts +2 -0
  219. package/dist/types/utils/clone.d.ts.map +1 -0
  220. package/dist/types/utils/codec.d.ts +3 -0
  221. package/dist/types/utils/codec.d.ts.map +1 -0
  222. package/dist/types/utils/field-key-utils.d.ts +2 -0
  223. package/dist/types/utils/field-key-utils.d.ts.map +1 -0
  224. package/dist/types/utils/index.d.ts +7 -0
  225. package/dist/types/utils/index.d.ts.map +1 -0
  226. package/dist/types/utils/type-utils.d.ts +11 -0
  227. package/dist/types/utils/type-utils.d.ts.map +1 -0
  228. package/package.json +89 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WixDataQueryImpl.js","sourceRoot":"","sources":["../../../../src/api/impl/WixDataQueryImpl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ import { messages, validationError } from '../../errors';
2
+ export class WixDataResultImpl {
3
+ constructor(items, paging, fetch, context, origin, currentPage) {
4
+ this.paging = paging;
5
+ this.fetch = fetch;
6
+ this.items = items;
7
+ this.currentPage = currentPage;
8
+ this.collectionName = context.collectionName;
9
+ this.skipNumber = context.skipNumber ?? origin?.skipNumber;
10
+ if (origin) {
11
+ this.pageSize = origin.pageSize;
12
+ this.totalCount = origin.totalCount;
13
+ this.allowOffsetBackwards = (currentPage ?? 0) > 0;
14
+ }
15
+ else {
16
+ // first time query – paging may have total size
17
+ this.totalCount = paging.total ?? undefined;
18
+ this.allowOffsetBackwards = (context.skipNumber ?? 0) > 0;
19
+ if (context.limitNumber !== undefined) {
20
+ this.pageSize = context.limitNumber;
21
+ }
22
+ else {
23
+ // try to eval pageSize from items size
24
+ const len = items.length;
25
+ if (len > 0 &&
26
+ ((context.skipNumber !== undefined &&
27
+ len + context.skipNumber <= (this.totalCount ?? 0)) ||
28
+ paging.hasNext)) {
29
+ this.pageSize = len;
30
+ }
31
+ }
32
+ if (this.pageSize && items.length > 0) {
33
+ // current page is not 0 if offset used
34
+ this.currentPage = Math.ceil((context.skipNumber ?? 0) / this.pageSize);
35
+ }
36
+ }
37
+ }
38
+ get length() {
39
+ return this.items.length;
40
+ }
41
+ /**
42
+ * Can be iterated as array of items
43
+ */
44
+ [Symbol.iterator]() {
45
+ return this.items[Symbol.iterator]();
46
+ }
47
+ get totalPages() {
48
+ if (this.totalCount === 0) {
49
+ return 0;
50
+ }
51
+ const pageSize = this.pageSize;
52
+ if (pageSize !== undefined && this.totalCount !== undefined) {
53
+ return Math.ceil(this.totalCount / pageSize);
54
+ }
55
+ if (this.totalCount !== undefined &&
56
+ this.skipNumber !== undefined &&
57
+ this.length > 0 &&
58
+ this.length + this.skipNumber <= this.totalCount) {
59
+ return Math.ceil(this.totalCount / this.length);
60
+ }
61
+ return undefined;
62
+ }
63
+ async next() {
64
+ if (!this.hasNext()) {
65
+ throw validationError(messages.queryValidations.noNextPage(this.collectionName));
66
+ }
67
+ const offset = (this.skipNumber ?? 0) + (this.pageSize ?? 50);
68
+ const [items, paging] = await this.fetch(this.nextCursor ?? offset);
69
+ return new WixDataResultImpl(items, paging, this.fetch, {
70
+ skipNumber: this.nextCursor ? undefined : offset,
71
+ collectionName: this.collectionName,
72
+ }, this, (this.currentPage ?? 0) + 1);
73
+ }
74
+ async prev() {
75
+ if (!this.hasPrev()) {
76
+ throw validationError(messages.queryValidations.noPrevPage(this.collectionName));
77
+ }
78
+ const offset = Math.max((this.skipNumber ?? 0) - (this.pageSize ?? 50), 0);
79
+ const [items, paging] = await this.fetch(this.prevCursor ?? offset);
80
+ return new WixDataResultImpl(items, paging, this.fetch, {
81
+ skipNumber: this.nextCursor ? undefined : offset,
82
+ collectionName: this.collectionName,
83
+ }, this, Math.max((this.currentPage ?? 0) - 1, 0) // in case if paged by cursor but on page 0
84
+ );
85
+ }
86
+ get nextCursor() {
87
+ return this.paging.cursors?.next ?? undefined;
88
+ }
89
+ get prevCursor() {
90
+ return this.paging.cursors?.prev ?? undefined;
91
+ }
92
+ hasNext() {
93
+ return this.paging.hasNext ?? false;
94
+ }
95
+ hasPrev() {
96
+ return ((this.allowOffsetBackwards && (this.currentPage ?? 0) > 0) ||
97
+ typeof this.paging.cursors?.prev === 'string');
98
+ }
99
+ }
100
+ //# sourceMappingURL=WixDataResultImpl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WixDataResultImpl.js","sourceRoot":"","sources":["../../../../src/api/impl/WixDataResultImpl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { WixDataApi } from './WixDataApi';
2
+ export { QueryValidator } from './QueryValidator';
3
+ export { QueryBase } from './QueryBase';
4
+ export { WixDataPatch, WixDataBulkPatch } from './WixDataPatch';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/api/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,71 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { clone } from '../utils/clone';
3
+ import { messages, validationError } from './errors';
4
+ class BaseValidator {
5
+ constructor() {
6
+ this._validations = [];
7
+ }
8
+ arityIsZero(args) {
9
+ return this.addValidation(() => args.length === 0, () => messages.arityValidations.arityIsZero(this.operatorName ?? ''));
10
+ }
11
+ arityIsOne(args) {
12
+ return this.addValidation(() => args.length === 1, () => messages.arityValidations.arityIsOne(this.operatorName ?? ''));
13
+ }
14
+ arityIsTwo(args) {
15
+ return this.addValidation(() => args.length === 2, () => messages.arityValidations.arityIsTwo(this.operatorName ?? ''));
16
+ }
17
+ arityIsThree(args) {
18
+ return this.addValidation(() => args.length === 3, () => messages.arityValidations.arityIsThree(this.operatorName ?? ''));
19
+ }
20
+ arityIsAtLeastTwo(args) {
21
+ return this.addValidation(() => args.length >= 2, () => messages.arityValidations.arityIsAtLeastTwo(this.operatorName ?? ''));
22
+ }
23
+ arityIsAtLeastOne(args) {
24
+ return this.addValidation(() => args.length >= 1, () => messages.arityValidations.arityIsAtLeastOne(this.operatorName ?? ''));
25
+ }
26
+ addValidation(predicateFn, messageFn) {
27
+ this._validations.push({
28
+ predicateFn,
29
+ messageFn,
30
+ });
31
+ return this;
32
+ }
33
+ }
34
+ export class AggregatingValidator extends BaseValidator {
35
+ constructor(previousInvalidArguments) {
36
+ super();
37
+ this._invalidArguments = clone(previousInvalidArguments);
38
+ }
39
+ validateAndAggregate() {
40
+ const valid = this._validations.every(({ predicateFn, messageFn }) => this._appendIfInvalid(predicateFn(), messageFn()));
41
+ return [this._invalidArguments, valid];
42
+ }
43
+ _appendIfInvalid(valid, message) {
44
+ if (!valid) {
45
+ this._invalidArguments.push(message);
46
+ return false;
47
+ }
48
+ return true;
49
+ }
50
+ }
51
+ export class RejectingValidator extends BaseValidator {
52
+ validateAndReject() {
53
+ return Promise.resolve().then(() => {
54
+ this._validations.forEach(({ predicateFn, messageFn }) => {
55
+ if (!predicateFn()) {
56
+ throw validationError(messageFn());
57
+ }
58
+ });
59
+ });
60
+ }
61
+ validateAndReturn() {
62
+ const errors = [];
63
+ this._validations.forEach(({ predicateFn, messageFn }) => {
64
+ if (!predicateFn()) {
65
+ errors.push(messageFn());
66
+ }
67
+ });
68
+ return errors;
69
+ }
70
+ }
71
+ //# sourceMappingURL=base-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-validator.js","sourceRoot":"","sources":["../../../src/errors/base-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,147 @@
1
+ import { typeForDisplay } from '../utils/type-utils';
2
+ import safeJsonStringify from 'safe-json-stringify';
3
+ // When adding new messages, update Support article with error code and explanation about the error.
4
+ export const messages = {
5
+ collectionNameMustBeAString: () => 'WDE0001: Collection name must be a string.',
6
+ itemIdMustBeAString: () => 'WDE0002: ItemId must be a string.',
7
+ itemIdsMustBeArrayOfStrings: () => 'WDE0068: Item ids must be an array of strings',
8
+ removeItemsMustBeLessThanThousand: (collectionName) => `WDE0069: Failed to remove items from [${collectionName}].\nCannot remove more than 1000 items in one request`,
9
+ fieldNameMustBeAString: () => 'WDE0003: FieldName must be a string.',
10
+ itemMustBeAnObject: (item, collectionName) => `WDE0004: Failed to save [${item}] into [${collectionName}].\nItems must be JavaScript objects.`,
11
+ itemsMustBeArrayOfObjects: (collectionName) => `WDE0005: Failed to bulk save items into [${collectionName}].\nItems must be an array of JavaScript objects and itemIds must be strings if present.`,
12
+ itemsMustBeLessThanThousand: (collectionName) => `WDE0006: Failed to bulk save items into [${collectionName}].\nCannot insert more than 1000 items in one request`,
13
+ updateItemInvalid: () => 'WDE0007: Invalid update. Updated object must have a string _id property.',
14
+ invalidArgumentLength: (method, from, to, actual) => `WDE0008: wixData.${method} expects between ${from} and ${to} arguments, but was called with ${actual}.`,
15
+ aggregateValidations: {
16
+ aggregateInvalid: (collectionName, invalidArguments) => `Failed to perform aggregation on [${collectionName}].\n${invalidArguments.join('\n')}`,
17
+ filterMustBeBuilder: (operatorName) => `WDE0011: Invalid ${operatorName} usage. ${operatorName} requires WixDataFilter.`,
18
+ filterIsAlreadySet: (operatorName) => `WDE0012: Invalid ${operatorName} usage. Filter is already set.`,
19
+ groupIsAlreadySet: (operatorName) => `WDE0013: Invalid ${operatorName} usage. Group is already set.`,
20
+ },
21
+ filterBuilderInvalid: (invalidArguments) => `Failed to build a filter.\n${invalidArguments.join('\n')}.`,
22
+ groupBuilderInvalid: (invalidArguments) => `Failed to build group.\n${invalidArguments.join('\n')}.`,
23
+ filterMustBeAnObject: () => 'WDE0016: Filter must be an object.',
24
+ sortBuilderInvalid: (invalidArguments) => `Failed to build a sort.\n${invalidArguments.join('\n')}.`,
25
+ optionsInvalid: (properties) => `WDE0018: Options must be an object with one or all of the following boolean properties: ${properties.join(', ')}.`,
26
+ referenceOperationParameterError: () => 'WDE0019: Reference operation takes a string ID or an object with an ID to be connected.',
27
+ referenceOperationFieldError: (fieldName) => `WDE0020: Provided property [${fieldName}] is not a multi-reference field.`,
28
+ invalidReferenceError: () => `WDE0021: Invalid reference`,
29
+ queryValidations: {
30
+ queryInvalid: (collectionName, invalidArguments) => `Failed to perform query on [${collectionName}].\n${invalidArguments.join('\n')}`,
31
+ isNumber: (operatorName, specifier, operand) => `WDE0032: Invalid ${operatorName} parameter [${typeForDisplay(operand)}]. ${operatorName} parameter must be a ${specifier} number.`,
32
+ isPositiveNumber: (operatorName, operand) => `WDE0033: Invalid ${operatorName} parameter [${operand}]. ${operatorName} parameter must be a positive number.`,
33
+ isNonNegativeNumber: (operatorName, operand) => `WDE0034: Invalid ${operatorName} parameter [${operand}]. ${operatorName} parameter must be a non-negative number.`,
34
+ isInteger: (operatorName, operand) => `WDE0035: Invalid ${operatorName} parameter [${operand}]. ${operatorName} parameter must be an integer.`,
35
+ isNonEmptyString: (operatorName) => `WDE0094: Invalid ${operatorName} parameter. ${operatorName} parameter must be non-empty string.`,
36
+ notGreaterThan: (operatorName, operand, value) => `WDE0036: Invalid ${operatorName} parameter [${operand}]. ${operatorName} parameter cannot exceed ${value}.`,
37
+ invalidSkipParameter: (collectionName, skipParameter) => `WDE0037: Invalid query on [${collectionName}].\nInvalid prev positioned query skip on a negative number ${skipParameter}.`,
38
+ noPrevPage: (collectionName) => `WDE0159: Invalid query on [${collectionName}].\nThere is no prev page.`,
39
+ noNextPage: (collectionName) => `WDE0165: Invalid query on [${collectionName}].\nThere is no next page.`,
40
+ },
41
+ arityValidations: {
42
+ arityIsZero: (operatorName) => `WDE0038: Invalid ${operatorName} usage. ${operatorName} does not take parameters.`,
43
+ arityIsOne: (operatorName) => `WDE0039: Invalid ${operatorName} usage. ${operatorName} requires one parameter.`,
44
+ arityIsTwo: (operatorName) => `WDE0040: Invalid ${operatorName} usage. ${operatorName} requires two parameters.`,
45
+ arityIsThree: (operatorName) => `WDE0041: Invalid ${operatorName} usage. ${operatorName} requires three parameters.`,
46
+ arityIsAtLeastTwo: (operatorName) => `WDE0042: Invalid ${operatorName} usage. ${operatorName} requires at least two parameters.`,
47
+ arityIsAtLeastOne: (operatorName) => `WDE0043: Invalid ${operatorName} usage. ${operatorName} requires at least one parameter.`,
48
+ },
49
+ filterValidations: {
50
+ typeIsString: (operatorName, value) => `WDE0044: Invalid ${operatorName} parameter value [${typeForDisplay(value)}]. ${operatorName} parameter must be a String.`,
51
+ typeIsStringNumberOrDate: (operatorName, value) => `WDE0045: Invalid ${operatorName} parameter value [${typeForDisplay(value)}]. Valid ${operatorName} parameter types are String, Number or Date.`,
52
+ sameType: (operatorName, first, second) => `WDE0046: Invalid ${operatorName} parameter values [${typeForDisplay(first)}] and [${typeForDisplay(second)}]. Both parameters must be of the same type.`,
53
+ typeIsStringNumberOrDateForAll: (operatorName) => `WDE0047: Invalid ${operatorName} usage. ${operatorName} supports only Number, String or Date items.`,
54
+ validFieldName: (operatorName, field) => `WDE0048: Invalid ${operatorName} field value [${typeForDisplay(field)}]. ${operatorName} field must be a String.`,
55
+ isInstanceOfSameClass: (operatorName, constructorName, obj) => `WDE0049: Invalid ${operatorName} parameter [${typeForDisplay(obj)}]. ${operatorName} expects ${constructorName} only.`,
56
+ isForCollection: (operatorName, constructorName, collectionName) => `WDE0050: Invalid ${operatorName} parameter query for [${collectionName}]. ${operatorName} accepts ${constructorName} for the same collection only.`,
57
+ },
58
+ filterTreeValidations: {
59
+ objectType: (operatorName, value) => `WDE0056: ${operatorName} should be an Object. Got ${stringify(value)} instead`,
60
+ arrayType: (operatorName, value) => `WDE0057: ${operatorName} should be an Array. Got ${stringify(value)} instead`,
61
+ arrayLength: (operatorName, expectedLength, value) => `WDE0057: ${stringify(value)}.length is ${value.length}. ${operatorName} Array should have length ${expectedLength}`,
62
+ comparisonOperatorType: (operatorName, value) => `WDE0058: ${operatorName} should be a Date, Number, or String. Got ${stringify(value)} instead`,
63
+ stringOperatorType: (operatorName, value) => `WDE0059: ${operatorName} should be a String. Got ${stringify(value)} instead`,
64
+ setOperatorItems: (operatorName, value) => `WDE0060: ${operatorName} Array should only contain values of types Date, Number, and String. Got ${stringify(value)} instead`,
65
+ inOperatorItems: (value) => `WDE0061: $in Array should have length 2, and match [String, Number]. Got ${stringify(value)} instead`,
66
+ matchesOperatorRequiredProperty: (propertyName, value) => `WDE0062: $matches value ${stringify(value)} does not have property ${propertyName}`,
67
+ matchesOperatorIgnoreCase: (value) => `WDE0063: $matches.ignoreCase should equal true. Got ${stringify(value)} instead`,
68
+ matchesOperatorSpecItems: (value) => `WDE0064: $matches.spec Array values should be either {"type":"anyOf","value":" -"} or {"type":"literal","value":String}. Got ${stringify(value)} instead`,
69
+ regexNotAllowed: () => 'WDE0070: $regex keyword is not allowed.',
70
+ },
71
+ sortValidations: {
72
+ typeIsStringOrArrayOfStrings: (operatorName, effectiveArgs) => `WDE0051: Invalid ${operatorName} parameters [${effectiveArgs.map(typeForDisplay)}]. Valid ${operatorName} values are String, Array of String or varargs String.`,
73
+ },
74
+ orderByValidations: {
75
+ sortModelType: (value) => `WDE0065: Sort Model should be an Array. Got ${stringify(value)} instead`,
76
+ sortModelItemType: (value) => `WDE0066: Sort Model Array should contain values of type Object only. Got ${stringify(value)} instead`,
77
+ sortModelItem: (value) => `WDE0067: Sort Model Array items should have a single property with value "asc" or "desc". Got ${stringify(value)} instead`,
78
+ },
79
+ internalError: (message) => `WDE0053: Internal wixData error: ${message}`,
80
+ serverInvalidResponse: (message) => 'WDE0055: Failed to parse server response.' +
81
+ (message ? ` ${message}` : ''),
82
+ itemDoesNotExist: (id, collectionName) => `WDE0073: Item [${id}] does not exist in collection [${collectionName}].`,
83
+ cursorPagingDoesNotSupportSkip: () => 'WDE0080: Skip is not supported in cursor paging.',
84
+ payloadIsTooLarge: () => 'WDE0109: Payload is too large.',
85
+ };
86
+ function stringify(obj) {
87
+ return safeJsonStringify(obj);
88
+ }
89
+ export const codes = {
90
+ ItemDoesNotExist: 'WD_ITEM_DOES_NOT_EXIST',
91
+ ItemAlreadyExists: 'WD_ITEM_ALREADY_EXISTS',
92
+ SiteInTemplateMode: 'WD_SITE_IN_TEMPLATE_MODE',
93
+ UnknownError: 'WD_UNKNOWN_ERROR',
94
+ ValidationError: 'WD_VALIDATION_ERROR',
95
+ CollectionDeleted: 'WD_COLLECTION_DELETED',
96
+ SchemaDoesNotExist: 'WD_SCHEMA_DOES_NOT_EXIST',
97
+ PermissionDenied: 'WD_PERMISSION_DENIED',
98
+ BadRequest: 'WD_BAD_REQUEST',
99
+ Unauthorized: 'WD_UNAUTHORIZED',
100
+ TooManyRequests: 'WD_TOO_MANY_REQUESTS',
101
+ RequestTimedOut: 'WD_REQUEST_TIMED_OUT',
102
+ QuotaExceeded: 'WD_DATABASE_QUOTA_EXCEEDED',
103
+ QueryExecutionError: 'WD_QUERY_EXECUTION_ERROR',
104
+ };
105
+ export function wixDataError(message, code, details) {
106
+ return errorWithCode(message, code, details);
107
+ }
108
+ export function validationError(message) {
109
+ return errorWithCode(message, codes.ValidationError);
110
+ }
111
+ function errorWithCode(message, code, details) {
112
+ const ErrorConstructor = code && code !== codes.UnknownError ? WixDataError : Error;
113
+ // @ts-ignore-next-line
114
+ const error = new ErrorConstructor(message);
115
+ // @ts-ignore-next-line
116
+ error.code = code;
117
+ if (details) {
118
+ // @ts-ignore-next-line
119
+ error.details = details;
120
+ }
121
+ return error;
122
+ }
123
+ class WixDataError extends Error {
124
+ constructor(message) {
125
+ super(message);
126
+ this.name = 'Error';
127
+ // marker for user error
128
+ this.errorGroup = 'User';
129
+ if (Error.captureStackTrace) {
130
+ Error.captureStackTrace(this, WixDataError);
131
+ }
132
+ }
133
+ }
134
+ export class BulkError extends Error {
135
+ constructor(message, code, item, name, originalIndex) {
136
+ super(message);
137
+ this.message = message;
138
+ this.code = code;
139
+ this.item = item;
140
+ this.name = name;
141
+ this.originalIndex = originalIndex;
142
+ if (Error.captureStackTrace) {
143
+ Error.captureStackTrace(this, BulkError);
144
+ }
145
+ }
146
+ }
147
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/errors/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { messages, codes, wixDataError, validationError, BulkError, } from './errors';
2
+ import { apiValidator } from './validations';
3
+ import { AggregatingValidator, RejectingValidator } from './base-validator';
4
+ export { messages, codes, wixDataError, validationError, BulkError, apiValidator, AggregatingValidator, RejectingValidator, };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,eAAe,EACf,SAAS,GACV,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAE3E,OAAO,EACL,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,eAAe,EACf,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,GACnB,CAAA"}
@@ -0,0 +1,114 @@
1
+ import { messages } from './errors';
2
+ import { isString, isBoolean, isObject, isArray } from '../utils/type-utils';
3
+ import { RejectingValidator } from './base-validator';
4
+ class ApiValidator extends RejectingValidator {
5
+ arity(method, args, from, to) {
6
+ return this.addValidation(() => args.length <= to && args.length >= from, () => messages.invalidArgumentLength(method, from, to, args.length));
7
+ }
8
+ _isObject(item, collectionName) {
9
+ return this.addValidation(() => isObject(item), () => messages.itemMustBeAnObject(item, collectionName));
10
+ }
11
+ item(item, collectionName, requireId) {
12
+ return this._isObject(item, collectionName).addValidation(() => (item._id !== undefined ? isString(item._id) : !requireId), () => messages.updateItemInvalid());
13
+ }
14
+ items(items, collectionName) {
15
+ return this.addValidation(() => isArray(items) &&
16
+ items.every((item) => isObject(item) &&
17
+ (item._id === undefined || item._id === null || isString(item._id))), () => messages.itemsMustBeArrayOfObjects(collectionName)).addValidation(() => items.length <= 1000, () => messages.itemsMustBeLessThanThousand(collectionName));
18
+ }
19
+ fieldName(fieldName) {
20
+ return this.addValidation(() => isString(fieldName), () => messages.fieldNameMustBeAString());
21
+ }
22
+ itemId(itemId) {
23
+ return this.addValidation(() => isString(itemId), () => messages.itemIdMustBeAString());
24
+ }
25
+ itemIds(itemIds, collectionName) {
26
+ return this.addValidation(() => isArray(itemIds) && itemIds.every((itemId) => isString(itemId)), () => messages.itemIdsMustBeArrayOfStrings()).addValidation(() => itemIds.length <= 1000, () => messages.removeItemsMustBeLessThanThousand(collectionName));
27
+ }
28
+ _options(options, flags) {
29
+ return this.addValidation(() => {
30
+ const validOptions = isObject(options) &&
31
+ flags.every((flag) => {
32
+ if (flag === 'language') {
33
+ return isNonEmptyStringIfDefined(options[flag]);
34
+ }
35
+ else {
36
+ return isBooleanIfDefined(options[flag]);
37
+ }
38
+ });
39
+ return options == null || validOptions;
40
+ }, () => messages.optionsInvalid(flags));
41
+ }
42
+ referenceRemoveParameters(parameters) {
43
+ return this.addValidation(() => isArray(parameters) && parameters.every(isRemoveReferenceParameter), messages.referenceOperationParameterError);
44
+ }
45
+ referenceParameters(parameters) {
46
+ return this.addValidation(() => isArray(parameters) && parameters.every(isReferenceParameter), messages.referenceOperationParameterError);
47
+ }
48
+ referenceParameter(parameter) {
49
+ return this.addValidation(() => isReferenceParameter(parameter), messages.referenceOperationParameterError);
50
+ }
51
+ isNonEmptyString(operand, operandName) {
52
+ return this.addValidation(() => typeof operand === 'string' && operand.length > 0, () => messages.queryValidations.isNonEmptyString(operandName));
53
+ }
54
+ references(refs) {
55
+ return this.addValidation(() => isArray(refs) &&
56
+ refs.every((ref) => isString(ref.relationshipName) &&
57
+ isReferenceParameter(ref.left) &&
58
+ isReferenceParameter(ref.right)), messages.invalidReferenceError);
59
+ }
60
+ options(options) {
61
+ return this._options(options, [
62
+ 'suppressAuth',
63
+ 'suppressHooks',
64
+ 'showDrafts',
65
+ 'consistentRead',
66
+ 'language',
67
+ ]);
68
+ }
69
+ bulkInsertOptions(options) {
70
+ return this._options(options, [
71
+ 'suppressAuth',
72
+ 'suppressHooks',
73
+ 'overrideExisting',
74
+ ]);
75
+ }
76
+ bulkUpdateOptions(options) {
77
+ return this._options(options, [
78
+ 'suppressAuth',
79
+ 'suppressHooks',
80
+ 'showDrafts',
81
+ ]);
82
+ }
83
+ bulkRemoveOptions(options) {
84
+ return this._options(options, [
85
+ 'suppressAuth',
86
+ 'suppressHooks',
87
+ 'showDrafts',
88
+ ]);
89
+ }
90
+ truncateOptions(options) {
91
+ return this._options(options, ['suppressAuth']);
92
+ }
93
+ collectionName(collectionName) {
94
+ return this.addValidation(() => isString(collectionName), () => messages.collectionNameMustBeAString());
95
+ }
96
+ }
97
+ export function apiValidator() {
98
+ return new ApiValidator();
99
+ }
100
+ function isNonEmptyStringIfDefined(value) {
101
+ return value == null || (isString(value) && value.length > 0);
102
+ }
103
+ function isBooleanIfDefined(value) {
104
+ return value == null || isBoolean(value);
105
+ }
106
+ function isReferenceParameter(parameter) {
107
+ return ((isString(parameter) && parameter !== '') ||
108
+ (isObject(parameter) && parameter.hasOwnProperty('_id')));
109
+ }
110
+ function isRemoveReferenceParameter(parameter) {
111
+ return (isString(parameter) ||
112
+ (isObject(parameter) && parameter.hasOwnProperty('_id')));
113
+ }
114
+ //# sourceMappingURL=validations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validations.js","sourceRoot":"","sources":["../../../src/errors/validations.ts"],"names":[],"mappings":"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"}