@floegence/floe-webapp-core 0.53.1 → 0.53.2
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/dist/components/file-browser/FileGridView.js +106 -103
- package/dist/components/file-browser/FileIcons.js +200 -200
- package/dist/components/ui/Button.js +1 -1
- package/dist/styles/themes/presets.d.ts +2 -0
- package/dist/styles/themes/presets.js +35 -26
- package/dist/styles.css +1 -1
- package/dist/surface.css +18 -0
- package/dist/themes/shell-presets.generated.css +5 -0
- package/package.json +1 -1
|
@@ -7,7 +7,7 @@ const v = {
|
|
|
7
7
|
default: "bg-primary text-primary-foreground shadow-sm hover:bg-primary/90 active:bg-primary/80",
|
|
8
8
|
primary: "bg-primary text-primary-foreground shadow-sm hover:bg-primary/90 active:bg-primary/80",
|
|
9
9
|
secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80 active:bg-secondary/70",
|
|
10
|
-
outline: "border border-
|
|
10
|
+
outline: "border border-border bg-background shadow-sm hover:bg-accent hover:text-accent-foreground active:bg-accent/80",
|
|
11
11
|
ghost: "hover:bg-accent hover:text-accent-foreground active:bg-accent/80",
|
|
12
12
|
"ghost-destructive": "bg-transparent text-muted-foreground hover:bg-error hover:text-error-foreground active:bg-error/80",
|
|
13
13
|
destructive: "bg-error text-error-foreground shadow-sm hover:bg-error/90 active:bg-error/80"
|
|
@@ -39,6 +39,8 @@ interface ShellThemePaletteDefinition {
|
|
|
39
39
|
* avoids the white-bloom problem that comes from using a near-white primary)
|
|
40
40
|
*/
|
|
41
41
|
glow?: string;
|
|
42
|
+
/** File identification paint is independent of status text contrast. */
|
|
43
|
+
fileIconColors?: Partial<Record<'primary' | 'warning' | 'info' | 'success' | 'error', string>>;
|
|
42
44
|
syntax?: {
|
|
43
45
|
comment: string;
|
|
44
46
|
keyword: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DARK_WINDOW_TOKENS as
|
|
1
|
+
import { DARK_WINDOW_TOKENS as b, LIGHT_WINDOW_TOKENS as B } from "./windowTokens.js";
|
|
2
2
|
import { CLASSIC_LIGHT_SEMANTIC_TOKENS as d, CLASSIC_DARK_SEMANTIC_TOKENS as F } from "./classicSemanticTokens.js";
|
|
3
|
-
const
|
|
3
|
+
const S = [
|
|
4
4
|
"--floe-window-background",
|
|
5
5
|
"--floe-window-foreground",
|
|
6
6
|
"--floe-window-muted-foreground",
|
|
@@ -70,7 +70,7 @@ const w = [
|
|
|
70
70
|
"--selection-code-bg",
|
|
71
71
|
"--selection-code-fg",
|
|
72
72
|
"--glow"
|
|
73
|
-
],
|
|
73
|
+
], E = {
|
|
74
74
|
success: "#287A4B",
|
|
75
75
|
successForeground: "#FFFFFF",
|
|
76
76
|
warning: "#835800",
|
|
@@ -81,7 +81,7 @@ const w = [
|
|
|
81
81
|
infoForeground: "#FFFFFF",
|
|
82
82
|
note: "#6847A0",
|
|
83
83
|
tip: "#1E6F73"
|
|
84
|
-
},
|
|
84
|
+
}, A = {
|
|
85
85
|
success: "#72D39C",
|
|
86
86
|
successForeground: "#07160E",
|
|
87
87
|
warning: "#F0C36A",
|
|
@@ -94,7 +94,7 @@ const w = [
|
|
|
94
94
|
tip: "#71C8C0"
|
|
95
95
|
};
|
|
96
96
|
function o(r) {
|
|
97
|
-
const e = r.mode === "light" ?
|
|
97
|
+
const e = r.mode === "light" ? E : A, n = r.mode === "light" ? { background: "#F4C95D", foreground: "#243447" } : {
|
|
98
98
|
background: r.background,
|
|
99
99
|
foreground: r.foreground
|
|
100
100
|
}, [t, c, u, g, s] = r.chart, a = r.syntax ?? {
|
|
@@ -106,7 +106,7 @@ function o(r) {
|
|
|
106
106
|
function: s,
|
|
107
107
|
constant: g
|
|
108
108
|
}, i = {
|
|
109
|
-
...r.mode === "dark" ?
|
|
109
|
+
...r.mode === "dark" ? b : B,
|
|
110
110
|
"--background": r.background,
|
|
111
111
|
"--foreground": r.foreground,
|
|
112
112
|
"--primary": r.primary,
|
|
@@ -173,6 +173,8 @@ function o(r) {
|
|
|
173
173
|
// selectionBackground so we don't inherit a near-white primary as glow source.
|
|
174
174
|
"--glow": r.glow ?? (r.mode === "light" ? r.primary : r.selectionBackground)
|
|
175
175
|
};
|
|
176
|
+
for (const [l, p] of Object.entries(r.fileIconColors ?? {}))
|
|
177
|
+
i[`--floe-file-icon-${l}`] = p;
|
|
176
178
|
return {
|
|
177
179
|
name: r.name,
|
|
178
180
|
displayName: r.displayName,
|
|
@@ -249,7 +251,7 @@ function o(r) {
|
|
|
249
251
|
tokens: r.mode === "light" ? { light: i } : { dark: i }
|
|
250
252
|
};
|
|
251
253
|
}
|
|
252
|
-
const
|
|
254
|
+
const k = {
|
|
253
255
|
...o({
|
|
254
256
|
name: "classic-light",
|
|
255
257
|
displayName: "Classic Light",
|
|
@@ -283,7 +285,7 @@ const E = {
|
|
|
283
285
|
inheritsBaseTokens: !0,
|
|
284
286
|
semanticTokens: d,
|
|
285
287
|
tokens: void 0
|
|
286
|
-
},
|
|
288
|
+
}, y = {
|
|
287
289
|
...o({
|
|
288
290
|
name: "classic-dark",
|
|
289
291
|
displayName: "Classic Dark",
|
|
@@ -317,8 +319,8 @@ const E = {
|
|
|
317
319
|
inheritsBaseTokens: !0,
|
|
318
320
|
semanticTokens: F,
|
|
319
321
|
tokens: void 0
|
|
320
|
-
},
|
|
321
|
-
|
|
322
|
+
}, C = [
|
|
323
|
+
k,
|
|
322
324
|
o({
|
|
323
325
|
name: "paper",
|
|
324
326
|
displayName: "Paper",
|
|
@@ -574,7 +576,7 @@ const E = {
|
|
|
574
576
|
constant: "#745500"
|
|
575
577
|
}
|
|
576
578
|
}),
|
|
577
|
-
|
|
579
|
+
y,
|
|
578
580
|
o({
|
|
579
581
|
name: "ink",
|
|
580
582
|
displayName: "Ink",
|
|
@@ -895,6 +897,13 @@ const E = {
|
|
|
895
897
|
name: "porcelain-light",
|
|
896
898
|
displayName: "Porcelain Light",
|
|
897
899
|
description: "Original Redeven warm ivory and blue-gray ink, with quiet modern surfaces.",
|
|
900
|
+
fileIconColors: {
|
|
901
|
+
primary: "hsl(214 26% 17%)",
|
|
902
|
+
warning: "hsl(38 92% 50%)",
|
|
903
|
+
info: "hsl(217 91% 60%)",
|
|
904
|
+
success: "oklch(0.68 0.16 150)",
|
|
905
|
+
error: "oklch(0.65 0.2 25)"
|
|
906
|
+
},
|
|
898
907
|
mode: "light",
|
|
899
908
|
background: "#F4F1ED",
|
|
900
909
|
foreground: "#202A37",
|
|
@@ -953,18 +962,18 @@ const E = {
|
|
|
953
962
|
constant: "#E9A4A0"
|
|
954
963
|
}
|
|
955
964
|
})
|
|
956
|
-
],
|
|
965
|
+
], N = {
|
|
957
966
|
light: "classic-light",
|
|
958
967
|
dark: "classic-dark"
|
|
959
968
|
};
|
|
960
|
-
function
|
|
969
|
+
function h(r, e) {
|
|
961
970
|
const n = r.mode ?? "both";
|
|
962
971
|
return n === "both" || n === e;
|
|
963
972
|
}
|
|
964
|
-
function
|
|
965
|
-
return r.filter((n) =>
|
|
973
|
+
function D(r, e) {
|
|
974
|
+
return r.filter((n) => h(n, e));
|
|
966
975
|
}
|
|
967
|
-
function
|
|
976
|
+
function f(r) {
|
|
968
977
|
const e = /* @__PURE__ */ new Set();
|
|
969
978
|
for (const n of r) {
|
|
970
979
|
if (e.has(n.name))
|
|
@@ -973,10 +982,10 @@ function h(r) {
|
|
|
973
982
|
}
|
|
974
983
|
}
|
|
975
984
|
function m(r, e, n, t) {
|
|
976
|
-
const c =
|
|
985
|
+
const c = D(r, e);
|
|
977
986
|
return n && c.some((u) => u.name === n) ? n : t && c.some((u) => u.name === t) ? t : c[0]?.name;
|
|
978
987
|
}
|
|
979
|
-
function
|
|
988
|
+
function T(r, e, n = {}) {
|
|
980
989
|
const t = typeof r == "object" && r !== null && !Array.isArray(r) ? r : void 0, c = t?.version === 1, u = c && typeof t.light == "string" ? t.light : void 0, g = c && typeof t.dark == "string" ? t.dark : void 0;
|
|
981
990
|
return {
|
|
982
991
|
version: 1,
|
|
@@ -984,15 +993,15 @@ function S(r, e, n = {}) {
|
|
|
984
993
|
dark: m(e, "dark", g, n.dark)
|
|
985
994
|
};
|
|
986
995
|
}
|
|
987
|
-
|
|
996
|
+
f(C);
|
|
988
997
|
export {
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
998
|
+
N as BUILT_IN_SHELL_THEME_DEFAULTS,
|
|
999
|
+
S as REQUIRED_SHELL_THEME_TOKENS,
|
|
1000
|
+
f as assertUniqueThemePresetNames,
|
|
1001
|
+
C as builtInShellThemePresets,
|
|
993
1002
|
o as createShellThemePreset,
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
1003
|
+
D as getShellThemePresetsForMode,
|
|
1004
|
+
T as normalizeShellThemeSelection,
|
|
1005
|
+
h as presetSupportsMode,
|
|
997
1006
|
m as resolveShellThemePresetName
|
|
998
1007
|
};
|