@mtharrison/loupe 1.0.1 → 1.1.0
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/client/app.css +143 -34
- package/dist/client/app.js +13 -2
- package/package.json +1 -1
package/dist/client/app.css
CHANGED
|
@@ -643,6 +643,21 @@ pre {
|
|
|
643
643
|
.ui-badge[data-semantic=call] {
|
|
644
644
|
--semantic-badge-color: rgba(61, 108, 225, 0.9);
|
|
645
645
|
}
|
|
646
|
+
.ui-badge[data-semantic=system] {
|
|
647
|
+
--semantic-badge-color: rgba(40, 93, 168, 0.92);
|
|
648
|
+
}
|
|
649
|
+
.ui-badge[data-semantic=assistant] {
|
|
650
|
+
--semantic-badge-color: rgba(91, 108, 168, 0.88);
|
|
651
|
+
}
|
|
652
|
+
.ui-badge[data-semantic=user] {
|
|
653
|
+
--semantic-badge-color: rgba(46, 181, 129, 0.92);
|
|
654
|
+
}
|
|
655
|
+
.ui-badge[data-semantic=tool] {
|
|
656
|
+
--semantic-badge-color: rgba(59, 146, 111, 0.9);
|
|
657
|
+
}
|
|
658
|
+
.ui-badge[data-semantic=tool-call] {
|
|
659
|
+
--semantic-badge-color: rgba(219, 150, 58, 0.92);
|
|
660
|
+
}
|
|
646
661
|
.ui-badge-outline {
|
|
647
662
|
border: 1px solid rgba(40, 93, 168, 0.16);
|
|
648
663
|
background: rgba(40, 93, 168, 0.08);
|
|
@@ -1947,6 +1962,13 @@ pre {
|
|
|
1947
1962
|
border-top: 1px solid rgba(88, 105, 130, 0.12);
|
|
1948
1963
|
}
|
|
1949
1964
|
.conversation-row {
|
|
1965
|
+
--message-accent: rgba(120, 137, 159, 0.24);
|
|
1966
|
+
--message-border-color: rgba(88, 105, 130, 0.12);
|
|
1967
|
+
--message-surface: rgba(255, 255, 255, 0.92);
|
|
1968
|
+
--message-label-color: color-mix(in srgb, var(--foreground) 52%, var(--muted-foreground));
|
|
1969
|
+
--message-label-border: rgba(88, 105, 130, 0.12);
|
|
1970
|
+
--message-label-surface: rgba(88, 105, 130, 0.06);
|
|
1971
|
+
--message-role-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.62);
|
|
1950
1972
|
display: flex;
|
|
1951
1973
|
flex-direction: column;
|
|
1952
1974
|
gap: 0.45rem;
|
|
@@ -1954,6 +1976,12 @@ pre {
|
|
|
1954
1976
|
}
|
|
1955
1977
|
.conversation-row.is-user {
|
|
1956
1978
|
align-self: flex-end;
|
|
1979
|
+
--message-accent: rgba(46, 181, 129, 0.58);
|
|
1980
|
+
--message-border-color: rgba(46, 181, 129, 0.28);
|
|
1981
|
+
--message-surface: rgba(232, 251, 242, 0.98);
|
|
1982
|
+
--message-label-color: #178b61;
|
|
1983
|
+
--message-label-border: rgba(46, 181, 129, 0.26);
|
|
1984
|
+
--message-label-surface: rgba(46, 181, 129, 0.16);
|
|
1957
1985
|
}
|
|
1958
1986
|
.conversation-row.is-assistant,
|
|
1959
1987
|
.conversation-row.is-system,
|
|
@@ -1961,50 +1989,85 @@ pre {
|
|
|
1961
1989
|
.conversation-row.is-tool-call {
|
|
1962
1990
|
align-self: flex-start;
|
|
1963
1991
|
}
|
|
1992
|
+
.conversation-row.is-assistant {
|
|
1993
|
+
--message-accent: rgba(151, 96, 255, 0.48);
|
|
1994
|
+
--message-border-color: rgba(151, 96, 255, 0.24);
|
|
1995
|
+
--message-surface: rgba(247, 240, 255, 0.98);
|
|
1996
|
+
--message-label-color: #7a41e3;
|
|
1997
|
+
--message-label-border: rgba(151, 96, 255, 0.24);
|
|
1998
|
+
--message-label-surface: rgba(151, 96, 255, 0.16);
|
|
1999
|
+
}
|
|
2000
|
+
.conversation-row.is-system {
|
|
2001
|
+
--message-accent: rgba(46, 104, 255, 0.56);
|
|
2002
|
+
--message-border-color: rgba(46, 104, 255, 0.28);
|
|
2003
|
+
--message-surface: rgba(233, 240, 255, 0.98);
|
|
2004
|
+
--message-label-color: #245fd6;
|
|
2005
|
+
--message-label-border: rgba(46, 104, 255, 0.24);
|
|
2006
|
+
--message-label-surface: rgba(46, 104, 255, 0.16);
|
|
2007
|
+
}
|
|
2008
|
+
.conversation-row.is-tool {
|
|
2009
|
+
--message-accent: rgba(23, 171, 108, 0.52);
|
|
2010
|
+
--message-border-color: rgba(23, 171, 108, 0.25);
|
|
2011
|
+
--message-surface: rgba(231, 251, 240, 0.98);
|
|
2012
|
+
--message-label-color: #0f8a58;
|
|
2013
|
+
--message-label-border: rgba(23, 171, 108, 0.24);
|
|
2014
|
+
--message-label-surface: rgba(23, 171, 108, 0.16);
|
|
2015
|
+
}
|
|
2016
|
+
.conversation-row.is-tool-call {
|
|
2017
|
+
--message-accent: rgba(255, 153, 28, 0.56);
|
|
2018
|
+
--message-border-color: rgba(255, 153, 28, 0.28);
|
|
2019
|
+
--message-surface: rgba(255, 244, 227, 0.98);
|
|
2020
|
+
--message-label-color: #b96b00;
|
|
2021
|
+
--message-label-border: rgba(255, 153, 28, 0.24);
|
|
2022
|
+
--message-label-surface: rgba(255, 153, 28, 0.16);
|
|
2023
|
+
}
|
|
1964
2024
|
.conversation-role {
|
|
1965
|
-
|
|
2025
|
+
align-self: flex-start;
|
|
2026
|
+
display: inline-flex;
|
|
2027
|
+
align-items: center;
|
|
2028
|
+
gap: 0.35rem;
|
|
2029
|
+
border: 1px solid var(--message-label-border);
|
|
2030
|
+
border-radius: 999px;
|
|
2031
|
+
background: var(--message-label-surface);
|
|
2032
|
+
box-shadow: var(--message-role-shadow);
|
|
2033
|
+
color: var(--message-label-color);
|
|
1966
2034
|
font-size: 0.74rem;
|
|
1967
2035
|
font-weight: 700;
|
|
1968
2036
|
letter-spacing: 0.06em;
|
|
2037
|
+
padding: 0.28rem 0.55rem;
|
|
1969
2038
|
text-transform: uppercase;
|
|
1970
2039
|
}
|
|
1971
2040
|
.conversation-bubble {
|
|
1972
2041
|
--expandable-fade-color: rgba(255, 255, 255, 0.96);
|
|
1973
|
-
border: 1px solid var(--
|
|
2042
|
+
border: 1px solid var(--message-border-color);
|
|
1974
2043
|
border-radius: 14px;
|
|
1975
|
-
background:
|
|
2044
|
+
background: var(--message-surface);
|
|
1976
2045
|
padding: 0.9rem 1rem;
|
|
1977
|
-
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
|
|
2046
|
+
box-shadow: inset 3px 0 0 var(--message-accent), inset 0 1px 0 rgba(255, 255, 255, 0.72);
|
|
2047
|
+
}
|
|
2048
|
+
.conversation-row.is-user .conversation-role {
|
|
2049
|
+
align-self: flex-end;
|
|
1978
2050
|
}
|
|
1979
2051
|
.conversation-row.is-user .conversation-bubble {
|
|
1980
|
-
--expandable-fade-color: rgba(
|
|
1981
|
-
background: rgba(224, 236, 248, 0.88);
|
|
2052
|
+
--expandable-fade-color: rgba(232, 251, 242, 0.98);
|
|
1982
2053
|
}
|
|
1983
2054
|
.conversation-row.is-assistant .conversation-bubble {
|
|
1984
2055
|
--expandable-fade-color: rgba(255, 255, 255, 0.98);
|
|
1985
|
-
background: rgba(255, 255, 255, 0.96);
|
|
1986
|
-
}
|
|
1987
|
-
.conversation-row.is-system .conversation-role {
|
|
1988
|
-
color: var(--primary);
|
|
1989
2056
|
}
|
|
1990
2057
|
.conversation-row.is-system .conversation-bubble {
|
|
1991
2058
|
--expandable-fade-color: rgba(235, 242, 250, 0.98);
|
|
1992
|
-
border-color: rgba(40, 93, 168, 0.16);
|
|
1993
|
-
background: rgba(235, 242, 250, 0.94);
|
|
1994
|
-
box-shadow: inset 3px 0 0 rgba(40, 93, 168, 0.4);
|
|
1995
2059
|
}
|
|
1996
2060
|
.tool-result-bubble {
|
|
1997
|
-
--expandable-fade-color: rgba(
|
|
2061
|
+
--expandable-fade-color: rgba(238, 248, 243, 0.98);
|
|
1998
2062
|
display: flex;
|
|
1999
2063
|
flex-direction: column;
|
|
2000
2064
|
gap: 0.8rem;
|
|
2001
|
-
background: rgba(245, 248, 251, 0.94);
|
|
2002
2065
|
}
|
|
2003
2066
|
.tool-call-bubble {
|
|
2067
|
+
--expandable-fade-color: rgba(252, 245, 232, 0.98);
|
|
2004
2068
|
display: flex;
|
|
2005
2069
|
flex-direction: column;
|
|
2006
2070
|
gap: 0.8rem;
|
|
2007
|
-
background: rgba(237, 243, 249, 0.96);
|
|
2008
2071
|
}
|
|
2009
2072
|
.tool-result-meta {
|
|
2010
2073
|
display: flex;
|
|
@@ -2329,14 +2392,18 @@ pre {
|
|
|
2329
2392
|
gap: 0.8rem;
|
|
2330
2393
|
}
|
|
2331
2394
|
.message-card {
|
|
2395
|
+
--message-accent: rgba(120, 137, 159, 0.22);
|
|
2396
|
+
--message-border-color: rgba(88, 105, 130, 0.1);
|
|
2397
|
+
--message-surface: rgba(255, 255, 255, 0.92);
|
|
2332
2398
|
--expandable-fade-color: rgba(255, 255, 255, 0.98);
|
|
2333
2399
|
display: flex;
|
|
2334
2400
|
flex-direction: column;
|
|
2335
2401
|
gap: 0.75rem;
|
|
2336
2402
|
padding: 0.9rem;
|
|
2337
2403
|
border-radius: 12px;
|
|
2338
|
-
background:
|
|
2339
|
-
border: 1px solid
|
|
2404
|
+
background: var(--message-surface);
|
|
2405
|
+
border: 1px solid var(--message-border-color);
|
|
2406
|
+
box-shadow: inset 3px 0 0 var(--message-accent), inset 0 1px 0 rgba(255, 255, 255, 0.68);
|
|
2340
2407
|
}
|
|
2341
2408
|
.message-card-header {
|
|
2342
2409
|
display: flex;
|
|
@@ -2362,21 +2429,28 @@ pre {
|
|
|
2362
2429
|
font-weight: 600;
|
|
2363
2430
|
}
|
|
2364
2431
|
.message-card.role-system {
|
|
2432
|
+
--message-accent: rgba(46, 104, 255, 0.56);
|
|
2433
|
+
--message-border-color: rgba(46, 104, 255, 0.24);
|
|
2434
|
+
--message-surface: rgba(233, 240, 255, 0.98);
|
|
2365
2435
|
--expandable-fade-color: rgba(236, 242, 250, 0.98);
|
|
2366
|
-
border-color: rgba(40, 93, 168, 0.14);
|
|
2367
|
-
background: rgba(236, 242, 250, 0.94);
|
|
2368
2436
|
}
|
|
2369
2437
|
.message-card.role-assistant {
|
|
2438
|
+
--message-accent: rgba(151, 96, 255, 0.48);
|
|
2439
|
+
--message-border-color: rgba(151, 96, 255, 0.2);
|
|
2440
|
+
--message-surface: rgba(247, 240, 255, 0.98);
|
|
2370
2441
|
--expandable-fade-color: rgba(255, 255, 255, 0.98);
|
|
2371
|
-
background: rgba(255, 255, 255, 0.96);
|
|
2372
2442
|
}
|
|
2373
2443
|
.message-card.role-user {
|
|
2374
|
-
--
|
|
2375
|
-
|
|
2444
|
+
--message-accent: rgba(46, 181, 129, 0.58);
|
|
2445
|
+
--message-border-color: rgba(46, 181, 129, 0.24);
|
|
2446
|
+
--message-surface: rgba(232, 251, 242, 0.97);
|
|
2447
|
+
--expandable-fade-color: rgba(232, 251, 242, 0.98);
|
|
2376
2448
|
}
|
|
2377
2449
|
.message-card.role-tool {
|
|
2378
|
-
--
|
|
2379
|
-
|
|
2450
|
+
--message-accent: rgba(23, 171, 108, 0.52);
|
|
2451
|
+
--message-border-color: rgba(23, 171, 108, 0.22);
|
|
2452
|
+
--message-surface: rgba(231, 251, 240, 0.97);
|
|
2453
|
+
--expandable-fade-color: rgba(238, 248, 243, 0.98);
|
|
2380
2454
|
}
|
|
2381
2455
|
.tool-call-stack {
|
|
2382
2456
|
display: flex;
|
|
@@ -2892,29 +2966,64 @@ pre {
|
|
|
2892
2966
|
background: rgba(12, 18, 28, 0.96);
|
|
2893
2967
|
box-shadow: -24px 0 70px rgba(1, 7, 18, 0.42);
|
|
2894
2968
|
}
|
|
2969
|
+
:root[data-theme=dark] .conversation-row,
|
|
2970
|
+
:root[data-theme=dark] .message-card {
|
|
2971
|
+
--message-role-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
|
|
2972
|
+
}
|
|
2895
2973
|
:root[data-theme=dark] .conversation-row.is-user .conversation-bubble,
|
|
2896
2974
|
:root[data-theme=dark] .message-card.role-user {
|
|
2897
|
-
--
|
|
2898
|
-
|
|
2975
|
+
--message-accent: rgba(76, 218, 157, 0.58);
|
|
2976
|
+
--message-border-color: rgba(76, 218, 157, 0.28);
|
|
2977
|
+
--message-surface: rgba(10, 72, 49, 0.98);
|
|
2978
|
+
--message-label-color: rgba(209, 255, 234, 0.98);
|
|
2979
|
+
--message-label-border: rgba(76, 218, 157, 0.24);
|
|
2980
|
+
--message-label-surface: rgba(76, 218, 157, 0.18);
|
|
2981
|
+
--expandable-fade-color: rgba(10, 72, 49, 0.99);
|
|
2899
2982
|
}
|
|
2900
2983
|
:root[data-theme=dark] .conversation-row.is-assistant .conversation-bubble,
|
|
2901
2984
|
:root[data-theme=dark] .message-card.role-assistant {
|
|
2985
|
+
--message-accent: rgba(177, 108, 255, 0.54);
|
|
2986
|
+
--message-border-color: rgba(177, 108, 255, 0.24);
|
|
2987
|
+
--message-surface: rgba(54, 24, 89, 0.98);
|
|
2988
|
+
--message-label-color: rgba(231, 208, 255, 0.98);
|
|
2989
|
+
--message-label-border: rgba(177, 108, 255, 0.22);
|
|
2990
|
+
--message-label-surface: rgba(177, 108, 255, 0.16);
|
|
2902
2991
|
--expandable-fade-color: rgba(22, 32, 48, 0.99);
|
|
2903
|
-
background: rgba(22, 32, 48, 0.98);
|
|
2904
2992
|
}
|
|
2905
2993
|
:root[data-theme=dark] .conversation-row.is-system .conversation-bubble,
|
|
2906
2994
|
:root[data-theme=dark] .message-card.role-system {
|
|
2995
|
+
--message-accent: rgba(79, 136, 255, 0.62);
|
|
2996
|
+
--message-border-color: rgba(79, 136, 255, 0.28);
|
|
2997
|
+
--message-surface: rgba(17, 42, 96, 0.98);
|
|
2998
|
+
--message-label-color: rgba(203, 221, 255, 0.98);
|
|
2999
|
+
--message-label-border: rgba(79, 136, 255, 0.26);
|
|
3000
|
+
--message-label-surface: rgba(79, 136, 255, 0.18);
|
|
2907
3001
|
--expandable-fade-color: rgba(26, 39, 57, 0.99);
|
|
2908
|
-
|
|
2909
|
-
|
|
2910
|
-
|
|
3002
|
+
}
|
|
3003
|
+
:root[data-theme=dark] .conversation-row.is-tool .conversation-bubble,
|
|
3004
|
+
:root[data-theme=dark] .message-card.role-tool {
|
|
3005
|
+
--message-accent: rgba(60, 212, 144, 0.56);
|
|
3006
|
+
--message-border-color: rgba(60, 212, 144, 0.26);
|
|
3007
|
+
--message-surface: rgba(11, 63, 42, 0.98);
|
|
3008
|
+
--message-label-color: rgba(203, 255, 229, 0.98);
|
|
3009
|
+
--message-label-border: rgba(60, 212, 144, 0.22);
|
|
3010
|
+
--message-label-surface: rgba(60, 212, 144, 0.16);
|
|
3011
|
+
--expandable-fade-color: rgba(18, 34, 33, 0.99);
|
|
3012
|
+
}
|
|
3013
|
+
:root[data-theme=dark] .conversation-row.is-tool-call .conversation-bubble {
|
|
3014
|
+
--message-accent: rgba(255, 170, 66, 0.6);
|
|
3015
|
+
--message-border-color: rgba(255, 170, 66, 0.28);
|
|
3016
|
+
--message-surface: rgba(84, 43, 5, 0.98);
|
|
3017
|
+
--message-label-color: rgba(255, 228, 184, 0.98);
|
|
3018
|
+
--message-label-border: rgba(255, 170, 66, 0.24);
|
|
3019
|
+
--message-label-surface: rgba(255, 170, 66, 0.16);
|
|
3020
|
+
--expandable-fade-color: rgba(44, 31, 16, 0.99);
|
|
2911
3021
|
}
|
|
2912
3022
|
:root[data-theme=dark] .tool-result-bubble {
|
|
2913
|
-
--expandable-fade-color: rgba(
|
|
2914
|
-
background: rgba(17, 26, 39, 0.96);
|
|
3023
|
+
--expandable-fade-color: rgba(18, 34, 33, 0.99);
|
|
2915
3024
|
}
|
|
2916
3025
|
:root[data-theme=dark] .tool-call-bubble {
|
|
2917
|
-
|
|
3026
|
+
--expandable-fade-color: rgba(44, 31, 16, 0.99);
|
|
2918
3027
|
}
|
|
2919
3028
|
:root[data-theme=dark] .markdown-body code {
|
|
2920
3029
|
background: rgba(101, 134, 182, 0.18);
|
package/dist/client/app.js
CHANGED
|
@@ -38351,11 +38351,11 @@ function StructuredMessageCard({
|
|
|
38351
38351
|
const isToolResult = message.role === "tool";
|
|
38352
38352
|
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: cn("message-card", `role-${message.role}`), children: [
|
|
38353
38353
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "message-card-header", children: [
|
|
38354
|
-
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Badge, { variant: "secondary", children: message.role }),
|
|
38354
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Badge, { semantic: message.role, variant: "secondary", children: message.role }),
|
|
38355
38355
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "message-card-header-meta", children: [
|
|
38356
38356
|
isToolResult && message.name ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Badge, { variant: "outline", children: message.name }) : null,
|
|
38357
38357
|
isToolResult && message.tool_call_id ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Badge, { variant: "secondary", children: message.tool_call_id }) : null,
|
|
38358
|
-
isToolCallTurn ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Badge, { variant: "outline", children: formatCountLabel(toolCalls.length, "tool call") }) : null
|
|
38358
|
+
isToolCallTurn ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Badge, { semantic: "tool-call", variant: "outline", children: formatCountLabel(toolCalls.length, "tool call") }) : null
|
|
38359
38359
|
] })
|
|
38360
38360
|
] }),
|
|
38361
38361
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "message-card-body", children: [
|
|
@@ -39615,6 +39615,17 @@ function getSemanticBadgeValue(value) {
|
|
|
39615
39615
|
return "session";
|
|
39616
39616
|
case "actor":
|
|
39617
39617
|
return "actor";
|
|
39618
|
+
case "assistant":
|
|
39619
|
+
return "assistant";
|
|
39620
|
+
case "user":
|
|
39621
|
+
return "user";
|
|
39622
|
+
case "system":
|
|
39623
|
+
return "system";
|
|
39624
|
+
case "tool":
|
|
39625
|
+
return "tool";
|
|
39626
|
+
case "tool call":
|
|
39627
|
+
case "tool-call":
|
|
39628
|
+
return "tool-call";
|
|
39618
39629
|
case "guardrail":
|
|
39619
39630
|
return "guardrail";
|
|
39620
39631
|
case "call":
|