@anker-in/campaign-ui 0.2.10-beta.23 → 0.2.10-beta.25

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 (157) hide show
  1. package/dist/cjs/components/chat/action.d.ts +25 -0
  2. package/dist/cjs/components/chat/button.d.ts +3 -0
  3. package/dist/cjs/components/chat/chatContext.d.ts +101 -0
  4. package/dist/cjs/components/chat/index.d.ts +71 -0
  5. package/dist/cjs/components/chat/markdown.d.ts +5 -0
  6. package/dist/cjs/components/chat/messages.d.ts +3 -0
  7. package/dist/cjs/components/chat/props.d.ts +43 -0
  8. package/dist/cjs/components/chat/response.d.ts +4 -0
  9. package/dist/cjs/components/chat/suggestions.d.ts +3 -0
  10. package/dist/cjs/components/chat/utils.d.ts +3 -0
  11. package/dist/cjs/components/credits/context/const.d.ts +81 -0
  12. package/dist/cjs/components/credits/context/hooks/useActivities.d.ts +12 -0
  13. package/dist/cjs/components/credits/context/hooks/useAddressValidate.d.ts +34 -0
  14. package/dist/cjs/components/credits/context/hooks/useAlpcFetch.d.ts +23 -0
  15. package/dist/cjs/components/credits/context/hooks/useClickOutside.d.ts +3 -0
  16. package/dist/cjs/components/credits/context/hooks/useCopy.d.ts +5 -0
  17. package/dist/cjs/components/credits/context/hooks/useCountries.d.ts +8 -0
  18. package/dist/cjs/components/credits/context/hooks/useFirstPurchaseFinished.d.ts +1 -0
  19. package/dist/cjs/components/credits/context/hooks/useMyRewards.d.ts +14 -0
  20. package/dist/cjs/components/credits/context/hooks/useReceiptUploaded.d.ts +2 -0
  21. package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.d.ts +9 -0
  22. package/dist/cjs/components/credits/context/hooks/useRedeemCoupon.d.ts +17 -0
  23. package/dist/cjs/components/credits/context/hooks/useRedeemProduct.d.ts +16 -0
  24. package/dist/cjs/components/credits/context/hooks/useRedeemableList.d.ts +7 -0
  25. package/dist/cjs/components/credits/context/hooks/useSendEmailValidation.d.ts +1 -0
  26. package/dist/cjs/components/credits/context/hooks/useSubscribed.d.ts +1 -0
  27. package/dist/cjs/components/credits/context/hooks/useSubscriptions.d.ts +5 -0
  28. package/dist/cjs/components/credits/context/hooks/useUploadReceipt.d.ts +14 -0
  29. package/dist/cjs/components/credits/context/provider.d.ts +49 -0
  30. package/dist/cjs/components/credits/context/response.d.ts +63 -0
  31. package/dist/cjs/components/credits/context/utils.d.ts +25 -0
  32. package/dist/cjs/components/credits/creditsBanner/index.d.ts +23 -0
  33. package/dist/cjs/components/credits/creditsBenefits/benefitItem.d.ts +19 -0
  34. package/dist/cjs/components/credits/creditsBenefits/iconInfo.d.ts +2 -0
  35. package/dist/cjs/components/credits/creditsBenefits/index.d.ts +12 -0
  36. package/dist/cjs/components/credits/creditsCash/RedeemableItem.d.ts +15 -0
  37. package/dist/cjs/components/credits/creditsCash/index.d.ts +13 -0
  38. package/dist/cjs/components/credits/creditsCash/type.d.ts +47 -0
  39. package/dist/cjs/components/credits/creditsFaq/faqItem/FaqItem.d.ts +13 -0
  40. package/dist/cjs/components/credits/creditsFaq/index.d.ts +16 -0
  41. package/dist/cjs/components/credits/creditsInfoCard/index.d.ts +20 -0
  42. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/CountrySelect.d.ts +14 -0
  43. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/FormItem.d.ts +6 -0
  44. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/Input.d.ts +13 -0
  45. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/StateSelect.d.ts +15 -0
  46. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/index.d.ts +2 -0
  47. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/type.d.ts +26 -0
  48. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.d.ts +9 -0
  49. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.d.ts +20 -0
  50. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Error.d.ts +8 -0
  51. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.d.ts +11 -0
  52. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.d.ts +8 -0
  53. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.d.ts +13 -0
  54. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.d.ts +11 -0
  55. package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.d.ts +9 -0
  56. package/dist/cjs/components/credits/creditsRedeemList/index.d.ts +13 -0
  57. package/dist/cjs/components/credits/creditsRedeemList/type.d.ts +77 -0
  58. package/dist/cjs/components/credits/creditsWaysToGetCredits/index.d.ts +2 -0
  59. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.d.ts +60 -0
  60. package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.d.ts +96 -0
  61. package/dist/cjs/components/credits/index.d.ts +10 -0
  62. package/dist/cjs/components/credits/modal/MyRewardsModal.d.ts +32 -0
  63. package/dist/cjs/components/credits/modal/activitiesModal.d.ts +32 -0
  64. package/dist/cjs/components/credits/modal/creditsUploadReceiptModal.d.ts +24 -0
  65. package/dist/cjs/components/credits/modal/loadingDots.d.ts +6 -0
  66. package/dist/cjs/components/credits/modal/modalContainer.d.ts +15 -0
  67. package/dist/cjs/components/credits/modal/rulesModal.d.ts +7 -0
  68. package/dist/cjs/components/credits/modal/tip.d.ts +5 -0
  69. package/dist/cjs/components/credits/type.d.ts +55 -0
  70. package/dist/cjs/components/index.d.ts +3 -0
  71. package/dist/cjs/debug-env.d.ts +7 -0
  72. package/dist/cjs/helpers/fetchResponse.d.ts +14 -0
  73. package/dist/cjs/helpers/fetcher.d.ts +2 -0
  74. package/dist/cjs/helpers/index.d.ts +2 -0
  75. package/dist/cjs/helpers/track.d.ts +19 -0
  76. package/dist/cjs/helpers/utils.d.ts +3 -0
  77. package/dist/cjs/index.d.ts +2 -0
  78. package/dist/cjs/stories/chat.stories.d.ts +7 -0
  79. package/dist/esm/components/chat/action.d.ts +25 -0
  80. package/dist/esm/components/chat/button.d.ts +3 -0
  81. package/dist/esm/components/chat/chatContext.d.ts +101 -0
  82. package/dist/esm/components/chat/index.d.ts +71 -0
  83. package/dist/esm/components/chat/markdown.d.ts +5 -0
  84. package/dist/esm/components/chat/messages.d.ts +3 -0
  85. package/dist/esm/components/chat/props.d.ts +43 -0
  86. package/dist/esm/components/chat/response.d.ts +4 -0
  87. package/dist/esm/components/chat/suggestions.d.ts +3 -0
  88. package/dist/esm/components/chat/utils.d.ts +3 -0
  89. package/dist/esm/components/credits/context/const.d.ts +81 -0
  90. package/dist/esm/components/credits/context/hooks/useActivities.d.ts +12 -0
  91. package/dist/esm/components/credits/context/hooks/useAddressValidate.d.ts +34 -0
  92. package/dist/esm/components/credits/context/hooks/useAlpcFetch.d.ts +23 -0
  93. package/dist/esm/components/credits/context/hooks/useClickOutside.d.ts +3 -0
  94. package/dist/esm/components/credits/context/hooks/useCopy.d.ts +5 -0
  95. package/dist/esm/components/credits/context/hooks/useCountries.d.ts +8 -0
  96. package/dist/esm/components/credits/context/hooks/useFirstPurchaseFinished.d.ts +1 -0
  97. package/dist/esm/components/credits/context/hooks/useMyRewards.d.ts +14 -0
  98. package/dist/esm/components/credits/context/hooks/useReceiptUploaded.d.ts +2 -0
  99. package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.d.ts +9 -0
  100. package/dist/esm/components/credits/context/hooks/useRedeemCoupon.d.ts +17 -0
  101. package/dist/esm/components/credits/context/hooks/useRedeemProduct.d.ts +16 -0
  102. package/dist/esm/components/credits/context/hooks/useRedeemableList.d.ts +7 -0
  103. package/dist/esm/components/credits/context/hooks/useSendEmailValidation.d.ts +1 -0
  104. package/dist/esm/components/credits/context/hooks/useSubscribed.d.ts +1 -0
  105. package/dist/esm/components/credits/context/hooks/useSubscriptions.d.ts +5 -0
  106. package/dist/esm/components/credits/context/hooks/useUploadReceipt.d.ts +14 -0
  107. package/dist/esm/components/credits/context/provider.d.ts +49 -0
  108. package/dist/esm/components/credits/context/response.d.ts +63 -0
  109. package/dist/esm/components/credits/context/utils.d.ts +25 -0
  110. package/dist/esm/components/credits/creditsBanner/index.d.ts +23 -0
  111. package/dist/esm/components/credits/creditsBenefits/benefitItem.d.ts +19 -0
  112. package/dist/esm/components/credits/creditsBenefits/iconInfo.d.ts +2 -0
  113. package/dist/esm/components/credits/creditsBenefits/index.d.ts +12 -0
  114. package/dist/esm/components/credits/creditsCash/RedeemableItem.d.ts +15 -0
  115. package/dist/esm/components/credits/creditsCash/index.d.ts +13 -0
  116. package/dist/esm/components/credits/creditsCash/type.d.ts +47 -0
  117. package/dist/esm/components/credits/creditsFaq/faqItem/FaqItem.d.ts +13 -0
  118. package/dist/esm/components/credits/creditsFaq/index.d.ts +16 -0
  119. package/dist/esm/components/credits/creditsInfoCard/index.d.ts +20 -0
  120. package/dist/esm/components/credits/creditsRedeemList/AddressForm/CountrySelect.d.ts +14 -0
  121. package/dist/esm/components/credits/creditsRedeemList/AddressForm/FormItem.d.ts +6 -0
  122. package/dist/esm/components/credits/creditsRedeemList/AddressForm/Input.d.ts +13 -0
  123. package/dist/esm/components/credits/creditsRedeemList/AddressForm/StateSelect.d.ts +15 -0
  124. package/dist/esm/components/credits/creditsRedeemList/AddressForm/index.d.ts +2 -0
  125. package/dist/esm/components/credits/creditsRedeemList/AddressForm/type.d.ts +26 -0
  126. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.d.ts +9 -0
  127. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.d.ts +20 -0
  128. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Error.d.ts +8 -0
  129. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.d.ts +11 -0
  130. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.d.ts +8 -0
  131. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.d.ts +13 -0
  132. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.d.ts +11 -0
  133. package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.d.ts +9 -0
  134. package/dist/esm/components/credits/creditsRedeemList/index.d.ts +13 -0
  135. package/dist/esm/components/credits/creditsRedeemList/type.d.ts +77 -0
  136. package/dist/esm/components/credits/creditsWaysToGetCredits/index.d.ts +2 -0
  137. package/dist/esm/components/credits/creditsWaysToGetCredits/type.d.ts +60 -0
  138. package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.d.ts +96 -0
  139. package/dist/esm/components/credits/index.d.ts +10 -0
  140. package/dist/esm/components/credits/modal/MyRewardsModal.d.ts +32 -0
  141. package/dist/esm/components/credits/modal/activitiesModal.d.ts +32 -0
  142. package/dist/esm/components/credits/modal/creditsUploadReceiptModal.d.ts +24 -0
  143. package/dist/esm/components/credits/modal/loadingDots.d.ts +6 -0
  144. package/dist/esm/components/credits/modal/modalContainer.d.ts +15 -0
  145. package/dist/esm/components/credits/modal/rulesModal.d.ts +7 -0
  146. package/dist/esm/components/credits/modal/tip.d.ts +5 -0
  147. package/dist/esm/components/credits/type.d.ts +55 -0
  148. package/dist/esm/components/index.d.ts +3 -0
  149. package/dist/esm/debug-env.d.ts +7 -0
  150. package/dist/esm/helpers/fetchResponse.d.ts +14 -0
  151. package/dist/esm/helpers/fetcher.d.ts +2 -0
  152. package/dist/esm/helpers/index.d.ts +2 -0
  153. package/dist/esm/helpers/track.d.ts +19 -0
  154. package/dist/esm/helpers/utils.d.ts +3 -0
  155. package/dist/esm/index.d.ts +2 -0
  156. package/dist/esm/stories/chat.stories.d.ts +7 -0
  157. package/package.json +14 -13
@@ -0,0 +1,34 @@
1
+ export interface Rule {
2
+ key: string;
3
+ error: string;
4
+ rule?: string;
5
+ params?: Record<string, any>;
6
+ required?: boolean;
7
+ validator?: (value: string, key: string, address: Record<string, any>) => boolean | string;
8
+ }
9
+ export type FormData = {
10
+ key: string;
11
+ label: string;
12
+ tips: string;
13
+ required: boolean;
14
+ placeholder: string;
15
+ type?: string;
16
+ }[];
17
+ export declare const useAddressValidate: ({ address, validatorInfo, formData, errorLabel, }: {
18
+ address: Record<string, any>;
19
+ validatorInfo: any;
20
+ formData: any;
21
+ errorLabel: {
22
+ require: string;
23
+ email: string;
24
+ };
25
+ }) => {
26
+ validate: ({ force, ignoreKeys }: {
27
+ force?: boolean;
28
+ ignoreKeys?: string[];
29
+ }) => boolean;
30
+ errors: {
31
+ key: string;
32
+ message: string;
33
+ }[];
34
+ };
@@ -0,0 +1,23 @@
1
+ import { type SWRConfiguration } from 'swr';
2
+ interface UseAlpcFetchOptionsSwrOptions<TData, Error> extends SWRConfiguration<TData, Error> {
3
+ enable?: boolean;
4
+ }
5
+ interface FetchOptions extends RequestInit {
6
+ queryKey: [string, Record<string, any>];
7
+ data?: Record<string, any>;
8
+ }
9
+ interface MutationOptions extends RequestInit {
10
+ url: string;
11
+ initData: Record<string, any>;
12
+ }
13
+ export interface UseMutationConfig<TData> {
14
+ onSuccess?: (response: TData) => any;
15
+ onError?: (error: Error) => any;
16
+ }
17
+ export declare const useAlpcFetch: <TData>(options: FetchOptions, swrOptions?: UseAlpcFetchOptionsSwrOptions<TData, Error>) => import("swr").SWRResponse<TData, any, SWRConfiguration<TData, any, import("swr").BareFetcher<TData>> | undefined>;
18
+ export declare const useAlpcMutation: <TData, TBody>(options: MutationOptions, mutationOptions?: UseMutationConfig<TData>) => {
19
+ isMutating: boolean;
20
+ trigger: (fetchData: TBody, opts?: UseMutationConfig<TData>) => Promise<TData | undefined>;
21
+ data: TData | undefined;
22
+ };
23
+ export {};
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare function useClickOutside<T extends HTMLElement = HTMLElement>(onClickOutside: (event: MouseEvent | TouchEvent) => void): React.RefObject<T>;
3
+ export default useClickOutside;
@@ -0,0 +1,5 @@
1
+ declare const useCopy: () => {
2
+ copy: (val: string) => void;
3
+ copied: boolean;
4
+ };
5
+ export default useCopy;
@@ -0,0 +1,8 @@
1
+ import { type ShippingCountry } from '../../type';
2
+ declare function useCountries({ shopifyStoreDomain }: {
3
+ shopifyStoreDomain: string;
4
+ }): {
5
+ isLoading: boolean;
6
+ countries: ShippingCountry[];
7
+ };
8
+ export default useCountries;
@@ -0,0 +1 @@
1
+ export declare const useFirstPurchaseFinished: () => boolean;
@@ -0,0 +1,14 @@
1
+ import { AlpcConsumeType } from '../const';
2
+ import type { RedeemLogResponse } from '../response';
3
+ declare function useMyRewards({ page, pageSize, consumeType, }: {
4
+ page: number;
5
+ pageSize: number;
6
+ consumeType?: AlpcConsumeType;
7
+ }): {
8
+ myRewards: RedeemLogResponse[];
9
+ isLoading: boolean;
10
+ total: number;
11
+ getMyRewards: () => Promise<void>;
12
+ canNext: boolean;
13
+ };
14
+ export default useMyRewards;
@@ -0,0 +1,2 @@
1
+ export declare const useReceiptUploaded: () => boolean;
2
+ export default useReceiptUploaded;
@@ -0,0 +1,9 @@
1
+ import { SWRMutationConfiguration } from 'swr/mutation';
2
+ import type { ProductVariant } from '@anker-in/lib';
3
+ export declare const useRedeemAndBuy: (_: any, swrOptions?: SWRMutationConfiguration<undefined, Error, string, any> & {
4
+ throwOnError?: boolean;
5
+ }) => import("swr/mutation").SWRMutationResponse<undefined, Error, "redeemAndBuy", {
6
+ productVariant: ProductVariant;
7
+ quantity?: number;
8
+ redeemId: number;
9
+ }>;
@@ -0,0 +1,17 @@
1
+ import { type UseMutationConfig } from './useAlpcFetch';
2
+ type RedeemCouponResponse = {
3
+ code: number;
4
+ data: {
5
+ success: boolean;
6
+ coupon_code: string;
7
+ };
8
+ };
9
+ export declare const useRedeemCoupon: (mutationOptions?: UseMutationConfig<RedeemCouponResponse>) => {
10
+ isMutating: boolean;
11
+ trigger: (fetchData: {
12
+ user_id?: string;
13
+ rule_id: number;
14
+ }, opts?: UseMutationConfig<RedeemCouponResponse>) => Promise<RedeemCouponResponse | undefined>;
15
+ data: RedeemCouponResponse | undefined;
16
+ };
17
+ export {};
@@ -0,0 +1,16 @@
1
+ import { type UseMutationConfig } from './useAlpcFetch';
2
+ type RedeemProductResponse = {
3
+ code: number;
4
+ data: {
5
+ success: boolean;
6
+ };
7
+ };
8
+ export declare const useRedeemProduct: (mutationOptions?: UseMutationConfig<RedeemProductResponse>) => {
9
+ isMutating: boolean;
10
+ trigger: (fetchData: {
11
+ rule_id: number;
12
+ address: string;
13
+ }, opts?: UseMutationConfig<RedeemProductResponse>) => Promise<RedeemProductResponse | undefined>;
14
+ data: RedeemProductResponse | undefined;
15
+ };
16
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { ConsumeCreditRuleResponse } from '../response';
2
+ declare function useRedeemableList(): {
3
+ listLoading: boolean;
4
+ redeemableList: ConsumeCreditRuleResponse[];
5
+ getRedeemableList: () => void;
6
+ };
7
+ export default useRedeemableList;
@@ -0,0 +1 @@
1
+ export declare function useSendEmailValidation(): import("swr/mutation").SWRMutationResponse<any, any, "send-email-validation", never>;
@@ -0,0 +1 @@
1
+ export declare const useSubscribed: () => boolean;
@@ -0,0 +1,5 @@
1
+ import type { Subscription } from '../../type';
2
+ declare function useSubscriptions(email?: string): {
3
+ subscriptionData: Subscription | undefined;
4
+ };
5
+ export default useSubscriptions;
@@ -0,0 +1,14 @@
1
+ export declare const uploadReceipt: (_: any, { arg: { orderName } }: {
2
+ arg: {
3
+ orderName: string;
4
+ };
5
+ }) => Promise<{
6
+ ok: boolean;
7
+ code: number;
8
+ }>;
9
+ export declare const useUploadReceipt: () => import("swr/mutation").SWRMutationResponse<{
10
+ ok: boolean;
11
+ code: number;
12
+ }, any, "/api/multipass/mktsrv/v1/credit/upload_third_party_order", {
13
+ orderName: string;
14
+ }>;
@@ -0,0 +1,49 @@
1
+ import React from 'react';
2
+ import type { DTC_TASK_TYPE } from './const';
3
+ import type { CreditInfoResponse } from './response';
4
+ export declare const CreditsContext: React.Context<{
5
+ profile: any;
6
+ isLoadingProfile: boolean;
7
+ removeProfile: () => void;
8
+ taskIdToTypeMapping: Record<string, DTC_TASK_TYPE>;
9
+ openSignInPopup: () => void;
10
+ openSignUpPopup: () => void;
11
+ creditInfo?: CreditInfoResponse;
12
+ customer?: any;
13
+ customerLoading: boolean;
14
+ fetchCreditInfo: (user_id: string) => void;
15
+ gtm: {
16
+ pageGroup: string;
17
+ };
18
+ }>;
19
+ export declare function CreditsProvider({ children, profile, removeProfile, isLoadingProfile, openSignInPopup, openSignUpPopup, taskIdToTypeMapping, creditInfo, customer, customerLoading, fetchCreditInfo, gtm, }: {
20
+ children: React.ReactNode;
21
+ profile: any;
22
+ removeProfile: () => void;
23
+ isLoadingProfile: boolean;
24
+ openSignInPopup: () => void;
25
+ openSignUpPopup: () => void;
26
+ taskIdToTypeMapping: Record<string, DTC_TASK_TYPE>;
27
+ creditInfo?: CreditInfoResponse;
28
+ customer: any;
29
+ fetchCreditInfo: (user_id: string) => void;
30
+ customerLoading: boolean;
31
+ gtm: {
32
+ pageGroup: string;
33
+ };
34
+ }): import("react/jsx-runtime").JSX.Element;
35
+ export declare function useCreditsContext(): {
36
+ profile: any;
37
+ isLoadingProfile: boolean;
38
+ removeProfile: () => void;
39
+ taskIdToTypeMapping: Record<string, DTC_TASK_TYPE>;
40
+ openSignInPopup: () => void;
41
+ openSignUpPopup: () => void;
42
+ creditInfo?: CreditInfoResponse;
43
+ customer?: any;
44
+ customerLoading: boolean;
45
+ fetchCreditInfo: (user_id: string) => void;
46
+ gtm: {
47
+ pageGroup: string;
48
+ };
49
+ };
@@ -0,0 +1,63 @@
1
+ import { ApprovalStatus, AlpcConsumeType, CreditType, TaskSubType, TaskType } from './const';
2
+ interface BaseResponse {
3
+ brand: string;
4
+ }
5
+ export interface Task extends BaseResponse {
6
+ goods_sku?: string;
7
+ task_type: TaskType;
8
+ task_sub_type: TaskSubType;
9
+ task_rule_id: number;
10
+ task_name: string;
11
+ task_note: string;
12
+ app_name: string;
13
+ }
14
+ export interface CreditLogResponse extends Task {
15
+ credit: number;
16
+ task_name: string;
17
+ create_time: number;
18
+ credit_type: CreditType;
19
+ pending_time: number;
20
+ status: number;
21
+ expired_time?: number;
22
+ }
23
+ export interface ConsumeCreditRuleResponse extends BaseResponse {
24
+ id: number;
25
+ name: string;
26
+ note: string;
27
+ consume_credits: number;
28
+ consume_type: AlpcConsumeType;
29
+ coupon_rule: string;
30
+ remaining_inventory: number;
31
+ is_limited: number;
32
+ sku_handle: string;
33
+ goods_sku: string;
34
+ goods_url: string;
35
+ extra?: string;
36
+ }
37
+ export interface RedeemLogResponse extends BaseResponse {
38
+ goods_title: string;
39
+ coupon_code: string;
40
+ order_number: string;
41
+ create_time: number;
42
+ consume_credits: number;
43
+ fulfillment_status: string;
44
+ approval_status: ApprovalStatus;
45
+ rule_id: number;
46
+ code_status: number;
47
+ }
48
+ export interface CreditTaskResponse extends Task {
49
+ status: number;
50
+ is_enable: number;
51
+ id: number;
52
+ weight: number;
53
+ reward_type: number;
54
+ }
55
+ export interface CreditInfoResponse extends BaseResponse {
56
+ total_credit: number;
57
+ available_credit: number;
58
+ pending_credit: number;
59
+ expired_credit: number;
60
+ cancel_credit: number;
61
+ consumed_credit: number;
62
+ }
63
+ export {};
@@ -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 {};