From e181f04c642204e79749af93fa921875ff6c21ba Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期二, 20 五月 2025 10:46:35 +0800
Subject: [PATCH] refactor(qms): 重构趋势图展示逻辑

---
 src/types/module.d.ts |   21 ++++++++++++++++++++-
 1 files changed, 20 insertions(+), 1 deletions(-)

diff --git a/src/types/module.d.ts b/src/types/module.d.ts
index b1be08d..2fc273a 100644
--- a/src/types/module.d.ts
+++ b/src/types/module.d.ts
@@ -5,9 +5,12 @@
 import cache from '@/plugins/cache';
 import animate from '@/animate';
 import { useDict } from '@/utils/dict';
-import handleTree, { addDateRange, selectDictLabel, selectDictLabels, parseTime } from '@/utils/ruoyi';
+import { handleTree, addDateRange, selectDictLabel, selectDictLabels, parseTime } from '@/utils/ruoyi';
 import { getConfigKey, updateConfigByKey } from '@/api/system/config';
 import { download as rd } from '@/utils/request';
+import type { LanguageType } from '@/lang';
+
+export {};
 
 declare module '@vue/runtime-core' {
   interface ComponentCustomProperties {
@@ -18,6 +21,11 @@
     $auth: typeof auth;
     $cache: typeof cache;
     animate: typeof animate;
+    /**
+     * i18n $t鏂规硶鏀寔ts绫诲瀷鎻愮ず
+     * @param key i18n key
+     */
+    $t(key: ObjKeysToUnion<LanguageType>): string;
 
     useDict: typeof useDict;
     addDateRange: typeof addDateRange;
@@ -30,3 +38,14 @@
     parseTime: typeof parseTime;
   }
 }
+
+/**
+ * { a: 1, b: { ba: { baa: 1, bab: 2 }, bb: 2} } ---> a | b.ba.baa | b.ba.bab | b.bb
+ * https://juejin.cn/post/7280062870670606397
+ */
+export type ObjKeysToUnion<T, P extends string = ''> = T extends object
+  ? {
+      [K in keyof T]: ObjKeysToUnion<T[K], P extends '' ? `${K & string}` : `${P}.${K & string}`>;
+    }[keyof T]
+  : P;
+

--
Gitblit v1.9.3