@deepseek-insight/dsi 0.5.38 → 0.6.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/.agents/skills/dsi-plugin-rack/SKILL.md +27 -0
- package/.agents/skills/dsi-plugin-rack/rack.mjs +237 -0
- package/README.md +27 -3
- package/bin/dsi.mjs +89 -2
- package/bin/lib/plugin-chain.mjs +86 -0
- package/build/client/_app/immutable/assets/{2.B3K-kE1m.css → 2.DEBHmc3y.css} +1 -1
- package/build/client/_app/immutable/chunks/BVBc9rJx.js +2 -0
- package/build/client/_app/immutable/chunks/BdHmBwz-.js +1 -0
- package/build/client/_app/immutable/chunks/{8isMKkmK.js → DNY2-FaC.js} +1 -1
- package/build/client/_app/immutable/chunks/oLHjdJ-M.js +1 -0
- package/build/client/_app/immutable/entry/{app.CpbSsqDG.js → app.C1j_PXOJ.js} +2 -2
- package/build/client/_app/immutable/entry/start.Dyarj9we.js +1 -0
- package/build/client/_app/immutable/nodes/{1.C4SBbU1i.js → 1.DB7DKw94.js} +1 -1
- package/build/client/_app/immutable/nodes/{2.C1u8HG5a.js → 2.D9qSqOKy.js} +195 -195
- package/build/client/_app/version.json +1 -1
- package/build/handler.js +4 -4
- package/build/index.js +4 -4
- package/build/server/chunks/chunks/engine.js-CrdWRSwf.js +97 -0
- package/build/server/chunks/chunks/{engine.js-BRoFbCnL.js → engine2.js-BRoFbCnL.js} +1 -1
- package/build/server/chunks/chunks/{internal.js-D0IzcQru.js → internal.js-Ca_6TJ1k.js} +2 -2
- package/build/server/chunks/chunks/{state.js-BeFSJ3AU.js → state.js-BrbF5k84.js} +2 -2
- package/build/server/chunks/entries/endpoints/api/plugins/apply/_server.ts.js-CpO--Jwf.js +125 -0
- package/build/server/chunks/entries/endpoints/api/plugins/reload/_server.ts.js-U8vRgx7E.js +34 -0
- package/build/server/chunks/entries/endpoints/api/plugins/snapshot/_server.ts.js-9Ezy2OeQ.js +36 -0
- package/build/server/chunks/entries/endpoints/api/skills/install/{_server.ts.js-DijnCqgt.js → _server.ts.js-DyzPF_Z5.js} +2 -2
- package/build/server/chunks/entries/endpoints/api/skills/reload/{_server.ts.js-Cqig6BdK.js → _server.ts.js-BUnCt45D.js} +2 -2
- package/build/server/chunks/entries/endpoints/api/skills/reload/cancel/{_server.ts.js-CGlFnmuI.js → _server.ts.js-DT52g6_a.js} +2 -2
- package/build/server/chunks/entries/endpoints/api/skills/snapshot/{_server.ts.js-p7P1CFjG.js → _server.ts.js-CaBD0w0v.js} +2 -2
- package/build/server/chunks/entries/endpoints/api/skills/uninstall/{_server.ts.js-h5IfIfov.js → _server.ts.js-D_NXkZEr.js} +2 -2
- package/build/server/chunks/entries/pages/{_error.svelte.js-C5-GtTAX.js → _error.svelte.js-C9GhKb8G.js} +3 -3
- package/build/server/chunks/entries/pages/{_page.svelte.js-DoOQ17mk.js → _page.svelte.js-6A1VYbL2.js} +1114 -104
- package/build/server/chunks/{handler-UO5maDaQ.js → handler-ChXGVK9Y.js} +3 -3
- package/build/server/chunks/{index.js-sK5zTj9E.js → index.js-5P_bGLRx.js} +2 -2
- package/build/server/chunks/{manifest.js-DdUlckhQ.js → manifest.js-B3ooI-FL.js} +30 -9
- package/build/server/chunks/nodes/1.js-Dcb4_Gzq.js +9 -0
- package/build/server/chunks/nodes/{2.js-ClaC6DDN.js → 2.js-C4WQL8rj.js} +4 -4
- package/package.json +1 -1
- package/template/.dsi/resources/plugins-reff.md +4 -0
- package/build/client/_app/immutable/chunks/DaJQaZs4.js +0 -1
- package/build/client/_app/immutable/chunks/vqHvFU33.js +0 -2
- package/build/client/_app/immutable/chunks/y7n0suOs.js +0 -1
- package/build/client/_app/immutable/entry/start.CNrTX-th.js +0 -1
- package/build/server/chunks/nodes/1.js-CKpJoUo-.js +0 -9
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as onDestroy, d as __exportAll } from '../../chunks/internal.js-
|
|
1
|
+
import { c as onDestroy, d as __exportAll } from '../../chunks/internal.js-Ca_6TJ1k.js';
|
|
2
2
|
import { V as head, y as derived, X as bind_props, W as escape_html, Y as attr, Z as attr_style, _ as attr_class, x as setContext, $ as spread_props, a0 as attributes, a1 as clsx, a2 as ensure_array_like, a3 as element, J as getContext, a4 as stringify, a5 as html, F as run, a6 as props_id } from '../../chunks/server.js-11-pxAWV.js';
|
|
3
3
|
import { U as UI_LOCALES } from '../../chunks/config.js-B0w1-uCA.js';
|
|
4
4
|
import { m as mergeEntries, c as collapseSystemPromptEntries, t as truncate } from '../../chunks/dsh-events.js-CyvSb4O3.js';
|
|
@@ -7,7 +7,7 @@ import { b as applyKnobEvent, E as EMPTY_KNOBS, r as resolvePermission, l as loc
|
|
|
7
7
|
import { D as DEFAULT_IMAGE_LIMITS } from '../../chunks/image-limits.js-CUdJ0f7r.js';
|
|
8
8
|
import { a as appConfig, t as triggerMode, g as getTrigger, p as previewSegments, i as isValidTagWord, b as textPreviewOf, s as searchKey, c as shouldRecordPrompt, d as parseTagWords } from '../../chunks/app-config.svelte.js-BBPHOX4N.js';
|
|
9
9
|
import { c as getLocale } from '../../chunks/runtime.js-CCJi3XaY.js';
|
|
10
|
-
import { p as page, a as afterNavigate, t, c as replaceState, e as currentLocale, u as unexpectederror1, s as sessionnotfound2, r as reapednote1, d as dshunreachable1, b as backtoworkspace2 } from '../../chunks/state.js-
|
|
10
|
+
import { p as page, a as afterNavigate, t, c as replaceState, e as currentLocale, u as unexpectederror1, s as sessionnotfound2, r as reapednote1, d as dshunreachable1, b as backtoworkspace2 } from '../../chunks/state.js-BrbF5k84.js';
|
|
11
11
|
import 'yaml';
|
|
12
12
|
import 'html-to-image';
|
|
13
13
|
import hljs from 'highlight.js/lib/core';
|
|
@@ -1750,6 +1750,166 @@ var commandhelp1 = ((inputs = {}, options = {}) => {
|
|
|
1750
1750
|
return en_commandhelp1();
|
|
1751
1751
|
});
|
|
1752
1752
|
//#endregion
|
|
1753
|
+
//#region src/lib/paraglide/messages/commandhelppluginrackexamplebare4.js
|
|
1754
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
1755
|
+
/** @typedef {{}} Commandhelppluginrackexamplebare4Inputs */
|
|
1756
|
+
var en_commandhelppluginrackexamplebare4 = () => {
|
|
1757
|
+
return `Opens the rack - install or uninstall with one click per row.`;
|
|
1758
|
+
};
|
|
1759
|
+
var zh_commandhelppluginrackexamplebare4 = () => {
|
|
1760
|
+
return `打开插件架 - 每行一键安装或卸载。`;
|
|
1761
|
+
};
|
|
1762
|
+
var id_commandhelppluginrackexamplebare4 = () => {
|
|
1763
|
+
return `Membuka rak - instal atau copot dengan satu klik per baris.`;
|
|
1764
|
+
};
|
|
1765
|
+
var es_commandhelppluginrackexamplebare4 = () => {
|
|
1766
|
+
return `Abre el rack: instala o desinstala con un clic por fila.`;
|
|
1767
|
+
};
|
|
1768
|
+
/**
|
|
1769
|
+
* | output |
|
|
1770
|
+
* | --- |
|
|
1771
|
+
* | "Opens the rack - install or uninstall with one click per row." |
|
|
1772
|
+
*
|
|
1773
|
+
* @param {Commandhelppluginrackexamplebare4Inputs} inputs
|
|
1774
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
1775
|
+
* @returns {LocalizedString}
|
|
1776
|
+
*/
|
|
1777
|
+
var commandhelppluginrackexamplebare4 = ((inputs = {}, options = {}) => {
|
|
1778
|
+
const locale = options.locale ?? getLocale();
|
|
1779
|
+
if (locale === "zh") return zh_commandhelppluginrackexamplebare4();
|
|
1780
|
+
if (locale === "id") return id_commandhelppluginrackexamplebare4();
|
|
1781
|
+
if (locale === "es") return es_commandhelppluginrackexamplebare4();
|
|
1782
|
+
return en_commandhelppluginrackexamplebare4();
|
|
1783
|
+
});
|
|
1784
|
+
//#endregion
|
|
1785
|
+
//#region src/lib/paraglide/messages/commandhelppluginrackexamplehelp4.js
|
|
1786
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
1787
|
+
/** @typedef {{}} Commandhelppluginrackexamplehelp4Inputs */
|
|
1788
|
+
var en_commandhelppluginrackexamplehelp4 = () => {
|
|
1789
|
+
return `Prints this help card.`;
|
|
1790
|
+
};
|
|
1791
|
+
var zh_commandhelppluginrackexamplehelp4 = () => {
|
|
1792
|
+
return `打印此帮助卡片。`;
|
|
1793
|
+
};
|
|
1794
|
+
var id_commandhelppluginrackexamplehelp4 = () => {
|
|
1795
|
+
return `Mencetak kartu bantuan ini.`;
|
|
1796
|
+
};
|
|
1797
|
+
var es_commandhelppluginrackexamplehelp4 = () => {
|
|
1798
|
+
return `Imprime esta tarjeta de ayuda.`;
|
|
1799
|
+
};
|
|
1800
|
+
/**
|
|
1801
|
+
* | output |
|
|
1802
|
+
* | --- |
|
|
1803
|
+
* | "Prints this help card." |
|
|
1804
|
+
*
|
|
1805
|
+
* @param {Commandhelppluginrackexamplehelp4Inputs} inputs
|
|
1806
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
1807
|
+
* @returns {LocalizedString}
|
|
1808
|
+
*/
|
|
1809
|
+
var commandhelppluginrackexamplehelp4 = ((inputs = {}, options = {}) => {
|
|
1810
|
+
const locale = options.locale ?? getLocale();
|
|
1811
|
+
if (locale === "zh") return zh_commandhelppluginrackexamplehelp4();
|
|
1812
|
+
if (locale === "id") return id_commandhelppluginrackexamplehelp4();
|
|
1813
|
+
if (locale === "es") return es_commandhelppluginrackexamplehelp4();
|
|
1814
|
+
return en_commandhelppluginrackexamplehelp4();
|
|
1815
|
+
});
|
|
1816
|
+
//#endregion
|
|
1817
|
+
//#region src/lib/paraglide/messages/commandhelppluginrackexamplereload4.js
|
|
1818
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
1819
|
+
/** @typedef {{}} Commandhelppluginrackexamplereload4Inputs */
|
|
1820
|
+
var en_commandhelppluginrackexamplereload4 = () => {
|
|
1821
|
+
return `Rebuilds the rack snapshot first (fresh numbering, fresh installed flags).`;
|
|
1822
|
+
};
|
|
1823
|
+
var zh_commandhelppluginrackexamplereload4 = () => {
|
|
1824
|
+
return `先重建插件架快照(全新编号、全新安装状态)。`;
|
|
1825
|
+
};
|
|
1826
|
+
var id_commandhelppluginrackexamplereload4 = () => {
|
|
1827
|
+
return `Membangun ulang snapshot rak lebih dulu (penomoran baru, status terpasang baru).`;
|
|
1828
|
+
};
|
|
1829
|
+
var es_commandhelppluginrackexamplereload4 = () => {
|
|
1830
|
+
return `Reconstruye primero el snapshot del rack (numeración y estados de instalación recientes).`;
|
|
1831
|
+
};
|
|
1832
|
+
/**
|
|
1833
|
+
* | output |
|
|
1834
|
+
* | --- |
|
|
1835
|
+
* | "Rebuilds the rack snapshot first (fresh numbering, fresh installed flags)." |
|
|
1836
|
+
*
|
|
1837
|
+
* @param {Commandhelppluginrackexamplereload4Inputs} inputs
|
|
1838
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
1839
|
+
* @returns {LocalizedString}
|
|
1840
|
+
*/
|
|
1841
|
+
var commandhelppluginrackexamplereload4 = ((inputs = {}, options = {}) => {
|
|
1842
|
+
const locale = options.locale ?? getLocale();
|
|
1843
|
+
if (locale === "zh") return zh_commandhelppluginrackexamplereload4();
|
|
1844
|
+
if (locale === "id") return id_commandhelppluginrackexamplereload4();
|
|
1845
|
+
if (locale === "es") return es_commandhelppluginrackexamplereload4();
|
|
1846
|
+
return en_commandhelppluginrackexamplereload4();
|
|
1847
|
+
});
|
|
1848
|
+
//#endregion
|
|
1849
|
+
//#region src/lib/paraglide/messages/commandhelppluginrackparamreload4.js
|
|
1850
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
1851
|
+
/** @typedef {{}} Commandhelppluginrackparamreload4Inputs */
|
|
1852
|
+
var en_commandhelppluginrackparamreload4 = () => {
|
|
1853
|
+
return `Force a snapshot rebuild from plugins-reff.md before the panel opens. Without it the cached rack snapshot is used as-is.`;
|
|
1854
|
+
};
|
|
1855
|
+
var zh_commandhelppluginrackparamreload4 = () => {
|
|
1856
|
+
return `在面板打开前从 plugins-reff.md 重建快照。不带它时按原样使用缓存的插件架快照。`;
|
|
1857
|
+
};
|
|
1858
|
+
var id_commandhelppluginrackparamreload4 = () => {
|
|
1859
|
+
return `Bangun ulang snapshot dari plugins-reff.md sebelum panel terbuka. Tanpa itu, snapshot rak yang tersimpan dipakai apa adanya.`;
|
|
1860
|
+
};
|
|
1861
|
+
var es_commandhelppluginrackparamreload4 = () => {
|
|
1862
|
+
return `Fuerza a reconstruir el snapshot desde plugins-reff.md antes de abrir el panel. Sin ella se usa el snapshot en caché tal cual.`;
|
|
1863
|
+
};
|
|
1864
|
+
/**
|
|
1865
|
+
* | output |
|
|
1866
|
+
* | --- |
|
|
1867
|
+
* | "Force a snapshot rebuild from plugins-reff.md before the panel opens. Without it the cached rack snapshot is used as-is." |
|
|
1868
|
+
*
|
|
1869
|
+
* @param {Commandhelppluginrackparamreload4Inputs} inputs
|
|
1870
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
1871
|
+
* @returns {LocalizedString}
|
|
1872
|
+
*/
|
|
1873
|
+
var commandhelppluginrackparamreload4 = ((inputs = {}, options = {}) => {
|
|
1874
|
+
const locale = options.locale ?? getLocale();
|
|
1875
|
+
if (locale === "zh") return zh_commandhelppluginrackparamreload4();
|
|
1876
|
+
if (locale === "id") return id_commandhelppluginrackparamreload4();
|
|
1877
|
+
if (locale === "es") return es_commandhelppluginrackparamreload4();
|
|
1878
|
+
return en_commandhelppluginrackparamreload4();
|
|
1879
|
+
});
|
|
1880
|
+
//#endregion
|
|
1881
|
+
//#region src/lib/paraglide/messages/commandhelppluginracksummary3.js
|
|
1882
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
1883
|
+
/** @typedef {{}} Commandhelppluginracksummary3Inputs */
|
|
1884
|
+
var en_commandhelppluginracksummary3 = () => {
|
|
1885
|
+
return `Opens the Plugin Rack panel (The Plugin Rack ADR, 2026-09-27): install and uninstall dsh plugins from the plugins reference. Every apply ends with the DSH restart chain - the floor bounces and the page re-attaches.`;
|
|
1886
|
+
};
|
|
1887
|
+
var zh_commandhelppluginracksummary3 = () => {
|
|
1888
|
+
return `打开插件架面板(The Plugin Rack ADR,2026-09-27):从插件参考安装/卸载 dsh 插件。每次应用都会触发 DSH 重启链 - 页面会短暂离开并自动恢复。`;
|
|
1889
|
+
};
|
|
1890
|
+
var id_commandhelppluginracksummary3 = () => {
|
|
1891
|
+
return `Membuka panel Rak Plugin (ADR The Plugin Rack, 2026-09-27): instal dan copot plugin dsh dari referensi plugin. Setiap penerapan diakhiri rantai restart DSH - lantai turun sejenak lalu halaman pulih sendiri.`;
|
|
1892
|
+
};
|
|
1893
|
+
var es_commandhelppluginracksummary3 = () => {
|
|
1894
|
+
return `Abre el panel Rack de plugins (ADR The Plugin Rack, 2026-09-27): instala y desinstala plugins de dsh desde la referencia de plugins. Cada aplicación termina con la cadena de reinicio de DSH: la página se va un momento y vuelve sola.`;
|
|
1895
|
+
};
|
|
1896
|
+
/**
|
|
1897
|
+
* | output |
|
|
1898
|
+
* | --- |
|
|
1899
|
+
* | "Opens the Plugin Rack panel (The Plugin Rack ADR, 2026-09-27): install and uninstall dsh plugins from the plugins reference. Every apply ends with the DSH re..." |
|
|
1900
|
+
*
|
|
1901
|
+
* @param {Commandhelppluginracksummary3Inputs} inputs
|
|
1902
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
1903
|
+
* @returns {LocalizedString}
|
|
1904
|
+
*/
|
|
1905
|
+
var commandhelppluginracksummary3 = ((inputs = {}, options = {}) => {
|
|
1906
|
+
const locale = options.locale ?? getLocale();
|
|
1907
|
+
if (locale === "zh") return zh_commandhelppluginracksummary3();
|
|
1908
|
+
if (locale === "id") return id_commandhelppluginracksummary3();
|
|
1909
|
+
if (locale === "es") return es_commandhelppluginracksummary3();
|
|
1910
|
+
return en_commandhelppluginracksummary3();
|
|
1911
|
+
});
|
|
1912
|
+
//#endregion
|
|
1753
1913
|
//#region src/lib/paraglide/messages/commandhelpskillshelfexamplebare4.js
|
|
1754
1914
|
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
1755
1915
|
/** @typedef {{}} Commandhelpskillshelfexamplebare4Inputs */
|
|
@@ -7466,48 +7626,528 @@ var es_picksession1 = () => {
|
|
|
7466
7626
|
* | --- |
|
|
7467
7627
|
* | "Pick a session from the sidebar, or start one with + New chat." |
|
|
7468
7628
|
*
|
|
7469
|
-
* @param {Picksession1Inputs} inputs
|
|
7629
|
+
* @param {Picksession1Inputs} inputs
|
|
7630
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7631
|
+
* @returns {LocalizedString}
|
|
7632
|
+
*/
|
|
7633
|
+
var picksession1 = ((inputs = {}, options = {}) => {
|
|
7634
|
+
const locale = options.locale ?? getLocale();
|
|
7635
|
+
if (locale === "zh") return zh_picksession1();
|
|
7636
|
+
if (locale === "id") return id_picksession1();
|
|
7637
|
+
if (locale === "es") return es_picksession1();
|
|
7638
|
+
return en_picksession1();
|
|
7639
|
+
});
|
|
7640
|
+
//#endregion
|
|
7641
|
+
//#region src/lib/paraglide/messages/planmode1.js
|
|
7642
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7643
|
+
/** @typedef {{}} Planmode1Inputs */
|
|
7644
|
+
var en_planmode1 = () => {
|
|
7645
|
+
return `plan mode`;
|
|
7646
|
+
};
|
|
7647
|
+
var zh_planmode1 = () => {
|
|
7648
|
+
return `计划模式`;
|
|
7649
|
+
};
|
|
7650
|
+
var id_planmode1 = () => {
|
|
7651
|
+
return `mode rencana`;
|
|
7652
|
+
};
|
|
7653
|
+
var es_planmode1 = () => {
|
|
7654
|
+
return `modo plan`;
|
|
7655
|
+
};
|
|
7656
|
+
/**
|
|
7657
|
+
* | output |
|
|
7658
|
+
* | --- |
|
|
7659
|
+
* | "plan mode" |
|
|
7660
|
+
*
|
|
7661
|
+
* @param {Planmode1Inputs} inputs
|
|
7662
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7663
|
+
* @returns {LocalizedString}
|
|
7664
|
+
*/
|
|
7665
|
+
var planmode1 = ((inputs = {}, options = {}) => {
|
|
7666
|
+
const locale = options.locale ?? getLocale();
|
|
7667
|
+
if (locale === "zh") return zh_planmode1();
|
|
7668
|
+
if (locale === "id") return id_planmode1();
|
|
7669
|
+
if (locale === "es") return es_planmode1();
|
|
7670
|
+
return en_planmode1();
|
|
7671
|
+
});
|
|
7672
|
+
//#endregion
|
|
7673
|
+
//#region src/lib/paraglide/messages/pluginrackapplying2.js
|
|
7674
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7675
|
+
/** @typedef {{}} Pluginrackapplying2Inputs */
|
|
7676
|
+
var en_pluginrackapplying2 = () => {
|
|
7677
|
+
return `Applying — the floor will come back shortly.`;
|
|
7678
|
+
};
|
|
7679
|
+
var zh_pluginrackapplying2 = () => {
|
|
7680
|
+
return `正在应用 — 页面稍后会自动恢复。`;
|
|
7681
|
+
};
|
|
7682
|
+
var id_pluginrackapplying2 = () => {
|
|
7683
|
+
return `Menerapkan — lantai akan kembali sebentar lagi.`;
|
|
7684
|
+
};
|
|
7685
|
+
var es_pluginrackapplying2 = () => {
|
|
7686
|
+
return `Aplicando — la página volverá enseguida.`;
|
|
7687
|
+
};
|
|
7688
|
+
/**
|
|
7689
|
+
* | output |
|
|
7690
|
+
* | --- |
|
|
7691
|
+
* | "Applying — the floor will come back shortly." |
|
|
7692
|
+
*
|
|
7693
|
+
* @param {Pluginrackapplying2Inputs} inputs
|
|
7694
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7695
|
+
* @returns {LocalizedString}
|
|
7696
|
+
*/
|
|
7697
|
+
var pluginrackapplying2 = ((inputs = {}, options = {}) => {
|
|
7698
|
+
const locale = options.locale ?? getLocale();
|
|
7699
|
+
if (locale === "zh") return zh_pluginrackapplying2();
|
|
7700
|
+
if (locale === "id") return id_pluginrackapplying2();
|
|
7701
|
+
if (locale === "es") return es_pluginrackapplying2();
|
|
7702
|
+
return en_pluginrackapplying2();
|
|
7703
|
+
});
|
|
7704
|
+
//#endregion
|
|
7705
|
+
//#region src/lib/paraglide/messages/pluginrackby2.js
|
|
7706
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7707
|
+
/** @typedef {{}} Pluginrackby2Inputs */
|
|
7708
|
+
var en_pluginrackby2 = () => {
|
|
7709
|
+
return `by`;
|
|
7710
|
+
};
|
|
7711
|
+
var zh_pluginrackby2 = () => {
|
|
7712
|
+
return `作者:`;
|
|
7713
|
+
};
|
|
7714
|
+
var id_pluginrackby2 = () => {
|
|
7715
|
+
return `oleh`;
|
|
7716
|
+
};
|
|
7717
|
+
var es_pluginrackby2 = () => {
|
|
7718
|
+
return `por`;
|
|
7719
|
+
};
|
|
7720
|
+
/**
|
|
7721
|
+
* | output |
|
|
7722
|
+
* | --- |
|
|
7723
|
+
* | "by" |
|
|
7724
|
+
*
|
|
7725
|
+
* @param {Pluginrackby2Inputs} inputs
|
|
7726
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7727
|
+
* @returns {LocalizedString}
|
|
7728
|
+
*/
|
|
7729
|
+
var pluginrackby2 = ((inputs = {}, options = {}) => {
|
|
7730
|
+
const locale = options.locale ?? getLocale();
|
|
7731
|
+
if (locale === "zh") return zh_pluginrackby2();
|
|
7732
|
+
if (locale === "id") return id_pluginrackby2();
|
|
7733
|
+
if (locale === "es") return es_pluginrackby2();
|
|
7734
|
+
return en_pluginrackby2();
|
|
7735
|
+
});
|
|
7736
|
+
//#endregion
|
|
7737
|
+
//#region src/lib/paraglide/messages/pluginrackempty2.js
|
|
7738
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7739
|
+
/** @typedef {{}} Pluginrackempty2Inputs */
|
|
7740
|
+
var en_pluginrackempty2 = () => {
|
|
7741
|
+
return `No plugins on the rack yet — add a line to plugins-reff.md.`;
|
|
7742
|
+
};
|
|
7743
|
+
var zh_pluginrackempty2 = () => {
|
|
7744
|
+
return `插件架暂无插件 — 在 plugins-reff.md 中添加一行。`;
|
|
7745
|
+
};
|
|
7746
|
+
var id_pluginrackempty2 = () => {
|
|
7747
|
+
return `Belum ada plugin di rak — tambahkan satu baris di plugins-reff.md.`;
|
|
7748
|
+
};
|
|
7749
|
+
var es_pluginrackempty2 = () => {
|
|
7750
|
+
return `Aún no hay plugins en el rack — añade una línea a plugins-reff.md.`;
|
|
7751
|
+
};
|
|
7752
|
+
/**
|
|
7753
|
+
* | output |
|
|
7754
|
+
* | --- |
|
|
7755
|
+
* | "No plugins on the rack yet — add a line to plugins-reff.md." |
|
|
7756
|
+
*
|
|
7757
|
+
* @param {Pluginrackempty2Inputs} inputs
|
|
7758
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7759
|
+
* @returns {LocalizedString}
|
|
7760
|
+
*/
|
|
7761
|
+
var pluginrackempty2 = ((inputs = {}, options = {}) => {
|
|
7762
|
+
const locale = options.locale ?? getLocale();
|
|
7763
|
+
if (locale === "zh") return zh_pluginrackempty2();
|
|
7764
|
+
if (locale === "id") return id_pluginrackempty2();
|
|
7765
|
+
if (locale === "es") return es_pluginrackempty2();
|
|
7766
|
+
return en_pluginrackempty2();
|
|
7767
|
+
});
|
|
7768
|
+
//#endregion
|
|
7769
|
+
//#region src/lib/paraglide/messages/pluginrackinstall2.js
|
|
7770
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7771
|
+
/** @typedef {{}} Pluginrackinstall2Inputs */
|
|
7772
|
+
var en_pluginrackinstall2 = () => {
|
|
7773
|
+
return `Install`;
|
|
7774
|
+
};
|
|
7775
|
+
var zh_pluginrackinstall2 = () => {
|
|
7776
|
+
return `安装`;
|
|
7777
|
+
};
|
|
7778
|
+
var id_pluginrackinstall2 = () => {
|
|
7779
|
+
return `Instal`;
|
|
7780
|
+
};
|
|
7781
|
+
var es_pluginrackinstall2 = () => {
|
|
7782
|
+
return `Instalar`;
|
|
7783
|
+
};
|
|
7784
|
+
/**
|
|
7785
|
+
* | output |
|
|
7786
|
+
* | --- |
|
|
7787
|
+
* | "Install" |
|
|
7788
|
+
*
|
|
7789
|
+
* @param {Pluginrackinstall2Inputs} inputs
|
|
7790
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7791
|
+
* @returns {LocalizedString}
|
|
7792
|
+
*/
|
|
7793
|
+
var pluginrackinstall2 = ((inputs = {}, options = {}) => {
|
|
7794
|
+
const locale = options.locale ?? getLocale();
|
|
7795
|
+
if (locale === "zh") return zh_pluginrackinstall2();
|
|
7796
|
+
if (locale === "id") return id_pluginrackinstall2();
|
|
7797
|
+
if (locale === "es") return es_pluginrackinstall2();
|
|
7798
|
+
return en_pluginrackinstall2();
|
|
7799
|
+
});
|
|
7800
|
+
//#endregion
|
|
7801
|
+
//#region src/lib/paraglide/messages/pluginrackinstallempty3.js
|
|
7802
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7803
|
+
/** @typedef {{}} Pluginrackinstallempty3Inputs */
|
|
7804
|
+
var en_pluginrackinstallempty3 = () => {
|
|
7805
|
+
return `Everything on the rack is installed.`;
|
|
7806
|
+
};
|
|
7807
|
+
var zh_pluginrackinstallempty3 = () => {
|
|
7808
|
+
return `插件架上的插件都已安装。`;
|
|
7809
|
+
};
|
|
7810
|
+
var id_pluginrackinstallempty3 = () => {
|
|
7811
|
+
return `Semua plugin di rak sudah terpasang.`;
|
|
7812
|
+
};
|
|
7813
|
+
var es_pluginrackinstallempty3 = () => {
|
|
7814
|
+
return `Todo en el rack está instalado.`;
|
|
7815
|
+
};
|
|
7816
|
+
/**
|
|
7817
|
+
* | output |
|
|
7818
|
+
* | --- |
|
|
7819
|
+
* | "Everything on the rack is installed." |
|
|
7820
|
+
*
|
|
7821
|
+
* @param {Pluginrackinstallempty3Inputs} inputs
|
|
7822
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7823
|
+
* @returns {LocalizedString}
|
|
7824
|
+
*/
|
|
7825
|
+
var pluginrackinstallempty3 = ((inputs = {}, options = {}) => {
|
|
7826
|
+
const locale = options.locale ?? getLocale();
|
|
7827
|
+
if (locale === "zh") return zh_pluginrackinstallempty3();
|
|
7828
|
+
if (locale === "id") return id_pluginrackinstallempty3();
|
|
7829
|
+
if (locale === "es") return es_pluginrackinstallempty3();
|
|
7830
|
+
return en_pluginrackinstallempty3();
|
|
7831
|
+
});
|
|
7832
|
+
//#endregion
|
|
7833
|
+
//#region src/lib/paraglide/messages/pluginrackinstalled2.js
|
|
7834
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7835
|
+
/** @typedef {{}} Pluginrackinstalled2Inputs */
|
|
7836
|
+
var en_pluginrackinstalled2 = () => {
|
|
7837
|
+
return `Installed`;
|
|
7838
|
+
};
|
|
7839
|
+
var zh_pluginrackinstalled2 = () => {
|
|
7840
|
+
return `已安装`;
|
|
7841
|
+
};
|
|
7842
|
+
var id_pluginrackinstalled2 = () => {
|
|
7843
|
+
return `Terpasang`;
|
|
7844
|
+
};
|
|
7845
|
+
var es_pluginrackinstalled2 = () => {
|
|
7846
|
+
return `Instalado`;
|
|
7847
|
+
};
|
|
7848
|
+
/**
|
|
7849
|
+
* | output |
|
|
7850
|
+
* | --- |
|
|
7851
|
+
* | "Installed" |
|
|
7852
|
+
*
|
|
7853
|
+
* @param {Pluginrackinstalled2Inputs} inputs
|
|
7854
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7855
|
+
* @returns {LocalizedString}
|
|
7856
|
+
*/
|
|
7857
|
+
var pluginrackinstalled2 = ((inputs = {}, options = {}) => {
|
|
7858
|
+
const locale = options.locale ?? getLocale();
|
|
7859
|
+
if (locale === "zh") return zh_pluginrackinstalled2();
|
|
7860
|
+
if (locale === "id") return id_pluginrackinstalled2();
|
|
7861
|
+
if (locale === "es") return es_pluginrackinstalled2();
|
|
7862
|
+
return en_pluginrackinstalled2();
|
|
7863
|
+
});
|
|
7864
|
+
//#endregion
|
|
7865
|
+
//#region src/lib/paraglide/messages/pluginrackloadfailed3.js
|
|
7866
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7867
|
+
/** @typedef {{}} Pluginrackloadfailed3Inputs */
|
|
7868
|
+
var en_pluginrackloadfailed3 = () => {
|
|
7869
|
+
return `Could not load the rack.`;
|
|
7870
|
+
};
|
|
7871
|
+
var zh_pluginrackloadfailed3 = () => {
|
|
7872
|
+
return `无法加载插件架。`;
|
|
7873
|
+
};
|
|
7874
|
+
var id_pluginrackloadfailed3 = () => {
|
|
7875
|
+
return `Tidak dapat memuat rak plugin.`;
|
|
7876
|
+
};
|
|
7877
|
+
var es_pluginrackloadfailed3 = () => {
|
|
7878
|
+
return `No se pudo cargar el rack de plugins.`;
|
|
7879
|
+
};
|
|
7880
|
+
/**
|
|
7881
|
+
* | output |
|
|
7882
|
+
* | --- |
|
|
7883
|
+
* | "Could not load the rack." |
|
|
7884
|
+
*
|
|
7885
|
+
* @param {Pluginrackloadfailed3Inputs} inputs
|
|
7886
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7887
|
+
* @returns {LocalizedString}
|
|
7888
|
+
*/
|
|
7889
|
+
var pluginrackloadfailed3 = ((inputs = {}, options = {}) => {
|
|
7890
|
+
const locale = options.locale ?? getLocale();
|
|
7891
|
+
if (locale === "zh") return zh_pluginrackloadfailed3();
|
|
7892
|
+
if (locale === "id") return id_pluginrackloadfailed3();
|
|
7893
|
+
if (locale === "es") return es_pluginrackloadfailed3();
|
|
7894
|
+
return en_pluginrackloadfailed3();
|
|
7895
|
+
});
|
|
7896
|
+
//#endregion
|
|
7897
|
+
//#region src/lib/paraglide/messages/pluginrackopenauthor3.js
|
|
7898
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7899
|
+
/** @typedef {{}} Pluginrackopenauthor3Inputs */
|
|
7900
|
+
var en_pluginrackopenauthor3 = () => {
|
|
7901
|
+
return `Open the creator's profile`;
|
|
7902
|
+
};
|
|
7903
|
+
var zh_pluginrackopenauthor3 = () => {
|
|
7904
|
+
return `打开作者主页`;
|
|
7905
|
+
};
|
|
7906
|
+
var id_pluginrackopenauthor3 = () => {
|
|
7907
|
+
return `Buka profil pembuat`;
|
|
7908
|
+
};
|
|
7909
|
+
var es_pluginrackopenauthor3 = () => {
|
|
7910
|
+
return `Abrir el perfil del creador`;
|
|
7911
|
+
};
|
|
7912
|
+
/**
|
|
7913
|
+
* | output |
|
|
7914
|
+
* | --- |
|
|
7915
|
+
* | "Open the creator's profile" |
|
|
7916
|
+
*
|
|
7917
|
+
* @param {Pluginrackopenauthor3Inputs} inputs
|
|
7918
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7919
|
+
* @returns {LocalizedString}
|
|
7920
|
+
*/
|
|
7921
|
+
var pluginrackopenauthor3 = ((inputs = {}, options = {}) => {
|
|
7922
|
+
const locale = options.locale ?? getLocale();
|
|
7923
|
+
if (locale === "zh") return zh_pluginrackopenauthor3();
|
|
7924
|
+
if (locale === "id") return id_pluginrackopenauthor3();
|
|
7925
|
+
if (locale === "es") return es_pluginrackopenauthor3();
|
|
7926
|
+
return en_pluginrackopenauthor3();
|
|
7927
|
+
});
|
|
7928
|
+
//#endregion
|
|
7929
|
+
//#region src/lib/paraglide/messages/pluginrackopenrepo3.js
|
|
7930
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7931
|
+
/** @typedef {{}} Pluginrackopenrepo3Inputs */
|
|
7932
|
+
var en_pluginrackopenrepo3 = () => {
|
|
7933
|
+
return `Open the plugin repo`;
|
|
7934
|
+
};
|
|
7935
|
+
var zh_pluginrackopenrepo3 = () => {
|
|
7936
|
+
return `打开插件仓库`;
|
|
7937
|
+
};
|
|
7938
|
+
var id_pluginrackopenrepo3 = () => {
|
|
7939
|
+
return `Buka repo plugin`;
|
|
7940
|
+
};
|
|
7941
|
+
var es_pluginrackopenrepo3 = () => {
|
|
7942
|
+
return `Abrir el repositorio del plugin`;
|
|
7943
|
+
};
|
|
7944
|
+
/**
|
|
7945
|
+
* | output |
|
|
7946
|
+
* | --- |
|
|
7947
|
+
* | "Open the plugin repo" |
|
|
7948
|
+
*
|
|
7949
|
+
* @param {Pluginrackopenrepo3Inputs} inputs
|
|
7950
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7951
|
+
* @returns {LocalizedString}
|
|
7952
|
+
*/
|
|
7953
|
+
var pluginrackopenrepo3 = ((inputs = {}, options = {}) => {
|
|
7954
|
+
const locale = options.locale ?? getLocale();
|
|
7955
|
+
if (locale === "zh") return zh_pluginrackopenrepo3();
|
|
7956
|
+
if (locale === "id") return id_pluginrackopenrepo3();
|
|
7957
|
+
if (locale === "es") return es_pluginrackopenrepo3();
|
|
7958
|
+
return en_pluginrackopenrepo3();
|
|
7959
|
+
});
|
|
7960
|
+
//#endregion
|
|
7961
|
+
//#region src/lib/paraglide/messages/pluginrackreload2.js
|
|
7962
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7963
|
+
/** @typedef {{}} Pluginrackreload2Inputs */
|
|
7964
|
+
var en_pluginrackreload2 = () => {
|
|
7965
|
+
return `Reload`;
|
|
7966
|
+
};
|
|
7967
|
+
var zh_pluginrackreload2 = () => {
|
|
7968
|
+
return `重新加载`;
|
|
7969
|
+
};
|
|
7970
|
+
var id_pluginrackreload2 = () => {
|
|
7971
|
+
return `Muat ulang`;
|
|
7972
|
+
};
|
|
7973
|
+
var es_pluginrackreload2 = () => {
|
|
7974
|
+
return `Recargar`;
|
|
7975
|
+
};
|
|
7976
|
+
/**
|
|
7977
|
+
* | output |
|
|
7978
|
+
* | --- |
|
|
7979
|
+
* | "Reload" |
|
|
7980
|
+
*
|
|
7981
|
+
* @param {Pluginrackreload2Inputs} inputs
|
|
7982
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7983
|
+
* @returns {LocalizedString}
|
|
7984
|
+
*/
|
|
7985
|
+
var pluginrackreload2 = ((inputs = {}, options = {}) => {
|
|
7986
|
+
const locale = options.locale ?? getLocale();
|
|
7987
|
+
if (locale === "zh") return zh_pluginrackreload2();
|
|
7988
|
+
if (locale === "id") return id_pluginrackreload2();
|
|
7989
|
+
if (locale === "es") return es_pluginrackreload2();
|
|
7990
|
+
return en_pluginrackreload2();
|
|
7991
|
+
});
|
|
7992
|
+
//#endregion
|
|
7993
|
+
//#region src/lib/paraglide/messages/pluginrackretry2.js
|
|
7994
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7995
|
+
/** @typedef {{}} Pluginrackretry2Inputs */
|
|
7996
|
+
var en_pluginrackretry2 = () => {
|
|
7997
|
+
return `Retry`;
|
|
7998
|
+
};
|
|
7999
|
+
var zh_pluginrackretry2 = () => {
|
|
8000
|
+
return `重试`;
|
|
8001
|
+
};
|
|
8002
|
+
var id_pluginrackretry2 = () => {
|
|
8003
|
+
return `Coba lagi`;
|
|
8004
|
+
};
|
|
8005
|
+
var es_pluginrackretry2 = () => {
|
|
8006
|
+
return `Reintentar`;
|
|
8007
|
+
};
|
|
8008
|
+
/**
|
|
8009
|
+
* | output |
|
|
8010
|
+
* | --- |
|
|
8011
|
+
* | "Retry" |
|
|
8012
|
+
*
|
|
8013
|
+
* @param {Pluginrackretry2Inputs} inputs
|
|
8014
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
8015
|
+
* @returns {LocalizedString}
|
|
8016
|
+
*/
|
|
8017
|
+
var pluginrackretry2 = ((inputs = {}, options = {}) => {
|
|
8018
|
+
const locale = options.locale ?? getLocale();
|
|
8019
|
+
if (locale === "zh") return zh_pluginrackretry2();
|
|
8020
|
+
if (locale === "id") return id_pluginrackretry2();
|
|
8021
|
+
if (locale === "es") return es_pluginrackretry2();
|
|
8022
|
+
return en_pluginrackretry2();
|
|
8023
|
+
});
|
|
8024
|
+
//#endregion
|
|
8025
|
+
//#region src/lib/paraglide/messages/pluginracksearch2.js
|
|
8026
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
8027
|
+
/** @typedef {{}} Pluginracksearch2Inputs */
|
|
8028
|
+
var en_pluginracksearch2 = () => {
|
|
8029
|
+
return `Search plugins`;
|
|
8030
|
+
};
|
|
8031
|
+
var zh_pluginracksearch2 = () => {
|
|
8032
|
+
return `搜索插件`;
|
|
8033
|
+
};
|
|
8034
|
+
var id_pluginracksearch2 = () => {
|
|
8035
|
+
return `Cari plugin`;
|
|
8036
|
+
};
|
|
8037
|
+
var es_pluginracksearch2 = () => {
|
|
8038
|
+
return `Buscar plugins`;
|
|
8039
|
+
};
|
|
8040
|
+
/**
|
|
8041
|
+
* | output |
|
|
8042
|
+
* | --- |
|
|
8043
|
+
* | "Search plugins" |
|
|
8044
|
+
*
|
|
8045
|
+
* @param {Pluginracksearch2Inputs} inputs
|
|
8046
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
8047
|
+
* @returns {LocalizedString}
|
|
8048
|
+
*/
|
|
8049
|
+
var pluginracksearch2 = ((inputs = {}, options = {}) => {
|
|
8050
|
+
const locale = options.locale ?? getLocale();
|
|
8051
|
+
if (locale === "zh") return zh_pluginracksearch2();
|
|
8052
|
+
if (locale === "id") return id_pluginracksearch2();
|
|
8053
|
+
if (locale === "es") return es_pluginracksearch2();
|
|
8054
|
+
return en_pluginracksearch2();
|
|
8055
|
+
});
|
|
8056
|
+
//#endregion
|
|
8057
|
+
//#region src/lib/paraglide/messages/pluginracktitle2.js
|
|
8058
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
8059
|
+
/** @typedef {{}} Pluginracktitle2Inputs */
|
|
8060
|
+
var en_pluginracktitle2 = () => {
|
|
8061
|
+
return `Plugin Rack`;
|
|
8062
|
+
};
|
|
8063
|
+
var zh_pluginracktitle2 = () => {
|
|
8064
|
+
return `插件架`;
|
|
8065
|
+
};
|
|
8066
|
+
var id_pluginracktitle2 = () => {
|
|
8067
|
+
return `Rak Plugin`;
|
|
8068
|
+
};
|
|
8069
|
+
var es_pluginracktitle2 = () => {
|
|
8070
|
+
return `Rack de plugins`;
|
|
8071
|
+
};
|
|
8072
|
+
/**
|
|
8073
|
+
* | output |
|
|
8074
|
+
* | --- |
|
|
8075
|
+
* | "Plugin Rack" |
|
|
8076
|
+
*
|
|
8077
|
+
* @param {Pluginracktitle2Inputs} inputs
|
|
8078
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
8079
|
+
* @returns {LocalizedString}
|
|
8080
|
+
*/
|
|
8081
|
+
var pluginracktitle2 = ((inputs = {}, options = {}) => {
|
|
8082
|
+
const locale = options.locale ?? getLocale();
|
|
8083
|
+
if (locale === "zh") return zh_pluginracktitle2();
|
|
8084
|
+
if (locale === "id") return id_pluginracktitle2();
|
|
8085
|
+
if (locale === "es") return es_pluginracktitle2();
|
|
8086
|
+
return en_pluginracktitle2();
|
|
8087
|
+
});
|
|
8088
|
+
//#endregion
|
|
8089
|
+
//#region src/lib/paraglide/messages/pluginrackuninstall2.js
|
|
8090
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
8091
|
+
/** @typedef {{}} Pluginrackuninstall2Inputs */
|
|
8092
|
+
var en_pluginrackuninstall2 = () => {
|
|
8093
|
+
return `Uninstall`;
|
|
8094
|
+
};
|
|
8095
|
+
var zh_pluginrackuninstall2 = () => {
|
|
8096
|
+
return `卸载`;
|
|
8097
|
+
};
|
|
8098
|
+
var id_pluginrackuninstall2 = () => {
|
|
8099
|
+
return `Copot`;
|
|
8100
|
+
};
|
|
8101
|
+
var es_pluginrackuninstall2 = () => {
|
|
8102
|
+
return `Desinstalar`;
|
|
8103
|
+
};
|
|
8104
|
+
/**
|
|
8105
|
+
* | output |
|
|
8106
|
+
* | --- |
|
|
8107
|
+
* | "Uninstall" |
|
|
8108
|
+
*
|
|
8109
|
+
* @param {Pluginrackuninstall2Inputs} inputs
|
|
7470
8110
|
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7471
8111
|
* @returns {LocalizedString}
|
|
7472
8112
|
*/
|
|
7473
|
-
var
|
|
8113
|
+
var pluginrackuninstall2 = ((inputs = {}, options = {}) => {
|
|
7474
8114
|
const locale = options.locale ?? getLocale();
|
|
7475
|
-
if (locale === "zh") return
|
|
7476
|
-
if (locale === "id") return
|
|
7477
|
-
if (locale === "es") return
|
|
7478
|
-
return
|
|
8115
|
+
if (locale === "zh") return zh_pluginrackuninstall2();
|
|
8116
|
+
if (locale === "id") return id_pluginrackuninstall2();
|
|
8117
|
+
if (locale === "es") return es_pluginrackuninstall2();
|
|
8118
|
+
return en_pluginrackuninstall2();
|
|
7479
8119
|
});
|
|
7480
8120
|
//#endregion
|
|
7481
|
-
//#region src/lib/paraglide/messages/
|
|
8121
|
+
//#region src/lib/paraglide/messages/pluginrackuninstallempty3.js
|
|
7482
8122
|
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
7483
|
-
/** @typedef {{}}
|
|
7484
|
-
var
|
|
7485
|
-
return `
|
|
8123
|
+
/** @typedef {{}} Pluginrackuninstallempty3Inputs */
|
|
8124
|
+
var en_pluginrackuninstallempty3 = () => {
|
|
8125
|
+
return `Nothing installed yet - install a plugin from the install tab.`;
|
|
7486
8126
|
};
|
|
7487
|
-
var
|
|
7488
|
-
return
|
|
8127
|
+
var zh_pluginrackuninstallempty3 = () => {
|
|
8128
|
+
return `尚未安装任何插件 - 请在安装标签页中安装。`;
|
|
7489
8129
|
};
|
|
7490
|
-
var
|
|
7491
|
-
return `
|
|
8130
|
+
var id_pluginrackuninstallempty3 = () => {
|
|
8131
|
+
return `Belum ada yang terpasang - instal plugin dari tab instal.`;
|
|
7492
8132
|
};
|
|
7493
|
-
var
|
|
7494
|
-
return `
|
|
8133
|
+
var es_pluginrackuninstallempty3 = () => {
|
|
8134
|
+
return `Nada instalado todavía: instala un plugin desde la pestaña de instalación.`;
|
|
7495
8135
|
};
|
|
7496
8136
|
/**
|
|
7497
8137
|
* | output |
|
|
7498
8138
|
* | --- |
|
|
7499
|
-
* | "
|
|
8139
|
+
* | "Nothing installed yet - install a plugin from the install tab." |
|
|
7500
8140
|
*
|
|
7501
|
-
* @param {
|
|
8141
|
+
* @param {Pluginrackuninstallempty3Inputs} inputs
|
|
7502
8142
|
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
7503
8143
|
* @returns {LocalizedString}
|
|
7504
8144
|
*/
|
|
7505
|
-
var
|
|
8145
|
+
var pluginrackuninstallempty3 = ((inputs = {}, options = {}) => {
|
|
7506
8146
|
const locale = options.locale ?? getLocale();
|
|
7507
|
-
if (locale === "zh") return
|
|
7508
|
-
if (locale === "id") return
|
|
7509
|
-
if (locale === "es") return
|
|
7510
|
-
return
|
|
8147
|
+
if (locale === "zh") return zh_pluginrackuninstallempty3();
|
|
8148
|
+
if (locale === "id") return id_pluginrackuninstallempty3();
|
|
8149
|
+
if (locale === "es") return es_pluginrackuninstallempty3();
|
|
8150
|
+
return en_pluginrackuninstallempty3();
|
|
7511
8151
|
});
|
|
7512
8152
|
//#endregion
|
|
7513
8153
|
//#region src/lib/paraglide/messages/plusadd1.js
|
|
@@ -12623,6 +13263,11 @@ var _index_exports = /* @__PURE__ */ __exportAll({
|
|
|
12623
13263
|
collapseLineage: () => collapselineage1,
|
|
12624
13264
|
collapseSidebar: () => collapsesidebar1,
|
|
12625
13265
|
commandHelp: () => commandhelp1,
|
|
13266
|
+
commandHelpPluginrackExampleBare: () => commandhelppluginrackexamplebare4,
|
|
13267
|
+
commandHelpPluginrackExampleHelp: () => commandhelppluginrackexamplehelp4,
|
|
13268
|
+
commandHelpPluginrackExampleReload: () => commandhelppluginrackexamplereload4,
|
|
13269
|
+
commandHelpPluginrackParamReload: () => commandhelppluginrackparamreload4,
|
|
13270
|
+
commandHelpPluginrackSummary: () => commandhelppluginracksummary3,
|
|
12626
13271
|
commandHelpSkillshelfExampleBare: () => commandhelpskillshelfexamplebare4,
|
|
12627
13272
|
commandHelpSkillshelfExampleHelp: () => commandhelpskillshelfexamplehelp4,
|
|
12628
13273
|
commandHelpSkillshelfExampleReload: () => commandhelpskillshelfexamplereload4,
|
|
@@ -12804,6 +13449,21 @@ var _index_exports = /* @__PURE__ */ __exportAll({
|
|
|
12804
13449
|
pendingAttachments: () => pendingattachments1,
|
|
12805
13450
|
pickSession: () => picksession1,
|
|
12806
13451
|
planMode: () => planmode1,
|
|
13452
|
+
pluginRackApplying: () => pluginrackapplying2,
|
|
13453
|
+
pluginRackBy: () => pluginrackby2,
|
|
13454
|
+
pluginRackEmpty: () => pluginrackempty2,
|
|
13455
|
+
pluginRackInstall: () => pluginrackinstall2,
|
|
13456
|
+
pluginRackInstallEmpty: () => pluginrackinstallempty3,
|
|
13457
|
+
pluginRackInstalled: () => pluginrackinstalled2,
|
|
13458
|
+
pluginRackLoadFailed: () => pluginrackloadfailed3,
|
|
13459
|
+
pluginRackOpenAuthor: () => pluginrackopenauthor3,
|
|
13460
|
+
pluginRackOpenRepo: () => pluginrackopenrepo3,
|
|
13461
|
+
pluginRackReload: () => pluginrackreload2,
|
|
13462
|
+
pluginRackRetry: () => pluginrackretry2,
|
|
13463
|
+
pluginRackSearch: () => pluginracksearch2,
|
|
13464
|
+
pluginRackTitle: () => pluginracktitle2,
|
|
13465
|
+
pluginRackUninstall: () => pluginrackuninstall2,
|
|
13466
|
+
pluginRackUninstallEmpty: () => pluginrackuninstallempty3,
|
|
12807
13467
|
plusAdd: () => plusadd1,
|
|
12808
13468
|
presetCustom: () => presetcustom1,
|
|
12809
13469
|
presetFullAccess: () => presetfullaccess2,
|
|
@@ -13024,6 +13684,11 @@ var messages_exports = /* @__PURE__ */ __exportAll({
|
|
|
13024
13684
|
collapseLineage: () => collapselineage1,
|
|
13025
13685
|
collapseSidebar: () => collapsesidebar1,
|
|
13026
13686
|
commandHelp: () => commandhelp1,
|
|
13687
|
+
commandHelpPluginrackExampleBare: () => commandhelppluginrackexamplebare4,
|
|
13688
|
+
commandHelpPluginrackExampleHelp: () => commandhelppluginrackexamplehelp4,
|
|
13689
|
+
commandHelpPluginrackExampleReload: () => commandhelppluginrackexamplereload4,
|
|
13690
|
+
commandHelpPluginrackParamReload: () => commandhelppluginrackparamreload4,
|
|
13691
|
+
commandHelpPluginrackSummary: () => commandhelppluginracksummary3,
|
|
13027
13692
|
commandHelpSkillshelfExampleBare: () => commandhelpskillshelfexamplebare4,
|
|
13028
13693
|
commandHelpSkillshelfExampleHelp: () => commandhelpskillshelfexamplehelp4,
|
|
13029
13694
|
commandHelpSkillshelfExampleReload: () => commandhelpskillshelfexamplereload4,
|
|
@@ -13206,6 +13871,21 @@ var messages_exports = /* @__PURE__ */ __exportAll({
|
|
|
13206
13871
|
pendingAttachments: () => pendingattachments1,
|
|
13207
13872
|
pickSession: () => picksession1,
|
|
13208
13873
|
planMode: () => planmode1,
|
|
13874
|
+
pluginRackApplying: () => pluginrackapplying2,
|
|
13875
|
+
pluginRackBy: () => pluginrackby2,
|
|
13876
|
+
pluginRackEmpty: () => pluginrackempty2,
|
|
13877
|
+
pluginRackInstall: () => pluginrackinstall2,
|
|
13878
|
+
pluginRackInstallEmpty: () => pluginrackinstallempty3,
|
|
13879
|
+
pluginRackInstalled: () => pluginrackinstalled2,
|
|
13880
|
+
pluginRackLoadFailed: () => pluginrackloadfailed3,
|
|
13881
|
+
pluginRackOpenAuthor: () => pluginrackopenauthor3,
|
|
13882
|
+
pluginRackOpenRepo: () => pluginrackopenrepo3,
|
|
13883
|
+
pluginRackReload: () => pluginrackreload2,
|
|
13884
|
+
pluginRackRetry: () => pluginrackretry2,
|
|
13885
|
+
pluginRackSearch: () => pluginracksearch2,
|
|
13886
|
+
pluginRackTitle: () => pluginracktitle2,
|
|
13887
|
+
pluginRackUninstall: () => pluginrackuninstall2,
|
|
13888
|
+
pluginRackUninstallEmpty: () => pluginrackuninstallempty3,
|
|
13209
13889
|
plusAdd: () => plusadd1,
|
|
13210
13890
|
presetCustom: () => presetcustom1,
|
|
13211
13891
|
presetFullAccess: () => presetfullaccess2,
|
|
@@ -15163,13 +15843,46 @@ function renderMarkdown(text) {
|
|
|
15163
15843
|
function renderInline(text) {
|
|
15164
15844
|
const codeSpans = [];
|
|
15165
15845
|
let rest = text.replace(/`([^`\n]+)`/g, (_m, body) => {
|
|
15166
|
-
|
|
15846
|
+
const raw = unescapeEntities(body);
|
|
15847
|
+
if (/^https?:\/\/\S+$/i.test(raw)) codeSpans.push(externalAnchor(raw));
|
|
15848
|
+
else codeSpans.push(`<code>${body}</code>`);
|
|
15167
15849
|
return `\u0000${codeSpans.length - 1}\u0000`;
|
|
15168
15850
|
});
|
|
15169
15851
|
rest = emphasis(rest);
|
|
15170
15852
|
rest = links(rest);
|
|
15853
|
+
rest = autolinkBareUrls(rest);
|
|
15171
15854
|
return rest.replace(/\u0000(\d+)\u0000/g, (_m, idx) => codeSpans[Number(idx)] ?? "");
|
|
15172
15855
|
}
|
|
15856
|
+
/** One hardened external anchor from a RAW url — display is origin+path
|
|
15857
|
+
* (query/fragment stripped), href keeps everything (BC-12 attributes). */
|
|
15858
|
+
function externalAnchor(rawUrl) {
|
|
15859
|
+
let cut = rawUrl.length;
|
|
15860
|
+
for (const c of ["?", "#"]) {
|
|
15861
|
+
const i = rawUrl.indexOf(c);
|
|
15862
|
+
if (i !== -1 && i < cut) cut = i;
|
|
15863
|
+
}
|
|
15864
|
+
return `<a href="${rawUrl.replaceAll("\"", """)}" rel="noopener noreferrer" target="_blank">${rawUrl.slice(0, cut)}</a>`;
|
|
15865
|
+
}
|
|
15866
|
+
/**
|
|
15867
|
+
* Bare-URL autolink (2026-09-27): an http(s) URL in plain text becomes an
|
|
15868
|
+
* anchor whose DISPLAY TEXT is the origin+path with the query/hash stripped
|
|
15869
|
+
* (transcript URLs like …new?merge_request[source_branch]=… render short)
|
|
15870
|
+
* while the HREF keeps the FULL URL. Runs after [label](href) parsing and
|
|
15871
|
+
* skips text inside existing anchors/code placeholders (\u0000N\u0000 markers).
|
|
15872
|
+
* Trailing punctuation ),.,;:!?'"] and matching surrounding parens stay
|
|
15873
|
+
* outside the link (CommonMark's autolink tail rule).
|
|
15874
|
+
*/
|
|
15875
|
+
function autolinkBareUrls(text) {
|
|
15876
|
+
return text.replace(/https?:\/\/[^\s<>"'\u0000]+/gi, (whole, offset, full) => {
|
|
15877
|
+
const before = full.slice(Math.max(0, offset - 2e3), offset);
|
|
15878
|
+
if (/<a\s[^>]*$/i.test(before) || /<code>[^<]*$/i.test(before)) return whole;
|
|
15879
|
+
let url = whole;
|
|
15880
|
+
while (url.endsWith(")") && (url.match(/\(/g)?.length ?? 0) < (url.match(/\)/g)?.length ?? 0)) url = url.slice(0, -1);
|
|
15881
|
+
url = url.replace(/[.,;:!?]+$/, "");
|
|
15882
|
+
const tail = whole.slice(url.length);
|
|
15883
|
+
return `${externalAnchor(url)}${tail}`;
|
|
15884
|
+
});
|
|
15885
|
+
}
|
|
15173
15886
|
/** ***bold-italic***, **bold**, *italic*, _italic_, ~~strike~~. */
|
|
15174
15887
|
function emphasis(text) {
|
|
15175
15888
|
return text.replace(/\*\*\*(.+?)\*\*\*/g, "<strong><em>$1</em></strong>").replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>").replace(/\*(.+?)\*/g, "<em>$1</em>").replace(/(?<![\w])_(.+?)_(?![\w])/g, "<em>$1</em>").replace(/~~(.+?)~~/g, "<del>$1</del>");
|
|
@@ -15182,10 +15895,10 @@ function emphasis(text) {
|
|
|
15182
15895
|
*/
|
|
15183
15896
|
function links(text) {
|
|
15184
15897
|
return text.replace(/\[([^\]]+)\]\(([^)\s]+)\)/g, (whole, label, href) => {
|
|
15185
|
-
const
|
|
15186
|
-
if (/^https?:\/\//i.test(
|
|
15187
|
-
if (/^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(
|
|
15188
|
-
return `<a href="${
|
|
15898
|
+
const bare = href.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">").replaceAll(""", "\"").replaceAll("'", "'").replace(/^<(.+)>$/, "$1");
|
|
15899
|
+
if (/^https?:\/\//i.test(bare)) return `<a href="${bare.replaceAll("\"", """)}" rel="noopener noreferrer" target="_blank">${label}</a>`;
|
|
15900
|
+
if (/^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(bare) || bare.startsWith("//")) return whole;
|
|
15901
|
+
return `<a href="${bare.replaceAll("\"", """)}">${label}</a>`;
|
|
15189
15902
|
});
|
|
15190
15903
|
}
|
|
15191
15904
|
//#endregion
|
|
@@ -18108,6 +18821,7 @@ function panelHeaderLabel(panel) {
|
|
|
18108
18821
|
if (panel.kind === "terminal") return "Terminal";
|
|
18109
18822
|
if (panel.kind === "prompt-manager") return MANAGER_ROW_TITLE;
|
|
18110
18823
|
if (panel.kind === "skill-shelf") return "Skill Shelf";
|
|
18824
|
+
if (panel.kind === "plugin-rack") return "Plugin Rack";
|
|
18111
18825
|
if (panel.kind === "settings-editor") return SETTINGS_ROW_TITLE[panel.target];
|
|
18112
18826
|
if (panel.kind === "injected-doc") return injectedDocTitle(panel.displayPath);
|
|
18113
18827
|
if (panel.kind === "workspace-explorer") return panel.title ?? workspaceExplorerTitle(panel.root);
|
|
@@ -18133,9 +18847,9 @@ function panelRowsFor(input) {
|
|
|
18133
18847
|
const { panels, spineRows, coldCache, deadSessions, edgeCache, lineageFacts, moveFacts } = input;
|
|
18134
18848
|
const openSessionIds = openSessionIdsOf(panels);
|
|
18135
18849
|
return panels.map((p, index) => {
|
|
18136
|
-
if (p.kind === "terminal" || p.kind === "prompt-manager" || p.kind === "settings-editor" || p.kind === "skill-shelf") return {
|
|
18850
|
+
if (p.kind === "terminal" || p.kind === "prompt-manager" || p.kind === "settings-editor" || p.kind === "skill-shelf" || p.kind === "plugin-rack") return {
|
|
18137
18851
|
panel: p,
|
|
18138
|
-
title: p.kind === "terminal" ? "Terminal" : p.kind === "prompt-manager" ? MANAGER_ROW_TITLE : p.kind === "skill-shelf" ? "Skill Shelf" : SETTINGS_ROW_TITLE[p.target],
|
|
18852
|
+
title: p.kind === "terminal" ? "Terminal" : p.kind === "prompt-manager" ? MANAGER_ROW_TITLE : p.kind === "skill-shelf" ? "Skill Shelf" : p.kind === "plugin-rack" ? "Plugin Rack" : SETTINGS_ROW_TITLE[p.target],
|
|
18139
18853
|
workspace: null,
|
|
18140
18854
|
dead: false,
|
|
18141
18855
|
running: false,
|
|
@@ -18355,6 +19069,20 @@ function parseCommand(text) {
|
|
|
18355
19069
|
}[token],
|
|
18356
19070
|
args
|
|
18357
19071
|
};
|
|
19072
|
+
case "/dsi-plugins":
|
|
19073
|
+
if (args === "") return {
|
|
19074
|
+
type: "pluginrack",
|
|
19075
|
+
args
|
|
19076
|
+
};
|
|
19077
|
+
if (args === "--reload") return {
|
|
19078
|
+
type: "pluginrack",
|
|
19079
|
+
args: "",
|
|
19080
|
+
reload: true
|
|
19081
|
+
};
|
|
19082
|
+
return {
|
|
19083
|
+
type: "pluginrack",
|
|
19084
|
+
args
|
|
19085
|
+
};
|
|
18358
19086
|
case "/dsi-skills":
|
|
18359
19087
|
if (args === "") return {
|
|
18360
19088
|
type: "skillshelf",
|
|
@@ -18551,6 +19279,38 @@ var COMMAND_HELP = {
|
|
|
18551
19279
|
}
|
|
18552
19280
|
]
|
|
18553
19281
|
},
|
|
19282
|
+
pluginrack: {
|
|
19283
|
+
usage: "/dsi-plugins [--reload]",
|
|
19284
|
+
get summary() {
|
|
19285
|
+
return t(commandhelppluginracksummary3);
|
|
19286
|
+
},
|
|
19287
|
+
params: [{
|
|
19288
|
+
name: "--reload",
|
|
19289
|
+
get description() {
|
|
19290
|
+
return t(commandhelppluginrackparamreload4);
|
|
19291
|
+
}
|
|
19292
|
+
}],
|
|
19293
|
+
examples: [
|
|
19294
|
+
{
|
|
19295
|
+
line: "/dsi-plugins",
|
|
19296
|
+
get description() {
|
|
19297
|
+
return t(commandhelppluginrackexamplebare4);
|
|
19298
|
+
}
|
|
19299
|
+
},
|
|
19300
|
+
{
|
|
19301
|
+
line: "/dsi-plugins --reload",
|
|
19302
|
+
get description() {
|
|
19303
|
+
return t(commandhelppluginrackexamplereload4);
|
|
19304
|
+
}
|
|
19305
|
+
},
|
|
19306
|
+
{
|
|
19307
|
+
line: "/dsi-plugins ?",
|
|
19308
|
+
get description() {
|
|
19309
|
+
return t(commandhelppluginrackexamplehelp4);
|
|
19310
|
+
}
|
|
19311
|
+
}
|
|
19312
|
+
]
|
|
19313
|
+
},
|
|
18554
19314
|
dshsettings: {
|
|
18555
19315
|
usage: "/dsh-settings",
|
|
18556
19316
|
summary: "Aims the harness settings home explorer (~/.dsh, titled “DSH - Settings”): the open explorer takes the focus; otherwise a NEW explorer opens to the right of this conversation, selected. settings.yaml opens as a tab and stays editable; the running harness picks edits up through its own file watcher.",
|
|
@@ -18634,6 +19394,14 @@ var MENU_GESTURES = [
|
|
|
18634
19394
|
return t(commandhelpskillshelfsummary3);
|
|
18635
19395
|
}
|
|
18636
19396
|
},
|
|
19397
|
+
{
|
|
19398
|
+
name: "pluginrack",
|
|
19399
|
+
display: "/dsi-plugins",
|
|
19400
|
+
seed: "/dsi-plugins ",
|
|
19401
|
+
get description() {
|
|
19402
|
+
return t(commandhelppluginracksummary3);
|
|
19403
|
+
}
|
|
19404
|
+
},
|
|
18637
19405
|
{
|
|
18638
19406
|
name: "dsisettings",
|
|
18639
19407
|
display: "/dsi-settings",
|
|
@@ -20054,7 +20822,7 @@ function hasDotDotSegment(path) {
|
|
|
20054
20822
|
* it never breaks the open).
|
|
20055
20823
|
*/
|
|
20056
20824
|
function parseFileLinkHref(href) {
|
|
20057
|
-
const value = href.trim();
|
|
20825
|
+
const value = stripAngleWrapper(href.trim());
|
|
20058
20826
|
const hash = value.indexOf("#");
|
|
20059
20827
|
const raw = hash === -1 ? value : value.slice(0, hash);
|
|
20060
20828
|
const anchor = hash === -1 ? "" : value.slice(hash + 1);
|
|
@@ -20080,8 +20848,14 @@ function parseFileLinkHref(href) {
|
|
|
20080
20848
|
lines
|
|
20081
20849
|
};
|
|
20082
20850
|
}
|
|
20851
|
+
/** CommonMark angle-bracket destinations (<path> and their %3C/%3E
|
|
20852
|
+
* encodings) are destination syntax, never path bytes - renderers that
|
|
20853
|
+
* hand the wrapper through must not have it reach the host read. */
|
|
20854
|
+
function stripAngleWrapper(value) {
|
|
20855
|
+
return value.replace(/^(?:%3C|<)/i, "").replace(/(?:%3E|>)$/i, "");
|
|
20856
|
+
}
|
|
20083
20857
|
function normalizeFileLinkPath(href) {
|
|
20084
|
-
let value = href.trim().replace(/^\.\//, "").replace(/\/{2,}/g, "/");
|
|
20858
|
+
let value = stripAngleWrapper(href.trim()).replace(/^\.\//, "").replace(/\/{2,}/g, "/");
|
|
20085
20859
|
const hash = value.indexOf("#");
|
|
20086
20860
|
if (hash !== -1) value = value.slice(0, hash);
|
|
20087
20861
|
if (value.startsWith("/")) value = value.slice(1);
|
|
@@ -24594,6 +25368,7 @@ async function executeCommand(command, ctx, onNote) {
|
|
|
24594
25368
|
if (command.type === "promptmanager") return runPromptManager(command.args, ctx, onNote);
|
|
24595
25369
|
if (command.type === "terminal") return runTerminal(command.args, command.terminalAction, ctx, onNote);
|
|
24596
25370
|
if (command.type === "skillshelf") return runSkillShelf(command.args, command.reload === true, ctx, onNote);
|
|
25371
|
+
if (command.type === "pluginrack") return runPluginRack(command.args, command.reload === true, ctx, onNote);
|
|
24597
25372
|
if (command.type === "dsisettings" || command.type === "dshsettings") return runSettingsEditor(command.type === "dsisettings" ? "dsi" : "dsh", command.type === "dsisettings" ? "/dsi-settings" : "/dsh-settings", command.args, ctx, onNote);
|
|
24598
25373
|
if (command.type === "loadinjected") return runLoadInjected(command.filename, command.addPanel === true, ctx, onNote);
|
|
24599
25374
|
if (command.args !== "") {
|
|
@@ -24801,6 +25576,61 @@ async function runPromptManager(args, ctx, onNote) {
|
|
|
24801
25576
|
* forces the rebuild HERE so the panel's first fetch already carries the
|
|
24802
25577
|
* fresh snapshot. No note on success — the focused panel IS the feedback.
|
|
24803
25578
|
*/
|
|
25579
|
+
/**
|
|
25580
|
+
* /dsi-plugins (The Plugin Rack ADR, 2026-09-27, D1): aim the
|
|
25581
|
+
* PluginManagerPanel — the floor dedupes and FOCUSES the open rack (the
|
|
25582
|
+
* manager-request grammar). Snapshot-first is the ROUTE's contract
|
|
25583
|
+
* (GET /api/plugins/snapshot builds when absent, D2); the '--reload' flag
|
|
25584
|
+
* forces the rebuild HERE so the panel's first fetch already carries the
|
|
25585
|
+
* fresh snapshot. No note on success — the focused panel IS the feedback.
|
|
25586
|
+
*/
|
|
25587
|
+
async function runPluginRack(args, reload, ctx, onNote) {
|
|
25588
|
+
if (args !== "") {
|
|
25589
|
+
const usage = "usage: /dsi-plugins [--reload]";
|
|
25590
|
+
onNote?.(false, usage);
|
|
25591
|
+
return {
|
|
25592
|
+
ok: false,
|
|
25593
|
+
note: usage
|
|
25594
|
+
};
|
|
25595
|
+
}
|
|
25596
|
+
if (ctx.panelId == null) {
|
|
25597
|
+
const note = "/dsi-plugins needs a panel floor (open this session on the floor first)";
|
|
25598
|
+
onNote?.(false, note);
|
|
25599
|
+
return {
|
|
25600
|
+
ok: false,
|
|
25601
|
+
note
|
|
25602
|
+
};
|
|
25603
|
+
}
|
|
25604
|
+
if (reload) try {
|
|
25605
|
+
const res = await fetch("/api/plugins/reload", { method: "POST" });
|
|
25606
|
+
if (!res.ok) {
|
|
25607
|
+
const note = "/dsi-plugins: snapshot rebuild failed (" + res.status + ")";
|
|
25608
|
+
onNote?.(false, note);
|
|
25609
|
+
return {
|
|
25610
|
+
ok: false,
|
|
25611
|
+
note
|
|
25612
|
+
};
|
|
25613
|
+
}
|
|
25614
|
+
} catch {
|
|
25615
|
+
const note = "/dsi-plugins: snapshot rebuild failed (network)";
|
|
25616
|
+
onNote?.(false, note);
|
|
25617
|
+
return {
|
|
25618
|
+
ok: false,
|
|
25619
|
+
note
|
|
25620
|
+
};
|
|
25621
|
+
}
|
|
25622
|
+
if (!addPanel({
|
|
25623
|
+
afterSessionId: ctx.sessionId
|
|
25624
|
+
})) {
|
|
25625
|
+
const note = "/dsi-plugins: the floor is not mounted";
|
|
25626
|
+
onNote?.(false, note);
|
|
25627
|
+
return {
|
|
25628
|
+
ok: false,
|
|
25629
|
+
note
|
|
25630
|
+
};
|
|
25631
|
+
}
|
|
25632
|
+
return { ok: true };
|
|
25633
|
+
}
|
|
24804
25634
|
async function runSkillShelf(args, reload, ctx, onNote) {
|
|
24805
25635
|
if (args !== "") {
|
|
24806
25636
|
const usage = "usage: /dsi-skills [--reload]";
|
|
@@ -27126,11 +27956,11 @@ function SettingsSkillsToolbar($$renderer, $$props) {
|
|
|
27126
27956
|
});
|
|
27127
27957
|
}
|
|
27128
27958
|
//#endregion
|
|
27129
|
-
//#region src/lib/components/settings-skills/
|
|
27130
|
-
function
|
|
27959
|
+
//#region src/lib/components/settings-skills/SettingsSkillsHeaderTabs.svelte
|
|
27960
|
+
function SettingsSkillsHeaderTabs($$renderer, $$props) {
|
|
27131
27961
|
$$renderer.component(($$renderer) => {
|
|
27132
27962
|
/**
|
|
27133
|
-
*
|
|
27963
|
+
* SettingsSkillsHeaderTabs — the shelf's own tab pill (The Shelf
|
|
27134
27964
|
* Chrome, D3): the joined-pill segmented grammar (class:on,
|
|
27135
27965
|
* aria-pressed) speaking the shelf's native tab names directly —
|
|
27136
27966
|
* install / uninstall, plain labels, no counts. Install is the
|
|
@@ -27138,11 +27968,95 @@ function SettingsSkillsTabgroup($$renderer, $$props) {
|
|
|
27138
27968
|
* renders the two segments and reports picks.
|
|
27139
27969
|
*/
|
|
27140
27970
|
let { tab = "install"} = $$props;
|
|
27141
|
-
$$renderer.push(`<div data-svelte="
|
|
27971
|
+
$$renderer.push(`<div data-svelte="SettingsSkillsHeaderTabs" class="seg-group svelte-34npwv" role="group"${attr("aria-label", t(skillsshelftitle2))} data-testid="shelf-tab-group"><button type="button"${attr_class("seg left svelte-34npwv", void 0, { "on": tab === "install" })}${attr("aria-pressed", tab === "install")} data-testid="shelf-tab-install">${escape_html(t(skillsshelftabinstall3))}</button> <button type="button"${attr_class("seg right svelte-34npwv", void 0, { "on": tab === "uninstall" })}${attr("aria-pressed", tab === "uninstall")} data-testid="shelf-tab-uninstall">${escape_html(t(skillsshelftabuninstall3))}</button></div>`);
|
|
27972
|
+
});
|
|
27973
|
+
}
|
|
27974
|
+
//#endregion
|
|
27975
|
+
//#region src/lib/components/settings-skills/SettingsSkillsHeaderActions.svelte
|
|
27976
|
+
function SettingsSkillsHeaderActions($$renderer, $$props) {
|
|
27977
|
+
$$renderer.component(($$renderer) => {
|
|
27978
|
+
/**
|
|
27979
|
+
* SettingsSkillsHeaderActions - the shelf header's action cluster
|
|
27980
|
+
* (The Shelf Chrome ADR): the reload verb + progress/cancel
|
|
27981
|
+
* (install tab only) and the lineage-fold pill (cross-tab by
|
|
27982
|
+
* contract, ADR D2). Presentational: every verb and all state are
|
|
27983
|
+
* owned by SettingsSkillsPanel.
|
|
27984
|
+
*/
|
|
27985
|
+
let { tab, reloadState, busy} = $$props;
|
|
27986
|
+
$$renderer.push(`<div data-svelte="SettingsSkillsHeaderActions" class="shelf-header-actions svelte-1c0ydto">`);
|
|
27987
|
+
if (tab === "install") {
|
|
27988
|
+
$$renderer.push("<!--[0-->");
|
|
27989
|
+
$$renderer.push(`<button type="button"${attr_class("shelf-reload svelte-1c0ydto", void 0, {
|
|
27990
|
+
"reloading": reloadState === "loading",
|
|
27991
|
+
"reloaded": reloadState === "done"
|
|
27992
|
+
})} data-testid="shelf-reload"${attr("data-reload-state", reloadState)}${attr("title", reloadState === "loading" ? t(skillsshelfreloading2) : reloadState === "done" ? t(skillsshelfreloaded2) : t(skillsshelfreload2))}${attr("aria-label", reloadState === "loading" ? t(skillsshelfreloading2) : reloadState === "done" ? t(skillsshelfreloaded2) : t(skillsshelfreload2))}${attr("disabled", busy, true)}>`);
|
|
27993
|
+
if (reloadState === "loading") {
|
|
27994
|
+
$$renderer.push("<!--[0-->");
|
|
27995
|
+
Loader_circle($$renderer, {
|
|
27996
|
+
size: 13,
|
|
27997
|
+
"aria-hidden": "true"
|
|
27998
|
+
});
|
|
27999
|
+
} else if (reloadState === "done") {
|
|
28000
|
+
$$renderer.push("<!--[1-->");
|
|
28001
|
+
Check($$renderer, {
|
|
28002
|
+
size: 13,
|
|
28003
|
+
"aria-hidden": "true"
|
|
28004
|
+
});
|
|
28005
|
+
} else {
|
|
28006
|
+
$$renderer.push("<!--[-1-->");
|
|
28007
|
+
Rotate_cw($$renderer, {
|
|
28008
|
+
size: 13,
|
|
28009
|
+
"aria-hidden": "true"
|
|
28010
|
+
});
|
|
28011
|
+
}
|
|
28012
|
+
$$renderer.push(`<!--]--> `);
|
|
28013
|
+
$$renderer.push("<!--[-1-->");
|
|
28014
|
+
$$renderer.push(`<!--]--></button> `);
|
|
28015
|
+
if (tab === "install" && reloadState === "loading") {
|
|
28016
|
+
$$renderer.push("<!--[0-->");
|
|
28017
|
+
$$renderer.push(`<button type="button" class="shelf-reload-cancel svelte-1c0ydto" data-testid="shelf-reload-cancel"${attr("title", t(skillsshelfreloadcancel3))}${attr("aria-label", t(skillsshelfreloadcancel3))}>`);
|
|
28018
|
+
X($$renderer, {
|
|
28019
|
+
size: 13,
|
|
28020
|
+
"aria-hidden": "true"
|
|
28021
|
+
});
|
|
28022
|
+
$$renderer.push(`<!----></button>`);
|
|
28023
|
+
} else $$renderer.push("<!--[-1-->");
|
|
28024
|
+
$$renderer.push(`<!--]-->`);
|
|
28025
|
+
} else $$renderer.push("<!--[-1-->");
|
|
28026
|
+
$$renderer.push(`<!--]--> <div class="seg-group svelte-1c0ydto" role="group"${attr("aria-label", t(skillsshelftitle2))} data-testid="shelf-fold-toggle"><button type="button" class="seg left svelte-1c0ydto"${attr("aria-label", t(skillsshelfcollapseall3))}${attr("title", t(skillsshelfcollapseall3))} data-testid="shelf-collapse-all">`);
|
|
28027
|
+
Chevrons_down_up($$renderer, {
|
|
28028
|
+
size: 12,
|
|
28029
|
+
"aria-hidden": "true"
|
|
28030
|
+
});
|
|
28031
|
+
$$renderer.push(`<!----></button> <button type="button" class="seg right svelte-1c0ydto"${attr("aria-label", t(skillsshelfexpandall3))}${attr("title", t(skillsshelfexpandall3))} data-testid="shelf-expand-all">`);
|
|
28032
|
+
Chevrons_up_down($$renderer, {
|
|
28033
|
+
size: 12,
|
|
28034
|
+
"aria-hidden": "true"
|
|
28035
|
+
});
|
|
28036
|
+
$$renderer.push(`<!----></button></div></div>`);
|
|
27142
28037
|
});
|
|
27143
28038
|
}
|
|
27144
28039
|
//#endregion
|
|
27145
|
-
//#region src/lib/
|
|
28040
|
+
//#region src/lib/components/settings-skills/SettingsSkillsHeader.svelte
|
|
28041
|
+
function SettingsSkillsHeader($$renderer, $$props) {
|
|
28042
|
+
/**
|
|
28043
|
+
* SettingsSkillsHeader - the shelf chrome's header row (The Shelf
|
|
28044
|
+
* Chrome ADR): tab group on the left, action cluster on the right —
|
|
28045
|
+
* the reload verb + progress/cancel (install tab only) and the
|
|
28046
|
+
* lineage-fold pill (cross-tab by contract, ADR D2). Presentational:
|
|
28047
|
+
* every verb and all state are owned by SettingsSkillsPanel.
|
|
28048
|
+
*/
|
|
28049
|
+
let { tab, reloadState, busy} = $$props;
|
|
28050
|
+
$$renderer.push(`<div data-svelte="SettingsSkillsHeader" class="shelf-header svelte-17gmpcz" data-testid="shelf-header">`);
|
|
28051
|
+
SettingsSkillsHeaderTabs($$renderer, {
|
|
28052
|
+
tab});
|
|
28053
|
+
$$renderer.push(`<!----> `);
|
|
28054
|
+
SettingsSkillsHeaderActions($$renderer, {
|
|
28055
|
+
tab,
|
|
28056
|
+
reloadState,
|
|
28057
|
+
busy});
|
|
28058
|
+
$$renderer.push(`<!----></div>`);
|
|
28059
|
+
}
|
|
27146
28060
|
/**
|
|
27147
28061
|
* What the button should show RIGHT NOW. The deadline, not the mount moment,
|
|
27148
28062
|
* is the contract: a done blob past its doneAt reads idle even before the
|
|
@@ -27156,7 +28070,6 @@ function visiblePhase(state, now) {
|
|
|
27156
28070
|
function SettingsSkillsPanel($$renderer, $$props) {
|
|
27157
28071
|
$$renderer.component(($$renderer) => {
|
|
27158
28072
|
let busy = false;
|
|
27159
|
-
let progress = null;
|
|
27160
28073
|
const reloadState = derived(() => visiblePhase());
|
|
27161
28074
|
/** Persisted reload feedback (hard-reload survival): a restored
|
|
27162
28075
|
* 'done' lives out its remaining 5s window; a restored 'loading'
|
|
@@ -27181,64 +28094,149 @@ function SettingsSkillsPanel($$renderer, $$props) {
|
|
|
27181
28094
|
$$settled = false;
|
|
27182
28095
|
}
|
|
27183
28096
|
});
|
|
27184
|
-
$$renderer.push(`<!---->
|
|
27185
|
-
|
|
27186
|
-
tab
|
|
27187
|
-
|
|
27188
|
-
|
|
28097
|
+
$$renderer.push(`<!----> `);
|
|
28098
|
+
SettingsSkillsHeader($$renderer, {
|
|
28099
|
+
tab,
|
|
28100
|
+
reloadState: reloadState(),
|
|
28101
|
+
busy});
|
|
28102
|
+
$$renderer.push(`<!----> `);
|
|
28103
|
+
{
|
|
27189
28104
|
$$renderer.push("<!--[0-->");
|
|
27190
|
-
$$renderer.push(`<
|
|
27191
|
-
|
|
27192
|
-
|
|
27193
|
-
|
|
27194
|
-
|
|
27195
|
-
|
|
27196
|
-
|
|
27197
|
-
|
|
27198
|
-
|
|
27199
|
-
|
|
27200
|
-
|
|
27201
|
-
|
|
27202
|
-
|
|
27203
|
-
|
|
27204
|
-
|
|
27205
|
-
|
|
27206
|
-
|
|
27207
|
-
|
|
27208
|
-
|
|
27209
|
-
|
|
27210
|
-
|
|
27211
|
-
|
|
28105
|
+
$$renderer.push(`<p class="shelf-note svelte-lnunga" data-testid="shelf-loading">${escape_html(t(skillsshelfloading2))}</p>`);
|
|
28106
|
+
}
|
|
28107
|
+
$$renderer.push(`<!--]--></div>`);
|
|
28108
|
+
}
|
|
28109
|
+
do {
|
|
28110
|
+
$$settled = true;
|
|
28111
|
+
$$inner_renderer = $$renderer.copy();
|
|
28112
|
+
$$render_inner($$inner_renderer);
|
|
28113
|
+
} while (!$$settled);
|
|
28114
|
+
$$renderer.subsume($$inner_renderer);
|
|
28115
|
+
});
|
|
28116
|
+
}
|
|
28117
|
+
//#endregion
|
|
28118
|
+
//#region src/lib/components/settings-plugins/PluginManagerHeaderTabs.svelte
|
|
28119
|
+
function PluginManagerHeaderTabs($$renderer, $$props) {
|
|
28120
|
+
$$renderer.component(($$renderer) => {
|
|
28121
|
+
/**
|
|
28122
|
+
* PluginManagerHeaderTabs - the rack's install/uninstall tab pill
|
|
28123
|
+
* (The Plugin Rack ADR, 2026-09-27, D1), the shelf HeaderTabs'
|
|
28124
|
+
* joined-pill segmented grammar (SettingsSkillsHeaderTabs, D3):
|
|
28125
|
+
* presentational - tab state lives in PluginManagerPanel, this only
|
|
28126
|
+
* renders the two segments and reports picks.
|
|
28127
|
+
*/
|
|
28128
|
+
let { tab} = $$props;
|
|
28129
|
+
$$renderer.push(`<div data-svelte="PluginManagerHeaderTabs" class="seg-group svelte-srf628" role="group"${attr("aria-label", t(pluginracktitle2))} data-testid="rack-tabs"><button type="button"${attr_class("seg left svelte-srf628", void 0, { "on": tab === "install" })}${attr("aria-pressed", tab === "install")} data-testid="rack-tab-install">${escape_html(t(pluginrackinstall2))}</button> <button type="button"${attr_class("seg right svelte-srf628", void 0, { "on": tab === "uninstall" })}${attr("aria-pressed", tab === "uninstall")} data-testid="rack-tab-uninstall">${escape_html(t(pluginrackuninstall2))}</button></div>`);
|
|
28130
|
+
});
|
|
28131
|
+
}
|
|
28132
|
+
//#endregion
|
|
28133
|
+
//#region src/lib/components/settings-plugins/PluginManagerHeaderActions.svelte
|
|
28134
|
+
function PluginManagerHeaderActions($$renderer, $$props) {
|
|
28135
|
+
$$renderer.component(($$renderer) => {
|
|
28136
|
+
/**
|
|
28137
|
+
* PluginManagerHeaderActions - the rack header's action cluster,
|
|
28138
|
+
* the shelf HeaderActions' grammar (SettingsSkillsHeaderActions,
|
|
28139
|
+
* The Shelf Chrome ADR): the reload verb. Presentational: every
|
|
28140
|
+
* verb and all state are owned by PluginManagerPanel.
|
|
28141
|
+
*/
|
|
28142
|
+
let { loading, floorBounce} = $$props;
|
|
28143
|
+
$$renderer.push(`<div data-svelte="PluginManagerHeaderActions" class="rack-header-actions svelte-1g0idp7"><button class="rack-reload svelte-1g0idp7" type="button"${attr("title", t(pluginrackreload2))}${attr("aria-label", t(pluginrackreload2))} data-testid="rack-reload"${attr("disabled", loading || floorBounce, true)}>`);
|
|
28144
|
+
Rotate_cw($$renderer, { size: 14 });
|
|
28145
|
+
$$renderer.push(`<!----></button></div>`);
|
|
28146
|
+
});
|
|
28147
|
+
}
|
|
28148
|
+
//#endregion
|
|
28149
|
+
//#region src/lib/components/settings-plugins/PluginManagerHeader.svelte
|
|
28150
|
+
function PluginManagerHeader($$renderer, $$props) {
|
|
28151
|
+
/**
|
|
28152
|
+
* PluginManagerHeader - the rack chrome's header row (The Plugin Rack
|
|
28153
|
+
* ADR, 2026-09-27, D1), the shelf Header's grammar: the tab group on
|
|
28154
|
+
* the left, the action cluster on the right.
|
|
28155
|
+
* Presentational: every verb and all state are owned by
|
|
28156
|
+
* PluginManagerPanel.
|
|
28157
|
+
*/
|
|
28158
|
+
let { tab, loading, floorBounce} = $$props;
|
|
28159
|
+
$$renderer.push(`<div data-svelte="PluginManagerHeader" class="rack-head svelte-1lc924" data-testid="rack-header">`);
|
|
28160
|
+
PluginManagerHeaderTabs($$renderer, {
|
|
28161
|
+
tab});
|
|
28162
|
+
$$renderer.push(`<!----> `);
|
|
28163
|
+
PluginManagerHeaderActions($$renderer, {
|
|
28164
|
+
loading,
|
|
28165
|
+
floorBounce});
|
|
28166
|
+
$$renderer.push(`<!----></div>`);
|
|
28167
|
+
}
|
|
28168
|
+
//#endregion
|
|
28169
|
+
//#region src/lib/components/settings-plugins/PluginManagerToolbar.svelte
|
|
28170
|
+
function PluginManagerToolbar($$renderer, $$props) {
|
|
28171
|
+
$$renderer.component(($$renderer) => {
|
|
28172
|
+
/**
|
|
28173
|
+
* PluginManagerToolbar — the rack's first chrome row, the shelf
|
|
28174
|
+
* Toolbar's grammar (SettingsSkillsToolbar, The Shelf Chrome ADR D2):
|
|
28175
|
+
* LEFT the snapshot timestamp; RIGHT the search input and the panel
|
|
28176
|
+
* capture. Presentational: the panel owns searchQ ($bindable — the
|
|
28177
|
+
* box owns keystrokes, the panel owns the value); this renders the row.
|
|
28178
|
+
*/
|
|
28179
|
+
let { generatedAt, searchQ = "", container } = $$props;
|
|
28180
|
+
$$renderer.push(`<div data-svelte="PluginManagerToolbar" class="rack-toolbar svelte-m789m0" data-testid="rack-toolbar"><span class="rack-generated-label svelte-m789m0" data-testid="rack-generated">${escape_html(t(skillsshelfgeneratedat3))}: ${escape_html(generatedAt)}</span> <div class="rack-toolbar-actions svelte-m789m0"><input class="rack-search svelte-m789m0" type="search"${attr("placeholder", t(pluginracksearch2))}${attr("aria-label", t(pluginracksearch2))}${attr("value", searchQ)} data-testid="rack-search"/> <span class="copy-slot svelte-m789m0">`);
|
|
28181
|
+
CanvasCopyButton($$renderer, {
|
|
28182
|
+
container,
|
|
28183
|
+
mode: "visible",
|
|
28184
|
+
title: t(copypanelasimage3),
|
|
28185
|
+
size: 12
|
|
28186
|
+
});
|
|
28187
|
+
$$renderer.push(`<!----></span></div></div>`);
|
|
28188
|
+
bind_props($$props, { searchQ });
|
|
28189
|
+
});
|
|
28190
|
+
}
|
|
28191
|
+
//#endregion
|
|
28192
|
+
//#region src/lib/components/settings-plugins/PluginManagerPanel.svelte
|
|
28193
|
+
function PluginManagerPanel($$renderer, $$props) {
|
|
28194
|
+
$$renderer.component(($$renderer) => {
|
|
28195
|
+
/**
|
|
28196
|
+
* PluginManagerPanel — The Plugin Rack (ADR 2026-09-27, D1): the
|
|
28197
|
+
* panel is the STATE OWNER and owns its fetches (/api/plugins/*);
|
|
28198
|
+
* it never touches the engine or dsh. One list, per-row verb: an
|
|
28199
|
+
* uninstalled row offers install, an installed row offers uninstall
|
|
28200
|
+
* (the manifest is the uninstall authority, D4 — the snapshot's
|
|
28201
|
+
* installed flag is the API's derived copy). A successful apply ends
|
|
28202
|
+
* with the DSH restart chain: the floor goes down and re-attaches on
|
|
28203
|
+
* the same URL (D5) — the banner says so BEFORE the fetch storms.
|
|
28204
|
+
*/
|
|
28205
|
+
/** Persisted chrome (the explorer-tab pattern): the active pill tab.
|
|
28206
|
+
* Junk sanitizes to 'install'. */
|
|
28207
|
+
/** Reports the active tab up to the panel entry (hard-reload survival). */
|
|
28208
|
+
let { initialTab = "install"} = $$props;
|
|
28209
|
+
let loading = true;
|
|
28210
|
+
let floorBounce = false;
|
|
28211
|
+
let tab = initialTab === "uninstall" ? "uninstall" : "install";
|
|
28212
|
+
let searchQ = "";
|
|
28213
|
+
let rootEl = null;
|
|
28214
|
+
let $$settled = true;
|
|
28215
|
+
let $$inner_renderer;
|
|
28216
|
+
function $$render_inner($$renderer) {
|
|
28217
|
+
$$renderer.push(`<div data-svelte="PluginManagerPanel" class="rack svelte-z3jis1" data-testid="rack-body">`);
|
|
28218
|
+
PluginManagerToolbar($$renderer, {
|
|
28219
|
+
generatedAt: "",
|
|
28220
|
+
container: rootEl,
|
|
28221
|
+
get searchQ() {
|
|
28222
|
+
return searchQ;
|
|
28223
|
+
},
|
|
28224
|
+
set searchQ($$value) {
|
|
28225
|
+
searchQ = $$value;
|
|
28226
|
+
$$settled = false;
|
|
27212
28227
|
}
|
|
27213
|
-
$$renderer.push(`<!--]--> `);
|
|
27214
|
-
if (reloadState() === "loading" && progress);
|
|
27215
|
-
else $$renderer.push("<!--[-1-->");
|
|
27216
|
-
$$renderer.push(`<!--]--></button> `);
|
|
27217
|
-
if (tab === "install" && reloadState() === "loading") {
|
|
27218
|
-
$$renderer.push("<!--[0-->");
|
|
27219
|
-
$$renderer.push(`<button type="button" class="shelf-reload-cancel svelte-lnunga" data-testid="shelf-reload-cancel"${attr("title", t(skillsshelfreloadcancel3))}${attr("aria-label", t(skillsshelfreloadcancel3))}>`);
|
|
27220
|
-
X($$renderer, {
|
|
27221
|
-
size: 13,
|
|
27222
|
-
"aria-hidden": "true"
|
|
27223
|
-
});
|
|
27224
|
-
$$renderer.push(`<!----></button>`);
|
|
27225
|
-
} else $$renderer.push("<!--[-1-->");
|
|
27226
|
-
$$renderer.push(`<!--]-->`);
|
|
27227
|
-
} else $$renderer.push("<!--[-1-->");
|
|
27228
|
-
$$renderer.push(`<!--]--> <div class="seg-group svelte-lnunga" role="group"${attr("aria-label", t(skillsshelftitle2))} data-testid="shelf-fold-toggle"><button type="button" class="seg left svelte-lnunga"${attr("aria-label", t(skillsshelfcollapseall3))}${attr("title", t(skillsshelfcollapseall3))} data-testid="shelf-collapse-all">`);
|
|
27229
|
-
Chevrons_down_up($$renderer, {
|
|
27230
|
-
size: 12,
|
|
27231
|
-
"aria-hidden": "true"
|
|
27232
|
-
});
|
|
27233
|
-
$$renderer.push(`<!----></button> <button type="button" class="seg right svelte-lnunga"${attr("aria-label", t(skillsshelfexpandall3))}${attr("title", t(skillsshelfexpandall3))} data-testid="shelf-expand-all">`);
|
|
27234
|
-
Chevrons_up_down($$renderer, {
|
|
27235
|
-
size: 12,
|
|
27236
|
-
"aria-hidden": "true"
|
|
27237
28228
|
});
|
|
27238
|
-
$$renderer.push(
|
|
28229
|
+
$$renderer.push(`<!----> `);
|
|
28230
|
+
PluginManagerHeader($$renderer, {
|
|
28231
|
+
tab,
|
|
28232
|
+
loading,
|
|
28233
|
+
floorBounce});
|
|
28234
|
+
$$renderer.push(`<!----> `);
|
|
27239
28235
|
{
|
|
27240
|
-
$$renderer.push("<!--[
|
|
27241
|
-
$$renderer.push(`<
|
|
28236
|
+
$$renderer.push("<!--[1-->");
|
|
28237
|
+
$$renderer.push(`<div class="rack-note svelte-z3jis1"><span class="spin svelte-z3jis1">`);
|
|
28238
|
+
Loader_circle($$renderer, { size: 14 });
|
|
28239
|
+
$$renderer.push(`<!----></span></div>`);
|
|
27242
28240
|
}
|
|
27243
28241
|
$$renderer.push(`<!--]--></div>`);
|
|
27244
28242
|
}
|
|
@@ -28330,7 +29328,7 @@ function isPanelEntry(value) {
|
|
|
28330
29328
|
if (value === null || typeof value !== "object") return false;
|
|
28331
29329
|
const entry = value;
|
|
28332
29330
|
if (typeof entry.id !== "string" || entry.id.length === 0) return false;
|
|
28333
|
-
if (entry.kind !== void 0 && entry.kind !== "conversation" && entry.kind !== "prompt-manager" && entry.kind !== "settings-editor" && entry.kind !== "injected-doc" && entry.kind !== "skill-shelf" && entry.kind !== "workspace-explorer" && entry.kind !== "workspace-file" && entry.kind !== "terminal") return false;
|
|
29331
|
+
if (entry.kind !== void 0 && entry.kind !== "conversation" && entry.kind !== "prompt-manager" && entry.kind !== "settings-editor" && entry.kind !== "injected-doc" && entry.kind !== "skill-shelf" && entry.kind !== "plugin-rack" && entry.kind !== "workspace-explorer" && entry.kind !== "workspace-file" && entry.kind !== "terminal") return false;
|
|
28334
29332
|
if (entry.kind === "settings-editor" && entry.target !== "dsi" && entry.target !== "dsh") return false;
|
|
28335
29333
|
if (entry.kind === "workspace-explorer") {
|
|
28336
29334
|
if (entry.sessionId !== null && (typeof entry.sessionId !== "string" || entry.sessionId.length === 0)) return false;
|
|
@@ -28347,7 +29345,7 @@ function isPanelEntry(value) {
|
|
|
28347
29345
|
if (typeof entry.sourceSessionId !== "string" || entry.sourceSessionId.length === 0) return false;
|
|
28348
29346
|
if (typeof entry.displayPath !== "string" || entry.displayPath.length === 0) return false;
|
|
28349
29347
|
}
|
|
28350
|
-
if (entry.kind !== "prompt-manager" && entry.kind !== "settings-editor" && entry.kind !== "skill-shelf" && entry.kind !== "injected-doc" && entry.kind !== "workspace-explorer" && entry.kind !== "workspace-file" && entry.kind !== "terminal") {
|
|
29348
|
+
if (entry.kind !== "prompt-manager" && entry.kind !== "settings-editor" && entry.kind !== "skill-shelf" && entry.kind !== "plugin-rack" && entry.kind !== "injected-doc" && entry.kind !== "workspace-explorer" && entry.kind !== "workspace-file" && entry.kind !== "terminal") {
|
|
28351
29349
|
if (typeof entry.sessionId !== "string" || entry.sessionId.length === 0) return false;
|
|
28352
29350
|
if (entry.agentPreset !== void 0 && typeof entry.agentPreset !== "string" && entry.agentPreset !== null) return false;
|
|
28353
29351
|
}
|
|
@@ -28367,7 +29365,7 @@ function sanitizePanels(raw) {
|
|
|
28367
29365
|
if (!Array.isArray(raw)) return [];
|
|
28368
29366
|
const seen = /* @__PURE__ */ new Set();
|
|
28369
29367
|
return raw.filter((entry) => isPanelEntry(entry)).map((entry) => {
|
|
28370
|
-
const kindDefault = entry.kind === "skill-shelf" ? shelfPanelWidth() : entry.kind === "workspace-explorer" ? 850 : entry.kind === "workspace-file" ? 850 : defaultPanelWidth();
|
|
29368
|
+
const kindDefault = entry.kind === "skill-shelf" ? shelfPanelWidth() : entry.kind === "plugin-rack" ? shelfPanelWidth() : entry.kind === "workspace-explorer" ? 850 : entry.kind === "workspace-file" ? 850 : defaultPanelWidth();
|
|
28371
29369
|
const width = clampPanelWidth(typeof entry.width === "number" && Number.isFinite(entry.width) ? entry.width : kindDefault, entry.kind);
|
|
28372
29370
|
if (entry.kind === "prompt-manager") return {
|
|
28373
29371
|
id: entry.id,
|
|
@@ -28411,6 +29409,12 @@ function sanitizePanels(raw) {
|
|
|
28411
29409
|
width
|
|
28412
29410
|
};
|
|
28413
29411
|
}
|
|
29412
|
+
if (entry.kind === "plugin-rack") return {
|
|
29413
|
+
id: entry.id,
|
|
29414
|
+
kind: "plugin-rack",
|
|
29415
|
+
tab: entry.tab === "uninstall" ? "uninstall" : "install",
|
|
29416
|
+
width
|
|
29417
|
+
};
|
|
28414
29418
|
if (entry.kind === "injected-doc") return {
|
|
28415
29419
|
id: entry.id,
|
|
28416
29420
|
kind: "injected-doc",
|
|
@@ -29671,8 +30675,14 @@ function _page($$renderer, $$props) {
|
|
|
29671
30675
|
host: "panel"
|
|
29672
30676
|
});
|
|
29673
30677
|
$$renderer.push(`<!----></div>`);
|
|
29674
|
-
} else if (panel.kind === "
|
|
30678
|
+
} else if (panel.kind === "plugin-rack") {
|
|
29675
30679
|
$$renderer.push("<!--[2-->");
|
|
30680
|
+
$$renderer.push(`<div class="panel-manager-body svelte-1uha8ag" data-testid="panel-plugins">`);
|
|
30681
|
+
PluginManagerPanel($$renderer, {
|
|
30682
|
+
initialTab: panel.tab ?? "install"});
|
|
30683
|
+
$$renderer.push(`<!----></div>`);
|
|
30684
|
+
} else if (panel.kind === "skill-shelf") {
|
|
30685
|
+
$$renderer.push("<!--[3-->");
|
|
29676
30686
|
$$renderer.push(`<div class="panel-manager-body svelte-1uha8ag" data-testid="panel-skills">`);
|
|
29677
30687
|
SettingsSkillsPanel($$renderer, {
|
|
29678
30688
|
initialTab: panel.tab ?? "install",
|
|
@@ -29681,13 +30691,13 @@ function _page($$renderer, $$props) {
|
|
|
29681
30691
|
initialReload: panel.reload ?? null});
|
|
29682
30692
|
$$renderer.push(`<!----></div>`);
|
|
29683
30693
|
} else if (panel.kind === "settings-editor") {
|
|
29684
|
-
$$renderer.push("<!--[
|
|
30694
|
+
$$renderer.push("<!--[4-->");
|
|
29685
30695
|
$$renderer.push(`<div class="panel-manager-body svelte-1uha8ag" data-testid="panel-settings">`);
|
|
29686
30696
|
SettingsEditorPanel($$renderer, {
|
|
29687
30697
|
target: panel.target});
|
|
29688
30698
|
$$renderer.push(`<!----></div>`);
|
|
29689
30699
|
} else if (panel.kind === "injected-doc") {
|
|
29690
|
-
$$renderer.push("<!--[
|
|
30700
|
+
$$renderer.push("<!--[5-->");
|
|
29691
30701
|
$$renderer.push(`<div class="panel-manager-body svelte-1uha8ag">`);
|
|
29692
30702
|
InjectedDocPanel($$renderer, {
|
|
29693
30703
|
sourceSessionId: panel.sourceSessionId,
|
|
@@ -29695,7 +30705,7 @@ function _page($$renderer, $$props) {
|
|
|
29695
30705
|
entries: coldCache[panel.sourceSessionId]?.entries ?? []});
|
|
29696
30706
|
$$renderer.push(`<!----></div>`);
|
|
29697
30707
|
} else if (panel.kind === "workspace-explorer") {
|
|
29698
|
-
$$renderer.push("<!--[
|
|
30708
|
+
$$renderer.push("<!--[6-->");
|
|
29699
30709
|
WorkspaceExplorerPanel($$renderer, {
|
|
29700
30710
|
sessionId: panel.sessionId,
|
|
29701
30711
|
root: panel.root,
|
|
@@ -29726,7 +30736,7 @@ function _page($$renderer, $$props) {
|
|
|
29726
30736
|
onActivateTab: (path) => activateExplorerTab(panel.id, path)
|
|
29727
30737
|
});
|
|
29728
30738
|
} else if (panel.kind === "workspace-file") {
|
|
29729
|
-
$$renderer.push("<!--[
|
|
30739
|
+
$$renderer.push("<!--[7-->");
|
|
29730
30740
|
WorkspaceFilePanel($$renderer, {
|
|
29731
30741
|
sessionId: panel.sessionId,
|
|
29732
30742
|
path: panel.path,
|
|
@@ -29736,7 +30746,7 @@ function _page($$renderer, $$props) {
|
|
|
29736
30746
|
onclose: () => removePanel(panel.id)
|
|
29737
30747
|
});
|
|
29738
30748
|
} else if (panel.kind === "conversation") {
|
|
29739
|
-
$$renderer.push("<!--[
|
|
30749
|
+
$$renderer.push("<!--[8-->");
|
|
29740
30750
|
const p = panel;
|
|
29741
30751
|
$$renderer.push(`<!---->`);
|
|
29742
30752
|
if (deadSessions[p.sessionId]) {
|
|
@@ -29898,4 +30908,4 @@ function _page($$renderer, $$props) {
|
|
|
29898
30908
|
}
|
|
29899
30909
|
|
|
29900
30910
|
export { _page as default };
|
|
29901
|
-
//# sourceMappingURL=_page.svelte.js-
|
|
30911
|
+
//# sourceMappingURL=_page.svelte.js-6A1VYbL2.js.map
|