@ikas/loyalty-widget-renderer 1.0.0-alpha.7 → 1.0.0-alpha.70
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/badgeLevel1.js +1 -1
- package/build/assets/badgeLevel2.js +1 -1
- package/build/assets/badgeLevel3.js +1 -1
- package/build/assets/badgeLevel4.js +1 -1
- package/build/assets/icons/arrow-right.d.ts +2 -0
- package/build/assets/icons/arrow-right.js +1 -0
- package/build/assets/icons/check-circle-fill.js +1 -1
- package/build/assets/icons/check-circle.d.ts +2 -0
- package/build/assets/icons/check-circle.js +1 -0
- package/build/assets/icons/check.js +1 -1
- package/build/assets/icons/chevron-left.js +1 -1
- package/build/assets/icons/x-close.js +1 -1
- package/build/assets/index.d.ts +5 -0
- package/build/assets/widget-icons/illustraions/approvedChatIllustration.js +1 -1
- package/build/assets/widget-icons/illustraions/bankCoin.js +1 -1
- package/build/assets/widget-icons/illustraions/bigSaleMedal.js +1 -1
- package/build/assets/widget-icons/illustraions/bubbleChatIllustration.js +1 -1
- 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/giftIllustration.js +1 -1
- 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/illustraions/medal.js +1 -1
- package/build/assets/widget-icons/illustraions/shippingBox.js +1 -1
- package/build/assets/widget-icons/illustraions/shoppingCartIllustration.js +1 -1
- package/build/assets/widget-icons/illustraions/tshirtIllustration.js +1 -1
- package/build/assets/widget-icons/illustraions/usersIllustration.js +1 -1
- package/build/assets/widget-icons/normal/bubbleChatDone.js +1 -1
- package/build/assets/widget-icons/normal/commentAdd01.js +1 -1
- package/build/assets/widget-icons/normal/couponPercent.js +1 -1
- package/build/assets/widget-icons/normal/discountTag02.js +1 -1
- package/build/assets/widget-icons/normal/gift.js +1 -1
- package/build/assets/widget-icons/normal/informationCircle.d.ts +2 -0
- package/build/assets/widget-icons/normal/informationCircle.js +1 -0
- package/build/assets/widget-icons/normal/moneyAdd01.js +1 -1
- package/build/assets/widget-icons/normal/packageDelivered.js +1 -1
- package/build/assets/widget-icons/normal/saveMoneyDollar.js +1 -1
- package/build/assets/widget-icons/normal/shoppingBasketAdd02.js +1 -1
- package/build/assets/widget-icons/normal/userAdd01.js +1 -1
- package/build/ext/@babel/runtime/helpers/esm/arrayLikeToArray.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/arrayWithHoles.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/assertThisInitialized.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/classCallCheck.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/createClass.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/defineProperty.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/getPrototypeOf.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/inherits.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/iterableToArray.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/iterableToArrayLimit.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/nonIterableRest.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/possibleConstructorReturn.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/setPrototypeOf.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/slicedToArray.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/toArray.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/toPrimitive.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/toPropertyKey.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/typeof.js +1 -0
- package/build/ext/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +1 -0
- package/build/ext/i18next/dist/esm/i18next.js +1 -1
- package/build/ext/react-i18next/dist/es/I18nextProvider.js +1 -1
- package/build/ext/react-i18next/dist/es/context.js +1 -1
- package/build/ext/react-i18next/dist/es/unescape.js +1 -1
- package/build/ext/react-i18next/dist/es/useTranslation.js +1 -1
- package/build/ext/react-i18next/dist/es/utils.js +1 -1
- package/build/ext/tslib/tslib.es6.mjs.js +1 -1
- package/build/index.d.ts +9 -0
- package/build/index.js +1 -1
- package/build/injector.d.ts +5 -0
- package/build/locales.d.ts +608 -0
- package/build/locales.js +1 -0
- package/build/models/button/index.js +1 -1
- package/build/models/common/index.d.ts +21 -0
- package/build/models/common/index.js +1 -0
- package/build/models/image/index.d.ts +2 -2
- package/build/models/image/index.js +1 -1
- package/build/models/index.d.ts +16 -6
- package/build/models/index.js +1 -1
- package/build/models/loyalty-customer-info/index.d.ts +28 -8
- package/build/models/loyalty-customer-info/index.js +1 -1
- package/build/models/loyalty-program-earning-method/index.d.ts +16 -30
- package/build/models/loyalty-program-earning-method/index.js +1 -1
- package/build/models/loyalty-program-point-history/index.d.ts +3 -3
- package/build/models/loyalty-program-point-history/index.js +1 -1
- package/build/models/loyalty-program-spending-method/index.d.ts +7 -20
- package/build/models/loyalty-program-spending-method/index.js +1 -1
- package/build/models/loyalty-widget/header/header-background/index.d.ts +1 -2
- package/build/models/loyalty-widget/header/header-background/index.js +1 -1
- package/build/models/loyalty-widget/header/index.d.ts +1 -1
- package/build/models/loyalty-widget/header/index.js +1 -1
- package/build/models/loyalty-widget/index.d.ts +4 -2
- package/build/models/loyalty-widget/index.js +1 -1
- package/build/models/loyalty-widget/settings/index.js +1 -1
- package/build/models/loyalty-widget/translations.d.ts +5 -0
- package/build/models/loyalty-widget/translations.js +1 -0
- package/build/models/mini-mode/index.d.ts +7 -0
- package/build/models/mini-mode/index.js +1 -0
- package/build/models/types/index.d.ts +22 -39
- package/build/models/types/index.js +1 -1
- package/build/renderer/components/animate-height/index.d.ts +9 -0
- package/build/renderer/components/animate-height/index.js +1 -0
- package/build/renderer/components/button/index.js +1 -1
- package/build/renderer/components/button/style.d.ts +1 -0
- package/build/renderer/components/button/style.js +1 -1
- package/build/renderer/components/count-up/index.d.ts +7 -0
- package/build/renderer/components/count-up/index.js +1 -0
- package/build/renderer/components/flexible-value-container/index.d.ts +16 -0
- package/build/renderer/components/flexible-value-container/index.js +1 -0
- package/build/renderer/components/loyalty-method-card/index.d.ts +2 -1
- package/build/renderer/components/loyalty-method-card/index.js +1 -1
- 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/mini-mode-button/index.d.ts +7 -0
- package/build/renderer/components/mini-mode-button/index.js +1 -0
- package/build/renderer/components/mini-mode-button/style.d.ts +6 -0
- package/build/renderer/components/mini-mode-button/style.js +1 -0
- package/build/renderer/components/mini-mode-description/index.d.ts +7 -0
- package/build/renderer/components/mini-mode-description/index.js +1 -0
- package/build/renderer/components/mini-mode-description/style.d.ts +3 -0
- package/build/renderer/components/mini-mode-description/style.js +1 -0
- package/build/renderer/components/section-title/index.js +1 -1
- package/build/renderer/components/section-title/style.js +1 -1
- package/build/renderer/components/style/icon-wrapper.d.ts +4 -0
- package/build/renderer/components/style/icon-wrapper.js +1 -0
- package/build/renderer/components/style/typography.d.ts +3 -1
- package/build/renderer/components/style/typography.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/components/translation-settings/style.d.ts +9 -0
- package/build/renderer/index.js +1 -1
- package/build/renderer/screens/credit-earning-methods-screen/index.js +1 -1
- package/build/renderer/screens/credit-earning-methods-screen/style.js +1 -1
- package/build/renderer/screens/credit-history-screen/index.js +1 -1
- package/build/renderer/screens/credit-history-screen/style.d.ts +3 -1
- package/build/renderer/screens/credit-history-screen/style.js +1 -1
- package/build/renderer/screens/credit-spending-methods-screen/index.js +1 -1
- package/build/renderer/screens/credit-spending-methods-screen/style.d.ts +3 -1
- package/build/renderer/screens/credit-spending-methods-screen/style.js +1 -1
- package/build/renderer/screens/loyalty-level-screen/index.js +1 -1
- package/build/renderer/screens/loyalty-level-screen/style.d.ts +10 -2
- 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/earning-methods-section/index.d.ts +1 -0
- package/build/renderer/screens/main-screen/earning-methods-section/index.js +1 -1
- package/build/renderer/screens/main-screen/header/auth-user-section/index.js +1 -1
- package/build/renderer/screens/main-screen/header/auth-user-section/style.js +1 -1
- package/build/renderer/screens/main-screen/header/index.js +1 -1
- package/build/renderer/screens/main-screen/header/logo-section/index.js +1 -1
- package/build/renderer/screens/main-screen/header/logo-section/style.d.ts +3 -1
- package/build/renderer/screens/main-screen/header/logo-section/style.js +1 -1
- package/build/renderer/screens/main-screen/header/style.d.ts +11 -5
- package/build/renderer/screens/main-screen/header/style.js +1 -1
- package/build/renderer/screens/main-screen/header/title-section/index.js +1 -1
- package/build/renderer/screens/main-screen/header/title-section/style.js +1 -1
- 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/index.js +1 -1
- package/build/renderer/screens/main-screen/program-info-section/style.d.ts +12 -4
- 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.d.ts +1 -0
- package/build/renderer/screens/main-screen/spending-methods-section/index.js +1 -1
- package/build/renderer/screens/main-screen/style.js +1 -1
- package/build/renderer/style.d.ts +18 -2
- package/build/renderer/style.js +1 -1
- package/build/renderer/utils/i18n.d.ts +617 -0
- package/build/renderer/utils/i18n.js +1 -1
- package/build/renderer/utils/locales/de.json.js +1 -0
- package/build/renderer/utils/locales/en.json.js +1 -1
- package/build/renderer/utils/locales/fr.json.js +1 -0
- package/build/renderer/utils/locales/nl.json.js +1 -0
- package/build/renderer/utils/locales/tr.json.js +1 -1
- package/build/renderer/utils/loyalty-details.js +1 -1
- package/build/renderer/utils/object-utils.d.ts +2 -0
- package/build/renderer/utils/object-utils.js +1 -0
- package/build/storefront-widget-script-injector.iife.js +68 -0
- package/build/storefront-widget-script-injector.iife.js.map +1 -0
- package/build/utils.d.ts +6 -4
- package/build/utils.js +1 -1
- package/package.json +26 -13
- package/build/_virtual/_commonjsHelpers.js +0 -1
- package/build/_virtual/index.js +0 -1
- package/build/_virtual/index2.js +0 -1
- package/build/_virtual/index3.js +0 -1
- package/build/_virtual/index4.js +0 -1
- package/build/_virtual/index5.js +0 -1
- package/build/_virtual/index6.js +0 -1
- package/build/_virtual/react-dom.development.js +0 -1
- package/build/_virtual/react-dom.production.min.js +0 -1
- package/build/_virtual/react-is.development.js +0 -1
- package/build/_virtual/react-is.development2.js +0 -1
- package/build/_virtual/react-is.production.js +0 -1
- package/build/_virtual/react-is.production.min.js +0 -1
- package/build/_virtual/react.development.js +0 -1
- package/build/_virtual/react.production.min.js +0 -1
- package/build/_virtual/scheduler.development.js +0 -1
- package/build/_virtual/scheduler.production.min.js +0 -1
- package/build/_virtual/use-sync-external-store-shim.development.js +0 -1
- package/build/_virtual/use-sync-external-store-shim.production.js +0 -1
- package/build/ext/@emotion/is-prop-valid/dist/is-prop-valid.browser.esm.js +0 -1
- package/build/ext/@emotion/memoize/dist/memoize.browser.esm.js +0 -1
- package/build/ext/@emotion/stylis/dist/stylis.browser.esm.js +0 -1
- package/build/ext/@emotion/unitless/dist/unitless.browser.esm.js +0 -1
- package/build/ext/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +0 -1
- package/build/ext/hoist-non-react-statics/ext/react-is/cjs/react-is.development.js +0 -9
- package/build/ext/hoist-non-react-statics/ext/react-is/cjs/react-is.production.min.js +0 -9
- package/build/ext/hoist-non-react-statics/ext/react-is/index.js +0 -1
- package/build/ext/mobx/dist/mobx.esm.js +0 -1
- package/build/ext/mobx-react/dist/mobxreact.esm.js +0 -1
- package/build/ext/mobx-react-lite/es/ObserverComponent.js +0 -1
- package/build/ext/mobx-react-lite/es/index.js +0 -1
- package/build/ext/mobx-react-lite/es/observer.js +0 -1
- package/build/ext/mobx-react-lite/es/useAsObservableSource.js +0 -1
- package/build/ext/mobx-react-lite/es/useObserver.js +0 -1
- package/build/ext/mobx-react-lite/es/utils/UniversalFinalizationRegistry.js +0 -1
- package/build/ext/mobx-react-lite/es/utils/assertEnvironment.js +0 -1
- package/build/ext/mobx-react-lite/es/utils/observerBatching.js +0 -1
- package/build/ext/mobx-react-lite/es/utils/observerFinalizationRegistry.js +0 -1
- package/build/ext/mobx-react-lite/es/utils/printDebugValue.js +0 -1
- package/build/ext/react/cjs/react.development.js +0 -10
- package/build/ext/react/cjs/react.production.min.js +0 -10
- package/build/ext/react/index.js +0 -1
- package/build/ext/react-dom/cjs/react-dom.development.js +0 -23
- package/build/ext/react-dom/cjs/react-dom.production.min.js +0 -10
- package/build/ext/react-dom/index.js +0 -1
- package/build/ext/react-i18next/dist/es/IcuTransUtils/htmlEntityDecoder.js +0 -1
- package/build/ext/react-i18next/dist/es/defaults.js +0 -1
- package/build/ext/react-i18next/dist/es/i18nInstance.js +0 -1
- package/build/ext/react-i18next/dist/es/initReactI18next.js +0 -1
- package/build/ext/react-is/cjs/react-is.development.js +0 -10
- package/build/ext/react-is/cjs/react-is.production.js +0 -10
- package/build/ext/react-is/index.js +0 -1
- package/build/ext/scheduler/cjs/scheduler.development.js +0 -10
- package/build/ext/scheduler/cjs/scheduler.production.min.js +0 -10
- package/build/ext/scheduler/index.js +0 -1
- package/build/ext/styled-components/dist/styled-components.browser.esm.js +0 -1
- package/build/ext/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +0 -10
- package/build/ext/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +0 -10
- package/build/ext/use-sync-external-store/shim/index.js +0 -1
- package/build/models/base.d.ts +0 -4
- package/build/models/base.js +0 -1
- package/build/models/category/index.d.ts +0 -5
- package/build/models/loyalty-widget/header-background/index.d.ts +0 -9
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { WidgetIconTypeEnum } from "models/loyalty-widget/types";
|
|
3
2
|
import { LoyaltyWidgetButton } from "models/button";
|
|
3
|
+
import { WidgetIconTypeEnum } from "models/loyalty-widget/types";
|
|
4
4
|
export type LoyaltyMethodCardProps = {
|
|
5
5
|
title: string;
|
|
6
6
|
description: string | React.ReactNode;
|
|
@@ -8,6 +8,7 @@ export type LoyaltyMethodCardProps = {
|
|
|
8
8
|
action?: {
|
|
9
9
|
text: string;
|
|
10
10
|
onClick: () => void;
|
|
11
|
+
loading?: boolean;
|
|
11
12
|
};
|
|
12
13
|
isCompleted?: boolean;
|
|
13
14
|
mode: "card" | "accordion";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{observer as e}from"mobx-react";import t,{useState as n}from"react";import{CheckCircleFill as i}from"../../../assets/icons/check-circle-fill.js";import{ChevronLeft as o}from"../../../assets/icons/chevron-left.js";import{WidgetIconTypeEnum as l}from"../../../models/loyalty-widget/types/index.js";import r from"../button/index.js";import{Container as c,Header as a,IconWrapper as m,Content as d,Title as s,Description as p,ArrowButton as u,AccordionWrapper as f,AccordionInner as E}from"./style.js";var g=e(function(e){var g=e.title,y=e.description,x=e.icon,$=e.action,b=e.isCompleted,v=e.mode,C=e.children,j=e.padding,k=e.settings,O=n(!1),h=O[0],w=O[1],I=!b&&(null==$?void 0:$.text)&&(null==$?void 0:$.onClick);return t.createElement(c,{$borderRadius:k.borderRadius,$isCompleted:b,$padding:j},t.createElement(a,{onClick:function(){"accordion"===v&&w(!h)},style:{cursor:"accordion"===v?"pointer":"default"}},k.widgetIconType!==l.NONE&&t.createElement(m,{$iconType:k.widgetIconType},x),t.createElement(d,null,t.createElement(s,null,g),t.createElement(p,null,y)),"card"===v?t.createElement("div",{style:{display:"flex",alignItems:"center",gap:"8px"}},b&&t.createElement(i,null),I&&t.createElement(r,{button:k.button,paddingSize:"small",fontSize:"textSMMedium",onClick:$.onClick,isLoading:$.loading},$.text)):t.createElement(u,{$isOpen:h},t.createElement(o,null))),"accordion"===v&&t.createElement(f,{$isOpen:h},t.createElement(E,{$isOpen:h},C)))});export{g as default};
|
|
@@ -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{WidgetIconTypeEnum 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{observer as o}from"mobx-react";import e from"react";import{ImageTypeEnum as t}from"../../../models/loyalty-widget/types/index.js";import{WidgetMode as r}from"../../../models/types/index.js";import{Container as l,Logo as i,Emoji as m}from"./style.js";var a=o(function(o){var a=o.viewModel,s=a.loyaltyWidget.miniMode,n=s.logo.type===t.SHOW&&!!s.logo.src;return e.createElement(l,{$hasImg:n,$bgColor:s.bgColor||void 0,onClick:function(o){o.stopPropagation(),a.setWidgetMode(r.WIDGET_MODE)}},n?e.createElement(i,{src:s.logo.src,alt:"Loyalty Widget"}):e.createElement(m,null,s.emoji))});export{a as default};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const Container: import("styled-components").StyledComponent<"div", any, {
|
|
2
|
+
$hasImg: boolean;
|
|
3
|
+
$bgColor?: string;
|
|
4
|
+
}, never>;
|
|
5
|
+
export declare const Logo: import("styled-components").StyledComponent<"img", any, {}, never>;
|
|
6
|
+
export declare const Emoji: 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 t}from"styled-components";var r,o,i,s,p=e.div(o||(o=n(["\n display: flex;\n width: 60px;\n height: 60px;\n padding: ",";\n justify-content: center;\n align-items: center;\n border-radius: 60px;\n overflow: hidden;\n\n box-shadow:\n 0 12px 16px -4px rgba(16, 24, 40, 0.08),\n 0 4px 6px -2px rgba(19, 19, 24, 0.03);\n cursor: pointer;\n transition: transform 0.2s ease-in-out;\n\n &:hover {\n transform: scale(1.05);\n }\n\n ","\n"],["\n display: flex;\n width: 60px;\n height: 60px;\n padding: ",";\n justify-content: center;\n align-items: center;\n border-radius: 60px;\n overflow: hidden;\n\n box-shadow:\n 0 12px 16px -4px rgba(16, 24, 40, 0.08),\n 0 4px 6px -2px rgba(19, 19, 24, 0.03);\n cursor: pointer;\n transition: transform 0.2s ease-in-out;\n\n &:hover {\n transform: scale(1.05);\n }\n\n ","\n"])),function(n){return n.$hasImg?"0":"14px"},function(e){return!e.$hasImg&&t(r||(r=n(["\n background: ",";\n "],["\n background: ",";\n "])),e.$bgColor||"#000")}),a=e.img(i||(i=n(["\n width: 100%;\n height: 100%;\n object-fit: cover;\n"],["\n width: 100%;\n height: 100%;\n object-fit: cover;\n"]))),d=e.span(s||(s=n(["\n font-size: 32px;\n line-height: 1;\n"],["\n font-size: 32px;\n line-height: 1;\n"])));export{p as Container,d as Emoji,a as Logo};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"react";import{observer as o}from"mobx-react";import{WidgetMode as t}from"../../../models/types/index.js";import{XClose as i}from"../../../assets/icons/x-close.js";import'./../../../ext/react-i18next/dist/es/context.js';import{useTranslation as n}from'./../../../ext/react-i18next/dist/es/useTranslation.js';import{Container as r,CloseButton as s,Text as l}from"./style.js";var m=o(function(o){var m=o.viewModel,c=n().t;return m.isMiniModeDescriptionClosed?null:e.createElement(r,{onClick:function(e){e.stopPropagation(),m.setWidgetMode(t.WIDGET_MODE)}},e.createElement(s,{onClick:function(e){e.stopPropagation(),m.closeMiniModeDescription()}},e.createElement(i,null)),e.createElement(l,null,c("miniMode.description")))});export{m as default};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const Container: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export declare const CloseButton: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const Text: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import p from"styled-components";import{textMD as r}from"../style/typography.js";var o,x,a,i=p.div(o||(o=n(["\n display: flex;\n width: 432px;\n max-width: calc(100vw - 40px);\n padding: 20px;\n flex-direction: column;\n align-items: flex-start;\n gap: 24px;\n border-radius: 16px;\n border: 1px solid #ECECED;\n background: #FFF;\n box-shadow: 0 22px 6px 0 rgba(0, 0, 0, 0.00), 0 14px 6px 0 rgba(0, 0, 0, 0.01),\n 0 8px 5px 0 rgba(0, 0, 0, 0.05), 0 4px 4px 0 rgba(0, 0, 0, 0.09),\n 0 1px 2px 0 rgba(0, 0, 0, 0.10);\n color: #121926;\n position: relative;\n cursor: pointer;\n margin-bottom: 16px; /* 16px space between description and button */\n"],["\n display: flex;\n width: 432px;\n max-width: calc(100vw - 40px);\n padding: 20px;\n flex-direction: column;\n align-items: flex-start;\n gap: 24px;\n border-radius: 16px;\n border: 1px solid #ECECED;\n background: #FFF;\n box-shadow: 0 22px 6px 0 rgba(0, 0, 0, 0.00), 0 14px 6px 0 rgba(0, 0, 0, 0.01),\n 0 8px 5px 0 rgba(0, 0, 0, 0.05), 0 4px 4px 0 rgba(0, 0, 0, 0.09),\n 0 1px 2px 0 rgba(0, 0, 0, 0.10);\n color: #121926;\n position: relative;\n cursor: pointer;\n margin-bottom: 16px; /* 16px space between description and button */\n"]))),e=p.div(x||(x=n(["\n position: absolute;\n top: -12px;\n right: -12px;\n cursor: pointer;\n display: inline-flex;\n padding: 6px;\n align-items: center;\n gap: 10px;\n border-radius: 40px;\n background: #F6F6F6;\n box-shadow: 0 22px 6px 0 rgba(0, 0, 0, 0.00), 0 14px 6px 0 rgba(0, 0, 0, 0.01),\n 0 8px 5px 0 rgba(0, 0, 0, 0.05), 0 4px 4px 0 rgba(0, 0, 0, 0.09),\n 0 1px 2px 0 rgba(0, 0, 0, 0.10);\n color: #4B5565;\n\n &:hover {\n color: #667085;\n }\n"],["\n position: absolute;\n top: -12px;\n right: -12px;\n cursor: pointer;\n display: inline-flex;\n padding: 6px;\n align-items: center;\n gap: 10px;\n border-radius: 40px;\n background: #F6F6F6;\n box-shadow: 0 22px 6px 0 rgba(0, 0, 0, 0.00), 0 14px 6px 0 rgba(0, 0, 0, 0.01),\n 0 8px 5px 0 rgba(0, 0, 0, 0.05), 0 4px 4px 0 rgba(0, 0, 0, 0.09),\n 0 1px 2px 0 rgba(0, 0, 0, 0.10);\n color: #4B5565;\n\n &:hover {\n color: #667085;\n }\n"]))),t=p.div(a||(a=n(["\n ",";\n color: #121926;\n"],["\n ",";\n color: #121926;\n"])),r);export{e as CloseButton,i as Container,t as Text};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from
|
|
1
|
+
import e from"react";import{Title as r}from"./style.js";var t=function(t){var a=t.children,s=t.style,l=t.className;return e.createElement(r,{style:s,className:l},a)};export{t as default};
|
|
@@ -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 p from"styled-components";import{textSMMedium as o}from"../style/typography.js";var m,r=p.div(m||(m=n(["\n ","\n margin: 0;\n padding: 16px 24px;\n"],["\n ","\n margin: 0;\n padding: 16px 24px;\n"])),o);export{r as Title};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import{css as e}from"styled-components";import{WidgetIconTypeEnum as t}from"../../../models/loyalty-widget/types/index.js";var i,r=e(i||(i=n(["\n display: flex;\n width: ",";\n height: ",";\n justify-content: center;\n align-items: center;\n border-radius: ",";\n"],["\n display: flex;\n width: ",";\n height: ",";\n justify-content: center;\n align-items: center;\n border-radius: ",";\n"])),function(n){return n.$iconType===t.ILLUSTRATION?"40px":"36px"},function(n){return n.$iconType===t.ILLUSTRATION?"40px":"36px"},function(n){return n.$iconType===t.ILLUSTRATION?"40px":"8px"});export{r as iconWrapperShape};
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
+
declare const textXS: import("styled-components").FlattenSimpleInterpolation;
|
|
1
2
|
declare const textXSMedium: import("styled-components").FlattenSimpleInterpolation;
|
|
2
3
|
declare const textSM: import("styled-components").FlattenSimpleInterpolation;
|
|
3
4
|
declare const textSMMedium: import("styled-components").FlattenSimpleInterpolation;
|
|
4
5
|
declare const textSMSemiBold: import("styled-components").FlattenSimpleInterpolation;
|
|
6
|
+
declare const textMD: import("styled-components").FlattenSimpleInterpolation;
|
|
5
7
|
declare const textMDMedium: import("styled-components").FlattenSimpleInterpolation;
|
|
6
8
|
declare const textLGMedium: import("styled-components").FlattenSimpleInterpolation;
|
|
7
9
|
declare const textLGSemiBold: import("styled-components").FlattenSimpleInterpolation;
|
|
8
10
|
declare const textXLSemiBold: import("styled-components").FlattenSimpleInterpolation;
|
|
9
11
|
declare const displayXSSemiBold: import("styled-components").FlattenSimpleInterpolation;
|
|
10
12
|
declare const Badge: import("styled-components").StyledComponent<"span", any, {}, never>;
|
|
11
|
-
export { textXSMedium, textSM, textSMMedium, textSMSemiBold, textMDMedium, textLGMedium, textLGSemiBold, textXLSemiBold, displayXSSemiBold, Badge, };
|
|
13
|
+
export { textXS, textXSMedium, textSM, textSMMedium, textSMSemiBold, textMD, textMDMedium, textLGMedium, textLGSemiBold, textXLSemiBold, displayXSSemiBold, Badge, };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import t,{css as e}from
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import t,{css as e}from"styled-components";var o,i,l,f,p,h,s,x,g,r,a,m,y=e(o||(o=n(["\n font-size: 12px;\n font-style: normal;\n font-weight: 500;\n line-height: 18px;\n"],["\n font-size: 12px;\n font-style: normal;\n font-weight: 500;\n line-height: 18px;\n"]))),d=e(i||(i=n(["\n font-size: 12px;\n font-style: normal;\n font-weight: 500;\n line-height: 18px; /* 150% */\n letter-spacing: -0.24px;\n"],["\n font-size: 12px;\n font-style: normal;\n font-weight: 500;\n line-height: 18px; /* 150% */\n letter-spacing: -0.24px;\n"]))),w=e(l||(l=n(["\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n"],["\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n"]))),z=e(f||(f=n(["\n font-size: 14px;\n font-style: normal;\n font-weight: 500;\n line-height: 20px; /* 142.857% */\n"],["\n font-size: 14px;\n font-style: normal;\n font-weight: 500;\n line-height: 20px; /* 142.857% */\n"]))),c=e(p||(p=n(["\n font-size: 14px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px;\n"],["\n font-size: 14px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px;\n"]))),b=e(h||(h=n(["\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n"],["\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n"]))),u=e(s||(s=n(["\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n line-height: 24px; /* 150% */\n"],["\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n line-height: 24px; /* 150% */\n"]))),j=e(x||(x=n(["\n font-size: 18px;\n font-style: normal;\n font-weight: 500;\n line-height: 28px;\n"],["\n font-size: 18px;\n font-style: normal;\n font-weight: 500;\n line-height: 28px;\n"]))),k=e(g||(g=n(["\n font-size: 18px;\n font-style: normal;\n font-weight: 600;\n line-height: 28px;\n"],["\n font-size: 18px;\n font-style: normal;\n font-weight: 600;\n line-height: 28px;\n"]))),v=e(r||(r=n(["\n font-size: 20px;\n font-style: normal;\n font-weight: 600;\n line-height: 30px;\n"],["\n font-size: 20px;\n font-style: normal;\n font-weight: 600;\n line-height: 30px;\n"]))),_=e(a||(a=n(["\n font-size: 24px;\n font-style: normal;\n font-weight: 600;\n line-height: 32px;\n"],["\n font-size: 24px;\n font-style: normal;\n font-weight: 600;\n line-height: 32px;\n"]))),q=t.span(m||(m=n(["\n display: flex;\n padding: 2px 8px;\n justify-content: center;\n align-items: center;\n gap: 6px;\n border-radius: 6px;\n border: 0.6px solid #cdd5df;\n opacity: 0.8;\n background: #f8fafc;\n ","\n color: #121926;\n"],["\n display: flex;\n padding: 2px 8px;\n justify-content: center;\n align-items: center;\n gap: 6px;\n border-radius: 6px;\n border: 0.6px solid #cdd5df;\n opacity: 0.8;\n background: #f8fafc;\n ","\n color: #121926;\n"])),w);export{q as Badge,_ as displayXSSemiBold,j as textLGMedium,k as textLGSemiBold,b as textMD,u as textMDMedium,w as textSM,z as textSMMedium,c as textSMSemiBold,v as textXLSemiBold,y as textXS,d as textXSMedium};
|
|
@@ -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};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const Container: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export declare const Header: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const HeaderCol: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
+
export declare const List: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
5
|
+
export declare const Row: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
6
|
+
export declare const OriginalText: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
7
|
+
export declare const ArrowConnection: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
|
+
export declare const InputWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
9
|
+
export declare const Input: import("styled-components").StyledComponent<"input", any, {}, never>;
|
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 r
|
|
1
|
+
import{__awaiter as e,__generator as t,__spreadArray as n}from'./../ext/tslib/tslib.es6.mjs.js';import{toJS as r}from"mobx";import{observer as i}from"mobx-react";import o,{useState as s,useEffect as a}from"react";import'./../ext/react-i18next/dist/es/context.js';import{I18nextProvider as l}from'./../ext/react-i18next/dist/es/I18nextProvider.js';import{LoyaltyWidgetViewModel as c}from"../models/index.js";import{LoyaltyCustomerInfo as d}from"../models/loyalty-customer-info/index.js";import{LoyaltyProgramEarningMethod as u}from"../models/loyalty-program-earning-method/index.js";import{LoyaltyProgramPointHistory as f}from"../models/loyalty-program-point-history/index.js";import{LoyaltyProgramSpendingMethod as m}from"../models/loyalty-program-spending-method/index.js";import{LoyaltyWidget as v}from"../models/loyalty-widget/index.js";import{WidgetPositionEnum as g,LoyaltyWidgetLayoutTypeEnum as E}from"../models/loyalty-widget/types/index.js";import{WidgetMode as y,LoyaltyWidgetScreenTypeEnum as p,EarningMethodTypeEnum as h,LoyaltyProgramFilterTypeEnum as R,LoyaltyProgramMethodSpendingTypeEnum as T}from"../models/types/index.js";import I from"./components/mini-mode-button/index.js";import b from"./components/mini-mode-description/index.js";import w from"./screens/credit-earning-methods-screen/index.js";import M from"./screens/credit-history-screen/index.js";import k from"./screens/credit-spending-methods-screen/index.js";import _ from"./screens/loyalty-level-screen/index.js";import C from"./screens/main-screen/index.js";import{unflatten as S}from"./utils/object-utils.js";import N from"./utils/i18n.js";import{Container as A,MiniModeWrapper as O,Panel as D,ScreenWrapper as L}from"./style.js";var P=i(function(i){var P,j,x=i.config,U=s(function(){var e=x||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.storeURL)||null,null==e?void 0:e.isPreviewMode,null==e?void 0:e.callbacks)})[0],W=s(!1),$=W[0],G=W[1],B=U.loyaltyWidget.translations,V=JSON.stringify(r(null==B?void 0:B.custom));a(function(){var e=null==B?void 0:B.language,t=(null==B?void 0:B.custom)?r(B.custom):{};if(e){var n=["tr","en","de","nl","fr"].includes(e)?e:"en";if(N.language!==n&&N.changeLanguage(n),Object.keys(t).length>0){var i=S(t);N.addResourceBundle(n,"translation",i,!0,!0)}}},[null==B?void 0:B.language,V]),a(function(){var e=x||window.ikasLoyaltyWidgetConfig;(null==e?void 0:e.onViewModelInitialized)&&e.onViewModelInitialized(U)},[U,x]);var F=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 U.callbacks?(e=new Set,r=new Set,i=new Set,o=new Set,U.earningMethods.forEach(function(t){var s,a;t.methodType===h.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===R.PRODUCT_AND_VARIANT?t.idList.forEach(function(t){return e.add(t)}):t.type===R.CATEGORY?t.idList.forEach(function(e){return r.add(e)}):t.type===R.PRODUCT_BRAND?t.idList.forEach(function(e){return i.add(e)}):t.type===R.PRODUCT_TAG&&t.idList.forEach(function(e){return o.add(e)})})}),U.spendingMethods&&U.spendingMethods.forEach(function(t){var n,s;t.type===T.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===R.PRODUCT_AND_VARIANT?t.idList.forEach(function(t){return e.add(t)}):t.type===R.CATEGORY?t.idList.forEach(function(e){return r.add(e)}):t.type===R.PRODUCT_BRAND?t.idList.forEach(function(e){return i.add(e)}):t.type===R.PRODUCT_TAG&&t.idList.forEach(function(e){return o.add(e)})})}),s=[],e.size>0&&U.callbacks.getProducts&&s.push(U.callbacks.getProducts(Array.from(e)).then(function(e){return U.products=e})),r.size>0&&U.callbacks.getCategories&&s.push(U.callbacks.getCategories(Array.from(r)).then(function(e){return U.categories=e})),i.size>0&&U.callbacks.getBrands&&s.push(U.callbacks.getBrands(Array.from(i)).then(function(e){return U.brands=e})),o.size>0&&U.callbacks.getTags&&s.push(U.callbacks.getTags(Array.from(o)).then(function(e){return U.tags=e})),[4,Promise.all(s)]):[2];case 1:return t.sent(),[2]}})})};a(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(!U.callbacks)return[3,6];t.label=1;case 1:return t.trys.push([1,4,5,6]),e=[U.callbacks.getLoyaltyWidget(),U.callbacks.listEarningMethods(),U.callbacks.listLoyaltyProgramTier({})],[4,Promise.all(e)];case 2:return n=t.sent(),r=n[0],i=n[1],o=n[2],U.loyaltyWidget=r instanceof v?r:new v(r||{}),U.earningMethods=i.map(function(e){return new u(e)}),U.tiers=o||[],[4,F()];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 G(!0),[7];case 6:return[2]}})})},[]),a(function(){if(window.IkasEvents){var e=function(e){var t,n=null===(t=e.data)||void 0===t?void 0:t.customer;n&&(U.ikasEventUser=n),U.userRefreshTrigger++,U.cartRefreshTrigger++},t=function(e){var t,n,r,i,o,s=U.cartId,a=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)?U.cartId=null:U.cartId=a,s!==U.cartId&&U.cartRefreshTrigger++},n={CUSTOMER_LOGIN:e,CUSTOMER_VISIT:e,CUSTOMER_LOGOUT:function(){U.userRefreshTrigger++,U.cartRefreshTrigger++},ADD_TO_CART:t,REMOVE_FROM_CART:t,REMOVE_LOYALTY_POINTS:function(e){U.cartRefreshTrigger++,U.userRefreshTrigger++},PAGE_VIEW:function(e){var t,n,r=null===(t=e.data)||void 0===t?void 0:t.customer;if(r){var i=!U.ikasEventUser,o=(null===(n=U.ikasEventUser)||void 0===n?void 0:n.subscriptionStatus)!==r.subscriptionStatus;(i||o)&&(U.ikasEventUser=r,U.userRefreshTrigger++,U.cartRefreshTrigger++)}}},r="ikas-loyalty-widget-subscriber";try{window.IkasEvents.subscribe({id:r,callback:function(e){var t=n[e.type];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)}}},[U]),a(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(!U.callbacks||!(null===(o=U.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([U.callbacks.getLoyaltyCustomerInfo(),U.callbacks.listLoyaltyProgramPointHistory({})])];case 2:return e=t.sent(),n=e[0],r=e[1],U.user=n?new d(n):null,n||(U.ikasEventUser=null),U.pointHistory=r?r.map(function(e){return new f(e)}):[],[3,4];case 3:return i=t.sent(),console.error("Failed to fetch user data",i),[3,4];case 4:return[2]}})})},[null===(P=U.ikasEventUser)||void 0===P?void 0:P.id,U.userRefreshTrigger]),a(function(){e(void 0,void 0,void 0,function(){var e,n;return t(this,function(t){switch(t.label){case 0:if(!U.callbacks)return[3,5];t.label=1;case 1:return t.trys.push([1,4,,5]),[4,U.callbacks.listSpendingMethodsByCartId(U.cartId)];case 2:return e=t.sent(),U.spendingMethods=e.map(function(e){return new m(e)}),[4,F()];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]}})})},[U.cartId,U.cartRefreshTrigger]);var z=function(e){U.selectedScreen=e},Y=function(){U.setWidgetMode(y.MINI_MODE),setTimeout(function(){U.selectedScreen=p.MAIN_SCREEN},300)};a(function(){return U.currentWidgetMode===y.WIDGET_MODE?document.body.style.overflow="hidden":document.body.style.overflow="",function(){document.body.style.overflow=""}},[U.currentWidgetMode]);var H=U.selectedScreen===p.MAIN_SCREEN,J=s(null),q=J[0],K=J[1];a(function(){U.selectedScreen!==p.MAIN_SCREEN&&K(U.selectedScreen)},[U.selectedScreen]);var Q=H?q:U.selectedScreen,X=U.loyaltyWidget.settings.position||g.RIGHT,Z=U.loyaltyWidget.settings.type||E.DRAWER;if(!$)return null;var ee=(null==x?void 0:x.position)||(null===(j=window.ikasLoyaltyWidgetConfig)||void 0===j?void 0:j.position)||"fixed";return o.createElement(l,{i18n:N},o.createElement(A,{$layoutType:Z,$widgetPosition:X,$widgetMode:U.currentWidgetMode,$position:ee,onClick:function(){U.currentWidgetMode===y.WIDGET_MODE&&Y()},className:"ikas-storefront-widget"},o.createElement(O,{$isVisible:U.currentWidgetMode===y.MINI_MODE,$widgetPosition:X},o.createElement(b,{viewModel:U}),o.createElement(I,{viewModel:U})),o.createElement(D,{$layoutType:Z,$isOpen:U.currentWidgetMode===y.WIDGET_MODE,$widgetPosition:X,onClick:function(e){return e.stopPropagation()}},o.createElement(L,{$isActive:H,$isMain:!0,$layoutType:Z},o.createElement(C,{viewModel:U,onClose:Y,onNavigate:z})),o.createElement(L,{$isActive:!H,$isMain:!1,$layoutType:Z},function(){switch(Q){case p.CREDIT_SPENDING_METHODS_SCREEN:return o.createElement(k,{viewModel:U,onBack:function(){return z(p.MAIN_SCREEN)},onClose:Y});case p.CREDIT_EARNING_METHODS_SCREEN:return o.createElement(w,{viewModel:U,onBack:function(){return z(p.MAIN_SCREEN)},onClose:Y});case p.CREDIT_HISTORY_SCREEN:return o.createElement(M,{viewModel:U,onBack:function(){return z(p.MAIN_SCREEN)},onClose:Y});case p.LOYALTY_LEVEL_SCREEN:return o.createElement(_,{viewModel:U,onBack:function(){return z(p.MAIN_SCREEN)},onClose:Y});default:return null}}()))))});export{P as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from'./../../../ext/
|
|
1
|
+
import{__awaiter as e,__generator as t,__assign as o}from'./../../../ext/tslib/tslib.es6.mjs.js';import{observer as n}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{ChevronLeft as s}from"../../../assets/icons/chevron-left.js";import{XClose as c}from"../../../assets/icons/x-close.js";import{EarningMethodTypeEnum as l,WidgetMode as a}from"../../../models/types/index.js";import m from"../main-screen/earning-methods-section/index.js";import{Container as d,Header as u,IconButton as f,Title as E,Content as p}from"./style.js";var g=n(function(n){var g=n.viewModel,v=n.onBack,b=n.onClose,k=r().t;return i.createElement(d,null,i.createElement(u,null,i.createElement(f,{onClick:v},i.createElement(s,null)),i.createElement(E,null,k("screens.creditEarningMethods")),i.createElement(f,{onClick:b},i.createElement(c,null))),i.createElement(p,null,i.createElement(m,{containerStyle:{paddingRight:16,paddingLeft:16},viewModel:g,getActionProps:function(n){return n.methodType===l.CUSTOMER_REGISTER?{actionText:k("common.create"),onClick:function(){g.storeUrl&&(g.setWidgetMode(a.MINI_MODE),window.location.href="".concat(g.storeUrl,"/account/register"))}}:n.methodType===l.ENABLE_SUBSCRIPTION?{loading:g.isActionLoading,actionText:k("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=g.callbacks)||void 0===e?void 0:e.subscribeToMarketingNotifications)?(g.isActionLoading=!0,[4,g.callbacks.subscribeToMarketingNotifications()]):[3,2];case 1:t.sent()&&(g.ikasEventUser=o(o({},g.ikasEventUser),{subscriptionStatus:"SUBSCRIBED"}),g.userRefreshTrigger++),g.isActionLoading=!1,t.label=2;case 2:return[2]}})})}}:null}})))});export{g as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import o from
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import o from"styled-components";import{textMDMedium as e}from"../../components/style/typography.js";var t,i,r,d,p,l=o.div(t||(t=n(["\n display: flex;\n flex-direction: column;\n height: 100%;\n"],["\n display: flex;\n flex-direction: column;\n height: 100%;\n"]))),f=o.div(i||(i=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"]))),c=o.div(r||(r=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"])),e),s=o.button(d||(d=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"]))),a=o.div(p||(p=n(["\n padding-top: 20px;\n padding-bottom: 20px;\n flex: 1;\n overflow-y: auto;\n"],["\n padding-top: 20px;\n padding-bottom: 20px;\n flex: 1;\n overflow-y: auto;\n"])));export{l as Container,a as Content,f as Header,s as IconButton,c as Title};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
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{XClose as r}from"../../../assets/icons/x-close.js";import{ChevronLeft as l}from"../../../assets/icons/chevron-left.js";import{LoyaltyProgramPointHistoryTypeEnum as o}from"../../../models/types/index.js";import a from"../../components/count-up/index.js";import{Container as m,Header as c,IconButton as i,Title as s,Content as u,PointsSection as d,PointsTitle as E,PointsValue as p,HistoryList as f,HistoryItem as y,HistoryItemLeft as x,HistoryItemTitle as g,HistoryItemDate as h,HistoryItemAmount as j,Divider as v}from"./style.js";var k=e(function(e){var k=e.viewModel,T=e.onBack,w=e.onClose,C=n(),R=C.t,b=C.i18n,A=k.user,B=k.pointHistory;return t.createElement(m,null,t.createElement(c,null,t.createElement(i,{onClick:T},t.createElement(l,null)),t.createElement(s,null,R("screens.creditHistory")),t.createElement(i,{onClick:w},t.createElement(r,null))),t.createElement(u,null,A&&t.createElement(d,{$borderRadius:k.loyaltyWidget.settings.cartBorderRadius},t.createElement(E,null,R("header.earnedPoints")),t.createElement(p,null,t.createElement(a,{end:A.totalPoint}))),t.createElement(f,null,B.map(function(e,n){var r=e.type===o.EARN;return t.createElement(t.Fragment,{key:e.id},t.createElement(y,null,t.createElement(x,null,t.createElement(g,null,R(r?"history.earnedTitle":"history.spentTitle")),t.createElement(h,null,function(e){if(!e)return"";try{return new Intl.DateTimeFormat(b.language,{day:"numeric",month:"long",year:"numeric"}).format(new Date(e))}catch(t){return e}}(e.createdAt))),t.createElement(j,{$isEarn:r},r?"":"-",e.amount)),n<B.length-1&&t.createElement(v,null))}))))});export{k as default};
|
|
@@ -3,7 +3,9 @@ export declare const Header: import("styled-components").StyledComponent<"div",
|
|
|
3
3
|
export declare const Title: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
4
|
export declare const IconButton: import("styled-components").StyledComponent<"button", any, {}, never>;
|
|
5
5
|
export declare const Content: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
6
|
-
export declare const PointsSection: import("styled-components").StyledComponent<"div", any, {
|
|
6
|
+
export declare const PointsSection: import("styled-components").StyledComponent<"div", any, {
|
|
7
|
+
$borderRadius: number;
|
|
8
|
+
}, never>;
|
|
7
9
|
export declare const PointsTitle: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
10
|
export declare const PointsValue: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
9
11
|
export declare const HistoryList: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import e from
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import e from"styled-components";import{textMDMedium as o,textSMMedium as i,textXLSemiBold as p,textXSMedium as r,textLGMedium as t}from"../../components/style/typography.js";var d,a,l,x,f,c,s,g,b,u,m,y,v,h,k,w=e.div(d||(d=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"]))),j=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"]))),z=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"])),o),$=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"]))),E=e.div(f||(f=n(["\n padding-top: 20px;\n padding-bottom: 20px;\n flex: 1;\n overflow-y: auto;\n"],["\n padding-top: 20px;\n padding-bottom: 20px;\n flex: 1;\n overflow-y: auto;\n"]))),R=e.div(c||(c=n(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 16px;\n border-radius: ",";\n border: 1px solid #eef2f6;\n background: #fff;\n box-shadow: 0 7px 2px 0 rgba(0, 0, 0, 0), 0 5px 2px 0 rgba(0, 0, 0, 0.01),\n 0 3px 2px 0 rgba(0, 0, 0, 0.02), 0 1px 1px 0 rgba(0, 0, 0, 0.03),\n 0 0 1px 0 rgba(0, 0, 0, 0.04);\n margin: 0 16px 24px 16px;\n"],["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 16px;\n border-radius: ",";\n border: 1px solid #eef2f6;\n background: #fff;\n box-shadow: 0 7px 2px 0 rgba(0, 0, 0, 0), 0 5px 2px 0 rgba(0, 0, 0, 0.01),\n 0 3px 2px 0 rgba(0, 0, 0, 0.02), 0 1px 1px 0 rgba(0, 0, 0, 0.03),\n 0 0 1px 0 rgba(0, 0, 0, 0.04);\n margin: 0 16px 24px 16px;\n"])),function(n){var e=n.$borderRadius;return"".concat(e,"px")}),_=e.div(s||(s=n(["\n ","\n color: #121926;\n"],["\n ","\n color: #121926;\n"])),i),q=e.div(g||(g=n(["\n ","\n color: #121926;\n"],["\n ","\n color: #121926;\n"])),p),A=e.div(b||(b=n(["\n display: flex;\n flex-direction: column;\n padding: 0 16px;\n margin-top: 4px;\n"],["\n display: flex;\n flex-direction: column;\n padding: 0 16px;\n margin-top: 4px;\n"]))),B=e.div(u||(u=n(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0 12px 0 6px;\n gap: 16px;\n"],["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0 12px 0 6px;\n gap: 16px;\n"]))),C=e.div(m||(m=n(["\n display: flex;\n flex-direction: column;\n gap: 4px;\n"],["\n display: flex;\n flex-direction: column;\n gap: 4px;\n"]))),D=e.div(y||(y=n(["\n ","\n color: #121926;\n"],["\n ","\n color: #121926;\n"])),i),F=e.div(v||(v=n(["\n ","\n color: #697586;\n"],["\n ","\n color: #697586;\n"])),r),G=e.div(h||(h=n(["\n ","\n color: ",";\n"],["\n ","\n color: ",";\n"])),t,function(n){return n.$isEarn?"#121926":"#697586"}),H=e.div(k||(k=n(["\n height: 1px;\n background-color: #eef2f6;\n margin: 16px 0;\n width: 100%;\n"],["\n height: 1px;\n background-color: #eef2f6;\n margin: 16px 0;\n width: 100%;\n"])));export{w as Container,E as Content,H as Divider,j as Header,B as HistoryItem,G as HistoryItemAmount,F as HistoryItemDate,C as HistoryItemLeft,D as HistoryItemTitle,A as HistoryList,$ as IconButton,R as PointsSection,_ as PointsTitle,q as PointsValue,z as Title};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
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{ChevronLeft as r}from"../../../assets/icons/chevron-left.js";import{XClose as o}from"../../../assets/icons/x-close.js";import l from"../../components/count-up/index.js";import s from"../main-screen/cart-warning/index.js";import i from"../main-screen/spending-methods-section/index.js";import{Container as m,Header as a,IconButton as c,Title as d,Content as u,PointsSection as p,PointsTitle as E,PointsValue as f}from"./style.js";var g=e(function(e){var g=e.viewModel,x=e.onBack,j=e.onClose,v=n().t,h=g.user;return t.createElement(m,null,t.createElement(a,null,t.createElement(c,{onClick:x},t.createElement(r,null)),t.createElement(d,null,v("screens.creditSpendingMethods")),t.createElement(c,{onClick:j},t.createElement(o,null))),t.createElement(u,null,h&&t.createElement(p,{$borderRadius:g.loyaltyWidget.settings.cartBorderRadius},t.createElement(E,null,v("header.earnedPoints")),t.createElement(f,null,t.createElement(l,{end:h.totalPoint}))),!!h&&!g.cartId&&t.createElement("div",{style:{padding:"0 16px",marginBottom:16}},t.createElement(s,{viewModel:g})),t.createElement("div",{style:{marginTop:8}},t.createElement(i,{viewModel:g,mode:"accordion",methods:g.spendingMethods,getActionProps:function(e){return null}}))))});export{g as default};
|
|
@@ -3,6 +3,8 @@ export declare const Header: import("styled-components").StyledComponent<"div",
|
|
|
3
3
|
export declare const Title: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
4
|
export declare const IconButton: import("styled-components").StyledComponent<"button", any, {}, never>;
|
|
5
5
|
export declare const Content: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
6
|
-
export declare const PointsSection: import("styled-components").StyledComponent<"div", any, {
|
|
6
|
+
export declare const PointsSection: import("styled-components").StyledComponent<"div", any, {
|
|
7
|
+
$borderRadius: number;
|
|
8
|
+
}, never>;
|
|
7
9
|
export declare const PointsTitle: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
10
|
export declare const PointsValue: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import o from
|
|
1
|
+
import{__makeTemplateObject as n}from'./../../../ext/tslib/tslib.es6.mjs.js';import o from"styled-components";import{textMDMedium as e,textSMMedium as r,textXLSemiBold as t}from"../../components/style/typography.js";var i,p,d,f,a,x,c,l,s=o.div(i||(i=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"]))),g=o.div(p||(p=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"]))),b=o.div(d||(d=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"])),e),u=o.button(f||(f=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"]))),m=o.div(a||(a=n(["\n padding-top: 20px;\n padding-bottom: 20px;\n flex: 1;\n overflow-y: auto;\n"],["\n padding-top: 20px;\n padding-bottom: 20px;\n flex: 1;\n overflow-y: auto;\n"]))),y=o.div(x||(x=n(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 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 margin: 0 16px 20px 16px;\n"],["\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 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 margin: 0 16px 20px 16px;\n"])),function(n){var o=n.$borderRadius;return"".concat(o,"px")}),v=o.div(c||(c=n(["\n ","\n color: #121926;\n"],["\n ","\n color: #121926;\n"])),r),k=o.div(l||(l=n(["\n ","\n color: #121926;\n"],["\n ","\n color: #121926;\n"])),t);export{s as Container,m as Content,g as Header,u as IconButton,y as PointsSection,v as PointsTitle,k as PointsValue,b as Title};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__spreadArray as e}from'./../../../ext/tslib/tslib.es6.mjs.js';import t
|
|
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};
|
|
@@ -3,18 +3,24 @@ export declare const Header: import("styled-components").StyledComponent<"div",
|
|
|
3
3
|
export declare const Title: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
4
|
export declare const IconButton: import("styled-components").StyledComponent<"button", any, {}, never>;
|
|
5
5
|
export declare const Content: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
6
|
-
export declare const PointsSection: import("styled-components").StyledComponent<"div", any, {
|
|
6
|
+
export declare const PointsSection: import("styled-components").StyledComponent<"div", any, {
|
|
7
|
+
$borderRadius: number;
|
|
8
|
+
}, never>;
|
|
7
9
|
export declare const PointsText: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
10
|
export declare const PointsValue: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
9
11
|
export declare const ProgressBarContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
10
12
|
export declare const ProgressBarFill: import("styled-components").StyledComponent<"div", any, {
|
|
11
13
|
$percentage: number;
|
|
12
14
|
$color?: string;
|
|
15
|
+
$isGradient?: boolean;
|
|
13
16
|
}, never>;
|
|
14
17
|
export declare const DescriptionText: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
15
18
|
export declare const TimelineContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
16
19
|
export declare const TimelineItem: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
17
20
|
export declare const TimelineLine: import("styled-components").StyledComponent<"div", any, {
|
|
21
|
+
$connectionType: "solid-dark" | "split" | "solid-light";
|
|
22
|
+
$topGap: boolean;
|
|
23
|
+
$bottomGap: boolean;
|
|
18
24
|
$isLast: boolean;
|
|
19
25
|
}, never>;
|
|
20
26
|
export declare const TimelineContent: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -24,7 +30,9 @@ export declare const TimelineTitle: import("styled-components").StyledComponent<
|
|
|
24
30
|
export declare const TimelineDescription: import("styled-components").StyledComponent<"div", any, {
|
|
25
31
|
$status: "completed" | "current" | "upcoming";
|
|
26
32
|
}, never>;
|
|
27
|
-
export declare const MultiplierSection: import("styled-components").StyledComponent<"div", any, {
|
|
33
|
+
export declare const MultiplierSection: import("styled-components").StyledComponent<"div", any, {
|
|
34
|
+
$borderRadius: number;
|
|
35
|
+
}, never>;
|
|
28
36
|
export declare const MultiplierValue: import("styled-components").StyledComponent<"span", any, {}, never>;
|
|
29
37
|
export declare const CheckIconContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
30
38
|
export declare const CurrentIndicator: 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 n}from"mobx-react";import r 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 c}from"../../../../assets/icons/check-circle.js";import{CheckFillIllustration as s}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 v=n(function(n){var v=n.viewModel,h=n.line,T=o().t,g=v.loyaltyWidget.settings.widgetIconType,j=r.useState(!1),w=j[0],b=j[1];return r.createElement(u,null,r.createElement(m,{$iconType:g},function(){switch(g){case l.ILLUSTRATION:return r.createElement(s,null);case l.NORMAL:case l.NONE:default:return r.createElement(c,null)}}()),r.createElement(d,null,r.createElement(p,null,function(){var e=v.formatCurrency(h.discountAmount);switch(h.campaignType){case a.FIXED_AMOUNT:return T("main_screen.appliedDiscount.fixedAmount",{amount:e});case a.FREE_SHIPPING:return T("main_screen.appliedDiscount.freeShipping");case a.RATIO:return T("main_screen.appliedDiscount.ratio",{amount:"%".concat(h.discountAmount)});case a.BUY_X_THEN_GET_Y:return T("main_screen.appliedDiscount.freeProduct");default:return T("main_screen.appliedDiscount.generic",{amount:e})}}()),r.createElement(f,null,r.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=v.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,v.callbacks.removeLoyaltyPointsFromCart()];case 2:return t.sent(),[3,4];case 3:return b(!1),[7];case 4:return[2]}})})}},w&&r.createElement(y,null),T("main_screen.appliedDiscount.remove")),r.createElement(E,{$color:"#121926",$disabled:w,onClick:function(){v.storeUrl&&v.cartId&&(window.location.href="".concat(v.storeUrl,"/checkout?id=").concat(v.cartId,"&step=info"))}},T("main_screen.appliedDiscount.goToCheckout"),r.createElement(_,null,r.createElement(i,null))))))});export{v as default};
|