@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
@@ -1 +1 @@
1
- {"version":3,"file":"message-aggregator.js","sourceRoot":"","sources":["../../src/event-bus/message-aggregator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-aggregator.js","sourceRoot":"","sources":["../../src/event-bus/message-aggregator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/event-bus/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAItD,KAAK,UAAU,CAAC,MAAM,SAAS,MAAM,EAAE,IAAI;KACxC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,UAAU,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU;CACjD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,UAAU,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU;CACjD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,UAAU,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU;CACjD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,WAAW,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW;CACnD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,WAAW,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW;CACnD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,WAAW,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW;CACnD,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,EAC3C,MAAM,EACN,UAAU,EACV,MAAM,GACP,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;CACf,GAAG,MAAM,CAIT;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,SAAS,MAAM,EAAE,EACnE,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAAC,MAAM,CAAC,CAmBpB"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/event-bus/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAItD,KAAK,UAAU,CAAC,MAAM,SAAS,MAAM,EAAE,IAAI;KACxC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,UAAU,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU;CACjD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,UAAU,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU;CACjD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,UAAU,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU;CACjD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,WAAW,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW;CACnD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,WAAW,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW;CACnD,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAClC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CACtB,WAAW,GAAG,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW;CACnD,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,EAC3C,MAAM,EACN,UAAU,EACV,MAAM,GACP,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;CACf,GAAG,MAAM,CAGT;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,SAAS,MAAM,EAAE,EACnE,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAAC,MAAM,CAAC,CAmBpB"}
@@ -12,8 +12,7 @@ const common_events_1 = require("./common-events");
12
12
  */
13
13
  function buildModuleResourceEventName({ prefix, objectName, action, }) {
14
14
  const kebabCaseName = (0, common_1.lowerCaseFirst)((0, common_1.kebabCase)(objectName));
15
- const conventionalePrefix = prefix && (0, common_1.lowerCaseFirst)((0, common_1.kebabCase)(prefix));
16
- return `${prefix ? `${conventionalePrefix}.` : ""}${kebabCaseName}.${action}`;
15
+ return `${prefix ? `${prefix}.` : ""}${kebabCaseName}.${action}`;
17
16
  }
18
17
  /**
19
18
  * From the given strings it will produce the event names accordingly.
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/event-bus/utils.ts"],"names":[],"mappings":";;AAoCA,oEAYC;AAmBD,sEAsBC;AAxFD,sCAAuE;AACvE,mDAA8C;AA4B9C;;;;;GAKG;AACH,SAAgB,4BAA4B,CAAC,EAC3C,MAAM,EACN,UAAU,EACV,MAAM,GAKP;IACC,MAAM,aAAa,GAAG,IAAA,uBAAc,EAAC,IAAA,kBAAS,EAAC,UAAU,CAAC,CAAC,CAAA;IAC3D,MAAM,mBAAmB,GAAG,MAAM,IAAI,IAAA,uBAAc,EAAC,IAAA,kBAAS,EAAC,MAAM,CAAC,CAAC,CAAA;IACvE,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,mBAAmB,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,aAAa,IAAI,MAAM,EAAE,CAAA;AAC/E,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,6BAA6B,CAC3C,KAAa,EACb,MAAe;IAEf,MAAM,MAAM,GAAG,EAAE,CAAA;IAEjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,cAAc,GAAG,IAAA,yBAAgB,EAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;QAE3D,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,4BAAY,CAAa,EAAE,CAAC;YAC5D,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;YAC3C,MAAM,CAAC,GAAG,cAAc,IAAI,eAAe,EAAE,CAAC;gBAC5C,4BAA4B,CAAC;oBAC3B,MAAM;oBACN,UAAU,EAAE,IAAI;oBAChB,MAAM,EAAE,KAAK;iBACd,CAAgD,CAAA;QACrD,CAAC;IACH,CAAC;IAED,OAAO,MAA4B,CAAA;AACrC,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/event-bus/utils.ts"],"names":[],"mappings":";;AAoCA,oEAWC;AAmBD,sEAsBC;AAvFD,sCAAuE;AACvE,mDAA8C;AA4B9C;;;;;GAKG;AACH,SAAgB,4BAA4B,CAAC,EAC3C,MAAM,EACN,UAAU,EACV,MAAM,GAKP;IACC,MAAM,aAAa,GAAG,IAAA,uBAAc,EAAC,IAAA,kBAAS,EAAC,UAAU,CAAC,CAAC,CAAA;IAC3D,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,aAAa,IAAI,MAAM,EAAE,CAAA;AAClE,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,6BAA6B,CAC3C,KAAa,EACb,MAAe;IAEf,MAAM,MAAM,GAAG,EAAE,CAAA;IAEjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,cAAc,GAAG,IAAA,yBAAgB,EAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;QAE3D,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,4BAAY,CAAa,EAAE,CAAC;YAC5D,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;YAC3C,MAAM,CAAC,GAAG,cAAc,IAAI,eAAe,EAAE,CAAC;gBAC5C,4BAA4B,CAAC;oBAC3B,MAAM;oBACN,UAAU,EAAE,IAAI;oBAChB,MAAM,EAAE,KAAK;iBACd,CAAgD,CAAA;QACrD,CAAC;IACH,CAAC;IAED,OAAO,MAA4B,CAAA;AACrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-duplicate-error.d.ts","sourceRoot":"","sources":["../../src/exceptions/is-duplicate-error.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,gBAAgB,QAAS,KAAK,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,YAE9D,CAAA"}
1
+ {"version":3,"file":"is-duplicate-error.d.ts","sourceRoot":"","sources":["../../src/exceptions/is-duplicate-error.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,gBAAgB,GAAI,KAAK,KAAK,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,YAE9D,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { Logger } from "@medusajs/types";
2
+ import { FlagRouter } from "./flag-router";
3
+ export interface DiscoverAndRegisterOptions {
4
+ flagDir: string;
5
+ projectConfigFlags?: Record<string, any>;
6
+ router: FlagRouter;
7
+ logger?: Logger;
8
+ track?: (key: string) => void;
9
+ maxDepth?: number;
10
+ }
11
+ /**
12
+ * Utility function to discover and register feature flags from a directory
13
+ */
14
+ export declare function discoverAndRegisterFeatureFlags(options: DiscoverAndRegisterOptions): Promise<void>;
15
+ //# sourceMappingURL=discover-and-register-feature-flags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-and-register-feature-flags.d.ts","sourceRoot":"","sources":["../../src/feature-flags/discover-and-register-feature-flags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG1C,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAA;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACxC,MAAM,EAAE,UAAU,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,IAAI,CAAC,CAuBf"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.discoverAndRegisterFeatureFlags = discoverAndRegisterFeatureFlags;
4
+ const discover_feature_flags_1 = require("./discover-feature-flags");
5
+ const register_flag_1 = require("./register-flag");
6
+ /**
7
+ * Utility function to discover and register feature flags from a directory
8
+ */
9
+ async function discoverAndRegisterFeatureFlags(options) {
10
+ const { flagDir, projectConfigFlags = {}, router, logger, track, maxDepth, } = options;
11
+ const discovered = await (0, discover_feature_flags_1.discoverFeatureFlagsFromDir)(flagDir, maxDepth);
12
+ for (const def of discovered) {
13
+ const registerOptions = {
14
+ flag: def,
15
+ projectConfigFlags,
16
+ router,
17
+ logger,
18
+ track,
19
+ };
20
+ (0, register_flag_1.registerFeatureFlag)(registerOptions);
21
+ }
22
+ }
23
+ //# sourceMappingURL=discover-and-register-feature-flags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-and-register-feature-flags.js","sourceRoot":"","sources":["../../src/feature-flags/discover-and-register-feature-flags.ts"],"names":[],"mappings":";;AAiBA,0EAyBC;AAzCD,qEAAsE;AAEtE,mDAAqD;AAWrD;;GAEG;AACI,KAAK,UAAU,+BAA+B,CACnD,OAAmC;IAEnC,MAAM,EACJ,OAAO,EACP,kBAAkB,GAAG,EAAE,EACvB,MAAM,EACN,MAAM,EACN,KAAK,EACL,QAAQ,GACT,GAAG,OAAO,CAAA;IAEX,MAAM,UAAU,GAAG,MAAM,IAAA,oDAA2B,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAEvE,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,eAAe,GAA8C;YACjE,IAAI,EAAE,GAAmB;YACzB,kBAAkB;YAClB,MAAM;YACN,MAAM;YACN,KAAK;SACN,CAAA;QAED,IAAA,mCAAmB,EAAC,eAAe,CAAC,CAAA;IACtC,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { FlagSettings } from "@medusajs/types";
2
+ /**
3
+ * Discover feature flag definitions from a directory and subdirectories
4
+ */
5
+ export declare function discoverFeatureFlagsFromDir(sourcePath?: string, maxDepth?: number): Promise<FlagSettings[]>;
6
+ //# sourceMappingURL=discover-feature-flags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-feature-flags.d.ts","sourceRoot":"","sources":["../../src/feature-flags/discover-feature-flags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAa9C;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,UAAU,CAAC,EAAE,MAAM,EACnB,QAAQ,GAAE,MAAU,GACnB,OAAO,CAAC,YAAY,EAAE,CAAC,CAkDzB"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.discoverFeatureFlagsFromDir = discoverFeatureFlagsFromDir;
4
+ const promises_1 = require("fs/promises");
5
+ const path_1 = require("path");
6
+ const common_1 = require("../common");
7
+ const excludedFiles = ["index.js", "index.ts"];
8
+ const excludedExtensions = [".d.ts", ".d.ts.map", ".js.map"];
9
+ function isFeatureFlag(flag) {
10
+ const f = flag;
11
+ return !!f && (0, common_1.isString)(f.key) && (0, common_1.isString)(f.env_key);
12
+ }
13
+ /**
14
+ * Discover feature flag definitions from a directory and subdirectories
15
+ */
16
+ async function discoverFeatureFlagsFromDir(sourcePath, maxDepth = 2) {
17
+ if (!sourcePath) {
18
+ return [];
19
+ }
20
+ const root = (0, path_1.normalize)(sourcePath);
21
+ const discovered = [];
22
+ const allEntries = await (0, common_1.readDirRecursive)(root, {
23
+ ignoreMissing: true,
24
+ maxDepth,
25
+ });
26
+ const featureFlagDirs = allEntries
27
+ .filter((e) => e.isDirectory() && e.name === "feature-flags")
28
+ .map((e) => (0, path_1.join)(e.path, e.name));
29
+ if (!featureFlagDirs.length) {
30
+ return discovered;
31
+ }
32
+ await Promise.all(featureFlagDirs.map(async (scanDir) => {
33
+ const entries = await (0, promises_1.readdir)(scanDir, { withFileTypes: true });
34
+ await Promise.all(entries.map(async (entry) => {
35
+ if (entry.isDirectory()) {
36
+ return;
37
+ }
38
+ if (excludedExtensions.some((ext) => entry.name.endsWith(ext)) ||
39
+ excludedFiles.includes(entry.name)) {
40
+ return;
41
+ }
42
+ const fileExports = await (0, common_1.dynamicImport)((0, path_1.join)(scanDir, entry.name));
43
+ const values = Object.values(fileExports);
44
+ for (const value of values) {
45
+ if (isFeatureFlag(value)) {
46
+ discovered.push(value);
47
+ }
48
+ }
49
+ }));
50
+ }));
51
+ return discovered;
52
+ }
53
+ //# sourceMappingURL=discover-feature-flags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-feature-flags.js","sourceRoot":"","sources":["../../src/feature-flags/discover-feature-flags.ts"],"names":[],"mappings":";;AAgBA,kEAqDC;AApED,0CAAqC;AACrC,+BAAsC;AACtC,sCAAqE;AAErE,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;AAC9C,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAA;AAE5D,SAAS,aAAa,CAAC,IAAa;IAClC,MAAM,CAAC,GAAG,IAAW,CAAA;IACrB,OAAO,CAAC,CAAC,CAAC,IAAI,IAAA,iBAAQ,EAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAQ,EAAC,CAAC,CAAC,OAAO,CAAC,CAAA;AACtD,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,2BAA2B,CAC/C,UAAmB,EACnB,WAAmB,CAAC;IAEpB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,IAAI,GAAG,IAAA,gBAAS,EAAC,UAAU,CAAC,CAAA;IAClC,MAAM,UAAU,GAAmB,EAAE,CAAA;IAErC,MAAM,UAAU,GAAG,MAAM,IAAA,yBAAgB,EAAC,IAAI,EAAE;QAC9C,aAAa,EAAE,IAAI;QACnB,QAAQ;KACT,CAAC,CAAA;IAEF,MAAM,eAAe,GAAG,UAAU;SAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC;SAC5D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,WAAI,EAAE,CAAS,CAAC,IAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAEtD,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QAC5B,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CACf,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,MAAM,IAAA,kBAAO,EAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QAC/D,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC1B,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,OAAM;YACR,CAAC;YAED,IACE,kBAAkB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC1D,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAClC,CAAC;gBACD,OAAM;YACR,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,IAAA,sBAAa,EAAC,IAAA,WAAI,EAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;YAClE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;YACzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzB,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACxB,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC,CAAC,CACH,CAAA;IAED,OAAO,UAAU,CAAA;AACnB,CAAC"}
@@ -29,4 +29,5 @@ export declare class FlagRouter implements FeatureFlagTypes.IFlagRouter {
29
29
  }): void;
30
30
  listFlags(): FeatureFlagTypes.FeatureFlagsResponse;
31
31
  }
32
+ export declare const FeatureFlag: FlagRouter;
32
33
  //# sourceMappingURL=flag-router.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flag-router.d.ts","sourceRoot":"","sources":["../../src/feature-flags/flag-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAGlD,qBAAa,UAAW,YAAW,gBAAgB,CAAC,WAAW;IAC7D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwD;gBAElE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAIpE;;;;;;;;;;OAUG;IACI,gBAAgB,CACrB,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/C,OAAO;IAkBV;;;;;;;;;OASG;IACI,OAAO,CACZ,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAC1C,IAAI;IAgBA,SAAS,IAAI,gBAAgB,CAAC,oBAAoB;CAM1D;AAED,eAAO,MAAM,WAAW,YAAqB,CAAA"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FlagRouter = void 0;
4
- const common_1 = require("../../common");
3
+ exports.FeatureFlag = exports.FlagRouter = void 0;
4
+ const common_1 = require("../common");
5
5
  class FlagRouter {
6
6
  constructor(flags) {
7
7
  this.flags = {};
@@ -64,4 +64,5 @@ class FlagRouter {
64
64
  }
65
65
  }
66
66
  exports.FlagRouter = FlagRouter;
67
+ exports.FeatureFlag = new FlagRouter({});
67
68
  //# sourceMappingURL=flag-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flag-router.js","sourceRoot":"","sources":["../../src/feature-flags/flag-router.ts"],"names":[],"mappings":";;;AACA,sCAA8C;AAE9C,MAAa,UAAU;IAGrB,YAAY,KAAwD;QAFnD,UAAK,GAAsD,EAAE,CAAA;QAG5E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED;;;;;;;;;;OAUG;IACI,gBAAgB,CACrB,IAAgD;QAEhD,IAAI,IAAA,iBAAQ,EAAC,IAAI,CAAC,EAAE,CAAC;YACnB,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;YACnD,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE,CAAC;gBAChD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAY,CAAA;YAC1C,CAAC;YACD,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;QAC1C,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAa,CAAA;QAC/D,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAC3B,IAAI,CAAC,IAAA,iBAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,MAAM,KAAK,CAAC,uDAAuD,CAAC,CAAA;YACtE,CAAC;YACD,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;;;;OASG;IACI,OAAO,CACZ,GAAW,EACX,KAA2C;QAE3C,IAAI,IAAA,iBAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAEhC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;gBACvB,OAAM;YACR,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,EAAE,GAAG,KAAK,EAAE,CAAA;YAC9D,OAAM;QACR,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IACzB,CAAC;IAEM,SAAS;QACd,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,GAAG;YACH,KAAK;SACN,CAAC,CAAC,CAAA;IACL,CAAC;CACF;AAzED,gCAyEC;AAEY,QAAA,WAAW,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAA"}
@@ -1,11 +1,5 @@
1
- export * from "./analytics";
2
- export * from "./many-to-many-inventory";
3
- export * from "./medusa-v2";
4
- export * from "./order-editing";
5
- export * from "./product-categories";
6
- export * from "./publishable-api-keys";
7
- export * from "./sales-channels";
8
- export * from "./tax-inclusive-pricing";
9
- export * from "./utils";
10
- export * from "./workflows";
1
+ export * from "./discover-feature-flags";
2
+ export * from "./discover-and-register-feature-flags";
3
+ export * from "./flag-router";
4
+ export * from "./register-flag";
11
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/feature-flags/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,0BAA0B,CAAA;AACxC,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,yBAAyB,CAAA;AACvC,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/feature-flags/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,uCAAuC,CAAA;AACrD,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA"}
@@ -14,14 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./analytics"), exports);
18
- __exportStar(require("./many-to-many-inventory"), exports);
19
- __exportStar(require("./medusa-v2"), exports);
20
- __exportStar(require("./order-editing"), exports);
21
- __exportStar(require("./product-categories"), exports);
22
- __exportStar(require("./publishable-api-keys"), exports);
23
- __exportStar(require("./sales-channels"), exports);
24
- __exportStar(require("./tax-inclusive-pricing"), exports);
25
- __exportStar(require("./utils"), exports);
26
- __exportStar(require("./workflows"), exports);
17
+ __exportStar(require("./discover-feature-flags"), exports);
18
+ __exportStar(require("./discover-and-register-feature-flags"), exports);
19
+ __exportStar(require("./flag-router"), exports);
20
+ __exportStar(require("./register-flag"), exports);
27
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/feature-flags/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,2DAAwC;AACxC,8CAA2B;AAC3B,kDAA+B;AAC/B,uDAAoC;AACpC,yDAAsC;AACtC,mDAAgC;AAChC,0DAAuC;AACvC,0CAAuB;AACvB,8CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/feature-flags/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAwC;AACxC,wEAAqD;AACrD,gDAA6B;AAC7B,kDAA+B"}
@@ -0,0 +1,18 @@
1
+ import { FlagSettings, Logger } from "@medusajs/types";
2
+ import { FlagRouter } from "./flag-router";
3
+ export type RegisterFeatureFlagOptions = {
4
+ flag: FlagSettings;
5
+ projectConfigFlags: Record<string, string | boolean | Record<string, boolean>>;
6
+ router: FlagRouter;
7
+ logger?: Logger;
8
+ track?: (key: string) => void;
9
+ };
10
+ /**
11
+ * Registers a feature flag on the provided router.
12
+ * Resolving precedence:
13
+ * - env overrides
14
+ * - project config overrides
15
+ * - default value
16
+ */
17
+ export declare function registerFeatureFlag(options: RegisterFeatureFlagOptions): void;
18
+ //# sourceMappingURL=register-flag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-flag.d.ts","sourceRoot":"","sources":["../../src/feature-flags/register-flag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAQtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,YAAY,CAAA;IAClB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC9E,MAAM,EAAE,UAAU,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9B,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,QAwCtE"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerFeatureFlag = registerFeatureFlag;
4
+ const common_1 = require("../common");
5
+ /**
6
+ * Registers a feature flag on the provided router.
7
+ * Resolving precedence:
8
+ * - env overrides
9
+ * - project config overrides
10
+ * - default value
11
+ */
12
+ function registerFeatureFlag(options) {
13
+ const { flag, projectConfigFlags, router, logger, track } = options;
14
+ let value = (0, common_1.isTruthy)(flag.default_val);
15
+ let from;
16
+ if ((0, common_1.isDefined)(process.env[flag.env_key])) {
17
+ from = "environment";
18
+ const envVal = process.env[flag.env_key];
19
+ value = (0, common_1.isTruthy)(envVal);
20
+ const parsedFromEnv = (0, common_1.isString)(envVal) ? envVal.split(",") : [];
21
+ if (parsedFromEnv.length > 1) {
22
+ value = (0, common_1.objectFromStringPath)(parsedFromEnv);
23
+ }
24
+ }
25
+ else if ((0, common_1.isDefined)(projectConfigFlags[flag.key])) {
26
+ from = "project config";
27
+ const pc = projectConfigFlags[flag.key];
28
+ value = (0, common_1.isTruthy)(pc);
29
+ if ((0, common_1.isObject)(projectConfigFlags[flag.key])) {
30
+ value = projectConfigFlags[flag.key];
31
+ }
32
+ }
33
+ if (logger && from) {
34
+ logger.info(`Using flag ${flag.env_key} from ${from} with value ${JSON.stringify(value)}`);
35
+ }
36
+ if (track && value === true) {
37
+ track(flag.key);
38
+ }
39
+ router.setFlag(flag.key, value);
40
+ }
41
+ //# sourceMappingURL=register-flag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-flag.js","sourceRoot":"","sources":["../../src/feature-flags/register-flag.ts"],"names":[],"mappings":";;AAyBA,kDAwCC;AAhED,sCAMkB;AAWlB;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAAC,OAAmC;IACrE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;IAEnE,IAAI,KAAK,GAAsC,IAAA,iBAAQ,EAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACzE,IAAI,IAAwB,CAAA;IAE5B,IAAI,IAAA,kBAAS,EAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACzC,IAAI,GAAG,aAAa,CAAA;QACpB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAExC,KAAK,GAAG,IAAA,iBAAQ,EAAC,MAAM,CAAC,CAAA;QAExB,MAAM,aAAa,GAAG,IAAA,iBAAQ,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC/D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,KAAK,GAAG,IAAA,6BAAoB,EAAC,aAAa,CAAC,CAAA;QAC7C,CAAC;IACH,CAAC;SAAM,IAAI,IAAA,kBAAS,EAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnD,IAAI,GAAG,gBAAgB,CAAA;QAEvB,MAAM,EAAE,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAqB,CAAA;QAC3D,KAAK,GAAG,IAAA,iBAAQ,EAAC,EAAE,CAAC,CAAA;QAEpB,IAAI,IAAA,iBAAQ,EAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC3C,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAA4B,CAAA;QACjE,CAAC;IACH,CAAC;IAED,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CACT,cAAc,IAAI,CAAC,OAAO,SAAS,IAAI,eAAe,IAAI,CAAC,SAAS,CAClE,KAAK,CACN,EAAE,CACJ,CAAA;IACH,CAAC;IAED,IAAI,KAAK,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;AACjC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { Readable } from "stream";
1
2
  import { FileTypes, IFileProvider } from "@medusajs/types";
2
3
  /**
3
4
  * ### constructor
@@ -113,24 +114,30 @@ export declare class AbstractFileProviderService implements IFileProvider {
113
114
  */
114
115
  upload(file: FileTypes.ProviderUploadFileDTO): Promise<FileTypes.ProviderFileResultDTO>;
115
116
  /**
116
- * This method deletes the file from storage. It's used when an admin user deletes a product image,
117
- * or other custom file deletions.
117
+ * This method deletes one or more files from the storage. It's used when an admin user
118
+ * deletes a product image, or other custom file deletions.
118
119
  *
119
- * @param {FileTypes.ProviderDeleteFileDTO} file - The details of the file to delete.
120
- * @returns {Promise<void>} Resolves when the file is deleted.
120
+ * @param {FileTypes.ProviderDeleteFileDTO | FileTypes.ProviderDeleteFileDTO[]} files - The details of the files to delete.
121
+ * @returns {Promise<void>} Resolves when the files are deleted.
121
122
  *
122
123
  * @example
123
124
  * class MyFileProviderService extends AbstractFileProviderService {
124
125
  * // ...
125
- * async delete(file: ProviderDeleteFileDTO): Promise<void> {
126
+ * async delete(
127
+ * files: FileTypes.ProviderDeleteFileDTO | FileTypes.ProviderDeleteFileDTO[]
128
+ * ): Promise<void> {
126
129
  * // TODO logic to remove the file from storage
127
- * // Use the `file.fileKey` to delete the file
130
+ * // Use the `file.fileKey` to delete the file, which is the identifier of the file
131
+ * // in the provider's storage.
128
132
  * // for example:
129
- * this.client.delete(file.fileKey)
133
+ * const fileArray = Array.isArray(files) ? files : [files]
134
+ * for (const file of fileArray) {
135
+ * this.client.delete(file.fileKey)
136
+ * }
130
137
  * }
131
138
  * }
132
139
  */
133
- delete(file: FileTypes.ProviderDeleteFileDTO): Promise<void>;
140
+ delete(files: FileTypes.ProviderDeleteFileDTO | FileTypes.ProviderDeleteFileDTO[]): Promise<void>;
134
141
  /**
135
142
  * This method is used to retrieve a download URL of the file. For some providers,
136
143
  * such as S3, a presigned URL indicates a temporary URL to get access to a file.
@@ -149,12 +156,57 @@ export declare class AbstractFileProviderService implements IFileProvider {
149
156
  * fileData: ProviderGetFileDTO
150
157
  * ): Promise<string> {
151
158
  * // TODO logic to get the presigned URL
152
- * // Use the `file.fileKey` to delete the file
159
+ * // Use the `file.fileKey` to delete the file, which is the identifier of the file
160
+ * // in the provider's storage.
153
161
  * // for example:
154
162
  * return this.client.getPresignedUrl(fileData.fileKey)
155
163
  * }
156
164
  * }
157
165
  */
158
166
  getPresignedDownloadUrl(fileData: FileTypes.ProviderGetFileDTO): Promise<string>;
167
+ /**
168
+ * This method retrieves an uploaded file as a stream. This is useful when streaming
169
+ * a file to clients or you want to process the file in chunks.
170
+ *
171
+ * @param {FileTypes.ProviderGetFileDTO} fileData - The details of the file to get its stream.
172
+ * @returns {Promise<Readable>} The file's stream.
173
+ *
174
+ * @since 2.8.0
175
+ *
176
+ * @example
177
+ * class MyFileProviderService extends AbstractFileProviderService {
178
+ * // ...
179
+ * async getAsStream(file: ProviderDeleteFileDTO): Promise<Readable> {
180
+ * // TODO logic to get the file as a stream
181
+ * // Use the `file.fileKey` to get the file, which is the identifier of the file
182
+ * // in the provider's storage.
183
+ * // for example:
184
+ * this.client.getAsStream(file.fileKey)
185
+ * }
186
+ * }
187
+ */
188
+ getDownloadStream(fileData: FileTypes.ProviderGetFileDTO): Promise<Readable>;
189
+ /**
190
+ * This method retrieves an uploaded file as a buffer. This is useful when you want to
191
+ * process the entire file in memory or send it as a response.
192
+ *
193
+ * @param {FileTypes.ProviderGetFileDTO} fileData - The details of the file to get its buffer.
194
+ * @returns {Promise<Buffer>} The file's buffer.
195
+ *
196
+ * @since 2.8.0
197
+ *
198
+ * @example
199
+ * class MyFileProviderService extends AbstractFileProviderService {
200
+ * // ...
201
+ * async getAsBuffer(file: ProviderDeleteFileDTO): Promise<Buffer> {
202
+ * // TODO logic to get the file as a buffer
203
+ * // Use the `file.fileKey` to get the file, which is the identifier of the file
204
+ * // in the provider's storage.
205
+ * // for example:
206
+ * this.client.getAsBuffer(file.fileKey)
207
+ * }
208
+ * }
209
+ */
210
+ getAsBuffer(fileData: FileTypes.ProviderGetFileDTO): Promise<Buffer>;
159
211
  }
160
212
  //# sourceMappingURL=abstract-file-provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-file-provider.d.ts","sourceRoot":"","sources":["../../src/file/abstract-file-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,qBAAa,2BAA4B,YAAW,aAAa;IAC/D;;;;;;;;;;OAUG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,CAAA;IAEzB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,KAAK;IAE/D;;OAEG;IACH,aAAa;IAIb;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,MAAM,CACV,IAAI,EAAE,SAAS,CAAC,qBAAqB,GACpC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;IAI3C;;;;;;;;;;;;;;;;;OAiBG;IACG,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlE;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,uBAAuB,CAC3B,QAAQ,EAAE,SAAS,CAAC,kBAAkB,GACrC,OAAO,CAAC,MAAM,CAAC;CAGnB"}
1
+ {"version":3,"file":"abstract-file-provider.d.ts","sourceRoot":"","sources":["../../src/file/abstract-file-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,qBAAa,2BAA4B,YAAW,aAAa;IAC/D;;;;;;;;;;OAUG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,CAAA;IAEzB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,KAAK;IAE/D;;OAEG;IACH,aAAa;IAIb;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,MAAM,CACV,IAAI,EAAE,SAAS,CAAC,qBAAqB,GACpC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;IAI3C;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,MAAM,CACV,KAAK,EAAE,SAAS,CAAC,qBAAqB,GAAG,SAAS,CAAC,qBAAqB,EAAE,GACzE,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,uBAAuB,CAC3B,QAAQ,EAAE,SAAS,CAAC,kBAAkB,GACrC,OAAO,CAAC,MAAM,CAAC;IAIlB;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI5E;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;CAGrE"}
@@ -107,24 +107,30 @@ class AbstractFileProviderService {
107
107
  throw Error("upload must be overridden by the child class");
108
108
  }
109
109
  /**
110
- * This method deletes the file from storage. It's used when an admin user deletes a product image,
111
- * or other custom file deletions.
110
+ * This method deletes one or more files from the storage. It's used when an admin user
111
+ * deletes a product image, or other custom file deletions.
112
112
  *
113
- * @param {FileTypes.ProviderDeleteFileDTO} file - The details of the file to delete.
114
- * @returns {Promise<void>} Resolves when the file is deleted.
113
+ * @param {FileTypes.ProviderDeleteFileDTO | FileTypes.ProviderDeleteFileDTO[]} files - The details of the files to delete.
114
+ * @returns {Promise<void>} Resolves when the files are deleted.
115
115
  *
116
116
  * @example
117
117
  * class MyFileProviderService extends AbstractFileProviderService {
118
118
  * // ...
119
- * async delete(file: ProviderDeleteFileDTO): Promise<void> {
119
+ * async delete(
120
+ * files: FileTypes.ProviderDeleteFileDTO | FileTypes.ProviderDeleteFileDTO[]
121
+ * ): Promise<void> {
120
122
  * // TODO logic to remove the file from storage
121
- * // Use the `file.fileKey` to delete the file
123
+ * // Use the `file.fileKey` to delete the file, which is the identifier of the file
124
+ * // in the provider's storage.
122
125
  * // for example:
123
- * this.client.delete(file.fileKey)
126
+ * const fileArray = Array.isArray(files) ? files : [files]
127
+ * for (const file of fileArray) {
128
+ * this.client.delete(file.fileKey)
129
+ * }
124
130
  * }
125
131
  * }
126
132
  */
127
- async delete(file) {
133
+ async delete(files) {
128
134
  throw Error("delete must be overridden by the child class");
129
135
  }
130
136
  /**
@@ -145,7 +151,8 @@ class AbstractFileProviderService {
145
151
  * fileData: ProviderGetFileDTO
146
152
  * ): Promise<string> {
147
153
  * // TODO logic to get the presigned URL
148
- * // Use the `file.fileKey` to delete the file
154
+ * // Use the `file.fileKey` to delete the file, which is the identifier of the file
155
+ * // in the provider's storage.
149
156
  * // for example:
150
157
  * return this.client.getPresignedUrl(fileData.fileKey)
151
158
  * }
@@ -154,6 +161,54 @@ class AbstractFileProviderService {
154
161
  async getPresignedDownloadUrl(fileData) {
155
162
  throw Error("getPresignedDownloadUrl must be overridden by the child class");
156
163
  }
164
+ /**
165
+ * This method retrieves an uploaded file as a stream. This is useful when streaming
166
+ * a file to clients or you want to process the file in chunks.
167
+ *
168
+ * @param {FileTypes.ProviderGetFileDTO} fileData - The details of the file to get its stream.
169
+ * @returns {Promise<Readable>} The file's stream.
170
+ *
171
+ * @since 2.8.0
172
+ *
173
+ * @example
174
+ * class MyFileProviderService extends AbstractFileProviderService {
175
+ * // ...
176
+ * async getAsStream(file: ProviderDeleteFileDTO): Promise<Readable> {
177
+ * // TODO logic to get the file as a stream
178
+ * // Use the `file.fileKey` to get the file, which is the identifier of the file
179
+ * // in the provider's storage.
180
+ * // for example:
181
+ * this.client.getAsStream(file.fileKey)
182
+ * }
183
+ * }
184
+ */
185
+ getDownloadStream(fileData) {
186
+ throw Error("getDownloadStream must be overridden by the child class");
187
+ }
188
+ /**
189
+ * This method retrieves an uploaded file as a buffer. This is useful when you want to
190
+ * process the entire file in memory or send it as a response.
191
+ *
192
+ * @param {FileTypes.ProviderGetFileDTO} fileData - The details of the file to get its buffer.
193
+ * @returns {Promise<Buffer>} The file's buffer.
194
+ *
195
+ * @since 2.8.0
196
+ *
197
+ * @example
198
+ * class MyFileProviderService extends AbstractFileProviderService {
199
+ * // ...
200
+ * async getAsBuffer(file: ProviderDeleteFileDTO): Promise<Buffer> {
201
+ * // TODO logic to get the file as a buffer
202
+ * // Use the `file.fileKey` to get the file, which is the identifier of the file
203
+ * // in the provider's storage.
204
+ * // for example:
205
+ * this.client.getAsBuffer(file.fileKey)
206
+ * }
207
+ * }
208
+ */
209
+ getAsBuffer(fileData) {
210
+ throw Error("getAsBuffer must be overridden by the child class");
211
+ }
157
212
  }
158
213
  exports.AbstractFileProviderService = AbstractFileProviderService;
159
214
  //# sourceMappingURL=abstract-file-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-file-provider.js","sourceRoot":"","sources":["../../src/file/abstract-file-provider.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAa,2BAA2B;IActC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,eAAe,CAAC,OAAyB,IAAiB,CAAC;IAElE;;OAEG;IACH,aAAa;QACX,OAAQ,IAAI,CAAC,WAAmB,CAAC,UAAU,CAAA;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,MAAM,CACV,IAAqC;QAErC,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAC7D,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,MAAM,CAAC,IAAqC;QAChD,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAC7D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,uBAAuB,CAC3B,QAAsC;QAEtC,MAAM,KAAK,CAAC,+DAA+D,CAAC,CAAA;IAC9E,CAAC;CACF;AAhID,kEAgIC"}
1
+ {"version":3,"file":"abstract-file-provider.js","sourceRoot":"","sources":["../../src/file/abstract-file-provider.ts"],"names":[],"mappings":";;;AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAa,2BAA2B;IActC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,eAAe,CAAC,OAAyB,IAAiB,CAAC;IAElE;;OAEG;IACH,aAAa;QACX,OAAQ,IAAI,CAAC,WAAmB,CAAC,UAAU,CAAA;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,MAAM,CACV,IAAqC;QAErC,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAC7D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,MAAM,CACV,KAA0E;QAE1E,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAC7D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,KAAK,CAAC,uBAAuB,CAC3B,QAAsC;QAEtC,MAAM,KAAK,CAAC,+DAA+D,CAAC,CAAA;IAC9E,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,iBAAiB,CAAC,QAAsC;QACtD,MAAM,KAAK,CAAC,yDAAyD,CAAC,CAAA;IACxE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,WAAW,CAAC,QAAsC;QAChD,MAAM,KAAK,CAAC,mDAAmD,CAAC,CAAA;IAClE,CAAC;CACF;AA3LD,kEA2LC"}
@@ -1,5 +1,11 @@
1
1
  export declare const FulfillmentEvents: {
2
+ /**
3
+ * @deprecated use `FulfillmentWorkflowEvents.SHIPMENT_CREATED` instead
4
+ */
2
5
  SHIPMENT_CREATED: string;
6
+ /**
7
+ * @deprecated use `FulfillmentWorkflowEvents.DELIVERY_CREATED` instead
8
+ */
3
9
  DELIVERY_CREATED: string;
4
10
  FULFILLMENT_CREATED: "fulfillment.created";
5
11
  FULFILLMENT_SET_CREATED: "fulfillment-set.created";
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/fulfillment/events.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI7B,CAAA"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/fulfillment/events.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,iBAAiB;IAE5B;;OAEG;;IAEH;;OAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEJ,CAAA"}
@@ -18,7 +18,13 @@ const eventBaseNames = [
18
18
  ];
19
19
  exports.FulfillmentEvents = {
20
20
  ...(0, event_bus_1.buildEventNamesFromEntityName)(eventBaseNames, modules_sdk_1.Modules.FULFILLMENT),
21
+ /**
22
+ * @deprecated use `FulfillmentWorkflowEvents.SHIPMENT_CREATED` instead
23
+ */
21
24
  SHIPMENT_CREATED: "shipment.created",
25
+ /**
26
+ * @deprecated use `FulfillmentWorkflowEvents.DELIVERY_CREATED` instead
27
+ */
22
28
  DELIVERY_CREATED: "delivery.created",
23
29
  };
24
30
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/fulfillment/events.ts"],"names":[],"mappings":";;;AAAA,4CAA4D;AAC5D,gDAAwC;AAExC,MAAM,cAAc,GAYhB;IACF,gBAAgB;IAChB,aAAa;IACb,SAAS;IACT,gBAAgB;IAChB,oBAAoB;IACpB,iBAAiB;IACjB,oBAAoB;IACpB,aAAa;IACb,oBAAoB;IACpB,iBAAiB;IACjB,kBAAkB;CACnB,CAAA;AAEY,QAAA,iBAAiB,GAAG;IAC/B,GAAG,IAAA,yCAA6B,EAAC,cAAc,EAAE,qBAAO,CAAC,WAAW,CAAC;IACrE,gBAAgB,EAAE,kBAAkB;IACpC,gBAAgB,EAAE,kBAAkB;CACrC,CAAA"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/fulfillment/events.ts"],"names":[],"mappings":";;;AAAA,4CAA4D;AAC5D,gDAAwC;AAExC,MAAM,cAAc,GAYhB;IACF,gBAAgB;IAChB,aAAa;IACb,SAAS;IACT,gBAAgB;IAChB,oBAAoB;IACpB,iBAAiB;IACjB,oBAAoB;IACpB,aAAa;IACb,oBAAoB;IACpB,iBAAiB;IACjB,kBAAkB;CACnB,CAAA;AAEY,QAAA,iBAAiB,GAAG;IAC/B,GAAG,IAAA,yCAA6B,EAAC,cAAc,EAAE,qBAAO,CAAC,WAAW,CAAC;IACrE;;OAEG;IACH,gBAAgB,EAAE,kBAAkB;IACpC;;OAEG;IACH,gBAAgB,EAAE,kBAAkB;CACrC,CAAA"}
@@ -238,10 +238,10 @@ export declare class AbstractFulfillmentProviderService implements IFulfillmentP
238
238
  * class MyFulfillmentProviderService extends AbstractFulfillmentProviderService {
239
239
  * // ...
240
240
  * async createFulfillment(
241
- * data: any,
242
- * items: any,
243
- * order: any,
244
- * fulfillment: any
241
+ * data: Record<string, unknown>,
242
+ * items: Partial<Omit<FulfillmentItemDTO, "fulfillment">>[],
243
+ * order: Partial<FulfillmentOrderDTO> | undefined,
244
+ * fulfillment: Partial<Omit<FulfillmentDTO, "provider_id" | "data" | "items">>
245
245
  * ): Promise<CreateFulfillmentResult> {
246
246
  * // assuming the client creates a fulfillment
247
247
  * // in the third-party service