@ikas/loyalty-widget-renderer 1.0.0-alpha.62 → 1.0.0-alpha.64
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/build/assets/icons/check-circle.d.ts +2 -0
- package/build/assets/icons/check-circle.js +1 -0
- package/build/assets/index.d.ts +4 -0
- package/build/assets/widget-icons/illustraions/check-fill.d.ts +2 -0
- package/build/assets/widget-icons/illustraions/check-fill.js +1 -0
- package/build/assets/widget-icons/illustraions/informationCircleIllustration.d.ts +2 -0
- package/build/assets/widget-icons/illustraions/informationCircleIllustration.js +1 -0
- package/build/assets/widget-icons/normal/informationCircle.d.ts +2 -0
- package/build/assets/widget-icons/normal/informationCircle.js +1 -0
- package/build/index.js +1 -1
- package/build/models/loyalty-customer-info/index.d.ts +19 -0
- package/build/models/loyalty-customer-info/index.js +1 -1
- package/build/models/types/index.d.ts +4 -4
- package/build/renderer/components/loyalty-method-card/style.d.ts +3 -3
- package/build/renderer/components/loyalty-method-card/style.js +1 -1
- package/build/renderer/components/tooltip/index.d.ts +7 -0
- package/build/renderer/components/tooltip/index.js +1 -0
- package/build/renderer/components/tooltip/style.d.ts +4 -0
- package/build/renderer/components/tooltip/style.js +1 -0
- package/build/renderer/index.js +1 -1
- package/build/renderer/screens/loyalty-level-screen/index.js +1 -1
- package/build/renderer/screens/loyalty-level-screen/style.d.ts +4 -0
- package/build/renderer/screens/loyalty-level-screen/style.js +1 -1
- package/build/renderer/screens/main-screen/applied-discount/index.d.ts +9 -0
- package/build/renderer/screens/main-screen/applied-discount/index.js +1 -0
- package/build/renderer/screens/main-screen/applied-discount/style.d.ts +14 -0
- package/build/renderer/screens/main-screen/applied-discount/style.js +1 -0
- package/build/renderer/screens/main-screen/cart-warning/index.d.ts +7 -0
- package/build/renderer/screens/main-screen/cart-warning/index.js +1 -0
- package/build/renderer/screens/main-screen/cart-warning/style.d.ts +5 -0
- package/build/renderer/screens/main-screen/cart-warning/style.js +1 -0
- package/build/renderer/screens/main-screen/header/user-logged-section/index.js +1 -1
- package/build/renderer/screens/main-screen/header/user-logged-section/style.d.ts +1 -0
- package/build/renderer/screens/main-screen/header/user-logged-section/style.js +1 -1
- package/build/renderer/screens/main-screen/index.js +1 -1
- package/build/renderer/screens/main-screen/program-info-section/style.d.ts +1 -1
- package/build/renderer/screens/main-screen/program-info-section/style.js +1 -1
- package/build/renderer/screens/main-screen/spending-methods-section/dynamic-slider.js +1 -1
- package/build/renderer/screens/main-screen/spending-methods-section/index.js +1 -1
- package/build/renderer/style.js +1 -1
- package/build/renderer/utils/locales/en.json.js +1 -1
- package/build/renderer/utils/locales/tr.json.js +1 -1
- package/build/renderer/utils/loyalty-details.js +1 -1
- package/build/storefront-widget-script-injector.iife.js +6 -6
- package/build/storefront-widget-script-injector.iife.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"react";var t=function(t){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},e.createElement("g",{clipPath:"url(#clip0_16167_5182)"},e.createElement("path",{d:"M4.9987 8.00065L6.9987 10.0007L10.9987 6.00065M14.6654 8.00065C14.6654 11.6825 11.6806 14.6673 7.9987 14.6673C4.3168 14.6673 1.33203 11.6825 1.33203 8.00065C1.33203 4.31875 4.3168 1.33398 7.9987 1.33398C11.6806 1.33398 14.6654 4.31875 14.6654 8.00065Z",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})),e.createElement("defs",null,e.createElement("clipPath",{id:"clip0_16167_5182"},e.createElement("rect",{width:"16",height:"16",fill:"white"}))))};export{t as CheckCircle};
|
package/build/assets/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export { CheckCircleFill } from "./icons/check-circle-fill";
|
|
|
7
7
|
export { ChevronLeft } from "./icons/chevron-left";
|
|
8
8
|
export { Check } from "./icons/check";
|
|
9
9
|
export { ArrowRight } from "./icons/arrow-right";
|
|
10
|
+
export { CheckCircle } from "./icons/check-circle";
|
|
10
11
|
export { BubbleChatDone } from "./widget-icons/normal/bubbleChatDone";
|
|
11
12
|
export { CommentAdd01 } from "./widget-icons/normal/commentAdd01";
|
|
12
13
|
export { CouponPercent } from "./widget-icons/normal/couponPercent";
|
|
@@ -17,6 +18,7 @@ export { PackageDelivered } from "./widget-icons/normal/packageDelivered";
|
|
|
17
18
|
export { SaveMoneyDollar } from "./widget-icons/normal/saveMoneyDollar";
|
|
18
19
|
export { ShoppingBasketAdd02 } from "./widget-icons/normal/shoppingBasketAdd02";
|
|
19
20
|
export { UserAdd01 } from "./widget-icons/normal/userAdd01";
|
|
21
|
+
export { InformationCircle } from "./widget-icons/normal/informationCircle";
|
|
20
22
|
export { UsersIllustration } from "./widget-icons/illustraions/usersIllustration";
|
|
21
23
|
export { BubbleChatIllustration } from "./widget-icons/illustraions/bubbleChatIllustration";
|
|
22
24
|
export { ApprovedChatIllustration } from "./widget-icons/illustraions/approvedChatIllustration";
|
|
@@ -26,3 +28,5 @@ export { GiftIllustration } from "./widget-icons/illustraions/giftIllustration";
|
|
|
26
28
|
export { ShippingBox } from "./widget-icons/illustraions/shippingBox";
|
|
27
29
|
export { BigSaleMedal } from "./widget-icons/illustraions/bigSaleMedal";
|
|
28
30
|
export { ShoppingCartIllustration } from "./widget-icons/illustraions/shoppingCartIllustration";
|
|
31
|
+
export { InformationCircleIllustration } from "./widget-icons/illustraions/informationCircleIllustration";
|
|
32
|
+
export { CheckFillIllustration } from "./widget-icons/illustraions/check-fill";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"react";var t=function(t){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none"},e.createElement("path",{d:"M10 19C14.6944 19 18.5 15.1944 18.5 10.5C18.5 5.80558 14.6944 2 10 2C5.30558 2 1.5 5.80558 1.5 10.5C1.5 15.1944 5.30558 19 10 19Z",fill:"#019D57"}),e.createElement("path",{d:"M10 18C14.6944 18 18.5 14.1944 18.5 9.5C18.5 4.80558 14.6944 1 10 1C5.30558 1 1.5 4.80558 1.5 9.5C1.5 14.1944 5.30558 18 10 18Z",fill:"#4BCE93"}),e.createElement("path",{d:"M10 17C13.866 17 17 13.866 17 10C17 6.13401 13.866 3 10 3C6.13401 3 3 6.13401 3 10C3 13.866 6.13401 17 10 17Z",fill:"#89F7C5"}),e.createElement("path",{d:"M10 16.5C13.866 16.5 17 13.366 17 9.5C17 5.63401 13.866 2.5 10 2.5C6.13401 2.5 3 5.63401 3 9.5C3 13.366 6.13401 16.5 10 16.5Z",fill:"#00BE69"}),e.createElement("path",{d:"M7 9.5L9 11.5L13 7.5",stroke:"#005F34",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{d:"M7 9L9 11L13 7",stroke:"white",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}))};export{t as CheckFillIllustration};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"react";var t=function(t){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none"},e.createElement("path",{d:"M10 19C14.6944 19 18.5 15.1944 18.5 10.5C18.5 5.80558 14.6944 2 10 2C5.30558 2 1.5 5.80558 1.5 10.5C1.5 15.1944 5.30558 19 10 19Z",fill:"#458CDB"}),e.createElement("path",{d:"M10 18C14.6944 18 18.5 14.1944 18.5 9.5C18.5 4.80558 14.6944 1 10 1C5.30558 1 1.5 4.80558 1.5 9.5C1.5 14.1944 5.30558 18 10 18Z",fill:"#82BDFD"}),e.createElement("path",{d:"M10 17C13.866 17 17 13.866 17 10C17 6.13401 13.866 3 10 3C6.13401 3 3 6.13401 3 10C3 13.866 6.13401 17 10 17Z",fill:"#BDDCFF"}),e.createElement("path",{d:"M10 16.5C13.866 16.5 17 13.366 17 9.5C17 5.63401 13.866 2.5 10 2.5C6.13401 2.5 3 5.63401 3 9.5C3 13.366 6.13401 16.5 10 16.5Z",fill:"#459AF9"}),e.createElement("path",{d:"M10 12.7337V10.0671M10 7.40039H10.0067",stroke:"#134276",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{d:"M10 12.3333V9.66667M10 7H10.0067",stroke:"white",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}))};export{t as InformationCircleIllustration};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"react";var r=function(r){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 18 18",fill:"none"},e.createElement("path",{d:"M9 16.5C13.1421 16.5 16.5 13.1421 16.5 9C16.5 4.85786 13.1421 1.5 9 1.5C4.85786 1.5 1.5 4.85786 1.5 9C1.5 13.1421 4.85786 16.5 9 16.5Z",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{d:"M9 12V8.625",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{d:"M9 6.00945V6.00195",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}))};export{r as InformationCircle};
|
package/build/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{LoyaltyWidget}from"./models/loyalty-widget/index.js";export{BadgeIconTypeEnum,HeaderBackgroundTypeEnum,ImageTypeEnum,LoyaltyWidgetLayoutTypeEnum,WidgetIconTypeEnum,WidgetPositionEnum}from"./models/loyalty-widget/types/index.js";export{LoyaltyWidgetHeader}from"./models/loyalty-widget/header/index.js";export{LoyaltyWidgetHeaderBackground}from"./models/loyalty-widget/header/header-background/index.js";export{IMAGE_SIZE,LoyaltyWidgetImage}from"./models/image/index.js";export{LoyaltyWidgetButton}from"./models/button/index.js";export{LoyaltyCustomerInfo,LoyaltyProgramTier,LoyaltyProgramTierTranslation}from"./models/loyalty-customer-info/index.js";export{LoyaltyProgramPointHistory}from"./models/loyalty-program-point-history/index.js";export{LoyaltyProgramDiscountSettings,LoyaltyProgramSpendingMethod}from"./models/loyalty-program-spending-method/index.js";export{LoyaltyProgramEarningMethod,LoyaltyProgramEarningMethodOrderSettings,LoyaltyProgramEarningMethodProductSettings}from"./models/loyalty-program-earning-method/index.js";export{LoyaltyWidgetSettings}from"./models/loyalty-widget/settings/index.js";export{LoyaltyWidgetViewModel}from"./models/index.js";export{EarningMethodTypeEnum,LoyaltyProgramFilterTypeEnum,LoyaltyProgramMethodSpendingTypeEnum,LoyaltyProgramPointEarningTypeEnum,LoyaltyProgramPointHistoryTypeEnum,LoyaltyWidgetScreenTypeEnum,PeriodTypeEnum,WidgetMode}from"./models/types/index.js";export{BadgeLevel1}from"./assets/badgeLevel1.js";export{BadgeLevel2}from"./assets/badgeLevel2.js";export{BadgeLevel3}from"./assets/badgeLevel3.js";export{BadgeLevel4}from"./assets/badgeLevel4.js";export{XClose}from"./assets/icons/x-close.js";export{CheckCircleFill}from"./assets/icons/check-circle-fill.js";export{ChevronLeft}from"./assets/icons/chevron-left.js";export{Check}from"./assets/icons/check.js";export{ArrowRight}from"./assets/icons/arrow-right.js";export{BubbleChatDone}from"./assets/widget-icons/normal/bubbleChatDone.js";export{CommentAdd01}from"./assets/widget-icons/normal/commentAdd01.js";export{CouponPercent}from"./assets/widget-icons/normal/couponPercent.js";export{DiscountTag02}from"./assets/widget-icons/normal/discountTag02.js";export{Gift}from"./assets/widget-icons/normal/gift.js";export{MoneyAdd01}from"./assets/widget-icons/normal/moneyAdd01.js";export{PackageDelivered}from"./assets/widget-icons/normal/packageDelivered.js";export{SaveMoneyDollar}from"./assets/widget-icons/normal/saveMoneyDollar.js";export{ShoppingBasketAdd02}from"./assets/widget-icons/normal/shoppingBasketAdd02.js";export{UserAdd01}from"./assets/widget-icons/normal/userAdd01.js";export{UsersIllustration}from"./assets/widget-icons/illustraions/usersIllustration.js";export{BubbleChatIllustration}from"./assets/widget-icons/illustraions/bubbleChatIllustration.js";export{ApprovedChatIllustration}from"./assets/widget-icons/illustraions/approvedChatIllustration.js";export{TshirtIllustration}from"./assets/widget-icons/illustraions/tshirtIllustration.js";export{Medal}from"./assets/widget-icons/illustraions/medal.js";export{GiftIllustration}from"./assets/widget-icons/illustraions/giftIllustration.js";export{ShippingBox}from"./assets/widget-icons/illustraions/shippingBox.js";export{BigSaleMedal}from"./assets/widget-icons/illustraions/bigSaleMedal.js";export{ShoppingCartIllustration}from"./assets/widget-icons/illustraions/shoppingCartIllustration.js";export{default as LoyaltyWidgetRenderer}from"./renderer/index.js";
|
|
1
|
+
export{LoyaltyWidget}from"./models/loyalty-widget/index.js";export{BadgeIconTypeEnum,HeaderBackgroundTypeEnum,ImageTypeEnum,LoyaltyWidgetLayoutTypeEnum,WidgetIconTypeEnum,WidgetPositionEnum}from"./models/loyalty-widget/types/index.js";export{LoyaltyWidgetHeader}from"./models/loyalty-widget/header/index.js";export{LoyaltyWidgetHeaderBackground}from"./models/loyalty-widget/header/header-background/index.js";export{IMAGE_SIZE,LoyaltyWidgetImage}from"./models/image/index.js";export{LoyaltyWidgetButton}from"./models/button/index.js";export{CampaignTypeEnum,CartLoyaltyLineData,LoyaltyCustomerInfo,LoyaltyProgramTier,LoyaltyProgramTierTranslation,OrderAmountTypeEnum}from"./models/loyalty-customer-info/index.js";export{LoyaltyProgramPointHistory}from"./models/loyalty-program-point-history/index.js";export{LoyaltyProgramDiscountSettings,LoyaltyProgramSpendingMethod}from"./models/loyalty-program-spending-method/index.js";export{LoyaltyProgramEarningMethod,LoyaltyProgramEarningMethodOrderSettings,LoyaltyProgramEarningMethodProductSettings}from"./models/loyalty-program-earning-method/index.js";export{LoyaltyWidgetSettings}from"./models/loyalty-widget/settings/index.js";export{LoyaltyWidgetViewModel}from"./models/index.js";export{EarningMethodTypeEnum,LoyaltyProgramFilterTypeEnum,LoyaltyProgramMethodSpendingTypeEnum,LoyaltyProgramPointEarningTypeEnum,LoyaltyProgramPointHistoryTypeEnum,LoyaltyWidgetScreenTypeEnum,PeriodTypeEnum,WidgetMode}from"./models/types/index.js";export{BadgeLevel1}from"./assets/badgeLevel1.js";export{BadgeLevel2}from"./assets/badgeLevel2.js";export{BadgeLevel3}from"./assets/badgeLevel3.js";export{BadgeLevel4}from"./assets/badgeLevel4.js";export{XClose}from"./assets/icons/x-close.js";export{CheckCircleFill}from"./assets/icons/check-circle-fill.js";export{ChevronLeft}from"./assets/icons/chevron-left.js";export{Check}from"./assets/icons/check.js";export{ArrowRight}from"./assets/icons/arrow-right.js";export{CheckCircle}from"./assets/icons/check-circle.js";export{BubbleChatDone}from"./assets/widget-icons/normal/bubbleChatDone.js";export{CommentAdd01}from"./assets/widget-icons/normal/commentAdd01.js";export{CouponPercent}from"./assets/widget-icons/normal/couponPercent.js";export{DiscountTag02}from"./assets/widget-icons/normal/discountTag02.js";export{Gift}from"./assets/widget-icons/normal/gift.js";export{MoneyAdd01}from"./assets/widget-icons/normal/moneyAdd01.js";export{PackageDelivered}from"./assets/widget-icons/normal/packageDelivered.js";export{SaveMoneyDollar}from"./assets/widget-icons/normal/saveMoneyDollar.js";export{ShoppingBasketAdd02}from"./assets/widget-icons/normal/shoppingBasketAdd02.js";export{UserAdd01}from"./assets/widget-icons/normal/userAdd01.js";export{InformationCircle}from"./assets/widget-icons/normal/informationCircle.js";export{UsersIllustration}from"./assets/widget-icons/illustraions/usersIllustration.js";export{BubbleChatIllustration}from"./assets/widget-icons/illustraions/bubbleChatIllustration.js";export{ApprovedChatIllustration}from"./assets/widget-icons/illustraions/approvedChatIllustration.js";export{TshirtIllustration}from"./assets/widget-icons/illustraions/tshirtIllustration.js";export{Medal}from"./assets/widget-icons/illustraions/medal.js";export{GiftIllustration}from"./assets/widget-icons/illustraions/giftIllustration.js";export{ShippingBox}from"./assets/widget-icons/illustraions/shippingBox.js";export{BigSaleMedal}from"./assets/widget-icons/illustraions/bigSaleMedal.js";export{ShoppingCartIllustration}from"./assets/widget-icons/illustraions/shoppingCartIllustration.js";export{InformationCircleIllustration}from"./assets/widget-icons/illustraions/informationCircleIllustration.js";export{CheckFillIllustration}from"./assets/widget-icons/illustraions/check-fill.js";export{default as LoyaltyWidgetRenderer}from"./renderer/index.js";
|
|
@@ -19,11 +19,30 @@ export declare class LoyaltyProgramTier {
|
|
|
19
19
|
translations: LoyaltyProgramTierTranslation[] | null;
|
|
20
20
|
constructor(data?: Partial<LoyaltyProgramTier>);
|
|
21
21
|
}
|
|
22
|
+
export declare class CartLoyaltyLineData {
|
|
23
|
+
campaignType: CampaignTypeEnum | null;
|
|
24
|
+
discountAmount: number;
|
|
25
|
+
discountAmountType: OrderAmountTypeEnum;
|
|
26
|
+
loyaltySpendingMethodId: string;
|
|
27
|
+
pointUsed: number;
|
|
28
|
+
constructor(data?: Partial<CartLoyaltyLineData>);
|
|
29
|
+
}
|
|
22
30
|
export declare class LoyaltyCustomerInfo {
|
|
23
31
|
customerTier: LoyaltyProgramTier | null;
|
|
24
32
|
loyaltyProgramCustomerId: string;
|
|
25
33
|
loyaltyProgramId: string;
|
|
26
34
|
totalPoint: number;
|
|
27
35
|
nextTierRequiredPoint: number | null;
|
|
36
|
+
cartLoyaltyLines: CartLoyaltyLineData[] | null;
|
|
28
37
|
constructor(data?: Partial<LoyaltyCustomerInfo>);
|
|
29
38
|
}
|
|
39
|
+
export declare enum CampaignTypeEnum {
|
|
40
|
+
BUY_X_THEN_GET_Y = "BUY_X_THEN_GET_Y",
|
|
41
|
+
FIXED_AMOUNT = "FIXED_AMOUNT",
|
|
42
|
+
FREE_SHIPPING = "FREE_SHIPPING",
|
|
43
|
+
RATIO = "RATIO"
|
|
44
|
+
}
|
|
45
|
+
export declare enum OrderAmountTypeEnum {
|
|
46
|
+
AMOUNT = "AMOUNT",
|
|
47
|
+
RATIO = "RATIO"
|
|
48
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{makeObservable as t,observable as
|
|
1
|
+
import{makeObservable as t,observable as i}from"mobx";import{LoyaltyProgramPeriod as e}from"../common/index.js";var o,n,r=function(e){void 0===e&&(e={}),this.locale=e.locale||"",this.name=e.name||"",t(this,{locale:i,name:i})},l=function(o){void 0===o&&(o={}),this.id=o.id||"",this.name=o.name||"",this.pointsRequired=o.pointsRequired||null,this.tierPointMultiplier=o.tierPointMultiplier||null,this.loyaltyProgramId=o.loyaltyProgramId||"",this.customerSegmentId=o.customerSegmentId||null,this.createdAt=o.createdAt||null,this.updatedAt=o.updatedAt||null,this.deleted=o.deleted||!1,this.isActive=o.isActive||!1,this.period=o.period?new e(o.period):null,this.translations=o.translations?o.translations.map(function(t){return new r(t)}):null,t(this,{id:i,name:i,pointsRequired:i,tierPointMultiplier:i,loyaltyProgramId:i,customerSegmentId:i,createdAt:i,updatedAt:i,deleted:i,isActive:i,period:i,translations:i})},s=function(e){void 0===e&&(e={}),this.campaignType=e.campaignType||null,this.discountAmount=e.discountAmount||0,this.discountAmountType=e.discountAmountType||n.AMOUNT,this.loyaltySpendingMethodId=e.loyaltySpendingMethodId||"",this.pointUsed=e.pointUsed||0,t(this,{campaignType:i,discountAmount:i,discountAmountType:i,loyaltySpendingMethodId:i,pointUsed:i})},d=function(e){void 0===e&&(e={}),this.customerTier=e.customerTier?new l(e.customerTier):null,this.loyaltyProgramCustomerId=e.loyaltyProgramCustomerId||"",this.loyaltyProgramId=e.loyaltyProgramId||"",this.totalPoint=e.totalPoint||0,this.nextTierRequiredPoint=void 0!==e.nextTierRequiredPoint&&null!==e.nextTierRequiredPoint?e.nextTierRequiredPoint:null,this.cartLoyaltyLines=e.cartLoyaltyLines?e.cartLoyaltyLines.map(function(t){return new s(t)}):null,t(this,{customerTier:i,loyaltyProgramCustomerId:i,loyaltyProgramId:i,totalPoint:i,nextTierRequiredPoint:i,cartLoyaltyLines:i})};!function(t){t.BUY_X_THEN_GET_Y="BUY_X_THEN_GET_Y",t.FIXED_AMOUNT="FIXED_AMOUNT",t.FREE_SHIPPING="FREE_SHIPPING",t.RATIO="RATIO"}(o||(o={})),function(t){t.AMOUNT="AMOUNT",t.RATIO="RATIO"}(n||(n={}));export{o as CampaignTypeEnum,s as CartLoyaltyLineData,d as LoyaltyCustomerInfo,l as LoyaltyProgramTier,r as LoyaltyProgramTierTranslation,n as OrderAmountTypeEnum};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { LoyaltyProgramEarningMethod } from "../loyalty-program-earning-method";
|
|
1
|
+
import { LoyaltyWidgetViewModel } from "models";
|
|
3
2
|
import type { LoyaltyCustomerInfo, LoyaltyProgramTier } from "../loyalty-customer-info";
|
|
4
|
-
import type {
|
|
3
|
+
import type { LoyaltyProgramEarningMethod } from "../loyalty-program-earning-method";
|
|
5
4
|
import type { LoyaltyProgramPointHistory } from "../loyalty-program-point-history";
|
|
6
|
-
import {
|
|
5
|
+
import { LoyaltyProgramSpendingMethod } from "../loyalty-program-spending-method";
|
|
6
|
+
import type { LoyaltyWidget } from "../loyalty-widget";
|
|
7
7
|
export declare enum LoyaltyWidgetScreenTypeEnum {
|
|
8
8
|
MAIN_SCREEN = "MAIN_SCREEN",
|
|
9
9
|
CREDIT_SPENDING_METHODS_SCREEN = "CREDIT_SPENDING_METHODS_SCREEN",
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { WidgetIconTypeEnum } from "models/loyalty-widget/types";
|
|
2
|
+
export declare const ArrowButton: import("styled-components").StyledComponent<"button", any, {
|
|
3
|
+
$isOpen: boolean;
|
|
4
|
+
}, never>;
|
|
2
5
|
export declare const Container: import("styled-components").StyledComponent<"div", any, {
|
|
3
6
|
$borderRadius: number;
|
|
4
7
|
$isCompleted?: boolean;
|
|
@@ -17,6 +20,3 @@ export declare const AccordionWrapper: import("styled-components").StyledCompone
|
|
|
17
20
|
export declare const AccordionInner: import("styled-components").StyledComponent<"div", any, {
|
|
18
21
|
$isOpen: boolean;
|
|
19
22
|
}, never>;
|
|
20
|
-
export declare const ArrowButton: import("styled-components").StyledComponent<"button", any, {
|
|
21
|
-
$isOpen: boolean;
|
|
22
|
-
}, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import e,{css as
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import e,{css as o}from"styled-components";import{WidgetIconTypeEnum as r}from"../../../models/loyalty-widget/types/index.js";import{iconWrapperShape as t}from"../style/icon-wrapper.js";import{textSMMedium as i,textSM as a}from"../style/typography.js";var s,d,p,l,f,c,x,u,g,b,m,y=e.button(s||(s=n(["\n border: none;\n background: none;\n cursor: pointer;\n transform: rotate(",");\n transition:\n transform 0.2s ease-in-out,\n color 0.2s ease-in-out;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #9aa4b2;\n"],["\n border: none;\n background: none;\n cursor: pointer;\n transform: rotate(",");\n transition:\n transform 0.2s ease-in-out,\n color 0.2s ease-in-out;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #9aa4b2;\n"])),function(n){return n.$isOpen?"270deg":"180deg"}),h=e.div(d||(d=n(["\n display: flex;\n padding: ",";\n flex-direction: column;\n align-items: flex-start;\n align-self: stretch;\n border-radius: ","px;\n border: 1px solid #eef2f6;\n background: #fff;\n opacity: ",";\n user-select: none;\n transition: border-color 0.2s ease-in-out;\n\n &:hover {\n border-color: #cdd5df;\n\n "," {\n color: #4b5565;\n }\n }\n"],["\n display: flex;\n padding: ",";\n flex-direction: column;\n align-items: flex-start;\n align-self: stretch;\n border-radius: ","px;\n border: 1px solid #eef2f6;\n background: #fff;\n opacity: ",";\n user-select: none;\n transition: border-color 0.2s ease-in-out;\n\n &:hover {\n border-color: #cdd5df;\n\n "," {\n color: #4b5565;\n }\n }\n"])),function(n){return n.$padding||"16px 14px"},function(n){return n.$borderRadius},function(n){return n.$isCompleted?"0.8":"1"},y),v=e.div(p||(p=n(["\n display: flex;\n align-items: center;\n gap: 12px;\n align-self: stretch;\n width: 100%;\n"],["\n display: flex;\n align-items: center;\n gap: 12px;\n align-self: stretch;\n width: 100%;\n"]))),w=e.div(c||(c=n(["\n ","\n\n ","\n\n ","\n"],["\n ","\n\n ","\n\n ","\n"])),t,function(e){return e.$iconType===r.ILLUSTRATION&&o(l||(l=n(["\n border-radius: 40px;\n background: #f6f6f6;\n "],["\n border-radius: 40px;\n background: #f6f6f6;\n "])))},function(e){return e.$iconType===r.NORMAL&&o(f||(f=n(["\n border-radius: 8px;\n border: 1px solid #e3e8ef;\n background: #fff;\n box-shadow:\n 0 -3px 1px 0 rgba(238, 242, 246, 0.5) inset,\n 0 4px 1px 0 rgba(38, 69, 109, 0),\n 0 2px 1px 0 rgba(38, 69, 109, 0.01),\n 0 1px 1px 0 rgba(38, 69, 109, 0.02),\n 0 1px 1px 0 rgba(38, 69, 109, 0.03);\n\n svg {\n color: #4b5565;\n }\n "],["\n border-radius: 8px;\n border: 1px solid #e3e8ef;\n background: #fff;\n box-shadow:\n 0 -3px 1px 0 rgba(238, 242, 246, 0.5) inset,\n 0 4px 1px 0 rgba(38, 69, 109, 0),\n 0 2px 1px 0 rgba(38, 69, 109, 0.01),\n 0 1px 1px 0 rgba(38, 69, 109, 0.02),\n 0 1px 1px 0 rgba(38, 69, 109, 0.03);\n\n svg {\n color: #4b5565;\n }\n "])))}),$=e.div(x||(x=n(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 4px;\n flex: 1 0 0;\n"],["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 4px;\n flex: 1 0 0;\n"]))),k=e.div(u||(u=n(["\n color: #121926;\n ","\n"],["\n color: #121926;\n ","\n"])),i),O=e.div(g||(g=n(["\n color: #364152;\n ","\n"],["\n color: #364152;\n ","\n"])),a),j=e.div(b||(b=n(["\n display: grid;\n grid-template-rows: ",";\n transition: grid-template-rows 300ms ease-in-out;\n width: 100%;\n"],["\n display: grid;\n grid-template-rows: ",";\n transition: grid-template-rows 300ms ease-in-out;\n width: 100%;\n"])),function(n){return n.$isOpen?"1fr":"0fr"}),T=e.div(m||(m=n(["\n overflow: hidden;\n color: #4b5565;\n ","\n\n /* Spacing: We need 20px from header. */\n padding-top: ",";\n\n /* Optional: fade content in/out */\n opacity: ",";\n transition:\n opacity 300ms ease-in-out,\n padding-top 300ms ease-in-out;\n"],["\n overflow: hidden;\n color: #4b5565;\n ","\n\n /* Spacing: We need 20px from header. */\n padding-top: ",";\n\n /* Optional: fade content in/out */\n opacity: ",";\n transition:\n opacity 300ms ease-in-out,\n padding-top 300ms ease-in-out;\n"])),a,function(n){return n.$isOpen?"20px":"0px"},function(n){return n.$isOpen?1:0});export{T as AccordionInner,j as AccordionWrapper,y as ArrowButton,h as Container,$ as Content,O as Description,v as Header,w as IconWrapper,k as Title};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e,{useState as t,useRef as r}from"react";import{Container as n,TooltipBubble as o}from"./style.js";var c=function(c){var i=c.content,l=c.children,u=t(!1),f=u[0],a=u[1],s=r(null),m=e.cloneElement(l,{ref:s});return e.createElement(n,{onMouseEnter:function(){if(s.current){var e=s.current,t=e.offsetWidth;e.scrollWidth>t&&a(!0)}},onMouseLeave:function(){return a(!1)}},m,e.createElement(o,{$isVisible:f},i))};export{c as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import t from"styled-components";import{textXS as o}from"../style/typography.js";var e,i,r=t.div(e||(e=n(["\n position: relative;\n display: inline-flex;\n"],["\n position: relative;\n display: inline-flex;\n"]))),s=t.div(i||(i=n(["\n position: absolute;\n top: 100%;\n left: 50%;\n transform: translateX(-50%);\n margin-top: 8px;\n padding: 4px 8px;\n border-radius: 4px;\n background-color: #1e1e1e;\n color: #ffffff;\n white-space: nowrap;\n opacity: ",";\n visibility: ",";\n transition:\n opacity 0.2s ease-in-out,\n visibility 0.2s ease-in-out;\n z-index: 1000;\n pointer-events: none;\n box-shadow:\n 0px 4px 6px -2px rgba(16, 24, 40, 0.03),\n 0px 12px 16px -4px rgba(16, 24, 40, 0.08);\n\n ",'\n\n &::after {\n content: "";\n position: absolute;\n bottom: 100%;\n left: 50%;\n transform: translateX(-50%);\n border-width: 4px;\n border-style: solid;\n border-color: transparent transparent #1e1e1e transparent;\n }\n'],["\n position: absolute;\n top: 100%;\n left: 50%;\n transform: translateX(-50%);\n margin-top: 8px;\n padding: 4px 8px;\n border-radius: 4px;\n background-color: #1e1e1e;\n color: #ffffff;\n white-space: nowrap;\n opacity: ",";\n visibility: ",";\n transition:\n opacity 0.2s ease-in-out,\n visibility 0.2s ease-in-out;\n z-index: 1000;\n pointer-events: none;\n box-shadow:\n 0px 4px 6px -2px rgba(16, 24, 40, 0.03),\n 0px 12px 16px -4px rgba(16, 24, 40, 0.08);\n\n ",'\n\n &::after {\n content: "";\n position: absolute;\n bottom: 100%;\n left: 50%;\n transform: translateX(-50%);\n border-width: 4px;\n border-style: solid;\n border-color: transparent transparent #1e1e1e transparent;\n }\n'])),function(n){return n.$isVisible?1:0},function(n){return n.$isVisible?"visible":"hidden"},o);export{r as Container,s as TooltipBubble};
|
package/build/renderer/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as t,__spreadArray as n}from'./../ext/tslib/tslib.es6.mjs.js';import{observer as r}from"mobx-react";import i,{useState as o,useEffect as s}from"react";import'./../ext/react-i18next/dist/es/context.js';import{I18nextProvider as a}from'./../ext/react-i18next/dist/es/I18nextProvider.js';import{LoyaltyWidgetViewModel as c}from"../models/index.js";import{LoyaltyCustomerInfo as l}from"../models/loyalty-customer-info/index.js";import{LoyaltyProgramEarningMethod as d}from"../models/loyalty-program-earning-method/index.js";import{LoyaltyProgramPointHistory as u}from"../models/loyalty-program-point-history/index.js";import{LoyaltyProgramSpendingMethod as f}from"../models/loyalty-program-spending-method/index.js";import{LoyaltyWidget as m}from"../models/loyalty-widget/index.js";import{WidgetPositionEnum as v,LoyaltyWidgetLayoutTypeEnum as E}from"../models/loyalty-widget/types/index.js";import{WidgetMode as g,LoyaltyWidgetScreenTypeEnum as y,EarningMethodTypeEnum as p,LoyaltyProgramFilterTypeEnum as h,LoyaltyProgramMethodSpendingTypeEnum as R}from"../models/types/index.js";import T from"./components/mini-mode-button/index.js";import w from"./components/mini-mode-description/index.js";import
|
|
1
|
+
import{__awaiter as e,__generator as t,__spreadArray as n}from'./../ext/tslib/tslib.es6.mjs.js';import{observer as r}from"mobx-react";import i,{useState as o,useEffect as s}from"react";import'./../ext/react-i18next/dist/es/context.js';import{I18nextProvider as a}from'./../ext/react-i18next/dist/es/I18nextProvider.js';import{LoyaltyWidgetViewModel as c}from"../models/index.js";import{LoyaltyCustomerInfo as l}from"../models/loyalty-customer-info/index.js";import{LoyaltyProgramEarningMethod as d}from"../models/loyalty-program-earning-method/index.js";import{LoyaltyProgramPointHistory as u}from"../models/loyalty-program-point-history/index.js";import{LoyaltyProgramSpendingMethod as f}from"../models/loyalty-program-spending-method/index.js";import{LoyaltyWidget as m}from"../models/loyalty-widget/index.js";import{WidgetPositionEnum as v,LoyaltyWidgetLayoutTypeEnum as E}from"../models/loyalty-widget/types/index.js";import{WidgetMode as g,LoyaltyWidgetScreenTypeEnum as y,EarningMethodTypeEnum as p,LoyaltyProgramFilterTypeEnum as h,LoyaltyProgramMethodSpendingTypeEnum as R}from"../models/types/index.js";import T from"./components/mini-mode-button/index.js";import w from"./components/mini-mode-description/index.js";import I from"./screens/credit-earning-methods-screen/index.js";import b from"./screens/credit-history-screen/index.js";import M from"./screens/credit-spending-methods-screen/index.js";import k from"./screens/loyalty-level-screen/index.js";import C from"./screens/main-screen/index.js";import _ from"./utils/i18n.js";import{Container as S,MiniModeWrapper as A,Panel as N,ScreenWrapper as D}from"./style.js";var O=r(function(r){var O,P,L=r.config,x=o(function(){var e=L||window.ikasLoyaltyWidgetConfig;return new c({cartId:(null==e?void 0:e.cartId)||null,ikasEventUser:(null==e?void 0:e.userId)?{id:e.userId}:null},(null==e?void 0:e.cdnURL)||"",(null==e?void 0:e.merchantId)||"",(null==e?void 0:e.currency)||"",(null==e?void 0:e.locale)||"",(null==e?void 0:e.storeURL)||null,null==e?void 0:e.isPreviewMode,null==e?void 0:e.callbacks)})[0],j=o(!1),U=j[0],W=j[1];s(function(){var e=L||window.ikasLoyaltyWidgetConfig;(null==e?void 0:e.onViewModelInitialized)&&e.onViewModelInitialized(x)},[x,L]);var $=function(){return e(void 0,void 0,void 0,function(){var e,r,i,o,s;return t(this,function(t){switch(t.label){case 0:return x.callbacks?(e=new Set,r=new Set,i=new Set,o=new Set,x.earningMethods.forEach(function(t){var s,a;t.methodType===p.ORDER_CREATE&&n(n([],(null===(s=t.orderSettings)||void 0===s?void 0:s.productFilters)||[],!0),(null===(a=t.productSettings)||void 0===a?void 0:a.productFilters)||[],!0).forEach(function(t){t.type===h.PRODUCT_AND_VARIANT?t.idList.forEach(function(t){return e.add(t)}):t.type===h.CATEGORY?t.idList.forEach(function(e){return r.add(e)}):t.type===h.PRODUCT_BRAND?t.idList.forEach(function(e){return i.add(e)}):t.type===h.PRODUCT_TAG&&t.idList.forEach(function(e){return o.add(e)})})}),x.spendingMethods&&x.spendingMethods.forEach(function(t){var n,s;t.type===R.FREE_PRODUCT&&(null===(n=t.discountSettings)||void 0===n?void 0:n.freeProductId)&&e.add(t.discountSettings.freeProductId),null===(s=t.productFilters)||void 0===s||s.forEach(function(t){t.type===h.PRODUCT_AND_VARIANT?t.idList.forEach(function(t){return e.add(t)}):t.type===h.CATEGORY?t.idList.forEach(function(e){return r.add(e)}):t.type===h.PRODUCT_BRAND?t.idList.forEach(function(e){return i.add(e)}):t.type===h.PRODUCT_TAG&&t.idList.forEach(function(e){return o.add(e)})})}),s=[],e.size>0&&x.callbacks.getProducts&&s.push(x.callbacks.getProducts(Array.from(e)).then(function(e){return x.products=e})),r.size>0&&x.callbacks.getCategories&&s.push(x.callbacks.getCategories(Array.from(r)).then(function(e){return x.categories=e})),i.size>0&&x.callbacks.getBrands&&s.push(x.callbacks.getBrands(Array.from(i)).then(function(e){return x.brands=e})),o.size>0&&x.callbacks.getTags&&s.push(x.callbacks.getTags(Array.from(o)).then(function(e){return x.tags=e})),[4,Promise.all(s)]):[2];case 1:return t.sent(),[2]}})})};s(function(){e(void 0,void 0,void 0,function(){var e,n,r,i,o,s;return t(this,function(t){switch(t.label){case 0:if(!x.callbacks)return[3,6];t.label=1;case 1:return t.trys.push([1,4,5,6]),e=[x.callbacks.getLoyaltyWidget(),x.callbacks.listEarningMethods(),x.callbacks.listLoyaltyProgramTier({})],[4,Promise.all(e)];case 2:return n=t.sent(),r=n[0],i=n[1],o=n[2],x.loyaltyWidget=r instanceof m?r:new m(r||{}),x.earningMethods=i.map(function(e){return new d(e)}),x.tiers=o||[],[4,$()];case 3:return t.sent(),[3,6];case 4:return s=t.sent(),console.error("Failed to initialize loyalty data",s),[3,6];case 5:return W(!0),[7];case 6:return[2]}})})},[]),s(function(){if(window.IkasEvents){var e=function(e){var t,n=null===(t=e.data)||void 0===t?void 0:t.customer;n&&(x.ikasEventUser=n),x.userRefreshTrigger++,x.cartRefreshTrigger++},t=function(e){var t,n,r,i,o,s=null===(n=null===(t=e.data)||void 0===t?void 0:t.cart)||void 0===n?void 0:n.id;0===(null===(o=null===(i=null===(r=e.data)||void 0===r?void 0:r.cart)||void 0===i?void 0:i.orderLineItems)||void 0===o?void 0:o.length)?x.cartId=null:x.cartId=s,x.cartRefreshTrigger++},n={CUSTOMER_LOGIN:e,CUSTOMER_VISIT:e,CUSTOMER_LOGOUT:function(){x.userRefreshTrigger++,x.cartRefreshTrigger++},ADD_TO_CART:t,REMOVE_FROM_CART:t,PAGE_VIEW:function(e){var t,n,r=null===(t=e.data)||void 0===t?void 0:t.customer;if(r){var i=!x.ikasEventUser,o=(null===(n=x.ikasEventUser)||void 0===n?void 0:n.subscriptionStatus)!==r.subscriptionStatus;(i||o)&&(x.ikasEventUser=r,x.userRefreshTrigger++,x.cartRefreshTrigger++)}}},r="ikas-loyalty-widget-subscriber";try{window.IkasEvents.subscribe({id:r,callback:function(e){var t=n[e.type];console.log("event"),t&&t(e)}})}catch(e){console.error("Failed to subscribe to IkasEvents",e)}return function(){var e;(null===(e=window.IkasEvents)||void 0===e?void 0:e.unsubscribe)&&window.IkasEvents.unsubscribe(r)}}},[x]),s(function(){e(void 0,void 0,void 0,function(){var e,n,r,i,o;return t(this,function(t){switch(t.label){case 0:if(!x.callbacks||!(null===(o=x.ikasEventUser)||void 0===o?void 0:o.id))return[3,4];t.label=1;case 1:return t.trys.push([1,3,,4]),[4,Promise.all([x.callbacks.getLoyaltyCustomerInfo(),x.callbacks.listLoyaltyProgramPointHistory({})])];case 2:return e=t.sent(),n=e[0],r=e[1],x.user=n?new l(n):null,n||(x.ikasEventUser=null),x.pointHistory=r?r.map(function(e){return new u(e)}):[],[3,4];case 3:return i=t.sent(),console.error("Failed to fetch user data",i),[3,4];case 4:return[2]}})})},[null===(O=x.ikasEventUser)||void 0===O?void 0:O.id,x.userRefreshTrigger]),s(function(){e(void 0,void 0,void 0,function(){var e,n;return t(this,function(t){switch(t.label){case 0:if(!x.callbacks)return[3,5];t.label=1;case 1:return t.trys.push([1,4,,5]),[4,x.callbacks.listSpendingMethodsByCartId(x.cartId)];case 2:return e=t.sent(),x.spendingMethods=e.map(function(e){return new f(e)}),[4,$()];case 3:return t.sent(),[3,5];case 4:return n=t.sent(),console.error("Failed to fetch cart data",n),[3,5];case 5:return[2]}})})},[x.cartId,x.cartRefreshTrigger]);var G=function(e){x.selectedScreen=e},B=function(){x.setWidgetMode(g.MINI_MODE),setTimeout(function(){x.selectedScreen=y.MAIN_SCREEN},300)};s(function(){return x.currentWidgetMode===g.WIDGET_MODE?document.body.style.overflow="hidden":document.body.style.overflow="",function(){document.body.style.overflow=""}},[x.currentWidgetMode]);var F=x.selectedScreen===y.MAIN_SCREEN,V=o(null),z=V[0],H=V[1];s(function(){x.selectedScreen!==y.MAIN_SCREEN&&H(x.selectedScreen)},[x.selectedScreen]);var Y=F?z:x.selectedScreen,q=x.loyaltyWidget.settings.position||v.RIGHT,J=x.loyaltyWidget.settings.type||E.DRAWER;if(!U)return null;var K=(null==L?void 0:L.position)||(null===(P=window.ikasLoyaltyWidgetConfig)||void 0===P?void 0:P.position)||"fixed";return i.createElement(a,{i18n:_},i.createElement(S,{$layoutType:J,$widgetPosition:q,$widgetMode:x.currentWidgetMode,$position:K,onClick:function(){x.currentWidgetMode===g.WIDGET_MODE&&B()},className:"ikas-storefront-widget"},i.createElement(A,{$isVisible:x.currentWidgetMode===g.MINI_MODE,$widgetPosition:q},i.createElement(w,{viewModel:x}),i.createElement(T,{viewModel:x})),i.createElement(N,{$layoutType:J,$isOpen:x.currentWidgetMode===g.WIDGET_MODE,$widgetPosition:q,onClick:function(e){return e.stopPropagation()}},i.createElement(D,{$isActive:F,$isMain:!0,$layoutType:J},i.createElement(C,{viewModel:x,onClose:B,onNavigate:G})),i.createElement(D,{$isActive:!F,$isMain:!1,$layoutType:J},function(){switch(Y){case y.CREDIT_SPENDING_METHODS_SCREEN:return i.createElement(M,{viewModel:x,onBack:function(){return G(y.MAIN_SCREEN)},onClose:B});case y.CREDIT_EARNING_METHODS_SCREEN:return i.createElement(I,{viewModel:x,onBack:function(){return G(y.MAIN_SCREEN)},onClose:B});case y.CREDIT_HISTORY_SCREEN:return i.createElement(b,{viewModel:x,onBack:function(){return G(y.MAIN_SCREEN)},onClose:B});case y.LOYALTY_LEVEL_SCREEN:return i.createElement(k,{viewModel:x,onBack:function(){return G(y.MAIN_SCREEN)},onClose:B});default:return null}}()))))});export{O as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__spreadArray as e}from'./../../../ext/tslib/tslib.es6.mjs.js';import{observer as t}from"mobx-react";import n,{useMemo as r}from"react";import'./../../../ext/react-i18next/dist/es/context.js';import{useTranslation as l}from'./../../../ext/react-i18next/dist/es/useTranslation.js';import{XClose as o}from"../../../assets/icons/x-close.js";import{ChevronLeft as i}from"../../../assets/icons/chevron-left.js";import{Check as
|
|
1
|
+
import{__spreadArray as e}from'./../../../ext/tslib/tslib.es6.mjs.js';import{observer as t}from"mobx-react";import n,{useMemo as r}from"react";import'./../../../ext/react-i18next/dist/es/context.js';import{useTranslation as l}from'./../../../ext/react-i18next/dist/es/useTranslation.js';import{XClose as o}from"../../../assets/icons/x-close.js";import{ChevronLeft as i}from"../../../assets/icons/chevron-left.js";import{Check as c}from"../../../assets/icons/check.js";import a from"../../components/count-up/index.js";import{Container as s,Header as u,IconButton as m,Title as d,Content as p,PointsSection as E,PointsText as f,PointsValue as y,ProgressBarContainer as v,ProgressBarFill as g,DescriptionText as x,TimelineContainer as R,TimelineItem as h,TimelineLine as $,CheckIconContainer as b,CurrentIndicator as j,CurrentIndicatorDot as k,UpcomingIndicator as P,TimelineContent as T,TimelineTitle as q,TimelineDescription as L,MultiplierSection as S,MultiplierValue as C}from"./style.js";var M=t(function(t){var M=t.viewModel,G=t.onBack,W=t.onClose,B=l().t,N=M.user,_=M.tiers,D=r(function(){return e([],_,!0).sort(function(e,t){return(e.pointsRequired||0)-(t.pointsRequired||0)})},[_]),I=r(function(){return(null==N?void 0:N.customerTier)?D.findIndex(function(e){var t;return e.id===(null===(t=N.customerTier)||void 0===t?void 0:t.id)}):-1},[D,null==N?void 0:N.customerTier]),w=r(function(){return N?-1===I?D.find(function(e){return(e.pointsRequired||0)>N.totalPoint})||D[0]:D[I+1]||null:null},[D,I,N]),A=r(function(){return N?w?0===(w.pointsRequired||0)?100:Math.min(N.totalPoint/(w.pointsRequired||1)*100,100):100:0},[N,w]),z=r(function(){return N&&w?Math.max(0,(w.pointsRequired||0)-N.totalPoint):0},[N,w]);return N?n.createElement(s,null,n.createElement(u,null,n.createElement(m,{onClick:G},n.createElement(i,null)),n.createElement(d,null,B("screens.loyaltyLevel")),n.createElement(m,{onClick:W},n.createElement(o,null))),n.createElement(p,null,n.createElement(E,{$borderRadius:M.loyaltyWidget.settings.cartBorderRadius},n.createElement("div",null,n.createElement(f,null,B("header.earnedPoints")),n.createElement(y,null,n.createElement(a,{end:N.totalPoint})," ",B("common.points"))),n.createElement(v,null,n.createElement(g,{$percentage:A,$color:M.loyaltyWidget.header.background.bgColor||void 0,$isGradient:"GRADIENT"===M.loyaltyWidget.header.background.type})),n.createElement(x,null,w?B("screens.loyaltyLevelScreen.reachNextTier",{tierName:w.name,points:z}):B("screens.loyaltyLevelScreen.allTiersCompleted"))),n.createElement(R,null,D.map(function(e,t){var r="upcoming";I>-1?r=t<I?"completed":t===I?"current":"upcoming":N.totalPoint>=(e.pointsRequired||0)&&(r="completed");var l=t===D.length-1,o="solid-light",i=!0,a=!0;return"completed"===r?I>-1&&t+1===I?(o="solid-dark",i=!0,a=!1):I>-1&&t+1<I?(o="solid-dark",i=!0,a=!0):(o="solid-light",i=!0,a=!0):"current"===r?(o="split",i=!1,a=!0):(o="solid-light",i=!0,a=!0),n.createElement(h,{key:e.id},n.createElement($,{$isLast:l,$connectionType:o,$topGap:i,$bottomGap:a}),"completed"===r?n.createElement(b,null,n.createElement(c,null)):"current"===r?n.createElement(j,null,n.createElement(k,null)):n.createElement(P,null),n.createElement(T,null,n.createElement(q,{$status:r},e.name),n.createElement(L,{$status:r},"current"===r?B("screens.loyaltyLevelScreen.currentTierDescription"):"".concat(e.pointsRequired||0," ").concat(B("common.points")," ").concat(B("screens.loyaltyLevelScreen.afterEarning"))),(e.tierPointMultiplier||1)>1&&n.createElement(S,{$borderRadius:M.loyaltyWidget.settings.cartBorderRadius},B("screens.loyaltyLevelScreen.multiplierPrefix")," ",n.createElement(C,null,e.tierPointMultiplier||1,"x")," ",B("screens.loyaltyLevelScreen.multiplierSuffix"))))})))):null});export{M as default};
|
|
@@ -12,11 +12,15 @@ export declare const ProgressBarContainer: import("styled-components").StyledCom
|
|
|
12
12
|
export declare const ProgressBarFill: import("styled-components").StyledComponent<"div", any, {
|
|
13
13
|
$percentage: number;
|
|
14
14
|
$color?: string;
|
|
15
|
+
$isGradient?: boolean;
|
|
15
16
|
}, never>;
|
|
16
17
|
export declare const DescriptionText: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
17
18
|
export declare const TimelineContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
18
19
|
export declare const TimelineItem: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
19
20
|
export declare const TimelineLine: import("styled-components").StyledComponent<"div", any, {
|
|
21
|
+
$connectionType: "solid-dark" | "split" | "solid-light";
|
|
22
|
+
$topGap: boolean;
|
|
23
|
+
$bottomGap: boolean;
|
|
20
24
|
$isLast: boolean;
|
|
21
25
|
}, never>;
|
|
22
26
|
export declare const TimelineContent: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import e,{css as
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import e,{css as i}from"styled-components";import{textMDMedium as t,textSM as o,textSMMedium as r,textSMSemiBold as d}from"../../components/style/typography.js";var p,a,l,x,c,f,s,g,u,b,h,m,y,v,w,k,j,z,B,$,A,E,C,G,F,R=e.div(p||(p=n(["\n display: flex;\n flex-direction: column;\n height: 100%;\n background-color: #ffffff;\n"],["\n display: flex;\n flex-direction: column;\n height: 100%;\n background-color: #ffffff;\n"]))),L=e.div(a||(a=n(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 20px;\n border-bottom: 1px solid #eef2f6;\n position: sticky;\n top: 0;\n background-color: #ffffff;\n z-index: 10;\n"],["\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 20px;\n border-bottom: 1px solid #eef2f6;\n position: sticky;\n top: 0;\n background-color: #ffffff;\n z-index: 10;\n"]))),T=e.div(l||(l=n(["\n ","\n color: #121926;\n text-align: center;\n flex: 1;\n"],["\n ","\n color: #121926;\n text-align: center;\n flex: 1;\n"])),t),_=e.button(x||(x=n(["\n background: none;\n border: none;\n cursor: pointer;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #697586;\n\n &:hover {\n opacity: 0.8;\n }\n"],["\n background: none;\n border: none;\n cursor: pointer;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #697586;\n\n &:hover {\n opacity: 0.8;\n }\n"]))),q=e.div(c||(c=n(["\n padding: 20px 16px;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 32px;\n flex: 1;\n"],["\n padding: 20px 16px;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 32px;\n flex: 1;\n"]))),D=e.div(f||(f=n(["\n display: flex;\n width: 100%;\n padding: 16px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 16px;\n border-radius: ",";\n border: 1px solid #eef2f6;\n background: #fff;\n box-shadow:\n 0 7px 2px 0 rgba(0, 0, 0, 0),\n 0 5px 2px 0 rgba(0, 0, 0, 0.01),\n 0 3px 2px 0 rgba(0, 0, 0, 0.02),\n 0 1px 1px 0 rgba(0, 0, 0, 0.03),\n 0 0 1px 0 rgba(0, 0, 0, 0.04);\n box-sizing: border-box;\n"],["\n display: flex;\n width: 100%;\n padding: 16px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 16px;\n border-radius: ",";\n border: 1px solid #eef2f6;\n background: #fff;\n box-shadow:\n 0 7px 2px 0 rgba(0, 0, 0, 0),\n 0 5px 2px 0 rgba(0, 0, 0, 0.01),\n 0 3px 2px 0 rgba(0, 0, 0, 0.02),\n 0 1px 1px 0 rgba(0, 0, 0, 0.03),\n 0 0 1px 0 rgba(0, 0, 0, 0.04);\n box-sizing: border-box;\n"])),function(n){var e=n.$borderRadius;return"".concat(e,"px")}),H=e.div(s||(s=n(["\n ","\n color: #4B5565;\n text-align: center;\n"],["\n ","\n color: #4B5565;\n text-align: center;\n"])),o),I=e.div(g||(g=n(["\n ","\n color: #121926;\n margin-top: 2px;\n text-align: center;\n"],["\n ","\n color: #121926;\n margin-top: 2px;\n text-align: center;\n"])),t),J=e.div(u||(u=n(["\n width: 100%;\n height: 8px;\n border-radius: 4px;\n background: #eef2f6;\n overflow: hidden;\n"],["\n width: 100%;\n height: 8px;\n border-radius: 4px;\n background: #eef2f6;\n overflow: hidden;\n"]))),K=e.div(b||(b=n(["\n width: ","%;\n height: 100%;\n border-radius: 4px;\n background: ",";\n transition: width 0.3s ease-in-out;\n"],["\n width: ","%;\n height: 100%;\n border-radius: 4px;\n background: ",";\n transition: width 0.3s ease-in-out;\n"])),function(n){return n.$percentage},function(n){return n.$isGradient?"linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(255, 255, 255, 0.5) 100%), ".concat(n.$color||"#4F46E5"):n.$color||"#4F46E5"}),M=e.div(h||(h=n(["\n color: #4b5565;\n text-align: center;\n ","\n"],["\n color: #4b5565;\n text-align: center;\n ","\n"])),o),N=e.div(m||(m=n(["\n display: flex;\n flex-direction: column;\n width: 100%;\n padding: 0 6px;\n box-sizing: border-box;\n"],["\n display: flex;\n flex-direction: column;\n width: 100%;\n padding: 0 6px;\n box-sizing: border-box;\n"]))),O=e.div(y||(y=n(["\n display: flex;\n gap: 16px;\n position: relative;\n padding-bottom: 48px;\n\n &:last-child {\n padding-bottom: 0;\n }\n"],["\n display: flex;\n gap: 16px;\n position: relative;\n padding-bottom: 48px;\n\n &:last-child {\n padding-bottom: 0;\n }\n"]))),P=e.div(v||(v=n(["\n position: absolute;\n left: 10px; /* Center of the 20px icon */\n top: ",";\n bottom: ",";\n width: 1px;\n display: ",";\n background: ",";\n"],["\n position: absolute;\n left: 10px; /* Center of the 20px icon */\n top: ",";\n bottom: ",";\n width: 1px;\n display: ",";\n background: ",";\n"])),function(n){return n.$topGap?"26px":"20px"},function(n){return n.$bottomGap?"6px":"0"},function(n){return n.$isLast?"none":"block"},function(n){switch(n.$connectionType){case"solid-dark":return"#9AA4B2";case"solid-light":default:return"#E3E8EF";case"split":return"linear-gradient(to bottom, #9AA4B2 50%, #E3E8EF 50%)"}}),Q=e.div(w||(w=n(["\n flex: 1;\n display: flex;\n flex-direction: column;\n"],["\n flex: 1;\n display: flex;\n flex-direction: column;\n"]))),S=e.div(j||(j=n(["\n ","\n color: ",";\n\n ","\n"],["\n ","\n color: ",";\n\n ","\n"])),r,function(n){return"completed"===n.$status?"#697586":"#121926"},function(e){return"completed"===e.$status&&i(k||(k=n(["\n text-decoration-line: line-through;\n "],["\n text-decoration-line: line-through;\n "])))}),U=e.div(B||(B=n(["\n ","\n margin-top: 2px;\n color: ","; /* Current #4B5565. Completed #9AA4B2 */\n\n ","\n"],["\n ","\n margin-top: 2px;\n color: ","; /* Current #4B5565. Completed #9AA4B2 */\n\n ","\n"])),o,function(n){return"completed"===n.$status?"#9AA4B2":"#4B5565"},function(e){return"completed"===e.$status&&i(z||(z=n(["\n text-decoration-line: line-through;\n "],["\n text-decoration-line: line-through;\n "])))}),V=e.div($||($=n(["\n padding: 8px 16px;\n align-self: stretch;\n border-radius: ",";\n background: var(--Gray-Blue-50, #f8fafc);\n margin-top: 12px;\n ","\n color: #4B5565;\n"],["\n padding: 8px 16px;\n align-self: stretch;\n border-radius: ",";\n background: var(--Gray-Blue-50, #f8fafc);\n margin-top: 12px;\n ","\n color: #4B5565;\n"])),function(n){var e=n.$borderRadius;return"".concat(e,"px")},o),W=e.span(A||(A=n(["\n ","\n color: #121926;\n"],["\n ","\n color: #121926;\n"])),d),X=e.div(E||(E=n(["\n display: flex;\n width: 20px;\n height: 20px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 5px;\n\n border-radius: 10px;\n background: #eef2f6;\n z-index: 2;\n\n svg {\n width: 14px;\n height: 14px;\n color: #121926;\n }\n"],["\n display: flex;\n width: 20px;\n height: 20px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 5px;\n\n border-radius: 10px;\n background: #eef2f6;\n z-index: 2;\n\n svg {\n width: 14px;\n height: 14px;\n color: #121926;\n }\n"]))),Y=e.div(C||(C=n(["\n display: flex;\n width: 20px;\n height: 20px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 5px;\n\n border-radius: 10px;\n border: 0.8px solid #121926;\n background: #fff;\n z-index: 2;\n box-sizing: border-box;\n"],["\n display: flex;\n width: 20px;\n height: 20px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 5px;\n\n border-radius: 10px;\n border: 0.8px solid #121926;\n background: #fff;\n z-index: 2;\n box-sizing: border-box;\n"]))),Z=e.div(G||(G=n(["\n width: 10px;\n height: 10px;\n flex-shrink: 0;\n\n border-radius: 5px;\n background: #121926;\n"],["\n width: 10px;\n height: 10px;\n flex-shrink: 0;\n\n border-radius: 5px;\n background: #121926;\n"]))),nn=e.div(F||(F=n(["\n display: flex;\n width: 20px;\n height: 20px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 5px;\n border-radius: 10px;\n background: #eef2f6;\n z-index: 2;\n"],["\n display: flex;\n width: 20px;\n height: 20px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 5px;\n border-radius: 10px;\n background: #eef2f6;\n z-index: 2;\n"])));export{X as CheckIconContainer,R as Container,q as Content,Y as CurrentIndicator,Z as CurrentIndicatorDot,M as DescriptionText,L as Header,_ as IconButton,V as MultiplierSection,W as MultiplierValue,D as PointsSection,H as PointsText,I as PointsValue,J as ProgressBarContainer,K as ProgressBarFill,N as TimelineContainer,Q as TimelineContent,U as TimelineDescription,O as TimelineItem,P as TimelineLine,S as TimelineTitle,T as Title,nn as UpcomingIndicator};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { LoyaltyWidgetViewModel } from "models";
|
|
3
|
+
import { CartLoyaltyLineData } from "models/loyalty-customer-info";
|
|
4
|
+
type Props = {
|
|
5
|
+
viewModel: LoyaltyWidgetViewModel;
|
|
6
|
+
line: CartLoyaltyLineData;
|
|
7
|
+
};
|
|
8
|
+
declare const AppliedDiscount: React.FC<Props>;
|
|
9
|
+
export default AppliedDiscount;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{__awaiter as e,__generator as t}from'./../../../../ext/tslib/tslib.es6.mjs.js';import{observer as r}from"mobx-react";import n from"react";import'./../../../../ext/react-i18next/dist/es/context.js';import{useTranslation as o}from'./../../../../ext/react-i18next/dist/es/useTranslation.js';import{ArrowRight as i}from"../../../../assets/icons/arrow-right.js";import{CheckCircle as s}from"../../../../assets/icons/check-circle.js";import{CheckFillIllustration as c}from"../../../../assets/widget-icons/illustraions/check-fill.js";import{CampaignTypeEnum as a}from"../../../../models/loyalty-customer-info/index.js";import{WidgetIconTypeEnum as l}from"../../../../models/loyalty-widget/types/index.js";import{Container as u,IconWrapper as m,ContentWrapper as d,TextRow as p,ButtonsRow as f,ActionButton as E,Loader as y,ArrowIcon as _}from"./style.js";var g=r(function(r){var g=r.viewModel,h=r.line,v=o().t,T=g.loyaltyWidget.settings.widgetIconType,j=n.useState(!1),w=j[0],b=j[1];return n.createElement(u,null,n.createElement(m,{$iconType:T},function(){switch(T){case l.ILLUSTRATION:return n.createElement(c,null);case l.NORMAL:case l.NONE:default:return n.createElement(s,null)}}()),n.createElement(d,null,n.createElement(p,null,function(){var e=g.formatCurrency(h.discountAmount);switch(h.campaignType){case a.FIXED_AMOUNT:return v("main_screen.appliedDiscount.fixedAmount",{amount:e});case a.FREE_SHIPPING:return v("main_screen.appliedDiscount.freeShipping");case a.RATIO:return v("main_screen.appliedDiscount.ratio",{amount:"%".concat(h.discountAmount)});case a.BUY_X_THEN_GET_Y:return v("main_screen.appliedDiscount.freeProduct");default:return v("main_screen.appliedDiscount.generic",{amount:e})}}()),n.createElement(f,null,n.createElement(E,{$color:"#697586",$disabled:w,onClick:function(){return e(void 0,void 0,void 0,function(){var e;return t(this,function(t){switch(t.label){case 0:if(!(null===(e=g.callbacks)||void 0===e?void 0:e.removeLoyaltyPointsFromCart))return[3,4];b(!0),t.label=1;case 1:return t.trys.push([1,,3,4]),[4,g.callbacks.removeLoyaltyPointsFromCart()];case 2:return t.sent(),g.cartRefreshTrigger++,g.userRefreshTrigger++,[3,4];case 3:return b(!1),[7];case 4:return[2]}})})}},w&&n.createElement(y,null),v("main_screen.appliedDiscount.remove")),n.createElement(E,{$color:"#121926",$disabled:w,onClick:function(){g.storeUrl&&(window.location.href="".concat(g.storeUrl,"/checkout"))}},v("main_screen.appliedDiscount.goToCheckout"),n.createElement(_,null,n.createElement(i,null))))))});export{g as default};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { WidgetIconTypeEnum } from "models/loyalty-widget/types";
|
|
2
|
+
export declare const Container: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const ContentWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
+
export declare const TextRow: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
5
|
+
export declare const IconWrapper: import("styled-components").StyledComponent<"div", any, {
|
|
6
|
+
$iconType: WidgetIconTypeEnum;
|
|
7
|
+
}, never>;
|
|
8
|
+
export declare const ButtonsRow: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
9
|
+
export declare const ActionButton: import("styled-components").StyledComponent<"button", any, {
|
|
10
|
+
$color: string;
|
|
11
|
+
$disabled?: boolean;
|
|
12
|
+
}, never>;
|
|
13
|
+
export declare const Loader: import("styled-components").StyledComponent<"span", any, {}, never>;
|
|
14
|
+
export declare const ArrowIcon: import("styled-components").StyledComponent<"span", any, {}, never>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../../ext/tslib/tslib.es6.mjs.js';import e,{css as r,keyframes as i}from"styled-components";import{WidgetIconTypeEnum as t}from"../../../../models/loyalty-widget/types/index.js";import{textSM as p,textSMMedium as o}from"../../../components/style/typography.js";var d,x,a,s,l,g,f,c,h,b,u,m,y=e.div(d||(d=n(["\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 16px 14px;\n gap: 12px;\n align-self: stretch;\n border-radius: 6px;\n border: 1px solid #eef2f6;\n background: #f8fafc;\n"],["\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 16px 14px;\n gap: 12px;\n align-self: stretch;\n border-radius: 6px;\n border: 1px solid #eef2f6;\n background: #f8fafc;\n"]))),w=e.div(x||(x=n(["\n display: flex;\n flex-direction: column;\n gap: 6px;\n flex: 1;\n"],["\n display: flex;\n flex-direction: column;\n gap: 6px;\n flex: 1;\n"]))),v=e.div(a||(a=n(["\n color: #121926;\n ","\n"],["\n color: #121926;\n ","\n"])),p),k=e.div(f||(f=n(["\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n color: #4b5565;\n\n ","\n"],["\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n color: #4b5565;\n\n ","\n"])),function(e){switch(e.$iconType){case t.ILLUSTRATION:return r(s||(s=n(["\n width: 40px;\n height: 40px;\n padding: 10px;\n border-radius: 40px;\n border: 0.6px solid #e3e8ef;\n background: #fff;\n\n & > svg {\n width: 20px;\n height: 20px;\n }\n "],["\n width: 40px;\n height: 40px;\n padding: 10px;\n border-radius: 40px;\n border: 0.6px solid #e3e8ef;\n background: #fff;\n\n & > svg {\n width: 20px;\n height: 20px;\n }\n "])));case t.NORMAL:return r(l||(l=n(["\n width: 36px;\n height: 36px;\n border-radius: 8px;\n border: 1px solid #e3e8ef;\n background: #fff;\n box-shadow:\n 0 -3px 1px 0 rgba(238, 242, 246, 0.5) inset,\n 0 4px 1px 0 rgba(38, 69, 109, 0),\n 0 2px 1px 0 rgba(38, 69, 109, 0.01),\n 0 1px 1px 0 rgba(38, 69, 109, 0.02),\n 0 1px 1px 0 rgba(38, 69, 109, 0.03);\n\n & > svg {\n width: 16px;\n height: 16px;\n }\n "],["\n width: 36px;\n height: 36px;\n border-radius: 8px;\n border: 1px solid #e3e8ef;\n background: #fff;\n box-shadow:\n 0 -3px 1px 0 rgba(238, 242, 246, 0.5) inset,\n 0 4px 1px 0 rgba(38, 69, 109, 0),\n 0 2px 1px 0 rgba(38, 69, 109, 0.01),\n 0 1px 1px 0 rgba(38, 69, 109, 0.02),\n 0 1px 1px 0 rgba(38, 69, 109, 0.03);\n\n & > svg {\n width: 16px;\n height: 16px;\n }\n "])));case t.NONE:default:return r(g||(g=n(["\n width: 16px;\n height: 16px;\n\n & > svg {\n width: 16px;\n height: 16px;\n }\n "],["\n width: 16px;\n height: 16px;\n\n & > svg {\n width: 16px;\n height: 16px;\n }\n "])))}}),j=e.div(c||(c=n(["\n display: flex;\n align-items: center;\n gap: 12px;\n"],["\n display: flex;\n align-items: center;\n gap: 12px;\n"]))),N=i(h||(h=n(["\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n"],["\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n"]))),$=e.button(b||(b=n(["\n ","\n color: ",";\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 6px;\n opacity: ",";\n pointer-events: ",";\n\n &:hover {\n opacity: 0.8;\n }\n"],["\n ","\n color: ",";\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 6px;\n opacity: ",";\n pointer-events: ",";\n\n &:hover {\n opacity: 0.8;\n }\n"])),o,function(n){return n.$color},function(n){return n.$disabled?.5:1},function(n){return n.$disabled?"none":"auto"}),L=e.span(u||(u=n(["\n width: 14px;\n height: 14px;\n border: 2px solid currentColor;\n border-top-color: transparent;\n border-radius: 50%;\n animation: "," 0.8s linear infinite;\n"],["\n width: 14px;\n height: 14px;\n border: 2px solid currentColor;\n border-top-color: transparent;\n border-radius: 50%;\n animation: "," 0.8s linear infinite;\n"])),N),O=e.span(m||(m=n(["\n display: flex;\n align-items: center;\n justify-content: center;\n\n & > svg {\n width: 16px;\n height: 16px;\n }\n"],["\n display: flex;\n align-items: center;\n justify-content: center;\n\n & > svg {\n width: 16px;\n height: 16px;\n }\n"])));export{$ as ActionButton,O as ArrowIcon,j as ButtonsRow,y as Container,w as ContentWrapper,k as IconWrapper,L as Loader,v as TextRow};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{observer as e}from"mobx-react";import t from"react";import'./../../../../ext/react-i18next/dist/es/context.js';import{useTranslation as r}from'./../../../../ext/react-i18next/dist/es/useTranslation.js';import{InformationCircleIllustration as o}from"../../../../assets/widget-icons/illustraions/informationCircleIllustration.js";import{InformationCircle as i}from"../../../../assets/widget-icons/normal/informationCircle.js";import{WidgetIconTypeEnum as n}from"../../../../models/loyalty-widget/types/index.js";import{Container as s,IconWrapper as a}from"./style.js";var l=e(function(e){var l=e.viewModel,m=r().t,c=l.loyaltyWidget.settings.widgetIconType;return t.createElement(s,null,t.createElement(a,{$iconType:c},function(){switch(c){case n.ILLUSTRATION:return t.createElement(o,null);case n.NORMAL:case n.NONE:default:return t.createElement(i,null)}}()),m("main_screen.cartWarning"))});export{l as default};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { WidgetIconTypeEnum } from "models/loyalty-widget/types";
|
|
2
|
+
export declare const Container: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const IconWrapper: import("styled-components").StyledComponent<"div", any, {
|
|
4
|
+
$iconType: WidgetIconTypeEnum;
|
|
5
|
+
}, never>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../../ext/tslib/tslib.es6.mjs.js';import e,{css as o}from"styled-components";import{WidgetIconTypeEnum as t}from"../../../../models/loyalty-widget/types/index.js";import{textSM as r}from"../../../components/style/typography.js";var i,l,d,p,s=e.div(i||(i=n(["\n display: flex;\n padding: 12px;\n align-items: center;\n gap: 6px;\n align-self: stretch;\n border-radius: 6px;\n border: 1px solid #eef2f6;\n background: #f8fafc;\n color: #121926;\n ","\n"],["\n display: flex;\n padding: 12px;\n align-items: center;\n gap: 6px;\n align-self: stretch;\n border-radius: 6px;\n border: 1px solid #eef2f6;\n background: #f8fafc;\n color: #121926;\n ","\n"])),r),c=e.div(p||(p=n(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 16px;\n height: 16px;\n\n /* Default color or for Illustration if needed */\n color: #697586;\n\n ","\n\n ","\n \n & > svg {\n width: 16px;\n height: 16px;\n }\n"],["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 16px;\n height: 16px;\n\n /* Default color or for Illustration if needed */\n color: #697586;\n\n ","\n\n ","\n \n & > svg {\n width: 16px;\n height: 16px;\n }\n"])),function(e){return e.$iconType===t.NORMAL&&o(l||(l=n(["\n color: #458cdb;\n "],["\n color: #458cdb;\n "])))},function(e){return e.$iconType===t.NONE&&o(d||(d=n(["\n color: #697586;\n "],["\n color: #697586;\n "])))});export{s as Container,c as IconWrapper};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{observer as e}from"mobx-react";import t from"react";import'./../../../../../ext/react-i18next/dist/es/context.js';import{useTranslation as
|
|
1
|
+
import{observer as e}from"mobx-react";import t from"react";import'./../../../../../ext/react-i18next/dist/es/context.js';import{useTranslation as n}from'./../../../../../ext/react-i18next/dist/es/useTranslation.js';import{BadgeLevel1 as l}from"../../../../../assets/badgeLevel1.js";import{BadgeLevel2 as r}from"../../../../../assets/badgeLevel2.js";import{BadgeLevel3 as o}from"../../../../../assets/badgeLevel3.js";import{BadgeLevel4 as a}from"../../../../../assets/badgeLevel4.js";import{BadgeIconTypeEnum as m}from"../../../../../models/loyalty-widget/types/index.js";import s from"../../../../components/count-up/index.js";import c from"../../../../components/tooltip/index.js";import{Container as u,TopRow as i,LeftSection as d,BadgeIconContainer as E,PointsContainer as p,Label as f,PointsValue as g,CurrentPoints as L,TotalPoints as v,RightSection as b,LevelBadge as y,BadgeText as j,ProgressBarContainer as x,ProgressBarFill as h}from"./style.js";var T=e(function(e){var T=e.viewModel,_=n().t,I=T.loyaltyWidget,V=T.user,w=I.settings;if(!V)return null;var M=V.totalPoint,N=V.customerTier,P=V.nextTierRequiredPoint||0,W=P>0?Math.min(M/P*100,100):0,$=t.useMemo(function(){var e=V.customerTier;return e?"🏆 ".concat(e.name):"🏆 "},[w.badgeIconLevel,V.customerTier]);return t.createElement(u,null,t.createElement(i,null,t.createElement(d,null,t.createElement(E,null,function(){switch(w.badgeIconLevel){case m.LEVEL_1:return t.createElement(l,null);case m.LEVEL_2:return t.createElement(r,null);case m.LEVEL_3:return t.createElement(o,null);case m.LEVEL_4:return t.createElement(a,null);default:return null}}()),t.createElement(p,null,t.createElement(f,null,_("header.earnedPoints")),t.createElement(g,null,t.createElement(L,null,t.createElement(s,{end:M})),P>0&&t.createElement(v,null,"/ ",P)))),t.createElement(b,null,w.badgeIconLevel!==m.NONE&&!!(null==N?void 0:N.name.length)&&t.createElement(y,null,t.createElement(c,{content:$},t.createElement(j,null,$))))),P>0&&t.createElement(x,null,t.createElement(h,{$percentage:W,$color:T.loyaltyWidget.header.background.bgColor||void 0,$isGradient:"GRADIENT"===T.loyaltyWidget.header.background.type})))});export{T as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__makeTemplateObject as n}from'./../../../../../ext/tslib/tslib.es6.mjs.js';import e from"styled-components";import{textSM as i,displayXSSemiBold as a,textLGSemiBold as r}from"../../../../components/style/typography.js";var
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../../../ext/tslib/tslib.es6.mjs.js';import e from"styled-components";import{textSM as i,displayXSSemiBold as a,textLGSemiBold as r}from"../../../../components/style/typography.js";var t=e.div(b||(b=n(["\n display: flex;\n flex-direction: column;\n padding: 16px;\n gap: 20px;\n width: 100%;\n box-sizing: border-box;\n"],["\n display: flex;\n flex-direction: column;\n padding: 16px;\n gap: 20px;\n width: 100%;\n box-sizing: border-box;\n"]))),p=e.div(h||(h=n(["\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 12px;\n width: 100%;\n"],["\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 12px;\n width: 100%;\n"]))),d=e.div(u||(u=n(["\n display: flex;\n gap: 16px;\n align-items: center;\n"],["\n display: flex;\n gap: 16px;\n align-items: center;\n"]))),o=e.div(w||(w=n([""],[""]))),x=e.div(m||(m=n(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n"],["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n"]))),l=e.div(v||(v=n(["\n color: #121926;\n text-align: center;\n ","\n"],["\n color: #121926;\n text-align: center;\n ","\n"])),i),s=e.div(y||(y=n(["\n display: flex;\n align-items: flex-end;\n gap: 4px;\n"],["\n display: flex;\n align-items: flex-end;\n gap: 4px;\n"]))),g=e.span(k||(k=n(["\n color: #121926;\n ","\n"],["\n color: #121926;\n ","\n"])),a),f=e.span(B||(B=n(["\n color: #9aa4b2;\n ","\n"],["\n color: #9aa4b2;\n ","\n"])),r),c=e.div(j||(j=n(["\n svg {\n width: 40px;\n height: 40px;\n }\n"],["\n svg {\n width: 40px;\n height: 40px;\n }\n"])));e.div(G||(G=n(["\n display: flex;\n padding: 4px 10px;\n align-items: center;\n gap: 4px;\n border-radius: 999px;\n border: 1px solid var(--Gray-Blue-100, #eef2f6);\n background: var(--Basic-50, #fff);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n"],["\n display: flex;\n padding: 4px 10px;\n align-items: center;\n gap: 4px;\n border-radius: 999px;\n border: 1px solid var(--Gray-Blue-100, #eef2f6);\n background: var(--Basic-50, #fff);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n"])));var b,h,u,w,m,v,y,k,B,j,G,z,$,E,F,_=e.div(z||(z=n(["\n display: flex;\n padding: 4px 10px;\n justify-content: center;\n align-items: center;\n gap: 6px;\n\n border-radius: 8px;\n border: 0.6px solid var(--Gray-Blue-300, #cdd5df);\n background: var(--Basic-50, #fff);\n box-shadow:\n 0 1px 1px 0 rgba(38, 69, 109, 0.03),\n 0 1px 1px 0 rgba(38, 69, 109, 0.02),\n 0 2px 1px 0 rgba(38, 69, 109, 0.01),\n 0 -3px 1px 0 rgba(238, 242, 246, 0.5) inset;\n"],["\n display: flex;\n padding: 4px 10px;\n justify-content: center;\n align-items: center;\n gap: 6px;\n\n border-radius: 8px;\n border: 0.6px solid var(--Gray-Blue-300, #cdd5df);\n background: var(--Basic-50, #fff);\n box-shadow:\n 0 1px 1px 0 rgba(38, 69, 109, 0.03),\n 0 1px 1px 0 rgba(38, 69, 109, 0.02),\n 0 2px 1px 0 rgba(38, 69, 109, 0.01),\n 0 -3px 1px 0 rgba(238, 242, 246, 0.5) inset;\n"]))),q=e.span($||($=n(["\n color: #364152;\n text-align: center;\n\n font-size: 14px;\n font-style: normal;\n font-weight: 500;\n line-height: 20px;\n\n max-width: 70px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n"],["\n color: #364152;\n text-align: center;\n\n font-size: 14px;\n font-style: normal;\n font-weight: 500;\n line-height: 20px;\n\n max-width: 70px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n"]))),A=e.div(E||(E=n(["\n width: 100%;\n height: 8px;\n border-radius: 4px;\n background: #eef2f6;\n overflow: hidden;\n"],["\n width: 100%;\n height: 8px;\n border-radius: 4px;\n background: #eef2f6;\n overflow: hidden;\n"]))),C=e.div(F||(F=n(["\n width: ","%;\n height: 100%;\n\n border-radius: 4px;\n background: ",";\n\n transition: width 0.3s ease-in-out;\n"],["\n width: ","%;\n height: 100%;\n\n border-radius: 4px;\n background: ",";\n\n transition: width 0.3s ease-in-out;\n"])),function(n){return n.$percentage},function(n){return n.$isGradient?"linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(255, 255, 255, 0.5) 100%), ".concat(n.$color||"#4F46E5"):n.$color||"#4F46E5"});export{c as BadgeIconContainer,q as BadgeText,t as Container,g as CurrentPoints,l as Label,d as LeftSection,_ as LevelBadge,x as PointsContainer,s as PointsValue,A as ProgressBarContainer,C as ProgressBarFill,o as RightSection,p as TopRow,f as TotalPoints};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as t,__assign as
|
|
1
|
+
import{__awaiter as e,__generator as t,__assign as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import{observer as o}from"mobx-react";import i from"react";import'./../../../ext/react-i18next/dist/es/context.js';import{useTranslation as r}from'./../../../ext/react-i18next/dist/es/useTranslation.js';import{EarningMethodTypeEnum as a,WidgetMode as s}from"../../../models/types/index.js";import d from"../../components/section-title/index.js";import l from"./applied-discount/index.js";import m from"./cart-warning/index.js";import c from"./earning-methods-section/index.js";import p from"./header/index.js";import{CARD_OVERLAP_TOP as g}from"./header/style.js";import u from"./program-info-section/index.js";import f from"./spending-methods-section/index.js";import{Container as h,Content as v,Section as E}from"./style.js";var x=o(function(o){var x,M=o.viewModel,T=o.onClose,y=o.onNavigate,j=r().t,b=i.useState(0),w=b[0],S=b[1],k=Math.max(w-g+32,32),C=M.spendingMethods.filter(function(e){return e.isAvailable}),I=!!M.user&&!M.cartId,_=M.shouldShowSpendingMethods&&C.length>0,L=M.earningMethods.length>0,R=_||L,A=(null===(x=M.user)||void 0===x?void 0:x.cartLoyaltyLines)||[];return i.createElement(h,null,i.createElement(p,{viewModel:M,onClose:T,onCardHeightChange:S,headerGap:24}),i.createElement(v,{$topPadding:k},A.length>0&&i.createElement("div",{style:{padding:"0 16px",marginTop:-10,marginBottom:32,display:"flex",flexDirection:"column",gap:8}},A.map(function(e,t){return i.createElement(l,{key:e.loyaltySpendingMethodId||t,viewModel:M,line:e})})),I&&i.createElement("div",{style:{padding:"0 16px",marginTop:-20,marginBottom:24}},i.createElement(m,{viewModel:M})),R&&i.createElement(E,{style:{marginBottom:32}},i.createElement(d,{style:{paddingTop:0,paddingLeft:16,paddingRight:16}},j(_?"main_screen.spendingMethodsTitle":"main_screen.earningMethodsTitle")),_?i.createElement(f,{viewModel:M,mode:"card",methods:C,getActionProps:function(e){return null}}):i.createElement(c,{viewModel:M,getActionProps:function(o){return o.methodType===a.CUSTOMER_REGISTER?{actionText:j("common.create"),onClick:function(){M.storeUrl&&(M.setWidgetMode(s.MINI_MODE),window.location.href="".concat(M.storeUrl,"/account/register"))}}:o.methodType===a.ENABLE_SUBSCRIPTION?{actionText:j("common.allow"),onClick:function(){return e(void 0,void 0,void 0,function(){var e;return t(this,function(t){switch(t.label){case 0:return(null===(e=M.callbacks)||void 0===e?void 0:e.subscribeToMarketingNotifications)?(M.isActionLoading=!0,[4,M.callbacks.subscribeToMarketingNotifications()]):[3,2];case 1:t.sent()&&(M.ikasEventUser=n(n({},M.ikasEventUser),{subscriptionStatus:"SUBSCRIBED"}),M.userRefreshTrigger++),M.isActionLoading=!1,t.label=2;case 2:return[2]}})})},loading:M.isActionLoading}:null}})),i.createElement(E,null,i.createElement(d,{style:{paddingTop:0,paddingLeft:16,paddingRight:16}},j("main_screen.programInfoTitle")),i.createElement(u,{viewModel:M,onNavigate:y}))))});export{x as default};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { WidgetIconTypeEnum } from "models/loyalty-widget/types";
|
|
2
|
+
export declare const ArrowWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
3
|
export declare const Container: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
4
|
export declare const GridContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
5
|
export declare const SmallCard: import("styled-components").StyledComponent<"button", any, {
|
|
@@ -13,4 +14,3 @@ export declare const Title: import("styled-components").StyledComponent<"span",
|
|
|
13
14
|
export declare const RowCard: import("styled-components").StyledComponent<"button", any, {
|
|
14
15
|
$borderRadius: number;
|
|
15
16
|
}, never>;
|
|
16
|
-
export declare const ArrowWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__makeTemplateObject as n}from'./../../../../ext/tslib/tslib.es6.mjs.js';import
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../../ext/tslib/tslib.es6.mjs.js';import o,{css as e}from"styled-components";import{iconWrapperShape as r}from"../../../components/style/icon-wrapper.js";import{textSMMedium as i}from"../../../components/style/typography.js";var d,t,p,a,s,l,c,f,x,b=o.div(d||(d=n(["\n display: flex;\n justify-content: center;\n align-items: center;\n color: #9aa4b2;\n transition: color 0.2s ease-in-out;\n"],["\n display: flex;\n justify-content: center;\n align-items: center;\n color: #9aa4b2;\n transition: color 0.2s ease-in-out;\n"]))),u=o.div(t||(t=n(["\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 0 16px;\n"],["\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 0 16px;\n"]))),g=o.div(p||(p=n(["\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n"],["\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n"]))),m=o.button(a||(a=n(["\n display: flex;\n flex-direction: column;\n padding: 12px;\n padding-left: 14px;\n gap: 12px;\n position: relative;\n border-radius: ",";\n border: 1px solid #eef2f6;\n background: #fff;\n cursor: pointer;\n width: 100%;\n align-items: flex-start;\n transition: border-color 0.2s ease-in-out;\n\n &:hover {\n border-color: #cdd5df;\n\n "," {\n color: #4b5565;\n }\n }\n"],["\n display: flex;\n flex-direction: column;\n padding: 12px;\n padding-left: 14px;\n gap: 12px;\n position: relative;\n border-radius: ",";\n border: 1px solid #eef2f6;\n background: #fff;\n cursor: pointer;\n width: 100%;\n align-items: flex-start;\n transition: border-color 0.2s ease-in-out;\n\n &:hover {\n border-color: #cdd5df;\n\n "," {\n color: #4b5565;\n }\n }\n"])),function(n){var o=n.$borderRadius;return"".concat(o,"px")},b),y=o.div(l||(l=n(["\n ","\n border: 1px solid #e3e8ef;\n background: #fff;\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n color: #4b5565;\n\n ","\n"],["\n ","\n border: 1px solid #e3e8ef;\n background: #fff;\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n color: #4b5565;\n\n ","\n"])),r,function(o){return o.$hasBgColor&&e(s||(s=n(["\n padding: 10px;\n background: #f6f6f6;\n border: none;\n "],["\n padding: 10px;\n background: #f6f6f6;\n border: none;\n "])))}),h=o.div(c||(c=n(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n"],["\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n"]))),v=o.span(f||(f=n(["\n color: #121926;\n ","\n"],["\n color: #121926;\n ","\n"])),i),w=o.button(x||(x=n(["\n display: flex;\n padding: 12px 12px 12px 16px;\n justify-content: space-between;\n align-items: center;\n border-radius: ",";\n border: 1px solid #eef2f6;\n background: #fff;\n cursor: pointer;\n width: 100%;\n transition: border-color 0.2s ease-in-out;\n\n &:hover {\n border-color: #cdd5df;\n\n "," {\n color: #4b5565;\n }\n }\n"],["\n display: flex;\n padding: 12px 12px 12px 16px;\n justify-content: space-between;\n align-items: center;\n border-radius: ",";\n border: 1px solid #eef2f6;\n background: #fff;\n cursor: pointer;\n width: 100%;\n transition: border-color 0.2s ease-in-out;\n\n &:hover {\n border-color: #cdd5df;\n\n "," {\n color: #4b5565;\n }\n }\n"])),function(n){var o=n.$borderRadius;return"".concat(o,"px")},b);export{b as ArrowWrapper,u as Container,g as GridContainer,w as RowCard,m as SmallCard,h as SmallCardBottom,y as SmallCardIconWrapper,v as Title};
|