@instockng/storefront-ui 1.0.106 → 1.0.108
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/components/AssistantDrawer.d.ts +22 -0
- package/dist/components/AssistantDrawer.d.ts.map +1 -0
- package/dist/components/ProductAssistantChips.d.ts +13 -0
- package/dist/components/ProductAssistantChips.d.ts.map +1 -0
- package/dist/contexts/AssistantContext.d.ts +19 -0
- package/dist/contexts/AssistantContext.d.ts.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +144 -138
- package/dist/index10.mjs +103 -73
- package/dist/index100.mjs +53 -68
- package/dist/index101.mjs +6 -37
- package/dist/index102.mjs +4 -42
- package/dist/index103.mjs +179 -2
- package/dist/index104.mjs +53 -6
- package/dist/index105.mjs +69 -1134
- package/dist/index106.mjs +2 -20
- package/dist/index107.mjs +5 -54
- package/dist/index108.mjs +1126 -25
- package/dist/index109.mjs +20 -2
- package/dist/index11.mjs +74 -190
- package/dist/index110.mjs +55 -2
- package/dist/index111.mjs +33 -2
- package/dist/index112.mjs +2 -28
- package/dist/index113.mjs +2 -18
- package/dist/index114.mjs +2 -215
- package/dist/index115.mjs +26 -178
- package/dist/index116.mjs +10 -14
- package/dist/index117.mjs +209 -17
- package/dist/index118.mjs +173 -26
- package/dist/index119.mjs +17 -151
- package/dist/index12.mjs +172 -107
- package/dist/index120.mjs +12 -9
- package/dist/index121.mjs +24 -22
- package/dist/index122.mjs +148 -76
- package/dist/index123.mjs +13 -31
- package/dist/index124.mjs +24 -138
- package/dist/index125.mjs +78 -49
- package/dist/index126.mjs +32 -17
- package/dist/index127.mjs +139 -21
- package/dist/index128.mjs +51 -19
- package/dist/index129.mjs +16 -18
- package/dist/index13.mjs +127 -98
- package/dist/index130.mjs +18 -12
- package/dist/index131.mjs +15 -14
- package/dist/index132.mjs +17 -13
- package/dist/index133.mjs +14 -58
- package/dist/index134.mjs +15 -11
- package/dist/index135.mjs +14 -32
- package/dist/index136.mjs +57 -16
- package/dist/index137.mjs +11 -27
- package/dist/index138.mjs +31 -19
- package/dist/index139.mjs +17 -12
- package/dist/index14.mjs +94 -90
- package/dist/index140.mjs +27 -14
- package/dist/index141.mjs +20 -40
- package/dist/index142.mjs +11 -15
- package/dist/index143.mjs +17 -264
- package/dist/index144.mjs +40 -63
- package/dist/index145.mjs +22 -7
- package/dist/index146.mjs +268 -2
- package/dist/index147.mjs +70 -2
- package/dist/index148.mjs +7 -32
- package/dist/index149.mjs +2 -2
- package/dist/index15.mjs +84 -149
- package/dist/index150.mjs +2 -21
- package/dist/index151.mjs +31 -54
- package/dist/index152.mjs +2 -29
- package/dist/index153.mjs +20 -6
- package/dist/index154.mjs +53 -49
- package/dist/index155.mjs +29 -6
- package/dist/index156.mjs +6 -11
- package/dist/index157.mjs +49 -4
- package/dist/index158.mjs +5 -27
- package/dist/index159.mjs +12 -2
- package/dist/index16.mjs +157 -203
- package/dist/index160.mjs +6 -69
- package/dist/index161.mjs +27 -166
- package/dist/index162.mjs +2 -2
- package/dist/index163.mjs +70 -2
- package/dist/index164.mjs +167 -2
- package/dist/index165.mjs +2 -2
- package/dist/index166.mjs +2 -18
- package/dist/index167.mjs +2 -32
- package/dist/index168.mjs +2 -38
- package/dist/index169.mjs +11 -11
- package/dist/index17.mjs +198 -107
- package/dist/index170.mjs +25 -11
- package/dist/index171.mjs +38 -2
- package/dist/index172.mjs +11 -13
- package/dist/index173.mjs +11 -39
- package/dist/index174.mjs +2 -2
- package/dist/index175.mjs +15 -25
- package/dist/index176.mjs +39 -11
- package/dist/index178.mjs +30 -2
- package/dist/index179.mjs +18 -2
- package/dist/index18.mjs +97 -130
- package/dist/index181.mjs +2 -72
- package/dist/index182.mjs +2 -2
- package/dist/index183.mjs +2 -53
- package/dist/index184.mjs +72 -2
- package/dist/index185.mjs +2 -36
- package/dist/index186.mjs +38 -137
- package/dist/index187.mjs +2 -2
- package/dist/index188.mjs +36 -2
- package/dist/index189.mjs +147 -14
- package/dist/index19.mjs +140 -87
- package/dist/index191.mjs +2 -2
- package/dist/index192.mjs +10 -17
- package/dist/index193.mjs +2 -2
- package/dist/index194.mjs +2 -2
- package/dist/index195.mjs +18 -16
- package/dist/index196.mjs +2 -23
- package/dist/index197.mjs +2 -2
- package/dist/index198.mjs +24 -2
- package/dist/index199.mjs +23 -2
- package/dist/index2.mjs +30 -16
- package/dist/index20.mjs +82 -708
- package/dist/index200.mjs +2 -23
- package/dist/index201.mjs +2 -2
- package/dist/index202.mjs +2 -23
- package/dist/index203.mjs +23 -2
- package/dist/index204.mjs +2 -2
- package/dist/index205.mjs +23 -2
- package/dist/index206.mjs +2 -23
- package/dist/index207.mjs +2 -2
- package/dist/index208.mjs +2 -23
- package/dist/index209.mjs +23 -2
- package/dist/index21.mjs +718 -54
- package/dist/index210.mjs +2 -2
- package/dist/index211.mjs +23 -2
- package/dist/index212.mjs +2 -2
- package/dist/index213.mjs +2 -2
- package/dist/index215.mjs +2 -2
- package/dist/index216.mjs +2 -2
- package/dist/index217.mjs +2 -127
- package/dist/index218.mjs +2 -2
- package/dist/index219.mjs +2 -74
- package/dist/index22.mjs +263 -62
- package/dist/index220.mjs +123 -70
- package/dist/index221.mjs +2 -13
- package/dist/index222.mjs +74 -7
- package/dist/index223.mjs +73 -30
- package/dist/index224.mjs +30 -10
- package/dist/index225.mjs +10 -3
- package/dist/index226.mjs +3 -3
- package/dist/index227.mjs +3 -11
- package/dist/index228.mjs +13 -5
- package/dist/index229.mjs +7 -33
- package/dist/index23.mjs +44 -23
- package/dist/index230.mjs +11 -30
- package/dist/index231.mjs +5 -28
- package/dist/index232.mjs +33 -61
- package/dist/index233.mjs +31 -2
- package/dist/index234.mjs +28 -2
- package/dist/index235.mjs +61 -2
- package/dist/index236.mjs +2 -2
- package/dist/index237.mjs +108 -2
- package/dist/index238.mjs +2 -2
- package/dist/index239.mjs +2 -2
- package/dist/index24.mjs +55 -104
- package/dist/index240.mjs +2 -2
- package/dist/index241.mjs +2 -108
- package/dist/index242.mjs +2 -2
- package/dist/index244.mjs +2 -37
- package/dist/index245.mjs +2 -2
- package/dist/index246.mjs +2 -244
- package/dist/index247.mjs +37 -2
- package/dist/index248.mjs +2 -33
- package/dist/index249.mjs +2 -65
- package/dist/index25.mjs +62 -42
- package/dist/index250.mjs +243 -24
- package/dist/index251.mjs +2 -2
- package/dist/index252.mjs +33 -2
- package/dist/index253.mjs +65 -2
- package/dist/index254.mjs +25 -2
- package/dist/index255.mjs +2 -2
- package/dist/index256.mjs +2 -2
- package/dist/index257.mjs +2 -2
- package/dist/index259.mjs +2 -2
- package/dist/index26.mjs +22 -40
- package/dist/index260.mjs +2 -2
- package/dist/index261.mjs +2 -4
- package/dist/index262.mjs +2 -2
- package/dist/index263.mjs +2 -2
- package/dist/index264.mjs +4 -3
- package/dist/index265.mjs +2 -2
- package/dist/index266.mjs +2 -2
- package/dist/index267.mjs +3 -17
- package/dist/index268.mjs +2 -13
- package/dist/index269.mjs +2 -6
- package/dist/index27.mjs +107 -87
- package/dist/index270.mjs +17 -30
- package/dist/index271.mjs +13 -2
- package/dist/index272.mjs +6 -2
- package/dist/index273.mjs +29 -17
- package/dist/index274.mjs +2 -47
- package/dist/index275.mjs +2 -2
- package/dist/index276.mjs +18 -2
- package/dist/index277.mjs +47 -2
- package/dist/index278.mjs +2 -2
- package/dist/index279.mjs +2 -91
- package/dist/index28.mjs +42 -32
- package/dist/index280.mjs +2 -2
- package/dist/index282.mjs +91 -2
- package/dist/index283.mjs +2 -2
- package/dist/index284.mjs +5 -0
- package/dist/index285.mjs +5 -0
- package/dist/index286.mjs +5 -0
- package/dist/index29.mjs +42 -9
- package/dist/index3.mjs +7 -7
- package/dist/index30.mjs +84 -17
- package/dist/index31.mjs +29 -35
- package/dist/index32.mjs +8 -39
- package/dist/index33.mjs +21 -125
- package/dist/index34.mjs +35 -46
- package/dist/index35.mjs +38 -9
- package/dist/index36.mjs +121 -6
- package/dist/index37.mjs +49 -123
- package/dist/index38.mjs +11 -28
- package/dist/index39.mjs +11 -91
- package/dist/index4.mjs +34 -101
- package/dist/index40.mjs +121 -123
- package/dist/index41.mjs +28 -11
- package/dist/index42.mjs +91 -35
- package/dist/index43.mjs +116 -37
- package/dist/index44.mjs +9 -9
- package/dist/index45.mjs +33 -121
- package/dist/index46.mjs +42 -385
- package/dist/index47.mjs +10 -24
- package/dist/index48.mjs +122 -31
- package/dist/index49.mjs +388 -27
- package/dist/index5.mjs +92 -102
- package/dist/index50.mjs +24 -6
- package/dist/index51.mjs +30 -1431
- package/dist/index52.mjs +26 -68
- package/dist/index53.mjs +7 -2
- package/dist/index54.mjs +1425 -52
- package/dist/index55.mjs +69 -50
- package/dist/index56.mjs +2 -33
- package/dist/index57.mjs +59 -14
- package/dist/index58.mjs +47 -2259
- package/dist/index59.mjs +33 -36
- package/dist/index6.mjs +111 -15
- package/dist/index60.mjs +14 -43
- package/dist/index61.mjs +2256 -96
- package/dist/index62.mjs +36 -81
- package/dist/index63.mjs +43 -18
- package/dist/index64.mjs +102 -128
- package/dist/index65.mjs +45 -89
- package/dist/index66.mjs +15 -75
- package/dist/index67.mjs +84 -130
- package/dist/index68.mjs +84 -66
- package/dist/index69.mjs +69 -26
- package/dist/index7.mjs +15 -195
- package/dist/index70.mjs +138 -58
- package/dist/index71.mjs +82 -56
- package/dist/index72.mjs +28 -55
- package/dist/index73.mjs +79 -46
- package/dist/index74.mjs +58 -112
- package/dist/index75.mjs +47 -54
- package/dist/index76.mjs +60 -22
- package/dist/index77.mjs +135 -2
- package/dist/index78.mjs +68 -21
- package/dist/index79.mjs +4 -152
- package/dist/index8.mjs +136 -190
- package/dist/index80.mjs +23 -4
- package/dist/index81.mjs +2 -75
- package/dist/index82.mjs +153 -15
- package/dist/index83.mjs +21 -61
- package/dist/index84.mjs +69 -229
- package/dist/index85.mjs +15 -6
- package/dist/index86.mjs +55 -126
- package/dist/index87.mjs +33 -64
- package/dist/index88.mjs +40 -84
- package/dist/index89.mjs +229 -23
- package/dist/index9.mjs +240 -99
- package/dist/index90.mjs +5 -8
- package/dist/index91.mjs +125 -66
- package/dist/index92.mjs +67 -3
- package/dist/index93.mjs +87 -2
- package/dist/index94.mjs +24 -78
- package/dist/index95.mjs +7 -52
- package/dist/index96.mjs +74 -5
- package/dist/index97.mjs +3 -4
- package/dist/index98.mjs +2 -179
- package/dist/index99.mjs +79 -49
- package/dist/providers/StorefrontProvider.d.ts +3 -1
- package/dist/providers/StorefrontProvider.d.ts.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +1 -1
- package/src/components/AssistantDrawer.stories.tsx +90 -0
- package/src/components/AssistantDrawer.tsx +426 -0
- package/src/components/ProductAssistantChips.stories.tsx +42 -0
- package/src/components/ProductAssistantChips.tsx +64 -0
- package/src/contexts/AssistantContext.tsx +62 -0
- package/src/index.ts +11 -0
- package/src/providers/StorefrontProvider.tsx +17 -2
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface AssistantDrawerProps {
|
|
2
|
+
/** Controls drawer visibility */
|
|
3
|
+
isOpen: boolean;
|
|
4
|
+
/** Callback when drawer should close */
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
/** API base URL */
|
|
7
|
+
apiUrl: string;
|
|
8
|
+
/** Brand slug for context */
|
|
9
|
+
brandSlug: string;
|
|
10
|
+
/** Product slug if opened from a product page */
|
|
11
|
+
productSlug?: string;
|
|
12
|
+
/** Initial question to send immediately when opened */
|
|
13
|
+
initialQuestion?: string;
|
|
14
|
+
/** Assistant display name */
|
|
15
|
+
assistantName?: string;
|
|
16
|
+
/** Custom class name */
|
|
17
|
+
className?: string;
|
|
18
|
+
/** Render inline instead of using a portal (useful for Storybook) */
|
|
19
|
+
disablePortal?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export declare function AssistantDrawer({ isOpen, onClose, apiUrl, brandSlug, productSlug, initialQuestion, assistantName, className, disablePortal, }: AssistantDrawerProps): import("react/jsx-runtime").JSX.Element | null;
|
|
22
|
+
//# sourceMappingURL=AssistantDrawer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssistantDrawer.d.ts","sourceRoot":"","sources":["../../src/components/AssistantDrawer.tsx"],"names":[],"mappings":"AAgCA,MAAM,WAAW,oBAAoB;IACnC,iCAAiC;IACjC,MAAM,EAAE,OAAO,CAAC;IAChB,wCAAwC;IACxC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6BAA6B;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,OAAO,EACP,MAAM,EACN,SAAS,EACT,WAAW,EACX,eAAe,EACf,aAA8B,EAC9B,SAAS,EACT,aAAqB,GACtB,EAAE,oBAAoB,kDA0WtB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface ProductAssistantChipsProps {
|
|
2
|
+
/** FAQ questions to display as chips */
|
|
3
|
+
faqs?: Array<{
|
|
4
|
+
question: string;
|
|
5
|
+
answer: string;
|
|
6
|
+
}>;
|
|
7
|
+
/** Callback when a chip is clicked — should open the drawer with this question */
|
|
8
|
+
onAsk: (question: string) => void;
|
|
9
|
+
/** Custom class name */
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function ProductAssistantChips({ faqs, onAsk, className, }: ProductAssistantChipsProps): import("react/jsx-runtime").JSX.Element | null;
|
|
13
|
+
//# sourceMappingURL=ProductAssistantChips.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProductAssistantChips.d.ts","sourceRoot":"","sources":["../../src/components/ProductAssistantChips.tsx"],"names":[],"mappings":"AAYA,MAAM,WAAW,0BAA0B;IACzC,wCAAwC;IACxC,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnD,kFAAkF;IAClF,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,qBAAqB,CAAC,EACpC,IAAS,EACT,KAAK,EACL,SAAS,GACV,EAAE,0BAA0B,kDAsC5B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
type AssistantContextType = {
|
|
3
|
+
/** Open the assistant drawer with a question. Pass productSlug if on a product page. */
|
|
4
|
+
ask: (question: string, productSlug?: string) => void;
|
|
5
|
+
/** Close the assistant drawer */
|
|
6
|
+
close: () => void;
|
|
7
|
+
/** Whether the drawer is currently open */
|
|
8
|
+
isOpen: boolean;
|
|
9
|
+
};
|
|
10
|
+
export declare function useAssistant(): AssistantContextType;
|
|
11
|
+
export interface AssistantProviderProps {
|
|
12
|
+
children: ReactNode;
|
|
13
|
+
apiUrl: string;
|
|
14
|
+
brandSlug: string;
|
|
15
|
+
assistantName?: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function AssistantProvider({ children, apiUrl, brandSlug, assistantName, }: AssistantProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=AssistantContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssistantContext.d.ts","sourceRoot":"","sources":["../../src/contexts/AssistantContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAoD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGzF,KAAK,oBAAoB,GAAG;IAC1B,wFAAwF;IACxF,GAAG,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtD,iCAAiC;IACjC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,2CAA2C;IAC3C,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAIF,wBAAgB,YAAY,yBAI3B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,MAAM,EACN,SAAS,EACT,aAAa,GACd,EAAE,sBAAsB,2CA2BxB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
export { StorefrontProvider } from './providers/StorefrontProvider';
|
|
7
7
|
export type { StorefrontProviderProps } from './providers/StorefrontProvider';
|
|
8
8
|
export { CartProvider, useCart } from './contexts/CartContext';
|
|
9
|
+
export { useAssistant } from './contexts/AssistantContext';
|
|
9
10
|
export { useMetaPixel, MetaPixelProvider } from './providers/MetaPixelProvider';
|
|
10
11
|
export type { MetaPixelProviderProps, PurchaseItem } from './providers/MetaPixelProvider';
|
|
11
12
|
export { useTikTokPixel, TikTokPixelProvider } from './providers/TikTokPixelProvider';
|
|
@@ -38,6 +39,10 @@ export { DiscountCodeInput } from './components/DiscountCodeInput';
|
|
|
38
39
|
export type { DiscountCodeInputProps } from './components/DiscountCodeInput';
|
|
39
40
|
export { Checkout } from './components/Checkout';
|
|
40
41
|
export type { CheckoutProps, CheckoutFormData } from './components/Checkout';
|
|
42
|
+
export { AssistantDrawer } from './components/AssistantDrawer';
|
|
43
|
+
export type { AssistantDrawerProps } from './components/AssistantDrawer';
|
|
44
|
+
export { ProductAssistantChips } from './components/ProductAssistantChips';
|
|
45
|
+
export type { ProductAssistantChipsProps } from './components/ProductAssistantChips';
|
|
41
46
|
export { Button } from './components/ui/button';
|
|
42
47
|
export { Card, CardContent, CardHeader, CardTitle, CardDescription, CardFooter } from './components/ui/card';
|
|
43
48
|
export { Badge } from './components/ui/badge';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,YAAY,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAG9E,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAG/D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAChF,YAAY,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG1F,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGtF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,YAAY,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAEnF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAEnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,YAAY,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,YAAY,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAE9G,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,YAAY,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,YAAY,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,YAAY,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAEnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAG7E,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGnE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAC3I,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIvD,cAAc,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.mjs
CHANGED
|
@@ -1,144 +1,150 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { StorefrontProvider as
|
|
3
|
-
import { CartProvider as a, useCart as
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
35
|
-
import {
|
|
36
|
-
import {
|
|
37
|
-
import {
|
|
38
|
-
import
|
|
39
|
-
import
|
|
40
|
-
import {
|
|
41
|
-
import
|
|
42
|
-
import
|
|
43
|
-
import {
|
|
44
|
-
import {
|
|
2
|
+
import { StorefrontProvider as i } from "./index2.mjs";
|
|
3
|
+
import { CartProvider as a, useCart as s } from "./index3.mjs";
|
|
4
|
+
import { useAssistant as p } from "./index4.mjs";
|
|
5
|
+
import { MetaPixelProvider as u, useMetaPixel as f } from "./index5.mjs";
|
|
6
|
+
import { TikTokPixelProvider as x, useTikTokPixel as C } from "./index6.mjs";
|
|
7
|
+
import { usePageTracking as P } from "./index7.mjs";
|
|
8
|
+
import { OrderConfirmation as h } from "./index8.mjs";
|
|
9
|
+
import { DeliveryConfirmation as v } from "./index9.mjs";
|
|
10
|
+
import { ProductCard as G } from "./index10.mjs";
|
|
11
|
+
import { ProductGrid as R } from "./index11.mjs";
|
|
12
|
+
import { ProductAddOns as I } from "./index12.mjs";
|
|
13
|
+
import { RecommendedProducts as S } from "./index13.mjs";
|
|
14
|
+
import { VariantPickerModal as T } from "./index14.mjs";
|
|
15
|
+
import { CartItem as M } from "./index15.mjs";
|
|
16
|
+
import { QuantitySelector as H } from "./index16.mjs";
|
|
17
|
+
import { ShoppingCart as b } from "./index17.mjs";
|
|
18
|
+
import { CartUpsellScreen as w } from "./index18.mjs";
|
|
19
|
+
import { AddOnsDiscountScreen as K } from "./index19.mjs";
|
|
20
|
+
import { DiscountCodeInput as V } from "./index20.mjs";
|
|
21
|
+
import { Checkout as j } from "./index21.mjs";
|
|
22
|
+
import { AssistantDrawer as J } from "./index22.mjs";
|
|
23
|
+
import { ProductAssistantChips as N } from "./index23.mjs";
|
|
24
|
+
import { Button as X } from "./index24.mjs";
|
|
25
|
+
import { Card as _, CardContent as ee, CardDescription as re, CardFooter as te, CardHeader as oe, CardTitle as ie } from "./index25.mjs";
|
|
26
|
+
import { Badge as ae } from "./index26.mjs";
|
|
27
|
+
import { Modal as de } from "./index27.mjs";
|
|
28
|
+
import { FormInput as ne } from "./index28.mjs";
|
|
29
|
+
import { FormSelect as fe } from "./index29.mjs";
|
|
30
|
+
import { calculateDiscountedPrice as xe, cn as Ce, formatCurrency as le, formatDate as Pe, formatDateTime as Ae, getDiscountPercent as he, getStatusColor as De } from "./index30.mjs";
|
|
31
|
+
import { ApiClientProvider as ye, useApiClientContext as Ge } from "./index31.mjs";
|
|
32
|
+
import { useApiConfig as Re } from "./index32.mjs";
|
|
33
|
+
import { getApiClient as Ie, initializeApiClient as Oe, resetApiClient as Se } from "./index33.mjs";
|
|
34
|
+
import { authHeaders as Te, createAdminRpcClients as Ue, createRpcClients as Me } from "./index34.mjs";
|
|
35
|
+
import { fetchProductAddons as He, fetchProductBySlug as Ze, fetchProductRecommendations as be, fetchProductsByBrand as qe } from "./index35.mjs";
|
|
36
|
+
import { addCartItem as ze, applyDiscount as Ke, checkoutCart as Qe, createCart as Ve, fetchCart as $e, fetchCartRecommendations as je, fetchCartUpsellAddons as Ee, initiateCheckout as Je, removeCartItem as Le, removeDiscount as Ne, updateCart as We, updateCartItem as Xe } from "./index36.mjs";
|
|
37
|
+
import { confirmDelivery as _e, confirmOrder as er, fetchOrder as rr, fetchOrderRecommendations as tr, updateDeliveryAddress as or } from "./index37.mjs";
|
|
38
|
+
import { fetchDeliveryZones as mr } from "./index38.mjs";
|
|
39
|
+
import { fetchBrandBySlug as sr } from "./index39.mjs";
|
|
40
|
+
import { queryKeys as pr } from "./index40.mjs";
|
|
41
|
+
import * as e from "./index41.mjs";
|
|
42
|
+
import * as r from "./index42.mjs";
|
|
43
|
+
import { useAddCartItem as ur, useApplyDiscount as fr, useCheckoutCart as cr, useCreateCart as xr, useGetCart as Cr, useGetCartRecommendations as lr, useGetCartUpsellAddons as Pr, useInitiateCheckout as Ar, useRemoveCartItem as hr, useRemoveDiscount as Dr, useUpdateCart as vr, useUpdateCartItem as yr } from "./index43.mjs";
|
|
44
|
+
import { useGetBrand as kr } from "./index44.mjs";
|
|
45
|
+
import { useGetProduct as gr, useGetProductAddOns as Ir, useGetProductRecommendations as Or, useGetProducts as Sr } from "./index45.mjs";
|
|
46
|
+
import { useConfirmDelivery as Tr, useConfirmOrder as Ur, useGetOrder as Mr, useGetOrderRecommendations as Fr, useUpdateDeliveryAddress as Hr } from "./index46.mjs";
|
|
47
|
+
import { useGetDeliveryZones as br } from "./index47.mjs";
|
|
45
48
|
export {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
49
|
+
K as AddOnsDiscountScreen,
|
|
50
|
+
ye as ApiClientProvider,
|
|
51
|
+
J as AssistantDrawer,
|
|
52
|
+
ae as Badge,
|
|
53
|
+
X as Button,
|
|
54
|
+
_ as Card,
|
|
55
|
+
ee as CardContent,
|
|
56
|
+
re as CardDescription,
|
|
57
|
+
te as CardFooter,
|
|
58
|
+
oe as CardHeader,
|
|
59
|
+
ie as CardTitle,
|
|
60
|
+
M as CartItem,
|
|
57
61
|
a as CartProvider,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
G as
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
62
|
+
w as CartUpsellScreen,
|
|
63
|
+
j as Checkout,
|
|
64
|
+
v as DeliveryConfirmation,
|
|
65
|
+
V as DiscountCodeInput,
|
|
66
|
+
ne as FormInput,
|
|
67
|
+
fe as FormSelect,
|
|
68
|
+
u as MetaPixelProvider,
|
|
69
|
+
de as Modal,
|
|
70
|
+
h as OrderConfirmation,
|
|
71
|
+
I as ProductAddOns,
|
|
72
|
+
N as ProductAssistantChips,
|
|
73
|
+
G as ProductCard,
|
|
74
|
+
R as ProductGrid,
|
|
75
|
+
H as QuantitySelector,
|
|
76
|
+
S as RecommendedProducts,
|
|
77
|
+
b as ShoppingCart,
|
|
78
|
+
i as StorefrontProvider,
|
|
79
|
+
x as TikTokPixelProvider,
|
|
80
|
+
T as VariantPickerModal,
|
|
81
|
+
ze as addCartItem,
|
|
77
82
|
r as adminApi,
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
83
|
+
Ke as applyDiscount,
|
|
84
|
+
Te as authHeaders,
|
|
85
|
+
xe as calculateDiscountedPrice,
|
|
86
|
+
Qe as checkoutCart,
|
|
87
|
+
Ce as cn,
|
|
88
|
+
_e as confirmDelivery,
|
|
89
|
+
er as confirmOrder,
|
|
90
|
+
Ue as createAdminRpcClients,
|
|
91
|
+
Ve as createCart,
|
|
92
|
+
Me as createRpcClients,
|
|
93
|
+
sr as fetchBrandBySlug,
|
|
94
|
+
$e as fetchCart,
|
|
95
|
+
je as fetchCartRecommendations,
|
|
96
|
+
Ee as fetchCartUpsellAddons,
|
|
97
|
+
mr as fetchDeliveryZones,
|
|
98
|
+
rr as fetchOrder,
|
|
99
|
+
tr as fetchOrderRecommendations,
|
|
100
|
+
He as fetchProductAddons,
|
|
101
|
+
Ze as fetchProductBySlug,
|
|
102
|
+
be as fetchProductRecommendations,
|
|
103
|
+
qe as fetchProductsByBrand,
|
|
104
|
+
le as formatCurrency,
|
|
105
|
+
Pe as formatDate,
|
|
106
|
+
Ae as formatDateTime,
|
|
107
|
+
Ie as getApiClient,
|
|
108
|
+
he as getDiscountPercent,
|
|
109
|
+
De as getStatusColor,
|
|
110
|
+
Oe as initializeApiClient,
|
|
111
|
+
Je as initiateCheckout,
|
|
107
112
|
e as publicApi,
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
113
|
+
pr as queryKeys,
|
|
114
|
+
Le as removeCartItem,
|
|
115
|
+
Ne as removeDiscount,
|
|
116
|
+
Se as resetApiClient,
|
|
117
|
+
We as updateCart,
|
|
118
|
+
Xe as updateCartItem,
|
|
119
|
+
or as updateDeliveryAddress,
|
|
120
|
+
ur as useAddCartItem,
|
|
121
|
+
Ge as useApiClientContext,
|
|
122
|
+
Re as useApiConfig,
|
|
123
|
+
fr as useApplyDiscount,
|
|
124
|
+
p as useAssistant,
|
|
125
|
+
s as useCart,
|
|
126
|
+
cr as useCheckoutCart,
|
|
127
|
+
Tr as useConfirmDelivery,
|
|
128
|
+
Ur as useConfirmOrder,
|
|
129
|
+
xr as useCreateCart,
|
|
130
|
+
kr as useGetBrand,
|
|
131
|
+
Cr as useGetCart,
|
|
132
|
+
lr as useGetCartRecommendations,
|
|
133
|
+
Pr as useGetCartUpsellAddons,
|
|
134
|
+
br as useGetDeliveryZones,
|
|
135
|
+
Mr as useGetOrder,
|
|
136
|
+
Fr as useGetOrderRecommendations,
|
|
137
|
+
gr as useGetProduct,
|
|
138
|
+
Ir as useGetProductAddOns,
|
|
139
|
+
Or as useGetProductRecommendations,
|
|
140
|
+
Sr as useGetProducts,
|
|
141
|
+
Ar as useInitiateCheckout,
|
|
142
|
+
f as useMetaPixel,
|
|
143
|
+
P as usePageTracking,
|
|
144
|
+
hr as useRemoveCartItem,
|
|
145
|
+
Dr as useRemoveDiscount,
|
|
146
|
+
C as useTikTokPixel,
|
|
147
|
+
vr as useUpdateCart,
|
|
148
|
+
yr as useUpdateCartItem,
|
|
149
|
+
Hr as useUpdateDeliveryAddress
|
|
144
150
|
};
|
package/dist/index10.mjs
CHANGED
|
@@ -1,83 +1,113 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as
|
|
3
|
-
import "
|
|
4
|
-
import "
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { cn as
|
|
9
|
-
function
|
|
10
|
-
|
|
11
|
-
onAddToCart:
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
emptyMessage: x = "No products available at the moment.",
|
|
19
|
-
errorMessage: h = "Failed to load products. Please try again later.",
|
|
20
|
-
loadingVariantId: f
|
|
2
|
+
import { jsxs as l, jsx as a, Fragment as u } from "react/jsx-runtime";
|
|
3
|
+
import { useState as f } from "react";
|
|
4
|
+
import { Card as P, CardContent as S, CardFooter as j } from "./index25.mjs";
|
|
5
|
+
import { Button as I } from "./index24.mjs";
|
|
6
|
+
import { Badge as h } from "./index26.mjs";
|
|
7
|
+
import { Package as O, ShoppingCart as q } from "lucide-react";
|
|
8
|
+
import { cn as p, formatCurrency as g } from "./index30.mjs";
|
|
9
|
+
function D({
|
|
10
|
+
product: r,
|
|
11
|
+
onAddToCart: o,
|
|
12
|
+
showStock: b = !0,
|
|
13
|
+
className: x,
|
|
14
|
+
imageClassName: N,
|
|
15
|
+
disableAddToCart: v = !1,
|
|
16
|
+
isAddingToCart: n = !1,
|
|
17
|
+
onClick: i
|
|
21
18
|
}) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
/* @__PURE__ */ e(d, { className: "mx-auto mb-4 h-12 w-12 text-red-600" }),
|
|
31
|
-
/* @__PURE__ */ e("p", { className: "text-red-600", children: h })
|
|
32
|
-
] }) });
|
|
33
|
-
const a = N || [];
|
|
34
|
-
return a.length === 0 ? /* @__PURE__ */ e("div", { className: "flex min-h-[400px] items-center justify-center", children: /* @__PURE__ */ s("div", { className: "text-center", children: [
|
|
35
|
-
/* @__PURE__ */ e(d, { className: "mx-auto mb-4 h-12 w-12 text-gray-400" }),
|
|
36
|
-
/* @__PURE__ */ e("p", { className: "text-gray-600", children: x })
|
|
37
|
-
] }) }) : /* @__PURE__ */ e(
|
|
38
|
-
"div",
|
|
19
|
+
var d;
|
|
20
|
+
const [c, y] = f(
|
|
21
|
+
((d = r.variants[0]) == null ? void 0 : d.id) || ""
|
|
22
|
+
), [m, k] = f(1), t = r.variants.find((e) => e.id === c), C = r.variants.length > 1, s = t ? t.stock === void 0 || t.stock > 0 : !1, w = (e) => {
|
|
23
|
+
e.stopPropagation(), t && o && o(t.id, m);
|
|
24
|
+
};
|
|
25
|
+
return /* @__PURE__ */ l(
|
|
26
|
+
P,
|
|
39
27
|
{
|
|
40
|
-
className:
|
|
41
|
-
"
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
3: "grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",
|
|
45
|
-
4: "grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"
|
|
46
|
-
}[o],
|
|
47
|
-
p
|
|
28
|
+
className: p(
|
|
29
|
+
"group overflow-hidden transition-all hover:shadow-lg",
|
|
30
|
+
i && "cursor-pointer",
|
|
31
|
+
x
|
|
48
32
|
),
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
})
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
33
|
+
onClick: i,
|
|
34
|
+
children: [
|
|
35
|
+
/* @__PURE__ */ l("div", { className: "relative aspect-square overflow-hidden bg-gray-100", children: [
|
|
36
|
+
r.thumbnailUrl ? /* @__PURE__ */ a(
|
|
37
|
+
"img",
|
|
38
|
+
{
|
|
39
|
+
src: r.thumbnailUrl,
|
|
40
|
+
alt: r.name,
|
|
41
|
+
className: p(
|
|
42
|
+
"h-full w-full object-cover transition-transform group-hover:scale-105",
|
|
43
|
+
N
|
|
44
|
+
)
|
|
45
|
+
}
|
|
46
|
+
) : /* @__PURE__ */ a("div", { className: "flex h-full w-full items-center justify-center", children: /* @__PURE__ */ a(O, { className: "h-16 w-16 text-gray-400" }) }),
|
|
47
|
+
!s && /* @__PURE__ */ a(h, { className: "absolute right-2 top-2 bg-red-600", children: "Out of Stock" }),
|
|
48
|
+
b && s && (t == null ? void 0 : t.stock) !== void 0 && t.stock < 10 && /* @__PURE__ */ l(h, { className: "absolute right-2 top-2 bg-orange-600", children: [
|
|
49
|
+
"Only ",
|
|
50
|
+
t.stock,
|
|
51
|
+
" left"
|
|
52
|
+
] })
|
|
53
|
+
] }),
|
|
54
|
+
/* @__PURE__ */ l(S, { className: "p-4", children: [
|
|
55
|
+
/* @__PURE__ */ a("h3", { className: "mb-1 font-semibold line-clamp-2", children: r.name }),
|
|
56
|
+
r.description && /* @__PURE__ */ a("p", { className: "mb-2 text-sm text-gray-600 line-clamp-2", children: r.description }),
|
|
57
|
+
C && /* @__PURE__ */ l("div", { className: "mb-3", children: [
|
|
58
|
+
/* @__PURE__ */ a("label", { className: "mb-1 block text-xs font-medium text-gray-700", children: "Select Option" }),
|
|
59
|
+
/* @__PURE__ */ a(
|
|
60
|
+
"select",
|
|
61
|
+
{
|
|
62
|
+
value: c,
|
|
63
|
+
onChange: (e) => {
|
|
64
|
+
e.stopPropagation(), y(e.target.value);
|
|
65
|
+
},
|
|
66
|
+
className: "w-full rounded-md border border-gray-300 px-2 py-1 text-sm focus:border-blue-500 focus:outline-none focus:ring-1 focus:ring-blue-500",
|
|
67
|
+
onClick: (e) => e.stopPropagation(),
|
|
68
|
+
children: r.variants.map((e) => /* @__PURE__ */ l("option", { value: e.id, children: [
|
|
69
|
+
e.name,
|
|
70
|
+
" - ",
|
|
71
|
+
g(e.price)
|
|
72
|
+
] }, e.id))
|
|
73
|
+
}
|
|
74
|
+
)
|
|
75
|
+
] }),
|
|
76
|
+
/* @__PURE__ */ a("div", { className: "mb-3 text-2xl font-bold text-blue-600", children: t && g(t.price) }),
|
|
77
|
+
/* @__PURE__ */ l("div", { className: "flex items-center gap-2", children: [
|
|
78
|
+
/* @__PURE__ */ a("label", { className: "text-xs font-medium text-gray-700", children: "Qty:" }),
|
|
79
|
+
/* @__PURE__ */ a(
|
|
80
|
+
"input",
|
|
81
|
+
{
|
|
82
|
+
type: "number",
|
|
83
|
+
min: "1",
|
|
84
|
+
max: (t == null ? void 0 : t.stock) || 999,
|
|
85
|
+
value: m,
|
|
86
|
+
onChange: (e) => {
|
|
87
|
+
e.stopPropagation(), k(Math.max(1, parseInt(e.target.value) || 1));
|
|
88
|
+
},
|
|
89
|
+
onClick: (e) => e.stopPropagation(),
|
|
90
|
+
className: "w-20 rounded-md border border-gray-300 px-2 py-1 text-sm focus:border-blue-500 focus:outline-none focus:ring-1 focus:ring-blue-500"
|
|
91
|
+
}
|
|
92
|
+
)
|
|
93
|
+
] })
|
|
94
|
+
] }),
|
|
95
|
+
/* @__PURE__ */ a(j, { className: "p-4 pt-0", children: /* @__PURE__ */ a(
|
|
96
|
+
I,
|
|
67
97
|
{
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
)
|
|
77
|
-
|
|
98
|
+
onClick: w,
|
|
99
|
+
disabled: v || !s || n,
|
|
100
|
+
className: "w-full",
|
|
101
|
+
children: n ? /* @__PURE__ */ a(u, { children: "Adding..." }) : /* @__PURE__ */ l(u, { children: [
|
|
102
|
+
/* @__PURE__ */ a(q, { className: "mr-2 h-4 w-4" }),
|
|
103
|
+
"Add to Cart"
|
|
104
|
+
] })
|
|
105
|
+
}
|
|
106
|
+
) })
|
|
107
|
+
]
|
|
78
108
|
}
|
|
79
109
|
);
|
|
80
110
|
}
|
|
81
111
|
export {
|
|
82
|
-
|
|
112
|
+
D as ProductCard
|
|
83
113
|
};
|