@mohasinac/appkit 4.56.0 → 4.57.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.
- package/dist/.build-stamp.json +3 -3
- package/dist/_internal/server/features/checkout/actions.d.ts +31 -0
- package/dist/_internal/server/features/checkout/actions.js +117 -5
- package/dist/_internal/server/features/orders/actions.d.ts +30 -0
- package/dist/_internal/server/features/orders/actions.js +103 -0
- package/dist/_internal/server/features/orders/adapters.js +7 -0
- package/dist/_internal/shared/actions/action-registry.js +53 -0
- package/dist/_internal/shared/shipping/quote.js +5 -6
- package/dist/client.d.ts +21 -0
- package/dist/client.js +2 -0
- package/dist/features/about/components/PublicProfileView.js +2 -1
- package/dist/features/account/components/UserOrdersView.js +25 -3
- package/dist/features/admin/components/OwnerQuickActions.d.ts +1 -1
- package/dist/features/admin/components/OwnerQuickActions.js +53 -6
- package/dist/features/blog/components/BlogPostView.js +2 -1
- package/dist/features/cart/components/CartPriceBreakdown.d.ts +2 -0
- package/dist/features/cart/components/CartPriceBreakdown.js +1 -1
- package/dist/features/categories/components/FranchiseDetailPageView.js +3 -1
- package/dist/features/faq/components/FAQPageContent.js +17 -4
- package/dist/features/faq/constants/help-guides.d.ts +36 -0
- package/dist/features/faq/constants/help-guides.js +64 -0
- package/dist/features/homepage/components/HeroCarousel.js +3 -1
- package/dist/features/homepage/lib/section-renderer.js +2 -1
- package/dist/features/orders/components/EmiInstallmentsPanel.d.ts +19 -0
- package/dist/features/orders/components/EmiInstallmentsPanel.js +57 -0
- package/dist/features/orders/components/index.d.ts +1 -0
- package/dist/features/orders/components/index.js +1 -0
- package/dist/features/orders/schemas/index.d.ts +2 -2
- package/dist/features/orders/types/index.d.ts +15 -0
- package/dist/features/points/repository/points.repository.js +5 -5
- package/dist/features/points/schemas/firestore.d.ts +16 -0
- package/dist/features/points/schemas/firestore.js +17 -0
- package/dist/features/reviews/components/ReviewDetailPageView.js +3 -2
- package/dist/features/stores/components/StoreHeader.js +3 -1
- package/dist/next/routing/route-map.d.ts +4 -0
- package/dist/next/routing/route-map.js +2 -0
- package/dist/schemas/registry.d.ts +2 -2
- package/dist/seed/_helpers/category-models/chunk0.d.ts +2 -0
- package/dist/seed/_helpers/category-models/chunk0.js +2648 -0
- package/dist/seed/_helpers/category-models/chunk1.d.ts +2 -0
- package/dist/seed/_helpers/category-models/chunk1.js +2318 -0
- package/dist/seed/_helpers/category-models/chunk2.d.ts +2 -0
- package/dist/seed/_helpers/category-models/chunk2.js +2560 -0
- package/dist/seed/_helpers/category-models/chunk3.d.ts +2 -0
- package/dist/seed/_helpers/category-models/chunk3.js +2196 -0
- package/dist/seed/_helpers/category-models/chunk4.d.ts +2 -0
- package/dist/seed/_helpers/category-models/chunk4.js +1732 -0
- package/dist/seed/_helpers/category-models.d.ts +9 -2
- package/dist/seed/_helpers/category-models.js +19 -1368
- package/dist/server.d.ts +3 -1
- package/dist/server.js +11 -0
- package/package.json +1 -1
|
@@ -4,6 +4,8 @@ import { MediaImage } from "../../media/MediaImage.js";
|
|
|
4
4
|
import { normalizeRichTextHtml } from "../../../utils/string.formatter.js";
|
|
5
5
|
import { ShareButton } from "../../products/components/ShareButton.js";
|
|
6
6
|
import { SellerTrustBadge } from "../../scams/components/SellerTrustBadge.js";
|
|
7
|
+
import { OwnerQuickActions } from "../../admin/components/OwnerQuickActions.js";
|
|
8
|
+
import { ROUTES } from "../../../next/routing/route-map.js";
|
|
7
9
|
const __O = {
|
|
8
10
|
hidden: "overflow-hidden",
|
|
9
11
|
};
|
|
@@ -12,7 +14,7 @@ const CLS_STARS = "inline-flex items-center gap-[var(--appkit-space-1)] text-war
|
|
|
12
14
|
const CLS_FOLLOW_BTN = "rounded-lg border border-warning px-[var(--appkit-space-4)] py-[var(--appkit-space-2)] text-[length:var(--appkit-text-sm)] font-medium text-warning hover:bg-warning-surface transition-colors";
|
|
13
15
|
const CLS_WARN_BANNER = "mt-3 rounded-lg bg-warning-surface dark:bg-warning-surface border border-warning dark:border-warning px-[var(--appkit-space-3)] py-[var(--appkit-space-2)] text-[length:var(--appkit-text-sm)] text-warning dark:text-warning";
|
|
14
16
|
export function StoreHeader({ store, labels = {}, onFollow, className = "", trust, }) {
|
|
15
|
-
return (_jsxs(Section, { surface: "default", border: "bottom", className: className, children: [store.storeBannerURL && (_jsx(Div, { className: `relative h-40 md:h-56 ${__O.hidden} bg-[var(--appkit-color-surface)] bg-[var(--appkit-color-surface-elevated)]`, children: _jsx(MediaImage, { src: store.storeBannerURL, alt: `${store.storeName} banner`, size: "banner" }) })), _jsxs(Div, { paddingX: "x-page", className: "max-w-7xl mx-auto", padding: "y-md", children: [_jsxs(Row, { align: "end", gap: "md", children: [store.storeLogoURL ? (_jsx(Div, { className: "relative -mt-8 h-16 w-16 border-2 border-white", rounded: "xl", shadow: "sm", overflow: "hidden", children: _jsx(MediaImage, { src: store.storeLogoURL, alt: store.storeName, size: "avatar" }) })) : (_jsx(Div, { className: CLS_AVATAR, children: store.storeName[0]?.toUpperCase() })), _jsxs(Div, { className: "flex-1 min-w-0", children: [_jsxs(Row, { className: "mb-0.5", align: "center", gap: "sm", wrap: true, children: [_jsx(Heading, { level: 1, className: "text-[var(--appkit-color-text)]", size: "xl", weight: "bold", children: store.storeName }), store.averageRating != null && store.averageRating > 0 && (_jsxs(Span, { size: "sm", weight: "medium", className: CLS_STARS, children: ["\u2605 ", store.averageRating.toFixed(1)] })), trust && _jsx(SellerTrustBadge, { trust: trust })] }), _jsxs(Row, { textSize: "xs", className: "text-[var(--appkit-color-text-muted)] mb-0.5", gap: "3", children: [store.category && _jsx(Span, { transform: "capitalize", children: store.category }), store.totalProducts != null && store.totalProducts > 0 && (_jsxs(Span, { children: [store.totalProducts, " ", labels.products ?? "products"] })), store.totalReviews != null && store.totalReviews > 0 && (_jsxs(Span, { children: [store.totalReviews, " ", labels.reviews ?? "reviews"] })), store.itemsSold != null && store.itemsSold > 0 && (_jsxs(Span, { children: [store.itemsSold, " ", labels.sold ?? "sold"] }))] }), store.storeDescription && (_jsx(RichText, { html: normalizeRichTextHtml(store.storeDescription), copyableCode: true, className: "mt-0.5" }))] }), _jsxs(Row, { gap: "sm", align: "center", className: "shrink-0", children: [_jsx(ShareButton, { title: store.storeName }), onFollow && (_jsx(Button, { type: "button", variant: "outline", size: "sm", onClick: () => onFollow(store.storeSlug), className: CLS_FOLLOW_BTN, children: labels.follow ?? "Follow" }))] })] }), store.isVacationMode && (_jsx(Text, { className: CLS_WARN_BANNER, children: store.vacationMessage ??
|
|
17
|
+
return (_jsxs(Section, { surface: "default", border: "bottom", className: className, children: [store.storeBannerURL && (_jsx(Div, { className: `relative h-40 md:h-56 ${__O.hidden} bg-[var(--appkit-color-surface)] bg-[var(--appkit-color-surface-elevated)]`, children: _jsx(MediaImage, { src: store.storeBannerURL, alt: `${store.storeName} banner`, size: "banner" }) })), _jsxs(Div, { paddingX: "x-page", className: "max-w-7xl mx-auto", padding: "y-md", children: [_jsxs(Row, { align: "end", gap: "md", children: [store.storeLogoURL ? (_jsx(Div, { className: "relative -mt-8 h-16 w-16 border-2 border-white", rounded: "xl", shadow: "sm", overflow: "hidden", children: _jsx(MediaImage, { src: store.storeLogoURL, alt: store.storeName, size: "avatar" }) })) : (_jsx(Div, { className: CLS_AVATAR, children: store.storeName[0]?.toUpperCase() })), _jsxs(Div, { className: "flex-1 min-w-0", children: [_jsxs(Row, { className: "mb-0.5", align: "center", gap: "sm", wrap: true, children: [_jsx(Heading, { level: 1, className: "text-[var(--appkit-color-text)]", size: "xl", weight: "bold", children: store.storeName }), store.averageRating != null && store.averageRating > 0 && (_jsxs(Span, { size: "sm", weight: "medium", className: CLS_STARS, children: ["\u2605 ", store.averageRating.toFixed(1)] })), trust && _jsx(SellerTrustBadge, { trust: trust }), _jsx(OwnerQuickActions, { resource: "STORE", placement: "detail", editHref: String(ROUTES.ADMIN.STORE_DETAIL(store.storeSlug)), recordLabel: store.storeName })] }), _jsxs(Row, { textSize: "xs", className: "text-[var(--appkit-color-text-muted)] mb-0.5", gap: "3", children: [store.category && _jsx(Span, { transform: "capitalize", children: store.category }), store.totalProducts != null && store.totalProducts > 0 && (_jsxs(Span, { children: [store.totalProducts, " ", labels.products ?? "products"] })), store.totalReviews != null && store.totalReviews > 0 && (_jsxs(Span, { children: [store.totalReviews, " ", labels.reviews ?? "reviews"] })), store.itemsSold != null && store.itemsSold > 0 && (_jsxs(Span, { children: [store.itemsSold, " ", labels.sold ?? "sold"] }))] }), store.storeDescription && (_jsx(RichText, { html: normalizeRichTextHtml(store.storeDescription), copyableCode: true, className: "mt-0.5" }))] }), _jsxs(Row, { gap: "sm", align: "center", className: "shrink-0", children: [_jsx(ShareButton, { title: store.storeName }), onFollow && (_jsx(Button, { type: "button", variant: "outline", size: "sm", onClick: () => onFollow(store.storeSlug), className: CLS_FOLLOW_BTN, children: labels.follow ?? "Follow" }))] })] }), store.isVacationMode && (_jsx(Text, { className: CLS_WARN_BANNER, children: store.vacationMessage ??
|
|
16
18
|
labels.vacationMode ??
|
|
17
19
|
"Store is on vacation mode" }))] })] }));
|
|
18
20
|
}
|
|
@@ -177,6 +177,8 @@ export declare const DEFAULT_ROUTE_MAP: {
|
|
|
177
177
|
readonly NOTIFICATIONS: "/user/notifications";
|
|
178
178
|
/** Plan §10 — claimed-coupons wallet (Active / Expired / Used tabs). */
|
|
179
179
|
readonly CLAIMED_COUPONS: "/user/coupons";
|
|
180
|
+
/** Points balance + ledger. 1 point = ₹1, spendable at checkout. */
|
|
181
|
+
readonly POINTS: "/user/points";
|
|
180
182
|
readonly BECOME_SELLER: "/user/become-seller";
|
|
181
183
|
readonly CART: "/cart";
|
|
182
184
|
readonly CHECKOUT: "/checkout";
|
|
@@ -610,6 +612,8 @@ export declare const ROUTES: {
|
|
|
610
612
|
readonly NOTIFICATIONS: "/user/notifications";
|
|
611
613
|
/** Plan §10 — claimed-coupons wallet (Active / Expired / Used tabs). */
|
|
612
614
|
readonly CLAIMED_COUPONS: "/user/coupons";
|
|
615
|
+
/** Points balance + ledger. 1 point = ₹1, spendable at checkout. */
|
|
616
|
+
readonly POINTS: "/user/points";
|
|
613
617
|
readonly BECOME_SELLER: "/user/become-seller";
|
|
614
618
|
readonly CART: "/cart";
|
|
615
619
|
readonly CHECKOUT: "/checkout";
|
|
@@ -278,6 +278,8 @@ export const DEFAULT_ROUTE_MAP = {
|
|
|
278
278
|
NOTIFICATIONS: "/user/notifications",
|
|
279
279
|
/** Plan §10 — claimed-coupons wallet (Active / Expired / Used tabs). */
|
|
280
280
|
CLAIMED_COUPONS: "/user/coupons",
|
|
281
|
+
/** Points balance + ledger. 1 point = ₹1, spendable at checkout. */
|
|
282
|
+
POINTS: "/user/points",
|
|
281
283
|
BECOME_SELLER: "/user/become-seller",
|
|
282
284
|
CART: "/cart",
|
|
283
285
|
CHECKOUT: "/checkout",
|
|
@@ -3036,6 +3036,7 @@ export declare const SCHEMAS: {
|
|
|
3036
3036
|
} | undefined;
|
|
3037
3037
|
offerId?: string | undefined;
|
|
3038
3038
|
orderType?: string | undefined;
|
|
3039
|
+
isNonRefundable?: boolean | undefined;
|
|
3039
3040
|
imageUrls?: string[] | undefined;
|
|
3040
3041
|
refundFeeDeducted?: number | undefined;
|
|
3041
3042
|
refundNetAmount?: number | undefined;
|
|
@@ -3072,7 +3073,6 @@ export declare const SCHEMAS: {
|
|
|
3072
3073
|
}[] | undefined;
|
|
3073
3074
|
emiRemainingBalance?: number | undefined;
|
|
3074
3075
|
emiComplete?: boolean | undefined;
|
|
3075
|
-
isNonRefundable?: boolean | undefined;
|
|
3076
3076
|
paymentBatchId?: string | undefined;
|
|
3077
3077
|
refunds?: {
|
|
3078
3078
|
type: "full" | "partial";
|
|
@@ -3184,6 +3184,7 @@ export declare const SCHEMAS: {
|
|
|
3184
3184
|
} | undefined;
|
|
3185
3185
|
offerId?: string | undefined;
|
|
3186
3186
|
orderType?: string | undefined;
|
|
3187
|
+
isNonRefundable?: boolean | undefined;
|
|
3187
3188
|
imageUrls?: string[] | undefined;
|
|
3188
3189
|
refundFeeDeducted?: number | undefined;
|
|
3189
3190
|
refundNetAmount?: number | undefined;
|
|
@@ -3220,7 +3221,6 @@ export declare const SCHEMAS: {
|
|
|
3220
3221
|
}[] | undefined;
|
|
3221
3222
|
emiRemainingBalance?: number | undefined;
|
|
3222
3223
|
emiComplete?: boolean | undefined;
|
|
3223
|
-
isNonRefundable?: boolean | undefined;
|
|
3224
3224
|
paymentBatchId?: string | undefined;
|
|
3225
3225
|
refunds?: {
|
|
3226
3226
|
type: "full" | "partial";
|