@medusajs/utils 3.0.0-snapshot-20250410112222 → 3.0.0-snapshot-20251104004624

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 (460) hide show
  1. package/dist/analytics/abstract-analytics-provider.d.ts +110 -0
  2. package/dist/analytics/abstract-analytics-provider.d.ts.map +1 -0
  3. package/dist/analytics/abstract-analytics-provider.js +107 -0
  4. package/dist/analytics/abstract-analytics-provider.js.map +1 -0
  5. package/dist/analytics/index.d.ts +2 -0
  6. package/dist/analytics/index.d.ts.map +1 -0
  7. package/dist/{feature-flags/utils → analytics}/index.js +1 -1
  8. package/dist/analytics/index.js.map +1 -0
  9. package/dist/auth/token.d.ts +4 -2
  10. package/dist/auth/token.d.ts.map +1 -1
  11. package/dist/auth/token.js +5 -2
  12. package/dist/auth/token.js.map +1 -1
  13. package/dist/bundles.d.ts +1 -0
  14. package/dist/bundles.d.ts.map +1 -1
  15. package/dist/bundles.js +19 -8
  16. package/dist/bundles.js.map +1 -1
  17. package/dist/caching/index.d.ts +59 -0
  18. package/dist/caching/index.d.ts.map +1 -0
  19. package/dist/caching/index.js +132 -0
  20. package/dist/caching/index.js.map +1 -0
  21. package/dist/common/build-query.d.ts +1 -1
  22. package/dist/common/build-query.d.ts.map +1 -1
  23. package/dist/common/camel-to-snake-case.d.ts.map +1 -1
  24. package/dist/common/compress-name.d.ts +2 -0
  25. package/dist/common/compress-name.d.ts.map +1 -0
  26. package/dist/common/compress-name.js +34 -0
  27. package/dist/common/compress-name.js.map +1 -0
  28. package/dist/common/container.d.ts +1 -1
  29. package/dist/common/container.js +1 -1
  30. package/dist/common/create-container-like.d.ts.map +1 -1
  31. package/dist/common/create-container-like.js +9 -1
  32. package/dist/common/create-container-like.js.map +1 -1
  33. package/dist/common/create-psql-index-helper.d.ts +2 -2
  34. package/dist/common/create-psql-index-helper.d.ts.map +1 -1
  35. package/dist/common/create-psql-index-helper.js +4 -2
  36. package/dist/common/create-psql-index-helper.js.map +1 -1
  37. package/dist/common/deep-copy.js +20 -10
  38. package/dist/common/deep-copy.js.map +1 -1
  39. package/dist/common/define-config.d.ts.map +1 -1
  40. package/dist/common/define-config.js +122 -6
  41. package/dist/common/define-config.js.map +1 -1
  42. package/dist/common/define-file-config.d.ts +7 -0
  43. package/dist/common/define-file-config.d.ts.map +1 -0
  44. package/dist/common/define-file-config.js +31 -0
  45. package/dist/common/define-file-config.js.map +1 -0
  46. package/dist/common/dynamic-import.d.ts.map +1 -1
  47. package/dist/common/dynamic-import.js +6 -1
  48. package/dist/common/dynamic-import.js.map +1 -1
  49. package/dist/common/execute-with-concurrency.d.ts +7 -0
  50. package/dist/common/execute-with-concurrency.d.ts.map +1 -0
  51. package/dist/common/execute-with-concurrency.js +26 -0
  52. package/dist/common/execute-with-concurrency.js.map +1 -0
  53. package/dist/common/get-duplicates.d.ts.map +1 -1
  54. package/dist/common/get-iso-string-from-date.d.ts.map +1 -1
  55. package/dist/common/get-resolved-plugins.js +1 -1
  56. package/dist/common/get-resolved-plugins.js.map +1 -1
  57. package/dist/common/get-selects-and-relations-from-object-array.d.ts +2 -1
  58. package/dist/common/get-selects-and-relations-from-object-array.d.ts.map +1 -1
  59. package/dist/common/get-selects-and-relations-from-object-array.js +7 -5
  60. package/dist/common/get-selects-and-relations-from-object-array.js.map +1 -1
  61. package/dist/common/index.d.ts +9 -2
  62. package/dist/common/index.d.ts.map +1 -1
  63. package/dist/common/index.js +9 -2
  64. package/dist/common/index.js.map +1 -1
  65. package/dist/common/medusa-container.js +1 -1
  66. package/dist/common/medusa-container.js.map +1 -1
  67. package/dist/common/normalize-csv-value.d.ts +6 -0
  68. package/dist/common/normalize-csv-value.d.ts.map +1 -0
  69. package/dist/common/normalize-csv-value.js +14 -0
  70. package/dist/common/normalize-csv-value.js.map +1 -0
  71. package/dist/common/normalize-import-path-with-source.d.ts +1 -1
  72. package/dist/common/normalize-import-path-with-source.d.ts.map +1 -1
  73. package/dist/common/normalize-import-path-with-source.js +2 -2
  74. package/dist/common/normalize-import-path-with-source.js.map +1 -1
  75. package/dist/common/optional-numeric-serializer.d.ts.map +1 -1
  76. package/dist/common/parse-stringify-if-necessary.d.ts +11 -0
  77. package/dist/common/parse-stringify-if-necessary.d.ts.map +1 -0
  78. package/dist/common/parse-stringify-if-necessary.js +44 -0
  79. package/dist/common/parse-stringify-if-necessary.js.map +1 -0
  80. package/dist/common/partition-array.d.ts.map +1 -1
  81. package/dist/common/read-dir-recursive.d.ts +2 -1
  82. package/dist/common/read-dir-recursive.d.ts.map +1 -1
  83. package/dist/common/read-dir-recursive.js +4 -3
  84. package/dist/common/read-dir-recursive.js.map +1 -1
  85. package/dist/common/remove-undefined.d.ts.map +1 -1
  86. package/dist/common/retry-execution.d.ts +18 -0
  87. package/dist/common/retry-execution.d.ts.map +1 -0
  88. package/dist/common/retry-execution.js +50 -0
  89. package/dist/common/retry-execution.js.map +1 -0
  90. package/dist/common/to-handle.d.ts.map +1 -1
  91. package/dist/common/to-kebab-case.d.ts.map +1 -1
  92. package/dist/common/try-convert-to-boolean.d.ts +7 -0
  93. package/dist/common/try-convert-to-boolean.d.ts.map +1 -0
  94. package/dist/common/try-convert-to-boolean.js +15 -0
  95. package/dist/common/try-convert-to-boolean.js.map +1 -0
  96. package/dist/common/try-convert-to-number.d.ts +7 -0
  97. package/dist/common/try-convert-to-number.d.ts.map +1 -0
  98. package/dist/common/try-convert-to-number.js +10 -0
  99. package/dist/common/try-convert-to-number.js.map +1 -0
  100. package/dist/common/validate-handle.d.ts.map +1 -1
  101. package/dist/common/wrap-handler.d.ts.map +1 -1
  102. package/dist/core-flows/events.d.ts +783 -0
  103. package/dist/core-flows/events.d.ts.map +1 -1
  104. package/dist/core-flows/events.js +784 -1
  105. package/dist/core-flows/events.js.map +1 -1
  106. package/dist/dal/index.d.ts +4 -3
  107. package/dist/dal/index.d.ts.map +1 -1
  108. package/dist/dal/index.js +4 -3
  109. package/dist/dal/index.js.map +1 -1
  110. package/dist/dal/mikro-orm/base-entity.d.ts +1 -1
  111. package/dist/dal/mikro-orm/base-entity.d.ts.map +1 -1
  112. package/dist/dal/mikro-orm/base-entity.js +1 -1
  113. package/dist/dal/mikro-orm/base-entity.js.map +1 -1
  114. package/dist/dal/mikro-orm/big-number-field.d.ts +1 -1
  115. package/dist/dal/mikro-orm/big-number-field.d.ts.map +1 -1
  116. package/dist/dal/mikro-orm/big-number-field.js +38 -2
  117. package/dist/dal/mikro-orm/big-number-field.js.map +1 -1
  118. package/dist/dal/mikro-orm/custom-db-migrator.d.ts +8 -0
  119. package/dist/dal/mikro-orm/custom-db-migrator.d.ts.map +1 -0
  120. package/dist/dal/mikro-orm/custom-db-migrator.js +47 -0
  121. package/dist/dal/mikro-orm/custom-db-migrator.js.map +1 -0
  122. package/dist/dal/mikro-orm/db-error-mapper.d.ts.map +1 -1
  123. package/dist/dal/mikro-orm/db-error-mapper.js +1 -1
  124. package/dist/dal/mikro-orm/db-error-mapper.js.map +1 -1
  125. package/dist/dal/mikro-orm/decorators/foreign-key.d.ts.map +1 -1
  126. package/dist/dal/mikro-orm/decorators/foreign-key.js +1 -1
  127. package/dist/dal/mikro-orm/decorators/foreign-key.js.map +1 -1
  128. package/dist/dal/mikro-orm/decorators/searchable.d.ts.map +1 -1
  129. package/dist/dal/mikro-orm/decorators/searchable.js +1 -1
  130. package/dist/dal/mikro-orm/decorators/searchable.js.map +1 -1
  131. package/dist/dal/mikro-orm/mikro-orm-create-connection.d.ts +3 -3
  132. package/dist/dal/mikro-orm/mikro-orm-create-connection.d.ts.map +1 -1
  133. package/dist/dal/mikro-orm/mikro-orm-create-connection.js +32 -4
  134. package/dist/dal/mikro-orm/mikro-orm-create-connection.js.map +1 -1
  135. package/dist/dal/mikro-orm/mikro-orm-free-text-search-filter.d.ts +2 -2
  136. package/dist/dal/mikro-orm/mikro-orm-free-text-search-filter.d.ts.map +1 -1
  137. package/dist/dal/mikro-orm/mikro-orm-free-text-search-filter.js +3 -3
  138. package/dist/dal/mikro-orm/mikro-orm-free-text-search-filter.js.map +1 -1
  139. package/dist/dal/mikro-orm/mikro-orm-repository.d.ts +2 -1
  140. package/dist/dal/mikro-orm/mikro-orm-repository.d.ts.map +1 -1
  141. package/dist/dal/mikro-orm/mikro-orm-repository.js +282 -65
  142. package/dist/dal/mikro-orm/mikro-orm-repository.js.map +1 -1
  143. package/dist/dal/mikro-orm/mikro-orm-serializer-old.d.ts +29 -0
  144. package/dist/dal/mikro-orm/mikro-orm-serializer-old.d.ts.map +1 -0
  145. package/dist/dal/mikro-orm/mikro-orm-serializer-old.js +443 -0
  146. package/dist/dal/mikro-orm/mikro-orm-serializer-old.js.map +1 -0
  147. package/dist/dal/mikro-orm/mikro-orm-serializer.d.ts +25 -10
  148. package/dist/dal/mikro-orm/mikro-orm-serializer.d.ts.map +1 -1
  149. package/dist/dal/mikro-orm/mikro-orm-serializer.js +384 -175
  150. package/dist/dal/mikro-orm/mikro-orm-serializer.js.map +1 -1
  151. package/dist/dal/mikro-orm/utils.d.ts +1 -1
  152. package/dist/dal/mikro-orm/utils.d.ts.map +1 -1
  153. package/dist/defaults/countries.js +6 -6
  154. package/dist/defaults/countries.js.map +1 -1
  155. package/dist/defaults/currencies.d.ts.map +1 -1
  156. package/dist/defaults/currencies.js +27 -0
  157. package/dist/defaults/currencies.js.map +1 -1
  158. package/dist/dml/entity-builder.d.ts +1 -1
  159. package/dist/dml/entity-builder.js +1 -1
  160. package/dist/dml/helpers/create-graphql.d.ts.map +1 -1
  161. package/dist/dml/helpers/create-graphql.js +10 -3
  162. package/dist/dml/helpers/create-graphql.js.map +1 -1
  163. package/dist/dml/helpers/create-mikro-orm-entity.d.ts +0 -3
  164. package/dist/dml/helpers/create-mikro-orm-entity.d.ts.map +1 -1
  165. package/dist/dml/helpers/create-mikro-orm-entity.js +5 -4
  166. package/dist/dml/helpers/create-mikro-orm-entity.js.map +1 -1
  167. package/dist/dml/helpers/entity-builder/create-big-number-properties.d.ts.map +1 -1
  168. package/dist/dml/helpers/entity-builder/create-big-number-properties.js +16 -4
  169. package/dist/dml/helpers/entity-builder/create-big-number-properties.js.map +1 -1
  170. package/dist/dml/helpers/entity-builder/define-property.js +1 -1
  171. package/dist/dml/helpers/entity-builder/define-property.js.map +1 -1
  172. package/dist/dml/helpers/entity-builder/define-relationship.js +1 -1
  173. package/dist/dml/helpers/entity-builder/define-relationship.js.map +1 -1
  174. package/dist/dml/helpers/graphql-builder/get-attribute.d.ts.map +1 -1
  175. package/dist/dml/helpers/graphql-builder/get-attribute.js +3 -2
  176. package/dist/dml/helpers/graphql-builder/get-attribute.js.map +1 -1
  177. package/dist/dml/helpers/mikro-orm/apply-checks.js +1 -1
  178. package/dist/dml/helpers/mikro-orm/apply-checks.js.map +1 -1
  179. package/dist/dml/helpers/mikro-orm/build-indexes.js +1 -1
  180. package/dist/dml/helpers/mikro-orm/build-indexes.js.map +1 -1
  181. package/dist/dml/properties/autoincrement.d.ts +20 -1
  182. package/dist/dml/properties/autoincrement.d.ts.map +1 -1
  183. package/dist/dml/properties/autoincrement.js +19 -0
  184. package/dist/dml/properties/autoincrement.js.map +1 -1
  185. package/dist/dml/properties/big-number.d.ts +2 -0
  186. package/dist/dml/properties/big-number.d.ts.map +1 -1
  187. package/dist/dml/properties/big-number.js +4 -0
  188. package/dist/dml/properties/big-number.js.map +1 -1
  189. package/dist/dml/properties/id.d.ts +1 -1
  190. package/dist/dml/properties/id.d.ts.map +1 -1
  191. package/dist/dml/properties/id.js.map +1 -1
  192. package/dist/dml/properties/primary-key.d.ts +1 -0
  193. package/dist/dml/properties/primary-key.d.ts.map +1 -1
  194. package/dist/dml/properties/primary-key.js +8 -5
  195. package/dist/dml/properties/primary-key.js.map +1 -1
  196. package/dist/dml/relations/belongs-to.d.ts.map +1 -1
  197. package/dist/dml/relations/has-many.d.ts.map +1 -1
  198. package/dist/dml/relations/has-one-fk.d.ts.map +1 -1
  199. package/dist/dml/relations/has-one.d.ts.map +1 -1
  200. package/dist/dml/relations/many-to-many.d.ts.map +1 -1
  201. package/dist/event-bus/index.d.ts +30 -2
  202. package/dist/event-bus/index.d.ts.map +1 -1
  203. package/dist/event-bus/index.js +39 -0
  204. package/dist/event-bus/index.js.map +1 -1
  205. package/dist/event-bus/message-aggregator.d.ts +1 -1
  206. package/dist/event-bus/message-aggregator.d.ts.map +1 -1
  207. package/dist/event-bus/message-aggregator.js +30 -8
  208. package/dist/event-bus/message-aggregator.js.map +1 -1
  209. package/dist/event-bus/utils.d.ts.map +1 -1
  210. package/dist/event-bus/utils.js +1 -2
  211. package/dist/event-bus/utils.js.map +1 -1
  212. package/dist/exceptions/is-duplicate-error.d.ts.map +1 -1
  213. package/dist/feature-flags/discover-and-register-feature-flags.d.ts +15 -0
  214. package/dist/feature-flags/discover-and-register-feature-flags.d.ts.map +1 -0
  215. package/dist/feature-flags/discover-and-register-feature-flags.js +23 -0
  216. package/dist/feature-flags/discover-and-register-feature-flags.js.map +1 -0
  217. package/dist/feature-flags/discover-feature-flags.d.ts +6 -0
  218. package/dist/feature-flags/discover-feature-flags.d.ts.map +1 -0
  219. package/dist/feature-flags/discover-feature-flags.js +53 -0
  220. package/dist/feature-flags/discover-feature-flags.js.map +1 -0
  221. package/dist/feature-flags/{utils/flag-router.d.ts → flag-router.d.ts} +1 -0
  222. package/dist/feature-flags/flag-router.d.ts.map +1 -0
  223. package/dist/feature-flags/{utils/flag-router.js → flag-router.js} +3 -2
  224. package/dist/feature-flags/flag-router.js.map +1 -0
  225. package/dist/feature-flags/index.d.ts +4 -10
  226. package/dist/feature-flags/index.d.ts.map +1 -1
  227. package/dist/feature-flags/index.js +4 -10
  228. package/dist/feature-flags/index.js.map +1 -1
  229. package/dist/feature-flags/register-flag.d.ts +18 -0
  230. package/dist/feature-flags/register-flag.d.ts.map +1 -0
  231. package/dist/feature-flags/register-flag.js +41 -0
  232. package/dist/feature-flags/register-flag.js.map +1 -0
  233. package/dist/file/abstract-file-provider.d.ts +61 -9
  234. package/dist/file/abstract-file-provider.d.ts.map +1 -1
  235. package/dist/file/abstract-file-provider.js +64 -9
  236. package/dist/file/abstract-file-provider.js.map +1 -1
  237. package/dist/fulfillment/events.d.ts +6 -0
  238. package/dist/fulfillment/events.d.ts.map +1 -1
  239. package/dist/fulfillment/events.js +6 -0
  240. package/dist/fulfillment/events.js.map +1 -1
  241. package/dist/fulfillment/provider.d.ts +4 -4
  242. package/dist/fulfillment/provider.js +4 -4
  243. package/dist/graphql/graphql-to-ts-types.d.ts.map +1 -1
  244. package/dist/graphql/graphql-to-ts-types.js +40 -9
  245. package/dist/graphql/graphql-to-ts-types.js.map +1 -1
  246. package/dist/index.d.ts +2 -0
  247. package/dist/index.d.ts.map +1 -1
  248. package/dist/index.js +2 -0
  249. package/dist/index.js.map +1 -1
  250. package/dist/link/compose-link-name.d.ts.map +1 -1
  251. package/dist/migrations/index.d.ts +3 -3
  252. package/dist/migrations/index.d.ts.map +1 -1
  253. package/dist/migrations/index.js +37 -3
  254. package/dist/migrations/index.js.map +1 -1
  255. package/dist/modules-sdk/build-query.d.ts.map +1 -1
  256. package/dist/modules-sdk/build-query.js +5 -11
  257. package/dist/modules-sdk/build-query.js.map +1 -1
  258. package/dist/modules-sdk/create-medusa-mikro-orm-event-subscriber.d.ts +16 -0
  259. package/dist/modules-sdk/create-medusa-mikro-orm-event-subscriber.d.ts.map +1 -0
  260. package/dist/modules-sdk/create-medusa-mikro-orm-event-subscriber.js +50 -0
  261. package/dist/modules-sdk/create-medusa-mikro-orm-event-subscriber.js.map +1 -0
  262. package/dist/modules-sdk/create-pg-connection.d.ts +1 -1
  263. package/dist/modules-sdk/create-pg-connection.d.ts.map +1 -1
  264. package/dist/modules-sdk/create-pg-connection.js +13 -2
  265. package/dist/modules-sdk/create-pg-connection.js.map +1 -1
  266. package/dist/modules-sdk/decorators/context-parameter.d.ts.map +1 -1
  267. package/dist/modules-sdk/decorators/emit-events.d.ts.map +1 -1
  268. package/dist/modules-sdk/decorators/inject-manager.d.ts.map +1 -1
  269. package/dist/modules-sdk/decorators/inject-manager.js +4 -3
  270. package/dist/modules-sdk/decorators/inject-manager.js.map +1 -1
  271. package/dist/modules-sdk/decorators/inject-transaction-manager.d.ts.map +1 -1
  272. package/dist/modules-sdk/decorators/inject-transaction-manager.js +7 -9
  273. package/dist/modules-sdk/decorators/inject-transaction-manager.js.map +1 -1
  274. package/dist/modules-sdk/define-link.d.ts +2 -0
  275. package/dist/modules-sdk/define-link.d.ts.map +1 -1
  276. package/dist/modules-sdk/define-link.js +11 -0
  277. package/dist/modules-sdk/define-link.js.map +1 -1
  278. package/dist/modules-sdk/definition.d.ts +9 -0
  279. package/dist/modules-sdk/definition.d.ts.map +1 -1
  280. package/dist/modules-sdk/definition.js +6 -0
  281. package/dist/modules-sdk/definition.js.map +1 -1
  282. package/dist/modules-sdk/event-builder-factory.d.ts.map +1 -1
  283. package/dist/modules-sdk/index.d.ts +1 -0
  284. package/dist/modules-sdk/index.d.ts.map +1 -1
  285. package/dist/modules-sdk/index.js +1 -0
  286. package/dist/modules-sdk/index.js.map +1 -1
  287. package/dist/modules-sdk/joiner-config-builder.d.ts +7 -1
  288. package/dist/modules-sdk/joiner-config-builder.d.ts.map +1 -1
  289. package/dist/modules-sdk/joiner-config-builder.js +42 -8
  290. package/dist/modules-sdk/joiner-config-builder.js.map +1 -1
  291. package/dist/modules-sdk/load-module-database-config.d.ts.map +1 -1
  292. package/dist/modules-sdk/load-module-database-config.js +15 -1
  293. package/dist/modules-sdk/load-module-database-config.js.map +1 -1
  294. package/dist/modules-sdk/loaders/container-loader-factory.js +1 -1
  295. package/dist/modules-sdk/loaders/container-loader-factory.js.map +1 -1
  296. package/dist/modules-sdk/loaders/mikro-orm-connection-loader.d.ts.map +1 -1
  297. package/dist/modules-sdk/loaders/mikro-orm-connection-loader.js +1 -1
  298. package/dist/modules-sdk/loaders/mikro-orm-connection-loader.js.map +1 -1
  299. package/dist/modules-sdk/medusa-internal-service.d.ts +14 -3
  300. package/dist/modules-sdk/medusa-internal-service.d.ts.map +1 -1
  301. package/dist/modules-sdk/medusa-internal-service.js +126 -3
  302. package/dist/modules-sdk/medusa-internal-service.js.map +1 -1
  303. package/dist/modules-sdk/medusa-service.d.ts.map +1 -1
  304. package/dist/modules-sdk/medusa-service.js +89 -56
  305. package/dist/modules-sdk/medusa-service.js.map +1 -1
  306. package/dist/modules-sdk/migration-scripts/migration-down.d.ts.map +1 -1
  307. package/dist/modules-sdk/migration-scripts/migration-down.js +4 -2
  308. package/dist/modules-sdk/migration-scripts/migration-down.js.map +1 -1
  309. package/dist/modules-sdk/migration-scripts/migration-generate.d.ts +1 -1
  310. package/dist/modules-sdk/migration-scripts/migration-generate.d.ts.map +1 -1
  311. package/dist/modules-sdk/migration-scripts/migration-generate.js +3 -3
  312. package/dist/modules-sdk/migration-scripts/migration-generate.js.map +1 -1
  313. package/dist/modules-sdk/migration-scripts/migration-up.d.ts.map +1 -1
  314. package/dist/modules-sdk/migration-scripts/migration-up.js +4 -2
  315. package/dist/modules-sdk/migration-scripts/migration-up.js.map +1 -1
  316. package/dist/modules-sdk/migration-scripts/seed.d.ts.map +1 -1
  317. package/dist/modules-sdk/migration-scripts/seed.js +4 -1
  318. package/dist/modules-sdk/migration-scripts/seed.js.map +1 -1
  319. package/dist/modules-sdk/mikro-orm-cli-config-builder.d.ts +1 -1
  320. package/dist/modules-sdk/mikro-orm-cli-config-builder.d.ts.map +1 -1
  321. package/dist/modules-sdk/mikro-orm-cli-config-builder.js +2 -1
  322. package/dist/modules-sdk/mikro-orm-cli-config-builder.js.map +1 -1
  323. package/dist/modules-sdk/module.d.ts.map +1 -1
  324. package/dist/modules-sdk/module.js +2 -0
  325. package/dist/modules-sdk/module.js.map +1 -1
  326. package/dist/modules-sdk/modules-to-container-types.d.ts.map +1 -1
  327. package/dist/modules-sdk/modules-to-container-types.js +2 -1
  328. package/dist/modules-sdk/modules-to-container-types.js.map +1 -1
  329. package/dist/modules-sdk/query-context.d.ts +2 -2
  330. package/dist/modules-sdk/query-context.d.ts.map +1 -1
  331. package/dist/modules-sdk/query-context.js.map +1 -1
  332. package/dist/modules-sdk/types/medusa-service.d.ts +15 -1
  333. package/dist/modules-sdk/types/medusa-service.d.ts.map +1 -1
  334. package/dist/payment/abstract-payment-provider.d.ts +145 -32
  335. package/dist/payment/abstract-payment-provider.d.ts.map +1 -1
  336. package/dist/payment/abstract-payment-provider.js +6 -3
  337. package/dist/payment/abstract-payment-provider.js.map +1 -1
  338. package/dist/payment/index.d.ts +0 -1
  339. package/dist/payment/index.d.ts.map +1 -1
  340. package/dist/payment/index.js +0 -1
  341. package/dist/payment/index.js.map +1 -1
  342. package/dist/pg/index.d.ts +1 -1
  343. package/dist/pg/index.d.ts.map +1 -1
  344. package/dist/pg/index.js +1 -1
  345. package/dist/pg/index.js.map +1 -1
  346. package/dist/product/csv-normalizer.d.ts +43 -0
  347. package/dist/product/csv-normalizer.d.ts.map +1 -0
  348. package/dist/product/csv-normalizer.js +382 -0
  349. package/dist/product/csv-normalizer.js.map +1 -0
  350. package/dist/product/enums.d.ts +7 -0
  351. package/dist/product/enums.d.ts.map +1 -0
  352. package/dist/product/enums.js +11 -0
  353. package/dist/product/enums.js.map +1 -0
  354. package/dist/product/events.d.ts +6 -0
  355. package/dist/product/events.d.ts.map +1 -1
  356. package/dist/product/events.js +1 -0
  357. package/dist/product/events.js.map +1 -1
  358. package/dist/product/get-variant-availability.d.ts +3 -3
  359. package/dist/product/get-variant-availability.d.ts.map +1 -1
  360. package/dist/product/get-variant-availability.js +13 -2
  361. package/dist/product/get-variant-availability.js.map +1 -1
  362. package/dist/product/index.d.ts +3 -6
  363. package/dist/product/index.d.ts.map +1 -1
  364. package/dist/product/index.js +26 -8
  365. package/dist/product/index.js.map +1 -1
  366. package/dist/product/validators.d.ts +894 -0
  367. package/dist/product/validators.d.ts.map +1 -0
  368. package/dist/product/validators.js +163 -0
  369. package/dist/product/validators.js.map +1 -0
  370. package/dist/promotion/index.d.ts +5 -2
  371. package/dist/promotion/index.d.ts.map +1 -1
  372. package/dist/promotion/index.js +3 -0
  373. package/dist/promotion/index.js.map +1 -1
  374. package/dist/totals/adjustment/index.d.ts +11 -6
  375. package/dist/totals/adjustment/index.d.ts.map +1 -1
  376. package/dist/totals/adjustment/index.js +25 -19
  377. package/dist/totals/adjustment/index.js.map +1 -1
  378. package/dist/totals/big-number.d.ts +5 -1
  379. package/dist/totals/big-number.d.ts.map +1 -1
  380. package/dist/totals/big-number.js +26 -14
  381. package/dist/totals/big-number.js.map +1 -1
  382. package/dist/totals/cart/index.d.ts +1 -0
  383. package/dist/totals/cart/index.d.ts.map +1 -1
  384. package/dist/totals/cart/index.js +19 -4
  385. package/dist/totals/cart/index.js.map +1 -1
  386. package/dist/totals/credit-lines/index.d.ts +3 -3
  387. package/dist/totals/credit-lines/index.d.ts.map +1 -1
  388. package/dist/totals/credit-lines/index.js +4 -3
  389. package/dist/totals/credit-lines/index.js.map +1 -1
  390. package/dist/totals/line-item/index.d.ts +2 -1
  391. package/dist/totals/line-item/index.d.ts.map +1 -1
  392. package/dist/totals/line-item/index.js +42 -18
  393. package/dist/totals/line-item/index.js.map +1 -1
  394. package/dist/totals/math.d.ts +4 -2
  395. package/dist/totals/math.d.ts.map +1 -1
  396. package/dist/totals/math.js +18 -10
  397. package/dist/totals/math.js.map +1 -1
  398. package/dist/totals/promotion/index.d.ts +2 -2
  399. package/dist/totals/promotion/index.d.ts.map +1 -1
  400. package/dist/totals/promotion/index.js +46 -26
  401. package/dist/totals/promotion/index.js.map +1 -1
  402. package/dist/totals/shipping-method/index.d.ts +1 -0
  403. package/dist/totals/shipping-method/index.d.ts.map +1 -1
  404. package/dist/totals/shipping-method/index.js +3 -1
  405. package/dist/totals/shipping-method/index.js.map +1 -1
  406. package/dist/totals/tax/index.d.ts +1 -1
  407. package/dist/totals/tax/index.d.ts.map +1 -1
  408. package/dist/totals/tax/index.js +0 -3
  409. package/dist/totals/tax/index.js.map +1 -1
  410. package/dist/tsconfig.tsbuildinfo +1 -1
  411. package/package.json +11 -29
  412. package/dist/common/set-metadata.d.ts +0 -10
  413. package/dist/common/set-metadata.d.ts.map +0 -1
  414. package/dist/common/set-metadata.js +0 -37
  415. package/dist/common/set-metadata.js.map +0 -1
  416. package/dist/feature-flags/analytics.d.ts +0 -3
  417. package/dist/feature-flags/analytics.d.ts.map +0 -1
  418. package/dist/feature-flags/analytics.js +0 -10
  419. package/dist/feature-flags/analytics.js.map +0 -1
  420. package/dist/feature-flags/many-to-many-inventory.d.ts +0 -3
  421. package/dist/feature-flags/many-to-many-inventory.d.ts.map +0 -1
  422. package/dist/feature-flags/many-to-many-inventory.js +0 -10
  423. package/dist/feature-flags/many-to-many-inventory.js.map +0 -1
  424. package/dist/feature-flags/medusa-v2.d.ts +0 -3
  425. package/dist/feature-flags/medusa-v2.d.ts.map +0 -1
  426. package/dist/feature-flags/medusa-v2.js +0 -10
  427. package/dist/feature-flags/medusa-v2.js.map +0 -1
  428. package/dist/feature-flags/order-editing.d.ts +0 -3
  429. package/dist/feature-flags/order-editing.d.ts.map +0 -1
  430. package/dist/feature-flags/order-editing.js +0 -10
  431. package/dist/feature-flags/order-editing.js.map +0 -1
  432. package/dist/feature-flags/product-categories.d.ts +0 -3
  433. package/dist/feature-flags/product-categories.d.ts.map +0 -1
  434. package/dist/feature-flags/product-categories.js +0 -10
  435. package/dist/feature-flags/product-categories.js.map +0 -1
  436. package/dist/feature-flags/publishable-api-keys.d.ts +0 -3
  437. package/dist/feature-flags/publishable-api-keys.d.ts.map +0 -1
  438. package/dist/feature-flags/publishable-api-keys.js +0 -10
  439. package/dist/feature-flags/publishable-api-keys.js.map +0 -1
  440. package/dist/feature-flags/sales-channels.d.ts +0 -3
  441. package/dist/feature-flags/sales-channels.d.ts.map +0 -1
  442. package/dist/feature-flags/sales-channels.js +0 -10
  443. package/dist/feature-flags/sales-channels.js.map +0 -1
  444. package/dist/feature-flags/tax-inclusive-pricing.d.ts +0 -3
  445. package/dist/feature-flags/tax-inclusive-pricing.d.ts.map +0 -1
  446. package/dist/feature-flags/tax-inclusive-pricing.js +0 -10
  447. package/dist/feature-flags/tax-inclusive-pricing.js.map +0 -1
  448. package/dist/feature-flags/utils/flag-router.d.ts.map +0 -1
  449. package/dist/feature-flags/utils/flag-router.js.map +0 -1
  450. package/dist/feature-flags/utils/index.d.ts +0 -2
  451. package/dist/feature-flags/utils/index.d.ts.map +0 -1
  452. package/dist/feature-flags/utils/index.js.map +0 -1
  453. package/dist/feature-flags/workflows.d.ts +0 -3
  454. package/dist/feature-flags/workflows.d.ts.map +0 -1
  455. package/dist/feature-flags/workflows.js +0 -10
  456. package/dist/feature-flags/workflows.js.map +0 -1
  457. package/dist/payment/events.d.ts +0 -5
  458. package/dist/payment/events.d.ts.map +0 -1
  459. package/dist/payment/events.js +0 -8
  460. package/dist/payment/events.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/product/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,eAAO,MAAM,aAAa,0IAQpB,CAAA;AAEN,eAAO,MAAM,aAAa,iDAGtB,CAAA;AAEJ,eAAO,MAAM,aAAa;;;;;;EAExB,CAAA;AAIF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;EAM7B,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BtB,CAAA;AAEX,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8Bf,CAAA;AAEX,eAAO,MAAM,mBAAmB;;;;;;;;;;;;EAI9B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;EAO7B,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBtB,CAAA;AAEX,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+Bf,CAAA"}
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateProduct = exports.UpdateProductVariant = exports.UpdateVariantPrice = exports.UpdateProductOption = exports.CreateProduct = exports.CreateProductVariant = exports.CreateProductOption = exports.CreateVariantPrice = exports.IdAssociation = exports.numericString = exports.booleanString = void 0;
4
+ const zod_1 = require("zod");
5
+ const enums_1 = require("./enums");
6
+ const booleanString = () => zod_1.z
7
+ .union([zod_1.z.boolean(), zod_1.z.string()])
8
+ .refine((value) => {
9
+ return ["true", "false"].includes(value.toString().toLowerCase());
10
+ })
11
+ .transform((value) => {
12
+ return value.toString().toLowerCase() === "true";
13
+ });
14
+ exports.booleanString = booleanString;
15
+ const numericString = () => zod_1.z.number().transform((value) => {
16
+ return value !== null && value !== undefined ? String(value) : value;
17
+ });
18
+ exports.numericString = numericString;
19
+ exports.IdAssociation = zod_1.z.object({
20
+ id: zod_1.z.string(),
21
+ });
22
+ const statusEnum = zod_1.z.nativeEnum(enums_1.ProductStatus);
23
+ exports.CreateVariantPrice = zod_1.z.object({
24
+ currency_code: zod_1.z.string(),
25
+ amount: zod_1.z.number(),
26
+ min_quantity: zod_1.z.number().nullish(),
27
+ max_quantity: zod_1.z.number().nullish(),
28
+ rules: zod_1.z.record(zod_1.z.string(), zod_1.z.string()).optional(),
29
+ });
30
+ exports.CreateProductOption = zod_1.z.object({
31
+ title: zod_1.z.string(),
32
+ values: zod_1.z.array(zod_1.z.string()),
33
+ });
34
+ exports.CreateProductVariant = zod_1.z
35
+ .object({
36
+ title: zod_1.z.string(),
37
+ sku: zod_1.z.string().nullish(),
38
+ ean: zod_1.z.string().nullish(),
39
+ upc: zod_1.z.string().nullish(),
40
+ barcode: zod_1.z.string().nullish(),
41
+ hs_code: zod_1.z.string().nullish(),
42
+ mid_code: zod_1.z.string().nullish(),
43
+ allow_backorder: (0, exports.booleanString)().optional().default(false),
44
+ manage_inventory: (0, exports.booleanString)().optional().default(true),
45
+ variant_rank: zod_1.z.number().optional(),
46
+ weight: zod_1.z.number().nullish(),
47
+ length: zod_1.z.number().nullish(),
48
+ height: zod_1.z.number().nullish(),
49
+ width: zod_1.z.number().nullish(),
50
+ origin_country: zod_1.z.string().nullish(),
51
+ material: zod_1.z.string().nullish(),
52
+ metadata: zod_1.z.record(zod_1.z.unknown()).nullish(),
53
+ prices: zod_1.z.array(exports.CreateVariantPrice),
54
+ options: zod_1.z.record(zod_1.z.string()).optional(),
55
+ inventory_items: zod_1.z
56
+ .array(zod_1.z.object({
57
+ inventory_item_id: zod_1.z.string(),
58
+ required_quantity: zod_1.z.number(),
59
+ }))
60
+ .optional(),
61
+ })
62
+ .strict();
63
+ exports.CreateProduct = zod_1.z
64
+ .object({
65
+ title: zod_1.z.string(),
66
+ subtitle: zod_1.z.string().nullish(),
67
+ description: zod_1.z.string().nullish(),
68
+ is_giftcard: (0, exports.booleanString)().optional().default(false),
69
+ discountable: (0, exports.booleanString)().optional().default(true),
70
+ images: zod_1.z.array(zod_1.z.object({ url: zod_1.z.string() })).optional(),
71
+ thumbnail: zod_1.z.string().nullish(),
72
+ handle: zod_1.z.string().optional(),
73
+ status: statusEnum.optional().default(enums_1.ProductStatus.DRAFT),
74
+ external_id: zod_1.z.string().nullish(),
75
+ type_id: zod_1.z.string().nullish(),
76
+ collection_id: zod_1.z.string().nullish(),
77
+ categories: zod_1.z.array(exports.IdAssociation).optional(),
78
+ tags: zod_1.z.array(exports.IdAssociation).optional(),
79
+ options: zod_1.z.array(exports.CreateProductOption).optional(),
80
+ variants: zod_1.z.array(exports.CreateProductVariant).optional(),
81
+ sales_channels: zod_1.z.array(zod_1.z.object({ id: zod_1.z.string() })).optional(),
82
+ shipping_profile_id: zod_1.z.string().optional(),
83
+ weight: zod_1.z.number().nullish(),
84
+ length: zod_1.z.number().nullish(),
85
+ height: zod_1.z.number().nullish(),
86
+ width: zod_1.z.number().nullish(),
87
+ hs_code: zod_1.z.string().nullish(),
88
+ mid_code: zod_1.z.string().nullish(),
89
+ origin_country: zod_1.z.string().nullish(),
90
+ material: zod_1.z.string().nullish(),
91
+ metadata: zod_1.z.record(zod_1.z.unknown()).nullish(),
92
+ })
93
+ .strict();
94
+ exports.UpdateProductOption = zod_1.z.object({
95
+ id: zod_1.z.string().optional(),
96
+ title: zod_1.z.string().optional(),
97
+ values: zod_1.z.array(zod_1.z.string()).optional(),
98
+ });
99
+ exports.UpdateVariantPrice = zod_1.z.object({
100
+ id: zod_1.z.string().optional(),
101
+ currency_code: zod_1.z.string().optional(),
102
+ amount: zod_1.z.number().optional(),
103
+ min_quantity: zod_1.z.number().nullish(),
104
+ max_quantity: zod_1.z.number().nullish(),
105
+ rules: zod_1.z.record(zod_1.z.string(), zod_1.z.string()).optional(),
106
+ });
107
+ exports.UpdateProductVariant = zod_1.z
108
+ .object({
109
+ id: zod_1.z.string().optional(),
110
+ title: zod_1.z.string().optional(),
111
+ prices: zod_1.z.array(exports.UpdateVariantPrice).optional(),
112
+ sku: zod_1.z.string().nullish(),
113
+ ean: zod_1.z.string().nullish(),
114
+ upc: zod_1.z.string().nullish(),
115
+ barcode: zod_1.z.string().nullish(),
116
+ hs_code: zod_1.z.string().nullish(),
117
+ mid_code: zod_1.z.string().nullish(),
118
+ allow_backorder: (0, exports.booleanString)().optional(),
119
+ manage_inventory: (0, exports.booleanString)().optional(),
120
+ variant_rank: zod_1.z.number().optional(),
121
+ weight: (0, exports.numericString)().nullish(),
122
+ length: (0, exports.numericString)().nullish(),
123
+ height: (0, exports.numericString)().nullish(),
124
+ width: (0, exports.numericString)().nullish(),
125
+ origin_country: zod_1.z.string().nullish(),
126
+ material: zod_1.z.string().nullish(),
127
+ metadata: zod_1.z.record(zod_1.z.unknown()).nullish(),
128
+ options: zod_1.z.record(zod_1.z.string()).optional(),
129
+ })
130
+ .strict();
131
+ exports.UpdateProduct = zod_1.z
132
+ .object({
133
+ id: zod_1.z.string(),
134
+ title: zod_1.z.string().optional(),
135
+ discountable: (0, exports.booleanString)().optional(),
136
+ is_giftcard: (0, exports.booleanString)().optional(),
137
+ options: zod_1.z.array(exports.UpdateProductOption).optional(),
138
+ variants: zod_1.z.array(exports.UpdateProductVariant).optional(),
139
+ status: statusEnum.optional(),
140
+ subtitle: zod_1.z.string().nullish(),
141
+ description: zod_1.z.string().nullish(),
142
+ images: zod_1.z.array(zod_1.z.object({ url: zod_1.z.string() })).optional(),
143
+ thumbnail: zod_1.z.string().nullish(),
144
+ handle: zod_1.z.string().nullish(),
145
+ type_id: zod_1.z.string().nullish(),
146
+ external_id: zod_1.z.string().nullish(),
147
+ collection_id: zod_1.z.string().nullish(),
148
+ categories: zod_1.z.array(exports.IdAssociation).optional(),
149
+ tags: zod_1.z.array(exports.IdAssociation).optional(),
150
+ sales_channels: zod_1.z.array(zod_1.z.object({ id: zod_1.z.string() })).optional(),
151
+ shipping_profile_id: zod_1.z.string().nullish(),
152
+ weight: (0, exports.numericString)().nullish(),
153
+ length: (0, exports.numericString)().nullish(),
154
+ height: (0, exports.numericString)().nullish(),
155
+ width: (0, exports.numericString)().nullish(),
156
+ hs_code: zod_1.z.string().nullish(),
157
+ mid_code: zod_1.z.string().nullish(),
158
+ origin_country: zod_1.z.string().nullish(),
159
+ material: zod_1.z.string().nullish(),
160
+ metadata: zod_1.z.record(zod_1.z.unknown()).nullish(),
161
+ })
162
+ .strict();
163
+ //# sourceMappingURL=validators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/product/validators.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,8 @@ export declare enum ApplicationMethodTargetType {
18
18
  }
19
19
  export declare enum ApplicationMethodAllocation {
20
20
  EACH = "each",
21
- ACROSS = "across"
21
+ ACROSS = "across",
22
+ ONCE = "once"
22
23
  }
23
24
  export declare enum PromotionRuleOperator {
24
25
  GTE = "gte",
@@ -31,7 +32,9 @@ export declare enum PromotionRuleOperator {
31
32
  }
32
33
  export declare enum CampaignBudgetType {
33
34
  SPEND = "spend",
34
- USAGE = "usage"
35
+ USAGE = "usage",
36
+ USE_BY_ATTRIBUTE = "use_by_attribute",
37
+ SPEND_BY_ATTRIBUTE = "spend_by_attribute"
35
38
  }
36
39
  export declare enum ComputedActions {
37
40
  ADD_ITEM_ADJUSTMENT = "addItemAdjustment",
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/promotion/index.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACvB,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,oBAAY,qBAAqB;IAC/B,KAAK,UAAU;IACf,UAAU,eAAe;CAC1B;AAED,oBAAY,2BAA2B;IACrC,KAAK,UAAU;IACf,gBAAgB,qBAAqB;IACrC,KAAK,UAAU;CAChB;AAED,oBAAY,2BAA2B;IACrC,IAAI,SAAS;IACb,MAAM,WAAW;CAClB;AAED,oBAAY,qBAAqB;IAC/B,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;CACV;AAED,oBAAY,kBAAkB;IAC5B,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,oBAAY,eAAe;IACzB,mBAAmB,sBAAsB;IACzC,8BAA8B,gCAAgC;IAC9D,sBAAsB,yBAAyB;IAC/C,iCAAiC,mCAAmC;IACpE,wBAAwB,2BAA2B;CACpD;AAED,oBAAY,gBAAgB;IAC1B,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,OAAO,YAAY;CACpB;AAED,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,YAAY,iBAAiB;IAC7B,SAAS,cAAc;CACxB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/promotion/index.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACvB,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,oBAAY,qBAAqB;IAC/B,KAAK,UAAU;IACf,UAAU,eAAe;CAC1B;AAED,oBAAY,2BAA2B;IACrC,KAAK,UAAU;IACf,gBAAgB,qBAAqB;IACrC,KAAK,UAAU;CAChB;AAED,oBAAY,2BAA2B;IACrC,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,IAAI,SAAS;CACd;AAED,oBAAY,qBAAqB;IAC/B,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;CACV;AAED,oBAAY,kBAAkB;IAC5B,KAAK,UAAU;IACf,KAAK,UAAU;IACf,gBAAgB,qBAAqB;IACrC,kBAAkB,uBAAuB;CAC1C;AAED,oBAAY,eAAe;IACzB,mBAAmB,sBAAsB;IACzC,8BAA8B,gCAAgC;IAC9D,sBAAsB,yBAAyB;IAC/C,iCAAiC,mCAAmC;IACpE,wBAAwB,2BAA2B;CACpD;AAED,oBAAY,gBAAgB;IAC1B,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,OAAO,YAAY;CACpB;AAED,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,YAAY,iBAAiB;IAC7B,SAAS,cAAc;CACxB"}
@@ -27,6 +27,7 @@ var ApplicationMethodAllocation;
27
27
  (function (ApplicationMethodAllocation) {
28
28
  ApplicationMethodAllocation["EACH"] = "each";
29
29
  ApplicationMethodAllocation["ACROSS"] = "across";
30
+ ApplicationMethodAllocation["ONCE"] = "once";
30
31
  })(ApplicationMethodAllocation || (exports.ApplicationMethodAllocation = ApplicationMethodAllocation = {}));
31
32
  var PromotionRuleOperator;
32
33
  (function (PromotionRuleOperator) {
@@ -42,6 +43,8 @@ var CampaignBudgetType;
42
43
  (function (CampaignBudgetType) {
43
44
  CampaignBudgetType["SPEND"] = "spend";
44
45
  CampaignBudgetType["USAGE"] = "usage";
46
+ CampaignBudgetType["USE_BY_ATTRIBUTE"] = "use_by_attribute";
47
+ CampaignBudgetType["SPEND_BY_ATTRIBUTE"] = "spend_by_attribute";
45
48
  })(CampaignBudgetType || (exports.CampaignBudgetType = CampaignBudgetType = {}));
46
49
  var ComputedActions;
47
50
  (function (ComputedActions) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/promotion/index.ts"],"names":[],"mappings":";;;AAAA,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,kCAAiB,CAAA;AACnB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAED,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,wCAAqB,CAAA;AACvB,CAAC,EAJW,eAAe,+BAAf,eAAe,QAI1B;AAED,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC/B,wCAAe,CAAA;IACf,kDAAyB,CAAA;AAC3B,CAAC,EAHW,qBAAqB,qCAArB,qBAAqB,QAGhC;AAED,IAAY,2BAIX;AAJD,WAAY,2BAA2B;IACrC,8CAAe,CAAA;IACf,oEAAqC,CAAA;IACrC,8CAAe,CAAA;AACjB,CAAC,EAJW,2BAA2B,2CAA3B,2BAA2B,QAItC;AAED,IAAY,2BAGX;AAHD,WAAY,2BAA2B;IACrC,4CAAa,CAAA;IACb,gDAAiB,CAAA;AACnB,CAAC,EAHW,2BAA2B,2CAA3B,2BAA2B,QAGtC;AAED,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;AACX,CAAC,EARW,qBAAqB,qCAArB,qBAAqB,QAQhC;AAED,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,qCAAe,CAAA;IACf,qCAAe,CAAA;AACjB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,4DAAyC,CAAA;IACzC,iFAA8D,CAAA;IAC9D,kEAA+C,CAAA;IAC/C,uFAAoE,CAAA;IACpE,sEAAmD,CAAA;AACrD,CAAC,EANW,eAAe,+BAAf,eAAe,QAM1B;AAED,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;AACrB,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B;AAED,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,yCAA6B,CAAA;IAC7B,mCAAuB,CAAA;AACzB,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/promotion/index.ts"],"names":[],"mappings":";;;AAAA,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,kCAAiB,CAAA;AACnB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAED,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,wCAAqB,CAAA;AACvB,CAAC,EAJW,eAAe,+BAAf,eAAe,QAI1B;AAED,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC/B,wCAAe,CAAA;IACf,kDAAyB,CAAA;AAC3B,CAAC,EAHW,qBAAqB,qCAArB,qBAAqB,QAGhC;AAED,IAAY,2BAIX;AAJD,WAAY,2BAA2B;IACrC,8CAAe,CAAA;IACf,oEAAqC,CAAA;IACrC,8CAAe,CAAA;AACjB,CAAC,EAJW,2BAA2B,2CAA3B,2BAA2B,QAItC;AAED,IAAY,2BAIX;AAJD,WAAY,2BAA2B;IACrC,4CAAa,CAAA;IACb,gDAAiB,CAAA;IACjB,4CAAa,CAAA;AACf,CAAC,EAJW,2BAA2B,2CAA3B,2BAA2B,QAItC;AAED,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;AACX,CAAC,EARW,qBAAqB,qCAArB,qBAAqB,QAQhC;AAED,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,qCAAe,CAAA;IACf,qCAAe,CAAA;IACf,2DAAqC,CAAA;IACrC,+DAAyC,CAAA;AAC3C,CAAC,EALW,kBAAkB,kCAAlB,kBAAkB,QAK7B;AAED,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,4DAAyC,CAAA;IACzC,iFAA8D,CAAA;IAC9D,kEAA+C,CAAA;IAC/C,uFAAoE,CAAA;IACpE,sEAAmD,CAAA;AACrD,CAAC,EANW,eAAe,+BAAf,eAAe,QAM1B;AAED,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;AACrB,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B;AAED,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,yCAA6B,CAAA;IAC7B,mCAAuB,CAAA;AACzB,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB"}
@@ -1,11 +1,16 @@
1
1
  import { AdjustmentLineDTO, BigNumberInput } from "@medusajs/types";
2
- export declare function calculateAdjustmentTotal({ adjustments, includesTax, taxRate, }: {
3
- adjustments: Pick<AdjustmentLineDTO, "amount">[];
4
- includesTax?: boolean;
2
+ export declare function calculateAdjustmentTotal({ item, adjustments, taxRate, }: {
3
+ item?: {
4
+ quantity: BigNumberInput;
5
+ };
6
+ adjustments: Pick<AdjustmentLineDTO, "amount" | "is_tax_inclusive">[];
5
7
  taxRate?: BigNumberInput;
6
8
  }): {
7
- adjustmentsTotal: import("bignumber.js").BigNumber;
8
- adjustmentsSubtotal: import("bignumber.js").BigNumber;
9
- adjustmentsTaxTotal: import("bignumber.js").BigNumber;
9
+ adjustmentsTotal: globalThis.BigNumber;
10
+ adjustmentsSubtotal: globalThis.BigNumber;
11
+ adjustmentsTaxTotal: globalThis.BigNumber;
12
+ adjustmentPerItem: globalThis.BigNumber;
13
+ adjustmentSubtotalPerItem: globalThis.BigNumber;
14
+ adjustmentTaxTotalPerItem: globalThis.BigNumber;
10
15
  };
11
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/totals/adjustment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAKnE,wBAAgB,wBAAwB,CAAC,EACvC,WAAW,EACX,WAAW,EACX,OAAO,GACR,EAAE;IACD,WAAW,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,EAAE,CAAA;IAChD,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;;;;EAyCA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/totals/adjustment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAKnE,wBAAgB,wBAAwB,CAAC,EACvC,IAAI,EACJ,WAAW,EACX,OAAO,GACR,EAAE;IACD,IAAI,CAAC,EAAE;QAAE,QAAQ,EAAE,cAAc,CAAA;KAAE,CAAA;IACnC,WAAW,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,kBAAkB,CAAC,EAAE,CAAA;IACrE,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;;;;;;;EAmDA"}
@@ -4,7 +4,7 @@ exports.calculateAdjustmentTotal = calculateAdjustmentTotal;
4
4
  const common_1 = require("../../common");
5
5
  const big_number_1 = require("../big-number");
6
6
  const math_1 = require("../math");
7
- function calculateAdjustmentTotal({ adjustments, includesTax, taxRate, }) {
7
+ function calculateAdjustmentTotal({ item, adjustments, taxRate, }) {
8
8
  // the sum of all adjustment amounts excluding tax
9
9
  let adjustmentsSubtotal = math_1.MathBN.convert(0);
10
10
  // the sum of all adjustment amounts including tax
@@ -15,29 +15,35 @@ function calculateAdjustmentTotal({ adjustments, includesTax, taxRate, }) {
15
15
  if (!(0, common_1.isDefined)(adj.amount)) {
16
16
  continue;
17
17
  }
18
- const adjustmentAmount = math_1.MathBN.convert(adj.amount);
19
- adjustmentsSubtotal = math_1.MathBN.add(adjustmentsSubtotal, adjustmentAmount);
20
- if ((0, common_1.isDefined)(taxRate)) {
21
- const adjustmentSubtotal = includesTax
22
- ? math_1.MathBN.div(adjustmentAmount, math_1.MathBN.add(1, taxRate))
23
- : adjustmentAmount;
24
- const adjustmentTaxTotal = math_1.MathBN.mult(adjustmentSubtotal, taxRate);
25
- const adjustmentTotal = math_1.MathBN.add(adjustmentSubtotal, adjustmentTaxTotal);
26
- adj["subtotal"] = new big_number_1.BigNumber(adjustmentSubtotal);
27
- adj["total"] = new big_number_1.BigNumber(adjustmentTotal);
28
- adjustmentsTotal = math_1.MathBN.add(adjustmentsTotal, adjustmentTotal);
29
- adjustmentsTaxTotal = math_1.MathBN.add(adjustmentsTaxTotal, adjustmentTaxTotal);
30
- }
31
- else {
32
- adj["subtotal"] = new big_number_1.BigNumber(adjustmentAmount);
33
- adj["adjustmentAmount"] = new big_number_1.BigNumber(adjustmentAmount);
34
- adjustmentsTotal = math_1.MathBN.add(adjustmentsTotal, adjustmentAmount);
35
- }
18
+ const adjustmentSubtotal = (0, common_1.isDefined)(taxRate) && adj.is_tax_inclusive
19
+ ? math_1.MathBN.div(adj.amount, math_1.MathBN.add(1, taxRate))
20
+ : adj.amount;
21
+ const adjustmentTaxTotal = (0, common_1.isDefined)(taxRate)
22
+ ? math_1.MathBN.mult(adjustmentSubtotal, taxRate)
23
+ : 0;
24
+ const adjustmentTotal = math_1.MathBN.add(adjustmentSubtotal, adjustmentTaxTotal);
25
+ adjustmentsSubtotal = math_1.MathBN.add(adjustmentsSubtotal, adjustmentSubtotal);
26
+ adjustmentsTaxTotal = math_1.MathBN.add(adjustmentsTaxTotal, adjustmentTaxTotal);
27
+ adjustmentsTotal = math_1.MathBN.add(adjustmentsTotal, adjustmentTotal);
28
+ adj["subtotal"] = new big_number_1.BigNumber(adjustmentsSubtotal);
29
+ adj["total"] = new big_number_1.BigNumber(adjustmentsTotal);
30
+ }
31
+ const quantity = item?.quantity || math_1.MathBN.convert(1);
32
+ let adjustmentPerItem = math_1.MathBN.convert(0);
33
+ let adjustmentSubtotalPerItem = math_1.MathBN.convert(0);
34
+ let adjustmentTaxTotalPerItem = math_1.MathBN.convert(0);
35
+ if (!math_1.MathBN.eq(quantity, 0)) {
36
+ adjustmentPerItem = math_1.MathBN.div(adjustmentsTotal, quantity);
37
+ adjustmentSubtotalPerItem = math_1.MathBN.div(adjustmentsSubtotal, quantity);
38
+ adjustmentTaxTotalPerItem = math_1.MathBN.div(adjustmentsTaxTotal, quantity);
36
39
  }
37
40
  return {
38
41
  adjustmentsTotal,
39
42
  adjustmentsSubtotal,
40
43
  adjustmentsTaxTotal,
44
+ adjustmentPerItem,
45
+ adjustmentSubtotalPerItem,
46
+ adjustmentTaxTotalPerItem,
41
47
  };
42
48
  }
43
49
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/totals/adjustment/index.ts"],"names":[],"mappings":";;AAKA,4DAiDC;AArDD,yCAAwC;AACxC,8CAAyC;AACzC,kCAAgC;AAEhC,SAAgB,wBAAwB,CAAC,EACvC,WAAW,EACX,WAAW,EACX,OAAO,GAKR;IACC,kDAAkD;IAClD,IAAI,mBAAmB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAC3C,kDAAkD;IAClD,IAAI,gBAAgB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IACxC,oCAAoC;IACpC,IAAI,mBAAmB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAE3C,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAA,kBAAS,EAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,SAAQ;QACV,CAAC;QAED,MAAM,gBAAgB,GAAG,aAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACnD,mBAAmB,GAAG,aAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAA;QAEvE,IAAI,IAAA,kBAAS,EAAC,OAAO,CAAC,EAAE,CAAC;YACvB,MAAM,kBAAkB,GAAG,WAAW;gBACpC,CAAC,CAAC,aAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,aAAM,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;gBACtD,CAAC,CAAC,gBAAgB,CAAA;YAEpB,MAAM,kBAAkB,GAAG,aAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAA;YACnE,MAAM,eAAe,GAAG,aAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAA;YAE1E,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,sBAAS,CAAC,kBAAkB,CAAC,CAAA;YACnD,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,sBAAS,CAAC,eAAe,CAAC,CAAA;YAE7C,gBAAgB,GAAG,aAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAA;YAChE,mBAAmB,GAAG,aAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAA;QAC3E,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,sBAAS,CAAC,gBAAgB,CAAC,CAAA;YACjD,GAAG,CAAC,kBAAkB,CAAC,GAAG,IAAI,sBAAS,CAAC,gBAAgB,CAAC,CAAA;YACzD,gBAAgB,GAAG,aAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAA;QACnE,CAAC;IACH,CAAC;IAED,OAAO;QACL,gBAAgB;QAChB,mBAAmB;QACnB,mBAAmB;KACpB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/totals/adjustment/index.ts"],"names":[],"mappings":";;AAKA,4DA2DC;AA/DD,yCAAwC;AACxC,8CAAyC;AACzC,kCAAgC;AAEhC,SAAgB,wBAAwB,CAAC,EACvC,IAAI,EACJ,WAAW,EACX,OAAO,GAKR;IACC,kDAAkD;IAClD,IAAI,mBAAmB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAC3C,kDAAkD;IAClD,IAAI,gBAAgB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IACxC,oCAAoC;IACpC,IAAI,mBAAmB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAE3C,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAA,kBAAS,EAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,SAAQ;QACV,CAAC;QAED,MAAM,kBAAkB,GACtB,IAAA,kBAAS,EAAC,OAAO,CAAC,IAAI,GAAG,CAAC,gBAAgB;YACxC,CAAC,CAAC,aAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,aAAM,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAChD,CAAC,CAAC,GAAG,CAAC,MAAM,CAAA;QAEhB,MAAM,kBAAkB,GAAG,IAAA,kBAAS,EAAC,OAAO,CAAC;YAC3C,CAAC,CAAC,aAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC;YAC1C,CAAC,CAAC,CAAC,CAAA;QACL,MAAM,eAAe,GAAG,aAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAA;QAE1E,mBAAmB,GAAG,aAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAA;QACzE,mBAAmB,GAAG,aAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAA;QACzE,gBAAgB,GAAG,aAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAA;QAEhE,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,sBAAS,CAAC,mBAAmB,CAAC,CAAA;QACpD,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,sBAAS,CAAC,gBAAgB,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAEpD,IAAI,iBAAiB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IACzC,IAAI,yBAAyB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IACjD,IAAI,yBAAyB,GAAG,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAEjD,IAAI,CAAC,aAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC;QAC5B,iBAAiB,GAAG,aAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAA;QAC1D,yBAAyB,GAAG,aAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;QACrE,yBAAyB,GAAG,aAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;IACvE,CAAC;IAED,OAAO;QACL,gBAAgB;QAChB,mBAAmB;QACnB,mBAAmB;QACnB,iBAAiB;QACjB,yBAAyB;QACzB,yBAAyB;KAC1B,CAAA;AACH,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { BigNumberInput, BigNumberRawValue, IBigNumber } from "@medusajs/types";
2
- import { BigNumber as BigNumberJS } from "bignumber.js";
2
+ import { BigNumber as BigNumberConstructor } from "bignumber.js";
3
+ type BigNumberJS = InstanceType<typeof BigNumberConstructor>;
4
+ declare const BigNumberJS: typeof globalThis.BigNumber;
3
5
  export declare class BigNumber implements IBigNumber {
4
6
  static DEFAULT_PRECISION: number;
5
7
  private numeric_;
@@ -20,4 +22,6 @@ export declare class BigNumber implements IBigNumber {
20
22
  valueOf(): number;
21
23
  [Symbol.toPrimitive](hint: any): string | number | undefined;
22
24
  }
25
+ export declare const MEDUSA_EPSILON: BigNumber;
26
+ export {};
23
27
  //# sourceMappingURL=big-number.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"big-number.d.ts","sourceRoot":"","sources":["../../src/totals/big-number.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EAAE,SAAS,IAAI,WAAW,EAAE,MAAM,cAAc,CAAA;AAGvD,qBAAa,SAAU,YAAW,UAAU;IAC1C,MAAM,CAAC,iBAAiB,SAAK;IAE7B,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,IAAI,CAAC,CAAmB;IAChC,OAAO,CAAC,UAAU,CAAC,CAAa;gBAG9B,QAAQ,EAAE,cAAc,GAAG,SAAS,EACpC,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE;IAKlC,kBAAkB,CAChB,QAAQ,EAAE,cAAc,GAAG,SAAS,EACpC,EAAE,SAAS,EAAE,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO;IA6D5C,IAAI,OAAO,IAAI,MAAM,CAOpB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,cAAc,EAKhC;IAED,IAAI,GAAG,IAAI,iBAAiB,GAAG,SAAS,CAEvC;IAED,IAAI,SAAS,IAAI,WAAW,GAAG,SAAS,CAEvC;IAED,IAAI,GAAG,CAAC,QAAQ,EAAE,cAAc,EAK/B;IAED,MAAM,IAAI,MAAM;IAQhB,OAAO,IAAI,MAAM;IAIjB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,KAAA;CAO1B"}
1
+ {"version":3,"file":"big-number.d.ts","sourceRoot":"","sources":["../../src/totals/big-number.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EAAE,SAAS,IAAI,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAIhE,KAAK,WAAW,GAAG,YAAY,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAC5D,QAAA,MAAM,WAAW,6BAAuB,CAAA;AACxC,qBAAa,SAAU,YAAW,UAAU;IAC1C,MAAM,CAAC,iBAAiB,SAAK;IAE7B,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,IAAI,CAAC,CAAmB;IAChC,OAAO,CAAC,UAAU,CAAC,CAAa;gBAG9B,QAAQ,EAAE,cAAc,GAAG,SAAS,EACpC,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE;IAKlC,kBAAkB,CAChB,QAAQ,EAAE,cAAc,GAAG,SAAS,EACpC,EAAE,SAAS,EAAE,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO;IA6D5C,IAAI,OAAO,IAAI,MAAM,CAcpB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,cAAc,EAKhC;IAED,IAAI,GAAG,IAAI,iBAAiB,GAAG,SAAS,CAEvC;IAED,IAAI,SAAS,IAAI,WAAW,GAAG,SAAS,CAEvC;IAED,IAAI,GAAG,CAAC,QAAQ,EAAE,cAAc,EAK/B;IAED,MAAM,IAAI,MAAM;IAchB,OAAO,IAAI,MAAM;IAIjB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,KAAA;CAO1B;AAED,eAAO,MAAM,cAAc,WAE1B,CAAA"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BigNumber = void 0;
3
+ exports.MEDUSA_EPSILON = exports.BigNumber = void 0;
4
4
  const bignumber_js_1 = require("bignumber.js");
5
- const common_1 = require("../common");
5
+ const is_big_number_1 = require("../common/is-big-number");
6
+ const is_string_1 = require("../common/is-string");
7
+ const BigNumberJS = bignumber_js_1.BigNumber;
6
8
  class BigNumber {
7
9
  constructor(rawValue, options) {
8
10
  this.setRawValueOrThrow(rawValue, options);
@@ -12,7 +14,7 @@ class BigNumber {
12
14
  if (rawValue instanceof BigNumber) {
13
15
  Object.assign(this, rawValue);
14
16
  }
15
- else if (bignumber_js_1.BigNumber.isBigNumber(rawValue)) {
17
+ else if (BigNumberJS.isBigNumber(rawValue)) {
16
18
  /**
17
19
  * Example:
18
20
  * const bnUnitValue = new BigNumberJS("10.99")
@@ -25,11 +27,11 @@ class BigNumber {
25
27
  };
26
28
  this.bignumber_ = rawValue;
27
29
  }
28
- else if ((0, common_1.isString)(rawValue)) {
30
+ else if ((0, is_string_1.isString)(rawValue)) {
29
31
  /**
30
32
  * Example: const unitValue = "1234.1234"
31
33
  */
32
- const bigNum = new bignumber_js_1.BigNumber(rawValue);
34
+ const bigNum = new BigNumberJS(rawValue);
33
35
  this.numeric_ = bigNum.toNumber();
34
36
  this.raw_ = this.raw_ = {
35
37
  value: bigNum.toPrecision(precision),
@@ -37,12 +39,12 @@ class BigNumber {
37
39
  };
38
40
  this.bignumber_ = bigNum;
39
41
  }
40
- else if ((0, common_1.isBigNumber)(rawValue)) {
42
+ else if ((0, is_big_number_1.isBigNumber)(rawValue)) {
41
43
  /**
42
44
  * Example: const unitValue = { value: "1234.1234" }
43
45
  */
44
46
  const definedPrecision = rawValue.precision ?? precision;
45
- const bigNum = new bignumber_js_1.BigNumber(rawValue.value);
47
+ const bigNum = new BigNumberJS(rawValue.value);
46
48
  this.numeric_ = bigNum.toNumber();
47
49
  this.raw_ = {
48
50
  ...rawValue,
@@ -55,7 +57,7 @@ class BigNumber {
55
57
  * Example: const unitValue = 1234
56
58
  */
57
59
  this.numeric_ = rawValue;
58
- const bigNum = new bignumber_js_1.BigNumber(rawValue);
60
+ const bigNum = new BigNumberJS(rawValue);
59
61
  this.raw_ = {
60
62
  value: bigNum.toPrecision(precision),
61
63
  precision,
@@ -67,13 +69,18 @@ class BigNumber {
67
69
  }
68
70
  }
69
71
  get numeric() {
72
+ let value;
70
73
  let raw = this.raw_;
71
74
  if (raw) {
72
- return new bignumber_js_1.BigNumber(raw.value).toNumber();
75
+ value = new BigNumberJS(raw.value).toNumber();
73
76
  }
74
77
  else {
75
- return this.numeric_;
78
+ value = this.numeric_;
76
79
  }
80
+ if (Math.abs(value) <= exports.MEDUSA_EPSILON.numeric_) {
81
+ return 0;
82
+ }
83
+ return value;
77
84
  }
78
85
  set numeric(value) {
79
86
  const newValue = new BigNumber(value);
@@ -94,22 +101,27 @@ class BigNumber {
94
101
  this.bignumber_ = newValue.bignumber_;
95
102
  }
96
103
  toJSON() {
97
- return this.bignumber_
104
+ const value = this.bignumber_
98
105
  ? this.bignumber_?.toNumber()
99
106
  : this.raw_
100
- ? new bignumber_js_1.BigNumber(this.raw_.value).toNumber()
107
+ ? new BigNumberJS(this.raw_.value).toNumber()
101
108
  : this.numeric_;
109
+ if (Math.abs(value) <= exports.MEDUSA_EPSILON.numeric_) {
110
+ return 0;
111
+ }
112
+ return value;
102
113
  }
103
114
  valueOf() {
104
- return this.numeric_;
115
+ return this.numeric;
105
116
  }
106
117
  [Symbol.toPrimitive](hint) {
107
118
  if (hint === "string") {
108
119
  return this.raw?.value;
109
120
  }
110
- return this.numeric_;
121
+ return this.numeric;
111
122
  }
112
123
  }
113
124
  exports.BigNumber = BigNumber;
114
125
  BigNumber.DEFAULT_PRECISION = 20;
126
+ exports.MEDUSA_EPSILON = new BigNumber(process.env.MEDUSA_EPSILON || "0.0001");
115
127
  //# sourceMappingURL=big-number.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"big-number.js","sourceRoot":"","sources":["../../src/totals/big-number.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"big-number.js","sourceRoot":"","sources":["../../src/totals/big-number.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export interface DecorateCartLikeInputDTO {
13
13
  quantity: BigNumberInput;
14
14
  adjustments?: {
15
15
  amount: BigNumberInput;
16
+ is_tax_inclusive?: boolean;
16
17
  }[];
17
18
  tax_lines?: {
18
19
  rate: BigNumberInput;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/totals/cart/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAWpE,UAAU,YAAY;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,wBAAwB;IACvC,YAAY,CAAC,EAAE;QACb,MAAM,EAAE,cAAc,CAAA;KACvB,EAAE,CAAA;IACH,KAAK,CAAC,EAAE;QACN,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,UAAU,EAAE,cAAc,CAAA;QAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAA;QAC1B,QAAQ,EAAE,cAAc,CAAA;QACxB,WAAW,CAAC,EAAE;YAAE,MAAM,EAAE,cAAc,CAAA;SAAE,EAAE,CAAA;QAC1C,SAAS,CAAC,EAAE;YACV,IAAI,EAAE,cAAc,CAAA;SACrB,EAAE,CAAA;KACJ,EAAE,CAAA;IACH,gBAAgB,CAAC,EAAE;QACjB,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,cAAc,CAAA;QACtB,gBAAgB,CAAC,EAAE,OAAO,CAAA;QAC1B,WAAW,CAAC,EAAE;YAAE,MAAM,EAAE,cAAc,CAAA;SAAE,EAAE,CAAA;QAC1C,SAAS,CAAC,EAAE;YACV,IAAI,EAAE,cAAc,CAAA;SACrB,EAAE,CAAA;KACJ,EAAE,CAAA;IACH,MAAM,CAAC,EAAE;QACP,eAAe,CAAC,EAAE,OAAO,CAAA;KAC1B,CAAA;CACF;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,wBAAwB,EAClC,MAAM,GAAE,YAAiB,GACxB,kBAAkB,CAoOpB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/totals/cart/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAWpE,UAAU,YAAY;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,wBAAwB;IACvC,YAAY,CAAC,EAAE;QACb,MAAM,EAAE,cAAc,CAAA;KACvB,EAAE,CAAA;IACH,KAAK,CAAC,EAAE;QACN,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,UAAU,EAAE,cAAc,CAAA;QAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAA;QAC1B,QAAQ,EAAE,cAAc,CAAA;QACxB,WAAW,CAAC,EAAE;YAAE,MAAM,EAAE,cAAc,CAAC;YAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;SAAE,EAAE,CAAA;QACtE,SAAS,CAAC,EAAE;YACV,IAAI,EAAE,cAAc,CAAA;SACrB,EAAE,CAAA;KACJ,EAAE,CAAA;IACH,gBAAgB,CAAC,EAAE;QACjB,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,cAAc,CAAA;QACtB,gBAAgB,CAAC,EAAE,OAAO,CAAA;QAC1B,WAAW,CAAC,EAAE;YAAE,MAAM,EAAE,cAAc,CAAA;SAAE,EAAE,CAAA;QAC1C,SAAS,CAAC,EAAE;YACV,IAAI,EAAE,cAAc,CAAA;SACrB,EAAE,CAAA;KACJ,EAAE,CAAA;IACH,MAAM,CAAC,EAAE;QACP,eAAe,CAAC,EAAE,OAAO,CAAA;KAC1B,CAAA;CACF;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,wBAAwB,EAClC,MAAM,GAAE,YAAiB,GACxB,kBAAkB,CAoPpB"}
@@ -43,14 +43,17 @@ function decorateCartTotals(cartLike, config = {}) {
43
43
  let itemsOriginalSubtotal = math_1.MathBN.convert(0);
44
44
  let itemsTaxTotal = math_1.MathBN.convert(0);
45
45
  let itemsOriginalTaxTotal = math_1.MathBN.convert(0);
46
+ let itemsDiscountTotal = math_1.MathBN.convert(0);
46
47
  let shippingSubtotal = math_1.MathBN.convert(0);
47
48
  let shippingTotal = math_1.MathBN.convert(0);
48
49
  let shippingOriginalTotal = math_1.MathBN.convert(0);
49
50
  let shippingOriginalSubtotal = math_1.MathBN.convert(0);
50
51
  let shippingTaxTotal = math_1.MathBN.convert(0);
51
52
  let shippingOriginalTaxTotal = math_1.MathBN.convert(0);
53
+ let shippingDiscountTotal = math_1.MathBN.convert(0);
52
54
  const cartItems = items.map((item, index) => {
53
- const itemTotals = Object.assign(item, itemsTotals[item.id ?? index] ?? {});
55
+ const rawTotals = itemsTotals[item.id ?? index] ?? {};
56
+ const itemTotals = Object.assign(item, rawTotals);
54
57
  const itemSubtotal = itemTotals.subtotal;
55
58
  const itemTotal = math_1.MathBN.convert(itemTotals.total);
56
59
  const itemOriginalTotal = math_1.MathBN.convert(itemTotals.original_total);
@@ -69,6 +72,7 @@ function decorateCartTotals(cartLike, config = {}) {
69
72
  itemsSubtotal = math_1.MathBN.add(itemsSubtotal, itemSubtotal);
70
73
  itemsTaxTotal = math_1.MathBN.add(itemsTaxTotal, itemTaxTotal);
71
74
  itemsOriginalTaxTotal = math_1.MathBN.add(itemsOriginalTaxTotal, itemOriginalTaxTotal);
75
+ itemsDiscountTotal = math_1.MathBN.add(itemsDiscountTotal, itemDiscountTotal);
72
76
  for (const key of Object.values(optionalFields)) {
73
77
  if (key in itemTotals) {
74
78
  extraTotals[key] ??= math_1.MathBN.convert(0);
@@ -80,15 +84,16 @@ function decorateCartTotals(cartLike, config = {}) {
80
84
  const cartShippingMethods = shippingMethods.map((shippingMethod, index) => {
81
85
  const shippingMethodTotals = Object.assign(shippingMethod, shippingMethodsTotals[shippingMethod.id ?? index] ?? {});
82
86
  subtotal = math_1.MathBN.add(subtotal, shippingMethodTotals.subtotal);
87
+ discountTotal = math_1.MathBN.add(discountTotal, shippingMethodTotals.discount_total);
88
+ discountSubtotal = math_1.MathBN.add(discountSubtotal, shippingMethodTotals.discount_subtotal);
89
+ discountTaxTotal = math_1.MathBN.add(discountTaxTotal, shippingMethodTotals.discount_tax_total);
83
90
  shippingSubtotal = math_1.MathBN.add(shippingSubtotal, shippingMethodTotals.subtotal);
84
91
  shippingTotal = math_1.MathBN.add(shippingTotal, shippingMethodTotals.total);
85
92
  shippingOriginalTotal = math_1.MathBN.add(shippingOriginalTotal, shippingMethodTotals.original_total);
86
93
  shippingOriginalSubtotal = math_1.MathBN.add(shippingOriginalSubtotal, shippingMethodTotals.subtotal);
87
94
  shippingTaxTotal = math_1.MathBN.add(shippingTaxTotal, shippingMethodTotals.tax_total);
88
95
  shippingOriginalTaxTotal = math_1.MathBN.add(shippingOriginalTaxTotal, shippingMethodTotals.original_tax_total);
89
- discountTotal = math_1.MathBN.add(discountTotal, shippingMethodTotals.discount_total);
90
- discountSubtotal = math_1.MathBN.add(discountSubtotal, shippingMethodTotals.discount_subtotal);
91
- discountTaxTotal = math_1.MathBN.add(discountTaxTotal, shippingMethodTotals.discount_tax_total);
96
+ shippingDiscountTotal = math_1.MathBN.add(shippingDiscountTotal, shippingMethodTotals.discount_total);
92
97
  return shippingMethodTotals;
93
98
  });
94
99
  const { creditLinesTotal, creditLinesSubtotal, creditLinesTaxTotal } = (0, credit_lines_1.calculateCreditLinesTotal)({
@@ -100,6 +105,7 @@ function decorateCartTotals(cartLike, config = {}) {
100
105
  const originalTaxTotal = math_1.MathBN.add(itemsOriginalTaxTotal, shippingOriginalTaxTotal);
101
106
  // TODO: Gift Card calculations
102
107
  const originalTotal = math_1.MathBN.add(itemsOriginalTotal, shippingOriginalTotal);
108
+ const originalSubtotal = math_1.MathBN.add(itemsOriginalSubtotal, shippingOriginalSubtotal);
103
109
  // TODO: subtract (cart.gift_card_total + cart.gift_card_tax_total)
104
110
  const tempTotal = math_1.MathBN.add(subtotal, taxTotal);
105
111
  const total = math_1.MathBN.sub(tempTotal, discountSubtotal, creditLinesTotal);
@@ -116,6 +122,7 @@ function decorateCartTotals(cartLike, config = {}) {
116
122
  // cart.gift_card_total = giftCardTotal.total || 0
117
123
  // cart.gift_card_tax_total = giftCardTotal.tax_total || 0
118
124
  cart.original_total = new big_number_1.BigNumber(originalTotal);
125
+ cart.original_subtotal = new big_number_1.BigNumber(originalSubtotal);
119
126
  cart.original_tax_total = new big_number_1.BigNumber(originalTaxTotal);
120
127
  // cart.original_gift_card_total =
121
128
  // cart.original_gift_card_tax_total =
@@ -124,6 +131,7 @@ function decorateCartTotals(cartLike, config = {}) {
124
131
  cart.item_total = new big_number_1.BigNumber(itemsTotal);
125
132
  cart.item_subtotal = new big_number_1.BigNumber(itemsSubtotal);
126
133
  cart.item_tax_total = new big_number_1.BigNumber(itemsTaxTotal);
134
+ cart.item_discount_total = new big_number_1.BigNumber(itemsDiscountTotal);
127
135
  cart.original_item_total = new big_number_1.BigNumber(itemsOriginalTotal);
128
136
  cart.original_item_subtotal = new big_number_1.BigNumber(itemsOriginalSubtotal);
129
137
  cart.original_item_tax_total = new big_number_1.BigNumber(itemsOriginalTaxTotal);
@@ -136,10 +144,17 @@ function decorateCartTotals(cartLike, config = {}) {
136
144
  cart.shipping_total = new big_number_1.BigNumber(shippingTotal);
137
145
  cart.shipping_subtotal = new big_number_1.BigNumber(shippingSubtotal);
138
146
  cart.shipping_tax_total = new big_number_1.BigNumber(shippingTaxTotal);
147
+ cart.shipping_discount_total = new big_number_1.BigNumber(shippingDiscountTotal);
139
148
  cart.original_shipping_tax_total = new big_number_1.BigNumber(shippingOriginalTaxTotal);
140
149
  cart.original_shipping_subtotal = new big_number_1.BigNumber(shippingOriginalSubtotal);
141
150
  cart.original_shipping_total = new big_number_1.BigNumber(shippingOriginalTotal);
142
151
  }
152
+ // Calculate pending return total
153
+ if (cart.summary) {
154
+ const pendingReturnTotal = math_1.MathBN.sum(0, ...(cart.items?.map((item) => item.return_requested_total ?? 0) ?? [0]));
155
+ const pendingDifference = new big_number_1.BigNumber(math_1.MathBN.sub(math_1.MathBN.sub(cart.total, pendingReturnTotal), cart.summary?.transaction_total ?? 0));
156
+ cart.summary.pending_difference = pendingDifference;
157
+ }
143
158
  return cart;
144
159
  }
145
160
  //# sourceMappingURL=index.js.map