@rovela-ai/sdk 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +87 -0
  356. package/dist/core/db/index.js.map +1 -0
  357. package/dist/core/db/queries.d.ts +658 -0
  358. package/dist/core/db/queries.d.ts.map +1 -0
  359. package/dist/core/db/queries.js +735 -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 +68 -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 +1 -1
@@ -0,0 +1,309 @@
1
+ "use strict";
2
+ /**
3
+ * @rovela/sdk/auth/server/customer-service
4
+ *
5
+ * Customer CRUD operations with tenant isolation.
6
+ * All operations 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.createCustomer = createCustomer;
43
+ exports.authenticateCustomer = authenticateCustomer;
44
+ exports.findCustomerForSession = findCustomerForSession;
45
+ exports.findCustomerByEmail = findCustomerByEmail;
46
+ exports.findCustomerById = findCustomerById;
47
+ exports.updateCustomer = updateCustomer;
48
+ exports.updateCustomerPassword = updateCustomerPassword;
49
+ exports.markEmailVerified = markEmailVerified;
50
+ exports.emailExists = emailExists;
51
+ const drizzle_orm_1 = require("drizzle-orm");
52
+ const client_1 = require("../../core/db/client");
53
+ const schema = __importStar(require("../../core/db/schema"));
54
+ const password_1 = require("./password");
55
+ // =============================================================================
56
+ // Customer CRUD
57
+ // =============================================================================
58
+ /**
59
+ * Create a new customer account.
60
+ * Password is hashed before storage.
61
+ * Returns customer with null emailVerified (needs verification).
62
+ *
63
+ * @param email - Customer email (will be lowercased)
64
+ * @param password - Plain text password (min 8 chars)
65
+ * @param name - Optional customer name
66
+ * @returns Created customer
67
+ * @throws Error if email already exists
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * const { customer } = await createCustomer(
72
+ * 'customer@example.com',
73
+ * 'securePassword123',
74
+ * 'John Doe'
75
+ * )
76
+ * ```
77
+ */
78
+ async function createCustomer(email, password, name) {
79
+ const db = (0, client_1.getDb)();
80
+ const tenantId = (0, client_1.getTenantId)();
81
+ // Hash password
82
+ const passwordHash = await (0, password_1.hashPassword)(password);
83
+ try {
84
+ const [customer] = await db
85
+ .insert(schema.customers)
86
+ .values({
87
+ tenantId,
88
+ email: email.toLowerCase().trim(),
89
+ name: name?.trim() || null,
90
+ passwordHash,
91
+ emailVerified: null, // Not verified initially
92
+ })
93
+ .returning();
94
+ return { customer };
95
+ }
96
+ catch (error) {
97
+ // Check for unique constraint violation
98
+ const err = error;
99
+ if (err.code === '23505' || err.cause?.code === '23505') {
100
+ throw new Error('An account with this email already exists');
101
+ }
102
+ throw error;
103
+ }
104
+ }
105
+ /**
106
+ * Authenticate a customer by email and password.
107
+ * Checks email verification status.
108
+ *
109
+ * @param email - Customer email
110
+ * @param password - Plain text password
111
+ * @param requireVerification - Whether to require email verification (default: true)
112
+ * @returns Authentication result
113
+ *
114
+ * @example
115
+ * ```typescript
116
+ * const result = await authenticateCustomer('customer@example.com', 'password123')
117
+ * if (result.success) {
118
+ * console.log('Authenticated:', result.customer.email)
119
+ * } else {
120
+ * console.log('Failed:', result.error)
121
+ * }
122
+ * ```
123
+ */
124
+ async function authenticateCustomer(email, password, requireVerification = true) {
125
+ const db = (0, client_1.getDb)();
126
+ const tenantId = (0, client_1.getTenantId)();
127
+ // Find customer by email
128
+ const [customer] = await db
129
+ .select()
130
+ .from(schema.customers)
131
+ .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().trim())))
132
+ .limit(1);
133
+ if (!customer) {
134
+ return {
135
+ success: false,
136
+ error: 'Invalid email or password',
137
+ code: 'INVALID_CREDENTIALS',
138
+ };
139
+ }
140
+ // Verify password
141
+ const isValidPassword = await (0, password_1.verifyPassword)(password, customer.passwordHash);
142
+ if (!isValidPassword) {
143
+ return {
144
+ success: false,
145
+ error: 'Invalid email or password',
146
+ code: 'INVALID_CREDENTIALS',
147
+ };
148
+ }
149
+ // Check email verification
150
+ if (requireVerification && !customer.emailVerified) {
151
+ return {
152
+ success: false,
153
+ error: 'Please verify your email before signing in',
154
+ code: 'EMAIL_NOT_VERIFIED',
155
+ };
156
+ }
157
+ return { success: true, customer };
158
+ }
159
+ /**
160
+ * Get customer data for session (excludes sensitive fields).
161
+ *
162
+ * @param customerId - Customer UUID
163
+ * @returns Customer session data or null if not found
164
+ *
165
+ * @example
166
+ * ```typescript
167
+ * const session = await findCustomerForSession(customerId)
168
+ * if (session) {
169
+ * console.log('Customer:', session.email)
170
+ * }
171
+ * ```
172
+ */
173
+ async function findCustomerForSession(customerId) {
174
+ const db = (0, client_1.getDb)();
175
+ const tenantId = (0, client_1.getTenantId)();
176
+ const [customer] = await db
177
+ .select({
178
+ id: schema.customers.id,
179
+ email: schema.customers.email,
180
+ name: schema.customers.name,
181
+ emailVerified: schema.customers.emailVerified,
182
+ })
183
+ .from(schema.customers)
184
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.customers.id, customerId)))
185
+ .limit(1);
186
+ if (!customer) {
187
+ return null;
188
+ }
189
+ return {
190
+ id: customer.id,
191
+ email: customer.email,
192
+ name: customer.name,
193
+ emailVerified: !!customer.emailVerified,
194
+ };
195
+ }
196
+ /**
197
+ * Find a customer by email.
198
+ *
199
+ * @param email - Customer email
200
+ * @returns Customer or null if not found
201
+ */
202
+ async function findCustomerByEmail(email) {
203
+ const db = (0, client_1.getDb)();
204
+ const tenantId = (0, client_1.getTenantId)();
205
+ const [customer] = await db
206
+ .select()
207
+ .from(schema.customers)
208
+ .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().trim())))
209
+ .limit(1);
210
+ return customer || null;
211
+ }
212
+ /**
213
+ * Find a customer by ID.
214
+ *
215
+ * @param customerId - Customer UUID
216
+ * @returns Customer or null if not found
217
+ */
218
+ async function findCustomerById(customerId) {
219
+ const db = (0, client_1.getDb)();
220
+ const tenantId = (0, client_1.getTenantId)();
221
+ const [customer] = await db
222
+ .select()
223
+ .from(schema.customers)
224
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.customers.id, customerId)))
225
+ .limit(1);
226
+ return customer || null;
227
+ }
228
+ /**
229
+ * Update customer profile information.
230
+ *
231
+ * @param customerId - Customer UUID
232
+ * @param data - Fields to update
233
+ * @returns Updated customer
234
+ *
235
+ * @example
236
+ * ```typescript
237
+ * const updated = await updateCustomer(customerId, { name: 'Jane Doe' })
238
+ * ```
239
+ */
240
+ async function updateCustomer(customerId, data) {
241
+ const db = (0, client_1.getDb)();
242
+ const tenantId = (0, client_1.getTenantId)();
243
+ const updateData = {};
244
+ if (data.name !== undefined) {
245
+ updateData.name = data.name?.trim() || null;
246
+ }
247
+ if (data.email !== undefined) {
248
+ updateData.email = data.email.toLowerCase().trim();
249
+ }
250
+ if (Object.keys(updateData).length === 0) {
251
+ // Nothing to update, return current customer
252
+ return findCustomerById(customerId);
253
+ }
254
+ const [customer] = await db
255
+ .update(schema.customers)
256
+ .set(updateData)
257
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.customers.id, customerId)))
258
+ .returning();
259
+ return customer || null;
260
+ }
261
+ /**
262
+ * Update customer password.
263
+ *
264
+ * @param customerId - Customer UUID
265
+ * @param newPassword - New plain text password
266
+ *
267
+ * @example
268
+ * ```typescript
269
+ * await updateCustomerPassword(customerId, 'newSecurePassword123')
270
+ * ```
271
+ */
272
+ async function updateCustomerPassword(customerId, newPassword) {
273
+ const db = (0, client_1.getDb)();
274
+ const tenantId = (0, client_1.getTenantId)();
275
+ const passwordHash = await (0, password_1.hashPassword)(newPassword);
276
+ await db
277
+ .update(schema.customers)
278
+ .set({ passwordHash })
279
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.customers.id, customerId)));
280
+ }
281
+ /**
282
+ * Mark customer email as verified.
283
+ *
284
+ * @param customerId - Customer UUID
285
+ *
286
+ * @example
287
+ * ```typescript
288
+ * await markEmailVerified(customerId)
289
+ * ```
290
+ */
291
+ async function markEmailVerified(customerId) {
292
+ const db = (0, client_1.getDb)();
293
+ const tenantId = (0, client_1.getTenantId)();
294
+ await db
295
+ .update(schema.customers)
296
+ .set({ emailVerified: new Date() })
297
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema.customers.tenantId, tenantId), (0, drizzle_orm_1.eq)(schema.customers.id, customerId)));
298
+ }
299
+ /**
300
+ * Check if email is already registered.
301
+ *
302
+ * @param email - Email to check
303
+ * @returns True if email exists
304
+ */
305
+ async function emailExists(email) {
306
+ const customer = await findCustomerByEmail(email);
307
+ return !!customer;
308
+ }
309
+ //# sourceMappingURL=customer-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customer-service.js","sourceRoot":"","sources":["../../../src/auth/server/customer-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * @rovela/sdk/auth/server/email-sender
3
+ *
4
+ * Email sending utilities for customer authentication.
5
+ * This file re-exports from the emails module for backward compatibility.
6
+ *
7
+ * NOTE: For new code, prefer importing directly from '@rovela/sdk/emails':
8
+ * ```typescript
9
+ * import { sendVerificationEmail, sendWelcomeEmail } from '@rovela/sdk/emails'
10
+ * ```
11
+ */
12
+ /**
13
+ * Send verification email to new customer.
14
+ *
15
+ * @param email - Customer email address
16
+ * @param token - Verification token
17
+ * @param storeName - Name of the store
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * await sendVerificationEmail('customer@example.com', 'abc123token', 'My Store')
22
+ * ```
23
+ *
24
+ * @deprecated Use `sendVerificationEmail` from '@rovela/sdk/emails' for more options
25
+ */
26
+ export declare function sendVerificationEmail(email: string, token: string, storeName: string): Promise<void>;
27
+ /**
28
+ * Send password reset email to customer.
29
+ *
30
+ * @param email - Customer email address
31
+ * @param token - Reset token
32
+ * @param storeName - Name of the store
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * await sendPasswordResetEmail('customer@example.com', 'abc123token', 'My Store')
37
+ * ```
38
+ *
39
+ * @deprecated Use `sendPasswordResetEmail` from '@rovela/sdk/emails' for more options
40
+ */
41
+ export declare function sendPasswordResetEmail(email: string, token: string, storeName: string): Promise<void>;
42
+ /**
43
+ * Send welcome email to new customer after verification.
44
+ *
45
+ * @param email - Customer email address
46
+ * @param name - Customer name
47
+ * @param storeName - Name of the store
48
+ *
49
+ * @example
50
+ * ```typescript
51
+ * await sendWelcomeEmail('customer@example.com', 'John', 'My Store')
52
+ * ```
53
+ *
54
+ * @deprecated Use `sendWelcomeEmail` from '@rovela/sdk/emails' for more options
55
+ */
56
+ export declare function sendWelcomeEmail(email: string, name: string | null | undefined, storeName: string): Promise<void>;
57
+ /**
58
+ * Get the store name from configuration or environment.
59
+ * Falls back to a generic name if not configured.
60
+ *
61
+ * @deprecated Use `getStoreName` from '@rovela/sdk/emails'
62
+ */
63
+ export declare function getStoreName(): string;
64
+ //# sourceMappingURL=email-sender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-sender.d.ts","sourceRoot":"","sources":["../../../src/auth/server/email-sender.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAcH;;;;;;;;;;;;;GAaG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAef;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAef;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC/B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAYf;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ /**
3
+ * @rovela/sdk/auth/server/email-sender
4
+ *
5
+ * Email sending utilities for customer authentication.
6
+ * This file re-exports from the emails module for backward compatibility.
7
+ *
8
+ * NOTE: For new code, prefer importing directly from '@rovela/sdk/emails':
9
+ * ```typescript
10
+ * import { sendVerificationEmail, sendWelcomeEmail } from '@rovela/sdk/emails'
11
+ * ```
12
+ */
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.sendVerificationEmail = sendVerificationEmail;
15
+ exports.sendPasswordResetEmail = sendPasswordResetEmail;
16
+ exports.sendWelcomeEmail = sendWelcomeEmail;
17
+ exports.getStoreName = getStoreName;
18
+ const emails_1 = require("../../emails");
19
+ // =============================================================================
20
+ // Re-exported Functions (Backward Compatible API)
21
+ // =============================================================================
22
+ /**
23
+ * Send verification email to new customer.
24
+ *
25
+ * @param email - Customer email address
26
+ * @param token - Verification token
27
+ * @param storeName - Name of the store
28
+ *
29
+ * @example
30
+ * ```typescript
31
+ * await sendVerificationEmail('customer@example.com', 'abc123token', 'My Store')
32
+ * ```
33
+ *
34
+ * @deprecated Use `sendVerificationEmail` from '@rovela/sdk/emails' for more options
35
+ */
36
+ async function sendVerificationEmail(email, token, storeName) {
37
+ const storeUrl = (0, emails_1.getStoreUrl)();
38
+ const verificationLink = `${storeUrl}/auth/verify-email?token=${token}`;
39
+ const result = await (0, emails_1.sendVerificationEmail)({
40
+ to: email,
41
+ customerName: email.split('@')[0], // Fallback to email prefix
42
+ verificationLink,
43
+ expiryTime: '24',
44
+ });
45
+ if (!result.success) {
46
+ console.error('[Auth Email] Failed to send verification email:', result.error);
47
+ throw new Error('Failed to send verification email');
48
+ }
49
+ }
50
+ /**
51
+ * Send password reset email to customer.
52
+ *
53
+ * @param email - Customer email address
54
+ * @param token - Reset token
55
+ * @param storeName - Name of the store
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * await sendPasswordResetEmail('customer@example.com', 'abc123token', 'My Store')
60
+ * ```
61
+ *
62
+ * @deprecated Use `sendPasswordResetEmail` from '@rovela/sdk/emails' for more options
63
+ */
64
+ async function sendPasswordResetEmail(email, token, storeName) {
65
+ const storeUrl = (0, emails_1.getStoreUrl)();
66
+ const resetLink = `${storeUrl}/auth/reset-password?token=${token}`;
67
+ const result = await (0, emails_1.sendPasswordResetEmail)({
68
+ to: email,
69
+ customerName: email.split('@')[0], // Fallback to email prefix
70
+ resetLink,
71
+ expiryTime: '1',
72
+ });
73
+ if (!result.success) {
74
+ console.error('[Auth Email] Failed to send password reset email:', result.error);
75
+ throw new Error('Failed to send password reset email');
76
+ }
77
+ }
78
+ /**
79
+ * Send welcome email to new customer after verification.
80
+ *
81
+ * @param email - Customer email address
82
+ * @param name - Customer name
83
+ * @param storeName - Name of the store
84
+ *
85
+ * @example
86
+ * ```typescript
87
+ * await sendWelcomeEmail('customer@example.com', 'John', 'My Store')
88
+ * ```
89
+ *
90
+ * @deprecated Use `sendWelcomeEmail` from '@rovela/sdk/emails' for more options
91
+ */
92
+ async function sendWelcomeEmail(email, name, storeName) {
93
+ const customerName = name || 'there';
94
+ const result = await (0, emails_1.sendWelcomeEmail)({
95
+ to: email,
96
+ customerName,
97
+ });
98
+ // Welcome email failure is not critical - just log it
99
+ if (!result.success) {
100
+ console.error('[Auth Email] Failed to send welcome email:', result.error);
101
+ }
102
+ }
103
+ /**
104
+ * Get the store name from configuration or environment.
105
+ * Falls back to a generic name if not configured.
106
+ *
107
+ * @deprecated Use `getStoreName` from '@rovela/sdk/emails'
108
+ */
109
+ function getStoreName() {
110
+ return (0, emails_1.getStoreName)();
111
+ }
112
+ //# sourceMappingURL=email-sender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-sender.js","sourceRoot":"","sources":["../../../src/auth/server/email-sender.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;AA4BH,sDAmBC;AAgBD,wDAmBC;AAgBD,4CAgBC;AAQD,oCAEC;AA1HD,yCAMqB;AAErB,gFAAgF;AAChF,kDAAkD;AAClD,gFAAgF;AAEhF;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,KAAa,EACb,SAAiB;IAEjB,MAAM,QAAQ,GAAG,IAAA,oBAAW,GAAE,CAAA;IAC9B,MAAM,gBAAgB,GAAG,GAAG,QAAQ,4BAA4B,KAAK,EAAE,CAAA;IAEvE,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAgB,EAAC;QACpC,EAAE,EAAE,KAAK;QACT,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,2BAA2B;QAC9D,gBAAgB;QAChB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,iDAAiD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QAC9E,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,sBAAsB,CAC1C,KAAa,EACb,KAAa,EACb,SAAiB;IAEjB,MAAM,QAAQ,GAAG,IAAA,oBAAW,GAAE,CAAA;IAC9B,MAAM,SAAS,GAAG,GAAG,QAAQ,8BAA8B,KAAK,EAAE,CAAA;IAElE,MAAM,MAAM,GAAG,MAAM,IAAA,+BAAiB,EAAC;QACrC,EAAE,EAAE,KAAK;QACT,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,2BAA2B;QAC9D,SAAS;QACT,UAAU,EAAE,GAAG;KAChB,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QAChF,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,gBAAgB,CACpC,KAAa,EACb,IAA+B,EAC/B,SAAiB;IAEjB,MAAM,YAAY,GAAG,IAAI,IAAI,OAAO,CAAA;IAEpC,MAAM,MAAM,GAAG,MAAM,IAAA,yBAAW,EAAC;QAC/B,EAAE,EAAE,KAAK;QACT,YAAY;KACb,CAAC,CAAA;IAEF,sDAAsD;IACtD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAC3E,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,YAAY;IAC1B,OAAO,IAAA,qBAAsB,GAAE,CAAA;AACjC,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @rovela/sdk/auth/server
3
+ *
4
+ * Server-side authentication utilities.
5
+ * Import from '@rovela/sdk/auth/server' in server components and API routes.
6
+ */
7
+ export { hashPassword, verifyPassword, validatePassword, MIN_PASSWORD_LENGTH, } from './password';
8
+ export { sendVerificationEmail, sendPasswordResetEmail, sendWelcomeEmail, getStoreName, } from './email-sender';
9
+ export { createCustomer, authenticateCustomer, findCustomerForSession, findCustomerByEmail, findCustomerById, updateCustomer, updateCustomerPassword, markEmailVerified, emailExists, } from './customer-service';
10
+ export type { CreateCustomerResult, AuthenticateResult, AuthenticateError, } from './customer-service';
11
+ export { createVerificationToken, verifyEmail, deleteVerificationTokens, resendVerificationEmail, isEmailVerified, cleanupExpiredTokens, } from './verification-service';
12
+ export { requestPasswordReset, validateResetToken, resetPassword, deletePasswordResetTokens, cleanupExpiredResetTokens, } from './password-reset-service';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/auth/server/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,GACb,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,oBAAoB,GACrB,MAAM,wBAAwB,CAAA;AAG/B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAA"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ /**
3
+ * @rovela/sdk/auth/server
4
+ *
5
+ * Server-side authentication utilities.
6
+ * Import from '@rovela/sdk/auth/server' in server components and API routes.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.cleanupExpiredResetTokens = exports.deletePasswordResetTokens = exports.resetPassword = exports.validateResetToken = exports.requestPasswordReset = exports.cleanupExpiredTokens = exports.isEmailVerified = exports.resendVerificationEmail = exports.deleteVerificationTokens = exports.verifyEmail = exports.createVerificationToken = exports.emailExists = exports.markEmailVerified = exports.updateCustomerPassword = exports.updateCustomer = exports.findCustomerById = exports.findCustomerByEmail = exports.findCustomerForSession = exports.authenticateCustomer = exports.createCustomer = exports.getStoreName = exports.sendWelcomeEmail = exports.sendPasswordResetEmail = exports.sendVerificationEmail = exports.MIN_PASSWORD_LENGTH = exports.validatePassword = exports.verifyPassword = exports.hashPassword = void 0;
10
+ // Password utilities
11
+ var password_1 = require("./password");
12
+ Object.defineProperty(exports, "hashPassword", { enumerable: true, get: function () { return password_1.hashPassword; } });
13
+ Object.defineProperty(exports, "verifyPassword", { enumerable: true, get: function () { return password_1.verifyPassword; } });
14
+ Object.defineProperty(exports, "validatePassword", { enumerable: true, get: function () { return password_1.validatePassword; } });
15
+ Object.defineProperty(exports, "MIN_PASSWORD_LENGTH", { enumerable: true, get: function () { return password_1.MIN_PASSWORD_LENGTH; } });
16
+ // Email utilities
17
+ var email_sender_1 = require("./email-sender");
18
+ Object.defineProperty(exports, "sendVerificationEmail", { enumerable: true, get: function () { return email_sender_1.sendVerificationEmail; } });
19
+ Object.defineProperty(exports, "sendPasswordResetEmail", { enumerable: true, get: function () { return email_sender_1.sendPasswordResetEmail; } });
20
+ Object.defineProperty(exports, "sendWelcomeEmail", { enumerable: true, get: function () { return email_sender_1.sendWelcomeEmail; } });
21
+ Object.defineProperty(exports, "getStoreName", { enumerable: true, get: function () { return email_sender_1.getStoreName; } });
22
+ // Customer service
23
+ var customer_service_1 = require("./customer-service");
24
+ Object.defineProperty(exports, "createCustomer", { enumerable: true, get: function () { return customer_service_1.createCustomer; } });
25
+ Object.defineProperty(exports, "authenticateCustomer", { enumerable: true, get: function () { return customer_service_1.authenticateCustomer; } });
26
+ Object.defineProperty(exports, "findCustomerForSession", { enumerable: true, get: function () { return customer_service_1.findCustomerForSession; } });
27
+ Object.defineProperty(exports, "findCustomerByEmail", { enumerable: true, get: function () { return customer_service_1.findCustomerByEmail; } });
28
+ Object.defineProperty(exports, "findCustomerById", { enumerable: true, get: function () { return customer_service_1.findCustomerById; } });
29
+ Object.defineProperty(exports, "updateCustomer", { enumerable: true, get: function () { return customer_service_1.updateCustomer; } });
30
+ Object.defineProperty(exports, "updateCustomerPassword", { enumerable: true, get: function () { return customer_service_1.updateCustomerPassword; } });
31
+ Object.defineProperty(exports, "markEmailVerified", { enumerable: true, get: function () { return customer_service_1.markEmailVerified; } });
32
+ Object.defineProperty(exports, "emailExists", { enumerable: true, get: function () { return customer_service_1.emailExists; } });
33
+ // Verification service
34
+ var verification_service_1 = require("./verification-service");
35
+ Object.defineProperty(exports, "createVerificationToken", { enumerable: true, get: function () { return verification_service_1.createVerificationToken; } });
36
+ Object.defineProperty(exports, "verifyEmail", { enumerable: true, get: function () { return verification_service_1.verifyEmail; } });
37
+ Object.defineProperty(exports, "deleteVerificationTokens", { enumerable: true, get: function () { return verification_service_1.deleteVerificationTokens; } });
38
+ Object.defineProperty(exports, "resendVerificationEmail", { enumerable: true, get: function () { return verification_service_1.resendVerificationEmail; } });
39
+ Object.defineProperty(exports, "isEmailVerified", { enumerable: true, get: function () { return verification_service_1.isEmailVerified; } });
40
+ Object.defineProperty(exports, "cleanupExpiredTokens", { enumerable: true, get: function () { return verification_service_1.cleanupExpiredTokens; } });
41
+ // Password reset service
42
+ var password_reset_service_1 = require("./password-reset-service");
43
+ Object.defineProperty(exports, "requestPasswordReset", { enumerable: true, get: function () { return password_reset_service_1.requestPasswordReset; } });
44
+ Object.defineProperty(exports, "validateResetToken", { enumerable: true, get: function () { return password_reset_service_1.validateResetToken; } });
45
+ Object.defineProperty(exports, "resetPassword", { enumerable: true, get: function () { return password_reset_service_1.resetPassword; } });
46
+ Object.defineProperty(exports, "deletePasswordResetTokens", { enumerable: true, get: function () { return password_reset_service_1.deletePasswordResetTokens; } });
47
+ Object.defineProperty(exports, "cleanupExpiredResetTokens", { enumerable: true, get: function () { return password_reset_service_1.cleanupExpiredResetTokens; } });
48
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/auth/server/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,qBAAqB;AACrB,uCAKmB;AAJjB,wGAAA,YAAY,OAAA;AACZ,0GAAA,cAAc,OAAA;AACd,4GAAA,gBAAgB,OAAA;AAChB,+GAAA,mBAAmB,OAAA;AAGrB,kBAAkB;AAClB,+CAKuB;AAJrB,qHAAA,qBAAqB,OAAA;AACrB,sHAAA,sBAAsB,OAAA;AACtB,gHAAA,gBAAgB,OAAA;AAChB,4GAAA,YAAY,OAAA;AAGd,mBAAmB;AACnB,uDAU2B;AATzB,kHAAA,cAAc,OAAA;AACd,wHAAA,oBAAoB,OAAA;AACpB,0HAAA,sBAAsB,OAAA;AACtB,uHAAA,mBAAmB,OAAA;AACnB,oHAAA,gBAAgB,OAAA;AAChB,kHAAA,cAAc,OAAA;AACd,0HAAA,sBAAsB,OAAA;AACtB,qHAAA,iBAAiB,OAAA;AACjB,+GAAA,WAAW,OAAA;AAQb,uBAAuB;AACvB,+DAO+B;AAN7B,+HAAA,uBAAuB,OAAA;AACvB,mHAAA,WAAW,OAAA;AACX,gIAAA,wBAAwB,OAAA;AACxB,+HAAA,uBAAuB,OAAA;AACvB,uHAAA,eAAe,OAAA;AACf,4HAAA,oBAAoB,OAAA;AAGtB,yBAAyB;AACzB,mEAMiC;AAL/B,8HAAA,oBAAoB,OAAA;AACpB,4HAAA,kBAAkB,OAAA;AAClB,uHAAA,aAAa,OAAA;AACb,mIAAA,yBAAyB,OAAA;AACzB,mIAAA,yBAAyB,OAAA"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * @rovela/sdk/auth/server/password-reset-service
3
+ *
4
+ * Password reset token management.
5
+ * Handles creating, validating, and using reset tokens.
6
+ */
7
+ /**
8
+ * Request a password reset for a customer.
9
+ * Creates a token and sends reset email.
10
+ *
11
+ * Note: Always returns success to prevent email enumeration attacks.
12
+ *
13
+ * @param email - Customer email address
14
+ * @returns Always returns success (security best practice)
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const result = await requestPasswordReset('customer@example.com')
19
+ * // Always show "If an account exists, we've sent a reset email"
20
+ * ```
21
+ */
22
+ export declare function requestPasswordReset(email: string): Promise<{
23
+ success: boolean;
24
+ }>;
25
+ /**
26
+ * Validate a password reset token.
27
+ * Does NOT consume the token - use resetPassword() for that.
28
+ *
29
+ * @param token - Reset token from email link
30
+ * @returns Validation result
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * const result = await validateResetToken(token)
35
+ * if (result.valid) {
36
+ * // Show password reset form
37
+ * } else {
38
+ * // Show error message
39
+ * }
40
+ * ```
41
+ */
42
+ export declare function validateResetToken(token: string): Promise<{
43
+ valid: boolean;
44
+ error?: string;
45
+ }>;
46
+ /**
47
+ * Reset password using a token.
48
+ * Validates the token, updates the password, and deletes the token.
49
+ *
50
+ * @param token - Reset token from email link
51
+ * @param newPassword - New password (plain text, will be hashed)
52
+ * @returns Reset result
53
+ *
54
+ * @example
55
+ * ```typescript
56
+ * const result = await resetPassword(token, 'newSecurePassword123')
57
+ * if (result.success) {
58
+ * // Redirect to login
59
+ * } else {
60
+ * // Show error
61
+ * }
62
+ * ```
63
+ */
64
+ export declare function resetPassword(token: string, newPassword: string): Promise<{
65
+ success: boolean;
66
+ error?: string;
67
+ }>;
68
+ /**
69
+ * Delete all password reset tokens for a customer.
70
+ *
71
+ * @param customerId - Customer UUID
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * await deletePasswordResetTokens(customerId)
76
+ * ```
77
+ */
78
+ export declare function deletePasswordResetTokens(customerId: string): Promise<void>;
79
+ /**
80
+ * Clean up expired password reset tokens.
81
+ * Should be called periodically (e.g., via cron job).
82
+ *
83
+ * @returns Number of tokens deleted
84
+ */
85
+ export declare function cleanupExpiredResetTokens(): Promise<number>;
86
+ //# sourceMappingURL=password-reset-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password-reset-service.d.ts","sourceRoot":"","sources":["../../../src/auth/server/password-reset-service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA4BH;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,OAAO,EAAE,OAAO,CAAA;CACjB,CAAC,CAgCD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/D,KAAK,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAC,CA+BD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,aAAa,CACjC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IACT,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAC,CAyCD;AAED;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAC7C,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAYf;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,MAAM,CAAC,CASjE"}