@design.estate/dees-catalog 6.9.0 → 6.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.
@@ -173496,7 +173496,7 @@ var defaultDescriptors = [
173496
173496
  },
173497
173497
  {
173498
173498
  kind: "subtask",
173499
- names: ["task", "subagent"],
173499
+ names: ["delegate", "subagent"],
173500
173500
  label: "Subagent",
173501
173501
  icon: "lucide:Bot",
173502
173502
  // The child's model belongs in the collapsed header: a subagent often
@@ -173516,6 +173516,16 @@ var defaultDescriptors = [
173516
173516
  subtitle: /* @__PURE__ */ __name((call) => inputField(call, "question") || inputField(call, "prompt") || harnessSummaryLine(call.input), "subtitle"),
173517
173517
  defaultExpanded: true
173518
173518
  },
173519
+ {
173520
+ kind: "project-task",
173521
+ names: ["task"],
173522
+ label: "Project task",
173523
+ icon: "lucide:ListChecks",
173524
+ subtitle: /* @__PURE__ */ __name((call) => {
173525
+ const action = inputField(call, "action");
173526
+ return action ? `Action: ${action}` : harnessSummaryLine(call.input);
173527
+ }, "subtitle")
173528
+ },
173519
173529
  {
173520
173530
  kind: "todo",
173521
173531
  names: ["todowrite", "todo_write", "todoread"],
@@ -174468,7 +174478,7 @@ var createSubagentWave = /* @__PURE__ */ __name((runId, waveNumber, scenarios) =
174468
174478
  createdAt: now3 + index3,
174469
174479
  toolCall: {
174470
174480
  id: `demo-${runId}-wave-${waveNumber}-call-${index3 + 1}`,
174471
- name: "task",
174481
+ name: "delegate",
174472
174482
  status: "running",
174473
174483
  input: { description: scenario.description },
174474
174484
  childSessionId,
@@ -176323,6 +176333,28 @@ var renderTodo = /* @__PURE__ */ __name((call, helpers) => {
176323
176333
  if (!todos2.length) return helpers.monoBlock(harnessSummarizeValue(call.input) || outputText(call));
176324
176334
  return b2`<dees-harness-todos compact .todos=${todos2}></dees-harness-todos>`;
176325
176335
  }, "renderTodo");
176336
+ var projectTaskOutputItems = /* @__PURE__ */ __name((output) => {
176337
+ if (!harnessIsRecord(output)) return void 0;
176338
+ if (Array.isArray(output.tasks)) return output.tasks;
176339
+ if (Object.prototype.hasOwnProperty.call(output, "task")) return [output.task];
176340
+ return harnessIsRecord(output.state) && Array.isArray(output.state.tasks) ? output.state.tasks : void 0;
176341
+ }, "projectTaskOutputItems");
176342
+ var hasUnsupportedTodoStatus = /* @__PURE__ */ __name((items) => items.some((item) => {
176343
+ if (!harnessIsRecord(item) || typeof item.status !== "string") return false;
176344
+ return item.status !== "pending" && item.status !== "in_progress" && item.status !== "completed";
176345
+ }), "hasUnsupportedTodoStatus");
176346
+ var renderProjectTask = /* @__PURE__ */ __name((call, helpers) => {
176347
+ const output = outputText(call);
176348
+ const outputItems = projectTaskOutputItems(call.output);
176349
+ if (outputItems !== void 0) {
176350
+ const tasks = hasUnsupportedTodoStatus(outputItems) ? [] : harnessParseTodos(outputItems);
176351
+ if (tasks.length) {
176352
+ return b2`<dees-harness-todos compact .todos=${tasks}></dees-harness-todos>`;
176353
+ }
176354
+ return helpers.monoBlock(output || harnessStringifyValue(outputItems));
176355
+ }
176356
+ return helpers.monoBlock(output || harnessSummarizeValue(call.input));
176357
+ }, "renderProjectTask");
176326
176358
  var renderMcp = /* @__PURE__ */ __name((call, helpers) => {
176327
176359
  return b2`
176328
176360
  ${call.contentBlocks?.length ? helpers.contentBlocks(call.contentBlocks) : ""}
@@ -176351,6 +176383,7 @@ var builtinBodyRenderers = {
176351
176383
  "json": renderJson,
176352
176384
  "search": renderSearch,
176353
176385
  "subtask": renderSubtask,
176386
+ "project-task": renderProjectTask,
176354
176387
  "todo": renderTodo,
176355
176388
  "mcp": renderMcp,
176356
176389
  "unknown": renderUnknown
@@ -179289,15 +179322,17 @@ var DeesHarnessQuestionCard = _DeesHarnessQuestionCard;
179289
179322
  init_dist_ts26();
179290
179323
  init_theme();
179291
179324
  init_dees_icon();
179292
- var _scrollFadeBottom_dec, _scrollFadeTop_dec, _entryAnimationsEnabled_dec, _showJumpChip_dec, _emptyText_dec, _emptyTitle_dec, _showTimestamps_dec, _showRoles_dec, _allowSubtaskStreams_dec3, _viewState_dec6, _toolRegistry_dec4, _fadeScrollEdges_dec, _hideScrollbar_dec, _autoFollow_dec, _questions_dec, _permissionsBusy_dec, _permissions_dec, _status_dec5, _messages_dec, _a86, _DeesHarnessMessageList_decorators, _init87, _messages, _status5, _permissions, _permissionsBusy, _questions, _autoFollow, _hideScrollbar, _fadeScrollEdges, _toolRegistry4, _viewState6, _allowSubtaskStreams3, _showRoles, _showTimestamps, _emptyTitle, _emptyText, _showJumpChip, _entryAnimationsEnabled, _scrollFadeTop, _scrollFadeBottom;
179325
+ var _scrollFadeBottom_dec, _scrollFadeTop_dec, _entryAnimationsEnabled_dec, _showJumpChip_dec, _emptyText_dec, _emptyTitle_dec, _showTimestamps_dec, _showRoles_dec, _allowSubtaskStreams_dec3, _viewState_dec6, _toolRegistry_dec4, _fadeScrollEdges_dec, _hideScrollbar_dec, _loadingEarlier_dec, _hasEarlierMessages_dec, _transcriptKey_dec, _autoFollow_dec, _questions_dec, _permissionsBusy_dec, _permissions_dec, _status_dec5, _messages_dec, _a86, _DeesHarnessMessageList_decorators, _init87, _messages, _status5, _permissions, _permissionsBusy, _questions, _autoFollow, _transcriptKey, _hasEarlierMessages, _loadingEarlier, _hideScrollbar, _fadeScrollEdges, _toolRegistry4, _viewState6, _allowSubtaskStreams3, _showRoles, _showTimestamps, _emptyTitle, _emptyText, _showJumpChip, _entryAnimationsEnabled, _scrollFadeTop, _scrollFadeBottom;
179293
179326
  var { repeat: repeat4 } = directives_exports;
179294
179327
  var pinThresholdPx = 48;
179328
+ var loadEarlierThresholdPx = 24;
179329
+ var scrollIntentSettlementMs = 250;
179295
179330
  var virtualizationThreshold = 40;
179296
179331
  var virtualOverscanPx = 800;
179297
179332
  var virtualGapPx = 8;
179298
179333
  var maximumToolMessagesPerGroup = 4;
179299
179334
  _DeesHarnessMessageList_decorators = [customElement("dees-harness-message-list")];
179300
- var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = DeesElement, _messages_dec = [n5({ attribute: false })], _status_dec5 = [n5({ attribute: false })], _permissions_dec = [n5({ attribute: false })], _permissionsBusy_dec = [n5({ type: Boolean })], _questions_dec = [n5({ attribute: false })], _autoFollow_dec = [n5({ type: Boolean })], _hideScrollbar_dec = [n5({ type: Boolean })], _fadeScrollEdges_dec = [n5({ type: Boolean })], _toolRegistry_dec4 = [n5({ attribute: false })], _viewState_dec6 = [n5({ attribute: false })], _allowSubtaskStreams_dec3 = [n5({ type: Boolean })], _showRoles_dec = [n5({ type: Boolean })], _showTimestamps_dec = [n5({ type: Boolean })], _emptyTitle_dec = [n5()], _emptyText_dec = [n5()], _showJumpChip_dec = [r5()], _entryAnimationsEnabled_dec = [r5()], _scrollFadeTop_dec = [r5()], _scrollFadeBottom_dec = [r5()], _a86) {
179335
+ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = DeesElement, _messages_dec = [n5({ attribute: false })], _status_dec5 = [n5({ attribute: false })], _permissions_dec = [n5({ attribute: false })], _permissionsBusy_dec = [n5({ type: Boolean })], _questions_dec = [n5({ attribute: false })], _autoFollow_dec = [n5({ type: Boolean })], _transcriptKey_dec = [n5()], _hasEarlierMessages_dec = [n5({ type: Boolean })], _loadingEarlier_dec = [n5({ type: Boolean })], _hideScrollbar_dec = [n5({ type: Boolean })], _fadeScrollEdges_dec = [n5({ type: Boolean })], _toolRegistry_dec4 = [n5({ attribute: false })], _viewState_dec6 = [n5({ attribute: false })], _allowSubtaskStreams_dec3 = [n5({ type: Boolean })], _showRoles_dec = [n5({ type: Boolean })], _showTimestamps_dec = [n5({ type: Boolean })], _emptyTitle_dec = [n5()], _emptyText_dec = [n5()], _showJumpChip_dec = [r5()], _entryAnimationsEnabled_dec = [r5()], _scrollFadeTop_dec = [r5()], _scrollFadeBottom_dec = [r5()], _a86) {
179301
179336
  constructor() {
179302
179337
  super(...arguments);
179303
179338
  __privateAdd(this, _messages, __runInitializers(_init87, 8, this, [])), __runInitializers(_init87, 11, this);
@@ -179306,19 +179341,22 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179306
179341
  __privateAdd(this, _permissionsBusy, __runInitializers(_init87, 20, this, false)), __runInitializers(_init87, 23, this);
179307
179342
  __privateAdd(this, _questions, __runInitializers(_init87, 24, this, [])), __runInitializers(_init87, 27, this);
179308
179343
  __privateAdd(this, _autoFollow, __runInitializers(_init87, 28, this, true)), __runInitializers(_init87, 31, this);
179309
- __privateAdd(this, _hideScrollbar, __runInitializers(_init87, 32, this, false)), __runInitializers(_init87, 35, this);
179310
- __privateAdd(this, _fadeScrollEdges, __runInitializers(_init87, 36, this, false)), __runInitializers(_init87, 39, this);
179311
- __privateAdd(this, _toolRegistry4, __runInitializers(_init87, 40, this, DeesHarnessToolRegistry.default)), __runInitializers(_init87, 43, this);
179312
- __privateAdd(this, _viewState6, __runInitializers(_init87, 44, this)), __runInitializers(_init87, 47, this);
179313
- __privateAdd(this, _allowSubtaskStreams3, __runInitializers(_init87, 48, this, true)), __runInitializers(_init87, 51, this);
179314
- __privateAdd(this, _showRoles, __runInitializers(_init87, 52, this, true)), __runInitializers(_init87, 55, this);
179315
- __privateAdd(this, _showTimestamps, __runInitializers(_init87, 56, this, false)), __runInitializers(_init87, 59, this);
179316
- __privateAdd(this, _emptyTitle, __runInitializers(_init87, 60, this, "No messages yet")), __runInitializers(_init87, 63, this);
179317
- __privateAdd(this, _emptyText, __runInitializers(_init87, 64, this, "Start a conversation to see it here.")), __runInitializers(_init87, 67, this);
179318
- __privateAdd(this, _showJumpChip, __runInitializers(_init87, 68, this, false)), __runInitializers(_init87, 71, this);
179319
- __privateAdd(this, _entryAnimationsEnabled, __runInitializers(_init87, 72, this, false)), __runInitializers(_init87, 75, this);
179320
- __privateAdd(this, _scrollFadeTop, __runInitializers(_init87, 76, this, false)), __runInitializers(_init87, 79, this);
179321
- __privateAdd(this, _scrollFadeBottom, __runInitializers(_init87, 80, this, false)), __runInitializers(_init87, 83, this);
179344
+ __privateAdd(this, _transcriptKey, __runInitializers(_init87, 32, this, "")), __runInitializers(_init87, 35, this);
179345
+ __privateAdd(this, _hasEarlierMessages, __runInitializers(_init87, 36, this, false)), __runInitializers(_init87, 39, this);
179346
+ __privateAdd(this, _loadingEarlier, __runInitializers(_init87, 40, this, false)), __runInitializers(_init87, 43, this);
179347
+ __privateAdd(this, _hideScrollbar, __runInitializers(_init87, 44, this, false)), __runInitializers(_init87, 47, this);
179348
+ __privateAdd(this, _fadeScrollEdges, __runInitializers(_init87, 48, this, false)), __runInitializers(_init87, 51, this);
179349
+ __privateAdd(this, _toolRegistry4, __runInitializers(_init87, 52, this, DeesHarnessToolRegistry.default)), __runInitializers(_init87, 55, this);
179350
+ __privateAdd(this, _viewState6, __runInitializers(_init87, 56, this)), __runInitializers(_init87, 59, this);
179351
+ __privateAdd(this, _allowSubtaskStreams3, __runInitializers(_init87, 60, this, true)), __runInitializers(_init87, 63, this);
179352
+ __privateAdd(this, _showRoles, __runInitializers(_init87, 64, this, true)), __runInitializers(_init87, 67, this);
179353
+ __privateAdd(this, _showTimestamps, __runInitializers(_init87, 68, this, false)), __runInitializers(_init87, 71, this);
179354
+ __privateAdd(this, _emptyTitle, __runInitializers(_init87, 72, this, "No messages yet")), __runInitializers(_init87, 75, this);
179355
+ __privateAdd(this, _emptyText, __runInitializers(_init87, 76, this, "Start a conversation to see it here.")), __runInitializers(_init87, 79, this);
179356
+ __privateAdd(this, _showJumpChip, __runInitializers(_init87, 80, this, false)), __runInitializers(_init87, 83, this);
179357
+ __privateAdd(this, _entryAnimationsEnabled, __runInitializers(_init87, 84, this, false)), __runInitializers(_init87, 87, this);
179358
+ __privateAdd(this, _scrollFadeTop, __runInitializers(_init87, 88, this, false)), __runInitializers(_init87, 91, this);
179359
+ __privateAdd(this, _scrollFadeBottom, __runInitializers(_init87, 92, this, false)), __runInitializers(_init87, 95, this);
179322
179360
  __publicField(this, "toolGroupIdByMessageId", /* @__PURE__ */ new Map());
179323
179361
  __publicField(this, "nextToolGroupId", 1);
179324
179362
  __publicField(this, "timelineRenderItems", []);
@@ -179361,6 +179399,16 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179361
179399
  __publicField(this, "virtualizationDisablePending", false);
179362
179400
  __publicField(this, "virtualizationActivationFrame", null);
179363
179401
  __publicField(this, "selectionChangeListening", false);
179402
+ __publicField(this, "loadEarlierLatched", false);
179403
+ __publicField(this, "loadingEarlierObserved", false);
179404
+ __publicField(this, "earlierScrollIntent", false);
179405
+ __publicField(this, "scrollbarGestureActive", false);
179406
+ __publicField(this, "touchScrollY");
179407
+ __publicField(this, "scrollIntentTimer");
179408
+ __publicField(this, "programmaticScrollTop");
179409
+ __publicField(this, "programmaticScrollGeneration", 0);
179410
+ __publicField(this, "programmaticScrollFrame", null);
179411
+ __publicField(this, "programmaticScrollSecondFrame", null);
179364
179412
  __publicField(this, "contentResizeObserver", null);
179365
179413
  __publicField(this, "observedScrollContent", null);
179366
179414
  __publicField(this, "observedContentBlockSize", null);
@@ -179380,32 +179428,91 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179380
179428
  if (!this.autoFollow || this.userUnpinned) return;
179381
179429
  const container = this.scrollContainer;
179382
179430
  if (!container) return;
179383
- container.scrollTop = container.scrollHeight;
179384
- this.lastObservedScrollTop = container.scrollTop;
179431
+ this.setProgrammaticScrollTop(container, container.scrollHeight);
179385
179432
  }, "repinToBottom"));
179386
179433
  __publicField(this, "handleUserScrollIntent", /* @__PURE__ */ __name((event) => {
179387
- if (event.composedPath().some(
179388
- (candidate) => candidate instanceof _DeesHarnessMessageList && candidate !== this
179389
- )) return;
179434
+ if (this.eventComesFromNestedMessageList(event)) return;
179390
179435
  if (event.type === "wheel") {
179391
179436
  this.cancelFullAnchorRestore();
179392
- if (event.deltaY >= 0) return;
179437
+ const deltaY = event.deltaY;
179438
+ if (deltaY < 0) {
179439
+ this.armEarlierScrollIntent();
179440
+ this.requestEarlierIfAtTop();
179441
+ this.markUserUnpinned();
179442
+ } else if (deltaY > 0) {
179443
+ this.clearEarlierScrollIntent();
179444
+ }
179445
+ return;
179393
179446
  }
179394
- if (event.type === "keydown" && !["ArrowUp", "PageUp", "Home"].includes(event.key)) {
179395
- if (["ArrowDown", "PageDown", "End", " "].includes(event.key)) {
179447
+ if (event.type === "keydown") {
179448
+ if (this.keyboardEventOriginIsInteractive(event)) return;
179449
+ const key2 = event.key;
179450
+ if (["ArrowUp", "PageUp", "Home"].includes(key2)) {
179451
+ this.cancelFullAnchorRestore();
179452
+ this.armEarlierScrollIntent();
179453
+ this.requestEarlierIfAtTop();
179454
+ this.markUserUnpinned();
179455
+ } else if (["ArrowDown", "PageDown", "End", " "].includes(key2)) {
179456
+ this.clearEarlierScrollIntent();
179396
179457
  this.cancelFullAnchorRestore();
179397
179458
  }
179398
179459
  return;
179399
179460
  }
179400
- if (event.type === "pointerdown" && event.target !== this.scrollContainer) return;
179401
- this.cancelFullAnchorRestore();
179402
- this.userUnpinned = true;
179403
- this.measurementAnchor = void 0;
179461
+ if (event.type === "touchmove") {
179462
+ const currentY = event.touches[0]?.clientY;
179463
+ const previousY = this.touchScrollY;
179464
+ this.touchScrollY = currentY;
179465
+ if (currentY === void 0 || previousY === void 0) return;
179466
+ if (currentY > previousY + 0.5) {
179467
+ this.armEarlierScrollIntent();
179468
+ this.requestEarlierIfAtTop();
179469
+ } else if (currentY < previousY - 0.5) {
179470
+ this.clearEarlierScrollIntent();
179471
+ } else {
179472
+ return;
179473
+ }
179474
+ this.cancelFullAnchorRestore();
179475
+ this.markUserUnpinned();
179476
+ return;
179477
+ }
179478
+ if (event.type === "pointerdown") {
179479
+ if (event.button !== 0) return;
179480
+ if (event.target !== this.scrollContainer) return;
179481
+ this.scrollbarGestureActive = true;
179482
+ this.cancelFullAnchorRestore();
179483
+ this.markUserUnpinned();
179484
+ }
179404
179485
  }, "handleUserScrollIntent"));
179486
+ __publicField(this, "handleTouchStart", /* @__PURE__ */ __name((eventArg) => {
179487
+ if (this.eventComesFromNestedMessageList(eventArg)) return;
179488
+ this.touchScrollY = eventArg.touches[0]?.clientY;
179489
+ }, "handleTouchStart"));
179490
+ __publicField(this, "handleTouchEnd", /* @__PURE__ */ __name(() => {
179491
+ this.touchScrollY = void 0;
179492
+ if (this.earlierScrollIntent) this.scheduleScrollIntentSettlement();
179493
+ }, "handleTouchEnd"));
179494
+ __publicField(this, "handleTouchCancel", /* @__PURE__ */ __name(() => {
179495
+ this.touchScrollY = void 0;
179496
+ this.clearEarlierScrollIntent();
179497
+ }, "handleTouchCancel"));
179405
179498
  __publicField(this, "handleScroll", /* @__PURE__ */ __name(() => {
179406
179499
  const container = this.scrollContainer;
179407
179500
  if (!container) return;
179408
179501
  const top = container.scrollTop;
179502
+ const previousTop = this.lastObservedScrollTop;
179503
+ const programmatic = this.consumeProgrammaticScroll(top);
179504
+ if (programmatic) {
179505
+ this.clearEarlierScrollIntent();
179506
+ } else {
179507
+ if (this.scrollbarGestureActive && top < previousTop - 0.5) {
179508
+ this.armEarlierScrollIntent();
179509
+ } else if (top > previousTop + 0.5) {
179510
+ this.clearEarlierScrollIntent();
179511
+ } else if (this.earlierScrollIntent) {
179512
+ this.scheduleScrollIntentSettlement();
179513
+ }
179514
+ if (this.earlierScrollIntent) this.requestEarlierIfAtTop();
179515
+ }
179409
179516
  this.syncScrollEdgeFades();
179410
179517
  if (this.isPinnedToBottom) {
179411
179518
  this.userUnpinned = false;
@@ -179417,6 +179524,9 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179417
179524
  this.scheduleVirtualRangeUpdate();
179418
179525
  this.schedulePendingVirtualizationActivation();
179419
179526
  }, "handleScroll"));
179527
+ __publicField(this, "handleScrollEnd", /* @__PURE__ */ __name(() => {
179528
+ this.clearEarlierScrollIntent();
179529
+ }, "handleScrollEnd"));
179420
179530
  __publicField(this, "handleSelectionChange", /* @__PURE__ */ __name(() => {
179421
179531
  const selection = document.getSelection();
179422
179532
  if (!selection || selection.rangeCount === 0 || !this.selectionGestureActive && this.selectionGestureSnapshot && !this.selectionMatchesGestureSnapshot(selection) || !this.selectionGestureActive && selection.isCollapsed && !this.hasCrossShadowSelectionFallback) this.clearSelectionGesture();
@@ -179433,6 +179543,7 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179433
179543
  if (key2) this.selectionGestureKeys.add(key2);
179434
179544
  }, "handlePointerDown"));
179435
179545
  __publicField(this, "handlePointerUp", /* @__PURE__ */ __name((eventArg) => {
179546
+ this.scrollbarGestureActive = false;
179436
179547
  if (eventArg.button !== 0) return;
179437
179548
  const key2 = this.timelineKeyForEvent(eventArg);
179438
179549
  if (key2) this.selectionGestureKeys.add(key2);
@@ -179448,6 +179559,8 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179448
179559
  this.handleProtectedStateChange();
179449
179560
  }, "handlePointerUp"));
179450
179561
  __publicField(this, "handlePointerCancel", /* @__PURE__ */ __name(() => {
179562
+ this.scrollbarGestureActive = false;
179563
+ this.clearEarlierScrollIntent();
179451
179564
  this.clearSelectionGesture();
179452
179565
  this.handleProtectedStateChange();
179453
179566
  }, "handlePointerCancel"));
@@ -179541,11 +179654,25 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179541
179654
  }
179542
179655
  willUpdate(changedProperties) {
179543
179656
  super.willUpdate(changedProperties);
179657
+ if (changedProperties.has("transcriptKey")) this.resetTranscriptContext();
179658
+ if (changedProperties.has("hasEarlierMessages") && !this.hasEarlierMessages) {
179659
+ this.loadEarlierLatched = false;
179660
+ this.loadingEarlierObserved = false;
179661
+ this.clearEarlierScrollIntent();
179662
+ }
179663
+ if (changedProperties.has("loadingEarlier")) {
179664
+ const wasLoadingEarlier = changedProperties.get("loadingEarlier") === true;
179665
+ if (this.loadingEarlier) this.loadingEarlierObserved = true;
179666
+ else if (wasLoadingEarlier && this.loadingEarlierObserved) {
179667
+ this.loadEarlierLatched = false;
179668
+ this.loadingEarlierObserved = false;
179669
+ }
179670
+ }
179544
179671
  if (changedProperties.has("viewState") && this.viewState) {
179545
179672
  this.clearTranscriptViewState(this.localViewState);
179546
179673
  }
179547
179674
  const registryChanged = this.timelineRegistryRevision !== this.toolRegistry.revision;
179548
- if (this.timelineRegistryRevision < 0 || changedProperties.has("messages") || changedProperties.has("permissions") || changedProperties.has("questions") || changedProperties.has("toolRegistry") || changedProperties.has("viewState") || registryChanged) {
179675
+ if (this.timelineRegistryRevision < 0 || changedProperties.has("messages") || changedProperties.has("permissions") || changedProperties.has("questions") || changedProperties.has("toolRegistry") || changedProperties.has("viewState") || changedProperties.has("transcriptKey") || registryChanged) {
179549
179676
  this.rebuildTimeline();
179550
179677
  }
179551
179678
  }
@@ -179760,8 +179887,12 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179760
179887
  <div
179761
179888
  class=${`scroll ${this.hideScrollbar ? "hideScrollbar" : ""} ${this.scrollFadeTop ? "fadeTop" : ""} ${this.scrollFadeBottom ? "fadeBottom" : ""}`}
179762
179889
  @scroll=${this.handleScroll}
179890
+ @scrollend=${this.handleScrollEnd}
179763
179891
  @wheel=${this.handleUserScrollIntent}
179892
+ @touchstart=${this.handleTouchStart}
179764
179893
  @touchmove=${this.handleUserScrollIntent}
179894
+ @touchend=${this.handleTouchEnd}
179895
+ @touchcancel=${this.handleTouchCancel}
179765
179896
  @pointerdown=${this.handlePointerDown}
179766
179897
  @pointerup=${this.handlePointerUp}
179767
179898
  @pointercancel=${this.handlePointerCancel}
@@ -180014,6 +180145,122 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180014
180145
  });
180015
180146
  });
180016
180147
  }
180148
+ markUserUnpinned() {
180149
+ this.userUnpinned = true;
180150
+ this.measurementAnchor = void 0;
180151
+ }
180152
+ eventComesFromNestedMessageList(eventArg) {
180153
+ return eventArg.composedPath().some(
180154
+ (candidate) => candidate instanceof _DeesHarnessMessageList && candidate !== this
180155
+ );
180156
+ }
180157
+ keyboardEventOriginIsInteractive(eventArg) {
180158
+ return eventArg.composedPath().some((candidate) => candidate instanceof HTMLElement && candidate !== this && (candidate.isContentEditable || candidate.matches("input, textarea, select, button, [contenteditable]")));
180159
+ }
180160
+ armEarlierScrollIntent() {
180161
+ this.earlierScrollIntent = true;
180162
+ this.scheduleScrollIntentSettlement();
180163
+ }
180164
+ scheduleScrollIntentSettlement() {
180165
+ if (this.scrollIntentTimer) clearTimeout(this.scrollIntentTimer);
180166
+ this.scrollIntentTimer = setTimeout(() => {
180167
+ this.scrollIntentTimer = void 0;
180168
+ this.earlierScrollIntent = false;
180169
+ }, scrollIntentSettlementMs);
180170
+ }
180171
+ clearEarlierScrollIntent() {
180172
+ if (this.scrollIntentTimer) clearTimeout(this.scrollIntentTimer);
180173
+ this.scrollIntentTimer = void 0;
180174
+ this.earlierScrollIntent = false;
180175
+ }
180176
+ requestEarlierIfAtTop() {
180177
+ const container = this.scrollContainer;
180178
+ if (!container || container.scrollTop > loadEarlierThresholdPx || !this.hasEarlierMessages || this.loadingEarlier || this.loadEarlierLatched) return;
180179
+ this.loadEarlierLatched = true;
180180
+ this.clearEarlierScrollIntent();
180181
+ this.dispatchEvent(new CustomEvent("harness-load-earlier", {
180182
+ bubbles: true,
180183
+ composed: true
180184
+ }));
180185
+ }
180186
+ resetLoadEarlierState() {
180187
+ this.loadEarlierLatched = false;
180188
+ this.loadingEarlierObserved = false;
180189
+ this.scrollbarGestureActive = false;
180190
+ this.touchScrollY = void 0;
180191
+ this.clearEarlierScrollIntent();
180192
+ }
180193
+ setProgrammaticScrollTop(containerArg, topArg) {
180194
+ this.clearProgrammaticScrollMarker();
180195
+ const generation = ++this.programmaticScrollGeneration;
180196
+ containerArg.scrollTop = topArg;
180197
+ this.programmaticScrollTop = containerArg.scrollTop;
180198
+ this.lastObservedScrollTop = containerArg.scrollTop;
180199
+ this.programmaticScrollFrame = requestAnimationFrame(() => {
180200
+ this.programmaticScrollFrame = null;
180201
+ if (generation !== this.programmaticScrollGeneration) return;
180202
+ this.programmaticScrollSecondFrame = requestAnimationFrame(() => {
180203
+ this.programmaticScrollSecondFrame = null;
180204
+ if (generation === this.programmaticScrollGeneration) {
180205
+ this.programmaticScrollTop = void 0;
180206
+ }
180207
+ });
180208
+ });
180209
+ }
180210
+ consumeProgrammaticScroll(topArg) {
180211
+ if (this.programmaticScrollTop === void 0) return false;
180212
+ const matches2 = Math.abs(this.programmaticScrollTop - topArg) <= 1;
180213
+ this.clearProgrammaticScrollMarker();
180214
+ return matches2;
180215
+ }
180216
+ clearProgrammaticScrollMarker() {
180217
+ this.programmaticScrollGeneration += 1;
180218
+ if (this.programmaticScrollFrame !== null) cancelAnimationFrame(this.programmaticScrollFrame);
180219
+ if (this.programmaticScrollSecondFrame !== null) cancelAnimationFrame(this.programmaticScrollSecondFrame);
180220
+ this.programmaticScrollFrame = null;
180221
+ this.programmaticScrollSecondFrame = null;
180222
+ this.programmaticScrollTop = void 0;
180223
+ }
180224
+ resetTranscriptContext() {
180225
+ this.cancelFullAnchorRestore();
180226
+ if (this.followFrame !== null) cancelAnimationFrame(this.followFrame);
180227
+ if (this.followSecondFrame !== null) cancelAnimationFrame(this.followSecondFrame);
180228
+ if (this.virtualMeasureFrame !== null) cancelAnimationFrame(this.virtualMeasureFrame);
180229
+ if (this.virtualRangeFrame !== null) cancelAnimationFrame(this.virtualRangeFrame);
180230
+ if (this.virtualizationActivationFrame !== null) cancelAnimationFrame(this.virtualizationActivationFrame);
180231
+ this.followFrame = null;
180232
+ this.followSecondFrame = null;
180233
+ this.virtualMeasureFrame = null;
180234
+ this.virtualRangeFrame = null;
180235
+ this.virtualizationActivationFrame = null;
180236
+ this.pendingVirtualAnchor = void 0;
180237
+ this.pendingFullAnchor = void 0;
180238
+ this.measurementAnchor = void 0;
180239
+ this.pendingVirtualRepin = false;
180240
+ this.virtualizationEnabled = false;
180241
+ this.virtualizationEnablePending = false;
180242
+ this.virtualizationDisablePending = false;
180243
+ this.virtualStartIndex = 0;
180244
+ this.virtualEndIndex = 0;
180245
+ this.retainedVirtualKeys.clear();
180246
+ this.explicitRetainedVirtualKey = void 0;
180247
+ this.measuredVirtualHeights.clear();
180248
+ this.virtualOffsets = [];
180249
+ this.virtualTotalHeight = 0;
180250
+ this.toolGroupIdByMessageId.clear();
180251
+ this.nextToolGroupId = 1;
180252
+ this.timelineRegistryRevision = -1;
180253
+ this.knownContentKeys.clear();
180254
+ this.currentNewContentKeys.clear();
180255
+ this.clearTranscriptViewState(this.localViewState);
180256
+ this.clearSelectionGesture();
180257
+ this.disconnectSelectionChangeListener();
180258
+ this.userUnpinned = false;
180259
+ this.lastObservedScrollTop = 0;
180260
+ this.showJumpChip = false;
180261
+ this.resetLoadEarlierState();
180262
+ this.clearProgrammaticScrollMarker();
180263
+ }
180017
180264
  scrollToBottom(force = false) {
180018
180265
  const container = this.scrollContainer;
180019
180266
  if (!container) return;
@@ -180023,8 +180270,7 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180023
180270
  this.measurementAnchor = void 0;
180024
180271
  }
180025
180272
  if (force || this.isPinnedToBottom) {
180026
- container.scrollTop = container.scrollHeight;
180027
- this.lastObservedScrollTop = container.scrollTop;
180273
+ this.setProgrammaticScrollTop(container, container.scrollHeight);
180028
180274
  this.showJumpChip = false;
180029
180275
  }
180030
180276
  this.syncScrollEdgeFades();
@@ -180070,6 +180316,13 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180070
180316
  }
180071
180317
  updated(changedProperties) {
180072
180318
  super.updated(changedProperties);
180319
+ if (changedProperties.has("transcriptKey")) {
180320
+ const container = this.scrollContainer;
180321
+ if (container) {
180322
+ if (this.autoFollow) this.scrollToBottom(true);
180323
+ else this.setProgrammaticScrollTop(container, 0);
180324
+ }
180325
+ }
180073
180326
  if (changedProperties.has("messages") || changedProperties.has("status") || changedProperties.has("permissions") || changedProperties.has("questions")) {
180074
180327
  this.followAfterContentChange();
180075
180328
  }
@@ -180232,14 +180485,20 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180232
180485
  const index3 = this.timelineIndexByKey.get(anchorArg.key);
180233
180486
  if (index3 === void 0) return;
180234
180487
  const stack = this.shadowRoot?.querySelector(".virtualStack");
180235
- containerArg.scrollTop = (stack?.offsetTop ?? 0) + (this.virtualOffsets[index3] ?? 0) + anchorArg.offset;
180488
+ this.setProgrammaticScrollTop(
180489
+ containerArg,
180490
+ (stack?.offsetTop ?? 0) + (this.virtualOffsets[index3] ?? 0) + anchorArg.offset
180491
+ );
180236
180492
  }
180237
180493
  restoreFullAnchor(containerArg, anchorArg) {
180238
180494
  const element4 = this.shadowRoot?.querySelector(
180239
180495
  `.stack > [data-timeline-key="${CSS.escape(anchorArg.key)}"]`
180240
180496
  );
180241
180497
  if (!element4) return;
180242
- containerArg.scrollTop += element4.getBoundingClientRect().top - containerArg.getBoundingClientRect().top + anchorArg.offset;
180498
+ this.setProgrammaticScrollTop(
180499
+ containerArg,
180500
+ containerArg.scrollTop + element4.getBoundingClientRect().top - containerArg.getBoundingClientRect().top + anchorArg.offset
180501
+ );
180243
180502
  }
180244
180503
  scheduleFullAnchorRestore(containerArg, anchorArg) {
180245
180504
  this.cancelFullAnchorRestore();
@@ -180499,6 +180758,8 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180499
180758
  this.explicitRetainedVirtualKey = void 0;
180500
180759
  this.retainedVirtualKeys.clear();
180501
180760
  this.clearSelectionGesture();
180761
+ this.resetLoadEarlierState();
180762
+ this.clearProgrammaticScrollMarker();
180502
180763
  this.entryAnimationsEnabled = true;
180503
180764
  this.disconnectContentResizeObserver();
180504
180765
  this.disconnectVirtualObservers();
@@ -180514,6 +180775,9 @@ _permissions = new WeakMap();
180514
180775
  _permissionsBusy = new WeakMap();
180515
180776
  _questions = new WeakMap();
180516
180777
  _autoFollow = new WeakMap();
180778
+ _transcriptKey = new WeakMap();
180779
+ _hasEarlierMessages = new WeakMap();
180780
+ _loadingEarlier = new WeakMap();
180517
180781
  _hideScrollbar = new WeakMap();
180518
180782
  _fadeScrollEdges = new WeakMap();
180519
180783
  _toolRegistry4 = new WeakMap();
@@ -180533,6 +180797,9 @@ __decorateElement(_init87, 4, "permissions", _permissions_dec, _DeesHarnessMessa
180533
180797
  __decorateElement(_init87, 4, "permissionsBusy", _permissionsBusy_dec, _DeesHarnessMessageList, _permissionsBusy);
180534
180798
  __decorateElement(_init87, 4, "questions", _questions_dec, _DeesHarnessMessageList, _questions);
180535
180799
  __decorateElement(_init87, 4, "autoFollow", _autoFollow_dec, _DeesHarnessMessageList, _autoFollow);
180800
+ __decorateElement(_init87, 4, "transcriptKey", _transcriptKey_dec, _DeesHarnessMessageList, _transcriptKey);
180801
+ __decorateElement(_init87, 4, "hasEarlierMessages", _hasEarlierMessages_dec, _DeesHarnessMessageList, _hasEarlierMessages);
180802
+ __decorateElement(_init87, 4, "loadingEarlier", _loadingEarlier_dec, _DeesHarnessMessageList, _loadingEarlier);
180536
180803
  __decorateElement(_init87, 4, "hideScrollbar", _hideScrollbar_dec, _DeesHarnessMessageList, _hideScrollbar);
180537
180804
  __decorateElement(_init87, 4, "fadeScrollEdges", _fadeScrollEdges_dec, _DeesHarnessMessageList, _fadeScrollEdges);
180538
180805
  __decorateElement(_init87, 4, "toolRegistry", _toolRegistry_dec4, _DeesHarnessMessageList, _toolRegistry4);
@@ -182697,54 +182964,57 @@ var DeesHarnessUsage = _DeesHarnessUsage;
182697
182964
  init_dist_ts26();
182698
182965
  init_theme();
182699
182966
  init_dees_icon();
182700
- var _toolRegistry_dec6, _modeOptions_dec2, _mode_dec3, _effortOptions_dec2, _reasoningEffort_dec2, _modelOptions_dec2, _model_dec2, _accountOptions_dec2, _account_dec2, _maxTotalAttachmentBytes_dec2, _maxAttachmentBytes_dec2, _maxAttachmentCount_dec2, _suggestions_dec3, _attachments_dec2, _composerValue_dec, _queuedCount_dec2, _busy_dec4, _disabled_dec7, _showTimestamps_dec2, _showRoles_dec2, _showToolbar_dec, _subheading_dec, _heading_dec6, _narrowSessionLayout_dec, _desktopSessionSidebarVisible_dec, _sessionSidebarOpen_dec, _intelligenceError_dec2, _intelligenceBusy_dec2, _intelligenceExchanges_dec2, _sessionIntelligenceEnabled_dec, _scratchpadError_dec2, _scratchpadBusy_dec2, _scratchpad_dec2, _sessionMetrics_dec, _showSessionSidebar_dec, _showTodosPanel_dec, _todos_dec3, _usage_dec2, _status_dec6, _questions_dec2, _permissions_dec2, _messages_dec2, _a90, _DeesHarnessChat_decorators, _init91, _messages2, _permissions2, _questions2, _status6, _usage2, _todos3, _showTodosPanel, _showSessionSidebar, _sessionMetrics, _scratchpad2, _scratchpadBusy2, _scratchpadError2, _sessionIntelligenceEnabled, _intelligenceExchanges2, _intelligenceBusy2, _intelligenceError2, _sessionSidebarOpen, _desktopSessionSidebarVisible, _narrowSessionLayout, _heading6, _subheading, _showToolbar, _showRoles2, _showTimestamps2, _disabled7, _busy4, _queuedCount2, _composerValue, _attachments2, _suggestions3, _maxAttachmentCount2, _maxAttachmentBytes2, _maxTotalAttachmentBytes2, _account2, _accountOptions2, _model2, _modelOptions2, _reasoningEffort2, _effortOptions2, _mode3, _modeOptions2, _toolRegistry6;
182967
+ var _toolRegistry_dec6, _modeOptions_dec2, _mode_dec3, _effortOptions_dec2, _reasoningEffort_dec2, _modelOptions_dec2, _model_dec2, _accountOptions_dec2, _account_dec2, _maxTotalAttachmentBytes_dec2, _maxAttachmentBytes_dec2, _maxAttachmentCount_dec2, _suggestions_dec3, _attachments_dec2, _composerValue_dec, _queuedCount_dec2, _busy_dec4, _disabled_dec7, _showTimestamps_dec2, _showRoles_dec2, _showToolbar_dec, _subheading_dec, _heading_dec6, _narrowSessionLayout_dec, _desktopSessionSidebarVisible_dec, _sessionSidebarOpen_dec, _intelligenceError_dec2, _intelligenceBusy_dec2, _intelligenceExchanges_dec2, _sessionIntelligenceEnabled_dec, _scratchpadError_dec2, _scratchpadBusy_dec2, _scratchpad_dec2, _sessionMetrics_dec, _showSessionSidebar_dec, _showTodosPanel_dec, _todos_dec3, _usage_dec2, _loadingEarlier_dec2, _hasEarlierMessages_dec2, _transcriptKey_dec2, _status_dec6, _questions_dec2, _permissions_dec2, _messages_dec2, _a90, _DeesHarnessChat_decorators, _init91, _messages2, _permissions2, _questions2, _status6, _transcriptKey2, _hasEarlierMessages2, _loadingEarlier2, _usage2, _todos3, _showTodosPanel, _showSessionSidebar, _sessionMetrics, _scratchpad2, _scratchpadBusy2, _scratchpadError2, _sessionIntelligenceEnabled, _intelligenceExchanges2, _intelligenceBusy2, _intelligenceError2, _sessionSidebarOpen, _desktopSessionSidebarVisible, _narrowSessionLayout, _heading6, _subheading, _showToolbar, _showRoles2, _showTimestamps2, _disabled7, _busy4, _queuedCount2, _composerValue, _attachments2, _suggestions3, _maxAttachmentCount2, _maxAttachmentBytes2, _maxTotalAttachmentBytes2, _account2, _accountOptions2, _model2, _modelOptions2, _reasoningEffort2, _effortOptions2, _mode3, _modeOptions2, _toolRegistry6;
182701
182968
  _DeesHarnessChat_decorators = [customElement("dees-harness-chat")];
182702
- var _DeesHarnessChat = class _DeesHarnessChat extends (_a90 = DeesElement, _messages_dec2 = [n5({ attribute: false })], _permissions_dec2 = [n5({ attribute: false })], _questions_dec2 = [n5({ attribute: false })], _status_dec6 = [n5({ attribute: false })], _usage_dec2 = [n5({ attribute: false })], _todos_dec3 = [n5({ attribute: false })], _showTodosPanel_dec = [n5({ type: Boolean })], _showSessionSidebar_dec = [n5({ type: Boolean })], _sessionMetrics_dec = [n5({ attribute: false })], _scratchpad_dec2 = [n5({ attribute: false })], _scratchpadBusy_dec2 = [n5({ type: Boolean })], _scratchpadError_dec2 = [n5()], _sessionIntelligenceEnabled_dec = [n5({ type: Boolean })], _intelligenceExchanges_dec2 = [n5({ attribute: false })], _intelligenceBusy_dec2 = [n5({ type: Boolean })], _intelligenceError_dec2 = [n5()], _sessionSidebarOpen_dec = [r5()], _desktopSessionSidebarVisible_dec = [r5()], _narrowSessionLayout_dec = [r5()], _heading_dec6 = [n5()], _subheading_dec = [n5()], _showToolbar_dec = [n5({ type: Boolean })], _showRoles_dec2 = [n5({ type: Boolean })], _showTimestamps_dec2 = [n5({ type: Boolean })], _disabled_dec7 = [n5({ type: Boolean })], _busy_dec4 = [n5({ type: Boolean })], _queuedCount_dec2 = [n5({ type: Number })], _composerValue_dec = [n5()], _attachments_dec2 = [n5({ attribute: false })], _suggestions_dec3 = [n5({ attribute: false })], _maxAttachmentCount_dec2 = [n5({ type: Number })], _maxAttachmentBytes_dec2 = [n5({ type: Number })], _maxTotalAttachmentBytes_dec2 = [n5({ type: Number })], _account_dec2 = [n5()], _accountOptions_dec2 = [n5({ attribute: false })], _model_dec2 = [n5()], _modelOptions_dec2 = [n5({ attribute: false })], _reasoningEffort_dec2 = [n5()], _effortOptions_dec2 = [n5({ attribute: false })], _mode_dec3 = [n5()], _modeOptions_dec2 = [n5({ attribute: false })], _toolRegistry_dec6 = [n5({ attribute: false })], _a90) {
182969
+ var _DeesHarnessChat = class _DeesHarnessChat extends (_a90 = DeesElement, _messages_dec2 = [n5({ attribute: false })], _permissions_dec2 = [n5({ attribute: false })], _questions_dec2 = [n5({ attribute: false })], _status_dec6 = [n5({ attribute: false })], _transcriptKey_dec2 = [n5()], _hasEarlierMessages_dec2 = [n5({ type: Boolean })], _loadingEarlier_dec2 = [n5({ type: Boolean })], _usage_dec2 = [n5({ attribute: false })], _todos_dec3 = [n5({ attribute: false })], _showTodosPanel_dec = [n5({ type: Boolean })], _showSessionSidebar_dec = [n5({ type: Boolean })], _sessionMetrics_dec = [n5({ attribute: false })], _scratchpad_dec2 = [n5({ attribute: false })], _scratchpadBusy_dec2 = [n5({ type: Boolean })], _scratchpadError_dec2 = [n5()], _sessionIntelligenceEnabled_dec = [n5({ type: Boolean })], _intelligenceExchanges_dec2 = [n5({ attribute: false })], _intelligenceBusy_dec2 = [n5({ type: Boolean })], _intelligenceError_dec2 = [n5()], _sessionSidebarOpen_dec = [r5()], _desktopSessionSidebarVisible_dec = [r5()], _narrowSessionLayout_dec = [r5()], _heading_dec6 = [n5()], _subheading_dec = [n5()], _showToolbar_dec = [n5({ type: Boolean })], _showRoles_dec2 = [n5({ type: Boolean })], _showTimestamps_dec2 = [n5({ type: Boolean })], _disabled_dec7 = [n5({ type: Boolean })], _busy_dec4 = [n5({ type: Boolean })], _queuedCount_dec2 = [n5({ type: Number })], _composerValue_dec = [n5()], _attachments_dec2 = [n5({ attribute: false })], _suggestions_dec3 = [n5({ attribute: false })], _maxAttachmentCount_dec2 = [n5({ type: Number })], _maxAttachmentBytes_dec2 = [n5({ type: Number })], _maxTotalAttachmentBytes_dec2 = [n5({ type: Number })], _account_dec2 = [n5()], _accountOptions_dec2 = [n5({ attribute: false })], _model_dec2 = [n5()], _modelOptions_dec2 = [n5({ attribute: false })], _reasoningEffort_dec2 = [n5()], _effortOptions_dec2 = [n5({ attribute: false })], _mode_dec3 = [n5()], _modeOptions_dec2 = [n5({ attribute: false })], _toolRegistry_dec6 = [n5({ attribute: false })], _a90) {
182703
182970
  constructor() {
182704
182971
  super(...arguments);
182705
182972
  __privateAdd(this, _messages2, __runInitializers(_init91, 8, this, [])), __runInitializers(_init91, 11, this);
182706
182973
  __privateAdd(this, _permissions2, __runInitializers(_init91, 12, this, [])), __runInitializers(_init91, 15, this);
182707
182974
  __privateAdd(this, _questions2, __runInitializers(_init91, 16, this, [])), __runInitializers(_init91, 19, this);
182708
182975
  __privateAdd(this, _status6, __runInitializers(_init91, 20, this, { type: "idle" })), __runInitializers(_init91, 23, this);
182709
- __privateAdd(this, _usage2, __runInitializers(_init91, 24, this, {})), __runInitializers(_init91, 27, this);
182710
- __privateAdd(this, _todos3, __runInitializers(_init91, 28, this, [])), __runInitializers(_init91, 31, this);
182711
- __privateAdd(this, _showTodosPanel, __runInitializers(_init91, 32, this, true)), __runInitializers(_init91, 35, this);
182712
- __privateAdd(this, _showSessionSidebar, __runInitializers(_init91, 36, this, true)), __runInitializers(_init91, 39, this);
182713
- __privateAdd(this, _sessionMetrics, __runInitializers(_init91, 40, this, {})), __runInitializers(_init91, 43, this);
182714
- __privateAdd(this, _scratchpad2, __runInitializers(_init91, 44, this)), __runInitializers(_init91, 47, this);
182715
- __privateAdd(this, _scratchpadBusy2, __runInitializers(_init91, 48, this, false)), __runInitializers(_init91, 51, this);
182716
- __privateAdd(this, _scratchpadError2, __runInitializers(_init91, 52, this, "")), __runInitializers(_init91, 55, this);
182717
- __privateAdd(this, _sessionIntelligenceEnabled, __runInitializers(_init91, 56, this, false)), __runInitializers(_init91, 59, this);
182718
- __privateAdd(this, _intelligenceExchanges2, __runInitializers(_init91, 60, this, [])), __runInitializers(_init91, 63, this);
182719
- __privateAdd(this, _intelligenceBusy2, __runInitializers(_init91, 64, this, false)), __runInitializers(_init91, 67, this);
182720
- __privateAdd(this, _intelligenceError2, __runInitializers(_init91, 68, this, "")), __runInitializers(_init91, 71, this);
182721
- __privateAdd(this, _sessionSidebarOpen, __runInitializers(_init91, 72, this, false)), __runInitializers(_init91, 75, this);
182722
- __privateAdd(this, _desktopSessionSidebarVisible, __runInitializers(_init91, 76, this, true)), __runInitializers(_init91, 79, this);
182723
- __privateAdd(this, _narrowSessionLayout, __runInitializers(_init91, 80, this, false)), __runInitializers(_init91, 83, this);
182976
+ __privateAdd(this, _transcriptKey2, __runInitializers(_init91, 24, this, "")), __runInitializers(_init91, 27, this);
182977
+ __privateAdd(this, _hasEarlierMessages2, __runInitializers(_init91, 28, this, false)), __runInitializers(_init91, 31, this);
182978
+ __privateAdd(this, _loadingEarlier2, __runInitializers(_init91, 32, this, false)), __runInitializers(_init91, 35, this);
182979
+ __privateAdd(this, _usage2, __runInitializers(_init91, 36, this, {})), __runInitializers(_init91, 39, this);
182980
+ __privateAdd(this, _todos3, __runInitializers(_init91, 40, this, [])), __runInitializers(_init91, 43, this);
182981
+ __privateAdd(this, _showTodosPanel, __runInitializers(_init91, 44, this, true)), __runInitializers(_init91, 47, this);
182982
+ __privateAdd(this, _showSessionSidebar, __runInitializers(_init91, 48, this, true)), __runInitializers(_init91, 51, this);
182983
+ __privateAdd(this, _sessionMetrics, __runInitializers(_init91, 52, this, {})), __runInitializers(_init91, 55, this);
182984
+ __privateAdd(this, _scratchpad2, __runInitializers(_init91, 56, this)), __runInitializers(_init91, 59, this);
182985
+ __privateAdd(this, _scratchpadBusy2, __runInitializers(_init91, 60, this, false)), __runInitializers(_init91, 63, this);
182986
+ __privateAdd(this, _scratchpadError2, __runInitializers(_init91, 64, this, "")), __runInitializers(_init91, 67, this);
182987
+ __privateAdd(this, _sessionIntelligenceEnabled, __runInitializers(_init91, 68, this, false)), __runInitializers(_init91, 71, this);
182988
+ __privateAdd(this, _intelligenceExchanges2, __runInitializers(_init91, 72, this, [])), __runInitializers(_init91, 75, this);
182989
+ __privateAdd(this, _intelligenceBusy2, __runInitializers(_init91, 76, this, false)), __runInitializers(_init91, 79, this);
182990
+ __privateAdd(this, _intelligenceError2, __runInitializers(_init91, 80, this, "")), __runInitializers(_init91, 83, this);
182991
+ __privateAdd(this, _sessionSidebarOpen, __runInitializers(_init91, 84, this, false)), __runInitializers(_init91, 87, this);
182992
+ __privateAdd(this, _desktopSessionSidebarVisible, __runInitializers(_init91, 88, this, true)), __runInitializers(_init91, 91, this);
182993
+ __privateAdd(this, _narrowSessionLayout, __runInitializers(_init91, 92, this, false)), __runInitializers(_init91, 95, this);
182724
182994
  __publicField(this, "sessionLayoutResizeObserver");
182725
- __privateAdd(this, _heading6, __runInitializers(_init91, 84, this, "")), __runInitializers(_init91, 87, this);
182726
- __privateAdd(this, _subheading, __runInitializers(_init91, 88, this, "")), __runInitializers(_init91, 91, this);
182727
- __privateAdd(this, _showToolbar, __runInitializers(_init91, 92, this, true)), __runInitializers(_init91, 95, this);
182728
- __privateAdd(this, _showRoles2, __runInitializers(_init91, 96, this, true)), __runInitializers(_init91, 99, this);
182729
- __privateAdd(this, _showTimestamps2, __runInitializers(_init91, 100, this, true)), __runInitializers(_init91, 103, this);
182730
- __privateAdd(this, _disabled7, __runInitializers(_init91, 104, this, false)), __runInitializers(_init91, 107, this);
182731
- __privateAdd(this, _busy4, __runInitializers(_init91, 108, this, false)), __runInitializers(_init91, 111, this);
182732
- __privateAdd(this, _queuedCount2, __runInitializers(_init91, 112, this, 0)), __runInitializers(_init91, 115, this);
182733
- __privateAdd(this, _composerValue, __runInitializers(_init91, 116, this, "")), __runInitializers(_init91, 119, this);
182734
- __privateAdd(this, _attachments2, __runInitializers(_init91, 120, this, [])), __runInitializers(_init91, 123, this);
182735
- __privateAdd(this, _suggestions3, __runInitializers(_init91, 124, this, [])), __runInitializers(_init91, 127, this);
182736
- __privateAdd(this, _maxAttachmentCount2, __runInitializers(_init91, 128, this, Number.POSITIVE_INFINITY)), __runInitializers(_init91, 131, this);
182737
- __privateAdd(this, _maxAttachmentBytes2, __runInitializers(_init91, 132, this, harnessMaxAttachmentBytes)), __runInitializers(_init91, 135, this);
182738
- __privateAdd(this, _maxTotalAttachmentBytes2, __runInitializers(_init91, 136, this, harnessMaxTotalAttachmentBytes)), __runInitializers(_init91, 139, this);
182739
- __privateAdd(this, _account2, __runInitializers(_init91, 140, this, "")), __runInitializers(_init91, 143, this);
182740
- __privateAdd(this, _accountOptions2, __runInitializers(_init91, 144, this, [])), __runInitializers(_init91, 147, this);
182741
- __privateAdd(this, _model2, __runInitializers(_init91, 148, this, "")), __runInitializers(_init91, 151, this);
182742
- __privateAdd(this, _modelOptions2, __runInitializers(_init91, 152, this, [])), __runInitializers(_init91, 155, this);
182743
- __privateAdd(this, _reasoningEffort2, __runInitializers(_init91, 156, this, "")), __runInitializers(_init91, 159, this);
182744
- __privateAdd(this, _effortOptions2, __runInitializers(_init91, 160, this, [])), __runInitializers(_init91, 163, this);
182745
- __privateAdd(this, _mode3, __runInitializers(_init91, 164, this, "")), __runInitializers(_init91, 167, this);
182746
- __privateAdd(this, _modeOptions2, __runInitializers(_init91, 168, this, [])), __runInitializers(_init91, 171, this);
182747
- __privateAdd(this, _toolRegistry6, __runInitializers(_init91, 172, this, DeesHarnessToolRegistry.default)), __runInitializers(_init91, 175, this);
182995
+ __privateAdd(this, _heading6, __runInitializers(_init91, 96, this, "")), __runInitializers(_init91, 99, this);
182996
+ __privateAdd(this, _subheading, __runInitializers(_init91, 100, this, "")), __runInitializers(_init91, 103, this);
182997
+ __privateAdd(this, _showToolbar, __runInitializers(_init91, 104, this, true)), __runInitializers(_init91, 107, this);
182998
+ __privateAdd(this, _showRoles2, __runInitializers(_init91, 108, this, true)), __runInitializers(_init91, 111, this);
182999
+ __privateAdd(this, _showTimestamps2, __runInitializers(_init91, 112, this, true)), __runInitializers(_init91, 115, this);
183000
+ __privateAdd(this, _disabled7, __runInitializers(_init91, 116, this, false)), __runInitializers(_init91, 119, this);
183001
+ __privateAdd(this, _busy4, __runInitializers(_init91, 120, this, false)), __runInitializers(_init91, 123, this);
183002
+ __privateAdd(this, _queuedCount2, __runInitializers(_init91, 124, this, 0)), __runInitializers(_init91, 127, this);
183003
+ __privateAdd(this, _composerValue, __runInitializers(_init91, 128, this, "")), __runInitializers(_init91, 131, this);
183004
+ __privateAdd(this, _attachments2, __runInitializers(_init91, 132, this, [])), __runInitializers(_init91, 135, this);
183005
+ __privateAdd(this, _suggestions3, __runInitializers(_init91, 136, this, [])), __runInitializers(_init91, 139, this);
183006
+ __privateAdd(this, _maxAttachmentCount2, __runInitializers(_init91, 140, this, Number.POSITIVE_INFINITY)), __runInitializers(_init91, 143, this);
183007
+ __privateAdd(this, _maxAttachmentBytes2, __runInitializers(_init91, 144, this, harnessMaxAttachmentBytes)), __runInitializers(_init91, 147, this);
183008
+ __privateAdd(this, _maxTotalAttachmentBytes2, __runInitializers(_init91, 148, this, harnessMaxTotalAttachmentBytes)), __runInitializers(_init91, 151, this);
183009
+ __privateAdd(this, _account2, __runInitializers(_init91, 152, this, "")), __runInitializers(_init91, 155, this);
183010
+ __privateAdd(this, _accountOptions2, __runInitializers(_init91, 156, this, [])), __runInitializers(_init91, 159, this);
183011
+ __privateAdd(this, _model2, __runInitializers(_init91, 160, this, "")), __runInitializers(_init91, 163, this);
183012
+ __privateAdd(this, _modelOptions2, __runInitializers(_init91, 164, this, [])), __runInitializers(_init91, 167, this);
183013
+ __privateAdd(this, _reasoningEffort2, __runInitializers(_init91, 168, this, "")), __runInitializers(_init91, 171, this);
183014
+ __privateAdd(this, _effortOptions2, __runInitializers(_init91, 172, this, [])), __runInitializers(_init91, 175, this);
183015
+ __privateAdd(this, _mode3, __runInitializers(_init91, 176, this, "")), __runInitializers(_init91, 179, this);
183016
+ __privateAdd(this, _modeOptions2, __runInitializers(_init91, 180, this, [])), __runInitializers(_init91, 183, this);
183017
+ __privateAdd(this, _toolRegistry6, __runInitializers(_init91, 184, this, DeesHarnessToolRegistry.default)), __runInitializers(_init91, 187, this);
182748
183018
  __publicField(this, "toggleSessionSidebar", /* @__PURE__ */ __name(() => {
182749
183019
  if (!this.narrowSessionLayout) {
182750
183020
  this.desktopSessionSidebarVisible = !this.desktopSessionSidebarVisible;
@@ -182850,6 +183120,9 @@ var _DeesHarnessChat = class _DeesHarnessChat extends (_a90 = DeesElement, _mess
182850
183120
  .permissionsBusy=${this.disabled}
182851
183121
  .questions=${this.questions}
182852
183122
  .status=${this.status}
183123
+ .transcriptKey=${this.transcriptKey}
183124
+ .hasEarlierMessages=${this.hasEarlierMessages}
183125
+ .loadingEarlier=${this.loadingEarlier}
182853
183126
  .showRoles=${this.showRoles}
182854
183127
  .showTimestamps=${this.showTimestamps}
182855
183128
  .toolRegistry=${this.toolRegistry}
@@ -183000,6 +183273,9 @@ _messages2 = new WeakMap();
183000
183273
  _permissions2 = new WeakMap();
183001
183274
  _questions2 = new WeakMap();
183002
183275
  _status6 = new WeakMap();
183276
+ _transcriptKey2 = new WeakMap();
183277
+ _hasEarlierMessages2 = new WeakMap();
183278
+ _loadingEarlier2 = new WeakMap();
183003
183279
  _usage2 = new WeakMap();
183004
183280
  _todos3 = new WeakMap();
183005
183281
  _showTodosPanel = new WeakMap();
@@ -183042,6 +183318,9 @@ __decorateElement(_init91, 4, "messages", _messages_dec2, _DeesHarnessChat, _mes
183042
183318
  __decorateElement(_init91, 4, "permissions", _permissions_dec2, _DeesHarnessChat, _permissions2);
183043
183319
  __decorateElement(_init91, 4, "questions", _questions_dec2, _DeesHarnessChat, _questions2);
183044
183320
  __decorateElement(_init91, 4, "status", _status_dec6, _DeesHarnessChat, _status6);
183321
+ __decorateElement(_init91, 4, "transcriptKey", _transcriptKey_dec2, _DeesHarnessChat, _transcriptKey2);
183322
+ __decorateElement(_init91, 4, "hasEarlierMessages", _hasEarlierMessages_dec2, _DeesHarnessChat, _hasEarlierMessages2);
183323
+ __decorateElement(_init91, 4, "loadingEarlier", _loadingEarlier_dec2, _DeesHarnessChat, _loadingEarlier2);
183045
183324
  __decorateElement(_init91, 4, "usage", _usage_dec2, _DeesHarnessChat, _usage2);
183046
183325
  __decorateElement(_init91, 4, "todos", _todos_dec3, _DeesHarnessChat, _todos3);
183047
183326
  __decorateElement(_init91, 4, "showTodosPanel", _showTodosPanel_dec, _DeesHarnessChat, _showTodosPanel);
@@ -207749,7 +208028,7 @@ init_group_runtime();
207749
208028
  // ts_web/00_commitinfo_data.ts
207750
208029
  var commitinfo = {
207751
208030
  name: "@design.estate/dees-catalog",
207752
- version: "6.9.0",
208031
+ version: "6.10.0",
207753
208032
  description: "A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript."
207754
208033
  };
207755
208034