@aparte/core 0.16.10 → 0.17.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.
Files changed (81) hide show
  1. package/README.md +8 -0
  2. package/dist/client/aparte-client.d.ts +42 -3
  3. package/dist/client/aparte-client.d.ts.map +1 -1
  4. package/dist/components/bubble/aparte-chat-bubble.d.ts +22 -0
  5. package/dist/components/bubble/aparte-chat-bubble.d.ts.map +1 -1
  6. package/dist/components/chat/aparte-chat.d.ts +33 -0
  7. package/dist/components/chat/aparte-chat.d.ts.map +1 -1
  8. package/dist/components/composer/aparte-composer-action.d.ts +5 -3
  9. package/dist/components/composer/aparte-composer-action.d.ts.map +1 -1
  10. package/dist/components/composer/aparte-composer-toolbar.d.ts +5 -2
  11. package/dist/components/composer/aparte-composer-toolbar.d.ts.map +1 -1
  12. package/dist/components/composer/aparte-composer.d.ts +27 -0
  13. package/dist/components/composer/aparte-composer.d.ts.map +1 -1
  14. package/dist/components/context/aparte-context.d.ts +8 -0
  15. package/dist/components/context/aparte-context.d.ts.map +1 -1
  16. package/dist/components/conversation-list/aparte-conversation-list.d.ts +82 -17
  17. package/dist/components/conversation-list/aparte-conversation-list.d.ts.map +1 -1
  18. package/dist/components/scroll-rail/aparte-scroll-rail.d.ts.map +1 -1
  19. package/dist/components/sidebar/aparte-sidebar.d.ts.map +1 -1
  20. package/dist/components/split/aparte-split.d.ts.map +1 -1
  21. package/dist/components/suggestions/aparte-suggestions.d.ts +10 -1
  22. package/dist/components/suggestions/aparte-suggestions.d.ts.map +1 -1
  23. package/dist/components/viewport/aparte-chat-viewport.d.ts +55 -1
  24. package/dist/components/viewport/aparte-chat-viewport.d.ts.map +1 -1
  25. package/dist/config/action-provider.d.ts +14 -14
  26. package/dist/config/action-provider.d.ts.map +1 -1
  27. package/dist/config/aparte-config.d.ts +82 -13
  28. package/dist/config/aparte-config.d.ts.map +1 -1
  29. package/dist/config/bubble-shell-renderer.d.ts +50 -12
  30. package/dist/config/bubble-shell-renderer.d.ts.map +1 -1
  31. package/dist/config/locale.d.ts +33 -1
  32. package/dist/config/locale.d.ts.map +1 -1
  33. package/dist/config/sanitize.d.ts.map +1 -1
  34. package/dist/conversations/conversation-controller.d.ts +14 -0
  35. package/dist/conversations/conversation-controller.d.ts.map +1 -1
  36. package/dist/conversations/conversation-manager.d.ts +57 -19
  37. package/dist/conversations/conversation-manager.d.ts.map +1 -1
  38. package/dist/conversations/types.d.ts +18 -11
  39. package/dist/conversations/types.d.ts.map +1 -1
  40. package/dist/custom-elements.json +6841 -6085
  41. package/dist/{dialog-triggers-cYGTlfZf.js → dialog-triggers-Bb-3EkT4.js} +591 -161
  42. package/dist/dialog-triggers-Bb-3EkT4.js.map +1 -0
  43. package/dist/generated/element-attributes.d.ts +10 -4
  44. package/dist/generated/element-attributes.d.ts.map +1 -1
  45. package/dist/host/aparte-chat-host.d.ts +30 -0
  46. package/dist/host/aparte-chat-host.d.ts.map +1 -1
  47. package/dist/index.css +1 -8393
  48. package/dist/index.d.ts +1 -1
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +550 -98
  51. package/dist/index.js.map +1 -1
  52. package/dist/index.node.d.ts +1 -1
  53. package/dist/index.node.d.ts.map +1 -1
  54. package/dist/index.node.js +1 -1
  55. package/dist/index.node.js.map +1 -1
  56. package/dist/interop/element-props.d.ts +1 -1
  57. package/dist/primitives/select/aparte-optgroup.d.ts +1 -0
  58. package/dist/primitives/select/aparte-optgroup.d.ts.map +1 -1
  59. package/dist/primitives/select/aparte-select.d.ts +12 -1
  60. package/dist/primitives/select/aparte-select.d.ts.map +1 -1
  61. package/dist/renderers/markdown-stream.d.ts.map +1 -1
  62. package/dist/runtime/message-repository.d.ts +16 -3
  63. package/dist/runtime/message-repository.d.ts.map +1 -1
  64. package/dist/types/chat.d.ts +41 -46
  65. package/dist/types/chat.d.ts.map +1 -1
  66. package/dist/types/event-map.d.ts +7 -7
  67. package/dist/types/event-map.d.ts.map +1 -1
  68. package/dist/types/events.d.ts +7 -6
  69. package/dist/types/events.d.ts.map +1 -1
  70. package/dist/types/imperative-api.d.ts +16 -0
  71. package/dist/types/imperative-api.d.ts.map +1 -1
  72. package/dist/types/index.d.ts +2 -2
  73. package/dist/types/index.d.ts.map +1 -1
  74. package/dist/types/models.d.ts +9 -0
  75. package/dist/types/models.d.ts.map +1 -1
  76. package/dist/types/segments.d.ts +56 -13
  77. package/dist/types/segments.d.ts.map +1 -1
  78. package/dist/utils/event-target.d.ts +31 -0
  79. package/dist/utils/event-target.d.ts.map +1 -0
  80. package/package.json +2 -2
  81. package/dist/dialog-triggers-cYGTlfZf.js.map +0 -1
@@ -75,7 +75,16 @@ export declare class AparteSuggestions extends HTMLElement {
75
75
  private _onConfigChange;
76
76
  /** The starters. Setting it re-renders; the `suggestions` attribute is the JSON form. */
77
77
  get suggestions(): AparteSuggestion[];
78
- set suggestions(value: AparteSuggestion[]);
78
+ /**
79
+ * Takes the array, or the JSON string the attribute documents.
80
+ *
81
+ * Both, because both arrive: React 19 and Svelte assign the PROPERTY whenever the
82
+ * element has one of that name, so `<aparte-suggestions suggestions='[…]'>` — the
83
+ * documented spelling, typed valid by both wrappers — reached this setter as a
84
+ * string, `Array.isArray` said no, and the row rendered nothing while the attribute
85
+ * (and so `attributeChangedCallback`) was never written.
86
+ */
87
+ set suggestions(value: AparteSuggestion[] | string);
79
88
  connectedCallback(): void;
80
89
  disconnectedCallback(): void;
81
90
  attributeChangedCallback(name: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"aparte-suggestions.d.ts","sourceRoot":"","sources":["../../../src/components/suggestions/aparte-suggestions.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3E,2EAA2E;AAC3E,MAAM,WAAW,2BAA2B;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AASD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAC9C,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,SAAS,CAA+B;IAEhD,OAAO,CAAC,OAAO,CAEb;IAEF,OAAO,CAAC,eAAe,CAGrB;IAEF,yFAAyF;IACzF,IAAI,WAAW,IAAI,gBAAgB,EAAE,CAEpC;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,gBAAgB,EAAE,EAGxC;IAED,iBAAiB,IAAI,IAAI;IAOzB,oBAAoB,IAAI,IAAI;IAM5B,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAU5C,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,OAAO,CAAuB;IAEtC;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAatB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,OAAO;IAyBf,OAAO,CAAC,SAAS;CAkBpB"}
1
+ {"version":3,"file":"aparte-suggestions.d.ts","sourceRoot":"","sources":["../../../src/components/suggestions/aparte-suggestions.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3E,2EAA2E;AAC3E,MAAM,WAAW,2BAA2B;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAwBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAC9C,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,SAAS,CAA+B;IAEhD,OAAO,CAAC,OAAO,CAEb;IAEF,OAAO,CAAC,eAAe,CAGrB;IAEF,yFAAyF;IACzF,IAAI,WAAW,IAAI,gBAAgB,EAAE,CAEpC;IAED;;;;;;;;OAQG;IACH,IAAI,WAAW,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,MAAM,EAKjD;IAED,iBAAiB,IAAI,IAAI;IAOzB,oBAAoB,IAAI,IAAI;IAM5B,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAU5C,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,OAAO,CAAuB;IAEtC;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAOtB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,OAAO;IAyBf,OAAO,CAAC,SAAS;CAkBpB"}
@@ -51,6 +51,11 @@ import type { ExportedMessageRepository } from '../../runtime/message-repository
51
51
  * this mode only. All four wrappers set it.
52
52
  * @attr {number} scroll-threshold - How close to the bottom still counts as "at the bottom".
53
53
  * @attr {number} max-rendered-bubbles - Caps how many bubbles stay in the DOM; older ones are released.
54
+ * @attr {boolean} loading - The transcript is on its way: a conversation was chosen and its messages
55
+ * are being fetched. The element draws two skeleton turns, marks its scroll surface
56
+ * `aria-busy` and names the wait for a screen reader; `aparte-chat[center-empty]`
57
+ * does not count a loading viewport as empty. Set by `AparteConversationController`
58
+ * through its binding, or by hand from a loop of your own (`setLoading(true)`).
54
59
  * @attr {boolean} data-busy - Reflected BY the element while a turn streams: the transcript is
55
60
  * read-only meanwhile, and every bubble inside reads it (at connect, and when it changes). The
56
61
  * vanilla path derives it from the repository; a framework host sets it through
@@ -130,6 +135,11 @@ export declare class AparteChatViewport extends HTMLElement {
130
135
  private _lastScrollTop;
131
136
  /** The scroll height at the last scroll event: how much it moved since bounds what churn can do. */
132
137
  private _lastScrollHeight;
138
+ /** When the transcript last mutated under our observer — an engine's settle adjustment follows one. */
139
+ private _lastMutationAt;
140
+ /** How long after a mutation an engine's settle adjustment can arrive, and how far it moves. */
141
+ private readonly _settleShadowMs;
142
+ private readonly _settleBoundPx;
133
143
  /** When this component last moved `scrollTop` itself — see `_handleScroll`. "Never" is
134
144
  * -Infinity rather than 0: `performance.now()` can be under a second old. */
135
145
  private _ownScrollAt;
@@ -191,6 +201,19 @@ export declare class AparteChatViewport extends HTMLElement {
191
201
  */
192
202
  private _frameworkManagedDOM;
193
203
  static get observedAttributes(): string[];
204
+ /**
205
+ * The transcript is on its way: a conversation was chosen and its messages are
206
+ * being fetched. Two skeleton turns stand where they will be, the scroll surface
207
+ * is `aria-busy`, and a visually hidden line names the wait. Reflected as the
208
+ * `loading` attribute — `AparteConversationController` sets it through its
209
+ * binding; a loop of your own sets it by hand. Not the same thing as `data-busy`,
210
+ * which is a reply streaming into a transcript that is already there.
211
+ */
212
+ get loading(): boolean;
213
+ set loading(value: boolean);
214
+ setLoading(loading: boolean): void;
215
+ /** Draw or remove the wait, from the attribute. Safe before the structure exists. */
216
+ private _syncLoading;
194
217
  constructor();
195
218
  connectedCallback(): void;
196
219
  /**
@@ -253,7 +276,23 @@ export declare class AparteChatViewport extends HTMLElement {
253
276
  * framework wrapper's host element.
254
277
  */
255
278
  private _activeMessageId;
256
- /** The id of the message currently streaming, if any. */
279
+ /**
280
+ * The id of the message currently streaming, if any — searched across the whole
281
+ * TREE, and answering with an OFF-HEAD one first when there are two.
282
+ *
283
+ * It used to scan `getMessages()`, the active path. A retry or an edit on an
284
+ * earlier bubble calls `addSiblingOf`, which switches the branch to the new pending
285
+ * reply: the turn still being written leaves the path, the scan found nothing, and
286
+ * the rest of that turn was appended to the message that had just replaced it.
287
+ *
288
+ * A new pending reply is itself marked streaming, so "the first one found" would
289
+ * answer the head and let the write through — the very case this exists to refuse.
290
+ * Answering the off-head one instead makes `_activeMessageId` refuse while ANY turn
291
+ * elsewhere in the tree is still open. That also refuses the new turn's own first
292
+ * deltas for as long as the superseded one has not settled, which is the trade this
293
+ * whole path already makes: losing the tail is visible, writing it onto someone
294
+ * else's message is not.
295
+ */
257
296
  private _streamingMessageId;
258
297
  /**
259
298
  * While a reply streams, the transcript is read-only except for Stop.
@@ -333,6 +372,12 @@ export declare class AparteChatViewport extends HTMLElement {
333
372
  /**
334
373
  * Atomic update for a message by ID
335
374
  * Supports updating content, status, segments, and other metadata
375
+ *
376
+ * An id the tree does not hold is a silent no-op, deliberately: the message may have
377
+ * been truncated away by an edit while a turn was still writing to it, and inventing
378
+ * it back would put a message the reader deleted on screen. It does mean a late error
379
+ * card can have nowhere to land — `aparte-message-error` still fires, so a host that
380
+ * wants to show one has the event.
336
381
  */
337
382
  updateMessage(messageId: string, updates: Partial<AparteMessage>): void;
338
383
  /**
@@ -529,6 +574,15 @@ export declare class AparteChatViewport extends HTMLElement {
529
574
  * 1 run in 6: the rebuild's height churn moved scrollTop within the second after
530
575
  * the click, and the click made that look like the reader's).
531
576
  */
577
+ /**
578
+ * Is a pointer pressed on the surface right now? A press on the TEXT is not a scroll
579
+ * gesture (`_noteReaderInput` counts only the gutter), but a hand that is down and
580
+ * dragging a selection past the edge scrolls the container all the same — and that
581
+ * decrease is the reader's. Held from the press to its release, wherever it lands.
582
+ */
583
+ private _pointerHeld;
584
+ private readonly _holdPointer;
585
+ private readonly _releasePointer;
532
586
  private readonly _noteReaderInput;
533
587
  private readonly _onBranchNavigate;
534
588
  private _setupEventListeners;
@@ -1 +1 @@
1
- {"version":3,"file":"aparte-chat-viewport.d.ts","sourceRoot":"","sources":["../../../src/components/viewport/aparte-chat-viewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aparte-chat-viewport.d.ts","sourceRoot":"","sources":["../../../src/components/viewport/aparte-chat-viewport.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,16 @@
1
- /** Zones where a custom action can appear. */
2
- export type AparteActionZone = 'composer' | 'bubble';
1
+ /**
2
+ * Zones where a custom action can appear — the message (bubble) toolbar, and only it.
3
+ *
4
+ * The type is a single member on purpose: a composer button is an element the consumer
5
+ * writes in their own markup (`<aparte-composer-action>`), not a registry entry, so the
6
+ * composer never asked the registry for anything. The zone stays a named type rather
7
+ * than the bare literal because `getActions(zone)` reads as a lookup, and a second zone
8
+ * (a toolbar of core's own, say) would be added here.
9
+ */
10
+ export type AparteActionZone = 'bubble';
3
11
  /**
4
12
  * A custom action button, registered once via `aparteGlobalConfig.registerAction(...)`
5
- * and placed in one or more zones — the composer toolbar and/or the message
6
- * (bubble) toolbar — via `zones`.
13
+ * and placed in the message (bubble) toolbar via `zones`.
7
14
  *
8
15
  * Declarative and framework-agnostic: clicking it emits an `aparte-action`
9
16
  * CustomEvent (bubbles, composed) carrying `{ actionId, zone, … }`, exactly like
@@ -11,6 +18,9 @@ export type AparteActionZone = 'composer' | 'bubble';
11
18
  * React/Vue/Svelte/Angular and in vanilla. An optional `onClick` callback fires
12
19
  * alongside the event for imperative convenience.
13
20
  *
21
+ * For a button in the composer, write an `<aparte-composer-action>` in your markup and
22
+ * listen for `aparte-action-click` — see that element's docs.
23
+ *
14
24
  * @example
15
25
  * aparteGlobalConfig.registerAction({
16
26
  * id: 'share', icon: '<svg>…</svg>', label: 'Share',
@@ -38,16 +48,6 @@ export interface AparteAction {
38
48
  order?: number;
39
49
  /** Which zones this action appears in. */
40
50
  zones: AparteActionZone[];
41
- /** Composer-toolbar placement (used when `zones` includes `'composer'`). */
42
- composer?: {
43
- /** Toolbar side. Default: `'left'`. */
44
- position?: 'left' | 'right';
45
- /**
46
- * When `true`, the button is hidden from the composer toolbar.
47
- * Toggle at runtime with `aparteGlobalConfig.setActionHidden(id, hidden)`.
48
- */
49
- hidden?: boolean;
50
- };
51
51
  /** Bubble-toolbar placement (used when `zones` includes `'bubble'`). */
52
52
  bubble?: {
53
53
  /** Bubble roles this action shows on. Default: both user and assistant. */
@@ -1 +1 @@
1
- {"version":3,"file":"action-provider.d.ts","sourceRoot":"","sources":["../../src/config/action-provider.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,QAAQ,CAAC;AAErD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,YAAY;IACzB,qEAAqE;IACrE,EAAE,EAAE,MAAM,CAAC;IACX;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,EAAE;QACP,uCAAuC;QACvC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAC5B;;;WAGG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,wEAAwE;IACxE,MAAM,CAAC,EAAE;QACL,2EAA2E;QAC3E,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC;KACpC,CAAC;IACF,+EAA+E;IAC/E,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACvD"}
1
+ {"version":3,"file":"action-provider.d.ts","sourceRoot":"","sources":["../../src/config/action-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,YAAY;IACzB,qEAAqE;IACrE,EAAE,EAAE,MAAM,CAAC;IACX;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,wEAAwE;IACxE,MAAM,CAAC,EAAE;QACL,2EAA2E;QAC3E,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC;KACpC,CAAC;IACF,+EAA+E;IAC/E,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACvD"}
@@ -30,7 +30,17 @@ export type AparteMarkdownProvider = (raw: string) => string;
30
30
  export type AparteHighlightProvider = ((code: string, lang: string) => string) | ((code: string, lang: string) => Promise<string>);
31
31
  export type AparteSystemPromptVarsProvider = () => Record<string, string>;
32
32
  export type AparteLocaleProvider = AparteLocale;
33
- export type AparteKeyProvider = (providerId: string) => string | Promise<string | undefined> | undefined;
33
+ /**
34
+ * How the page answers "what are this provider's credentials?".
35
+ *
36
+ * A bare key, or the same `{ apiKey, endpoint }` record the transport reads
37
+ * (`readAuth`) and `fetchModels` accepts. The record is not a nicety: a consumer
38
+ * who points a preset at their own host — a corporate proxy, a self-hosted vLLM,
39
+ * an LM Studio box — configures it as `endpoint`, and while this channel could
40
+ * only carry a string, `refreshProviderModels` sent `GET {vendor default}/models`
41
+ * with the key that host had been given.
42
+ */
43
+ export type AparteKeyProvider = (providerId: string) => string | Record<string, string> | undefined | null | Promise<string | Record<string, string> | undefined | null>;
34
44
  /**
35
45
  * The bubble-action defaults — `copy` on, everything else off.
36
46
  *
@@ -105,6 +115,11 @@ export declare class AparteConfig {
105
115
  private _iconProvider?;
106
116
  private _avatarProvider?;
107
117
  private _keyProvider?;
118
+ /**
119
+ * Sources added with `registerKeyProvider` — consulted before `_keyProvider`,
120
+ * newest first (see `getKey`).
121
+ */
122
+ private _extraKeyProviders;
108
123
  private _locale;
109
124
  private _actions;
110
125
  private _listeners;
@@ -164,20 +179,16 @@ export declare class AparteConfig {
164
179
  private _hostHandlers;
165
180
  private _bubbleActionsConfig;
166
181
  /**
167
- * Register a custom action button. `zones` places it in the composer toolbar
168
- * and/or the message (bubble) toolbar. Re-registering the same id overwrites
169
- * it. Notifies mounted elements so they re-render.
182
+ * Register a custom action button. `zones` places it in the message (bubble)
183
+ * toolbar. Re-registering the same id overwrites it. Notifies mounted elements
184
+ * so they re-render. A button in the composer is an `<aparte-composer-action>`
185
+ * element you write in your markup, not a registry entry.
170
186
  */
171
187
  registerAction(action: AparteAction): void;
172
188
  /** All registered actions for a zone, sorted by `order` (lower first). */
173
189
  getActions(zone: AparteActionZone): AparteAction[];
174
190
  /** Remove a custom action by id (from every zone); notifies mounted elements if it existed. */
175
191
  unregisterAction(id: string): void;
176
- /**
177
- * Show or hide a composer action button by id.
178
- * Triggers a config update so all mounted composer elements react immediately.
179
- */
180
- setActionHidden(id: string, hidden: boolean): void;
181
192
  /**
182
193
  * Configure which action buttons appear in message bubbles.
183
194
  * Unset keys keep their defaults — see {@link APARTE_DEFAULT_BUBBLE_ACTIONS}: `copy`
@@ -219,8 +230,11 @@ export declare class AparteConfig {
219
230
  * Set an incremental (streaming) Markdown renderer provider. Optional —
220
231
  * when set, the chat bubble uses it to render the assistant message
221
232
  * token-by-token DURING streaming (incremental parse + DOM append, O(n)),
222
- * instead of re-parsing the whole string on every token. The one-shot
223
- * `setMarkdownProvider` is still used for finished / re-rendered messages.
233
+ * instead of re-parsing the whole string on every token. When the turn ends,
234
+ * a registered one-shot `setMarkdownProvider` re-renders the finished message
235
+ * at full fidelity; with no one-shot provider registered, what the streaming
236
+ * renderer drew is kept (sanitised), rather than replaced by the built-in
237
+ * escape-and-line-break fallback.
224
238
  */
225
239
  setStreamingMarkdownProvider(fn: AparteStreamingMarkdownProvider): void;
226
240
  /**
@@ -391,9 +405,45 @@ export declare class AparteConfig {
391
405
  */
392
406
  setKeyProvider(provider: AparteKeyProvider): void;
393
407
  /**
394
- * Get API key for a provider
408
+ * Add a key source, without replacing the one `setKeyProvider` holds. Returns a
409
+ * teardown.
410
+ *
411
+ * This is how `AparteClient({ keyResolver })` — the channel the docs teach as
412
+ * primary — reaches everything that needs a key rather than the chat alone. It
413
+ * used to reach the chat ONLY, so the model selector, whose one data path is
414
+ * `refreshProviderModels`, showed an empty list on every cloud provider while
415
+ * the chat worked: `fetchModels` returns `[]` without a key, so there was
416
+ * nothing to see and nothing said.
417
+ *
418
+ * The direction matters (decision #9): the client registers a source ON the
419
+ * config, so the capability is never hostage to the client — a page that only
420
+ * ever calls `setKeyProvider` is unchanged, and a page that constructs no
421
+ * client at all still lists models.
422
+ *
423
+ * Every call is its own source, even when the same function is handed in
424
+ * twice: two panes sharing one module-level resolver are two mounts, and the
425
+ * first one to unmount must not take the second one's key with it. A `Set`
426
+ * keyed by the function itself made them one entry, which either teardown
427
+ * removed.
428
+ */
429
+ registerKeyProvider(provider: AparteKeyProvider): () => void;
430
+ /**
431
+ * The credentials for a provider: a key, or the `{ apiKey, endpoint }` record
432
+ * the transport and `fetchModels` both read.
433
+ *
434
+ * ONE resolution order, so the chat and the model list cannot disagree about
435
+ * what an endpoint is: a registered resolver (`AparteClient`'s `keyResolver`)
436
+ * first — which is the precedence the client has always documented — then
437
+ * `setKeyProvider`.
438
+ *
439
+ * Registered sources answer NEWEST first. A page that mounts a second chat, or
440
+ * remounts one to swap its options — the swap the wrappers document — leaves
441
+ * more than one source here, and insertion order made the first resolver the
442
+ * page ever registered answer for every later one, so the key could not be
443
+ * changed. The snapshot is deliberate too: a source torn down while an earlier
444
+ * one is being awaited must not shift the iteration underneath it.
395
445
  */
396
- getKey(providerId: string): Promise<string | undefined>;
446
+ getKey(providerId: string): Promise<string | Record<string, string> | undefined>;
397
447
  /**
398
448
  * Refresh models for a specific provider
399
449
  * Orchestrates: Key Retrieval -> Fetch -> Return
@@ -613,6 +663,13 @@ export declare class AparteConfig {
613
663
  * Controls what appears in the chat bubble when the AI calls this tool.
614
664
  * Use this instead of the generic `tool_call` segment renderer for tool-specific UI.
615
665
  *
666
+ * A renderer that needs a popover (a `<aparte-select>`, a menu) cannot open one
667
+ * inside the row: the bubble is `content-visibility: auto`, which makes it the
668
+ * containing block for `position: fixed` descendants and clips a popover to its
669
+ * own box. Mount it on `document.body` and position it from the trigger's rect
670
+ * instead — see [Custom tool
671
+ * renderer](https://apartejs.dev/guides/tools/#custom-tool-renderer).
672
+ *
616
673
  * @example
617
674
  * // Hide the segment entirely (UI-only tool like ask_user)
618
675
  * aparteGlobalConfig.registerToolRenderer('ask_user', { render: () => '' });
@@ -753,6 +810,18 @@ export declare class AparteConfig {
753
810
  * "installs itself — nothing to register", which is how that was found.
754
811
  */
755
812
  requestUserInput(request: AparteElicitationRequest): Promise<AparteElicitationResult>;
813
+ /**
814
+ * Which queue a request waits in: its own chat's.
815
+ *
816
+ * The wait exists so a second question cannot take the panel away from the one on
817
+ * screen — a property of ONE panel, and `_present` routes by target, so a chat is
818
+ * the right unit. It used to be one queue for the whole config: two chats on the
819
+ * global config shared it, and an approval waiting for an answer in the first (which
820
+ * is all an approval does) held the second's question behind it for ever, with
821
+ * nothing on screen to answer. Requests that name no chat keep sharing the `null`
822
+ * queue, because they all reach the same presenter — the top of the stack.
823
+ */
824
+ private _elicitationQueueKey;
756
825
  /** Hand ONE request to the presenter. Called only from the queue. */
757
826
  private _present;
758
827
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"aparte-config.d.ts","sourceRoot":"","sources":["../../src/config/aparte-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aparte-config.d.ts","sourceRoot":"","sources":["../../src/config/aparte-config.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * Replace the *structural skeleton* of `<aparte-chat-bubble>` — the markup the
5
5
  * bubble renders once and then populates — while keeping all of its behavior
6
6
  * (segments, streaming, action bar, avatar, branch picker). This is the
7
- * whole-structure override that {@link https://…} `renderBubble` (wrapper-level,
7
+ * whole-structure override that `renderBubble` (wrapper-level,
8
8
  * replaces the element entirely) is not: here the native bubble stays in charge.
9
9
  *
10
10
  * Return an HTML **string** or a ready **HTMLElement** (charter §6:
@@ -13,17 +13,55 @@
13
13
  *
14
14
  * - Root element **must** be `.aparte-message` (it carries `data-role` and receives
15
15
  * `data-streaming` / `data-error`; the styles target it).
16
- * - Include the region hooks you want the bubble to populate. Any you omit simply
17
- * stay empty (every lookup is null-guarded — graceful degradation):
18
- * - `.aparte-avatar` — filled by the avatar provider / initial
19
- * - `.aparte-name` — the display name (you set it from `ctx.name`)
20
- * - `.aparte-timestamp` — the formatted time
21
- * - `.aparte-attachments` — user-message attachment chips
22
- * - `.aparte-segments` — streamed/structured segments
23
- * - `.aparte-content` — simple markdown content
24
- * - `.aparte-action-bar` — copy/retry/edit/… + custom actions
25
- * - `.aparte-branch-picker` — with `.aparte-branch-prev` / `.aparte-branch-label` /
26
- * `.aparte-branch-next` for sibling navigation
16
+ * - Include the region hooks you want the bubble to populate, in the order the default
17
+ * shell renders them. Any you omit simply stay empty (every lookup is null-guarded —
18
+ * graceful degradation):
19
+ * - `.aparte-avatar` — filled by the avatar provider / initial
20
+ * - `.aparte-name` — the display name (you set it from `ctx.name`)
21
+ * - `.aparte-timestamp` — the formatted time
22
+ * - `.aparte-attachments` — user-message attachment chips
23
+ * - `.aparte-message-content` — the painted content box, and it HOLDS the next three
24
+ * (`.aparte-segments`, `.aparte-content`, `.aparte-waiting`):
25
+ * the background, the radius and the padding of a user
26
+ * message are declared on this box, so rendering the three
27
+ * as its siblings leaves a message with no bubble — every
28
+ * behaviour intact, the look gone. The bubble hides the box
29
+ * when the turn has nothing to show, so an attachments-only
30
+ * message does not draw an empty coloured rectangle
31
+ * - `.aparte-segments` — streamed/structured segments
32
+ * - `.aparte-content` — simple markdown content
33
+ * - `.aparte-waiting` — the dots between "user sends" and the first token. The
34
+ * bubble only SHOWS and HIDES this region; the markup that
35
+ * paints is yours: a `.aparte-dots` span holding three
36
+ * `.aparte-dot` spans (the stylesheet animates them), and a
37
+ * `.aparte-sr-only` span for the label the screen reader
38
+ * hears. With the label alone the region has nothing to
39
+ * draw and the reader watches an empty box while the model
40
+ * composes
41
+ * - `.aparte-footer` — the row that holds the branch picker and the actions
42
+ * - `.aparte-branch-picker` — with `.aparte-branch-prev` / `.aparte-branch-label` /
43
+ * `.aparte-branch-next` for sibling navigation, and
44
+ * `.aparte-branch-status` (a `.aparte-sr-only` span with
45
+ * `aria-live="polite"`) for the announcement
46
+ * - `.aparte-action-bar` — copy/retry/edit/… + custom actions
47
+ *
48
+ * Omitting most of these costs you something you can see. **The two that fail silently
49
+ * are `.aparte-waiting` and `.aparte-branch-status`**: without the first there is no
50
+ * "thinking" state at all while the model composes, and without the second a
51
+ * screen-reader user gets no word that the branch moved — the arrows deliberately do
52
+ * not take focus, so nothing else announces it.
53
+ *
54
+ * ARIA is the one thing this list does NOT ask of you. A shell is markup, and a contract
55
+ * that also demanded a `role` and a name would lose both the first time an author forgot
56
+ * one, silently. So the bubble writes `role="article"` and the accessible name onto your
57
+ * root itself, after your shell renders — unless the root already carries a `role`, which
58
+ * is how you override it: the bubble then leaves the accessible name to you as well.
59
+ *
60
+ * Two more classes carry the DEFAULT LAYOUT and nothing else — the bubble never queries
61
+ * them, so a shell that lays itself out differently is free to drop both: `.aparte-body`
62
+ * (the column beside the avatar, and the containing block the footer floats in) and
63
+ * `.aparte-header` (the name and time row). Keep them and the default stylesheet lays
64
+ * your shell out like the native bubble.
27
65
  *
28
66
  * Prefer `renderBubble` (wrapper) when you want a fully custom element; use this
29
67
  * when you want to keep the native bubble's machinery but reshape its layout.
@@ -1 +1 @@
1
- {"version":3,"file":"bubble-shell-renderer.d.ts","sourceRoot":"","sources":["../../src/config/bubble-shell-renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE;IAC1C,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACzB,KAAK,MAAM,GAAG,WAAW,CAAC"}
1
+ {"version":3,"file":"bubble-shell-renderer.d.ts","sourceRoot":"","sources":["../../src/config/bubble-shell-renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE;IAC1C,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACzB,KAAK,MAAM,GAAG,WAAW,CAAC"}
@@ -17,6 +17,18 @@
17
17
  * meet: TypeScript gives a type alias an implicit index signature and an interface
18
18
  * none, so only this form is assignable to the extensions record that
19
19
  * `setLocale`/`extendLocale` accept and `getLocale` returns.
20
+ *
21
+ * Eleven keys here are rendered by no core file — the artifact card's six, its two
22
+ * sandbox lines, the compaction summary's title, the approval mode picker's label and the
23
+ * model selector's placeholder, all drawn by a plugin. They belong in this bag anyway: the
24
+ * locale is one flat object every package shares, so a translator fills one record and
25
+ * `@aparte/locale-fr` needs no companion per plugin. They are the
26
+ * exception rather than the pattern, though, and a closed one: a plugin of your own
27
+ * reads its strings off `getLocale()` and defaults them at the call site (the
28
+ * localization guide shows it), and `check:locale-keys` holds those eleven in
29
+ * `PLUGIN_OWNED` and refuses a twelfth. The reason is that a key here is a published name
30
+ * before it is a word: it ships in every locale package, and the frozen surface then
31
+ * keeps it for two releases.
20
32
  */
21
33
  export type AparteLocale = {
22
34
  inputPlaceholder: string;
@@ -52,6 +64,10 @@ export type AparteLocale = {
52
64
  messageInfo?: string;
53
65
  /** Default title for a new conversation (default: "New Chat") */
54
66
  newChat: string;
67
+ /** Read by a screen reader while the conversation list is on its way (default: "Loading conversations") */
68
+ loadingConversations: string;
69
+ /** Read by a screen reader while a conversation's messages are on their way (default: "Loading the conversation") */
70
+ loadingConversation: string;
55
71
  /**
56
72
  * The "Delete" item of a row's menu (default: "Delete"). Used to be the aria-label
57
73
  * of a permanent ✕ on every row ("Delete conversation"); the menu is named after
@@ -356,7 +372,23 @@ export type AparteLocale = {
356
372
  * have chosen French strings, French formatting is what you meant.
357
373
  */
358
374
  tag?: string;
359
- /** Direction of the text (ltr or rtl) - defaults to ltr */
375
+ /**
376
+ * Reading direction — `'ltr'` or `'rtl'`. Written as `dir` onto the viewport's
377
+ * scroll container and onto `<aparte-composer>`, so everything inside inherits it.
378
+ *
379
+ * Undefined on purpose in the English default, for the reason `tag` above is:
380
+ * `undefined` means "follow the host". The default used to be the literal
381
+ * `'ltr'`, which meant core wrote `dir="ltr"` on its own DOM — so a page that
382
+ * had said `<html dir="rtl">` got a mirrored app shell around a chat that was
383
+ * still left-to-right, and nothing said why. Not declaring it lets the host's
384
+ * direction inherit, which is what a library should do with a decision the page
385
+ * has already taken.
386
+ *
387
+ * A locale that wants the direction PINNED still declares it, and that is the
388
+ * case it exists for: `@aparte/locale-ar` would say `'rtl'` whatever the page
389
+ * around it does. `setLocale` replaces the object wholesale, so nothing merges a
390
+ * default back in.
391
+ */
360
392
  direction?: 'ltr' | 'rtl';
361
393
  };
362
394
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"locale.d.ts","sourceRoot":"","sources":["../../src/config/locale.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,YAAY,GAAG;IAEvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IAGnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IAGd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAGhB,GAAG,EAAE,MAAM,CAAC;IAGZ,IAAI,EAAE,MAAM,CAAC;IAGb,oEAAoE;IACpE,YAAY,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,iBAAiB,EAAE,MAAM,CAAC;IAG1B,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IAGvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yFAAyF;IACzF,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B,8DAA8D;IAC9D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8DAA8D;IAC9D,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,gGAAgG;IAChG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,yFAAyF;IACzF,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,2DAA2D;IAC3D,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,yCAAyC;IACzC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,mEAAmE;IACnE,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kIAAkI;IAClI,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAGhC,mHAAmH;IACnH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4FAA4F;IAC5F,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,2FAA2F;IAC3F,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;;;;;OAcG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;OAQG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kFAAkF;IAClF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;;;;;OAMG;IACH,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,sFAAsF;IACtF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0GAA0G;IAC1G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,mGAAmG;IACnG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2FAA2F;IAC3F,OAAO,CAAC,EAAE,MAAM,CAAC;IAQjB;;;OAGG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAM3B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,YAyFnC,CAAC"}
1
+ {"version":3,"file":"locale.d.ts","sourceRoot":"","sources":["../../src/config/locale.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAEvD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,aAKzB,CAAC;AAqIH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAQ7D;AA4OD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAY9B,CAAC"}
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAEvD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,aAKzB,CAAC;AAqIH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAQ7D;AAoPD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAY9B,CAAC"}
@@ -24,6 +24,11 @@ export interface AparteChatBinding {
24
24
  clearMessages(options?: {
25
25
  revokeAttachments?: boolean;
26
26
  }): void;
27
+ /**
28
+ * The transcript is on its way, or no longer: a conversation was chosen and its
29
+ * messages are being fetched. The DOM binding sets the viewport's `loading`.
30
+ */
31
+ setLoading?(loading: boolean): void;
27
32
  /**
28
33
  * Export the full conversation tree for persistence.
29
34
  * Optional: only available when the binding wraps a `AparteMessageRepository`
@@ -87,6 +92,8 @@ export declare class AparteConversationController {
87
92
  private _subscribedTo;
88
93
  /** Between bind() and unbind(): the only time a manager subscription may be installed. */
89
94
  private _bound;
95
+ /** The binding shows the wait this controller asked for — see `_showWait`. */
96
+ private _waitShown;
90
97
  /**
91
98
  * React to an external mutation of the manager (another component deleting or
92
99
  * archiving the active conversation). Without this the binding would keep
@@ -136,6 +143,13 @@ export declare class AparteConversationController {
136
143
  * reload never kills an in-flight response.
137
144
  */
138
145
  setConversationId(id: string | null): Promise<void>;
146
+ /**
147
+ * The binding's wait, owned here: whoever runs `setConversationId` last clears it
148
+ * — a loaded conversation or a new chat that replaces a fetch, a delete of the
149
+ * one being fetched — so a wait shown for one call never outlives the call that
150
+ * superseded it.
151
+ */
152
+ private _showWait;
139
153
  /**
140
154
  * Snapshot the binding's current messages and push them to the manager.
141
155
  * No-op when there is no active conversation or no manager registered.
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-controller.d.ts","sourceRoot":"","sources":["../../src/conversations/conversation-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,mBAAmB,CAAC;AACzE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAE3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAOlF;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,2EAA2E;IAC3E,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC7C,0EAA0E;IAC1E,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC5C,qCAAqC;IACrC,WAAW,IAAI,aAAa,EAAE,CAAC;IAC/B,kEAAkE;IAClE,aAAa,CAAC,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D;;;;OAIG;IACH,UAAU,CAAC,IAAI,yBAAyB,GAAG,SAAS,CAAC;IACrD;;;;;OAKG;IACH,UAAU,CAAC,CAAC,IAAI,EAAE,yBAAyB,GAAG,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,mCAAmC;IAChD;;;OAGG;IACH,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,4BAA4B;IACrC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,QAAQ,CAAsC;IACtD,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,eAAe,CAAgC;IAEvD,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,qBAAqB,CAAqC;IAClE,OAAO,CAAC,mBAAmB,CAA6B;IACxD,wFAAwF;IACxF,OAAO,CAAC,aAAa,CAA0C;IAC/D,0FAA0F;IAC1F,OAAO,CAAC,MAAM,CAAS;IAEvB;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAoBhC;gBAEU,OAAO,EAAE,iBAAiB,EAAE,OAAO,GAAE,mCAAwC;IAKzF,oEAAoE;IACpE,IAAI,QAAQ,IAAI,MAAM,GAAG,IAAI,CAE5B;IAED;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IAqBhB;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,4BAA4B;IAWpC;;OAEG;IACH,IAAI,IAAI,MAAM,IAAI;IA8GlB,8BAA8B;IAC9B,mFAAmF;IACnF,OAAO,CAAC,mBAAmB,CAA6B;IAExD,MAAM,IAAI,IAAI;IAiDd;;;;;;;;;;OAUG;IACG,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA2HzD;;;;;;;;;OASG;IACH,OAAO,CAAC,cAAc;YA2BR,6BAA6B;CA8D9C"}
1
+ {"version":3,"file":"conversation-controller.d.ts","sourceRoot":"","sources":["../../src/conversations/conversation-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,mBAAmB,CAAC;AACzE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAE3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAOlF;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,2EAA2E;IAC3E,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC7C,0EAA0E;IAC1E,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC5C,qCAAqC;IACrC,WAAW,IAAI,aAAa,EAAE,CAAC;IAC/B,kEAAkE;IAClE,aAAa,CAAC,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D;;;OAGG;IACH,UAAU,CAAC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACpC;;;;OAIG;IACH,UAAU,CAAC,IAAI,yBAAyB,GAAG,SAAS,CAAC;IACrD;;;;;OAKG;IACH,UAAU,CAAC,CAAC,IAAI,EAAE,yBAAyB,GAAG,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,mCAAmC;IAChD;;;OAGG;IACH,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,4BAA4B;IACrC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,QAAQ,CAAsC;IACtD,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,eAAe,CAAgC;IAEvD,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,qBAAqB,CAAqC;IAClE,OAAO,CAAC,mBAAmB,CAA6B;IACxD,wFAAwF;IACxF,OAAO,CAAC,aAAa,CAA0C;IAC/D,0FAA0F;IAC1F,OAAO,CAAC,MAAM,CAAS;IACvB,8EAA8E;IAC9E,OAAO,CAAC,UAAU,CAAS;IAE3B;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAuBhC;gBAEU,OAAO,EAAE,iBAAiB,EAAE,OAAO,GAAE,mCAAwC;IAKzF,oEAAoE;IACpE,IAAI,QAAQ,IAAI,MAAM,GAAG,IAAI,CAE5B;IAED;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IAqBhB;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,4BAA4B;IAWpC;;OAEG;IACH,IAAI,IAAI,MAAM,IAAI;IA8GlB,8BAA8B;IAC9B,mFAAmF;IACnF,OAAO,CAAC,mBAAmB,CAA6B;IAExD,MAAM,IAAI,IAAI;IAiDd;;;;;;;;;;OAUG;IACG,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAwKzD;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IAUjB;;;;;;;;;OASG;IACH,OAAO,CAAC,cAAc;YA+BR,6BAA6B;CAiE9C"}