settingsservice.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447
  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. * GetSettings 返回当前配置(读取配置文件,不存在则返回默认值)
  171. * @returns {$CancellablePromise<$models.AppSettings>}
  172. */
  173. export function GetSettings() {
  174. return $Call.ByID(3034808949).then(/** @type {($result: any) => any} */(($result) => {
  175. return $$createType13($result);
  176. }));
  177. }
  178. /**
  179. * GetStocks 按已保存的股票代码拉取最新行情
  180. * @returns {$CancellablePromise<$models.StockQuote[]>}
  181. */
  182. export function GetStocks() {
  183. return $Call.ByID(3187718815).then(/** @type {($result: any) => any} */(($result) => {
  184. return $$createType15($result);
  185. }));
  186. }
  187. /**
  188. * GetTrendingRepos 抓取 GitHub Trending 页的热门仓库列表(英文简介已自动翻译为中文)
  189. * @returns {$CancellablePromise<$models.TrendingRepo[]>}
  190. */
  191. export function GetTrendingRepos() {
  192. return $Call.ByID(4191072422).then(/** @type {($result: any) => any} */(($result) => {
  193. return $$createType17($result);
  194. }));
  195. }
  196. /**
  197. * MarkGithubRepoChecked 标记某仓库已检视:把本地版本更新为最新 release 版本,消除「发现新版本」提示
  198. * @param {string} url
  199. * @param {string} latest
  200. * @returns {$CancellablePromise<void>}
  201. */
  202. export function MarkGithubRepoChecked(url, latest) {
  203. return $Call.ByID(1378316359, url, latest);
  204. }
  205. /**
  206. * PickWebDir 弹出目录选择对话框,返回选中的目录(取消返回空串)。
  207. * @returns {$CancellablePromise<string>}
  208. */
  209. export function PickWebDir() {
  210. return $Call.ByID(1493546416);
  211. }
  212. /**
  213. * ReadTextFile 读取任意文本文件内容(供「自定义 Tab」文件类型页面使用)。
  214. * 文件不存在时返回空内容;其他错误原样返回。
  215. * @param {string} path
  216. * @returns {$CancellablePromise<string>}
  217. */
  218. export function ReadTextFile(path) {
  219. return $Call.ByID(3179291801, path);
  220. }
  221. /**
  222. * ReadTodo 读取待办文件内容(每行一个任务);文件不存在时返回空
  223. * @returns {$CancellablePromise<string>}
  224. */
  225. export function ReadTodo() {
  226. return $Call.ByID(1630526072);
  227. }
  228. /**
  229. * RenderMarkdown 把 Markdown 文本渲染为安全 HTML 片段(供文件类自定义 Tab 展示)。
  230. * 使用 gomarkdown 渲染,并启用 CommonMark 扩展(表格、任务列表、围栏代码等)。
  231. * @param {string} md
  232. * @returns {$CancellablePromise<string>}
  233. */
  234. export function RenderMarkdown(md) {
  235. return $Call.ByID(3516797141, md);
  236. }
  237. /**
  238. * SaveSettings 保存配置并立即生效:热键、窗口置顶、开机启动、页面地址、股票代码等
  239. * @param {$models.AppSettings} settings
  240. * @returns {$CancellablePromise<$models.AppSettings>}
  241. */
  242. export function SaveSettings(settings) {
  243. return $Call.ByID(2662658340, settings).then(/** @type {($result: any) => any} */(($result) => {
  244. return $$createType13($result);
  245. }));
  246. }
  247. /**
  248. * SaveTickerEnabled 保存滚动条开关状态(新闻条 / 股票条右侧「关闭」按钮调用)
  249. * @param {string} kind
  250. * @param {boolean} enabled
  251. * @returns {$CancellablePromise<void>}
  252. */
  253. export function SaveTickerEnabled(kind, enabled) {
  254. return $Call.ByID(3033168348, kind, enabled);
  255. }
  256. /**
  257. * SaveTickerPos 保存滚动条窗口拖动后的位置(只更新配置,不重建窗口)
  258. * @param {string} kind
  259. * @param {number} x
  260. * @param {number} y
  261. * @returns {$CancellablePromise<void>}
  262. */
  263. export function SaveTickerPos(kind, x, y) {
  264. return $Call.ByID(371275047, kind, x, y);
  265. }
  266. /**
  267. * SendNtfyChat 向聊天室(主题)发送一条消息,nickname 作为标题发送。
  268. * 与 SendNtfyMessage 的区别:昵称固定作为标题,便于聊天室按昵称区分发言者。
  269. * @param {string} topic
  270. * @param {string} nickname
  271. * @param {string} message
  272. * @returns {$CancellablePromise<void>}
  273. */
  274. export function SendNtfyChat(topic, nickname, message) {
  275. return $Call.ByID(2994892543, topic, nickname, message);
  276. }
  277. /**
  278. * SendNtfyMessage 向指定主题推送一条 ntfy 消息。
  279. * topic 为推送主题(频道名),title 可为空(使用主题名),message 为消息内容。
  280. * @param {string} topic
  281. * @param {string} title
  282. * @param {string} message
  283. * @returns {$CancellablePromise<void>}
  284. */
  285. export function SendNtfyMessage(topic, title, message) {
  286. return $Call.ByID(1563997112, topic, title, message);
  287. }
  288. /**
  289. * SetMobileMode 前端在窗口尺寸变化时调用:移动端(窄屏)隐藏主机 Tab 并禁止滚动条
  290. * @param {boolean} mobile
  291. * @returns {$CancellablePromise<void>}
  292. */
  293. export function SetMobileMode(mobile) {
  294. return $Call.ByID(2881494037, mobile);
  295. }
  296. /**
  297. * SetNtfyChatTopic 设置聊天室要监听的主题。
  298. * 传入空字符串则停止监听(无主题不监听)。
  299. * 若与当前监听主题相同则不做任何事;不同则先停止旧监听再启动新监听。
  300. * @param {string} topic
  301. * @returns {$CancellablePromise<void>}
  302. */
  303. export function SetNtfyChatTopic(topic) {
  304. return $Call.ByID(1718497116, topic);
  305. }
  306. /**
  307. * ShowWindow 供前端主动呼出窗口(例如通知点击后回到主界面)
  308. * @returns {$CancellablePromise<void>}
  309. */
  310. export function ShowWindow() {
  311. return $Call.ByID(3712560909);
  312. }
  313. /**
  314. * StartAPIService 启动 / 重启内置 API 服务(服务页手动启动)
  315. * @returns {$CancellablePromise<void>}
  316. */
  317. export function StartAPIService() {
  318. return $Call.ByID(3942830483);
  319. }
  320. /**
  321. * StartWebService 启动静态文件服务(默认页 index.html 或 readme.md)。
  322. * @param {string} dir
  323. * @returns {$CancellablePromise<$models.WebServiceInfo>}
  324. */
  325. export function StartWebService(dir) {
  326. return $Call.ByID(3007036157, dir).then(/** @type {($result: any) => any} */(($result) => {
  327. return $$createType18($result);
  328. }));
  329. }
  330. /**
  331. * StopAPIService 停止内置 API 服务(服务页手动停止)
  332. * @returns {$CancellablePromise<void>}
  333. */
  334. export function StopAPIService() {
  335. return $Call.ByID(1470228927);
  336. }
  337. /**
  338. * StopWebService 停止静态文件服务。
  339. * @returns {$CancellablePromise<void>}
  340. */
  341. export function StopWebService() {
  342. return $Call.ByID(1864477289);
  343. }
  344. /**
  345. * Translate 翻译文本:输入中文翻译为英文,输入英文翻译为中文(自动检测方向)。
  346. * 使用 MyMemory 免费 API,有每日配额限制。
  347. * @param {string} text
  348. * @returns {$CancellablePromise<$models.TranslateResult>}
  349. */
  350. export function Translate(text) {
  351. return $Call.ByID(3284480866, text).then(/** @type {($result: any) => any} */(($result) => {
  352. return $$createType19($result);
  353. }));
  354. }
  355. /**
  356. * WebServiceStatus 返回静态文件服务当前状态。
  357. * @returns {$CancellablePromise<$models.WebServiceInfo>}
  358. */
  359. export function WebServiceStatus() {
  360. return $Call.ByID(1311352355).then(/** @type {($result: any) => any} */(($result) => {
  361. return $$createType18($result);
  362. }));
  363. }
  364. /**
  365. * WriteTextFile 把文本内容写回指定文件(目录不存在时自动创建)。
  366. * 供文件类自定义 Tab 的「保存」使用。
  367. * @param {string} path
  368. * @param {string} content
  369. * @returns {$CancellablePromise<void>}
  370. */
  371. export function WriteTextFile(path, content) {
  372. return $Call.ByID(1781087370, path, content);
  373. }
  374. /**
  375. * WriteTodo 把待办内容写回待办文件(目录不存在时自动创建)
  376. * @param {string} content
  377. * @returns {$CancellablePromise<void>}
  378. */
  379. export function WriteTodo(content) {
  380. return $Call.ByID(3129393963, content);
  381. }
  382. // Private type creation functions
  383. const $$createType0 = $Create.Array($Create.Any);
  384. const $$createType1 = $models.APIStatus.createFrom;
  385. const $$createType2 = $models.BiliDynamicItem.createFrom;
  386. const $$createType3 = $Create.Array($$createType2);
  387. const $$createType4 = $models.RepoFeed.createFrom;
  388. const $$createType5 = $Create.Array($$createType4);
  389. const $$createType6 = $models.KLineBar.createFrom;
  390. const $$createType7 = $Create.Array($$createType6);
  391. const $$createType8 = $models.MinuteChart.createFrom;
  392. const $$createType9 = $models.NewsItem.createFrom;
  393. const $$createType10 = $Create.Array($$createType9);
  394. const $$createType11 = $models.PCStatus.createFrom;
  395. const $$createType12 = $models.PoemData.createFrom;
  396. const $$createType13 = $models.AppSettings.createFrom;
  397. const $$createType14 = $models.StockQuote.createFrom;
  398. const $$createType15 = $Create.Array($$createType14);
  399. const $$createType16 = $models.TrendingRepo.createFrom;
  400. const $$createType17 = $Create.Array($$createType16);
  401. const $$createType18 = $models.WebServiceInfo.createFrom;
  402. const $$createType19 = $models.TranslateResult.createFrom;