mirror of
https://git.um-react.app/um/um-react.git
synced 2026-08-29 12:42:01 +00:00
refactor: major package updates
This commit is contained in:
@@ -26,14 +26,10 @@ export function FileError({ error, code }: FileErrorProps) {
|
||||
|
||||
const copyError = () => {
|
||||
if (error) {
|
||||
navigator.clipboard
|
||||
.writeText(applyTemplate(ERROR_TEMPLATE, { summary, error }))
|
||||
.then(() => {
|
||||
toast.success('错误信息已复制到剪贴板');
|
||||
})
|
||||
.catch((e) => {
|
||||
toast.error(`复制错误信息失败: ${e}`);
|
||||
});
|
||||
navigator.clipboard.writeText(applyTemplate(ERROR_TEMPLATE, { summary, error })).then(
|
||||
() => toast.success('错误信息已复制到剪贴板'),
|
||||
(e) => toast.error(`复制错误信息失败: ${e as Error}`),
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -1,20 +1,11 @@
|
||||
import { RiFileCopyLine } from 'react-icons/ri';
|
||||
import { toast } from 'react-toastify';
|
||||
import { ExtLink } from '~/components/ExtLink';
|
||||
import { FilePathBlock } from '~/components/FilePathBlock.tsx';
|
||||
import { copyToClipboard } from '~/util/clipboard';
|
||||
|
||||
const DB_PATH = '%APPDATA%\\KuGou8\\KGMusicV3.db';
|
||||
export function InstructionsPC() {
|
||||
const DB_PATH = '%APPDATA%\\KuGou8\\KGMusicV3.db';
|
||||
const copyDbPathToClipboard = () => {
|
||||
navigator.clipboard
|
||||
.writeText(DB_PATH)
|
||||
.then(() => {
|
||||
toast.success('已复制到剪贴板');
|
||||
})
|
||||
.catch((err) => {
|
||||
toast.error(`复制失败,请手动复制\n${err}`);
|
||||
});
|
||||
};
|
||||
const copyDbPathToClipboard = () => copyToClipboard(DB_PATH);
|
||||
|
||||
return (
|
||||
<>
|
||||
|
||||
@@ -53,7 +53,7 @@ export function PanelQMCv2Key() {
|
||||
toastImportResult(file.name, keys);
|
||||
} catch (e) {
|
||||
console.error('error during import: ', e);
|
||||
alert(`导入数据库时发生错误:${e}`);
|
||||
alert(`导入数据库时发生错误:${e as Error}`);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@ import { GetQingTingFMDeviceKeyPayload } from '~/decrypt-worker/types.ts';
|
||||
import { DECRYPTION_WORKER_ACTION_NAME } from '~/decrypt-worker/constants.ts';
|
||||
import { Ruby } from '~/components/Ruby';
|
||||
import { HiWord } from '~/components/HelpText/HiWord';
|
||||
import { toast } from 'react-toastify';
|
||||
|
||||
const QTFM_DEVICE_ID_URL = 'https://github.com/parakeet-rs/qtfm-device-id/releases/latest';
|
||||
|
||||
@@ -28,23 +29,20 @@ export function PanelQingTing() {
|
||||
return;
|
||||
}
|
||||
|
||||
const dataMap = Object.create(null);
|
||||
const dataMap = Object.create(null) as GetQingTingFMDeviceKeyPayload;
|
||||
for (const [, key, value] of plainText.matchAll(/^(PRODUCT|DEVICE|MANUFACTURER|BRAND|BOARD|MODEL): (.+)/gim)) {
|
||||
dataMap[key.toLowerCase()] = value;
|
||||
dataMap[key.toLowerCase() as keyof GetQingTingFMDeviceKeyPayload] = value;
|
||||
}
|
||||
const { product, device, manufacturer, brand, board, model } = dataMap;
|
||||
|
||||
if (product && device && manufacturer && brand && board && model) {
|
||||
e.preventDefault();
|
||||
workerClientBus
|
||||
.request<string, GetQingTingFMDeviceKeyPayload>(
|
||||
DECRYPTION_WORKER_ACTION_NAME.QINGTING_FM_GET_DEVICE_KEY,
|
||||
dataMap,
|
||||
)
|
||||
.then(setSecretKey)
|
||||
.catch((err) => {
|
||||
alert(`生成设备密钥时发生错误: ${err}`);
|
||||
});
|
||||
.request<
|
||||
string,
|
||||
GetQingTingFMDeviceKeyPayload
|
||||
>(DECRYPTION_WORKER_ACTION_NAME.QINGTING_FM_GET_DEVICE_KEY, dataMap)
|
||||
.then(setSecretKey, (err) => toast.error(`生成设备密钥时发生错误: ${err}`));
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -55,7 +55,7 @@ export function persistSettings(store: AppStore, storageKey = DEFAULT_STORAGE_KE
|
||||
let lastSettings: unknown;
|
||||
|
||||
try {
|
||||
const loadedSettings: ProductionSettings = JSON.parse(localStorage.getItem(storageKey) ?? '');
|
||||
const loadedSettings = JSON.parse(localStorage.getItem(storageKey) ?? '') as ProductionSettings;
|
||||
if (loadedSettings) {
|
||||
const mergedSettings = mergeSettings(loadedSettings);
|
||||
store.dispatch(setProductionChanges(mergedSettings));
|
||||
|
||||
Reference in New Issue
Block a user