@design.estate/dees-catalog 4.8.1 → 4.10.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_bundle/bundle.js +580 -95
- package/dist_ts_web/00_commitinfo_data.js +2 -2
- package/dist_ts_web/elements/00group-harness/dees-harness-message/dees-harness-message.js +18 -2
- package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.d.ts +23 -2
- package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.demo.js +10 -1
- package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.js +575 -99
- package/dist_ts_web/elements/00group-harness/interfaces.d.ts +12 -1
- package/package.json +2 -2
- package/readme.md +3 -1
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/00group-harness/dees-harness-message/dees-harness-message.ts +17 -1
- package/ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.demo.ts +10 -0
- package/ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.ts +615 -95
- package/ts_web/elements/00group-harness/interfaces.ts +13 -1
- package/dist_watch/bundle.js +0 -235637
- package/dist_watch/bundle.js.map +0 -7
- package/dist_watch/index.html +0 -28
|
@@ -56,6 +56,8 @@ export interface IHarnessMessage {
|
|
|
56
56
|
error?: string;
|
|
57
57
|
/** model that produced this message, e.g. "anthropic/claude-opus-5" */
|
|
58
58
|
model?: string;
|
|
59
|
+
/** reasoning-effort variant this message ran with, e.g. "high" */
|
|
60
|
+
effort?: string;
|
|
59
61
|
/** consumer passthrough; never interpreted by the components */
|
|
60
62
|
meta?: Record<string, unknown>;
|
|
61
63
|
}
|
|
@@ -191,6 +193,7 @@ export interface IHarnessPermissionResponseDetail {
|
|
|
191
193
|
remember: boolean;
|
|
192
194
|
request: IHarnessPermissionRequest;
|
|
193
195
|
}
|
|
196
|
+
export type THarnessSessionCardState = 'normal' | 'working' | 'finished' | 'attention' | 'error';
|
|
194
197
|
export interface IHarnessSessionMeta {
|
|
195
198
|
id: string;
|
|
196
199
|
title: string;
|
|
@@ -200,6 +203,12 @@ export interface IHarnessSessionMeta {
|
|
|
200
203
|
preview?: string;
|
|
201
204
|
/** Optional dees-icon name (e.g. 'lucide:Terminal') shown before the title. */
|
|
202
205
|
icon?: string;
|
|
206
|
+
/** Visual card state. Defaults to `normal`. */
|
|
207
|
+
state?: THarnessSessionCardState;
|
|
208
|
+
/** Independent activity signal used for idle-to-working auto-expansion. */
|
|
209
|
+
working?: boolean;
|
|
210
|
+
/** Set false for pinned, non-sortable entries such as terminals. Defaults to true. */
|
|
211
|
+
draggable?: boolean;
|
|
203
212
|
}
|
|
204
213
|
/** Detail of `harness-session-context`, fired on right-click of a session item. */
|
|
205
214
|
export interface IHarnessSessionContextDetail {
|
|
@@ -221,8 +230,10 @@ export interface IHarnessSessionMoveDetail {
|
|
|
221
230
|
sessionId: string;
|
|
222
231
|
/** Target group, or null for the ungrouped section. */
|
|
223
232
|
groupId: string | null;
|
|
224
|
-
/**
|
|
233
|
+
/** Compatibility insertion index using the pre-drag order for same-section moves. */
|
|
225
234
|
index: number;
|
|
235
|
+
/** Stable target anchor in the dragged-card-excluded order; absent means append. */
|
|
236
|
+
beforeSessionId?: string;
|
|
226
237
|
}
|
|
227
238
|
/** Detail of `harness-group-context`, fired on right-click of a group header. */
|
|
228
239
|
export interface IHarnessGroupContextDetail {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@design.estate/dees-catalog",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.10.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.",
|
|
6
6
|
"main": "dist_ts_web/index.js",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"ts/**/*",
|
|
57
57
|
"ts_web/**/*",
|
|
58
58
|
"dist/**/*",
|
|
59
|
-
"
|
|
59
|
+
"dist_bundle/**/*",
|
|
60
60
|
"dist_ts/**/*",
|
|
61
61
|
"dist_ts_web/**/*",
|
|
62
62
|
"assets/**/*",
|
package/readme.md
CHANGED
|
@@ -1861,7 +1861,9 @@ Token usage chip (`in · out · total`, `compact` shows the total only); cache r
|
|
|
1861
1861
|
|
|
1862
1862
|
#### `DeesHarnessSessionList`
|
|
1863
1863
|
|
|
1864
|
-
Searchable conversation
|
|
1864
|
+
Searchable, card-based conversation column for sidebars or a `DeesModal` (`harness-session-select` on click, `harness-session-open` on double-click/Enter). Cards are collapsed by default, expose an independent accessible expansion control, and auto-expand only when an already-rendered session changes from not working to `working: true`. Selection does not affect expansion.
|
|
1865
|
+
|
|
1866
|
+
`IHarnessSessionMeta.state` accepts `normal`, `working`, `finished`, `attention`, or `error`; `working` remains an independent activity signal for expansion transitions. With `enableGrouping`, sortable cards can move within and between groups. Dragging opens a full-card drop slot and animates surrounding cards; `harness-session-move` includes both the compatibility `index` and a stable optional `beforeSessionId` anchor. Set `draggable: false` for pinned entries such as terminals. Pass `ungroupedSessionIds` to control the order outside groups; omitted or unknown entries fall back to recency order.
|
|
1865
1867
|
|
|
1866
1868
|
---
|
|
1867
1869
|
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@design.estate/dees-catalog',
|
|
6
|
-
version: '4.
|
|
6
|
+
version: '4.10.0',
|
|
7
7
|
description: 'A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.'
|
|
8
8
|
}
|
|
@@ -174,6 +174,15 @@ export class DeesHarnessMessage extends DeesElement {
|
|
|
174
174
|
|
|
175
175
|
/* Which model produced this message — trails the role/time so a
|
|
176
176
|
mid-conversation model switch is visible in the transcript. */
|
|
177
|
+
/* reasoning effort rides with the model as a subtle pill */
|
|
178
|
+
.effortLabel {
|
|
179
|
+
margin-left: 5px;
|
|
180
|
+
padding: 0 5px;
|
|
181
|
+
border-radius: var(--dees-radius-full);
|
|
182
|
+
background: var(--dees-color-fill-secondary);
|
|
183
|
+
color: var(--dees-color-text-secondary);
|
|
184
|
+
}
|
|
185
|
+
|
|
177
186
|
.modelLabel {
|
|
178
187
|
margin-left: auto;
|
|
179
188
|
color: var(--dees-color-text-muted);
|
|
@@ -385,7 +394,14 @@ export class DeesHarnessMessage extends DeesElement {
|
|
|
385
394
|
? html`<span class="timestamp">${harnessFormatClockTime(message.createdAt)}</span>`
|
|
386
395
|
: ''}
|
|
387
396
|
${message.model
|
|
388
|
-
? html
|
|
397
|
+
? html`
|
|
398
|
+
<span
|
|
399
|
+
class="modelLabel"
|
|
400
|
+
title=${message.effort ? `${message.model} · ${message.effort}` : message.model}
|
|
401
|
+
>${message.model}${message.effort
|
|
402
|
+
? html`<span class="effortLabel">${message.effort}</span>`
|
|
403
|
+
: ''}</span>
|
|
404
|
+
`
|
|
389
405
|
: ''}
|
|
390
406
|
</div>
|
|
391
407
|
`
|
package/ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.demo.ts
CHANGED
|
@@ -15,8 +15,15 @@ const demoSessions: IHarnessSessionMeta[] = Array.from({ length: 24 }, (_, index
|
|
|
15
15
|
updatedAt: Date.now() - (index + 1) * 3_500_000,
|
|
16
16
|
messageCount: 4 + (index % 9),
|
|
17
17
|
preview: 'Latest: the regression test asserts the cache key stays stable across…',
|
|
18
|
+
state: (['normal', 'working', 'finished', 'attention', 'error'] as const)[index % 5],
|
|
19
|
+
working: index % 5 === 1,
|
|
18
20
|
}));
|
|
19
21
|
|
|
22
|
+
const demoGroups = [
|
|
23
|
+
{ id: 'active', name: 'Active work', sessionIds: ['session-0', 'session-1', 'session-2'] },
|
|
24
|
+
{ id: 'review', name: 'Review', sessionIds: ['session-3', 'session-4'] },
|
|
25
|
+
];
|
|
26
|
+
|
|
20
27
|
const openModal = async () => {
|
|
21
28
|
const { DeesModal } = await import('../../00group-overlay/dees-modal/dees-modal.js');
|
|
22
29
|
const content = document.createElement('dees-harness-session-list');
|
|
@@ -52,6 +59,9 @@ export const demoFunc = () => html`
|
|
|
52
59
|
<dees-button @clicked=${openModal}>Open in a DeesModal</dees-button>
|
|
53
60
|
<dees-harness-session-list
|
|
54
61
|
.sessions=${demoSessions}
|
|
62
|
+
.groups=${demoGroups}
|
|
63
|
+
.ungroupedSessionIds=${demoSessions.slice(5).map((session) => session.id)}
|
|
64
|
+
.enableGrouping=${true}
|
|
55
65
|
selectedSessionId="session-2"
|
|
56
66
|
@harness-session-select=${(event: CustomEvent) => console.log('select', event.detail.session)}
|
|
57
67
|
></dees-harness-session-list>
|