@unifiedcommerce/core 0.4.3 → 0.4.4

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 (561) hide show
  1. package/dist/interfaces/rest/index.d.ts.map +1 -1
  2. package/dist/interfaces/rest/index.js +4 -17
  3. package/dist/runtime/server.d.ts.map +1 -1
  4. package/dist/runtime/server.js +33 -0
  5. package/package.json +1 -1
  6. package/dist/adapters/console-email.d.ts +0 -23
  7. package/dist/adapters/console-email.d.ts.map +0 -1
  8. package/dist/adapters/console-email.js +0 -38
  9. package/dist/auth/access.d.ts +0 -101
  10. package/dist/auth/access.d.ts.map +0 -1
  11. package/dist/auth/access.js +0 -128
  12. package/dist/auth/auth-schema.d.ts +0 -1475
  13. package/dist/auth/auth-schema.d.ts.map +0 -1
  14. package/dist/auth/auth-schema.js +0 -124
  15. package/dist/auth/middleware.d.ts +0 -5
  16. package/dist/auth/middleware.d.ts.map +0 -1
  17. package/dist/auth/middleware.js +0 -141
  18. package/dist/auth/org.d.ts +0 -22
  19. package/dist/auth/org.d.ts.map +0 -1
  20. package/dist/auth/org.js +0 -36
  21. package/dist/auth/permissions.d.ts +0 -4
  22. package/dist/auth/permissions.d.ts.map +0 -1
  23. package/dist/auth/permissions.js +0 -24
  24. package/dist/auth/setup.d.ts +0 -29
  25. package/dist/auth/setup.d.ts.map +0 -1
  26. package/dist/auth/setup.js +0 -117
  27. package/dist/auth/system-actor.d.ts +0 -7
  28. package/dist/auth/system-actor.d.ts.map +0 -1
  29. package/dist/auth/system-actor.js +0 -17
  30. package/dist/auth/types.d.ts +0 -11
  31. package/dist/auth/types.d.ts.map +0 -1
  32. package/dist/auth/types.js +0 -1
  33. package/dist/config/defaults.d.ts +0 -3
  34. package/dist/config/defaults.d.ts.map +0 -1
  35. package/dist/config/defaults.js +0 -80
  36. package/dist/config/define-config.d.ts +0 -9
  37. package/dist/config/define-config.d.ts.map +0 -1
  38. package/dist/config/define-config.js +0 -44
  39. package/dist/config/types.d.ts +0 -327
  40. package/dist/config/types.d.ts.map +0 -1
  41. package/dist/config/types.js +0 -1
  42. package/dist/generated/plugin-manifest.d.ts +0 -48
  43. package/dist/generated/plugin-manifest.d.ts.map +0 -1
  44. package/dist/generated/plugin-manifest.js +0 -20
  45. package/dist/hooks/checkout-completion.d.ts +0 -58
  46. package/dist/hooks/checkout-completion.d.ts.map +0 -1
  47. package/dist/hooks/checkout-completion.js +0 -137
  48. package/dist/hooks/checkout.d.ts +0 -99
  49. package/dist/hooks/checkout.d.ts.map +0 -1
  50. package/dist/hooks/checkout.js +0 -317
  51. package/dist/hooks/order-emails.d.ts +0 -16
  52. package/dist/hooks/order-emails.d.ts.map +0 -1
  53. package/dist/hooks/order-emails.js +0 -44
  54. package/dist/index.d.ts +0 -77
  55. package/dist/index.d.ts.map +0 -1
  56. package/dist/index.js +0 -45
  57. package/dist/interfaces/mcp/agent-prompt.d.ts +0 -16
  58. package/dist/interfaces/mcp/agent-prompt.d.ts.map +0 -1
  59. package/dist/interfaces/mcp/agent-prompt.js +0 -172
  60. package/dist/interfaces/mcp/context-enrichment.d.ts +0 -39
  61. package/dist/interfaces/mcp/context-enrichment.d.ts.map +0 -1
  62. package/dist/interfaces/mcp/context-enrichment.js +0 -119
  63. package/dist/interfaces/mcp/server.d.ts +0 -5
  64. package/dist/interfaces/mcp/server.d.ts.map +0 -1
  65. package/dist/interfaces/mcp/server.js +0 -30
  66. package/dist/interfaces/mcp/tool-builder.d.ts +0 -120
  67. package/dist/interfaces/mcp/tool-builder.d.ts.map +0 -1
  68. package/dist/interfaces/mcp/tool-builder.js +0 -224
  69. package/dist/interfaces/mcp/tools/analytics.d.ts +0 -42
  70. package/dist/interfaces/mcp/tools/analytics.d.ts.map +0 -1
  71. package/dist/interfaces/mcp/tools/analytics.js +0 -70
  72. package/dist/interfaces/mcp/tools/cart.d.ts +0 -14
  73. package/dist/interfaces/mcp/tools/cart.d.ts.map +0 -1
  74. package/dist/interfaces/mcp/tools/cart.js +0 -47
  75. package/dist/interfaces/mcp/tools/catalog.d.ts +0 -53
  76. package/dist/interfaces/mcp/tools/catalog.d.ts.map +0 -1
  77. package/dist/interfaces/mcp/tools/catalog.js +0 -284
  78. package/dist/interfaces/mcp/tools/index.d.ts +0 -3
  79. package/dist/interfaces/mcp/tools/index.d.ts.map +0 -1
  80. package/dist/interfaces/mcp/tools/index.js +0 -20
  81. package/dist/interfaces/mcp/tools/inventory.d.ts +0 -27
  82. package/dist/interfaces/mcp/tools/inventory.d.ts.map +0 -1
  83. package/dist/interfaces/mcp/tools/inventory.js +0 -143
  84. package/dist/interfaces/mcp/tools/orders.d.ts +0 -18
  85. package/dist/interfaces/mcp/tools/orders.d.ts.map +0 -1
  86. package/dist/interfaces/mcp/tools/orders.js +0 -82
  87. package/dist/interfaces/mcp/tools/pricing.d.ts +0 -29
  88. package/dist/interfaces/mcp/tools/pricing.d.ts.map +0 -1
  89. package/dist/interfaces/mcp/tools/pricing.js +0 -90
  90. package/dist/interfaces/mcp/tools/promotions.d.ts +0 -44
  91. package/dist/interfaces/mcp/tools/promotions.d.ts.map +0 -1
  92. package/dist/interfaces/mcp/tools/promotions.js +0 -109
  93. package/dist/interfaces/mcp/tools/registry.d.ts +0 -32
  94. package/dist/interfaces/mcp/tools/registry.d.ts.map +0 -1
  95. package/dist/interfaces/mcp/tools/registry.js +0 -55
  96. package/dist/interfaces/mcp/tools/search.d.ts +0 -14
  97. package/dist/interfaces/mcp/tools/search.d.ts.map +0 -1
  98. package/dist/interfaces/mcp/tools/search.js +0 -39
  99. package/dist/interfaces/mcp/tools/webhooks.d.ts +0 -15
  100. package/dist/interfaces/mcp/tools/webhooks.d.ts.map +0 -1
  101. package/dist/interfaces/mcp/tools/webhooks.js +0 -48
  102. package/dist/interfaces/mcp/transport.d.ts +0 -20
  103. package/dist/interfaces/mcp/transport.d.ts.map +0 -1
  104. package/dist/interfaces/mcp/transport.js +0 -99
  105. package/dist/interfaces/rest/customer-portal.d.ts +0 -5
  106. package/dist/interfaces/rest/customer-portal.d.ts.map +0 -1
  107. package/dist/interfaces/rest/customer-portal.js +0 -206
  108. package/dist/interfaces/rest/router.d.ts +0 -164
  109. package/dist/interfaces/rest/router.d.ts.map +0 -1
  110. package/dist/interfaces/rest/router.js +0 -259
  111. package/dist/interfaces/rest/routes/admin-jobs.d.ts +0 -5
  112. package/dist/interfaces/rest/routes/admin-jobs.d.ts.map +0 -1
  113. package/dist/interfaces/rest/routes/admin-jobs.js +0 -48
  114. package/dist/interfaces/rest/routes/audit.d.ts +0 -5
  115. package/dist/interfaces/rest/routes/audit.d.ts.map +0 -1
  116. package/dist/interfaces/rest/routes/audit.js +0 -43
  117. package/dist/interfaces/rest/routes/carts.d.ts +0 -5
  118. package/dist/interfaces/rest/routes/carts.d.ts.map +0 -1
  119. package/dist/interfaces/rest/routes/carts.js +0 -55
  120. package/dist/interfaces/rest/routes/catalog.d.ts +0 -5
  121. package/dist/interfaces/rest/routes/catalog.d.ts.map +0 -1
  122. package/dist/interfaces/rest/routes/catalog.js +0 -256
  123. package/dist/interfaces/rest/routes/checkout.d.ts +0 -5
  124. package/dist/interfaces/rest/routes/checkout.d.ts.map +0 -1
  125. package/dist/interfaces/rest/routes/checkout.js +0 -216
  126. package/dist/interfaces/rest/routes/customers.d.ts +0 -5
  127. package/dist/interfaces/rest/routes/customers.d.ts.map +0 -1
  128. package/dist/interfaces/rest/routes/customers.js +0 -74
  129. package/dist/interfaces/rest/routes/entity-aliases.d.ts +0 -18
  130. package/dist/interfaces/rest/routes/entity-aliases.d.ts.map +0 -1
  131. package/dist/interfaces/rest/routes/entity-aliases.js +0 -39
  132. package/dist/interfaces/rest/routes/inventory.d.ts +0 -5
  133. package/dist/interfaces/rest/routes/inventory.d.ts.map +0 -1
  134. package/dist/interfaces/rest/routes/inventory.js +0 -72
  135. package/dist/interfaces/rest/routes/media.d.ts +0 -5
  136. package/dist/interfaces/rest/routes/media.d.ts.map +0 -1
  137. package/dist/interfaces/rest/routes/media.js +0 -65
  138. package/dist/interfaces/rest/routes/orders.d.ts +0 -5
  139. package/dist/interfaces/rest/routes/orders.d.ts.map +0 -1
  140. package/dist/interfaces/rest/routes/orders.js +0 -64
  141. package/dist/interfaces/rest/routes/payments.d.ts +0 -5
  142. package/dist/interfaces/rest/routes/payments.d.ts.map +0 -1
  143. package/dist/interfaces/rest/routes/payments.js +0 -45
  144. package/dist/interfaces/rest/routes/pricing.d.ts +0 -5
  145. package/dist/interfaces/rest/routes/pricing.d.ts.map +0 -1
  146. package/dist/interfaces/rest/routes/pricing.js +0 -48
  147. package/dist/interfaces/rest/routes/promotions.d.ts +0 -5
  148. package/dist/interfaces/rest/routes/promotions.d.ts.map +0 -1
  149. package/dist/interfaces/rest/routes/promotions.js +0 -76
  150. package/dist/interfaces/rest/routes/search.d.ts +0 -5
  151. package/dist/interfaces/rest/routes/search.d.ts.map +0 -1
  152. package/dist/interfaces/rest/routes/search.js +0 -60
  153. package/dist/interfaces/rest/routes/webhooks.d.ts +0 -5
  154. package/dist/interfaces/rest/routes/webhooks.d.ts.map +0 -1
  155. package/dist/interfaces/rest/routes/webhooks.js +0 -39
  156. package/dist/interfaces/rest/schemas/admin-jobs.d.ts +0 -327
  157. package/dist/interfaces/rest/schemas/admin-jobs.d.ts.map +0 -1
  158. package/dist/interfaces/rest/schemas/admin-jobs.js +0 -37
  159. package/dist/interfaces/rest/schemas/audit.d.ts +0 -59
  160. package/dist/interfaces/rest/schemas/audit.d.ts.map +0 -1
  161. package/dist/interfaces/rest/schemas/audit.js +0 -43
  162. package/dist/interfaces/rest/schemas/carts.d.ts +0 -1456
  163. package/dist/interfaces/rest/schemas/carts.d.ts.map +0 -1
  164. package/dist/interfaces/rest/schemas/carts.js +0 -109
  165. package/dist/interfaces/rest/schemas/catalog.d.ts +0 -5452
  166. package/dist/interfaces/rest/schemas/catalog.d.ts.map +0 -1
  167. package/dist/interfaces/rest/schemas/catalog.js +0 -397
  168. package/dist/interfaces/rest/schemas/checkout.d.ts +0 -160
  169. package/dist/interfaces/rest/schemas/checkout.d.ts.map +0 -1
  170. package/dist/interfaces/rest/schemas/checkout.js +0 -60
  171. package/dist/interfaces/rest/schemas/customer-portal.d.ts +0 -2203
  172. package/dist/interfaces/rest/schemas/customer-portal.d.ts.map +0 -1
  173. package/dist/interfaces/rest/schemas/customer-portal.js +0 -177
  174. package/dist/interfaces/rest/schemas/customers.d.ts +0 -422
  175. package/dist/interfaces/rest/schemas/customers.d.ts.map +0 -1
  176. package/dist/interfaces/rest/schemas/customers.js +0 -150
  177. package/dist/interfaces/rest/schemas/inventory.d.ts +0 -561
  178. package/dist/interfaces/rest/schemas/inventory.d.ts.map +0 -1
  179. package/dist/interfaces/rest/schemas/inventory.js +0 -148
  180. package/dist/interfaces/rest/schemas/media.d.ts +0 -303
  181. package/dist/interfaces/rest/schemas/media.d.ts.map +0 -1
  182. package/dist/interfaces/rest/schemas/media.js +0 -69
  183. package/dist/interfaces/rest/schemas/orders.d.ts +0 -1792
  184. package/dist/interfaces/rest/schemas/orders.d.ts.map +0 -1
  185. package/dist/interfaces/rest/schemas/orders.js +0 -93
  186. package/dist/interfaces/rest/schemas/pricing.d.ts +0 -256
  187. package/dist/interfaces/rest/schemas/pricing.d.ts.map +0 -1
  188. package/dist/interfaces/rest/schemas/pricing.js +0 -72
  189. package/dist/interfaces/rest/schemas/promotions.d.ts +0 -363
  190. package/dist/interfaces/rest/schemas/promotions.d.ts.map +0 -1
  191. package/dist/interfaces/rest/schemas/promotions.js +0 -98
  192. package/dist/interfaces/rest/schemas/responses.d.ts +0 -4086
  193. package/dist/interfaces/rest/schemas/responses.d.ts.map +0 -1
  194. package/dist/interfaces/rest/schemas/responses.js +0 -74
  195. package/dist/interfaces/rest/schemas/search.d.ts +0 -247
  196. package/dist/interfaces/rest/schemas/search.d.ts.map +0 -1
  197. package/dist/interfaces/rest/schemas/search.js +0 -55
  198. package/dist/interfaces/rest/schemas/shared.d.ts +0 -95
  199. package/dist/interfaces/rest/schemas/shared.d.ts.map +0 -1
  200. package/dist/interfaces/rest/schemas/shared.js +0 -51
  201. package/dist/interfaces/rest/schemas/webhooks.d.ts +0 -221
  202. package/dist/interfaces/rest/schemas/webhooks.d.ts.map +0 -1
  203. package/dist/interfaces/rest/schemas/webhooks.js +0 -62
  204. package/dist/interfaces/rest/utils.d.ts +0 -45
  205. package/dist/interfaces/rest/utils.d.ts.map +0 -1
  206. package/dist/interfaces/rest/utils.js +0 -71
  207. package/dist/interfaces/rest/webhook-router.d.ts +0 -41
  208. package/dist/interfaces/rest/webhook-router.d.ts.map +0 -1
  209. package/dist/interfaces/rest/webhook-router.js +0 -36
  210. package/dist/kernel/compensation/executor.d.ts +0 -21
  211. package/dist/kernel/compensation/executor.d.ts.map +0 -1
  212. package/dist/kernel/compensation/executor.js +0 -36
  213. package/dist/kernel/compensation/types.d.ts +0 -25
  214. package/dist/kernel/compensation/types.d.ts.map +0 -1
  215. package/dist/kernel/compensation/types.js +0 -1
  216. package/dist/kernel/database/adapter.d.ts +0 -18
  217. package/dist/kernel/database/adapter.d.ts.map +0 -1
  218. package/dist/kernel/database/adapter.js +0 -3
  219. package/dist/kernel/database/drizzle-db.d.ts +0 -49
  220. package/dist/kernel/database/drizzle-db.d.ts.map +0 -1
  221. package/dist/kernel/database/drizzle-db.js +0 -20
  222. package/dist/kernel/database/migrate.d.ts +0 -38
  223. package/dist/kernel/database/migrate.d.ts.map +0 -1
  224. package/dist/kernel/database/migrate.js +0 -61
  225. package/dist/kernel/database/plugin-types.d.ts +0 -32
  226. package/dist/kernel/database/plugin-types.d.ts.map +0 -1
  227. package/dist/kernel/database/plugin-types.js +0 -10
  228. package/dist/kernel/database/schema.d.ts +0 -24
  229. package/dist/kernel/database/schema.d.ts.map +0 -1
  230. package/dist/kernel/database/schema.js +0 -36
  231. package/dist/kernel/database/scoped-db.d.ts +0 -20
  232. package/dist/kernel/database/scoped-db.d.ts.map +0 -1
  233. package/dist/kernel/database/scoped-db.js +0 -62
  234. package/dist/kernel/database/tx-context.d.ts +0 -15
  235. package/dist/kernel/database/tx-context.d.ts.map +0 -1
  236. package/dist/kernel/database/tx-context.js +0 -19
  237. package/dist/kernel/error-mapper.d.ts +0 -3
  238. package/dist/kernel/error-mapper.d.ts.map +0 -1
  239. package/dist/kernel/error-mapper.js +0 -12
  240. package/dist/kernel/errors.d.ts +0 -38
  241. package/dist/kernel/errors.d.ts.map +0 -1
  242. package/dist/kernel/errors.js +0 -69
  243. package/dist/kernel/factory/repository-factory.d.ts +0 -71
  244. package/dist/kernel/factory/repository-factory.d.ts.map +0 -1
  245. package/dist/kernel/factory/repository-factory.js +0 -138
  246. package/dist/kernel/hooks/create-context.d.ts +0 -25
  247. package/dist/kernel/hooks/create-context.d.ts.map +0 -1
  248. package/dist/kernel/hooks/create-context.js +0 -22
  249. package/dist/kernel/hooks/executor.d.ts +0 -12
  250. package/dist/kernel/hooks/executor.d.ts.map +0 -1
  251. package/dist/kernel/hooks/executor.js +0 -50
  252. package/dist/kernel/hooks/registry.d.ts +0 -28
  253. package/dist/kernel/hooks/registry.d.ts.map +0 -1
  254. package/dist/kernel/hooks/registry.js +0 -58
  255. package/dist/kernel/hooks/types.d.ts +0 -37
  256. package/dist/kernel/hooks/types.d.ts.map +0 -1
  257. package/dist/kernel/hooks/types.js +0 -1
  258. package/dist/kernel/http-error.d.ts +0 -30
  259. package/dist/kernel/http-error.d.ts.map +0 -1
  260. package/dist/kernel/http-error.js +0 -35
  261. package/dist/kernel/jobs/adapter.d.ts +0 -25
  262. package/dist/kernel/jobs/adapter.d.ts.map +0 -1
  263. package/dist/kernel/jobs/adapter.js +0 -9
  264. package/dist/kernel/jobs/drizzle-adapter.d.ts +0 -15
  265. package/dist/kernel/jobs/drizzle-adapter.d.ts.map +0 -1
  266. package/dist/kernel/jobs/drizzle-adapter.js +0 -42
  267. package/dist/kernel/jobs/runner.d.ts +0 -24
  268. package/dist/kernel/jobs/runner.d.ts.map +0 -1
  269. package/dist/kernel/jobs/runner.js +0 -114
  270. package/dist/kernel/jobs/schema.d.ts +0 -280
  271. package/dist/kernel/jobs/schema.d.ts.map +0 -1
  272. package/dist/kernel/jobs/schema.js +0 -37
  273. package/dist/kernel/jobs/types.d.ts +0 -30
  274. package/dist/kernel/jobs/types.d.ts.map +0 -1
  275. package/dist/kernel/jobs/types.js +0 -1
  276. package/dist/kernel/local-api.d.ts +0 -103
  277. package/dist/kernel/local-api.d.ts.map +0 -1
  278. package/dist/kernel/local-api.js +0 -89
  279. package/dist/kernel/plugin/manifest.d.ts +0 -90
  280. package/dist/kernel/plugin/manifest.d.ts.map +0 -1
  281. package/dist/kernel/plugin/manifest.js +0 -169
  282. package/dist/kernel/query/executor.d.ts +0 -21
  283. package/dist/kernel/query/executor.d.ts.map +0 -1
  284. package/dist/kernel/query/executor.js +0 -128
  285. package/dist/kernel/query/registry.d.ts +0 -33
  286. package/dist/kernel/query/registry.d.ts.map +0 -1
  287. package/dist/kernel/query/registry.js +0 -20
  288. package/dist/kernel/result.d.ts +0 -36
  289. package/dist/kernel/result.d.ts.map +0 -1
  290. package/dist/kernel/result.js +0 -16
  291. package/dist/kernel/schema/extra-columns.d.ts +0 -23
  292. package/dist/kernel/schema/extra-columns.d.ts.map +0 -1
  293. package/dist/kernel/schema/extra-columns.js +0 -10
  294. package/dist/kernel/service-registry.d.ts +0 -109
  295. package/dist/kernel/service-registry.d.ts.map +0 -1
  296. package/dist/kernel/service-registry.js +0 -26
  297. package/dist/kernel/service-timing.d.ts +0 -25
  298. package/dist/kernel/service-timing.d.ts.map +0 -1
  299. package/dist/kernel/service-timing.js +0 -62
  300. package/dist/kernel/state-machine/machine.d.ts +0 -24
  301. package/dist/kernel/state-machine/machine.d.ts.map +0 -1
  302. package/dist/kernel/state-machine/machine.js +0 -70
  303. package/dist/modules/analytics/drizzle-adapter.d.ts +0 -13
  304. package/dist/modules/analytics/drizzle-adapter.d.ts.map +0 -1
  305. package/dist/modules/analytics/drizzle-adapter.js +0 -358
  306. package/dist/modules/analytics/hooks.d.ts +0 -13
  307. package/dist/modules/analytics/hooks.d.ts.map +0 -1
  308. package/dist/modules/analytics/hooks.js +0 -12
  309. package/dist/modules/analytics/models.d.ts +0 -14
  310. package/dist/modules/analytics/models.d.ts.map +0 -1
  311. package/dist/modules/analytics/models.js +0 -118
  312. package/dist/modules/analytics/repository/index.d.ts +0 -5
  313. package/dist/modules/analytics/repository/index.d.ts.map +0 -1
  314. package/dist/modules/analytics/repository/index.js +0 -1
  315. package/dist/modules/analytics/service.d.ts +0 -45
  316. package/dist/modules/analytics/service.d.ts.map +0 -1
  317. package/dist/modules/analytics/service.js +0 -196
  318. package/dist/modules/analytics/types.d.ts +0 -119
  319. package/dist/modules/analytics/types.d.ts.map +0 -1
  320. package/dist/modules/analytics/types.js +0 -25
  321. package/dist/modules/audit/hooks.d.ts +0 -7
  322. package/dist/modules/audit/hooks.d.ts.map +0 -1
  323. package/dist/modules/audit/hooks.js +0 -67
  324. package/dist/modules/audit/schema.d.ts +0 -178
  325. package/dist/modules/audit/schema.d.ts.map +0 -1
  326. package/dist/modules/audit/schema.js +0 -21
  327. package/dist/modules/audit/service.d.ts +0 -38
  328. package/dist/modules/audit/service.d.ts.map +0 -1
  329. package/dist/modules/audit/service.js +0 -109
  330. package/dist/modules/cart/access.d.ts +0 -11
  331. package/dist/modules/cart/access.d.ts.map +0 -1
  332. package/dist/modules/cart/access.js +0 -18
  333. package/dist/modules/cart/matcher.d.ts +0 -20
  334. package/dist/modules/cart/matcher.d.ts.map +0 -1
  335. package/dist/modules/cart/matcher.js +0 -2
  336. package/dist/modules/cart/repository/index.d.ts +0 -45
  337. package/dist/modules/cart/repository/index.d.ts.map +0 -1
  338. package/dist/modules/cart/repository/index.js +0 -158
  339. package/dist/modules/cart/schema.d.ts +0 -359
  340. package/dist/modules/cart/schema.d.ts.map +0 -1
  341. package/dist/modules/cart/schema.js +0 -40
  342. package/dist/modules/cart/schemas.d.ts +0 -29
  343. package/dist/modules/cart/schemas.d.ts.map +0 -1
  344. package/dist/modules/cart/schemas.js +0 -14
  345. package/dist/modules/cart/service.d.ts +0 -63
  346. package/dist/modules/cart/service.d.ts.map +0 -1
  347. package/dist/modules/cart/service.js +0 -339
  348. package/dist/modules/catalog/repository/index.d.ts +0 -106
  349. package/dist/modules/catalog/repository/index.d.ts.map +0 -1
  350. package/dist/modules/catalog/repository/index.js +0 -455
  351. package/dist/modules/catalog/schema.d.ts +0 -1193
  352. package/dist/modules/catalog/schema.d.ts.map +0 -1
  353. package/dist/modules/catalog/schema.js +0 -149
  354. package/dist/modules/catalog/schemas.d.ts +0 -81
  355. package/dist/modules/catalog/schemas.d.ts.map +0 -1
  356. package/dist/modules/catalog/schemas.js +0 -62
  357. package/dist/modules/catalog/service.d.ts +0 -160
  358. package/dist/modules/catalog/service.d.ts.map +0 -1
  359. package/dist/modules/catalog/service.js +0 -759
  360. package/dist/modules/customers/repository/index.d.ts +0 -47
  361. package/dist/modules/customers/repository/index.d.ts.map +0 -1
  362. package/dist/modules/customers/repository/index.js +0 -206
  363. package/dist/modules/customers/schema.d.ts +0 -560
  364. package/dist/modules/customers/schema.d.ts.map +0 -1
  365. package/dist/modules/customers/schema.js +0 -60
  366. package/dist/modules/customers/service.d.ts +0 -27
  367. package/dist/modules/customers/service.d.ts.map +0 -1
  368. package/dist/modules/customers/service.js +0 -106
  369. package/dist/modules/fulfillment/repository/index.d.ts +0 -63
  370. package/dist/modules/fulfillment/repository/index.d.ts.map +0 -1
  371. package/dist/modules/fulfillment/repository/index.js +0 -268
  372. package/dist/modules/fulfillment/schema.d.ts +0 -655
  373. package/dist/modules/fulfillment/schema.d.ts.map +0 -1
  374. package/dist/modules/fulfillment/schema.js +0 -83
  375. package/dist/modules/fulfillment/service.d.ts +0 -58
  376. package/dist/modules/fulfillment/service.d.ts.map +0 -1
  377. package/dist/modules/fulfillment/service.js +0 -338
  378. package/dist/modules/fulfillment/types.d.ts +0 -44
  379. package/dist/modules/fulfillment/types.d.ts.map +0 -1
  380. package/dist/modules/fulfillment/types.js +0 -1
  381. package/dist/modules/inventory/repository/index.d.ts +0 -81
  382. package/dist/modules/inventory/repository/index.d.ts.map +0 -1
  383. package/dist/modules/inventory/repository/index.js +0 -310
  384. package/dist/modules/inventory/schema.d.ts +0 -570
  385. package/dist/modules/inventory/schema.d.ts.map +0 -1
  386. package/dist/modules/inventory/schema.js +0 -69
  387. package/dist/modules/inventory/schemas.d.ts +0 -31
  388. package/dist/modules/inventory/schemas.d.ts.map +0 -1
  389. package/dist/modules/inventory/schemas.js +0 -28
  390. package/dist/modules/inventory/service.d.ts +0 -69
  391. package/dist/modules/inventory/service.d.ts.map +0 -1
  392. package/dist/modules/inventory/service.js +0 -283
  393. package/dist/modules/media/adapter.d.ts +0 -16
  394. package/dist/modules/media/adapter.d.ts.map +0 -1
  395. package/dist/modules/media/adapter.js +0 -1
  396. package/dist/modules/media/repository/index.d.ts +0 -35
  397. package/dist/modules/media/repository/index.d.ts.map +0 -1
  398. package/dist/modules/media/repository/index.js +0 -176
  399. package/dist/modules/media/schema.d.ts +0 -289
  400. package/dist/modules/media/schema.d.ts.map +0 -1
  401. package/dist/modules/media/schema.js +0 -35
  402. package/dist/modules/media/service.d.ts +0 -42
  403. package/dist/modules/media/service.d.ts.map +0 -1
  404. package/dist/modules/media/service.js +0 -89
  405. package/dist/modules/orders/repository/index.d.ts +0 -48
  406. package/dist/modules/orders/repository/index.d.ts.map +0 -1
  407. package/dist/modules/orders/repository/index.js +0 -199
  408. package/dist/modules/orders/schema.d.ts +0 -672
  409. package/dist/modules/orders/schema.d.ts.map +0 -1
  410. package/dist/modules/orders/schema.js +0 -63
  411. package/dist/modules/orders/service.d.ts +0 -85
  412. package/dist/modules/orders/service.d.ts.map +0 -1
  413. package/dist/modules/orders/service.js +0 -313
  414. package/dist/modules/orders/stale-order-cleanup.d.ts +0 -27
  415. package/dist/modules/orders/stale-order-cleanup.d.ts.map +0 -1
  416. package/dist/modules/orders/stale-order-cleanup.js +0 -55
  417. package/dist/modules/organization/service.d.ts +0 -53
  418. package/dist/modules/organization/service.d.ts.map +0 -1
  419. package/dist/modules/organization/service.js +0 -151
  420. package/dist/modules/payments/adapter.d.ts +0 -42
  421. package/dist/modules/payments/adapter.d.ts.map +0 -1
  422. package/dist/modules/payments/adapter.js +0 -1
  423. package/dist/modules/payments/repository/index.d.ts +0 -5
  424. package/dist/modules/payments/repository/index.d.ts.map +0 -1
  425. package/dist/modules/payments/repository/index.js +0 -1
  426. package/dist/modules/payments/service.d.ts +0 -23
  427. package/dist/modules/payments/service.d.ts.map +0 -1
  428. package/dist/modules/payments/service.js +0 -72
  429. package/dist/modules/pricing/repository/index.d.ts +0 -34
  430. package/dist/modules/pricing/repository/index.d.ts.map +0 -1
  431. package/dist/modules/pricing/repository/index.js +0 -176
  432. package/dist/modules/pricing/schema.d.ts +0 -565
  433. package/dist/modules/pricing/schema.d.ts.map +0 -1
  434. package/dist/modules/pricing/schema.js +0 -57
  435. package/dist/modules/pricing/schemas.d.ts +0 -37
  436. package/dist/modules/pricing/schemas.d.ts.map +0 -1
  437. package/dist/modules/pricing/schemas.js +0 -30
  438. package/dist/modules/pricing/service.d.ts +0 -62
  439. package/dist/modules/pricing/service.d.ts.map +0 -1
  440. package/dist/modules/pricing/service.js +0 -308
  441. package/dist/modules/promotions/repository/index.d.ts +0 -41
  442. package/dist/modules/promotions/repository/index.d.ts.map +0 -1
  443. package/dist/modules/promotions/repository/index.js +0 -204
  444. package/dist/modules/promotions/schema.d.ts +0 -427
  445. package/dist/modules/promotions/schema.d.ts.map +0 -1
  446. package/dist/modules/promotions/schema.js +0 -52
  447. package/dist/modules/promotions/schemas.d.ts +0 -33
  448. package/dist/modules/promotions/schemas.d.ts.map +0 -1
  449. package/dist/modules/promotions/schemas.js +0 -32
  450. package/dist/modules/promotions/service.d.ts +0 -80
  451. package/dist/modules/promotions/service.d.ts.map +0 -1
  452. package/dist/modules/promotions/service.js +0 -347
  453. package/dist/modules/search/adapter.d.ts +0 -51
  454. package/dist/modules/search/adapter.d.ts.map +0 -1
  455. package/dist/modules/search/adapter.js +0 -1
  456. package/dist/modules/search/hooks.d.ts +0 -8
  457. package/dist/modules/search/hooks.d.ts.map +0 -1
  458. package/dist/modules/search/hooks.js +0 -6
  459. package/dist/modules/search/repository/index.d.ts +0 -5
  460. package/dist/modules/search/repository/index.d.ts.map +0 -1
  461. package/dist/modules/search/repository/index.js +0 -1
  462. package/dist/modules/search/service.d.ts +0 -24
  463. package/dist/modules/search/service.d.ts.map +0 -1
  464. package/dist/modules/search/service.js +0 -217
  465. package/dist/modules/shipping/calculator.d.ts +0 -42
  466. package/dist/modules/shipping/calculator.d.ts.map +0 -1
  467. package/dist/modules/shipping/calculator.js +0 -91
  468. package/dist/modules/shipping/repository/index.d.ts +0 -5
  469. package/dist/modules/shipping/repository/index.d.ts.map +0 -1
  470. package/dist/modules/shipping/repository/index.js +0 -1
  471. package/dist/modules/shipping/service.d.ts +0 -28
  472. package/dist/modules/shipping/service.d.ts.map +0 -1
  473. package/dist/modules/shipping/service.js +0 -20
  474. package/dist/modules/tax/adapter.d.ts +0 -58
  475. package/dist/modules/tax/adapter.d.ts.map +0 -1
  476. package/dist/modules/tax/adapter.js +0 -1
  477. package/dist/modules/tax/repository/index.d.ts +0 -5
  478. package/dist/modules/tax/repository/index.d.ts.map +0 -1
  479. package/dist/modules/tax/repository/index.js +0 -1
  480. package/dist/modules/tax/service.d.ts +0 -19
  481. package/dist/modules/tax/service.d.ts.map +0 -1
  482. package/dist/modules/tax/service.js +0 -34
  483. package/dist/modules/webhooks/hook.d.ts +0 -13
  484. package/dist/modules/webhooks/hook.d.ts.map +0 -1
  485. package/dist/modules/webhooks/hook.js +0 -29
  486. package/dist/modules/webhooks/repository/index.d.ts +0 -40
  487. package/dist/modules/webhooks/repository/index.d.ts.map +0 -1
  488. package/dist/modules/webhooks/repository/index.js +0 -175
  489. package/dist/modules/webhooks/schema.d.ts +0 -404
  490. package/dist/modules/webhooks/schema.d.ts.map +0 -1
  491. package/dist/modules/webhooks/schema.js +0 -40
  492. package/dist/modules/webhooks/service.d.ts +0 -23
  493. package/dist/modules/webhooks/service.d.ts.map +0 -1
  494. package/dist/modules/webhooks/service.js +0 -92
  495. package/dist/modules/webhooks/signing.d.ts +0 -2
  496. package/dist/modules/webhooks/signing.d.ts.map +0 -1
  497. package/dist/modules/webhooks/signing.js +0 -5
  498. package/dist/modules/webhooks/ssrf-guard.d.ts +0 -19
  499. package/dist/modules/webhooks/ssrf-guard.d.ts.map +0 -1
  500. package/dist/modules/webhooks/ssrf-guard.js +0 -79
  501. package/dist/modules/webhooks/tasks.d.ts +0 -16
  502. package/dist/modules/webhooks/tasks.d.ts.map +0 -1
  503. package/dist/modules/webhooks/tasks.js +0 -35
  504. package/dist/modules/webhooks/worker.d.ts +0 -21
  505. package/dist/modules/webhooks/worker.d.ts.map +0 -1
  506. package/dist/modules/webhooks/worker.js +0 -113
  507. package/dist/runtime/commerce.d.ts +0 -110
  508. package/dist/runtime/commerce.d.ts.map +0 -1
  509. package/dist/runtime/commerce.js +0 -37
  510. package/dist/runtime/kernel.d.ts +0 -71
  511. package/dist/runtime/kernel.d.ts.map +0 -1
  512. package/dist/runtime/kernel.js +0 -306
  513. package/dist/runtime/logger.d.ts +0 -11
  514. package/dist/runtime/logger.d.ts.map +0 -1
  515. package/dist/runtime/logger.js +0 -32
  516. package/dist/runtime/shutdown.d.ts +0 -15
  517. package/dist/runtime/shutdown.d.ts.map +0 -1
  518. package/dist/runtime/shutdown.js +0 -34
  519. package/dist/test-utils/create-pglite-adapter.d.ts +0 -32
  520. package/dist/test-utils/create-pglite-adapter.d.ts.map +0 -1
  521. package/dist/test-utils/create-pglite-adapter.js +0 -107
  522. package/dist/test-utils/create-plugin-test-app.d.ts +0 -50
  523. package/dist/test-utils/create-plugin-test-app.d.ts.map +0 -1
  524. package/dist/test-utils/create-plugin-test-app.js +0 -74
  525. package/dist/test-utils/create-repository-test-harness.d.ts +0 -8
  526. package/dist/test-utils/create-repository-test-harness.d.ts.map +0 -1
  527. package/dist/test-utils/create-repository-test-harness.js +0 -7
  528. package/dist/test-utils/create-test-config.d.ts +0 -18
  529. package/dist/test-utils/create-test-config.d.ts.map +0 -1
  530. package/dist/test-utils/create-test-config.js +0 -172
  531. package/dist/test-utils/create-test-kernel.d.ts +0 -3
  532. package/dist/test-utils/create-test-kernel.d.ts.map +0 -1
  533. package/dist/test-utils/create-test-kernel.js +0 -5
  534. package/dist/test-utils/create-test-plugin-context.d.ts +0 -42
  535. package/dist/test-utils/create-test-plugin-context.d.ts.map +0 -1
  536. package/dist/test-utils/create-test-plugin-context.js +0 -46
  537. package/dist/test-utils/rest-api-test-utils.d.ts +0 -64
  538. package/dist/test-utils/rest-api-test-utils.d.ts.map +0 -1
  539. package/dist/test-utils/rest-api-test-utils.js +0 -207
  540. package/dist/test-utils/test-actors.d.ts +0 -15
  541. package/dist/test-utils/test-actors.d.ts.map +0 -1
  542. package/dist/test-utils/test-actors.js +0 -57
  543. package/dist/test-utils/typed-hooks.d.ts +0 -43
  544. package/dist/test-utils/typed-hooks.d.ts.map +0 -1
  545. package/dist/test-utils/typed-hooks.js +0 -35
  546. package/dist/testing.d.ts +0 -14
  547. package/dist/testing.d.ts.map +0 -1
  548. package/dist/testing.js +0 -13
  549. package/dist/tsconfig.tsbuildinfo +0 -1
  550. package/dist/types/commerce-types.d.ts +0 -34
  551. package/dist/types/commerce-types.d.ts.map +0 -1
  552. package/dist/types/commerce-types.js +0 -1
  553. package/dist/utils/id.d.ts +0 -2
  554. package/dist/utils/id.d.ts.map +0 -1
  555. package/dist/utils/id.js +0 -3
  556. package/dist/utils/logger.d.ts +0 -3
  557. package/dist/utils/logger.d.ts.map +0 -1
  558. package/dist/utils/logger.js +0 -16
  559. package/dist/utils/pagination.d.ts +0 -11
  560. package/dist/utils/pagination.d.ts.map +0 -1
  561. package/dist/utils/pagination.js +0 -15
@@ -1,455 +0,0 @@
1
- import { eq, and, inArray } from "drizzle-orm";
2
- import { sellableEntities, sellableAttributes, sellableCustomFields, categories, entityCategories, brands, entityBrands, optionTypes, optionValues, variants, variantOptionValues, } from "../schema.js";
3
- /**
4
- * CatalogRepository provides type-safe database operations for catalog entities.
5
- *
6
- * This repository uses Drizzle ORM with PostgresJsDatabase for full type inference.
7
- * Transaction context is passed through TxContext when needed for transactional writes.
8
- *
9
- * All methods support an optional TxContext parameter for transaction participation.
10
- * When ctx is provided, operations run within that transaction; otherwise they use the main db.
11
- */
12
- export class CatalogRepository {
13
- db;
14
- constructor(db) {
15
- this.db = db;
16
- }
17
- /**
18
- * Returns the appropriate database context - either a transaction or the main db.
19
- * Both DrizzleDatabase and DrizzleTx have the same query builder interface.
20
- */
21
- getDb(ctx) {
22
- return ctx?.tx ?? this.db;
23
- }
24
- // ─────────────────────────────────────────────────────────────────────────────
25
- // Sellable Entities
26
- // ─────────────────────────────────────────────────────────────────────────────
27
- async findEntityById(id, ctx) {
28
- const db = this.getDb(ctx);
29
- const rows = await db
30
- .select()
31
- .from(sellableEntities)
32
- .where(eq(sellableEntities.id, id));
33
- return rows[0];
34
- }
35
- async findEntityBySlug(orgId, slug, ctx) {
36
- const db = this.getDb(ctx);
37
- const rows = await db
38
- .select()
39
- .from(sellableEntities)
40
- .where(and(eq(sellableEntities.organizationId, orgId), eq(sellableEntities.slug, slug)));
41
- return rows[0];
42
- }
43
- async findEntities(orgId, filter, ctx) {
44
- const db = this.getDb(ctx);
45
- const conditions = [eq(sellableEntities.organizationId, orgId)];
46
- if (filter?.type) {
47
- conditions.push(eq(sellableEntities.type, filter.type));
48
- }
49
- if (filter?.status) {
50
- conditions.push(eq(sellableEntities.status, filter.status));
51
- }
52
- if (filter?.ids && filter.ids.length > 0) {
53
- conditions.push(inArray(sellableEntities.id, filter.ids));
54
- }
55
- return db
56
- .select()
57
- .from(sellableEntities)
58
- .where(conditions.length === 1 ? conditions[0] : and(...conditions));
59
- }
60
- async createEntity(data, ctx) {
61
- const db = this.getDb(ctx);
62
- const rows = await db.insert(sellableEntities).values(data).returning();
63
- return rows[0];
64
- }
65
- async updateEntity(id, data, ctx) {
66
- const db = this.getDb(ctx);
67
- const rows = await db
68
- .update(sellableEntities)
69
- .set({ ...data, updatedAt: new Date() })
70
- .where(eq(sellableEntities.id, id))
71
- .returning();
72
- return rows[0];
73
- }
74
- async deleteEntity(id, ctx) {
75
- const db = this.getDb(ctx);
76
- const result = await db
77
- .delete(sellableEntities)
78
- .where(eq(sellableEntities.id, id))
79
- .returning();
80
- return result.length > 0;
81
- }
82
- // ─────────────────────────────────────────────────────────────────────────────
83
- // Sellable Attributes
84
- // ─────────────────────────────────────────────────────────────────────────────
85
- async findAttributesByEntityId(entityId, ctx) {
86
- const db = this.getDb(ctx);
87
- return db
88
- .select()
89
- .from(sellableAttributes)
90
- .where(eq(sellableAttributes.entityId, entityId));
91
- }
92
- async findAttributeByLocale(entityId, locale, ctx) {
93
- const db = this.getDb(ctx);
94
- const rows = await db
95
- .select()
96
- .from(sellableAttributes)
97
- .where(and(eq(sellableAttributes.entityId, entityId), eq(sellableAttributes.locale, locale)));
98
- return rows[0];
99
- }
100
- async createAttribute(data, ctx) {
101
- const db = this.getDb(ctx);
102
- const rows = await db.insert(sellableAttributes).values(data).returning();
103
- return rows[0];
104
- }
105
- async updateAttribute(id, data, ctx) {
106
- const db = this.getDb(ctx);
107
- const rows = await db
108
- .update(sellableAttributes)
109
- .set(data)
110
- .where(eq(sellableAttributes.id, id))
111
- .returning();
112
- return rows[0];
113
- }
114
- async upsertAttribute(entityId, locale, data, ctx) {
115
- const existing = await this.findAttributeByLocale(entityId, locale, ctx);
116
- if (existing) {
117
- const updated = await this.updateAttribute(existing.id, data, ctx);
118
- return updated;
119
- }
120
- return this.createAttribute({ ...data, entityId, locale }, ctx);
121
- }
122
- async deleteAttributesByEntityId(entityId, ctx) {
123
- const db = this.getDb(ctx);
124
- await db
125
- .delete(sellableAttributes)
126
- .where(eq(sellableAttributes.entityId, entityId));
127
- }
128
- // ─────────────────────────────────────────────────────────────────────────────
129
- // Custom Fields
130
- // ─────────────────────────────────────────────────────────────────────────────
131
- async findCustomFieldsByEntityId(entityId, ctx) {
132
- const db = this.getDb(ctx);
133
- return db
134
- .select()
135
- .from(sellableCustomFields)
136
- .where(eq(sellableCustomFields.entityId, entityId));
137
- }
138
- async createCustomField(data, ctx) {
139
- const db = this.getDb(ctx);
140
- const rows = await db.insert(sellableCustomFields).values(data).returning();
141
- return rows[0];
142
- }
143
- async deleteCustomFieldsByEntityId(entityId, ctx) {
144
- const db = this.getDb(ctx);
145
- await db
146
- .delete(sellableCustomFields)
147
- .where(eq(sellableCustomFields.entityId, entityId));
148
- }
149
- // ─────────────────────────────────────────────────────────────────────────────
150
- // Categories
151
- // ─────────────────────────────────────────────────────────────────────────────
152
- async findCategoryById(id, ctx) {
153
- const db = this.getDb(ctx);
154
- const rows = await db
155
- .select()
156
- .from(categories)
157
- .where(eq(categories.id, id));
158
- return rows[0];
159
- }
160
- async findCategoryBySlug(orgId, slug, ctx) {
161
- const db = this.getDb(ctx);
162
- const rows = await db
163
- .select()
164
- .from(categories)
165
- .where(and(eq(categories.organizationId, orgId), eq(categories.slug, slug)));
166
- return rows[0];
167
- }
168
- async findAllCategories(orgId, ctx) {
169
- const db = this.getDb(ctx);
170
- return db
171
- .select()
172
- .from(categories)
173
- .where(eq(categories.organizationId, orgId));
174
- }
175
- async createCategory(data, ctx) {
176
- const db = this.getDb(ctx);
177
- const rows = await db.insert(categories).values(data).returning();
178
- return rows[0];
179
- }
180
- async updateCategory(id, data, ctx) {
181
- const db = this.getDb(ctx);
182
- const rows = await db
183
- .update(categories)
184
- .set(data)
185
- .where(eq(categories.id, id))
186
- .returning();
187
- return rows[0];
188
- }
189
- async deleteCategory(id, ctx) {
190
- const db = this.getDb(ctx);
191
- const result = await db
192
- .delete(categories)
193
- .where(eq(categories.id, id))
194
- .returning();
195
- return result.length > 0;
196
- }
197
- // ─────────────────────────────────────────────────────────────────────────────
198
- // Entity Categories (Join Table)
199
- // ─────────────────────────────────────────────────────────────────────────────
200
- async findEntityCategories(entityId, ctx) {
201
- const db = this.getDb(ctx);
202
- return db
203
- .select()
204
- .from(entityCategories)
205
- .where(eq(entityCategories.entityId, entityId));
206
- }
207
- async findEntitiesByCategory(categoryId, ctx) {
208
- const db = this.getDb(ctx);
209
- const rows = await db
210
- .select()
211
- .from(entityCategories)
212
- .where(eq(entityCategories.categoryId, categoryId));
213
- return rows.map((r) => r.entityId);
214
- }
215
- async addEntityToCategory(entityId, categoryId, sortOrder = 0, ctx) {
216
- const db = this.getDb(ctx);
217
- await db
218
- .insert(entityCategories)
219
- .values({ entityId, categoryId, sortOrder })
220
- .onConflictDoNothing();
221
- }
222
- async removeEntityFromCategory(entityId, categoryId, ctx) {
223
- const db = this.getDb(ctx);
224
- const result = await db
225
- .delete(entityCategories)
226
- .where(and(eq(entityCategories.entityId, entityId), eq(entityCategories.categoryId, categoryId)))
227
- .returning();
228
- return result.length > 0;
229
- }
230
- async deleteEntityCategoriesByEntityId(entityId, ctx) {
231
- const db = this.getDb(ctx);
232
- await db
233
- .delete(entityCategories)
234
- .where(eq(entityCategories.entityId, entityId));
235
- }
236
- async deleteEntityCategoriesByCategoryId(categoryId, ctx) {
237
- const db = this.getDb(ctx);
238
- await db
239
- .delete(entityCategories)
240
- .where(eq(entityCategories.categoryId, categoryId));
241
- }
242
- // ─────────────────────────────────────────────────────────────────────────────
243
- // Brands
244
- // ─────────────────────────────────────────────────────────────────────────────
245
- async findBrandById(id, ctx) {
246
- const db = this.getDb(ctx);
247
- const rows = await db.select().from(brands).where(eq(brands.id, id));
248
- return rows[0];
249
- }
250
- async findBrandBySlug(orgId, slug, ctx) {
251
- const db = this.getDb(ctx);
252
- const rows = await db
253
- .select()
254
- .from(brands)
255
- .where(and(eq(brands.organizationId, orgId), eq(brands.slug, slug)));
256
- return rows[0];
257
- }
258
- async findAllBrands(orgId, ctx) {
259
- const db = this.getDb(ctx);
260
- return db
261
- .select()
262
- .from(brands)
263
- .where(eq(brands.organizationId, orgId));
264
- }
265
- async createBrand(data, ctx) {
266
- const db = this.getDb(ctx);
267
- const rows = await db.insert(brands).values(data).returning();
268
- return rows[0];
269
- }
270
- async updateBrand(id, data, ctx) {
271
- const db = this.getDb(ctx);
272
- const rows = await db
273
- .update(brands)
274
- .set(data)
275
- .where(eq(brands.id, id))
276
- .returning();
277
- return rows[0];
278
- }
279
- async deleteBrand(id, ctx) {
280
- const db = this.getDb(ctx);
281
- const result = await db.delete(brands).where(eq(brands.id, id)).returning();
282
- return result.length > 0;
283
- }
284
- // ─────────────────────────────────────────────────────────────────────────────
285
- // Entity Brands (Join Table)
286
- // ─────────────────────────────────────────────────────────────────────────────
287
- async findEntityBrands(entityId, ctx) {
288
- const db = this.getDb(ctx);
289
- return db
290
- .select()
291
- .from(entityBrands)
292
- .where(eq(entityBrands.entityId, entityId));
293
- }
294
- async addEntityToBrand(entityId, brandId, sortOrder = 0, ctx) {
295
- const db = this.getDb(ctx);
296
- await db
297
- .insert(entityBrands)
298
- .values({ entityId, brandId, sortOrder })
299
- .onConflictDoNothing();
300
- }
301
- async removeEntityFromBrand(entityId, brandId, ctx) {
302
- const db = this.getDb(ctx);
303
- const result = await db
304
- .delete(entityBrands)
305
- .where(and(eq(entityBrands.entityId, entityId), eq(entityBrands.brandId, brandId)))
306
- .returning();
307
- return result.length > 0;
308
- }
309
- async deleteEntityBrandsByEntityId(entityId, ctx) {
310
- const db = this.getDb(ctx);
311
- await db.delete(entityBrands).where(eq(entityBrands.entityId, entityId));
312
- }
313
- async deleteEntityBrandsByBrandId(brandId, ctx) {
314
- const db = this.getDb(ctx);
315
- await db.delete(entityBrands).where(eq(entityBrands.brandId, brandId));
316
- }
317
- // ─────────────────────────────────────────────────────────────────────────────
318
- // Option Types
319
- // ─────────────────────────────────────────────────────────────────────────────
320
- async findOptionTypesByEntityId(entityId, ctx) {
321
- const db = this.getDb(ctx);
322
- return db
323
- .select()
324
- .from(optionTypes)
325
- .where(eq(optionTypes.entityId, entityId));
326
- }
327
- async findOptionTypeById(id, ctx) {
328
- const db = this.getDb(ctx);
329
- const rows = await db
330
- .select()
331
- .from(optionTypes)
332
- .where(eq(optionTypes.id, id));
333
- return rows[0];
334
- }
335
- async createOptionType(data, ctx) {
336
- const db = this.getDb(ctx);
337
- const rows = await db.insert(optionTypes).values(data).returning();
338
- return rows[0];
339
- }
340
- async deleteOptionTypesByEntityId(entityId, ctx) {
341
- const db = this.getDb(ctx);
342
- await db.delete(optionTypes).where(eq(optionTypes.entityId, entityId));
343
- }
344
- // ─────────────────────────────────────────────────────────────────────────────
345
- // Option Values
346
- // ─────────────────────────────────────────────────────────────────────────────
347
- async findOptionValuesByTypeId(optionTypeId, ctx) {
348
- const db = this.getDb(ctx);
349
- return db
350
- .select()
351
- .from(optionValues)
352
- .where(eq(optionValues.optionTypeId, optionTypeId));
353
- }
354
- async findOptionValueById(id, ctx) {
355
- const db = this.getDb(ctx);
356
- const rows = await db
357
- .select()
358
- .from(optionValues)
359
- .where(eq(optionValues.id, id));
360
- return rows[0];
361
- }
362
- async findOptionValuesByIds(ids, ctx) {
363
- if (ids.length === 0)
364
- return [];
365
- const db = this.getDb(ctx);
366
- return db.select().from(optionValues).where(inArray(optionValues.id, ids));
367
- }
368
- async createOptionValue(data, ctx) {
369
- const db = this.getDb(ctx);
370
- const rows = await db.insert(optionValues).values(data).returning();
371
- return rows[0];
372
- }
373
- async deleteOptionValuesByTypeId(optionTypeId, ctx) {
374
- const db = this.getDb(ctx);
375
- await db
376
- .delete(optionValues)
377
- .where(eq(optionValues.optionTypeId, optionTypeId));
378
- }
379
- // ─────────────────────────────────────────────────────────────────────────────
380
- // Variants
381
- // ─────────────────────────────────────────────────────────────────────────────
382
- async findVariantsByEntityId(entityId, ctx) {
383
- const db = this.getDb(ctx);
384
- return db.select().from(variants).where(eq(variants.entityId, entityId));
385
- }
386
- async findVariantById(id, ctx) {
387
- const db = this.getDb(ctx);
388
- const rows = await db.select().from(variants).where(eq(variants.id, id));
389
- return rows[0];
390
- }
391
- async findVariantBySku(sku, ctx) {
392
- const db = this.getDb(ctx);
393
- const rows = await db.select().from(variants).where(eq(variants.sku, sku));
394
- return rows[0];
395
- }
396
- async findVariantByBarcode(barcode, ctx) {
397
- const db = this.getDb(ctx);
398
- const rows = await db
399
- .select()
400
- .from(variants)
401
- .where(eq(variants.barcode, barcode));
402
- return rows[0];
403
- }
404
- async createVariant(data, ctx) {
405
- const db = this.getDb(ctx);
406
- const rows = await db.insert(variants).values(data).returning();
407
- return rows[0];
408
- }
409
- async updateVariant(id, data, ctx) {
410
- const db = this.getDb(ctx);
411
- const rows = await db
412
- .update(variants)
413
- .set(data)
414
- .where(eq(variants.id, id))
415
- .returning();
416
- return rows[0];
417
- }
418
- async deleteVariantsByEntityId(entityId, ctx) {
419
- const db = this.getDb(ctx);
420
- await db.delete(variants).where(eq(variants.entityId, entityId));
421
- }
422
- // ─────────────────────────────────────────────────────────────────────────────
423
- // Variant Option Values (Join Table)
424
- // ─────────────────────────────────────────────────────────────────────────────
425
- async findVariantOptionValues(variantId, ctx) {
426
- const db = this.getDb(ctx);
427
- return db
428
- .select()
429
- .from(variantOptionValues)
430
- .where(eq(variantOptionValues.variantId, variantId));
431
- }
432
- async createVariantOptionValues(data, ctx) {
433
- if (data.length === 0)
434
- return;
435
- const db = this.getDb(ctx);
436
- await db.insert(variantOptionValues).values(data).onConflictDoNothing();
437
- }
438
- async deleteVariantOptionValuesByVariantId(variantId, ctx) {
439
- const db = this.getDb(ctx);
440
- await db
441
- .delete(variantOptionValues)
442
- .where(eq(variantOptionValues.variantId, variantId));
443
- }
444
- async deleteVariantOptionValuesByEntityId(entityId, ctx) {
445
- const db = this.getDb(ctx);
446
- // Get all variant IDs for this entity first
447
- const entityVariants = await this.findVariantsByEntityId(entityId, ctx);
448
- const variantIds = entityVariants.map((v) => v.id);
449
- if (variantIds.length > 0) {
450
- await db
451
- .delete(variantOptionValues)
452
- .where(inArray(variantOptionValues.variantId, variantIds));
453
- }
454
- }
455
- }