@rovela-ai/sdk 0.1.2 → 0.1.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 (569) hide show
  1. package/dist/admin/api/auth.d.ts +32 -0
  2. package/dist/admin/api/auth.d.ts.map +1 -0
  3. package/dist/admin/api/auth.js +43 -0
  4. package/dist/admin/api/auth.js.map +1 -0
  5. package/dist/admin/api/categories.d.ts +68 -0
  6. package/dist/admin/api/categories.d.ts.map +1 -0
  7. package/dist/admin/api/categories.js +247 -0
  8. package/dist/admin/api/categories.js.map +1 -0
  9. package/dist/admin/api/customers.d.ts +41 -0
  10. package/dist/admin/api/customers.d.ts.map +1 -0
  11. package/dist/admin/api/customers.js +113 -0
  12. package/dist/admin/api/customers.js.map +1 -0
  13. package/dist/admin/api/index.d.ts +56 -0
  14. package/dist/admin/api/index.d.ts.map +1 -0
  15. package/dist/admin/api/index.js +87 -0
  16. package/dist/admin/api/index.js.map +1 -0
  17. package/dist/admin/api/orders.d.ts +59 -0
  18. package/dist/admin/api/orders.d.ts.map +1 -0
  19. package/dist/admin/api/orders.js +209 -0
  20. package/dist/admin/api/orders.js.map +1 -0
  21. package/dist/admin/api/products.d.ts +103 -0
  22. package/dist/admin/api/products.d.ts.map +1 -0
  23. package/dist/admin/api/products.js +329 -0
  24. package/dist/admin/api/products.js.map +1 -0
  25. package/dist/admin/api/refund.d.ts +29 -0
  26. package/dist/admin/api/refund.d.ts.map +1 -0
  27. package/dist/admin/api/refund.js +136 -0
  28. package/dist/admin/api/refund.js.map +1 -0
  29. package/dist/admin/api/stats.d.ts +40 -0
  30. package/dist/admin/api/stats.d.ts.map +1 -0
  31. package/dist/admin/api/stats.js +74 -0
  32. package/dist/admin/api/stats.js.map +1 -0
  33. package/dist/admin/components/AdminGuard.d.ts +40 -0
  34. package/dist/admin/components/AdminGuard.d.ts.map +1 -0
  35. package/dist/admin/components/AdminGuard.js +97 -0
  36. package/dist/admin/components/AdminGuard.js.map +1 -0
  37. package/dist/admin/components/AdminHeader.d.ts +18 -0
  38. package/dist/admin/components/AdminHeader.d.ts.map +1 -0
  39. package/dist/admin/components/AdminHeader.js +33 -0
  40. package/dist/admin/components/AdminHeader.js.map +1 -0
  41. package/dist/admin/components/AdminLayout.d.ts +50 -0
  42. package/dist/admin/components/AdminLayout.d.ts.map +1 -0
  43. package/dist/admin/components/AdminLayout.js +46 -0
  44. package/dist/admin/components/AdminLayout.js.map +1 -0
  45. package/dist/admin/components/AdminLoginForm.d.ts +18 -0
  46. package/dist/admin/components/AdminLoginForm.d.ts.map +1 -0
  47. package/dist/admin/components/AdminLoginForm.js +58 -0
  48. package/dist/admin/components/AdminLoginForm.js.map +1 -0
  49. package/dist/admin/components/AdminNav.d.ts +34 -0
  50. package/dist/admin/components/AdminNav.d.ts.map +1 -0
  51. package/dist/admin/components/AdminNav.js +61 -0
  52. package/dist/admin/components/AdminNav.js.map +1 -0
  53. package/dist/admin/components/InventoryEditor.d.ts +15 -0
  54. package/dist/admin/components/InventoryEditor.d.ts.map +1 -0
  55. package/dist/admin/components/InventoryEditor.js +83 -0
  56. package/dist/admin/components/InventoryEditor.js.map +1 -0
  57. package/dist/admin/components/LowStockAlert.d.ts +11 -0
  58. package/dist/admin/components/LowStockAlert.d.ts.map +1 -0
  59. package/dist/admin/components/LowStockAlert.js +35 -0
  60. package/dist/admin/components/LowStockAlert.js.map +1 -0
  61. package/dist/admin/components/OrderDetails.d.ts +14 -0
  62. package/dist/admin/components/OrderDetails.d.ts.map +1 -0
  63. package/dist/admin/components/OrderDetails.js +94 -0
  64. package/dist/admin/components/OrderDetails.js.map +1 -0
  65. package/dist/admin/components/OrderTable.d.ts +13 -0
  66. package/dist/admin/components/OrderTable.d.ts.map +1 -0
  67. package/dist/admin/components/OrderTable.js +89 -0
  68. package/dist/admin/components/OrderTable.js.map +1 -0
  69. package/dist/admin/components/ProductForm.d.ts +18 -0
  70. package/dist/admin/components/ProductForm.d.ts.map +1 -0
  71. package/dist/admin/components/ProductForm.js +127 -0
  72. package/dist/admin/components/ProductForm.js.map +1 -0
  73. package/dist/admin/components/ProductTable.d.ts +13 -0
  74. package/dist/admin/components/ProductTable.d.ts.map +1 -0
  75. package/dist/admin/components/ProductTable.js +81 -0
  76. package/dist/admin/components/ProductTable.js.map +1 -0
  77. package/dist/admin/components/RecentOrders.d.ts +11 -0
  78. package/dist/admin/components/RecentOrders.d.ts.map +1 -0
  79. package/dist/admin/components/RecentOrders.js +58 -0
  80. package/dist/admin/components/RecentOrders.js.map +1 -0
  81. package/dist/admin/components/RefundDialog.d.ts +17 -0
  82. package/dist/admin/components/RefundDialog.d.ts.map +1 -0
  83. package/dist/admin/components/RefundDialog.js +86 -0
  84. package/dist/admin/components/RefundDialog.js.map +1 -0
  85. package/dist/admin/components/StatsCards.d.ts +23 -0
  86. package/dist/admin/components/StatsCards.d.ts.map +1 -0
  87. package/dist/admin/components/StatsCards.js +82 -0
  88. package/dist/admin/components/StatsCards.js.map +1 -0
  89. package/dist/admin/components/StoreSettings.d.ts +14 -0
  90. package/dist/admin/components/StoreSettings.d.ts.map +1 -0
  91. package/dist/admin/components/StoreSettings.js +88 -0
  92. package/dist/admin/components/StoreSettings.js.map +1 -0
  93. package/dist/admin/components/index.d.ts +21 -0
  94. package/dist/admin/components/index.d.ts.map +1 -0
  95. package/dist/admin/components/index.js +57 -0
  96. package/dist/admin/components/index.js.map +1 -0
  97. package/dist/admin/config.d.ts +74 -0
  98. package/dist/admin/config.d.ts.map +1 -0
  99. package/dist/admin/config.js +229 -0
  100. package/dist/admin/config.js.map +1 -0
  101. package/dist/admin/hooks/index.d.ts +10 -0
  102. package/dist/admin/hooks/index.d.ts.map +1 -0
  103. package/dist/admin/hooks/index.js +17 -0
  104. package/dist/admin/hooks/index.js.map +1 -0
  105. package/dist/admin/hooks/useAdminOrders.d.ts +41 -0
  106. package/dist/admin/hooks/useAdminOrders.d.ts.map +1 -0
  107. package/dist/admin/hooks/useAdminOrders.js +191 -0
  108. package/dist/admin/hooks/useAdminOrders.js.map +1 -0
  109. package/dist/admin/hooks/useAdminProducts.d.ts +39 -0
  110. package/dist/admin/hooks/useAdminProducts.d.ts.map +1 -0
  111. package/dist/admin/hooks/useAdminProducts.js +235 -0
  112. package/dist/admin/hooks/useAdminProducts.js.map +1 -0
  113. package/dist/admin/hooks/useAdminStats.d.ts +50 -0
  114. package/dist/admin/hooks/useAdminStats.d.ts.map +1 -0
  115. package/dist/admin/hooks/useAdminStats.js +111 -0
  116. package/dist/admin/hooks/useAdminStats.js.map +1 -0
  117. package/dist/admin/index.d.ts +63 -0
  118. package/dist/admin/index.d.ts.map +1 -0
  119. package/dist/admin/index.js +148 -0
  120. package/dist/admin/index.js.map +1 -0
  121. package/dist/admin/server/admin-service.d.ts +130 -0
  122. package/dist/admin/server/admin-service.d.ts.map +1 -0
  123. package/dist/admin/server/admin-service.js +298 -0
  124. package/dist/admin/server/admin-service.js.map +1 -0
  125. package/dist/admin/server/index.d.ts +8 -0
  126. package/dist/admin/server/index.d.ts.map +1 -0
  127. package/dist/admin/server/index.js +25 -0
  128. package/dist/admin/server/index.js.map +1 -0
  129. package/dist/admin/types.d.ts +549 -0
  130. package/dist/admin/types.d.ts.map +1 -0
  131. package/dist/admin/types.js +11 -0
  132. package/dist/admin/types.js.map +1 -0
  133. package/dist/auth/api/auth.d.ts +54 -0
  134. package/dist/auth/api/auth.d.ts.map +1 -0
  135. package/dist/auth/api/auth.js +67 -0
  136. package/dist/auth/api/auth.js.map +1 -0
  137. package/dist/auth/api/forgot-password.d.ts +41 -0
  138. package/dist/auth/api/forgot-password.d.ts.map +1 -0
  139. package/dist/auth/api/forgot-password.js +68 -0
  140. package/dist/auth/api/forgot-password.js.map +1 -0
  141. package/dist/auth/api/index.d.ts +34 -0
  142. package/dist/auth/api/index.d.ts.map +1 -0
  143. package/dist/auth/api/index.js +52 -0
  144. package/dist/auth/api/index.js.map +1 -0
  145. package/dist/auth/api/register.d.ts +41 -0
  146. package/dist/auth/api/register.d.ts.map +1 -0
  147. package/dist/auth/api/register.js +93 -0
  148. package/dist/auth/api/register.js.map +1 -0
  149. package/dist/auth/api/resend-verification.d.ts +41 -0
  150. package/dist/auth/api/resend-verification.d.ts.map +1 -0
  151. package/dist/auth/api/resend-verification.js +71 -0
  152. package/dist/auth/api/resend-verification.js.map +1 -0
  153. package/dist/auth/api/reset-password.d.ts +67 -0
  154. package/dist/auth/api/reset-password.d.ts.map +1 -0
  155. package/dist/auth/api/reset-password.js +110 -0
  156. package/dist/auth/api/reset-password.js.map +1 -0
  157. package/dist/auth/api/verify-email.d.ts +47 -0
  158. package/dist/auth/api/verify-email.d.ts.map +1 -0
  159. package/dist/auth/api/verify-email.js +94 -0
  160. package/dist/auth/api/verify-email.js.map +1 -0
  161. package/dist/auth/components/AuthGuard.d.ts +52 -0
  162. package/dist/auth/components/AuthGuard.d.ts.map +1 -0
  163. package/dist/auth/components/AuthGuard.js +113 -0
  164. package/dist/auth/components/AuthGuard.js.map +1 -0
  165. package/dist/auth/components/ForgotPasswordForm.d.ts +15 -0
  166. package/dist/auth/components/ForgotPasswordForm.d.ts.map +1 -0
  167. package/dist/auth/components/ForgotPasswordForm.js +44 -0
  168. package/dist/auth/components/ForgotPasswordForm.js.map +1 -0
  169. package/dist/auth/components/ResetPasswordForm.d.ts +18 -0
  170. package/dist/auth/components/ResetPasswordForm.d.ts.map +1 -0
  171. package/dist/auth/components/ResetPasswordForm.js +88 -0
  172. package/dist/auth/components/ResetPasswordForm.js.map +1 -0
  173. package/dist/auth/components/SignInForm.d.ts +21 -0
  174. package/dist/auth/components/SignInForm.d.ts.map +1 -0
  175. package/dist/auth/components/SignInForm.js +63 -0
  176. package/dist/auth/components/SignInForm.js.map +1 -0
  177. package/dist/auth/components/SignUpForm.d.ts +18 -0
  178. package/dist/auth/components/SignUpForm.d.ts.map +1 -0
  179. package/dist/auth/components/SignUpForm.js +79 -0
  180. package/dist/auth/components/SignUpForm.js.map +1 -0
  181. package/dist/auth/components/UserMenu.d.ts +18 -0
  182. package/dist/auth/components/UserMenu.d.ts.map +1 -0
  183. package/dist/auth/components/UserMenu.js +75 -0
  184. package/dist/auth/components/UserMenu.js.map +1 -0
  185. package/dist/auth/components/VerifyEmailNotice.d.ts +20 -0
  186. package/dist/auth/components/VerifyEmailNotice.d.ts.map +1 -0
  187. package/dist/auth/components/VerifyEmailNotice.js +59 -0
  188. package/dist/auth/components/VerifyEmailNotice.js.map +1 -0
  189. package/dist/auth/components/index.d.ts +13 -0
  190. package/dist/auth/components/index.d.ts.map +1 -0
  191. package/dist/auth/components/index.js +24 -0
  192. package/dist/auth/components/index.js.map +1 -0
  193. package/dist/auth/config.d.ts +42 -0
  194. package/dist/auth/config.d.ts.map +1 -0
  195. package/dist/auth/config.js +174 -0
  196. package/dist/auth/config.js.map +1 -0
  197. package/dist/auth/hooks/index.d.ts +7 -0
  198. package/dist/auth/hooks/index.d.ts.map +1 -0
  199. package/dist/auth/hooks/index.js +11 -0
  200. package/dist/auth/hooks/index.js.map +1 -0
  201. package/dist/auth/index.d.ts +54 -0
  202. package/dist/auth/index.d.ts.map +1 -0
  203. package/dist/auth/index.js +88 -0
  204. package/dist/auth/index.js.map +1 -0
  205. package/dist/auth/server/customer-service.d.ts +138 -0
  206. package/dist/auth/server/customer-service.d.ts.map +1 -0
  207. package/dist/auth/server/customer-service.js +309 -0
  208. package/dist/auth/server/customer-service.js.map +1 -0
  209. package/dist/auth/server/email-sender.d.ts +64 -0
  210. package/dist/auth/server/email-sender.d.ts.map +1 -0
  211. package/dist/auth/server/email-sender.js +112 -0
  212. package/dist/auth/server/email-sender.js.map +1 -0
  213. package/dist/auth/server/index.d.ts +13 -0
  214. package/dist/auth/server/index.d.ts.map +1 -0
  215. package/dist/auth/server/index.js +48 -0
  216. package/dist/auth/server/index.js.map +1 -0
  217. package/dist/auth/server/password-reset-service.d.ts +86 -0
  218. package/dist/auth/server/password-reset-service.d.ts.map +1 -0
  219. package/dist/auth/server/password-reset-service.js +236 -0
  220. package/dist/auth/server/password-reset-service.js.map +1 -0
  221. package/dist/auth/server/password.d.ts +58 -0
  222. package/dist/auth/server/password.d.ts.map +1 -0
  223. package/dist/auth/server/password.js +94 -0
  224. package/dist/auth/server/password.js.map +1 -0
  225. package/dist/auth/server/verification-service.d.ts +87 -0
  226. package/dist/auth/server/verification-service.d.ts.map +1 -0
  227. package/dist/auth/server/verification-service.js +268 -0
  228. package/dist/auth/server/verification-service.js.map +1 -0
  229. package/dist/auth/types.d.ts +305 -0
  230. package/dist/auth/types.d.ts.map +1 -0
  231. package/dist/auth/types.js +8 -0
  232. package/dist/auth/types.js.map +1 -0
  233. package/dist/cart/CartProvider.d.ts +65 -0
  234. package/dist/cart/CartProvider.d.ts.map +1 -0
  235. package/dist/cart/CartProvider.js +101 -0
  236. package/dist/cart/CartProvider.js.map +1 -0
  237. package/dist/cart/components/AddToCartButton.d.ts +77 -0
  238. package/dist/cart/components/AddToCartButton.d.ts.map +1 -0
  239. package/dist/cart/components/AddToCartButton.js +124 -0
  240. package/dist/cart/components/AddToCartButton.js.map +1 -0
  241. package/dist/cart/components/CartDrawer.d.ts +71 -0
  242. package/dist/cart/components/CartDrawer.d.ts.map +1 -0
  243. package/dist/cart/components/CartDrawer.js +108 -0
  244. package/dist/cart/components/CartDrawer.js.map +1 -0
  245. package/dist/cart/components/CartIcon.d.ts +36 -0
  246. package/dist/cart/components/CartIcon.d.ts.map +1 -0
  247. package/dist/cart/components/CartIcon.js +70 -0
  248. package/dist/cart/components/CartIcon.js.map +1 -0
  249. package/dist/cart/components/CartItem.d.ts +52 -0
  250. package/dist/cart/components/CartItem.d.ts.map +1 -0
  251. package/dist/cart/components/CartItem.js +55 -0
  252. package/dist/cart/components/CartItem.js.map +1 -0
  253. package/dist/cart/components/CartSummary.d.ts +43 -0
  254. package/dist/cart/components/CartSummary.d.ts.map +1 -0
  255. package/dist/cart/components/CartSummary.js +58 -0
  256. package/dist/cart/components/CartSummary.js.map +1 -0
  257. package/dist/cart/components/QuantitySelector.d.ts +39 -0
  258. package/dist/cart/components/QuantitySelector.d.ts.map +1 -0
  259. package/dist/cart/components/QuantitySelector.js +87 -0
  260. package/dist/cart/components/QuantitySelector.js.map +1 -0
  261. package/dist/cart/components/index.d.ts +18 -0
  262. package/dist/cart/components/index.d.ts.map +1 -0
  263. package/dist/cart/components/index.js +21 -0
  264. package/dist/cart/components/index.js.map +1 -0
  265. package/dist/cart/index.d.ts +109 -0
  266. package/dist/cart/index.d.ts.map +1 -0
  267. package/dist/cart/index.js +129 -0
  268. package/dist/cart/index.js.map +1 -0
  269. package/dist/cart/store.d.ts +101 -0
  270. package/dist/cart/store.d.ts.map +1 -0
  271. package/dist/cart/store.js +207 -0
  272. package/dist/cart/store.js.map +1 -0
  273. package/dist/checkout/api/checkout.d.ts +31 -0
  274. package/dist/checkout/api/checkout.d.ts.map +1 -0
  275. package/dist/checkout/api/checkout.js +103 -0
  276. package/dist/checkout/api/checkout.js.map +1 -0
  277. package/dist/checkout/api/index.d.ts +8 -0
  278. package/dist/checkout/api/index.d.ts.map +1 -0
  279. package/dist/checkout/api/index.js +13 -0
  280. package/dist/checkout/api/index.js.map +1 -0
  281. package/dist/checkout/api/webhook.d.ts +30 -0
  282. package/dist/checkout/api/webhook.d.ts.map +1 -0
  283. package/dist/checkout/api/webhook.js +58 -0
  284. package/dist/checkout/api/webhook.js.map +1 -0
  285. package/dist/checkout/components/CheckoutButton.d.ts +44 -0
  286. package/dist/checkout/components/CheckoutButton.d.ts.map +1 -0
  287. package/dist/checkout/components/CheckoutButton.js +97 -0
  288. package/dist/checkout/components/CheckoutButton.js.map +1 -0
  289. package/dist/checkout/components/CheckoutSuccess.d.ts +29 -0
  290. package/dist/checkout/components/CheckoutSuccess.d.ts.map +1 -0
  291. package/dist/checkout/components/CheckoutSuccess.js +60 -0
  292. package/dist/checkout/components/CheckoutSuccess.js.map +1 -0
  293. package/dist/checkout/components/OrderSummary.d.ts +37 -0
  294. package/dist/checkout/components/OrderSummary.d.ts.map +1 -0
  295. package/dist/checkout/components/OrderSummary.js +70 -0
  296. package/dist/checkout/components/OrderSummary.js.map +1 -0
  297. package/dist/checkout/components/ShippingForm.d.ts +30 -0
  298. package/dist/checkout/components/ShippingForm.d.ts.map +1 -0
  299. package/dist/checkout/components/ShippingForm.js +125 -0
  300. package/dist/checkout/components/ShippingForm.js.map +1 -0
  301. package/dist/checkout/components/index.d.ts +10 -0
  302. package/dist/checkout/components/index.d.ts.map +1 -0
  303. package/dist/checkout/components/index.js +17 -0
  304. package/dist/checkout/components/index.js.map +1 -0
  305. package/dist/checkout/hooks/index.d.ts +7 -0
  306. package/dist/checkout/hooks/index.d.ts.map +1 -0
  307. package/dist/checkout/hooks/index.js +12 -0
  308. package/dist/checkout/hooks/index.js.map +1 -0
  309. package/dist/checkout/hooks/useCheckout.d.ts +61 -0
  310. package/dist/checkout/hooks/useCheckout.d.ts.map +1 -0
  311. package/dist/checkout/hooks/useCheckout.js +174 -0
  312. package/dist/checkout/hooks/useCheckout.js.map +1 -0
  313. package/dist/checkout/index.d.ts +111 -0
  314. package/dist/checkout/index.d.ts.map +1 -0
  315. package/dist/checkout/index.js +148 -0
  316. package/dist/checkout/index.js.map +1 -0
  317. package/dist/checkout/server/create-checkout-session.d.ts +69 -0
  318. package/dist/checkout/server/create-checkout-session.d.ts.map +1 -0
  319. package/dist/checkout/server/create-checkout-session.js +190 -0
  320. package/dist/checkout/server/create-checkout-session.js.map +1 -0
  321. package/dist/checkout/server/handle-webhook.d.ts +35 -0
  322. package/dist/checkout/server/handle-webhook.d.ts.map +1 -0
  323. package/dist/checkout/server/handle-webhook.js +279 -0
  324. package/dist/checkout/server/handle-webhook.js.map +1 -0
  325. package/dist/checkout/server/index.d.ts +10 -0
  326. package/dist/checkout/server/index.d.ts.map +1 -0
  327. package/dist/checkout/server/index.js +19 -0
  328. package/dist/checkout/server/index.js.map +1 -0
  329. package/dist/checkout/server/order-service.d.ts +43 -0
  330. package/dist/checkout/server/order-service.d.ts.map +1 -0
  331. package/dist/checkout/server/order-service.js +196 -0
  332. package/dist/checkout/server/order-service.js.map +1 -0
  333. package/dist/checkout/stripe/client.d.ts +72 -0
  334. package/dist/checkout/stripe/client.d.ts.map +1 -0
  335. package/dist/checkout/stripe/client.js +189 -0
  336. package/dist/checkout/stripe/client.js.map +1 -0
  337. package/dist/checkout/stripe/index.d.ts +7 -0
  338. package/dist/checkout/stripe/index.d.ts.map +1 -0
  339. package/dist/checkout/stripe/index.js +21 -0
  340. package/dist/checkout/stripe/index.js.map +1 -0
  341. package/dist/checkout/types.d.ts +263 -0
  342. package/dist/checkout/types.d.ts.map +1 -0
  343. package/dist/checkout/types.js +9 -0
  344. package/dist/checkout/types.js.map +1 -0
  345. package/dist/core/config.d.ts +296 -0
  346. package/dist/core/config.d.ts.map +1 -0
  347. package/dist/core/config.js +162 -0
  348. package/dist/core/config.js.map +1 -0
  349. package/dist/core/db/client.d.ts +69 -0
  350. package/dist/core/db/client.d.ts.map +1 -0
  351. package/dist/core/db/client.js +202 -0
  352. package/dist/core/db/client.js.map +1 -0
  353. package/dist/core/db/index.d.ts +11 -0
  354. package/dist/core/db/index.d.ts.map +1 -0
  355. package/dist/core/db/index.js +109 -0
  356. package/dist/core/db/index.js.map +1 -0
  357. package/dist/core/db/queries.d.ts +627 -0
  358. package/dist/core/db/queries.d.ts.map +1 -0
  359. package/dist/core/db/queries.js +730 -0
  360. package/dist/core/db/queries.js.map +1 -0
  361. package/dist/core/db/schema.d.ts +1628 -0
  362. package/dist/core/db/schema.d.ts.map +1 -0
  363. package/dist/core/db/schema.js +262 -0
  364. package/dist/core/db/schema.js.map +1 -0
  365. package/dist/core/index.d.ts +20 -0
  366. package/dist/core/index.d.ts.map +1 -0
  367. package/dist/core/index.js +71 -0
  368. package/dist/core/index.js.map +1 -0
  369. package/dist/core/server/index.d.ts +17 -0
  370. package/dist/core/server/index.d.ts.map +1 -0
  371. package/dist/core/server/index.js +96 -0
  372. package/dist/core/server/index.js.map +1 -0
  373. package/dist/core/types.d.ts +230 -0
  374. package/dist/core/types.d.ts.map +1 -0
  375. package/dist/core/types.js +9 -0
  376. package/dist/core/types.js.map +1 -0
  377. package/dist/core/utils.d.ts +153 -0
  378. package/dist/core/utils.d.ts.map +1 -0
  379. package/dist/core/utils.js +356 -0
  380. package/dist/core/utils.js.map +1 -0
  381. package/dist/emails/config.d.ts +42 -0
  382. package/dist/emails/config.d.ts.map +1 -0
  383. package/dist/emails/config.js +89 -0
  384. package/dist/emails/config.js.map +1 -0
  385. package/dist/emails/index.d.ts +85 -0
  386. package/dist/emails/index.d.ts.map +1 -0
  387. package/dist/emails/index.js +170 -0
  388. package/dist/emails/index.js.map +1 -0
  389. package/dist/emails/send/auth.d.ts +91 -0
  390. package/dist/emails/send/auth.d.ts.map +1 -0
  391. package/dist/emails/send/auth.js +132 -0
  392. package/dist/emails/send/auth.js.map +1 -0
  393. package/dist/emails/send/index.d.ts +10 -0
  394. package/dist/emails/send/index.d.ts.map +1 -0
  395. package/dist/emails/send/index.js +33 -0
  396. package/dist/emails/send/index.js.map +1 -0
  397. package/dist/emails/send/orders.d.ts +180 -0
  398. package/dist/emails/send/orders.d.ts.map +1 -0
  399. package/dist/emails/send/orders.js +259 -0
  400. package/dist/emails/send/orders.js.map +1 -0
  401. package/dist/emails/sender.d.ts +72 -0
  402. package/dist/emails/sender.d.ts.map +1 -0
  403. package/dist/emails/sender.js +118 -0
  404. package/dist/emails/sender.js.map +1 -0
  405. package/dist/emails/templates/base.d.ts +105 -0
  406. package/dist/emails/templates/base.d.ts.map +1 -0
  407. package/dist/emails/templates/base.js +291 -0
  408. package/dist/emails/templates/base.js.map +1 -0
  409. package/dist/emails/templates/email-verification.d.ts +28 -0
  410. package/dist/emails/templates/email-verification.d.ts.map +1 -0
  411. package/dist/emails/templates/email-verification.js +56 -0
  412. package/dist/emails/templates/email-verification.js.map +1 -0
  413. package/dist/emails/templates/index.d.ts +15 -0
  414. package/dist/emails/templates/index.d.ts.map +1 -0
  415. package/dist/emails/templates/index.js +58 -0
  416. package/dist/emails/templates/index.js.map +1 -0
  417. package/dist/emails/templates/order-cancelled.d.ts +30 -0
  418. package/dist/emails/templates/order-cancelled.d.ts.map +1 -0
  419. package/dist/emails/templates/order-cancelled.js +87 -0
  420. package/dist/emails/templates/order-cancelled.js.map +1 -0
  421. package/dist/emails/templates/order-confirmation.d.ts +36 -0
  422. package/dist/emails/templates/order-confirmation.d.ts.map +1 -0
  423. package/dist/emails/templates/order-confirmation.js +161 -0
  424. package/dist/emails/templates/order-confirmation.js.map +1 -0
  425. package/dist/emails/templates/order-delivered.d.ts +31 -0
  426. package/dist/emails/templates/order-delivered.d.ts.map +1 -0
  427. package/dist/emails/templates/order-delivered.js +95 -0
  428. package/dist/emails/templates/order-delivered.js.map +1 -0
  429. package/dist/emails/templates/order-shipped.d.ts +32 -0
  430. package/dist/emails/templates/order-shipped.d.ts.map +1 -0
  431. package/dist/emails/templates/order-shipped.js +87 -0
  432. package/dist/emails/templates/order-shipped.js.map +1 -0
  433. package/dist/emails/templates/password-reset.d.ts +27 -0
  434. package/dist/emails/templates/password-reset.d.ts.map +1 -0
  435. package/dist/emails/templates/password-reset.js +55 -0
  436. package/dist/emails/templates/password-reset.js.map +1 -0
  437. package/dist/emails/templates/refund-processed.d.ts +32 -0
  438. package/dist/emails/templates/refund-processed.d.ts.map +1 -0
  439. package/dist/emails/templates/refund-processed.js +96 -0
  440. package/dist/emails/templates/refund-processed.js.map +1 -0
  441. package/dist/emails/templates/welcome.d.ts +27 -0
  442. package/dist/emails/templates/welcome.d.ts.map +1 -0
  443. package/dist/emails/templates/welcome.js +56 -0
  444. package/dist/emails/templates/welcome.js.map +1 -0
  445. package/dist/emails/types.d.ts +202 -0
  446. package/dist/emails/types.d.ts.map +1 -0
  447. package/dist/emails/types.js +8 -0
  448. package/dist/emails/types.js.map +1 -0
  449. package/dist/emails/utils.d.ts +94 -0
  450. package/dist/emails/utils.d.ts.map +1 -0
  451. package/dist/emails/utils.js +229 -0
  452. package/dist/emails/utils.js.map +1 -0
  453. package/dist/index.d.ts +40 -0
  454. package/dist/index.d.ts.map +1 -0
  455. package/dist/index.js +225 -0
  456. package/dist/index.js.map +1 -0
  457. package/dist/products/api/categories.d.ts +29 -0
  458. package/dist/products/api/categories.d.ts.map +1 -0
  459. package/dist/products/api/categories.js +49 -0
  460. package/dist/products/api/categories.js.map +1 -0
  461. package/dist/products/api/index.d.ts +24 -0
  462. package/dist/products/api/index.d.ts.map +1 -0
  463. package/dist/products/api/index.js +30 -0
  464. package/dist/products/api/index.js.map +1 -0
  465. package/dist/products/api/product.d.ts +36 -0
  466. package/dist/products/api/product.d.ts.map +1 -0
  467. package/dist/products/api/product.js +70 -0
  468. package/dist/products/api/product.js.map +1 -0
  469. package/dist/products/api/products.d.ts +41 -0
  470. package/dist/products/api/products.d.ts.map +1 -0
  471. package/dist/products/api/products.js +102 -0
  472. package/dist/products/api/products.js.map +1 -0
  473. package/dist/products/components/CategoryNav.d.ts +51 -0
  474. package/dist/products/components/CategoryNav.d.ts.map +1 -0
  475. package/dist/products/components/CategoryNav.js +115 -0
  476. package/dist/products/components/CategoryNav.js.map +1 -0
  477. package/dist/products/components/ProductBreadcrumb.d.ts +52 -0
  478. package/dist/products/components/ProductBreadcrumb.d.ts.map +1 -0
  479. package/dist/products/components/ProductBreadcrumb.js +78 -0
  480. package/dist/products/components/ProductBreadcrumb.js.map +1 -0
  481. package/dist/products/components/ProductCard.d.ts +54 -0
  482. package/dist/products/components/ProductCard.d.ts.map +1 -0
  483. package/dist/products/components/ProductCard.js +65 -0
  484. package/dist/products/components/ProductCard.js.map +1 -0
  485. package/dist/products/components/ProductDetails.d.ts +63 -0
  486. package/dist/products/components/ProductDetails.d.ts.map +1 -0
  487. package/dist/products/components/ProductDetails.js +105 -0
  488. package/dist/products/components/ProductDetails.js.map +1 -0
  489. package/dist/products/components/ProductFilters.d.ts +70 -0
  490. package/dist/products/components/ProductFilters.d.ts.map +1 -0
  491. package/dist/products/components/ProductFilters.js +127 -0
  492. package/dist/products/components/ProductFilters.js.map +1 -0
  493. package/dist/products/components/ProductGallery.d.ts +37 -0
  494. package/dist/products/components/ProductGallery.d.ts.map +1 -0
  495. package/dist/products/components/ProductGallery.js +80 -0
  496. package/dist/products/components/ProductGallery.js.map +1 -0
  497. package/dist/products/components/ProductGrid.d.ts +50 -0
  498. package/dist/products/components/ProductGrid.d.ts.map +1 -0
  499. package/dist/products/components/ProductGrid.js +83 -0
  500. package/dist/products/components/ProductGrid.js.map +1 -0
  501. package/dist/products/components/ProductSearch.d.ts +43 -0
  502. package/dist/products/components/ProductSearch.d.ts.map +1 -0
  503. package/dist/products/components/ProductSearch.js +99 -0
  504. package/dist/products/components/ProductSearch.js.map +1 -0
  505. package/dist/products/components/ProductSort.d.ts +43 -0
  506. package/dist/products/components/ProductSort.d.ts.map +1 -0
  507. package/dist/products/components/ProductSort.js +61 -0
  508. package/dist/products/components/ProductSort.js.map +1 -0
  509. package/dist/products/components/VariantSelector.d.ts +43 -0
  510. package/dist/products/components/VariantSelector.d.ts.map +1 -0
  511. package/dist/products/components/VariantSelector.js +147 -0
  512. package/dist/products/components/VariantSelector.js.map +1 -0
  513. package/dist/products/components/index.d.ts +26 -0
  514. package/dist/products/components/index.d.ts.map +1 -0
  515. package/dist/products/components/index.js +32 -0
  516. package/dist/products/components/index.js.map +1 -0
  517. package/dist/products/hooks/index.d.ts +14 -0
  518. package/dist/products/hooks/index.d.ts.map +1 -0
  519. package/dist/products/hooks/index.js +17 -0
  520. package/dist/products/hooks/index.js.map +1 -0
  521. package/dist/products/hooks/useCategories.d.ts +56 -0
  522. package/dist/products/hooks/useCategories.d.ts.map +1 -0
  523. package/dist/products/hooks/useCategories.js +126 -0
  524. package/dist/products/hooks/useCategories.js.map +1 -0
  525. package/dist/products/hooks/useProduct.d.ts +44 -0
  526. package/dist/products/hooks/useProduct.d.ts.map +1 -0
  527. package/dist/products/hooks/useProduct.js +86 -0
  528. package/dist/products/hooks/useProduct.js.map +1 -0
  529. package/dist/products/hooks/useProductAttributes.d.ts +59 -0
  530. package/dist/products/hooks/useProductAttributes.d.ts.map +1 -0
  531. package/dist/products/hooks/useProductAttributes.js +148 -0
  532. package/dist/products/hooks/useProductAttributes.js.map +1 -0
  533. package/dist/products/hooks/useProducts.d.ts +67 -0
  534. package/dist/products/hooks/useProducts.d.ts.map +1 -0
  535. package/dist/products/hooks/useProducts.js +132 -0
  536. package/dist/products/hooks/useProducts.js.map +1 -0
  537. package/dist/products/index.d.ts +94 -0
  538. package/dist/products/index.d.ts.map +1 -0
  539. package/dist/products/index.js +123 -0
  540. package/dist/products/index.js.map +1 -0
  541. package/dist/theme/ThemeProvider.d.ts +70 -0
  542. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  543. package/dist/theme/ThemeProvider.js +77 -0
  544. package/dist/theme/ThemeProvider.js.map +1 -0
  545. package/dist/theme/colors.d.ts +148 -0
  546. package/dist/theme/colors.d.ts.map +1 -0
  547. package/dist/theme/colors.js +219 -0
  548. package/dist/theme/colors.js.map +1 -0
  549. package/dist/theme/defaults.d.ts +212 -0
  550. package/dist/theme/defaults.d.ts.map +1 -0
  551. package/dist/theme/defaults.js +278 -0
  552. package/dist/theme/defaults.js.map +1 -0
  553. package/dist/theme/fonts.d.ts +59 -0
  554. package/dist/theme/fonts.d.ts.map +1 -0
  555. package/dist/theme/fonts.js +202 -0
  556. package/dist/theme/fonts.js.map +1 -0
  557. package/dist/theme/generator.d.ts +50 -0
  558. package/dist/theme/generator.d.ts.map +1 -0
  559. package/dist/theme/generator.js +322 -0
  560. package/dist/theme/generator.js.map +1 -0
  561. package/dist/theme/hooks.d.ts +110 -0
  562. package/dist/theme/hooks.d.ts.map +1 -0
  563. package/dist/theme/hooks.js +106 -0
  564. package/dist/theme/hooks.js.map +1 -0
  565. package/dist/theme/index.d.ts +37 -0
  566. package/dist/theme/index.d.ts.map +1 -0
  567. package/dist/theme/index.js +85 -0
  568. package/dist/theme/index.js.map +1 -0
  569. package/package.json +7 -2
@@ -0,0 +1,730 @@
1
+ "use strict";
2
+ /**
3
+ * @rovela/sdk/core/db/queries
4
+ *
5
+ * Type-safe query helpers with automatic tenant isolation
6
+ * All queries are scoped to the current tenant
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.findProducts = findProducts;
43
+ exports.findProductBySlug = findProductBySlug;
44
+ exports.findProductById = findProductById;
45
+ exports.findProductVariants = findProductVariants;
46
+ exports.countProducts = countProducts;
47
+ exports.findCategories = findCategories;
48
+ exports.findCategoryBySlug = findCategoryBySlug;
49
+ exports.findOrders = findOrders;
50
+ exports.findOrderById = findOrderById;
51
+ exports.findOrderItems = findOrderItems;
52
+ exports.findCustomerByEmail = findCustomerByEmail;
53
+ exports.findCustomerById = findCustomerById;
54
+ exports.findCustomers = findCustomers;
55
+ exports.findAdminByEmail = findAdminByEmail;
56
+ exports.getStoreStats = getStoreStats;
57
+ exports.getLowStockProducts = getLowStockProducts;
58
+ exports.getRecentOrders = getRecentOrders;
59
+ exports.createOrder = createOrder;
60
+ exports.createOrderItems = createOrderItems;
61
+ exports.updateOrderStatus = updateOrderStatus;
62
+ exports.findOrderByPaymentIntent = findOrderByPaymentIntent;
63
+ exports.createProduct = createProduct;
64
+ exports.updateProduct = updateProduct;
65
+ exports.deleteProduct = deleteProduct;
66
+ exports.hardDeleteProduct = hardDeleteProduct;
67
+ exports.createProductVariant = createProductVariant;
68
+ exports.updateProductVariant = updateProductVariant;
69
+ exports.deleteProductVariant = deleteProductVariant;
70
+ exports.updateVariantInventory = updateVariantInventory;
71
+ exports.findVariantById = findVariantById;
72
+ exports.findCategoryById = findCategoryById;
73
+ exports.createCategory = createCategory;
74
+ exports.updateCategory = updateCategory;
75
+ exports.deleteCategory = deleteCategory;
76
+ exports.countCategories = countCategories;
77
+ exports.countCustomers = countCustomers;
78
+ exports.findCustomerOrders = findCustomerOrders;
79
+ exports.countOrders = countOrders;
80
+ exports.getRevenueByPeriod = getRevenueByPeriod;
81
+ exports.getOrdersByStatus = getOrdersByStatus;
82
+ const drizzle_orm_1 = require("drizzle-orm");
83
+ const client_1 = require("./client");
84
+ const schema = __importStar(require("./schema"));
85
+ /**
86
+ * Find products with filtering, sorting, and pagination
87
+ * Automatically scoped to current tenant
88
+ */
89
+ async function findProducts(options = {}) {
90
+ const db = (0, client_1.getDb)();
91
+ const tenantId = (0, client_1.getTenantId)();
92
+ const conditions = [(0, drizzle_orm_1.eq)(schema.products.tenantId, tenantId)];
93
+ if (options.categoryId) {
94
+ conditions.push((0, drizzle_orm_1.eq)(schema.products.categoryId, options.categoryId));
95
+ }
96
+ if (options.status) {
97
+ conditions.push((0, drizzle_orm_1.eq)(schema.products.status, options.status));
98
+ }
99
+ if (options.search) {
100
+ conditions.push((0, drizzle_orm_1.like)(schema.products.name, `%${options.search}%`));
101
+ }
102
+ // Determine sort order
103
+ let orderBy;
104
+ switch (options.sort) {
105
+ case 'price-asc':
106
+ orderBy = (0, drizzle_orm_1.asc)(schema.products.price);
107
+ break;
108
+ case 'price-desc':
109
+ orderBy = (0, drizzle_orm_1.desc)(schema.products.price);
110
+ break;
111
+ case 'name':
112
+ orderBy = (0, drizzle_orm_1.asc)(schema.products.name);
113
+ break;
114
+ case 'newest':
115
+ default:
116
+ orderBy = (0, drizzle_orm_1.desc)(schema.products.createdAt);
117
+ }
118
+ const query = db
119
+ .select()
120
+ .from(schema.products)
121
+ .where((0, drizzle_orm_1.and)(...conditions))
122
+ .orderBy(orderBy);
123
+ if (options.limit) {
124
+ query.limit(options.limit);
125
+ }
126
+ if (options.offset) {
127
+ query.offset(options.offset);
128
+ }
129
+ return query;
130
+ }
131
+ /**
132
+ * Find a single product by slug
133
+ */
134
+ async function findProductBySlug(slug) {
135
+ const db = (0, client_1.getDb)();
136
+ const tenantId = (0, client_1.getTenantId)();
137
+ const result = await db
138
+ .select()
139
+ .from(schema.products)
140
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.products.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.products.slug, slug)))
141
+ .limit(1);
142
+ return result[0] || null;
143
+ }
144
+ /**
145
+ * Find a single product by ID
146
+ */
147
+ async function findProductById(id) {
148
+ const db = (0, client_1.getDb)();
149
+ const tenantId = (0, client_1.getTenantId)();
150
+ const result = await db
151
+ .select()
152
+ .from(schema.products)
153
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.products.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.products.id, id)))
154
+ .limit(1);
155
+ return result[0] || null;
156
+ }
157
+ /**
158
+ * Get product variants for a product
159
+ */
160
+ async function findProductVariants(productId) {
161
+ const db = (0, client_1.getDb)();
162
+ return db
163
+ .select()
164
+ .from(schema.productVariants)
165
+ .where((0, drizzle_orm_1.eq)(schema.productVariants.productId, productId));
166
+ }
167
+ /**
168
+ * Count total products matching filters
169
+ */
170
+ async function countProducts(options = {}) {
171
+ const db = (0, client_1.getDb)();
172
+ const tenantId = (0, client_1.getTenantId)();
173
+ const conditions = [(0, drizzle_orm_1.eq)(schema.products.tenantId, tenantId)];
174
+ if (options.categoryId) {
175
+ conditions.push((0, drizzle_orm_1.eq)(schema.products.categoryId, options.categoryId));
176
+ }
177
+ if (options.status) {
178
+ conditions.push((0, drizzle_orm_1.eq)(schema.products.status, options.status));
179
+ }
180
+ if (options.search) {
181
+ conditions.push((0, drizzle_orm_1.like)(schema.products.name, `%${options.search}%`));
182
+ }
183
+ const result = await db
184
+ .select({ count: (0, drizzle_orm_1.sql) `count(*)` })
185
+ .from(schema.products)
186
+ .where((0, drizzle_orm_1.and)(...conditions));
187
+ return Number(result[0]?.count || 0);
188
+ }
189
+ // =============================================================================
190
+ // Categories
191
+ // =============================================================================
192
+ /**
193
+ * Find all categories for the current tenant
194
+ */
195
+ async function findCategories() {
196
+ const db = (0, client_1.getDb)();
197
+ const tenantId = (0, client_1.getTenantId)();
198
+ return db
199
+ .select()
200
+ .from(schema.categories)
201
+ .where((0, drizzle_orm_1.eq)(schema.categories.tenantId, tenantId))
202
+ .orderBy((0, drizzle_orm_1.asc)(schema.categories.order), (0, drizzle_orm_1.asc)(schema.categories.name));
203
+ }
204
+ /**
205
+ * Find a category by slug
206
+ */
207
+ async function findCategoryBySlug(slug) {
208
+ const db = (0, client_1.getDb)();
209
+ const tenantId = (0, client_1.getTenantId)();
210
+ const result = await db
211
+ .select()
212
+ .from(schema.categories)
213
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.categories.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.categories.slug, slug)))
214
+ .limit(1);
215
+ return result[0] || null;
216
+ }
217
+ /**
218
+ * Find orders with filtering and pagination
219
+ */
220
+ async function findOrders(options = {}) {
221
+ const db = (0, client_1.getDb)();
222
+ const tenantId = (0, client_1.getTenantId)();
223
+ const conditions = [(0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId)];
224
+ if (options.status) {
225
+ conditions.push((0, drizzle_orm_1.eq)(schema.orders.status, options.status));
226
+ }
227
+ if (options.customerId) {
228
+ conditions.push((0, drizzle_orm_1.eq)(schema.orders.customerId, options.customerId));
229
+ }
230
+ const query = db
231
+ .select()
232
+ .from(schema.orders)
233
+ .where((0, drizzle_orm_1.and)(...conditions))
234
+ .orderBy((0, drizzle_orm_1.desc)(schema.orders.createdAt));
235
+ if (options.limit) {
236
+ query.limit(options.limit);
237
+ }
238
+ if (options.offset) {
239
+ query.offset(options.offset);
240
+ }
241
+ return query;
242
+ }
243
+ /**
244
+ * Find order by ID with items
245
+ */
246
+ async function findOrderById(id) {
247
+ const db = (0, client_1.getDb)();
248
+ const tenantId = (0, client_1.getTenantId)();
249
+ const order = await db
250
+ .select()
251
+ .from(schema.orders)
252
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.orders.id, id)))
253
+ .limit(1);
254
+ if (!order[0])
255
+ return null;
256
+ const items = await db
257
+ .select()
258
+ .from(schema.orderItems)
259
+ .where((0, drizzle_orm_1.eq)(schema.orderItems.orderId, id));
260
+ return {
261
+ ...order[0],
262
+ items,
263
+ };
264
+ }
265
+ /**
266
+ * Get order items for an order
267
+ */
268
+ async function findOrderItems(orderId) {
269
+ const db = (0, client_1.getDb)();
270
+ return db
271
+ .select()
272
+ .from(schema.orderItems)
273
+ .where((0, drizzle_orm_1.eq)(schema.orderItems.orderId, orderId));
274
+ }
275
+ // =============================================================================
276
+ // Customers
277
+ // =============================================================================
278
+ /**
279
+ * Find customer by email
280
+ */
281
+ async function findCustomerByEmail(email) {
282
+ const db = (0, client_1.getDb)();
283
+ const tenantId = (0, client_1.getTenantId)();
284
+ const result = await db
285
+ .select()
286
+ .from(schema.customers)
287
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.customers.email, email.toLowerCase())))
288
+ .limit(1);
289
+ return result[0] || null;
290
+ }
291
+ /**
292
+ * Find customer by ID
293
+ */
294
+ async function findCustomerById(id) {
295
+ const db = (0, client_1.getDb)();
296
+ const tenantId = (0, client_1.getTenantId)();
297
+ const result = await db
298
+ .select()
299
+ .from(schema.customers)
300
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.customers.id, id)))
301
+ .limit(1);
302
+ return result[0] || null;
303
+ }
304
+ /**
305
+ * Find all customers with pagination
306
+ */
307
+ async function findCustomers(options = {}) {
308
+ const db = (0, client_1.getDb)();
309
+ const tenantId = (0, client_1.getTenantId)();
310
+ const conditions = [(0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId)];
311
+ if (options.search) {
312
+ conditions.push((0, drizzle_orm_1.like)(schema.customers.email, `%${options.search}%`));
313
+ }
314
+ const query = db
315
+ .select()
316
+ .from(schema.customers)
317
+ .where((0, drizzle_orm_1.and)(...conditions))
318
+ .orderBy((0, drizzle_orm_1.desc)(schema.customers.createdAt));
319
+ if (options.limit) {
320
+ query.limit(options.limit);
321
+ }
322
+ if (options.offset) {
323
+ query.offset(options.offset);
324
+ }
325
+ return query;
326
+ }
327
+ // =============================================================================
328
+ // Store Admins
329
+ // =============================================================================
330
+ /**
331
+ * Find admin by email
332
+ */
333
+ async function findAdminByEmail(email) {
334
+ const db = (0, client_1.getDb)();
335
+ const tenantId = (0, client_1.getTenantId)();
336
+ const result = await db
337
+ .select()
338
+ .from(schema.storeAdmins)
339
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.storeAdmins.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.storeAdmins.email, email.toLowerCase())))
340
+ .limit(1);
341
+ return result[0] || null;
342
+ }
343
+ // =============================================================================
344
+ // Admin Stats
345
+ // =============================================================================
346
+ /**
347
+ * Get store statistics for admin dashboard
348
+ */
349
+ async function getStoreStats() {
350
+ const db = (0, client_1.getDb)();
351
+ const tenantId = (0, client_1.getTenantId)();
352
+ const [productCount, orderCount, customerCount, revenue] = await Promise.all([
353
+ // Total products
354
+ db
355
+ .select({ count: (0, drizzle_orm_1.sql) `count(*)` })
356
+ .from(schema.products)
357
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.products.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.products.status, 'active'))),
358
+ // Total orders
359
+ db
360
+ .select({ count: (0, drizzle_orm_1.sql) `count(*)` })
361
+ .from(schema.orders)
362
+ .where((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId)),
363
+ // Total customers
364
+ db
365
+ .select({ count: (0, drizzle_orm_1.sql) `count(*)` })
366
+ .from(schema.customers)
367
+ .where((0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId)),
368
+ // Total revenue (paid orders only)
369
+ db
370
+ .select({ total: (0, drizzle_orm_1.sql) `COALESCE(SUM(total), 0)` })
371
+ .from(schema.orders)
372
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId), (0, drizzle_orm_1.inArray)(schema.orders.status, ['paid', 'shipped', 'delivered']))),
373
+ ]);
374
+ return {
375
+ products: Number(productCount[0]?.count || 0),
376
+ orders: Number(orderCount[0]?.count || 0),
377
+ customers: Number(customerCount[0]?.count || 0),
378
+ revenue: Number(revenue[0]?.total || 0),
379
+ };
380
+ }
381
+ /**
382
+ * Get low stock products (inventory < threshold)
383
+ */
384
+ async function getLowStockProducts(threshold = 10) {
385
+ const db = (0, client_1.getDb)();
386
+ const tenantId = (0, client_1.getTenantId)();
387
+ // Get products with variants that have low stock
388
+ const lowStockVariants = await db
389
+ .select({
390
+ product: schema.products,
391
+ variant: schema.productVariants,
392
+ })
393
+ .from(schema.productVariants)
394
+ .innerJoin(schema.products, (0, drizzle_orm_1.eq)(schema.productVariants.productId, schema.products.id))
395
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.products.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.products.status, 'active'), (0, drizzle_orm_1.sql) `${schema.productVariants.inventory} < ${threshold}`))
396
+ .orderBy((0, drizzle_orm_1.asc)(schema.productVariants.inventory));
397
+ return lowStockVariants;
398
+ }
399
+ /**
400
+ * Get recent orders
401
+ */
402
+ async function getRecentOrders(limit = 5) {
403
+ const db = (0, client_1.getDb)();
404
+ const tenantId = (0, client_1.getTenantId)();
405
+ return db
406
+ .select()
407
+ .from(schema.orders)
408
+ .where((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId))
409
+ .orderBy((0, drizzle_orm_1.desc)(schema.orders.createdAt))
410
+ .limit(limit);
411
+ }
412
+ // =============================================================================
413
+ // Order Mutations (for checkout module)
414
+ // =============================================================================
415
+ /**
416
+ * Create a new order
417
+ */
418
+ async function createOrder(data) {
419
+ const db = (0, client_1.getDb)();
420
+ const tenantId = (0, client_1.getTenantId)();
421
+ const [order] = await db
422
+ .insert(schema.orders)
423
+ .values({ ...data, tenantId })
424
+ .returning();
425
+ return order;
426
+ }
427
+ /**
428
+ * Create order items for an order
429
+ */
430
+ async function createOrderItems(items) {
431
+ const db = (0, client_1.getDb)();
432
+ if (items.length === 0) {
433
+ return [];
434
+ }
435
+ return db.insert(schema.orderItems).values(items).returning();
436
+ }
437
+ /**
438
+ * Update order status
439
+ */
440
+ async function updateOrderStatus(orderId, status) {
441
+ const db = (0, client_1.getDb)();
442
+ const tenantId = (0, client_1.getTenantId)();
443
+ const [order] = await db
444
+ .update(schema.orders)
445
+ .set({ status, updatedAt: new Date() })
446
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.orders.id, orderId)))
447
+ .returning();
448
+ return order || null;
449
+ }
450
+ /**
451
+ * Find order by Stripe Payment Intent ID
452
+ * Used for idempotency in webhook handling
453
+ */
454
+ async function findOrderByPaymentIntent(paymentIntentId) {
455
+ const db = (0, client_1.getDb)();
456
+ const tenantId = (0, client_1.getTenantId)();
457
+ const [order] = await db
458
+ .select()
459
+ .from(schema.orders)
460
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.orders.stripePaymentIntentId, paymentIntentId)))
461
+ .limit(1);
462
+ return order || null;
463
+ }
464
+ // =============================================================================
465
+ // Product CRUD (for admin module)
466
+ // =============================================================================
467
+ /**
468
+ * Create a new product
469
+ */
470
+ async function createProduct(data) {
471
+ const db = (0, client_1.getDb)();
472
+ const tenantId = (0, client_1.getTenantId)();
473
+ const [product] = await db
474
+ .insert(schema.products)
475
+ .values({ ...data, tenantId })
476
+ .returning();
477
+ return product;
478
+ }
479
+ /**
480
+ * Update a product by ID
481
+ */
482
+ async function updateProduct(id, data) {
483
+ const db = (0, client_1.getDb)();
484
+ const tenantId = (0, client_1.getTenantId)();
485
+ const [product] = await db
486
+ .update(schema.products)
487
+ .set({ ...data, updatedAt: new Date() })
488
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.products.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.products.id, id)))
489
+ .returning();
490
+ return product || null;
491
+ }
492
+ /**
493
+ * Archive a product by ID (soft delete).
494
+ * Sets status to 'archived' instead of deleting to preserve order history.
495
+ * Use hardDeleteProduct() for permanent deletion if needed.
496
+ */
497
+ async function deleteProduct(id) {
498
+ const result = await updateProduct(id, { status: 'archived' });
499
+ return result !== null;
500
+ }
501
+ /**
502
+ * Permanently delete a product by ID.
503
+ * WARNING: This will fail if there are order_items referencing this product.
504
+ * Use deleteProduct() (soft delete) for most cases.
505
+ */
506
+ async function hardDeleteProduct(id) {
507
+ const db = (0, client_1.getDb)();
508
+ const tenantId = (0, client_1.getTenantId)();
509
+ const result = await db
510
+ .delete(schema.products)
511
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.products.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.products.id, id)))
512
+ .returning({ id: schema.products.id });
513
+ return result.length > 0;
514
+ }
515
+ // =============================================================================
516
+ // Product Variant CRUD (for admin module)
517
+ // =============================================================================
518
+ /**
519
+ * Create a new product variant
520
+ */
521
+ async function createProductVariant(data) {
522
+ const db = (0, client_1.getDb)();
523
+ const [variant] = await db
524
+ .insert(schema.productVariants)
525
+ .values(data)
526
+ .returning();
527
+ return variant;
528
+ }
529
+ /**
530
+ * Update a product variant by ID
531
+ */
532
+ async function updateProductVariant(id, data) {
533
+ const db = (0, client_1.getDb)();
534
+ const [variant] = await db
535
+ .update(schema.productVariants)
536
+ .set(data)
537
+ .where((0, drizzle_orm_1.eq)(schema.productVariants.id, id))
538
+ .returning();
539
+ return variant || null;
540
+ }
541
+ /**
542
+ * Delete a product variant by ID
543
+ */
544
+ async function deleteProductVariant(id) {
545
+ const db = (0, client_1.getDb)();
546
+ const result = await db
547
+ .delete(schema.productVariants)
548
+ .where((0, drizzle_orm_1.eq)(schema.productVariants.id, id))
549
+ .returning({ id: schema.productVariants.id });
550
+ return result.length > 0;
551
+ }
552
+ /**
553
+ * Update variant inventory
554
+ */
555
+ async function updateVariantInventory(id, inventory) {
556
+ const db = (0, client_1.getDb)();
557
+ await db
558
+ .update(schema.productVariants)
559
+ .set({ inventory })
560
+ .where((0, drizzle_orm_1.eq)(schema.productVariants.id, id));
561
+ }
562
+ /**
563
+ * Find a variant by ID
564
+ */
565
+ async function findVariantById(id) {
566
+ const db = (0, client_1.getDb)();
567
+ const [variant] = await db
568
+ .select()
569
+ .from(schema.productVariants)
570
+ .where((0, drizzle_orm_1.eq)(schema.productVariants.id, id))
571
+ .limit(1);
572
+ return variant || null;
573
+ }
574
+ // =============================================================================
575
+ // Category CRUD (for admin module)
576
+ // =============================================================================
577
+ /**
578
+ * Find a category by ID
579
+ */
580
+ async function findCategoryById(id) {
581
+ const db = (0, client_1.getDb)();
582
+ const tenantId = (0, client_1.getTenantId)();
583
+ const [category] = await db
584
+ .select()
585
+ .from(schema.categories)
586
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.categories.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.categories.id, id)))
587
+ .limit(1);
588
+ return category || null;
589
+ }
590
+ /**
591
+ * Create a new category
592
+ */
593
+ async function createCategory(data) {
594
+ const db = (0, client_1.getDb)();
595
+ const tenantId = (0, client_1.getTenantId)();
596
+ const [category] = await db
597
+ .insert(schema.categories)
598
+ .values({ ...data, tenantId })
599
+ .returning();
600
+ return category;
601
+ }
602
+ /**
603
+ * Update a category by ID
604
+ */
605
+ async function updateCategory(id, data) {
606
+ const db = (0, client_1.getDb)();
607
+ const tenantId = (0, client_1.getTenantId)();
608
+ const [category] = await db
609
+ .update(schema.categories)
610
+ .set(data)
611
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.categories.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.categories.id, id)))
612
+ .returning();
613
+ return category || null;
614
+ }
615
+ /**
616
+ * Delete a category by ID
617
+ */
618
+ async function deleteCategory(id) {
619
+ const db = (0, client_1.getDb)();
620
+ const tenantId = (0, client_1.getTenantId)();
621
+ const result = await db
622
+ .delete(schema.categories)
623
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.categories.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.categories.id, id)))
624
+ .returning({ id: schema.categories.id });
625
+ return result.length > 0;
626
+ }
627
+ /**
628
+ * Count categories for the current tenant
629
+ */
630
+ async function countCategories() {
631
+ const db = (0, client_1.getDb)();
632
+ const tenantId = (0, client_1.getTenantId)();
633
+ const result = await db
634
+ .select({ count: (0, drizzle_orm_1.sql) `count(*)` })
635
+ .from(schema.categories)
636
+ .where((0, drizzle_orm_1.eq)(schema.categories.tenantId, tenantId));
637
+ return Number(result[0]?.count || 0);
638
+ }
639
+ // =============================================================================
640
+ // Customer Queries (for admin module)
641
+ // =============================================================================
642
+ /**
643
+ * Count customers for the current tenant with optional search
644
+ */
645
+ async function countCustomers(options = {}) {
646
+ const db = (0, client_1.getDb)();
647
+ const tenantId = (0, client_1.getTenantId)();
648
+ const conditions = [(0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId)];
649
+ if (options.search) {
650
+ conditions.push((0, drizzle_orm_1.like)(schema.customers.email, `%${options.search}%`));
651
+ }
652
+ const result = await db
653
+ .select({ count: (0, drizzle_orm_1.sql) `count(*)` })
654
+ .from(schema.customers)
655
+ .where((0, drizzle_orm_1.and)(...conditions));
656
+ return Number(result[0]?.count || 0);
657
+ }
658
+ /**
659
+ * Find orders for a specific customer
660
+ */
661
+ async function findCustomerOrders(customerId) {
662
+ const db = (0, client_1.getDb)();
663
+ const tenantId = (0, client_1.getTenantId)();
664
+ return db
665
+ .select()
666
+ .from(schema.orders)
667
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.orders.customerId, customerId)))
668
+ .orderBy((0, drizzle_orm_1.desc)(schema.orders.createdAt));
669
+ }
670
+ // =============================================================================
671
+ // Order Queries (for admin module)
672
+ // =============================================================================
673
+ /**
674
+ * Count orders with optional status filter
675
+ */
676
+ async function countOrders(options = {}) {
677
+ const db = (0, client_1.getDb)();
678
+ const tenantId = (0, client_1.getTenantId)();
679
+ const conditions = [(0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId)];
680
+ if (options.status) {
681
+ conditions.push((0, drizzle_orm_1.eq)(schema.orders.status, options.status));
682
+ }
683
+ const result = await db
684
+ .select({ count: (0, drizzle_orm_1.sql) `count(*)` })
685
+ .from(schema.orders)
686
+ .where((0, drizzle_orm_1.and)(...conditions));
687
+ return Number(result[0]?.count || 0);
688
+ }
689
+ /**
690
+ * Get revenue by period (for analytics)
691
+ */
692
+ async function getRevenueByPeriod(days) {
693
+ const db = (0, client_1.getDb)();
694
+ const tenantId = (0, client_1.getTenantId)();
695
+ const startDate = new Date();
696
+ startDate.setDate(startDate.getDate() - days);
697
+ const result = await db
698
+ .select({
699
+ date: (0, drizzle_orm_1.sql) `DATE(${schema.orders.createdAt})`,
700
+ revenue: (0, drizzle_orm_1.sql) `COALESCE(SUM(${schema.orders.total}), 0)`,
701
+ })
702
+ .from(schema.orders)
703
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId), (0, drizzle_orm_1.inArray)(schema.orders.status, ['paid', 'shipped', 'delivered']), (0, drizzle_orm_1.sql) `${schema.orders.createdAt} >= ${startDate.toISOString()}`))
704
+ .groupBy((0, drizzle_orm_1.sql) `DATE(${schema.orders.createdAt})`)
705
+ .orderBy((0, drizzle_orm_1.sql) `DATE(${schema.orders.createdAt})`);
706
+ return result.map((r) => ({
707
+ date: String(r.date),
708
+ revenue: Number(r.revenue),
709
+ }));
710
+ }
711
+ /**
712
+ * Get orders by status count (for analytics)
713
+ */
714
+ async function getOrdersByStatus() {
715
+ const db = (0, client_1.getDb)();
716
+ const tenantId = (0, client_1.getTenantId)();
717
+ const result = await db
718
+ .select({
719
+ status: schema.orders.status,
720
+ count: (0, drizzle_orm_1.sql) `count(*)`,
721
+ })
722
+ .from(schema.orders)
723
+ .where((0, drizzle_orm_1.eq)(schema.orders.tenantId, tenantId))
724
+ .groupBy(schema.orders.status);
725
+ return result.map((r) => ({
726
+ status: r.status,
727
+ count: Number(r.count),
728
+ }));
729
+ }
730
+ //# sourceMappingURL=queries.js.map