settingsservice.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490
  1. // @ts-check
  2. // Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
  3. // This file is automatically generated. DO NOT EDIT
  4. /**
  5. * SettingsService 暴露「设置」页需要的后端能力给前端调用。
  6. * 前端通过 bindings 调用 GetSettings / SaveSettings / GetStocks 等方法。
  7. * @module
  8. */
  9. // eslint-disable-next-line @typescript-eslint/ban-ts-comment
  10. // @ts-ignore: Unused imports
  11. import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime";
  12. // eslint-disable-next-line @typescript-eslint/ban-ts-comment
  13. // @ts-ignore: Unused imports
  14. import * as $models from "./models.js";
  15. /**
  16. * AppVersion 返回应用版本号,供 footer 展示。
  17. * 版本常量在 settings.go 的 AppVersion(与 build/windows/info.json 的 ProductVersion 一致)。
  18. * @returns {$CancellablePromise<string>}
  19. */
  20. export function AppVersion() {
  21. return $Call.ByID(609040257);
  22. }
  23. /**
  24. * BackupFile 把指定文本文件按当前时间备份到配置的备份目录。
  25. * 备份文件名带时间戳:<原名>_YYYYMMDD_HHMMSS<扩展名>;目录不存在时自动创建。
  26. * 返回备份后的完整路径,供前端提示。
  27. * @param {string} path
  28. * @returns {$CancellablePromise<string>}
  29. */
  30. export function BackupFile(path) {
  31. return $Call.ByID(122452644, path);
  32. }
  33. /**
  34. * CaptureScreen 截取屏幕并返回 PNG 数据 URI,供「主机」页预览。
  35. * display 为显示器索引,-1 表示全部屏幕。
  36. * @param {number} display
  37. * @returns {$CancellablePromise<string>}
  38. */
  39. export function CaptureScreen(display) {
  40. return $Call.ByID(2784207426, display);
  41. }
  42. /**
  43. * ClearAPILogs 清空 Gin 日志缓冲
  44. * @returns {$CancellablePromise<void>}
  45. */
  46. export function ClearAPILogs() {
  47. return $Call.ByID(1756290968);
  48. }
  49. /**
  50. * GenerateQRCode 把输入字符串生成 PNG 二维码,返回 data URI 供前端展示。
  51. * size 为图片边长(像素),<=0 时用默认值 300。
  52. * @param {string} text
  53. * @param {number} size
  54. * @returns {$CancellablePromise<string>}
  55. */
  56. export function GenerateQRCode(text, size) {
  57. return $Call.ByID(3713602369, text, size);
  58. }
  59. /**
  60. * GetAPILogs 返回 Gin 日志环形缓冲的全部内容
  61. * @returns {$CancellablePromise<string[]>}
  62. */
  63. export function GetAPILogs() {
  64. return $Call.ByID(524575579).then(/** @type {($result: any) => any} */(($result) => {
  65. return $$createType0($result);
  66. }));
  67. }
  68. /**
  69. * GetAPIStatus 返回内置 API 服务运行状态
  70. * @returns {$CancellablePromise<$models.APIStatus>}
  71. */
  72. export function GetAPIStatus() {
  73. return $Call.ByID(3299247002).then(/** @type {($result: any) => any} */(($result) => {
  74. return $$createType1($result);
  75. }));
  76. }
  77. /**
  78. * GetBiliDynamic 抓取 B站「关注的人最新动态」。
  79. * 需要设置里配置 B站登录 cookie(含 SESSDATA);cookie 为空或失效时回退热门视频。
  80. * @returns {$CancellablePromise<$models.BiliDynamicItem[]>}
  81. */
  82. export function GetBiliDynamic() {
  83. return $Call.ByID(258599011).then(/** @type {($result: any) => any} */(($result) => {
  84. return $$createType3($result);
  85. }));
  86. }
  87. /**
  88. * GetGithubFeeds 抓取设置中所有 GitHub 仓库的最新提交
  89. * @returns {$CancellablePromise<$models.RepoFeed[]>}
  90. */
  91. export function GetGithubFeeds() {
  92. return $Call.ByID(2441556896).then(/** @type {($result: any) => any} */(($result) => {
  93. return $$createType5($result);
  94. }));
  95. }
  96. /**
  97. * GetKLine 拉取指定股票的日 K 数据,count 为交易日数量
  98. * @param {string} code
  99. * @param {number} count
  100. * @returns {$CancellablePromise<$models.KLineBar[]>}
  101. */
  102. export function GetKLine(code, count) {
  103. return $Call.ByID(1009336803, code, count).then(/** @type {($result: any) => any} */(($result) => {
  104. return $$createType7($result);
  105. }));
  106. }
  107. /**
  108. * GetMinuteChart 拉取指定股票的分时数据(点击股市行打开分时图时调用)
  109. * @param {string} code
  110. * @returns {$CancellablePromise<$models.MinuteChart>}
  111. */
  112. export function GetMinuteChart(code) {
  113. return $Call.ByID(1171130824, code).then(/** @type {($result: any) => any} */(($result) => {
  114. return $$createType8($result);
  115. }));
  116. }
  117. /**
  118. * GetNews 抓取新闻标题,按设置的关键词标记命中项并优先排序
  119. * @returns {$CancellablePromise<$models.NewsItem[]>}
  120. */
  121. export function GetNews() {
  122. return $Call.ByID(1306230863).then(/** @type {($result: any) => any} */(($result) => {
  123. return $$createType10($result);
  124. }));
  125. }
  126. /**
  127. * GetNtfyChatTopic 返回当前监听的聊天室主题(空表示未监听)
  128. * @returns {$CancellablePromise<string>}
  129. */
  130. export function GetNtfyChatTopic() {
  131. return $Call.ByID(3733537608);
  132. }
  133. /**
  134. * GetNtfyNicknames 返回已记忆的昵称列表(用于前端下拉建议)
  135. * @returns {$CancellablePromise<string[]>}
  136. */
  137. export function GetNtfyNicknames() {
  138. return $Call.ByID(3922015524).then(/** @type {($result: any) => any} */(($result) => {
  139. return $$createType0($result);
  140. }));
  141. }
  142. /**
  143. * GetNtfyTopics 返回已记忆的主题列表(用于前端下拉建议)
  144. * @returns {$CancellablePromise<string[]>}
  145. */
  146. export function GetNtfyTopics() {
  147. return $Call.ByID(1599033699).then(/** @type {($result: any) => any} */(($result) => {
  148. return $$createType0($result);
  149. }));
  150. }
  151. /**
  152. * GetPCStatus 返回电源控制命令状态
  153. * @returns {$CancellablePromise<$models.PCStatus>}
  154. */
  155. export function GetPCStatus() {
  156. return $Call.ByID(4166939475).then(/** @type {($result: any) => any} */(($result) => {
  157. return $$createType11($result);
  158. }));
  159. }
  160. /**
  161. * GetRandomPoem 返回一首随机古诗(供主窗口前端加载 / 手动刷新调用)
  162. * @returns {$CancellablePromise<$models.PoemData>}
  163. */
  164. export function GetRandomPoem() {
  165. return $Call.ByID(3860766604).then(/** @type {($result: any) => any} */(($result) => {
  166. return $$createType12($result);
  167. }));
  168. }
  169. /**
  170. * GetRecordItems 返回所有历史名称(去重排序),供名称输入框自动补全。
  171. * @returns {$CancellablePromise<string[]>}
  172. */
  173. export function GetRecordItems() {
  174. return $Call.ByID(1250968375).then(/** @type {($result: any) => any} */(($result) => {
  175. return $$createType0($result);
  176. }));
  177. }
  178. /**
  179. * GetRecordNames 返回所有历史姓名(去重排序),供姓名输入框自动补全。
  180. * @returns {$CancellablePromise<string[]>}
  181. */
  182. export function GetRecordNames() {
  183. return $Call.ByID(2424781591).then(/** @type {($result: any) => any} */(($result) => {
  184. return $$createType0($result);
  185. }));
  186. }
  187. /**
  188. * GetSettings 返回当前配置(读取配置文件,不存在则返回默认值)
  189. * @returns {$CancellablePromise<$models.AppSettings>}
  190. */
  191. export function GetSettings() {
  192. return $Call.ByID(3034808949).then(/** @type {($result: any) => any} */(($result) => {
  193. return $$createType13($result);
  194. }));
  195. }
  196. /**
  197. * GetStocks 按已保存的股票代码拉取最新行情
  198. * @returns {$CancellablePromise<$models.StockQuote[]>}
  199. */
  200. export function GetStocks() {
  201. return $Call.ByID(3187718815).then(/** @type {($result: any) => any} */(($result) => {
  202. return $$createType15($result);
  203. }));
  204. }
  205. /**
  206. * GetTrendingRepos 抓取 GitHub Trending 页的热门仓库列表(英文简介已自动翻译为中文)
  207. * @returns {$CancellablePromise<$models.TrendingRepo[]>}
  208. */
  209. export function GetTrendingRepos() {
  210. return $Call.ByID(4191072422).then(/** @type {($result: any) => any} */(($result) => {
  211. return $$createType17($result);
  212. }));
  213. }
  214. /**
  215. * MarkGithubRepoChecked 标记某仓库已检视:把本地版本更新为最新 release 版本,消除「发现新版本」提示
  216. * @param {string} url
  217. * @param {string} latest
  218. * @returns {$CancellablePromise<void>}
  219. */
  220. export function MarkGithubRepoChecked(url, latest) {
  221. return $Call.ByID(1378316359, url, latest);
  222. }
  223. /**
  224. * PickWebDir 弹出目录选择对话框,返回选中的目录(取消返回空串)。
  225. * @returns {$CancellablePromise<string>}
  226. */
  227. export function PickWebDir() {
  228. return $Call.ByID(1493546416);
  229. }
  230. /**
  231. * ReadRecords 读取全部记录(按 id 升序,保持录入顺序)。
  232. * 前端 loadRecords 渲染列表;柱状图按返回顺序绘制。
  233. * @returns {$CancellablePromise<$models.RecordItem[]>}
  234. */
  235. export function ReadRecords() {
  236. return $Call.ByID(2989114738).then(/** @type {($result: any) => any} */(($result) => {
  237. return $$createType19($result);
  238. }));
  239. }
  240. /**
  241. * ReadTextFile 读取任意文本文件内容(供「自定义 Tab」文件类型页面使用)。
  242. * 文件不存在时返回空内容;其他错误原样返回。
  243. * @param {string} path
  244. * @returns {$CancellablePromise<string>}
  245. */
  246. export function ReadTextFile(path) {
  247. return $Call.ByID(3179291801, path);
  248. }
  249. /**
  250. * ReadTodo 读取待办文件内容(每行一个任务);文件不存在时返回空
  251. * @returns {$CancellablePromise<string>}
  252. */
  253. export function ReadTodo() {
  254. return $Call.ByID(1630526072);
  255. }
  256. /**
  257. * RenderMarkdown 把 Markdown 文本渲染为安全 HTML 片段(供文件类自定义 Tab 展示)。
  258. * 使用 gomarkdown 渲染,并启用 CommonMark 扩展(表格、任务列表、围栏代码等)。
  259. * @param {string} md
  260. * @returns {$CancellablePromise<string>}
  261. */
  262. export function RenderMarkdown(md) {
  263. return $Call.ByID(3516797141, md);
  264. }
  265. /**
  266. * SaveSettings 保存配置并立即生效:热键、窗口置顶、开机启动、页面地址、股票代码等
  267. * @param {$models.AppSettings} settings
  268. * @returns {$CancellablePromise<$models.AppSettings>}
  269. */
  270. export function SaveSettings(settings) {
  271. return $Call.ByID(2662658340, settings).then(/** @type {($result: any) => any} */(($result) => {
  272. return $$createType13($result);
  273. }));
  274. }
  275. /**
  276. * SaveTickerEnabled 保存滚动条开关状态(新闻条 / 股票条右侧「关闭」按钮调用)
  277. * @param {string} kind
  278. * @param {boolean} enabled
  279. * @returns {$CancellablePromise<void>}
  280. */
  281. export function SaveTickerEnabled(kind, enabled) {
  282. return $Call.ByID(3033168348, kind, enabled);
  283. }
  284. /**
  285. * SaveTickerPos 保存滚动条窗口拖动后的位置(只更新配置,不重建窗口)
  286. * @param {string} kind
  287. * @param {number} x
  288. * @param {number} y
  289. * @returns {$CancellablePromise<void>}
  290. */
  291. export function SaveTickerPos(kind, x, y) {
  292. return $Call.ByID(371275047, kind, x, y);
  293. }
  294. /**
  295. * SendNtfyChat 向聊天室(主题)发送一条消息,nickname 作为标题发送。
  296. * 与 SendNtfyMessage 的区别:昵称固定作为标题,便于聊天室按昵称区分发言者。
  297. * @param {string} topic
  298. * @param {string} nickname
  299. * @param {string} message
  300. * @returns {$CancellablePromise<void>}
  301. */
  302. export function SendNtfyChat(topic, nickname, message) {
  303. return $Call.ByID(2994892543, topic, nickname, message);
  304. }
  305. /**
  306. * SendNtfyMessage 向指定主题推送一条 ntfy 消息。
  307. * topic 为推送主题(频道名),title 可为空(使用主题名),message 为消息内容。
  308. * @param {string} topic
  309. * @param {string} title
  310. * @param {string} message
  311. * @returns {$CancellablePromise<void>}
  312. */
  313. export function SendNtfyMessage(topic, title, message) {
  314. return $Call.ByID(1563997112, topic, title, message);
  315. }
  316. /**
  317. * SetMobileMode 前端在窗口尺寸变化时调用:移动端(窄屏)隐藏主机 Tab 并禁止滚动条
  318. * @param {boolean} mobile
  319. * @returns {$CancellablePromise<void>}
  320. */
  321. export function SetMobileMode(mobile) {
  322. return $Call.ByID(2881494037, mobile);
  323. }
  324. /**
  325. * SetNtfyChatTopic 设置聊天室要监听的主题。
  326. * 传入空字符串则停止监听(无主题不监听)。
  327. * 若与当前监听主题相同则不做任何事;不同则先停止旧监听再启动新监听。
  328. * @param {string} topic
  329. * @returns {$CancellablePromise<void>}
  330. */
  331. export function SetNtfyChatTopic(topic) {
  332. return $Call.ByID(1718497116, topic);
  333. }
  334. /**
  335. * ShowWindow 供前端主动呼出窗口(例如通知点击后回到主界面)
  336. * @returns {$CancellablePromise<void>}
  337. */
  338. export function ShowWindow() {
  339. return $Call.ByID(3712560909);
  340. }
  341. /**
  342. * StartAPIService 启动 / 重启内置 API 服务(服务页手动启动)
  343. * @returns {$CancellablePromise<void>}
  344. */
  345. export function StartAPIService() {
  346. return $Call.ByID(3942830483);
  347. }
  348. /**
  349. * StartWebService 启动静态文件服务(默认页 index.html 或 readme.md)。
  350. * @param {string} dir
  351. * @returns {$CancellablePromise<$models.WebServiceInfo>}
  352. */
  353. export function StartWebService(dir) {
  354. return $Call.ByID(3007036157, dir).then(/** @type {($result: any) => any} */(($result) => {
  355. return $$createType20($result);
  356. }));
  357. }
  358. /**
  359. * StopAPIService 停止内置 API 服务(服务页手动停止)
  360. * @returns {$CancellablePromise<void>}
  361. */
  362. export function StopAPIService() {
  363. return $Call.ByID(1470228927);
  364. }
  365. /**
  366. * StopWebService 停止静态文件服务。
  367. * @returns {$CancellablePromise<void>}
  368. */
  369. export function StopWebService() {
  370. return $Call.ByID(1864477289);
  371. }
  372. /**
  373. * Translate 翻译文本:输入中文翻译为英文,输入英文翻译为中文(自动检测方向)。
  374. * 使用 MyMemory 免费 API,有每日配额限制。
  375. * @param {string} text
  376. * @returns {$CancellablePromise<$models.TranslateResult>}
  377. */
  378. export function Translate(text) {
  379. return $Call.ByID(3284480866, text).then(/** @type {($result: any) => any} */(($result) => {
  380. return $$createType21($result);
  381. }));
  382. }
  383. /**
  384. * WebServiceStatus 返回静态文件服务当前状态。
  385. * @returns {$CancellablePromise<$models.WebServiceInfo>}
  386. */
  387. export function WebServiceStatus() {
  388. return $Call.ByID(1311352355).then(/** @type {($result: any) => any} */(($result) => {
  389. return $$createType20($result);
  390. }));
  391. }
  392. /**
  393. * WriteRecords 全量替换记录:开启事务,先清空再批量插入。
  394. * 前端 saveRecords 提交当前列表全部行,保证与数据库完全一致。
  395. * @param {$models.RecordItem[]} items
  396. * @returns {$CancellablePromise<void>}
  397. */
  398. export function WriteRecords(items) {
  399. return $Call.ByID(1978718139, items);
  400. }
  401. /**
  402. * WriteTextFile 把文本内容写回指定文件(目录不存在时自动创建)。
  403. * 供文件类自定义 Tab 的「保存」使用。
  404. * @param {string} path
  405. * @param {string} content
  406. * @returns {$CancellablePromise<void>}
  407. */
  408. export function WriteTextFile(path, content) {
  409. return $Call.ByID(1781087370, path, content);
  410. }
  411. /**
  412. * WriteTodo 把待办内容写回待办文件(目录不存在时自动创建)
  413. * @param {string} content
  414. * @returns {$CancellablePromise<void>}
  415. */
  416. export function WriteTodo(content) {
  417. return $Call.ByID(3129393963, content);
  418. }
  419. // Private type creation functions
  420. const $$createType0 = $Create.Array($Create.Any);
  421. const $$createType1 = $models.APIStatus.createFrom;
  422. const $$createType2 = $models.BiliDynamicItem.createFrom;
  423. const $$createType3 = $Create.Array($$createType2);
  424. const $$createType4 = $models.RepoFeed.createFrom;
  425. const $$createType5 = $Create.Array($$createType4);
  426. const $$createType6 = $models.KLineBar.createFrom;
  427. const $$createType7 = $Create.Array($$createType6);
  428. const $$createType8 = $models.MinuteChart.createFrom;
  429. const $$createType9 = $models.NewsItem.createFrom;
  430. const $$createType10 = $Create.Array($$createType9);
  431. const $$createType11 = $models.PCStatus.createFrom;
  432. const $$createType12 = $models.PoemData.createFrom;
  433. const $$createType13 = $models.AppSettings.createFrom;
  434. const $$createType14 = $models.StockQuote.createFrom;
  435. const $$createType15 = $Create.Array($$createType14);
  436. const $$createType16 = $models.TrendingRepo.createFrom;
  437. const $$createType17 = $Create.Array($$createType16);
  438. const $$createType18 = $models.RecordItem.createFrom;
  439. const $$createType19 = $Create.Array($$createType18);
  440. const $$createType20 = $models.WebServiceInfo.createFrom;
  441. const $$createType21 = $models.TranslateResult.createFrom;