@opexa/portal-components 0.0.221 → 0.0.223

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 (119) hide show
  1. package/dist/client/hooks/useCamera.d.ts +36 -0
  2. package/dist/client/hooks/useCamera.js +174 -0
  3. package/dist/client/hooks/useClaimCashbackBonusMutation.js +1 -1
  4. package/dist/components/Bonuses/Bonuses.client.js +6 -0
  5. package/dist/components/CashbackBonus/CashbackBonus.client.d.ts +2 -0
  6. package/dist/components/CashbackBonus/CashbackBonus.client.js +9 -0
  7. package/dist/components/CashbackBonus/CashbackBonus.d.ts +10 -0
  8. package/dist/components/CashbackBonus/CashbackBonus.js +5 -0
  9. package/dist/components/CashbackBonus/index.d.ts +1 -0
  10. package/dist/components/CashbackBonus/index.js +1 -0
  11. package/dist/components/DepositWithdrawal/Deposit/LibanganDeposit/LibanganDeposit.js +1 -0
  12. package/dist/components/DepositWithdrawal/DepositWithdrawal.lazy.d.ts +1 -0
  13. package/dist/components/DepositWithdrawal/PaymentMethods.js +8 -1
  14. package/dist/components/Empty.d.ts +1 -2
  15. package/dist/components/GamesSearch/GamesSearch.d.ts +6 -1
  16. package/dist/components/GamesSearch/GamesSearch.js +13 -8
  17. package/dist/components/Jackpots/JackpotsCarousel/JackpotsCarouselItem.js +2 -2
  18. package/dist/components/Jackpots/JackpotsList/JackpotsListItemDesktop.js +2 -2
  19. package/dist/components/Jackpots/JackpotsList/JackpotsListItemMobile.js +2 -2
  20. package/dist/components/KYC/Header.js +4 -2
  21. package/dist/components/KYC/KYCReminder.lazy.js +1 -1
  22. package/dist/components/KYC/Step1.js +3 -2
  23. package/dist/components/KYC/Step2.js +3 -2
  24. package/dist/components/KYC/Step3.js +4 -2
  25. package/dist/components/KYC/Step4.js +3 -2
  26. package/dist/components/KYC/backup/KYCContext.d.ts +5 -1
  27. package/dist/components/KYC/loadModels.d.ts +1 -0
  28. package/dist/components/KYC/loadModels.js +9 -0
  29. package/dist/components/Messages/Message.js +2 -3
  30. package/dist/components/Messages/MessageContext.d.ts +5 -1
  31. package/dist/components/Messages/MessagePopup.js +2 -3
  32. package/dist/components/Promo/PromoContent.d.ts +2 -0
  33. package/dist/components/Promo/PromoContent.js +9 -0
  34. package/dist/components/Promos/PromoCarousel.d.ts +2 -0
  35. package/dist/components/Promos/PromoCarousel.js +41 -0
  36. package/dist/components/Promos/PromoGrid.d.ts +2 -0
  37. package/dist/components/Promos/PromoGrid.js +12 -0
  38. package/dist/components/Promos/PromoItem.d.ts +7 -0
  39. package/dist/components/Promos/PromoItem.js +10 -0
  40. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuest.d.ts +1 -1
  41. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuest.js +10 -5
  42. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuestModal.js +4 -3
  43. package/dist/components/Quests/OnboardingQuest/OnboardingQuest.d.ts +1 -1
  44. package/dist/components/Quests/WageringQuest/WageringQuest.d.ts +1 -1
  45. package/dist/components/Quests/WageringQuest/WageringQuest.js +3 -2
  46. package/dist/components/Quests/WageringQuest/WageringQuestModal.js +4 -3
  47. package/dist/components/SignUp/SignUpForm.js +6 -1
  48. package/dist/components/SignUp/SignUpKYC/SignUpFormKYC.js +1 -1
  49. package/dist/components/TransactionRecords/DepositRecordsTable.js +1 -1
  50. package/dist/components/shared/IdDocumentField.d.ts +11 -3
  51. package/dist/components/shared/IdDocumentField.js +106 -13
  52. package/dist/components/shared/SelfieField.d.ts +11 -3
  53. package/dist/components/shared/SelfieField.js +98 -9
  54. package/dist/constants/BranchCode.d.ts +4 -0
  55. package/dist/constants/BranchCode.js +42 -0
  56. package/dist/constants/endpoints.d.ts +10 -0
  57. package/dist/constants/endpoints.js +41 -0
  58. package/dist/constants/gameProviders.d.ts +1 -2
  59. package/dist/constants/gameProviders.js +6 -0
  60. package/dist/constants/gameTypes.d.ts +1 -2
  61. package/dist/constants/headerKeys.d.ts +1 -0
  62. package/dist/constants/headerKeys.js +1 -0
  63. package/dist/constants/secretQuestions.d.ts +1 -1
  64. package/dist/icons/CameraOffIcon.d.ts +2 -0
  65. package/dist/icons/CameraOffIcon.js +4 -0
  66. package/dist/icons/RefreshCcw01Icon.d.ts +2 -0
  67. package/dist/icons/RefreshCcw01Icon.js +4 -0
  68. package/dist/icons/Spinner02Icon.d.ts +2 -0
  69. package/dist/icons/Spinner02Icon.js +4 -0
  70. package/dist/images/responsible-gaming-yellow.png +0 -0
  71. package/dist/services/wallet.d.ts +2 -0
  72. package/dist/styles/theme.css +1 -1
  73. package/dist/ui/AlertDialog/AlertDialog.d.ts +88 -88
  74. package/dist/ui/AlertDialog/alertDialog.recipe.d.ts +11 -11
  75. package/dist/ui/Avatar/avatar.recipe.d.ts +3 -3
  76. package/dist/ui/Badge/Badge.d.ts +12 -12
  77. package/dist/ui/Carousel/Carousel.d.ts +45 -45
  78. package/dist/ui/Carousel/carousel.recipe.d.ts +5 -5
  79. package/dist/ui/Checkbox/Checkbox.d.ts +23 -23
  80. package/dist/ui/Checkbox/checkbox.recipe.d.ts +3 -3
  81. package/dist/ui/Clipboard/Clipboard.d.ts +18 -18
  82. package/dist/ui/Collapsible/Collapsible.d.ts +32 -32
  83. package/dist/ui/Collapsible/collapsible.recipe.d.ts +5 -5
  84. package/dist/ui/Combobox/Combobox.d.ts +42 -42
  85. package/dist/ui/Combobox/combobox.recipe.d.ts +3 -3
  86. package/dist/ui/DatePicker/DatePicker.d.ts +72 -72
  87. package/dist/ui/DatePicker/datePicker.recipe.d.ts +3 -3
  88. package/dist/ui/Dialog/Dialog.d.ts +88 -88
  89. package/dist/ui/Dialog/dialog.recipe.d.ts +11 -11
  90. package/dist/ui/Drawer/Drawer.d.ts +33 -33
  91. package/dist/ui/Drawer/drawer.recipe.d.ts +3 -3
  92. package/dist/ui/Menu/Menu.d.ts +144 -144
  93. package/dist/ui/Menu/menu.recipe.d.ts +20 -20
  94. package/dist/ui/PasswordInput/PasswordInput.d.ts +18 -18
  95. package/dist/ui/Popover/Popover.d.ts +55 -55
  96. package/dist/ui/Popover/popover.recipe.d.ts +8 -8
  97. package/dist/ui/Presence.d.ts +1 -1
  98. package/dist/ui/Presence.js +1 -1
  99. package/dist/ui/Progress/Progress.d.ts +27 -27
  100. package/dist/ui/Progress/progress.recipe.d.ts +3 -3
  101. package/dist/ui/QrCode/qrCode.recipe.d.ts +5 -5
  102. package/dist/ui/SegmentGroup/SegmentGroup.d.ts +18 -18
  103. package/dist/ui/SegmentGroup/segmentGroup.recipe.d.ts +3 -3
  104. package/dist/ui/Select/Select.d.ts +45 -45
  105. package/dist/ui/Select/select.recipe.d.ts +3 -3
  106. package/dist/ui/Table/Table.d.ts +21 -21
  107. package/dist/ui/Table/table.anatomy.d.ts +1 -1
  108. package/dist/ui/Table/table.recipe.d.ts +3 -3
  109. package/dist/ui/Tabs/Tabs.d.ts +15 -15
  110. package/dist/ui/Tabs/tabs.recipe.d.ts +3 -3
  111. package/dist/utils/createErrorFromCode.d.ts +2 -0
  112. package/dist/utils/createErrorFromCode.js +11 -0
  113. package/dist/utils/validateFile.d.ts +28 -0
  114. package/dist/utils/validateFile.js +37 -0
  115. package/package.json +1 -1
  116. package/dist/utils/constants.d.ts +0 -2
  117. package/dist/utils/constants.js +0 -2
  118. package/dist/utils/isBetween3amAnd3pm.d.ts +0 -1
  119. package/dist/utils/isBetween3amAnd3pm.js +0 -5
@@ -1,22 +1,40 @@
1
1
  'use client';
2
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { useFieldContext } from '@ark-ui/react';
4
+ import Image from 'next/image';
5
+ import { useRef } from 'react';
3
6
  import { twMerge } from 'tailwind-merge';
7
+ import { useCamera } from '../../client/hooks/useCamera.js';
4
8
  import { useControllableState } from '../../client/hooks/useControllableState.js';
9
+ import { useDisclosure } from '../../client/hooks/useDisclosure.js';
5
10
  import { useFileQuery } from '../../client/hooks/useFileQuery.js';
6
11
  import { useUploadImageFileMutation } from '../../client/hooks/useUploadImageFileMutation.js';
7
12
  import { toaster } from '../../client/utils/toaster.js';
13
+ import { Camera01Icon } from '../../icons/Camera01Icon.js';
14
+ import { CameraOffIcon } from '../../icons/CameraOffIcon.js';
15
+ import { CheckCircleIcon } from '../../icons/CheckCircleIcon.js';
16
+ import { RefreshCcw01Icon } from '../../icons/RefreshCcw01Icon.js';
17
+ import { Spinner02Icon } from '../../icons/Spinner02Icon.js';
18
+ import { UploadCloud02Icon } from '../../icons/UploadCloud02Icon.js';
19
+ import { XIcon } from '../../icons/XIcon.js';
20
+ import { Button } from '../../ui/Button/index.js';
21
+ import { Dialog } from '../../ui/Dialog/index.js';
22
+ import { Portal } from '../../ui/Portal/index.js';
23
+ import { dataAttr } from '../../utils/dataAttr.js';
24
+ import { validateFile } from '../../utils/validateFile.js';
8
25
  export function SelfieField(props) {
26
+ const field = useFieldContext();
9
27
  const [value, setValue] = useControllableState({
10
28
  value: props.value,
11
29
  defaultValue: props.defaultValue ?? '',
12
30
  onChange: props.onChange,
13
31
  });
14
- const fileQuery = useFileQuery(value, {
32
+ const query = useFileQuery(value, {
15
33
  refetchInterval({ state }) {
16
34
  return !state.data || state.data.status === 'UPLOADING' ? 1000 : false;
17
35
  },
18
36
  });
19
- const uploadImageFileMutation = useUploadImageFileMutation({
37
+ const mutation = useUploadImageFileMutation({
20
38
  onSuccess(id) {
21
39
  setValue(id);
22
40
  },
@@ -29,11 +47,82 @@ export function SelfieField(props) {
29
47
  description: error.message,
30
48
  });
31
49
  },
50
+ onSettled() {
51
+ if (inputRef.current) {
52
+ inputRef.current.value = '';
53
+ }
54
+ },
55
+ });
56
+ const inputRef = useRef(null);
57
+ const guideRef = useRef(null);
58
+ const camera = useCamera();
59
+ const disclosure = useDisclosure({
60
+ onOpenChange(open) {
61
+ if (open) {
62
+ camera.open();
63
+ }
64
+ },
32
65
  });
33
- return (_jsx("div", { className: twMerge('relative', props.className), style: props.style, children: _jsx("input", { type: "file", accept: "image/png,image/jpeg,image/jpg", onChange: (e) => {
34
- const file = e.target.files?.[0];
35
- if (file) {
36
- uploadImageFileMutation.mutate({ file });
37
- }
38
- }, className: "sr-only" }) }));
66
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { ref: props.ref, id: props.id, style: props.style, className: twMerge('border-border-primary bg-bg-primary group relative aspect-[352/180] w-full shrink-0 rounded-xl border p-xl', props.className), onDragOver: (e) => e.preventDefault(), onDragEnter: (e) => e.preventDefault(), onDragLeave: (e) => e.preventDefault(), onDrop: (e) => {
67
+ e.preventDefault();
68
+ const file = e.dataTransfer.files?.[0];
69
+ if (!file)
70
+ return;
71
+ const error = validateFile(file);
72
+ if (error)
73
+ return props.onError?.(error);
74
+ mutation.mutate({ file });
75
+ }, "data-invalid": dataAttr(props.invalid ?? field?.invalid), "data-readonly": dataAttr(props.readOnly ?? field?.readOnly), "data-disabled": dataAttr(props.disabled ?? field?.disabled), "data-required": dataAttr(props.required ?? field?.required), "data-loading": dataAttr(query.isLoading || mutation.isPending), "aria-describedby": field?.ariaDescribedby, children: [_jsx("input", { id: field?.ids?.control, ref: inputRef, type: "file", accept: "image/png, image/jpeg", onChange: (e) => {
76
+ const file = e.target.files?.[0];
77
+ if (!file)
78
+ return;
79
+ const error = validateFile(file);
80
+ if (error)
81
+ return props.onError?.(error);
82
+ mutation.mutate({ file });
83
+ }, disabled: field?.disabled ||
84
+ props.disabled ||
85
+ query.isLoading ||
86
+ mutation.isPending, readOnly: field?.readOnly || props.readOnly, required: field?.required || props.required, className: "sr-only" }), !query.data?.url && (_jsxs("div", { className: "flex size-full flex-col justify-center", children: [_jsx("div", { className: "border-border-primary shadow-xs mx-auto flex size-8 items-center justify-center rounded-sm border", children: _jsx(UploadCloud02Icon, { className: "text-text-placeholder-subtle size-4" }) }), _jsxs("h2", { className: "text-text-tertiary-600 mt-lg", children: [_jsxs("span", { className: "block text-center text-sm", children: [_jsx("button", { type: "button", onClick: () => {
87
+ inputRef.current?.click();
88
+ }, disabled: field?.disabled ||
89
+ field?.readOnly ||
90
+ props.disabled ||
91
+ props.readOnly ||
92
+ query.isLoading ||
93
+ mutation.isPending, "data-required": dataAttr(props.required ?? field?.required), "data-readonly": dataAttr(props.readOnly ?? field?.readOnly), "data-loading": dataAttr(query.isLoading || mutation.isPending), "data-invalid": dataAttr(props.invalid ?? field?.invalid), className: "text-button-secondary-fg font-semibold disabled:opacity-60", children: "Click to upload" }), ' ', "or drag and drop"] }), _jsx("span", { className: "mt-xs block text-center text-xs", children: "PNG, JPG or JPEG (max. 10mb)" }), _jsx("span", { className: "m-txs block text-center text-xs", children: "or" })] }), _jsx(Button, { size: "sm", variant: "outline", className: "mx-auto mt-md w-auto", onClick: () => {
94
+ disclosure.setOpen(true);
95
+ }, disabled: field?.disabled ||
96
+ field?.readOnly ||
97
+ props.disabled ||
98
+ props.readOnly ||
99
+ query.isLoading ||
100
+ mutation.isPending, "data-required": dataAttr(props.required ?? field?.required), "data-readonly": dataAttr(props.readOnly ?? field?.readOnly), "data-loading": dataAttr(query.isLoading || mutation.isPending), "data-invalid": dataAttr(props.invalid ?? field?.invalid), children: "Take a photo" })] })), query.data?.url && (_jsxs("div", { className: "relative", children: [_jsx(Image, { src: query.data.url, alt: "", width: 600, height: 600, unoptimized: true, className: "h-auto w-full rounded-md" }), _jsx("button", { type: "button", className: "backdrop-blur-xs absolute right-2 top-2 rounded-full bg-white/10 p-1", onClick: () => {
101
+ setValue('');
102
+ }, children: _jsx(XIcon, { className: "size-5" }) })] }))] }), _jsx(Dialog.Root, { open: disclosure.open, onOpenChange: (details) => {
103
+ disclosure.setOpen(details.open);
104
+ }, onExitComplete: camera.close, children: _jsxs(Portal, { children: [_jsx(Dialog.Backdrop, { className: "!z-[calc(var(--z-dialog)+1)]" }), _jsx(Dialog.Positioner, { className: "!z-[calc(var(--z-dialog)+2)] flex items-center justify-center overflow-y-auto py-4", children: _jsxs(Dialog.Content, { className: "bg-bg-primary-alt mx-auto w-[calc(100dvw-1rem)] max-w-[calc(100dvw-1rem)] rounded-lg px-4 py-5 lg:w-[747px] lg:max-w-[747px] lg:px-3xl lg:py-4xl", children: [_jsx(Dialog.CloseTrigger, { children: _jsx(XIcon, {}) }), _jsx(Dialog.Title, { className: "text-center font-semibold lg:text-xl", children: "Take a Selfie Holding Your ID" }), _jsx(Dialog.Description, { className: "text-text-tertiary-600 mt-md text-center text-xs lg:text-base", children: "Make sure your face and ID are clearly visible, with no glare\u00A0or\u00A0blur." }), _jsxs("div", { className: "relative mt-5 lg:mt-10 lg:px-3xl", children: [_jsxs("div", { className: twMerge('border-border-disabled relative w-full overflow-hidden rounded-md border bg-black lg:rounded-lg', !camera.data && !camera.error && !camera.loading
105
+ ? 'block'
106
+ : 'hidden'), children: [_jsx("video", { ...camera.videoProps }), _jsx("div", { ref: guideRef, className: "border-utility-warning-700 absolute left-1/2 top-1/2 aspect-square w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-dashed lg:w-[29.688rem]" })] }), camera.error && (_jsxs("div", { className: "border-border-disabled flex aspect-[85.60/53.98] flex-col items-center justify-center rounded-md border bg-black px-4 lg:rounded-lg", children: [_jsx(CameraOffIcon, { className: "text-text-placeholder-subtle size-10 text-center lg:size-12" }), _jsx("h2", { className: "mt-3 text-sm font-semibold lg:mt-4 lg:text-base", children: camera.error.name }), _jsx("p", { className: "text-text-tertiary-600 mt-0.5 text-center text-xs lg:mt-1 lg:text-sm", children: camera.error.message }), _jsx(Button, { size: "xs", variant: "outline", colorScheme: "gray", fullWidth: false, className: "mt-4 lg:mt-5", onClick: () => {
107
+ camera.reopen();
108
+ }, children: "Try again" })] })), camera.loading && (_jsx("div", { className: "border-border-disabled flex aspect-[85.60/53.98] flex-col items-center justify-center rounded-md border bg-black px-4 lg:rounded-lg", children: _jsx(Spinner02Icon, { className: "text-text-placeholder size-8" }) })), camera.data && (_jsx("div", { className: "border-border-disabled h-auto w-full overflow-hidden rounded-md border bg-black lg:rounded-lg", children: _jsx(Image, { src: camera.data.url, alt: "", width: 600, height: 600, unoptimized: true, className: "block h-auto w-full" }) }))] }), !camera.data && !camera.error && !camera.loading && (_jsx("div", { className: "mt-5 lg:mt-10", children: _jsxs(Button, { className: "disabled:bg-bg-disabled disabled:text-text-disabled mx-auto w-full px-xl lg:w-auto", onClick: () => {
109
+ const rect = guideRef.current?.getBoundingClientRect();
110
+ const crop = !rect
111
+ ? undefined
112
+ : {
113
+ y: rect.y,
114
+ x: rect.x,
115
+ width: rect.width,
116
+ height: rect.height,
117
+ };
118
+ camera.snap({ crop });
119
+ }, children: [_jsx(Camera01Icon, { className: "size-5" }), "Capture"] }) })), camera.data && (_jsxs("div", { className: "mt-5 flex gap-3 lg:mt-10", children: [_jsxs(Button, { onClick: () => {
120
+ const file = camera.data?.file;
121
+ if (!file)
122
+ return;
123
+ mutation.mutate({ file });
124
+ disclosure.setOpen(false);
125
+ }, children: [_jsx(CheckCircleIcon, { className: "size-5" }), "Use Photo"] }), _jsxs(Button, { variant: "outline", colorScheme: "gray", onClick: () => {
126
+ camera.reset();
127
+ }, children: [_jsx(RefreshCcw01Icon, { className: "size-5" }), " Retake"] })] }))] }) })] }) })] }));
39
128
  }
@@ -0,0 +1,4 @@
1
+ export declare const BRANCH_CODES: {
2
+ code: string;
3
+ name: string;
4
+ }[];
@@ -0,0 +1,42 @@
1
+ export const BRANCH_CODES = [
2
+ {
3
+ code: 'BRCAL',
4
+ name: 'Bingo Republic 2nd floor Primark Center Deparo St., Caloocan City',
5
+ },
6
+ {
7
+ code: 'BRNAG',
8
+ name: 'Bingo Republic 3rd floor Robinsons Mall, Naga City, Camarines Sur',
9
+ },
10
+ {
11
+ code: 'BRANT',
12
+ name: 'Bingo Republic 2nd floor Robinsons Mall, San Vicente,Antique',
13
+ },
14
+ {
15
+ code: 'BRCLA',
16
+ name: 'Clark',
17
+ },
18
+ {
19
+ code: 'BRLAG',
20
+ name: 'Laguna',
21
+ },
22
+ {
23
+ code: 'BREAS',
24
+ name: 'Eastwood City, Quezon City',
25
+ },
26
+ {
27
+ code: 'BRMAR',
28
+ name: 'Bingo ng Bayan 4th floor Marikina Public Market, Marikina City',
29
+ },
30
+ {
31
+ code: 'BRILO',
32
+ name: 'Iloilo',
33
+ },
34
+ {
35
+ code: 'BRFIM',
36
+ name: 'Fisher Mall,Quezon City',
37
+ },
38
+ {
39
+ code: 'BRCAC',
40
+ name: 'Villa Caceres Hotel, Naga City,Camsur',
41
+ },
42
+ ];
@@ -0,0 +1,10 @@
1
+ export declare const ACCOUNT_GRAPHQL_ENDPOINT: string;
2
+ export declare const FILE_GRAPHQL_ENDPOINT: string;
3
+ export declare const GAME_GRAPHQL_ENDPOINT: string;
4
+ export declare const PORTAL_GRAPHQL_ENDPOINT: string;
5
+ export declare const REPORT_GRAPHQL_ENDPOINT: string;
6
+ export declare const TRIGGER_GRAPHQL_ENDPOINT: string;
7
+ export declare const WALLET_GRAPHQL_ENDPOINT: string;
8
+ export declare const AUTH_ENDPOINT: string;
9
+ export declare const CMS_PORTAL_ENDPOINT: string;
10
+ export declare const STATIC_ENDPOINT: string;
@@ -0,0 +1,41 @@
1
+ import { ENVIRONMENT } from './envVars.js';
2
+ export const ACCOUNT_GRAPHQL_ENDPOINT = {
3
+ development: 'https://account.development.opexa.io/graphql',
4
+ production: 'https://account.opexa.io/graphql',
5
+ }[ENVIRONMENT];
6
+ export const FILE_GRAPHQL_ENDPOINT = {
7
+ development: 'https://file.development.opexa.io/graphql',
8
+ production: 'https://file.opexa.io/graphql',
9
+ }[ENVIRONMENT];
10
+ export const GAME_GRAPHQL_ENDPOINT = {
11
+ development: 'https://game.development.opexa.io/graphql',
12
+ production: 'https://game.opexa.io/graphql',
13
+ }[ENVIRONMENT];
14
+ export const PORTAL_GRAPHQL_ENDPOINT = {
15
+ development: 'https://portal.development.opexa.io/graphql',
16
+ production: 'https://portal.opexa.io/graphql',
17
+ }[ENVIRONMENT];
18
+ export const REPORT_GRAPHQL_ENDPOINT = {
19
+ development: 'https://report.development.opexa.io/graphql',
20
+ production: 'https://report.opexa.io/graphql',
21
+ }[ENVIRONMENT];
22
+ export const TRIGGER_GRAPHQL_ENDPOINT = {
23
+ development: 'https://trigger.development.opexa.io/graphql',
24
+ production: 'https://trigger.opexa.io/graphql',
25
+ }[ENVIRONMENT];
26
+ export const WALLET_GRAPHQL_ENDPOINT = {
27
+ development: 'https://wallet.development.opexa.io/graphql',
28
+ production: 'https://wallet.opexa.io/graphql',
29
+ }[ENVIRONMENT];
30
+ export const AUTH_ENDPOINT = {
31
+ development: 'https://auth.development.opexa.io',
32
+ production: 'https://auth.opexa.io',
33
+ }[ENVIRONMENT];
34
+ export const CMS_PORTAL_ENDPOINT = {
35
+ development: 'https://portal-api.opexacms.io',
36
+ production: 'https://portal-api.opexacms.io',
37
+ }[ENVIRONMENT];
38
+ export const STATIC_ENDPOINT = {
39
+ development: 'https://static.development.atalos.io',
40
+ production: 'https://static.atalos.io',
41
+ }[ENVIRONMENT];
@@ -1,5 +1,4 @@
1
- import type { GameProvider } from '@opexa/portal-sdk-core';
2
- import type { GameProviderData } from '../types';
1
+ import type { GameProvider, GameProviderData } from '../types';
3
2
  export declare const GAME_PROVIDER_DATA: Record<GameProvider, GameProviderData>;
4
3
  export declare const GAME_PROVIDERS: ["ALIZE", "BGAMING", "BOOONGO", "EVOPLAY", "BTI", "CQ9", "DARWIN", "DG", "DRBINGO", "E2E", "ETENGJUE", "EVOLUTION", "EVOLUTION_REDTIGER", "EZUGI", "FACHAI", "HABANERO", "HACKSAW", "HOLLYWOODTV", "JDB", "JILI", "JDBGTF", "JOKER", "JDBSPRIBE", "JILI_BINGO", "KINGMAKER", "KINGMIDAS", "MEGA2SPIN", "MICROGAMING", "MEGABALL", "ONEAPI_EVOLUTION", "PGSOFT", "PLAYTECH", "PRAGMATICPLAY", "RELAXGAMING", "RTG", "SABA", "SPINIX", "SPRIBE", "YELLOWBAT", "EVOLUTIONNETENT", "EVOLUTION_NETENT"];
5
4
  export declare const LEGACY_GAME_PROVIDERS: ["JILI", "PGSOFT", "FACHAI", "BTI", "DG", "PLAYTECH", "E2E", "ONEAPI_EVOLUTION", "CQ9", "JDB", "HABANERO", "SPINIX", "JOKER", "HACKSAW", "EVOLUTIONNETENT", "JDBGTF", "JDBSPRIBE", "MICROGAMING", "RELAXGAMING", "EVOPLAY", "BOOONGO", "BGAMING", "KINGMAKER", "KINGMIDAS", "YELLOWBAT", "ETENGJUE", "SABA", "PRAGMATICPLAY", "SPRIBE", "EZUGI", "ALIZE"];
@@ -283,6 +283,12 @@ export const GAME_PROVIDER_DATA = {
283
283
  slug: 'evolution-netent',
284
284
  logo: evolutionNetent,
285
285
  },
286
+ DIGITAIN: {
287
+ id: 'DIGITAIN',
288
+ name: 'Digitain',
289
+ slug: 'digitain',
290
+ logo: '',
291
+ },
286
292
  };
287
293
  export const GAME_PROVIDERS = [
288
294
  'ALIZE',
@@ -1,4 +1,3 @@
1
- import type { GameType } from '@opexa/portal-sdk-core';
2
- import type { GameTypeData } from '../types';
1
+ import type { GameType, GameTypeData } from '../types';
3
2
  export declare const GAME_TYPE_DATA: Record<GameType, GameTypeData>;
4
3
  export declare const GAME_TYPES: ["ARCADE", "BINGO", "FISHING", "GAMES", "LIVE", "NUMERICAL", "SLOTS", "SPECIALTY", "SPORTS", "TABLE"];
@@ -1 +1,2 @@
1
1
  export declare const RECAPTCHA_HEADER_KEY: string;
2
+ export declare const TEST_PASS_HEADER_KEY: string;
@@ -1 +1,2 @@
1
1
  export const RECAPTCHA_HEADER_KEY = 'Google-Recaptcha-Response';
2
+ export const TEST_PASS_HEADER_KEY = 'Test-Pass';
@@ -1,3 +1,3 @@
1
- import type { SecretQuestion } from '@opexa/portal-sdk-core';
1
+ import type { SecretQuestion } from '../types';
2
2
  export declare const SECRET_QUESTIONS: ["BEST_CHILDHOOD_FRIEND", "BIRTH_PLACE", "FAVORITE_BOOK", "FAVORITE_MOVIE", "FAVORITE_TEACHER", "FIRST_CAR", "FIRST_PET", "FIRST_SCHOOL", "MOTHERS_MAIDEN_NAME", "PARENTS_MET_CITY"];
3
3
  export declare const SECRET_QUESTIONS_MAP: Record<SecretQuestion, string>;
@@ -0,0 +1,2 @@
1
+ import type { ComponentPropsWithRef } from 'react';
2
+ export declare function CameraOffIcon(props: ComponentPropsWithRef<'svg'>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export function CameraOffIcon(props) {
3
+ return (_jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", ...props, children: _jsx("path", { d: "M5 5H5.41886C5.55228 5 5.61899 5 5.67939 4.99634C6.45061 4.94963 7.12595 4.46288 7.41414 3.746C7.43671 3.68986 7.45781 3.62657 7.5 3.5C7.54219 3.37343 7.56329 3.31014 7.58586 3.254C7.87405 2.53712 8.54939 2.05037 9.32061 2.00366C9.38101 2 9.44772 2 9.58114 2H14.4189C14.5523 2 14.619 2 14.6794 2.00366C15.4506 2.05037 16.126 2.53712 16.4141 3.254C16.4367 3.31014 16.4578 3.37343 16.5 3.5C16.5422 3.62657 16.5633 3.68986 16.5859 3.746C16.874 4.46288 17.5494 4.94963 18.3206 4.99634C18.381 5 18.4521 5 18.5944 5C18.9636 5 19.1483 5 19.2958 5.01462C20.7187 5.1556 21.8444 6.28127 21.9854 7.70421C22 7.85174 22 8.0269 22 8.37722V18C22 19.0849 21.4241 20.0353 20.5613 20.5622M15.0641 15.0714C15.6482 14.3761 16 13.4791 16 12.5C16 10.2909 14.2091 8.5 12 8.5C11.0216 8.5 10.1252 8.8513 9.43012 9.43464M22 22L2 2M2 7.5V16.2C2 17.8802 2 18.7202 2.32698 19.362C2.6146 19.9265 3.07354 20.3854 3.63803 20.673C4.27976 21 5.11984 21 6.8 21H15.5M12 16.5C9.79086 16.5 8 14.7091 8 12.5" }) }));
4
+ }
@@ -0,0 +1,2 @@
1
+ import type { ComponentPropsWithRef } from 'react';
2
+ export declare function RefreshCcw01Icon(props: ComponentPropsWithRef<'svg'>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export function RefreshCcw01Icon(props) {
3
+ return (_jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", ...props, children: _jsx("path", { d: "M2 10C2 10 4.00498 7.26822 5.63384 5.63824C7.26269 4.00827 9.5136 3 12 3C16.9706 3 21 7.02944 21 12C21 16.9706 16.9706 21 12 21C7.89691 21 4.43511 18.2543 3.35177 14.5M2 10V4M2 10H8" }) }));
4
+ }
@@ -0,0 +1,2 @@
1
+ import type { ComponentPropsWithRef } from 'react';
2
+ export declare function Spinner02Icon(props: ComponentPropsWithRef<'svg'>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ export function Spinner02Icon(props) {
3
+ return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props, children: [_jsx("path", { fill: "currentColor", d: "M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z", opacity: ".25" }), _jsx("path", { fill: "currentColor", d: "M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z", children: _jsx("animateTransform", { attributeName: "transform", dur: "0.75s", repeatCount: "indefinite", type: "rotate", values: "0 12 12;360 12 12" }) })] }));
4
+ }
@@ -139,6 +139,7 @@ export interface CreateLibanganDepositMutationVariables {
139
139
  id: string;
140
140
  amount: string;
141
141
  promo?: string;
142
+ redirectionUrl?: string;
142
143
  };
143
144
  }
144
145
  export type CreateLibanganDepositInput = Simplify<CreateLibanganDepositMutationVariables['input']>;
@@ -150,6 +151,7 @@ export interface CreateLibanganDepositMutationVariables {
150
151
  id: string;
151
152
  amount: string;
152
153
  promo?: string;
154
+ redirectionUrl?: string;
153
155
  };
154
156
  }
155
157
  export declare const createLibanganDeposit: (input: CreateGCashDepositInput, options?: GraphQLRequestOptions) => Promise<void>;
@@ -165,7 +165,7 @@
165
165
  --color-utility-warning-50: #4e1d09;
166
166
  --color-utility-warning-200: #93370d;
167
167
  --color-utility-warning-500: #f79009;
168
- --color-utility-warning-700: ;
168
+ --color-utility-warning-700: #fec84b;
169
169
  --color-utility-gray-50: #13161b;
170
170
  --color-utility-gray-200: #373a41;
171
171
  --color-utility-gray-700: #cecfd2;