@zerwiz/sessrumnir 0.1.16 → 0.1.17
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/out/main/index.js +0 -7
- package/out/renderer/assets/{index-DbCaU2eq.js → index-B3mV3a_n.js} +7 -122
- package/out/renderer/assets/{index-DL2o01yM.css → index-D0j--OQJ.css} +11 -2
- package/out/renderer/assets/ymir-mark-kY-7e1x6.svg +55 -0
- package/out/renderer/index.html +3 -3
- package/package.json +1 -1
- package/src/renderer/index.html +1 -1
- package/src/renderer/src/app.tsx +1 -1
- package/src/renderer/src/assets/ymir-mark.svg +55 -0
- package/src/renderer/src/components/chat-panel.tsx +2 -2
- package/src/renderer/src/components/home-screen.tsx +2 -2
- package/src/renderer/src/index.css +2 -1
- package/src/renderer/src/themes/index.ts +0 -21
- package/src/renderer/src/utils/theme.ts +1 -1
- package/src/shared/theme/builtin-ids.ts +1 -1
- package/out/renderer/assets/pi-logo-B48rElrT.svg +0 -27
package/out/main/index.js
CHANGED
|
@@ -7302,13 +7302,6 @@ function themeIdFromName(name) {
|
|
|
7302
7302
|
return name.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "");
|
|
7303
7303
|
}
|
|
7304
7304
|
const BUILTIN_THEME_IDS = [
|
|
7305
|
-
"dark",
|
|
7306
|
-
"light",
|
|
7307
|
-
"nord",
|
|
7308
|
-
"gruvbox",
|
|
7309
|
-
"breeze-dark",
|
|
7310
|
-
"breeze-light",
|
|
7311
|
-
"breeze-claudius",
|
|
7312
7305
|
"sessrumnir",
|
|
7313
7306
|
"fensalir"
|
|
7314
7307
|
];
|
|
@@ -16426,110 +16426,9 @@ function resolveThemeVars(file) {
|
|
|
16426
16426
|
return vars;
|
|
16427
16427
|
}
|
|
16428
16428
|
const BUILTIN_THEME_IDS$1 = [
|
|
16429
|
-
"dark",
|
|
16430
|
-
"light",
|
|
16431
|
-
"nord",
|
|
16432
|
-
"gruvbox",
|
|
16433
|
-
"breeze-dark",
|
|
16434
|
-
"breeze-light",
|
|
16435
|
-
"breeze-claudius",
|
|
16436
16429
|
"sessrumnir",
|
|
16437
16430
|
"fensalir"
|
|
16438
16431
|
];
|
|
16439
|
-
const $schema$8 = "pi-theme/v1";
|
|
16440
|
-
const name$a = "Dark";
|
|
16441
|
-
const kind$8 = "dark";
|
|
16442
|
-
const seeds$8 = { "app": "#0a0a0a", "surface": "#171717", "text": "#f5f5f5", "accent": "#2563eb", "success": "#34d399", "warning": "#facc15", "error": "#f87171" };
|
|
16443
|
-
const overrides$9 = { "surface-hover": "#262626", "card": "#262626", "elevated": "#404040", "highlight": "#171717", "highlight-strong": "#262626", "secondary": "#d4d4d4", "muted": "#a3a3a3", "dim": "#737373", "faint": "#525252", "ghost": "#404040", "inverse": "#0a0a0a", "border": "#262626", "border-strong": "#404040", "focus": "#3b82f6", "accent-hover": "#1d4ed8", "accent-fg": "#60a5fa", "accent-bg": "rgba(30, 58, 138, 0.3)", "success-bg": "rgba(6, 78, 59, 0.3)", "warning-bg": "rgba(113, 63, 18, 0.3)", "error-bg": "rgba(127, 29, 29, 0.3)", "info": "#60a5fa", "info-bg": "rgba(30, 58, 138, 0.3)", "special": "#c084fc", "special-bg": "rgba(88, 28, 135, 0.3)", "chat-column": "#0a0a0a", "chat-column-border": "#262626", "scrollbar": "#2a2a2a", "scrollbar-hover": "#3a3a3a", "md-code": "#60a5fa", "md-pre-bg": "#0d1117" };
|
|
16444
|
-
const dark = {
|
|
16445
|
-
$schema: $schema$8,
|
|
16446
|
-
name: name$a,
|
|
16447
|
-
kind: kind$8,
|
|
16448
|
-
seeds: seeds$8,
|
|
16449
|
-
overrides: overrides$9
|
|
16450
|
-
};
|
|
16451
|
-
const $schema$7 = "pi-theme/v1";
|
|
16452
|
-
const name$9 = "Light";
|
|
16453
|
-
const kind$7 = "light";
|
|
16454
|
-
const seeds$7 = { "app": "#ffffff", "surface": "#f5f5f5", "text": "#171717", "accent": "#2563eb", "success": "#10b981", "warning": "#f59e0b", "error": "#ef4444" };
|
|
16455
|
-
const overrides$8 = { "surface-hover": "#e5e5e5", "card": "#e5e5e5", "elevated": "#d4d4d4", "highlight": "#f5f5f5", "highlight-strong": "#e5e5e5", "secondary": "#404040", "muted": "#525252", "dim": "#737373", "faint": "#a3a3a3", "ghost": "#d4d4d4", "inverse": "#ffffff", "border": "#e5e5e5", "border-strong": "#d4d4d4", "focus": "#3b82f6", "accent-hover": "#1d4ed8", "accent-fg": "#3b82f6", "accent-bg": "rgba(30, 64, 175, 0.15)", "success-bg": "rgba(6, 95, 70, 0.15)", "warning-bg": "rgba(113, 63, 18, 0.15)", "error-bg": "rgba(153, 27, 27, 0.15)", "info": "#3b82f6", "info-bg": "rgba(30, 64, 175, 0.15)", "special": "#a855f7", "special-bg": "rgba(88, 28, 135, 0.15)", "chat-column": "#ffffff", "chat-column-border": "#e5e5e5", "scrollbar": "#d4d4d4", "scrollbar-hover": "#a3a3a3", "md-code": "#a855f7", "md-pre-bg": "#f8f9fa" };
|
|
16456
|
-
const light = {
|
|
16457
|
-
$schema: $schema$7,
|
|
16458
|
-
name: name$9,
|
|
16459
|
-
kind: kind$7,
|
|
16460
|
-
seeds: seeds$7,
|
|
16461
|
-
overrides: overrides$8
|
|
16462
|
-
};
|
|
16463
|
-
const $schema$6 = "pi-theme/v1";
|
|
16464
|
-
const name$8 = "Nord";
|
|
16465
|
-
const kind$6 = "dark";
|
|
16466
|
-
const seeds$6 = { "app": "#2E3440", "surface": "#3B4252", "text": "#ECEFF4", "accent": "#5E81AC", "success": "#A3BE8C", "warning": "#EBCB8B", "error": "#BF616A" };
|
|
16467
|
-
const overrides$7 = { "surface-hover": "#434C5E", "card": "#434C5E", "elevated": "#4C566A", "highlight": "#3B4252", "highlight-strong": "#434C5E", "secondary": "#D8DEE9", "muted": "#9599A3", "dim": "#616E88", "faint": "#4C566A", "ghost": "#434C5E", "inverse": "#2E3440", "border": "#434C5E", "border-strong": "#4C566A", "focus": "#88C0D0", "accent-hover": "#81A1C1", "accent-fg": "#81A1C1", "accent-bg": "rgba(46, 52, 64, 0.5)", "success-bg": "rgba(163, 190, 140, 0.15)", "warning-bg": "rgba(235, 203, 139, 0.15)", "error-bg": "rgba(191, 97, 106, 0.15)", "info": "#81A1C1", "info-bg": "rgba(46, 52, 64, 0.5)", "special": "#B48EAD", "special-bg": "rgba(180, 142, 173, 0.15)", "chat-column": "#2E3440", "chat-column-border": "#434C5E", "scrollbar": "#434C5E", "scrollbar-hover": "#4C566A", "md-code": "#B48EAD", "md-pre-bg": "#242932" };
|
|
16468
|
-
const syntax$6 = { "keyword": "#C792EA", "string": "#C3E88D", "comment": "#7B88A1", "function": "#82AAFF", "type": "#FFCB6B", "number": "#F78C6C", "operator": "#89DDFF", "property": "#F78C6C", "tag": "#F07178", "variable": "#EEFFFF", "constant": "#F78C6C", "heading": "#C792EA", "link": "#C3E88D", "list": "#F78C6C", "quote": "#7B88A1", "meta": "#B2CCD6", "mark": "#C792EA", "invalid": "#F07178", "active-line-bg": "rgba(216, 222, 233, 0.05)", "selection-bg": "rgba(94, 129, 172, 0.40)", "selection-match-bg": "rgba(216, 222, 233, 0.08)" };
|
|
16469
|
-
const nord = {
|
|
16470
|
-
$schema: $schema$6,
|
|
16471
|
-
name: name$8,
|
|
16472
|
-
kind: kind$6,
|
|
16473
|
-
seeds: seeds$6,
|
|
16474
|
-
overrides: overrides$7,
|
|
16475
|
-
syntax: syntax$6
|
|
16476
|
-
};
|
|
16477
|
-
const $schema$5 = "pi-theme/v1";
|
|
16478
|
-
const name$7 = "Gruvbox";
|
|
16479
|
-
const kind$5 = "dark";
|
|
16480
|
-
const seeds$5 = { "app": "#282828", "surface": "#3C3836", "text": "#EBDBB2", "accent": "#458588", "success": "#B8BB26", "warning": "#FABD2F", "error": "#FB4934" };
|
|
16481
|
-
const overrides$6 = { "surface-hover": "#504945", "card": "#504945", "elevated": "#665C54", "highlight": "#3C3836", "highlight-strong": "#504945", "secondary": "#BDAE93", "muted": "#A89984", "dim": "#928374", "faint": "#7C6F64", "ghost": "#665C54", "inverse": "#282828", "border": "#504945", "border-strong": "#665C54", "focus": "#D79921", "accent-hover": "#689D6A", "accent-fg": "#83A598", "accent-bg": "rgba(40, 40, 40, 0.5)", "success-bg": "rgba(152, 151, 26, 0.15)", "warning-bg": "rgba(215, 153, 33, 0.15)", "error-bg": "rgba(204, 36, 29, 0.15)", "info": "#83A598", "info-bg": "rgba(40, 40, 40, 0.5)", "special": "#D3869B", "special-bg": "rgba(177, 98, 134, 0.15)", "chat-column": "#282828", "chat-column-border": "#504945", "scrollbar": "#504945", "scrollbar-hover": "#665C54", "md-code": "#D3869B", "md-pre-bg": "#1D2021" };
|
|
16482
|
-
const syntax$5 = { "keyword": "#D3869B", "string": "#B8BB26", "comment": "#A89984", "function": "#FABD2F", "type": "#FABD2F", "number": "#FE8019", "operator": "#83A598", "property": "#FE8019", "tag": "#FB4934", "variable": "#EBDBB2", "constant": "#FE8019", "heading": "#D3869B", "link": "#B8BB26", "list": "#FE8019", "quote": "#A89984", "meta": "#BDAE93", "mark": "#D3869B", "invalid": "#FB4934", "active-line-bg": "rgba(235, 219, 178, 0.04)", "selection-bg": "rgba(69, 133, 136, 0.40)", "selection-match-bg": "rgba(235, 219, 178, 0.08)" };
|
|
16483
|
-
const gruvbox = {
|
|
16484
|
-
$schema: $schema$5,
|
|
16485
|
-
name: name$7,
|
|
16486
|
-
kind: kind$5,
|
|
16487
|
-
seeds: seeds$5,
|
|
16488
|
-
overrides: overrides$6,
|
|
16489
|
-
syntax: syntax$5
|
|
16490
|
-
};
|
|
16491
|
-
const $schema$4 = "pi-theme/v1";
|
|
16492
|
-
const name$6 = "Breeze Dark";
|
|
16493
|
-
const kind$4 = "dark";
|
|
16494
|
-
const seeds$4 = { "app": "#232629", "surface": "#31363b", "text": "#cfcfc2", "accent": "#2980b9", "success": "#1c8042", "warning": "#fdbc4b", "error": "#da4453" };
|
|
16495
|
-
const overrides$5 = { "surface-hover": "#3f4347", "card": "#3f4347", "elevated": "#4d5358", "highlight": "#31363b", "highlight-strong": "#3f4347", "secondary": "#a5a6a8", "muted": "#898a8c", "dim": "#7a7c7d", "faint": "#5f6266", "ghost": "#4d5358", "inverse": "#232629", "border": "#3f4347", "border-strong": "#4d5358", "focus": "#3daee9", "accent-hover": "#3daee9", "accent-fg": "#3daee9", "accent-bg": "rgba(45, 92, 118, 0.5)", "success-bg": "rgba(28, 128, 66, 0.15)", "warning-bg": "rgba(246, 116, 0, 0.15)", "error-bg": "rgba(218, 68, 83, 0.15)", "info": "#3daee9", "info-bg": "rgba(45, 92, 118, 0.5)", "special": "#8e44ad", "special-bg": "rgba(142, 68, 173, 0.15)", "chat-column": "#232629", "chat-column-border": "#3f4347", "scrollbar": "#3f4347", "scrollbar-hover": "#4d5358", "md-code": "#60a5fa", "md-pre-bg": "#1d2024" };
|
|
16496
|
-
const syntax$4 = { "keyword": "#fdbc4b", "string": "#f44f4f", "comment": "#7a7c7d", "function": "#8e44ad", "type": "#2980b9", "number": "#f67400", "operator": "#3f8058", "property": "#27aeae", "tag": "#2980b9", "variable": "#cfcfc2", "constant": "#27aeae", "heading": "#8e44ad", "link": "#0099ff", "list": "#da4453", "quote": "#7a7c7d", "meta": "#a5a6a8", "mark": "#8e44ad", "invalid": "#da4453", "active-line-bg": "#2A2E32", "selection-bg": "rgba(45, 92, 118, 0.65)", "selection-match-bg": "rgba(65, 72, 87, 0.5)" };
|
|
16497
|
-
const breezeDark = {
|
|
16498
|
-
$schema: $schema$4,
|
|
16499
|
-
name: name$6,
|
|
16500
|
-
kind: kind$4,
|
|
16501
|
-
seeds: seeds$4,
|
|
16502
|
-
overrides: overrides$5,
|
|
16503
|
-
syntax: syntax$4
|
|
16504
|
-
};
|
|
16505
|
-
const $schema$3 = "pi-theme/v1";
|
|
16506
|
-
const name$5 = "Breeze Light";
|
|
16507
|
-
const kind$3 = "light";
|
|
16508
|
-
const seeds$3 = { "app": "#ffffff", "surface": "#f8f7f6", "text": "#1f1c1b", "accent": "#0057ae", "success": "#006e28", "warning": "#b08000", "error": "#bf0303" };
|
|
16509
|
-
const overrides$4 = { "surface-hover": "#ebebeb", "card": "#ebebeb", "elevated": "#d8d8d8", "highlight": "#f8f7f6", "highlight-strong": "#ebebeb", "secondary": "#444444", "muted": "#5d5d5d", "dim": "#7a7c7d", "faint": "#898887", "ghost": "#d8d8d8", "inverse": "#ffffff", "border": "#d8d8d8", "border-strong": "#c0c0bf", "focus": "#0057ae", "accent-hover": "#2980b9", "accent-fg": "#0057ae", "accent-bg": "rgba(0, 87, 174, 0.12)", "success-bg": "rgba(0, 110, 40, 0.12)", "warning-bg": "rgba(176, 128, 0, 0.12)", "error-bg": "rgba(191, 3, 3, 0.12)", "info": "#0057ae", "info-bg": "rgba(0, 87, 174, 0.12)", "special": "#644a9b", "special-bg": "rgba(100, 74, 155, 0.12)", "chat-column": "#ffffff", "chat-column-border": "#d8d8d8", "scrollbar": "#d8d8d8", "scrollbar-hover": "#898887", "md-code": "#644a9b", "md-pre-bg": "#f8f7f6" };
|
|
16510
|
-
const syntax$3 = { "keyword": "#b08000", "string": "#bf0303", "comment": "#898887", "function": "#644a9b", "type": "#0057ae", "number": "#b08000", "operator": "#ca60ca", "property": "#0057ae", "tag": "#0057ae", "variable": "#1f1c1b", "constant": "#aa5500", "heading": "#644a9b", "link": "#0095ff", "list": "#bf0303", "quote": "#898887", "meta": "#898887", "mark": "#644a9b", "invalid": "#bf0303", "active-line-bg": "#f8f7f6", "selection-bg": "rgba(148, 202, 239, 0.6)", "selection-match-bg": "rgba(0, 0, 0, 0.05)" };
|
|
16511
|
-
const breezeLight = {
|
|
16512
|
-
$schema: $schema$3,
|
|
16513
|
-
name: name$5,
|
|
16514
|
-
kind: kind$3,
|
|
16515
|
-
seeds: seeds$3,
|
|
16516
|
-
overrides: overrides$4,
|
|
16517
|
-
syntax: syntax$3
|
|
16518
|
-
};
|
|
16519
|
-
const $schema$2 = "pi-theme/v1";
|
|
16520
|
-
const name$4 = "Breeze Claudius";
|
|
16521
|
-
const kind$2 = "dark";
|
|
16522
|
-
const seeds$2 = { "app": "#232629", "surface": "#31363b", "text": "#cfcfc2", "accent": "#2980b9", "success": "#1c8042", "warning": "#fdbc4b", "error": "#da4453" };
|
|
16523
|
-
const overrides$3 = { "surface-hover": "#3f4347", "card": "#3f4347", "elevated": "#4d5358", "highlight": "#31363b", "highlight-strong": "#3f4347", "secondary": "#a5a6a8", "muted": "#898a8c", "dim": "#7a7c7d", "faint": "#5f6266", "ghost": "#4d5358", "inverse": "#232629", "border": "#3f4347", "border-strong": "#4d5358", "focus": "#3daee9", "accent-hover": "#3daee9", "accent-fg": "#3daee9", "accent-bg": "rgba(45, 92, 118, 0.5)", "success-bg": "rgba(28, 128, 66, 0.15)", "warning-bg": "rgba(246, 116, 0, 0.15)", "error-bg": "rgba(218, 68, 83, 0.15)", "info": "#3daee9", "info-bg": "rgba(45, 92, 118, 0.5)", "special": "#8e44ad", "special-bg": "rgba(142, 68, 173, 0.15)", "chat-column": "#1e1e1e", "chat-column-border": "transparent", "scrollbar": "#3f4347", "scrollbar-hover": "#4d5358", "md-code": "#60a5fa", "md-pre-bg": "#1d2024" };
|
|
16524
|
-
const syntax$2 = { "keyword": "#fdbc4b", "string": "#f44f4f", "comment": "#7a7c7d", "function": "#8e44ad", "type": "#2980b9", "number": "#f67400", "operator": "#3f8058", "property": "#27aeae", "tag": "#2980b9", "variable": "#cfcfc2", "constant": "#27aeae", "heading": "#8e44ad", "link": "#0099ff", "list": "#da4453", "quote": "#7a7c7d", "meta": "#a5a6a8", "mark": "#8e44ad", "invalid": "#da4453", "active-line-bg": "#2A2E32", "selection-bg": "rgba(45, 92, 118, 0.65)", "selection-match-bg": "rgba(65, 72, 87, 0.5)" };
|
|
16525
|
-
const breezeClaudius = {
|
|
16526
|
-
$schema: $schema$2,
|
|
16527
|
-
name: name$4,
|
|
16528
|
-
kind: kind$2,
|
|
16529
|
-
seeds: seeds$2,
|
|
16530
|
-
overrides: overrides$3,
|
|
16531
|
-
syntax: syntax$2
|
|
16532
|
-
};
|
|
16533
16432
|
const $schema$1 = "pi-theme/v1";
|
|
16534
16433
|
const name$3 = "Sessrúmnir";
|
|
16535
16434
|
const kind$1 = "dark";
|
|
@@ -16568,27 +16467,13 @@ const fensalir = {
|
|
|
16568
16467
|
};
|
|
16569
16468
|
const BUILTIN_THEMES = [
|
|
16570
16469
|
{ id: "sessrumnir", file: sessrumnir },
|
|
16571
|
-
{ id: "fensalir", file: fensalir }
|
|
16572
|
-
{ id: "dark", file: dark },
|
|
16573
|
-
{ id: "light", file: light },
|
|
16574
|
-
{ id: "nord", file: nord },
|
|
16575
|
-
{ id: "gruvbox", file: gruvbox },
|
|
16576
|
-
{ id: "breeze-dark", file: breezeDark },
|
|
16577
|
-
{ id: "breeze-light", file: breezeLight },
|
|
16578
|
-
{ id: "breeze-claudius", file: breezeClaudius }
|
|
16470
|
+
{ id: "fensalir", file: fensalir }
|
|
16579
16471
|
];
|
|
16580
16472
|
const BUILTIN_THEME_IDS = BUILTIN_THEMES.map((t2) => t2.id);
|
|
16581
16473
|
function isBuiltinThemeId(id2) {
|
|
16582
16474
|
return BUILTIN_THEME_IDS$1.includes(id2);
|
|
16583
16475
|
}
|
|
16584
16476
|
const BUILTIN_THEME_NAME_KEYS = {
|
|
16585
|
-
dark: "themes.builtin.dark",
|
|
16586
|
-
light: "themes.builtin.light",
|
|
16587
|
-
nord: "themes.builtin.nord",
|
|
16588
|
-
gruvbox: "themes.builtin.gruvbox",
|
|
16589
|
-
"breeze-dark": "themes.builtin.breeze-dark",
|
|
16590
|
-
"breeze-light": "themes.builtin.breeze-light",
|
|
16591
|
-
"breeze-claudius": "themes.builtin.breeze-claudius",
|
|
16592
16477
|
sessrumnir: "themes.builtin.sessrumnir",
|
|
16593
16478
|
fensalir: "themes.builtin.fensalir"
|
|
16594
16479
|
};
|
|
@@ -16605,7 +16490,7 @@ function applyThemeVars(target, vars, previous2) {
|
|
|
16605
16490
|
return next;
|
|
16606
16491
|
}
|
|
16607
16492
|
const SYSTEM_THEME_ID = "system";
|
|
16608
|
-
const FALLBACK_THEME_ID = "
|
|
16493
|
+
const FALLBACK_THEME_ID = "fensalir";
|
|
16609
16494
|
const DARK_SCHEME_QUERY = "(prefers-color-scheme: dark)";
|
|
16610
16495
|
const SYSTEM_THEME_DEFAULTS = {
|
|
16611
16496
|
light: DEFAULT_SETTINGS.systemLightTheme,
|
|
@@ -21272,7 +21157,7 @@ function StatusPopover() {
|
|
|
21272
21157
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "px-4 py-2 border-t border-border flex items-center justify-between text-[10px] text-faint", children: [
|
|
21273
21158
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("span", { children: [
|
|
21274
21159
|
"v",
|
|
21275
|
-
"0.1.
|
|
21160
|
+
"0.1.17"
|
|
21276
21161
|
] }),
|
|
21277
21162
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
21278
21163
|
"button",
|
|
@@ -89204,7 +89089,7 @@ function TerminalPanel() {
|
|
|
89204
89089
|
}
|
|
89205
89090
|
);
|
|
89206
89091
|
}
|
|
89207
|
-
const
|
|
89092
|
+
const ymirMark = "" + new URL("ymir-mark-kY-7e1x6.svg", import.meta.url).href;
|
|
89208
89093
|
const DEFAULT_COMPOSER_PAD_PX = 144;
|
|
89209
89094
|
function ChatPanel() {
|
|
89210
89095
|
const { t: t2 } = useTranslation();
|
|
@@ -89383,7 +89268,7 @@ function ChatPanel() {
|
|
|
89383
89268
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
89384
89269
|
"img",
|
|
89385
89270
|
{
|
|
89386
|
-
src:
|
|
89271
|
+
src: ymirMark,
|
|
89387
89272
|
alt: PI_DESKTOP_PRODUCT_NAME,
|
|
89388
89273
|
className: "mx-auto mb-4 block h-14 w-14"
|
|
89389
89274
|
}
|
|
@@ -94119,7 +94004,7 @@ function HomeScreenInfo() {
|
|
|
94119
94004
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1 overflow-y-auto", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx("mx-auto max-w-[952px] px-8 py-12", busy && "pointer-events-none opacity-60"), children: [
|
|
94120
94005
|
/* @__PURE__ */ jsxRuntimeExports.jsx(PiErrorBanner, {}),
|
|
94121
94006
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mb-6 flex flex-col items-center text-center", children: [
|
|
94122
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("img", { src:
|
|
94007
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("img", { src: ymirMark, alt: PI_DESKTOP_PRODUCT_NAME, className: "h-16 w-16" }),
|
|
94123
94008
|
/* @__PURE__ */ jsxRuntimeExports.jsx("h1", { className: "mt-4 text-2xl font-semibold text-primary", children: PI_DESKTOP_PRODUCT_NAME }),
|
|
94124
94009
|
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mt-1 text-sm text-dim", children: t2("home.subtitle") })
|
|
94125
94010
|
] }),
|
|
@@ -97261,7 +97146,7 @@ function App() {
|
|
|
97261
97146
|
const showChrome = !isHome;
|
|
97262
97147
|
const showUpdateBanner = !!updateInfo?.updateAvailable && !updateDismissed;
|
|
97263
97148
|
const globalWorkflowOpen = showChrome && workflowPanelOpen && !workflowPanelFilter && workflowPanelWorkspaceId === null;
|
|
97264
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative flex h-screen flex-col
|
|
97149
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative flex h-screen flex-col text-primary", children: [
|
|
97265
97150
|
/* @__PURE__ */ jsxRuntimeExports.jsx(EmberBackground, {}),
|
|
97266
97151
|
isDraggingFolder && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
97267
97152
|
"div",
|
|
@@ -3391,6 +3391,11 @@
|
|
|
3391
3391
|
opacity: .9;
|
|
3392
3392
|
}
|
|
3393
3393
|
|
|
3394
|
+
.shadow {
|
|
3395
|
+
--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
|
|
3396
|
+
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
3397
|
+
}
|
|
3398
|
+
|
|
3394
3399
|
.shadow-2xl {
|
|
3395
3400
|
--tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040);
|
|
3396
3401
|
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
@@ -4107,14 +4112,18 @@
|
|
|
4107
4112
|
}
|
|
4108
4113
|
|
|
4109
4114
|
.ember-bg {
|
|
4110
|
-
z-index:
|
|
4115
|
+
z-index: -1;
|
|
4111
4116
|
pointer-events: none;
|
|
4112
|
-
opacity: .
|
|
4117
|
+
opacity: .55;
|
|
4113
4118
|
mix-blend-mode: screen;
|
|
4114
4119
|
position: fixed;
|
|
4115
4120
|
inset: 0;
|
|
4116
4121
|
}
|
|
4117
4122
|
|
|
4123
|
+
html, body {
|
|
4124
|
+
background-color: var(--app, #0e0c09);
|
|
4125
|
+
}
|
|
4126
|
+
|
|
4118
4127
|
@property --tw-translate-x {
|
|
4119
4128
|
syntax: "*";
|
|
4120
4129
|
inherits: false;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="100%" height="100%">
|
|
2
|
+
<defs>
|
|
3
|
+
<!-- Background Slate -->
|
|
4
|
+
<linearGradient id="bg-grad" gradientUnits="userSpaceOnUse" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
5
|
+
<stop offset="0%" stop-color="#0e0c09" />
|
|
6
|
+
<stop offset="100%" stop-color="#151209" />
|
|
7
|
+
</linearGradient>
|
|
8
|
+
|
|
9
|
+
<!-- Outer Dark Metal Forging -->
|
|
10
|
+
<linearGradient id="dark-metal" gradientUnits="userSpaceOnUse" x1="0%" y1="0%" x2="0%" y2="100%">
|
|
11
|
+
<stop offset="0%" stop-color="#7d5f2a" />
|
|
12
|
+
<stop offset="100%" stop-color="#0e0c09" />
|
|
13
|
+
</linearGradient>
|
|
14
|
+
|
|
15
|
+
<!-- Inner Cyan Edge / Chisel Highlight -->
|
|
16
|
+
<linearGradient id="cyan-glow" gradientUnits="userSpaceOnUse" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
17
|
+
<stop offset="0%" stop-color="#e0b257" />
|
|
18
|
+
<stop offset="50%" stop-color="#c9973f" />
|
|
19
|
+
<stop offset="100%" stop-color="#7d5f2a" />
|
|
20
|
+
</linearGradient>
|
|
21
|
+
|
|
22
|
+
<!-- Drop Shadow for Depth -->
|
|
23
|
+
<filter id="shadow" x="-10%" y="-10%" width="120%" height="120%">
|
|
24
|
+
<feDropShadow dx="0" dy="8" stdDeviation="12" flood-color="#000000" flood-opacity="0.6"/>
|
|
25
|
+
</filter>
|
|
26
|
+
</defs>
|
|
27
|
+
|
|
28
|
+
<!-- Canvas -->
|
|
29
|
+
<rect width="512" height="512" rx="48" fill="url(#bg-grad)" stroke="#2b241a" stroke-width="4"/>
|
|
30
|
+
|
|
31
|
+
<!-- Master Group with Drop Shadow -->
|
|
32
|
+
<g filter="url(#shadow)">
|
|
33
|
+
|
|
34
|
+
<!-- 1. THICK OUTER BASE (The Iron Mass) -->
|
|
35
|
+
<g fill="none" stroke="url(#dark-metal)" stroke-width="48" stroke-linecap="square" stroke-linejoin="miter">
|
|
36
|
+
<!-- Algiz Y-Stem & Branches -->
|
|
37
|
+
<path d="M 144 144 L 256 256 L 368 144 M 256 256 V 352" />
|
|
38
|
+
<!-- Top Anvil Bar -->
|
|
39
|
+
<path d="M 128 352 H 384" />
|
|
40
|
+
<!-- Bottom Anvil Bar (Slightly narrower) -->
|
|
41
|
+
<path d="M 160 432 H 352" />
|
|
42
|
+
</g>
|
|
43
|
+
|
|
44
|
+
<!-- 2. THIN INNER HIGHLIGHT (The Glowing Chiseled Edge) -->
|
|
45
|
+
<g fill="none" stroke="url(#cyan-glow)" stroke-width="12" stroke-linecap="square" stroke-linejoin="miter">
|
|
46
|
+
<!-- Algiz Y-Stem & Branches -->
|
|
47
|
+
<path d="M 144 144 L 256 256 L 368 144 M 256 256 V 352" />
|
|
48
|
+
<!-- Top Anvil Bar -->
|
|
49
|
+
<path d="M 128 352 H 384" />
|
|
50
|
+
<!-- Bottom Anvil Bar -->
|
|
51
|
+
<path d="M 160 432 H 352" />
|
|
52
|
+
</g>
|
|
53
|
+
|
|
54
|
+
</g>
|
|
55
|
+
</svg>
|
package/out/renderer/index.html
CHANGED
|
@@ -7,11 +7,11 @@
|
|
|
7
7
|
http-equiv="Content-Security-Policy"
|
|
8
8
|
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self'; connect-src 'self'"
|
|
9
9
|
/>
|
|
10
|
-
<link rel="icon" type="image/svg+xml" href="./assets/
|
|
10
|
+
<link rel="icon" type="image/svg+xml" href="./assets/ymir-mark-kY-7e1x6.svg" />
|
|
11
11
|
<title>Sessrúmnir</title>
|
|
12
12
|
<script src="./theme-boot.js"></script>
|
|
13
|
-
<script type="module" crossorigin src="./assets/index-
|
|
14
|
-
<link rel="stylesheet" crossorigin href="./assets/index-
|
|
13
|
+
<script type="module" crossorigin src="./assets/index-B3mV3a_n.js"></script>
|
|
14
|
+
<link rel="stylesheet" crossorigin href="./assets/index-D0j--OQJ.css">
|
|
15
15
|
</head>
|
|
16
16
|
<body class="bg-app text-primary antialiased">
|
|
17
17
|
<div id="root"></div>
|
package/package.json
CHANGED
package/src/renderer/index.html
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
http-equiv="Content-Security-Policy"
|
|
8
8
|
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self'; connect-src 'self'"
|
|
9
9
|
/>
|
|
10
|
-
<link rel="icon" type="image/svg+xml" href="./src/assets/
|
|
10
|
+
<link rel="icon" type="image/svg+xml" href="./src/assets/ymir-mark.svg" />
|
|
11
11
|
<title>Sessrúmnir</title>
|
|
12
12
|
<script src="/theme-boot.js"></script>
|
|
13
13
|
</head>
|
package/src/renderer/src/app.tsx
CHANGED
|
@@ -96,7 +96,7 @@ export function App(): React.JSX.Element {
|
|
|
96
96
|
showChrome && workflowPanelOpen && !workflowPanelFilter && workflowPanelWorkspaceId === null
|
|
97
97
|
|
|
98
98
|
return (
|
|
99
|
-
<div className="relative flex h-screen flex-col
|
|
99
|
+
<div className="relative flex h-screen flex-col text-primary">
|
|
100
100
|
<EmberBackground />
|
|
101
101
|
{isDraggingFolder && (
|
|
102
102
|
<div
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="100%" height="100%">
|
|
2
|
+
<defs>
|
|
3
|
+
<!-- Background Slate -->
|
|
4
|
+
<linearGradient id="bg-grad" gradientUnits="userSpaceOnUse" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
5
|
+
<stop offset="0%" stop-color="#0e0c09" />
|
|
6
|
+
<stop offset="100%" stop-color="#151209" />
|
|
7
|
+
</linearGradient>
|
|
8
|
+
|
|
9
|
+
<!-- Outer Dark Metal Forging -->
|
|
10
|
+
<linearGradient id="dark-metal" gradientUnits="userSpaceOnUse" x1="0%" y1="0%" x2="0%" y2="100%">
|
|
11
|
+
<stop offset="0%" stop-color="#7d5f2a" />
|
|
12
|
+
<stop offset="100%" stop-color="#0e0c09" />
|
|
13
|
+
</linearGradient>
|
|
14
|
+
|
|
15
|
+
<!-- Inner Cyan Edge / Chisel Highlight -->
|
|
16
|
+
<linearGradient id="cyan-glow" gradientUnits="userSpaceOnUse" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
17
|
+
<stop offset="0%" stop-color="#e0b257" />
|
|
18
|
+
<stop offset="50%" stop-color="#c9973f" />
|
|
19
|
+
<stop offset="100%" stop-color="#7d5f2a" />
|
|
20
|
+
</linearGradient>
|
|
21
|
+
|
|
22
|
+
<!-- Drop Shadow for Depth -->
|
|
23
|
+
<filter id="shadow" x="-10%" y="-10%" width="120%" height="120%">
|
|
24
|
+
<feDropShadow dx="0" dy="8" stdDeviation="12" flood-color="#000000" flood-opacity="0.6"/>
|
|
25
|
+
</filter>
|
|
26
|
+
</defs>
|
|
27
|
+
|
|
28
|
+
<!-- Canvas -->
|
|
29
|
+
<rect width="512" height="512" rx="48" fill="url(#bg-grad)" stroke="#2b241a" stroke-width="4"/>
|
|
30
|
+
|
|
31
|
+
<!-- Master Group with Drop Shadow -->
|
|
32
|
+
<g filter="url(#shadow)">
|
|
33
|
+
|
|
34
|
+
<!-- 1. THICK OUTER BASE (The Iron Mass) -->
|
|
35
|
+
<g fill="none" stroke="url(#dark-metal)" stroke-width="48" stroke-linecap="square" stroke-linejoin="miter">
|
|
36
|
+
<!-- Algiz Y-Stem & Branches -->
|
|
37
|
+
<path d="M 144 144 L 256 256 L 368 144 M 256 256 V 352" />
|
|
38
|
+
<!-- Top Anvil Bar -->
|
|
39
|
+
<path d="M 128 352 H 384" />
|
|
40
|
+
<!-- Bottom Anvil Bar (Slightly narrower) -->
|
|
41
|
+
<path d="M 160 432 H 352" />
|
|
42
|
+
</g>
|
|
43
|
+
|
|
44
|
+
<!-- 2. THIN INNER HIGHLIGHT (The Glowing Chiseled Edge) -->
|
|
45
|
+
<g fill="none" stroke="url(#cyan-glow)" stroke-width="12" stroke-linecap="square" stroke-linejoin="miter">
|
|
46
|
+
<!-- Algiz Y-Stem & Branches -->
|
|
47
|
+
<path d="M 144 144 L 256 256 L 368 144 M 256 256 V 352" />
|
|
48
|
+
<!-- Top Anvil Bar -->
|
|
49
|
+
<path d="M 128 352 H 384" />
|
|
50
|
+
<!-- Bottom Anvil Bar -->
|
|
51
|
+
<path d="M 160 432 H 352" />
|
|
52
|
+
</g>
|
|
53
|
+
|
|
54
|
+
</g>
|
|
55
|
+
</svg>
|
|
@@ -28,7 +28,7 @@ import { useChatScroll, useGlobalWorkflowOpen } from '../hooks'
|
|
|
28
28
|
import { useState, useCallback, useEffect, useMemo, useRef } from 'react'
|
|
29
29
|
import { useTranslation } from 'react-i18next'
|
|
30
30
|
import { clsx } from 'clsx'
|
|
31
|
-
import
|
|
31
|
+
import ymirMark from '../assets/ymir-mark.svg'
|
|
32
32
|
import {
|
|
33
33
|
FolderTree,
|
|
34
34
|
GitCompare,
|
|
@@ -249,7 +249,7 @@ export function ChatPanel(): React.JSX.Element {
|
|
|
249
249
|
<div className="flex min-h-0 flex-1 flex-col items-center justify-center overflow-y-auto px-4 py-10">
|
|
250
250
|
<div className="mb-8 text-center">
|
|
251
251
|
<img
|
|
252
|
-
src={
|
|
252
|
+
src={ymirMark}
|
|
253
253
|
alt={PI_DESKTOP_PRODUCT_NAME}
|
|
254
254
|
className="mx-auto mb-4 block h-14 w-14"
|
|
255
255
|
/>
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
Play,
|
|
16
16
|
} from 'lucide-react'
|
|
17
17
|
import { useAppStore } from '../store'
|
|
18
|
-
import
|
|
18
|
+
import ymirMark from '../assets/ymir-mark.svg'
|
|
19
19
|
import { formatGitStatus } from './review-rail'
|
|
20
20
|
import { StatsPanel } from './stats-panel'
|
|
21
21
|
import type { GitFileStatus, SessionListItem } from '../../../shared/ipc-contracts'
|
|
@@ -344,7 +344,7 @@ function HomeScreenInfo(): React.JSX.Element {
|
|
|
344
344
|
<PiErrorBanner />
|
|
345
345
|
|
|
346
346
|
<div className="mb-6 flex flex-col items-center text-center">
|
|
347
|
-
<img src={
|
|
347
|
+
<img src={ymirMark} alt={PI_DESKTOP_PRODUCT_NAME} className="h-16 w-16" />
|
|
348
348
|
<h1 className="mt-4 text-2xl font-semibold text-primary">{PI_DESKTOP_PRODUCT_NAME}</h1>
|
|
349
349
|
<p className="mt-1 text-sm text-dim">{t('home.subtitle')}</p>
|
|
350
350
|
</div>
|
|
@@ -378,4 +378,5 @@
|
|
|
378
378
|
at build time, so they can't live here. */
|
|
379
379
|
|
|
380
380
|
/* The hearth — embers rising over the cloth. */
|
|
381
|
-
.ember-bg { position: fixed; inset: 0; z-index:
|
|
381
|
+
.ember-bg { position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: 0.55; mix-blend-mode: screen; }
|
|
382
|
+
html, body { background-color: var(--app, #0e0c09); }
|
|
@@ -1,26 +1,12 @@
|
|
|
1
1
|
import type { ThemeFile } from '../../../shared/theme/theme-file'
|
|
2
2
|
import { t } from '../../../shared/i18n'
|
|
3
3
|
import { BUILTIN_THEME_IDS as SHARED_BUILTIN_THEME_IDS } from '../../../shared/theme/builtin-ids'
|
|
4
|
-
import dark from './dark.json'
|
|
5
|
-
import light from './light.json'
|
|
6
|
-
import nord from './nord.json'
|
|
7
|
-
import gruvbox from './gruvbox.json'
|
|
8
|
-
import breezeDark from './breeze-dark.json'
|
|
9
|
-
import breezeLight from './breeze-light.json'
|
|
10
|
-
import breezeClaudius from './breeze-claudius.json'
|
|
11
4
|
import sessrumnir from './sessrumnir.json'
|
|
12
5
|
import fensalir from './fensalir.json'
|
|
13
6
|
|
|
14
7
|
export const BUILTIN_THEMES: ReadonlyArray<{ id: string; file: ThemeFile }> = [
|
|
15
8
|
{ id: 'sessrumnir', file: sessrumnir as ThemeFile },
|
|
16
9
|
{ id: 'fensalir', file: fensalir as ThemeFile },
|
|
17
|
-
{ id: 'dark', file: dark as ThemeFile },
|
|
18
|
-
{ id: 'light', file: light as ThemeFile },
|
|
19
|
-
{ id: 'nord', file: nord as ThemeFile },
|
|
20
|
-
{ id: 'gruvbox', file: gruvbox as ThemeFile },
|
|
21
|
-
{ id: 'breeze-dark', file: breezeDark as ThemeFile },
|
|
22
|
-
{ id: 'breeze-light', file: breezeLight as ThemeFile },
|
|
23
|
-
{ id: 'breeze-claudius', file: breezeClaudius as ThemeFile },
|
|
24
10
|
]
|
|
25
11
|
|
|
26
12
|
export const BUILTIN_THEME_IDS: readonly string[] = BUILTIN_THEMES.map((t) => t.id)
|
|
@@ -39,13 +25,6 @@ function isBuiltinThemeId(id: string): id is BuiltinThemeId {
|
|
|
39
25
|
// permission-mode.ts's `getPermissionModeLabel`, extracts fine). An explicit
|
|
40
26
|
// key per id keeps them extractable and typo-checked by tsc.
|
|
41
27
|
const BUILTIN_THEME_NAME_KEYS = {
|
|
42
|
-
dark: 'themes.builtin.dark',
|
|
43
|
-
light: 'themes.builtin.light',
|
|
44
|
-
nord: 'themes.builtin.nord',
|
|
45
|
-
gruvbox: 'themes.builtin.gruvbox',
|
|
46
|
-
'breeze-dark': 'themes.builtin.breeze-dark',
|
|
47
|
-
'breeze-light': 'themes.builtin.breeze-light',
|
|
48
|
-
'breeze-claudius': 'themes.builtin.breeze-claudius',
|
|
49
28
|
sessrumnir: 'themes.builtin.sessrumnir',
|
|
50
29
|
fensalir: 'themes.builtin.fensalir',
|
|
51
30
|
} as const satisfies Record<BuiltinThemeId, string>
|
|
@@ -11,7 +11,7 @@ export type ThemeKind = ThemeFile['kind']
|
|
|
11
11
|
export type ThemeSettings = Pick<AppSettings, 'theme' | 'systemLightTheme' | 'systemDarkTheme'>
|
|
12
12
|
|
|
13
13
|
export const SYSTEM_THEME_ID = 'system'
|
|
14
|
-
const FALLBACK_THEME_ID = '
|
|
14
|
+
const FALLBACK_THEME_ID = 'fensalir'
|
|
15
15
|
const DARK_SCHEME_QUERY = '(prefers-color-scheme: dark)'
|
|
16
16
|
const SYSTEM_THEME_DEFAULTS: Readonly<Record<ThemeKind, string>> = {
|
|
17
17
|
light: DEFAULT_SETTINGS.systemLightTheme,
|
|
@@ -7,5 +7,5 @@
|
|
|
7
7
|
// those (separate process/bundle), so this module is the single shared
|
|
8
8
|
// source of truth for just the id strings.
|
|
9
9
|
export const BUILTIN_THEME_IDS = [
|
|
10
|
-
'
|
|
10
|
+
'sessrumnir', 'fensalir',
|
|
11
11
|
] as const
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="none">
|
|
2
|
-
<!-- Charcoal rounded background -->
|
|
3
|
-
<rect width="512" height="512" rx="77" fill="#36454F"/>
|
|
4
|
-
|
|
5
|
-
<!-- Pi letterforms: official brand marks, scaled from 800 -> 512 -->
|
|
6
|
-
<g transform="translate(5.5, 5.5) scale(0.62625)">
|
|
7
|
-
<!-- P shape: outer boundary clockwise, inner hole counter-clockwise -->
|
|
8
|
-
<path fill="#e67e22" fill-rule="evenodd" d="
|
|
9
|
-
M165.29 165.29
|
|
10
|
-
H517.36
|
|
11
|
-
V400
|
|
12
|
-
H400
|
|
13
|
-
V517.36
|
|
14
|
-
H282.65
|
|
15
|
-
V634.72
|
|
16
|
-
H165.29
|
|
17
|
-
Z
|
|
18
|
-
M282.65 282.65
|
|
19
|
-
V400
|
|
20
|
-
H400
|
|
21
|
-
V282.65
|
|
22
|
-
Z
|
|
23
|
-
"/>
|
|
24
|
-
<!-- i dot -->
|
|
25
|
-
<path fill="#e67e22" d="M517.36 400 H634.72 V634.72 H517.36 Z"/>
|
|
26
|
-
</g>
|
|
27
|
-
</svg>
|