@reactionary/source 0.6.2 → 0.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (427) hide show
  1. package/README.md +19 -0
  2. package/examples/node/package.json +7 -7
  3. package/examples/node/src/basic/basic-node-provider-model-extension.spec.ts +1 -1
  4. package/examples/node/src/basic/basic-node-provider-query-extension.spec.ts +1 -1
  5. package/examples/node/src/basic/basic-node-setup.spec.ts +1 -1
  6. package/examples/node/src/basic/client-creation.spec.ts +3 -3
  7. package/examples/node/src/utils.ts +7 -7
  8. package/package.json +1 -1
  9. package/packages/algolia/README.md +11 -0
  10. package/{providers/google-analytics → packages/algolia}/eslint.config.mjs +0 -2
  11. package/{providers → packages}/algolia/package.json +7 -5
  12. package/{providers/posthog → packages/algolia}/project.json +6 -6
  13. package/{providers/algolia/src/providers/analytics.provider.ts → packages/algolia/src/capabilities/analytics.capability.ts} +2 -2
  14. package/packages/algolia/src/capabilities/index.ts +3 -0
  15. package/{providers/algolia/src/providers/product-recommendations.provider.ts → packages/algolia/src/capabilities/product-recommendations.capability.ts} +3 -3
  16. package/{providers/algolia/src/providers/product-search.provider.ts → packages/algolia/src/capabilities/product-search.capability.ts} +3 -3
  17. package/{providers → packages}/algolia/src/core/initialize.ts +12 -12
  18. package/packages/algolia/src/core/initialize.types.ts +107 -0
  19. package/{providers → packages}/algolia/src/index.ts +1 -1
  20. package/{providers → packages}/algolia/src/schema/capabilities.schema.ts +23 -23
  21. package/{providers → packages}/algolia/src/test/analytics.spec.ts +4 -4
  22. package/packages/algolia/vite.config.ts +26 -0
  23. package/packages/algolia/vitest.config.mts +21 -0
  24. package/packages/commercetools/README.md +11 -0
  25. package/{core → packages/commercetools}/eslint.config.mjs +2 -2
  26. package/packages/commercetools/package.json +17 -0
  27. package/{providers → packages}/commercetools/project.json +7 -8
  28. package/{providers/commercetools/src/providers/cart.provider.ts → packages/commercetools/src/capabilities/cart.capability.ts} +3 -3
  29. package/{providers/commercetools/src/providers/category.provider.ts → packages/commercetools/src/capabilities/category.capability.ts} +4 -4
  30. package/{providers/commercetools/src/providers/checkout.provider.ts → packages/commercetools/src/capabilities/checkout.capability.ts} +3 -3
  31. package/{providers/commercetools/src/providers/identity.provider.ts → packages/commercetools/src/capabilities/identity.capability.ts} +3 -3
  32. package/packages/commercetools/src/capabilities/index.ts +15 -0
  33. package/{providers/commercetools/src/providers/inventory.provider.ts → packages/commercetools/src/capabilities/inventory.capability.ts} +3 -3
  34. package/{providers/commercetools/src/providers/order-search.provider.ts → packages/commercetools/src/capabilities/order-search.capability.ts} +4 -4
  35. package/{providers/commercetools/src/providers/order.provider.ts → packages/commercetools/src/capabilities/order.capability.ts} +3 -3
  36. package/{providers/commercetools/src/providers/price.provider.ts → packages/commercetools/src/capabilities/price.capability.ts} +3 -3
  37. package/{providers/commercetools/src/providers/product-associations.provider.ts → packages/commercetools/src/capabilities/product-associations.capability.ts} +3 -3
  38. package/{providers/commercetools/src/providers/product-list.provider.ts → packages/commercetools/src/capabilities/product-list.capability.ts} +3 -3
  39. package/{providers/commercetools/src/providers/product-reviews.provider.ts → packages/commercetools/src/capabilities/product-reviews.capability.ts} +3 -3
  40. package/{providers/commercetools/src/providers/product-search.provider.ts → packages/commercetools/src/capabilities/product-search.capability.ts} +3 -3
  41. package/{providers/commercetools/src/providers/product.provider.ts → packages/commercetools/src/capabilities/product.capability.ts} +4 -4
  42. package/{providers/commercetools/src/providers/profile.provider.ts → packages/commercetools/src/capabilities/profile.capability.ts} +3 -3
  43. package/{providers/commercetools/src/providers/store.provider.ts → packages/commercetools/src/capabilities/store.capability.ts} +3 -3
  44. package/{providers → packages}/commercetools/src/core/capability-descriptors.ts +48 -48
  45. package/{providers → packages}/commercetools/src/core/client.ts +2 -2
  46. package/{providers → packages}/commercetools/src/core/initialize.ts +5 -5
  47. package/{providers → packages}/commercetools/src/core/initialize.types.ts +47 -47
  48. package/{providers → packages}/commercetools/src/factories/checkout/checkout-initializer-overrides.example.ts +4 -4
  49. package/{providers/commercetools/src/factories/product/product-provider-custom-method-only.example.ts → packages/commercetools/src/factories/product/product-capability-custom-method-only.example.ts} +6 -6
  50. package/{providers/commercetools/src/factories/product/product-provider-schema-signature-extension.example.ts → packages/commercetools/src/factories/product/product-capability-schema-signature-extension.example.ts} +4 -4
  51. package/{providers → packages}/commercetools/src/index.ts +9 -9
  52. package/{providers → packages}/commercetools/src/schema/capabilities.schema.ts +61 -61
  53. package/{providers → packages}/commercetools/src/test/caching.spec.ts +8 -8
  54. package/{providers/algolia → packages/commercetools}/tsconfig.json +1 -1
  55. package/{core → packages/commercetools}/tsconfig.lib.json +1 -1
  56. package/packages/commercetools/tsconfig.spec.json +28 -0
  57. package/packages/commercetools/vite.config.ts +26 -0
  58. package/packages/commercetools/vitest.config.mts +21 -0
  59. package/{providers/fake → packages/core}/eslint.config.mjs +2 -1
  60. package/{core → packages/core}/package.json +7 -7
  61. package/packages/core/project.json +33 -0
  62. package/{core/src/providers/analytics.provider.ts → packages/core/src/capabilities/analytics.capability.ts} +8 -8
  63. package/{core/src/providers/base.provider.ts → packages/core/src/capabilities/base.capability.ts} +2 -2
  64. package/{core/src/providers/cart.provider.ts → packages/core/src/capabilities/cart.capability.ts} +3 -3
  65. package/{core/src/providers/category.provider.ts → packages/core/src/capabilities/category.capability.ts} +5 -5
  66. package/{core/src/providers/checkout.provider.ts → packages/core/src/capabilities/checkout.capability.ts} +3 -3
  67. package/{core/src/providers/identity.provider.ts → packages/core/src/capabilities/identity.capability.ts} +2 -2
  68. package/packages/core/src/capabilities/index.ts +18 -0
  69. package/{core/src/providers/inventory.provider.ts → packages/core/src/capabilities/inventory.capability.ts} +2 -2
  70. package/{core/src/providers/order-search.provider.ts → packages/core/src/capabilities/order-search.capability.ts} +3 -3
  71. package/{core/src/providers/order.provider.ts → packages/core/src/capabilities/order.capability.ts} +2 -2
  72. package/{core/src/providers/price.provider.ts → packages/core/src/capabilities/price.capability.ts} +2 -2
  73. package/{core/src/providers/product-associations.provider.ts → packages/core/src/capabilities/product-associations.capability.ts} +3 -3
  74. package/{core/src/providers/product-list.provider.ts → packages/core/src/capabilities/product-list.capability.ts} +3 -3
  75. package/{core/src/providers/product-recommendations.provider.ts → packages/core/src/capabilities/product-recommendations.capability.ts} +21 -21
  76. package/{core/src/providers/product-reviews.provider.ts → packages/core/src/capabilities/product-reviews.capability.ts} +3 -3
  77. package/{core/src/providers/product-search.provider.ts → packages/core/src/capabilities/product-search.capability.ts} +3 -3
  78. package/{core/src/providers/product.provider.ts → packages/core/src/capabilities/product.capability.ts} +2 -2
  79. package/{core/src/providers/profile.provider.ts → packages/core/src/capabilities/profile.capability.ts} +2 -2
  80. package/{core/src/providers/store.provider.ts → packages/core/src/capabilities/store.capability.ts} +2 -2
  81. package/{core → packages/core}/src/client/client-builder.ts +13 -14
  82. package/packages/core/src/client/client.ts +35 -0
  83. package/{core → packages/core}/src/decorators/reactionary.decorator.ts +7 -7
  84. package/{core → packages/core}/src/index.ts +1 -1
  85. package/{core → packages/core}/src/test/client-builder.spec.ts +20 -20
  86. package/{core → packages/core}/src/test/reactionary.decorator.spec.ts +27 -27
  87. package/{providers/meilisearch → packages/core}/tsconfig.json +1 -1
  88. package/{providers/medusa → packages/core}/tsconfig.lib.json +1 -2
  89. package/packages/core/tsconfig.spec.json +28 -0
  90. package/packages/core/vite.config.ts +26 -0
  91. package/packages/core/vitest.config.mts +21 -0
  92. package/packages/fake/README.md +11 -0
  93. package/{providers/algolia → packages/fake}/eslint.config.mjs +2 -1
  94. package/{providers → packages}/fake/package.json +6 -4
  95. package/{providers → packages}/fake/project.json +7 -8
  96. package/{providers/fake/src/providers/analytics.provider.ts → packages/fake/src/capabilities/analytics.capability.ts} +2 -2
  97. package/{providers/fake/src/providers/cart.provider.ts → packages/fake/src/capabilities/cart.capability.ts} +3 -3
  98. package/{providers/fake/src/providers/category.provider.ts → packages/fake/src/capabilities/category.capability.ts} +3 -3
  99. package/{providers/fake/src/providers/checkout.provider.ts → packages/fake/src/capabilities/checkout.capability.ts} +3 -3
  100. package/{providers/fake/src/providers/identity.provider.ts → packages/fake/src/capabilities/identity.capability.ts} +3 -3
  101. package/packages/fake/src/capabilities/index.ts +15 -0
  102. package/{providers/fake/src/providers/inventory.provider.ts → packages/fake/src/capabilities/inventory.capability.ts} +3 -3
  103. package/{providers/fake/src/providers/order-search.provider.ts → packages/fake/src/capabilities/order-search.capability.ts} +3 -3
  104. package/{providers/fake/src/providers/order.provider.ts → packages/fake/src/capabilities/order.capability.ts} +3 -3
  105. package/{providers/fake/src/providers/price.provider.ts → packages/fake/src/capabilities/price.capability.ts} +3 -3
  106. package/{providers/fake/src/providers/product-associations.provider.ts → packages/fake/src/capabilities/product-associations.capability.ts} +3 -3
  107. package/{providers/fake/src/providers/product-reviews.provider.ts → packages/fake/src/capabilities/product-reviews.capability.ts} +3 -3
  108. package/{providers/fake/src/providers/product-search.provider.ts → packages/fake/src/capabilities/product-search.capability.ts} +3 -3
  109. package/{providers/fake/src/providers/product.provider.ts → packages/fake/src/capabilities/product.capability.ts} +3 -3
  110. package/{providers/fake/src/providers/profile.provider.ts → packages/fake/src/capabilities/profile.capability.ts} +3 -3
  111. package/{providers/fake/src/providers/store.provider.ts → packages/fake/src/capabilities/store.capability.ts} +3 -3
  112. package/{providers → packages}/fake/src/core/initialize.ts +73 -73
  113. package/{providers → packages}/fake/src/core/initialize.types.ts +45 -45
  114. package/{providers → packages}/fake/src/index.ts +1 -1
  115. package/{providers → packages}/fake/src/schema/capabilities.schema.ts +32 -32
  116. package/{providers/fake/src/test/cart.provider.spec.ts → packages/fake/src/test/cart.capability.spec.ts} +6 -6
  117. package/{providers/fake/src/test/category.provider.spec.ts → packages/fake/src/test/category.capability.spec.ts} +3 -3
  118. package/{providers/fake/src/test/checkout.provider.spec.ts → packages/fake/src/test/checkout.capability.spec.ts} +3 -3
  119. package/{providers/fake/src/test/order-search.provider.spec.ts → packages/fake/src/test/order-search.capability.spec.ts} +3 -3
  120. package/{providers/fake/src/test/order.provider.spec.ts → packages/fake/src/test/order.capability.spec.ts} +3 -3
  121. package/{providers/fake/src/test/price.provider.spec.ts → packages/fake/src/test/price.capability.spec.ts} +3 -3
  122. package/{providers/fake/src/test/product.provider.spec.ts → packages/fake/src/test/product.capability.spec.ts} +3 -3
  123. package/{providers/fake/src/test/profile.provider.spec.ts → packages/fake/src/test/profile.capability.spec.ts} +3 -3
  124. package/{providers/commercetools → packages/fake}/tsconfig.json +1 -1
  125. package/packages/fake/tsconfig.lib.json +23 -0
  126. package/packages/fake/tsconfig.spec.json +28 -0
  127. package/packages/fake/vite.config.ts +26 -0
  128. package/packages/fake/vitest.config.mts +21 -0
  129. package/packages/google-analytics/eslint.config.mjs +23 -0
  130. package/{providers → packages}/google-analytics/package.json +7 -5
  131. package/{providers → packages}/google-analytics/project.json +5 -5
  132. package/{providers/google-analytics/src/providers/analytics.provider.ts → packages/google-analytics/src/capabilities/analytics.capability.ts} +2 -2
  133. package/{providers → packages}/google-analytics/src/core/initialize.ts +4 -4
  134. package/packages/google-analytics/src/core/initialize.types.ts +47 -0
  135. package/{providers → packages}/google-analytics/src/index.ts +1 -1
  136. package/{providers → packages}/google-analytics/src/schema/capabilities.schema.ts +7 -7
  137. package/{providers/google-analytics/src/test/analytics.provider.spec.ts → packages/google-analytics/src/test/analytics.capability.spec.ts} +7 -7
  138. package/packages/google-analytics/tsconfig.json +24 -0
  139. package/packages/google-analytics/tsconfig.lib.json +23 -0
  140. package/packages/google-analytics/tsconfig.spec.json +28 -0
  141. package/{providers → packages}/google-analytics/vite.config.ts +2 -2
  142. package/{providers → packages}/google-analytics/vitest.config.mts +2 -2
  143. package/packages/medusa/README.md +11 -0
  144. package/packages/medusa/eslint.config.mjs +23 -0
  145. package/packages/medusa/package.json +17 -0
  146. package/{providers → packages}/medusa/project.json +7 -8
  147. package/{providers/medusa/src/providers/cart.provider.ts → packages/medusa/src/capabilities/cart.capability.ts} +3 -3
  148. package/{providers/medusa/src/providers/category.provider.ts → packages/medusa/src/capabilities/category.capability.ts} +3 -3
  149. package/{providers/medusa/src/providers/checkout.provider.ts → packages/medusa/src/capabilities/checkout.capability.ts} +3 -3
  150. package/{providers/medusa/src/providers/identity.provider.ts → packages/medusa/src/capabilities/identity.capability.ts} +2 -2
  151. package/{providers/medusa/src/providers/inventory.provider.ts → packages/medusa/src/capabilities/inventory.capability.ts} +3 -3
  152. package/{providers/medusa/src/providers/order-search.provider.ts → packages/medusa/src/capabilities/order-search.capability.ts} +3 -3
  153. package/{providers/medusa/src/providers/order.provider.ts → packages/medusa/src/capabilities/order.capability.ts} +3 -3
  154. package/{providers/medusa/src/providers/price.provider.ts → packages/medusa/src/capabilities/price.capability.ts} +3 -3
  155. package/{providers/medusa/src/providers/product-associations.provider.ts → packages/medusa/src/capabilities/product-associations.capability.ts} +3 -3
  156. package/{providers/medusa/src/providers/product-recommendations.provider.ts → packages/medusa/src/capabilities/product-recommendations.capability.ts} +3 -3
  157. package/{providers/medusa/src/providers/product-search.provider.ts → packages/medusa/src/capabilities/product-search.capability.ts} +3 -3
  158. package/{providers/medusa/src/providers/product.provider.ts → packages/medusa/src/capabilities/product.capability.ts} +3 -3
  159. package/{providers/medusa/src/providers/profile.provider.ts → packages/medusa/src/capabilities/profile.capability.ts} +4 -4
  160. package/{providers → packages}/medusa/src/core/initialize.ts +64 -64
  161. package/{providers → packages}/medusa/src/core/initialize.types.ts +52 -52
  162. package/packages/medusa/src/index.ts +17 -0
  163. package/{providers → packages}/medusa/src/schema/capabilities.schema.ts +64 -64
  164. package/{providers/medusa/src/test/cart.provider.spec.ts → packages/medusa/src/test/cart.capability.spec.ts} +3 -3
  165. package/{providers/medusa/src/test/category.provider.spec.ts → packages/medusa/src/test/category.capability.spec.ts} +3 -3
  166. package/{providers/medusa/src/test/identity.provider.spec.ts → packages/medusa/src/test/identity.capability.spec.ts} +3 -3
  167. package/{providers/medusa/src/test/inventory.provider.spec.ts → packages/medusa/src/test/inventory.capability.spec.ts} +3 -3
  168. package/{providers/medusa/src/test/large-cart.provider.spec.ts → packages/medusa/src/test/large-cart.capability.spec.ts} +6 -6
  169. package/{providers/medusa/src/test/price.provider.spec.ts → packages/medusa/src/test/price.capability.spec.ts} +3 -3
  170. package/{providers/medusa/src/test/product.provider.spec.ts → packages/medusa/src/test/product.capability.spec.ts} +3 -3
  171. package/{providers/medusa/src/test/search.provider.spec.ts → packages/medusa/src/test/search.capability.spec.ts} +4 -4
  172. package/{providers → packages}/medusa/src/utils/medusa-helpers.ts +1 -1
  173. package/packages/medusa/tsconfig.json +24 -0
  174. package/packages/medusa/tsconfig.lib.json +23 -0
  175. package/packages/medusa/tsconfig.spec.json +28 -0
  176. package/packages/medusa/vite.config.ts +26 -0
  177. package/packages/medusa/vitest.config.mts +21 -0
  178. package/packages/meilisearch/README.md +11 -0
  179. package/packages/meilisearch/eslint.config.mjs +23 -0
  180. package/packages/meilisearch/package.json +15 -0
  181. package/{providers → packages}/meilisearch/project.json +7 -8
  182. package/packages/meilisearch/src/capabilities/index.ts +3 -0
  183. package/{providers/meilisearch/src/providers/order-search.provider.ts → packages/meilisearch/src/capabilities/order-search.capability.ts} +3 -3
  184. package/{providers/meilisearch/src/providers/product-recommendations.provider.ts → packages/meilisearch/src/capabilities/product-recommendations.capability.ts} +3 -3
  185. package/{providers/meilisearch/src/providers/product-search.provider.ts → packages/meilisearch/src/capabilities/product-search.capability.ts} +3 -3
  186. package/{providers → packages}/meilisearch/src/core/initialize.ts +13 -13
  187. package/{providers → packages}/meilisearch/src/core/initialize.types.ts +37 -37
  188. package/{providers → packages}/meilisearch/src/index.ts +3 -3
  189. package/{providers → packages}/meilisearch/src/schema/capabilities.schema.ts +24 -24
  190. package/packages/meilisearch/tsconfig.json +24 -0
  191. package/packages/meilisearch/tsconfig.lib.json +23 -0
  192. package/packages/meilisearch/tsconfig.spec.json +28 -0
  193. package/packages/meilisearch/vite.config.ts +26 -0
  194. package/packages/meilisearch/vitest.config.mts +21 -0
  195. package/tsconfig.base.json +13 -21
  196. package/core/project.json +0 -34
  197. package/core/src/client/client.ts +0 -35
  198. package/core/src/providers/index.ts +0 -18
  199. package/core/tsconfig.json +0 -24
  200. package/core/tsconfig.spec.json +0 -4
  201. package/core/vitest.config.ts +0 -14
  202. package/providers/algolia/README.md +0 -56
  203. package/providers/algolia/project.json +0 -34
  204. package/providers/algolia/src/core/initialize.types.ts +0 -107
  205. package/providers/algolia/src/providers/index.ts +0 -3
  206. package/providers/algolia/tsconfig.lib.json +0 -10
  207. package/providers/algolia/tsconfig.spec.json +0 -4
  208. package/providers/algolia/vitest.config.ts +0 -14
  209. package/providers/commercetools/README.md +0 -65
  210. package/providers/commercetools/eslint.config.mjs +0 -22
  211. package/providers/commercetools/package.json +0 -15
  212. package/providers/commercetools/src/providers/index.ts +0 -15
  213. package/providers/commercetools/tsconfig.lib.json +0 -10
  214. package/providers/commercetools/tsconfig.spec.json +0 -4
  215. package/providers/commercetools/vitest.config.ts +0 -15
  216. package/providers/fake/README.md +0 -23
  217. package/providers/fake/src/providers/index.ts +0 -15
  218. package/providers/fake/tsconfig.json +0 -25
  219. package/providers/fake/tsconfig.lib.json +0 -11
  220. package/providers/fake/tsconfig.spec.json +0 -4
  221. package/providers/fake/vitest.config.ts +0 -14
  222. package/providers/google-analytics/src/core/initialize.types.ts +0 -47
  223. package/providers/medusa/README.md +0 -30
  224. package/providers/medusa/TESTING.md +0 -98
  225. package/providers/medusa/eslint.config.mjs +0 -19
  226. package/providers/medusa/package.json +0 -15
  227. package/providers/medusa/src/index.ts +0 -17
  228. package/providers/medusa/tsconfig.json +0 -24
  229. package/providers/medusa/tsconfig.spec.json +0 -4
  230. package/providers/medusa/vitest.config.ts +0 -15
  231. package/providers/meilisearch/README.md +0 -48
  232. package/providers/meilisearch/eslint.config.mjs +0 -22
  233. package/providers/meilisearch/package.json +0 -13
  234. package/providers/meilisearch/src/providers/index.ts +0 -3
  235. package/providers/meilisearch/tsconfig.lib.json +0 -10
  236. package/providers/meilisearch/tsconfig.spec.json +0 -4
  237. package/providers/meilisearch/vitest.config.ts +0 -14
  238. package/providers/posthog/README.md +0 -7
  239. package/providers/posthog/eslint.config.mjs +0 -22
  240. package/providers/posthog/package.json +0 -12
  241. package/providers/posthog/src/core/initialize.ts +0 -11
  242. package/providers/posthog/src/index.ts +0 -4
  243. package/providers/posthog/src/schema/capabilities.schema.ts +0 -8
  244. package/providers/posthog/src/schema/configuration.schema.ts +0 -8
  245. package/providers/posthog/tsconfig.json +0 -21
  246. package/providers/posthog/tsconfig.lib.json +0 -9
  247. /package/{providers → packages}/algolia/src/factories/index.ts +0 -0
  248. /package/{providers → packages}/algolia/src/factories/product-search/product-search.factory.ts +0 -0
  249. /package/{providers → packages}/algolia/src/schema/configuration.schema.ts +0 -0
  250. /package/{providers → packages}/algolia/src/schema/index.ts +0 -0
  251. /package/{providers → packages}/algolia/src/schema/product-recommendation.schema.ts +0 -0
  252. /package/{providers → packages}/algolia/src/schema/search.schema.ts +0 -0
  253. /package/{providers → packages}/algolia/src/test/client-builder-product-search-extension.example.ts +0 -0
  254. /package/{providers/google-analytics → packages/algolia}/tsconfig.json +0 -0
  255. /package/{providers/google-analytics → packages/algolia}/tsconfig.lib.json +0 -0
  256. /package/{providers/google-analytics → packages/algolia}/tsconfig.spec.json +0 -0
  257. /package/{providers → packages}/commercetools/src/core/token-cache.ts +0 -0
  258. /package/{providers → packages}/commercetools/src/factories/cart/cart.factory.ts +0 -0
  259. /package/{providers → packages}/commercetools/src/factories/category/category.factory.ts +0 -0
  260. /package/{providers → packages}/commercetools/src/factories/checkout/checkout.factory.ts +0 -0
  261. /package/{providers → packages}/commercetools/src/factories/identity/identity.factory.ts +0 -0
  262. /package/{providers → packages}/commercetools/src/factories/inventory/inventory.factory.ts +0 -0
  263. /package/{providers → packages}/commercetools/src/factories/order/order.factory.ts +0 -0
  264. /package/{providers → packages}/commercetools/src/factories/order-search/order-search.factory.ts +0 -0
  265. /package/{providers → packages}/commercetools/src/factories/price/price.factory.ts +0 -0
  266. /package/{providers → packages}/commercetools/src/factories/product/product-factory-baseline.example.ts +0 -0
  267. /package/{providers → packages}/commercetools/src/factories/product/product-factory-schema-and-parse-extension.example.ts +0 -0
  268. /package/{providers → packages}/commercetools/src/factories/product/product-factory-schema-extension.example.ts +0 -0
  269. /package/{providers → packages}/commercetools/src/factories/product/product-initializer-factory-extension.example.ts +0 -0
  270. /package/{providers → packages}/commercetools/src/factories/product/product.factory.ts +0 -0
  271. /package/{providers → packages}/commercetools/src/factories/product/utils.example.ts +0 -0
  272. /package/{providers → packages}/commercetools/src/factories/product-associations/product-associations.factory.ts +0 -0
  273. /package/{providers → packages}/commercetools/src/factories/product-list/product-list.factory.ts +0 -0
  274. /package/{providers → packages}/commercetools/src/factories/product-reviews/product-reviews.factory.ts +0 -0
  275. /package/{providers → packages}/commercetools/src/factories/product-search/product-search.factory.ts +0 -0
  276. /package/{providers → packages}/commercetools/src/factories/profile/profile.factory.ts +0 -0
  277. /package/{providers → packages}/commercetools/src/factories/store/store.factory.ts +0 -0
  278. /package/{providers → packages}/commercetools/src/schema/commercetools.schema.ts +0 -0
  279. /package/{providers → packages}/commercetools/src/schema/configuration.schema.ts +0 -0
  280. /package/{providers → packages}/commercetools/src/schema/session.schema.ts +0 -0
  281. /package/{providers → packages}/commercetools/src/test/client-builder-merge-extensions.example.ts +0 -0
  282. /package/{providers → packages}/commercetools/src/test/identity.spec.ts +0 -0
  283. /package/{providers → packages}/commercetools/src/test/test-utils.ts +0 -0
  284. /package/{core → packages/core}/README.md +0 -0
  285. /package/{core → packages/core}/src/cache/cache.interface.ts +0 -0
  286. /package/{core → packages/core}/src/cache/index.ts +0 -0
  287. /package/{core → packages/core}/src/cache/memory-cache.ts +0 -0
  288. /package/{core → packages/core}/src/cache/noop-cache.ts +0 -0
  289. /package/{core → packages/core}/src/cache/redis-cache.ts +0 -0
  290. /package/{core → packages/core}/src/client/index.ts +0 -0
  291. /package/{core → packages/core}/src/decorators/index.ts +0 -0
  292. /package/{core → packages/core}/src/factories/cart.factory.ts +0 -0
  293. /package/{core → packages/core}/src/factories/category.factory.ts +0 -0
  294. /package/{core → packages/core}/src/factories/checkout.factory.ts +0 -0
  295. /package/{core → packages/core}/src/factories/identity.factory.ts +0 -0
  296. /package/{core → packages/core}/src/factories/index.ts +0 -0
  297. /package/{core → packages/core}/src/factories/inventory.factory.ts +0 -0
  298. /package/{core → packages/core}/src/factories/order-search.factory.ts +0 -0
  299. /package/{core → packages/core}/src/factories/order.factory.ts +0 -0
  300. /package/{core → packages/core}/src/factories/price.factory.ts +0 -0
  301. /package/{core → packages/core}/src/factories/product-associations.factory.ts +0 -0
  302. /package/{core → packages/core}/src/factories/product-list.factory.ts +0 -0
  303. /package/{core → packages/core}/src/factories/product-reviews.factory.ts +0 -0
  304. /package/{core → packages/core}/src/factories/product-search.factory.ts +0 -0
  305. /package/{core → packages/core}/src/factories/product.factory.ts +0 -0
  306. /package/{core → packages/core}/src/factories/profile.factory.ts +0 -0
  307. /package/{core → packages/core}/src/factories/store.factory.ts +0 -0
  308. /package/{core → packages/core}/src/initialization.ts +0 -0
  309. /package/{core → packages/core}/src/metrics/metrics.ts +0 -0
  310. /package/{core → packages/core}/src/schemas/capabilities.schema.ts +0 -0
  311. /package/{core → packages/core}/src/schemas/errors/generic.error.ts +0 -0
  312. /package/{core → packages/core}/src/schemas/errors/index.ts +0 -0
  313. /package/{core → packages/core}/src/schemas/errors/invalid-input.error.ts +0 -0
  314. /package/{core → packages/core}/src/schemas/errors/invalid-output.error.ts +0 -0
  315. /package/{core → packages/core}/src/schemas/errors/not-found.error.ts +0 -0
  316. /package/{core → packages/core}/src/schemas/index.ts +0 -0
  317. /package/{core → packages/core}/src/schemas/models/analytics.model.ts +0 -0
  318. /package/{core → packages/core}/src/schemas/models/base.model.ts +0 -0
  319. /package/{core → packages/core}/src/schemas/models/cart.model.ts +0 -0
  320. /package/{core → packages/core}/src/schemas/models/category.model.ts +0 -0
  321. /package/{core → packages/core}/src/schemas/models/checkout.model.ts +0 -0
  322. /package/{core → packages/core}/src/schemas/models/cost.model.ts +0 -0
  323. /package/{core → packages/core}/src/schemas/models/currency.model.ts +0 -0
  324. /package/{core → packages/core}/src/schemas/models/identifiers.model.ts +0 -0
  325. /package/{core → packages/core}/src/schemas/models/identity.model.ts +0 -0
  326. /package/{core → packages/core}/src/schemas/models/index.ts +0 -0
  327. /package/{core → packages/core}/src/schemas/models/inventory.model.ts +0 -0
  328. /package/{core → packages/core}/src/schemas/models/order-search.model.ts +0 -0
  329. /package/{core → packages/core}/src/schemas/models/order.model.ts +0 -0
  330. /package/{core → packages/core}/src/schemas/models/payment.model.ts +0 -0
  331. /package/{core → packages/core}/src/schemas/models/price.model.ts +0 -0
  332. /package/{core → packages/core}/src/schemas/models/product-associations.model.ts +0 -0
  333. /package/{core → packages/core}/src/schemas/models/product-list.model.ts +0 -0
  334. /package/{core → packages/core}/src/schemas/models/product-recommendations.model.ts +0 -0
  335. /package/{core → packages/core}/src/schemas/models/product-reviews.model.ts +0 -0
  336. /package/{core → packages/core}/src/schemas/models/product-search.model.ts +0 -0
  337. /package/{core → packages/core}/src/schemas/models/product.model.ts +0 -0
  338. /package/{core → packages/core}/src/schemas/models/profile.model.ts +0 -0
  339. /package/{core → packages/core}/src/schemas/models/shipping-method.model.ts +0 -0
  340. /package/{core → packages/core}/src/schemas/models/store.model.ts +0 -0
  341. /package/{core → packages/core}/src/schemas/mutations/analytics/index.ts +0 -0
  342. /package/{core → packages/core}/src/schemas/mutations/analytics/product-add-to-cart.mutation.ts +0 -0
  343. /package/{core → packages/core}/src/schemas/mutations/analytics/product-details-view.mutation.ts +0 -0
  344. /package/{core → packages/core}/src/schemas/mutations/analytics/product-summary-click.mutation.ts +0 -0
  345. /package/{core → packages/core}/src/schemas/mutations/analytics/product-summary-view.mutation.ts +0 -0
  346. /package/{core → packages/core}/src/schemas/mutations/analytics/purchase.mutation.ts +0 -0
  347. /package/{core → packages/core}/src/schemas/mutations/base.mutation.ts +0 -0
  348. /package/{core → packages/core}/src/schemas/mutations/cart.mutation.ts +0 -0
  349. /package/{core → packages/core}/src/schemas/mutations/checkout.mutation.ts +0 -0
  350. /package/{core → packages/core}/src/schemas/mutations/identity.mutation.ts +0 -0
  351. /package/{core → packages/core}/src/schemas/mutations/index.ts +0 -0
  352. /package/{core → packages/core}/src/schemas/mutations/inventory.mutation.ts +0 -0
  353. /package/{core → packages/core}/src/schemas/mutations/price.mutation.ts +0 -0
  354. /package/{core → packages/core}/src/schemas/mutations/product-list.mutation.ts +0 -0
  355. /package/{core → packages/core}/src/schemas/mutations/product-reviews.mutation.ts +0 -0
  356. /package/{core → packages/core}/src/schemas/mutations/product.mutation.ts +0 -0
  357. /package/{core → packages/core}/src/schemas/mutations/profile.mutation.ts +0 -0
  358. /package/{core → packages/core}/src/schemas/mutations/search.mutation.ts +0 -0
  359. /package/{core → packages/core}/src/schemas/queries/analytics.query.ts +0 -0
  360. /package/{core → packages/core}/src/schemas/queries/base.query.ts +0 -0
  361. /package/{core → packages/core}/src/schemas/queries/cart.query.ts +0 -0
  362. /package/{core → packages/core}/src/schemas/queries/category.query.ts +0 -0
  363. /package/{core → packages/core}/src/schemas/queries/checkout.query.ts +0 -0
  364. /package/{core → packages/core}/src/schemas/queries/identity.query.ts +0 -0
  365. /package/{core → packages/core}/src/schemas/queries/index.ts +0 -0
  366. /package/{core → packages/core}/src/schemas/queries/inventory.query.ts +0 -0
  367. /package/{core → packages/core}/src/schemas/queries/order-search.query.ts +0 -0
  368. /package/{core → packages/core}/src/schemas/queries/order.query.ts +0 -0
  369. /package/{core → packages/core}/src/schemas/queries/price.query.ts +0 -0
  370. /package/{core → packages/core}/src/schemas/queries/product-associations.query.ts +0 -0
  371. /package/{core → packages/core}/src/schemas/queries/product-list.query.ts +0 -0
  372. /package/{core → packages/core}/src/schemas/queries/product-recommendations.query.ts +0 -0
  373. /package/{core → packages/core}/src/schemas/queries/product-reviews.query.ts +0 -0
  374. /package/{core → packages/core}/src/schemas/queries/product-search.query.ts +0 -0
  375. /package/{core → packages/core}/src/schemas/queries/product.query.ts +0 -0
  376. /package/{core → packages/core}/src/schemas/queries/profile.query.ts +0 -0
  377. /package/{core → packages/core}/src/schemas/queries/store.query.ts +0 -0
  378. /package/{core → packages/core}/src/schemas/result.ts +0 -0
  379. /package/{core → packages/core}/src/schemas/session.schema.ts +0 -0
  380. /package/{core → packages/core}/src/test/request-context.spec.ts +0 -0
  381. /package/{core → packages/core}/src/zod-utils.ts +0 -0
  382. /package/{providers → packages}/fake/src/factories/cart/cart.factory.ts +0 -0
  383. /package/{providers → packages}/fake/src/factories/category/category.factory.ts +0 -0
  384. /package/{providers → packages}/fake/src/factories/checkout/checkout.factory.ts +0 -0
  385. /package/{providers → packages}/fake/src/factories/identity/identity.factory.ts +0 -0
  386. /package/{providers → packages}/fake/src/factories/index.ts +0 -0
  387. /package/{providers → packages}/fake/src/factories/inventory/inventory.factory.ts +0 -0
  388. /package/{providers → packages}/fake/src/factories/order/order.factory.ts +0 -0
  389. /package/{providers → packages}/fake/src/factories/order-search/order-search.factory.ts +0 -0
  390. /package/{providers → packages}/fake/src/factories/price/price.factory.ts +0 -0
  391. /package/{providers → packages}/fake/src/factories/product/product.factory.ts +0 -0
  392. /package/{providers → packages}/fake/src/factories/product-associations/product-associations.factory.ts +0 -0
  393. /package/{providers → packages}/fake/src/factories/product-reviews/product-reviews.factory.ts +0 -0
  394. /package/{providers → packages}/fake/src/factories/product-search/product-search.factory.ts +0 -0
  395. /package/{providers → packages}/fake/src/factories/profile/profile.factory.ts +0 -0
  396. /package/{providers → packages}/fake/src/factories/store/store.factory.ts +0 -0
  397. /package/{providers → packages}/fake/src/schema/configuration.schema.ts +0 -0
  398. /package/{providers → packages}/fake/src/test/client-builder-product-extension.example.ts +0 -0
  399. /package/{providers → packages}/fake/src/test/test-utils.ts +0 -0
  400. /package/{providers → packages}/fake/src/utilities/jitter.ts +0 -0
  401. /package/{providers → packages}/fake/src/utilities/seed.ts +0 -0
  402. /package/{providers → packages}/google-analytics/README.md +0 -0
  403. /package/{providers → packages}/google-analytics/src/schema/configuration.schema.ts +0 -0
  404. /package/{providers → packages}/medusa/src/core/client.ts +0 -0
  405. /package/{providers → packages}/medusa/src/factories/cart/cart.factory.ts +0 -0
  406. /package/{providers → packages}/medusa/src/factories/category/category.factory.ts +0 -0
  407. /package/{providers → packages}/medusa/src/factories/checkout/checkout.factory.ts +0 -0
  408. /package/{providers → packages}/medusa/src/factories/identity/identity.factory.ts +0 -0
  409. /package/{providers → packages}/medusa/src/factories/index.ts +0 -0
  410. /package/{providers → packages}/medusa/src/factories/inventory/inventory.factory.ts +0 -0
  411. /package/{providers → packages}/medusa/src/factories/order/order.factory.ts +0 -0
  412. /package/{providers → packages}/medusa/src/factories/order-search/order-search.factory.ts +0 -0
  413. /package/{providers → packages}/medusa/src/factories/price/price.factory.ts +0 -0
  414. /package/{providers → packages}/medusa/src/factories/product/product.factory.ts +0 -0
  415. /package/{providers → packages}/medusa/src/factories/product-associations/product-associations.factory.ts +0 -0
  416. /package/{providers → packages}/medusa/src/factories/product-search/product-search.factory.ts +0 -0
  417. /package/{providers → packages}/medusa/src/factories/profile/profile.factory.ts +0 -0
  418. /package/{providers → packages}/medusa/src/schema/configuration.schema.ts +0 -0
  419. /package/{providers → packages}/medusa/src/schema/medusa.schema.ts +0 -0
  420. /package/{providers → packages}/medusa/src/test/checkout.spec.ts +0 -0
  421. /package/{providers → packages}/medusa/src/test/test-utils.ts +0 -0
  422. /package/{providers → packages}/meilisearch/src/factories/index.ts +0 -0
  423. /package/{providers → packages}/meilisearch/src/factories/order-search/order-search.factory.ts +0 -0
  424. /package/{providers → packages}/meilisearch/src/factories/product-search/product-search.factory.ts +0 -0
  425. /package/{providers → packages}/meilisearch/src/schema/configuration.schema.ts +0 -0
  426. /package/{providers → packages}/meilisearch/src/schema/index.ts +0 -0
  427. /package/{providers → packages}/meilisearch/src/schema/search.schema.ts +0 -0
@@ -19,19 +19,19 @@ import {
19
19
  ProfileSchema,
20
20
  ShippingMethodSchema,
21
21
  } from '@reactionary/core';
22
- import { MedusaCartProvider } from '../providers/cart.provider.js';
23
- import { MedusaCategoryProvider } from '../providers/category.provider.js';
24
- import { MedusaCheckoutProvider } from '../providers/checkout.provider.js';
25
- import { MedusaIdentityProvider } from '../providers/identity.provider.js';
26
- import { MedusaInventoryProvider } from '../providers/inventory.provider.js';
27
- import { MedusaOrderSearchProvider } from '../providers/order-search.provider.js';
28
- import { MedusaOrderProvider } from '../providers/order.provider.js';
29
- import { MedusaPriceProvider } from '../providers/price.provider.js';
30
- import { MedusaSearchProvider } from '../providers/product-search.provider.js';
31
- import { MedusaProductRecommendationsProvider } from '../providers/product-recommendations.provider.js';
32
- import { MedusaProductProvider } from '../providers/product.provider.js';
33
- import { MedusaProductAssociationsProvider } from '../providers/product-associations.provider.js';
34
- import { MedusaProfileProvider } from '../providers/profile.provider.js';
22
+ import { MedusaCartCapability } from '../capabilities/cart.capability.js';
23
+ import { MedusaCategoryCapability } from '../capabilities/category.capability.js';
24
+ import { MedusaCheckoutCapability } from '../capabilities/checkout.capability.js';
25
+ import { MedusaIdentityCapability } from '../capabilities/identity.capability.js';
26
+ import { MedusaInventoryCapability } from '../capabilities/inventory.capability.js';
27
+ import { MedusaOrderSearchCapability } from '../capabilities/order-search.capability.js';
28
+ import { MedusaOrderCapability } from '../capabilities/order.capability.js';
29
+ import { MedusaPriceCapability } from '../capabilities/price.capability.js';
30
+ import { MedusaProductSearchCapability } from '../capabilities/product-search.capability.js';
31
+ import { MedusaProductRecommendationsCapability } from '../capabilities/product-recommendations.capability.js';
32
+ import { MedusaProductCapability } from '../capabilities/product.capability.js';
33
+ import { MedusaProductAssociationsCapability } from '../capabilities/product-associations.capability.js';
34
+ import { MedusaProfileCapability } from '../capabilities/profile.capability.js';
35
35
  import {
36
36
  MedusaCapabilitiesSchema,
37
37
  type MedusaCapabilities,
@@ -56,8 +56,8 @@ import {
56
56
  } from '../factories/index.js';
57
57
  import {
58
58
  type MedusaClientFromCapabilities,
59
- resolveCapabilityProvider,
60
- resolveProviderOnlyCapability,
59
+ resolveCapabilityWithFactory,
60
+ resolveDirectCapability,
61
61
  } from './initialize.types.js';
62
62
 
63
63
  export function withMedusaCapabilities<T extends MedusaCapabilities>(
@@ -74,7 +74,7 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
74
74
  const caps = MedusaCapabilitiesSchema.parse(capabilities);
75
75
  const medusaApi = new MedusaAPI(config, context);
76
76
 
77
- const buildProviderArgs = <TFactory,>(factory: TFactory) => ({
77
+ const buildCapabilityArgs = <TFactory,>(factory: TFactory) => ({
78
78
  cache,
79
79
  context,
80
80
  config,
@@ -83,12 +83,12 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
83
83
  });
84
84
 
85
85
  if (caps.product?.enabled) {
86
- client.product = resolveCapabilityProvider(
86
+ client.product = resolveCapabilityWithFactory(
87
87
  capabilities.product,
88
88
  {
89
89
  factory: new MedusaProductFactory(ProductSchema),
90
- provider: (args) =>
91
- new MedusaProductProvider(
90
+ capability: (args) =>
91
+ new MedusaProductCapability(
92
92
  args.config,
93
93
  args.cache,
94
94
  args.context,
@@ -96,17 +96,17 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
96
96
  args.factory,
97
97
  ),
98
98
  },
99
- buildProviderArgs,
99
+ buildCapabilityArgs,
100
100
  );
101
101
  }
102
102
 
103
103
  if (caps.productSearch?.enabled) {
104
- client.productSearch = resolveCapabilityProvider(
104
+ client.productSearch = resolveCapabilityWithFactory(
105
105
  capabilities.productSearch,
106
106
  {
107
107
  factory: new MedusaProductSearchFactory(ProductSearchResultSchema),
108
- provider: (args) =>
109
- new MedusaSearchProvider(
108
+ capability: (args) =>
109
+ new MedusaProductSearchCapability(
110
110
  args.config,
111
111
  args.cache,
112
112
  args.context,
@@ -114,20 +114,20 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
114
114
  args.factory,
115
115
  ),
116
116
  },
117
- buildProviderArgs,
117
+ buildCapabilityArgs,
118
118
  );
119
119
  }
120
120
 
121
121
  if (caps.category?.enabled) {
122
- client.category = resolveCapabilityProvider(
122
+ client.category = resolveCapabilityWithFactory(
123
123
  capabilities.category,
124
124
  {
125
125
  factory: new MedusaCategoryFactory(
126
126
  CategorySchema,
127
127
  CategoryPaginatedResultSchema,
128
128
  ),
129
- provider: (args) =>
130
- new MedusaCategoryProvider(
129
+ capability: (args) =>
130
+ new MedusaCategoryCapability(
131
131
  args.config,
132
132
  args.cache,
133
133
  args.context,
@@ -135,12 +135,12 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
135
135
  args.factory,
136
136
  ),
137
137
  },
138
- buildProviderArgs,
138
+ buildCapabilityArgs,
139
139
  );
140
140
  }
141
141
 
142
142
  if (caps.checkout?.enabled) {
143
- client.checkout = resolveCapabilityProvider(
143
+ client.checkout = resolveCapabilityWithFactory(
144
144
  capabilities.checkout,
145
145
  {
146
146
  factory: new MedusaCheckoutFactory(
@@ -148,8 +148,8 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
148
148
  ShippingMethodSchema,
149
149
  PaymentMethodSchema,
150
150
  ),
151
- provider: (args) =>
152
- new MedusaCheckoutProvider(
151
+ capability: (args) =>
152
+ new MedusaCheckoutCapability(
153
153
  args.config,
154
154
  args.cache,
155
155
  args.context,
@@ -157,15 +157,15 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
157
157
  args.factory,
158
158
  ),
159
159
  },
160
- buildProviderArgs,
160
+ buildCapabilityArgs,
161
161
  );
162
162
  }
163
163
 
164
164
  if (caps.productRecommendations?.enabled) {
165
- client.productRecommendations = resolveProviderOnlyCapability(
165
+ client.productRecommendations = resolveDirectCapability(
166
166
  capabilities.productRecommendations,
167
167
  (args) =>
168
- new MedusaProductRecommendationsProvider(
168
+ new MedusaProductRecommendationsCapability(
169
169
  args.config,
170
170
  args.cache,
171
171
  args.context,
@@ -181,12 +181,12 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
181
181
  }
182
182
 
183
183
  if (caps.cart?.enabled) {
184
- client.cart = resolveCapabilityProvider(
184
+ client.cart = resolveCapabilityWithFactory(
185
185
  capabilities.cart,
186
186
  {
187
187
  factory: new MedusaCartFactory(CartSchema, CartIdentifierSchema),
188
- provider: (args) =>
189
- new MedusaCartProvider(
188
+ capability: (args) =>
189
+ new MedusaCartCapability(
190
190
  args.config,
191
191
  args.cache,
192
192
  args.context,
@@ -194,17 +194,17 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
194
194
  args.factory,
195
195
  ),
196
196
  },
197
- buildProviderArgs,
197
+ buildCapabilityArgs,
198
198
  );
199
199
  }
200
200
 
201
201
  if (caps.price?.enabled) {
202
- client.price = resolveCapabilityProvider(
202
+ client.price = resolveCapabilityWithFactory(
203
203
  capabilities.price,
204
204
  {
205
205
  factory: new MedusaPriceFactory(PriceSchema),
206
- provider: (args) =>
207
- new MedusaPriceProvider(
206
+ capability: (args) =>
207
+ new MedusaPriceCapability(
208
208
  args.config,
209
209
  args.cache,
210
210
  args.context,
@@ -212,17 +212,17 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
212
212
  args.factory,
213
213
  ),
214
214
  },
215
- buildProviderArgs,
215
+ buildCapabilityArgs,
216
216
  );
217
217
  }
218
218
 
219
219
  if (caps.inventory?.enabled) {
220
- client.inventory = resolveCapabilityProvider(
220
+ client.inventory = resolveCapabilityWithFactory(
221
221
  capabilities.inventory,
222
222
  {
223
223
  factory: new MedusaInventoryFactory(InventorySchema),
224
- provider: (args) =>
225
- new MedusaInventoryProvider(
224
+ capability: (args) =>
225
+ new MedusaInventoryCapability(
226
226
  args.config,
227
227
  args.cache,
228
228
  args.context,
@@ -230,15 +230,15 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
230
230
  args.factory,
231
231
  ),
232
232
  },
233
- buildProviderArgs,
233
+ buildCapabilityArgs,
234
234
  );
235
235
  }
236
236
 
237
237
  if (caps.identity?.enabled) {
238
- client.identity = resolveProviderOnlyCapability(
238
+ client.identity = resolveDirectCapability(
239
239
  capabilities.identity,
240
240
  (args) =>
241
- new MedusaIdentityProvider(
241
+ new MedusaIdentityCapability(
242
242
  args.config,
243
243
  args.cache,
244
244
  args.context,
@@ -254,12 +254,12 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
254
254
  }
255
255
 
256
256
  if (caps.profile?.enabled) {
257
- client.profile = resolveCapabilityProvider(
257
+ client.profile = resolveCapabilityWithFactory(
258
258
  capabilities.profile,
259
259
  {
260
260
  factory: new MedusaProfileFactory(ProfileSchema),
261
- provider: (args) =>
262
- new MedusaProfileProvider(
261
+ capability: (args) =>
262
+ new MedusaProfileCapability(
263
263
  args.config,
264
264
  args.cache,
265
265
  args.context,
@@ -267,17 +267,17 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
267
267
  args.factory,
268
268
  ),
269
269
  },
270
- buildProviderArgs,
270
+ buildCapabilityArgs,
271
271
  );
272
272
  }
273
273
 
274
274
  if (caps.order?.enabled) {
275
- client.order = resolveCapabilityProvider(
275
+ client.order = resolveCapabilityWithFactory(
276
276
  capabilities.order,
277
277
  {
278
278
  factory: new MedusaOrderFactory(OrderSchema),
279
- provider: (args) =>
280
- new MedusaOrderProvider(
279
+ capability: (args) =>
280
+ new MedusaOrderCapability(
281
281
  args.config,
282
282
  args.cache,
283
283
  args.context,
@@ -285,17 +285,17 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
285
285
  args.factory,
286
286
  ),
287
287
  },
288
- buildProviderArgs,
288
+ buildCapabilityArgs,
289
289
  );
290
290
  }
291
291
 
292
292
  if (caps.orderSearch?.enabled) {
293
- client.orderSearch = resolveCapabilityProvider(
293
+ client.orderSearch = resolveCapabilityWithFactory(
294
294
  capabilities.orderSearch,
295
295
  {
296
296
  factory: new MedusaOrderSearchFactory(OrderSearchResultSchema),
297
- provider: (args) =>
298
- new MedusaOrderSearchProvider(
297
+ capability: (args) =>
298
+ new MedusaOrderSearchCapability(
299
299
  args.config,
300
300
  args.cache,
301
301
  args.context,
@@ -303,17 +303,17 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
303
303
  args.factory,
304
304
  ),
305
305
  },
306
- buildProviderArgs,
306
+ buildCapabilityArgs,
307
307
  );
308
308
  }
309
309
 
310
310
  if (caps.productAssociations?.enabled) {
311
- client.productAssociations = resolveCapabilityProvider(
311
+ client.productAssociations = resolveCapabilityWithFactory(
312
312
  capabilities.productAssociations,
313
313
  {
314
314
  factory: new MedusaProductAssociationsFactory(ProductAssociationSchema),
315
- provider: (args) =>
316
- new MedusaProductAssociationsProvider(
315
+ capability: (args) =>
316
+ new MedusaProductAssociationsCapability(
317
317
  args.config,
318
318
  args.cache,
319
319
  args.context,
@@ -321,7 +321,7 @@ export function withMedusaCapabilities<T extends MedusaCapabilities>(
321
321
  args.factory,
322
322
  ),
323
323
  },
324
- buildProviderArgs,
324
+ buildCapabilityArgs,
325
325
  );
326
326
  }
327
327
 
@@ -9,7 +9,7 @@ import type {
9
9
  PriceFactory,
10
10
  ProductAssociationsFactory,
11
11
  ProductFactory,
12
- ProductRecommendationsProvider,
12
+ ProductRecommendationsCapability,
13
13
  ProductSearchFactory,
14
14
  ProfileFactory,
15
15
  } from '@reactionary/core';
@@ -25,19 +25,19 @@ import type { MedusaProductAssociationsFactory } from '../factories/product-asso
25
25
  import type { MedusaProductFactory } from '../factories/product/product.factory.js';
26
26
  import type { MedusaProductSearchFactory } from '../factories/product-search/product-search.factory.js';
27
27
  import type { MedusaProfileFactory } from '../factories/profile/profile.factory.js';
28
- import type { MedusaCartProvider } from '../providers/cart.provider.js';
29
- import type { MedusaCategoryProvider } from '../providers/category.provider.js';
30
- import type { MedusaCheckoutProvider } from '../providers/checkout.provider.js';
31
- import type { MedusaInventoryProvider } from '../providers/inventory.provider.js';
32
- import type { MedusaOrderProvider } from '../providers/order.provider.js';
33
- import type { MedusaOrderSearchProvider } from '../providers/order-search.provider.js';
34
- import type { MedusaPriceProvider } from '../providers/price.provider.js';
35
- import type { MedusaProductAssociationsProvider } from '../providers/product-associations.provider.js';
36
- import type { MedusaProductProvider } from '../providers/product.provider.js';
37
- import type { MedusaSearchProvider } from '../providers/product-search.provider.js';
38
- import type { MedusaProfileProvider } from '../providers/profile.provider.js';
39
- import type { MedusaProductRecommendationsProvider } from '../providers/product-recommendations.provider.js';
40
- import type { MedusaIdentityProvider } from '../providers/identity.provider.js';
28
+ import type { MedusaCartCapability } from '../capabilities/cart.capability.js';
29
+ import type { MedusaCategoryCapability } from '../capabilities/category.capability.js';
30
+ import type { MedusaCheckoutCapability } from '../capabilities/checkout.capability.js';
31
+ import type { MedusaInventoryCapability } from '../capabilities/inventory.capability.js';
32
+ import type { MedusaOrderCapability } from '../capabilities/order.capability.js';
33
+ import type { MedusaOrderSearchCapability } from '../capabilities/order-search.capability.js';
34
+ import type { MedusaPriceCapability } from '../capabilities/price.capability.js';
35
+ import type { MedusaProductAssociationsCapability } from '../capabilities/product-associations.capability.js';
36
+ import type { MedusaProductCapability } from '../capabilities/product.capability.js';
37
+ import type { MedusaProductSearchCapability } from '../capabilities/product-search.capability.js';
38
+ import type { MedusaProfileCapability } from '../capabilities/profile.capability.js';
39
+ import type { MedusaProductRecommendationsCapability } from '../capabilities/product-recommendations.capability.js';
40
+ import type { MedusaIdentityCapability } from '../capabilities/identity.capability.js';
41
41
 
42
42
  type OverridableCapabilityKey =
43
43
  | 'product'
@@ -70,12 +70,12 @@ type ExtractCapabilityFactory<TCapability, TContract, TDefaultFactory> =
70
70
  : TDefaultFactory
71
71
  : TDefaultFactory;
72
72
 
73
- type ExtractCapabilityProvider<TCapability, TDefaultProvider> =
74
- TCapability extends { enabled: true; provider?: infer TProviderFactory }
75
- ? TProviderFactory extends (...args: unknown[]) => infer TProvider
76
- ? TProvider
77
- : TDefaultProvider
78
- : TDefaultProvider;
73
+ type ExtractCapabilityImplementation<TCapability, TDefaultCapability> =
74
+ TCapability extends { enabled: true; capability?: infer TCapabilityFactory }
75
+ ? TCapabilityFactory extends (...args: unknown[]) => infer TResolvedCapability
76
+ ? TResolvedCapability
77
+ : TDefaultCapability
78
+ : TDefaultCapability;
79
79
 
80
80
  type FactoryContractMap = {
81
81
  product: ProductFactory;
@@ -113,28 +113,28 @@ type ResolvedFactoryMap<T extends MedusaCapabilities> = {
113
113
  >;
114
114
  };
115
115
 
116
- type DefaultProviderMap<T extends MedusaCapabilities> = {
117
- product: MedusaProductProvider<ResolvedFactoryMap<T>['product']>;
118
- productSearch: MedusaSearchProvider<ResolvedFactoryMap<T>['productSearch']>;
119
- cart: MedusaCartProvider<ResolvedFactoryMap<T>['cart']>;
120
- checkout: MedusaCheckoutProvider<ResolvedFactoryMap<T>['checkout']>;
121
- category: MedusaCategoryProvider<ResolvedFactoryMap<T>['category']>;
122
- price: MedusaPriceProvider<ResolvedFactoryMap<T>['price']>;
123
- order: MedusaOrderProvider<ResolvedFactoryMap<T>['order']>;
124
- orderSearch: MedusaOrderSearchProvider<ResolvedFactoryMap<T>['orderSearch']>;
125
- inventory: MedusaInventoryProvider<ResolvedFactoryMap<T>['inventory']>;
126
- profile: MedusaProfileProvider<ResolvedFactoryMap<T>['profile']>;
127
- productAssociations: MedusaProductAssociationsProvider<
116
+ type DefaultCapabilityMap<T extends MedusaCapabilities> = {
117
+ product: MedusaProductCapability<ResolvedFactoryMap<T>['product']>;
118
+ productSearch: MedusaProductSearchCapability<ResolvedFactoryMap<T>['productSearch']>;
119
+ cart: MedusaCartCapability<ResolvedFactoryMap<T>['cart']>;
120
+ checkout: MedusaCheckoutCapability<ResolvedFactoryMap<T>['checkout']>;
121
+ category: MedusaCategoryCapability<ResolvedFactoryMap<T>['category']>;
122
+ price: MedusaPriceCapability<ResolvedFactoryMap<T>['price']>;
123
+ order: MedusaOrderCapability<ResolvedFactoryMap<T>['order']>;
124
+ orderSearch: MedusaOrderSearchCapability<ResolvedFactoryMap<T>['orderSearch']>;
125
+ inventory: MedusaInventoryCapability<ResolvedFactoryMap<T>['inventory']>;
126
+ profile: MedusaProfileCapability<ResolvedFactoryMap<T>['profile']>;
127
+ productAssociations: MedusaProductAssociationsCapability<
128
128
  ResolvedFactoryMap<T>['productAssociations']
129
129
  >;
130
- identity: MedusaIdentityProvider;
131
- productRecommendations: MedusaProductRecommendationsProvider;
130
+ identity: MedusaIdentityCapability;
131
+ productRecommendations: MedusaProductRecommendationsCapability;
132
132
  };
133
133
 
134
- type CapabilityProviderTypeMap<T extends MedusaCapabilities> = {
135
- [K in OverridableCapabilityKey | 'productRecommendations' | 'identity']: ExtractCapabilityProvider<
134
+ type CapabilityImplementationMap<T extends MedusaCapabilities> = {
135
+ [K in OverridableCapabilityKey | 'productRecommendations' | 'identity']: ExtractCapabilityImplementation<
136
136
  T[K],
137
- DefaultProviderMap<T>[K]
137
+ DefaultCapabilityMap<T>[K]
138
138
  >;
139
139
  };
140
140
 
@@ -143,7 +143,7 @@ type EnabledCapabilityOverrideMap<T extends MedusaCapabilities> = {
143
143
  enabled: true;
144
144
  }
145
145
  ? K
146
- : never]: CapabilityProviderTypeMap<T>[K];
146
+ : never]: CapabilityImplementationMap<T>[K];
147
147
  };
148
148
 
149
149
  export type MedusaClientFromCapabilities<T extends MedusaCapabilities> = Omit<
@@ -152,33 +152,33 @@ export type MedusaClientFromCapabilities<T extends MedusaCapabilities> = Omit<
152
152
  > &
153
153
  EnabledCapabilityOverrideMap<T>;
154
154
 
155
- export function resolveCapabilityProvider<TFactory, TProvider, TProviderArgs>(
155
+ export function resolveCapabilityWithFactory<TFactory, TResolvedCapability, TCapabilityArgs>(
156
156
  capability:
157
157
  | {
158
158
  factory?: TFactory;
159
- provider?: (args: TProviderArgs) => TProvider;
159
+ capability?: (args: TCapabilityArgs) => TResolvedCapability;
160
160
  }
161
161
  | undefined,
162
162
  defaults: {
163
163
  factory: TFactory;
164
- provider: (args: TProviderArgs) => TProvider;
164
+ capability: (args: TCapabilityArgs) => TResolvedCapability;
165
165
  },
166
- buildProviderArgs: (factory: TFactory) => TProviderArgs,
167
- ): TProvider {
166
+ buildCapabilityArgs: (factory: TFactory) => TCapabilityArgs,
167
+ ): TResolvedCapability {
168
168
  const factory = capability?.factory ?? defaults.factory;
169
- const provider = capability?.provider ?? defaults.provider;
170
- return provider(buildProviderArgs(factory));
169
+ const capabilityFactory = capability?.capability ?? defaults.capability;
170
+ return capabilityFactory(buildCapabilityArgs(factory));
171
171
  }
172
172
 
173
- export function resolveProviderOnlyCapability<TProvider, TProviderArgs>(
173
+ export function resolveDirectCapability<TResolvedCapability, TCapabilityArgs>(
174
174
  capability:
175
175
  | {
176
- provider?: (args: TProviderArgs) => TProvider;
176
+ capability?: (args: TCapabilityArgs) => TResolvedCapability;
177
177
  }
178
178
  | undefined,
179
- defaultProvider: (args: TProviderArgs) => TProvider,
180
- args: TProviderArgs,
181
- ): TProvider {
182
- const provider = capability?.provider ?? defaultProvider;
183
- return provider(args);
179
+ defaultCapability: (args: TCapabilityArgs) => TResolvedCapability,
180
+ args: TCapabilityArgs,
181
+ ): TResolvedCapability {
182
+ const capabilityFactory = capability?.capability ?? defaultCapability;
183
+ return capabilityFactory(args);
184
184
  }
@@ -0,0 +1,17 @@
1
+ export * from './schema/configuration.schema.js';
2
+ export * from './schema/medusa.schema.js';
3
+ export * from './schema/capabilities.schema.js';
4
+ export * from './core/initialize.js';
5
+ export * from './core/initialize.types.js';
6
+ export * from './core/client.js';
7
+ export * from './factories/index.js';
8
+ export * from './capabilities/cart.capability.js';
9
+ export * from './capabilities/identity.capability.js';
10
+ export * from './capabilities/inventory.capability.js';
11
+ export * from './capabilities/order.capability.js';
12
+ export * from './capabilities/order-search.capability.js';
13
+ export * from './capabilities/price.capability.js';
14
+ export * from './capabilities/product-search.capability.js';
15
+ export * from './capabilities/product-recommendations.capability.js';
16
+ export * from './capabilities/product-associations.capability.js';
17
+ export * from './capabilities/profile.capability.js';