@walavave/cc98-cli 0.2.3 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/CHANGELOG.md +19 -2
  2. package/README.md +6 -1
  3. package/dist/api/client.d.ts +9 -2
  4. package/dist/api/client.d.ts.map +1 -1
  5. package/dist/api/client.js +42 -4
  6. package/dist/api/client.js.map +1 -1
  7. package/dist/api/endpoints.d.ts +6 -0
  8. package/dist/api/endpoints.d.ts.map +1 -1
  9. package/dist/api/endpoints.js +6 -0
  10. package/dist/api/endpoints.js.map +1 -1
  11. package/dist/tui/app-data.d.ts +7 -26
  12. package/dist/tui/app-data.d.ts.map +1 -1
  13. package/dist/tui/app-data.js +7 -1100
  14. package/dist/tui/app-data.js.map +1 -1
  15. package/dist/tui/app-runtime/content/list.d.ts +5 -0
  16. package/dist/tui/app-runtime/content/list.d.ts.map +1 -0
  17. package/dist/tui/app-runtime/content/list.js +115 -0
  18. package/dist/tui/app-runtime/content/list.js.map +1 -0
  19. package/dist/tui/app-runtime/content/navigation.d.ts +5 -0
  20. package/dist/tui/app-runtime/content/navigation.d.ts.map +1 -0
  21. package/dist/tui/app-runtime/content/navigation.js +104 -0
  22. package/dist/tui/app-runtime/content/navigation.js.map +1 -0
  23. package/dist/tui/app-runtime/content/search.d.ts +4 -0
  24. package/dist/tui/app-runtime/content/search.d.ts.map +1 -0
  25. package/dist/tui/app-runtime/content/search.js +122 -0
  26. package/dist/tui/app-runtime/content/search.js.map +1 -0
  27. package/dist/tui/app-runtime/content.d.ts +3 -8
  28. package/dist/tui/app-runtime/content.d.ts.map +1 -1
  29. package/dist/tui/app-runtime/content.js +3 -286
  30. package/dist/tui/app-runtime/content.js.map +1 -1
  31. package/dist/tui/app-runtime/interactions.d.ts.map +1 -1
  32. package/dist/tui/app-runtime/interactions.js +5 -17
  33. package/dist/tui/app-runtime/interactions.js.map +1 -1
  34. package/dist/tui/app-runtime/keyboard.d.ts.map +1 -1
  35. package/dist/tui/app-runtime/keyboard.js +32 -10
  36. package/dist/tui/app-runtime/keyboard.js.map +1 -1
  37. package/dist/tui/app-runtime/me.d.ts +5 -0
  38. package/dist/tui/app-runtime/me.d.ts.map +1 -0
  39. package/dist/tui/app-runtime/me.js +83 -0
  40. package/dist/tui/app-runtime/me.js.map +1 -0
  41. package/dist/tui/app-runtime/modals.d.ts.map +1 -1
  42. package/dist/tui/app-runtime/modals.js +27 -11
  43. package/dist/tui/app-runtime/modals.js.map +1 -1
  44. package/dist/tui/app-runtime/mouse.d.ts.map +1 -1
  45. package/dist/tui/app-runtime/mouse.js +8 -2
  46. package/dist/tui/app-runtime/mouse.js.map +1 -1
  47. package/dist/tui/app-runtime/state.d.ts.map +1 -1
  48. package/dist/tui/app-runtime/state.js +3 -1
  49. package/dist/tui/app-runtime/state.js.map +1 -1
  50. package/dist/tui/app-runtime/topic.d.ts.map +1 -1
  51. package/dist/tui/app-runtime/topic.js +41 -1
  52. package/dist/tui/app-runtime/topic.js.map +1 -1
  53. package/dist/tui/app.d.ts.map +1 -1
  54. package/dist/tui/app.js +5 -1
  55. package/dist/tui/app.js.map +1 -1
  56. package/dist/tui/cached-client.d.ts +11 -0
  57. package/dist/tui/cached-client.d.ts.map +1 -1
  58. package/dist/tui/cached-client.js +47 -0
  59. package/dist/tui/cached-client.js.map +1 -1
  60. package/dist/tui/data/accounts.d.ts +6 -0
  61. package/dist/tui/data/accounts.d.ts.map +1 -0
  62. package/dist/tui/data/accounts.js +30 -0
  63. package/dist/tui/data/accounts.js.map +1 -0
  64. package/dist/tui/data/content.d.ts +9 -0
  65. package/dist/tui/data/content.d.ts.map +1 -0
  66. package/dist/tui/data/content.js +196 -0
  67. package/dist/tui/data/content.js.map +1 -0
  68. package/dist/tui/data/feed-status.d.ts +3 -0
  69. package/dist/tui/data/feed-status.d.ts.map +1 -0
  70. package/dist/tui/data/feed-status.js +37 -0
  71. package/dist/tui/data/feed-status.js.map +1 -0
  72. package/dist/tui/data/items.d.ts +6 -0
  73. package/dist/tui/data/items.d.ts.map +1 -0
  74. package/dist/tui/data/items.js +67 -0
  75. package/dist/tui/data/items.js.map +1 -0
  76. package/dist/tui/data/me.d.ts +8 -0
  77. package/dist/tui/data/me.d.ts.map +1 -0
  78. package/dist/tui/data/me.js +167 -0
  79. package/dist/tui/data/me.js.map +1 -0
  80. package/dist/tui/data/navigation-state.d.ts +12 -0
  81. package/dist/tui/data/navigation-state.d.ts.map +1 -0
  82. package/dist/tui/data/navigation-state.js +118 -0
  83. package/dist/tui/data/navigation-state.js.map +1 -0
  84. package/dist/tui/data/search.d.ts +5 -0
  85. package/dist/tui/data/search.d.ts.map +1 -0
  86. package/dist/tui/data/search.js +89 -0
  87. package/dist/tui/data/search.js.map +1 -0
  88. package/dist/tui/data/topic.d.ts +8 -0
  89. package/dist/tui/data/topic.d.ts.map +1 -0
  90. package/dist/tui/data/topic.js +406 -0
  91. package/dist/tui/data/topic.js.map +1 -0
  92. package/dist/tui/data/utils.d.ts +10 -0
  93. package/dist/tui/data/utils.d.ts.map +1 -0
  94. package/dist/tui/data/utils.js +49 -0
  95. package/dist/tui/data/utils.js.map +1 -0
  96. package/dist/tui/data/view-items.d.ts +16 -0
  97. package/dist/tui/data/view-items.d.ts.map +1 -0
  98. package/dist/tui/data/view-items.js +179 -0
  99. package/dist/tui/data/view-items.js.map +1 -0
  100. package/dist/tui/data/view-loader.d.ts +10 -0
  101. package/dist/tui/data/view-loader.d.ts.map +1 -0
  102. package/dist/tui/data/view-loader.js +157 -0
  103. package/dist/tui/data/view-loader.js.map +1 -0
  104. package/dist/tui/keymap.d.ts +1 -1
  105. package/dist/tui/keymap.d.ts.map +1 -1
  106. package/dist/tui/keymap.js +2 -0
  107. package/dist/tui/keymap.js.map +1 -1
  108. package/dist/tui/renderer.d.ts +2 -0
  109. package/dist/tui/renderer.d.ts.map +1 -1
  110. package/dist/tui/renderer.js +132 -34
  111. package/dist/tui/renderer.js.map +1 -1
  112. package/dist/tui/tui-model.d.ts +22 -0
  113. package/dist/tui/tui-model.d.ts.map +1 -1
  114. package/dist/tui/tui-model.js.map +1 -1
  115. package/dist/tui/ubb-renderer.d.ts.map +1 -1
  116. package/dist/tui/ubb-renderer.js +7 -2
  117. package/dist/tui/ubb-renderer.js.map +1 -1
  118. package/dist/version.d.ts +1 -1
  119. package/dist/version.js +1 -1
  120. package/package.json +1 -1
@@ -1,287 +1,4 @@
1
- import { executeSearch, loadNextChatPage, loadNextSearchPage, loadNextUserTopicPage, openBoard, openChat, openTopic, openUserProfile } from "../app-data.js";
2
- import { isPrintableInput } from "../account-modal.js";
3
- import { getStatus, navItems, settingsItems } from "../tui-model.js";
4
- import { checkUpdate, openAccountOrLoginModal, requestCacheCleanup, requestLogout } from "./modals.js";
5
- import { enterContentMode, leaveContentMode } from "./state.js";
6
- export async function focusSearchInput(context) {
7
- const { state, render, load, abortCurrent } = context;
8
- const searchNavIndex = navItems.findIndex((item) => item.id === "search");
9
- if (searchNavIndex < 0) {
10
- return;
11
- }
12
- if (state.navIndex === searchNavIndex && state.currentSearch) {
13
- abortCurrent();
14
- state.mode = "list";
15
- state.focus = "content";
16
- state.loading = false;
17
- state.loadingMore = false;
18
- state.error = undefined;
19
- state.topic = undefined;
20
- state.imageViewer = undefined;
21
- state.currentSearch.focus = "input";
22
- state.viewTitle = state.currentSearch.title;
23
- state.status = getStatus(state);
24
- render();
25
- return;
26
- }
27
- abortCurrent();
28
- state.navIndex = searchNavIndex;
29
- await load();
30
- if (navItems[state.navIndex]?.id !== "search" || !state.currentSearch) {
31
- return;
32
- }
33
- state.mode = "list";
34
- state.focus = "content";
35
- state.currentSearch.focus = "input";
36
- state.status = getStatus(state);
37
- render();
38
- }
39
- export function handleSettingsMode(context, key) {
40
- const { state, render, load } = context;
41
- if (key === "j" || key === "\x1b[B") {
42
- state.itemIndex = Math.min(settingsItems.length - 1, state.itemIndex + 1);
43
- render();
44
- return;
45
- }
46
- if (key === "k" || key === "\x1b[A") {
47
- state.itemIndex = Math.max(0, state.itemIndex - 1);
48
- render();
49
- return;
50
- }
51
- if (key === "h" || key === "\x1b[D") {
52
- leaveContentMode(state);
53
- render();
54
- return;
55
- }
56
- if (key !== "l" && key !== "\x1b[C" && key !== "\r") {
57
- return;
58
- }
59
- const selected = settingsItems[state.itemIndex];
60
- if (selected?.meta === "help") {
61
- state.modal = "help";
62
- render();
63
- return;
64
- }
65
- if (selected?.meta === "cache") {
66
- requestCacheCleanup(context);
67
- return;
68
- }
69
- if (selected?.meta === "logout") {
70
- requestLogout(context);
71
- return;
72
- }
73
- if (selected?.meta === "account") {
74
- openAccountOrLoginModal(context);
75
- return;
76
- }
77
- if (selected?.meta === "update") {
78
- checkUpdate(context);
79
- return;
80
- }
81
- void load(true);
82
- }
83
- export function handleNavFocus(context, key) {
84
- const { state, render, load } = context;
85
- if (key === "j" || key === "\x1b[B") {
86
- state.navIndex = Math.min(navItems.length - 1, state.navIndex + 1);
87
- void load();
88
- return;
89
- }
90
- if (key === "k" || key === "\x1b[A") {
91
- state.navIndex = Math.max(0, state.navIndex - 1);
92
- void load();
93
- return;
94
- }
95
- if (key === "l" || key === "\x1b[C" || key === "\r") {
96
- if (!state.loading && (state.items.length > 0 || state.currentSearch)) {
97
- enterContentMode(state, key === "\r");
98
- render();
99
- }
100
- return;
101
- }
102
- if (key === "r") {
103
- void load(true);
104
- }
105
- }
106
- export function handleContentFocus(context, key) {
107
- const { state, render, client, nextSignal, abortCurrent, load } = context;
108
- if (state.currentSearch) {
109
- handleSearchContentFocus(context, key);
110
- return;
111
- }
112
- if (key === "j" || key === "\x1b[B") {
113
- state.itemIndex = Math.min(Math.max(0, state.items.length - 1), state.itemIndex + 1);
114
- render();
115
- return;
116
- }
117
- if (key === "k" || key === "\x1b[A") {
118
- state.itemIndex = Math.max(0, state.itemIndex - 1);
119
- render();
120
- return;
121
- }
122
- if (key === "h" || key === "\x1b[D" || key === "\x1b") {
123
- abortCurrent();
124
- leaveContentMode(state);
125
- render();
126
- return;
127
- }
128
- if (key === "l" || key === "\x1b[C" || key === "\r") {
129
- if (openSelectedItem(context)) {
130
- return;
131
- }
132
- state.status = "当前条目不可进入";
133
- render();
134
- return;
135
- }
136
- if ((key === "n" || key === " ") && state.currentChat) {
137
- void loadNextChatPage(client, state, render, nextSignal());
138
- return;
139
- }
140
- if ((key === "n" || key === " ") && state.currentUser) {
141
- void loadNextUserTopicPage(client, state, render, nextSignal());
142
- return;
143
- }
144
- if (key === "r") {
145
- if (state.currentBoard) {
146
- void openBoard(client, state, state.currentBoard.boardId, state.currentBoard.title, render, true, nextSignal(), false);
147
- return;
148
- }
149
- if (state.currentChat) {
150
- void openChat(client, state, state.currentChat.userId, state.currentChat.title, render, true, nextSignal(), false);
151
- return;
152
- }
153
- if (state.currentUser) {
154
- void openUserProfile(client, state, state.currentUser.userId, render, true, nextSignal(), false);
155
- return;
156
- }
157
- void load(true);
158
- }
159
- }
160
- export function handleSearchContentFocus(context, key) {
161
- const { state, render, client, nextSignal, abortCurrent, load } = context;
162
- const search = state.currentSearch;
163
- if (!search) {
164
- return;
165
- }
166
- if (key === "h" || key === "\x1b[D" || key === "\x1b") {
167
- abortCurrent();
168
- leaveContentMode(state);
169
- render();
170
- return;
171
- }
172
- if (search.focus === "input") {
173
- if (key === "\x7f") {
174
- search.draft = search.draft.slice(0, -1);
175
- render();
176
- return;
177
- }
178
- if (key === "\r") {
179
- void executeSearch(client, state, render, false, nextSignal());
180
- return;
181
- }
182
- if ((key === "j" || key === "\x1b[B" || key === "\t") && state.items.length > 0) {
183
- search.focus = "results";
184
- render();
185
- return;
186
- }
187
- if (key === "r" && search.query) {
188
- search.draft = search.query;
189
- void executeSearch(client, state, render, true, nextSignal());
190
- return;
191
- }
192
- if (isPrintableInput(key)) {
193
- search.draft = `${search.draft}${key}`;
194
- render();
195
- }
196
- return;
197
- }
198
- if (key === "i" || key === "/" || key === "\t") {
199
- search.focus = "input";
200
- render();
201
- return;
202
- }
203
- if (key === "j" || key === "\x1b[B") {
204
- const wasAtEnd = isAtSearchEnd(state);
205
- state.itemIndex = Math.min(Math.max(0, state.items.length - 1), state.itemIndex + 1);
206
- render();
207
- if (wasAtEnd && search.hasMore && !state.loadingMore && !state.loading) {
208
- void loadNextSearchPage(client, state, render, nextSignal());
209
- }
210
- return;
211
- }
212
- if (key === "k" || key === "\x1b[A") {
213
- if (state.itemIndex === 0) {
214
- search.focus = "input";
215
- }
216
- else {
217
- state.itemIndex = Math.max(0, state.itemIndex - 1);
218
- }
219
- render();
220
- return;
221
- }
222
- if (key === "l" || key === "\x1b[C" || key === "\r") {
223
- if (openSelectedItem(context)) {
224
- return;
225
- }
226
- state.status = "当前条目不可进入";
227
- render();
228
- return;
229
- }
230
- if (key === "n" || key === " ") {
231
- void loadNextSearchPage(client, state, render, nextSignal());
232
- return;
233
- }
234
- if (key === "r") {
235
- if (search.query) {
236
- search.draft = search.query;
237
- void executeSearch(client, state, render, true, nextSignal());
238
- return;
239
- }
240
- void load(true);
241
- return;
242
- }
243
- if (isPrintableInput(key)) {
244
- search.focus = "input";
245
- search.draft = `${search.draft}${key}`;
246
- render();
247
- }
248
- }
249
- export function isAtSearchEnd(state) {
250
- return Boolean(state.currentSearch &&
251
- state.currentSearch.focus === "results" &&
252
- state.items.length > 0 &&
253
- state.itemIndex >= state.items.length - 1);
254
- }
255
- export function getContentListScroll(state, visibleCapacity) {
256
- const maxScroll = Math.max(0, state.items.length - visibleCapacity);
257
- const current = Math.min(Math.max(0, state.scroll), maxScroll);
258
- if (state.itemIndex < current) {
259
- return state.itemIndex;
260
- }
261
- if (state.itemIndex >= current + visibleCapacity) {
262
- return Math.min(maxScroll, state.itemIndex - visibleCapacity + 1);
263
- }
264
- return current;
265
- }
266
- function openSelectedItem(context) {
267
- const { state, render, client, config, nextSignal } = context;
268
- const selected = state.items[state.itemIndex];
269
- if (selected?.topicId !== undefined) {
270
- void openTopic(client, state, selected.topicId, render, config, false, nextSignal());
271
- return true;
272
- }
273
- if (selected?.boardId !== undefined) {
274
- void openBoard(client, state, selected.boardId, selected.title, render, false, nextSignal());
275
- return true;
276
- }
277
- if (selected?.chatUserId !== undefined) {
278
- void openChat(client, state, selected.chatUserId, selected.title, render, false, nextSignal());
279
- return true;
280
- }
281
- if (selected?.userId !== undefined) {
282
- void openUserProfile(client, state, selected.userId, render, false, nextSignal());
283
- return true;
284
- }
285
- return false;
286
- }
1
+ export { focusSearchInput, handleNavFocus, handleSettingsMode } from "./content/navigation.js";
2
+ export { getContentListScroll, handleContentFocus, isAtListEnd } from "./content/list.js";
3
+ export { handleSearchContentFocus, isAtSearchEnd } from "./content/search.js";
287
4
  //# sourceMappingURL=content.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/tui/app-runtime/content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/tui/app-runtime/content.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,EACxB,aAAa,EACd,MAAM,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"interactions.d.ts","sourceRoot":"","sources":["../../../src/tui/app-runtime/interactions.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInD,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CA+BT;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CAyET"}
1
+ {"version":3,"file":"interactions.d.ts","sourceRoot":"","sources":["../../../src/tui/app-runtime/interactions.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAGnD,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CA+BT;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CA8DT"}
@@ -1,8 +1,7 @@
1
1
  import { downloadUrlToDownloads } from "../downloads.js";
2
2
  import { fill, length, pad, rect, split } from "../layout.js";
3
- import { getSidebarWidth } from "../renderer.js";
3
+ import { getRenderedListItemIndexAtRow, getRenderedSearchItemIndexAtRow, getSidebarWidth } from "../renderer.js";
4
4
  import { getStatus, navItems, settingsItems } from "../tui-model.js";
5
- import { getContentListScroll } from "./content.js";
6
5
  import { enterContentMode, showNotification } from "./state.js";
7
6
  export async function handleTopicClick(context, event, columns, rows) {
8
7
  const { state, render } = context;
@@ -100,12 +99,8 @@ export function handleContentClick(context, event, columns, rows) {
100
99
  if (rowIndex < 3) {
101
100
  return true;
102
101
  }
103
- const itemHeight = 2;
104
- const visibleCapacity = Math.max(1, Math.floor(Math.max(1, mainArea.height - 3) / itemHeight));
105
- const scroll = getContentListScroll(state, visibleCapacity);
106
- const itemOffset = Math.floor((rowIndex - 3) / itemHeight);
107
- const itemIndex = scroll + itemOffset;
108
- if (itemIndex < 0 || itemIndex >= state.items.length) {
102
+ const itemIndex = getRenderedSearchItemIndexAtRow(state, mainArea.width, mainArea.height, rowIndex);
103
+ if (itemIndex === undefined) {
109
104
  return true;
110
105
  }
111
106
  state.itemIndex = itemIndex;
@@ -118,15 +113,8 @@ export function handleContentClick(context, event, columns, rows) {
118
113
  if (rowIndex < 0) {
119
114
  return true;
120
115
  }
121
- const itemHeight = 2;
122
- if (rowIndex % itemHeight !== 0 && rowIndex % itemHeight !== 1) {
123
- return true;
124
- }
125
- const visibleCapacity = Math.max(1, Math.floor(Math.max(1, mainArea.height - 2) / itemHeight));
126
- const scroll = getContentListScroll(state, visibleCapacity);
127
- const itemOffset = Math.floor(rowIndex / itemHeight);
128
- const itemIndex = scroll + itemOffset;
129
- if (itemIndex < 0 || itemIndex >= state.items.length) {
116
+ const itemIndex = getRenderedListItemIndexAtRow(state, mainArea.width, mainArea.height, rowIndex + 2);
117
+ if (itemIndex === undefined) {
130
118
  return true;
131
119
  }
132
120
  state.itemIndex = itemIndex;
@@ -1 +1 @@
1
- {"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../../src/tui/app-runtime/interactions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../../src/tui/app-runtime/interactions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,6BAA6B,EAAE,+BAA+B,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAuB,EACvB,KAAiB,EACjB,OAAe,EACf,IAAY;IAEZ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAClC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC3E,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IACpF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,OAAO,GAAG,CAAC,CAAC;IAClC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC;IAClD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK;SAChC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;SAC7B,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,SAAS,EAAE,OAAO,IAAI,SAAS,EAAE,QAAQ,CAAC;IACtD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO;IACT,CAAC;IAED,KAAK,CAAC,MAAM,GAAG,QAAQ,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;IAC1C,MAAM,EAAE,CAAC;IAET,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,GAAG,CAAC,CAAC;QACpD,gBAAgB,CAAC,KAAK,EAAE,QAAQ,SAAS,EAAE,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,CAAC,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACjE,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC;IACX,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,OAAuB,EACvB,KAAiB,EACjB,OAAe,EACf,IAAY;IAEZ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACtD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC1F,IAAI,WAAW,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC;QAChF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1E,IAAI,KAAK,CAAC,QAAQ,KAAK,YAAY,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC1F,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,EAAE,CAAC;IACf,KAAK,CAAC,QAAQ,GAAG,YAAY,CAAC;IAC9B,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;IACtB,CAAC;IACD,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,EAAE,CAAC;IACT,KAAK,IAAI,EAAE,CAAC;IACZ,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,OAAuB,EACvB,KAAiB,EACjB,OAAe,EACf,IAAY;IAEZ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAClC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC3D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IACpF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC7E,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;IAC1B,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC3B,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACnB,KAAK,CAAC,aAAa,CAAC,KAAK,GAAG,OAAO,CAAC;YACpC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxB,MAAM,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,SAAS,GAAG,+BAA+B,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACpG,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QAC5B,KAAK,CAAC,aAAa,CAAC,KAAK,GAAG,SAAS,CAAC;QACtC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAClD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,6BAA6B,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IACtG,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACxB,MAAM,EAAE,CAAC;IACT,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CACtB,OAAe,EACf,IAAY,EACZ,MAAgC,EAChC,oBAA6B;IAE7B,MAAM,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACrF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAe,EACf,IAAY,EACZ,MAAgC,EAChC,oBAA6B;IAE7B,MAAM,EAAE,WAAW,EAAE,GAAG,kBAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACxF,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAe,EACf,IAAY,EACZ,MAAgC,EAChC,oBAA6B;IAK7B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3B,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa;QACzC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,EAAE,YAAY,EAAE;QAChD,MAAM,CAAC,YAAY,CAAC;QACpB,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,EAAE;KACP,CAAC,CAAC;IACH,OAAO;QACL,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;QAC3B,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,MAAc,EAAE,GAAW,EAAE,IAA6D;IAC5G,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAClB,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3F,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa;IAC7B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC;QAC5E,OAAO,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../../src/tui/app-runtime/keyboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAoBnD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CA4E/E"}
1
+ {"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../../src/tui/app-runtime/keyboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAqBnD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CA4E/E"}
@@ -1,4 +1,5 @@
1
- import { jumpToTopicFloor, openTopic } from "../app-data.js";
1
+ import { openChat } from "../data/content.js";
2
+ import { jumpToTopicFloor, openTopic } from "../data/topic.js";
2
3
  import { ensureEmotionPreviews, getEmotionCategory } from "../emotion-catalog.js";
3
4
  import { isPrintableInput } from "../account-modal.js";
4
5
  import { focusSearchInput, handleContentFocus, handleNavFocus, handleSettingsMode } from "./content.js";
@@ -104,6 +105,11 @@ function handleComposeModal(context, key, keyAction) {
104
105
  void submitCompose(context);
105
106
  return;
106
107
  }
108
+ if (isShiftEnter(key)) {
109
+ insertComposeText(context, "\n");
110
+ render();
111
+ return;
112
+ }
107
113
  if (key === "\t") {
108
114
  insertComposeText(context, " ");
109
115
  render();
@@ -206,6 +212,9 @@ function handleEmotionPickerModal(context, key) {
206
212
  function isPrintableComposeInput(key) {
207
213
  return key === " " || isPrintableInput(key);
208
214
  }
215
+ function isShiftEnter(key) {
216
+ return key === "\x1b[13;2u" || key === "\x1b[27;2;13~";
217
+ }
209
218
  function getCurrentEmotionEntry(compose) {
210
219
  const category = getEmotionCategory(compose.emotionCategoryIndex);
211
220
  return category.entries[compose.emotionSelectedIndex];
@@ -221,37 +230,50 @@ function getEmotionGridColumns(context) {
221
230
  async function submitCompose(context) {
222
231
  const { client, state, render, config, nextSignal } = context;
223
232
  const compose = state.composeDialog;
224
- const topic = state.topic;
225
- if (!compose || !topic) {
233
+ if (!compose) {
226
234
  return;
227
235
  }
228
236
  const content = compose.draft.trim();
229
237
  if (!content) {
230
- state.status = "评论内容不能为空";
238
+ state.status = compose.target.kind === "chat" ? "私信内容不能为空" : "评论内容不能为空";
231
239
  render();
232
240
  return;
233
241
  }
234
- const payload = config.postSignature ? `${content}${config.postSignature}` : content;
242
+ const payload = compose.target.kind === "topic" && config.postSignature ? `${content}${config.postSignature}` : content;
235
243
  compose.submitting = true;
236
- state.status = "正在发送评论...";
244
+ state.status = compose.target.kind === "chat" ? "正在发送私信..." : "正在发送评论...";
237
245
  render();
238
246
  try {
239
- const result = await client.replyTopic(topic.topicId, payload);
247
+ if (compose.target.kind === "chat") {
248
+ const userId = compose.target.userId;
249
+ const title = compose.target.title;
250
+ await client.sendMessage(userId, payload);
251
+ state.composeDialog = undefined;
252
+ state.modal = null;
253
+ await openChat(client, state, userId, title, render, true, nextSignal(), false);
254
+ state.status = "私信已发送";
255
+ render();
256
+ return;
257
+ }
258
+ const topicId = compose.target.topicId;
259
+ const result = await client.replyTopic(topicId, payload);
240
260
  const floor = typeof result === "object" && result !== null && typeof result.floor === "number"
241
261
  ? result.floor
242
262
  : undefined;
243
263
  state.composeDialog = undefined;
244
264
  state.modal = null;
245
- await openTopic(client, state, topic.topicId, render, config, true, nextSignal());
265
+ await openTopic(client, state, topicId, render, config, true, nextSignal());
246
266
  if (floor && state.topic) {
247
- await jumpToTopicFloor(client, state, floor, render, config, nextSignal());
267
+ await jumpToTopicFloor(client, state, floor, render, config, nextSignal(), true);
248
268
  }
249
269
  state.status = floor ? `已发送到 ${floor} 楼` : "评论已发送";
250
270
  render();
251
271
  }
252
272
  catch (error) {
253
273
  compose.submitting = false;
254
- state.status = `评论发送失败:${error instanceof Error ? error.message : String(error)}`;
274
+ state.status = compose.target.kind === "chat"
275
+ ? `私信发送失败:${error instanceof Error ? error.message : String(error)}`
276
+ : `评论发送失败:${error instanceof Error ? error.message : String(error)}`;
255
277
  render();
256
278
  }
257
279
  }
@@ -1 +1 @@
1
- {"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../../src/tui/app-runtime/keyboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../../src/tui/app-runtime/keyboard.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { RuntimeContext } from "./context.js";
2
+ export declare function openSelectedMeItem(context: RuntimeContext): boolean;
3
+ export declare function refreshCurrentMeView(context: RuntimeContext): boolean;
4
+ export declare function toggleCurrentUserFollow(context: RuntimeContext): Promise<void>;
5
+ //# sourceMappingURL=me.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"me.d.ts","sourceRoot":"","sources":["../../../src/tui/app-runtime/me.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAwBnE;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAuBrE;AAED,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BpF"}
@@ -0,0 +1,83 @@
1
+ import { describeUserProfileStatus } from "../data/view-items.js";
2
+ import { openMyFans, openMyFavoriteTopics, openMyHistory, openMyProfile, openMyReplies } from "../data/me.js";
3
+ export function openSelectedMeItem(context) {
4
+ const { state, render, client, nextSignal } = context;
5
+ const selected = state.items[state.itemIndex];
6
+ if (selected?.action === "me.profile") {
7
+ void openMyProfile(client, state, render, false, nextSignal());
8
+ return true;
9
+ }
10
+ if (selected?.action === "me.favorites") {
11
+ void openMyFavoriteTopics(client, state, render, true, nextSignal());
12
+ return true;
13
+ }
14
+ if (selected?.action === "me.replies") {
15
+ void openMyReplies(client, state, render, false, nextSignal());
16
+ return true;
17
+ }
18
+ if (selected?.action === "me.history") {
19
+ void openMyHistory(client, state, render, false, nextSignal());
20
+ return true;
21
+ }
22
+ if (selected?.action === "me.fans") {
23
+ void openMyFans(client, state, render, false, nextSignal());
24
+ return true;
25
+ }
26
+ return false;
27
+ }
28
+ export function refreshCurrentMeView(context) {
29
+ const { state, render, client, nextSignal } = context;
30
+ if (state.currentFeed?.kind === "me-profile") {
31
+ void openMyProfile(client, state, render, true, nextSignal(), false);
32
+ return true;
33
+ }
34
+ if (state.currentFeed?.kind === "me-favorites") {
35
+ void openMyFavoriteTopics(client, state, render, true, nextSignal(), false);
36
+ return true;
37
+ }
38
+ if (state.currentFeed?.kind === "me-replies") {
39
+ void openMyReplies(client, state, render, true, nextSignal(), false);
40
+ return true;
41
+ }
42
+ if (state.currentFeed?.kind === "me-history") {
43
+ void openMyHistory(client, state, render, true, nextSignal(), false);
44
+ return true;
45
+ }
46
+ if (state.currentFeed?.kind === "me-fans") {
47
+ void openMyFans(client, state, render, true, nextSignal(), false);
48
+ return true;
49
+ }
50
+ return false;
51
+ }
52
+ export async function toggleCurrentUserFollow(context) {
53
+ const { state, render, client } = context;
54
+ const currentUser = state.currentUser;
55
+ if (!currentUser || state.currentFeed?.kind === "me-profile" || state.loading || state.loadingMore) {
56
+ return;
57
+ }
58
+ const nextFollowState = !currentUser.isFollowed;
59
+ state.status = nextFollowState ? "正在关注用户..." : "正在取消关注...";
60
+ render();
61
+ try {
62
+ if (nextFollowState) {
63
+ await client.followUser(currentUser.userId);
64
+ }
65
+ else {
66
+ await client.unfollowUser(currentUser.userId);
67
+ }
68
+ currentUser.isFollowed = nextFollowState;
69
+ state.status = describeUserProfileStatus(state);
70
+ state.notification = {
71
+ message: nextFollowState ? "已关注当前用户" : "已取消关注当前用户",
72
+ expiresAt: Date.now() + 2200
73
+ };
74
+ }
75
+ catch (error) {
76
+ state.error = error instanceof Error ? error.message : String(error);
77
+ state.status = nextFollowState ? "关注失败" : "取消关注失败";
78
+ }
79
+ finally {
80
+ render();
81
+ }
82
+ }
83
+ //# sourceMappingURL=me.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"me.js","sourceRoot":"","sources":["../../../src/tui/app-runtime/me.ts"],"names":[],"mappings":"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"}