This commit is contained in:
2026-08-17 11:01:21 +08:00
parent 6e07cab51f
commit 255573ed06
705 changed files with 8762 additions and 36677 deletions
@@ -0,0 +1 @@
{"version":3,"file":"auth.js","sources":["utils/auth.js"],"sourcesContent":["/**\r\n * 认证工具 - Token 和用户信息管理\r\n */\r\nimport config from '@/api/config.js'\r\nimport {\r\n\tgetStorage,\r\n\tsetStorage,\r\n\tremoveStorage\r\n} from './storage'\r\n\r\n/**\r\n * 获取 Token\r\n * @returns {string|null}\r\n */\r\nexport function getToken() {\r\n\treturn getStorage(config.tokenKey)\r\n}\r\n\r\n/**\r\n * 设置 Token\r\n * @param {string} token\r\n */\r\nexport function setToken(token) {\r\n\tsetStorage(config.tokenKey, token)\r\n}\r\n\r\n/**\r\n * 移除 Token\r\n */\r\nexport function removeToken() {\r\n\tremoveStorage(config.tokenKey)\r\n}\r\n\r\n/**\r\n * 判断是否已登录\r\n * @returns {boolean}\r\n */\r\nexport function isLoggedIn() {\r\n\treturn !!getToken()\r\n}\r\n\r\n/**\r\n * 获取用户信息\r\n * @returns {Object|null}\r\n */\r\nexport function getUserInfo() {\r\n\treturn getStorage(config.userInfoKey)\r\n}\r\n\r\n/**\r\n * 设置用户信息\r\n * @param {Object} userInfo\r\n */\r\nexport function setUserInfo(userInfo) {\r\n\tsetStorage(config.userInfoKey, userInfo)\r\n}\r\n\r\n/**\r\n * 清除所有认证信息\r\n */\r\nexport function clearAuthInfo() {\r\n\tremoveToken()\r\n\tremoveStorage(config.userInfoKey)\r\n}\r\n\r\n/**\r\n * 登录检查,未登录则跳转登录页\r\n * @param {string} [redirectUrl] 登录后重定向地址\r\n * @returns {boolean} 是否已登录\r\n */\r\nexport function checkLogin(redirectUrl) {\r\n\tif (isLoggedIn()) {\r\n\t\treturn true\r\n\t}\r\n\tconst url = redirectUrl ?\r\n\t\t`/pages/login/login?redirect=${encodeURIComponent(redirectUrl)}` :\r\n\t\t'/pages/login/login'\r\n\tuni.navigateTo({\r\n\t\turl\r\n\t})\r\n\treturn false\r\n}"],"names":["getToken","getStorage","config","setToken","token","setStorage","removeToken","removeStorage","isLoggedIn","getUserInfo","setUserInfo","userInfo","clearAuthInfo"],"mappings":"0GAcO,SAASA,GAAW,CAC1B,OAAOC,EAAU,WAACC,EAAM,OAAC,QAAQ,CAClC,CAMO,SAASC,EAASC,EAAO,CAC/BC,aAAWH,EAAAA,OAAO,SAAUE,CAAK,CAClC,CAKO,SAASE,GAAc,CAC7BC,EAAa,cAACL,EAAM,OAAC,QAAQ,CAC9B,CAMO,SAASM,GAAa,CAC5B,MAAO,CAAC,CAACR,EAAU,CACpB,CAMO,SAASS,GAAc,CAC7B,OAAOR,EAAU,WAACC,EAAM,OAAC,WAAW,CACrC,CAMO,SAASQ,EAAYC,EAAU,CACrCN,aAAWH,EAAAA,OAAO,YAAaS,CAAQ,CACxC,CAKO,SAASC,GAAgB,CAC/BN,EAAa,EACbC,EAAa,cAACL,EAAM,OAAC,WAAW,CACjC"}
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
{"version":3,"file":"platform.js","sources":["utils/platform.js"],"sourcesContent":["/**\r\n * 获取系统信息\r\n * @param {boolean} [forceRefresh=false] 强制重新获取(折叠屏场景使用)\r\n * @returns {Object}\r\n */\r\nexport function getSystemInfo() {\r\n\treturn uni.getSystemInfoSync()\r\n}\r\n\r\n/**\r\n * 获取状态栏高度\r\n * @param {boolean} [forceRefresh=false]\r\n * @returns {number}\r\n */\r\nexport function getStatusBarHeight() {\r\n\treturn getSystemInfo().statusBarHeight || 0\r\n}"],"names":["getSystemInfo","uni","getStatusBarHeight"],"mappings":"oDAKO,SAASA,GAAgB,CAC/B,OAAOC,EAAAA,MAAI,kBAAmB,CAC/B,CAOO,SAASC,GAAqB,CACpC,OAAOF,EAAa,EAAG,iBAAmB,CAC3C"}
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
{"version":3,"file":"storage.js","sources":["utils/storage.js"],"sourcesContent":["/**\r\n * 本地存储封装 - 兼容微信小程序和 App\r\n */\r\n\r\n/**\r\n * 设置本地存储(同步)\r\n * @param {string} key 键名\r\n * @param {*} value 值(自动序列化)\r\n */\r\nexport function setStorage(key, value) {\r\n\ttry {\r\n\t\tuni.setStorageSync(key, JSON.stringify(value))\r\n\t} catch (e) {\r\n\t\tconsole.error(`setStorage [${key}] 失败:`, e)\r\n\t}\r\n}\r\n\r\n/**\r\n * 获取本地存储(同步)\r\n * @param {string} key 键名\r\n * @param {*} defaultValue 默认值\r\n * @returns {*}\r\n */\r\nexport function getStorage(key, defaultValue = null) {\r\n\ttry {\r\n\t\tconst value = uni.getStorageSync(key)\r\n\t\tif (value) {\r\n\t\t\treturn JSON.parse(value)\r\n\t\t}\r\n\t\treturn defaultValue\r\n\t} catch (e) {\r\n\t\tconsole.error(`getStorage [${key}] 失败:`, e)\r\n\t\treturn defaultValue\r\n\t}\r\n}\r\n\r\n/**\r\n * 移除本地存储\r\n * @param {string} key 键名\r\n */\r\nexport function removeStorage(key) {\r\n\ttry {\r\n\t\tuni.removeStorageSync(key)\r\n\t} catch (e) {\r\n\t\tconsole.error(`removeStorage [${key}] 失败:`, e)\r\n\t}\r\n}\r\n\r\n/**\r\n * 清空所有本地存储\r\n */\r\nexport function clearStorage() {\r\n\ttry {\r\n\t\tuni.clearStorageSync()\r\n\t} catch (e) {\r\n\t\tconsole.error('clearStorage 失败:', e)\r\n\t}\r\n}\r\n\r\n/**\r\n * 设置带过期时间的存储\r\n * @param {string} key 键名\r\n * @param {*} value 值\r\n * @param {number} expire 过期时间(秒)\r\n */\r\nexport function setStorageWithExpire(key, value, expire) {\r\n\tconst data = {\r\n\t\tvalue,\r\n\t\texpire: expire ? Date.now() + expire * 1000 : null,\r\n\t}\r\n\tsetStorage(key, data)\r\n}\r\n\r\n/**\r\n * 获取带过期时间的存储\r\n * @param {string} key 键名\r\n * @param {*} defaultValue 默认值\r\n * @returns {*}\r\n */\r\nexport function getStorageWithExpire(key, defaultValue = null) {\r\n\tconst data = getStorage(key)\r\n\tif (!data) return defaultValue\r\n\tif (data.expire && Date.now() > data.expire) {\r\n\t\tremoveStorage(key)\r\n\t\treturn defaultValue\r\n\t}\r\n\treturn data.value\r\n}"],"names":["setStorage","key","value","uni","e","getStorage","defaultValue","removeStorage","clearStorage"],"mappings":"oDASO,SAASA,EAAWC,EAAKC,EAAO,CACtC,GAAI,CACHC,EAAG,MAAC,eAAeF,EAAK,KAAK,UAAUC,CAAK,CAAC,CAC7C,OAAQE,EAAG,CACXD,QAAA,MAAA,QAAA,yBAAc,eAAeF,CAAG,QAASG,CAAC,CAC1C,CACF,CAQO,SAASC,EAAWJ,EAAKK,EAAe,KAAM,CACpD,GAAI,CACH,MAAMJ,EAAQC,EAAAA,MAAI,eAAeF,CAAG,EACpC,OAAIC,EACI,KAAK,MAAMA,CAAK,EAEjBI,CACP,OAAQF,EAAG,CACXD,OAAAA,QAAA,MAAA,QAAA,yBAAc,eAAeF,CAAG,QAASG,CAAC,EACnCE,CACP,CACF,CAMO,SAASC,EAAcN,EAAK,CAClC,GAAI,CACHE,EAAG,MAAC,kBAAkBF,CAAG,CACzB,OAAQG,EAAG,CACXD,QAAA,MAAA,QAAA,yBAAc,kBAAkBF,CAAG,QAASG,CAAC,CAC7C,CACF,CAKO,SAASI,GAAe,CAC9B,GAAI,CACHL,EAAAA,MAAI,iBAAkB,CACtB,OAAQ,EAAG,CACXA,EAAAA,MAAc,MAAA,QAAA,yBAAA,mBAAoB,CAAC,CACnC,CACF"}