feat: 更新环境配置,修改 API 地址,添加格式化金额功能,优化 RWA 交易视图

This commit is contained in:
2025-12-19 18:01:21 +07:00
parent 72775b4b37
commit 0bccd85744
11 changed files with 215 additions and 36 deletions

View File

@@ -24,8 +24,10 @@ export interface SafeClientReturn<T, E> {
stopWatching?: () => void;
}
export type RequestPromise<T, E> = Promise<{ data: T; error: E; status?: number; response?: Response }>;
export function safeClient<T, E>(
requestPromise: (() => Promise<{ data: T; error: E }>) | Promise<{ data: T; error: E }>,
requestPromise: (() => RequestPromise<T, E>) | RequestPromise<T, E>,
options: SafeClientOptions = {},
): SafeClientReturn<T, E> & Promise<SafeClientReturn<T, E>> {
const { immediate = true, watchSource } = options;
@@ -37,7 +39,7 @@ export function safeClient<T, E>(
const execute = async () => {
isPending.value = true;
let request: () => Promise<{ data: T; error: E }>;
let request: () => RequestPromise<T, E>;
if (typeof requestPromise !== "function") {
request = () => Promise.resolve(requestPromise);
}
@@ -49,21 +51,10 @@ export function safeClient<T, E>(
isPending.value = false;
});
if (res.error) {
let errMsg = "";
if (!res.error) {
errMsg = "Request failed. Please try again.";
}
else if (typeof res.error === "string") {
errMsg = res.error;
}
else if (res.error && "value" in (res.error as unknown as object)) {
errMsg = String((res.error as unknown as { value: string }).value);
}
// if(res.error && typeof res.error === 'object' && 'err' in res.error) {
if (res.error && res.status === 418) {
if (!options.silent) {
const toast = await toastController.create({
message: errMsg,
message: (res.error as any).value.message,
duration: 3000,
position: "bottom",
color: "danger",