@aparte/core 0.19.3 → 0.20.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 (139) hide show
  1. package/dist/client/aparte-client.d.ts +66 -95
  2. package/dist/client/aparte-client.d.ts.map +1 -1
  3. package/dist/client/stream-adapter.d.ts +7 -13
  4. package/dist/client/stream-adapter.d.ts.map +1 -1
  5. package/dist/client/wire-history.d.ts +4 -5
  6. package/dist/client/wire-history.d.ts.map +1 -1
  7. package/dist/components/bubble/aparte-chat-bubble.d.ts +88 -57
  8. package/dist/components/bubble/aparte-chat-bubble.d.ts.map +1 -1
  9. package/dist/components/chat/aparte-chat.d.ts +15 -13
  10. package/dist/components/chat/aparte-chat.d.ts.map +1 -1
  11. package/dist/components/chat/glide-gate.d.ts +13 -0
  12. package/dist/components/chat/glide-gate.d.ts.map +1 -0
  13. package/dist/components/composer/aparte-composer-action.d.ts +2 -2
  14. package/dist/components/composer/aparte-composer-add-attachment.d.ts +1 -1
  15. package/dist/components/composer/aparte-composer-input.d.ts +1 -5
  16. package/dist/components/composer/aparte-composer-input.d.ts.map +1 -1
  17. package/dist/components/composer/aparte-composer-send.d.ts +8 -10
  18. package/dist/components/composer/aparte-composer-send.d.ts.map +1 -1
  19. package/dist/components/composer/aparte-composer.d.ts +48 -80
  20. package/dist/components/composer/aparte-composer.d.ts.map +1 -1
  21. package/dist/components/context/aparte-context.d.ts +9 -4
  22. package/dist/components/context/aparte-context.d.ts.map +1 -1
  23. package/dist/components/conversation-list/aparte-conversation-list.d.ts +23 -13
  24. package/dist/components/conversation-list/aparte-conversation-list.d.ts.map +1 -1
  25. package/dist/components/elicitation/aparte-elicitation.d.ts +15 -22
  26. package/dist/components/elicitation/aparte-elicitation.d.ts.map +1 -1
  27. package/dist/components/scroll-rail/aparte-scroll-rail.d.ts +10 -11
  28. package/dist/components/scroll-rail/aparte-scroll-rail.d.ts.map +1 -1
  29. package/dist/components/sidebar/aparte-sidebar.d.ts +16 -3
  30. package/dist/components/sidebar/aparte-sidebar.d.ts.map +1 -1
  31. package/dist/components/split/aparte-split.d.ts +12 -3
  32. package/dist/components/split/aparte-split.d.ts.map +1 -1
  33. package/dist/components/status/aparte-chat-status.d.ts.map +1 -1
  34. package/dist/components/suggestions/aparte-suggestions.d.ts +6 -9
  35. package/dist/components/suggestions/aparte-suggestions.d.ts.map +1 -1
  36. package/dist/components/viewport/aparte-chat-viewport.d.ts +70 -70
  37. package/dist/components/viewport/aparte-chat-viewport.d.ts.map +1 -1
  38. package/dist/config/aparte-config.d.ts +87 -66
  39. package/dist/config/aparte-config.d.ts.map +1 -1
  40. package/dist/config/icon-provider.d.ts +19 -2
  41. package/dist/config/icon-provider.d.ts.map +1 -1
  42. package/dist/config/index.d.ts +1 -1
  43. package/dist/config/index.d.ts.map +1 -1
  44. package/dist/config/locale.d.ts +57 -89
  45. package/dist/config/locale.d.ts.map +1 -1
  46. package/dist/config/sanitize.d.ts.map +1 -1
  47. package/dist/conversations/conversation-controller.d.ts +18 -3
  48. package/dist/conversations/conversation-controller.d.ts.map +1 -1
  49. package/dist/conversations/conversation-manager.d.ts +3 -3
  50. package/dist/conversations/conversation-manager.d.ts.map +1 -1
  51. package/dist/custom-elements.json +13054 -12334
  52. package/dist/{dialog-triggers-ChnPFG9M.js → dialog-triggers-3Rk7PuZa.js} +444 -287
  53. package/dist/dialog-triggers-3Rk7PuZa.js.map +1 -0
  54. package/dist/elicitation/approval-panel.d.ts.map +1 -1
  55. package/dist/elicitation/index.d.ts +6 -1
  56. package/dist/elicitation/index.d.ts.map +1 -1
  57. package/dist/elicitation/panel.d.ts +11 -21
  58. package/dist/elicitation/panel.d.ts.map +1 -1
  59. package/dist/elicitation/types.d.ts +19 -27
  60. package/dist/elicitation/types.d.ts.map +1 -1
  61. package/dist/generated/element-attributes.d.ts +11 -5
  62. package/dist/generated/element-attributes.d.ts.map +1 -1
  63. package/dist/host/aparte-chat-host.d.ts +17 -32
  64. package/dist/host/aparte-chat-host.d.ts.map +1 -1
  65. package/dist/icons/extended.d.ts +1 -2
  66. package/dist/icons/extended.d.ts.map +1 -1
  67. package/dist/icons.d.ts +6 -8
  68. package/dist/icons.d.ts.map +1 -1
  69. package/dist/icons.js.map +1 -1
  70. package/dist/index.css +1 -1
  71. package/dist/index.d.ts +12 -9
  72. package/dist/index.d.ts.map +1 -1
  73. package/dist/index.js +682 -327
  74. package/dist/index.js.map +1 -1
  75. package/dist/index.node.d.ts +6 -3
  76. package/dist/index.node.d.ts.map +1 -1
  77. package/dist/index.node.js +2 -2
  78. package/dist/index.node.js.map +1 -1
  79. package/dist/interop/dialog-triggers.d.ts +2 -2
  80. package/dist/interop/element-props.d.ts +16 -27
  81. package/dist/interop/element-props.d.ts.map +1 -1
  82. package/dist/primitives/icon/aparte-icon.d.ts.map +1 -1
  83. package/dist/primitives/select/aparte-option.d.ts +3 -2
  84. package/dist/primitives/select/aparte-option.d.ts.map +1 -1
  85. package/dist/primitives/select/aparte-select.d.ts +24 -21
  86. package/dist/primitives/select/aparte-select.d.ts.map +1 -1
  87. package/dist/renderers/markdown-stream.d.ts.map +1 -1
  88. package/dist/renderers/segment-renderers.d.ts +11 -17
  89. package/dist/renderers/segment-renderers.d.ts.map +1 -1
  90. package/dist/renderers/segments/code.d.ts.map +1 -1
  91. package/dist/renderers/segments/error.d.ts.map +1 -1
  92. package/dist/renderers/segments/text.d.ts.map +1 -1
  93. package/dist/renderers/segments/tool-call.d.ts.map +1 -1
  94. package/dist/runtime/message-repository.d.ts +8 -15
  95. package/dist/runtime/message-repository.d.ts.map +1 -1
  96. package/dist/transport/backend-handler.d.ts +4 -6
  97. package/dist/transport/backend-handler.d.ts.map +1 -1
  98. package/dist/transport/backend-transport.d.ts +14 -0
  99. package/dist/transport/backend-transport.d.ts.map +1 -1
  100. package/dist/transport/types.d.ts +7 -10
  101. package/dist/transport/types.d.ts.map +1 -1
  102. package/dist/types/chat.d.ts +10 -18
  103. package/dist/types/chat.d.ts.map +1 -1
  104. package/dist/types/element-attributes.d.ts +6 -12
  105. package/dist/types/element-attributes.d.ts.map +1 -1
  106. package/dist/types/element-map.d.ts +6 -19
  107. package/dist/types/element-map.d.ts.map +1 -1
  108. package/dist/types/event-map.d.ts +11 -17
  109. package/dist/types/event-map.d.ts.map +1 -1
  110. package/dist/types/events.d.ts +5 -14
  111. package/dist/types/events.d.ts.map +1 -1
  112. package/dist/types/index.d.ts +2 -2
  113. package/dist/types/index.d.ts.map +1 -1
  114. package/dist/types/model-provider.d.ts +7 -9
  115. package/dist/types/model-provider.d.ts.map +1 -1
  116. package/dist/types/segments.d.ts +21 -13
  117. package/dist/types/segments.d.ts.map +1 -1
  118. package/dist/types/tools.d.ts +20 -22
  119. package/dist/types/tools.d.ts.map +1 -1
  120. package/dist/utils/copy-text.d.ts +1 -2
  121. package/dist/utils/copy-text.d.ts.map +1 -1
  122. package/dist/utils/css-escape.d.ts +1 -1
  123. package/dist/utils/escape.d.ts +4 -19
  124. package/dist/utils/escape.d.ts.map +1 -1
  125. package/dist/utils/files-to-attachments.d.ts +2 -2
  126. package/dist/utils/fold-text.d.ts +13 -0
  127. package/dist/utils/fold-text.d.ts.map +1 -0
  128. package/dist/utils/is-awaiting-reply.d.ts +2 -5
  129. package/dist/utils/is-awaiting-reply.d.ts.map +1 -1
  130. package/dist/utils/presence.d.ts +5 -5
  131. package/dist/utils/segments.d.ts +54 -78
  132. package/dist/utils/segments.d.ts.map +1 -1
  133. package/dist/utils/tool-input.d.ts +1 -1
  134. package/dist/utils/tool-input.d.ts.map +1 -1
  135. package/dist/utils/transcript.d.ts +2 -2
  136. package/dist/utils/uuid.d.ts +0 -11
  137. package/dist/utils/uuid.d.ts.map +1 -1
  138. package/package.json +29 -3
  139. package/dist/dialog-triggers-ChnPFG9M.js.map +0 -1
@@ -7,7 +7,7 @@
7
7
  * "Invisible but Flexible": Works out-of-the-box with sensible defaults,
8
8
  * but allows complete customization via dependency injection.
9
9
  */
10
- import { AparteIconProvider, AparteIconName } from './icon-provider.js';
10
+ import { AparteIconProvider, AparteCoreIconName } from './icon-provider.js';
11
11
  import { AparteAvatarProvider } from './avatar-provider.js';
12
12
  import { AparteLocale, AparteLocaleExtensions } from './locale.js';
13
13
  import { AparteAction, AparteActionZone } from './action-provider.js';
@@ -19,7 +19,7 @@ import type { AparteSiblingNavRenderer } from './sibling-nav-renderer.js';
19
19
  import type { AparteBubbleShellRenderer } from './bubble-shell-renderer.js';
20
20
  import type { AparteAIProvider, AparteAIModel, AparteModelConfig } from '../types/model-provider.js';
21
21
  import type { AparteTransport } from '../transport/index.js';
22
- import type { AparteTool, AparteToolHandler, AparteToolRenderer, AparteToolSummary, AparteToolCall, AparteApprovalPolicy, AparteApprovalRuling } from '../types/tools.js';
22
+ import type { AparteTool, AparteToolHandler, AparteToolRenderer, AparteToolSummary, AparteToolInputFormatter, AparteToolCall, AparteApprovalPolicy, AparteApprovalRuling } from '../types/tools.js';
23
23
  import type { AparteSegmentDefaults } from '../types/segments.js';
24
24
  import type { AparteStreamBlock } from '../types/stream-blocks.js';
25
25
  import type { AparteBubbleActionsConfig, AparteBubbleActionName, AparteHostHandlersConfig } from '../types/models.js';
@@ -36,9 +36,8 @@ export type AparteLocaleProvider = AparteLocale;
36
36
  * A bare key, or the same `{ apiKey, endpoint }` record the transport reads
37
37
  * (`readAuth`) and `fetchModels` accepts. The record is not a nicety: a consumer
38
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.
39
+ * an LM Studio box — configures it as `endpoint`, and `refreshProviderModels` needs
40
+ * that endpoint to fetch the model list from that host rather than the vendor's.
42
41
  */
43
42
  export type AparteKeyProvider = (providerId: string) => string | Record<string, string> | undefined | null | Promise<string | Record<string, string> | undefined | null>;
44
43
  /**
@@ -100,6 +99,7 @@ export interface AparteStreamingMarkdownRenderer {
100
99
  * is registered the chat falls back to the one-shot `AparteMarkdownProvider`.
101
100
  */
102
101
  export type AparteStreamingMarkdownProvider = (target: HTMLElement) => AparteStreamingMarkdownRenderer;
102
+ export declare function renderingVersionOf(cfg: AparteConfig): number;
103
103
  /**
104
104
  * Everything a chat is configured with: the providers and the selected model, the
105
105
  * transport and the keys, the tools, the renderers and render hooks, the Markdown and
@@ -112,10 +112,11 @@ export type AparteStreamingMarkdownProvider = (target: HTMLElement) => AparteStr
112
112
  * A change to what is drawn — providers, the model, the locale, icons, avatars, actions,
113
113
  * renderers — reaches the components already on the page: {@link AparteConfig.subscribe | subscribe()} listeners are
114
114
  * called, and `aparte-config-change` is dispatched on `window` with the instance that changed.
115
- * The Markdown, streaming-Markdown and highlight providers, the sanitizer, segment defaults,
116
- * tools, tool renderers and summaries apply to what is drawn after they are set, so set them
117
- * before the chat renders; the transport, the keys and the system prompt apply from the next
118
- * request.
115
+ * The Markdown, streaming-Markdown and highlight providers are among them: a message drawn
116
+ * before they were set is drawn again with them (one still streaming, once it ends). The
117
+ * sanitizer, segment defaults, tools, tool renderers and summaries apply to what is drawn
118
+ * after they are set, so set them before the chat renders; the transport, the keys and the
119
+ * system prompt apply from the next request.
119
120
  */
120
121
  export declare class AparteConfig {
121
122
  private _markdownProvider?;
@@ -144,15 +145,13 @@ export declare class AparteConfig {
144
145
  /**
145
146
  * What `refreshProviderModels()` last brought back, per provider.
146
147
  *
147
- * Without it, `getCurrentModel()` read `provider.getModels()` only — the
148
- * SYNCHRONOUS, hand-declared list, which every preset of
149
- * `@aparte/provider-openai-compat` leaves empty because a compat endpoint's
150
- * list is fetched at runtime. So the current model resolved to `undefined`
151
- * for the documented primary path, and everything that reads a capability off
152
- * it silently got nothing: `AparteClient._toolsForCurrentModel()` gates tools
153
- * on `capabilities.includes('function_calling')`, so NO tool was ever sent to
154
- * the model. A registered tool, an approval gate, `<aparte-elicitation>` — all
155
- * dead, with the model answering, correctly, that it had been given no tools.
148
+ * `getCurrentModel()` reads it beside `provider.getModels()`, the SYNCHRONOUS,
149
+ * hand-declared list, which every preset of `@aparte/provider-openai-compat`
150
+ * leaves empty because a compat endpoint's list is fetched at runtime. Without
151
+ * the fetched list the current model resolves to `undefined`, and its declared
152
+ * capabilities are unknown: `AparteClient._toolsForCurrentModel()` still sends the
153
+ * tools then, and it is the fetched list that lets a model which declares no
154
+ * `function_calling` be honoured.
156
155
  */
157
156
  private _fetchedModels;
158
157
  private _modelConfig;
@@ -176,21 +175,20 @@ export declare class AparteConfig {
176
175
  *
177
176
  * One request reaches the presenter at a time — not because a presenter could not
178
177
  * cope, but because the COMPOSER cannot: it has one panel slot, and a second
179
- * request used to clobber the first's DOM. The previous protection lived in the
180
- * default presenter, which answered the second request `cancel` on the spot; that
181
- * is a refusal invented for a question nobody was ever shown, the same class of
182
- * lie as telling the model a stopped turn was refused. WAITING is the honest
183
- * behaviour.
178
+ * request would clobber the first's DOM. A second request WAITS: answering it
179
+ * `cancel` on the spot would be a refusal invented for a question nobody was ever
180
+ * shown.
184
181
  *
185
182
  * Here rather than in the presenter because this is the only place that sees
186
- * EVERY request whatever raised it — a tool handler, an app's own button, and
187
- * (soon) the tool-approval gate. A custom presenter registered by a consumer gets
188
- * the same protection for free, which it previously had none of.
183
+ * EVERY request whatever raised it — a tool handler, an app's own button, the
184
+ * tool-approval gate. A custom presenter registered by a consumer gets the same
185
+ * protection for free.
189
186
  */
190
187
  private _elicitationQueue;
191
188
  private _tools;
192
189
  private _toolRenderers;
193
190
  private _toolSummaries;
191
+ private _toolInputFormatters;
194
192
  /** Tagged blocks the stream parser recognises in the prose — see {@link registerStreamBlock}. */
195
193
  private _streamBlocks;
196
194
  private _segmentDefaults;
@@ -311,22 +309,33 @@ export declare class AparteConfig {
311
309
  */
312
310
  resolveSystemPrompt(): string | null;
313
311
  /**
314
- * Set a custom Icon provider (e.g., Lucide, FontAwesome, Material)
312
+ * Set a custom Icon provider (e.g., Lucide, FontAwesome, Material). It replaces the
313
+ * whole set, icons added with `registerIcons` included; a name it leaves out keeps
314
+ * core's drawing.
315
315
  * @param provider Object implementing AparteIconProvider interface
316
316
  */
317
317
  setIconProvider(provider: AparteIconProvider): void;
318
+ /**
319
+ * Add icons to the set, or redraw some of it, keeping the others. A name core does not
320
+ * draw is welcome: an action's `icon`, `<aparte-composer-action icon>` and
321
+ * `<aparte-icon name>` then find it. To type such a name, merge it into
322
+ * `AparteIconProvider`: `declare module '@aparte/core' { interface AparteIconProvider { share?: () => string } }`.
323
+ *
324
+ * @example
325
+ * aparteGlobalConfig.registerIcons({ share: () => '<svg class="aparte-icon" viewBox="0 0 24 24">…</svg>' });
326
+ * aparteGlobalConfig.registerAction({ id: 'share', icon: 'share', label: 'Share', zones: ['bubble'] });
327
+ */
328
+ registerIcons(icons: Record<string, () => string>): void;
318
329
  /**
319
330
  * The icon set as a **complete** provider: every name resolves, falling back
320
331
  * to `APARTE_DEFAULT_ICON_FALLBACKS` for anything the registered provider doesn't
321
332
  * implement. Callers (bubble action bar, composer controls) can therefore
322
333
  * invoke `icons.copy()` unconditionally.
323
334
  *
324
- * It used to hand back the registered provider verbatim, so a provider that
325
- * implemented a subset — which `getIcon()` has always supported, and which
326
- * the type now states — crashed every other icon with
327
- * "icons.retry is not a function".
335
+ * A registered provider may implement only a subset of the names; the missing ones
336
+ * fall back, so `icons.retry()` never throws "is not a function".
328
337
  */
329
- getIconProvider(): Required<AparteIconProvider>;
338
+ getIconProvider(): Required<Pick<AparteIconProvider, AparteCoreIconName>> & AparteIconProvider;
330
339
  /**
331
340
  * Set a custom avatar renderer. Lets framework consumers (Angular,
332
341
  * React, Vue, …) mount live components in place of the default
@@ -415,10 +424,13 @@ export declare class AparteConfig {
415
424
  */
416
425
  extendLocale(translations: Partial<AparteLocale> & AparteLocaleExtensions): void;
417
426
  /**
418
- * Get icon HTML string by name
419
- * Falls back to textual representation if no provider is set
427
+ * An icon's markup by name: the registered drawing, else core's. A name neither holds
428
+ * returns `undefined` — core's names always resolve, and a name merged into
429
+ * `AparteIconProvider` stays possibly `undefined`: only the configs it was registered on
430
+ * draw it.
420
431
  */
421
- getIcon(name: AparteIconName): string;
432
+ getIcon(name: AparteCoreIconName): string;
433
+ getIcon(name: string): string | undefined;
422
434
  /**
423
435
  * Set a custom Key provider (e.g., AparteVault override)
424
436
  */
@@ -499,11 +511,14 @@ export declare class AparteConfig {
499
511
  /**
500
512
  * Register a model preference provider for agnostic persistence.
501
513
  * The host app decides how/where to store the selected provider & model.
514
+ * `load` answers `{ provider, model }` — the names {@link AparteModelPreference} reads —
515
+ * and {@link AparteConfig.restoreModelPreference | restoreModelPreference()} applies it.
502
516
  * @example
503
517
  * aparteGlobalConfig.setModelPreferenceProvider({
504
- * save: (p, m) => localStorage.setItem('model', JSON.stringify({p, m})),
505
- * load: () => JSON.parse(localStorage.getItem('model') ?? 'null')
518
+ * save: (provider, model) => localStorage.setItem('model', JSON.stringify({ provider, model })),
519
+ * load: () => JSON.parse(localStorage.getItem('model') ?? 'null'),
506
520
  * });
521
+ * aparteGlobalConfig.restoreModelPreference();
507
522
  */
508
523
  setModelPreferenceProvider(provider: AparteModelPreferenceProvider): void;
509
524
  /**
@@ -538,7 +553,7 @@ export declare class AparteConfig {
538
553
  */
539
554
  ruleOnToolCall(call: AparteToolCall): AparteApprovalRuling;
540
555
  /**
541
- * Restore previously saved model preference via the registered provider.
556
+ * Restore the saved model preference via the registered provider.
542
557
  * Should be called once at app startup, before any component mounts.
543
558
  * No-op if no provider is registered or nothing was saved. The saved selection is
544
559
  * applied without being saved again.
@@ -567,25 +582,17 @@ export declare class AparteConfig {
567
582
  /**
568
583
  * Elicitation policy: whether a choice offers a free-text "Other…" escape.
569
584
  *
570
- * This is the HOST's decision, not the model's. `ask_user` used to carry an
571
- * `allow_other` field in the schema it hands the model, which meant the model
572
- * decided your UX — and a small model fills a field it does not understand: one
573
- * sent two questions with `allow_other: true` and no options at all, so the
574
- * panel rendered a radio list whose only entry was "Other…", twice.
575
- *
576
- * Every serious implementation of this pattern makes the escape hatch a property
577
- * of the surface rather than of the request. Default `true`, which is what the
578
- * panel did before, so nothing a user sees changes — only who gets to say so.
579
- * A direct `requestUserInput` caller can still set `allowOther` per field; that
580
- * is the app talking, and it wins.
585
+ * This is the HOST's decision, not the model's: the `ask_user` schema handed to the
586
+ * model carries no `allow_other` field, because a small model fills a field it does
587
+ * not understand (a question with `allow_other: true` and no options renders a radio
588
+ * list whose only entry is "Other…"). Default `true`. A direct `requestUserInput`
589
+ * caller can still set `allowOther` per field; that is the app talking, and it wins.
581
590
  *
582
591
  * `layout` decides how a form of SEVERAL questions is presented.
583
592
  * `'stepped'` (default) asks them one at a time with a chip per question;
584
- * `'stacked'` puts them all in the panel at once. Stacked was the only shape,
585
- * inherited unexamined from MCP elicitation — which describes a FORM for
586
- * collecting structured data, not two different questions asked mid-conversation.
587
- * No product asks a person two questions by stacking them in one box; it is kept
588
- * as an option because the form case is real, not because it was the right default.
593
+ * `'stacked'` puts them all in the panel at once — the shape of an MCP elicitation
594
+ * FORM collecting structured data, which is why it stays an option, but not the
595
+ * right default for two different questions asked mid-conversation.
589
596
  *
590
597
  * `answerOnClick` decides how a question asked ON ITS OWN with a single choice — an
591
598
  * `enum` without `multiple` or a `default`, a `boolean` without a `default` — is
@@ -707,8 +714,8 @@ export declare class AparteConfig {
707
714
  * is a string, so a consumer's own segment type is covered by the same call.
708
715
  *
709
716
  * The problem it solves: a consumer streaming a reply does not CONSTRUCT its
710
- * segments — the parser does — so there was no hook at all for "reasoning blocks
711
- * open in my app". Per-segment fields only reach segments you build yourself.
717
+ * segments — the parser does — so a per-segment field cannot express "reasoning
718
+ * blocks open in my app": per-segment fields only reach segments you build yourself.
712
719
  *
713
720
  * Applied where identity is stamped (`utils/segments.ts`), so it covers every
714
721
  * path a segment can arrive by — the parser, `addSegment`, and the segments
@@ -739,8 +746,8 @@ export declare class AparteConfig {
739
746
  * Say what a call targets, in the default row, after the tool's name.
740
747
  *
741
748
  * The default row names the tool and keeps its arguments behind a disclosure, so a
742
- * reader saw that a file was read, not which one. Replacing the row with
743
- * `registerToolRenderer` for that one line meant re-implementing its six states,
749
+ * reader sees that a file was read, not which one. Replacing the row with
750
+ * `registerToolRenderer` for that one line would mean re-implementing its six states,
744
751
  * the spinner, the disclosure and the relabel contract. This keeps all of them and
745
752
  * adds the line. A tool with its own renderer draws its own row, so its summary is
746
753
  * never read.
@@ -760,6 +767,21 @@ export declare class AparteConfig {
760
767
  unregisterToolSummary(toolName: string): void;
761
768
  /** Get the summary for a specific tool name. Returns undefined if none registered. */
762
769
  getToolSummary(toolName: string): AparteToolSummary | undefined;
770
+ /**
771
+ * Show a tool's arguments as a person reads them, in the approval panel and in the
772
+ * default tool row's disclosure — one formatter for both. Without one, both show the
773
+ * JSON the model sent.
774
+ *
775
+ * @example
776
+ * // Approve "write_file notes.md (2 KB)" rather than a JSON object.
777
+ * aparteGlobalConfig.registerToolInputFormatter('write_file', (input) =>
778
+ * `${String(input['path'] ?? '')} (${Math.ceil(String(input['content'] ?? '').length / 1024)} KB)`);
779
+ */
780
+ registerToolInputFormatter(toolName: string, formatter: AparteToolInputFormatter): void;
781
+ /** Unregister a tool's input formatter. */
782
+ unregisterToolInputFormatter(toolName: string): void;
783
+ /** Get the input formatter for a tool name. Returns undefined if none registered. */
784
+ getToolInputFormatter(toolName: string): AparteToolInputFormatter | undefined;
763
785
  /**
764
786
  * Teach the stream parser a tagged block: `<tag attr="…">…</tag>` in the model's
765
787
  * prose becomes the segment `toSegment` builds, streamed delta by delta.
@@ -826,7 +848,7 @@ export declare class AparteConfig {
826
848
  * the same chat is the right one — found by comparing chat boundaries rather than by
827
849
  * `contains`, because the presenter is a sibling of the transcript, not an ancestor
828
850
  * of it. With no target, no match, or no boundary to compare, the top of the stack
829
- * is the answer, which is exactly the old single-slot behaviour.
851
+ * is the answer.
830
852
  */
831
853
  private _presenterFor;
832
854
  /**
@@ -852,11 +874,10 @@ export declare class AparteConfig {
852
874
  *
853
875
  * The wait exists so a second question cannot take the panel away from the one on
854
876
  * screen — a property of ONE panel, and `_present` routes by target, so a chat is
855
- * the right unit. It used to be one queue for the whole config: two chats on the
856
- * global config shared it, and an approval waiting for an answer in the first (which
857
- * is all an approval does) held the second's question behind it for ever, with
858
- * nothing on screen to answer. Requests that name no chat keep sharing the `null`
859
- * queue, because they all reach the same presenter — the top of the stack.
877
+ * the right unit. One queue for the whole config would let an approval waiting in
878
+ * the first chat hold the second chat's question behind it for ever. Requests that
879
+ * name no chat share the `null` queue, because they all reach the same presenter —
880
+ * the top of the stack.
860
881
  */
861
882
  private _elicitationQueueKey;
862
883
  /** Hand ONE request to the presenter. Called only from the queue. */
@@ -885,8 +906,8 @@ export declare const aparteGlobalConfig: AparteConfig;
885
906
  * Detail payload for `aparte-config-change`, dispatched on `window` whenever any
886
907
  * provider, locale, action or model setting changes.
887
908
  *
888
- * Five core components listen for it — the widest listener footprint of any event
889
- * that had no declared type. `config` is what makes per-instance config work: a
909
+ * Every core component that draws config-derived text or chrome listens for it. `config` is
910
+ * what makes per-instance config work: a
890
911
  * component resolving to a different instance compares it and skips the rebuild
891
912
  * instead of every chat on the page reacting to every config's change.
892
913
  *
@@ -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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"}
@@ -1,3 +1,18 @@
1
+ /**
2
+ * Icon Provider Interface
3
+ *
4
+ * Defines the contract for icon plugins.
5
+ * Returns HTML strings: SVG, <i> tags, emojis, or any valid HTML.
6
+ *
7
+ * @example
8
+ * // Register an icon provider (e.g. a FontAwesome bridge)
9
+ * aparteGlobalConfig.setIconProvider({
10
+ * copy: () => '<i class="fas fa-copy"></i>',
11
+ * check: () => '<i class="fas fa-check"></i>',
12
+ * // ...
13
+ * });
14
+ */
15
+ import { APARTE_ICON_GLYPHS } from '../icons/glyphs.js';
1
16
  export interface AparteIconProvider {
2
17
  /** Copy button icon */
3
18
  copy?: () => string;
@@ -62,8 +77,10 @@ export interface AparteIconProvider {
62
77
  /** Paused — the tool row's state while a person is asked to decide */
63
78
  pause?: () => string;
64
79
  }
65
- /** Icon names available in the provider */
80
+ /** Icon names available in the provider — core's, and any merged into `AparteIconProvider`. */
66
81
  export type AparteIconName = keyof AparteIconProvider;
82
+ /** The names core draws itself. A name merged into `AparteIconProvider` is not one of them. */
83
+ export type AparteCoreIconName = keyof typeof APARTE_ICON_GLYPHS;
67
84
  /**
68
85
  * The default drawing for every name, assembled from `icons/glyphs.ts`.
69
86
  *
@@ -73,5 +90,5 @@ export type AparteIconName = keyof AparteIconProvider;
73
90
  * renders would still ship to everybody. Extra glyphs are individual exports a consumer
74
91
  * imports by name, never members of this record.
75
92
  */
76
- export declare const APARTE_DEFAULT_ICON_FALLBACKS: Record<AparteIconName, string>;
93
+ export declare const APARTE_DEFAULT_ICON_FALLBACKS: Record<AparteCoreIconName, string>;
77
94
  //# sourceMappingURL=icon-provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon-provider.d.ts","sourceRoot":"","sources":["../../src/config/icon-provider.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,kBAAkB;IAM/B,uBAAuB;IACvB,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,wBAAwB;IACxB,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;IACvB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IACtB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;IACxB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;IACxB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IACzB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;IAC1B,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;IACvB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IACzB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;IAC1B,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;IAC1B,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;IACvB,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IACzB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;IACxB,iCAAiC;IACjC,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,yBAAyB;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;CACxB;AAED,2CAA2C;AAC3C,MAAM,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC;AAEtD;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAsB,CAAC"}
1
+ {"version":3,"file":"icon-provider.d.ts","sourceRoot":"","sources":["../../src/config/icon-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,WAAW,kBAAkB;IAM/B,uBAAuB;IACvB,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,wBAAwB;IACxB,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;IACvB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IACtB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;IACxB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;IACxB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IACzB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;IAC1B,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;IACvB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IACzB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;IAC1B,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;IAC1B,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;IACvB,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IACzB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;IACxB,iCAAiC;IACjC,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,yBAAyB;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;CACxB;AAED,+FAA+F;AAC/F,MAAM,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC;AAEtD,+FAA+F;AAC/F,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAEjE;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAsB,CAAC"}
@@ -5,7 +5,7 @@ export type { AparteConfigAware } from './config-context.js';
5
5
  export type { AparteConfigChangeEventDetail, AparteMarkdownProvider, AparteStreamingMarkdownProvider, AparteStreamingMarkdownRenderer, AparteHighlightProvider, AparteSystemPromptVarsProvider, AparteModelPreference, AparteModelPreferenceProvider } from './aparte-config.js';
6
6
  export type { AparteSanitizer } from './sanitize.js';
7
7
  export { defaultSanitizer, isSafeUrl } from './sanitize.js';
8
- export type { AparteIconProvider, AparteIconName } from './icon-provider.js';
8
+ export type { AparteIconProvider, AparteIconName, AparteCoreIconName } from './icon-provider.js';
9
9
  export { APARTE_DEFAULT_ICON_FALLBACKS } from './icon-provider.js';
10
10
  export type { AparteAvatarProvider } from './avatar-provider.js';
11
11
  export type { AparteStatusRenderer } from './status-renderer.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AACnI,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKhI,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACpF,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACjR,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC5D,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,YAAY,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACzE,YAAY,EACR,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,GAChC,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,YAAY,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AACnI,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKhI,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACpF,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACjR,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC5D,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,YAAY,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACzE,YAAY,EACR,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,GAChC,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,YAAY,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}