@revenexx/node 0.1.0 → 0.1.1

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 (342) hide show
  1. package/README.md +3 -0
  2. package/dist/client.d.mts +25 -0
  3. package/dist/client.d.ts +25 -0
  4. package/dist/client.js +39 -18
  5. package/dist/client.js.map +1 -1
  6. package/dist/client.mjs +35 -14
  7. package/dist/client.mjs.map +1 -1
  8. package/dist/enums/approval-rule-approver-type.d.mts +7 -0
  9. package/dist/enums/approval-rule-approver-type.d.ts +7 -0
  10. package/dist/enums/approval-rule-approver-type.js +12 -0
  11. package/dist/enums/approval-rule-approver-type.js.map +1 -0
  12. package/dist/enums/approval-rule-approver-type.mjs +11 -0
  13. package/dist/enums/approval-rule-approver-type.mjs.map +1 -0
  14. package/dist/enums/approval-rule-condition.d.mts +10 -0
  15. package/dist/enums/approval-rule-condition.d.ts +10 -0
  16. package/dist/enums/approval-rule-condition.js +15 -0
  17. package/dist/enums/approval-rule-condition.js.map +1 -0
  18. package/dist/enums/approval-rule-condition.mjs +14 -0
  19. package/dist/enums/approval-rule-condition.mjs.map +1 -0
  20. package/dist/enums/approval-rule-create-request-approver-type.d.mts +7 -0
  21. package/dist/enums/approval-rule-create-request-approver-type.d.ts +7 -0
  22. package/dist/enums/approval-rule-create-request-approver-type.js +12 -0
  23. package/dist/enums/approval-rule-create-request-approver-type.js.map +1 -0
  24. package/dist/enums/approval-rule-create-request-approver-type.mjs +11 -0
  25. package/dist/enums/approval-rule-create-request-approver-type.mjs.map +1 -0
  26. package/dist/enums/approval-rule-create-request-condition.d.mts +10 -0
  27. package/dist/enums/approval-rule-create-request-condition.d.ts +10 -0
  28. package/dist/enums/approval-rule-create-request-condition.js +15 -0
  29. package/dist/enums/approval-rule-create-request-condition.js.map +1 -0
  30. package/dist/enums/approval-rule-create-request-condition.mjs +14 -0
  31. package/dist/enums/approval-rule-create-request-condition.mjs.map +1 -0
  32. package/dist/enums/approval-rule-create-request-effect.d.mts +7 -0
  33. package/dist/enums/approval-rule-create-request-effect.d.ts +7 -0
  34. package/dist/enums/approval-rule-create-request-effect.js +12 -0
  35. package/dist/enums/approval-rule-create-request-effect.js.map +1 -0
  36. package/dist/enums/approval-rule-create-request-effect.mjs +11 -0
  37. package/dist/enums/approval-rule-create-request-effect.mjs.map +1 -0
  38. package/dist/enums/approval-rule-effect.d.mts +7 -0
  39. package/dist/enums/approval-rule-effect.d.ts +7 -0
  40. package/dist/enums/approval-rule-effect.js +12 -0
  41. package/dist/enums/approval-rule-effect.js.map +1 -0
  42. package/dist/enums/approval-rule-effect.mjs +11 -0
  43. package/dist/enums/approval-rule-effect.mjs.map +1 -0
  44. package/dist/enums/approval-rule-update-request-approver-type.d.mts +7 -0
  45. package/dist/enums/approval-rule-update-request-approver-type.d.ts +7 -0
  46. package/dist/enums/approval-rule-update-request-approver-type.js +12 -0
  47. package/dist/enums/approval-rule-update-request-approver-type.js.map +1 -0
  48. package/dist/enums/approval-rule-update-request-approver-type.mjs +11 -0
  49. package/dist/enums/approval-rule-update-request-approver-type.mjs.map +1 -0
  50. package/dist/enums/approval-rule-update-request-condition.d.mts +10 -0
  51. package/dist/enums/approval-rule-update-request-condition.d.ts +10 -0
  52. package/dist/enums/approval-rule-update-request-condition.js +15 -0
  53. package/dist/enums/approval-rule-update-request-condition.js.map +1 -0
  54. package/dist/enums/approval-rule-update-request-condition.mjs +14 -0
  55. package/dist/enums/approval-rule-update-request-condition.mjs.map +1 -0
  56. package/dist/enums/approval-rule-update-request-effect.d.mts +7 -0
  57. package/dist/enums/approval-rule-update-request-effect.d.ts +7 -0
  58. package/dist/enums/approval-rule-update-request-effect.js +12 -0
  59. package/dist/enums/approval-rule-update-request-effect.js.map +1 -0
  60. package/dist/enums/approval-rule-update-request-effect.mjs +11 -0
  61. package/dist/enums/approval-rule-update-request-effect.mjs.map +1 -0
  62. package/dist/enums/approver-type.d.mts +7 -0
  63. package/dist/enums/approver-type.d.ts +7 -0
  64. package/dist/enums/approver-type.js +12 -0
  65. package/dist/enums/approver-type.js.map +1 -0
  66. package/dist/enums/approver-type.mjs +11 -0
  67. package/dist/enums/approver-type.mjs.map +1 -0
  68. package/dist/enums/condition.d.mts +10 -0
  69. package/dist/enums/condition.d.ts +10 -0
  70. package/dist/enums/condition.js +15 -0
  71. package/dist/enums/condition.js.map +1 -0
  72. package/dist/enums/condition.mjs +14 -0
  73. package/dist/enums/condition.mjs.map +1 -0
  74. package/dist/enums/effect.d.mts +7 -0
  75. package/dist/enums/effect.d.ts +7 -0
  76. package/dist/enums/effect.js +12 -0
  77. package/dist/enums/effect.js.map +1 -0
  78. package/dist/enums/effect.mjs +11 -0
  79. package/dist/enums/effect.mjs.map +1 -0
  80. package/dist/enums/pending-approval-approver-type.d.mts +7 -0
  81. package/dist/enums/pending-approval-approver-type.d.ts +7 -0
  82. package/dist/enums/pending-approval-approver-type.js +12 -0
  83. package/dist/enums/pending-approval-approver-type.js.map +1 -0
  84. package/dist/enums/pending-approval-approver-type.mjs +11 -0
  85. package/dist/enums/pending-approval-approver-type.mjs.map +1 -0
  86. package/dist/enums/pending-approval-status.d.mts +7 -0
  87. package/dist/enums/pending-approval-status.d.ts +7 -0
  88. package/dist/enums/pending-approval-status.js +12 -0
  89. package/dist/enums/pending-approval-status.js.map +1 -0
  90. package/dist/enums/pending-approval-status.mjs +11 -0
  91. package/dist/enums/pending-approval-status.mjs.map +1 -0
  92. package/dist/enums/procurement-purchase-request-items-create-type.d.mts +7 -0
  93. package/dist/enums/procurement-purchase-request-items-create-type.d.ts +7 -0
  94. package/dist/enums/procurement-purchase-request-items-create-type.js +12 -0
  95. package/dist/enums/procurement-purchase-request-items-create-type.js.map +1 -0
  96. package/dist/enums/procurement-purchase-request-items-create-type.mjs +11 -0
  97. package/dist/enums/procurement-purchase-request-items-create-type.mjs.map +1 -0
  98. package/dist/enums/purchase-request-event-name.d.mts +12 -0
  99. package/dist/enums/purchase-request-event-name.d.ts +12 -0
  100. package/dist/enums/purchase-request-event-name.js +17 -0
  101. package/dist/enums/purchase-request-event-name.js.map +1 -0
  102. package/dist/enums/purchase-request-event-name.mjs +16 -0
  103. package/dist/enums/purchase-request-event-name.mjs.map +1 -0
  104. package/dist/enums/purchase-request-item-create-request-type.d.mts +7 -0
  105. package/dist/enums/purchase-request-item-create-request-type.d.ts +7 -0
  106. package/dist/enums/purchase-request-item-create-request-type.js +12 -0
  107. package/dist/enums/purchase-request-item-create-request-type.js.map +1 -0
  108. package/dist/enums/purchase-request-item-create-request-type.mjs +11 -0
  109. package/dist/enums/purchase-request-item-create-request-type.mjs.map +1 -0
  110. package/dist/enums/purchase-request-item-type.d.mts +7 -0
  111. package/dist/enums/purchase-request-item-type.d.ts +7 -0
  112. package/dist/enums/purchase-request-item-type.js +12 -0
  113. package/dist/enums/purchase-request-item-type.js.map +1 -0
  114. package/dist/enums/purchase-request-item-type.mjs +11 -0
  115. package/dist/enums/purchase-request-item-type.mjs.map +1 -0
  116. package/dist/enums/purchase-request-item-update-request-type.d.mts +7 -0
  117. package/dist/enums/purchase-request-item-update-request-type.d.ts +7 -0
  118. package/dist/enums/purchase-request-item-update-request-type.js +12 -0
  119. package/dist/enums/purchase-request-item-update-request-type.js.map +1 -0
  120. package/dist/enums/purchase-request-item-update-request-type.mjs +11 -0
  121. package/dist/enums/purchase-request-item-update-request-type.mjs.map +1 -0
  122. package/dist/enums/purchase-request-status.d.mts +9 -0
  123. package/dist/enums/purchase-request-status.d.ts +9 -0
  124. package/dist/enums/purchase-request-status.js +14 -0
  125. package/dist/enums/purchase-request-status.js.map +1 -0
  126. package/dist/enums/purchase-request-status.mjs +13 -0
  127. package/dist/enums/purchase-request-status.mjs.map +1 -0
  128. package/dist/enums/submit-item-type.d.mts +7 -0
  129. package/dist/enums/submit-item-type.d.ts +7 -0
  130. package/dist/enums/submit-item-type.js +12 -0
  131. package/dist/enums/submit-item-type.js.map +1 -0
  132. package/dist/enums/submit-item-type.mjs +11 -0
  133. package/dist/enums/submit-item-type.mjs.map +1 -0
  134. package/dist/enums/submit-result-outcome.d.mts +9 -0
  135. package/dist/enums/submit-result-outcome.d.ts +9 -0
  136. package/dist/enums/submit-result-outcome.js +14 -0
  137. package/dist/enums/submit-result-outcome.js.map +1 -0
  138. package/dist/enums/submit-result-outcome.mjs +13 -0
  139. package/dist/enums/submit-result-outcome.mjs.map +1 -0
  140. package/dist/index.d.mts +23 -0
  141. package/dist/index.d.ts +23 -0
  142. package/dist/index.js +115 -0
  143. package/dist/index.js.map +1 -1
  144. package/dist/index.mjs +23 -0
  145. package/dist/index.mjs.map +1 -1
  146. package/dist/inputFile.js +1 -2
  147. package/dist/inputFile.js.map +1 -1
  148. package/dist/inputFile.mjs +0 -1
  149. package/dist/inputFile.mjs.map +1 -1
  150. package/dist/models.d.mts +1027 -36
  151. package/dist/models.d.ts +1027 -36
  152. package/dist/operator.js +243 -204
  153. package/dist/operator.js.map +1 -1
  154. package/dist/operator.mjs +242 -203
  155. package/dist/operator.mjs.map +1 -1
  156. package/dist/permission.js +58 -48
  157. package/dist/permission.js.map +1 -1
  158. package/dist/permission.mjs +58 -48
  159. package/dist/permission.mjs.map +1 -1
  160. package/dist/query.js +525 -422
  161. package/dist/query.js.map +1 -1
  162. package/dist/query.mjs +524 -421
  163. package/dist/query.mjs.map +1 -1
  164. package/dist/services/apps.d.mts +18 -0
  165. package/dist/services/apps.d.ts +18 -0
  166. package/dist/services/avatars.d.mts +18 -0
  167. package/dist/services/avatars.d.ts +18 -0
  168. package/dist/services/carts-io.d.mts +46 -28
  169. package/dist/services/carts-io.d.ts +46 -28
  170. package/dist/services/carts-io.js.map +1 -1
  171. package/dist/services/carts-io.mjs.map +1 -1
  172. package/dist/services/carts-items.d.mts +42 -24
  173. package/dist/services/carts-items.d.ts +42 -24
  174. package/dist/services/carts-items.js.map +1 -1
  175. package/dist/services/carts-items.mjs.map +1 -1
  176. package/dist/services/carts.d.mts +70 -52
  177. package/dist/services/carts.d.ts +70 -52
  178. package/dist/services/carts.js.map +1 -1
  179. package/dist/services/carts.mjs.map +1 -1
  180. package/dist/services/channels.d.mts +64 -46
  181. package/dist/services/channels.d.ts +64 -46
  182. package/dist/services/channels.js +1 -1
  183. package/dist/services/channels.js.map +1 -1
  184. package/dist/services/channels.mjs +1 -1
  185. package/dist/services/channels.mjs.map +1 -1
  186. package/dist/services/cost-centers.d.mts +18 -0
  187. package/dist/services/cost-centers.d.ts +18 -0
  188. package/dist/services/customers-contacts.d.mts +62 -44
  189. package/dist/services/customers-contacts.d.ts +62 -44
  190. package/dist/services/customers-contacts.js.map +1 -1
  191. package/dist/services/customers-contacts.mjs.map +1 -1
  192. package/dist/services/customers-organizations.d.mts +58 -40
  193. package/dist/services/customers-organizations.d.ts +58 -40
  194. package/dist/services/customers-organizations.js.map +1 -1
  195. package/dist/services/customers-organizations.mjs.map +1 -1
  196. package/dist/services/customers-roles.d.mts +26 -8
  197. package/dist/services/customers-roles.d.ts +26 -8
  198. package/dist/services/customers-roles.js.map +1 -1
  199. package/dist/services/customers-roles.mjs.map +1 -1
  200. package/dist/services/customers-segments.d.mts +62 -44
  201. package/dist/services/customers-segments.d.ts +62 -44
  202. package/dist/services/customers-segments.js.map +1 -1
  203. package/dist/services/customers-segments.mjs.map +1 -1
  204. package/dist/services/customers-value-lists.d.mts +90 -72
  205. package/dist/services/customers-value-lists.d.ts +90 -72
  206. package/dist/services/customers-value-lists.js.map +1 -1
  207. package/dist/services/customers-value-lists.mjs.map +1 -1
  208. package/dist/services/customers.d.mts +78 -60
  209. package/dist/services/customers.d.ts +78 -60
  210. package/dist/services/customers.js.map +1 -1
  211. package/dist/services/customers.mjs.map +1 -1
  212. package/dist/services/events.d.mts +18 -0
  213. package/dist/services/events.d.ts +18 -0
  214. package/dist/services/forms.d.mts +66 -48
  215. package/dist/services/forms.d.ts +66 -48
  216. package/dist/services/forms.js.map +1 -1
  217. package/dist/services/forms.mjs.map +1 -1
  218. package/dist/services/health.d.mts +18 -0
  219. package/dist/services/health.d.ts +18 -0
  220. package/dist/services/inventories-locations.d.mts +38 -20
  221. package/dist/services/inventories-locations.d.ts +38 -20
  222. package/dist/services/inventories-locations.js.map +1 -1
  223. package/dist/services/inventories-locations.mjs.map +1 -1
  224. package/dist/services/inventories-reservations.d.mts +38 -20
  225. package/dist/services/inventories-reservations.d.ts +38 -20
  226. package/dist/services/inventories-reservations.js.map +1 -1
  227. package/dist/services/inventories-reservations.mjs.map +1 -1
  228. package/dist/services/inventories-stock.d.mts +70 -52
  229. package/dist/services/inventories-stock.d.ts +70 -52
  230. package/dist/services/inventories-stock.js.map +1 -1
  231. package/dist/services/inventories-stock.mjs.map +1 -1
  232. package/dist/services/io.d.mts +66 -48
  233. package/dist/services/io.d.ts +66 -48
  234. package/dist/services/io.js +2 -2
  235. package/dist/services/io.js.map +1 -1
  236. package/dist/services/io.mjs +2 -2
  237. package/dist/services/io.mjs.map +1 -1
  238. package/dist/services/locale.d.mts +18 -0
  239. package/dist/services/locale.d.ts +18 -0
  240. package/dist/services/markets.d.mts +122 -104
  241. package/dist/services/markets.d.ts +122 -104
  242. package/dist/services/markets.js.map +1 -1
  243. package/dist/services/markets.mjs.map +1 -1
  244. package/dist/services/messaging.d.mts +194 -176
  245. package/dist/services/messaging.d.ts +194 -176
  246. package/dist/services/messaging.js +3 -3
  247. package/dist/services/messaging.js.map +1 -1
  248. package/dist/services/messaging.mjs +3 -3
  249. package/dist/services/messaging.mjs.map +1 -1
  250. package/dist/services/orderlists.d.mts +96 -78
  251. package/dist/services/orderlists.d.ts +96 -78
  252. package/dist/services/orderlists.js +1 -1
  253. package/dist/services/orderlists.js.map +1 -1
  254. package/dist/services/orderlists.mjs +1 -1
  255. package/dist/services/orderlists.mjs.map +1 -1
  256. package/dist/services/orders.d.mts +114 -96
  257. package/dist/services/orders.d.ts +114 -96
  258. package/dist/services/orders.js.map +1 -1
  259. package/dist/services/orders.mjs.map +1 -1
  260. package/dist/services/pages-collaboration.d.mts +34 -16
  261. package/dist/services/pages-collaboration.d.ts +34 -16
  262. package/dist/services/pages-collaboration.js.map +1 -1
  263. package/dist/services/pages-collaboration.mjs.map +1 -1
  264. package/dist/services/pages-delivery.d.mts +26 -8
  265. package/dist/services/pages-delivery.d.ts +26 -8
  266. package/dist/services/pages-delivery.js.map +1 -1
  267. package/dist/services/pages-delivery.mjs.map +1 -1
  268. package/dist/services/pages-editor.d.mts +34 -16
  269. package/dist/services/pages-editor.d.ts +34 -16
  270. package/dist/services/pages-editor.js.map +1 -1
  271. package/dist/services/pages-editor.mjs.map +1 -1
  272. package/dist/services/pages.d.mts +82 -64
  273. package/dist/services/pages.d.ts +82 -64
  274. package/dist/services/pages.js.map +1 -1
  275. package/dist/services/pages.mjs.map +1 -1
  276. package/dist/services/payments-ledger.d.mts +54 -36
  277. package/dist/services/payments-ledger.d.ts +54 -36
  278. package/dist/services/payments-ledger.js.map +1 -1
  279. package/dist/services/payments-ledger.mjs.map +1 -1
  280. package/dist/services/payments-methods.d.mts +34 -16
  281. package/dist/services/payments-methods.d.ts +34 -16
  282. package/dist/services/payments-methods.js.map +1 -1
  283. package/dist/services/payments-methods.mjs.map +1 -1
  284. package/dist/services/payments-providers.d.mts +38 -20
  285. package/dist/services/payments-providers.d.ts +38 -20
  286. package/dist/services/payments-providers.js.map +1 -1
  287. package/dist/services/payments-providers.mjs.map +1 -1
  288. package/dist/services/prices.d.mts +86 -68
  289. package/dist/services/prices.d.ts +86 -68
  290. package/dist/services/prices.js.map +1 -1
  291. package/dist/services/prices.mjs.map +1 -1
  292. package/dist/services/procurement.d.mts +991 -0
  293. package/dist/services/procurement.d.ts +991 -0
  294. package/dist/services/procurement.js +1185 -0
  295. package/dist/services/procurement.js.map +1 -0
  296. package/dist/services/procurement.mjs +1184 -0
  297. package/dist/services/procurement.mjs.map +1 -0
  298. package/dist/services/products-assets.d.mts +34 -16
  299. package/dist/services/products-assets.d.ts +34 -16
  300. package/dist/services/products-assets.js.map +1 -1
  301. package/dist/services/products-assets.mjs.map +1 -1
  302. package/dist/services/products-categories.d.mts +66 -48
  303. package/dist/services/products-categories.d.ts +66 -48
  304. package/dist/services/products-categories.js.map +1 -1
  305. package/dist/services/products-categories.mjs.map +1 -1
  306. package/dist/services/products-data-model.d.mts +166 -148
  307. package/dist/services/products-data-model.d.ts +166 -148
  308. package/dist/services/products-data-model.js.map +1 -1
  309. package/dist/services/products-data-model.mjs.map +1 -1
  310. package/dist/services/products-references.d.mts +50 -32
  311. package/dist/services/products-references.d.ts +50 -32
  312. package/dist/services/products-references.js.map +1 -1
  313. package/dist/services/products-references.mjs.map +1 -1
  314. package/dist/services/products.d.mts +70 -52
  315. package/dist/services/products.d.ts +70 -52
  316. package/dist/services/products.js.map +1 -1
  317. package/dist/services/products.mjs.map +1 -1
  318. package/dist/services/search.d.mts +40 -22
  319. package/dist/services/search.d.ts +40 -22
  320. package/dist/services/search.js +1 -1
  321. package/dist/services/search.js.map +1 -1
  322. package/dist/services/search.mjs +1 -1
  323. package/dist/services/search.mjs.map +1 -1
  324. package/dist/services/settings.d.mts +18 -0
  325. package/dist/services/settings.d.ts +18 -0
  326. package/dist/services/shipping-carriers.d.mts +42 -24
  327. package/dist/services/shipping-carriers.d.ts +42 -24
  328. package/dist/services/shipping-carriers.js.map +1 -1
  329. package/dist/services/shipping-carriers.mjs.map +1 -1
  330. package/dist/services/shipping-methods.d.mts +70 -52
  331. package/dist/services/shipping-methods.d.ts +70 -52
  332. package/dist/services/shipping-methods.js.map +1 -1
  333. package/dist/services/shipping-methods.mjs.map +1 -1
  334. package/dist/services/shipping-value-lists.d.mts +62 -44
  335. package/dist/services/shipping-value-lists.d.ts +62 -44
  336. package/dist/services/shipping-value-lists.js.map +1 -1
  337. package/dist/services/shipping-value-lists.mjs.map +1 -1
  338. package/dist/services/sites.d.mts +18 -0
  339. package/dist/services/sites.d.ts +18 -0
  340. package/dist/services/storage.d.mts +18 -0
  341. package/dist/services/storage.d.ts +18 -0
  342. package/package.json +6 -3
package/dist/operator.js CHANGED
@@ -12,7 +12,7 @@ var Condition = /* @__PURE__ */ ((Condition2) => {
12
12
  Condition2["IsNotNull"] = "isNotNull";
13
13
  return Condition2;
14
14
  })(Condition || {});
15
- const _Operator = class _Operator {
15
+ class Operator {
16
16
  /**
17
17
  * Constructor for Operator class.
18
18
  *
@@ -40,227 +40,266 @@ const _Operator = class _Operator {
40
40
  values: this.values
41
41
  });
42
42
  }
43
- };
44
- /**
45
- * Increment a numeric attribute by a specified value.
46
- *
47
- * @param {number} value
48
- * @param {number} max
49
- * @returns {string}
50
- */
51
- _Operator.increment = (value = 1, max) => {
52
- if (isNaN(value) || !isFinite(value)) {
53
- throw new Error("Value cannot be NaN or Infinity");
43
+ static {
44
+ /**
45
+ * Increment a numeric attribute by a specified value.
46
+ *
47
+ * @param {number} value
48
+ * @param {number} max
49
+ * @returns {string}
50
+ */
51
+ this.increment = (value = 1, max) => {
52
+ if (isNaN(value) || !isFinite(value)) {
53
+ throw new Error("Value cannot be NaN or Infinity");
54
+ }
55
+ if (max !== void 0 && (isNaN(max) || !isFinite(max))) {
56
+ throw new Error("Max cannot be NaN or Infinity");
57
+ }
58
+ const values = [value];
59
+ if (max !== void 0) {
60
+ values.push(max);
61
+ }
62
+ return new Operator("increment", values).toString();
63
+ };
64
+ }
65
+ static {
66
+ /**
67
+ * Decrement a numeric attribute by a specified value.
68
+ *
69
+ * @param {number} value
70
+ * @param {number} min
71
+ * @returns {string}
72
+ */
73
+ this.decrement = (value = 1, min) => {
74
+ if (isNaN(value) || !isFinite(value)) {
75
+ throw new Error("Value cannot be NaN or Infinity");
76
+ }
77
+ if (min !== void 0 && (isNaN(min) || !isFinite(min))) {
78
+ throw new Error("Min cannot be NaN or Infinity");
79
+ }
80
+ const values = [value];
81
+ if (min !== void 0) {
82
+ values.push(min);
83
+ }
84
+ return new Operator("decrement", values).toString();
85
+ };
86
+ }
87
+ static {
88
+ /**
89
+ * Multiply a numeric attribute by a specified factor.
90
+ *
91
+ * @param {number} factor
92
+ * @param {number} max
93
+ * @returns {string}
94
+ */
95
+ this.multiply = (factor, max) => {
96
+ if (isNaN(factor) || !isFinite(factor)) {
97
+ throw new Error("Factor cannot be NaN or Infinity");
98
+ }
99
+ if (max !== void 0 && (isNaN(max) || !isFinite(max))) {
100
+ throw new Error("Max cannot be NaN or Infinity");
101
+ }
102
+ const values = [factor];
103
+ if (max !== void 0) {
104
+ values.push(max);
105
+ }
106
+ return new Operator("multiply", values).toString();
107
+ };
54
108
  }
55
- if (max !== void 0 && (isNaN(max) || !isFinite(max))) {
56
- throw new Error("Max cannot be NaN or Infinity");
109
+ static {
110
+ /**
111
+ * Divide a numeric attribute by a specified divisor.
112
+ *
113
+ * @param {number} divisor
114
+ * @param {number} min
115
+ * @returns {string}
116
+ */
117
+ this.divide = (divisor, min) => {
118
+ if (isNaN(divisor) || !isFinite(divisor)) {
119
+ throw new Error("Divisor cannot be NaN or Infinity");
120
+ }
121
+ if (min !== void 0 && (isNaN(min) || !isFinite(min))) {
122
+ throw new Error("Min cannot be NaN or Infinity");
123
+ }
124
+ if (divisor === 0) {
125
+ throw new Error("Divisor cannot be zero");
126
+ }
127
+ const values = [divisor];
128
+ if (min !== void 0) {
129
+ values.push(min);
130
+ }
131
+ return new Operator("divide", values).toString();
132
+ };
57
133
  }
58
- const values = [value];
59
- if (max !== void 0) {
60
- values.push(max);
134
+ static {
135
+ /**
136
+ * Apply modulo operation on a numeric attribute.
137
+ *
138
+ * @param {number} divisor
139
+ * @returns {string}
140
+ */
141
+ this.modulo = (divisor) => {
142
+ if (isNaN(divisor) || !isFinite(divisor)) {
143
+ throw new Error("Divisor cannot be NaN or Infinity");
144
+ }
145
+ if (divisor === 0) {
146
+ throw new Error("Divisor cannot be zero");
147
+ }
148
+ return new Operator("modulo", [divisor]).toString();
149
+ };
61
150
  }
62
- return new _Operator("increment", values).toString();
63
- };
64
- /**
65
- * Decrement a numeric attribute by a specified value.
66
- *
67
- * @param {number} value
68
- * @param {number} min
69
- * @returns {string}
70
- */
71
- _Operator.decrement = (value = 1, min) => {
72
- if (isNaN(value) || !isFinite(value)) {
73
- throw new Error("Value cannot be NaN or Infinity");
151
+ static {
152
+ /**
153
+ * Raise a numeric attribute to a specified power.
154
+ *
155
+ * @param {number} exponent
156
+ * @param {number} max
157
+ * @returns {string}
158
+ */
159
+ this.power = (exponent, max) => {
160
+ if (isNaN(exponent) || !isFinite(exponent)) {
161
+ throw new Error("Exponent cannot be NaN or Infinity");
162
+ }
163
+ if (max !== void 0 && (isNaN(max) || !isFinite(max))) {
164
+ throw new Error("Max cannot be NaN or Infinity");
165
+ }
166
+ const values = [exponent];
167
+ if (max !== void 0) {
168
+ values.push(max);
169
+ }
170
+ return new Operator("power", values).toString();
171
+ };
74
172
  }
75
- if (min !== void 0 && (isNaN(min) || !isFinite(min))) {
76
- throw new Error("Min cannot be NaN or Infinity");
173
+ static {
174
+ /**
175
+ * Append values to an array attribute.
176
+ *
177
+ * @param {any[]} values
178
+ * @returns {string}
179
+ */
180
+ this.arrayAppend = (values) => new Operator("arrayAppend", values).toString();
77
181
  }
78
- const values = [value];
79
- if (min !== void 0) {
80
- values.push(min);
182
+ static {
183
+ /**
184
+ * Prepend values to an array attribute.
185
+ *
186
+ * @param {any[]} values
187
+ * @returns {string}
188
+ */
189
+ this.arrayPrepend = (values) => new Operator("arrayPrepend", values).toString();
81
190
  }
82
- return new _Operator("decrement", values).toString();
83
- };
84
- /**
85
- * Multiply a numeric attribute by a specified factor.
86
- *
87
- * @param {number} factor
88
- * @param {number} max
89
- * @returns {string}
90
- */
91
- _Operator.multiply = (factor, max) => {
92
- if (isNaN(factor) || !isFinite(factor)) {
93
- throw new Error("Factor cannot be NaN or Infinity");
191
+ static {
192
+ /**
193
+ * Insert a value at a specific index in an array attribute.
194
+ *
195
+ * @param {number} index
196
+ * @param {any} value
197
+ * @returns {string}
198
+ */
199
+ this.arrayInsert = (index, value) => new Operator("arrayInsert", [index, value]).toString();
94
200
  }
95
- if (max !== void 0 && (isNaN(max) || !isFinite(max))) {
96
- throw new Error("Max cannot be NaN or Infinity");
201
+ static {
202
+ /**
203
+ * Remove a value from an array attribute.
204
+ *
205
+ * @param {any} value
206
+ * @returns {string}
207
+ */
208
+ this.arrayRemove = (value) => new Operator("arrayRemove", [value]).toString();
97
209
  }
98
- const values = [factor];
99
- if (max !== void 0) {
100
- values.push(max);
210
+ static {
211
+ /**
212
+ * Remove duplicate values from an array attribute.
213
+ *
214
+ * @returns {string}
215
+ */
216
+ this.arrayUnique = () => new Operator("arrayUnique", []).toString();
101
217
  }
102
- return new _Operator("multiply", values).toString();
103
- };
104
- /**
105
- * Divide a numeric attribute by a specified divisor.
106
- *
107
- * @param {number} divisor
108
- * @param {number} min
109
- * @returns {string}
110
- */
111
- _Operator.divide = (divisor, min) => {
112
- if (isNaN(divisor) || !isFinite(divisor)) {
113
- throw new Error("Divisor cannot be NaN or Infinity");
218
+ static {
219
+ /**
220
+ * Keep only values that exist in both the current array and the provided array.
221
+ *
222
+ * @param {any[]} values
223
+ * @returns {string}
224
+ */
225
+ this.arrayIntersect = (values) => new Operator("arrayIntersect", values).toString();
114
226
  }
115
- if (min !== void 0 && (isNaN(min) || !isFinite(min))) {
116
- throw new Error("Min cannot be NaN or Infinity");
227
+ static {
228
+ /**
229
+ * Remove values from the array that exist in the provided array.
230
+ *
231
+ * @param {any[]} values
232
+ * @returns {string}
233
+ */
234
+ this.arrayDiff = (values) => new Operator("arrayDiff", values).toString();
117
235
  }
118
- if (divisor === 0) {
119
- throw new Error("Divisor cannot be zero");
236
+ static {
237
+ /**
238
+ * Filter array values based on a condition.
239
+ *
240
+ * @param {Condition} condition
241
+ * @param {any} value
242
+ * @returns {string}
243
+ */
244
+ this.arrayFilter = (condition, value) => {
245
+ const values = [condition, value === void 0 ? null : value];
246
+ return new Operator("arrayFilter", values).toString();
247
+ };
120
248
  }
121
- const values = [divisor];
122
- if (min !== void 0) {
123
- values.push(min);
249
+ static {
250
+ /**
251
+ * Concatenate a value to a string or array attribute.
252
+ *
253
+ * @param {any} value
254
+ * @returns {string}
255
+ */
256
+ this.stringConcat = (value) => new Operator("stringConcat", [value]).toString();
124
257
  }
125
- return new _Operator("divide", values).toString();
126
- };
127
- /**
128
- * Apply modulo operation on a numeric attribute.
129
- *
130
- * @param {number} divisor
131
- * @returns {string}
132
- */
133
- _Operator.modulo = (divisor) => {
134
- if (isNaN(divisor) || !isFinite(divisor)) {
135
- throw new Error("Divisor cannot be NaN or Infinity");
258
+ static {
259
+ /**
260
+ * Replace occurrences of a search string with a replacement string.
261
+ *
262
+ * @param {string} search
263
+ * @param {string} replace
264
+ * @returns {string}
265
+ */
266
+ this.stringReplace = (search, replace) => new Operator("stringReplace", [search, replace]).toString();
136
267
  }
137
- if (divisor === 0) {
138
- throw new Error("Divisor cannot be zero");
268
+ static {
269
+ /**
270
+ * Toggle a boolean attribute.
271
+ *
272
+ * @returns {string}
273
+ */
274
+ this.toggle = () => new Operator("toggle", []).toString();
139
275
  }
140
- return new _Operator("modulo", [divisor]).toString();
141
- };
142
- /**
143
- * Raise a numeric attribute to a specified power.
144
- *
145
- * @param {number} exponent
146
- * @param {number} max
147
- * @returns {string}
148
- */
149
- _Operator.power = (exponent, max) => {
150
- if (isNaN(exponent) || !isFinite(exponent)) {
151
- throw new Error("Exponent cannot be NaN or Infinity");
276
+ static {
277
+ /**
278
+ * Add days to a date attribute.
279
+ *
280
+ * @param {number} days
281
+ * @returns {string}
282
+ */
283
+ this.dateAddDays = (days) => new Operator("dateAddDays", [days]).toString();
152
284
  }
153
- if (max !== void 0 && (isNaN(max) || !isFinite(max))) {
154
- throw new Error("Max cannot be NaN or Infinity");
285
+ static {
286
+ /**
287
+ * Subtract days from a date attribute.
288
+ *
289
+ * @param {number} days
290
+ * @returns {string}
291
+ */
292
+ this.dateSubDays = (days) => new Operator("dateSubDays", [days]).toString();
155
293
  }
156
- const values = [exponent];
157
- if (max !== void 0) {
158
- values.push(max);
294
+ static {
295
+ /**
296
+ * Set a date attribute to the current date and time.
297
+ *
298
+ * @returns {string}
299
+ */
300
+ this.dateSetNow = () => new Operator("dateSetNow", []).toString();
159
301
  }
160
- return new _Operator("power", values).toString();
161
- };
162
- /**
163
- * Append values to an array attribute.
164
- *
165
- * @param {any[]} values
166
- * @returns {string}
167
- */
168
- _Operator.arrayAppend = (values) => new _Operator("arrayAppend", values).toString();
169
- /**
170
- * Prepend values to an array attribute.
171
- *
172
- * @param {any[]} values
173
- * @returns {string}
174
- */
175
- _Operator.arrayPrepend = (values) => new _Operator("arrayPrepend", values).toString();
176
- /**
177
- * Insert a value at a specific index in an array attribute.
178
- *
179
- * @param {number} index
180
- * @param {any} value
181
- * @returns {string}
182
- */
183
- _Operator.arrayInsert = (index, value) => new _Operator("arrayInsert", [index, value]).toString();
184
- /**
185
- * Remove a value from an array attribute.
186
- *
187
- * @param {any} value
188
- * @returns {string}
189
- */
190
- _Operator.arrayRemove = (value) => new _Operator("arrayRemove", [value]).toString();
191
- /**
192
- * Remove duplicate values from an array attribute.
193
- *
194
- * @returns {string}
195
- */
196
- _Operator.arrayUnique = () => new _Operator("arrayUnique", []).toString();
197
- /**
198
- * Keep only values that exist in both the current array and the provided array.
199
- *
200
- * @param {any[]} values
201
- * @returns {string}
202
- */
203
- _Operator.arrayIntersect = (values) => new _Operator("arrayIntersect", values).toString();
204
- /**
205
- * Remove values from the array that exist in the provided array.
206
- *
207
- * @param {any[]} values
208
- * @returns {string}
209
- */
210
- _Operator.arrayDiff = (values) => new _Operator("arrayDiff", values).toString();
211
- /**
212
- * Filter array values based on a condition.
213
- *
214
- * @param {Condition} condition
215
- * @param {any} value
216
- * @returns {string}
217
- */
218
- _Operator.arrayFilter = (condition, value) => {
219
- const values = [condition, value === void 0 ? null : value];
220
- return new _Operator("arrayFilter", values).toString();
221
- };
222
- /**
223
- * Concatenate a value to a string or array attribute.
224
- *
225
- * @param {any} value
226
- * @returns {string}
227
- */
228
- _Operator.stringConcat = (value) => new _Operator("stringConcat", [value]).toString();
229
- /**
230
- * Replace occurrences of a search string with a replacement string.
231
- *
232
- * @param {string} search
233
- * @param {string} replace
234
- * @returns {string}
235
- */
236
- _Operator.stringReplace = (search, replace) => new _Operator("stringReplace", [search, replace]).toString();
237
- /**
238
- * Toggle a boolean attribute.
239
- *
240
- * @returns {string}
241
- */
242
- _Operator.toggle = () => new _Operator("toggle", []).toString();
243
- /**
244
- * Add days to a date attribute.
245
- *
246
- * @param {number} days
247
- * @returns {string}
248
- */
249
- _Operator.dateAddDays = (days) => new _Operator("dateAddDays", [days]).toString();
250
- /**
251
- * Subtract days from a date attribute.
252
- *
253
- * @param {number} days
254
- * @returns {string}
255
- */
256
- _Operator.dateSubDays = (days) => new _Operator("dateSubDays", [days]).toString();
257
- /**
258
- * Set a date attribute to the current date and time.
259
- *
260
- * @returns {string}
261
- */
262
- _Operator.dateSetNow = () => new _Operator("dateSetNow", []).toString();
263
- let Operator = _Operator;
302
+ }
264
303
 
265
304
  exports.Condition = Condition;
266
305
  exports.Operator = Operator;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/operator.ts"],"names":["Condition"],"mappings":"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","sourcesContent":["type OperatorValuesSingle = string | number | boolean;\nexport type OperatorValuesList = string[] | number[] | boolean[] | any[];\nexport type OperatorValues = OperatorValuesSingle | OperatorValuesList;\n\nexport enum Condition {\n Equal = \"equal\",\n NotEqual = \"notEqual\",\n GreaterThan = \"greaterThan\",\n GreaterThanEqual = \"greaterThanEqual\",\n LessThan = \"lessThan\",\n LessThanEqual = \"lessThanEqual\",\n Contains = \"contains\",\n IsNull = \"isNull\",\n IsNotNull = \"isNotNull\",\n}\n\n/**\n * Helper class to generate operator strings for atomic operations.\n */\nexport class Operator {\n method: string;\n values: OperatorValuesList | undefined;\n\n /**\n * Constructor for Operator class.\n *\n * @param {string} method\n * @param {OperatorValues} values\n */\n constructor(\n method: string,\n values?: OperatorValues\n ) {\n this.method = method;\n\n if (values !== undefined) {\n if (Array.isArray(values)) {\n this.values = values;\n } else {\n this.values = [values] as OperatorValuesList;\n }\n }\n }\n\n /**\n * Convert the operator object to a JSON string.\n *\n * @returns {string}\n */\n toString(): string {\n return JSON.stringify({\n method: this.method,\n values: this.values,\n });\n }\n\n /**\n * Increment a numeric attribute by a specified value.\n *\n * @param {number} value\n * @param {number} max\n * @returns {string}\n */\n static increment = (value: number = 1, max?: number): string => {\n if (isNaN(value) || !isFinite(value)) {\n throw new Error(\"Value cannot be NaN or Infinity\");\n }\n if (max !== undefined && (isNaN(max) || !isFinite(max))) {\n throw new Error(\"Max cannot be NaN or Infinity\");\n }\n const values: any[] = [value];\n if (max !== undefined) {\n values.push(max);\n }\n return new Operator(\"increment\", values).toString();\n };\n\n /**\n * Decrement a numeric attribute by a specified value.\n *\n * @param {number} value\n * @param {number} min\n * @returns {string}\n */\n static decrement = (value: number = 1, min?: number): string => {\n if (isNaN(value) || !isFinite(value)) {\n throw new Error(\"Value cannot be NaN or Infinity\");\n }\n if (min !== undefined && (isNaN(min) || !isFinite(min))) {\n throw new Error(\"Min cannot be NaN or Infinity\");\n }\n const values: any[] = [value];\n if (min !== undefined) {\n values.push(min);\n }\n return new Operator(\"decrement\", values).toString();\n };\n\n /**\n * Multiply a numeric attribute by a specified factor.\n *\n * @param {number} factor\n * @param {number} max\n * @returns {string}\n */\n static multiply = (factor: number, max?: number): string => {\n if (isNaN(factor) || !isFinite(factor)) {\n throw new Error(\"Factor cannot be NaN or Infinity\");\n }\n if (max !== undefined && (isNaN(max) || !isFinite(max))) {\n throw new Error(\"Max cannot be NaN or Infinity\");\n }\n const values: any[] = [factor];\n if (max !== undefined) {\n values.push(max);\n }\n return new Operator(\"multiply\", values).toString();\n };\n\n /**\n * Divide a numeric attribute by a specified divisor.\n *\n * @param {number} divisor\n * @param {number} min\n * @returns {string}\n */\n static divide = (divisor: number, min?: number): string => {\n if (isNaN(divisor) || !isFinite(divisor)) {\n throw new Error(\"Divisor cannot be NaN or Infinity\");\n }\n if (min !== undefined && (isNaN(min) || !isFinite(min))) {\n throw new Error(\"Min cannot be NaN or Infinity\");\n }\n if (divisor === 0) {\n throw new Error(\"Divisor cannot be zero\");\n }\n const values: any[] = [divisor];\n if (min !== undefined) {\n values.push(min);\n }\n return new Operator(\"divide\", values).toString();\n };\n\n /**\n * Apply modulo operation on a numeric attribute.\n *\n * @param {number} divisor\n * @returns {string}\n */\n static modulo = (divisor: number): string => {\n if (isNaN(divisor) || !isFinite(divisor)) {\n throw new Error(\"Divisor cannot be NaN or Infinity\");\n }\n if (divisor === 0) {\n throw new Error(\"Divisor cannot be zero\");\n }\n return new Operator(\"modulo\", [divisor]).toString();\n };\n\n /**\n * Raise a numeric attribute to a specified power.\n *\n * @param {number} exponent\n * @param {number} max\n * @returns {string}\n */\n static power = (exponent: number, max?: number): string => {\n if (isNaN(exponent) || !isFinite(exponent)) {\n throw new Error(\"Exponent cannot be NaN or Infinity\");\n }\n if (max !== undefined && (isNaN(max) || !isFinite(max))) {\n throw new Error(\"Max cannot be NaN or Infinity\");\n }\n const values: any[] = [exponent];\n if (max !== undefined) {\n values.push(max);\n }\n return new Operator(\"power\", values).toString();\n };\n\n /**\n * Append values to an array attribute.\n *\n * @param {any[]} values\n * @returns {string}\n */\n static arrayAppend = (values: any[]): string =>\n new Operator(\"arrayAppend\", values).toString();\n\n /**\n * Prepend values to an array attribute.\n *\n * @param {any[]} values\n * @returns {string}\n */\n static arrayPrepend = (values: any[]): string =>\n new Operator(\"arrayPrepend\", values).toString();\n\n /**\n * Insert a value at a specific index in an array attribute.\n *\n * @param {number} index\n * @param {any} value\n * @returns {string}\n */\n static arrayInsert = (index: number, value: any): string =>\n new Operator(\"arrayInsert\", [index, value]).toString();\n\n /**\n * Remove a value from an array attribute.\n *\n * @param {any} value\n * @returns {string}\n */\n static arrayRemove = (value: any): string =>\n new Operator(\"arrayRemove\", [value]).toString();\n\n /**\n * Remove duplicate values from an array attribute.\n *\n * @returns {string}\n */\n static arrayUnique = (): string =>\n new Operator(\"arrayUnique\", []).toString();\n\n /**\n * Keep only values that exist in both the current array and the provided array.\n *\n * @param {any[]} values\n * @returns {string}\n */\n static arrayIntersect = (values: any[]): string =>\n new Operator(\"arrayIntersect\", values).toString();\n\n /**\n * Remove values from the array that exist in the provided array.\n *\n * @param {any[]} values\n * @returns {string}\n */\n static arrayDiff = (values: any[]): string =>\n new Operator(\"arrayDiff\", values).toString();\n\n /**\n * Filter array values based on a condition.\n *\n * @param {Condition} condition\n * @param {any} value\n * @returns {string}\n */\n static arrayFilter = (condition: Condition, value?: any): string => {\n const values: any[] = [condition as string, value === undefined ? null : value];\n return new Operator(\"arrayFilter\", values).toString();\n };\n\n /**\n * Concatenate a value to a string or array attribute.\n *\n * @param {any} value\n * @returns {string}\n */\n static stringConcat = (value: any): string =>\n new Operator(\"stringConcat\", [value]).toString();\n\n /**\n * Replace occurrences of a search string with a replacement string.\n *\n * @param {string} search\n * @param {string} replace\n * @returns {string}\n */\n static stringReplace = (search: string, replace: string): string =>\n new Operator(\"stringReplace\", [search, replace]).toString();\n\n /**\n * Toggle a boolean attribute.\n *\n * @returns {string}\n */\n static toggle = (): string =>\n new Operator(\"toggle\", []).toString();\n\n /**\n * Add days to a date attribute.\n *\n * @param {number} days\n * @returns {string}\n */\n static dateAddDays = (days: number): string =>\n new Operator(\"dateAddDays\", [days]).toString();\n\n /**\n * Subtract days from a date attribute.\n *\n * @param {number} days\n * @returns {string}\n */\n static dateSubDays = (days: number): string =>\n new Operator(\"dateSubDays\", [days]).toString();\n\n /**\n * Set a date attribute to the current date and time.\n *\n * @returns {string}\n */\n static dateSetNow = (): string =>\n new Operator(\"dateSetNow\", []).toString();\n}\n"]}
1
+ {"version":3,"sources":["../src/operator.ts"],"names":["Condition"],"mappings":"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","sourcesContent":["type OperatorValuesSingle = string | number | boolean;\nexport type OperatorValuesList = string[] | number[] | boolean[] | any[];\nexport type OperatorValues = OperatorValuesSingle | OperatorValuesList;\n\nexport enum Condition {\n Equal = \"equal\",\n NotEqual = \"notEqual\",\n GreaterThan = \"greaterThan\",\n GreaterThanEqual = \"greaterThanEqual\",\n LessThan = \"lessThan\",\n LessThanEqual = \"lessThanEqual\",\n Contains = \"contains\",\n IsNull = \"isNull\",\n IsNotNull = \"isNotNull\",\n}\n\n/**\n * Helper class to generate operator strings for atomic operations.\n */\nexport class Operator {\n method: string;\n values: OperatorValuesList | undefined;\n\n /**\n * Constructor for Operator class.\n *\n * @param {string} method\n * @param {OperatorValues} values\n */\n constructor(\n method: string,\n values?: OperatorValues\n ) {\n this.method = method;\n\n if (values !== undefined) {\n if (Array.isArray(values)) {\n this.values = values;\n } else {\n this.values = [values] as OperatorValuesList;\n }\n }\n }\n\n /**\n * Convert the operator object to a JSON string.\n *\n * @returns {string}\n */\n toString(): string {\n return JSON.stringify({\n method: this.method,\n values: this.values,\n });\n }\n\n /**\n * Increment a numeric attribute by a specified value.\n *\n * @param {number} value\n * @param {number} max\n * @returns {string}\n */\n static increment = (value: number = 1, max?: number): string => {\n if (isNaN(value) || !isFinite(value)) {\n throw new Error(\"Value cannot be NaN or Infinity\");\n }\n if (max !== undefined && (isNaN(max) || !isFinite(max))) {\n throw new Error(\"Max cannot be NaN or Infinity\");\n }\n const values: any[] = [value];\n if (max !== undefined) {\n values.push(max);\n }\n return new Operator(\"increment\", values).toString();\n };\n\n /**\n * Decrement a numeric attribute by a specified value.\n *\n * @param {number} value\n * @param {number} min\n * @returns {string}\n */\n static decrement = (value: number = 1, min?: number): string => {\n if (isNaN(value) || !isFinite(value)) {\n throw new Error(\"Value cannot be NaN or Infinity\");\n }\n if (min !== undefined && (isNaN(min) || !isFinite(min))) {\n throw new Error(\"Min cannot be NaN or Infinity\");\n }\n const values: any[] = [value];\n if (min !== undefined) {\n values.push(min);\n }\n return new Operator(\"decrement\", values).toString();\n };\n\n /**\n * Multiply a numeric attribute by a specified factor.\n *\n * @param {number} factor\n * @param {number} max\n * @returns {string}\n */\n static multiply = (factor: number, max?: number): string => {\n if (isNaN(factor) || !isFinite(factor)) {\n throw new Error(\"Factor cannot be NaN or Infinity\");\n }\n if (max !== undefined && (isNaN(max) || !isFinite(max))) {\n throw new Error(\"Max cannot be NaN or Infinity\");\n }\n const values: any[] = [factor];\n if (max !== undefined) {\n values.push(max);\n }\n return new Operator(\"multiply\", values).toString();\n };\n\n /**\n * Divide a numeric attribute by a specified divisor.\n *\n * @param {number} divisor\n * @param {number} min\n * @returns {string}\n */\n static divide = (divisor: number, min?: number): string => {\n if (isNaN(divisor) || !isFinite(divisor)) {\n throw new Error(\"Divisor cannot be NaN or Infinity\");\n }\n if (min !== undefined && (isNaN(min) || !isFinite(min))) {\n throw new Error(\"Min cannot be NaN or Infinity\");\n }\n if (divisor === 0) {\n throw new Error(\"Divisor cannot be zero\");\n }\n const values: any[] = [divisor];\n if (min !== undefined) {\n values.push(min);\n }\n return new Operator(\"divide\", values).toString();\n };\n\n /**\n * Apply modulo operation on a numeric attribute.\n *\n * @param {number} divisor\n * @returns {string}\n */\n static modulo = (divisor: number): string => {\n if (isNaN(divisor) || !isFinite(divisor)) {\n throw new Error(\"Divisor cannot be NaN or Infinity\");\n }\n if (divisor === 0) {\n throw new Error(\"Divisor cannot be zero\");\n }\n return new Operator(\"modulo\", [divisor]).toString();\n };\n\n /**\n * Raise a numeric attribute to a specified power.\n *\n * @param {number} exponent\n * @param {number} max\n * @returns {string}\n */\n static power = (exponent: number, max?: number): string => {\n if (isNaN(exponent) || !isFinite(exponent)) {\n throw new Error(\"Exponent cannot be NaN or Infinity\");\n }\n if (max !== undefined && (isNaN(max) || !isFinite(max))) {\n throw new Error(\"Max cannot be NaN or Infinity\");\n }\n const values: any[] = [exponent];\n if (max !== undefined) {\n values.push(max);\n }\n return new Operator(\"power\", values).toString();\n };\n\n /**\n * Append values to an array attribute.\n *\n * @param {any[]} values\n * @returns {string}\n */\n static arrayAppend = (values: any[]): string =>\n new Operator(\"arrayAppend\", values).toString();\n\n /**\n * Prepend values to an array attribute.\n *\n * @param {any[]} values\n * @returns {string}\n */\n static arrayPrepend = (values: any[]): string =>\n new Operator(\"arrayPrepend\", values).toString();\n\n /**\n * Insert a value at a specific index in an array attribute.\n *\n * @param {number} index\n * @param {any} value\n * @returns {string}\n */\n static arrayInsert = (index: number, value: any): string =>\n new Operator(\"arrayInsert\", [index, value]).toString();\n\n /**\n * Remove a value from an array attribute.\n *\n * @param {any} value\n * @returns {string}\n */\n static arrayRemove = (value: any): string =>\n new Operator(\"arrayRemove\", [value]).toString();\n\n /**\n * Remove duplicate values from an array attribute.\n *\n * @returns {string}\n */\n static arrayUnique = (): string =>\n new Operator(\"arrayUnique\", []).toString();\n\n /**\n * Keep only values that exist in both the current array and the provided array.\n *\n * @param {any[]} values\n * @returns {string}\n */\n static arrayIntersect = (values: any[]): string =>\n new Operator(\"arrayIntersect\", values).toString();\n\n /**\n * Remove values from the array that exist in the provided array.\n *\n * @param {any[]} values\n * @returns {string}\n */\n static arrayDiff = (values: any[]): string =>\n new Operator(\"arrayDiff\", values).toString();\n\n /**\n * Filter array values based on a condition.\n *\n * @param {Condition} condition\n * @param {any} value\n * @returns {string}\n */\n static arrayFilter = (condition: Condition, value?: any): string => {\n const values: any[] = [condition as string, value === undefined ? null : value];\n return new Operator(\"arrayFilter\", values).toString();\n };\n\n /**\n * Concatenate a value to a string or array attribute.\n *\n * @param {any} value\n * @returns {string}\n */\n static stringConcat = (value: any): string =>\n new Operator(\"stringConcat\", [value]).toString();\n\n /**\n * Replace occurrences of a search string with a replacement string.\n *\n * @param {string} search\n * @param {string} replace\n * @returns {string}\n */\n static stringReplace = (search: string, replace: string): string =>\n new Operator(\"stringReplace\", [search, replace]).toString();\n\n /**\n * Toggle a boolean attribute.\n *\n * @returns {string}\n */\n static toggle = (): string =>\n new Operator(\"toggle\", []).toString();\n\n /**\n * Add days to a date attribute.\n *\n * @param {number} days\n * @returns {string}\n */\n static dateAddDays = (days: number): string =>\n new Operator(\"dateAddDays\", [days]).toString();\n\n /**\n * Subtract days from a date attribute.\n *\n * @param {number} days\n * @returns {string}\n */\n static dateSubDays = (days: number): string =>\n new Operator(\"dateSubDays\", [days]).toString();\n\n /**\n * Set a date attribute to the current date and time.\n *\n * @returns {string}\n */\n static dateSetNow = (): string =>\n new Operator(\"dateSetNow\", []).toString();\n}\n"]}