@mohasinac/appkit 4.44.0 โ†’ 4.45.0

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 (1918) hide show
  1. package/dist/.build-stamp.json +8 -0
  2. package/dist/_internal/client/features/digital-code/CodeRevealPanel.js +3 -3
  3. package/dist/_internal/client/features/digital-code/DigitalContentPoolManager.js +5 -5
  4. package/dist/_internal/client/features/filters/filter-load-options.js +3 -3
  5. package/dist/_internal/client/features/layout/DashboardLayoutClient.js +16 -16
  6. package/dist/_internal/client/features/layout/RoleGuard.js +4 -4
  7. package/dist/_internal/client/features/layout/SidebarCollapseToggle.js +1 -1
  8. package/dist/_internal/client/features/layout/index.js +3 -3
  9. package/dist/_internal/client/features/layout/useSidebarSearch.js +1 -1
  10. package/dist/_internal/client/features/lottery/LotteryAdminEditView.js +8 -8
  11. package/dist/_internal/client/features/lottery/LotteryAdminSlotView.js +1 -1
  12. package/dist/_internal/client/features/lottery/LotteryDetailView.js +8 -8
  13. package/dist/_internal/client/features/lottery/LotteryEntriesView.js +3 -3
  14. package/dist/_internal/client/features/lottery/LotteryListView.js +3 -3
  15. package/dist/_internal/client/features/lottery/LotteryPullForm.js +9 -9
  16. package/dist/_internal/client/features/lottery/LotterySlotGrid.js +1 -1
  17. package/dist/_internal/client/features/lottery/PrizeDrawLotteryDetailView.js +7 -7
  18. package/dist/_internal/client/features/maintenance/index.js +5 -5
  19. package/dist/_internal/client/features/maintenance/views/AnalysisRunnerView.js +3 -3
  20. package/dist/_internal/client/features/maintenance/views/CloudLogsListView.js +3 -3
  21. package/dist/_internal/client/features/products/index.js +1 -1
  22. package/dist/_internal/client/hand-mode/HandModeProvider.js +1 -1
  23. package/dist/_internal/client/hand-mode/index.js +1 -1
  24. package/dist/_internal/client/scaffolds/AppShell.js +1 -1
  25. package/dist/_internal/client/scaffolds/index.js +1 -1
  26. package/dist/_internal/client/theme/ThemeProvider.js +2 -2
  27. package/dist/_internal/client/theme/buildRegistry.js +1 -1
  28. package/dist/_internal/client/theme/index.js +2 -2
  29. package/dist/_internal/server/features/account/actions.js +1 -1
  30. package/dist/_internal/server/features/account/data.js +1 -1
  31. package/dist/_internal/server/features/account/index.js +2 -2
  32. package/dist/_internal/server/features/admin/daily-digest-actions.js +3 -3
  33. package/dist/_internal/server/features/auctions/actions.js +6 -6
  34. package/dist/_internal/server/features/auctions/data.js +1 -1
  35. package/dist/_internal/server/features/auctions/index.js +5 -5
  36. package/dist/_internal/server/features/auctions/og.js +2 -2
  37. package/dist/_internal/server/features/auctions/service.js +4 -4
  38. package/dist/_internal/server/features/audit-log/actions.js +3 -3
  39. package/dist/_internal/server/features/auth/actions.js +1 -1
  40. package/dist/_internal/server/features/auth/capabilities.js +2 -2
  41. package/dist/_internal/server/features/auth/firebase-identity.js +1 -1
  42. package/dist/_internal/server/features/auth/index.js +3 -3
  43. package/dist/_internal/server/features/auth/permissions.js +4 -4
  44. package/dist/_internal/server/features/blog/actions.js +5 -5
  45. package/dist/_internal/server/features/blog/data.js +1 -1
  46. package/dist/_internal/server/features/blog/index.js +5 -5
  47. package/dist/_internal/server/features/blog/og.js +2 -2
  48. package/dist/_internal/server/features/blog/service.js +2 -2
  49. package/dist/_internal/server/features/brands/actions.js +5 -5
  50. package/dist/_internal/server/features/brands/data.js +1 -1
  51. package/dist/_internal/server/features/brands/index.js +5 -5
  52. package/dist/_internal/server/features/brands/og.js +1 -1
  53. package/dist/_internal/server/features/brands/service.js +2 -2
  54. package/dist/_internal/server/features/bundles/actions.js +8 -8
  55. package/dist/_internal/server/features/bundles/data.js +4 -4
  56. package/dist/_internal/server/features/bundles/index.js +4 -4
  57. package/dist/_internal/server/features/bundles/og.js +1 -1
  58. package/dist/_internal/server/features/cart/actions.js +5 -5
  59. package/dist/_internal/server/features/cart/data.js +1 -1
  60. package/dist/_internal/server/features/cart/index.js +4 -4
  61. package/dist/_internal/server/features/cart/service.js +5 -5
  62. package/dist/_internal/server/features/catalogue/og.js +2 -2
  63. package/dist/_internal/server/features/categories/data.js +4 -4
  64. package/dist/_internal/server/features/categories/index.js +2 -2
  65. package/dist/_internal/server/features/categories/og.js +1 -1
  66. package/dist/_internal/server/features/checkout/actions.d.ts +50 -0
  67. package/dist/_internal/server/features/checkout/actions.js +186 -52
  68. package/dist/_internal/server/features/checkout/bundle-expansion.js +3 -3
  69. package/dist/_internal/server/features/checkout/expand-order-items.js +6 -2
  70. package/dist/_internal/server/features/checkout/index.js +3 -3
  71. package/dist/_internal/server/features/checkout/locked-lines.js +14 -14
  72. package/dist/_internal/server/features/checkout/prize-bundle-gates.js +2 -2
  73. package/dist/_internal/server/features/checkout/source-context.js +4 -4
  74. package/dist/_internal/server/features/checkout/stock-restore.js +4 -4
  75. package/dist/_internal/server/features/checkout/upi-resolution.js +2 -2
  76. package/dist/_internal/server/features/classified/adapters.js +1 -1
  77. package/dist/_internal/server/features/classified/data.js +1 -1
  78. package/dist/_internal/server/features/classified/index.js +4 -4
  79. package/dist/_internal/server/features/classified/og.js +2 -2
  80. package/dist/_internal/server/features/digital-code/adapters.js +1 -1
  81. package/dist/_internal/server/features/digital-code/data.js +1 -1
  82. package/dist/_internal/server/features/digital-code/download.js +5 -5
  83. package/dist/_internal/server/features/digital-code/index.js +4 -4
  84. package/dist/_internal/server/features/digital-code/og.js +2 -2
  85. package/dist/_internal/server/features/digital-code/pool.js +7 -7
  86. package/dist/_internal/server/features/digital-code/upload.js +6 -6
  87. package/dist/_internal/server/features/events/actions.js +8 -8
  88. package/dist/_internal/server/features/events/adapters.js +1 -1
  89. package/dist/_internal/server/features/events/data.js +1 -1
  90. package/dist/_internal/server/features/events/index.js +5 -5
  91. package/dist/_internal/server/features/events/og.js +2 -2
  92. package/dist/_internal/server/features/events/service.js +2 -2
  93. package/dist/_internal/server/features/faqs/index.js +1 -1
  94. package/dist/_internal/server/features/faqs/og.js +1 -1
  95. package/dist/_internal/server/features/grouped/data.js +8 -8
  96. package/dist/_internal/server/features/grouped/index.js +4 -4
  97. package/dist/_internal/server/features/grouped/og.js +2 -2
  98. package/dist/_internal/server/features/history/actions.js +2 -2
  99. package/dist/_internal/server/features/history/data.js +1 -1
  100. package/dist/_internal/server/features/history/index.js +3 -3
  101. package/dist/_internal/server/features/homepage/index.js +1 -1
  102. package/dist/_internal/server/features/item-requests/data.js +1 -1
  103. package/dist/_internal/server/features/item-requests/index.js +2 -2
  104. package/dist/_internal/server/features/item-requests/og.js +1 -1
  105. package/dist/_internal/server/features/live/adapters.js +1 -1
  106. package/dist/_internal/server/features/live/data.js +1 -1
  107. package/dist/_internal/server/features/live/index.js +4 -4
  108. package/dist/_internal/server/features/live/og.js +2 -2
  109. package/dist/_internal/server/features/lottery/actions.js +8 -8
  110. package/dist/_internal/server/features/lottery/data.js +3 -3
  111. package/dist/_internal/server/features/maintenance/analyze.js +3 -3
  112. package/dist/_internal/server/features/maintenance/cloud-logs-data.js +1 -1
  113. package/dist/_internal/server/features/maintenance/data.js +2 -2
  114. package/dist/_internal/server/features/media/contextGuards.js +3 -3
  115. package/dist/_internal/server/features/offers/adapters.js +1 -1
  116. package/dist/_internal/server/features/offers/index.js +1 -1
  117. package/dist/_internal/server/features/orders/actions.js +17 -17
  118. package/dist/_internal/server/features/orders/adapters.js +2 -0
  119. package/dist/_internal/server/features/orders/data.js +2 -2
  120. package/dist/_internal/server/features/orders/index.js +5 -5
  121. package/dist/_internal/server/features/orders/service.js +3 -3
  122. package/dist/_internal/server/features/payouts/actions.js +3 -3
  123. package/dist/_internal/server/features/pre-orders/actions.js +5 -5
  124. package/dist/_internal/server/features/pre-orders/data.js +1 -1
  125. package/dist/_internal/server/features/pre-orders/index.js +5 -5
  126. package/dist/_internal/server/features/pre-orders/og.js +2 -2
  127. package/dist/_internal/server/features/pre-orders/service.js +4 -4
  128. package/dist/_internal/server/features/price-index/search.d.ts +119 -0
  129. package/dist/_internal/server/features/price-index/search.js +188 -0
  130. package/dist/_internal/server/features/prize-draws/actions.js +3 -3
  131. package/dist/_internal/server/features/prize-draws/data.js +1 -1
  132. package/dist/_internal/server/features/prize-draws/index.js +4 -4
  133. package/dist/_internal/server/features/prize-draws/og.js +2 -2
  134. package/dist/_internal/server/features/prize-draws/service.js +1 -1
  135. package/dist/_internal/server/features/products/actions.js +8 -8
  136. package/dist/_internal/server/features/products/data.js +15 -15
  137. package/dist/_internal/server/features/products/group-members.js +1 -1
  138. package/dist/_internal/server/features/products/index.js +6 -6
  139. package/dist/_internal/server/features/products/list-public.js +11 -11
  140. package/dist/_internal/server/features/products/listing-tab-counts.js +3 -3
  141. package/dist/_internal/server/features/products/og.js +2 -2
  142. package/dist/_internal/server/features/products/service.js +4 -4
  143. package/dist/_internal/server/features/profile/index.js +1 -1
  144. package/dist/_internal/server/features/promotions/actions.js +6 -6
  145. package/dist/_internal/server/features/promotions/data.js +1 -1
  146. package/dist/_internal/server/features/promotions/index.js +4 -4
  147. package/dist/_internal/server/features/promotions/service.js +3 -3
  148. package/dist/_internal/server/features/raffle/actions.js +3 -3
  149. package/dist/_internal/server/features/refunds/actions.js +12 -12
  150. package/dist/_internal/server/features/reviews/actions.js +6 -6
  151. package/dist/_internal/server/features/reviews/data.js +3 -3
  152. package/dist/_internal/server/features/reviews/index.js +5 -5
  153. package/dist/_internal/server/features/reviews/og-data.js +1 -1
  154. package/dist/_internal/server/features/reviews/og.js +1 -1
  155. package/dist/_internal/server/features/reviews/service.js +2 -2
  156. package/dist/_internal/server/features/scams/data.js +1 -1
  157. package/dist/_internal/server/features/scams/index.js +2 -2
  158. package/dist/_internal/server/features/search/actions.js +1 -1
  159. package/dist/_internal/server/features/search/data.js +1 -1
  160. package/dist/_internal/server/features/search/index.js +2 -2
  161. package/dist/_internal/server/features/seo/index.js +4 -4
  162. package/dist/_internal/server/features/seo/manifest.js +2 -2
  163. package/dist/_internal/server/features/seo/og.js +2 -2
  164. package/dist/_internal/server/features/seo/sitemap.js +13 -13
  165. package/dist/_internal/server/features/shared/listing-data-factory.js +4 -4
  166. package/dist/_internal/server/features/site-settings/actions.js +1 -1
  167. package/dist/_internal/server/features/site-settings/index.js +1 -1
  168. package/dist/_internal/server/features/site-settings/safe-settings.js +3 -3
  169. package/dist/_internal/server/features/stores/adapters.d.ts +2 -2
  170. package/dist/_internal/server/features/stores/adapters.js +44 -0
  171. package/dist/_internal/server/features/stores/data.js +5 -5
  172. package/dist/_internal/server/features/stores/denormalize.js +2 -2
  173. package/dist/_internal/server/features/stores/index.js +5 -5
  174. package/dist/_internal/server/features/stores/og.js +2 -2
  175. package/dist/_internal/server/features/sublisting-categories/data.js +1 -1
  176. package/dist/_internal/server/features/sublisting-categories/index.js +2 -2
  177. package/dist/_internal/server/features/sublisting-categories/og.js +2 -2
  178. package/dist/_internal/server/features/tester/visibility.js +1 -1
  179. package/dist/_internal/server/features/wishlist/actions.js +5 -5
  180. package/dist/_internal/server/features/wishlist/data.js +1 -1
  181. package/dist/_internal/server/features/wishlist/index.js +4 -4
  182. package/dist/_internal/server/functions/bind-all.d.ts +25 -0
  183. package/dist/_internal/server/functions/bind-all.js +41 -6
  184. package/dist/_internal/server/functions/firestore.js +2 -2
  185. package/dist/_internal/server/functions/https.js +2 -2
  186. package/dist/_internal/server/functions/index.js +4 -4
  187. package/dist/_internal/server/functions/manifest.js +3 -3
  188. package/dist/_internal/server/functions/scheduled.js +2 -2
  189. package/dist/_internal/server/jobs/core/adminAnalytics.js +3 -3
  190. package/dist/_internal/server/jobs/core/analyticsAlertEvaluate.js +6 -6
  191. package/dist/_internal/server/jobs/core/assignSpinPrize.js +2 -2
  192. package/dist/_internal/server/jobs/core/auctionSettlement.js +7 -7
  193. package/dist/_internal/server/jobs/core/autoPayoutEligibility.js +5 -5
  194. package/dist/_internal/server/jobs/core/bundleStockSync.js +1 -1
  195. package/dist/_internal/server/jobs/core/cartPrune.js +3 -3
  196. package/dist/_internal/server/jobs/core/catalogueImageStalenessReminder.js +4 -4
  197. package/dist/_internal/server/jobs/core/cleanupRtdbEvents.js +5 -5
  198. package/dist/_internal/server/jobs/core/countersReconcile.js +7 -7
  199. package/dist/_internal/server/jobs/core/couponExpiry.js +1 -1
  200. package/dist/_internal/server/jobs/core/dailyDataCleanup.js +2 -2
  201. package/dist/_internal/server/jobs/core/dailyStatusDigest.js +14 -14
  202. package/dist/_internal/server/jobs/core/draftPrune.js +2 -2
  203. package/dist/_internal/server/jobs/core/emiInstallmentReminder.js +3 -3
  204. package/dist/_internal/server/jobs/core/hardBanCascade.js +7 -7
  205. package/dist/_internal/server/jobs/core/hardBanReinstatement.js +4 -4
  206. package/dist/_internal/server/jobs/core/index.js +37 -37
  207. package/dist/_internal/server/jobs/core/jobRunners.js +7 -7
  208. package/dist/_internal/server/jobs/core/listingProcessor.js +2 -2
  209. package/dist/_internal/server/jobs/core/mediaTmpCleanup.js +2 -2
  210. package/dist/_internal/server/jobs/core/newsletterExport.js +3 -3
  211. package/dist/_internal/server/jobs/core/notificationPrune.js +3 -3
  212. package/dist/_internal/server/jobs/core/offerExpiry.js +4 -4
  213. package/dist/_internal/server/jobs/core/onCategoryWrite.js +3 -3
  214. package/dist/_internal/server/jobs/core/onJobCreated.js +5 -5
  215. package/dist/_internal/server/jobs/core/onOrderCreate.js +6 -6
  216. package/dist/_internal/server/jobs/core/onOrderStatusChange.js +3 -3
  217. package/dist/_internal/server/jobs/core/onPrizeDrawPaymentConfirmed.js +2 -2
  218. package/dist/_internal/server/jobs/core/onProductStockChange.js +2 -2
  219. package/dist/_internal/server/jobs/core/onProductWrite.js +6 -6
  220. package/dist/_internal/server/jobs/core/onReviewWrite.js +4 -4
  221. package/dist/_internal/server/jobs/core/onScamReportCreate.js +4 -4
  222. package/dist/_internal/server/jobs/core/onScamReportRejected.js +3 -3
  223. package/dist/_internal/server/jobs/core/onScamReportVerified.js +3 -3
  224. package/dist/_internal/server/jobs/core/onStoreWrite.js +1 -1
  225. package/dist/_internal/server/jobs/core/onSupportTicketCreate.js +2 -2
  226. package/dist/_internal/server/jobs/core/onSupportTicketUpdate.js +2 -2
  227. package/dist/_internal/server/jobs/core/onUserBanChange.js +1 -1
  228. package/dist/_internal/server/jobs/core/pageViewPrune.js +2 -2
  229. package/dist/_internal/server/jobs/core/pageViewRollup.js +2 -2
  230. package/dist/_internal/server/jobs/core/paymentReviewAutoApprove.js +4 -4
  231. package/dist/_internal/server/jobs/core/paymentWindowTimeout.js +7 -7
  232. package/dist/_internal/server/jobs/core/pendingOrderTimeout.js +6 -6
  233. package/dist/_internal/server/jobs/core/positionsReconcile.js +1 -1
  234. package/dist/_internal/server/jobs/core/priceIndexRollup.js +74 -4
  235. package/dist/_internal/server/jobs/core/prizeDrawAssignWinner.js +2 -2
  236. package/dist/_internal/server/jobs/core/prizeDrawExpiryReveal.js +3 -3
  237. package/dist/_internal/server/jobs/core/prizeDrawSoldOutReveal.js +3 -3
  238. package/dist/_internal/server/jobs/core/productStatsSync.js +1 -1
  239. package/dist/_internal/server/jobs/core/promotions.js +2 -2
  240. package/dist/_internal/server/jobs/core/resetOtpVerification.js +3 -3
  241. package/dist/_internal/server/jobs/core/revalidateNotify.js +1 -1
  242. package/dist/_internal/server/jobs/core/revenueRollup.js +2 -2
  243. package/dist/_internal/server/jobs/core/storeAnalytics.js +3 -3
  244. package/dist/_internal/server/jobs/core/storeNameBackfill.js +3 -3
  245. package/dist/_internal/server/jobs/core/testDataCleanup.js +2 -2
  246. package/dist/_internal/server/jobs/core/triggerEventRaffle.js +1 -1
  247. package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.js +5 -5
  248. package/dist/_internal/server/jobs/core/whatsappCatalogImport.js +3 -3
  249. package/dist/_internal/server/jobs/core/whatsappNotify.js +5 -5
  250. package/dist/_internal/server/jobs/core/wrapJobHandler.js +3 -3
  251. package/dist/_internal/server/jobs/handlers/_helpers.js +3 -3
  252. package/dist/_internal/server/jobs/handlers/adminAnalytics.js +1 -1
  253. package/dist/_internal/server/jobs/handlers/analyticsAlertEvaluate.js +1 -1
  254. package/dist/_internal/server/jobs/handlers/assignSpinPrize.js +1 -1
  255. package/dist/_internal/server/jobs/handlers/auctionSettlement.js +1 -1
  256. package/dist/_internal/server/jobs/handlers/autoPayoutEligibility.js +1 -1
  257. package/dist/_internal/server/jobs/handlers/bundleStockSync.js +1 -1
  258. package/dist/_internal/server/jobs/handlers/cartPrune.js +1 -1
  259. package/dist/_internal/server/jobs/handlers/catalogueImageStalenessReminder.js +1 -1
  260. package/dist/_internal/server/jobs/handlers/cleanupRtdbEvents.js +1 -1
  261. package/dist/_internal/server/jobs/handlers/countersReconcile.js +1 -1
  262. package/dist/_internal/server/jobs/handlers/couponExpiry.js +1 -1
  263. package/dist/_internal/server/jobs/handlers/dailyDataCleanup.js +1 -1
  264. package/dist/_internal/server/jobs/handlers/dailyStatusDigest.js +1 -1
  265. package/dist/_internal/server/jobs/handlers/draftPrune.js +1 -1
  266. package/dist/_internal/server/jobs/handlers/emiInstallmentReminder.js +1 -1
  267. package/dist/_internal/server/jobs/handlers/hardBanReinstatement.js +1 -1
  268. package/dist/_internal/server/jobs/handlers/index.js +54 -54
  269. package/dist/_internal/server/jobs/handlers/listingProcessor.js +1 -1
  270. package/dist/_internal/server/jobs/handlers/mediaTmpCleanup.js +1 -1
  271. package/dist/_internal/server/jobs/handlers/messages.js +1 -1
  272. package/dist/_internal/server/jobs/handlers/notificationPrune.js +1 -1
  273. package/dist/_internal/server/jobs/handlers/offerExpiry.js +1 -1
  274. package/dist/_internal/server/jobs/handlers/onCatalogueSubmittedForApproval.js +1 -1
  275. package/dist/_internal/server/jobs/handlers/onCategoryWrite.js +1 -1
  276. package/dist/_internal/server/jobs/handlers/onJobCreated.js +1 -1
  277. package/dist/_internal/server/jobs/handlers/onOrderCreate.js +1 -1
  278. package/dist/_internal/server/jobs/handlers/onOrderStatusChange.js +1 -1
  279. package/dist/_internal/server/jobs/handlers/onPrizeDrawPaymentConfirmed.js +1 -1
  280. package/dist/_internal/server/jobs/handlers/onProductStockChange.js +1 -1
  281. package/dist/_internal/server/jobs/handlers/onProductWrite.js +1 -1
  282. package/dist/_internal/server/jobs/handlers/onReviewWrite.js +1 -1
  283. package/dist/_internal/server/jobs/handlers/onScamReportCreate.js +1 -1
  284. package/dist/_internal/server/jobs/handlers/onScamReportUpdate.js +2 -2
  285. package/dist/_internal/server/jobs/handlers/onShipmentAllocationSync.js +1 -1
  286. package/dist/_internal/server/jobs/handlers/onStoreWrite.js +1 -1
  287. package/dist/_internal/server/jobs/handlers/onSupportTicketCreate.js +1 -1
  288. package/dist/_internal/server/jobs/handlers/onSupportTicketUpdate.js +1 -1
  289. package/dist/_internal/server/jobs/handlers/onUserBanChange.js +1 -1
  290. package/dist/_internal/server/jobs/handlers/pageViewPrune.js +1 -1
  291. package/dist/_internal/server/jobs/handlers/pageViewRollup.js +1 -1
  292. package/dist/_internal/server/jobs/handlers/paymentReviewAutoApprove.js +1 -1
  293. package/dist/_internal/server/jobs/handlers/paymentWindowTimeout.js +1 -1
  294. package/dist/_internal/server/jobs/handlers/pendingOrderTimeout.js +1 -1
  295. package/dist/_internal/server/jobs/handlers/positionsReconcile.js +1 -1
  296. package/dist/_internal/server/jobs/handlers/priceIndexRollup.js +1 -1
  297. package/dist/_internal/server/jobs/handlers/prizeDrawExpiryReveal.js +1 -1
  298. package/dist/_internal/server/jobs/handlers/prizeDrawSoldOutReveal.js +1 -1
  299. package/dist/_internal/server/jobs/handlers/productStatsSync.js +1 -1
  300. package/dist/_internal/server/jobs/handlers/promotions.js +1 -1
  301. package/dist/_internal/server/jobs/handlers/revenueRollup.js +1 -1
  302. package/dist/_internal/server/jobs/handlers/storeAnalytics.js +1 -1
  303. package/dist/_internal/server/jobs/handlers/testDataCleanup.js +1 -1
  304. package/dist/_internal/server/jobs/handlers/triggerEventRaffle.js +1 -1
  305. package/dist/_internal/server/jobs/handlers/weeklyPayoutEligibility.js +1 -1
  306. package/dist/_internal/server/jobs/index.js +4 -4
  307. package/dist/_internal/server/jobs/runtime/adapters/firebase.js +3 -3
  308. package/dist/_internal/server/notifications/channel-health.js +3 -3
  309. package/dist/_internal/server/notifications/send-guard.js +5 -5
  310. package/dist/_internal/server/notifications/send-recorder.js +5 -5
  311. package/dist/_internal/shared/actions/action-registry.js +9 -0
  312. package/dist/_internal/shared/checkout/lanes.js +1 -1
  313. package/dist/_internal/shared/checkout/order-math.js +2 -2
  314. package/dist/_internal/shared/checkout/rules/_defaults.js +1 -1
  315. package/dist/_internal/shared/checkout/rules/_limits.js +1 -1
  316. package/dist/_internal/shared/checkout/rules/_registry.js +12 -12
  317. package/dist/_internal/shared/checkout/rules/art.rule.js +1 -1
  318. package/dist/_internal/shared/checkout/rules/auction.rule.js +1 -1
  319. package/dist/_internal/shared/checkout/rules/classified.rule.js +1 -1
  320. package/dist/_internal/shared/checkout/rules/digital-code.rule.js +1 -1
  321. package/dist/_internal/shared/checkout/rules/index.js +13 -13
  322. package/dist/_internal/shared/checkout/rules/live.rule.js +1 -1
  323. package/dist/_internal/shared/checkout/rules/offer.rule.js +1 -1
  324. package/dist/_internal/shared/checkout/rules/preorder.rule.js +2 -2
  325. package/dist/_internal/shared/checkout/rules/prize-draw.rule.js +3 -3
  326. package/dist/_internal/shared/checkout/rules/standard.rule.js +1 -1
  327. package/dist/_internal/shared/checkout/rules/stickers.rule.js +1 -1
  328. package/dist/_internal/shared/features/auctions/errors.js +1 -1
  329. package/dist/_internal/shared/features/blog/errors.js +1 -1
  330. package/dist/_internal/shared/features/blog/schema.js +2 -2
  331. package/dist/_internal/shared/features/brands/errors.js +1 -1
  332. package/dist/_internal/shared/features/brands/schema.js +2 -2
  333. package/dist/_internal/shared/features/cart/config.js +1 -1
  334. package/dist/_internal/shared/features/cart/errors.js +1 -1
  335. package/dist/_internal/shared/features/categories/bundle-schemas.js +2 -2
  336. package/dist/_internal/shared/features/categories/price-guidance.js +1 -1
  337. package/dist/_internal/shared/features/checkout/config.d.ts +3 -0
  338. package/dist/_internal/shared/features/checkout/config.js +4 -1
  339. package/dist/_internal/shared/features/emi/schedule.js +1 -1
  340. package/dist/_internal/shared/features/events/errors.js +1 -1
  341. package/dist/_internal/shared/features/events/schema.js +2 -2
  342. package/dist/_internal/shared/features/layout/index.js +1 -1
  343. package/dist/_internal/shared/features/notifications/action-url.js +1 -1
  344. package/dist/_internal/shared/features/offers/config.js +1 -1
  345. package/dist/_internal/shared/features/orders/errors.js +1 -1
  346. package/dist/_internal/shared/features/orders/schema.js +3 -3
  347. package/dist/_internal/shared/features/pre-orders/errors.js +1 -1
  348. package/dist/_internal/shared/features/products/errors.js +1 -1
  349. package/dist/_internal/shared/features/products/schema.js +3 -3
  350. package/dist/_internal/shared/features/promotions/errors.js +1 -1
  351. package/dist/_internal/shared/features/promotions/schema.d.ts +4 -4
  352. package/dist/_internal/shared/features/promotions/schema.js +1 -1
  353. package/dist/_internal/shared/features/returns/custody.d.ts +99 -0
  354. package/dist/_internal/shared/features/returns/custody.js +172 -0
  355. package/dist/_internal/shared/features/returns/destination.d.ts +172 -0
  356. package/dist/_internal/shared/features/returns/destination.js +158 -0
  357. package/dist/_internal/shared/features/reviews/errors.js +1 -1
  358. package/dist/_internal/shared/features/reviews/schema.js +2 -2
  359. package/dist/_internal/shared/features/shipping/courier-rating.d.ts +145 -0
  360. package/dist/_internal/shared/features/shipping/courier-rating.js +114 -0
  361. package/dist/_internal/shared/features/shipping/mode.d.ts +112 -0
  362. package/dist/_internal/shared/features/shipping/mode.js +108 -0
  363. package/dist/_internal/shared/features/shipping/parcel.d.ts +115 -0
  364. package/dist/_internal/shared/features/shipping/parcel.js +120 -0
  365. package/dist/_internal/shared/features/shipping/protections.d.ts +221 -0
  366. package/dist/_internal/shared/features/shipping/protections.js +213 -0
  367. package/dist/_internal/shared/features/site-settings/fees.d.ts +3 -0
  368. package/dist/_internal/shared/features/site-settings/fees.js +3 -0
  369. package/dist/_internal/shared/features/wishlist/errors.js +1 -1
  370. package/dist/_internal/shared/fees/calculator.d.ts +24 -0
  371. package/dist/_internal/shared/fees/calculator.js +12 -1
  372. package/dist/_internal/shared/history/history.js +2 -2
  373. package/dist/_internal/shared/history/index.js +2 -2
  374. package/dist/_internal/shared/index.js +2 -2
  375. package/dist/_internal/shared/listing-types/_registry.js +12 -12
  376. package/dist/_internal/shared/listing-types/action-tracker.js +1 -1
  377. package/dist/_internal/shared/listing-types/art/config.js +4 -4
  378. package/dist/_internal/shared/listing-types/auction/config.js +6 -6
  379. package/dist/_internal/shared/listing-types/availability.js +1 -1
  380. package/dist/_internal/shared/listing-types/cart-shipping.js +1 -1
  381. package/dist/_internal/shared/listing-types/classified/config.js +5 -5
  382. package/dist/_internal/shared/listing-types/digital-code/config.js +6 -6
  383. package/dist/_internal/shared/listing-types/live/config.js +5 -5
  384. package/dist/_internal/shared/listing-types/pre-order/config.js +6 -6
  385. package/dist/_internal/shared/listing-types/prize-draw/config.js +5 -5
  386. package/dist/_internal/shared/listing-types/standard/config.js +4 -4
  387. package/dist/_internal/shared/listing-types/stickers/config.js +4 -4
  388. package/dist/_internal/shared/search/alias-variants.d.ts +58 -0
  389. package/dist/_internal/shared/search/alias-variants.js +141 -0
  390. package/dist/_internal/shared/tokens/index.js +2 -2
  391. package/dist/_internal/shared/types/action-error-reporter.js +1 -1
  392. package/dist/_internal/shared/types/action-result.js +4 -4
  393. package/dist/_internal/shared/types/base-document.d.ts +19 -0
  394. package/dist/cli/index.js +1 -1
  395. package/dist/client/api/surface-error.js +7 -7
  396. package/dist/client/api/useApiMutation.js +2 -2
  397. package/dist/client/api/useApiQuery.js +4 -4
  398. package/dist/client/observability/installClientErrorReporter.js +1 -1
  399. package/dist/client/observability/reportClientError.js +2 -2
  400. package/dist/client-entry.js +5 -5
  401. package/dist/client.d.ts +4 -0
  402. package/dist/client.js +336 -332
  403. package/dist/constants/api-endpoints.d.ts +16 -0
  404. package/dist/constants/api-endpoints.js +17 -0
  405. package/dist/constants/cache-invalidation.js +1 -1
  406. package/dist/constants/field-names.d.ts +2 -0
  407. package/dist/constants/field-names.js +10 -0
  408. package/dist/constants/index.js +10 -10
  409. package/dist/constants/notification-types.js +1 -1
  410. package/dist/contracts/index.js +12 -12
  411. package/dist/contracts/realtime-session.js +2 -2
  412. package/dist/core/EventBus.js +2 -2
  413. package/dist/core/Logger.js +2 -2
  414. package/dist/core/Queue.js +1 -1
  415. package/dist/core/StorageManager.js +2 -2
  416. package/dist/core/browser.js +9 -9
  417. package/dist/core/components/SyncManagerMount.js +2 -2
  418. package/dist/core/contact-submissions.repository.js +1 -1
  419. package/dist/core/copilot-log.repository.js +1 -1
  420. package/dist/core/hooks/useSiteSettings.js +2 -2
  421. package/dist/core/hooks/useSyncManager.js +3 -3
  422. package/dist/core/index.js +17 -17
  423. package/dist/core/integration-keys.js +2 -2
  424. package/dist/core/mutation-events.js +1 -1
  425. package/dist/core/newsletter-actions.js +2 -2
  426. package/dist/core/newsletter.repository.js +2 -2
  427. package/dist/core/server-action.js +5 -5
  428. package/dist/core/site-config.js +1 -1
  429. package/dist/core/unit-of-work.js +20 -20
  430. package/dist/errors/api-error.js +1 -1
  431. package/dist/errors/authentication-error.js +1 -1
  432. package/dist/errors/authorization-error.js +1 -1
  433. package/dist/errors/conflict-error.js +1 -1
  434. package/dist/errors/database-error.js +2 -2
  435. package/dist/errors/describe-cause.js +1 -1
  436. package/dist/errors/error-display-map.js +3 -3
  437. package/dist/errors/error-envelope.js +1 -1
  438. package/dist/errors/error-handler.js +3 -3
  439. package/dist/errors/error-mapping.js +7 -7
  440. package/dist/errors/index.js +18 -18
  441. package/dist/errors/normalize.js +2 -2
  442. package/dist/errors/not-found-error.js +1 -1
  443. package/dist/errors/payment-provider-unreachable.js +1 -1
  444. package/dist/errors/safe-read.js +2 -2
  445. package/dist/errors/validation-error.js +1 -1
  446. package/dist/features/about/components/AboutView.js +2 -2
  447. package/dist/features/about/components/DeveloperView.js +6 -6
  448. package/dist/features/about/components/FAQPageView.js +5 -5
  449. package/dist/features/about/components/FeesView.js +4 -4
  450. package/dist/features/about/components/HelpPageView.js +5 -5
  451. package/dist/features/about/components/HowAuctionsWorkView.js +4 -4
  452. package/dist/features/about/components/HowCheckoutWorksView.js +4 -4
  453. package/dist/features/about/components/HowEmiWorksView.js +5 -5
  454. package/dist/features/about/components/HowOffersWorkView.js +4 -4
  455. package/dist/features/about/components/HowOrdersWorkView.js +4 -4
  456. package/dist/features/about/components/HowPayoutsWorkView.js +4 -4
  457. package/dist/features/about/components/HowPreOrdersWorkView.js +4 -4
  458. package/dist/features/about/components/HowReviewsWorkView.js +4 -4
  459. package/dist/features/about/components/PolicyPageView.js +7 -7
  460. package/dist/features/about/components/PublicProfileView.js +15 -15
  461. package/dist/features/about/components/SecurityPrivacyView.js +4 -4
  462. package/dist/features/about/components/ShippingPolicyView.js +4 -4
  463. package/dist/features/about/components/TrackOrderView.js +5 -5
  464. package/dist/features/about/components/UnauthorizedView.js +4 -4
  465. package/dist/features/about/index.js +19 -19
  466. package/dist/features/about/schemas/index.js +1 -1
  467. package/dist/features/account/actions/address-actions.js +2 -2
  468. package/dist/features/account/actions/index.js +1 -1
  469. package/dist/features/account/api/[userId]/addresses/route.js +2 -2
  470. package/dist/features/account/api/[userId]/route.js +2 -2
  471. package/dist/features/account/columns/index.js +1 -1
  472. package/dist/features/account/components/AddressBook.js +1 -1
  473. package/dist/features/account/components/AddressFilters.js +3 -3
  474. package/dist/features/account/components/AddressForm.js +9 -9
  475. package/dist/features/account/components/AddressInlineSelect.js +4 -4
  476. package/dist/features/account/components/AddressSelectorCreate.js +2 -2
  477. package/dist/features/account/components/AddressesIndexListing.js +6 -6
  478. package/dist/features/account/components/BecomeSellerView.js +1 -1
  479. package/dist/features/account/components/BuyerAccountGuideView.js +3 -3
  480. package/dist/features/account/components/BuyerAuctionsGuideView.js +2 -2
  481. package/dist/features/account/components/BuyerOrdersGuideView.js +2 -2
  482. package/dist/features/account/components/BuyerShoppingGuideView.js +2 -2
  483. package/dist/features/account/components/LinkedAccountsSection.js +1 -1
  484. package/dist/features/account/components/NotificationBell.js +6 -6
  485. package/dist/features/account/components/NotificationPreferencesPanel.js +4 -4
  486. package/dist/features/account/components/OrderDetailView.js +1 -1
  487. package/dist/features/account/components/ProfileView.js +1 -1
  488. package/dist/features/account/components/UserAccountHubView.js +1 -1
  489. package/dist/features/account/components/UserAddressesView.js +1 -1
  490. package/dist/features/account/components/UserBidsView.js +8 -8
  491. package/dist/features/account/components/UserNotificationsView.js +1 -1
  492. package/dist/features/account/components/UserOffersPanel.js +5 -5
  493. package/dist/features/account/components/UserOrderTrackView.js +1 -1
  494. package/dist/features/account/components/UserOrdersView.js +10 -10
  495. package/dist/features/account/components/UserReturnsView.js +7 -7
  496. package/dist/features/account/components/UserSettingsView.js +1 -1
  497. package/dist/features/account/components/UserSidebar.js +9 -9
  498. package/dist/features/account/components/UserSupportView.js +11 -11
  499. package/dist/features/account/components/index.js +20 -20
  500. package/dist/features/account/hooks/useAccount.js +2 -2
  501. package/dist/features/account/hooks/useAddressSelector.js +2 -2
  502. package/dist/features/account/hooks/useAddresses.js +2 -2
  503. package/dist/features/account/hooks/useCollapsedSections.js +2 -2
  504. package/dist/features/account/hooks/useDataViewMode.js +1 -1
  505. package/dist/features/account/hooks/useNotifications.js +2 -2
  506. package/dist/features/account/hooks/useProfile.js +3 -3
  507. package/dist/features/account/hooks/useProfileStats.js +2 -2
  508. package/dist/features/account/hooks/usePublicProfile.d.ts +1 -1
  509. package/dist/features/account/hooks/usePublicProfile.js +3 -3
  510. package/dist/features/account/index.js +13 -13
  511. package/dist/features/account/schemas/firestore.js +1 -1
  512. package/dist/features/account/schemas/index.js +2 -2
  513. package/dist/features/account/server.js +3 -3
  514. package/dist/features/addresses/components/AddressLocationFields.js +5 -5
  515. package/dist/features/addresses/hooks/usePostalLookup.js +2 -2
  516. package/dist/features/addresses/index.js +2 -2
  517. package/dist/features/addresses/repository/addresses.repository.js +6 -6
  518. package/dist/features/addresses/schemas/address-form.js +2 -2
  519. package/dist/features/addresses/schemas/index.js +3 -3
  520. package/dist/features/addresses/server.js +2 -2
  521. package/dist/features/admin/actions/admin-actions.d.ts +1 -1
  522. package/dist/features/admin/actions/admin-actions.js +17 -17
  523. package/dist/features/admin/actions/admin-coupon-actions.js +5 -5
  524. package/dist/features/admin/actions/admin-read-actions.d.ts +4 -4
  525. package/dist/features/admin/actions/admin-read-actions.js +12 -12
  526. package/dist/features/admin/actions/index.js +5 -5
  527. package/dist/features/admin/actions/notification-actions.js +13 -13
  528. package/dist/features/admin/actions/site-settings-actions.js +2 -2
  529. package/dist/features/admin/api/bids/route.js +2 -2
  530. package/dist/features/admin/api/coupons/route.js +2 -2
  531. package/dist/features/admin/api/products/route.js +2 -2
  532. package/dist/features/admin/api/reviews/route.js +2 -2
  533. package/dist/features/admin/components/AdminActionIndexView.js +4 -4
  534. package/dist/features/admin/components/AdminAdEditorView.js +9 -9
  535. package/dist/features/admin/components/AdminAddressBookView.js +4 -4
  536. package/dist/features/admin/components/AdminAddressClustersView.js +3 -3
  537. package/dist/features/admin/components/AdminAddressEditorView.js +13 -13
  538. package/dist/features/admin/components/AdminAddressesView.js +9 -9
  539. package/dist/features/admin/components/AdminAdsView.js +8 -8
  540. package/dist/features/admin/components/AdminAllEventEntriesView.js +7 -7
  541. package/dist/features/admin/components/AdminAnalyticsGuideView.js +2 -2
  542. package/dist/features/admin/components/AdminAnalyticsView.js +7 -7
  543. package/dist/features/admin/components/AdminArtView.js +4 -4
  544. package/dist/features/admin/components/AdminAuditLogView.js +6 -6
  545. package/dist/features/admin/components/AdminBidsView.js +12 -12
  546. package/dist/features/admin/components/AdminBlogEditorView.js +8 -8
  547. package/dist/features/admin/components/AdminBlogView.js +7 -7
  548. package/dist/features/admin/components/AdminBrandEditorView.js +11 -11
  549. package/dist/features/admin/components/AdminBrandsView.js +7 -7
  550. package/dist/features/admin/components/AdminBundleEditorView.js +13 -13
  551. package/dist/features/admin/components/AdminBundlesView.js +8 -8
  552. package/dist/features/admin/components/AdminCarouselEditorView.js +8 -8
  553. package/dist/features/admin/components/AdminCarouselGroupEditorView.js +6 -6
  554. package/dist/features/admin/components/AdminCarouselView.js +11 -11
  555. package/dist/features/admin/components/AdminCartsView.js +5 -5
  556. package/dist/features/admin/components/AdminCatalogGuideView.js +2 -2
  557. package/dist/features/admin/components/AdminCategoriesView.js +6 -6
  558. package/dist/features/admin/components/AdminCategoryEditorView.js +7 -7
  559. package/dist/features/admin/components/AdminClassifiedView.js +4 -4
  560. package/dist/features/admin/components/AdminContactEditorView.js +3 -3
  561. package/dist/features/admin/components/AdminContactView.js +10 -10
  562. package/dist/features/admin/components/AdminContentGuideView.js +2 -2
  563. package/dist/features/admin/components/AdminCouponEditorView.js +12 -12
  564. package/dist/features/admin/components/AdminCouponsView.js +10 -10
  565. package/dist/features/admin/components/AdminDashboardView.js +5 -5
  566. package/dist/features/admin/components/AdminDigitalCodesView.js +4 -4
  567. package/dist/features/admin/components/AdminEmployeeEditorView.js +10 -10
  568. package/dist/features/admin/components/AdminFaqEditorView.js +6 -6
  569. package/dist/features/admin/components/AdminFaqsView.js +6 -6
  570. package/dist/features/admin/components/AdminFeatureEditorView.js +9 -9
  571. package/dist/features/admin/components/AdminFeaturesView.js +8 -8
  572. package/dist/features/admin/components/AdminFulfillmentView.js +9 -9
  573. package/dist/features/admin/components/AdminGroupedListingsView.js +9 -9
  574. package/dist/features/admin/components/AdminGuideHubView.js +2 -2
  575. package/dist/features/admin/components/AdminHistoryView.js +6 -6
  576. package/dist/features/admin/components/AdminLiveView.js +4 -4
  577. package/dist/features/admin/components/AdminMediaView.js +5 -5
  578. package/dist/features/admin/components/AdminNavEditorView.js +7 -7
  579. package/dist/features/admin/components/AdminNavigationView.js +5 -5
  580. package/dist/features/admin/components/AdminNewsletterView.js +9 -9
  581. package/dist/features/admin/components/AdminNotificationsView.js +10 -10
  582. package/dist/features/admin/components/AdminOffersView.js +13 -13
  583. package/dist/features/admin/components/AdminOrderEditorView.js +15 -15
  584. package/dist/features/admin/components/AdminOrdersGuideView.js +2 -2
  585. package/dist/features/admin/components/AdminOrdersView.js +13 -13
  586. package/dist/features/admin/components/AdminPaymentClustersView.js +3 -3
  587. package/dist/features/admin/components/AdminPaymentMethodsView.js +8 -8
  588. package/dist/features/admin/components/AdminPaymentsGuideView.js +2 -2
  589. package/dist/features/admin/components/AdminPayoutMarkPaidModal.js +7 -7
  590. package/dist/features/admin/components/AdminPayoutsView.js +12 -12
  591. package/dist/features/admin/components/AdminPrizeDrawsView.js +9 -9
  592. package/dist/features/admin/components/AdminProductEditorView.js +13 -13
  593. package/dist/features/admin/components/AdminProductsView.js +15 -15
  594. package/dist/features/admin/components/AdminReturnRequestsView.js +7 -7
  595. package/dist/features/admin/components/AdminReviewsView.js +9 -9
  596. package/dist/features/admin/components/AdminScammerEditorView.js +6 -6
  597. package/dist/features/admin/components/AdminScammersView.js +10 -10
  598. package/dist/features/admin/components/AdminSectionsView.js +15 -15
  599. package/dist/features/admin/components/AdminSessionsManager.js +1 -1
  600. package/dist/features/admin/components/AdminSessionsView.js +6 -6
  601. package/dist/features/admin/components/AdminSidebar.js +8 -8
  602. package/dist/features/admin/components/AdminSiteConfigGuideView.js +2 -2
  603. package/dist/features/admin/components/AdminSiteSettingsView.js +17 -17
  604. package/dist/features/admin/components/AdminStickersView.js +4 -4
  605. package/dist/features/admin/components/AdminStoreAddressesView.js +4 -4
  606. package/dist/features/admin/components/AdminStoreEditorView.js +7 -7
  607. package/dist/features/admin/components/AdminStoresGuideView.js +2 -2
  608. package/dist/features/admin/components/AdminStoresView.js +11 -11
  609. package/dist/features/admin/components/AdminSublistingCategoriesView.js +6 -6
  610. package/dist/features/admin/components/AdminSublistingCategoryEditorView.js +7 -7
  611. package/dist/features/admin/components/AdminSupportTicketDetailView.js +9 -9
  612. package/dist/features/admin/components/AdminSupportTicketsView.js +9 -9
  613. package/dist/features/admin/components/AdminTaxCodeEditorView.js +8 -8
  614. package/dist/features/admin/components/AdminTaxCodesView.js +5 -5
  615. package/dist/features/admin/components/AdminTeamGuideView.js +1 -1
  616. package/dist/features/admin/components/AdminTeamView.js +8 -8
  617. package/dist/features/admin/components/AdminTesterChecklistItemEditorView.js +10 -10
  618. package/dist/features/admin/components/AdminTesterChecklistView.js +9 -9
  619. package/dist/features/admin/components/AdminTopBar.js +1 -1
  620. package/dist/features/admin/components/AdminTrustGuideView.js +2 -2
  621. package/dist/features/admin/components/AdminUserEditorView.js +8 -8
  622. package/dist/features/admin/components/AdminUsersGuideView.js +2 -2
  623. package/dist/features/admin/components/AdminUsersView.js +15 -15
  624. package/dist/features/admin/components/AdminViewCards.js +3 -3
  625. package/dist/features/admin/components/AdminWhatsAppGuideView.js +2 -2
  626. package/dist/features/admin/components/AdminWishlistsView.js +6 -6
  627. package/dist/features/admin/components/BrandQuickCreateForm.js +8 -8
  628. package/dist/features/admin/components/CategoryQuickCreateForm.js +8 -8
  629. package/dist/features/admin/components/DashboardStats.js +4 -4
  630. package/dist/features/admin/components/DataListingView.js +7 -7
  631. package/dist/features/admin/components/DataTable.js +5 -5
  632. package/dist/features/admin/components/DemoSeedView.js +1 -1
  633. package/dist/features/admin/components/DrawerFormFooter.js +1 -1
  634. package/dist/features/admin/components/QuickEditMenu.js +4 -4
  635. package/dist/features/admin/components/ViewAuditLogEntryModal.js +1 -1
  636. package/dist/features/admin/components/ViewNotificationModal.js +2 -2
  637. package/dist/features/admin/components/analytics/AdminAnalyticsCharts.js +2 -2
  638. package/dist/features/admin/components/analytics/AdminPageViewsReportView.js +4 -4
  639. package/dist/features/admin/components/analytics/AdminStatCard.js +2 -2
  640. package/dist/features/admin/components/analytics/AdminTopProductsTable.js +1 -1
  641. package/dist/features/admin/components/analytics/index.js +3 -3
  642. package/dist/features/admin/components/index.js +94 -94
  643. package/dist/features/admin/components/sections/adminSectionsBuildParse.js +1 -1
  644. package/dist/features/admin/components/sections/adminSectionsTypes.d.ts +50 -1
  645. package/dist/features/admin/components/sections/adminSectionsTypes.js +30 -11
  646. package/dist/features/admin/hooks/useAdmin.js +2 -2
  647. package/dist/features/admin/hooks/useAdminListing.js +5 -5
  648. package/dist/features/admin/hooks/useAdminListingData.js +2 -2
  649. package/dist/features/admin/hooks/useAdminSectionsListing.js +2 -2
  650. package/dist/features/admin/index.js +7 -7
  651. package/dist/features/admin/repository/analytics-rollup.repository.js +1 -1
  652. package/dist/features/admin/repository/notification.repository.js +5 -5
  653. package/dist/features/admin/repository/site-settings.repository.js +7 -7
  654. package/dist/features/admin/schemas/admin-editor-forms.js +3 -3
  655. package/dist/features/admin/schemas/admin-ops-forms.js +3 -3
  656. package/dist/features/admin/schemas/admin-user-form.d.ts +4 -4
  657. package/dist/features/admin/schemas/admin-user-form.js +1 -1
  658. package/dist/features/admin/schemas/firestore.d.ts +29 -0
  659. package/dist/features/admin/schemas/firestore.js +8 -2
  660. package/dist/features/admin/schemas/homepage-section-form.js +2 -2
  661. package/dist/features/admin/schemas/index.js +1 -1
  662. package/dist/features/admin/schemas/nav-item-form.js +1 -1
  663. package/dist/features/admin/schemas/small-forms.js +1 -1
  664. package/dist/features/admin/server.js +8 -8
  665. package/dist/features/admin/types/index.js +1 -1
  666. package/dist/features/admin/utils/checkActionAllowed.js +4 -4
  667. package/dist/features/admin/utils/getDisabledRoutes.js +1 -1
  668. package/dist/features/admin/utils/getSiteSettingsGlobal.js +1 -1
  669. package/dist/features/analytics/components/PageViewTracker.js +3 -3
  670. package/dist/features/analytics/repository/page-views.repository.js +3 -3
  671. package/dist/features/auctions/actions/bid-actions.js +23 -23
  672. package/dist/features/auctions/actions/index.js +1 -1
  673. package/dist/features/auctions/api/route.js +2 -2
  674. package/dist/features/auctions/columns/index.js +1 -1
  675. package/dist/features/auctions/components/AuctionBidsTable.js +4 -4
  676. package/dist/features/auctions/components/AuctionBottomActions.js +9 -9
  677. package/dist/features/auctions/components/AuctionDetailPageView.js +35 -35
  678. package/dist/features/auctions/components/AuctionFilters.js +4 -4
  679. package/dist/features/auctions/components/AuctionLiveStatusBadge.js +2 -2
  680. package/dist/features/auctions/components/AuctionsListView.js +4 -4
  681. package/dist/features/auctions/components/CollapsibleBidHistory.js +4 -4
  682. package/dist/features/auctions/components/LiveBidPrice.js +3 -3
  683. package/dist/features/auctions/components/LiveMinIncrement.js +5 -5
  684. package/dist/features/auctions/components/MarketplaceAuctionCard.js +13 -13
  685. package/dist/features/auctions/components/MarketplaceAuctionGrid.js +2 -2
  686. package/dist/features/auctions/components/PlaceBidFormClient.js +17 -17
  687. package/dist/features/auctions/components/index.js +5 -5
  688. package/dist/features/auctions/hooks/useAuctions.js +3 -3
  689. package/dist/features/auctions/hooks/useBids.js +2 -2
  690. package/dist/features/auctions/hooks/useLiveAuctionBid.js +1 -1
  691. package/dist/features/auctions/hooks/usePlaceBid.js +2 -2
  692. package/dist/features/auctions/hooks/useRealtimeBids.js +3 -3
  693. package/dist/features/auctions/index.js +8 -8
  694. package/dist/features/auctions/repository/bid.repository.js +7 -7
  695. package/dist/features/auctions/schemas/firestore.js +1 -1
  696. package/dist/features/auctions/schemas/index.js +2 -2
  697. package/dist/features/auctions/server.js +3 -3
  698. package/dist/features/audit-log/repository/audit-log.repository.js +2 -2
  699. package/dist/features/auth/actions/index.js +1 -1
  700. package/dist/features/auth/actions/profile-actions.js +8 -8
  701. package/dist/features/auth/actions/user-slug.js +4 -4
  702. package/dist/features/auth/api/route.js +2 -2
  703. package/dist/features/auth/auth-helpers.js +2 -2
  704. package/dist/features/auth/checkout-value-otp.js +3 -3
  705. package/dist/features/auth/components/AuthStatusPanel.js +2 -2
  706. package/dist/features/auth/components/ForgotPasswordView.js +7 -7
  707. package/dist/features/auth/components/Guards.js +2 -2
  708. package/dist/features/auth/components/LoginForm.js +8 -8
  709. package/dist/features/auth/components/OAuthLoadingView.js +1 -1
  710. package/dist/features/auth/components/RegisterForm.js +9 -9
  711. package/dist/features/auth/components/ResetPasswordView.js +6 -6
  712. package/dist/features/auth/components/SocialAuthButtons.js +1 -1
  713. package/dist/features/auth/components/VerifyEmailView.js +2 -2
  714. package/dist/features/auth/components/index.js +9 -9
  715. package/dist/features/auth/hooks/useAuth.js +7 -7
  716. package/dist/features/auth/hooks/useAuthEvent.js +2 -2
  717. package/dist/features/auth/hooks/useLogout.js +2 -2
  718. package/dist/features/auth/hooks/useRBAC.js +3 -3
  719. package/dist/features/auth/index.js +11 -11
  720. package/dist/features/auth/repository/index.js +4 -4
  721. package/dist/features/auth/repository/session.repository.js +7 -7
  722. package/dist/features/auth/repository/sms-counter.repository.js +2 -2
  723. package/dist/features/auth/repository/token.repository.js +6 -6
  724. package/dist/features/auth/repository/user.repository.js +5 -5
  725. package/dist/features/auth/schemas/index.js +3 -3
  726. package/dist/features/auth/server/checkSoftBan.js +1 -1
  727. package/dist/features/auth/server.js +5 -5
  728. package/dist/features/auth/token-store.js +3 -3
  729. package/dist/features/before-after/api/[id]/route.js +2 -2
  730. package/dist/features/before-after/api/route.js +2 -2
  731. package/dist/features/before-after/columns/index.js +1 -1
  732. package/dist/features/before-after/components/BeforeAfterGallery.js +2 -2
  733. package/dist/features/before-after/components/BeforeAfterSlider.js +1 -1
  734. package/dist/features/before-after/components/index.js +2 -2
  735. package/dist/features/before-after/hooks/useBeforeAfter.js +2 -2
  736. package/dist/features/before-after/index.js +6 -6
  737. package/dist/features/blog/actions/blog-actions.js +6 -6
  738. package/dist/features/blog/actions/index.js +1 -1
  739. package/dist/features/blog/api/[slug]/route.js +3 -3
  740. package/dist/features/blog/api/route.js +3 -3
  741. package/dist/features/blog/columns/index.js +1 -1
  742. package/dist/features/blog/components/BlogFeaturedCard.js +6 -6
  743. package/dist/features/blog/components/BlogFilters.js +7 -7
  744. package/dist/features/blog/components/BlogIndexListing.js +9 -9
  745. package/dist/features/blog/components/BlogIndexPageView.js +6 -6
  746. package/dist/features/blog/components/BlogListView.js +6 -6
  747. package/dist/features/blog/components/BlogPostForm.js +6 -6
  748. package/dist/features/blog/components/BlogPostView.js +10 -10
  749. package/dist/features/blog/components/index.js +6 -6
  750. package/dist/features/blog/hooks/useBlog.js +2 -2
  751. package/dist/features/blog/index.js +6 -6
  752. package/dist/features/blog/repository/blog.repository.js +8 -8
  753. package/dist/features/blog/schemas/blog-form.js +2 -2
  754. package/dist/features/blog/schemas/firestore.js +1 -1
  755. package/dist/features/blog/schemas/index.js +4 -4
  756. package/dist/features/blog/server.js +4 -4
  757. package/dist/features/cart/actions/cart-actions.js +16 -16
  758. package/dist/features/cart/actions/index.js +1 -1
  759. package/dist/features/cart/api/[id]/route.js +2 -2
  760. package/dist/features/cart/api/route.js +2 -2
  761. package/dist/features/cart/columns/index.js +2 -2
  762. package/dist/features/cart/components/CartDrawer.js +6 -6
  763. package/dist/features/cart/components/CartGroupLineRow.js +5 -5
  764. package/dist/features/cart/components/CartPriceBreakdown.d.ts +6 -0
  765. package/dist/features/cart/components/CartPriceBreakdown.js +3 -3
  766. package/dist/features/cart/components/CartSummary.js +1 -1
  767. package/dist/features/cart/components/CartView.js +2 -2
  768. package/dist/features/cart/components/CheckoutAddressStep.js +1 -1
  769. package/dist/features/cart/components/CheckoutSuccessView.js +1 -1
  770. package/dist/features/cart/components/CheckoutView.js +2 -2
  771. package/dist/features/cart/components/ShippingPicker.js +3 -3
  772. package/dist/features/cart/components/StoreAddonsPicker.d.ts +35 -1
  773. package/dist/features/cart/components/StoreAddonsPicker.js +39 -11
  774. package/dist/features/cart/components/index.js +10 -10
  775. package/dist/features/cart/hooks/useAddToCart.js +8 -8
  776. package/dist/features/cart/hooks/useCart.js +3 -3
  777. package/dist/features/cart/hooks/useCartCount.js +4 -4
  778. package/dist/features/cart/hooks/useCartQuery.js +1 -1
  779. package/dist/features/cart/hooks/useCheckoutReadQueries.js +1 -1
  780. package/dist/features/cart/hooks/useGuestCart.js +1 -1
  781. package/dist/features/cart/hooks/useGuestCartMerge.js +4 -4
  782. package/dist/features/cart/hooks/useOrder.js +2 -2
  783. package/dist/features/cart/index.js +15 -15
  784. package/dist/features/cart/repository/cart.repository.js +7 -6
  785. package/dist/features/cart/schemas/firestore.d.ts +10 -0
  786. package/dist/features/cart/schemas/index.d.ts +2 -2
  787. package/dist/features/cart/schemas/index.js +2 -2
  788. package/dist/features/cart/server.js +2 -2
  789. package/dist/features/cart/utils/guest-cart.js +2 -2
  790. package/dist/features/cart/utils/line-total.js +1 -1
  791. package/dist/features/cart/utils/pending-ops.js +1 -1
  792. package/dist/features/catalogue/actions/approve-catalogue-listing.js +5 -5
  793. package/dist/features/catalogue/actions/list-from-catalogue.js +6 -6
  794. package/dist/features/catalogue/actions/submit-for-approval.js +4 -4
  795. package/dist/features/catalogue/components/AdminCatalogueApprovalsView.js +7 -7
  796. package/dist/features/catalogue/components/CatalogueItemEditorView.js +12 -12
  797. package/dist/features/catalogue/components/PublicCatalogueItemDetailView.js +7 -7
  798. package/dist/features/catalogue/components/PublicCatalogueView.js +6 -6
  799. package/dist/features/catalogue/components/UserCatalogueView.js +5 -5
  800. package/dist/features/catalogue/index.js +10 -10
  801. package/dist/features/catalogue/repository/catalogue.repository.js +4 -4
  802. package/dist/features/catalogue/schemas/firestore.js +1 -1
  803. package/dist/features/catalogue/schemas/index.js +2 -2
  804. package/dist/features/catalogue/schemas/validation.js +1 -1
  805. package/dist/features/catalogue/utils/freshness.js +2 -2
  806. package/dist/features/catalogue/utils/product-from-item.js +1 -1
  807. package/dist/features/categories/actions/category-actions.js +3 -3
  808. package/dist/features/categories/actions/index.js +1 -1
  809. package/dist/features/categories/api/[id]/description-template/route.js +4 -4
  810. package/dist/features/categories/api/[id]/route.js +4 -4
  811. package/dist/features/categories/api/route.js +8 -8
  812. package/dist/features/categories/columns/index.js +1 -1
  813. package/dist/features/categories/components/BrandDetailPageView.js +60 -18
  814. package/dist/features/categories/components/BrandDetailTabs.js +9 -9
  815. package/dist/features/categories/components/BreadcrumbTrail.js +2 -2
  816. package/dist/features/categories/components/BundleBuyNowCta.js +7 -7
  817. package/dist/features/categories/components/BundleCollage.js +7 -7
  818. package/dist/features/categories/components/BundleDetailView.js +10 -10
  819. package/dist/features/categories/components/BundleDynamicRuleEditor.js +5 -5
  820. package/dist/features/categories/components/BundleItemsPicker.js +4 -4
  821. package/dist/features/categories/components/BundlesListView.js +6 -6
  822. package/dist/features/categories/components/CategoriesIndexListing.js +9 -9
  823. package/dist/features/categories/components/CategoriesIndexPageView.js +3 -3
  824. package/dist/features/categories/components/CategoryBundlesListing.js +6 -6
  825. package/dist/features/categories/components/CategoryDetailPageView.js +117 -17
  826. package/dist/features/categories/components/CategoryDetailTabs.js +10 -10
  827. package/dist/features/categories/components/CategoryFilters.js +4 -4
  828. package/dist/features/categories/components/CategoryForm.js +6 -6
  829. package/dist/features/categories/components/CategoryGrid.js +4 -4
  830. package/dist/features/categories/components/CategoryHighlightsAndFaqSection.js +2 -2
  831. package/dist/features/categories/components/CategoryProductsListing.js +17 -17
  832. package/dist/features/categories/components/CategoryProductsView.js +3 -3
  833. package/dist/features/categories/components/CategorySelectorCreate.js +7 -7
  834. package/dist/features/categories/components/CategorySortSelect.js +2 -2
  835. package/dist/features/categories/components/CategoryStoresListing.js +3 -3
  836. package/dist/features/categories/components/CategoryTableColumns.js +3 -3
  837. package/dist/features/categories/components/CategoryTemplatePicker.js +5 -5
  838. package/dist/features/categories/components/CategoryTree.js +1 -1
  839. package/dist/features/categories/components/ConcernCard.js +2 -2
  840. package/dist/features/categories/components/ConcernGrid.js +2 -2
  841. package/dist/features/categories/components/index.js +20 -20
  842. package/dist/features/categories/hooks/useCategories.js +3 -3
  843. package/dist/features/categories/hooks/useCategorySelector.js +2 -2
  844. package/dist/features/categories/hooks/useCategoryTree.js +3 -3
  845. package/dist/features/categories/index.js +7 -7
  846. package/dist/features/categories/repository/categories.repository.js +8 -8
  847. package/dist/features/categories/repository/price-index.repository.d.ts +69 -0
  848. package/dist/features/categories/repository/price-index.repository.js +31 -1
  849. package/dist/features/categories/schemas/bundle-form.js +3 -3
  850. package/dist/features/categories/schemas/firestore.js +2 -2
  851. package/dist/features/categories/schemas/index.d.ts +60 -60
  852. package/dist/features/categories/schemas/index.js +2 -2
  853. package/dist/features/categories/server.js +5 -5
  854. package/dist/features/checkout/actions/checkout-value-otp-actions.js +13 -13
  855. package/dist/features/checkout/actions/index.js +1 -1
  856. package/dist/features/checkout/components/CheckoutStepper.js +1 -1
  857. package/dist/features/checkout/components/index.js +1 -1
  858. package/dist/features/checkout/index.js +4 -4
  859. package/dist/features/checkout/repository/failed-checkout.repository.js +2 -2
  860. package/dist/features/checkout/schemas/index.js +1 -1
  861. package/dist/features/checkout/server.js +2 -2
  862. package/dist/features/classified/components/ClassifiedDetailPageView.js +22 -22
  863. package/dist/features/classified/components/ClassifiedFilters.js +4 -4
  864. package/dist/features/classified/components/index.js +1 -1
  865. package/dist/features/collections/api/[slug]/route.js +2 -2
  866. package/dist/features/collections/api/route.js +2 -2
  867. package/dist/features/collections/columns/index.js +1 -1
  868. package/dist/features/collections/components/CollectionCard.js +3 -3
  869. package/dist/features/collections/components/index.js +1 -1
  870. package/dist/features/collections/hooks/useCollections.js +2 -2
  871. package/dist/features/collections/index.js +6 -6
  872. package/dist/features/consultation/api/[id]/route.js +2 -2
  873. package/dist/features/consultation/api/route.js +2 -2
  874. package/dist/features/consultation/columns/index.js +1 -1
  875. package/dist/features/consultation/components/ConsultationForm.js +6 -6
  876. package/dist/features/consultation/components/index.js +1 -1
  877. package/dist/features/consultation/hooks/useBookConsultation.js +2 -2
  878. package/dist/features/consultation/index.js +6 -6
  879. package/dist/features/consultation/schemas/index.d.ts +2 -2
  880. package/dist/features/consultation/schemas/index.js +1 -1
  881. package/dist/features/consultation/server.js +1 -1
  882. package/dist/features/contact/components/ContactForm.js +4 -4
  883. package/dist/features/contact/components/ContactInfoSidebar.js +1 -1
  884. package/dist/features/contact/components/ContactPageView.js +6 -6
  885. package/dist/features/contact/components/index.js +3 -3
  886. package/dist/features/contact/email.js +9 -9
  887. package/dist/features/contact/index.js +2 -2
  888. package/dist/features/contact/schemas/inquiry-forms.js +1 -1
  889. package/dist/features/contact/server.js +1 -1
  890. package/dist/features/copilot/components/AdminCopilotView.js +4 -4
  891. package/dist/features/copilot/components/index.js +1 -1
  892. package/dist/features/copilot/hooks/useCopilotChat.js +2 -2
  893. package/dist/features/copilot/hooks/useCopilotFeedback.js +2 -2
  894. package/dist/features/copilot/index.js +3 -3
  895. package/dist/features/corporate/api/[id]/route.js +2 -2
  896. package/dist/features/corporate/api/route.js +2 -2
  897. package/dist/features/corporate/columns/index.js +1 -1
  898. package/dist/features/corporate/components/CorporateInquiryForm.js +7 -7
  899. package/dist/features/corporate/components/index.js +1 -1
  900. package/dist/features/corporate/hooks/useSubmitCorporateInquiry.js +2 -2
  901. package/dist/features/corporate/index.js +6 -6
  902. package/dist/features/corporate/schemas/index.js +1 -1
  903. package/dist/features/corporate/server.js +1 -1
  904. package/dist/features/cron/index.js +4 -4
  905. package/dist/features/cron/jobs/auction-expiry.job.js +3 -3
  906. package/dist/features/cron/jobs/preorder-reminder.job.js +3 -3
  907. package/dist/features/digital-codes/components/DigitalCodeDetailPageView.js +20 -20
  908. package/dist/features/digital-codes/components/DigitalCodeFilters.js +4 -4
  909. package/dist/features/digital-codes/components/index.js +1 -1
  910. package/dist/features/email/index.js +1 -1
  911. package/dist/features/email/notification-templates.js +1 -1
  912. package/dist/features/events/actions/event-actions.js +10 -10
  913. package/dist/features/events/actions/index.js +1 -1
  914. package/dist/features/events/api/[id]/route.js +4 -4
  915. package/dist/features/events/columns/index.js +1 -1
  916. package/dist/features/events/components/AdminEventEditorView.js +10 -10
  917. package/dist/features/events/components/AdminEventEntriesView.js +9 -9
  918. package/dist/features/events/components/AdminEventsView.js +8 -8
  919. package/dist/features/events/components/EventBanner.js +4 -4
  920. package/dist/features/events/components/EventCard.js +8 -8
  921. package/dist/features/events/components/EventDetailView.js +1 -1
  922. package/dist/features/events/components/EventFilters.js +8 -8
  923. package/dist/features/events/components/EventFormDrawer.js +1 -1
  924. package/dist/features/events/components/EventLeaderboard.js +1 -1
  925. package/dist/features/events/components/EventOfferCard.js +5 -5
  926. package/dist/features/events/components/EventParticipateView.js +2 -2
  927. package/dist/features/events/components/EventPollWidget.js +5 -5
  928. package/dist/features/events/components/EventRaffleEntryForm.js +7 -7
  929. package/dist/features/events/components/EventRaffleWinnerView.js +1 -1
  930. package/dist/features/events/components/EventRafflesSection.js +8 -8
  931. package/dist/features/events/components/EventSaleBanner.js +4 -4
  932. package/dist/features/events/components/EventStatusBadge.js +1 -1
  933. package/dist/features/events/components/EventsIndexListing.js +9 -9
  934. package/dist/features/events/components/EventsListPageView.js +9 -9
  935. package/dist/features/events/components/EventsListView.js +2 -2
  936. package/dist/features/events/components/RelatedEventsCarousel.js +6 -6
  937. package/dist/features/events/components/SpinWheelView.js +4 -4
  938. package/dist/features/events/components/index.js +21 -21
  939. package/dist/features/events/hooks/useBulkEvent.js +1 -1
  940. package/dist/features/events/hooks/useEvent.js +2 -2
  941. package/dist/features/events/hooks/useEvents.js +2 -2
  942. package/dist/features/events/index.js +8 -8
  943. package/dist/features/events/repository/event-entry.repository.js +6 -6
  944. package/dist/features/events/repository/events.repository.js +10 -10
  945. package/dist/features/events/schemas/event-form.js +1 -1
  946. package/dist/features/events/schemas/index.js +3 -3
  947. package/dist/features/events/server.js +4 -4
  948. package/dist/features/faq/actions/faq-actions.js +3 -3
  949. package/dist/features/faq/actions/index.js +1 -1
  950. package/dist/features/faq/columns/index.js +1 -1
  951. package/dist/features/faq/components/ContactCTA.js +1 -1
  952. package/dist/features/faq/components/FAQAccordion.js +1 -1
  953. package/dist/features/faq/components/FAQCategorySidebar.js +2 -2
  954. package/dist/features/faq/components/FAQHelpfulButtons.js +2 -2
  955. package/dist/features/faq/components/FAQPageContent.js +7 -7
  956. package/dist/features/faq/components/FAQSearchableList.js +2 -2
  957. package/dist/features/faq/components/FAQSortDropdown.js +1 -1
  958. package/dist/features/faq/components/RelatedFAQs.js +1 -1
  959. package/dist/features/faq/components/index.js +7 -7
  960. package/dist/features/faq/hooks/useFaqList.js +2 -2
  961. package/dist/features/faq/hooks/useFaqVote.js +2 -2
  962. package/dist/features/faq/index.js +7 -7
  963. package/dist/features/faq/repository/faqs.repository.js +6 -6
  964. package/dist/features/faq/schemas/firestore.js +3 -2
  965. package/dist/features/faq/schemas/index.js +2 -2
  966. package/dist/features/faq/server.js +2 -2
  967. package/dist/features/faq/types/index.d.ts +9 -1
  968. package/dist/features/faq/utils/getHomepageFaqsCached.js +1 -1
  969. package/dist/features/filters/AsyncFacetSection.js +2 -2
  970. package/dist/features/filters/FilterFacetSection.js +2 -2
  971. package/dist/features/filters/FilterPanel.js +5 -5
  972. package/dist/features/filters/RangeFilter.js +2 -2
  973. package/dist/features/filters/SwitchFilter.js +2 -2
  974. package/dist/features/filters/index.js +8 -8
  975. package/dist/features/forms/Checkbox.js +3 -3
  976. package/dist/features/forms/Input.js +3 -3
  977. package/dist/features/forms/Radio.js +2 -2
  978. package/dist/features/forms/Select.js +3 -3
  979. package/dist/features/forms/Slider.js +3 -3
  980. package/dist/features/forms/Textarea.js +3 -3
  981. package/dist/features/forms/Toggle.js +2 -2
  982. package/dist/features/forms/index.js +8 -8
  983. package/dist/features/grouped/components/GroupedListingDetailView.js +3 -3
  984. package/dist/features/grouped/components/GroupedListingEditorView.js +12 -12
  985. package/dist/features/grouped/components/GroupedListingsCarousel.js +7 -7
  986. package/dist/features/grouped/repository/grouped-listings.repository.js +3 -3
  987. package/dist/features/grouped/schemas/grouped-listing-form.js +1 -1
  988. package/dist/features/grouped/schemas/index.d.ts +2 -2
  989. package/dist/features/grouped/schemas/index.js +2 -2
  990. package/dist/features/history/actions/history-actions.js +2 -2
  991. package/dist/features/history/actions/index.js +1 -1
  992. package/dist/features/history/components/HistoryTracker.js +2 -2
  993. package/dist/features/history/hooks/useHistory.js +4 -4
  994. package/dist/features/history/hooks/useHistoryMergeOnLogin.js +2 -2
  995. package/dist/features/history/index.js +4 -4
  996. package/dist/features/history/repository/user-history.repository.js +3 -3
  997. package/dist/features/history/server.js +2 -2
  998. package/dist/features/history/utils/guest-history.js +2 -2
  999. package/dist/features/homepage/actions/carousel-actions.js +3 -3
  1000. package/dist/features/homepage/actions/homepage-section-actions.js +5 -5
  1001. package/dist/features/homepage/actions/index.js +2 -2
  1002. package/dist/features/homepage/api/[id]/route.js +3 -3
  1003. package/dist/features/homepage/api/carousel/[id]/route.js +4 -4
  1004. package/dist/features/homepage/api/carousel/route.js +4 -4
  1005. package/dist/features/homepage/api/route.js +4 -4
  1006. package/dist/features/homepage/api/sections/[id]/route.js +2 -2
  1007. package/dist/features/homepage/api/sections/route.js +2 -2
  1008. package/dist/features/homepage/components/AdSlot.js +5 -5
  1009. package/dist/features/homepage/components/AdvertisementBanner.js +4 -4
  1010. package/dist/features/homepage/components/AnnouncementBar.js +3 -3
  1011. package/dist/features/homepage/components/BeforeAfterCard.js +3 -3
  1012. package/dist/features/homepage/components/BlogArticlesSection.js +6 -6
  1013. package/dist/features/homepage/components/BrandsSection.js +8 -8
  1014. package/dist/features/homepage/components/CTABannerSection.js +5 -5
  1015. package/dist/features/homepage/components/CharacterHotspot.js +7 -7
  1016. package/dist/features/homepage/components/CharacterHotspotForm.js +7 -7
  1017. package/dist/features/homepage/components/CollectionCardsSection.js +2 -2
  1018. package/dist/features/homepage/components/CustomCardsSection.js +5 -5
  1019. package/dist/features/homepage/components/CustomerReviewsSection.js +4 -4
  1020. package/dist/features/homepage/components/EventsSection.js +4 -4
  1021. package/dist/features/homepage/components/FAQSection.js +3 -3
  1022. package/dist/features/homepage/components/FeaturedAuctionsSection.js +5 -5
  1023. package/dist/features/homepage/components/FeaturedBundlesSection.js +9 -9
  1024. package/dist/features/homepage/components/FeaturedPreOrdersSection.js +5 -5
  1025. package/dist/features/homepage/components/FeaturedProductsSection.js +6 -6
  1026. package/dist/features/homepage/components/FeaturedResultsSection.js +3 -3
  1027. package/dist/features/homepage/components/FeaturedStoresSection.js +5 -5
  1028. package/dist/features/homepage/components/GoogleReviewsSection.js +6 -6
  1029. package/dist/features/homepage/components/HeroBanner.js +4 -4
  1030. package/dist/features/homepage/components/HeroCarousel.js +7 -7
  1031. package/dist/features/homepage/components/HeroSection.js +1 -1
  1032. package/dist/features/homepage/components/HomepageCustomerReviewsSection.js +4 -4
  1033. package/dist/features/homepage/components/HomepageSectionBoundary.js +1 -1
  1034. package/dist/features/homepage/components/HomepageSkeleton.js +3 -3
  1035. package/dist/features/homepage/components/HomepageView.js +1 -1
  1036. package/dist/features/homepage/components/HowItWorksInfoView.js +3 -3
  1037. package/dist/features/homepage/components/HowItWorksSection.js +2 -2
  1038. package/dist/features/homepage/components/MarketplaceHomepageView.js +17 -17
  1039. package/dist/features/homepage/components/NewsletterBanner.js +7 -7
  1040. package/dist/features/homepage/components/NewsletterSection.js +1 -1
  1041. package/dist/features/homepage/components/PromoGrid.js +4 -4
  1042. package/dist/features/homepage/components/SectionCarousel.js +6 -6
  1043. package/dist/features/homepage/components/SecurityHighlightsSection.js +2 -2
  1044. package/dist/features/homepage/components/ShopByCategorySection.js +8 -8
  1045. package/dist/features/homepage/components/SiteFeaturesSection.js +2 -2
  1046. package/dist/features/homepage/components/SocialFeedSection.js +6 -6
  1047. package/dist/features/homepage/components/SocialPostCard.js +2 -2
  1048. package/dist/features/homepage/components/StatsCounterSection.js +1 -1
  1049. package/dist/features/homepage/components/TestimonialsCarousel.js +1 -1
  1050. package/dist/features/homepage/components/TrustBadges.js +1 -1
  1051. package/dist/features/homepage/components/TrustFeaturesSection.js +1 -1
  1052. package/dist/features/homepage/components/TrustIndicatorsSection.js +2 -2
  1053. package/dist/features/homepage/components/WelcomeSection.js +2 -2
  1054. package/dist/features/homepage/components/WhatsAppCommunitySection.js +3 -3
  1055. package/dist/features/homepage/components/index.js +39 -39
  1056. package/dist/features/homepage/constants/faq-category-labels.d.ts +0 -14
  1057. package/dist/features/homepage/constants/faq-category-labels.js +22 -14
  1058. package/dist/features/homepage/hooks/homepage-query.js +1 -1
  1059. package/dist/features/homepage/hooks/useActiveAd.js +2 -2
  1060. package/dist/features/homepage/hooks/useBlogArticles.js +2 -2
  1061. package/dist/features/homepage/hooks/useFeaturedAuctions.js +5 -5
  1062. package/dist/features/homepage/hooks/useFeaturedPreOrders.js +5 -5
  1063. package/dist/features/homepage/hooks/useFeaturedProducts.js +5 -5
  1064. package/dist/features/homepage/hooks/useFeaturedStores.js +2 -2
  1065. package/dist/features/homepage/hooks/useHeroCarousel.js +2 -2
  1066. package/dist/features/homepage/hooks/useHomepage.js +2 -2
  1067. package/dist/features/homepage/hooks/useHomepageEvents.js +2 -2
  1068. package/dist/features/homepage/hooks/useHomepageReviews.d.ts +1 -1
  1069. package/dist/features/homepage/hooks/useHomepageReviews.js +2 -2
  1070. package/dist/features/homepage/hooks/useHomepageSections.js +2 -2
  1071. package/dist/features/homepage/hooks/useNewsletter.js +2 -2
  1072. package/dist/features/homepage/hooks/useTopBrands.js +2 -2
  1073. package/dist/features/homepage/hooks/useTopCategories.js +2 -2
  1074. package/dist/features/homepage/index.js +17 -17
  1075. package/dist/features/homepage/lib/live-stats.js +5 -5
  1076. package/dist/features/homepage/lib/section-helpers.js +1 -1
  1077. package/dist/features/homepage/lib/section-renderer.js +32 -32
  1078. package/dist/features/homepage/repository/carousel.repository.js +6 -6
  1079. package/dist/features/homepage/repository/carousels.repository.js +6 -6
  1080. package/dist/features/homepage/repository/homepage-sections.repository.js +5 -5
  1081. package/dist/features/homepage/schemas/firestore.d.ts +26 -1
  1082. package/dist/features/homepage/schemas/firestore.js +1 -1
  1083. package/dist/features/homepage/schemas/index.js +2 -2
  1084. package/dist/features/homepage/server.js +9 -9
  1085. package/dist/features/jobs/actions/enqueue-job.js +6 -6
  1086. package/dist/features/jobs/repository/jobs.repository.js +2 -2
  1087. package/dist/features/layout/AppLayoutShell.js +18 -18
  1088. package/dist/features/layout/AutoBreadcrumbs.js +3 -3
  1089. package/dist/features/layout/BackToTop.js +4 -4
  1090. package/dist/features/layout/BottomActions.js +3 -3
  1091. package/dist/features/layout/BottomChrome.js +2 -2
  1092. package/dist/features/layout/BottomNavItem.js +1 -1
  1093. package/dist/features/layout/BottomNavLayout.js +2 -2
  1094. package/dist/features/layout/BottomNavbar.js +6 -6
  1095. package/dist/features/layout/BottomSheet.js +1 -1
  1096. package/dist/features/layout/Breadcrumbs.js +2 -2
  1097. package/dist/features/layout/FooterLayout.js +2 -2
  1098. package/dist/features/layout/LocaleSwitcher.js +1 -1
  1099. package/dist/features/layout/MainNavbar.d.ts +6 -0
  1100. package/dist/features/layout/MainNavbar.js +3 -2
  1101. package/dist/features/layout/NavItem.js +2 -2
  1102. package/dist/features/layout/NavbarLayout.d.ts +19 -0
  1103. package/dist/features/layout/NavbarLayout.js +24 -5
  1104. package/dist/features/layout/NavbarWithSettings.js +3 -3
  1105. package/dist/features/layout/PageTabs.js +2 -2
  1106. package/dist/features/layout/SidebarLayout.js +2 -2
  1107. package/dist/features/layout/TitleBar.js +6 -6
  1108. package/dist/features/layout/TitleBarLayout.js +2 -2
  1109. package/dist/features/layout/hooks/useBottomActions.js +1 -1
  1110. package/dist/features/layout/hooks/useFormBottomActions.js +4 -4
  1111. package/dist/features/layout/index.js +23 -23
  1112. package/dist/features/live/components/LiveItemDetailPageView.js +20 -20
  1113. package/dist/features/live/components/LiveItemFilters.js +4 -4
  1114. package/dist/features/live/components/index.js +1 -1
  1115. package/dist/features/lottery/repository/lottery-entry.repository.js +6 -6
  1116. package/dist/features/lottery/schemas/config-write.js +1 -1
  1117. package/dist/features/lottery/schemas/zod.d.ts +8 -8
  1118. package/dist/features/loyalty/api/admin/loyalty/grant/route.js +2 -2
  1119. package/dist/features/loyalty/api/balance/route.js +2 -2
  1120. package/dist/features/loyalty/api/earn/route.js +2 -2
  1121. package/dist/features/loyalty/api/history/route.js +2 -2
  1122. package/dist/features/loyalty/api/redeem/route.js +2 -2
  1123. package/dist/features/loyalty/columns/index.js +1 -1
  1124. package/dist/features/loyalty/components/CoinsDisplay.js +1 -1
  1125. package/dist/features/loyalty/components/index.js +1 -1
  1126. package/dist/features/loyalty/hooks/useLoyaltyBalance.js +3 -3
  1127. package/dist/features/loyalty/index.js +6 -6
  1128. package/dist/features/loyalty/server.js +1 -1
  1129. package/dist/features/loyalty/types/index.js +1 -1
  1130. package/dist/features/media/AvatarUpload.js +6 -6
  1131. package/dist/features/media/MediaAudio.js +2 -2
  1132. package/dist/features/media/MediaAvatar.js +2 -2
  1133. package/dist/features/media/MediaImage.js +4 -4
  1134. package/dist/features/media/MediaLightbox.js +2 -2
  1135. package/dist/features/media/MediaPickerModal.js +7 -7
  1136. package/dist/features/media/MediaVideo.js +3 -3
  1137. package/dist/features/media/finalize.js +3 -3
  1138. package/dist/features/media/hooks/useMedia.js +3 -3
  1139. package/dist/features/media/index.js +17 -17
  1140. package/dist/features/media/modals/ImageCropModal.js +2 -2
  1141. package/dist/features/media/modals/ImageEditor.d.ts +0 -1
  1142. package/dist/features/media/modals/ImageEditor.js +18 -3
  1143. package/dist/features/media/modals/VideoThumbnailSelector.js +3 -3
  1144. package/dist/features/media/modals/VideoTrimModal.js +5 -5
  1145. package/dist/features/media/repository/media-assets.repository.js +1 -1
  1146. package/dist/features/media/server.js +1 -1
  1147. package/dist/features/media/types/index.js +1 -1
  1148. package/dist/features/media/upload/CameraCapture.js +2 -2
  1149. package/dist/features/media/upload/ImageUpload.js +9 -9
  1150. package/dist/features/media/upload/MediaUploadField.js +11 -11
  1151. package/dist/features/media/upload/MediaUploadList.js +6 -6
  1152. package/dist/features/media/upload/video-poster.js +1 -1
  1153. package/dist/features/messaging/repository/message-budget.repository.js +2 -2
  1154. package/dist/features/orders/actions/index.js +2 -2
  1155. package/dist/features/orders/actions/order-actions.js +5 -5
  1156. package/dist/features/orders/actions/refund-actions.js +6 -6
  1157. package/dist/features/orders/api/track/[trackingId]/route.js +2 -2
  1158. package/dist/features/orders/columns/index.js +1 -1
  1159. package/dist/features/orders/components/MarketplaceOrderCard.js +4 -4
  1160. package/dist/features/orders/components/OrderAddonBadges.d.ts +4 -2
  1161. package/dist/features/orders/components/OrderAddonBadges.js +5 -4
  1162. package/dist/features/orders/components/OrderFilters.js +6 -6
  1163. package/dist/features/orders/components/OrderPaymentSummary.js +2 -2
  1164. package/dist/features/orders/components/OrderScopeTabs.js +4 -4
  1165. package/dist/features/orders/components/OrderSiblingPayments.js +5 -5
  1166. package/dist/features/orders/components/OrderStatusTimeline.js +2 -2
  1167. package/dist/features/orders/components/OrdersList.js +5 -5
  1168. package/dist/features/orders/components/RefundHistoryTable.js +3 -3
  1169. package/dist/features/orders/components/RefundRequestView.js +8 -8
  1170. package/dist/features/orders/components/index.js +9 -9
  1171. package/dist/features/orders/constants/order-scope.js +1 -1
  1172. package/dist/features/orders/hooks/useOrders.js +2 -2
  1173. package/dist/features/orders/index.js +9 -9
  1174. package/dist/features/orders/repository/orders.repository.d.ts +8 -0
  1175. package/dist/features/orders/repository/orders.repository.js +13 -11
  1176. package/dist/features/orders/schemas/buyer-forms.js +1 -1
  1177. package/dist/features/orders/schemas/firestore.d.ts +95 -1
  1178. package/dist/features/orders/schemas/firestore.js +1 -1
  1179. package/dist/features/orders/schemas/index.d.ts +6 -6
  1180. package/dist/features/orders/schemas/index.js +2 -2
  1181. package/dist/features/orders/server.js +3 -3
  1182. package/dist/features/orders/types/index.d.ts +3 -0
  1183. package/dist/features/orders/utils/order-splitter.js +2 -2
  1184. package/dist/features/payments/columns/index.js +1 -1
  1185. package/dist/features/payments/hooks/usePaymentEvent.js +2 -2
  1186. package/dist/features/payments/hooks/usePayments.js +2 -2
  1187. package/dist/features/payments/index.js +6 -6
  1188. package/dist/features/payments/repository/payout.repository.js +4 -4
  1189. package/dist/features/payments/repository/saved-payment-methods.repository.js +6 -6
  1190. package/dist/features/payments/schemas/firestore.js +1 -1
  1191. package/dist/features/payments/schemas/index.d.ts +6 -6
  1192. package/dist/features/payments/schemas/index.js +3 -3
  1193. package/dist/features/payments/server.js +4 -4
  1194. package/dist/features/pre-orders/api/[id]/route.js +2 -2
  1195. package/dist/features/pre-orders/api/[slug]/route.js +2 -2
  1196. package/dist/features/pre-orders/api/admin/[id]/route.js +2 -2
  1197. package/dist/features/pre-orders/api/admin/route.js +2 -2
  1198. package/dist/features/pre-orders/api/route.js +3 -3
  1199. package/dist/features/pre-orders/columns/index.js +1 -1
  1200. package/dist/features/pre-orders/components/MarketplacePreorderCard.d.ts +1 -1
  1201. package/dist/features/pre-orders/components/MarketplacePreorderCard.js +14 -14
  1202. package/dist/features/pre-orders/components/PreOrderActionsClient.js +4 -4
  1203. package/dist/features/pre-orders/components/PreOrderBadge.js +1 -1
  1204. package/dist/features/pre-orders/components/PreOrderBottomActions.js +1 -1
  1205. package/dist/features/pre-orders/components/PreOrderDetailPageView.js +26 -26
  1206. package/dist/features/pre-orders/components/PreOrderFilters.js +4 -4
  1207. package/dist/features/pre-orders/components/PreOrdersIndexListing.js +23 -23
  1208. package/dist/features/pre-orders/components/PreOrdersListView.js +4 -4
  1209. package/dist/features/pre-orders/components/PreorderCard.js +2 -2
  1210. package/dist/features/pre-orders/components/index.js +6 -6
  1211. package/dist/features/pre-orders/hooks/usePreOrders.js +2 -2
  1212. package/dist/features/pre-orders/index.js +6 -6
  1213. package/dist/features/pre-orders/schemas/index.js +1 -1
  1214. package/dist/features/pre-orders/server.js +1 -1
  1215. package/dist/features/price-index/components/PriceIndexToolView.d.ts +87 -0
  1216. package/dist/features/price-index/components/PriceIndexToolView.js +140 -0
  1217. package/dist/features/products/actions/index.js +1 -1
  1218. package/dist/features/products/actions/product-actions.js +6 -6
  1219. package/dist/features/products/api/[id]/route.js +8 -8
  1220. package/dist/features/products/api/route.js +7 -7
  1221. package/dist/features/products/columns/index.js +2 -2
  1222. package/dist/features/products/columns/productTableColumns.js +3 -3
  1223. package/dist/features/products/components/ArtStickersListView.js +7 -7
  1224. package/dist/features/products/components/AuctionDetailView.js +1 -1
  1225. package/dist/features/products/components/AuctionsIndexListing.js +20 -20
  1226. package/dist/features/products/components/AvailabilityTabs.js +5 -5
  1227. package/dist/features/products/components/BidHistory.js +3 -3
  1228. package/dist/features/products/components/CardStoreLine.js +2 -2
  1229. package/dist/features/products/components/CompareOverlay.js +9 -9
  1230. package/dist/features/products/components/CustomFieldsEditor.js +2 -2
  1231. package/dist/features/products/components/CustomSectionTabContent.js +2 -2
  1232. package/dist/features/products/components/CustomSectionsEditor.js +3 -3
  1233. package/dist/features/products/components/FeatureBadge.js +2 -2
  1234. package/dist/features/products/components/GroupMemberPicker.js +9 -9
  1235. package/dist/features/products/components/GroupSettingsPanel.js +12 -12
  1236. package/dist/features/products/components/InteractiveProductCard.js +2 -2
  1237. package/dist/features/products/components/ListingBottomActions.js +4 -4
  1238. package/dist/features/products/components/MakeOfferButton.js +13 -13
  1239. package/dist/features/products/components/MarketplaceBundleCard.js +9 -9
  1240. package/dist/features/products/components/MarketplacePrizeDrawCard.js +9 -9
  1241. package/dist/features/products/components/NonRefundableConsentModal.js +1 -1
  1242. package/dist/features/products/components/PreOrderDetailView.js +1 -1
  1243. package/dist/features/products/components/PrizeDrawBottomActions.js +1 -1
  1244. package/dist/features/products/components/PrizeDrawCollage.js +4 -4
  1245. package/dist/features/products/components/PrizeDrawDetailPageView.js +18 -18
  1246. package/dist/features/products/components/PrizeDrawEntryActions.js +8 -8
  1247. package/dist/features/products/components/PrizeDrawItemsEditor.js +2 -2
  1248. package/dist/features/products/components/PrizeDrawWinnerMappingView.js +3 -3
  1249. package/dist/features/products/components/PrizeDrawsIndexListing.js +14 -14
  1250. package/dist/features/products/components/PrizeDrawsListingView.js +6 -6
  1251. package/dist/features/products/components/PrizeDrawsSection.js +6 -6
  1252. package/dist/features/products/components/PrizeRevealModal.js +3 -3
  1253. package/dist/features/products/components/ProductCardMetadataSection.js +1 -1
  1254. package/dist/features/products/components/ProductDetailActions.js +14 -14
  1255. package/dist/features/products/components/ProductDetailPageView.js +28 -28
  1256. package/dist/features/products/components/ProductDetailView.js +1 -1
  1257. package/dist/features/products/components/ProductFeatureBadges.js +1 -1
  1258. package/dist/features/products/components/ProductFeaturesSelector.js +5 -5
  1259. package/dist/features/products/components/ProductFilters.js +8 -8
  1260. package/dist/features/products/components/ProductForm.js +15 -15
  1261. package/dist/features/products/components/ProductGalleryClient.js +3 -3
  1262. package/dist/features/products/components/ProductGradingTab.js +3 -3
  1263. package/dist/features/products/components/ProductGrid.js +16 -16
  1264. package/dist/features/products/components/ProductTabs.js +1 -1
  1265. package/dist/features/products/components/ProductTabsShell.js +2 -2
  1266. package/dist/features/products/components/ProductsIndexListing.js +33 -33
  1267. package/dist/features/products/components/ProductsIndexPageView.js +12 -12
  1268. package/dist/features/products/components/ProductsView.js +1 -1
  1269. package/dist/features/products/components/RelatedItemsSection.js +2 -2
  1270. package/dist/features/products/components/RelatedProducts.js +1 -1
  1271. package/dist/features/products/components/RelatedProductsCarousel.js +4 -4
  1272. package/dist/features/products/components/ShareButton.js +2 -2
  1273. package/dist/features/products/components/ShowGroupSection.js +8 -8
  1274. package/dist/features/products/components/SublistingCarouselSection.js +8 -8
  1275. package/dist/features/products/components/SublistingCategorySelect.js +2 -2
  1276. package/dist/features/products/components/index.js +42 -42
  1277. package/dist/features/products/config/listing-type-listing-config.js +7 -7
  1278. package/dist/features/products/constants/action-defs.js +1 -1
  1279. package/dist/features/products/constants/listing-tabs.js +2 -2
  1280. package/dist/features/products/constants/sieve.js +2 -2
  1281. package/dist/features/products/hooks/useAvailabilityScope.js +4 -4
  1282. package/dist/features/products/hooks/useBrands.d.ts +1 -1
  1283. package/dist/features/products/hooks/useBrands.js +2 -2
  1284. package/dist/features/products/hooks/useProductDetail.js +2 -2
  1285. package/dist/features/products/hooks/useProducts.js +5 -5
  1286. package/dist/features/products/hooks/useRelatedProducts.js +4 -4
  1287. package/dist/features/products/index.js +14 -14
  1288. package/dist/features/products/repository/loadProductFeatures.js +2 -2
  1289. package/dist/features/products/repository/product-features.repository.js +7 -7
  1290. package/dist/features/products/repository/product-templates.repository.js +3 -3
  1291. package/dist/features/products/repository/products.repository.d.ts +66 -41
  1292. package/dist/features/products/repository/products.repository.js +193 -81
  1293. package/dist/features/products/schemas/firestore.d.ts +26 -1
  1294. package/dist/features/products/schemas/firestore.js +18 -1
  1295. package/dist/features/products/schemas/index.d.ts +2 -2
  1296. package/dist/features/products/schemas/index.js +3 -3
  1297. package/dist/features/products/schemas/product-features.validators.js +1 -1
  1298. package/dist/features/products/server.js +4 -4
  1299. package/dist/features/products/utils/listing-badge-variant.js +1 -1
  1300. package/dist/features/products/utils/listing-type.js +1 -1
  1301. package/dist/features/promotions/actions/coupon-actions.js +2 -2
  1302. package/dist/features/promotions/actions/index.js +4 -4
  1303. package/dist/features/promotions/actions/promotions-actions.js +3 -3
  1304. package/dist/features/promotions/actions/seller-coupon-actions.js +5 -5
  1305. package/dist/features/promotions/api/route.js +2 -2
  1306. package/dist/features/promotions/columns/index.js +1 -1
  1307. package/dist/features/promotions/components/CouponCard.js +4 -4
  1308. package/dist/features/promotions/components/CouponHelpDetails.js +2 -2
  1309. package/dist/features/promotions/components/CouponsIndexListing.js +8 -8
  1310. package/dist/features/promotions/components/PromotionsView.js +1 -1
  1311. package/dist/features/promotions/components/index.js +4 -4
  1312. package/dist/features/promotions/hooks/useCouponValidate.js +2 -2
  1313. package/dist/features/promotions/hooks/usePromotions.js +2 -2
  1314. package/dist/features/promotions/index.js +7 -7
  1315. package/dist/features/promotions/repository/claimed-coupons.repository.js +5 -5
  1316. package/dist/features/promotions/repository/coupons.repository.js +9 -9
  1317. package/dist/features/promotions/schemas/firestore.js +1 -1
  1318. package/dist/features/promotions/schemas/index.d.ts +24 -24
  1319. package/dist/features/promotions/schemas/index.js +2 -2
  1320. package/dist/features/promotions/server.js +3 -3
  1321. package/dist/features/reviews/actions/index.js +1 -1
  1322. package/dist/features/reviews/actions/review-actions.js +9 -9
  1323. package/dist/features/reviews/api/[id]/route.js +5 -5
  1324. package/dist/features/reviews/columns/index.js +1 -1
  1325. package/dist/features/reviews/components/ReviewDetailPageView.js +7 -7
  1326. package/dist/features/reviews/components/ReviewDetailShell.js +11 -11
  1327. package/dist/features/reviews/components/ReviewFilters.js +7 -7
  1328. package/dist/features/reviews/components/ReviewModal.js +7 -7
  1329. package/dist/features/reviews/components/ReviewSummary.js +3 -3
  1330. package/dist/features/reviews/components/ReviewsIndexListing.js +1 -1
  1331. package/dist/features/reviews/components/ReviewsIndexPageView.js +5 -5
  1332. package/dist/features/reviews/components/ReviewsList.js +9 -9
  1333. package/dist/features/reviews/components/ReviewsListingPanel.js +10 -10
  1334. package/dist/features/reviews/components/index.js +6 -6
  1335. package/dist/features/reviews/hooks/useCreateReview.js +3 -3
  1336. package/dist/features/reviews/hooks/useReviews.js +2 -2
  1337. package/dist/features/reviews/index.js +7 -7
  1338. package/dist/features/reviews/repository/reviews.repository.js +7 -7
  1339. package/dist/features/reviews/schemas/firestore.js +1 -1
  1340. package/dist/features/reviews/schemas/index.js +2 -2
  1341. package/dist/features/reviews/server.js +3 -3
  1342. package/dist/features/scams/actions/scam-actions.js +5 -5
  1343. package/dist/features/scams/components/ScamAwarenessModal.js +5 -5
  1344. package/dist/features/scams/components/ScamProfileView.js +8 -8
  1345. package/dist/features/scams/components/ScamRegistryView.js +7 -7
  1346. package/dist/features/scams/components/SellerTrustBadge.js +3 -3
  1347. package/dist/features/scams/components/index.js +4 -4
  1348. package/dist/features/scams/constants/scammer-status-display.js +1 -1
  1349. package/dist/features/scams/repository/scammer.repository.js +10 -10
  1350. package/dist/features/scams/schemas/index.d.ts +10 -10
  1351. package/dist/features/scams/schemas/index.js +2 -2
  1352. package/dist/features/scams/schemas/report-form.js +1 -1
  1353. package/dist/features/search/action-index/repository.js +2 -2
  1354. package/dist/features/search/actions/index.js +1 -1
  1355. package/dist/features/search/actions/search-actions.js +2 -2
  1356. package/dist/features/search/api/route.js +5 -5
  1357. package/dist/features/search/columns/index.js +1 -1
  1358. package/dist/features/search/components/Search.js +2 -2
  1359. package/dist/features/search/components/SearchFiltersRow.js +1 -1
  1360. package/dist/features/search/components/SearchResultsSection.js +1 -1
  1361. package/dist/features/search/components/SearchView.js +1 -1
  1362. package/dist/features/search/components/index.js +4 -4
  1363. package/dist/features/search/hooks/useNavSuggestions.js +2 -2
  1364. package/dist/features/search/hooks/useSearch.js +2 -2
  1365. package/dist/features/search/index.js +7 -7
  1366. package/dist/features/search/repository/search.repository.js +2 -2
  1367. package/dist/features/search/server.js +4 -4
  1368. package/dist/features/seller/actions/index.js +2 -2
  1369. package/dist/features/seller/actions/offer-actions.js +14 -14
  1370. package/dist/features/seller/actions/seller-actions.js +22 -22
  1371. package/dist/features/seller/api/coupons/route.js +2 -2
  1372. package/dist/features/seller/api/products/route.js +3 -3
  1373. package/dist/features/seller/api/store/route.js +2 -2
  1374. package/dist/features/seller/columns/index.js +1 -1
  1375. package/dist/features/seller/components/BarcodeField.js +3 -3
  1376. package/dist/features/seller/components/BrandInlineSelect.js +4 -4
  1377. package/dist/features/seller/components/BulkStockModal.d.ts +16 -0
  1378. package/dist/features/seller/components/BulkStockModal.js +46 -0
  1379. package/dist/features/seller/components/CategoryChipPicker.js +2 -2
  1380. package/dist/features/seller/components/CategoryInlineSelect.js +4 -4
  1381. package/dist/features/seller/components/CouponInlineSelect.js +3 -3
  1382. package/dist/features/seller/components/FulfillmentView.js +9 -9
  1383. package/dist/features/seller/components/GroupInlineSelect.js +4 -4
  1384. package/dist/features/seller/components/OfferPhaseTimeline.js +1 -1
  1385. package/dist/features/seller/components/PhysicalLocationModal.js +22 -7
  1386. package/dist/features/seller/components/PrintCenterView.js +6 -6
  1387. package/dist/features/seller/components/ProductInlineSelect.js +3 -3
  1388. package/dist/features/seller/components/QuickProductForm.js +2 -2
  1389. package/dist/features/seller/components/SellerAddressesView.js +9 -9
  1390. package/dist/features/seller/components/SellerAnalyticsAlertsView.js +11 -11
  1391. package/dist/features/seller/components/SellerAnalyticsView.js +1 -1
  1392. package/dist/features/seller/components/SellerArtView.js +1 -1
  1393. package/dist/features/seller/components/SellerBidsView.js +14 -14
  1394. package/dist/features/seller/components/SellerBundlesView.js +7 -7
  1395. package/dist/features/seller/components/SellerClassifiedView.js +1 -1
  1396. package/dist/features/seller/components/SellerCouponEditorView.js +10 -10
  1397. package/dist/features/seller/components/SellerCouponsView.js +7 -7
  1398. package/dist/features/seller/components/SellerCreateProductView.js +1 -1
  1399. package/dist/features/seller/components/SellerDashboardView.js +1 -1
  1400. package/dist/features/seller/components/SellerDigitalCodesView.js +1 -1
  1401. package/dist/features/seller/components/SellerEditProductView.js +1 -1
  1402. package/dist/features/seller/components/SellerFeaturesView.js +8 -8
  1403. package/dist/features/seller/components/SellerGoogleReviewsView.js +8 -8
  1404. package/dist/features/seller/components/SellerGroupedListingsView.js +6 -6
  1405. package/dist/features/seller/components/SellerGuideView.js +1 -1
  1406. package/dist/features/seller/components/SellerListingTypeView.js +13 -13
  1407. package/dist/features/seller/components/SellerLiveView.js +1 -1
  1408. package/dist/features/seller/components/SellerOffersView.js +9 -9
  1409. package/dist/features/seller/components/SellerOrdersView.js +23 -23
  1410. package/dist/features/seller/components/SellerPayoutHistoryTable.js +1 -1
  1411. package/dist/features/seller/components/SellerPayoutMethodsView.js +7 -7
  1412. package/dist/features/seller/components/SellerPayoutRequestView.js +3 -3
  1413. package/dist/features/seller/components/SellerPayoutSettingsView.js +30 -8
  1414. package/dist/features/seller/components/SellerPayoutStats.js +1 -1
  1415. package/dist/features/seller/components/SellerPayoutsView.js +11 -11
  1416. package/dist/features/seller/components/SellerProductShell.js +14 -14
  1417. package/dist/features/seller/components/SellerProductsCards.js +5 -5
  1418. package/dist/features/seller/components/SellerProductsFilterDrawer.js +4 -4
  1419. package/dist/features/seller/components/SellerProductsView.js +107 -33
  1420. package/dist/features/seller/components/SellerReviewsView.js +12 -12
  1421. package/dist/features/seller/components/SellerShippingConfigsView.js +9 -9
  1422. package/dist/features/seller/components/SellerShippingView.js +7 -7
  1423. package/dist/features/seller/components/SellerSidebar.js +9 -9
  1424. package/dist/features/seller/components/SellerStickersView.js +1 -1
  1425. package/dist/features/seller/components/SellerStoreCategoriesView.js +10 -10
  1426. package/dist/features/seller/components/SellerStoreSetupView.js +1 -1
  1427. package/dist/features/seller/components/SellerStoreView.js +1 -1
  1428. package/dist/features/seller/components/SellerStorefrontView.js +5 -5
  1429. package/dist/features/seller/components/SellerSupportView.js +6 -6
  1430. package/dist/features/seller/components/SellersListView.js +1 -1
  1431. package/dist/features/seller/components/SublistingInlineSelect.js +3 -3
  1432. package/dist/features/seller/components/analytics/SellerAnalyticsStats.js +2 -2
  1433. package/dist/features/seller/components/analytics/SellerRevenueChart.js +2 -2
  1434. package/dist/features/seller/components/analytics/SellerTopProducts.js +1 -1
  1435. package/dist/features/seller/components/analytics/index.js +3 -3
  1436. package/dist/features/seller/components/index.js +67 -67
  1437. package/dist/features/seller/hooks/useBecomeSeller.js +3 -3
  1438. package/dist/features/seller/hooks/useSellerListingData.js +1 -1
  1439. package/dist/features/seller/hooks/useSellerPayouts.js +2 -2
  1440. package/dist/features/seller/hooks/useSellerStore.js +2 -2
  1441. package/dist/features/seller/hooks/useSellerStorefront.js +2 -2
  1442. package/dist/features/seller/index.js +11 -11
  1443. package/dist/features/seller/repository/offer.repository.js +6 -6
  1444. package/dist/features/seller/schemas/coupon-form.d.ts +20 -20
  1445. package/dist/features/seller/schemas/coupon-form.js +1 -1
  1446. package/dist/features/seller/schemas/firestore.js +1 -1
  1447. package/dist/features/seller/schemas/index.js +1 -1
  1448. package/dist/features/seller/schemas/order-forms.js +2 -2
  1449. package/dist/features/seller/schemas/product-form.js +1 -1
  1450. package/dist/features/seller/schemas/review-forms.js +1 -1
  1451. package/dist/features/seller/server.js +5 -5
  1452. package/dist/features/server-errors/repository/server-errors.repository.js +4 -4
  1453. package/dist/features/server-errors/schemas/index.js +1 -1
  1454. package/dist/features/shell/CommandPalette.js +2 -2
  1455. package/dist/features/shell/FormShell.js +5 -5
  1456. package/dist/features/shell/QuickFormDrawer.js +7 -7
  1457. package/dist/features/shell/SectionForm.js +9 -9
  1458. package/dist/features/shell/build-sections.js +11 -11
  1459. package/dist/features/shell/field-groups/ImageFieldGroup.js +1 -1
  1460. package/dist/features/shell/field-groups/SeoFieldGroup.js +3 -3
  1461. package/dist/features/shell/field-groups/StatusFieldGroup.js +2 -2
  1462. package/dist/features/shell/field-groups/TitleDescriptionGroup.js +3 -3
  1463. package/dist/features/shell/field-groups/index.js +4 -4
  1464. package/dist/features/shell/index.js +8 -8
  1465. package/dist/features/shipments/components/AdminShipmentEditorView.js +13 -13
  1466. package/dist/features/shipments/components/AdminShipmentLotItemsView.js +12 -12
  1467. package/dist/features/shipments/components/AdminShipmentProjectionsView.js +5 -5
  1468. package/dist/features/shipments/components/AdminShipmentsView.js +7 -7
  1469. package/dist/features/shipments/components/ShipmentItemLinkModal.js +4 -4
  1470. package/dist/features/shipments/hooks/useShipments.js +2 -2
  1471. package/dist/features/shipments/index.js +7 -7
  1472. package/dist/features/shipments/repository/shipment-items.repository.js +4 -4
  1473. package/dist/features/shipments/repository/shipment-lots.repository.js +2 -2
  1474. package/dist/features/shipments/repository/shipments.repository.js +4 -4
  1475. package/dist/features/shipments/schemas/firestore.js +1 -1
  1476. package/dist/features/shipments/schemas/index.js +2 -2
  1477. package/dist/features/shipments/schemas/validation.d.ts +4 -4
  1478. package/dist/features/shipments/schemas/validation.js +3 -3
  1479. package/dist/features/shipments/utils/cost-allocation.js +1 -1
  1480. package/dist/features/site-settings/components/ActionPermissionsManager.js +4 -4
  1481. package/dist/features/site-settings/components/NavPermissionsManager.js +3 -3
  1482. package/dist/features/site-settings/components/ThemeManagerView.js +2 -2
  1483. package/dist/features/status-history/components/RecordStatusTimeline.js +1 -1
  1484. package/dist/features/status-history/components/StatusTimeline.js +1 -1
  1485. package/dist/features/status-history/index.js +2 -2
  1486. package/dist/features/store-extensions/components/ReviewDecisionModal.js +10 -10
  1487. package/dist/features/store-extensions/index.js +16 -16
  1488. package/dist/features/store-extensions/repository/rbac.repositories.js +2 -2
  1489. package/dist/features/store-extensions/repository/store-extensions.repositories.js +3 -3
  1490. package/dist/features/store-extensions/schemas/admin-notification-form.js +1 -1
  1491. package/dist/features/store-extensions/schemas/analytics-forms.js +2 -2
  1492. package/dist/features/store-extensions/schemas/custom-role-form.js +2 -2
  1493. package/dist/features/store-extensions/schemas/google-config-form.d.ts +6 -6
  1494. package/dist/features/store-extensions/schemas/google-config-form.js +1 -1
  1495. package/dist/features/store-extensions/schemas/item-request-create-form.js +1 -1
  1496. package/dist/features/store-extensions/schemas/listing-template-form.js +3 -3
  1497. package/dist/features/store-extensions/schemas/moderation-review-form.js +1 -1
  1498. package/dist/features/store-extensions/schemas/payout-method-form.js +1 -1
  1499. package/dist/features/store-extensions/schemas/report-create-form.js +2 -2
  1500. package/dist/features/store-extensions/schemas/report-review-form.js +1 -1
  1501. package/dist/features/store-extensions/schemas/shipping-config-form.d.ts +10 -10
  1502. package/dist/features/store-extensions/schemas/shipping-config-form.js +1 -1
  1503. package/dist/features/store-extensions/schemas/store-category-form.js +1 -1
  1504. package/dist/features/store-extensions/schemas/sublisting-category-form.js +1 -1
  1505. package/dist/features/stores/actions/index.js +2 -2
  1506. package/dist/features/stores/actions/store-address-actions.js +4 -4
  1507. package/dist/features/stores/actions/store-query-actions.js +9 -9
  1508. package/dist/features/stores/api/[storeSlug]/auctions/route.js +5 -5
  1509. package/dist/features/stores/api/[storeSlug]/products/route.js +5 -5
  1510. package/dist/features/stores/api/[storeSlug]/reviews/route.js +4 -4
  1511. package/dist/features/stores/api/[storeSlug]/route.js +3 -3
  1512. package/dist/features/stores/columns/index.js +1 -1
  1513. package/dist/features/stores/components/InteractiveStoreCard.js +5 -5
  1514. package/dist/features/stores/components/StoreAboutView.js +3 -3
  1515. package/dist/features/stores/components/StoreAddressSelectorCreate.js +2 -2
  1516. package/dist/features/stores/components/StoreArtStickersPageView.js +6 -6
  1517. package/dist/features/stores/components/StoreAuctionsListing.js +15 -15
  1518. package/dist/features/stores/components/StoreAuctionsPageView.js +5 -5
  1519. package/dist/features/stores/components/StoreAuctionsView.js +1 -1
  1520. package/dist/features/stores/components/StoreBundlesPageView.js +5 -5
  1521. package/dist/features/stores/components/StoreCapabilitiesGuideView.js +2 -2
  1522. package/dist/features/stores/components/StoreClassifiedsListing.js +12 -12
  1523. package/dist/features/stores/components/StoreClassifiedsPageView.js +5 -5
  1524. package/dist/features/stores/components/StoreDetailLayoutView.js +12 -12
  1525. package/dist/features/stores/components/StoreDigitalCodesListing.js +12 -12
  1526. package/dist/features/stores/components/StoreDigitalCodesPageView.js +5 -5
  1527. package/dist/features/stores/components/StoreFilters.js +4 -4
  1528. package/dist/features/stores/components/StoreFinanceGuideView.js +2 -2
  1529. package/dist/features/stores/components/StoreGuideHubView.js +2 -2
  1530. package/dist/features/stores/components/StoreHeader.js +6 -6
  1531. package/dist/features/stores/components/StoreListingsGuideView.js +2 -2
  1532. package/dist/features/stores/components/StoreLiveItemsListing.js +12 -12
  1533. package/dist/features/stores/components/StoreLiveItemsPageView.js +5 -5
  1534. package/dist/features/stores/components/StoreNavTabs.js +2 -2
  1535. package/dist/features/stores/components/StoreOrdersGuideView.js +2 -2
  1536. package/dist/features/stores/components/StorePreOrdersListing.js +11 -11
  1537. package/dist/features/stores/components/StorePreOrdersPageView.js +5 -5
  1538. package/dist/features/stores/components/StorePrizeDrawsPageView.js +5 -5
  1539. package/dist/features/stores/components/StoreProductsListing.js +15 -15
  1540. package/dist/features/stores/components/StoreProductsPageView.js +5 -5
  1541. package/dist/features/stores/components/StoreProductsView.js +1 -1
  1542. package/dist/features/stores/components/StoreReviewsListing.js +1 -1
  1543. package/dist/features/stores/components/StoreReviewsPageView.js +1 -1
  1544. package/dist/features/stores/components/StoreReviewsView.js +1 -1
  1545. package/dist/features/stores/components/StoreScopedSearch.js +3 -3
  1546. package/dist/features/stores/components/StoreSettingsGuideView.js +2 -2
  1547. package/dist/features/stores/components/StoreWhatsAppGuideView.js +2 -2
  1548. package/dist/features/stores/components/StoresIndexListing.js +12 -12
  1549. package/dist/features/stores/components/StoresIndexPageView.js +7 -7
  1550. package/dist/features/stores/components/index.js +23 -23
  1551. package/dist/features/stores/hooks/useStoreAddressSelector.js +2 -2
  1552. package/dist/features/stores/hooks/useStores.js +2 -2
  1553. package/dist/features/stores/index.js +7 -7
  1554. package/dist/features/stores/repository/store.repository.js +9 -9
  1555. package/dist/features/stores/schemas/firestore.d.ts +86 -0
  1556. package/dist/features/stores/schemas/firestore.js +2 -2
  1557. package/dist/features/stores/schemas/index.d.ts +30 -30
  1558. package/dist/features/stores/schemas/index.js +3 -3
  1559. package/dist/features/stores/server.js +6 -6
  1560. package/dist/features/stores/types/index.d.ts +10 -0
  1561. package/dist/features/support/repository/support.repository.js +11 -11
  1562. package/dist/features/support/schemas/index.d.ts +2 -2
  1563. package/dist/features/support/schemas/index.js +2 -2
  1564. package/dist/features/support/schemas/ticket-create-form.js +2 -2
  1565. package/dist/features/tax-codes/repository/tax-codes.repository.js +4 -4
  1566. package/dist/features/tax-codes/schemas/tax-code-form.js +2 -2
  1567. package/dist/features/tax-codes/schemas/tax-codes.validators.js +1 -1
  1568. package/dist/features/tester/actions/checklist-item-actions.d.ts +8 -8
  1569. package/dist/features/tester/actions/checklist-item-actions.js +2 -2
  1570. package/dist/features/tester/actions/index.js +1 -1
  1571. package/dist/features/tester/components/AdminTesterFeedbackIssuesView.js +6 -6
  1572. package/dist/features/tester/components/AdminTesterFeedbackListView.js +10 -10
  1573. package/dist/features/tester/components/AdminTesterFeedbackReportView.js +4 -4
  1574. package/dist/features/tester/components/AdminTesterFeedbackView.js +8 -8
  1575. package/dist/features/tester/components/TesterChecklistStepRow.js +4 -4
  1576. package/dist/features/tester/components/TesterFeedbackChart.js +2 -2
  1577. package/dist/features/tester/components/index.js +6 -6
  1578. package/dist/features/tester/index.js +2 -2
  1579. package/dist/features/tester/repository/index.js +2 -2
  1580. package/dist/features/tester/repository/tester-checklist-item.repository.js +4 -4
  1581. package/dist/features/tester/repository/tester-checklist-response.repository.js +3 -3
  1582. package/dist/features/tester/schemas/checklist-item-form.d.ts +4 -4
  1583. package/dist/features/tester/schemas/checklist-item-form.js +1 -1
  1584. package/dist/features/tester/schemas/firestore.js +1 -1
  1585. package/dist/features/tester/schemas/index.js +1 -1
  1586. package/dist/features/tester/seed-data/authored/index.js +118 -118
  1587. package/dist/features/tester/seed-data/authored/selling__product-upload-details.js +1 -1
  1588. package/dist/features/tester/seed-data/index.js +2 -2
  1589. package/dist/features/tester/seed-data/tester-checklist-seed-data.js +4 -4
  1590. package/dist/features/tester/server.js +3 -3
  1591. package/dist/features/whatsapp-bot/api/send-status/route.js +2 -2
  1592. package/dist/features/whatsapp-bot/api/webhook/route.js +2 -2
  1593. package/dist/features/whatsapp-bot/components/SellerWhatsAppSettingsView.js +12 -12
  1594. package/dist/features/whatsapp-bot/components/WhatsAppChatButton.js +1 -1
  1595. package/dist/features/whatsapp-bot/components/index.js +2 -2
  1596. package/dist/features/whatsapp-bot/helpers/whatsapp.js +3 -3
  1597. package/dist/features/whatsapp-bot/index.js +3 -3
  1598. package/dist/features/whatsapp-bot/server.js +2 -2
  1599. package/dist/features/wishlist/actions/index.js +1 -1
  1600. package/dist/features/wishlist/actions/wishlist-actions.js +4 -4
  1601. package/dist/features/wishlist/columns/index.js +1 -1
  1602. package/dist/features/wishlist/components/WishlistCapWatcher.js +2 -2
  1603. package/dist/features/wishlist/components/WishlistHeartButton.js +2 -2
  1604. package/dist/features/wishlist/components/WishlistPage.js +3 -3
  1605. package/dist/features/wishlist/components/WishlistView.js +3 -3
  1606. package/dist/features/wishlist/components/index.js +4 -4
  1607. package/dist/features/wishlist/hooks/useGuestWishlist.js +1 -1
  1608. package/dist/features/wishlist/hooks/useUserWishlist.js +2 -2
  1609. package/dist/features/wishlist/hooks/useWishlist.js +2 -2
  1610. package/dist/features/wishlist/hooks/useWishlistCount.js +8 -8
  1611. package/dist/features/wishlist/hooks/useWishlistToggle.js +3 -3
  1612. package/dist/features/wishlist/hooks/useWishlistWithGuest.js +2 -2
  1613. package/dist/features/wishlist/index.js +12 -12
  1614. package/dist/features/wishlist/repository/user-wishlist.repository.js +4 -4
  1615. package/dist/features/wishlist/server.js +2 -2
  1616. package/dist/features/wishlist/utils/guest-wishlist.js +1 -1
  1617. package/dist/hand-mode/index.js +1 -1
  1618. package/dist/http/api-handler.js +8 -8
  1619. package/dist/http/index.js +2 -2
  1620. package/dist/http/retry.js +1 -1
  1621. package/dist/index.d.ts +20 -3
  1622. package/dist/index.js +2006 -1969
  1623. package/dist/monitoring/browser.js +5 -5
  1624. package/dist/monitoring/cache-metrics.js +1 -1
  1625. package/dist/monitoring/client-logger.js +3 -3
  1626. package/dist/monitoring/index.js +6 -6
  1627. package/dist/monitoring/runtime.js +1 -1
  1628. package/dist/monitoring/server-logger.js +3 -3
  1629. package/dist/next/ErrorBoundary.js +3 -3
  1630. package/dist/next/api/api-response.js +2 -2
  1631. package/dist/next/api/apiHandler.js +3 -3
  1632. package/dist/next/api/parseJsonBody.js +1 -1
  1633. package/dist/next/api/routeHandler.js +9 -9
  1634. package/dist/next/cache-middleware.js +1 -1
  1635. package/dist/next/components/ErrorView.js +3 -3
  1636. package/dist/next/components/GlobalError.js +23 -2
  1637. package/dist/next/components/NotFoundView.js +4 -4
  1638. package/dist/next/components/UnauthorizedView.js +4 -4
  1639. package/dist/next/index.js +21 -21
  1640. package/dist/next/middleware/chain.js +3 -3
  1641. package/dist/next/middleware/index.js +2 -2
  1642. package/dist/next/middleware/pii-scrubber.js +3 -3
  1643. package/dist/next/request-helpers.js +1 -1
  1644. package/dist/next/routing/route-map.d.ts +4 -0
  1645. package/dist/next/routing/route-map.js +9 -0
  1646. package/dist/providers/auth-firebase/helpers.js +5 -5
  1647. package/dist/providers/auth-firebase/index.js +3 -3
  1648. package/dist/providers/auth-firebase/provider.js +2 -2
  1649. package/dist/providers/auth-firebase/session.js +2 -2
  1650. package/dist/providers/db-firebase/admin-app-lite.js +1 -1
  1651. package/dist/providers/db-firebase/admin-auth-lite.js +1 -1
  1652. package/dist/providers/db-firebase/admin-storage-lite.js +1 -1
  1653. package/dist/providers/db-firebase/admin.js +2 -2
  1654. package/dist/providers/db-firebase/base.js +2 -2
  1655. package/dist/providers/db-firebase/base.repository.d.ts +54 -0
  1656. package/dist/providers/db-firebase/base.repository.js +119 -7
  1657. package/dist/providers/db-firebase/browser-stub.js +2 -2
  1658. package/dist/providers/db-firebase/index.js +12 -12
  1659. package/dist/providers/db-firebase/sieve.js +4 -4
  1660. package/dist/providers/email-resend/index.js +1 -1
  1661. package/dist/providers/firebase-client/index.js +2 -2
  1662. package/dist/providers/firebase-client/realtime.js +1 -1
  1663. package/dist/providers/payment-manual/index.js +1 -1
  1664. package/dist/providers/payment-phonepe/index.js +3 -3
  1665. package/dist/providers/shipping-manual/index.js +1 -1
  1666. package/dist/providers/storage-firebase/client.js +2 -2
  1667. package/dist/providers/storage-firebase/index.js +1 -1
  1668. package/dist/providers/storage-firebase/provider.js +4 -4
  1669. package/dist/providers.js +12 -12
  1670. package/dist/react/ErrorBoundary.js +3 -3
  1671. package/dist/react/contexts/SessionContext.js +6 -6
  1672. package/dist/react/contexts/index.js +1 -1
  1673. package/dist/react/hooks/use-action-dispatch.js +5 -5
  1674. package/dist/react/hooks/use-panel-url-sync.js +1 -1
  1675. package/dist/react/hooks/useAuthGate.js +3 -3
  1676. package/dist/react/hooks/useBreakpoint.js +1 -1
  1677. package/dist/react/hooks/useBulkAction.js +1 -1
  1678. package/dist/react/hooks/useCamera.js +1 -1
  1679. package/dist/react/hooks/useCanSeePrices.js +1 -1
  1680. package/dist/react/hooks/useEntityDelete.js +2 -2
  1681. package/dist/react/hooks/useFormStatePreservation.js +1 -1
  1682. package/dist/react/hooks/useInlineRowEdit.js +1 -1
  1683. package/dist/react/hooks/useListingTypeFlags.js +2 -2
  1684. package/dist/react/hooks/useMessage.js +1 -1
  1685. package/dist/react/hooks/usePendingFilters.js +1 -1
  1686. package/dist/react/hooks/usePendingTable.js +2 -2
  1687. package/dist/react/hooks/useRealtimeEvent.js +4 -4
  1688. package/dist/react/hooks/useTabParam.js +2 -2
  1689. package/dist/react/hooks/useUnsavedChanges.js +1 -1
  1690. package/dist/react/hooks/useUrlTable.js +2 -2
  1691. package/dist/react/index.js +28 -28
  1692. package/dist/repositories/index.d.ts +1 -1
  1693. package/dist/repositories/index.js +55 -51
  1694. package/dist/schemas/index.js +1 -1
  1695. package/dist/schemas/registry.d.ts +102 -102
  1696. package/dist/schemas/registry.js +44 -44
  1697. package/dist/security/authorization.js +3 -3
  1698. package/dist/security/browser.js +4 -4
  1699. package/dist/security/index.js +8 -8
  1700. package/dist/security/pii-encrypt.js +3 -3
  1701. package/dist/security/pii-redact.js +1 -1
  1702. package/dist/security/rate-limit.js +1 -1
  1703. package/dist/security/settings-encryption.js +1 -1
  1704. package/dist/seed/_helpers/brand-rows.js +2 -2
  1705. package/dist/seed/_helpers/category-forest.js +3 -3
  1706. package/dist/seed/_helpers/media.js +1 -1
  1707. package/dist/seed/_helpers/product-search-txt.js +1 -1
  1708. package/dist/seed/_helpers/search-txt-wrappers.js +1 -1
  1709. package/dist/seed/blog-posts-seed-data.js +2 -2
  1710. package/dist/seed/carousel-slides-seed-data.js +2 -2
  1711. package/dist/seed/cart-seed-data.js +2 -2
  1712. package/dist/seed/categories-seed-data.js +9 -9
  1713. package/dist/seed/claimed-coupons-seed-data.js +1 -1
  1714. package/dist/seed/coupons-seed-data.js +2 -2
  1715. package/dist/seed/defaults/categories.js +1 -1
  1716. package/dist/seed/defaults/faqs.js +2 -2
  1717. package/dist/seed/defaults/homepage-sections.js +2 -2
  1718. package/dist/seed/events-seed-data.js +3 -3
  1719. package/dist/seed/factories/address.factory.js +1 -1
  1720. package/dist/seed/factories/carousel.factory.js +1 -1
  1721. package/dist/seed/factories/order.factory.js +1 -1
  1722. package/dist/seed/factories/product.factory.js +2 -2
  1723. package/dist/seed/factories/store.factory.js +1 -1
  1724. package/dist/seed/factories/user.factory.js +2 -2
  1725. package/dist/seed/faq-seed-data.js +532 -3
  1726. package/dist/seed/grouped-listings-seed-data.js +1 -1
  1727. package/dist/seed/homepage-sections-seed-data.js +2 -2
  1728. package/dist/seed/index.d.ts +1 -0
  1729. package/dist/seed/index.js +75 -68
  1730. package/dist/seed/manifest.js +43 -43
  1731. package/dist/seed/notifications-seed-data.js +3 -3
  1732. package/dist/seed/offers-seed-data.js +2 -2
  1733. package/dist/seed/orders-seed-data.js +2 -2
  1734. package/dist/seed/payouts-seed-data.js +2 -2
  1735. package/dist/seed/product-features-seed-data.js +2 -2
  1736. package/dist/seed/products-art-seed-data.js +4 -4
  1737. package/dist/seed/products-auctions-seed-data.js +4 -4
  1738. package/dist/seed/products-classifieds-seed-data.js +5 -5
  1739. package/dist/seed/products-digital-codes-seed-data.js +5 -5
  1740. package/dist/seed/products-live-items-seed-data.js +5 -5
  1741. package/dist/seed/products-preorders-seed-data.js +4 -4
  1742. package/dist/seed/products-prize-draws-seed-data.js +5 -5
  1743. package/dist/seed/products-standard-seed-data.js +4 -4
  1744. package/dist/seed/products-stickers-seed-data.js +4 -4
  1745. package/dist/seed/reviews-seed-data.js +2 -2
  1746. package/dist/seed/runner.js +2 -2
  1747. package/dist/seed/scammers-seed-data.js +3 -3
  1748. package/dist/seed/seed-market-config.js +2 -2
  1749. package/dist/seed/seed-purpose.d.ts +200 -0
  1750. package/dist/seed/seed-purpose.js +265 -0
  1751. package/dist/seed/sessions-seed-data.js +2 -2
  1752. package/dist/seed/shipments-seed-data.js +1 -1
  1753. package/dist/seed/site-settings-seed-data.js +9 -3
  1754. package/dist/seed/store-addresses-seed-data.js +1 -1
  1755. package/dist/seed/store-extensions-seed-data.js +1 -1
  1756. package/dist/seed/stores-seed-data.js +3 -3
  1757. package/dist/seed/support-tickets-seed-data.js +2 -2
  1758. package/dist/seed/test-utils.js +8 -8
  1759. package/dist/seed/users-seed-data.js +4 -4
  1760. package/dist/seo/index.js +2 -2
  1761. package/dist/seo/json-ld.d.ts +62 -0
  1762. package/dist/seo/json-ld.js +78 -2
  1763. package/dist/seo/metadata.js +1 -1
  1764. package/dist/server-entry.js +78 -78
  1765. package/dist/server.d.ts +12 -2
  1766. package/dist/server.js +560 -544
  1767. package/dist/styles.css +767 -1
  1768. package/dist/tailwind-utilities.css +1 -1
  1769. package/dist/theme/index.js +2 -2
  1770. package/dist/tokens/index.js +1 -1
  1771. package/dist/tokens/themes/cobalt-night.js +1 -1
  1772. package/dist/tokens/themes/index.js +5 -5
  1773. package/dist/tokens/themes/sunset.js +1 -1
  1774. package/dist/ui/DataTable.js +12 -12
  1775. package/dist/ui/columns/cell-renderers.js +7 -7
  1776. package/dist/ui/columns/column-renderers.js +2 -2
  1777. package/dist/ui/columns/index.js +3 -3
  1778. package/dist/ui/components/Accordion.js +4 -4
  1779. package/dist/ui/components/ActionRow.js +1 -1
  1780. package/dist/ui/components/ActiveFilterChips.js +2 -2
  1781. package/dist/ui/components/Alert.js +2 -2
  1782. package/dist/ui/components/Anchor.js +1 -1
  1783. package/dist/ui/components/Avatar.js +1 -1
  1784. package/dist/ui/components/AvatarDisplay.js +1 -1
  1785. package/dist/ui/components/Badge.js +1 -1
  1786. package/dist/ui/components/BaseListingCard.js +2 -2
  1787. package/dist/ui/components/Breadcrumb.js +3 -3
  1788. package/dist/ui/components/BulkActionBar.js +2 -2
  1789. package/dist/ui/components/Button.js +4 -4
  1790. package/dist/ui/components/Card.js +2 -2
  1791. package/dist/ui/components/Checkbox.js +1 -1
  1792. package/dist/ui/components/ClaimCouponButton.js +6 -6
  1793. package/dist/ui/components/CollapsibleSection.js +5 -5
  1794. package/dist/ui/components/ConfirmDeleteModal.js +3 -3
  1795. package/dist/ui/components/CountdownDisplay.js +2 -2
  1796. package/dist/ui/components/DateInput.js +1 -1
  1797. package/dist/ui/components/DetailPageGallery.js +2 -2
  1798. package/dist/ui/components/DetailPageHero.js +3 -3
  1799. package/dist/ui/components/DetailPageTabs.js +2 -2
  1800. package/dist/ui/components/DetailViewShell.js +2 -2
  1801. package/dist/ui/components/Details.js +1 -1
  1802. package/dist/ui/components/Div.js +1 -1
  1803. package/dist/ui/components/Divider.js +1 -1
  1804. package/dist/ui/components/Drawer.js +4 -4
  1805. package/dist/ui/components/EmptyState.js +4 -4
  1806. package/dist/ui/components/FilePickerButton.js +1 -1
  1807. package/dist/ui/components/FilterChipGroup.js +2 -2
  1808. package/dist/ui/components/FilterDrawer.js +4 -4
  1809. package/dist/ui/components/FlowDiagram.js +2 -2
  1810. package/dist/ui/components/Form.js +4 -4
  1811. package/dist/ui/components/FormActionBar.js +3 -3
  1812. package/dist/ui/components/FormField.js +24 -6
  1813. package/dist/ui/components/GatedPrice.js +6 -6
  1814. package/dist/ui/components/HandModeRow.js +2 -2
  1815. package/dist/ui/components/Icon.js +1 -1
  1816. package/dist/ui/components/IconButton.js +1 -1
  1817. package/dist/ui/components/ImageGallery.js +6 -6
  1818. package/dist/ui/components/ImageLightbox.js +5 -5
  1819. package/dist/ui/components/Input.js +2 -2
  1820. package/dist/ui/components/ItemRow.js +3 -3
  1821. package/dist/ui/components/Layout.js +1 -1
  1822. package/dist/ui/components/ListingFilterDrawer.js +4 -4
  1823. package/dist/ui/components/ListingLayout.js +9 -9
  1824. package/dist/ui/components/ListingToolbar.js +5 -5
  1825. package/dist/ui/components/LoginRequiredModal.js +5 -5
  1826. package/dist/ui/components/Menu.js +1 -1
  1827. package/dist/ui/components/Modal.js +6 -6
  1828. package/dist/ui/components/Motion.js +1 -1
  1829. package/dist/ui/components/NavigationLoader.js +3 -3
  1830. package/dist/ui/components/OtpInput.js +1 -1
  1831. package/dist/ui/components/PageLoader.js +4 -4
  1832. package/dist/ui/components/PaginatedSelect.js +0 -0
  1833. package/dist/ui/components/Pagination.js +2 -2
  1834. package/dist/ui/components/PasswordStrengthIndicator.js +3 -3
  1835. package/dist/ui/components/PriceDisplay.js +1 -1
  1836. package/dist/ui/components/Progress.js +1 -1
  1837. package/dist/ui/components/QuantityStepper.js +3 -3
  1838. package/dist/ui/components/QuickCreateModal.js +5 -5
  1839. package/dist/ui/components/Radio.js +1 -1
  1840. package/dist/ui/components/RatingDisplay.js +2 -2
  1841. package/dist/ui/components/RecordDetailModal.js +2 -2
  1842. package/dist/ui/components/RoleBadge.js +1 -1
  1843. package/dist/ui/components/RowActionMenu.js +3 -3
  1844. package/dist/ui/components/Select.js +2 -2
  1845. package/dist/ui/components/Semantic.js +1 -1
  1846. package/dist/ui/components/SettingsSection.js +2 -2
  1847. package/dist/ui/components/SideDrawer.js +9 -9
  1848. package/dist/ui/components/SideModal.js +4 -4
  1849. package/dist/ui/components/SiteLogo.js +1 -1
  1850. package/dist/ui/components/SiteMark.js +1 -1
  1851. package/dist/ui/components/SkipToMain.js +1 -1
  1852. package/dist/ui/components/Slider.js +1 -1
  1853. package/dist/ui/components/SlottedListingView.js +2 -2
  1854. package/dist/ui/components/SortDropdown.js +3 -3
  1855. package/dist/ui/components/StackedViewShell.js +2 -2
  1856. package/dist/ui/components/StarRating.js +1 -1
  1857. package/dist/ui/components/StatsGrid.js +3 -3
  1858. package/dist/ui/components/StatusBadge.js +1 -1
  1859. package/dist/ui/components/StepperNav.js +3 -3
  1860. package/dist/ui/components/StickyToolbar.js +1 -1
  1861. package/dist/ui/components/SummaryCard.js +4 -4
  1862. package/dist/ui/components/TabBarShell.js +3 -3
  1863. package/dist/ui/components/TablePagination.js +4 -4
  1864. package/dist/ui/components/Tabs.js +1 -1
  1865. package/dist/ui/components/TagInput.js +1 -1
  1866. package/dist/ui/components/TextLink.js +2 -2
  1867. package/dist/ui/components/Textarea.js +1 -1
  1868. package/dist/ui/components/Toast.js +3 -3
  1869. package/dist/ui/components/Toggle.js +1 -1
  1870. package/dist/ui/components/Typography.js +2 -2
  1871. package/dist/ui/components/UnsavedChangesModal.js +5 -5
  1872. package/dist/ui/components/VacationBanner.js +3 -3
  1873. package/dist/ui/components/ViewToggle.js +2 -2
  1874. package/dist/ui/components/index.style.css +4 -0
  1875. package/dist/ui/components/surface-tokens.js +1 -1
  1876. package/dist/ui/components/toolbar-collapse.js +1 -1
  1877. package/dist/ui/forms/ColorPickerField.js +2 -2
  1878. package/dist/ui/forms/FieldCheckbox.js +3 -3
  1879. package/dist/ui/forms/FieldInput.js +3 -3
  1880. package/dist/ui/forms/FieldSelect.js +3 -3
  1881. package/dist/ui/forms/FieldTextarea.js +3 -3
  1882. package/dist/ui/forms/FormErrorList.js +2 -2
  1883. package/dist/ui/forms/FormErrorSummary.js +2 -2
  1884. package/dist/ui/forms/FormShell.js +1 -1
  1885. package/dist/ui/forms/index.js +9 -9
  1886. package/dist/ui/index.d.ts +0 -2
  1887. package/dist/ui/index.js +147 -127
  1888. package/dist/ui/rich-text/RichText.js +2 -2
  1889. package/dist/ui/rich-text/index.js +1 -1
  1890. package/dist/utils/action-response.js +2 -2
  1891. package/dist/utils/action-result.js +1 -1
  1892. package/dist/utils/auth-error.js +1 -1
  1893. package/dist/utils/client.js +1 -1
  1894. package/dist/utils/date.formatter.js +1 -1
  1895. package/dist/utils/id-generators.js +2 -2
  1896. package/dist/utils/index.js +19 -19
  1897. package/dist/utils/media-field.js +1 -1
  1898. package/dist/utils/media-url.js +2 -2
  1899. package/dist/utils/number.formatter.js +1 -1
  1900. package/dist/utils/physical-location.d.ts +68 -0
  1901. package/dist/utils/physical-location.js +82 -0
  1902. package/dist/utils/safe-fire-forget.js +2 -2
  1903. package/dist/utils/search-txt-builders.js +61 -1
  1904. package/dist/utils/search-txt-query.d.ts +54 -6
  1905. package/dist/utils/search-txt-query.js +79 -11
  1906. package/dist/utils/sieve-builder.js +1 -1
  1907. package/dist/utils/string.formatter.js +1 -1
  1908. package/dist/validation/ZodSetup.js +1 -1
  1909. package/dist/validation/index.js +8 -8
  1910. package/dist/validation/phone.validator.js +1 -1
  1911. package/dist/validation/schemas.d.ts +12 -12
  1912. package/dist/validation/schemas.js +1 -1
  1913. package/dist/validation/url.validator.js +1 -1
  1914. package/dist/values/index.js +1 -1
  1915. package/dist/vendor/react-advanced-cropper.css +406 -0
  1916. package/package.json +80 -4
  1917. package/scripts/copy-assets.mjs +53 -1
  1918. package/scripts/seed-cli.mjs +168 -7
@@ -0,0 +1,112 @@
1
+ /**
2
+ * How a store prices shipping โ€” C5b.
3
+ *
4
+ * ## What this replaces
5
+ *
6
+ * `resolveShippingCost(storeId)` returned ONE flat rupee number per store:
7
+ * `shippingConfig.customShippingPrice ?? 0`, read off the store OWNER's user
8
+ * document, with no weight, destination, pincode or courier anywhere in it.
9
+ *
10
+ * ## ๐Ÿ›‘ And there was a second, richer config that no money path read
11
+ *
12
+ * `ShippingConfigDocument` (collection `shippingConfigs`) has `method`
13
+ * (free/flat/weight/express/pickup/custom), `flatRate`, `pricePerKg`,
14
+ * `freeAbove`, `expressSurcharge`, `estimatedDays` and `zones` โ€” with full
15
+ * CRUD routes, a form schema and seed data. **`shippingConfigsRepository` is
16
+ * called from no money path at all.** So there were two shipping-config
17
+ * systems and the authoritative one was the flat number, by accident.
18
+ *
19
+ * This is the one mode, and it is deliberately narrower than that document:
20
+ *
21
+ * `free` the seller absorbs it. Implies they ship manually.
22
+ * `flat` a fixed amount the seller sets.
23
+ * `estimate` a live address-to-address carrier rate, which the buyer pays
24
+ * and we HOLD โ€” the escrow flow.
25
+ *
26
+ * Zones and per-kg tables are dropped: once a real carrier quotes the rate, a
27
+ * hand-maintained zone table earns nothing and is one more thing to drift.
28
+ *
29
+ * `freeAbove` SURVIVES as an override on every mode, because "free shipping
30
+ * over โ‚น999" is a merchandising lever no carrier can give you and every
31
+ * competitor in the crawl uses some form of it.
32
+ */
33
+ /** Amounts are decimal rupees throughout, matching every other money field. */
34
+ export type StoreShippingMode = {
35
+ kind: "free";
36
+ } | {
37
+ kind: "flat";
38
+ amount: number;
39
+ } | {
40
+ kind: "estimate";
41
+ };
42
+ export interface StoreShippingPolicy {
43
+ mode: StoreShippingMode;
44
+ /**
45
+ * Order goods value at or above which shipping is free, whatever the mode.
46
+ *
47
+ * ๐Ÿ›‘ Compared against the GOODS value, not the grand total. Comparing a
48
+ * free-shipping threshold against a total that already includes shipping,
49
+ * GST and the platform fee makes the threshold depend on itself โ€” a cart can
50
+ * cross โ‚น999 *because of* the shipping it is about to waive.
51
+ */
52
+ freeAbove?: number;
53
+ }
54
+ /**
55
+ * The default for a store that has configured nothing.
56
+ *
57
+ * ๐Ÿ›‘ `free`, not `estimate`, and that is the conservative choice rather than
58
+ * the generous-looking one. `estimate` means we quote a live carrier rate and
59
+ * hold the buyer's money against a booking the seller may not be set up to
60
+ * make; a store that has never opened its shipping settings has not agreed to
61
+ * that. `free` charges the buyer nothing and leaves the seller shipping
62
+ * manually, which is what an unconfigured store was doing anyway โ€” the old
63
+ * code's `?? 0` had exactly this effect, so this preserves behaviour for every
64
+ * existing store rather than silently switching them into escrow.
65
+ */
66
+ export declare const DEFAULT_STORE_SHIPPING_POLICY: StoreShippingPolicy;
67
+ /** Narrow an arbitrary stored value, falling back to the safe default. */
68
+ export declare function toStoreShippingPolicy(raw: unknown): StoreShippingPolicy;
69
+ export interface ShippingQuoteInput {
70
+ policy: StoreShippingPolicy;
71
+ /** GOODS value of this store's lines โ€” see `freeAbove`. */
72
+ goodsValue: number;
73
+ /**
74
+ * The live carrier rate, when one was obtained.
75
+ *
76
+ * `null` means we could not get one โ€” which is NOT the same as zero and is
77
+ * why this is nullable. See `quoteShipping`'s `needsCarrierRate`.
78
+ */
79
+ carrierRate?: number | null;
80
+ }
81
+ export type ShippingQuote = {
82
+ kind: "charge";
83
+ amount: number;
84
+ reason: "flat" | "estimate";
85
+ } | {
86
+ kind: "free";
87
+ reason: "mode" | "freeAbove";
88
+ }
89
+ /**
90
+ * ๐Ÿ›‘ The third outcome, and the reason this returns a union rather than a
91
+ * number. An `estimate`-mode store whose carrier rate could not be obtained
92
+ * has NO quote โ€” and a `0` there would ship the parcel for free at our
93
+ * expense, silently, on every order until someone noticed. The caller must
94
+ * decide: block the purchase, or fall back. It cannot accidentally charge
95
+ * nothing.
96
+ */
97
+ | {
98
+ kind: "unavailable";
99
+ reason: "no-carrier-rate";
100
+ };
101
+ /**
102
+ * What this store's lines cost to ship.
103
+ *
104
+ * Order of resolution matters: `freeAbove` is checked FIRST, because a cart
105
+ * over the threshold is free regardless of mode and there is no point
106
+ * obtaining a carrier rate we are about to waive. That also means an
107
+ * `estimate`-mode store with a `freeAbove` does not fail on an unavailable
108
+ * carrier rate for a qualifying cart.
109
+ */
110
+ export declare function quoteShipping(input: ShippingQuoteInput): ShippingQuote;
111
+ /** Whether this quote needs a carrier call at all โ€” saves a round trip. */
112
+ export declare function needsCarrierRate(policy: StoreShippingPolicy, goodsValue: number): boolean;
@@ -0,0 +1,108 @@
1
+ /**
2
+ * How a store prices shipping โ€” C5b.
3
+ *
4
+ * ## What this replaces
5
+ *
6
+ * `resolveShippingCost(storeId)` returned ONE flat rupee number per store:
7
+ * `shippingConfig.customShippingPrice ?? 0`, read off the store OWNER's user
8
+ * document, with no weight, destination, pincode or courier anywhere in it.
9
+ *
10
+ * ## ๐Ÿ›‘ And there was a second, richer config that no money path read
11
+ *
12
+ * `ShippingConfigDocument` (collection `shippingConfigs`) has `method`
13
+ * (free/flat/weight/express/pickup/custom), `flatRate`, `pricePerKg`,
14
+ * `freeAbove`, `expressSurcharge`, `estimatedDays` and `zones` โ€” with full
15
+ * CRUD routes, a form schema and seed data. **`shippingConfigsRepository` is
16
+ * called from no money path at all.** So there were two shipping-config
17
+ * systems and the authoritative one was the flat number, by accident.
18
+ *
19
+ * This is the one mode, and it is deliberately narrower than that document:
20
+ *
21
+ * `free` the seller absorbs it. Implies they ship manually.
22
+ * `flat` a fixed amount the seller sets.
23
+ * `estimate` a live address-to-address carrier rate, which the buyer pays
24
+ * and we HOLD โ€” the escrow flow.
25
+ *
26
+ * Zones and per-kg tables are dropped: once a real carrier quotes the rate, a
27
+ * hand-maintained zone table earns nothing and is one more thing to drift.
28
+ *
29
+ * `freeAbove` SURVIVES as an override on every mode, because "free shipping
30
+ * over โ‚น999" is a merchandising lever no carrier can give you and every
31
+ * competitor in the crawl uses some form of it.
32
+ */
33
+ /**
34
+ * The default for a store that has configured nothing.
35
+ *
36
+ * ๐Ÿ›‘ `free`, not `estimate`, and that is the conservative choice rather than
37
+ * the generous-looking one. `estimate` means we quote a live carrier rate and
38
+ * hold the buyer's money against a booking the seller may not be set up to
39
+ * make; a store that has never opened its shipping settings has not agreed to
40
+ * that. `free` charges the buyer nothing and leaves the seller shipping
41
+ * manually, which is what an unconfigured store was doing anyway โ€” the old
42
+ * code's `?? 0` had exactly this effect, so this preserves behaviour for every
43
+ * existing store rather than silently switching them into escrow.
44
+ */
45
+ export const DEFAULT_STORE_SHIPPING_POLICY = {
46
+ mode: { kind: "free" },
47
+ };
48
+ /** Narrow an arbitrary stored value, falling back to the safe default. */
49
+ export function toStoreShippingPolicy(raw) {
50
+ if (!raw || typeof raw !== "object")
51
+ return DEFAULT_STORE_SHIPPING_POLICY;
52
+ const r = raw;
53
+ const freeAbove = typeof r.freeAbove === "number" && r.freeAbove > 0 ? { freeAbove: r.freeAbove } : {};
54
+ const kind = r.mode?.kind;
55
+ if (kind === "estimate")
56
+ return { mode: { kind: "estimate" }, ...freeAbove };
57
+ if (kind === "flat") {
58
+ const amount = Number(r.mode?.amount ?? 0);
59
+ /*
60
+ * A `flat` mode with no amount is not a flat rate, it is an unfinished
61
+ * form. Treating it as โ‚น0 would silently make it `free` and hide the
62
+ * misconfiguration; falling back to the default does the same thing
63
+ * VISIBLY, because the seller's settings page will show `free` selected
64
+ * and they can see it is not what they chose.
65
+ */
66
+ if (!(amount > 0))
67
+ return { ...DEFAULT_STORE_SHIPPING_POLICY, ...freeAbove };
68
+ return { mode: { kind: "flat", amount }, ...freeAbove };
69
+ }
70
+ return { ...DEFAULT_STORE_SHIPPING_POLICY, ...freeAbove };
71
+ }
72
+ /**
73
+ * What this store's lines cost to ship.
74
+ *
75
+ * Order of resolution matters: `freeAbove` is checked FIRST, because a cart
76
+ * over the threshold is free regardless of mode and there is no point
77
+ * obtaining a carrier rate we are about to waive. That also means an
78
+ * `estimate`-mode store with a `freeAbove` does not fail on an unavailable
79
+ * carrier rate for a qualifying cart.
80
+ */
81
+ export function quoteShipping(input) {
82
+ const { policy, goodsValue, carrierRate } = input;
83
+ if (policy.freeAbove != null && goodsValue >= policy.freeAbove) {
84
+ return { kind: "free", reason: "freeAbove" };
85
+ }
86
+ switch (policy.mode.kind) {
87
+ case "free":
88
+ return { kind: "free", reason: "mode" };
89
+ case "flat":
90
+ return { kind: "charge", amount: policy.mode.amount, reason: "flat" };
91
+ case "estimate":
92
+ if (typeof carrierRate !== "number" || !(carrierRate >= 0)) {
93
+ return { kind: "unavailable", reason: "no-carrier-rate" };
94
+ }
95
+ return { kind: "charge", amount: carrierRate, reason: "estimate" };
96
+ default: {
97
+ // Exhaustive: a fourth mode must not compile to a silent free shipment.
98
+ const unreachable = policy.mode;
99
+ return unreachable;
100
+ }
101
+ }
102
+ }
103
+ /** Whether this quote needs a carrier call at all โ€” saves a round trip. */
104
+ export function needsCarrierRate(policy, goodsValue) {
105
+ if (policy.freeAbove != null && goodsValue >= policy.freeAbove)
106
+ return false;
107
+ return policy.mode.kind === "estimate";
108
+ }
@@ -0,0 +1,115 @@
1
+ /**
2
+ * The parcel a shipment is quoted and booked on โ€” C5a.
3
+ *
4
+ * ## ๐Ÿ›‘ Three tiers, and the distinction between them is the whole point
5
+ *
6
+ * CATEGORY `CategoryProductDefaults.weightG` / `dimensionsCm` โ€” a PACKED
7
+ * figure, seeded per leaf. Drives the checkout ESTIMATE.
8
+ * PRODUCT `ProductDocument.weightG` / `dimensionsCm` โ€” OPTIONAL. Refines
9
+ * the estimate when a seller has actually weighed a packed box.
10
+ * SHIPMENT entered by the seller at booking time. **What is booked.**
11
+ *
12
+ * The figure a carrier bills on is the packed parcel, not the item: a bey is
13
+ * ~30 g and ~300 g boxed. A required product weight would therefore be an item
14
+ * weight that systematically under-estimates every booking โ€” and since the
15
+ * booking is capped at the amount collected from the buyer, systematic
16
+ * under-estimation means silently absorbing the difference on every order.
17
+ *
18
+ * So the seller enters the real number when they have the box in front of
19
+ * them, and the category default exists only to quote with before that exists.
20
+ *
21
+ * ## ๐Ÿ›‘ And the estimate must never silently become zero
22
+ *
23
+ * A missing weight cannot resolve to `0` โ€” a carrier rate for a 0 g parcel is
24
+ * either an error or the cheapest band, and the cheapest band is the one that
25
+ * loses money. `resolveParcel` returns `null` when nothing is known, and every
26
+ * caller has to decide what to do about it rather than being handed a number
27
+ * that looks usable.
28
+ *
29
+ * Pure. No Firestore, no React.
30
+ */
31
+ /** A dimension triple, all three or nothing โ€” see `normaliseDimensions`. */
32
+ export interface ParcelDimensionsCm {
33
+ l: number;
34
+ w: number;
35
+ h: number;
36
+ }
37
+ export interface Parcel {
38
+ weightG: number;
39
+ dimensionsCm?: ParcelDimensionsCm;
40
+ /**
41
+ * Which tier supplied the weight, so a surface can say so.
42
+ *
43
+ * Carried because "โ‚น140 estimated" and "โ‚น140 estimated from the category's
44
+ * typical packed weight, because this listing has none" are different claims,
45
+ * and the second is the honest one most of the time.
46
+ */
47
+ source: "shipment" | "product" | "category";
48
+ }
49
+ /** What a product or category can offer. Structural, so either shape fits. */
50
+ export interface ParcelSource {
51
+ weightG?: number | null;
52
+ dimensionsCm?: {
53
+ l?: number | null;
54
+ w?: number | null;
55
+ h?: number | null;
56
+ } | null;
57
+ }
58
+ /**
59
+ * All three dimensions or none.
60
+ *
61
+ * A box with a length and no width is not a dimension โ€” a carrier's volumetric
62
+ * calculation needs the triple, and feeding it two of three yields either an
63
+ * error or a quote for a flat sheet. The product form and the admin editor
64
+ * both enforce this at input; this is the read-side twin so a document written
65
+ * before they did cannot leak a partial triple into a rate request.
66
+ */
67
+ export declare function normaliseDimensions(d: ParcelSource["dimensionsCm"]): ParcelDimensionsCm | undefined;
68
+ /**
69
+ * Resolve the parcel to quote on, most specific tier first.
70
+ *
71
+ * ๐Ÿ›‘ Returns `null` rather than a zero-weight parcel when no tier supplies a
72
+ * weight. A caller must then either refuse to quote or fall back to a
73
+ * non-carrier shipping mode โ€” both of which are visible decisions, where a
74
+ * `0` would have been an invisible one.
75
+ *
76
+ * Dimensions are resolved INDEPENDENTLY of the weight, because the two are
77
+ * declared independently: a seller who typed a weight and no box size should
78
+ * still get the category's box size rather than none. Taking both from
79
+ * whichever tier won on weight would discard information that exists.
80
+ */
81
+ export declare function resolveParcel(shipment: ParcelSource | null | undefined, product: ParcelSource | null | undefined, category: ParcelSource | null | undefined): Parcel | null;
82
+ /**
83
+ * The weight of a whole order group โ€” what a single shipment actually carries.
84
+ *
85
+ * Summed across lines and multiplied by live quantity, because a carrier
86
+ * quotes one parcel per shipment and two beys in one box weigh more than one.
87
+ *
88
+ * ๐Ÿ›‘ Returns `null` if ANY line has no resolvable weight, rather than summing
89
+ * the ones it knows. A partial sum is a confident under-estimate, which is the
90
+ * exact failure this module exists to prevent โ€” and it is worse than no
91
+ * estimate, because no estimate is visible.
92
+ */
93
+ export declare function resolveGroupWeightG(lines: ReadonlyArray<{
94
+ quantity: number;
95
+ parcel: Parcel | null;
96
+ }>): number | null;
97
+ /**
98
+ * Actual against estimated, recorded and NEVER blended.
99
+ *
100
+ * Same discipline as the price index's market-vs-sold pair, for the same
101
+ * reason: the estimate is what we charged the buyer and the actual is what the
102
+ * carrier billed, and **the gap is the thing worth watching**. A leaf whose
103
+ * actuals run consistently over its default is telling us the default is
104
+ * wrong, which is a report for a human โ€” not an automatic correction, because
105
+ * a default that chases its own actuals has no anchor.
106
+ */
107
+ export interface ParcelWeightVariance {
108
+ estimatedG: number;
109
+ actualG: number;
110
+ /** Positive means the real parcel was HEAVIER than quoted. */
111
+ deltaG: number;
112
+ /** Signed fraction of the estimate, rounded to 3dp. `null` if estimate is 0. */
113
+ deltaRatio: number | null;
114
+ }
115
+ export declare function parcelWeightVariance(estimatedG: number, actualG: number): ParcelWeightVariance;
@@ -0,0 +1,120 @@
1
+ /**
2
+ * The parcel a shipment is quoted and booked on โ€” C5a.
3
+ *
4
+ * ## ๐Ÿ›‘ Three tiers, and the distinction between them is the whole point
5
+ *
6
+ * CATEGORY `CategoryProductDefaults.weightG` / `dimensionsCm` โ€” a PACKED
7
+ * figure, seeded per leaf. Drives the checkout ESTIMATE.
8
+ * PRODUCT `ProductDocument.weightG` / `dimensionsCm` โ€” OPTIONAL. Refines
9
+ * the estimate when a seller has actually weighed a packed box.
10
+ * SHIPMENT entered by the seller at booking time. **What is booked.**
11
+ *
12
+ * The figure a carrier bills on is the packed parcel, not the item: a bey is
13
+ * ~30 g and ~300 g boxed. A required product weight would therefore be an item
14
+ * weight that systematically under-estimates every booking โ€” and since the
15
+ * booking is capped at the amount collected from the buyer, systematic
16
+ * under-estimation means silently absorbing the difference on every order.
17
+ *
18
+ * So the seller enters the real number when they have the box in front of
19
+ * them, and the category default exists only to quote with before that exists.
20
+ *
21
+ * ## ๐Ÿ›‘ And the estimate must never silently become zero
22
+ *
23
+ * A missing weight cannot resolve to `0` โ€” a carrier rate for a 0 g parcel is
24
+ * either an error or the cheapest band, and the cheapest band is the one that
25
+ * loses money. `resolveParcel` returns `null` when nothing is known, and every
26
+ * caller has to decide what to do about it rather than being handed a number
27
+ * that looks usable.
28
+ *
29
+ * Pure. No Firestore, no React.
30
+ */
31
+ /**
32
+ * All three dimensions or none.
33
+ *
34
+ * A box with a length and no width is not a dimension โ€” a carrier's volumetric
35
+ * calculation needs the triple, and feeding it two of three yields either an
36
+ * error or a quote for a flat sheet. The product form and the admin editor
37
+ * both enforce this at input; this is the read-side twin so a document written
38
+ * before they did cannot leak a partial triple into a rate request.
39
+ */
40
+ export function normaliseDimensions(d) {
41
+ if (!d)
42
+ return undefined;
43
+ const l = Number(d.l ?? 0);
44
+ const w = Number(d.w ?? 0);
45
+ const h = Number(d.h ?? 0);
46
+ if (!(l > 0 && w > 0 && h > 0))
47
+ return undefined;
48
+ return { l, w, h };
49
+ }
50
+ /**
51
+ * Resolve the parcel to quote on, most specific tier first.
52
+ *
53
+ * ๐Ÿ›‘ Returns `null` rather than a zero-weight parcel when no tier supplies a
54
+ * weight. A caller must then either refuse to quote or fall back to a
55
+ * non-carrier shipping mode โ€” both of which are visible decisions, where a
56
+ * `0` would have been an invisible one.
57
+ *
58
+ * Dimensions are resolved INDEPENDENTLY of the weight, because the two are
59
+ * declared independently: a seller who typed a weight and no box size should
60
+ * still get the category's box size rather than none. Taking both from
61
+ * whichever tier won on weight would discard information that exists.
62
+ */
63
+ export function resolveParcel(shipment, product, category) {
64
+ const tiers = [
65
+ ["shipment", shipment],
66
+ ["product", product],
67
+ ["category", category],
68
+ ];
69
+ let weightG = null;
70
+ let source = null;
71
+ for (const [name, t] of tiers) {
72
+ const w = t?.weightG;
73
+ if (typeof w === "number" && w > 0) {
74
+ weightG = w;
75
+ source = name;
76
+ break;
77
+ }
78
+ }
79
+ if (weightG == null || source == null)
80
+ return null;
81
+ let dimensionsCm;
82
+ for (const [, t] of tiers) {
83
+ const d = normaliseDimensions(t?.dimensionsCm);
84
+ if (d) {
85
+ dimensionsCm = d;
86
+ break;
87
+ }
88
+ }
89
+ return { weightG, source, ...(dimensionsCm ? { dimensionsCm } : {}) };
90
+ }
91
+ /**
92
+ * The weight of a whole order group โ€” what a single shipment actually carries.
93
+ *
94
+ * Summed across lines and multiplied by live quantity, because a carrier
95
+ * quotes one parcel per shipment and two beys in one box weigh more than one.
96
+ *
97
+ * ๐Ÿ›‘ Returns `null` if ANY line has no resolvable weight, rather than summing
98
+ * the ones it knows. A partial sum is a confident under-estimate, which is the
99
+ * exact failure this module exists to prevent โ€” and it is worse than no
100
+ * estimate, because no estimate is visible.
101
+ */
102
+ export function resolveGroupWeightG(lines) {
103
+ let total = 0;
104
+ for (const line of lines) {
105
+ if (!line.parcel)
106
+ return null;
107
+ const qty = Math.max(1, line.quantity);
108
+ total += line.parcel.weightG * qty;
109
+ }
110
+ return total > 0 ? total : null;
111
+ }
112
+ export function parcelWeightVariance(estimatedG, actualG) {
113
+ const deltaG = Math.round((actualG - estimatedG) * 1000) / 1000;
114
+ return {
115
+ estimatedG,
116
+ actualG,
117
+ deltaG,
118
+ deltaRatio: estimatedG > 0 ? Math.round((deltaG / estimatedG) * 1000) / 1000 : null,
119
+ };
120
+ }
@@ -0,0 +1,221 @@
1
+ /**
2
+ * The two buyer protections โ€” C5e.
3
+ *
4
+ * ## ๐Ÿ›‘ What was wrong, and why the fix is a claim path rather than a deletion
5
+ *
6
+ * `computeShipmentProtectionFee` is real: `max(โ‚น30, 2%)`, opt-in per store,
7
+ * written to the order as `shipmentProtectionAddon` / `shipmentProtectionFee`,
8
+ * rendered as a "Protected" chip. And `OrderAddonBadges.tsx` claims the flag
9
+ * *"changes how a loss claim is handled"* โ€” while **no refund, dispute or RMA
10
+ * code reads it anywhere**. A buyer paid 2% for a promise the system could not
11
+ * keep.
12
+ *
13
+ * An earlier revision of the plan concluded "delete it". That was wrong. The
14
+ * diagnosis was right โ€” the fee was real and the claim path did not exist โ€”
15
+ * but the missing half is the claim, and **escrow is the pot it pays from**.
16
+ * Holding the buyer's funds until delivery is what turns the badge from a
17
+ * promise into a mechanism.
18
+ *
19
+ * ## TWO protections, because they fail independently
20
+ *
21
+ * SHIPPING loss or damage IN TRANSIT. We are the carrier's counterparty
22
+ * under escrow, so the carrier claim is ours to pursue and the
23
+ * buyer never argues with a courier.
24
+ * SALE the item itself โ€” not as described, wrong item, item issues.
25
+ * Branches the return flow, skipping the seller-fault
26
+ * determination.
27
+ *
28
+ * A parcel that arrives intact containing the wrong bey is a SALE problem, not
29
+ * a shipping one. A single blended "protection" would charge once and have to
30
+ * answer both โ€” and, worse, would have to be wholly offered or wholly withheld
31
+ * on a final-sale item, where the right answers differ (see below).
32
+ */
33
+ /** Which protection. Deliberately not a boolean pair in the signatures. */
34
+ export type ProtectionKind = "shipping" | "sale";
35
+ export declare const PROTECTION_KINDS: readonly ProtectionKind[];
36
+ /** Why a protection is not on offer. Rendered to the buyer, so it is copy. */
37
+ export type ProtectionUnavailableReason = "platform-disabled" | "seller-not-supported" | "final-sale";
38
+ export type ProtectionAvailability = {
39
+ available: true;
40
+ } | {
41
+ available: false;
42
+ reason: ProtectionUnavailableReason;
43
+ };
44
+ export interface ProtectionTierInput {
45
+ /** TIER 1 โ€” admin, platform-wide. `commissions.*FeeEnabled`. Default TRUE. */
46
+ platformEnabled: boolean;
47
+ /**
48
+ * TIER 2 โ€” the seller, for their own orders. Default FALSE.
49
+ *
50
+ * ๐Ÿ›‘ The two defaults are opposite ON PURPOSE and it is not an
51
+ * inconsistency. The admin flag answers "do we offer this product at all" โ€”
52
+ * we built it, so `true`. The seller flag answers "has this seller agreed to
53
+ * be held to it" โ€” they have not been asked, so `false`. Defaulting the
54
+ * seller flag to `true` would enrol every existing seller in a liability
55
+ * they never accepted, which is a worse failure than a day-one page full of
56
+ * risk notices.
57
+ */
58
+ sellerSupports: boolean;
59
+ /**
60
+ * TIER 3 โ€” the item. `finalSale` from the ORDER ITEM's snapshot at claim
61
+ * time, or the product at purchase time.
62
+ */
63
+ finalSale: boolean;
64
+ }
65
+ /**
66
+ * Is this protection on offer, and if not, why.
67
+ *
68
+ * ๐Ÿ›‘ `finalSale` is checked for SALE protection only, and the asymmetry is the
69
+ * strongest argument for keeping the two separate:
70
+ *
71
+ * final sale + sale protection INELIGIBLE. "No returns" and
72
+ * "no-questions-asked refund" are a plain
73
+ * contradiction, and `finalSale` exists
74
+ * precisely so a seller cannot be made to
75
+ * take an item back.
76
+ * final sale + shipping protection UNAFFECTED. A parcel lost in transit was
77
+ * never delivered, so there is nothing for
78
+ * "final" to be final about โ€” the buyer
79
+ * did not receive the item they accepted
80
+ * as non-returnable.
81
+ *
82
+ * Order of checks is the order of ownership: platform, then seller, then item.
83
+ * That matters because the REASON is rendered, and "we do not offer this" is a
84
+ * different sentence from "this seller does not offer this".
85
+ */
86
+ export declare function protectionAvailability(kind: ProtectionKind, input: ProtectionTierInput): ProtectionAvailability;
87
+ /**
88
+ * Whether to show the buyer a pre-purchase RISK NOTICE.
89
+ *
90
+ * ๐Ÿ›‘ Absence must read as "not supported", never as "unknown". A tri-state
91
+ * where `undefined` renders neither a badge nor a notice is the worst of the
92
+ * three outcomes: the buyer gets no signal at all and cannot tell a seller who
93
+ * declined from one who has not been asked.
94
+ *
95
+ * `platform-disabled` is the one reason that shows NOTHING โ€” if we do not
96
+ * offer the product, there is nothing to disclose about this seller, and a
97
+ * notice would be us advertising a gap we created.
98
+ */
99
+ export declare function showsRiskNotice(a: ProtectionAvailability): boolean;
100
+ /**
101
+ * Whether to show the seller's safety BADGE.
102
+ *
103
+ * ๐Ÿ›‘ Gated on the claim path existing, not merely on the flag. A badge for a
104
+ * promise the platform cannot keep is the dead `OrderAddonBadges` tooltip one
105
+ * level up โ€” a seller opting into something we do not honour.
106
+ */
107
+ export declare function showsSafetyBadge(a: ProtectionAvailability): boolean;
108
+ /**
109
+ * ๐Ÿ›‘ The two badges must never appear together on one card.
110
+ *
111
+ * "Final sale" beside "Sale protected" is incoherent to a buyer and they are
112
+ * right. A final-sale listing shows the final-sale badge and, when the seller
113
+ * supports it, the SHIPPING-protection badge only.
114
+ */
115
+ export declare function badgesFor(input: ProtectionTierInput): {
116
+ finalSale: boolean;
117
+ shippingProtected: boolean;
118
+ saleProtected: boolean;
119
+ };
120
+ /**
121
+ * Both protection fees for one order group, with all three tiers applied.
122
+ *
123
+ * ๐Ÿ›‘ This exists because there are THREE money sites that must agree โ€” the
124
+ * pricing preview (what the buyer is shown), `createOrderForGroup` (what the
125
+ * order records) and `POST /api/payment/create-order` (what the gateway
126
+ * captures) โ€” and a fee charged at one and refused at another is an overcharge
127
+ * with no record. Root Cause #75's shape: a rule reachable by copy-paste will
128
+ * be copied, and the copy made before a branch was added never learns about
129
+ * it. Exporting the whole computed pair rather than the predicate is what
130
+ * stops a caller re-deriving the `&&`.
131
+ *
132
+ * ๐Ÿ›‘ The caller still supplies `finalSale` from the right source for its own
133
+ * moment: the live product at PREVIEW (no order exists yet), the order item's
134
+ * snapshot at CREATION and at CLAIM. That is deliberately not hidden in here โ€”
135
+ * which source is correct depends on when you are asking, and a helper that
136
+ * guessed would get the claim-time case wrong, which is the one that matters.
137
+ */
138
+ export declare function computeProtectionFees(input: {
139
+ /** Order-group goods value the percentage applies to. */
140
+ subtotal: number;
141
+ selected: {
142
+ shipping: boolean;
143
+ sale: boolean;
144
+ };
145
+ tiers: {
146
+ platformShipping: boolean;
147
+ platformSale: boolean;
148
+ sellerShipping: boolean;
149
+ sellerSale: boolean;
150
+ finalSale: boolean;
151
+ };
152
+ /** `(subtotal, selected, rates)` โ€” pass the matching `compute*Fee`. */
153
+ shippingFee: (subtotal: number, selected: boolean) => number;
154
+ saleFee: (subtotal: number, selected: boolean) => number;
155
+ }): {
156
+ shippingProtectionFee: number;
157
+ saleProtectionFee: number;
158
+ };
159
+ export type ClaimFinding = "genuine" | "change-of-mind";
160
+ export interface ClaimOutcome {
161
+ /** Is the buyer refunded? */
162
+ refundBuyer: boolean;
163
+ /** Who absorbs the cost. */
164
+ costBorneBy: "seller" | "platform" | "buyer";
165
+ /** Whether a scam-registry signal should be raised for review. */
166
+ raisesReport: boolean;
167
+ }
168
+ /**
169
+ * ๐Ÿ›‘ INSPECTION DECIDES WHO PAYS โ€” NEVER WHETHER A PROTECTED BUYER IS
170
+ * REFUNDED.
171
+ *
172
+ * This is the part that must not be got wrong, because it is where the promise
173
+ * lives. Sale protection says *no questions asked*. If inspection could block
174
+ * a protected refund then "no questions asked" is false, and we would be
175
+ * rebuilding the dead-tooltip problem with extra steps.
176
+ *
177
+ * protected + genuine refunded ยท charged back to the SELLER
178
+ * protected + change-of-mind refunded ยท absorbed by the PLATFORM โ€”
179
+ * this is what the fee prices
180
+ * unprotected + genuine refunded ยท the SELLER's fault, seller pays
181
+ * unprotected + change-of-mind per the return policy โ€” the BUYER pays
182
+ *
183
+ * What inspection gates is the chargeback, and that is also what makes the
184
+ * seller-level opt-in meaningful: a seller supporting the cover accepts that
185
+ * genuine claims land on them, and the fee covers the rest.
186
+ *
187
+ * `raisesReport` is a SIGNAL, not a verdict. A threshold opens a
188
+ * `ReportDocument` for a human; an automatic exclusion on a count would punish
189
+ * an unlucky buyer who received two genuinely bad items, and the scam
190
+ * registry's entries are written as patterns to recognise rather than rules to
191
+ * fire.
192
+ */
193
+ export declare function adjudicateClaim(protectedSale: boolean, finding: ClaimFinding): ClaimOutcome;
194
+ /**
195
+ * Where a RETURN ships to โ€” C5g, stated here because it branches on the
196
+ * add-on and nothing else should re-derive that.
197
+ *
198
+ * ๐Ÿ›‘ Warehouse routing applies ONLY to a sale-protection claim, not to returns
199
+ * in general. We take custody only where we are the ones underwriting the
200
+ * refund, which is also the only case where we need to know whether to charge
201
+ * the seller back. An ordinary return on an unprotected order stays between
202
+ * the buyer and the seller exactly as it does today.
203
+ *
204
+ * The admin trust flag sends even a protected claim to the seller.
205
+ */
206
+ export declare function returnDestination(input: {
207
+ saleProtectedClaim: boolean;
208
+ /** `StoreDocument.returnsDirectToSeller` โ€” ADMIN-granted, never seller-set. */
209
+ sellerTrustedByAdmin: boolean;
210
+ }): "warehouse" | "seller";
211
+ /**
212
+ * Where an RTO lands โ€” C5h. Same rule, different trigger.
213
+ *
214
+ * An RTO is not buyer-initiated: the carrier is sending a parcel back because
215
+ * it could not be delivered. Nobody asked for it, so no claim exists โ€” but the
216
+ * destination still follows who underwrote the order, because that is who has
217
+ * to inspect and account for it.
218
+ */
219
+ export declare function rtoDestination(input: {
220
+ saleProtectedOrder: boolean;
221
+ }): "warehouse" | "seller";