@design.estate/dees-catalog 6.9.1 → 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.
@@ -179322,15 +179322,17 @@ var DeesHarnessQuestionCard = _DeesHarnessQuestionCard;
179322
179322
  init_dist_ts26();
179323
179323
  init_theme();
179324
179324
  init_dees_icon();
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, _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;
179326
179326
  var { repeat: repeat4 } = directives_exports;
179327
179327
  var pinThresholdPx = 48;
179328
+ var loadEarlierThresholdPx = 24;
179329
+ var scrollIntentSettlementMs = 250;
179328
179330
  var virtualizationThreshold = 40;
179329
179331
  var virtualOverscanPx = 800;
179330
179332
  var virtualGapPx = 8;
179331
179333
  var maximumToolMessagesPerGroup = 4;
179332
179334
  _DeesHarnessMessageList_decorators = [customElement("dees-harness-message-list")];
179333
- 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) {
179334
179336
  constructor() {
179335
179337
  super(...arguments);
179336
179338
  __privateAdd(this, _messages, __runInitializers(_init87, 8, this, [])), __runInitializers(_init87, 11, this);
@@ -179339,19 +179341,22 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179339
179341
  __privateAdd(this, _permissionsBusy, __runInitializers(_init87, 20, this, false)), __runInitializers(_init87, 23, this);
179340
179342
  __privateAdd(this, _questions, __runInitializers(_init87, 24, this, [])), __runInitializers(_init87, 27, this);
179341
179343
  __privateAdd(this, _autoFollow, __runInitializers(_init87, 28, this, true)), __runInitializers(_init87, 31, this);
179342
- __privateAdd(this, _hideScrollbar, __runInitializers(_init87, 32, this, false)), __runInitializers(_init87, 35, this);
179343
- __privateAdd(this, _fadeScrollEdges, __runInitializers(_init87, 36, this, false)), __runInitializers(_init87, 39, this);
179344
- __privateAdd(this, _toolRegistry4, __runInitializers(_init87, 40, this, DeesHarnessToolRegistry.default)), __runInitializers(_init87, 43, this);
179345
- __privateAdd(this, _viewState6, __runInitializers(_init87, 44, this)), __runInitializers(_init87, 47, this);
179346
- __privateAdd(this, _allowSubtaskStreams3, __runInitializers(_init87, 48, this, true)), __runInitializers(_init87, 51, this);
179347
- __privateAdd(this, _showRoles, __runInitializers(_init87, 52, this, true)), __runInitializers(_init87, 55, this);
179348
- __privateAdd(this, _showTimestamps, __runInitializers(_init87, 56, this, false)), __runInitializers(_init87, 59, this);
179349
- __privateAdd(this, _emptyTitle, __runInitializers(_init87, 60, this, "No messages yet")), __runInitializers(_init87, 63, this);
179350
- __privateAdd(this, _emptyText, __runInitializers(_init87, 64, this, "Start a conversation to see it here.")), __runInitializers(_init87, 67, this);
179351
- __privateAdd(this, _showJumpChip, __runInitializers(_init87, 68, this, false)), __runInitializers(_init87, 71, this);
179352
- __privateAdd(this, _entryAnimationsEnabled, __runInitializers(_init87, 72, this, false)), __runInitializers(_init87, 75, this);
179353
- __privateAdd(this, _scrollFadeTop, __runInitializers(_init87, 76, this, false)), __runInitializers(_init87, 79, this);
179354
- __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);
179355
179360
  __publicField(this, "toolGroupIdByMessageId", /* @__PURE__ */ new Map());
179356
179361
  __publicField(this, "nextToolGroupId", 1);
179357
179362
  __publicField(this, "timelineRenderItems", []);
@@ -179394,6 +179399,16 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179394
179399
  __publicField(this, "virtualizationDisablePending", false);
179395
179400
  __publicField(this, "virtualizationActivationFrame", null);
179396
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);
179397
179412
  __publicField(this, "contentResizeObserver", null);
179398
179413
  __publicField(this, "observedScrollContent", null);
179399
179414
  __publicField(this, "observedContentBlockSize", null);
@@ -179413,32 +179428,91 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179413
179428
  if (!this.autoFollow || this.userUnpinned) return;
179414
179429
  const container = this.scrollContainer;
179415
179430
  if (!container) return;
179416
- container.scrollTop = container.scrollHeight;
179417
- this.lastObservedScrollTop = container.scrollTop;
179431
+ this.setProgrammaticScrollTop(container, container.scrollHeight);
179418
179432
  }, "repinToBottom"));
179419
179433
  __publicField(this, "handleUserScrollIntent", /* @__PURE__ */ __name((event) => {
179420
- if (event.composedPath().some(
179421
- (candidate) => candidate instanceof _DeesHarnessMessageList && candidate !== this
179422
- )) return;
179434
+ if (this.eventComesFromNestedMessageList(event)) return;
179423
179435
  if (event.type === "wheel") {
179424
179436
  this.cancelFullAnchorRestore();
179425
- 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;
179426
179446
  }
179427
- if (event.type === "keydown" && !["ArrowUp", "PageUp", "Home"].includes(event.key)) {
179428
- 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();
179429
179457
  this.cancelFullAnchorRestore();
179430
179458
  }
179431
179459
  return;
179432
179460
  }
179433
- if (event.type === "pointerdown" && event.target !== this.scrollContainer) return;
179434
- this.cancelFullAnchorRestore();
179435
- this.userUnpinned = true;
179436
- 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
+ }
179437
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"));
179438
179498
  __publicField(this, "handleScroll", /* @__PURE__ */ __name(() => {
179439
179499
  const container = this.scrollContainer;
179440
179500
  if (!container) return;
179441
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
+ }
179442
179516
  this.syncScrollEdgeFades();
179443
179517
  if (this.isPinnedToBottom) {
179444
179518
  this.userUnpinned = false;
@@ -179450,6 +179524,9 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179450
179524
  this.scheduleVirtualRangeUpdate();
179451
179525
  this.schedulePendingVirtualizationActivation();
179452
179526
  }, "handleScroll"));
179527
+ __publicField(this, "handleScrollEnd", /* @__PURE__ */ __name(() => {
179528
+ this.clearEarlierScrollIntent();
179529
+ }, "handleScrollEnd"));
179453
179530
  __publicField(this, "handleSelectionChange", /* @__PURE__ */ __name(() => {
179454
179531
  const selection = document.getSelection();
179455
179532
  if (!selection || selection.rangeCount === 0 || !this.selectionGestureActive && this.selectionGestureSnapshot && !this.selectionMatchesGestureSnapshot(selection) || !this.selectionGestureActive && selection.isCollapsed && !this.hasCrossShadowSelectionFallback) this.clearSelectionGesture();
@@ -179466,6 +179543,7 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179466
179543
  if (key2) this.selectionGestureKeys.add(key2);
179467
179544
  }, "handlePointerDown"));
179468
179545
  __publicField(this, "handlePointerUp", /* @__PURE__ */ __name((eventArg) => {
179546
+ this.scrollbarGestureActive = false;
179469
179547
  if (eventArg.button !== 0) return;
179470
179548
  const key2 = this.timelineKeyForEvent(eventArg);
179471
179549
  if (key2) this.selectionGestureKeys.add(key2);
@@ -179481,6 +179559,8 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179481
179559
  this.handleProtectedStateChange();
179482
179560
  }, "handlePointerUp"));
179483
179561
  __publicField(this, "handlePointerCancel", /* @__PURE__ */ __name(() => {
179562
+ this.scrollbarGestureActive = false;
179563
+ this.clearEarlierScrollIntent();
179484
179564
  this.clearSelectionGesture();
179485
179565
  this.handleProtectedStateChange();
179486
179566
  }, "handlePointerCancel"));
@@ -179574,11 +179654,25 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179574
179654
  }
179575
179655
  willUpdate(changedProperties) {
179576
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
+ }
179577
179671
  if (changedProperties.has("viewState") && this.viewState) {
179578
179672
  this.clearTranscriptViewState(this.localViewState);
179579
179673
  }
179580
179674
  const registryChanged = this.timelineRegistryRevision !== this.toolRegistry.revision;
179581
- 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) {
179582
179676
  this.rebuildTimeline();
179583
179677
  }
179584
179678
  }
@@ -179793,8 +179887,12 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
179793
179887
  <div
179794
179888
  class=${`scroll ${this.hideScrollbar ? "hideScrollbar" : ""} ${this.scrollFadeTop ? "fadeTop" : ""} ${this.scrollFadeBottom ? "fadeBottom" : ""}`}
179795
179889
  @scroll=${this.handleScroll}
179890
+ @scrollend=${this.handleScrollEnd}
179796
179891
  @wheel=${this.handleUserScrollIntent}
179892
+ @touchstart=${this.handleTouchStart}
179797
179893
  @touchmove=${this.handleUserScrollIntent}
179894
+ @touchend=${this.handleTouchEnd}
179895
+ @touchcancel=${this.handleTouchCancel}
179798
179896
  @pointerdown=${this.handlePointerDown}
179799
179897
  @pointerup=${this.handlePointerUp}
179800
179898
  @pointercancel=${this.handlePointerCancel}
@@ -180047,6 +180145,122 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180047
180145
  });
180048
180146
  });
180049
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
+ }
180050
180264
  scrollToBottom(force = false) {
180051
180265
  const container = this.scrollContainer;
180052
180266
  if (!container) return;
@@ -180056,8 +180270,7 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180056
180270
  this.measurementAnchor = void 0;
180057
180271
  }
180058
180272
  if (force || this.isPinnedToBottom) {
180059
- container.scrollTop = container.scrollHeight;
180060
- this.lastObservedScrollTop = container.scrollTop;
180273
+ this.setProgrammaticScrollTop(container, container.scrollHeight);
180061
180274
  this.showJumpChip = false;
180062
180275
  }
180063
180276
  this.syncScrollEdgeFades();
@@ -180103,6 +180316,13 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180103
180316
  }
180104
180317
  updated(changedProperties) {
180105
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
+ }
180106
180326
  if (changedProperties.has("messages") || changedProperties.has("status") || changedProperties.has("permissions") || changedProperties.has("questions")) {
180107
180327
  this.followAfterContentChange();
180108
180328
  }
@@ -180265,14 +180485,20 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180265
180485
  const index3 = this.timelineIndexByKey.get(anchorArg.key);
180266
180486
  if (index3 === void 0) return;
180267
180487
  const stack = this.shadowRoot?.querySelector(".virtualStack");
180268
- 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
+ );
180269
180492
  }
180270
180493
  restoreFullAnchor(containerArg, anchorArg) {
180271
180494
  const element4 = this.shadowRoot?.querySelector(
180272
180495
  `.stack > [data-timeline-key="${CSS.escape(anchorArg.key)}"]`
180273
180496
  );
180274
180497
  if (!element4) return;
180275
- 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
+ );
180276
180502
  }
180277
180503
  scheduleFullAnchorRestore(containerArg, anchorArg) {
180278
180504
  this.cancelFullAnchorRestore();
@@ -180532,6 +180758,8 @@ var _DeesHarnessMessageList = class _DeesHarnessMessageList extends (_a86 = Dees
180532
180758
  this.explicitRetainedVirtualKey = void 0;
180533
180759
  this.retainedVirtualKeys.clear();
180534
180760
  this.clearSelectionGesture();
180761
+ this.resetLoadEarlierState();
180762
+ this.clearProgrammaticScrollMarker();
180535
180763
  this.entryAnimationsEnabled = true;
180536
180764
  this.disconnectContentResizeObserver();
180537
180765
  this.disconnectVirtualObservers();
@@ -180547,6 +180775,9 @@ _permissions = new WeakMap();
180547
180775
  _permissionsBusy = new WeakMap();
180548
180776
  _questions = new WeakMap();
180549
180777
  _autoFollow = new WeakMap();
180778
+ _transcriptKey = new WeakMap();
180779
+ _hasEarlierMessages = new WeakMap();
180780
+ _loadingEarlier = new WeakMap();
180550
180781
  _hideScrollbar = new WeakMap();
180551
180782
  _fadeScrollEdges = new WeakMap();
180552
180783
  _toolRegistry4 = new WeakMap();
@@ -180566,6 +180797,9 @@ __decorateElement(_init87, 4, "permissions", _permissions_dec, _DeesHarnessMessa
180566
180797
  __decorateElement(_init87, 4, "permissionsBusy", _permissionsBusy_dec, _DeesHarnessMessageList, _permissionsBusy);
180567
180798
  __decorateElement(_init87, 4, "questions", _questions_dec, _DeesHarnessMessageList, _questions);
180568
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);
180569
180803
  __decorateElement(_init87, 4, "hideScrollbar", _hideScrollbar_dec, _DeesHarnessMessageList, _hideScrollbar);
180570
180804
  __decorateElement(_init87, 4, "fadeScrollEdges", _fadeScrollEdges_dec, _DeesHarnessMessageList, _fadeScrollEdges);
180571
180805
  __decorateElement(_init87, 4, "toolRegistry", _toolRegistry_dec4, _DeesHarnessMessageList, _toolRegistry4);
@@ -182730,54 +182964,57 @@ var DeesHarnessUsage = _DeesHarnessUsage;
182730
182964
  init_dist_ts26();
182731
182965
  init_theme();
182732
182966
  init_dees_icon();
182733
- 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;
182734
182968
  _DeesHarnessChat_decorators = [customElement("dees-harness-chat")];
182735
- 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) {
182736
182970
  constructor() {
182737
182971
  super(...arguments);
182738
182972
  __privateAdd(this, _messages2, __runInitializers(_init91, 8, this, [])), __runInitializers(_init91, 11, this);
182739
182973
  __privateAdd(this, _permissions2, __runInitializers(_init91, 12, this, [])), __runInitializers(_init91, 15, this);
182740
182974
  __privateAdd(this, _questions2, __runInitializers(_init91, 16, this, [])), __runInitializers(_init91, 19, this);
182741
182975
  __privateAdd(this, _status6, __runInitializers(_init91, 20, this, { type: "idle" })), __runInitializers(_init91, 23, this);
182742
- __privateAdd(this, _usage2, __runInitializers(_init91, 24, this, {})), __runInitializers(_init91, 27, this);
182743
- __privateAdd(this, _todos3, __runInitializers(_init91, 28, this, [])), __runInitializers(_init91, 31, this);
182744
- __privateAdd(this, _showTodosPanel, __runInitializers(_init91, 32, this, true)), __runInitializers(_init91, 35, this);
182745
- __privateAdd(this, _showSessionSidebar, __runInitializers(_init91, 36, this, true)), __runInitializers(_init91, 39, this);
182746
- __privateAdd(this, _sessionMetrics, __runInitializers(_init91, 40, this, {})), __runInitializers(_init91, 43, this);
182747
- __privateAdd(this, _scratchpad2, __runInitializers(_init91, 44, this)), __runInitializers(_init91, 47, this);
182748
- __privateAdd(this, _scratchpadBusy2, __runInitializers(_init91, 48, this, false)), __runInitializers(_init91, 51, this);
182749
- __privateAdd(this, _scratchpadError2, __runInitializers(_init91, 52, this, "")), __runInitializers(_init91, 55, this);
182750
- __privateAdd(this, _sessionIntelligenceEnabled, __runInitializers(_init91, 56, this, false)), __runInitializers(_init91, 59, this);
182751
- __privateAdd(this, _intelligenceExchanges2, __runInitializers(_init91, 60, this, [])), __runInitializers(_init91, 63, this);
182752
- __privateAdd(this, _intelligenceBusy2, __runInitializers(_init91, 64, this, false)), __runInitializers(_init91, 67, this);
182753
- __privateAdd(this, _intelligenceError2, __runInitializers(_init91, 68, this, "")), __runInitializers(_init91, 71, this);
182754
- __privateAdd(this, _sessionSidebarOpen, __runInitializers(_init91, 72, this, false)), __runInitializers(_init91, 75, this);
182755
- __privateAdd(this, _desktopSessionSidebarVisible, __runInitializers(_init91, 76, this, true)), __runInitializers(_init91, 79, this);
182756
- __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);
182757
182994
  __publicField(this, "sessionLayoutResizeObserver");
182758
- __privateAdd(this, _heading6, __runInitializers(_init91, 84, this, "")), __runInitializers(_init91, 87, this);
182759
- __privateAdd(this, _subheading, __runInitializers(_init91, 88, this, "")), __runInitializers(_init91, 91, this);
182760
- __privateAdd(this, _showToolbar, __runInitializers(_init91, 92, this, true)), __runInitializers(_init91, 95, this);
182761
- __privateAdd(this, _showRoles2, __runInitializers(_init91, 96, this, true)), __runInitializers(_init91, 99, this);
182762
- __privateAdd(this, _showTimestamps2, __runInitializers(_init91, 100, this, true)), __runInitializers(_init91, 103, this);
182763
- __privateAdd(this, _disabled7, __runInitializers(_init91, 104, this, false)), __runInitializers(_init91, 107, this);
182764
- __privateAdd(this, _busy4, __runInitializers(_init91, 108, this, false)), __runInitializers(_init91, 111, this);
182765
- __privateAdd(this, _queuedCount2, __runInitializers(_init91, 112, this, 0)), __runInitializers(_init91, 115, this);
182766
- __privateAdd(this, _composerValue, __runInitializers(_init91, 116, this, "")), __runInitializers(_init91, 119, this);
182767
- __privateAdd(this, _attachments2, __runInitializers(_init91, 120, this, [])), __runInitializers(_init91, 123, this);
182768
- __privateAdd(this, _suggestions3, __runInitializers(_init91, 124, this, [])), __runInitializers(_init91, 127, this);
182769
- __privateAdd(this, _maxAttachmentCount2, __runInitializers(_init91, 128, this, Number.POSITIVE_INFINITY)), __runInitializers(_init91, 131, this);
182770
- __privateAdd(this, _maxAttachmentBytes2, __runInitializers(_init91, 132, this, harnessMaxAttachmentBytes)), __runInitializers(_init91, 135, this);
182771
- __privateAdd(this, _maxTotalAttachmentBytes2, __runInitializers(_init91, 136, this, harnessMaxTotalAttachmentBytes)), __runInitializers(_init91, 139, this);
182772
- __privateAdd(this, _account2, __runInitializers(_init91, 140, this, "")), __runInitializers(_init91, 143, this);
182773
- __privateAdd(this, _accountOptions2, __runInitializers(_init91, 144, this, [])), __runInitializers(_init91, 147, this);
182774
- __privateAdd(this, _model2, __runInitializers(_init91, 148, this, "")), __runInitializers(_init91, 151, this);
182775
- __privateAdd(this, _modelOptions2, __runInitializers(_init91, 152, this, [])), __runInitializers(_init91, 155, this);
182776
- __privateAdd(this, _reasoningEffort2, __runInitializers(_init91, 156, this, "")), __runInitializers(_init91, 159, this);
182777
- __privateAdd(this, _effortOptions2, __runInitializers(_init91, 160, this, [])), __runInitializers(_init91, 163, this);
182778
- __privateAdd(this, _mode3, __runInitializers(_init91, 164, this, "")), __runInitializers(_init91, 167, this);
182779
- __privateAdd(this, _modeOptions2, __runInitializers(_init91, 168, this, [])), __runInitializers(_init91, 171, this);
182780
- __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);
182781
183018
  __publicField(this, "toggleSessionSidebar", /* @__PURE__ */ __name(() => {
182782
183019
  if (!this.narrowSessionLayout) {
182783
183020
  this.desktopSessionSidebarVisible = !this.desktopSessionSidebarVisible;
@@ -182883,6 +183120,9 @@ var _DeesHarnessChat = class _DeesHarnessChat extends (_a90 = DeesElement, _mess
182883
183120
  .permissionsBusy=${this.disabled}
182884
183121
  .questions=${this.questions}
182885
183122
  .status=${this.status}
183123
+ .transcriptKey=${this.transcriptKey}
183124
+ .hasEarlierMessages=${this.hasEarlierMessages}
183125
+ .loadingEarlier=${this.loadingEarlier}
182886
183126
  .showRoles=${this.showRoles}
182887
183127
  .showTimestamps=${this.showTimestamps}
182888
183128
  .toolRegistry=${this.toolRegistry}
@@ -183033,6 +183273,9 @@ _messages2 = new WeakMap();
183033
183273
  _permissions2 = new WeakMap();
183034
183274
  _questions2 = new WeakMap();
183035
183275
  _status6 = new WeakMap();
183276
+ _transcriptKey2 = new WeakMap();
183277
+ _hasEarlierMessages2 = new WeakMap();
183278
+ _loadingEarlier2 = new WeakMap();
183036
183279
  _usage2 = new WeakMap();
183037
183280
  _todos3 = new WeakMap();
183038
183281
  _showTodosPanel = new WeakMap();
@@ -183075,6 +183318,9 @@ __decorateElement(_init91, 4, "messages", _messages_dec2, _DeesHarnessChat, _mes
183075
183318
  __decorateElement(_init91, 4, "permissions", _permissions_dec2, _DeesHarnessChat, _permissions2);
183076
183319
  __decorateElement(_init91, 4, "questions", _questions_dec2, _DeesHarnessChat, _questions2);
183077
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);
183078
183324
  __decorateElement(_init91, 4, "usage", _usage_dec2, _DeesHarnessChat, _usage2);
183079
183325
  __decorateElement(_init91, 4, "todos", _todos_dec3, _DeesHarnessChat, _todos3);
183080
183326
  __decorateElement(_init91, 4, "showTodosPanel", _showTodosPanel_dec, _DeesHarnessChat, _showTodosPanel);
@@ -207782,7 +208028,7 @@ init_group_runtime();
207782
208028
  // ts_web/00_commitinfo_data.ts
207783
208029
  var commitinfo = {
207784
208030
  name: "@design.estate/dees-catalog",
207785
- version: "6.9.1",
208031
+ version: "6.10.0",
207786
208032
  description: "A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript."
207787
208033
  };
207788
208034
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@design.estate/dees-catalog',
6
- version: '6.9.1',
6
+ version: '6.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
  };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHNfd2ViLzAwX2NvbW1pdGluZm9fZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixJQUFJLEVBQUUsNkJBQTZCO0lBQ25DLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLFdBQVcsRUFBRSxzSkFBc0o7Q0FDcEssQ0FBQSJ9
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHNfd2ViLzAwX2NvbW1pdGluZm9fZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixJQUFJLEVBQUUsNkJBQTZCO0lBQ25DLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFdBQVcsRUFBRSxzSkFBc0o7Q0FDcEssQ0FBQSJ9
@@ -26,6 +26,9 @@ export declare class DeesHarnessChat extends DeesElement {
26
26
  /** agent questions render inline like permissions; answered ones persist */
27
27
  accessor questions: IHarnessQuestionRequest[];
28
28
  accessor status: IHarnessStatus;
29
+ accessor transcriptKey: string;
30
+ accessor hasEarlierMessages: boolean;
31
+ accessor loadingEarlier: boolean;
29
32
  accessor usage: IHarnessUsage;
30
33
  /**
31
34
  * Current task list for the side panel. When empty, the panel derives it