@mohasinac/appkit 2.6.2 → 2.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (607) hide show
  1. package/dist/_internal/server/features/account/data.js +2 -2
  2. package/dist/_internal/server/features/bundles/data.d.ts +26 -6
  3. package/dist/_internal/server/features/bundles/data.js +41 -6
  4. package/dist/_internal/server/features/bundles/index.d.ts +3 -2
  5. package/dist/_internal/server/features/bundles/index.js +4 -2
  6. package/dist/_internal/server/features/bundles/metadata.d.ts +20 -0
  7. package/dist/_internal/server/features/bundles/metadata.js +46 -0
  8. package/dist/_internal/server/features/bundles/og.d.ts +38 -0
  9. package/dist/_internal/server/features/bundles/og.js +122 -0
  10. package/dist/_internal/server/features/checkout/actions.js +192 -133
  11. package/dist/_internal/server/features/checkout/bundle-expansion.d.ts +57 -0
  12. package/dist/_internal/server/features/checkout/bundle-expansion.js +70 -0
  13. package/dist/_internal/server/features/checkout/prize-bundle-gates.d.ts +5 -15
  14. package/dist/_internal/server/features/checkout/prize-bundle-gates.js +5 -21
  15. package/dist/_internal/server/features/media/contextGuards.js +15 -1
  16. package/dist/_internal/server/features/payouts/actions.d.ts +19 -0
  17. package/dist/_internal/server/features/payouts/actions.js +38 -0
  18. package/dist/_internal/server/features/products/data.js +1 -2
  19. package/dist/_internal/server/features/raffle/actions.d.ts +11 -0
  20. package/dist/_internal/server/features/raffle/actions.js +31 -0
  21. package/dist/_internal/server/features/refunds/actions.d.ts +31 -0
  22. package/dist/_internal/server/features/refunds/actions.js +77 -0
  23. package/dist/_internal/server/jobs/core/adminAnalytics.d.ts +28 -0
  24. package/dist/_internal/server/jobs/core/adminAnalytics.js +98 -0
  25. package/dist/_internal/server/jobs/core/assignSpinPrize.d.ts +19 -0
  26. package/dist/_internal/server/jobs/core/assignSpinPrize.js +81 -0
  27. package/dist/_internal/server/jobs/core/auctionSettlement.d.ts +2 -0
  28. package/dist/_internal/server/jobs/core/auctionSettlement.js +70 -0
  29. package/dist/_internal/server/jobs/core/autoPayoutEligibility.d.ts +2 -0
  30. package/dist/_internal/server/jobs/core/autoPayoutEligibility.js +109 -0
  31. package/dist/_internal/server/jobs/core/bundleStockSync.d.ts +10 -0
  32. package/dist/_internal/server/jobs/core/bundleStockSync.js +71 -0
  33. package/dist/_internal/server/jobs/core/cartPrune.d.ts +2 -0
  34. package/dist/_internal/server/jobs/core/cartPrune.js +13 -0
  35. package/dist/_internal/server/jobs/core/cleanupRtdbEvents.d.ts +2 -0
  36. package/dist/_internal/server/jobs/core/cleanupRtdbEvents.js +45 -0
  37. package/dist/_internal/server/jobs/core/countersReconcile.d.ts +2 -0
  38. package/dist/_internal/server/jobs/core/countersReconcile.js +107 -0
  39. package/dist/_internal/server/jobs/core/couponExpiry.d.ts +2 -0
  40. package/dist/_internal/server/jobs/core/couponExpiry.js +13 -0
  41. package/dist/_internal/server/jobs/core/dailyDataCleanup.d.ts +2 -0
  42. package/dist/_internal/server/jobs/core/dailyDataCleanup.js +20 -0
  43. package/dist/_internal/server/jobs/core/index.d.ts +44 -0
  44. package/dist/_internal/server/jobs/core/index.js +47 -0
  45. package/dist/_internal/server/jobs/core/listingProcessor.d.ts +30 -0
  46. package/dist/_internal/server/jobs/core/listingProcessor.js +138 -0
  47. package/dist/_internal/server/jobs/core/mediaTmpCleanup.d.ts +14 -0
  48. package/dist/_internal/server/jobs/core/mediaTmpCleanup.js +68 -0
  49. package/dist/_internal/server/jobs/core/notificationPrune.d.ts +2 -0
  50. package/dist/_internal/server/jobs/core/notificationPrune.js +13 -0
  51. package/dist/_internal/server/jobs/core/offerExpiry.d.ts +2 -0
  52. package/dist/_internal/server/jobs/core/offerExpiry.js +50 -0
  53. package/dist/_internal/server/jobs/core/onBidPlaced.d.ts +15 -0
  54. package/dist/_internal/server/jobs/core/onBidPlaced.js +59 -0
  55. package/dist/_internal/server/jobs/core/onCategoryWrite.d.ts +14 -0
  56. package/dist/_internal/server/jobs/core/onCategoryWrite.js +134 -0
  57. package/dist/_internal/server/jobs/core/onOrderCreate.d.ts +18 -0
  58. package/dist/_internal/server/jobs/core/onOrderCreate.js +78 -0
  59. package/dist/_internal/server/jobs/core/onOrderStatusChange.d.ts +19 -0
  60. package/dist/_internal/server/jobs/core/onOrderStatusChange.js +139 -0
  61. package/dist/_internal/server/jobs/core/onProductStockChange.d.ts +23 -0
  62. package/dist/_internal/server/jobs/core/onProductStockChange.js +130 -0
  63. package/dist/_internal/server/jobs/core/onProductWrite.d.ts +12 -0
  64. package/dist/_internal/server/jobs/core/onProductWrite.js +94 -0
  65. package/dist/_internal/server/jobs/core/onReviewWrite.d.ts +7 -0
  66. package/dist/_internal/server/jobs/core/onReviewWrite.js +49 -0
  67. package/dist/_internal/server/jobs/core/onStoreWrite.d.ts +12 -0
  68. package/dist/_internal/server/jobs/core/onStoreWrite.js +7 -0
  69. package/dist/_internal/server/jobs/core/payoutBatch.d.ts +8 -0
  70. package/dist/_internal/server/jobs/core/payoutBatch.js +102 -0
  71. package/dist/_internal/server/jobs/core/pendingOrderTimeout.d.ts +2 -0
  72. package/dist/_internal/server/jobs/core/pendingOrderTimeout.js +27 -0
  73. package/dist/_internal/server/jobs/core/positionsReconcile.d.ts +7 -0
  74. package/dist/_internal/server/jobs/core/positionsReconcile.js +87 -0
  75. package/dist/_internal/server/jobs/core/prizeRevealClose.d.ts +2 -0
  76. package/dist/_internal/server/jobs/core/prizeRevealClose.js +22 -0
  77. package/dist/_internal/server/jobs/core/prizeRevealExpiry.d.ts +2 -0
  78. package/dist/_internal/server/jobs/core/prizeRevealExpiry.js +50 -0
  79. package/dist/_internal/server/jobs/core/prizeRevealOpen.d.ts +2 -0
  80. package/dist/_internal/server/jobs/core/prizeRevealOpen.js +56 -0
  81. package/dist/_internal/server/jobs/core/prizeRevealReminder.d.ts +2 -0
  82. package/dist/_internal/server/jobs/core/prizeRevealReminder.js +38 -0
  83. package/dist/_internal/server/jobs/core/productStatsSync.d.ts +8 -0
  84. package/dist/_internal/server/jobs/core/productStatsSync.js +36 -0
  85. package/dist/_internal/server/jobs/core/promotions.d.ts +12 -0
  86. package/dist/_internal/server/jobs/core/promotions.js +43 -0
  87. package/dist/_internal/server/jobs/core/storeAnalytics.d.ts +30 -0
  88. package/dist/_internal/server/jobs/core/storeAnalytics.js +109 -0
  89. package/dist/_internal/server/jobs/core/triggerEventRaffle.d.ts +19 -0
  90. package/dist/_internal/server/jobs/core/triggerEventRaffle.js +86 -0
  91. package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.d.ts +6 -0
  92. package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.js +85 -0
  93. package/dist/_internal/server/jobs/handlers/adminAnalytics.d.ts +2 -26
  94. package/dist/_internal/server/jobs/handlers/adminAnalytics.js +2 -98
  95. package/dist/_internal/server/jobs/handlers/assignSpinPrize.d.ts +1 -22
  96. package/dist/_internal/server/jobs/handlers/assignSpinPrize.js +2 -86
  97. package/dist/_internal/server/jobs/handlers/auctionSettlement.js +2 -70
  98. package/dist/_internal/server/jobs/handlers/autoPayoutEligibility.js +2 -110
  99. package/dist/_internal/server/jobs/handlers/bundleStockSync.d.ts +0 -16
  100. package/dist/_internal/server/jobs/handlers/bundleStockSync.js +2 -80
  101. package/dist/_internal/server/jobs/handlers/cartPrune.js +2 -13
  102. package/dist/_internal/server/jobs/handlers/cleanupRtdbEvents.js +2 -45
  103. package/dist/_internal/server/jobs/handlers/countersReconcile.js +2 -109
  104. package/dist/_internal/server/jobs/handlers/couponExpiry.js +2 -13
  105. package/dist/_internal/server/jobs/handlers/dailyDataCleanup.js +2 -20
  106. package/dist/_internal/server/jobs/handlers/listingProcessor.d.ts +3 -28
  107. package/dist/_internal/server/jobs/handlers/listingProcessor.js +3 -138
  108. package/dist/_internal/server/jobs/handlers/mediaTmpCleanup.d.ts +0 -12
  109. package/dist/_internal/server/jobs/handlers/mediaTmpCleanup.js +2 -69
  110. package/dist/_internal/server/jobs/handlers/notificationPrune.js +2 -13
  111. package/dist/_internal/server/jobs/handlers/offerExpiry.js +2 -50
  112. package/dist/_internal/server/jobs/handlers/onBidPlaced.d.ts +1 -10
  113. package/dist/_internal/server/jobs/handlers/onBidPlaced.js +2 -56
  114. package/dist/_internal/server/jobs/handlers/onCategoryWrite.d.ts +1 -8
  115. package/dist/_internal/server/jobs/handlers/onCategoryWrite.js +6 -134
  116. package/dist/_internal/server/jobs/handlers/onOrderCreate.d.ts +1 -12
  117. package/dist/_internal/server/jobs/handlers/onOrderCreate.js +2 -76
  118. package/dist/_internal/server/jobs/handlers/onOrderStatusChange.d.ts +1 -12
  119. package/dist/_internal/server/jobs/handlers/onOrderStatusChange.js +2 -139
  120. package/dist/_internal/server/jobs/handlers/onProductStockChange.d.ts +0 -13
  121. package/dist/_internal/server/jobs/handlers/onProductStockChange.js +7 -134
  122. package/dist/_internal/server/jobs/handlers/onProductWrite.d.ts +1 -6
  123. package/dist/_internal/server/jobs/handlers/onProductWrite.js +6 -106
  124. package/dist/_internal/server/jobs/handlers/onReviewWrite.js +2 -49
  125. package/dist/_internal/server/jobs/handlers/onStoreWrite.d.ts +1 -8
  126. package/dist/_internal/server/jobs/handlers/onStoreWrite.js +7 -8
  127. package/dist/_internal/server/jobs/handlers/payoutBatch.d.ts +0 -9
  128. package/dist/_internal/server/jobs/handlers/payoutBatch.js +2 -104
  129. package/dist/_internal/server/jobs/handlers/pendingOrderTimeout.d.ts +0 -6
  130. package/dist/_internal/server/jobs/handlers/pendingOrderTimeout.js +2 -33
  131. package/dist/_internal/server/jobs/handlers/positionsReconcile.d.ts +0 -5
  132. package/dist/_internal/server/jobs/handlers/positionsReconcile.js +2 -87
  133. package/dist/_internal/server/jobs/handlers/prizeRevealClose.d.ts +0 -7
  134. package/dist/_internal/server/jobs/handlers/prizeRevealClose.js +2 -29
  135. package/dist/_internal/server/jobs/handlers/prizeRevealExpiry.d.ts +0 -8
  136. package/dist/_internal/server/jobs/handlers/prizeRevealExpiry.js +2 -58
  137. package/dist/_internal/server/jobs/handlers/prizeRevealOpen.d.ts +0 -8
  138. package/dist/_internal/server/jobs/handlers/prizeRevealOpen.js +2 -65
  139. package/dist/_internal/server/jobs/handlers/prizeRevealReminder.d.ts +0 -7
  140. package/dist/_internal/server/jobs/handlers/prizeRevealReminder.js +2 -45
  141. package/dist/_internal/server/jobs/handlers/productStatsSync.d.ts +0 -6
  142. package/dist/_internal/server/jobs/handlers/productStatsSync.js +2 -36
  143. package/dist/_internal/server/jobs/handlers/promotions.d.ts +2 -10
  144. package/dist/_internal/server/jobs/handlers/promotions.js +2 -43
  145. package/dist/_internal/server/jobs/handlers/storeAnalytics.d.ts +2 -28
  146. package/dist/_internal/server/jobs/handlers/storeAnalytics.js +2 -109
  147. package/dist/_internal/server/jobs/handlers/triggerEventRaffle.d.ts +1 -28
  148. package/dist/_internal/server/jobs/handlers/triggerEventRaffle.js +2 -94
  149. package/dist/_internal/server/jobs/handlers/weeklyPayoutEligibility.d.ts +0 -6
  150. package/dist/_internal/server/jobs/handlers/weeklyPayoutEligibility.js +2 -87
  151. package/dist/_internal/server/jobs/index.d.ts +1 -0
  152. package/dist/_internal/server/jobs/index.js +1 -0
  153. package/dist/_internal/server/jobs/runtime/adapters/firebase.js +21 -0
  154. package/dist/_internal/shared/actions/action-registry.d.ts +84 -0
  155. package/dist/_internal/shared/actions/action-registry.js +160 -0
  156. package/dist/_internal/shared/checkout/rules/_defaults.d.ts +3 -0
  157. package/dist/_internal/shared/checkout/rules/_defaults.js +22 -0
  158. package/dist/_internal/shared/checkout/rules/_limits.d.ts +19 -0
  159. package/dist/_internal/shared/checkout/rules/_limits.js +19 -0
  160. package/dist/_internal/shared/checkout/rules/_registry.d.ts +44 -0
  161. package/dist/_internal/shared/checkout/rules/_registry.js +87 -0
  162. package/dist/_internal/shared/checkout/rules/auction.rule.d.ts +2 -0
  163. package/dist/_internal/shared/checkout/rules/auction.rule.js +10 -0
  164. package/dist/_internal/shared/checkout/rules/bundle.rule.d.ts +11 -0
  165. package/dist/_internal/shared/checkout/rules/bundle.rule.js +6 -0
  166. package/dist/_internal/shared/checkout/rules/classified.rule.d.ts +9 -0
  167. package/dist/_internal/shared/checkout/rules/classified.rule.js +9 -0
  168. package/dist/_internal/shared/checkout/rules/digital-code.rule.d.ts +8 -0
  169. package/dist/_internal/shared/checkout/rules/digital-code.rule.js +6 -0
  170. package/dist/_internal/shared/checkout/rules/index.d.ts +12 -0
  171. package/dist/_internal/shared/checkout/rules/index.js +12 -0
  172. package/dist/_internal/shared/checkout/rules/live.rule.d.ts +10 -0
  173. package/dist/_internal/shared/checkout/rules/live.rule.js +6 -0
  174. package/dist/_internal/shared/checkout/rules/offer.rule.d.ts +2 -0
  175. package/dist/_internal/shared/checkout/rules/offer.rule.js +9 -0
  176. package/dist/_internal/shared/checkout/rules/preorder.rule.d.ts +2 -0
  177. package/dist/_internal/shared/checkout/rules/preorder.rule.js +28 -0
  178. package/dist/_internal/shared/checkout/rules/prize-draw.rule.d.ts +2 -0
  179. package/dist/_internal/shared/checkout/rules/prize-draw.rule.js +65 -0
  180. package/dist/_internal/shared/checkout/rules/standard.rule.d.ts +2 -0
  181. package/dist/_internal/shared/checkout/rules/standard.rule.js +5 -0
  182. package/dist/_internal/shared/checkout/rules/types.d.ts +125 -0
  183. package/dist/_internal/shared/checkout/rules/types.js +13 -0
  184. package/dist/_internal/shared/features/cart/schema.d.ts +6 -6
  185. package/dist/_internal/shared/features/categories/bundle-copy.d.ts +123 -0
  186. package/dist/_internal/shared/features/categories/bundle-copy.js +134 -0
  187. package/dist/_internal/shared/features/categories/bundle-schemas.d.ts +318 -0
  188. package/dist/_internal/shared/features/categories/bundle-schemas.js +55 -0
  189. package/dist/_internal/shared/features/orders/refund-copy.d.ts +36 -0
  190. package/dist/_internal/shared/features/orders/refund-copy.js +40 -0
  191. package/dist/_internal/shared/features/orders/schema.d.ts +4 -4
  192. package/dist/_internal/shared/features/products/schema.d.ts +8 -8
  193. package/dist/_internal/shared/listing-types/_registry.d.ts +27 -0
  194. package/dist/_internal/shared/listing-types/_registry.js +8 -0
  195. package/dist/_internal/shared/listing-types/action-tracker.d.ts +41 -0
  196. package/dist/_internal/shared/listing-types/action-tracker.js +70 -0
  197. package/dist/_internal/shared/listing-types/capabilities.js +25 -0
  198. package/dist/_internal/shared/listing-types/cart-shipping.d.ts +37 -0
  199. package/dist/_internal/shared/listing-types/cart-shipping.js +46 -0
  200. package/dist/_internal/shared/listing-types/classified/config.d.ts +7 -0
  201. package/dist/_internal/shared/listing-types/classified/config.js +8 -0
  202. package/dist/_internal/shared/listing-types/classified/ctas.d.ts +1 -0
  203. package/dist/_internal/shared/listing-types/classified/ctas.js +3 -0
  204. package/dist/_internal/shared/listing-types/classified/og.d.ts +1 -0
  205. package/dist/_internal/shared/listing-types/classified/og.js +1 -0
  206. package/dist/_internal/shared/listing-types/classified/schema.d.ts +1 -0
  207. package/dist/_internal/shared/listing-types/classified/schema.js +1 -0
  208. package/dist/_internal/shared/listing-types/classified/seed-factory.d.ts +1 -0
  209. package/dist/_internal/shared/listing-types/classified/seed-factory.js +1 -0
  210. package/dist/_internal/shared/listing-types/digital-code/config.d.ts +7 -0
  211. package/dist/_internal/shared/listing-types/digital-code/config.js +8 -0
  212. package/dist/_internal/shared/listing-types/digital-code/ctas.d.ts +1 -0
  213. package/dist/_internal/shared/listing-types/digital-code/ctas.js +3 -0
  214. package/dist/_internal/shared/listing-types/digital-code/og.d.ts +1 -0
  215. package/dist/_internal/shared/listing-types/digital-code/og.js +1 -0
  216. package/dist/_internal/shared/listing-types/digital-code/schema.d.ts +1 -0
  217. package/dist/_internal/shared/listing-types/digital-code/schema.js +1 -0
  218. package/dist/_internal/shared/listing-types/digital-code/seed-factory.d.ts +1 -0
  219. package/dist/_internal/shared/listing-types/digital-code/seed-factory.js +1 -0
  220. package/dist/_internal/shared/listing-types/feature-flags.d.ts +34 -0
  221. package/dist/_internal/shared/listing-types/feature-flags.js +45 -0
  222. package/dist/_internal/shared/listing-types/live/config.d.ts +7 -0
  223. package/dist/_internal/shared/listing-types/live/config.js +8 -0
  224. package/dist/_internal/shared/listing-types/live/ctas.d.ts +1 -0
  225. package/dist/_internal/shared/listing-types/live/ctas.js +3 -0
  226. package/dist/_internal/shared/listing-types/live/og.d.ts +1 -0
  227. package/dist/_internal/shared/listing-types/live/og.js +1 -0
  228. package/dist/_internal/shared/listing-types/live/schema.d.ts +1 -0
  229. package/dist/_internal/shared/listing-types/live/schema.js +1 -0
  230. package/dist/_internal/shared/listing-types/live/seed-factory.d.ts +1 -0
  231. package/dist/_internal/shared/listing-types/live/seed-factory.js +1 -0
  232. package/dist/_internal/shared/media/limits.js +8 -0
  233. package/dist/client.d.ts +6 -1
  234. package/dist/client.js +14 -1
  235. package/dist/configs/next.js +7 -0
  236. package/dist/constants/api-endpoints.d.ts +6 -0
  237. package/dist/constants/api-endpoints.js +4 -0
  238. package/dist/core/hooks/useSyncManager.js +13 -1
  239. package/dist/core/unit-of-work.d.ts +1 -1
  240. package/dist/core/unit-of-work.js +2 -2
  241. package/dist/features/account/actions/address-actions.d.ts +1 -1
  242. package/dist/features/account/actions/address-actions.js +15 -7
  243. package/dist/features/account/schemas/firestore.d.ts +8 -43
  244. package/dist/features/account/schemas/firestore.js +8 -54
  245. package/dist/features/account/schemas/index.d.ts +6 -6
  246. package/dist/features/account/server.d.ts +1 -1
  247. package/dist/features/account/server.js +3 -1
  248. package/dist/features/addresses/index.d.ts +2 -0
  249. package/dist/features/addresses/index.js +2 -0
  250. package/dist/features/addresses/repository/addresses.repository.d.ts +29 -0
  251. package/dist/features/addresses/repository/addresses.repository.js +157 -0
  252. package/dist/features/addresses/schemas/firestore.d.ts +53 -0
  253. package/dist/features/addresses/schemas/firestore.js +68 -0
  254. package/dist/features/{bundles → addresses}/schemas/index.d.ts +0 -1
  255. package/dist/features/{bundles → addresses}/schemas/index.js +0 -1
  256. package/dist/features/addresses/server.d.ts +2 -0
  257. package/dist/features/addresses/server.js +2 -0
  258. package/dist/features/admin/components/AdminAllEventEntriesView.js +4 -3
  259. package/dist/features/admin/components/AdminBidsView.js +4 -3
  260. package/dist/features/admin/components/AdminBlogView.js +8 -3
  261. package/dist/features/admin/components/AdminBundleEditorView.d.ts +9 -0
  262. package/dist/features/admin/components/AdminBundleEditorView.js +209 -0
  263. package/dist/features/admin/components/AdminBundlesView.d.ts +9 -0
  264. package/dist/features/admin/components/AdminBundlesView.js +59 -0
  265. package/dist/features/admin/components/AdminCartsView.js +13 -3
  266. package/dist/features/admin/components/AdminContactView.js +4 -3
  267. package/dist/features/admin/components/AdminCouponsView.js +32 -13
  268. package/dist/features/admin/components/AdminNewsletterView.js +4 -3
  269. package/dist/features/admin/components/AdminOrdersView.js +15 -7
  270. package/dist/features/admin/components/AdminPayoutsView.js +4 -3
  271. package/dist/features/admin/components/AdminProductsView.js +6 -5
  272. package/dist/features/admin/components/AdminReviewsView.js +5 -4
  273. package/dist/features/admin/components/AdminStoresView.js +4 -3
  274. package/dist/features/admin/components/AdminUsersView.js +15 -5
  275. package/dist/features/admin/components/AdminWishlistsView.js +10 -1
  276. package/dist/features/admin/components/DataTable.d.ts +5 -1
  277. package/dist/features/admin/components/DataTable.js +24 -20
  278. package/dist/features/admin/components/index.d.ts +4 -0
  279. package/dist/features/admin/components/index.js +3 -0
  280. package/dist/features/admin/constants/filter-tabs.d.ts +401 -0
  281. package/dist/features/admin/constants/filter-tabs.js +200 -0
  282. package/dist/features/admin/hooks/useAdminListingData.d.ts +1 -0
  283. package/dist/features/admin/hooks/useAdminListingData.js +1 -0
  284. package/dist/features/admin/schemas/firestore.d.ts +15 -0
  285. package/dist/features/admin/schemas/firestore.js +18 -0
  286. package/dist/features/admin/types/product.types.d.ts +2 -2
  287. package/dist/features/auctions/components/AuctionCard.d.ts +4 -1
  288. package/dist/features/auctions/components/AuctionCard.js +5 -3
  289. package/dist/features/auctions/components/AuctionDetailPageView.js +1 -1
  290. package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +2 -2
  291. package/dist/features/auctions/components/PlaceBidFormClient.js +12 -2
  292. package/dist/features/auctions/schemas/index.d.ts +2 -2
  293. package/dist/features/auth/index.d.ts +1 -0
  294. package/dist/features/auth/index.js +1 -0
  295. package/dist/features/auth/role-predicates.d.ts +16 -0
  296. package/dist/features/auth/role-predicates.js +15 -0
  297. package/dist/features/blog/components/BlogFeaturedCard.d.ts +4 -1
  298. package/dist/features/blog/components/BlogFeaturedCard.js +5 -3
  299. package/dist/features/cart/actions/cart-actions.d.ts +1 -0
  300. package/dist/features/cart/actions/cart-actions.js +16 -0
  301. package/dist/features/cart/components/CartView.d.ts +19 -1
  302. package/dist/features/cart/components/CartView.js +2 -2
  303. package/dist/features/cart/components/ShippingPicker.d.ts +13 -0
  304. package/dist/features/cart/components/ShippingPicker.js +48 -0
  305. package/dist/features/cart/components/index.d.ts +3 -1
  306. package/dist/features/cart/components/index.js +1 -0
  307. package/dist/features/cart/hooks/useCartCount.js +7 -1
  308. package/dist/features/cart/repository/cart.repository.d.ts +1 -0
  309. package/dist/features/cart/repository/cart.repository.js +35 -0
  310. package/dist/features/cart/schemas/firestore.d.ts +27 -2
  311. package/dist/features/categories/components/BundleAddToCartCta.d.ts +16 -0
  312. package/dist/features/categories/components/BundleAddToCartCta.js +54 -0
  313. package/dist/features/categories/components/BundleBuyNowCta.d.ts +8 -0
  314. package/dist/features/categories/components/BundleBuyNowCta.js +37 -0
  315. package/dist/features/categories/components/BundleDetailView.d.ts +22 -0
  316. package/dist/features/categories/components/BundleDetailView.js +31 -0
  317. package/dist/features/categories/components/BundleDynamicRuleEditor.d.ts +18 -0
  318. package/dist/features/categories/components/BundleDynamicRuleEditor.js +60 -0
  319. package/dist/features/categories/components/BundleItemsPicker.d.ts +26 -0
  320. package/dist/features/categories/components/BundleItemsPicker.js +135 -0
  321. package/dist/features/categories/components/BundlesListView.d.ts +13 -0
  322. package/dist/features/categories/components/BundlesListView.js +27 -0
  323. package/dist/features/categories/components/index.d.ts +12 -0
  324. package/dist/features/categories/components/index.js +9 -0
  325. package/dist/features/checkout/actions/checkout-actions.js +10 -3
  326. package/dist/features/events/components/AdminEventEditorView.js +108 -2
  327. package/dist/features/events/components/AdminEventsView.js +16 -4
  328. package/dist/features/events/components/EventCard.d.ts +4 -1
  329. package/dist/features/events/components/EventCard.js +7 -3
  330. package/dist/features/events/components/EventRaffleWinnerView.d.ts +21 -0
  331. package/dist/features/events/components/EventRaffleWinnerView.js +18 -0
  332. package/dist/features/events/components/SpinWheelView.d.ts +27 -0
  333. package/dist/features/events/components/SpinWheelView.js +64 -0
  334. package/dist/features/events/components/index.d.ts +4 -0
  335. package/dist/features/events/components/index.js +2 -0
  336. package/dist/features/events/schemas/firestore.d.ts +27 -1
  337. package/dist/features/events/schemas/firestore.js +7 -0
  338. package/dist/features/events/types/index.d.ts +27 -1
  339. package/dist/features/homepage/components/FeaturedBundlesSection.d.ts +16 -0
  340. package/dist/features/homepage/components/FeaturedBundlesSection.js +24 -0
  341. package/dist/features/homepage/components/MarketplaceHomepageView.js +4 -1
  342. package/dist/features/homepage/components/WhatsAppCommunitySection.js +2 -2
  343. package/dist/features/homepage/lib/section-renderer.d.ts +2 -0
  344. package/dist/features/homepage/lib/section-renderer.js +5 -5
  345. package/dist/features/layout/NavbarLayout.d.ts +3 -1
  346. package/dist/features/layout/NavbarLayout.js +32 -3
  347. package/dist/features/layout/TitleBarLayout.d.ts +6 -3
  348. package/dist/features/layout/TitleBarLayout.js +22 -7
  349. package/dist/features/media/upload/MediaUploadField.d.ts +15 -1
  350. package/dist/features/media/upload/MediaUploadField.js +22 -1
  351. package/dist/features/orders/components/MarketplaceOrderCard.js +4 -2
  352. package/dist/features/orders/components/OrderSiblingPayments.d.ts +8 -0
  353. package/dist/features/orders/components/OrderSiblingPayments.js +16 -0
  354. package/dist/features/orders/components/RefundHistoryTable.d.ts +6 -0
  355. package/dist/features/orders/components/RefundHistoryTable.js +23 -0
  356. package/dist/features/orders/components/RefundRequestView.d.ts +8 -0
  357. package/dist/features/orders/components/RefundRequestView.js +42 -0
  358. package/dist/features/orders/components/index.d.ts +6 -0
  359. package/dist/features/orders/components/index.js +3 -0
  360. package/dist/features/orders/index.d.ts +1 -0
  361. package/dist/features/orders/index.js +2 -0
  362. package/dist/features/orders/repository/orders.repository.d.ts +20 -1
  363. package/dist/features/orders/repository/orders.repository.js +30 -1
  364. package/dist/features/orders/schemas/firestore.d.ts +63 -13
  365. package/dist/features/orders/schemas/firestore.js +5 -5
  366. package/dist/features/orders/schemas/index.d.ts +4 -4
  367. package/dist/features/orders/types/index.d.ts +12 -2
  368. package/dist/features/orders/utils/bundle-grouping.d.ts +48 -0
  369. package/dist/features/orders/utils/bundle-grouping.js +54 -0
  370. package/dist/features/orders/utils/order-splitter.d.ts +9 -10
  371. package/dist/features/orders/utils/order-splitter.js +24 -30
  372. package/dist/features/payments/repository/payout.repository.d.ts +17 -1
  373. package/dist/features/payments/repository/payout.repository.js +47 -0
  374. package/dist/features/payments/schemas/firestore.d.ts +26 -0
  375. package/dist/features/pre-orders/components/PreorderCard.d.ts +4 -1
  376. package/dist/features/pre-orders/components/PreorderCard.js +8 -6
  377. package/dist/features/products/actions/product-actions.d.ts +1 -1
  378. package/dist/features/products/actions/product-actions.js +1 -1
  379. package/dist/features/products/components/CompareOverlay.d.ts +2 -2
  380. package/dist/features/products/components/CompareOverlay.js +4 -4
  381. package/dist/features/products/components/InteractiveProductCard.js +7 -12
  382. package/dist/features/products/components/NonRefundableConsentModal.d.ts +1 -1
  383. package/dist/features/products/components/NonRefundableConsentModal.js +0 -10
  384. package/dist/features/products/components/ProductGrid.js +28 -12
  385. package/dist/features/products/components/ShowGroupSection.js +3 -3
  386. package/dist/features/products/components/SublistingCarouselSection.js +2 -2
  387. package/dist/features/products/components/index.d.ts +0 -4
  388. package/dist/features/products/components/index.js +5 -2
  389. package/dist/features/products/index.d.ts +1 -1
  390. package/dist/features/products/index.js +3 -1
  391. package/dist/features/products/repository/products.repository.js +4 -0
  392. package/dist/features/products/schemas/catalog-product.d.ts +70 -0
  393. package/dist/features/products/schemas/catalog-product.js +50 -0
  394. package/dist/features/products/schemas/firestore.d.ts +110 -2
  395. package/dist/features/products/schemas/firestore.js +30 -0
  396. package/dist/features/products/schemas/index.d.ts +8 -8
  397. package/dist/features/products/types/index.d.ts +1 -1
  398. package/dist/features/products/utils/listing-type.d.ts +9 -0
  399. package/dist/features/products/utils/listing-type.js +4 -0
  400. package/dist/features/promotions/actions/coupon-actions.d.ts +2 -2
  401. package/dist/features/promotions/actions/coupon-actions.js +1 -1
  402. package/dist/features/promotions/components/CouponCard.d.ts +28 -10
  403. package/dist/features/promotions/components/CouponCard.js +116 -14
  404. package/dist/features/promotions/hooks/useCouponValidate.d.ts +1 -1
  405. package/dist/features/promotions/repository/coupons.repository.d.ts +1 -1
  406. package/dist/features/reviews/schemas/index.d.ts +2 -2
  407. package/dist/features/search/schemas/index.d.ts +2 -2
  408. package/dist/features/search/types/index.d.ts +2 -2
  409. package/dist/features/seller/components/SellerAuctionsView.js +4 -5
  410. package/dist/features/seller/components/SellerBidsView.js +5 -13
  411. package/dist/features/seller/components/SellerCouponsView.js +31 -67
  412. package/dist/features/seller/components/SellerOffersView.js +4 -5
  413. package/dist/features/seller/components/SellerOrdersView.js +4 -5
  414. package/dist/features/seller/components/SellerPayoutsView.js +4 -5
  415. package/dist/features/seller/components/SellerProductsView.js +4 -8
  416. package/dist/features/seller/schemas/index.d.ts +2 -2
  417. package/dist/features/stores/actions/store-address-actions.d.ts +10 -6
  418. package/dist/features/stores/actions/store-address-actions.js +8 -7
  419. package/dist/features/stores/components/InteractiveStoreCard.js +3 -10
  420. package/dist/features/stores/components/StoreDetailLayoutView.js +20 -5
  421. package/dist/features/stores/schemas/firestore.d.ts +45 -38
  422. package/dist/features/stores/schemas/firestore.js +2 -49
  423. package/dist/features/stores/server.d.ts +0 -1
  424. package/dist/features/stores/server.js +2 -1
  425. package/dist/features/wishlist/hooks/useWishlistCount.d.ts +7 -9
  426. package/dist/features/wishlist/hooks/useWishlistCount.js +67 -86
  427. package/dist/features/wishlist/types/index.d.ts +1 -1
  428. package/dist/index.d.ts +50 -9
  429. package/dist/index.js +57 -11
  430. package/dist/next/routing/route-map.d.ts +6 -0
  431. package/dist/next/routing/route-map.js +4 -0
  432. package/dist/providers/db-firebase/admin-app-lite.js +21 -0
  433. package/dist/providers/db-firebase/admin.d.ts +6 -2
  434. package/dist/providers/db-firebase/admin.js +23 -0
  435. package/dist/repositories/index.d.ts +1 -2
  436. package/dist/repositories/index.js +5 -2
  437. package/dist/security/authorization.d.ts +2 -1
  438. package/dist/security/authorization.js +3 -2
  439. package/dist/seed/actions/demo-seed-actions.d.ts +1 -1
  440. package/dist/seed/bids-seed-data.d.ts +2 -2
  441. package/dist/seed/bids-seed-data.js +77 -2
  442. package/dist/seed/cart-seed-data.d.ts +10 -10
  443. package/dist/seed/cart-seed-data.js +15 -15
  444. package/dist/seed/events-seed-data.js +77 -0
  445. package/dist/seed/manifest.js +16 -8
  446. package/dist/seed/orders-seed-data.js +41 -2
  447. package/dist/seed/payouts-seed-data.js +18 -2
  448. package/dist/seed/stores-seed-data.js +55 -0
  449. package/dist/server-entry.d.ts +1 -0
  450. package/dist/server-entry.js +2 -0
  451. package/dist/server.d.ts +4 -0
  452. package/dist/server.js +8 -0
  453. package/dist/tailwind-utilities.css +1 -1
  454. package/dist/ui/components/FilterChipGroup.d.ts +39 -0
  455. package/dist/ui/components/FilterChipGroup.js +15 -0
  456. package/dist/ui/components/HorizontalScroller.js +32 -7
  457. package/dist/ui/components/HorizontalScroller.style.css +6 -0
  458. package/dist/ui/components/SiteLogo.js +1 -1
  459. package/dist/ui/index.d.ts +2 -0
  460. package/dist/ui/index.js +2 -0
  461. package/dist/utils/id-generators.d.ts +11 -0
  462. package/dist/utils/id-generators.js +16 -0
  463. package/package.json +1 -1
  464. package/dist/_internal/shared/features/bundles/config.d.ts +0 -6
  465. package/dist/_internal/shared/features/bundles/config.js +0 -6
  466. package/dist/_internal/shared/schema-versions.d.ts +0 -76
  467. package/dist/_internal/shared/schema-versions.js +0 -82
  468. package/dist/features/account/migrations.d.ts +0 -2
  469. package/dist/features/account/migrations.js +0 -10
  470. package/dist/features/admin/migrations.d.ts +0 -2
  471. package/dist/features/admin/migrations.js +0 -10
  472. package/dist/features/auctions/migrations.d.ts +0 -2
  473. package/dist/features/auctions/migrations.js +0 -10
  474. package/dist/features/auth/migrations.d.ts +0 -2
  475. package/dist/features/auth/migrations.js +0 -10
  476. package/dist/features/blog/migrations.d.ts +0 -2
  477. package/dist/features/blog/migrations.js +0 -10
  478. package/dist/features/brands/actions/brand-actions.d.ts +0 -2
  479. package/dist/features/brands/actions/brand-actions.js +0 -5
  480. package/dist/features/brands/index.d.ts +0 -3
  481. package/dist/features/brands/index.js +0 -3
  482. package/dist/features/brands/migrations.d.ts +0 -2
  483. package/dist/features/brands/migrations.js +0 -10
  484. package/dist/features/brands/repository/brands.repository.d.ts +0 -13
  485. package/dist/features/brands/repository/brands.repository.js +0 -60
  486. package/dist/features/brands/schemas/index.d.ts +0 -33
  487. package/dist/features/brands/schemas/index.js +0 -15
  488. package/dist/features/brands/server.d.ts +0 -7
  489. package/dist/features/brands/server.js +0 -7
  490. package/dist/features/bundles/components/AdminBundleEditorView.d.ts +0 -8
  491. package/dist/features/bundles/components/AdminBundleEditorView.js +0 -7
  492. package/dist/features/bundles/components/BundleDetailPageView.d.ts +0 -9
  493. package/dist/features/bundles/components/BundleDetailPageView.js +0 -45
  494. package/dist/features/bundles/components/BundleForm.d.ts +0 -12
  495. package/dist/features/bundles/components/BundleForm.js +0 -126
  496. package/dist/features/bundles/components/BundleItemsPicker.d.ts +0 -9
  497. package/dist/features/bundles/components/BundleItemsPicker.js +0 -77
  498. package/dist/features/bundles/components/BundlesByCategoryListing.d.ts +0 -6
  499. package/dist/features/bundles/components/BundlesByCategoryListing.js +0 -50
  500. package/dist/features/bundles/components/BundlesListingView.d.ts +0 -17
  501. package/dist/features/bundles/components/BundlesListingView.js +0 -50
  502. package/dist/features/bundles/components/FeaturedBundlesSection.d.ts +0 -5
  503. package/dist/features/bundles/components/FeaturedBundlesSection.js +0 -55
  504. package/dist/features/bundles/components/SellerBundleCreateView.d.ts +0 -8
  505. package/dist/features/bundles/components/SellerBundleCreateView.js +0 -7
  506. package/dist/features/bundles/components/SellerBundleEditView.d.ts +0 -9
  507. package/dist/features/bundles/components/SellerBundleEditView.js +0 -7
  508. package/dist/features/bundles/components/index.d.ts +0 -18
  509. package/dist/features/bundles/components/index.js +0 -9
  510. package/dist/features/bundles/constants/index.d.ts +0 -32
  511. package/dist/features/bundles/constants/index.js +0 -35
  512. package/dist/features/bundles/index.d.ts +0 -2
  513. package/dist/features/bundles/index.js +0 -2
  514. package/dist/features/bundles/migrations.d.ts +0 -2
  515. package/dist/features/bundles/migrations.js +0 -10
  516. package/dist/features/bundles/repository/bundles.repository.d.ts +0 -36
  517. package/dist/features/bundles/repository/bundles.repository.js +0 -148
  518. package/dist/features/bundles/repository/index.d.ts +0 -1
  519. package/dist/features/bundles/repository/index.js +0 -1
  520. package/dist/features/bundles/schemas/firestore.d.ts +0 -88
  521. package/dist/features/bundles/schemas/firestore.js +0 -29
  522. package/dist/features/bundles/schemas/zod.d.ts +0 -377
  523. package/dist/features/bundles/schemas/zod.js +0 -71
  524. package/dist/features/cart/migrations.d.ts +0 -2
  525. package/dist/features/cart/migrations.js +0 -10
  526. package/dist/features/categories/migrations.d.ts +0 -2
  527. package/dist/features/categories/migrations.js +0 -10
  528. package/dist/features/events/migrations.d.ts +0 -2
  529. package/dist/features/events/migrations.js +0 -10
  530. package/dist/features/faq/migrations.d.ts +0 -2
  531. package/dist/features/faq/migrations.js +0 -10
  532. package/dist/features/grouped/migrations.d.ts +0 -2
  533. package/dist/features/grouped/migrations.js +0 -10
  534. package/dist/features/history/migrations.d.ts +0 -2
  535. package/dist/features/history/migrations.js +0 -10
  536. package/dist/features/messages/migrations.d.ts +0 -2
  537. package/dist/features/messages/migrations.js +0 -10
  538. package/dist/features/orders/migrations.d.ts +0 -2
  539. package/dist/features/orders/migrations.js +0 -10
  540. package/dist/features/payments/migrations.d.ts +0 -2
  541. package/dist/features/payments/migrations.js +0 -10
  542. package/dist/features/products/migrations.d.ts +0 -2
  543. package/dist/features/products/migrations.js +0 -10
  544. package/dist/features/products/repository/sublisting-categories.repository.d.ts +0 -16
  545. package/dist/features/products/repository/sublisting-categories.repository.js +0 -126
  546. package/dist/features/products/schemas/sublisting-categories.d.ts +0 -45
  547. package/dist/features/products/schemas/sublisting-categories.js +0 -16
  548. package/dist/features/promotions/migrations.d.ts +0 -2
  549. package/dist/features/promotions/migrations.js +0 -10
  550. package/dist/features/reviews/migrations.d.ts +0 -2
  551. package/dist/features/reviews/migrations.js +0 -10
  552. package/dist/features/scams/migrations.d.ts +0 -2
  553. package/dist/features/scams/migrations.js +0 -10
  554. package/dist/features/seller/migrations.d.ts +0 -2
  555. package/dist/features/seller/migrations.js +0 -10
  556. package/dist/features/stores/migrations.d.ts +0 -2
  557. package/dist/features/stores/migrations.js +0 -10
  558. package/dist/features/sublisting/migrations.d.ts +0 -2
  559. package/dist/features/sublisting/migrations.js +0 -10
  560. package/dist/features/sublisting/schemas/firestore.d.ts +0 -32
  561. package/dist/features/sublisting/schemas/firestore.js +0 -19
  562. package/dist/features/support/migrations.d.ts +0 -2
  563. package/dist/features/support/migrations.js +0 -10
  564. package/dist/features/wishlist/migrations.d.ts +0 -2
  565. package/dist/features/wishlist/migrations.js +0 -10
  566. package/dist/seed/_bundle-constants.d.ts +0 -14
  567. package/dist/seed/_bundle-constants.js +0 -14
  568. package/dist/seed/anime-figures-seed-data.d.ts +0 -8
  569. package/dist/seed/anime-figures-seed-data.js +0 -1033
  570. package/dist/seed/beyblade-seed-data.d.ts +0 -7
  571. package/dist/seed/beyblade-seed-data.js +0 -1129
  572. package/dist/seed/brands-seed-data.d.ts +0 -7
  573. package/dist/seed/brands-seed-data.js +0 -410
  574. package/dist/seed/bundles-seed-data.d.ts +0 -13
  575. package/dist/seed/bundles-seed-data.js +0 -229
  576. package/dist/seed/cosplay-accessories-seed-data.d.ts +0 -8
  577. package/dist/seed/cosplay-accessories-seed-data.js +0 -647
  578. package/dist/seed/hot-wheels-seed-data.d.ts +0 -7
  579. package/dist/seed/hot-wheels-seed-data.js +0 -1612
  580. package/dist/seed/letitrip-official-seed-data.d.ts +0 -8
  581. package/dist/seed/letitrip-official-seed-data.js +0 -399
  582. package/dist/seed/pokemon-carousel-slides-seed-data.d.ts +0 -8
  583. package/dist/seed/pokemon-carousel-slides-seed-data.js +0 -322
  584. package/dist/seed/pokemon-categories-seed-data.d.ts +0 -24
  585. package/dist/seed/pokemon-categories-seed-data.js +0 -547
  586. package/dist/seed/pokemon-coupons-seed-data.d.ts +0 -6
  587. package/dist/seed/pokemon-coupons-seed-data.js +0 -465
  588. package/dist/seed/pokemon-homepage-sections-seed-data.d.ts +0 -7
  589. package/dist/seed/pokemon-homepage-sections-seed-data.js +0 -241
  590. package/dist/seed/pokemon-products-seed-data.d.ts +0 -9
  591. package/dist/seed/pokemon-products-seed-data.js +0 -1791
  592. package/dist/seed/pokemon-seed-bundle.d.ts +0 -47
  593. package/dist/seed/pokemon-seed-bundle.js +0 -71
  594. package/dist/seed/pokemon-stores-seed-data.d.ts +0 -6
  595. package/dist/seed/pokemon-stores-seed-data.js +0 -179
  596. package/dist/seed/pokemon-users-seed-data.d.ts +0 -6
  597. package/dist/seed/pokemon-users-seed-data.js +0 -521
  598. package/dist/seed/products-seed-data.d.ts +0 -6
  599. package/dist/seed/products-seed-data.js +0 -2530
  600. package/dist/seed/retro-gaming-seed-data.d.ts +0 -8
  601. package/dist/seed/retro-gaming-seed-data.js +0 -801
  602. package/dist/seed/server.d.ts +0 -2
  603. package/dist/seed/server.js +0 -7
  604. package/dist/seed/sublisting-categories-seed-data.d.ts +0 -7
  605. package/dist/seed/sublisting-categories-seed-data.js +0 -159
  606. package/dist/seed/transformers-seed-data.d.ts +0 -7
  607. package/dist/seed/transformers-seed-data.js +0 -530
@@ -3,8 +3,16 @@ import { cache } from "react";
3
3
  import { storeRepository, productRepository, categoriesRepository } from "../../../repositories";
4
4
  import { ROUTES } from "../../../next";
5
5
  import { Container, Main, Section } from "../../../ui";
6
+ import { STORE_PAGE_TABS } from "../../products/constants/listing-tabs";
6
7
  import { StoreHeader } from "./StoreHeader";
7
8
  import { StoreNavTabs } from "./StoreNavTabs";
9
+ const STORE_LISTING_HREF = {
10
+ products: (slug) => String(ROUTES.PUBLIC.STORE_PRODUCTS(slug)),
11
+ auctions: (slug) => String(ROUTES.PUBLIC.STORE_AUCTIONS(slug)),
12
+ "pre-orders": (slug) => String(ROUTES.PUBLIC.STORE_PRE_ORDERS(slug)),
13
+ "prize-draws": (slug) => String(ROUTES.PUBLIC.STORE_PRIZE_DRAWS(slug)),
14
+ bundles: (slug) => String(ROUTES.PUBLIC.STORE_BUNDLES(slug)),
15
+ };
8
16
  export const getStoreBySlug = cache((slug) => storeRepository.findBySlug(slug).catch(() => undefined));
9
17
  function tabLabel(base, count) {
10
18
  if (!count)
@@ -43,12 +51,19 @@ export async function StoreDetailLayoutView({ storeSlug, activeTab, children, })
43
51
  .catch(() => 0),
44
52
  ])
45
53
  : [0, 0, 0, 0, 0];
54
+ const listingCounts = {
55
+ products: productsCount,
56
+ auctions: auctionsCount,
57
+ "pre-orders": preOrdersCount,
58
+ "prize-draws": prizeDrawsCount,
59
+ bundles: bundlesCount,
60
+ };
46
61
  const tabs = [
47
- { value: "products", label: tabLabel("Products", productsCount), href: String(ROUTES.PUBLIC.STORE_PRODUCTS(storeSlug)) },
48
- { value: "auctions", label: tabLabel("Auctions", auctionsCount), href: String(ROUTES.PUBLIC.STORE_AUCTIONS(storeSlug)) },
49
- { value: "pre-orders", label: tabLabel("Pre-Orders", preOrdersCount), href: String(ROUTES.PUBLIC.STORE_PRE_ORDERS(storeSlug)) },
50
- { value: "prize-draws", label: tabLabel("Prize Draws", prizeDrawsCount), href: String(ROUTES.PUBLIC.STORE_PRIZE_DRAWS(storeSlug)) },
51
- { value: "bundles", label: tabLabel("Bundles", bundlesCount), href: String(ROUTES.PUBLIC.STORE_BUNDLES(storeSlug)) },
62
+ ...STORE_PAGE_TABS.map((tab) => ({
63
+ value: tab.id,
64
+ label: tabLabel(tab.label, listingCounts[tab.id]),
65
+ href: STORE_LISTING_HREF[tab.id](storeSlug),
66
+ })),
52
67
  { value: "coupons", label: "Coupons", href: String(ROUTES.PUBLIC.STORE_COUPONS(storeSlug)) },
53
68
  { value: "reviews", label: "Reviews", href: String(ROUTES.PUBLIC.STORE_REVIEWS(storeSlug)) },
54
69
  { value: "about", label: "About", href: String(ROUTES.PUBLIC.STORE_ABOUT(storeSlug)) },
@@ -5,6 +5,40 @@
5
5
  * and helpers for the stores feature.
6
6
  */
7
7
  import type { StoreCapability } from "../../auth/permissions/constants";
8
+ export type ShippingProviderType = "shiprocket" | "self-courier" | "store-pickup" | "custom";
9
+ export interface ShippingProviderConfig {
10
+ /** Stable slug — never changes after creation. */
11
+ providerId: string;
12
+ /** Buyer-facing label (e.g. "Standard Shipping", "Store Pickup"). */
13
+ label: string;
14
+ type: ShippingProviderType;
15
+ fee: {
16
+ /** Flat fee in paise. */
17
+ flatInPaise?: number;
18
+ /** Per-kg surcharge in paise. */
19
+ perKgInPaise?: number;
20
+ /** Percentage of order subtotal (0–100). */
21
+ percentOfOrder?: number;
22
+ /** If order subtotal exceeds this threshold, shipping is free. */
23
+ freeAboveInPaise?: number;
24
+ /** Minimum charge in paise (floor after all other rules). */
25
+ minInPaise?: number;
26
+ };
27
+ etaDaysMin: number;
28
+ etaDaysMax: number;
29
+ /** Pincode-prefix or state allowlist; empty = all India. */
30
+ regions?: string[];
31
+ /**
32
+ * When true the seller's order-detail page prompts for an AWB upload
33
+ * after marking the order as shipped.
34
+ */
35
+ requiresAwbUpload?: boolean;
36
+ }
37
+ export interface StoreShippingConfig {
38
+ providers: ShippingProviderConfig[];
39
+ /** providerId that pre-selects in the ShippingPicker. */
40
+ defaultProviderId: string;
41
+ }
8
42
  export declare const StoreStatusValues: {
9
43
  readonly PENDING: "pending";
10
44
  readonly ACTIVE: "active";
@@ -59,6 +93,11 @@ export interface StoreDocument {
59
93
  minRating?: number;
60
94
  layout?: "grid" | "carousel";
61
95
  };
96
+ /**
97
+ * Shipping providers available for this store. Buyers pick one in the cart
98
+ * ShippingPicker; the chosen provider + fee lock onto each CartItem.
99
+ */
100
+ shippingConfig?: StoreShippingConfig;
62
101
  whatsappConfig?: {
63
102
  /** Seller's WhatsApp Business phone number, digits-only with country code e.g. "919876543210" */
64
103
  phoneNumber?: string;
@@ -117,42 +156,10 @@ export declare const STORE_FIELDS: {
117
156
  };
118
157
  export declare const DEFAULT_STORE_DATA: Partial<StoreDocument>;
119
158
  export declare function generateStoreSlug(storeName: string, ownerDisplayName: string): string;
120
- export interface StoreAddressDocument {
121
- id: string;
122
- label: string;
123
- fullName: string;
124
- phone: string;
125
- addressLine1: string;
126
- addressLine2?: string;
127
- landmark?: string;
128
- city: string;
129
- state: string;
130
- postalCode: string;
131
- country: string;
132
- isDefault: boolean;
133
- createdAt: Date;
134
- updatedAt: Date;
135
- }
159
+ import type { AddressDocument as _Addr, AddressCreateInput as _AddrCreate, AddressUpdateInput as _AddrUpdate } from "../../addresses/schemas";
160
+ export type StoreAddressDocument = _Addr;
161
+ export type StoreAddressCreateInput = _AddrCreate;
162
+ export type StoreAddressUpdateInput = _AddrUpdate;
163
+ export { ADDRESS_FIELDS as STORE_ADDRESS_FIELDS, ADDRESS_INDEXED_FIELDS as STORE_ADDRESS_INDEXED_FIELDS, ADDRESS_PUBLIC_FIELDS as STORE_ADDRESS_PUBLIC_FIELDS, ADDRESS_UPDATABLE_FIELDS as STORE_ADDRESS_UPDATABLE_FIELDS, DEFAULT_ADDRESS_DATA as DEFAULT_STORE_ADDRESS_DATA, } from "../../addresses/schemas";
164
+ /** @deprecated SB-UNI-A — literal alias only. Use ADDRESSES_COLLECTION. */
136
165
  export declare const STORE_ADDRESS_SUBCOLLECTION: "addresses";
137
- export declare const STORE_ADDRESS_INDEXED_FIELDS: readonly ["isDefault", "createdAt"];
138
- export declare const DEFAULT_STORE_ADDRESS_DATA: Partial<StoreAddressDocument>;
139
- export declare const STORE_ADDRESS_PUBLIC_FIELDS: readonly ["id", "label", "fullName", "phone", "addressLine1", "addressLine2", "landmark", "city", "state", "postalCode", "country", "isDefault", "createdAt", "updatedAt"];
140
- export declare const STORE_ADDRESS_UPDATABLE_FIELDS: readonly ["label", "fullName", "phone", "addressLine1", "addressLine2", "landmark", "city", "state", "postalCode", "country", "isDefault"];
141
- export type StoreAddressCreateInput = Omit<StoreAddressDocument, "id" | "createdAt" | "updatedAt">;
142
- export type StoreAddressUpdateInput = Partial<Pick<StoreAddressDocument, (typeof STORE_ADDRESS_UPDATABLE_FIELDS)[number]>>;
143
- export declare const STORE_ADDRESS_FIELDS: {
144
- readonly ID: "id";
145
- readonly LABEL: "label";
146
- readonly FULL_NAME: "fullName";
147
- readonly PHONE: "phone";
148
- readonly ADDRESS_LINE_1: "addressLine1";
149
- readonly ADDRESS_LINE_2: "addressLine2";
150
- readonly LANDMARK: "landmark";
151
- readonly CITY: "city";
152
- readonly STATE: "state";
153
- readonly POSTAL_CODE: "postalCode";
154
- readonly COUNTRY: "country";
155
- readonly IS_DEFAULT: "isDefault";
156
- readonly CREATED_AT: "createdAt";
157
- readonly UPDATED_AT: "updatedAt";
158
- };
@@ -57,53 +57,6 @@ export function generateStoreSlug(storeName, ownerDisplayName) {
57
57
  const owner = slugify(ownerDisplayName?.split(" ")[0] ?? "seller");
58
58
  return `${name}-by-${owner}`;
59
59
  }
60
+ export { ADDRESS_FIELDS as STORE_ADDRESS_FIELDS, ADDRESS_INDEXED_FIELDS as STORE_ADDRESS_INDEXED_FIELDS, ADDRESS_PUBLIC_FIELDS as STORE_ADDRESS_PUBLIC_FIELDS, ADDRESS_UPDATABLE_FIELDS as STORE_ADDRESS_UPDATABLE_FIELDS, DEFAULT_ADDRESS_DATA as DEFAULT_STORE_ADDRESS_DATA, } from "../../addresses/schemas";
61
+ /** @deprecated SB-UNI-A — literal alias only. Use ADDRESSES_COLLECTION. */
60
62
  export const STORE_ADDRESS_SUBCOLLECTION = "addresses";
61
- export const STORE_ADDRESS_INDEXED_FIELDS = ["isDefault", "createdAt"];
62
- export const DEFAULT_STORE_ADDRESS_DATA = {
63
- isDefault: false,
64
- };
65
- export const STORE_ADDRESS_PUBLIC_FIELDS = [
66
- "id",
67
- "label",
68
- "fullName",
69
- "phone",
70
- "addressLine1",
71
- "addressLine2",
72
- "landmark",
73
- "city",
74
- "state",
75
- "postalCode",
76
- "country",
77
- "isDefault",
78
- "createdAt",
79
- "updatedAt",
80
- ];
81
- export const STORE_ADDRESS_UPDATABLE_FIELDS = [
82
- "label",
83
- "fullName",
84
- "phone",
85
- "addressLine1",
86
- "addressLine2",
87
- "landmark",
88
- "city",
89
- "state",
90
- "postalCode",
91
- "country",
92
- "isDefault",
93
- ];
94
- export const STORE_ADDRESS_FIELDS = {
95
- ID: "id",
96
- LABEL: "label",
97
- FULL_NAME: "fullName",
98
- PHONE: "phone",
99
- ADDRESS_LINE_1: "addressLine1",
100
- ADDRESS_LINE_2: "addressLine2",
101
- LANDMARK: "landmark",
102
- CITY: "city",
103
- STATE: "state",
104
- POSTAL_CODE: "postalCode",
105
- COUNTRY: "country",
106
- IS_DEFAULT: "isDefault",
107
- CREATED_AT: "createdAt",
108
- UPDATED_AT: "updatedAt",
109
- };
@@ -6,7 +6,6 @@
6
6
  export * from "./actions";
7
7
  export { StoresRepository } from "./repository/stores.repository";
8
8
  export { StoreRepository, storeRepository, } from "./repository/store.repository";
9
- export { storeAddressRepository } from "./repository/store-address.repository";
10
9
  export { GET as storesGET, GET } from "./api/route";
11
10
  export { GET as storeSlugGET } from "./api/[storeSlug]/route";
12
11
  export { GET as storeProductsGET } from "./api/[storeSlug]/products/route";
@@ -6,7 +6,8 @@
6
6
  export * from "./actions";
7
7
  export { StoresRepository } from "./repository/stores.repository";
8
8
  export { StoreRepository, storeRepository, } from "./repository/store.repository";
9
- export { storeAddressRepository } from "./repository/store-address.repository";
9
+ // SB-UNI-A 2026-05-13 — storeAddressRepository deleted. Use addressesRepository
10
+ // (top-level addresses collection with ownerType:"store").
10
11
  export { GET as storesGET, GET } from "./api/route";
11
12
  export { GET as storeSlugGET } from "./api/[storeSlug]/route";
12
13
  export { GET as storeProductsGET } from "./api/[storeSlug]/products/route";
@@ -8,16 +8,14 @@ export interface WishlistCapEventDetail {
8
8
  /**
9
9
  * useWishlistCount
10
10
  *
11
- * Returns wishlist count always from localStorage same source for guest and
12
- * authenticated users, so the badge is instant with no API round-trip.
11
+ * Server-authoritative count for the badge. For authenticated users this
12
+ * mirrors `/api/wishlist` via react-query (same `["wishlist", uid]` key as
13
+ * `useWishlist`), so mutations on the wishlist page propagate to the badge
14
+ * via standard query invalidation. For guests, falls back to the localStorage
15
+ * guest store.
13
16
  *
14
- * When userId changes from null a real uid (login):
15
- * 1. Fetches Firestore wishlist and merges into localStorage.
16
- * 2. Pushes any guest-only localStorage items up to Firestore.
17
- *
18
- * While authenticated:
19
- * - Syncs localStorage → Firestore every 60 s.
20
- * - Also syncs when the user visits /wishlist or /cart.
17
+ * On login the hook pushes any guest items up to the server once, then clears
18
+ * the guest store so the two stores cannot drift.
21
19
  */
22
20
  export declare function useWishlistCount(userId: string | null | undefined): number;
23
21
  /**
@@ -1,15 +1,13 @@
1
1
  "use client";
2
2
  import { useEffect, useRef } from "react";
3
+ import { useQuery, useQueryClient } from "@tanstack/react-query";
3
4
  import { usePathname } from "next/navigation";
5
+ import { apiClient } from "../../../http";
4
6
  import { useGuestWishlist } from "./useGuestWishlist";
5
- import { getGuestWishlistItems } from "../utils/guest-wishlist";
7
+ import { clearGuestWishlist, getGuestWishlistItems, } from "../utils/guest-wishlist";
6
8
  import { WISHLIST_MAX } from "../../../constants/limits";
7
- const WISHLIST_API = "/api/wishlist";
9
+ import { WISHLIST_ENDPOINTS } from "../../../constants/api-endpoints";
8
10
  const WISHLIST_MERGE_API = "/api/wishlist/merge";
9
- const SYNC_MS = 60000;
10
- function getSyncableItems() {
11
- return getGuestWishlistItems().filter((i) => ["product", "auction", "preorder"].includes(i.type));
12
- }
13
11
  /** Custom event fired when the server reports the wishlist is full during a merge. */
14
12
  export const WISHLIST_CAP_EVENT = "appkit/wishlist/full";
15
13
  function dispatchCapEvent(detail) {
@@ -17,103 +15,86 @@ function dispatchCapEvent(detail) {
17
15
  return;
18
16
  window.dispatchEvent(new CustomEvent(WISHLIST_CAP_EVENT, { detail }));
19
17
  }
20
- function pushToFirestore() {
21
- const items = getSyncableItems();
22
- if (!items.length)
23
- return;
24
- fetch(WISHLIST_MERGE_API, {
25
- method: "POST",
26
- headers: { "Content-Type": "application/json" },
27
- body: JSON.stringify({ items: items.map((i) => ({ productId: i.itemId })) }),
28
- })
29
- .then(async (res) => {
30
- if (!res.ok)
31
- return;
32
- const json = (await res.json().catch(() => null));
33
- const data = json?.data;
34
- if (data?.capReached) {
35
- dispatchCapEvent({
36
- limit: data.limit ?? WISHLIST_MAX,
37
- current: data.limit ?? WISHLIST_MAX,
38
- skippedFull: data.skippedFull ?? 0,
39
- });
40
- }
41
- })
42
- .catch(() => { });
18
+ async function fetchServerCount(userId) {
19
+ const data = await apiClient.get(WISHLIST_ENDPOINTS.BY_USER(userId));
20
+ return data?.total ?? data?.items?.length ?? 0;
43
21
  }
44
22
  /**
45
23
  * useWishlistCount
46
24
  *
47
- * Returns wishlist count always from localStorage same source for guest and
48
- * authenticated users, so the badge is instant with no API round-trip.
25
+ * Server-authoritative count for the badge. For authenticated users this
26
+ * mirrors `/api/wishlist` via react-query (same `["wishlist", uid]` key as
27
+ * `useWishlist`), so mutations on the wishlist page propagate to the badge
28
+ * via standard query invalidation. For guests, falls back to the localStorage
29
+ * guest store.
49
30
  *
50
- * When userId changes from null a real uid (login):
51
- * 1. Fetches Firestore wishlist and merges into localStorage.
52
- * 2. Pushes any guest-only localStorage items up to Firestore.
53
- *
54
- * While authenticated:
55
- * - Syncs localStorage → Firestore every 60 s.
56
- * - Also syncs when the user visits /wishlist or /cart.
31
+ * On login the hook pushes any guest items up to the server once, then clears
32
+ * the guest store so the two stores cannot drift.
57
33
  */
58
34
  export function useWishlistCount(userId) {
59
- const { count, add } = useGuestWishlist();
60
- const prevUserIdRef = useRef(undefined);
61
- const mergedRef = useRef(false);
35
+ const { count: guestCount } = useGuestWishlist();
36
+ const queryClient = useQueryClient();
37
+ const mergedRef = useRef(null);
62
38
  const pathname = usePathname();
63
- // Merge on login: pull Firestore localStorage, push guest items → Firestore
39
+ const { data: serverTotal } = useQuery({
40
+ queryKey: ["wishlist", userId],
41
+ queryFn: () => fetchServerCount(userId),
42
+ enabled: !!userId,
43
+ staleTime: 30000,
44
+ });
45
+ // Merge on login: push guest items → server once, then clear local store.
64
46
  useEffect(() => {
65
- const prev = prevUserIdRef.current;
66
- prevUserIdRef.current = userId;
67
- // Only fire on the null/undefined → real-uid transition
68
- if (!userId || prev === userId)
69
- return;
70
- if (mergedRef.current)
47
+ if (!userId) {
48
+ mergedRef.current = null;
71
49
  return;
72
- mergedRef.current = true;
73
- async function merge() {
74
- try {
75
- // 1. Pull server wishlist into localStorage (handles new device login)
76
- const resp = await fetch(WISHLIST_API);
77
- if (resp.ok) {
78
- const json = await resp.json();
79
- const firestoreItems = json.data?.items ?? [];
80
- for (const item of firestoreItems) {
81
- add(item.productId, "product", {
82
- title: item.productTitle,
83
- image: item.productImage,
84
- });
85
- }
86
- }
87
- // 2. Push any guest-only items up to Firestore
88
- pushToFirestore();
89
- }
90
- catch {
91
- // Non-fatal — local count still shows correctly
92
- }
93
50
  }
94
- void merge();
95
- }, [userId, add]);
96
- // Reset merge flag on logout so next login re-runs the merge
97
- useEffect(() => {
98
- if (!userId)
99
- mergedRef.current = false;
100
- }, [userId]);
101
- // 60 s periodic sync: localStorage → Firestore
102
- useEffect(() => {
103
- if (!userId)
51
+ if (mergedRef.current === userId)
104
52
  return;
105
- const id = setInterval(pushToFirestore, SYNC_MS);
106
- return () => clearInterval(id);
107
- }, [userId]);
108
- // Extra sync when the user lands on /wishlist or /cart
53
+ mergedRef.current = userId;
54
+ const items = getGuestWishlistItems().filter((i) => ["product", "auction", "preorder"].includes(i.type));
55
+ const finish = () => {
56
+ clearGuestWishlist();
57
+ void queryClient.invalidateQueries({ queryKey: ["wishlist", userId] });
58
+ };
59
+ if (items.length === 0) {
60
+ finish();
61
+ return;
62
+ }
63
+ fetch(WISHLIST_MERGE_API, {
64
+ method: "POST",
65
+ headers: { "Content-Type": "application/json" },
66
+ body: JSON.stringify({
67
+ items: items.map((i) => ({ productId: i.itemId })),
68
+ }),
69
+ })
70
+ .then(async (res) => {
71
+ if (!res.ok)
72
+ return;
73
+ const json = (await res.json().catch(() => null));
74
+ const data = json?.data;
75
+ if (data?.capReached) {
76
+ dispatchCapEvent({
77
+ limit: data.limit ?? WISHLIST_MAX,
78
+ current: data.limit ?? WISHLIST_MAX,
79
+ skippedFull: data.skippedFull ?? 0,
80
+ });
81
+ }
82
+ })
83
+ .catch(() => { })
84
+ .finally(finish);
85
+ }, [userId, queryClient]);
86
+ // Refetch when the user lands on /wishlist or /cart so the badge matches
87
+ // whatever the page is about to render.
109
88
  useEffect(() => {
110
89
  if (!userId || !pathname)
111
90
  return;
112
91
  if (/\/(wishlist|cart)(\/|$)/.test(pathname)) {
113
- pushToFirestore();
92
+ void queryClient.invalidateQueries({ queryKey: ["wishlist", userId] });
114
93
  }
115
- }, [pathname, userId]);
116
- return count;
94
+ }, [pathname, userId, queryClient]);
95
+ if (userId)
96
+ return serverTotal ?? 0;
97
+ return guestCount;
117
98
  }
118
99
  /**
119
100
  * useWishlistCountWithLimit — extends useWishlistCount with limit + isFull so
@@ -24,7 +24,7 @@ export interface WishlistProductData {
24
24
  status?: "draft" | "published" | "archived" | "sold" | "out_of_stock" | "discontinued";
25
25
  isFeatured?: boolean;
26
26
  /** Canonical listing-kind discriminator (SB1-G Phase 4). */
27
- listingType?: "standard" | "auction" | "pre-order" | "prize-draw";
27
+ listingType?: "standard" | "auction" | "pre-order" | "prize-draw" | "classified" | "digital-code" | "live";
28
28
  }
29
29
  /** WishlistItem enriched with inline product details returned by the wishlist GET endpoint. */
30
30
  export interface EnrichedWishlistItem extends WishlistItem {
package/dist/index.d.ts CHANGED
@@ -475,7 +475,7 @@ export type { RbacHookReturn } from "./security/index";
475
475
  export type { ResolvedUser } from "./security/index";
476
476
  export type { RoleDefinition } from "./security/index";
477
477
  export type { UserRole } from "./security/index";
478
- export { AddressRepository } from "./repositories/index";
478
+ export { AddressesRepository } from "./repositories/index";
479
479
  export { BaseRepository } from "./repositories/index";
480
480
  export { BlogRepository } from "./repositories/index";
481
481
  export { CartRepository } from "./repositories/index";
@@ -500,7 +500,7 @@ export { SessionRepository } from "./repositories/index";
500
500
  export { SmsCounterRepository } from "./repositories/index";
501
501
  export { StoreRepository } from "./repositories/index";
502
502
  export { UserRepository } from "./repositories/index";
503
- export { addressRepository } from "./repositories/index";
503
+ export { addressesRepository } from "./repositories/index";
504
504
  export { bidRepository } from "./repositories/index";
505
505
  export { blogRepository } from "./repositories/index";
506
506
  export { carouselRepository } from "./repositories/index";
@@ -524,7 +524,6 @@ export { reviewRepository } from "./repositories/index";
524
524
  export { sessionRepository } from "./repositories/index";
525
525
  export { siteSettingsRepository } from "./repositories/index";
526
526
  export { smsCounterRepository } from "./repositories/index";
527
- export { storeAddressRepository } from "./repositories/index";
528
527
  export { storeRepository } from "./repositories/index";
529
528
  export { scammerRepository } from "./repositories/index";
530
529
  export { productFeaturesRepository } from "./repositories/index";
@@ -1056,6 +1055,12 @@ export type { AdminBrandEditorViewProps } from "./features/admin/index";
1056
1055
  export { AdminCategoriesView } from "./features/admin/index";
1057
1056
  export { AdminCategoryEditorView } from "./features/admin/index";
1058
1057
  export type { AdminCategoryEditorViewProps } from "./features/admin/index";
1058
+ export { AdminBundlesView } from "./features/admin/index";
1059
+ export type { AdminBundlesViewProps } from "./features/admin/index";
1060
+ export { AdminBundleEditorView } from "./features/admin/index";
1061
+ export type { AdminBundleEditorViewProps } from "./features/admin/index";
1062
+ export { BundleItemsPicker, defaultBundleItemsFetch, } from "./features/categories/components/BundleItemsPicker";
1063
+ export type { BundleItemsPickerProps, BundleItemSearchResult, } from "./features/categories/components/BundleItemsPicker";
1059
1064
  export { AdminCouponsView } from "./features/admin/index";
1060
1065
  export { AdminCouponEditorView } from "./features/admin/index";
1061
1066
  export type { AdminCouponEditorViewProps } from "./features/admin/index";
@@ -1485,6 +1490,7 @@ export { getCart } from "./features/cart/server";
1485
1490
  export { mergeGuestCart } from "./features/cart/server";
1486
1491
  export { removeCartItem } from "./features/cart/server";
1487
1492
  export { updateCartItem } from "./features/cart/server";
1493
+ export { updateCartItemShipping } from "./features/cart/server";
1488
1494
  export { CART_COLLECTION } from "./features/cart/schemas/index";
1489
1495
  export { CART_FIELDS } from "./features/cart/schemas/index";
1490
1496
  export { CART_INDEXED_FIELDS } from "./features/cart/schemas/index";
@@ -1717,6 +1723,10 @@ export { EventLeaderboard } from "./features/events/index";
1717
1723
  export { EventParticipateView } from "./features/events/index";
1718
1724
  export { EventPollWidget } from "./features/events/index";
1719
1725
  export { EventStatusBadge } from "./features/events/index";
1726
+ export { EventRaffleWinnerView } from "./features/events/index";
1727
+ export type { EventRaffleWinnerViewProps } from "./features/events/index";
1728
+ export { SpinWheelView } from "./features/events/index";
1729
+ export type { SpinWheelViewProps } from "./features/events/index";
1720
1730
  export { EventsListView } from "./features/events/index";
1721
1731
  export { EventsListPageView } from "./features/events/components/EventsListPageView";
1722
1732
  export { EventsIndexListing } from "./features/events/index";
@@ -2141,6 +2151,12 @@ export { OrderCard } from "./features/orders/index";
2141
2151
  export { OrderFilters } from "./features/orders/index";
2142
2152
  export { OrderStatusValues } from "./features/orders/index";
2143
2153
  export { OrdersList } from "./features/orders/index";
2154
+ export { OrderSiblingPayments } from "./features/orders/index";
2155
+ export type { OrderSiblingPaymentsProps } from "./features/orders/index";
2156
+ export { RefundHistoryTable } from "./features/orders/index";
2157
+ export type { RefundHistoryTableProps } from "./features/orders/index";
2158
+ export { RefundRequestView } from "./features/orders/index";
2159
+ export type { RefundRequestViewProps } from "./features/orders/index";
2144
2160
  export { PaymentGatewayValues } from "./features/orders/index";
2145
2161
  export { PaymentMethodValues } from "./features/orders/index";
2146
2162
  export { PaymentStatusValues } from "./features/orders/index";
@@ -2169,6 +2185,7 @@ export type { OrderAdminUpdateInput } from "./features/orders/index";
2169
2185
  export type { AppliedOrderDiscount } from "./features/orders/index";
2170
2186
  export type { OrderCreateInput } from "./features/orders/index";
2171
2187
  export type { OrderDocument } from "./features/orders/index";
2188
+ export type { OrderRefundEvent, RefundType } from "./features/orders/schemas/firestore";
2172
2189
  export type { OrderDocumentItem } from "./features/orders/index";
2173
2190
  export type { OrderFilterVariant } from "./features/orders/index";
2174
2191
  export type { OrderFiltersProps } from "./features/orders/index";
@@ -2214,6 +2231,7 @@ export type { PaymentSettings } from "./features/payments/index";
2214
2231
  export type { PayoutBankAccount } from "./features/payments/index";
2215
2232
  export type { PayoutCreateInput } from "./features/payments/index";
2216
2233
  export type { PayoutDocument } from "./features/payments/index";
2234
+ export type { PayoutRefundDeduction } from "./features/payments/index";
2217
2235
  export type { PayoutPaymentMethod } from "./features/payments/index";
2218
2236
  export type { PayoutUpdateInput } from "./features/payments/index";
2219
2237
  export type { UsePaymentEventOptions } from "./features/payments/index";
@@ -2245,6 +2263,12 @@ export { preOrdersPOST } from "./features/pre-orders/server";
2245
2263
  export { AuctionDetailView } from "./features/products/index";
2246
2264
  export { AuctionDetailPageView } from "./features/auctions/index";
2247
2265
  export { AuctionsListView } from "./features/auctions/components/AuctionsListView";
2266
+ export { BundlesListView } from "./features/categories/components/BundlesListView";
2267
+ export type { BundlesListViewProps } from "./features/categories/components/BundlesListView";
2268
+ export { BundleDetailView } from "./features/categories/components/BundleDetailView";
2269
+ export type { BundleDetailViewProps } from "./features/categories/components/BundleDetailView";
2270
+ export { BundleBuyNowCta } from "./features/categories/components/BundleBuyNowCta";
2271
+ export type { BundleBuyNowCtaProps } from "./features/categories/components/BundleBuyNowCta";
2248
2272
  export { AuctionsView } from "./features/products/index";
2249
2273
  export { BidHistory } from "./features/products/index";
2250
2274
  export { BuyBar } from "./features/products/index";
@@ -2277,14 +2301,14 @@ export { PRODUCT_UPDATABLE_FIELDS } from "./features/products/index";
2277
2301
  export { PlaceBidForm } from "./features/products/index";
2278
2302
  export { PreOrderDetailView } from "./features/products/index";
2279
2303
  export { PreOrdersView } from "./features/products/index";
2280
- export { PrizeDrawsListingView } from "./features/products/index";
2281
- export type { PrizeDrawsListingViewProps } from "./features/products/index";
2304
+ export { PrizeDrawsListingView } from "./features/products/components/PrizeDrawsListingView";
2305
+ export type { PrizeDrawsListingViewProps } from "./features/products/components/PrizeDrawsListingView";
2282
2306
  export { PrizeDrawsIndexListing } from "./features/products/index";
2283
2307
  export type { PrizeDrawsIndexListingProps } from "./features/products/index";
2284
2308
  export { MarketplacePrizeDrawCard } from "./features/products/index";
2285
2309
  export type { MarketplacePrizeDrawCardProps, MarketplacePrizeDrawCardData, MarketplacePrizeDrawCardLabels, } from "./features/products/index";
2286
- export { PrizeDrawDetailPageView } from "./features/products/index";
2287
- export type { PrizeDrawDetailPageViewProps } from "./features/products/index";
2310
+ export { PrizeDrawDetailPageView } from "./features/products/components/PrizeDrawDetailPageView";
2311
+ export type { PrizeDrawDetailPageViewProps } from "./features/products/components/PrizeDrawDetailPageView";
2288
2312
  export { PrizeDrawEntryActions } from "./features/products/index";
2289
2313
  export type { PrizeDrawEntryActionsProps } from "./features/products/index";
2290
2314
  export { ProductCard } from "./features/products/index";
@@ -2315,7 +2339,12 @@ export { createProductId } from "./features/products/index";
2315
2339
  export { getProductFilterKeys } from "./features/products/index";
2316
2340
  export { getProductSortOptions } from "./features/products/index";
2317
2341
  export { getProductTableColumns } from "./features/products/index";
2318
- export { normalizeListingType, isAuctionListing, isPreOrderListing, isStandardListing, } from "./features/products/index";
2342
+ export { normalizeListingType, isAuctionListing, isPreOrderListing, isStandardListing, isPrizeDrawListing, isClassifiedListing, isDigitalCodeListing, isLiveListing, } from "./features/products/index";
2343
+ export { isListingTypeEnabled, isCategoryTypeEnabled, enabledListingTypes, enabledCategoryTypes, } from "./_internal/shared/listing-types/feature-flags";
2344
+ export { actionTracker, setActionTrackerSink, resetActionTrackerSink, type ActionEvent, type ActionTrackerSink, } from "./_internal/shared/listing-types/action-tracker";
2345
+ export { cartRequiresShipping, cartIsDigitalOnly, cartIsChatOnly, } from "./_internal/shared/listing-types/cart-shipping";
2346
+ export { ACTIONS, action, act, canPerformAction, actionsForListingType, actionLabel, type ActionDef, type ActionKind, type ActionResource, type ActionTree, type ActionConfirmation, } from "./_internal/shared/actions/action-registry";
2347
+ export { isAdminUser, isSellerUser, isModeratorUser, isEmployeeUser, isBuyerUser, } from "./features/auth/role-predicates";
2319
2348
  export { sanitizeProductForPublic, sanitizeProductsForPublic } from "./features/products/index";
2320
2349
  export { productAdminColumns } from "./features/products/index";
2321
2350
  export { productImageSchema } from "./features/products/index";
@@ -2781,6 +2810,7 @@ export type { StoreAuctionsResponse } from "./features/stores/index";
2781
2810
  export type { StoreAuctionsViewProps } from "./features/stores/index";
2782
2811
  export type { StoreDetail } from "./features/stores/index";
2783
2812
  export type { StoreDocument } from "./features/stores/index";
2813
+ export type { StoreShippingConfig, ShippingProviderConfig, ShippingProviderType } from "./features/stores/schemas/firestore";
2784
2814
  export type { StoreListItem } from "./features/stores/index";
2785
2815
  export type { StoreListParams } from "./features/stores/index";
2786
2816
  export type { StoreListResponse } from "./features/stores/index";
@@ -2914,7 +2944,8 @@ export { historyRepository, UserHistoryRepository, trackHistoryView, getHistoryF
2914
2944
  export { useMediaQuery, useBreakpoint, useClickOutside, useKeyPress, useLongPress, useGesture, useSwipe, ThemeProvider, useTheme, useSession, useAuth, useCountdown, useCamera, useBulkSelection, useUrlTable, usePendingFilters, usePendingTable, useUnsavedChanges, UNSAVED_CHANGES_EVENT, useBulkAction, useContainerGrid, useMessage, useVisibleItems, useModalStack, RTDBPayloadStatus, } from "./react/index";
2915
2945
  export { RoleGate, ProtectedRoute, SocialAuthButtons, AuthStatusPanel, LoginForm, RegisterForm, ForgotPasswordView, ResetPasswordView, VerifyEmailView, OAuthLoadingView, } from "./features/auth/index";
2916
2946
  export type { RoleGateProps, ProtectedRouteProps, AuthGuardUser, AuthRouteConfig, LoginFormProps, LoginFormValues, RegisterFormProps, RegisterFormValues, ForgotPasswordViewProps, ResetPasswordViewProps, VerifyEmailViewProps, } from "./features/auth/index";
2917
- export { CartItemRow, CartDrawer, CartView, CartSummary } from "./features/cart/index";
2947
+ export { CartItemRow, CartDrawer, CartView, CartSummary, ShippingPicker } from "./features/cart/index";
2948
+ export type { ShippingPickerProps } from "./features/cart/index";
2918
2949
  export { CheckoutView, CheckoutAddressStep, CheckoutOtpModal, CheckoutSuccessView } from "./features/cart/index";
2919
2950
  export { CheckoutStepper, useCheckout } from "./features/checkout/index";
2920
2951
  export { useProfile as useCurrentProfile, useUpdateProfile as useUpdateCurrentProfile } from "./features/account/index";
@@ -2930,6 +2961,7 @@ export type { SessionUser } from "./react/index";
2930
2961
  export type { UseUrlTableOptions } from "./react/index";
2931
2962
  export { SUCCESS_MESSAGES } from "./values/index";
2932
2963
  export { splitCartIntoOrderGroups } from "./features/orders/index";
2964
+ export { groupOrderItemsByBundle, type BundleOrderGroup, type OrderItemForBundleGrouping, } from "./features/orders/index";
2933
2965
  export { buildSieveFilters } from "./utils/filter.helper";
2934
2966
  export { formatFileSize } from "./utils/number.formatter";
2935
2967
  export { formatMonthYear } from "./utils/date.formatter";
@@ -2951,11 +2983,18 @@ export type { ProductFeatureAdminCreatePayload, ProductFeatureStoreCreatePayload
2951
2983
  export { LISTING_PARAM_NAMES, parseListingParams, parseListingSearchParams, serializeListingParams, } from "./utils/listing-params";
2952
2984
  export type { ListingParams } from "./utils/listing-params";
2953
2985
  export { PRODUCT_FEATURE_CATEGORY_OPTIONS, PRODUCT_FEATURE_PRODUCT_TYPE_OPTIONS, PRODUCT_FEATURE_SCOPE_OPTIONS, PRODUCT_FEATURE_ICON_COLOR_OPTIONS, PRODUCT_FEATURE_SCOPE_TABS, PRODUCT_FEATURE_DEFAULT_DISPLAY_ORDER, PRODUCT_FEATURE_CARD_MAX_VISIBLE, PRODUCT_FEATURE_QUERY_STALE_MS, } from "./features/products/constants/product-features.constants";
2986
+ export { CATEGORY_PAGE_TABS, STORE_PAGE_TABS, SELLER_LISTING_TABS, SEARCH_RESULT_TABS, } from "./features/products/constants/listing-tabs";
2987
+ export type { ListingTab, CategoryTabId, StoreTabId, SellerListingTabId, SearchTabId, } from "./features/products/constants/listing-tabs";
2988
+ export { ALL_TAB, EMPTY_TAB, ADMIN_PRODUCT_STATUS_TABS, ADMIN_PRODUCT_LISTING_TYPE_TABS, ADMIN_BLOG_STATUS_TABS, ADMIN_USER_STATUS_TABS, ADMIN_USER_ROLE_TABS, ADMIN_STORE_STATUS_TABS, ADMIN_PAYOUT_STATUS_TABS, ADMIN_ORDER_STATUS_TABS, ADMIN_REVIEW_STATUS_TABS, ADMIN_REVIEW_RATING_TABS, ADMIN_BID_STATUS_TABS, ADMIN_CONTACT_STATUS_TABS, ADMIN_NEWSLETTER_STATUS_TABS, ADMIN_EVENT_ENTRY_STATUS_TABS, ADMIN_EVENT_STATUS_TABS, ADMIN_CART_OWNERSHIP_TABS, ADMIN_COUPON_TYPE_TABS, SELLER_PRODUCT_STATUS_TABS, SELLER_AUCTION_STATUS_TABS, SELLER_ORDER_STATUS_TABS, SELLER_OFFER_STATUS_TABS, SELLER_BID_STATUS_TABS, } from "./features/admin/constants/filter-tabs";
2989
+ export type { AdminFilterTab } from "./features/admin/constants/filter-tabs";
2954
2990
  export { GROUPED_LISTINGS_COLLECTION } from "./features/grouped/schemas/firestore";
2955
2991
  export { CategoryBundlesListing } from "./features/categories/components/CategoryBundlesListing";
2956
2992
  export type { CategoryBundlesListingProps } from "./features/categories/components/CategoryBundlesListing";
2957
2993
  export type { BundleQueryRule } from "./features/categories/schemas/firestore";
2958
2994
  export { BUNDLE_MIN_ITEMS, BUNDLE_MAX_ITEMS, BUNDLE_MAX_PER_USER_DEFAULT, BUNDLES_PAGE_SIZE, BUNDLES_FEATURED_LIMIT, } from "./_internal/shared/features/categories/bundle-config";
2995
+ export { BUNDLE_COPY, BUNDLE_STOCK_VARIANT, } from "./_internal/shared/features/categories/bundle-copy";
2996
+ export { REFUND_COPY } from "./_internal/shared/features/orders/refund-copy";
2997
+ export { bundleCreateSchema, bundleUpdateSchema, bundleQueryRuleSchema, bundleDisplaySchema, type BundleCreateBody, type BundleUpdateBody, } from "./_internal/shared/features/categories/bundle-schemas";
2959
2998
  export type { GroupedListingDocument, GroupTheme, GroupVisibility } from "./features/grouped/schemas/firestore";
2960
2999
  export { scammersSeedData } from "./seed/index";
2961
3000
  export { productFeaturesSeedData } from "./seed/index";
@@ -3004,5 +3043,7 @@ export { LISTING_TYPE_CAPABILITIES, capabilityFor, canAddToCart, canBid, support
3004
3043
  export type { ListingTypeCapability } from "./_internal/shared/listing-types/capabilities";
3005
3044
  export { LISTING_TYPE_REGISTRY, pluginFor } from "./_internal/shared/listing-types/_registry";
3006
3045
  export type { ListingTypePlugin } from "./_internal/shared/listing-types/_registry";
3046
+ export { getListingRule, getCategoryRule, pickOrderType, getSplitKey, runSyncPreflight, CHECKOUT_RULES, CATEGORY_CHECKOUT_RULES, CHECKOUT_MAX_ORDERS_PER_TX, PRIZE_DRAW_MAX_REVEALS_PER_ORDER, BUNDLE_MAX_QTY_PER_TX, STANDARD_MAX_QTY_PER_LINE, } from "./_internal/shared/checkout/rules";
3047
+ export type { ListingCheckoutRule, CategoryCheckoutRule, CartItemProductPair, OrderItemInput, RefundPolicy, } from "./_internal/shared/checkout/rules";
3007
3048
  export { MEGABYTE, MAX_IMAGE_BYTES, MAX_PDF_BYTES, MAX_VIDEO_BYTES, MAX_LABEL, MAX_BYTES, ALLOWED_IMAGE_MIMES, ALLOWED_VIDEO_MIMES, ALLOWED_DOC_MIMES, ALLOWED_MIMES, ALLOWED_TYPES_LABEL, MIME_TO_EXT, PDF_MAGIC, VIDEO_CONVERSION_HINTS, classifyMime, isAllowedMime, maxBytesFor, getConversionHint, } from "./_internal/shared/media/limits";
3008
3049
  export type { MediaKind, AllowedImageMime, AllowedVideoMime, AllowedDocMime, AllowedMime, } from "./_internal/shared/media/limits";