@khorsheed/dsh-reader 0.3.0 → 0.3.1
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.
- package/CHANGELOG.md +22 -0
- package/README.en.md +26 -121
- package/README.i18n.yaml +3 -3
- package/README.md +26 -121
- package/cordis.patch.yml +7 -0
- package/lib/client.js +29054 -6698
- package/lib/index.js +3416 -334
- package/lib/typert.host.js +2145 -259
- package/lib/typert.remote-client.d.ts +97 -3
- package/lib/typert.remote-client.js +1590 -250
- package/lib/types/captions.d.ts +99 -0
- package/lib/types/captions.js +236 -0
- package/lib/types/client/MediaPlayer.d.ts +55 -0
- package/lib/types/client/MediaPlayer.js +106 -0
- package/lib/types/client/NotesView.d.ts +57 -0
- package/lib/types/client/NotesView.js +124 -0
- package/lib/types/client/ReaderPane.d.ts +20 -3
- package/lib/types/client/ReaderPane.js +860 -164
- package/lib/types/client/SpeakerLegend.d.ts +18 -0
- package/lib/types/client/SpeakerLegend.js +26 -0
- package/lib/types/client/canvas-sync.d.ts +84 -0
- package/lib/types/client/canvas-sync.js +59 -0
- package/lib/types/client/contract.d.ts +130 -3
- package/lib/types/client/extract-article.d.ts +38 -1
- package/lib/types/client/extract-article.js +501 -28
- package/lib/types/client/icons.d.ts +1 -1
- package/lib/types/client/icons.js +1 -1
- package/lib/types/client/index.js +81 -2
- package/lib/types/client/locales.d.ts +279 -11
- package/lib/types/client/locales.js +278 -10
- package/lib/types/client/notes.d.ts +142 -0
- package/lib/types/client/notes.js +334 -0
- package/lib/types/client/parse-rss.js +40 -0
- package/lib/types/client/preset-visibility.d.ts +93 -0
- package/lib/types/client/preset-visibility.js +115 -0
- package/lib/types/client/selectors.d.ts +5 -0
- package/lib/types/client/selectors.js +5 -0
- package/lib/types/client/session.d.ts +21 -1
- package/lib/types/client/session.js +12 -0
- package/lib/types/client/store.js +4 -1
- package/lib/types/client/translate.d.ts +26 -1
- package/lib/types/client/translate.js +29 -12
- package/lib/types/client/useLocalTranscript.d.ts +43 -0
- package/lib/types/client/useLocalTranscript.js +129 -0
- package/lib/types/client/useMedia.d.ts +68 -0
- package/lib/types/client/useMedia.js +299 -0
- package/lib/types/client/useMediaStates.d.ts +9 -0
- package/lib/types/client/useMediaStates.js +43 -0
- package/lib/types/client/useNotes.d.ts +110 -0
- package/lib/types/client/useNotes.js +423 -0
- package/lib/types/client/usePolish.d.ts +47 -0
- package/lib/types/client/usePolish.js +162 -0
- package/lib/types/index.d.ts +6 -0
- package/lib/types/index.js +3 -0
- package/lib/types/local-transcribe.d.ts +171 -0
- package/lib/types/local-transcribe.js +473 -0
- package/lib/types/media-host.d.ts +91 -0
- package/lib/types/media-host.js +230 -0
- package/lib/types/media.d.ts +100 -0
- package/lib/types/media.js +207 -0
- package/lib/types/notes-types.d.ts +158 -0
- package/lib/types/notes-types.js +8 -0
- package/lib/types/notes.d.ts +213 -0
- package/lib/types/notes.js +718 -0
- package/lib/types/polish.d.ts +41 -0
- package/lib/types/polish.js +136 -0
- package/lib/types/remote.d.ts +118 -0
- package/lib/types/remote.js +151 -1
- package/lib/types/service.d.ts +71 -1
- package/lib/types/service.js +280 -59
- package/lib/types/skill.d.ts +20 -0
- package/lib/types/skill.js +78 -0
- package/lib/types/store.js +30 -8
- package/lib/types/tool.d.ts +23 -0
- package/lib/types/tool.js +40 -0
- package/lib/types/tools.d.ts +69 -0
- package/lib/types/tools.js +400 -0
- package/lib/types/types.d.ts +87 -0
- package/lib/types/types.js +66 -0
- package/lib/types/xiaoyuzhou.d.ts +43 -0
- package/lib/types/xiaoyuzhou.js +134 -0
- package/lib/types/ytdlp.d.ts +111 -0
- package/lib/types/ytdlp.js +269 -0
- package/package.json +29 -20
- package/lib/invariant.js +0 -38
- package/lib/types/invariant.d.ts +0 -29
- package/lib/types/invariant.js +0 -38
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Generated by scripts/sync-icon-artwork.mts from @deepseek-ai/dsh-client-ui-primitives
|
|
3
|
-
* (v0.1
|
|
3
|
+
* (v0.2.1-rc.1, harness 1600d8a1e1) — do not edit by hand. The 0.1.5 and rc.1 host lines
|
|
4
4
|
* share no icon export name, so the rc.1 artwork is inlined here: pure SVG,
|
|
5
5
|
* no host runtime identity, identical on every line. Re-run the generator
|
|
6
6
|
* after adding an icon import or bumping the harness checkout.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
export const IconChevronDownOutlineMedium = ({ size = 14, className }) => (_jsx("svg", { width: size, height: size, className: className, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", strokeWidth: 1.3, children: _jsx("path", { d: "M4 6L7.29289 9.29289C7.68342 9.68342 8.31658 9.68342 8.70711 9.29289L12 6", stroke: "currentColor" }) }));
|
|
3
3
|
export const IconChevronLeftOutlineMedium = ({ size = 14, className }) => (_jsx("svg", { width: size, height: size, className: className, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", strokeWidth: 1.3, children: _jsx("path", { d: "M10 4L6.70711 7.29289C6.31658 7.68342 6.31658 8.31658 6.70711 8.70711L10 12", stroke: "currentColor" }) }));
|
|
4
|
-
export const IconClockOutlineMedium = ({ size = 16, className }) => (_jsxs("svg", { width: size, height: size, className: className, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", strokeWidth: 1.3, children: [_jsx("path", { d: "M8
|
|
4
|
+
export const IconClockOutlineMedium = ({ size = 16, className }) => (_jsxs("svg", { width: size, height: size, className: className, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", strokeWidth: 1.3, children: [_jsx("path", { d: "M8 14C11.3137 14 14 11.3137 14 8C14 4.68629 11.3137 2 8 2C4.68629 2 2 4.68629 2 8C2 11.3137 4.68629 14 8 14Z", stroke: "currentColor" }), _jsx("path", { d: "M8 4.31V8.46L11 10.08", stroke: "currentColor" })] }));
|
|
5
5
|
export const IconCopyOutlineMedium = ({ size = 16, className }) => (_jsxs("svg", { width: size, height: size, className: className, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", strokeWidth: 1.3, children: [_jsx("rect", { x: "1.52075", y: "4.07373", width: "10.3932", height: "10.3932", rx: "2", stroke: "currentColor" }), _jsx("path", { d: "M11.9792 1.53296C13.36 1.53296 14.4792 2.65225 14.4792 4.03296V9.42847C14.4792 10.3756 13.9521 11.1987 13.1755 11.6228V10.3298C13.3652 10.0787 13.4792 9.7674 13.4792 9.42847V4.03296C13.4792 3.20453 12.8077 2.53296 11.9792 2.53296H6.58374C6.27966 2.53301 5.99684 2.6235 5.7605 2.77905H4.42358C4.85652 2.03463 5.66056 1.53304 6.58374 1.53296H11.9792Z", fill: "currentColor" })] }));
|
|
6
6
|
export const IconGlobeOutlineMedium = ({ size = 14, className }) => (_jsxs("svg", { width: size, height: size, className: className, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", strokeWidth: 1.3, children: [_jsx("path", { d: "M7.99986 14.0887C11.3626 14.0887 14.0886 11.3627 14.0886 7.99998C14.0886 4.63727 11.3626 1.91125 7.99986 1.91125C4.63715 1.91125 1.91113 4.63727 1.91113 7.99998C1.91113 11.3627 4.63715 14.0887 7.99986 14.0887Z", stroke: "currentColor" }), _jsx("path", { d: "M2.34619 8H13.6538", stroke: "currentColor", strokeLinecap: "square" }), _jsx("path", { d: "M7.99976 14.0889C9.23509 14.0889 10.1743 11.3629 10.1743 8.00006C10.1743 4.63739 9.23509 1.91138 7.99976 1.91138", stroke: "currentColor" }), _jsx("path", { d: "M7.99973 14.0889C6.76445 14.0889 5.8252 11.3629 5.8252 8.00006C5.8252 4.63739 6.76445 1.91138 7.99973 1.91138", stroke: "currentColor" })] }));
|
|
7
7
|
export const IconPlusOutlineMedium = ({ size = 16, className }) => (_jsxs("svg", { width: size, height: size, className: className, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", strokeWidth: 1.3, children: [_jsx("path", { d: "M8 2V14", stroke: "currentColor" }), _jsx("path", { d: "M2 8H14", stroke: "currentColor" })] }));
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import readerRemote from '@khorsheed/dsh-reader/remote';
|
|
2
2
|
import { extractArticle } from "./extract-article.js";
|
|
3
3
|
import { translationHash } from "./translate.js";
|
|
4
|
+
import { noteTargetForSelection } from "./notes.js";
|
|
5
|
+
import { ReaderTabVisibility, RegistrationToggle } from "./preset-visibility.js";
|
|
4
6
|
import { READER_TAB_ID, readerDefinition } from "./definition.js";
|
|
5
7
|
import { ReaderPane } from "./ReaderPane.js";
|
|
6
8
|
import { createReaderStore } from "./store.js";
|
|
@@ -13,6 +15,10 @@ export { READER_KIND, READER_TAB_ID } from "./definition.js";
|
|
|
13
15
|
* session scope, and the session id alone is not enough to reach it).
|
|
14
16
|
*/
|
|
15
17
|
export const inject = ['slots', 'remote', 'locale', 'sidebarRightTabs', 'sessions'];
|
|
18
|
+
function mainSessionId(list) {
|
|
19
|
+
const view = list;
|
|
20
|
+
return Object.values(view.byId).find(s => (s.retainedBy?.mainView ?? 0) > 0)?.id ?? view.current;
|
|
21
|
+
}
|
|
16
22
|
/**
|
|
17
23
|
* Client plugin body: mount the Remote, register the dictionaries and the
|
|
18
24
|
* sidebar tab, and return the disposer.
|
|
@@ -96,8 +102,13 @@ export async function apply(ctx) {
|
|
|
96
102
|
* The split is the host/browser boundary: the host owns the network (its
|
|
97
103
|
* sanctioned egress seam), this process owns the DOM, and neither can do the
|
|
98
104
|
* other's half — so the view calls this one function and both halves happen.
|
|
105
|
+
* `onPhase` marks the legs for the pane's progress line; the extracting leg
|
|
106
|
+
* is preceded by one macrotask so the phase actually PAINTS — the extraction
|
|
107
|
+
* of a long article is a synchronous second the renderer would otherwise
|
|
108
|
+
* spend before the reader ever saw the word.
|
|
99
109
|
*/
|
|
100
|
-
const fetchEntryBody = async (entryId, url) => {
|
|
110
|
+
const fetchEntryBody = async (entryId, url, onPhase) => {
|
|
111
|
+
onPhase?.('downloading');
|
|
101
112
|
const fetched = await remote.fetchEntryBody({ entryId, url });
|
|
102
113
|
if (!fetched.ok) {
|
|
103
114
|
return { entryId, cached: false, fresh: false, fromFeed: false, error: fetched.error.message };
|
|
@@ -106,6 +117,8 @@ export async function apply(ctx) {
|
|
|
106
117
|
if (value.raw === undefined || value.url === undefined) {
|
|
107
118
|
return { entryId, cached: false, fresh: false, fromFeed: false, error: value.error ?? 'fetch-failed' };
|
|
108
119
|
}
|
|
120
|
+
onPhase?.('extracting');
|
|
121
|
+
await new Promise(resolve => setTimeout(resolve, 0));
|
|
109
122
|
const extracted = extractArticle(value.raw, value.url);
|
|
110
123
|
if (!extracted.ok) {
|
|
111
124
|
return { entryId, cached: false, fresh: false, fromFeed: false, error: extracted.error };
|
|
@@ -114,6 +127,7 @@ export async function apply(ctx) {
|
|
|
114
127
|
...(extracted.title === undefined ? {} : { title: extracted.title }),
|
|
115
128
|
...(extracted.excerpt === undefined ? {} : { excerpt: extracted.excerpt }),
|
|
116
129
|
};
|
|
130
|
+
onPhase?.('storing');
|
|
117
131
|
const stored = await remote.storeEntryBody({
|
|
118
132
|
entryId,
|
|
119
133
|
url: value.url,
|
|
@@ -190,7 +204,47 @@ export async function apply(ctx) {
|
|
|
190
204
|
const capture = ctx.get('remote.capture');
|
|
191
205
|
return typeof capture?.render === 'function' ? capture : undefined;
|
|
192
206
|
},
|
|
207
|
+
entryNotes: entryId => remote.entryNotes({ entryId }),
|
|
208
|
+
noteCounts: () => remote.noteCounts(),
|
|
209
|
+
addNote: request => remote.addNote(request),
|
|
210
|
+
updateNote: request => remote.updateNote(request),
|
|
211
|
+
deleteNote: request => remote.deleteNote(request),
|
|
212
|
+
addReply: request => remote.addReply(request),
|
|
213
|
+
editReply: request => remote.editReply(request),
|
|
214
|
+
deleteDiscussion: request => remote.deleteDiscussion(request),
|
|
215
|
+
markSynced: request => remote.markSynced(request),
|
|
216
|
+
// The canvas's inbox (its client half provides `ctx.canvasInbox`), probed
|
|
217
|
+
// per gesture: without the canvas the sync gesture simply is not offered.
|
|
218
|
+
canvasInbox: () => {
|
|
219
|
+
const inbox = ctx.get('canvasInbox');
|
|
220
|
+
return typeof inbox?.addCard === 'function' && typeof inbox.listCanvases === 'function' ? inbox : undefined;
|
|
221
|
+
},
|
|
222
|
+
recordDiscussion: request => remote.recordDiscussion(request),
|
|
223
|
+
snapshotEntry: request => remote.snapshotEntry(request),
|
|
224
|
+
mediaTranscript: request => remote.mediaTranscript(request),
|
|
225
|
+
startLocalTranscript: request => remote.startLocalTranscript(request),
|
|
226
|
+
localTranscript: request => remote.localTranscript(request),
|
|
227
|
+
cancelLocalTranscript: request => remote.cancelLocalTranscript(request),
|
|
228
|
+
mediaStates: request => remote.mediaStates(request),
|
|
229
|
+
speakerNames: request => remote.speakerNames(request),
|
|
230
|
+
polish: request => remote.polish(request),
|
|
231
|
+
setPolishOff: request => remote.setPolishOff(request),
|
|
232
|
+
nameSpeaker: request => remote.nameSpeaker(request),
|
|
233
|
+
canOpenSession: () => workspaceNav()?.openSession !== undefined,
|
|
234
|
+
openSession: target => {
|
|
235
|
+
try {
|
|
236
|
+
workspaceNav()?.openSession?.(target);
|
|
237
|
+
}
|
|
238
|
+
catch (error) {
|
|
239
|
+
ctx.logger.warn('reader: openSession failed', error);
|
|
240
|
+
}
|
|
241
|
+
},
|
|
193
242
|
});
|
|
243
|
+
/**
|
|
244
|
+
* ui-workspace's navigation face, probed per call (the canvas / datasets
|
|
245
|
+
* precedent): a composition without it simply has no 「回到会话」.
|
|
246
|
+
*/
|
|
247
|
+
const workspaceNav = () => ctx.get('uiWorkspace');
|
|
194
248
|
/** The conversation input for a session, when the composition has one. */
|
|
195
249
|
const inputFor = (sessionId) => {
|
|
196
250
|
const scope = ctx.get('sessions')?.scope(sessionId);
|
|
@@ -205,10 +259,35 @@ export async function apply(ctx) {
|
|
|
205
259
|
const setDraft = (sessionId, merged) => {
|
|
206
260
|
inputFor(sessionId)?.setDraft(merged);
|
|
207
261
|
};
|
|
262
|
+
// 「记笔记」in the quote plugin's selection menu (its `ctx.quoteActions`
|
|
263
|
+
// registry). Probed, never injected: without quote the row simply does not
|
|
264
|
+
// exist and the pane's own 「记笔记」 button is the way in. The row shows only
|
|
265
|
+
// while the selection sits inside a reader article; it then opens THAT
|
|
266
|
+
// pane's note sheet.
|
|
267
|
+
const quoteActions = ctx.get('quoteActions');
|
|
268
|
+
if (quoteActions !== undefined && typeof quoteActions.registerAction === 'function') {
|
|
269
|
+
ctx.effect(() => quoteActions.registerAction({
|
|
270
|
+
id: 'reader.note',
|
|
271
|
+
label: () => t('notes.take'),
|
|
272
|
+
available: () => noteTargetForSelection() !== undefined,
|
|
273
|
+
run: () => { noteTargetForSelection()?.start(); },
|
|
274
|
+
}), 'reader: quote action');
|
|
275
|
+
}
|
|
208
276
|
// Two-stage right-Sidebar registration: the type into the registry, the body
|
|
209
277
|
// into the keyed pane seat under the type's id. Both ride `ctx.effect` so a
|
|
210
278
|
// reload or unload removes them.
|
|
211
|
-
|
|
279
|
+
// The tab type registers exactly while the current session can reach the
|
|
280
|
+
// reader tools (preset-visibility.ts): a root-mounted `./tool` row (a
|
|
281
|
+
// standalone install) or the session's preset naming it (the learning and
|
|
282
|
+
// writing mode packs). Every unreadable path fails open.
|
|
283
|
+
const pluginInventory = ctx.get('remote.pluginInventory');
|
|
284
|
+
const tabVisibility = new ReaderTabVisibility(ctx, pluginInventory);
|
|
285
|
+
ctx.effect(() => {
|
|
286
|
+
const toggle = new RegistrationToggle(() => ctx.sidebarRightTabs.register(readerDefinition(t)), () => tabVisibility.show(mainSessionId(ctx.sessions.list.getSnapshot())));
|
|
287
|
+
toggle.setReady(true);
|
|
288
|
+
const unsubscribe = tabVisibility.subscribe(() => { toggle.sync(); });
|
|
289
|
+
return () => { unsubscribe(); toggle.setReady(false); };
|
|
290
|
+
}, 'reader: tab type visibility');
|
|
212
291
|
ctx.effect(() => ctx.slots.inject('sidebar.right.pane.tab', () => ctx.slots.register({
|
|
213
292
|
name: 'sidebar.right.pane.tab',
|
|
214
293
|
key: READER_TAB_ID,
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
export declare const NS = "reader";
|
|
15
15
|
/** The inspiration space's dictionary key set (the source of truth for both locales). */
|
|
16
|
-
export type ReaderKey = 'tab.label' | 'tab.subtitle' | 'guide.description' | 'filter.today' | 'filter.all' | 'filter.unreadOnly' | 'filter.unreadOn' | 'filter.readState' | 'filter.bySource' | 'filter.byTag' | 'action.filter' | 'filter.searchSource' | 'filter.noSourceMatch' | 'filter.byKind' | 'filter.deleteTag' | 'filter.hideDupes' | 'dedupe.badge' | 'dedupe.title' | 'action.translate' | 'translate.view' | 'translate.onlyTranslation' | 'translate.bilingual' | 'translate.onlyOriginal' | 'translate.retry' | 'translate.tip' | 'translate.preparing' | 'translate.working' | 'translate.local' | 'translate.failed' | 'translate.dismiss' | 'translate.nothing' | 'translate.failedAll' | 'translate.unsupported' | 'action.fetchBody' | 'detail.bodyStale' | 'action.more' | 'action.addTag' | 'tag.title' | 'tag.placeholder' | 'tag.hint' | 'tag.create' | 'tag.empty' | 'search.placeholder' | 'sort.title' | 'sort.newest' | 'sort.oldest' | 'sort.source' | 'action.refresh' | 'action.refreshOne' | 'action.add' | 'action.back' | 'action.copyLink' | 'action.openExternal' | 'action.
|
|
16
|
+
export type ReaderKey = 'tab.label' | 'tab.subtitle' | 'guide.description' | 'filter.today' | 'filter.all' | 'filter.unreadOnly' | 'filter.unreadOn' | 'filter.readState' | 'filter.bySource' | 'filter.byTag' | 'action.filter' | 'filter.searchSource' | 'filter.noSourceMatch' | 'filter.byKind' | 'filter.deleteTag' | 'filter.hideDupes' | 'dedupe.badge' | 'dedupe.title' | 'action.translate' | 'translate.view' | 'translate.onlyTranslation' | 'translate.bilingual' | 'translate.onlyOriginal' | 'translate.retry' | 'translate.tip' | 'translate.preparing' | 'translate.working' | 'translate.local' | 'translate.stored' | 'translate.failed' | 'translate.dismiss' | 'translate.nothing' | 'translate.failedAll' | 'translate.unsupported' | 'action.fetchBody' | 'detail.bodyStale' | 'action.more' | 'action.addTag' | 'translate.wallOff' | 'chip.unread' | 'chip.more' | 'state.incompleteCount' | 'action.showList' | 'action.foldList' | 'tag.title' | 'tag.placeholder' | 'tag.hint' | 'tag.create' | 'tag.empty' | 'search.placeholder' | 'sort.title' | 'sort.newest' | 'sort.oldest' | 'sort.source' | 'action.refresh' | 'action.refreshOne' | 'action.add' | 'action.back' | 'action.copyLink' | 'action.openExternal' | 'action.manage' | 'action.recent' | 'recent.title' | 'recent.help' | 'recent.empty' | 'recent.clearTitle' | 'recent.sourceGone' | 'action.remove' | 'action.submit' | 'action.done' | 'action.cancel' | 'action.clearSearch' | 'add.title' | 'add.help' | 'add.placeholder' | 'verdict.subscribed' | 'verdict.savedLink' | 'verdict.savedLinkNoPreview' | 'verdict.duplicate' | 'verdict.invalidUrl' | 'verdict.unsupportedContent' | 'verdict.fetchFailed' | 'verdict.willRender' | 'preview.blocked' | 'preview.login' | 'preview.unsupportedType' | 'preview.redirected' | 'preview.empty' | 'preview.unreachable' | 'preview.http' | 'preview.unreadable' | 'detail.linkOnlyBadge' | 'detail.removeLink' | 'detail.fetchingBody' | 'detail.phase.downloading' | 'detail.phase.extracting' | 'detail.phase.storing' | 'detail.fetchElapsed' | 'add.busy' | 'detail.refetch' | 'detail.refetching' | 'detail.refetchTitle' | 'state.loading' | 'state.emptyTitle' | 'state.emptyBody' | 'state.noMatch' | 'state.fetching' | 'state.incomplete' | 'state.error' | 'state.stale' | 'state.emptyWall' | 'state.incompleteReason' | 'state.matches' | 'detail.scriptFigures' | 'fetch.none' | 'fetch.fetching' | 'fetch.raw' | 'fetch.ready' | 'fetch.failed' | 'fetch.noneTitle' | 'fetch.readyTitle' | 'fetch.failedTitle' | 'fetch.failedOpenTitle' | 'fetch.failedFinalTitle' | 'detail.renderFetch' | 'detail.rendering' | 'detail.renderingWall' | 'detail.renderFailed' | 'sources.title' | 'sources.count' | 'sources.empty' | 'sources.help' | 'sources.enabled' | 'sources.disabled' | 'sources.time' | 'sources.timeHelp' | 'sources.failed' | 'sources.items' | 'sources.never' | 'sources.cardHint' | 'sources.name' | 'sources.url' | 'sources.cache' | 'sources.cacheHelp' | 'sources.cacheHours' | 'sources.cacheForever' | 'sources.blocked' | 'sources.storageBodies' | 'sources.storageBodiesUsage' | 'sources.storageBodiesHelp' | 'sources.storageTranslations' | 'sources.storageTranslationsUsage' | 'sources.storageTranslationsHelp' | 'sources.translationBudget' | 'sources.translationBudgetHelp' | 'sources.clearTranslations' | 'sources.clearTranslationsConfirm' | 'sources.unreachable' | 'sources.httpError' | 'detail.fetchFailed' | 'sources.kindRss' | 'sources.kindLink' | 'sources.kindFilter' | 'sources.noMatch' | 'sources.sortAdded' | 'sources.sortName' | 'sources.sortFetched' | 'state.backfilling' | 'detail.filledIn' | 'detail.filledInBadge' | 'action.pause' | 'action.resume' | 'detail.incomplete' | 'detail.readOriginal' | 'detail.extractFailed' | 'detail.summaryOnly' | 'detail.resolvedFrom' | 'detail.alsoFrom' | 'foot.refreshedAt' | 'foot.scheduled' | 'foot.never' | 'foot.unread' | 'foot.refreshing' | 'foot.deduped' | 'quote.copied' | 'quote.copyFailed' | 'quote.quoted' | 'add.fetching' | 'notes.checkShort' | 'polish.action' | 'polish.draft' | 'polish.continueDraft' | 'polish.tag' | 'polish.tagTitle' | 'polish.running' | 'polish.stalled' | 'polish.continue' | 'polish.done' | 'polish.showMachine' | 'polish.showPolish' | 'polish.awaiting' | 'when.justNow' | 'when.minutes' | 'when.hours' | 'when.yesterday' | 'when.days' | 'notes.tabArticle' | 'notes.tabNotes' | 'notes.tabsLabel' | 'notes.take' | 'notes.sheetTitle' | 'notes.excerpt' | 'notes.commentPlaceholder' | 'notes.commentOptional' | 'notes.save' | 'notes.saveFailed' | 'notes.empty' | 'notes.excerpts' | 'notes.discussions' | 'notes.noDiscussions' | 'notes.select' | 'notes.selectDone' | 'notes.selected' | 'notes.discuss' | 'notes.discussAll' | 'notes.edit' | 'notes.delete' | 'notes.deleteConfirm' | 'notes.notFound' | 'notes.inTranslation' | 'notes.discussedIn' | 'notes.draftHeading' | 'notes.draftComment' | 'notes.draftHint' | 'notes.untitledSession' | 'notes.badge' | 'notes.filter' | 'notes.replyAdd' | 'notes.replyAgent' | 'notes.replyUser' | 'notes.replyEdited' | 'notes.replyPlaceholder' | 'notes.replyEdit' | 'notes.replyRemove' | 'notes.discussionNotes' | 'notes.kindDiscussion' | 'notes.kindCheck' | 'notes.noDiscussionNotes' | 'notes.pointsCheck' | 'notes.pointsDiscussion' | 'notes.check' | 'notes.checkLead' | 'notes.checkDraft' | 'notes.checkDraftNotes' | 'notes.backToSession' | 'media.collapse' | 'media.expand' | 'media.noFollow' | 'media.captions' | 'media.sourcePlatform' | 'media.loading' | 'media.noCaptions' | 'media.noCaptionsAudio' | 'media.failed' | 'media.kindVideo' | 'media.kindAudio' | 'media.sourceLocal' | 'media.localFetching' | 'media.localQueued' | 'media.localQueuedAhead' | 'media.localRunning' | 'media.localEta' | 'media.cardPlatform' | 'media.cardLocal' | 'media.cardQueued' | 'media.cardQueuedAhead' | 'media.cardRunning' | 'media.cardFailed' | 'media.cardNone' | 'media.cardNoneAuto' | 'media.play' | 'media.pause' | 'media.startedAt' | 'media.tabTranscript' | 'media.autoTranslate' | 'media.translateAfter' | 'media.chipTitle' | 'media.chipTitleReload' | 'media.timeHint' | 'media.timeHintAudio' | 'media.timeHintOk' | 'media.backToNow' | 'media.speakerDefault' | 'media.speakerHint' | 'media.speakerRename' | 'media.speakersRunning' | 'media.localStop' | 'media.localStopped' | 'media.localFailed' | 'media.localRetry' | 'media.localModels' | 'media.localModelsGo' | 'notes.sync' | 'notes.syncTitle' | 'notes.syncLast' | 'notes.syncCards' | 'notes.syncReplies' | 'notes.syncKind' | 'notes.syncDone' | 'notes.syncOpen' | 'notes.syncFailed' | 'notes.syncedIn' | 'notes.syncNoCanvas' | 'notes.syncConclusion' | 'notes.syncOriginal' | 'notes.syncRun';
|
|
17
17
|
export declare const en: {
|
|
18
18
|
'tab.label': string;
|
|
19
19
|
'tab.subtitle': string;
|
|
@@ -27,6 +27,12 @@ export declare const en: {
|
|
|
27
27
|
'action.filter': string;
|
|
28
28
|
'action.fetchBody': string;
|
|
29
29
|
'action.more': string;
|
|
30
|
+
'translate.wallOff': string;
|
|
31
|
+
'chip.unread': string;
|
|
32
|
+
'chip.more': string;
|
|
33
|
+
'state.incompleteCount': string;
|
|
34
|
+
'action.showList': string;
|
|
35
|
+
'action.foldList': string;
|
|
30
36
|
'action.addTag': string;
|
|
31
37
|
'action.translate': string;
|
|
32
38
|
'translate.view': string;
|
|
@@ -38,6 +44,7 @@ export declare const en: {
|
|
|
38
44
|
'translate.preparing': string;
|
|
39
45
|
'translate.working': string;
|
|
40
46
|
'translate.local': string;
|
|
47
|
+
'translate.stored': string;
|
|
41
48
|
'translate.failed': string;
|
|
42
49
|
'translate.failedAll': string;
|
|
43
50
|
'translate.nothing': string;
|
|
@@ -68,7 +75,6 @@ export declare const en: {
|
|
|
68
75
|
'action.back': string;
|
|
69
76
|
'action.copyLink': string;
|
|
70
77
|
'action.openExternal': string;
|
|
71
|
-
'action.quote': string;
|
|
72
78
|
'action.manage': string;
|
|
73
79
|
'action.recent': string;
|
|
74
80
|
'recent.title': string;
|
|
@@ -94,6 +100,7 @@ export declare const en: {
|
|
|
94
100
|
'verdict.unsupportedContent': string;
|
|
95
101
|
'verdict.fetchFailed': string;
|
|
96
102
|
'preview.blocked': string;
|
|
103
|
+
'verdict.willRender': string;
|
|
97
104
|
'preview.login': string;
|
|
98
105
|
'preview.unsupportedType': string;
|
|
99
106
|
'preview.redirected': string;
|
|
@@ -103,6 +110,11 @@ export declare const en: {
|
|
|
103
110
|
'preview.unreadable': string;
|
|
104
111
|
'detail.linkOnlyBadge': string;
|
|
105
112
|
'detail.fetchingBody': string;
|
|
113
|
+
'detail.phase.downloading': string;
|
|
114
|
+
'detail.phase.extracting': string;
|
|
115
|
+
'detail.phase.storing': string;
|
|
116
|
+
'detail.fetchElapsed': string;
|
|
117
|
+
'add.busy': string;
|
|
106
118
|
'detail.refetch': string;
|
|
107
119
|
'detail.refetching': string;
|
|
108
120
|
'detail.refetchTitle': string;
|
|
@@ -163,8 +175,6 @@ export declare const en: {
|
|
|
163
175
|
'detail.summaryOnly': string;
|
|
164
176
|
'detail.resolvedFrom': string;
|
|
165
177
|
'detail.alsoFrom': string;
|
|
166
|
-
'detail.composerLabel': string;
|
|
167
|
-
'detail.composerEmpty': string;
|
|
168
178
|
'foot.refreshedAt': string;
|
|
169
179
|
'foot.scheduled': string;
|
|
170
180
|
'foot.never': string;
|
|
@@ -186,17 +196,141 @@ export declare const en: {
|
|
|
186
196
|
'fetch.failedOpenTitle': string;
|
|
187
197
|
'fetch.failedFinalTitle': string;
|
|
188
198
|
'detail.renderFetch': string;
|
|
199
|
+
'detail.renderingWall': string;
|
|
200
|
+
'detail.renderFailed': string;
|
|
189
201
|
'detail.rendering': string;
|
|
190
202
|
'quote.copied': string;
|
|
191
203
|
'quote.copyFailed': string;
|
|
192
204
|
'quote.quoted': string;
|
|
193
|
-
'
|
|
194
|
-
'
|
|
205
|
+
'add.fetching': string;
|
|
206
|
+
'notes.checkShort': string;
|
|
207
|
+
'polish.action': string;
|
|
208
|
+
'polish.draft': string;
|
|
209
|
+
'polish.continueDraft': string;
|
|
210
|
+
'polish.tag': string;
|
|
211
|
+
'polish.tagTitle': string;
|
|
212
|
+
'polish.running': string;
|
|
213
|
+
'polish.stalled': string;
|
|
214
|
+
'polish.continue': string;
|
|
215
|
+
'polish.done': string;
|
|
216
|
+
'polish.showMachine': string;
|
|
217
|
+
'polish.showPolish': string;
|
|
218
|
+
'polish.awaiting': string;
|
|
195
219
|
'when.justNow': string;
|
|
196
220
|
'when.minutes': string;
|
|
197
221
|
'when.hours': string;
|
|
198
222
|
'when.yesterday': string;
|
|
199
223
|
'when.days': string;
|
|
224
|
+
'notes.tabArticle': string;
|
|
225
|
+
'notes.tabNotes': string;
|
|
226
|
+
'notes.tabsLabel': string;
|
|
227
|
+
'notes.take': string;
|
|
228
|
+
'notes.sheetTitle': string;
|
|
229
|
+
'notes.excerpt': string;
|
|
230
|
+
'notes.commentPlaceholder': string;
|
|
231
|
+
'notes.commentOptional': string;
|
|
232
|
+
'notes.save': string;
|
|
233
|
+
'notes.saveFailed': string;
|
|
234
|
+
'notes.empty': string;
|
|
235
|
+
'notes.excerpts': string;
|
|
236
|
+
'notes.discussions': string;
|
|
237
|
+
'notes.noDiscussions': string;
|
|
238
|
+
'notes.select': string;
|
|
239
|
+
'notes.selectDone': string;
|
|
240
|
+
'notes.selected': string;
|
|
241
|
+
'notes.discuss': string;
|
|
242
|
+
'notes.discussAll': string;
|
|
243
|
+
'notes.edit': string;
|
|
244
|
+
'notes.delete': string;
|
|
245
|
+
'notes.deleteConfirm': string;
|
|
246
|
+
'notes.notFound': string;
|
|
247
|
+
'notes.inTranslation': string;
|
|
248
|
+
'notes.discussedIn': string;
|
|
249
|
+
'notes.draftHeading': string;
|
|
250
|
+
'notes.draftComment': string;
|
|
251
|
+
'notes.draftHint': string;
|
|
252
|
+
'notes.untitledSession': string;
|
|
253
|
+
'notes.badge': string;
|
|
254
|
+
'notes.filter': string;
|
|
255
|
+
'notes.replyAdd': string;
|
|
256
|
+
'notes.replyAgent': string;
|
|
257
|
+
'notes.replyUser': string;
|
|
258
|
+
'notes.replyEdited': string;
|
|
259
|
+
'notes.replyPlaceholder': string;
|
|
260
|
+
'notes.replyEdit': string;
|
|
261
|
+
'notes.replyRemove': string;
|
|
262
|
+
'notes.discussionNotes': string;
|
|
263
|
+
'notes.kindDiscussion': string;
|
|
264
|
+
'notes.kindCheck': string;
|
|
265
|
+
'notes.noDiscussionNotes': string;
|
|
266
|
+
'notes.pointsCheck': string;
|
|
267
|
+
'notes.pointsDiscussion': string;
|
|
268
|
+
'notes.check': string;
|
|
269
|
+
'notes.checkLead': string;
|
|
270
|
+
'notes.checkDraft': string;
|
|
271
|
+
'notes.checkDraftNotes': string;
|
|
272
|
+
'notes.backToSession': string;
|
|
273
|
+
'media.collapse': string;
|
|
274
|
+
'media.noFollow': string;
|
|
275
|
+
'media.expand': string;
|
|
276
|
+
'media.captions': string;
|
|
277
|
+
'media.sourcePlatform': string;
|
|
278
|
+
'media.loading': string;
|
|
279
|
+
'media.noCaptions': string;
|
|
280
|
+
'media.noCaptionsAudio': string;
|
|
281
|
+
'media.sourceLocal': string;
|
|
282
|
+
'media.play': string;
|
|
283
|
+
'media.pause': string;
|
|
284
|
+
'media.startedAt': string;
|
|
285
|
+
'media.tabTranscript': string;
|
|
286
|
+
'media.autoTranslate': string;
|
|
287
|
+
'media.translateAfter': string;
|
|
288
|
+
'media.chipTitle': string;
|
|
289
|
+
'media.chipTitleReload': string;
|
|
290
|
+
'media.timeHint': string;
|
|
291
|
+
'media.timeHintAudio': string;
|
|
292
|
+
'media.timeHintOk': string;
|
|
293
|
+
'media.backToNow': string;
|
|
294
|
+
'media.speakerDefault': string;
|
|
295
|
+
'media.speakerHint': string;
|
|
296
|
+
'media.speakerRename': string;
|
|
297
|
+
'media.speakersRunning': string;
|
|
298
|
+
'media.cardPlatform': string;
|
|
299
|
+
'media.cardLocal': string;
|
|
300
|
+
'media.cardQueued': string;
|
|
301
|
+
'media.cardQueuedAhead': string;
|
|
302
|
+
'media.cardRunning': string;
|
|
303
|
+
'media.cardFailed': string;
|
|
304
|
+
'media.cardNone': string;
|
|
305
|
+
'media.cardNoneAuto': string;
|
|
306
|
+
'media.localFetching': string;
|
|
307
|
+
'media.localQueued': string;
|
|
308
|
+
'media.localQueuedAhead': string;
|
|
309
|
+
'media.localRunning': string;
|
|
310
|
+
'media.localEta': string;
|
|
311
|
+
'media.localStop': string;
|
|
312
|
+
'media.localStopped': string;
|
|
313
|
+
'media.localFailed': string;
|
|
314
|
+
'media.localRetry': string;
|
|
315
|
+
'media.localModels': string;
|
|
316
|
+
'media.localModelsGo': string;
|
|
317
|
+
'media.failed': string;
|
|
318
|
+
'media.kindVideo': string;
|
|
319
|
+
'media.kindAudio': string;
|
|
320
|
+
'notes.sync': string;
|
|
321
|
+
'notes.syncTitle': string;
|
|
322
|
+
'notes.syncLast': string;
|
|
323
|
+
'notes.syncCards': string;
|
|
324
|
+
'notes.syncReplies': string;
|
|
325
|
+
'notes.syncKind': string;
|
|
326
|
+
'notes.syncDone': string;
|
|
327
|
+
'notes.syncOpen': string;
|
|
328
|
+
'notes.syncFailed': string;
|
|
329
|
+
'notes.syncedIn': string;
|
|
330
|
+
'notes.syncNoCanvas': string;
|
|
331
|
+
'notes.syncConclusion': string;
|
|
332
|
+
'notes.syncOriginal': string;
|
|
333
|
+
'notes.syncRun': string;
|
|
200
334
|
};
|
|
201
335
|
export declare const zh: {
|
|
202
336
|
'tab.label': string;
|
|
@@ -211,6 +345,12 @@ export declare const zh: {
|
|
|
211
345
|
'action.filter': string;
|
|
212
346
|
'action.fetchBody': string;
|
|
213
347
|
'action.more': string;
|
|
348
|
+
'translate.wallOff': string;
|
|
349
|
+
'chip.unread': string;
|
|
350
|
+
'chip.more': string;
|
|
351
|
+
'state.incompleteCount': string;
|
|
352
|
+
'action.showList': string;
|
|
353
|
+
'action.foldList': string;
|
|
214
354
|
'action.addTag': string;
|
|
215
355
|
'action.translate': string;
|
|
216
356
|
'translate.view': string;
|
|
@@ -222,6 +362,7 @@ export declare const zh: {
|
|
|
222
362
|
'translate.preparing': string;
|
|
223
363
|
'translate.working': string;
|
|
224
364
|
'translate.local': string;
|
|
365
|
+
'translate.stored': string;
|
|
225
366
|
'translate.failed': string;
|
|
226
367
|
'translate.failedAll': string;
|
|
227
368
|
'translate.nothing': string;
|
|
@@ -252,7 +393,6 @@ export declare const zh: {
|
|
|
252
393
|
'action.back': string;
|
|
253
394
|
'action.copyLink': string;
|
|
254
395
|
'action.openExternal': string;
|
|
255
|
-
'action.quote': string;
|
|
256
396
|
'action.manage': string;
|
|
257
397
|
'action.recent': string;
|
|
258
398
|
'recent.title': string;
|
|
@@ -278,6 +418,7 @@ export declare const zh: {
|
|
|
278
418
|
'verdict.unsupportedContent': string;
|
|
279
419
|
'verdict.fetchFailed': string;
|
|
280
420
|
'preview.blocked': string;
|
|
421
|
+
'verdict.willRender': string;
|
|
281
422
|
'preview.login': string;
|
|
282
423
|
'preview.unsupportedType': string;
|
|
283
424
|
'preview.redirected': string;
|
|
@@ -287,6 +428,11 @@ export declare const zh: {
|
|
|
287
428
|
'preview.unreadable': string;
|
|
288
429
|
'detail.linkOnlyBadge': string;
|
|
289
430
|
'detail.fetchingBody': string;
|
|
431
|
+
'detail.phase.downloading': string;
|
|
432
|
+
'detail.phase.extracting': string;
|
|
433
|
+
'detail.phase.storing': string;
|
|
434
|
+
'detail.fetchElapsed': string;
|
|
435
|
+
'add.busy': string;
|
|
290
436
|
'detail.refetch': string;
|
|
291
437
|
'detail.refetching': string;
|
|
292
438
|
'detail.refetchTitle': string;
|
|
@@ -347,8 +493,6 @@ export declare const zh: {
|
|
|
347
493
|
'detail.summaryOnly': string;
|
|
348
494
|
'detail.resolvedFrom': string;
|
|
349
495
|
'detail.alsoFrom': string;
|
|
350
|
-
'detail.composerLabel': string;
|
|
351
|
-
'detail.composerEmpty': string;
|
|
352
496
|
'foot.refreshedAt': string;
|
|
353
497
|
'foot.scheduled': string;
|
|
354
498
|
'foot.never': string;
|
|
@@ -370,17 +514,141 @@ export declare const zh: {
|
|
|
370
514
|
'fetch.failedOpenTitle': string;
|
|
371
515
|
'fetch.failedFinalTitle': string;
|
|
372
516
|
'detail.renderFetch': string;
|
|
517
|
+
'detail.renderingWall': string;
|
|
518
|
+
'detail.renderFailed': string;
|
|
373
519
|
'detail.rendering': string;
|
|
374
520
|
'quote.copied': string;
|
|
375
521
|
'quote.copyFailed': string;
|
|
376
522
|
'quote.quoted': string;
|
|
377
|
-
'
|
|
378
|
-
'
|
|
523
|
+
'add.fetching': string;
|
|
524
|
+
'notes.checkShort': string;
|
|
525
|
+
'polish.action': string;
|
|
526
|
+
'polish.draft': string;
|
|
527
|
+
'polish.continueDraft': string;
|
|
528
|
+
'polish.tag': string;
|
|
529
|
+
'polish.tagTitle': string;
|
|
530
|
+
'polish.running': string;
|
|
531
|
+
'polish.stalled': string;
|
|
532
|
+
'polish.continue': string;
|
|
533
|
+
'polish.done': string;
|
|
534
|
+
'polish.showMachine': string;
|
|
535
|
+
'polish.showPolish': string;
|
|
536
|
+
'polish.awaiting': string;
|
|
379
537
|
'when.justNow': string;
|
|
380
538
|
'when.minutes': string;
|
|
381
539
|
'when.hours': string;
|
|
382
540
|
'when.yesterday': string;
|
|
383
541
|
'when.days': string;
|
|
542
|
+
'notes.tabArticle': string;
|
|
543
|
+
'notes.tabNotes': string;
|
|
544
|
+
'notes.tabsLabel': string;
|
|
545
|
+
'notes.take': string;
|
|
546
|
+
'notes.sheetTitle': string;
|
|
547
|
+
'notes.excerpt': string;
|
|
548
|
+
'notes.commentPlaceholder': string;
|
|
549
|
+
'notes.commentOptional': string;
|
|
550
|
+
'notes.save': string;
|
|
551
|
+
'notes.saveFailed': string;
|
|
552
|
+
'notes.empty': string;
|
|
553
|
+
'notes.excerpts': string;
|
|
554
|
+
'notes.discussions': string;
|
|
555
|
+
'notes.noDiscussions': string;
|
|
556
|
+
'notes.select': string;
|
|
557
|
+
'notes.selectDone': string;
|
|
558
|
+
'notes.selected': string;
|
|
559
|
+
'notes.discuss': string;
|
|
560
|
+
'notes.discussAll': string;
|
|
561
|
+
'notes.edit': string;
|
|
562
|
+
'notes.delete': string;
|
|
563
|
+
'notes.deleteConfirm': string;
|
|
564
|
+
'notes.notFound': string;
|
|
565
|
+
'notes.inTranslation': string;
|
|
566
|
+
'notes.discussedIn': string;
|
|
567
|
+
'notes.draftHeading': string;
|
|
568
|
+
'notes.draftComment': string;
|
|
569
|
+
'notes.draftHint': string;
|
|
570
|
+
'notes.untitledSession': string;
|
|
571
|
+
'notes.badge': string;
|
|
572
|
+
'notes.filter': string;
|
|
573
|
+
'notes.replyAdd': string;
|
|
574
|
+
'notes.replyAgent': string;
|
|
575
|
+
'notes.replyUser': string;
|
|
576
|
+
'notes.replyEdited': string;
|
|
577
|
+
'notes.replyPlaceholder': string;
|
|
578
|
+
'notes.replyEdit': string;
|
|
579
|
+
'notes.replyRemove': string;
|
|
580
|
+
'notes.discussionNotes': string;
|
|
581
|
+
'notes.kindDiscussion': string;
|
|
582
|
+
'notes.kindCheck': string;
|
|
583
|
+
'notes.noDiscussionNotes': string;
|
|
584
|
+
'notes.pointsCheck': string;
|
|
585
|
+
'notes.pointsDiscussion': string;
|
|
586
|
+
'notes.check': string;
|
|
587
|
+
'notes.checkLead': string;
|
|
588
|
+
'notes.checkDraft': string;
|
|
589
|
+
'notes.checkDraftNotes': string;
|
|
590
|
+
'notes.backToSession': string;
|
|
591
|
+
'media.collapse': string;
|
|
592
|
+
'media.noFollow': string;
|
|
593
|
+
'media.expand': string;
|
|
594
|
+
'media.captions': string;
|
|
595
|
+
'media.sourcePlatform': string;
|
|
596
|
+
'media.loading': string;
|
|
597
|
+
'media.noCaptions': string;
|
|
598
|
+
'media.noCaptionsAudio': string;
|
|
599
|
+
'media.sourceLocal': string;
|
|
600
|
+
'media.play': string;
|
|
601
|
+
'media.pause': string;
|
|
602
|
+
'media.startedAt': string;
|
|
603
|
+
'media.tabTranscript': string;
|
|
604
|
+
'media.autoTranslate': string;
|
|
605
|
+
'media.translateAfter': string;
|
|
606
|
+
'media.chipTitle': string;
|
|
607
|
+
'media.chipTitleReload': string;
|
|
608
|
+
'media.timeHint': string;
|
|
609
|
+
'media.timeHintAudio': string;
|
|
610
|
+
'media.timeHintOk': string;
|
|
611
|
+
'media.backToNow': string;
|
|
612
|
+
'media.speakerDefault': string;
|
|
613
|
+
'media.speakerHint': string;
|
|
614
|
+
'media.speakerRename': string;
|
|
615
|
+
'media.speakersRunning': string;
|
|
616
|
+
'media.cardPlatform': string;
|
|
617
|
+
'media.cardLocal': string;
|
|
618
|
+
'media.cardQueued': string;
|
|
619
|
+
'media.cardQueuedAhead': string;
|
|
620
|
+
'media.cardRunning': string;
|
|
621
|
+
'media.cardFailed': string;
|
|
622
|
+
'media.cardNone': string;
|
|
623
|
+
'media.cardNoneAuto': string;
|
|
624
|
+
'media.localFetching': string;
|
|
625
|
+
'media.localQueued': string;
|
|
626
|
+
'media.localQueuedAhead': string;
|
|
627
|
+
'media.localRunning': string;
|
|
628
|
+
'media.localEta': string;
|
|
629
|
+
'media.localStop': string;
|
|
630
|
+
'media.localStopped': string;
|
|
631
|
+
'media.localFailed': string;
|
|
632
|
+
'media.localRetry': string;
|
|
633
|
+
'media.localModels': string;
|
|
634
|
+
'media.localModelsGo': string;
|
|
635
|
+
'media.failed': string;
|
|
636
|
+
'media.kindVideo': string;
|
|
637
|
+
'media.kindAudio': string;
|
|
638
|
+
'notes.sync': string;
|
|
639
|
+
'notes.syncTitle': string;
|
|
640
|
+
'notes.syncLast': string;
|
|
641
|
+
'notes.syncCards': string;
|
|
642
|
+
'notes.syncReplies': string;
|
|
643
|
+
'notes.syncKind': string;
|
|
644
|
+
'notes.syncDone': string;
|
|
645
|
+
'notes.syncOpen': string;
|
|
646
|
+
'notes.syncFailed': string;
|
|
647
|
+
'notes.syncedIn': string;
|
|
648
|
+
'notes.syncNoCanvas': string;
|
|
649
|
+
'notes.syncConclusion': string;
|
|
650
|
+
'notes.syncOriginal': string;
|
|
651
|
+
'notes.syncRun': string;
|
|
384
652
|
};
|
|
385
653
|
declare module '@deepseek-ai/dsh-client-ui-slots' {
|
|
386
654
|
interface LocaleNamespaceMap {
|