@mohasinac/appkit 4.11.2 → 4.12.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 (246) hide show
  1. package/dist/_internal/server/features/checkout/actions.d.ts +40 -3
  2. package/dist/_internal/server/features/checkout/actions.js +232 -47
  3. package/dist/_internal/server/features/checkout/data.d.ts +10 -0
  4. package/dist/_internal/server/features/orders/adapters.js +20 -0
  5. package/dist/_internal/server/features/products/data.d.ts +12 -3
  6. package/dist/_internal/server/features/products/data.js +55 -4
  7. package/dist/_internal/server/features/products/index.d.ts +1 -1
  8. package/dist/_internal/server/features/products/index.js +1 -1
  9. package/dist/_internal/server/features/products/list-public.d.ts +47 -0
  10. package/dist/_internal/server/features/products/list-public.js +131 -6
  11. package/dist/_internal/server/features/reviews/data.d.ts +1 -1
  12. package/dist/_internal/server/features/reviews/data.js +3 -2
  13. package/dist/_internal/server/features/tester/visibility.js +3 -3
  14. package/dist/_internal/server/jobs/core/auctionSettlement.js +5 -2
  15. package/dist/_internal/server/jobs/core/testerSandboxCleanup.d.ts +1 -1
  16. package/dist/_internal/server/jobs/core/testerSandboxCleanup.js +4 -1
  17. package/dist/_internal/server/jobs/core/testerSandboxRefresh.js +2 -0
  18. package/dist/_internal/server/jobs/handlers/_helpers.js +4 -1
  19. package/dist/_internal/shared/checkout/lanes.d.ts +20 -0
  20. package/dist/_internal/shared/checkout/lanes.js +28 -0
  21. package/dist/_internal/shared/features/checkout/config.d.ts +4 -0
  22. package/dist/_internal/shared/features/checkout/config.js +8 -0
  23. package/dist/_internal/shared/features/promotions/schema.d.ts +0 -16
  24. package/dist/_internal/shared/features/promotions/schema.js +0 -2
  25. package/dist/_internal/shared/features/reviews/config.d.ts +8 -1
  26. package/dist/_internal/shared/features/reviews/config.js +8 -1
  27. package/dist/_internal/shared/fees/calculator.d.ts +34 -2
  28. package/dist/_internal/shared/fees/calculator.js +45 -1
  29. package/dist/_internal/shared/listing-types/_registry.d.ts +88 -1
  30. package/dist/_internal/shared/listing-types/_registry.js +63 -1
  31. package/dist/_internal/shared/listing-types/art/config.d.ts +59 -0
  32. package/dist/_internal/shared/listing-types/art/config.js +12 -0
  33. package/dist/_internal/shared/listing-types/auction/config.d.ts +53 -0
  34. package/dist/_internal/shared/listing-types/auction/config.js +17 -0
  35. package/dist/_internal/shared/listing-types/classified/config.d.ts +59 -0
  36. package/dist/_internal/shared/listing-types/classified/config.js +14 -0
  37. package/dist/_internal/shared/listing-types/digital-code/config.d.ts +59 -0
  38. package/dist/_internal/shared/listing-types/digital-code/config.js +12 -0
  39. package/dist/_internal/shared/listing-types/live/config.d.ts +59 -0
  40. package/dist/_internal/shared/listing-types/live/config.js +14 -0
  41. package/dist/_internal/shared/listing-types/pre-order/config.d.ts +110 -0
  42. package/dist/_internal/shared/listing-types/pre-order/config.js +14 -0
  43. package/dist/_internal/shared/listing-types/prize-draw/config.d.ts +44 -0
  44. package/dist/_internal/shared/listing-types/prize-draw/config.js +10 -0
  45. package/dist/_internal/shared/listing-types/standard/config.d.ts +59 -0
  46. package/dist/_internal/shared/listing-types/standard/config.js +9 -0
  47. package/dist/_internal/shared/listing-types/stickers/config.d.ts +59 -0
  48. package/dist/_internal/shared/listing-types/stickers/config.js +12 -0
  49. package/dist/client.d.ts +12 -2
  50. package/dist/client.js +8 -2
  51. package/dist/constants/api-endpoints.d.ts +6 -0
  52. package/dist/constants/api-endpoints.js +2 -0
  53. package/dist/constants/field-names.d.ts +12 -0
  54. package/dist/constants/field-names.js +12 -0
  55. package/dist/constants/table-keys.d.ts +2 -0
  56. package/dist/constants/table-keys.js +2 -0
  57. package/dist/features/account/components/UserOrdersView.js +27 -5
  58. package/dist/features/admin/components/AdminAddressesView.js +21 -11
  59. package/dist/features/admin/components/AdminArtView.d.ts +9 -0
  60. package/dist/features/admin/components/AdminArtView.js +11 -35
  61. package/dist/features/admin/components/AdminClassifiedView.d.ts +9 -0
  62. package/dist/features/admin/components/AdminClassifiedView.js +11 -35
  63. package/dist/features/admin/components/AdminCouponEditorView.js +1 -4
  64. package/dist/features/admin/components/AdminDigitalCodesView.d.ts +9 -0
  65. package/dist/features/admin/components/AdminDigitalCodesView.js +11 -42
  66. package/dist/features/admin/components/AdminLiveView.d.ts +9 -0
  67. package/dist/features/admin/components/AdminLiveView.js +11 -41
  68. package/dist/features/admin/components/AdminOrderEditorView.d.ts +8 -1
  69. package/dist/features/admin/components/AdminOrderEditorView.js +4 -3
  70. package/dist/features/admin/components/AdminOrdersView.js +14 -1
  71. package/dist/features/admin/components/AdminPaymentMethodsView.js +18 -11
  72. package/dist/features/admin/components/AdminProductsView.js +34 -18
  73. package/dist/features/admin/components/AdminSiteConfigGuideView.js +1 -1
  74. package/dist/features/admin/components/AdminSiteSettingsView.js +4 -2
  75. package/dist/features/admin/components/AdminStickersView.d.ts +9 -0
  76. package/dist/features/admin/components/AdminStickersView.js +11 -35
  77. package/dist/features/admin/constants/filter-tabs.d.ts +26 -9
  78. package/dist/features/admin/constants/filter-tabs.js +22 -9
  79. package/dist/features/admin/hooks/useAdminListing.js +7 -2
  80. package/dist/features/admin/schemas/firestore.d.ts +5 -0
  81. package/dist/features/admin/schemas/firestore.js +1 -0
  82. package/dist/features/auctions/actions/bid-actions.js +2 -2
  83. package/dist/features/auctions/components/AuctionBidsTable.js +1 -1
  84. package/dist/features/auctions/components/AuctionBottomActions.js +1 -0
  85. package/dist/features/auctions/components/AuctionDetailPageView.js +13 -11
  86. package/dist/features/cart/components/CartDrawer.d.ts +9 -1
  87. package/dist/features/cart/components/CartDrawer.js +4 -3
  88. package/dist/features/cart/components/CartPriceBreakdown.d.ts +61 -0
  89. package/dist/features/cart/components/CartPriceBreakdown.js +25 -0
  90. package/dist/features/cart/components/StoreAddonsPicker.d.ts +47 -0
  91. package/dist/features/cart/components/StoreAddonsPicker.js +21 -0
  92. package/dist/features/cart/components/index.d.ts +4 -0
  93. package/dist/features/cart/components/index.js +2 -0
  94. package/dist/features/cart/repository/cart.repository.d.ts +20 -2
  95. package/dist/features/cart/repository/cart.repository.js +49 -0
  96. package/dist/features/cart/schemas/firestore.d.ts +26 -2
  97. package/dist/features/categories/components/BrandDetailTabs.js +31 -11
  98. package/dist/features/categories/components/CategoryDetailTabs.js +27 -7
  99. package/dist/features/categories/components/CategoryProductsListing.d.ts +9 -1
  100. package/dist/features/categories/components/CategoryProductsListing.js +5 -2
  101. package/dist/features/classified/components/ClassifiedDetailPageView.js +2 -1
  102. package/dist/features/contact/email.js +5 -1
  103. package/dist/features/digital-codes/components/DigitalCodeDetailPageView.js +17 -16
  104. package/dist/features/homepage/components/FeaturedResultsSection.js +1 -1
  105. package/dist/features/homepage/components/SectionCarousel.js +1 -1
  106. package/dist/features/homepage/components/ShopByCategorySection.js +1 -1
  107. package/dist/features/layout/AppLayoutShell.js +9 -2
  108. package/dist/features/layout/BottomActions.js +62 -6
  109. package/dist/features/layout/BottomActionsContext.d.ts +26 -0
  110. package/dist/features/layout/BottomActionsContext.js +18 -1
  111. package/dist/features/layout/hooks/useBottomActions.d.ts +12 -1
  112. package/dist/features/layout/hooks/useBottomActions.js +14 -1
  113. package/dist/features/layout/index.d.ts +1 -1
  114. package/dist/features/live/components/LiveItemDetailPageView.js +7 -6
  115. package/dist/features/orders/components/OrderAddonBadges.d.ts +36 -0
  116. package/dist/features/orders/components/OrderAddonBadges.js +28 -0
  117. package/dist/features/orders/components/index.d.ts +1 -0
  118. package/dist/features/orders/components/index.js +1 -0
  119. package/dist/features/orders/repository/orders.repository.d.ts +36 -0
  120. package/dist/features/orders/repository/orders.repository.js +18 -0
  121. package/dist/features/orders/types/index.d.ts +38 -0
  122. package/dist/features/pre-orders/components/PreOrderBottomActions.d.ts +1 -1
  123. package/dist/features/pre-orders/components/PreOrderBottomActions.js +3 -19
  124. package/dist/features/products/components/ArtStickersListView.js +5 -4
  125. package/dist/features/products/components/AuctionsIndexListing.js +1 -2
  126. package/dist/features/products/components/ListingBottomActions.d.ts +28 -0
  127. package/dist/features/products/components/ListingBottomActions.js +25 -0
  128. package/dist/features/products/components/PrizeDrawBottomActions.d.ts +1 -1
  129. package/dist/features/products/components/PrizeDrawBottomActions.js +3 -21
  130. package/dist/features/products/components/PrizeDrawsListingView.js +18 -33
  131. package/dist/features/products/components/ProductDetailActions.js +4 -0
  132. package/dist/features/products/components/ProductDetailPageView.js +7 -7
  133. package/dist/features/products/components/ProductsIndexListing.js +87 -11
  134. package/dist/features/products/components/ProductsIndexPageView.js +14 -2
  135. package/dist/features/products/config/listing-type-listing-config.d.ts +31 -0
  136. package/dist/features/products/config/listing-type-listing-config.js +74 -0
  137. package/dist/features/products/constants/listing-tabs.d.ts +43 -198
  138. package/dist/features/products/constants/listing-tabs.js +71 -58
  139. package/dist/features/products/constants/sieve.d.ts +104 -1
  140. package/dist/features/products/constants/sieve.js +27 -7
  141. package/dist/features/products/hooks/useProducts.js +14 -0
  142. package/dist/features/products/repository/products.repository.d.ts +45 -1
  143. package/dist/features/products/repository/products.repository.js +26 -3
  144. package/dist/features/products/types/index.d.ts +15 -0
  145. package/dist/features/products/utils/listing-badge-variant.d.ts +20 -1
  146. package/dist/features/products/utils/listing-badge-variant.js +26 -1
  147. package/dist/features/products/utils/listing-type.d.ts +24 -0
  148. package/dist/features/products/utils/listing-type.js +48 -0
  149. package/dist/features/promotions/actions/coupon-actions.d.ts +7 -0
  150. package/dist/features/promotions/actions/coupon-actions.js +12 -1
  151. package/dist/features/promotions/actions/coupon-stacking.d.ts +24 -0
  152. package/dist/features/promotions/actions/coupon-stacking.js +21 -0
  153. package/dist/features/promotions/actions/index.d.ts +1 -0
  154. package/dist/features/promotions/actions/index.js +1 -0
  155. package/dist/features/promotions/actions/seller-coupon-actions.d.ts +0 -1
  156. package/dist/features/promotions/actions/seller-coupon-actions.js +0 -1
  157. package/dist/features/promotions/components/CouponHelpDetails.d.ts +20 -0
  158. package/dist/features/promotions/components/CouponHelpDetails.js +17 -0
  159. package/dist/features/promotions/components/CouponsIndexListing.js +2 -1
  160. package/dist/features/promotions/components/index.d.ts +2 -0
  161. package/dist/features/promotions/components/index.js +1 -0
  162. package/dist/features/promotions/constants/coupon-help.d.ts +27 -0
  163. package/dist/features/promotions/constants/coupon-help.js +42 -0
  164. package/dist/features/promotions/repository/coupons.repository.d.ts +10 -1
  165. package/dist/features/promotions/repository/coupons.repository.js +22 -8
  166. package/dist/features/promotions/schemas/firestore.d.ts +0 -1
  167. package/dist/features/promotions/schemas/firestore.js +1 -1
  168. package/dist/features/promotions/schemas/index.d.ts +0 -20
  169. package/dist/features/promotions/schemas/index.js +0 -1
  170. package/dist/features/reviews/actions/review-actions.js +5 -1
  171. package/dist/features/reviews/components/ReviewDetailPageView.js +2 -1
  172. package/dist/features/reviews/components/ReviewFilters.d.ts +7 -1
  173. package/dist/features/reviews/components/ReviewFilters.js +4 -3
  174. package/dist/features/reviews/components/ReviewsIndexListing.d.ts +6 -0
  175. package/dist/features/reviews/components/ReviewsIndexListing.js +9 -109
  176. package/dist/features/reviews/components/ReviewsListingPanel.d.ts +41 -0
  177. package/dist/features/reviews/components/ReviewsListingPanel.js +226 -0
  178. package/dist/features/reviews/components/index.d.ts +2 -0
  179. package/dist/features/reviews/components/index.js +1 -0
  180. package/dist/features/reviews/hooks/useReviews.d.ts +8 -0
  181. package/dist/features/reviews/hooks/useReviews.js +14 -6
  182. package/dist/features/reviews/repository/reviews.repository.d.ts +29 -1
  183. package/dist/features/reviews/repository/reviews.repository.js +77 -41
  184. package/dist/features/reviews/types/index.d.ts +8 -1
  185. package/dist/features/seller/components/SellerOrdersView.js +2 -1
  186. package/dist/features/seller/components/SellerProductsCards.js +2 -2
  187. package/dist/features/seller/components/SellerProductsView.js +21 -18
  188. package/dist/features/stores/actions/store-query-actions.js +1 -1
  189. package/dist/features/stores/components/StoreArtStickersPageView.d.ts +21 -0
  190. package/dist/features/stores/components/StoreArtStickersPageView.js +30 -0
  191. package/dist/features/stores/components/StoreAuctionsListing.js +5 -11
  192. package/dist/features/stores/components/StoreAuctionsPageView.d.ts +4 -1
  193. package/dist/features/stores/components/StoreAuctionsPageView.js +17 -17
  194. package/dist/features/stores/components/StoreClassifiedsListing.js +7 -0
  195. package/dist/features/stores/components/StoreClassifiedsPageView.d.ts +4 -1
  196. package/dist/features/stores/components/StoreClassifiedsPageView.js +16 -12
  197. package/dist/features/stores/components/StoreDetailLayoutView.js +4 -3
  198. package/dist/features/stores/components/StoreDigitalCodesListing.js +5 -0
  199. package/dist/features/stores/components/StoreDigitalCodesPageView.d.ts +4 -1
  200. package/dist/features/stores/components/StoreDigitalCodesPageView.js +16 -12
  201. package/dist/features/stores/components/StoreLiveItemsListing.js +7 -0
  202. package/dist/features/stores/components/StoreLiveItemsPageView.d.ts +4 -1
  203. package/dist/features/stores/components/StoreLiveItemsPageView.js +16 -12
  204. package/dist/features/stores/components/StorePreOrdersListing.js +6 -11
  205. package/dist/features/stores/components/StorePreOrdersPageView.d.ts +4 -1
  206. package/dist/features/stores/components/StorePreOrdersPageView.js +17 -17
  207. package/dist/features/stores/components/StorePrizeDrawsPageView.d.ts +4 -8
  208. package/dist/features/stores/components/StorePrizeDrawsPageView.js +17 -22
  209. package/dist/features/stores/components/StoreProductsListing.d.ts +7 -1
  210. package/dist/features/stores/components/StoreProductsListing.js +3 -2
  211. package/dist/features/stores/components/StoreProductsPageView.d.ts +1 -1
  212. package/dist/features/stores/components/StoreProductsPageView.js +16 -21
  213. package/dist/features/stores/components/StoreReviewsListing.d.ts +4 -0
  214. package/dist/features/stores/components/StoreReviewsListing.js +7 -108
  215. package/dist/features/stores/schemas/index.d.ts +2 -2
  216. package/dist/features/tester/seed-data/coupons-tester-seed-data.js +3 -3
  217. package/dist/features/tester/seed-data/index.d.ts +1 -0
  218. package/dist/features/tester/seed-data/index.js +1 -0
  219. package/dist/features/tester/seed-data/offers-tester-seed-data.d.ts +2 -0
  220. package/dist/features/tester/seed-data/offers-tester-seed-data.js +61 -0
  221. package/dist/features/tester/seed-data/tester-checklist-seed-data.js +939 -1
  222. package/dist/index.d.ts +9 -3
  223. package/dist/index.js +11 -2
  224. package/dist/next/routing/route-map.d.ts +2 -0
  225. package/dist/next/routing/route-map.js +5 -0
  226. package/dist/react/hooks/useListingTypeFlags.d.ts +12 -19
  227. package/dist/react/hooks/useListingTypeFlags.js +4 -9
  228. package/dist/schemas/registry.d.ts +0 -12
  229. package/dist/seed/claimed-coupons-seed-data.js +3 -3
  230. package/dist/seed/coupons-seed-data.js +29 -10
  231. package/dist/seed/faq-seed-data.js +2 -2
  232. package/dist/seed/manifest.js +2 -2
  233. package/dist/seed/reviews-seed-data.js +52 -0
  234. package/dist/server-entry.d.ts +1 -0
  235. package/dist/server-entry.js +1 -0
  236. package/dist/styles.css +55 -39
  237. package/dist/tailwind-utilities.css +1 -1
  238. package/dist/ui/components/Checkbox.d.ts +10 -1
  239. package/dist/ui/components/Checkbox.js +14 -2
  240. package/dist/ui/components/Checkbox.style.css +11 -0
  241. package/dist/ui/components/FilterChipGroup.d.ts +21 -3
  242. package/dist/ui/components/FilterChipGroup.js +33 -4
  243. package/dist/ui/components/HorizontalScroller.d.ts +1 -2
  244. package/dist/ui/components/HorizontalScroller.js +9 -5
  245. package/dist/ui/components/HorizontalScroller.style.css +43 -38
  246. package/package.json +1 -1
@@ -1,5 +1,7 @@
1
1
  import { LISTING_TYPE_CAPABILITIES } from "../capabilities";
2
2
  import { ROUTES } from "../../../../next/routing/route-map";
3
+ import { TABLE_KEYS } from "../../../../constants/table-keys";
4
+ import { STANDARD_SORT_OPTIONS, STANDARD_PUBLIC_SORT_OPTIONS, } from "../../../../features/products/constants/sieve";
3
5
  export const LISTING_TYPE = "digital-code";
4
6
  export const capability = LISTING_TYPE_CAPABILITIES["digital-code"];
5
7
  export const config = {
@@ -11,4 +13,14 @@ export const config = {
11
13
  priceLabel: "Price per Code (₹)",
12
14
  typeLabel: "Digital Code",
13
15
  showsStockQuantity: false,
16
+ tabSlug: "digital-codes",
17
+ pluralLabel: "Digital Codes",
18
+ chipLabel: "Digital Codes",
19
+ browseRoute: String(ROUTES.PUBLIC.DIGITAL_CODES),
20
+ // "Sold out" for a code pool means codesAvailable hit 0, which the
21
+ // stockQuantity>0 predicate mirrors on this collection.
22
+ hideDefault: "sold",
23
+ sortOptions: STANDARD_SORT_OPTIONS,
24
+ publicSortOptions: STANDARD_PUBLIC_SORT_OPTIONS,
25
+ extraFacetKeys: [TABLE_KEYS.DELIVERY_METHOD],
14
26
  };
@@ -12,4 +12,63 @@ export declare const config: {
12
12
  priceLabel: string;
13
13
  typeLabel: string;
14
14
  showsStockQuantity: boolean;
15
+ tabSlug: string;
16
+ pluralLabel: string;
17
+ chipLabel: string;
18
+ browseRoute: string;
19
+ hideDefault: "sold";
20
+ sortOptions: readonly [{
21
+ readonly value: string;
22
+ readonly label: "Newest First";
23
+ }, {
24
+ readonly value: string;
25
+ readonly label: "Oldest First";
26
+ }, {
27
+ readonly value: string;
28
+ readonly label: "Price: Low to High";
29
+ }, {
30
+ readonly value: string;
31
+ readonly label: "Price: High to Low";
32
+ }, {
33
+ readonly value: string;
34
+ readonly label: "Name: A–Z";
35
+ }, {
36
+ readonly value: string;
37
+ readonly label: "Name: Z–A";
38
+ }, {
39
+ readonly value: string;
40
+ readonly label: "Featured First";
41
+ }, {
42
+ readonly value: string;
43
+ readonly label: "Promoted First";
44
+ }, {
45
+ readonly value: string;
46
+ readonly label: "Recently Updated";
47
+ }, {
48
+ readonly value: string;
49
+ readonly label: "Most Viewed";
50
+ }];
51
+ publicSortOptions: readonly [{
52
+ readonly value: string;
53
+ readonly label: "Newest First";
54
+ }, {
55
+ readonly value: string;
56
+ readonly label: "Oldest First";
57
+ }, {
58
+ readonly value: string;
59
+ readonly label: "Price: Low to High";
60
+ }, {
61
+ readonly value: string;
62
+ readonly label: "Price: High to Low";
63
+ }, {
64
+ readonly value: string;
65
+ readonly label: "Name: A–Z";
66
+ }, {
67
+ readonly value: string;
68
+ readonly label: "Name: Z–A";
69
+ }, {
70
+ readonly value: string;
71
+ readonly label: "Most Viewed";
72
+ }];
73
+ extraFacetKeys: readonly string[];
15
74
  };
@@ -1,5 +1,7 @@
1
1
  import { LISTING_TYPE_CAPABILITIES } from "../capabilities";
2
2
  import { ROUTES } from "../../../../next/routing/route-map";
3
+ import { TABLE_KEYS } from "../../../../constants/table-keys";
4
+ import { STANDARD_SORT_OPTIONS, STANDARD_PUBLIC_SORT_OPTIONS, } from "../../../../features/products/constants/sieve";
3
5
  export const LISTING_TYPE = "live";
4
6
  export const capability = LISTING_TYPE_CAPABILITIES.live;
5
7
  export const config = {
@@ -11,4 +13,16 @@ export const config = {
11
13
  priceLabel: "Price (₹)",
12
14
  typeLabel: "Live Item",
13
15
  showsStockQuantity: true,
16
+ tabSlug: "live",
17
+ pluralLabel: "Live Items",
18
+ chipLabel: "Live Items",
19
+ browseRoute: String(ROUTES.PUBLIC.LIVE),
20
+ hideDefault: "sold",
21
+ sortOptions: STANDARD_SORT_OPTIONS,
22
+ publicSortOptions: STANDARD_PUBLIC_SORT_OPTIONS,
23
+ extraFacetKeys: [
24
+ TABLE_KEYS.SPECIES,
25
+ TABLE_KEYS.LIVE_SEX,
26
+ TABLE_KEYS.JURISDICTION,
27
+ ],
14
28
  };
@@ -12,4 +12,114 @@ export declare const config: {
12
12
  priceLabel: string;
13
13
  typeLabel: string;
14
14
  showsStockQuantity: boolean;
15
+ tabSlug: string;
16
+ pluralLabel: string;
17
+ chipLabel: string;
18
+ browseRoute: string;
19
+ hideDefault: "closed";
20
+ sortOptions: readonly [{
21
+ readonly value: string;
22
+ readonly label: "Earliest Delivery";
23
+ }, {
24
+ readonly value: string;
25
+ readonly label: "Latest Delivery";
26
+ }, ...({
27
+ readonly value: string;
28
+ readonly label: "Newest First";
29
+ } | {
30
+ readonly value: string;
31
+ readonly label: "Oldest First";
32
+ })[], {
33
+ readonly value: string;
34
+ readonly label: "Price: Low to High";
35
+ }, {
36
+ readonly value: string;
37
+ readonly label: "Price: High to Low";
38
+ }, {
39
+ readonly value: string;
40
+ readonly label: "Fewest Slots Left";
41
+ }, {
42
+ readonly value: string;
43
+ readonly label: "Lowest Deposit First";
44
+ }];
45
+ publicSortOptions: readonly [{
46
+ readonly value: string;
47
+ readonly label: "Earliest Delivery";
48
+ }, {
49
+ readonly value: string;
50
+ readonly label: "Latest Delivery";
51
+ }, {
52
+ readonly value: string;
53
+ readonly label: "Newest First";
54
+ } | {
55
+ readonly value: string;
56
+ readonly label: "Oldest First";
57
+ } | {
58
+ readonly value: string;
59
+ readonly label: "Price: Low to High";
60
+ } | {
61
+ readonly value: string;
62
+ readonly label: "Price: High to Low";
63
+ } | {
64
+ readonly value: string;
65
+ readonly label: "Fewest Slots Left";
66
+ } | {
67
+ readonly value: string;
68
+ readonly label: "Lowest Deposit First";
69
+ }, {
70
+ readonly value: string;
71
+ readonly label: "Newest First";
72
+ } | {
73
+ readonly value: string;
74
+ readonly label: "Oldest First";
75
+ } | {
76
+ readonly value: string;
77
+ readonly label: "Price: Low to High";
78
+ } | {
79
+ readonly value: string;
80
+ readonly label: "Price: High to Low";
81
+ } | {
82
+ readonly value: string;
83
+ readonly label: "Fewest Slots Left";
84
+ } | {
85
+ readonly value: string;
86
+ readonly label: "Lowest Deposit First";
87
+ }, {
88
+ readonly value: string;
89
+ readonly label: "Newest First";
90
+ } | {
91
+ readonly value: string;
92
+ readonly label: "Oldest First";
93
+ } | {
94
+ readonly value: string;
95
+ readonly label: "Price: Low to High";
96
+ } | {
97
+ readonly value: string;
98
+ readonly label: "Price: High to Low";
99
+ } | {
100
+ readonly value: string;
101
+ readonly label: "Fewest Slots Left";
102
+ } | {
103
+ readonly value: string;
104
+ readonly label: "Lowest Deposit First";
105
+ }, {
106
+ readonly value: string;
107
+ readonly label: "Newest First";
108
+ } | {
109
+ readonly value: string;
110
+ readonly label: "Oldest First";
111
+ } | {
112
+ readonly value: string;
113
+ readonly label: "Price: Low to High";
114
+ } | {
115
+ readonly value: string;
116
+ readonly label: "Price: High to Low";
117
+ } | {
118
+ readonly value: string;
119
+ readonly label: "Fewest Slots Left";
120
+ } | {
121
+ readonly value: string;
122
+ readonly label: "Lowest Deposit First";
123
+ }];
124
+ extraFacetKeys: readonly string[];
15
125
  };
@@ -1,5 +1,7 @@
1
1
  import { LISTING_TYPE_CAPABILITIES } from "../capabilities";
2
2
  import { ROUTES } from "../../../../next/routing/route-map";
3
+ import { TABLE_KEYS } from "../../../../constants/table-keys";
4
+ import { PREORDER_SORT_OPTIONS, PREORDER_PUBLIC_SORT_OPTIONS, } from "../../../../features/products/constants/sieve";
3
5
  export const LISTING_TYPE = "pre-order";
4
6
  export const capability = LISTING_TYPE_CAPABILITIES["pre-order"];
5
7
  export const config = {
@@ -11,4 +13,16 @@ export const config = {
11
13
  priceLabel: "Pre-Order Price (₹)",
12
14
  typeLabel: "Pre-Order",
13
15
  showsStockQuantity: false,
16
+ tabSlug: "pre-orders",
17
+ pluralLabel: "Pre-Orders",
18
+ chipLabel: "Pre-Orders",
19
+ browseRoute: String(ROUTES.PUBLIC.PRE_ORDERS),
20
+ hideDefault: "closed",
21
+ sortOptions: PREORDER_SORT_OPTIONS,
22
+ publicSortOptions: PREORDER_PUBLIC_SORT_OPTIONS,
23
+ extraFacetKeys: [
24
+ TABLE_KEYS.PREORDER_STATUS,
25
+ TABLE_KEYS.DATE_FROM,
26
+ TABLE_KEYS.DATE_TO,
27
+ ],
14
28
  };
@@ -12,4 +12,48 @@ export declare const config: {
12
12
  priceLabel: string;
13
13
  typeLabel: string;
14
14
  showsStockQuantity: boolean;
15
+ tabSlug: string;
16
+ pluralLabel: string;
17
+ chipLabel: string;
18
+ browseRoute: string;
19
+ hideDefault: "closed";
20
+ sortOptions: readonly [{
21
+ readonly value: string;
22
+ readonly label: "Newest First";
23
+ }, {
24
+ readonly value: string;
25
+ readonly label: "Oldest First";
26
+ }, {
27
+ readonly value: string;
28
+ readonly label: "Reveal: Soonest";
29
+ }, {
30
+ readonly value: string;
31
+ readonly label: "Reveal: Furthest";
32
+ }, {
33
+ readonly value: string;
34
+ readonly label: "Entry: Low to High";
35
+ }, {
36
+ readonly value: string;
37
+ readonly label: "Entry: High to Low";
38
+ }];
39
+ publicSortOptions: readonly [{
40
+ readonly value: string;
41
+ readonly label: "Newest First";
42
+ }, {
43
+ readonly value: string;
44
+ readonly label: "Oldest First";
45
+ }, {
46
+ readonly value: string;
47
+ readonly label: "Reveal: Soonest";
48
+ }, {
49
+ readonly value: string;
50
+ readonly label: "Reveal: Furthest";
51
+ }, {
52
+ readonly value: string;
53
+ readonly label: "Entry: Low to High";
54
+ }, {
55
+ readonly value: string;
56
+ readonly label: "Entry: High to Low";
57
+ }];
58
+ extraFacetKeys: readonly string[];
15
59
  };
@@ -1,5 +1,7 @@
1
1
  import { LISTING_TYPE_CAPABILITIES } from "../capabilities";
2
2
  import { ROUTES } from "../../../../next/routing/route-map";
3
+ import { TABLE_KEYS } from "../../../../constants/table-keys";
4
+ import { PRIZE_DRAW_SORT_OPTIONS, PRIZE_DRAW_PUBLIC_SORT_OPTIONS, } from "../../../../features/products/constants/sieve";
3
5
  export const LISTING_TYPE = "prize-draw";
4
6
  export const capability = LISTING_TYPE_CAPABILITIES["prize-draw"];
5
7
  export const config = {
@@ -11,4 +13,12 @@ export const config = {
11
13
  priceLabel: "Price (₹)",
12
14
  typeLabel: "Prize Draw",
13
15
  showsStockQuantity: false,
16
+ tabSlug: "prize-draws",
17
+ pluralLabel: "Prize Draws",
18
+ chipLabel: "Prize Draws",
19
+ browseRoute: String(ROUTES.PUBLIC.PRIZE_DRAWS),
20
+ hideDefault: "closed",
21
+ sortOptions: PRIZE_DRAW_SORT_OPTIONS,
22
+ publicSortOptions: PRIZE_DRAW_PUBLIC_SORT_OPTIONS,
23
+ extraFacetKeys: [TABLE_KEYS.PRIZE_REVEAL_STATUS],
14
24
  };
@@ -12,4 +12,63 @@ export declare const config: {
12
12
  priceLabel: string;
13
13
  typeLabel: string;
14
14
  showsStockQuantity: boolean;
15
+ tabSlug: string;
16
+ pluralLabel: string;
17
+ chipLabel: string;
18
+ browseRoute: string;
19
+ hideDefault: "sold";
20
+ sortOptions: readonly [{
21
+ readonly value: string;
22
+ readonly label: "Newest First";
23
+ }, {
24
+ readonly value: string;
25
+ readonly label: "Oldest First";
26
+ }, {
27
+ readonly value: string;
28
+ readonly label: "Price: Low to High";
29
+ }, {
30
+ readonly value: string;
31
+ readonly label: "Price: High to Low";
32
+ }, {
33
+ readonly value: string;
34
+ readonly label: "Name: A–Z";
35
+ }, {
36
+ readonly value: string;
37
+ readonly label: "Name: Z–A";
38
+ }, {
39
+ readonly value: string;
40
+ readonly label: "Featured First";
41
+ }, {
42
+ readonly value: string;
43
+ readonly label: "Promoted First";
44
+ }, {
45
+ readonly value: string;
46
+ readonly label: "Recently Updated";
47
+ }, {
48
+ readonly value: string;
49
+ readonly label: "Most Viewed";
50
+ }];
51
+ publicSortOptions: readonly [{
52
+ readonly value: string;
53
+ readonly label: "Newest First";
54
+ }, {
55
+ readonly value: string;
56
+ readonly label: "Oldest First";
57
+ }, {
58
+ readonly value: string;
59
+ readonly label: "Price: Low to High";
60
+ }, {
61
+ readonly value: string;
62
+ readonly label: "Price: High to Low";
63
+ }, {
64
+ readonly value: string;
65
+ readonly label: "Name: A–Z";
66
+ }, {
67
+ readonly value: string;
68
+ readonly label: "Name: Z–A";
69
+ }, {
70
+ readonly value: string;
71
+ readonly label: "Most Viewed";
72
+ }];
73
+ extraFacetKeys: readonly string[];
15
74
  };
@@ -1,5 +1,6 @@
1
1
  import { LISTING_TYPE_CAPABILITIES } from "../capabilities";
2
2
  import { ROUTES } from "../../../../next/routing/route-map";
3
+ import { STANDARD_SORT_OPTIONS, STANDARD_PUBLIC_SORT_OPTIONS, } from "../../../../features/products/constants/sieve";
3
4
  export const LISTING_TYPE = "standard";
4
5
  export const capability = LISTING_TYPE_CAPABILITIES.standard;
5
6
  export const config = {
@@ -11,4 +12,12 @@ export const config = {
11
12
  priceLabel: "Price (₹)",
12
13
  typeLabel: "Product",
13
14
  showsStockQuantity: true,
15
+ tabSlug: "products",
16
+ pluralLabel: "Products",
17
+ chipLabel: "Standard",
18
+ browseRoute: String(ROUTES.PUBLIC.PRODUCTS),
19
+ hideDefault: "sold",
20
+ sortOptions: STANDARD_SORT_OPTIONS,
21
+ publicSortOptions: STANDARD_PUBLIC_SORT_OPTIONS,
22
+ extraFacetKeys: [],
14
23
  };
@@ -12,4 +12,63 @@ export declare const config: {
12
12
  priceLabel: string;
13
13
  typeLabel: string;
14
14
  showsStockQuantity: boolean;
15
+ tabSlug: string;
16
+ pluralLabel: string;
17
+ chipLabel: string;
18
+ browseRoute: string;
19
+ hideDefault: "sold";
20
+ sortOptions: readonly [{
21
+ readonly value: string;
22
+ readonly label: "Newest First";
23
+ }, {
24
+ readonly value: string;
25
+ readonly label: "Oldest First";
26
+ }, {
27
+ readonly value: string;
28
+ readonly label: "Price: Low to High";
29
+ }, {
30
+ readonly value: string;
31
+ readonly label: "Price: High to Low";
32
+ }, {
33
+ readonly value: string;
34
+ readonly label: "Name: A–Z";
35
+ }, {
36
+ readonly value: string;
37
+ readonly label: "Name: Z–A";
38
+ }, {
39
+ readonly value: string;
40
+ readonly label: "Featured First";
41
+ }, {
42
+ readonly value: string;
43
+ readonly label: "Promoted First";
44
+ }, {
45
+ readonly value: string;
46
+ readonly label: "Recently Updated";
47
+ }, {
48
+ readonly value: string;
49
+ readonly label: "Most Viewed";
50
+ }];
51
+ publicSortOptions: readonly [{
52
+ readonly value: string;
53
+ readonly label: "Newest First";
54
+ }, {
55
+ readonly value: string;
56
+ readonly label: "Oldest First";
57
+ }, {
58
+ readonly value: string;
59
+ readonly label: "Price: Low to High";
60
+ }, {
61
+ readonly value: string;
62
+ readonly label: "Price: High to Low";
63
+ }, {
64
+ readonly value: string;
65
+ readonly label: "Name: A–Z";
66
+ }, {
67
+ readonly value: string;
68
+ readonly label: "Name: Z–A";
69
+ }, {
70
+ readonly value: string;
71
+ readonly label: "Most Viewed";
72
+ }];
73
+ extraFacetKeys: readonly string[];
15
74
  };
@@ -1,5 +1,6 @@
1
1
  import { LISTING_TYPE_CAPABILITIES } from "../capabilities";
2
2
  import { ROUTES } from "../../../../next/routing/route-map";
3
+ import { STANDARD_SORT_OPTIONS, STANDARD_PUBLIC_SORT_OPTIONS, } from "../../../../features/products/constants/sieve";
3
4
  export const LISTING_TYPE = "stickers";
4
5
  export const capability = LISTING_TYPE_CAPABILITIES.stickers;
5
6
  export const config = {
@@ -11,4 +12,15 @@ export const config = {
11
12
  priceLabel: "Price (₹)",
12
13
  typeLabel: "Stickers",
13
14
  showsStockQuantity: true,
15
+ tabSlug: "stickers",
16
+ pluralLabel: "Stickers",
17
+ chipLabel: "Stickers",
18
+ // Stickers share the combined `/art` browse page with art prints — they
19
+ // have no page of their own, which is why this points at ART rather than
20
+ // a `/stickers` route that does not exist.
21
+ browseRoute: String(ROUTES.PUBLIC.ART),
22
+ hideDefault: "sold",
23
+ sortOptions: STANDARD_SORT_OPTIONS,
24
+ publicSortOptions: STANDARD_PUBLIC_SORT_OPTIONS,
25
+ extraFacetKeys: [],
14
26
  };
package/dist/client.d.ts CHANGED
@@ -188,6 +188,8 @@ export { UserSidebar } from "./features/account/components/UserSidebar";
188
188
  export type { UserSidebarProps, UserNavItem, UserNavGroup } from "./features/account/components/UserSidebar";
189
189
  export { CouponsIndexListing } from "./features/promotions/components/CouponsIndexListing";
190
190
  export type { CouponsIndexListingProps } from "./features/promotions/components/CouponsIndexListing";
191
+ export { CouponHelpDetails } from "./features/promotions/components/CouponHelpDetails";
192
+ export type { CouponHelpDetailsProps } from "./features/promotions/components/CouponHelpDetails";
191
193
  export { NotificationBell } from "./features/account/components/NotificationBell";
192
194
  export { NotificationPreferencesPanel } from "./features/account/components/NotificationPreferencesPanel";
193
195
  export type { NotificationPreferencesPanelProps } from "./features/account/components/NotificationPreferencesPanel";
@@ -205,7 +207,9 @@ export { ProtectedRoute, AuthStatusPanel, ForgotPasswordView, LoginForm, Registe
205
207
  export type { AuthGuardUser, ForgotPasswordViewProps, LoginFormProps, LoginFormValues, RegisterFormProps, RegisterFormValues, ResetPasswordViewProps, VerifyEmailViewProps, } from "./features/auth/index";
206
208
  export { useLogout, useLogin, useGoogleLogin, useLinkGoogleAccount, useRegister, useForgotPassword, useResetPassword, useVerifyEmail, useChangeEmail } from "./features/auth/index";
207
209
  export type { LoginCredentials, RegisterData, ForgotPasswordData, ResetPasswordData, VerifyEmailData, ChangeEmailData } from "./features/auth/index";
208
- export { CartView, CartItemRow, CartSummary, CartDrawer, CheckoutView, CheckoutSuccessView, CheckoutAddressStep, useGuestCart, useCartCount, useAddToCart, useCart, useGuestCartMerge, useCartQuery } from "./features/cart/index";
210
+ export { CartView, CartItemRow, CartSummary, CartPriceBreakdown, CartDrawer, CheckoutView, CheckoutSuccessView, CheckoutAddressStep, useGuestCart, useCartCount, useAddToCart, useCart, useGuestCartMerge, useCartQuery } from "./features/cart/index";
211
+ export { StoreAddonsPicker } from "./features/cart/index";
212
+ export type { CartPriceBreakdownData, CartPriceBreakdownStore, StoreAddonsValue, StoreAddonsRates } from "./features/cart/index";
209
213
  export { getCartOps, CART_OPS_CHANGE_EVENT } from "./features/cart/utils/pending-ops";
210
214
  export type { CartOp } from "./features/cart/utils/pending-ops";
211
215
  export type { CartItem, CartItemMeta, CartData, GuestCartItem } from "./features/cart/index";
@@ -245,7 +249,9 @@ export type { MarketplaceBundleCardProps, MarketplaceBundleCardData, Marketplace
245
249
  export { CompareOverlay } from "./features/products/components/CompareOverlay";
246
250
  export type { CompareOverlayProps, CompareOverlayLabels, CompareProductLike, } from "./features/products/components/CompareOverlay";
247
251
  export { COMPARE_MAX_ITEMS } from "./features/products/constants/action-defs";
248
- export { STANDARD_SORT_OPTIONS, STANDARD_PUBLIC_SORT_OPTIONS, AUCTION_SORT_OPTIONS, AUCTION_PUBLIC_SORT_OPTIONS, PREORDER_SORT_OPTIONS, BUNDLE_SORT_OPTIONS, PRIZE_DRAW_SORT_OPTIONS, SORT_OPTIONS_BY_LISTING_TYPE, } from "./features/products/constants/sieve";
252
+ export { STANDARD_SORT_OPTIONS, STANDARD_PUBLIC_SORT_OPTIONS, AUCTION_SORT_OPTIONS, AUCTION_PUBLIC_SORT_OPTIONS, PREORDER_SORT_OPTIONS, PREORDER_PUBLIC_SORT_OPTIONS, BUNDLE_SORT_OPTIONS, PRIZE_DRAW_SORT_OPTIONS, PRIZE_DRAW_PUBLIC_SORT_OPTIONS, } from "./features/products/constants/sieve";
253
+ export { sortOptionsFor, commonSortOptionsFor, hideDefaultsFor, } from "./_internal/shared/listing-types/_registry";
254
+ export type { ListingHideDefault } from "./_internal/shared/listing-types/_registry";
249
255
  export type { SortOption } from "./features/products/constants/sieve";
250
256
  export { MessagesView } from "./features/account/components/MessagesView";
251
257
  export type { MessagesViewProps, MessagesViewLabels } from "./features/account/components/MessagesView";
@@ -296,6 +302,10 @@ export type { UserAccountHubViewProps, UserAccountHubViewLabels, UserOrdersViewP
296
302
  export { useOrders, useOrder, OrdersList } from "./features/orders/index";
297
303
  export { OrderStatusTimeline } from "./features/orders/components/OrderStatusTimeline";
298
304
  export type { OrderStatusTimelineProps } from "./features/orders/components/OrderStatusTimeline";
305
+ export { CountdownDisplay } from "./ui/components/CountdownDisplay";
306
+ export type { CountdownDisplayProps } from "./ui/components/CountdownDisplay";
307
+ export { OrderAddonBadges } from "./features/orders/components/OrderAddonBadges";
308
+ export type { OrderAddonBadgesOrder, OrderAddonBadgesProps } from "./features/orders/components/OrderAddonBadges";
299
309
  export { MANUAL_PAYMENT_METHODS, isManualPaymentMethod, PAYMENT_REVIEW_QUEUE_MODES, isPaymentReviewQueueMode, PAYMENT_WINDOW_MINUTES, } from "./features/orders/constants/payment-window";
300
310
  export type { PaymentReviewQueueMode } from "./features/orders/constants/payment-window";
301
311
  export { UserOrderTrackView } from "./features/account/components/UserOrderTrackView";
package/dist/client.js CHANGED
@@ -228,6 +228,7 @@ export { TourProvider, useTour } from "./_internal/client/features/tour/TourProv
228
228
  export { apiClient, ApiClientError } from "./http/index";
229
229
  export { UserSidebar } from "./features/account/components/UserSidebar";
230
230
  export { CouponsIndexListing } from "./features/promotions/components/CouponsIndexListing";
231
+ export { CouponHelpDetails } from "./features/promotions/components/CouponHelpDetails";
231
232
  export { NotificationBell } from "./features/account/components/NotificationBell";
232
233
  export { NotificationPreferencesPanel } from "./features/account/components/NotificationPreferencesPanel";
233
234
  export { LinkedAccountsSection } from "./features/account/components/LinkedAccountsSection";
@@ -237,7 +238,8 @@ export { PAGE_VIEW_ENTITY_TYPES } from "./features/analytics/types";
237
238
  export { AuctionBidsTable } from "./features/auctions/components/AuctionBidsTable";
238
239
  export { ProtectedRoute, AuthStatusPanel, ForgotPasswordView, LoginForm, RegisterForm, ResetPasswordView, VerifyEmailView } from "./features/auth/index";
239
240
  export { useLogout, useLogin, useGoogleLogin, useLinkGoogleAccount, useRegister, useForgotPassword, useResetPassword, useVerifyEmail, useChangeEmail } from "./features/auth/index";
240
- export { CartView, CartItemRow, CartSummary, CartDrawer, CheckoutView, CheckoutSuccessView, CheckoutAddressStep, useGuestCart, useCartCount, useAddToCart, useCart, useGuestCartMerge, useCartQuery } from "./features/cart/index";
241
+ export { CartView, CartItemRow, CartSummary, CartPriceBreakdown, CartDrawer, CheckoutView, CheckoutSuccessView, CheckoutAddressStep, useGuestCart, useCartCount, useAddToCart, useCart, useGuestCartMerge, useCartQuery } from "./features/cart/index";
242
+ export { StoreAddonsPicker } from "./features/cart/index";
241
243
  export { getCartOps, CART_OPS_CHANGE_EVENT } from "./features/cart/utils/pending-ops";
242
244
  export { useAddresses, useCreateAddress, useUpdateAddress, useDeleteAddress, useSetDefaultAddress, useAddress } from "./features/account/index";
243
245
  export { AddressBook, AddressCard, AddressForm } from "./features/account/index";
@@ -261,7 +263,9 @@ export { InteractiveProductCard } from "./features/products/index";
261
263
  export { MarketplaceBundleCard } from "./features/products/components/MarketplaceBundleCard";
262
264
  export { CompareOverlay } from "./features/products/components/CompareOverlay";
263
265
  export { COMPARE_MAX_ITEMS } from "./features/products/constants/action-defs";
264
- export { STANDARD_SORT_OPTIONS, STANDARD_PUBLIC_SORT_OPTIONS, AUCTION_SORT_OPTIONS, AUCTION_PUBLIC_SORT_OPTIONS, PREORDER_SORT_OPTIONS, BUNDLE_SORT_OPTIONS, PRIZE_DRAW_SORT_OPTIONS, SORT_OPTIONS_BY_LISTING_TYPE, } from "./features/products/constants/sieve";
266
+ export { STANDARD_SORT_OPTIONS, STANDARD_PUBLIC_SORT_OPTIONS, AUCTION_SORT_OPTIONS, AUCTION_PUBLIC_SORT_OPTIONS, PREORDER_SORT_OPTIONS, PREORDER_PUBLIC_SORT_OPTIONS, BUNDLE_SORT_OPTIONS, PRIZE_DRAW_SORT_OPTIONS, PRIZE_DRAW_PUBLIC_SORT_OPTIONS, } from "./features/products/constants/sieve";
267
+ // Derived from the listing-type plugin registry — see the note in index.ts.
268
+ export { sortOptionsFor, commonSortOptionsFor, hideDefaultsFor, } from "./_internal/shared/listing-types/_registry";
265
269
  // Messages — RTDB-pinged Firestore conversations (D5 + VC7)
266
270
  export { MessagesView } from "./features/account/components/MessagesView";
267
271
  export { ChatList } from "./features/account/components/ChatList";
@@ -298,6 +302,8 @@ export { SellerPayoutSettingsView, SellerShippingView, SellerReviewsView, Seller
298
302
  export { UserAccountHubView, UserOrdersView, UserBidsView, OrderDetailView, UserNotificationsView, UserReturnsView, UserSupportView, useNotifications } from "./features/account/index";
299
303
  export { useOrders, useOrder, OrdersList } from "./features/orders/index";
300
304
  export { OrderStatusTimeline } from "./features/orders/components/OrderStatusTimeline";
305
+ export { CountdownDisplay } from "./ui/components/CountdownDisplay";
306
+ export { OrderAddonBadges } from "./features/orders/components/OrderAddonBadges";
301
307
  // Manual-payment (cash / UPI / EMI) shared constants — pure data + predicates,
302
308
  // no server deps. Used by the buyer proof-upload page and order-detail CTAs.
303
309
  export { MANUAL_PAYMENT_METHODS, isManualPaymentMethod, PAYMENT_REVIEW_QUEUE_MODES, isPaymentReviewQueueMode, PAYMENT_WINDOW_MINUTES, } from "./features/orders/constants/payment-window";
@@ -234,6 +234,8 @@ export declare const CART_ENDPOINTS: {
234
234
  readonly BY_ITEM_ID: (itemId: string) => string;
235
235
  readonly VALIDATE: "/api/cart/validate";
236
236
  readonly SELECTION: "/api/cart/selection";
237
+ /** Per-store paid add-on selections — the source of truth for what's charged. */
238
+ readonly ADDONS: "/api/cart/addons";
237
239
  readonly COUPON: "/api/cart/coupon";
238
240
  };
239
241
  export declare const CATEGORY_ENDPOINTS: {
@@ -686,6 +688,8 @@ export declare const API_ENDPOINTS: {
686
688
  readonly BY_ITEM_ID: (itemId: string) => string;
687
689
  readonly VALIDATE: "/api/cart/validate";
688
690
  readonly SELECTION: "/api/cart/selection";
691
+ /** Per-store paid add-on selections — the source of truth for what's charged. */
692
+ readonly ADDONS: "/api/cart/addons";
689
693
  readonly COUPON: "/api/cart/coupon";
690
694
  };
691
695
  readonly CATEGORIES: {
@@ -1140,6 +1144,8 @@ export declare const API_ROUTES: {
1140
1144
  readonly BY_ITEM_ID: (itemId: string) => string;
1141
1145
  readonly VALIDATE: "/api/cart/validate";
1142
1146
  readonly SELECTION: "/api/cart/selection";
1147
+ /** Per-store paid add-on selections — the source of truth for what's charged. */
1148
+ readonly ADDONS: "/api/cart/addons";
1143
1149
  readonly COUPON: "/api/cart/coupon";
1144
1150
  };
1145
1151
  readonly CATEGORIES: {
@@ -274,6 +274,8 @@ export const CART_ENDPOINTS = {
274
274
  BY_ITEM_ID: (itemId) => `/api/cart/${encodeURIComponent(itemId)}`,
275
275
  VALIDATE: "/api/cart/validate",
276
276
  SELECTION: "/api/cart/selection",
277
+ /** Per-store paid add-on selections — the source of truth for what's charged. */
278
+ ADDONS: "/api/cart/addons",
277
279
  COUPON: "/api/cart/coupon",
278
280
  };
279
281
  // ---------------------------------------------------------------------------
@@ -75,7 +75,19 @@ export declare const PRODUCT_FIELDS: {
75
75
  readonly PRIZE_CURRENT_ENTRIES: "prizeCurrentEntries";
76
76
  readonly PRIZE_MAX_ENTRIES: "prizeMaxEntries";
77
77
  readonly PRIZE_DRAW_MODE: "prizeDrawMode";
78
+ readonly PRICE_PER_ENTRY: "pricePerEntry";
78
79
  readonly IS_PART_OF_BUNDLE: "isPartOfBundle";
80
+ readonly IS_ON_SALE: "isOnSale";
81
+ readonly IS_TEST_DATA: "isTestData";
82
+ readonly BIDS_HAVE_STARTED: "bidsHaveStarted";
83
+ readonly PRE_ORDER_CLOSED: "preOrderClosed";
84
+ /**
85
+ * The Firestore field. NOTE the `Id` suffix: the URL/table key is
86
+ * `sublistingCategory` (TABLE_KEYS.SUBLISTING_CATEGORY) but the stored field
87
+ * is `sublistingCategoryId`. Emitting the table key as a filter field name
88
+ * matches zero documents — always map across via this constant.
89
+ */
90
+ readonly SUBLISTING_CATEGORY_ID: "sublistingCategoryId";
79
91
  readonly SEARCH_TOKENS: "searchTokens";
80
92
  readonly CREATED_AT: "createdAt";
81
93
  readonly UPDATED_AT: "updatedAt";
@@ -80,7 +80,19 @@ export const PRODUCT_FIELDS = {
80
80
  PRIZE_CURRENT_ENTRIES: "prizeCurrentEntries",
81
81
  PRIZE_MAX_ENTRIES: "prizeMaxEntries",
82
82
  PRIZE_DRAW_MODE: "prizeDrawMode",
83
+ PRICE_PER_ENTRY: "pricePerEntry",
83
84
  IS_PART_OF_BUNDLE: "isPartOfBundle",
85
+ IS_ON_SALE: "isOnSale",
86
+ IS_TEST_DATA: "isTestData",
87
+ BIDS_HAVE_STARTED: "bidsHaveStarted",
88
+ PRE_ORDER_CLOSED: "preOrderClosed",
89
+ /**
90
+ * The Firestore field. NOTE the `Id` suffix: the URL/table key is
91
+ * `sublistingCategory` (TABLE_KEYS.SUBLISTING_CATEGORY) but the stored field
92
+ * is `sublistingCategoryId`. Emitting the table key as a filter field name
93
+ * matches zero documents — always map across via this constant.
94
+ */
95
+ SUBLISTING_CATEGORY_ID: "sublistingCategoryId",
84
96
  SEARCH_TOKENS: "searchTokens",
85
97
  CREATED_AT: "createdAt",
86
98
  UPDATED_AT: "updatedAt",