@anker-in/campaign-ui 0.2.10-beta.21 → 0.2.10-beta.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/components/chat/action.d.ts +25 -0
  2. package/dist/components/chat/button.d.ts +3 -0
  3. package/dist/components/chat/chatContext.d.ts +101 -0
  4. package/dist/components/chat/index.d.ts +71 -0
  5. package/dist/components/chat/markdown.d.ts +5 -0
  6. package/dist/components/chat/messages.d.ts +3 -0
  7. package/dist/components/chat/props.d.ts +43 -0
  8. package/dist/components/chat/response.d.ts +4 -0
  9. package/dist/components/chat/suggestions.d.ts +3 -0
  10. package/dist/components/chat/utils.d.ts +3 -0
  11. package/dist/components/credits/context/const.d.ts +81 -0
  12. package/dist/components/credits/context/hooks/useActivities.d.ts +12 -0
  13. package/dist/components/credits/context/hooks/useAddressValidate.d.ts +34 -0
  14. package/dist/components/credits/context/hooks/useAlpcFetch.d.ts +23 -0
  15. package/dist/components/credits/context/hooks/useClickOutside.d.ts +3 -0
  16. package/dist/components/credits/context/hooks/useCopy.d.ts +5 -0
  17. package/dist/components/credits/context/hooks/useCountries.d.ts +8 -0
  18. package/dist/components/credits/context/hooks/useFirstPurchaseFinished.d.ts +1 -0
  19. package/dist/components/credits/context/hooks/useMyRewards.d.ts +14 -0
  20. package/dist/components/credits/context/hooks/useReceiptUploaded.d.ts +2 -0
  21. package/dist/components/credits/context/hooks/useRedeemAndBuy.d.ts +9 -0
  22. package/dist/components/credits/context/hooks/useRedeemCoupon.d.ts +17 -0
  23. package/dist/components/credits/context/hooks/useRedeemProduct.d.ts +16 -0
  24. package/dist/components/credits/context/hooks/useRedeemableList.d.ts +7 -0
  25. package/dist/components/credits/context/hooks/useSendEmailValidation.d.ts +1 -0
  26. package/dist/components/credits/context/hooks/useSubscribed.d.ts +1 -0
  27. package/dist/components/credits/context/hooks/useSubscriptions.d.ts +5 -0
  28. package/dist/components/credits/context/hooks/useUploadReceipt.d.ts +14 -0
  29. package/dist/components/credits/context/provider.d.ts +49 -0
  30. package/dist/components/credits/context/response.d.ts +63 -0
  31. package/dist/components/credits/context/utils.d.ts +25 -0
  32. package/dist/components/credits/creditsBanner/index.d.ts +23 -0
  33. package/dist/components/credits/creditsBenefits/benefitItem.d.ts +19 -0
  34. package/dist/components/credits/creditsBenefits/iconInfo.d.ts +2 -0
  35. package/dist/components/credits/creditsBenefits/index.d.ts +12 -0
  36. package/dist/components/credits/creditsCash/RedeemableItem.d.ts +15 -0
  37. package/dist/components/credits/creditsCash/index.d.ts +13 -0
  38. package/dist/components/credits/creditsCash/type.d.ts +47 -0
  39. package/dist/components/credits/creditsFaq/faqItem/FaqItem.d.ts +13 -0
  40. package/dist/components/credits/creditsFaq/index.d.ts +16 -0
  41. package/dist/components/credits/creditsInfoCard/index.d.ts +20 -0
  42. package/dist/components/credits/creditsRedeemList/AddressForm/CountrySelect.d.ts +14 -0
  43. package/dist/components/credits/creditsRedeemList/AddressForm/FormItem.d.ts +6 -0
  44. package/dist/components/credits/creditsRedeemList/AddressForm/Input.d.ts +13 -0
  45. package/dist/components/credits/creditsRedeemList/AddressForm/StateSelect.d.ts +15 -0
  46. package/dist/components/credits/creditsRedeemList/AddressForm/index.d.ts +2 -0
  47. package/dist/components/credits/creditsRedeemList/AddressForm/type.d.ts +26 -0
  48. package/dist/components/credits/creditsRedeemList/RedeemCouponModal.d.ts +9 -0
  49. package/dist/components/credits/creditsRedeemList/RedeemProductModal/Address.d.ts +20 -0
  50. package/dist/components/credits/creditsRedeemList/RedeemProductModal/Error.d.ts +8 -0
  51. package/dist/components/credits/creditsRedeemList/RedeemProductModal/Init.d.ts +11 -0
  52. package/dist/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.d.ts +8 -0
  53. package/dist/components/credits/creditsRedeemList/RedeemProductModal/Success.d.ts +13 -0
  54. package/dist/components/credits/creditsRedeemList/RedeemProductModal/index.d.ts +11 -0
  55. package/dist/components/credits/creditsRedeemList/RedeemableItem.d.ts +9 -0
  56. package/dist/components/credits/creditsRedeemList/index.d.ts +13 -0
  57. package/dist/components/credits/creditsRedeemList/type.d.ts +77 -0
  58. package/dist/components/credits/creditsWaysToGetCredits/index.d.ts +2 -0
  59. package/dist/components/credits/creditsWaysToGetCredits/type.d.ts +60 -0
  60. package/dist/components/credits/creditsWaysToGetCredits/useActions.d.ts +96 -0
  61. package/dist/components/credits/index.d.ts +10 -0
  62. package/dist/components/credits/modal/MyRewardsModal.d.ts +32 -0
  63. package/dist/components/credits/modal/activitiesModal.d.ts +32 -0
  64. package/dist/components/credits/modal/creditsUploadReceiptModal.d.ts +24 -0
  65. package/dist/components/credits/modal/loadingDots.d.ts +6 -0
  66. package/dist/components/credits/modal/modalContainer.d.ts +15 -0
  67. package/dist/components/credits/modal/rulesModal.d.ts +7 -0
  68. package/dist/components/credits/modal/tip.d.ts +5 -0
  69. package/dist/components/credits/type.d.ts +55 -0
  70. package/dist/components/index.d.ts +3 -0
  71. package/dist/debug-env.d.ts +7 -0
  72. package/dist/helpers/fetchResponse.d.ts +14 -0
  73. package/dist/helpers/fetcher.d.ts +2 -0
  74. package/dist/helpers/index.d.ts +2 -0
  75. package/dist/helpers/track.d.ts +19 -0
  76. package/dist/helpers/utils.d.ts +3 -0
  77. package/dist/index.d.ts +1 -493
  78. package/dist/index.js +1245 -4292
  79. package/dist/index.mjs +1130 -4154
  80. package/dist/stories/chat.stories.d.ts +7 -0
  81. package/package.json +8 -3
  82. package/src/styles/global.css +15 -0
  83. package/style.css +1 -0
@@ -0,0 +1,25 @@
1
+ export declare function getAlpcPath(locale?: string): "/api/multipass/alpc-eu" | "/api/multipass/alpc";
2
+ export declare function numberFormat(num?: number): string | number;
3
+ export declare const emailValidate: (email: any) => boolean;
4
+ export declare const languageTerritory: (locale: string) => string;
5
+ export declare function formatPrice({ amount, currencyCode, locale, maximumFractionDigits, minimumFractionDigits, removeTrailingZeros, }: {
6
+ amount: number;
7
+ currencyCode: string;
8
+ locale: string;
9
+ maximumFractionDigits?: number;
10
+ minimumFractionDigits?: number;
11
+ removeTrailingZeros?: boolean;
12
+ }): string;
13
+ export declare function formatVariantPrice({ amount, baseAmount, currencyCode, locale, maximumFractionDigits, minimumFractionDigits, removeTrailingZeros, }: {
14
+ baseAmount: number;
15
+ amount: number;
16
+ currencyCode: string;
17
+ locale: string;
18
+ maximumFractionDigits?: number;
19
+ minimumFractionDigits?: number;
20
+ removeTrailingZeros?: boolean;
21
+ }): {
22
+ price: string;
23
+ basePrice: string | undefined;
24
+ discount: string | null;
25
+ };
@@ -0,0 +1,23 @@
1
+ type Img = {
2
+ url: string;
3
+ alt: string;
4
+ };
5
+ type BannerProps = {
6
+ copy: {
7
+ pcImg: Img;
8
+ laptopImg: Img;
9
+ mobileImg: Img;
10
+ joinNow: string;
11
+ loginIn: string;
12
+ login: {
13
+ title: string;
14
+ description: string;
15
+ };
16
+ unLogin: {
17
+ title: string;
18
+ description: string;
19
+ };
20
+ };
21
+ };
22
+ export declare function CreditsBanner({ copy }: BannerProps): import("react/jsx-runtime").JSX.Element;
23
+ export {};
@@ -0,0 +1,19 @@
1
+ export interface BenefitItemCopy {
2
+ icon: {
3
+ alt: string;
4
+ url: string;
5
+ };
6
+ text: string;
7
+ note?: string;
8
+ tag?: string;
9
+ }
10
+ declare const BenefitItem: ({ item, handleClick, isNoteActive, index, }: {
11
+ item: BenefitItemCopy;
12
+ handleClick: ({ item, index }: {
13
+ item: BenefitItemCopy;
14
+ index: number;
15
+ }) => void;
16
+ isNoteActive: boolean;
17
+ index: number;
18
+ }) => import("react/jsx-runtime").JSX.Element;
19
+ export default BenefitItem;
@@ -0,0 +1,2 @@
1
+ export declare const IconInfo: () => import("react/jsx-runtime").JSX.Element;
2
+ export default IconInfo;
@@ -0,0 +1,12 @@
1
+ import 'swiper/css';
2
+ import 'swiper/css/grid';
3
+ import 'swiper/css/pagination';
4
+ import { type BenefitItemCopy } from './benefitItem';
5
+ interface CreditsBenefitsProps {
6
+ copy: {
7
+ title: string;
8
+ benefits: BenefitItemCopy[];
9
+ };
10
+ }
11
+ export declare const CreditsBenefits: ({ copy }: CreditsBenefitsProps) => import("react/jsx-runtime").JSX.Element;
12
+ export {};
@@ -0,0 +1,15 @@
1
+ import { CreditsCashCopy, RedeemItem } from './type';
2
+ declare function RedeemableItem({ copy, itemData, setRules, className, authCodeActivate, }: {
3
+ copy: CreditsCashCopy;
4
+ itemData: RedeemItem;
5
+ className?: string;
6
+ setRules: (rules: string[]) => void;
7
+ currencyCode: string;
8
+ authCodeActivate: {
9
+ openAuthCodePopup: Function;
10
+ isSuccess: boolean;
11
+ setOnSuccess: (arg: Function) => void;
12
+ isSendingActivateEmail: boolean;
13
+ };
14
+ }): import("react/jsx-runtime").JSX.Element;
15
+ export default RedeemableItem;
@@ -0,0 +1,13 @@
1
+ import { CreditsCashCopy } from './type';
2
+ export declare const CreditsCash: ({ copy, className, hideTitle, cardClassName, authCodeActivate, }: {
3
+ copy: CreditsCashCopy;
4
+ className?: string;
5
+ hideTitle?: boolean;
6
+ cardClassName?: string;
7
+ authCodeActivate: {
8
+ openAuthCodePopup: Function;
9
+ isSuccess: boolean;
10
+ setOnSuccess: (arg: Function) => void;
11
+ isSendingActivateEmail: boolean;
12
+ };
13
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,47 @@
1
+ import { ProductVariant, Product } from '@anker-in/lib';
2
+ import { AlpcConsumeType } from '../context/const';
3
+ type RedeemableItemConfig = {
4
+ title: string;
5
+ desc: string;
6
+ price: string;
7
+ credit: string;
8
+ rules: string;
9
+ image: {
10
+ url: string;
11
+ };
12
+ mobileImage: {
13
+ url: string;
14
+ };
15
+ redeemId: number;
16
+ };
17
+ export type CreditsCashCopy = {
18
+ title: string;
19
+ list: (RedeemableItemConfig & {
20
+ products: {
21
+ handle: string;
22
+ sku: string;
23
+ }[];
24
+ })[];
25
+ soldOut: string;
26
+ ruleLabel: string;
27
+ unlockRewards: string;
28
+ btnRedeem: string;
29
+ off: string;
30
+ insufficientCredits: string;
31
+ };
32
+ export type RedeemItem = {
33
+ product: Product;
34
+ productVariant: ProductVariant;
35
+ alpcData: {
36
+ id: number;
37
+ consumeCredits: number;
38
+ remainingInventory: number;
39
+ isLimited: boolean;
40
+ consumeType: AlpcConsumeType.Product;
41
+ showCredit: boolean;
42
+ title: string;
43
+ desc: string;
44
+ };
45
+ config: RedeemableItemConfig;
46
+ };
47
+ export {};
@@ -0,0 +1,13 @@
1
+ import { type ReactNode } from 'react';
2
+ type FaqItemProps = {
3
+ index: number;
4
+ question?: string;
5
+ answer?: string | number;
6
+ showDots: boolean;
7
+ itemRightIconRender?: ({ expanded }: {
8
+ expanded: boolean;
9
+ }) => ReactNode;
10
+ defaultExpended?: boolean;
11
+ };
12
+ export declare const FaqItem: ({ index, question, answer, showDots, itemRightIconRender, defaultExpended, }: FaqItemProps) => import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -0,0 +1,16 @@
1
+ export type FaqCopy = {
2
+ title: string;
3
+ subTitle: string;
4
+ learnMore: {
5
+ link: string;
6
+ label: string;
7
+ };
8
+ items: {
9
+ category_name: string;
10
+ question: string;
11
+ answer: string;
12
+ }[];
13
+ };
14
+ export declare const CreditsFaq: ({ copy }: {
15
+ copy: FaqCopy;
16
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,20 @@
1
+ import { type MyRewardsMetafields } from '../modal/MyRewardsModal';
2
+ import { type MyActivitiesMetafields } from '../modal/activitiesModal';
3
+ type ButtonConfig = {
4
+ text: string;
5
+ type: 'activities' | 'rewards';
6
+ };
7
+ export interface InfoCardProps {
8
+ data: {
9
+ balanceLabel: string;
10
+ comingSoonLabel: string;
11
+ comingSoonTips: string;
12
+ buttons: ButtonConfig[];
13
+ pointUnit: string;
14
+ infoIcon: string;
15
+ myActivities: MyActivitiesMetafields;
16
+ myRewards: MyRewardsMetafields;
17
+ };
18
+ }
19
+ export declare function CreditsInfoCard({ data }: InfoCardProps): import("react/jsx-runtime").JSX.Element;
20
+ export {};
@@ -0,0 +1,14 @@
1
+ interface Country {
2
+ id: string;
3
+ code: string;
4
+ name: string;
5
+ }
6
+ interface CountrySelectProps {
7
+ countries: Country[];
8
+ loading?: boolean;
9
+ className?: string;
10
+ value?: string;
11
+ onChange: (code: string) => void;
12
+ }
13
+ export declare function CountrySelect({ countries, loading, className, value, onChange }: CountrySelectProps): import("react/jsx-runtime").JSX.Element;
14
+ export {};
@@ -0,0 +1,6 @@
1
+ import { type PropsWithChildren } from 'react';
2
+ export declare const FormItem: ({ error, children, label, required, }: PropsWithChildren<{
3
+ label?: string;
4
+ required: boolean;
5
+ error?: string;
6
+ }>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ interface InputProps {
3
+ className?: string;
4
+ value: string;
5
+ error?: string | boolean;
6
+ placeholder: string;
7
+ required?: boolean;
8
+ disabled?: boolean;
9
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
10
+ onBlur?: () => void;
11
+ }
12
+ export declare function Input({ className, error, value, placeholder, disabled, onChange, onBlur }: InputProps): import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -0,0 +1,15 @@
1
+ interface StateSelectProps {
2
+ states: {
3
+ code: string;
4
+ id: string;
5
+ name: string;
6
+ }[];
7
+ className?: string;
8
+ countryId?: string;
9
+ defaultCode?: string;
10
+ stateName?: string;
11
+ stateCode?: string;
12
+ onChange: (code: string, name: string) => void;
13
+ }
14
+ export declare function StateSelect({ states, stateName, stateCode, className, onChange }: StateSelectProps): import("react/jsx-runtime").JSX.Element;
15
+ export {};
@@ -0,0 +1,2 @@
1
+ import { AddressFormProps } from './type';
2
+ export declare const AddressForm: ({ countries, countriesLoading, form, validate, errors, onChange }: AddressFormProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,26 @@
1
+ import { CreditsRedeemListCopy } from '../type';
2
+ type ShippingCountry = {
3
+ id: string;
4
+ name: string;
5
+ code: string;
6
+ provinces: {
7
+ id: string;
8
+ name: string;
9
+ code: string;
10
+ }[];
11
+ };
12
+ export interface AddressFormProps {
13
+ form: CreditsRedeemListCopy['redeemModal']['product']['addressForm'];
14
+ onChange: (address: any) => void;
15
+ validate: (args: {
16
+ force?: boolean;
17
+ ignoreKeys?: string[];
18
+ }) => boolean;
19
+ errors: {
20
+ key: string;
21
+ message: string;
22
+ }[];
23
+ countries: ShippingCountry[];
24
+ countriesLoading: boolean;
25
+ }
26
+ export {};
@@ -0,0 +1,9 @@
1
+ import type { ModalContainerProps } from '../modal/modalContainer';
2
+ import type { RedeemableItem as RedeemableItemType } from '../type';
3
+ import { CreditsRedeemListCopy } from './type';
4
+ declare function RedeemCouponModal({ item, copy, onError, ...props }: ModalContainerProps & {
5
+ item: RedeemableItemType;
6
+ copy: CreditsRedeemListCopy;
7
+ onError: (code: number) => void;
8
+ }): import("react/jsx-runtime").JSX.Element;
9
+ export default RedeemCouponModal;
@@ -0,0 +1,20 @@
1
+ import type { RedeemableItem as RedeemableItemType } from '../../type';
2
+ import { CreditsRedeemListCopy } from '../type';
3
+ type AddressProps = {
4
+ copy: CreditsRedeemListCopy;
5
+ shippingAddress: string;
6
+ setAddress: (address: Record<string, any>) => void;
7
+ validateAddress: (address: Record<string, any>) => boolean;
8
+ validateErrors: {
9
+ key: string;
10
+ message: string;
11
+ }[];
12
+ item: RedeemableItemType;
13
+ loading: boolean;
14
+ address: Record<string, any> | undefined;
15
+ disabled: boolean;
16
+ handlePayment: () => void;
17
+ shippingProduct: string;
18
+ };
19
+ export declare const Address: ({ copy, shippingAddress, setAddress, validateAddress, validateErrors, shippingProduct, loading, address, disabled, handlePayment, item, }: AddressProps) => import("react/jsx-runtime").JSX.Element;
20
+ export {};
@@ -0,0 +1,8 @@
1
+ type ErrorProps = {
2
+ errorInfo: {
3
+ imageUrl: string;
4
+ message: string;
5
+ };
6
+ };
7
+ export declare const Error: ({ errorInfo }: ErrorProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,11 @@
1
+ import type { RedeemableItem as RedeemableItemType } from '../../type';
2
+ import { CreditsRedeemListCopy } from '../type';
3
+ type InitProps = {
4
+ copy: CreditsRedeemListCopy;
5
+ item: RedeemableItemType;
6
+ loading: boolean;
7
+ disabled: boolean;
8
+ setStatus: (status: 'address' | 'init' | 'success' | 'error') => void;
9
+ };
10
+ export declare const Init: ({ copy, item, loading, disabled, setStatus }: InitProps) => import("react/jsx-runtime").JSX.Element;
11
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { RedeemableItem as RedeemableItemType } from '../../type';
2
+ import { CreditsRedeemListCopy } from '../type';
3
+ type ProductInfoProps = {
4
+ item: RedeemableItemType;
5
+ copy: CreditsRedeemListCopy;
6
+ };
7
+ export declare const ProductInfo: ({ item, copy }: ProductInfoProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,13 @@
1
+ import type { RedeemableItem as RedeemableItemType } from '../../type';
2
+ import { CreditsRedeemListCopy } from '../type';
3
+ type SuccessProps = {
4
+ copy: CreditsRedeemListCopy;
5
+ shippingProduct: string;
6
+ loading: boolean;
7
+ address: Record<string, any> | undefined;
8
+ disabled: boolean;
9
+ onClose: () => void;
10
+ item: RedeemableItemType;
11
+ };
12
+ export declare const Success: ({ copy, shippingProduct, loading, address, disabled, onClose, item }: SuccessProps) => import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -0,0 +1,11 @@
1
+ import { AlpcErrorCode } from '../../context/const';
2
+ import type { ModalContainerProps } from '../../modal/modalContainer';
3
+ import type { RedeemableItem as RedeemableItemType } from '../../type';
4
+ import { CreditsRedeemListCopy } from '../type';
5
+ type RedeemProductModalProps = ModalContainerProps & {
6
+ item: RedeemableItemType;
7
+ copy: CreditsRedeemListCopy;
8
+ onError: (code: AlpcErrorCode) => void;
9
+ };
10
+ declare function RedeemProductModal({ item, copy, onError, ...props }: RedeemProductModalProps): import("react/jsx-runtime").JSX.Element;
11
+ export default RedeemProductModal;
@@ -0,0 +1,9 @@
1
+ import type { RedeemableItem as RedeemableItemType } from '../type';
2
+ import type { CreditsRedeemListCopy } from './type';
3
+ export declare function RedeemableItem({ copy, className, item, onRulesOpen, onRedeem, }: {
4
+ copy: CreditsRedeemListCopy;
5
+ className?: string;
6
+ item: RedeemableItemType;
7
+ onRulesOpen: (rules: string[]) => void;
8
+ onRedeem: (item: RedeemableItemType) => void;
9
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { CreditsRedeemListCopy } from './type';
2
+ export declare function CreditsRedeemList({ copy, className, tabClassName, hideTitle, cardClassName, activate, }: {
3
+ copy: CreditsRedeemListCopy;
4
+ className?: string;
5
+ tabClassName?: string;
6
+ hideTitle?: boolean;
7
+ cardClassName?: string;
8
+ activate: {
9
+ openAuthCodePopup: () => void;
10
+ isSuccess: boolean;
11
+ setOnSuccess: (callback: Function) => void;
12
+ };
13
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,77 @@
1
+ import { CreditsPageCommon } from '../type';
2
+ export type CreditsRedeemListCopy = {
3
+ title: string;
4
+ giftCardLabel: string;
5
+ unlockRewards: string;
6
+ btnRedeem: string;
7
+ list: {
8
+ label: string;
9
+ list: {
10
+ id: string;
11
+ type: string;
12
+ value: string;
13
+ rules: string[];
14
+ }[];
15
+ }[];
16
+ validatorInfo: {
17
+ addressInfo: {
18
+ name: string;
19
+ country: string;
20
+ province: string;
21
+ city: string;
22
+ address: string;
23
+ };
24
+ };
25
+ redeemModal: {
26
+ confirmTitle: string;
27
+ confirmButton: string;
28
+ commonError: string;
29
+ redeemLimitError: string;
30
+ inventoryNotEnough: string;
31
+ creditsNotEnough: string;
32
+ crossSiteError: string;
33
+ errorImageUrl: string;
34
+ coupon: {
35
+ successDesc: string;
36
+ successTitle: string;
37
+ successButton: string;
38
+ successButtonUrl: string;
39
+ };
40
+ product: {
41
+ required: string;
42
+ invalidEmail: string;
43
+ shippingAddress: string;
44
+ shippingProduct: string;
45
+ addressForm: {
46
+ key: string;
47
+ type: string;
48
+ label: string;
49
+ isSelect: boolean;
50
+ required: boolean;
51
+ placeholder: string;
52
+ }[][];
53
+ form: {
54
+ key: string;
55
+ type: string;
56
+ isSelect: boolean;
57
+ required: boolean;
58
+ placeholder: string;
59
+ }[][];
60
+ successDesc: string[];
61
+ rules: string[];
62
+ steps: {
63
+ imageUrl: string;
64
+ title: string;
65
+ }[];
66
+ quantityLabel: string;
67
+ totalPriceLabel: string;
68
+ variantLabel: string;
69
+ shippingFeeLabel: string;
70
+ paymentButton: string;
71
+ stepTitle: string;
72
+ };
73
+ };
74
+ copied: string;
75
+ off: string;
76
+ copy: string;
77
+ } & CreditsPageCommon;
@@ -0,0 +1,2 @@
1
+ import { type CreditsWaysToGetCreditsProps } from './type';
2
+ export declare const CreditsWaysToGetCredits: ({ copy, activate, subscribe, uploadReceipt, classNames, }: CreditsWaysToGetCreditsProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,60 @@
1
+ import type { ReceiptCopy } from '../modal/creditsUploadReceiptModal';
2
+ export type BenefitItem = {
3
+ title: string;
4
+ credits: string;
5
+ id: string;
6
+ };
7
+ export type WaysToGetCreditsCopy = {
8
+ title: string;
9
+ subtitle: string;
10
+ equalCredits: string;
11
+ musicIcon: string;
12
+ list: BenefitItem[];
13
+ mainImage: {
14
+ url: string;
15
+ alt: string;
16
+ };
17
+ joinNow: string;
18
+ activate: string;
19
+ completed: string;
20
+ completeProfile: string;
21
+ makeFirstPurchase: string;
22
+ goShopLink: string;
23
+ uploadReceipt: string;
24
+ shopNow: string;
25
+ subscribe: string;
26
+ sendEmailSuccess: string;
27
+ creditsIcon: {
28
+ url: string;
29
+ alt: string;
30
+ };
31
+ receipt: ReceiptCopy;
32
+ };
33
+ export declare enum TaskType {
34
+ Activate = "activate",
35
+ Subscribe = "subscribe",
36
+ CompleteProfile = "completeProfile",
37
+ FirstPurchase = "firstPurchase",
38
+ UploadReceipt = "uploadReceipt",
39
+ Shop = "shop"
40
+ }
41
+ export type CreditsWaysToGetCreditsProps = {
42
+ copy: WaysToGetCreditsCopy;
43
+ classNames?: {
44
+ equalCreditsText?: string;
45
+ subtitle?: string;
46
+ };
47
+ activate: {
48
+ openAuthCodePopup: () => void;
49
+ isSuccess: boolean;
50
+ isSendingActivateEmail: boolean;
51
+ };
52
+ subscribe: {
53
+ openSubscribePopup: () => void;
54
+ isSuccess: boolean;
55
+ };
56
+ uploadReceipt: {
57
+ openUploadReceiptPopup: () => void;
58
+ isSuccess: boolean;
59
+ };
60
+ };
@@ -0,0 +1,96 @@
1
+ import type { CreditsWaysToGetCreditsProps } from './type';
2
+ export declare const useActions: ({ copy, subscribe, uploadReceipt, activate, gaParameters, }: CreditsWaysToGetCreditsProps & {
3
+ gaParameters?: {
4
+ position: string;
5
+ };
6
+ }) => {
7
+ actions: {
8
+ activate: {
9
+ finished: any;
10
+ notLogin: {
11
+ buttonLabel: string;
12
+ handleClick: () => void;
13
+ };
14
+ notFinished: {
15
+ buttonLabel: string;
16
+ handleClick: () => void;
17
+ };
18
+ completed: {
19
+ buttonLabel: string;
20
+ };
21
+ };
22
+ subscribe: {
23
+ finished: boolean;
24
+ notLogin: {
25
+ buttonLabel: string;
26
+ handleClick: () => void;
27
+ };
28
+ notFinished: {
29
+ buttonLabel: string;
30
+ handleClick: () => void;
31
+ };
32
+ completed: {
33
+ buttonLabel: string;
34
+ };
35
+ };
36
+ completeProfile: {
37
+ finished: any;
38
+ notLogin: {
39
+ buttonLabel: string;
40
+ handleClick: () => void;
41
+ };
42
+ notFinished: {
43
+ buttonLabel: string;
44
+ link: string;
45
+ handleClick: () => void;
46
+ };
47
+ completed: {
48
+ buttonLabel: string;
49
+ };
50
+ };
51
+ firstPurchase: {
52
+ finished: boolean;
53
+ notLogin: {
54
+ buttonLabel: string;
55
+ handleClick: () => void;
56
+ };
57
+ notFinished: {
58
+ buttonLabel: string;
59
+ link: string;
60
+ handleClick: () => void;
61
+ };
62
+ completed: {
63
+ buttonLabel: string;
64
+ };
65
+ };
66
+ uploadReceipt: {
67
+ finished: boolean;
68
+ notLogin: {
69
+ buttonLabel: string;
70
+ handleClick: () => void;
71
+ };
72
+ notFinished: {
73
+ buttonLabel: string;
74
+ handleClick: () => void;
75
+ };
76
+ completed: {
77
+ buttonLabel: string;
78
+ };
79
+ };
80
+ shop: {
81
+ finished: boolean;
82
+ notLogin: {
83
+ buttonLabel: string;
84
+ handleClick: () => void;
85
+ };
86
+ notFinished: {
87
+ buttonLabel: string;
88
+ link: string;
89
+ handleClick: () => void;
90
+ };
91
+ completed: {
92
+ buttonLabel: string;
93
+ };
94
+ };
95
+ };
96
+ };