@opexa/portal-components 0.0.1122 → 0.0.1123
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/dist/__tests__/utils/mocks.d.ts +1 -1
- package/dist/components/KYC/KYCReview.js +4 -33
- package/dist/ui/Carousel/Carousel.d.ts +45 -45
- package/dist/ui/Carousel/carousel.recipe.d.ts +5 -5
- package/dist/ui/DatePicker/DatePicker.d.ts +72 -72
- package/dist/ui/DatePicker/datePicker.recipe.d.ts +3 -3
- package/dist/ui/Menu/Menu.d.ts +90 -90
- package/dist/ui/Menu/menu.recipe.d.ts +5 -5
- package/dist/ui/Progress/Progress.d.ts +27 -27
- package/dist/ui/Progress/progress.recipe.d.ts +3 -3
- package/package.json +1 -1
- package/dist/client/hooks/useVerifyMobileNumber.d.ts +0 -3
- package/dist/client/hooks/useVerifyMobileNumber.js +0 -20
- package/dist/components/DepositWithdrawal/Deposit/AurixPayPayMayaDeposit/AurixPayGrabPayDeposit.d.ts +0 -1
- package/dist/components/DepositWithdrawal/Deposit/AurixPayPayMayaDeposit/AurixPayGrabPayDeposit.js +0 -241
- package/dist/components/SingleSignOn/SingleSignOn.d.ts +0 -4
- package/dist/components/SingleSignOn/SingleSignOn.js +0 -185
- package/dist/components/SingleSignOn/index.d.ts +0 -1
- package/dist/components/SingleSignOn/index.js +0 -1
- package/dist/components/UpdateMobileNumber/UpdateMobileNumber.d.ts +0 -3
- package/dist/components/UpdateMobileNumber/UpdateMobileNumber.js +0 -141
- package/dist/components/UpdateMobileNumber/index.d.ts +0 -1
- package/dist/components/UpdateMobileNumber/index.js +0 -1
- package/dist/lib/components/UpdateMobileNumber/UpdateMobileNumber.d.ts +0 -1
- package/dist/lib/components/UpdateMobileNumber/UpdateMobileNumber.js +0 -154
- package/dist/lib/components/UpdateMobileNumber/index.d.ts +0 -1
- package/dist/lib/components/UpdateMobileNumber/index.js +0 -1
|
@@ -6,13 +6,13 @@ export declare const menuRecipe: import("tailwind-variants").TVReturnType<{
|
|
|
6
6
|
trigger?: import("tailwind-variants").ClassValue;
|
|
7
7
|
indicator?: import("tailwind-variants").ClassValue;
|
|
8
8
|
positioner?: import("tailwind-variants").ClassValue;
|
|
9
|
-
separator?: import("tailwind-variants").ClassValue;
|
|
10
9
|
arrow?: import("tailwind-variants").ClassValue;
|
|
11
10
|
arrowTip?: import("tailwind-variants").ClassValue;
|
|
12
11
|
itemText?: import("tailwind-variants").ClassValue;
|
|
13
12
|
itemIndicator?: import("tailwind-variants").ClassValue;
|
|
14
13
|
itemGroup?: import("tailwind-variants").ClassValue;
|
|
15
14
|
itemGroupLabel?: import("tailwind-variants").ClassValue;
|
|
15
|
+
separator?: import("tailwind-variants").ClassValue;
|
|
16
16
|
contextTrigger?: import("tailwind-variants").ClassValue;
|
|
17
17
|
triggerItem?: import("tailwind-variants").ClassValue;
|
|
18
18
|
};
|
|
@@ -25,18 +25,18 @@ export declare const menuRecipe: import("tailwind-variants").TVReturnType<{
|
|
|
25
25
|
trigger?: import("tailwind-variants").ClassValue;
|
|
26
26
|
indicator?: import("tailwind-variants").ClassValue;
|
|
27
27
|
positioner?: import("tailwind-variants").ClassValue;
|
|
28
|
-
separator?: import("tailwind-variants").ClassValue;
|
|
29
28
|
arrow?: import("tailwind-variants").ClassValue;
|
|
30
29
|
arrowTip?: import("tailwind-variants").ClassValue;
|
|
31
30
|
itemText?: import("tailwind-variants").ClassValue;
|
|
32
31
|
itemIndicator?: import("tailwind-variants").ClassValue;
|
|
33
32
|
itemGroup?: import("tailwind-variants").ClassValue;
|
|
34
33
|
itemGroupLabel?: import("tailwind-variants").ClassValue;
|
|
34
|
+
separator?: import("tailwind-variants").ClassValue;
|
|
35
35
|
contextTrigger?: import("tailwind-variants").ClassValue;
|
|
36
36
|
triggerItem?: import("tailwind-variants").ClassValue;
|
|
37
37
|
};
|
|
38
38
|
};
|
|
39
|
-
} | {}, Record<"content" | "item" | "trigger" | "indicator" | "positioner" | "
|
|
39
|
+
} | {}, Record<"content" | "item" | "trigger" | "indicator" | "positioner" | "arrow" | "arrowTip" | "itemText" | "itemIndicator" | "itemGroup" | "itemGroupLabel" | "separator" | "contextTrigger" | "triggerItem", string | string[]>, undefined, {
|
|
40
40
|
[key: string]: {
|
|
41
41
|
[key: string]: import("tailwind-variants").ClassValue | {
|
|
42
42
|
content?: import("tailwind-variants").ClassValue;
|
|
@@ -44,15 +44,15 @@ export declare const menuRecipe: import("tailwind-variants").TVReturnType<{
|
|
|
44
44
|
trigger?: import("tailwind-variants").ClassValue;
|
|
45
45
|
indicator?: import("tailwind-variants").ClassValue;
|
|
46
46
|
positioner?: import("tailwind-variants").ClassValue;
|
|
47
|
-
separator?: import("tailwind-variants").ClassValue;
|
|
48
47
|
arrow?: import("tailwind-variants").ClassValue;
|
|
49
48
|
arrowTip?: import("tailwind-variants").ClassValue;
|
|
50
49
|
itemText?: import("tailwind-variants").ClassValue;
|
|
51
50
|
itemIndicator?: import("tailwind-variants").ClassValue;
|
|
52
51
|
itemGroup?: import("tailwind-variants").ClassValue;
|
|
53
52
|
itemGroupLabel?: import("tailwind-variants").ClassValue;
|
|
53
|
+
separator?: import("tailwind-variants").ClassValue;
|
|
54
54
|
contextTrigger?: import("tailwind-variants").ClassValue;
|
|
55
55
|
triggerItem?: import("tailwind-variants").ClassValue;
|
|
56
56
|
};
|
|
57
57
|
};
|
|
58
|
-
} | {}, Record<"content" | "item" | "trigger" | "indicator" | "positioner" | "
|
|
58
|
+
} | {}, Record<"content" | "item" | "trigger" | "indicator" | "positioner" | "arrow" | "arrowTip" | "itemText" | "itemIndicator" | "itemGroup" | "itemGroupLabel" | "separator" | "contextTrigger" | "triggerItem", string | string[]>, import("tailwind-variants").TVReturnType<unknown, Record<"content" | "item" | "trigger" | "indicator" | "positioner" | "arrow" | "arrowTip" | "itemText" | "itemIndicator" | "itemGroup" | "itemGroupLabel" | "separator" | "contextTrigger" | "triggerItem", string | string[]>, undefined, unknown, unknown, undefined>>;
|
|
@@ -11,7 +11,7 @@ export declare const Root: import("react").ComponentType<import("@ark-ui/react")
|
|
|
11
11
|
range: string;
|
|
12
12
|
};
|
|
13
13
|
};
|
|
14
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
14
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
15
15
|
size: {
|
|
16
16
|
md: {};
|
|
17
17
|
};
|
|
@@ -23,7 +23,7 @@ export declare const Root: import("react").ComponentType<import("@ark-ui/react")
|
|
|
23
23
|
range: string;
|
|
24
24
|
};
|
|
25
25
|
};
|
|
26
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
26
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
27
27
|
size: {
|
|
28
28
|
md: {};
|
|
29
29
|
};
|
|
@@ -35,7 +35,7 @@ export declare const Root: import("react").ComponentType<import("@ark-ui/react")
|
|
|
35
35
|
range: string;
|
|
36
36
|
};
|
|
37
37
|
};
|
|
38
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
38
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
39
39
|
export declare const Circle: import("react").ComponentType<import("@ark-ui/react").Assign<Progress.CircleProps & import("react").RefAttributes<SVGSVGElement>, import("tailwind-variants").VariantProps<import("tailwind-variants").TVReturnType<{
|
|
40
40
|
size: {
|
|
41
41
|
md: {};
|
|
@@ -48,7 +48,7 @@ export declare const Circle: import("react").ComponentType<import("@ark-ui/react
|
|
|
48
48
|
range: string;
|
|
49
49
|
};
|
|
50
50
|
};
|
|
51
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
51
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
52
52
|
size: {
|
|
53
53
|
md: {};
|
|
54
54
|
};
|
|
@@ -60,7 +60,7 @@ export declare const Circle: import("react").ComponentType<import("@ark-ui/react
|
|
|
60
60
|
range: string;
|
|
61
61
|
};
|
|
62
62
|
};
|
|
63
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
63
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
64
64
|
size: {
|
|
65
65
|
md: {};
|
|
66
66
|
};
|
|
@@ -72,7 +72,7 @@ export declare const Circle: import("react").ComponentType<import("@ark-ui/react
|
|
|
72
72
|
range: string;
|
|
73
73
|
};
|
|
74
74
|
};
|
|
75
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
75
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
76
76
|
export declare const CircleRange: import("react").ComponentType<import("@ark-ui/react").Assign<Progress.CircleRangeProps & import("react").RefAttributes<SVGCircleElement>, import("tailwind-variants").VariantProps<import("tailwind-variants").TVReturnType<{
|
|
77
77
|
size: {
|
|
78
78
|
md: {};
|
|
@@ -85,7 +85,7 @@ export declare const CircleRange: import("react").ComponentType<import("@ark-ui/
|
|
|
85
85
|
range: string;
|
|
86
86
|
};
|
|
87
87
|
};
|
|
88
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
88
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
89
89
|
size: {
|
|
90
90
|
md: {};
|
|
91
91
|
};
|
|
@@ -97,7 +97,7 @@ export declare const CircleRange: import("react").ComponentType<import("@ark-ui/
|
|
|
97
97
|
range: string;
|
|
98
98
|
};
|
|
99
99
|
};
|
|
100
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
100
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
101
101
|
size: {
|
|
102
102
|
md: {};
|
|
103
103
|
};
|
|
@@ -109,7 +109,7 @@ export declare const CircleRange: import("react").ComponentType<import("@ark-ui/
|
|
|
109
109
|
range: string;
|
|
110
110
|
};
|
|
111
111
|
};
|
|
112
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
112
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
113
113
|
export declare const CircleTrack: import("react").ComponentType<import("@ark-ui/react").Assign<Progress.CircleTrackProps & import("react").RefAttributes<SVGCircleElement>, import("tailwind-variants").VariantProps<import("tailwind-variants").TVReturnType<{
|
|
114
114
|
size: {
|
|
115
115
|
md: {};
|
|
@@ -122,7 +122,7 @@ export declare const CircleTrack: import("react").ComponentType<import("@ark-ui/
|
|
|
122
122
|
range: string;
|
|
123
123
|
};
|
|
124
124
|
};
|
|
125
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
125
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
126
126
|
size: {
|
|
127
127
|
md: {};
|
|
128
128
|
};
|
|
@@ -134,7 +134,7 @@ export declare const CircleTrack: import("react").ComponentType<import("@ark-ui/
|
|
|
134
134
|
range: string;
|
|
135
135
|
};
|
|
136
136
|
};
|
|
137
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
137
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
138
138
|
size: {
|
|
139
139
|
md: {};
|
|
140
140
|
};
|
|
@@ -146,7 +146,7 @@ export declare const CircleTrack: import("react").ComponentType<import("@ark-ui/
|
|
|
146
146
|
range: string;
|
|
147
147
|
};
|
|
148
148
|
};
|
|
149
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
149
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
150
150
|
export declare const Label: import("react").ComponentType<import("@ark-ui/react").Assign<Progress.LabelProps & import("react").RefAttributes<HTMLLabelElement>, import("tailwind-variants").VariantProps<import("tailwind-variants").TVReturnType<{
|
|
151
151
|
size: {
|
|
152
152
|
md: {};
|
|
@@ -159,7 +159,7 @@ export declare const Label: import("react").ComponentType<import("@ark-ui/react"
|
|
|
159
159
|
range: string;
|
|
160
160
|
};
|
|
161
161
|
};
|
|
162
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
162
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
163
163
|
size: {
|
|
164
164
|
md: {};
|
|
165
165
|
};
|
|
@@ -171,7 +171,7 @@ export declare const Label: import("react").ComponentType<import("@ark-ui/react"
|
|
|
171
171
|
range: string;
|
|
172
172
|
};
|
|
173
173
|
};
|
|
174
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
174
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
175
175
|
size: {
|
|
176
176
|
md: {};
|
|
177
177
|
};
|
|
@@ -183,7 +183,7 @@ export declare const Label: import("react").ComponentType<import("@ark-ui/react"
|
|
|
183
183
|
range: string;
|
|
184
184
|
};
|
|
185
185
|
};
|
|
186
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
186
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
187
187
|
export declare const Track: import("react").ComponentType<import("@ark-ui/react").Assign<Progress.TrackProps & import("react").RefAttributes<HTMLDivElement>, import("tailwind-variants").VariantProps<import("tailwind-variants").TVReturnType<{
|
|
188
188
|
size: {
|
|
189
189
|
md: {};
|
|
@@ -196,7 +196,7 @@ export declare const Track: import("react").ComponentType<import("@ark-ui/react"
|
|
|
196
196
|
range: string;
|
|
197
197
|
};
|
|
198
198
|
};
|
|
199
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
199
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
200
200
|
size: {
|
|
201
201
|
md: {};
|
|
202
202
|
};
|
|
@@ -208,7 +208,7 @@ export declare const Track: import("react").ComponentType<import("@ark-ui/react"
|
|
|
208
208
|
range: string;
|
|
209
209
|
};
|
|
210
210
|
};
|
|
211
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
211
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
212
212
|
size: {
|
|
213
213
|
md: {};
|
|
214
214
|
};
|
|
@@ -220,7 +220,7 @@ export declare const Track: import("react").ComponentType<import("@ark-ui/react"
|
|
|
220
220
|
range: string;
|
|
221
221
|
};
|
|
222
222
|
};
|
|
223
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
223
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
224
224
|
export declare const ValueText: import("react").ComponentType<import("@ark-ui/react").Assign<Progress.ValueTextProps & import("react").RefAttributes<HTMLSpanElement>, import("tailwind-variants").VariantProps<import("tailwind-variants").TVReturnType<{
|
|
225
225
|
size: {
|
|
226
226
|
md: {};
|
|
@@ -233,7 +233,7 @@ export declare const ValueText: import("react").ComponentType<import("@ark-ui/re
|
|
|
233
233
|
range: string;
|
|
234
234
|
};
|
|
235
235
|
};
|
|
236
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
236
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
237
237
|
size: {
|
|
238
238
|
md: {};
|
|
239
239
|
};
|
|
@@ -245,7 +245,7 @@ export declare const ValueText: import("react").ComponentType<import("@ark-ui/re
|
|
|
245
245
|
range: string;
|
|
246
246
|
};
|
|
247
247
|
};
|
|
248
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
248
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
249
249
|
size: {
|
|
250
250
|
md: {};
|
|
251
251
|
};
|
|
@@ -257,7 +257,7 @@ export declare const ValueText: import("react").ComponentType<import("@ark-ui/re
|
|
|
257
257
|
range: string;
|
|
258
258
|
};
|
|
259
259
|
};
|
|
260
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
260
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
261
261
|
export declare const View: import("react").ComponentType<import("@ark-ui/react").Assign<Progress.ViewProps & import("react").RefAttributes<HTMLSpanElement>, import("tailwind-variants").VariantProps<import("tailwind-variants").TVReturnType<{
|
|
262
262
|
size: {
|
|
263
263
|
md: {};
|
|
@@ -270,7 +270,7 @@ export declare const View: import("react").ComponentType<import("@ark-ui/react")
|
|
|
270
270
|
range: string;
|
|
271
271
|
};
|
|
272
272
|
};
|
|
273
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
273
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
274
274
|
size: {
|
|
275
275
|
md: {};
|
|
276
276
|
};
|
|
@@ -282,7 +282,7 @@ export declare const View: import("react").ComponentType<import("@ark-ui/react")
|
|
|
282
282
|
range: string;
|
|
283
283
|
};
|
|
284
284
|
};
|
|
285
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
285
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
286
286
|
size: {
|
|
287
287
|
md: {};
|
|
288
288
|
};
|
|
@@ -294,7 +294,7 @@ export declare const View: import("react").ComponentType<import("@ark-ui/react")
|
|
|
294
294
|
range: string;
|
|
295
295
|
};
|
|
296
296
|
};
|
|
297
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
297
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
298
298
|
export declare const Range: import("react").ComponentType<import("@ark-ui/react").Assign<Progress.RangeProps & import("react").RefAttributes<HTMLDivElement>, import("tailwind-variants").VariantProps<import("tailwind-variants").TVReturnType<{
|
|
299
299
|
size: {
|
|
300
300
|
md: {};
|
|
@@ -307,7 +307,7 @@ export declare const Range: import("react").ComponentType<import("@ark-ui/react"
|
|
|
307
307
|
range: string;
|
|
308
308
|
};
|
|
309
309
|
};
|
|
310
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
310
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
311
311
|
size: {
|
|
312
312
|
md: {};
|
|
313
313
|
};
|
|
@@ -319,7 +319,7 @@ export declare const Range: import("react").ComponentType<import("@ark-ui/react"
|
|
|
319
319
|
range: string;
|
|
320
320
|
};
|
|
321
321
|
};
|
|
322
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
322
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
323
323
|
size: {
|
|
324
324
|
md: {};
|
|
325
325
|
};
|
|
@@ -331,5 +331,5 @@ export declare const Range: import("react").ComponentType<import("@ark-ui/react"
|
|
|
331
331
|
range: string;
|
|
332
332
|
};
|
|
333
333
|
};
|
|
334
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
334
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>>>>;
|
|
335
335
|
export declare const Context: (props: Progress.ContextProps) => import("react").ReactNode;
|
|
@@ -10,7 +10,7 @@ export declare const progressRecipe: import("tailwind-variants").TVReturnType<{
|
|
|
10
10
|
range: string;
|
|
11
11
|
};
|
|
12
12
|
};
|
|
13
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
13
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, {
|
|
14
14
|
size: {
|
|
15
15
|
md: {};
|
|
16
16
|
};
|
|
@@ -22,7 +22,7 @@ export declare const progressRecipe: import("tailwind-variants").TVReturnType<{
|
|
|
22
22
|
range: string;
|
|
23
23
|
};
|
|
24
24
|
};
|
|
25
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
25
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, import("tailwind-variants").TVReturnType<{
|
|
26
26
|
size: {
|
|
27
27
|
md: {};
|
|
28
28
|
};
|
|
@@ -34,4 +34,4 @@ export declare const progressRecipe: import("tailwind-variants").TVReturnType<{
|
|
|
34
34
|
range: string;
|
|
35
35
|
};
|
|
36
36
|
};
|
|
37
|
-
}, Record<"root" | "label" | "track" | "circle" | "view" | "
|
|
37
|
+
}, Record<"root" | "label" | "track" | "circle" | "view" | "valueText" | "range" | "circleTrack" | "circleRange", string | string[]>, undefined, unknown, unknown, undefined>>;
|
package/package.json
CHANGED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { useMutation } from '@tanstack/react-query';
|
|
2
|
-
import invariant from 'tiny-invariant';
|
|
3
|
-
import { verifyMobileNumber, } from '../../services/account.js';
|
|
4
|
-
import { getVerifyMobileNumberMutationKey } from '../../utils/mutationKeys.js';
|
|
5
|
-
import { getSession } from '../services/getSession.js';
|
|
6
|
-
export const useVerifyMobileNumber = (config) => {
|
|
7
|
-
return useMutation({
|
|
8
|
-
...config,
|
|
9
|
-
mutationKey: getVerifyMobileNumberMutationKey(),
|
|
10
|
-
mutationFn: async (input) => {
|
|
11
|
-
const session = await getSession();
|
|
12
|
-
invariant(session.status === 'authenticated');
|
|
13
|
-
await verifyMobileNumber(input.verificationCode, {
|
|
14
|
-
headers: {
|
|
15
|
-
Authorization: `Bearer ${session.token}`,
|
|
16
|
-
},
|
|
17
|
-
});
|
|
18
|
-
},
|
|
19
|
-
});
|
|
20
|
-
};
|
package/dist/components/DepositWithdrawal/Deposit/AurixPayPayMayaDeposit/AurixPayGrabPayDeposit.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function AurixPayGrabPayDeposit(): import("react/jsx-runtime").JSX.Element;
|
package/dist/components/DepositWithdrawal/Deposit/AurixPayPayMayaDeposit/AurixPayGrabPayDeposit.js
DELETED
|
@@ -1,241 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { zodResolver } from '@hookform/resolvers/zod';
|
|
3
|
-
import { ObjectId } from '@opexa/object-id';
|
|
4
|
-
import Link from 'next/link';
|
|
5
|
-
import { useEffect, useState } from 'react';
|
|
6
|
-
import { Controller, useForm } from 'react-hook-form';
|
|
7
|
-
import invariant from 'tiny-invariant';
|
|
8
|
-
import { useBoolean } from 'usehooks-ts';
|
|
9
|
-
import { z } from 'zod';
|
|
10
|
-
import { useShallow } from 'zustand/shallow';
|
|
11
|
-
import { useAvailablePromosQuery } from '../../../../client/hooks/useAvailablePromosQuery.js';
|
|
12
|
-
import { useCreateAurixPayGrabPayDepositMutation } from '../../../../client/hooks/useCreateAurixPayGrabPayDepositMutation.js';
|
|
13
|
-
import { useDepositQuery } from '../../../../client/hooks/useDepositQuery.js';
|
|
14
|
-
import { useDepositsCountQuery } from '../../../../client/hooks/useDepositsCountQuery.js';
|
|
15
|
-
import { useDisclosure } from '../../../../client/hooks/useDisclosure.js';
|
|
16
|
-
import { useGlobalStore } from '../../../../client/hooks/useGlobalStore.js';
|
|
17
|
-
import { useMemberVerificationQuery } from '../../../../client/hooks/useMemberVerificationQuery.js';
|
|
18
|
-
import { usePaymentSettingsQuery } from '../../../../client/hooks/usePaymentSettingsQuery.js';
|
|
19
|
-
import { AlertCircleIcon } from '../../../../icons/AlertCircleIcon.js';
|
|
20
|
-
import { ChevronDownIcon } from '../../../../icons/ChevronDownIcon.js';
|
|
21
|
-
import { ChevronUpIcon } from '../../../../icons/ChevronUpIcon.js';
|
|
22
|
-
import { RefreshCcw01Icon } from '../../../../icons/RefreshCcw01Icon.js';
|
|
23
|
-
import { SpinnerIcon } from '../../../../icons/SpinnerIcon.js';
|
|
24
|
-
import { XIcon } from '../../../../icons/XIcon.js';
|
|
25
|
-
import { ObjectType } from '../../../../services/ObjectType.js';
|
|
26
|
-
import { AlertDialog } from '../../../../ui/AlertDialog/index.js';
|
|
27
|
-
import { Button } from '../../../../ui/Button/index.js';
|
|
28
|
-
import { Field } from '../../../../ui/Field/index.js';
|
|
29
|
-
import { NumberInput } from '../../../../ui/NumberInput/index.js';
|
|
30
|
-
import { Portal } from '../../../../ui/Portal/index.js';
|
|
31
|
-
import { getQueryClient } from '../../../../utils/getQueryClient.js';
|
|
32
|
-
import { parseDecimal } from '../../../../utils/parseDecimal.js';
|
|
33
|
-
import { getDepositsCountQueryKey } from '../../../../utils/queryKeys.js';
|
|
34
|
-
import { AmountChoices } from '../../AmountChoices.js';
|
|
35
|
-
import { useDepositWithdrawalPropsContext } from '../../DepositWithdrawalContext.js';
|
|
36
|
-
import { AvailablePromos } from '../AvailablePromos.js';
|
|
37
|
-
export function AurixPayGrabPayDeposit() {
|
|
38
|
-
const depositWithdrawalProps = useDepositWithdrawalPropsContext();
|
|
39
|
-
const disclosure = useDisclosure({
|
|
40
|
-
onOpenChange(open) {
|
|
41
|
-
if (!open) {
|
|
42
|
-
form.reset();
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
});
|
|
46
|
-
const globalStore = useGlobalStore(useShallow((ctx) => ({
|
|
47
|
-
depositWithdrawal: ctx.depositWithdrawal,
|
|
48
|
-
kycVerificationStatus: ctx.kycVerificationStatus,
|
|
49
|
-
})));
|
|
50
|
-
const verificationQuery = useMemberVerificationQuery();
|
|
51
|
-
const verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
|
|
52
|
-
const [status, setStatus] = useState('waiting');
|
|
53
|
-
const [errorMessage, setErrorMessage] = useState(null);
|
|
54
|
-
const createDepositMutation = useCreateAurixPayGrabPayDepositMutation({
|
|
55
|
-
onMutate() {
|
|
56
|
-
disclosure.setOpen(true);
|
|
57
|
-
setStatus('processing');
|
|
58
|
-
},
|
|
59
|
-
onSuccess(data) {
|
|
60
|
-
const queryClient = getQueryClient();
|
|
61
|
-
invariant(data.checkoutUrl);
|
|
62
|
-
window.open(data.checkoutUrl, '_blank', 'noopener,noreferrer');
|
|
63
|
-
queryClient.invalidateQueries({
|
|
64
|
-
queryKey: getDepositsCountQueryKey(),
|
|
65
|
-
});
|
|
66
|
-
setStatus('success');
|
|
67
|
-
},
|
|
68
|
-
onError(data) {
|
|
69
|
-
setStatus('failed');
|
|
70
|
-
setErrorMessage({
|
|
71
|
-
name: data.name,
|
|
72
|
-
message: data.message,
|
|
73
|
-
});
|
|
74
|
-
},
|
|
75
|
-
});
|
|
76
|
-
const warn = useBoolean();
|
|
77
|
-
const depositQuery = useDepositQuery(createDepositMutation.data?.id, {
|
|
78
|
-
enabled: !warn.value && status === 'success',
|
|
79
|
-
refetchInterval: (ctx) => ctx.state.data?.status === 'CONFIRMED' ||
|
|
80
|
-
ctx.state.data?.status === 'REJECTED' ||
|
|
81
|
-
ctx.state.data?.status === 'CANCELLED'
|
|
82
|
-
? false
|
|
83
|
-
: 1000,
|
|
84
|
-
});
|
|
85
|
-
useEffect(() => {
|
|
86
|
-
if (depositQuery.data?.status === 'CONFIRMED') {
|
|
87
|
-
setStatus('confirmed');
|
|
88
|
-
return;
|
|
89
|
-
}
|
|
90
|
-
if (depositQuery.data?.status === 'REJECTED' ||
|
|
91
|
-
depositQuery.data?.status === 'CANCELLED') {
|
|
92
|
-
setStatus('failed');
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
}, [depositQuery.data?.status]);
|
|
96
|
-
const depositsCountQuery = useDepositsCountQuery();
|
|
97
|
-
const depositsCount = depositsCountQuery.data ?? 0;
|
|
98
|
-
const paymentSettingsQuery = usePaymentSettingsQuery();
|
|
99
|
-
const paymentSettings = paymentSettingsQuery.data;
|
|
100
|
-
const gatewaySettings = paymentSettings?.aioGCashDepositGatewaySettings;
|
|
101
|
-
const maximumAmount = parseDecimal(gatewaySettings?.maximumAmount, 0);
|
|
102
|
-
const minimumAmount = depositsCount <= 0
|
|
103
|
-
? parseDecimal(paymentSettingsQuery.data?.minimumFirstDepositAmount, 0)
|
|
104
|
-
: parseDecimal(gatewaySettings?.minimumAmount, 0);
|
|
105
|
-
const promosQuery = useAvailablePromosQuery();
|
|
106
|
-
const promos = promosQuery.data ?? [];
|
|
107
|
-
const definition = z
|
|
108
|
-
.object({
|
|
109
|
-
amount: z.string().superRefine((val, ctx) => {
|
|
110
|
-
const n = parseDecimal(val, 0);
|
|
111
|
-
if (n < minimumAmount) {
|
|
112
|
-
ctx.addIssue({
|
|
113
|
-
type: 'number',
|
|
114
|
-
code: z.ZodIssueCode.too_small,
|
|
115
|
-
inclusive: true,
|
|
116
|
-
minimum: minimumAmount,
|
|
117
|
-
message: `Please enter ${minimumAmount.toLocaleString()} or more to proceed with your deposit.`,
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
if (n > maximumAmount) {
|
|
121
|
-
ctx.addIssue({
|
|
122
|
-
type: 'number',
|
|
123
|
-
code: z.ZodIssueCode.too_big,
|
|
124
|
-
inclusive: true,
|
|
125
|
-
maximum: maximumAmount,
|
|
126
|
-
message: `Maximum amount is ${maximumAmount.toLocaleString()}`,
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
}),
|
|
130
|
-
promo: z.string().optional().nullable(),
|
|
131
|
-
accountNumber: z
|
|
132
|
-
.string()
|
|
133
|
-
.min(1, 'Account number is required')
|
|
134
|
-
.min(8, 'Account number must be 8 or more characters')
|
|
135
|
-
.max(32, 'Account number must not be more than 32 characters'),
|
|
136
|
-
})
|
|
137
|
-
.superRefine((value, ctx) => {
|
|
138
|
-
const promo = promos.find((o) => o.id === value.promo);
|
|
139
|
-
const promoMinAmount = parseDecimal(promo?.minimumDepositAmount, 0);
|
|
140
|
-
const promoMaxAmount = parseDecimal(promo?.maximumDepositAmount, 0);
|
|
141
|
-
const amount = parseDecimal(value.amount, 0);
|
|
142
|
-
if (promo && amount < promoMinAmount) {
|
|
143
|
-
ctx.addIssue({
|
|
144
|
-
path: ['amount'],
|
|
145
|
-
code: z.ZodIssueCode.custom,
|
|
146
|
-
message: `Minimum amount for this promo is ${promoMinAmount.toLocaleString()}`,
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
if (promo && amount > promoMaxAmount) {
|
|
150
|
-
ctx.addIssue({
|
|
151
|
-
path: ['amount'],
|
|
152
|
-
code: z.ZodIssueCode.custom,
|
|
153
|
-
message: `Maximum amount for this promo is ${promoMaxAmount}`,
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
});
|
|
157
|
-
const form = useForm({
|
|
158
|
-
mode: 'all',
|
|
159
|
-
resolver: zodResolver(definition),
|
|
160
|
-
defaultValues: {
|
|
161
|
-
amount: '0',
|
|
162
|
-
promo: globalStore.depositWithdrawal.promo ?? null,
|
|
163
|
-
accountNumber: '',
|
|
164
|
-
},
|
|
165
|
-
});
|
|
166
|
-
useEffect(() => {
|
|
167
|
-
if (minimumAmount) {
|
|
168
|
-
form.reset({
|
|
169
|
-
amount: minimumAmount.toString(),
|
|
170
|
-
promo: form.getValues('promo') ?? null,
|
|
171
|
-
accountNumber: form.getValues('accountNumber') ?? '',
|
|
172
|
-
});
|
|
173
|
-
}
|
|
174
|
-
}, [form, minimumAmount]);
|
|
175
|
-
const redirectUrl = (() => {
|
|
176
|
-
const path = depositWithdrawalProps.depositSuccessPageUrl ?? '/deposits/:id/status';
|
|
177
|
-
const origin = window.location.origin.includes('localhost')
|
|
178
|
-
? 'https://uat.powerplay.ph' +
|
|
179
|
-
depositWithdrawalProps.depositSuccessPageUrl
|
|
180
|
-
: window.location.origin;
|
|
181
|
-
return `${origin}${path}`;
|
|
182
|
-
})();
|
|
183
|
-
return (_jsxs("form", { onSubmit: form.handleSubmit(async (data) => {
|
|
184
|
-
if (!depositWithdrawalProps.bypassDepositKycCheck &&
|
|
185
|
-
(verificationStatus === 'PENDING' ||
|
|
186
|
-
verificationStatus === 'UNVERIFIED' ||
|
|
187
|
-
verificationStatus === 'REJECTED' ||
|
|
188
|
-
verificationStatus === 'CREATED')) {
|
|
189
|
-
globalStore.kycVerificationStatus.setOpen(true);
|
|
190
|
-
return;
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
const id = ObjectId.generate(ObjectType.Deposit).toString();
|
|
194
|
-
createDepositMutation.reset();
|
|
195
|
-
createDepositMutation.mutate({
|
|
196
|
-
id,
|
|
197
|
-
amount: data.amount.toString(),
|
|
198
|
-
promo: data.promo ?? undefined,
|
|
199
|
-
redirectUrl: redirectUrl.replace(':id', id),
|
|
200
|
-
accountNumber: data.accountNumber,
|
|
201
|
-
});
|
|
202
|
-
}
|
|
203
|
-
}), noValidate: true, children: [_jsxs(Field.Root, { invalid: !!form.formState.errors.accountNumber, children: [_jsx(Field.Label, { children: "Account number" }), _jsx(Field.Input, { ...form.register('accountNumber') }), _jsx(Field.ErrorText, { children: form.formState.errors.accountNumber?.message })] }), _jsx(Controller, { control: form.control, name: "amount", render: (o) => (_jsxs(Field.Root, { invalid: !!form.formState.errors.amount, className: "mt-lg", children: [_jsxs(NumberInput.Root, { min: 0, step: 1, value: o.field.value, onValueChange: (details) => {
|
|
204
|
-
o.field.onChange(details.value);
|
|
205
|
-
}, allowMouseWheel: true, children: [_jsx(NumberInput.Label, { children: "Enter amount you want to deposit" }), _jsxs(NumberInput.Control, { children: [_jsx(NumberInput.Input, {}), _jsx(NumberInput.IncrementTrigger, { children: _jsx(ChevronUpIcon, {}) }), _jsx(NumberInput.DecrementTrigger, { children: _jsx(ChevronDownIcon, {}) })] })] }), _jsx(Field.ErrorText, { children: form.formState.errors.amount?.message })] })) }), _jsx(AmountChoices, { value: parseDecimal(form.watch('amount'), 0), onChange: (value) => {
|
|
206
|
-
form.setValue('amount', value.toString(), {
|
|
207
|
-
shouldTouch: true,
|
|
208
|
-
shouldDirty: true,
|
|
209
|
-
shouldValidate: true,
|
|
210
|
-
});
|
|
211
|
-
}, min: minimumAmount, max: maximumAmount, className: "mt-lg" }), _jsx(Controller, { control: form.control, name: "promo", render: (o) => (_jsx(AvailablePromos, { value: o.field.value, onChange: (value) => {
|
|
212
|
-
o.field.onChange(value);
|
|
213
|
-
globalStore.depositWithdrawal.setPromo(null);
|
|
214
|
-
}, className: "mt-3xl" })) }), _jsx(Button, { type: "submit", className: "mt-3xl", disabled: createDepositMutation.isPending, children: "Deposit" }), _jsxs("p", { className: "mt-lg text-text-tertiary-600 text-xs", children: ["By depositing, you agree to our", ' ', _jsx(Link, { href: depositWithdrawalProps.termsOfUseUrl ?? '/terms-of-use', onClick: () => globalStore.depositWithdrawal.setOpen(false), className: "text-text-warning-primary-600 underline underline-offset-2", children: "Terms of Use" }), ' ', "and", ' ', _jsx(Link, { href: depositWithdrawalProps.privacyPolicyUrl ?? '/privacy-policy', onClick: () => globalStore.depositWithdrawal.setOpen(false), className: "text-text-warning-primary-600 underline underline-offset-2", children: "Privacy Policy" }), "."] }), _jsx(AlertDialog.Root, { open: disclosure.open, onOpenChange: (details) => {
|
|
215
|
-
disclosure.setOpen(details.open);
|
|
216
|
-
}, lazyMount: true, unmountOnExit: true, closeOnEscape: false, closeOnInteractOutside: false, onExitComplete: () => {
|
|
217
|
-
setStatus('waiting');
|
|
218
|
-
setErrorMessage(null);
|
|
219
|
-
form.reset();
|
|
220
|
-
warn.setFalse();
|
|
221
|
-
}, children: _jsxs(Portal, { children: [_jsx(AlertDialog.Backdrop, { className: "!z-[calc(var(--z-dialog)+2)]" }), _jsx(AlertDialog.Positioner, { className: "!z-[calc(var(--z-dialog)+3)]", children: _jsxs(AlertDialog.Content, { children: [_jsx(AlertDialog.Context, { children: (api) => (_jsx("button", { type: "button", className: "absolute top-2.5 right-2.5 flex icon:size-6 size-11 items-center justify-center text-text-quinary", onClick: () => {
|
|
222
|
-
if (status === 'success' && !warn.value) {
|
|
223
|
-
warn.setTrue();
|
|
224
|
-
}
|
|
225
|
-
else {
|
|
226
|
-
api.setOpen(false);
|
|
227
|
-
}
|
|
228
|
-
}, children: _jsx(XIcon, {}) })) }), _jsxs(AlertDialog.Header, { children: [status === 'processing' && (_jsx(SpinnerIcon, { className: "size-12 text-text-brand-primary-600" })), status === 'success' && !warn.value && (_jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-bg-brand-secondary text-text-featured-icon-light-brand", children: _jsx(RefreshCcw01Icon, {}) })), status === 'success' && warn.value && (_jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-bg-error-secondary text-text-featured-icon-light-error", children: _jsx(AlertCircleIcon, {}) })), status === 'confirmed' && (_jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-bg-success-secondary text-text-featured-icon-light-success", children: _jsx(AlertCircleIcon, {}) })), status === 'failed' && (_jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-bg-error-secondary text-text-featured-icon-light-error", children: _jsx(AlertCircleIcon, {}) }))] }), _jsxs(AlertDialog.Body, { children: [_jsxs(AlertDialog.Title, { children: [status === 'processing' && 'Processing Deposit', status === 'success' &&
|
|
229
|
-
!warn.value &&
|
|
230
|
-
'Didn’t see the payment window?', status === 'success' && warn.value && (_jsx(_Fragment, { children: "Are you sure you want to close this\u00A0window?" })), status === 'confirmed' && 'Deposit Successful', status === 'failed' && errorMessage?.name] }), _jsxs(AlertDialog.Description, { children: [status === 'processing' &&
|
|
231
|
-
"We're verifying your account and amount. Please hold a moment.", status === 'success' &&
|
|
232
|
-
!warn.value &&
|
|
233
|
-
'Sometimes the payment pop up doesn’t appear right away. Don’t worry, just click the button below to reopen it and continue your deposit.', status === 'success' &&
|
|
234
|
-
warn.value &&
|
|
235
|
-
'Closing this window might cancel your current deposit. Do you want to continue?', status === 'confirmed' &&
|
|
236
|
-
'Your deposit has been successfully processed.', status === 'failed' && errorMessage?.message] })] }), (status === 'failed' ||
|
|
237
|
-
status === 'success' ||
|
|
238
|
-
status === 'confirmed') && (_jsxs(AlertDialog.Footer, { children: [status === 'success' && !warn.value && (_jsx(Button, { asChild: true, children: _jsx("a", { href: createDepositMutation.data?.checkoutUrl ?? '', target: "_blank", rel: "noopener noreferrer", children: "Try Again" }) })), status === 'success' && warn.value && (_jsxs(_Fragment, { children: [_jsx(Button, { variant: "outline", onClick: () => {
|
|
239
|
-
warn.setFalse();
|
|
240
|
-
}, children: "Go back" }), _jsx(AlertDialog.Context, { children: (api) => (_jsx(Button, { onClick: () => api.setOpen(false), children: "Continue" })) })] })), status !== 'success' && (_jsx(AlertDialog.Context, { children: (api) => (_jsx(Button, { onClick: () => api.setOpen(false), children: "Ok" })) }))] }))] }) })] }) })] }));
|
|
241
|
-
}
|