@aparte/core 0.7.1 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -6
- package/dist/client/aparte-client.d.ts +113 -47
- package/dist/client/aparte-client.d.ts.map +1 -1
- package/dist/client/lifecycle-events.d.ts +55 -0
- package/dist/client/lifecycle-events.d.ts.map +1 -0
- package/dist/client/stream-adapter.d.ts +11 -5
- package/dist/client/stream-adapter.d.ts.map +1 -1
- package/dist/client/xml-artifact-feed.d.ts +76 -0
- package/dist/client/xml-artifact-feed.d.ts.map +1 -0
- package/dist/components/bubble/aparte-chat-bubble.d.ts +35 -8
- package/dist/components/bubble/aparte-chat-bubble.d.ts.map +1 -1
- package/dist/components/bubble/bubble-sync.d.ts.map +1 -1
- package/dist/components/chat/aparte-chat.d.ts +0 -6
- package/dist/components/chat/aparte-chat.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-action.d.ts +18 -3
- package/dist/components/composer/aparte-composer-action.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-add-attachment.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-attachments.d.ts +1 -1
- package/dist/components/composer/aparte-composer-attachments.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-cancel.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-input.d.ts +0 -2
- package/dist/components/composer/aparte-composer-input.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-send.d.ts +5 -0
- package/dist/components/composer/aparte-composer-send.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-toolbar.d.ts +4 -0
- package/dist/components/composer/aparte-composer-toolbar.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer.d.ts +64 -6
- package/dist/components/composer/aparte-composer.d.ts.map +1 -1
- package/dist/components/composer/index.d.ts +1 -1
- package/dist/components/composer/index.d.ts.map +1 -1
- package/dist/components/conversation-list/aparte-conversation-list.d.ts +2 -5
- package/dist/components/conversation-list/aparte-conversation-list.d.ts.map +1 -1
- package/dist/components/conversation-list/index.d.ts +1 -1
- package/dist/components/conversation-list/index.d.ts.map +1 -1
- package/dist/components/elicitation/aparte-elicitation.d.ts +63 -3
- package/dist/components/elicitation/aparte-elicitation.d.ts.map +1 -1
- package/dist/components/index.d.ts +2 -2
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/status/aparte-chat-status.d.ts +8 -6
- package/dist/components/status/aparte-chat-status.d.ts.map +1 -1
- package/dist/components/viewport/aparte-chat-viewport.d.ts +45 -9
- package/dist/components/viewport/aparte-chat-viewport.d.ts.map +1 -1
- package/dist/config/action-provider.d.ts +4 -4
- package/dist/config/aparte-config.d.ts +124 -41
- package/dist/config/aparte-config.d.ts.map +1 -1
- package/dist/config/attachment-renderer.d.ts +1 -1
- package/dist/config/avatar-provider.d.ts +1 -1
- package/dist/config/config-context.d.ts +66 -11
- package/dist/config/config-context.d.ts.map +1 -1
- package/dist/config/elicitation-field-renderer.d.ts +73 -0
- package/dist/config/elicitation-field-renderer.d.ts.map +1 -0
- package/dist/config/error-renderer.d.ts +1 -1
- package/dist/config/icon-provider.d.ts +2 -2
- package/dist/config/icon-provider.d.ts.map +1 -1
- package/dist/config/index.d.ts +7 -5
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/locale.d.ts +43 -2
- package/dist/config/locale.d.ts.map +1 -1
- package/dist/config/sanitize.d.ts +1 -7
- package/dist/config/sanitize.d.ts.map +1 -1
- package/dist/config/sibling-nav-renderer.d.ts +1 -1
- package/dist/config/skeleton-provider.d.ts +2 -2
- package/dist/config/skeleton-provider.d.ts.map +1 -1
- package/dist/config/status-renderer.d.ts +1 -1
- package/dist/conversations/conversation-controller.d.ts +19 -5
- package/dist/conversations/conversation-controller.d.ts.map +1 -1
- package/dist/conversations/conversation-manager.d.ts +2 -2
- package/dist/conversations/conversation-manager.d.ts.map +1 -1
- package/dist/conversations/index.d.ts +1 -1
- package/dist/conversations/index.d.ts.map +1 -1
- package/dist/conversations/types.d.ts +1 -1
- package/dist/custom-elements.json +8418 -6295
- package/dist/elicitation/index.d.ts +1 -1
- package/dist/elicitation/panel.d.ts +32 -0
- package/dist/elicitation/panel.d.ts.map +1 -1
- package/dist/elicitation/types.d.ts +29 -2
- package/dist/elicitation/types.d.ts.map +1 -1
- package/dist/host/aparte-chat-host.d.ts +3 -3
- package/dist/host/aparte-chat-host.d.ts.map +1 -1
- package/dist/{index-Dn7TH14G.js → index-hQQljwfX.js} +1890 -1222
- package/dist/index-hQQljwfX.js.map +1 -0
- package/dist/index.css +299 -21
- package/dist/index.d.ts +22 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +485 -210
- package/dist/index.js.map +1 -1
- package/dist/index.node.d.ts +23 -13
- package/dist/index.node.d.ts.map +1 -1
- package/dist/index.node.js +56 -46
- package/dist/index.node.js.map +1 -1
- package/dist/interop/element-props.d.ts +1 -1
- package/dist/interop/element-props.d.ts.map +1 -1
- package/dist/parsers/aparte-stream-parser.d.ts +25 -0
- package/dist/parsers/aparte-stream-parser.d.ts.map +1 -1
- package/dist/primitives/index.d.ts +1 -1
- package/dist/primitives/index.d.ts.map +1 -1
- package/dist/primitives/select/aparte-optgroup.d.ts +15 -4
- package/dist/primitives/select/aparte-optgroup.d.ts.map +1 -1
- package/dist/primitives/select/aparte-option.d.ts +0 -5
- package/dist/primitives/select/aparte-option.d.ts.map +1 -1
- package/dist/primitives/select/aparte-select.d.ts +17 -5
- package/dist/primitives/select/aparte-select.d.ts.map +1 -1
- package/dist/primitives/select/index.d.ts +1 -1
- package/dist/primitives/select/index.d.ts.map +1 -1
- package/dist/renderers/markdown-stream.d.ts +42 -0
- package/dist/renderers/markdown-stream.d.ts.map +1 -0
- package/dist/renderers/segment-renderers.d.ts +20 -14
- package/dist/renderers/segment-renderers.d.ts.map +1 -1
- package/dist/renderers/segments/artifact/binary-file.d.ts +45 -0
- package/dist/renderers/segments/artifact/binary-file.d.ts.map +1 -0
- package/dist/renderers/segments/artifact/card.d.ts +3 -0
- package/dist/renderers/segments/artifact/card.d.ts.map +1 -0
- package/dist/renderers/segments/artifact/preview-document.d.ts +27 -0
- package/dist/renderers/segments/artifact/preview-document.d.ts.map +1 -0
- package/dist/renderers/segments/artifact/shared.d.ts +12 -0
- package/dist/renderers/segments/artifact/shared.d.ts.map +1 -0
- package/dist/renderers/segments/code.d.ts +3 -0
- package/dist/renderers/segments/code.d.ts.map +1 -0
- package/dist/renderers/segments/error.d.ts +3 -0
- package/dist/renderers/segments/error.d.ts.map +1 -0
- package/dist/renderers/segments/file-tree.d.ts +3 -0
- package/dist/renderers/segments/file-tree.d.ts.map +1 -0
- package/dist/renderers/segments/pipeline-waiting.d.ts +3 -0
- package/dist/renderers/segments/pipeline-waiting.d.ts.map +1 -0
- package/dist/renderers/segments/progress.d.ts +3 -0
- package/dist/renderers/segments/progress.d.ts.map +1 -0
- package/dist/renderers/segments/terminal.d.ts +3 -0
- package/dist/renderers/segments/terminal.d.ts.map +1 -0
- package/dist/renderers/segments/text.d.ts +10 -0
- package/dist/renderers/segments/text.d.ts.map +1 -0
- package/dist/renderers/segments/thinking.d.ts +3 -0
- package/dist/renderers/segments/thinking.d.ts.map +1 -0
- package/dist/renderers/segments/tool-call.d.ts +3 -0
- package/dist/renderers/segments/tool-call.d.ts.map +1 -0
- package/dist/runtime/message-repository.d.ts +3 -3
- package/dist/runtime/message-repository.d.ts.map +1 -1
- package/dist/transport/backend-handler.d.ts +19 -7
- package/dist/transport/backend-handler.d.ts.map +1 -1
- package/dist/transport/backend-transport.d.ts +1 -1
- package/dist/transport/backend-transport.d.ts.map +1 -1
- package/dist/transport/direct-transport.d.ts +4 -4
- package/dist/transport/direct-transport.d.ts.map +1 -1
- package/dist/transport/index.d.ts +2 -2
- package/dist/transport/index.d.ts.map +1 -1
- package/dist/transport/types.d.ts +3 -3
- package/dist/types/element-map.d.ts +69 -0
- package/dist/types/element-map.d.ts.map +1 -0
- package/dist/types/event-map.d.ts +84 -23
- package/dist/types/event-map.d.ts.map +1 -1
- package/dist/types/events.d.ts +212 -64
- package/dist/types/events.d.ts.map +1 -1
- package/dist/types/index.d.ts +4 -5
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/model-provider.d.ts +100 -54
- package/dist/types/model-provider.d.ts.map +1 -1
- package/dist/types/models.d.ts +29 -7
- package/dist/types/models.d.ts.map +1 -1
- package/dist/types/segments.d.ts +33 -8
- package/dist/types/segments.d.ts.map +1 -1
- package/dist/types/theming.d.ts +25 -37
- package/dist/types/theming.d.ts.map +1 -1
- package/dist/types/tools.d.ts +60 -15
- package/dist/types/tools.d.ts.map +1 -1
- package/dist/utils/escape.d.ts +46 -0
- package/dist/utils/escape.d.ts.map +1 -0
- package/dist/utils/files-to-attachments.d.ts +18 -1
- package/dist/utils/files-to-attachments.d.ts.map +1 -1
- package/dist/utils/segments.d.ts +174 -0
- package/dist/utils/segments.d.ts.map +1 -0
- package/dist/utils/uuid.d.ts +26 -0
- package/dist/utils/uuid.d.ts.map +1 -0
- package/package.json +3 -5
- package/dist/index-Dn7TH14G.js.map +0 -1
- package/dist/types/providers.d.ts +0 -93
- package/dist/types/providers.d.ts.map +0 -1
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import type { AparteComposer } from './aparte-composer.js';
|
|
1
2
|
/**
|
|
2
3
|
* @element aparte-composer-action
|
|
3
4
|
*
|
|
4
5
|
* Generic action button primitive for <aparte-composer>.
|
|
5
6
|
* The consumer declares it directly in markup — no global registration needed.
|
|
6
7
|
*
|
|
7
|
-
* @attr icon - Icon key for
|
|
8
|
+
* @attr icon - Icon key for aparteGlobalConfig.getIcon(), or raw SVG/HTML starting with `<`
|
|
8
9
|
* @attr label - Accessible label (also used as tooltip)
|
|
9
10
|
* @attr disabled - Disables the button
|
|
10
11
|
*
|
|
@@ -31,7 +32,21 @@ export declare class AparteComposerAction extends HTMLElement {
|
|
|
31
32
|
private _connectToRoot;
|
|
32
33
|
private _handleClick;
|
|
33
34
|
private _resolveIcon;
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Detail payload for `aparte-action-click`.
|
|
38
|
+
*
|
|
39
|
+
* `<aparte-composer-action>` is a publicly exported element whose only purpose is
|
|
40
|
+
* to emit this event, and nothing in core listens for it — so the app IS the
|
|
41
|
+
* consumer, and it had no type to read `e.detail` with. The shape was already
|
|
42
|
+
* published in prose in the generated API reference; this makes it compile.
|
|
43
|
+
*
|
|
44
|
+
* @event aparte-action-click
|
|
45
|
+
*/
|
|
46
|
+
export interface AparteActionClickEventDetail {
|
|
47
|
+
/** The `action-id` attribute of the button that was clicked, or `''`. */
|
|
48
|
+
actionId: string;
|
|
49
|
+
/** The owning composer, or `null` when the button is used outside one. */
|
|
50
|
+
composer: AparteComposer | null;
|
|
36
51
|
}
|
|
37
52
|
//# sourceMappingURL=aparte-composer-action.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-composer-action.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-action.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aparte-composer-action.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-action.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,SAAQ,WAAW;IACjD,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,aAAa,CAAsB;IAG3C,OAAO,CAAC,QAAQ,CAAgC;IAEhD,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;IAM5B,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAgBvF,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,OAAO;IAsBf,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;CAOvB;AAMD;;;;;;;;;GASG;AACH,MAAM,WAAW,4BAA4B;IACzC,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;CACnC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-composer-add-attachment.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-add-attachment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aparte-composer-add-attachment.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-add-attachment.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,2BAA4B,SAAQ,WAAW;IACxD,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,aAAa,CAAsB;IAG3C,OAAO,CAAC,QAAQ,CAAgC;IAEhD,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED,iBAAiB,IAAI,IAAI;IAMzB,oBAAoB,IAAI,IAAI;IAO5B,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAQvF,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,OAAO;IAmBf,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,cAAc;IA8BtB,OAAO,CAAC,YAAY;CAGvB"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Image files show the actual picture; other files show an extension badge.
|
|
6
6
|
* The filename and a remove (✗) button surface on hover. Clicking an image asks
|
|
7
7
|
* the app to open it full-size (`aparte-attachment-preview`) — only when the app
|
|
8
|
-
* declared `attachmentPreview` via `
|
|
8
|
+
* declared `attachmentPreview` via `aparteGlobalConfig.setHostHandlers()`.
|
|
9
9
|
* Automatically hidden when there are no attachments.
|
|
10
10
|
* Must be a descendant of <aparte-composer>.
|
|
11
11
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-composer-attachments.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-attachments.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aparte-composer-attachments.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-attachments.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,yBAA0B,SAAQ,WAAW;IACtD,OAAO,CAAC,aAAa,CAAsB;IAC3C,+EAA+E;IAC/E,OAAO,CAAC,WAAW,CAAgB;IAEnC,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;IAQ5B,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,cAAc;IAYtB,kEAAkE;IAClE,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,OAAO;IA0Df,0EAA0E;IAC1E,OAAO,CAAC,IAAI;IAKZ,OAAO,CAAC,OAAO;CAGlB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-composer-cancel.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-cancel.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aparte-composer-cancel.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-cancel.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,oBAAqB,SAAQ,WAAW;IACjD,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,aAAa,CAAsB;IAG3C,OAAO,CAAC,QAAQ,CAAgC;IAEhD,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;IAQ5B,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,OAAO;IAiBf,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,YAAY;CAGvB"}
|
|
@@ -67,7 +67,5 @@ export declare class AparteComposerInput extends HTMLElement {
|
|
|
67
67
|
private _updatePlaceholder;
|
|
68
68
|
private _updatePlaceholderVisibility;
|
|
69
69
|
private _updateDisabled;
|
|
70
|
-
/** Escape a value before it lands in a double-quoted HTML attribute. */
|
|
71
|
-
private _escapeAttr;
|
|
72
70
|
}
|
|
73
71
|
//# sourceMappingURL=aparte-composer-input.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-composer-input.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aparte-composer-input.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-input.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;IAChD,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,UAAU,CAAO;IACzB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,aAAa,CAAsB;IAG3C,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,QAAQ,CAAgC;IAEhD,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED,iBAAiB,IAAI,IAAI;IAMzB,oBAAoB,IAAI,IAAI;IAU5B,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IASvF,QAAQ,IAAI,MAAM;IAkBlB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ7B,KAAK,IAAI,IAAI;IAQJ,KAAK,IAAI,IAAI;IACb,IAAI,IAAI,IAAI;IAErB,2EAA2E;IAC3E,QAAQ,IAAI,IAAI;IAchB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,OAAO;IA8Bf,OAAO,CAAC,cAAc;IAwBtB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,cAAc;IAoCtB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAmBpB,OAAO,CAAC,aAAa;IAmBrB;;;;;;;OAOG;IACH,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,4BAA4B;IAIpC,OAAO,CAAC,eAAe;CAO1B"}
|
|
@@ -29,6 +29,11 @@ export declare class AparteComposerSend extends HTMLElement {
|
|
|
29
29
|
private _handleClick;
|
|
30
30
|
private _syncState;
|
|
31
31
|
private _syncStreamingState;
|
|
32
|
+
/**
|
|
33
|
+
* The icon for submitting an ANSWER, which is not the same act as sending a
|
|
34
|
+
* message — one button, two meanings, and it has to say which one it is.
|
|
35
|
+
*/
|
|
36
|
+
private _getSubmitIcon;
|
|
32
37
|
private _getSendIcon;
|
|
33
38
|
private _getStopIcon;
|
|
34
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-composer-send.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-send.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aparte-composer-send.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-send.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IAC/C,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,aAAa,CAAsB;IAG3C,OAAO,CAAC,QAAQ,CAAgC;IAEhD,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;IAQ5B,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,OAAO;IAmBf,OAAO,CAAC,cAAc;IAwDtB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,mBAAmB;IAa3B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,YAAY;CAGvB"}
|
|
@@ -24,6 +24,10 @@
|
|
|
24
24
|
* <aparte-composer-send></aparte-composer-send>
|
|
25
25
|
* </div>
|
|
26
26
|
*
|
|
27
|
+
* <!-- `aparte-model-selector` is NOT part of core: importing
|
|
28
|
+
* `@aparte/plugin-model-selector` is what defines it. Until then the tag
|
|
29
|
+
* renders empty and inert with no error, and upgrades by itself when the
|
|
30
|
+
* definition arrives. Any element of your own works here too. -->
|
|
27
31
|
* <aparte-composer-toolbar>
|
|
28
32
|
* <my-mode-picker></my-mode-picker>
|
|
29
33
|
* <aparte-model-selector style="margin-inline-start:auto"></aparte-model-selector>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-composer-toolbar.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-toolbar.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"aparte-composer-toolbar.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer-toolbar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;IAClD,OAAO,CAAC,SAAS,CAAiC;IAElD,iBAAiB,IAAI,IAAI;IAQzB,oBAAoB,IAAI,IAAI;IAK5B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,UAAU;CAKrB"}
|
|
@@ -19,6 +19,7 @@ export interface AparteComposerEventMap {
|
|
|
19
19
|
'panel-change': {
|
|
20
20
|
active: boolean;
|
|
21
21
|
submitEnabled: boolean;
|
|
22
|
+
mode: 'advance' | 'submit';
|
|
22
23
|
};
|
|
23
24
|
}
|
|
24
25
|
export type AparteComposerEventType = keyof AparteComposerEventMap;
|
|
@@ -62,14 +63,27 @@ export declare class AparteComposer extends HTMLElement {
|
|
|
62
63
|
private _attachments;
|
|
63
64
|
private _listeners;
|
|
64
65
|
private _panelActive;
|
|
66
|
+
/** What the send button means while a panel is up — see `showPanel`. */
|
|
67
|
+
private _panelMode;
|
|
65
68
|
private _panelSubmitEnabled;
|
|
66
69
|
private _panelOnSubmit;
|
|
67
70
|
private static readonly _STATE_EVENTS;
|
|
68
71
|
private _onMessageStart;
|
|
69
72
|
private _onMessageDone;
|
|
70
73
|
/** Config governing THIS composer (nearest instance boundary, else global). */
|
|
71
|
-
|
|
72
|
-
|
|
74
|
+
/**
|
|
75
|
+
* Resolved LIVE, not cached at connect.
|
|
76
|
+
*
|
|
77
|
+
* A wrapper runs `AparteChatHost.bind()` — which calls `attachConfig` — from its
|
|
78
|
+
* POST-mount hook, so this element connects BEFORE the boundary exists. Caching
|
|
79
|
+
* here latched the global config forever: an instance `config` carrying an RTL
|
|
80
|
+
* locale flipped the transcript and not the composer, and the
|
|
81
|
+
* `requireModelSelection` gate was read off the wrong object. `aparte-chat-bubble`
|
|
82
|
+
* has always resolved live, and its JSDoc names this exact race.
|
|
83
|
+
*/
|
|
84
|
+
private get _cfg();
|
|
85
|
+
/** Only OUR config: a change on another chat's instance must not touch us. */
|
|
86
|
+
private _onConfigChangeEvent;
|
|
73
87
|
/** True while `requireModelSelection` is on AND no model is selected — blocks send. */
|
|
74
88
|
private _modelGated;
|
|
75
89
|
private _onConfigChange;
|
|
@@ -122,15 +136,41 @@ export declare class AparteComposer extends HTMLElement {
|
|
|
122
136
|
addAttachments(files: FileList | File[]): void;
|
|
123
137
|
removeAttachment(file: File): void;
|
|
124
138
|
clearAttachments(): void;
|
|
125
|
-
/**
|
|
139
|
+
/**
|
|
140
|
+
* Inject a panel into the composer. The send button calls `onSubmit` when clicked.
|
|
141
|
+
*
|
|
142
|
+
* While a panel is up, the composer is answering a QUESTION, not composing a
|
|
143
|
+
* message — so the affordances that lead nowhere go away with the text input:
|
|
144
|
+
* the attachment picker above all, which stayed clickable while the user was
|
|
145
|
+
* being asked something ("on voyait encore l'icône de upload", reported from a
|
|
146
|
+
* real session). Ratified decision #8: an affordance nothing can honour is not
|
|
147
|
+
* rendered.
|
|
148
|
+
*
|
|
149
|
+
* What STAYS, deliberately: the attachments strip, because pending attachments
|
|
150
|
+
* are the user's state and not an action to offer — hiding them would look like
|
|
151
|
+
* losing them; and the toolbar, because switching model still does something.
|
|
152
|
+
*
|
|
153
|
+
* Declared with an attribute + CSS rather than the inline `style.display` this
|
|
154
|
+
* used to set on a child: an attribute is themeable, is visible to a consumer's
|
|
155
|
+
* own rules, and does not clobber a `display` the consumer had set (the restore
|
|
156
|
+
* wrote `''`, not the previous value).
|
|
157
|
+
*/
|
|
126
158
|
showPanel(panel: HTMLElement, options?: {
|
|
127
159
|
submitEnabled?: boolean;
|
|
128
160
|
onSubmit?: () => void;
|
|
161
|
+
mode?: 'advance' | 'submit';
|
|
129
162
|
}): void;
|
|
130
|
-
/** Remove the panel and restore the
|
|
163
|
+
/** Remove the panel and restore the composer's own controls. */
|
|
131
164
|
hidePanel(): void;
|
|
132
|
-
/**
|
|
133
|
-
|
|
165
|
+
/**
|
|
166
|
+
* Update the send button's state while a panel is active.
|
|
167
|
+
*
|
|
168
|
+
* `mode` moves with it because both change on the same event — answering the
|
|
169
|
+
* question you are on can enable the button AND turn it from "advance" into
|
|
170
|
+
* "submit" (when it was the last one), and two separate calls would flash a
|
|
171
|
+
* wrong icon between them.
|
|
172
|
+
*/
|
|
173
|
+
setPanelSubmitEnabled(enabled: boolean, mode?: 'advance' | 'submit'): void;
|
|
134
174
|
get panelActive(): boolean;
|
|
135
175
|
/**
|
|
136
176
|
* Recompute the model gate from the resolved config. When
|
|
@@ -157,6 +197,24 @@ export declare class AparteComposer extends HTMLElement {
|
|
|
157
197
|
* (single-instance broadcast) or the target ids match (multi-chat page).
|
|
158
198
|
* Without this filter, streaming in one chat flips every composer's state. */
|
|
159
199
|
private _isForThisComposer;
|
|
200
|
+
/**
|
|
201
|
+
* Which chat this composer belongs to: its `target` attribute, or the id of the
|
|
202
|
+
* chat host above it.
|
|
203
|
+
*
|
|
204
|
+
* All four wrappers set `target` themselves, so the attribute alone identified a
|
|
205
|
+
* composer there. In RAW core — the documented quick start, where the markup is
|
|
206
|
+
* hand-written — nothing sets it, so `!this.targetId` was true and this composer
|
|
207
|
+
* accepted every chat's lifecycle events: on a two-chat page, one chat's Stop
|
|
208
|
+
* tore down the other's open elicitation panel while its tool call kept waiting,
|
|
209
|
+
* i.e. the question vanished and the turn hung.
|
|
210
|
+
*
|
|
211
|
+
* Found by a two-chat test written for the elicitation presenter, which is the
|
|
212
|
+
* only reason it surfaced: raw core with two chats is a shape nothing exercised.
|
|
213
|
+
* The hosts matched are the ones `aparte-chat-bubble._resolveTargetId()` matches,
|
|
214
|
+
* for the reason written there — Angular's wrapper root IS `<aparte-chat>`, the
|
|
215
|
+
* other three render a `[data-aparte-chat]` div.
|
|
216
|
+
*/
|
|
217
|
+
private _ownTargetId;
|
|
160
218
|
private _handleMessageStart;
|
|
161
219
|
private _handleMessageDone;
|
|
162
220
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-composer.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,sBAAsB;IACnC,cAAc,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,kBAAkB,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3C,iBAAiB,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IACzC,oBAAoB,EAAE;QAAE,WAAW,EAAE,IAAI,EAAE,CAAA;KAAE,CAAC;IAC9C,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,IAAI,EAAE,CAAA;KAAE,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAChC,cAAc,EAAE;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"aparte-composer.d.ts","sourceRoot":"","sources":["../../../src/components/composer/aparte-composer.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,6 @@ export { AparteComposerSend } from './aparte-composer-send.js';
|
|
|
5
5
|
export { AparteComposerCancel } from './aparte-composer-cancel.js';
|
|
6
6
|
export { AparteComposerAttachments } from './aparte-composer-attachments.js';
|
|
7
7
|
export { AparteComposerAddAttachment } from './aparte-composer-add-attachment.js';
|
|
8
|
-
export { AparteComposerAction } from './aparte-composer-action.js';
|
|
8
|
+
export { AparteComposerAction, type AparteActionClickEventDetail } from './aparte-composer-action.js';
|
|
9
9
|
export { AparteComposerToolbar } from './aparte-composer-toolbar.js';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/composer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EACR,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACnB,+BAA+B,GAClC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/composer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EACR,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACnB,+BAA+B,GAClC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,KAAK,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AACtG,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* @fires {CustomEvent<AparteConversationSelectDetail>} aparte-select-conversation
|
|
9
9
|
* @fires {CustomEvent<AparteConversationDeleteDetail>} aparte-delete-conversation
|
|
10
10
|
* @fires {CustomEvent<AparteConversationArchiveDetail>} aparte-archive-conversation
|
|
11
|
-
* @fires {CustomEvent<
|
|
11
|
+
* @fires {CustomEvent<AparteConversationArchiveDetail>} aparte-unarchive-conversation
|
|
12
12
|
*/
|
|
13
13
|
export interface AparteConversationListItem {
|
|
14
14
|
id: string;
|
|
@@ -27,13 +27,10 @@ export interface AparteConversationDeleteDetail {
|
|
|
27
27
|
export interface AparteConversationArchiveDetail {
|
|
28
28
|
id: string;
|
|
29
29
|
}
|
|
30
|
-
export interface AparteConversationUnarchiveDetail {
|
|
31
|
-
id: string;
|
|
32
|
-
}
|
|
33
30
|
/**
|
|
34
31
|
* @example
|
|
35
32
|
* // The host owns the data: set the `conversations` property, listen for the intent.
|
|
36
|
-
* const list = document.querySelector('aparte-conversation-list')
|
|
33
|
+
* const list = document.querySelector('aparte-conversation-list')!;
|
|
37
34
|
* list.conversations = [
|
|
38
35
|
* { id: 'c1', title: 'Deploy checklist', updatedAt: Date.now() },
|
|
39
36
|
* { id: 'c2', title: 'Old thread', updatedAt: 0, archivedAt: Date.now() },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-conversation-list.d.ts","sourceRoot":"","sources":["../../../src/components/conversation-list/aparte-conversation-list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"aparte-conversation-list.d.ts","sourceRoot":"","sources":["../../../src/components/conversation-list/aparte-conversation-list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,MAAM,WAAW,0BAA0B;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;GACD;IACC,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,8BAA8B;IAC3C,EAAE,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,8BAA8B;IAC3C,EAAE,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,+BAA+B;IAC5C,EAAE,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,sBAAuB,SAAQ,WAAW;IACnD,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,SAAS,CAAuB;IAExC,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAID,iBAAiB,IAAI,IAAI;IAWzB,oBAAoB,IAAI,IAAI;IAI5B,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAQ9F;;;;OAIG;IACH,OAAO,CAAC,eAAe,CAIrB;IAIF,sEAAsE;IACtE,IAAI,aAAa,CAAC,KAAK,EAAE,0BAA0B,EAAE,EAGpD;IAED,IAAI,aAAa,IAAI,0BAA0B,EAAE,CAEhD;IAID,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,WAAW;IAiDnB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,QAAQ,CAkCd;IAEF,OAAO,CAAC,UAAU,CAOhB;IAEF,sEAAsE;IACtE,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,IAAI;CAQf"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { AparteConversationList, type AparteConversationListItem, type AparteConversationSelectDetail, type AparteConversationDeleteDetail, } from './aparte-conversation-list.js';
|
|
1
|
+
export { AparteConversationList, type AparteConversationListItem, type AparteConversationSelectDetail, type AparteConversationDeleteDetail, type AparteConversationArchiveDetail, } from './aparte-conversation-list.js';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/conversation-list/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,sBAAsB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/conversation-list/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,sBAAsB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACnC,KAAK,+BAA+B,GACvC,MAAM,+BAA+B,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Registers itself as the presenter for the config governing its subtree
|
|
5
5
|
* (`resolveConfig(this)`), so `requestUserInput()` from a tool handler is routed
|
|
6
6
|
* here WITHOUT any window events — the typed presenter contract replaces the
|
|
7
|
-
* stringly-typed `aparte-ask-
|
|
7
|
+
* stringly-typed `aparte-ask-user-*` events that drifted in Phase 1.
|
|
8
8
|
*
|
|
9
9
|
* On a request it builds the schema-appropriate panel (enum / boolean / string /
|
|
10
10
|
* object) and mounts it inside the nearest `<aparte-composer>` via its
|
|
@@ -13,9 +13,15 @@
|
|
|
13
13
|
* - decline — the inline "Skip" affordance
|
|
14
14
|
* - cancel — the assistant turn was stopped/errored while pending
|
|
15
15
|
*
|
|
16
|
+
* Its CSS ships in `@aparte/core/styles.css` like every other component — it used
|
|
17
|
+
* to inject its own <style> from here, which made it the one surface that could not
|
|
18
|
+
* be themed and whose variables were missing from the generated CSS reference.
|
|
19
|
+
*
|
|
16
20
|
* Place anywhere inside the chat (it renders nothing itself):
|
|
17
21
|
* <aparte-elicitation></aparte-elicitation>
|
|
18
22
|
*/
|
|
23
|
+
import { type AparteConfigAware } from '../../config/config-context.js';
|
|
24
|
+
import type { AparteConfig } from '../../config/aparte-config.js';
|
|
19
25
|
/**
|
|
20
26
|
* @example
|
|
21
27
|
* <!-- Renders nothing by itself: it registers as the presenter for its subtree, so a
|
|
@@ -31,14 +37,68 @@
|
|
|
31
37
|
* </aparte-composer>
|
|
32
38
|
* </aparte-chat>
|
|
33
39
|
*/
|
|
34
|
-
export declare class AparteElicitation extends HTMLElement {
|
|
40
|
+
export declare class AparteElicitation extends HTMLElement implements AparteConfigAware {
|
|
35
41
|
private _pending;
|
|
42
|
+
/**
|
|
43
|
+
* A turn ended — cancel the open question only if it was OUR turn.
|
|
44
|
+
*
|
|
45
|
+
* These two listeners sit on `window` and had no instance filter at all, so a
|
|
46
|
+
* Stop (or an error) in one chat cancelled the question a DIFFERENT chat was
|
|
47
|
+
* waiting on — and that chat's model was told the user had refused a question
|
|
48
|
+
* the user was still looking at. Same defect as the `compact()` handler that
|
|
49
|
+
* emptied both chats, which its four sibling handlers in `AparteClient` already
|
|
50
|
+
* guarded against.
|
|
51
|
+
*
|
|
52
|
+
* The leniency rule is the composer's, deliberately: an event with no
|
|
53
|
+
* `targetId` is for everyone (a single-chat app never sets one), and a chat we
|
|
54
|
+
* cannot identify accepts everything rather than becoming deaf. Only a
|
|
55
|
+
* MISMATCH is ignored.
|
|
56
|
+
*/
|
|
36
57
|
private _onTurnEnd;
|
|
37
58
|
connectedCallback(): void;
|
|
59
|
+
/**
|
|
60
|
+
* The boundary above us appeared, changed, or went away — move the
|
|
61
|
+
* registration with it.
|
|
62
|
+
*
|
|
63
|
+
* `connectedCallback` alone is not enough and cannot be: registering is a
|
|
64
|
+
* WRITE, and under all four wrappers it happens before `attachConfig` runs, so
|
|
65
|
+
* it lands on the global singleton. `requestUserInput()` then resolves the
|
|
66
|
+
* instance config, finds nothing, and answers the model `cancel` — the model
|
|
67
|
+
* hears the user refuse a question the user never saw.
|
|
68
|
+
*
|
|
69
|
+
* See {@link AparteConfigAware}.
|
|
70
|
+
*/
|
|
71
|
+
aparteConfigChanged(next: AparteConfig, previous: AparteConfig): void;
|
|
38
72
|
disconnectedCallback(): void;
|
|
39
73
|
private _present;
|
|
40
74
|
private _cancelPending;
|
|
75
|
+
/**
|
|
76
|
+
* The host id of the chat whose composer holds the open panel.
|
|
77
|
+
*
|
|
78
|
+
* Walks up from the composer rather than from `this`, because the panel lives in
|
|
79
|
+
* the composer and that is what the turn belongs to. Matches the hosts
|
|
80
|
+
* `aparte-chat-bubble._resolveTargetId()` matches, for the reason written there:
|
|
81
|
+
* Angular's wrapper root IS the `<aparte-chat>` element, while the plain-root
|
|
82
|
+
* wrappers render a `[data-aparte-chat]` div instead, so matching only the tag
|
|
83
|
+
* resolves `undefined` on three wrappers out of four.
|
|
84
|
+
*/
|
|
85
|
+
private _pendingTargetId;
|
|
86
|
+
/**
|
|
87
|
+
* The composer to present in: the nearest one in an ancestor subtree, and
|
|
88
|
+
* nothing else.
|
|
89
|
+
*
|
|
90
|
+
* There used to be a `document.querySelector('aparte-composer')` fallback, which
|
|
91
|
+
* is the "first chat on the page" bug this repo has now fixed in four other
|
|
92
|
+
* places: on a page with two chats, an elicitation that could not find its own
|
|
93
|
+
* composer mounted its panel in the OTHER chat's — so one conversation's question
|
|
94
|
+
* appeared under the other conversation, and answering it resolved a tool call
|
|
95
|
+
* belonging to a chat the user was not looking at.
|
|
96
|
+
*
|
|
97
|
+
* Returning `null` instead resolves `cancel`, which is honest: nothing was
|
|
98
|
+
* shown, so nothing was answered. The warning names the fix, because this is a
|
|
99
|
+
* setup mistake and only the developer can correct it — the guide's own example
|
|
100
|
+
* puts `<aparte-elicitation>` inside `<aparte-chat>`.
|
|
101
|
+
*/
|
|
41
102
|
private _getComposer;
|
|
42
|
-
private _injectStyles;
|
|
43
103
|
}
|
|
44
104
|
//# sourceMappingURL=aparte-elicitation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-elicitation.d.ts","sourceRoot":"","sources":["../../../src/components/elicitation/aparte-elicitation.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"aparte-elicitation.d.ts","sourceRoot":"","sources":["../../../src/components/elicitation/aparte-elicitation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAgC,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACtG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAqBlE;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAkB,SAAQ,WAAY,YAAW,iBAAiB;IAC3E,OAAO,CAAC,QAAQ,CAAwB;IACxC;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,UAAU,CAKhB;IAEF,iBAAiB,IAAI,IAAI;IAWzB;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI;IAKrE,oBAAoB,IAAI,IAAI;IAQ5B,OAAO,CAAC,QAAQ,CA6Dd;IAEF,OAAO,CAAC,cAAc;IAItB;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,YAAY;CAuBvB"}
|
|
@@ -4,7 +4,7 @@ export type { SyncableBubble } from './bubble/index.js';
|
|
|
4
4
|
export { AparteChatStatus } from './status/index.js';
|
|
5
5
|
export { AparteChatViewport } from './viewport/index.js';
|
|
6
6
|
export { AparteComposer, AparteComposerInput, AparteComposerSend, AparteComposerCancel, AparteComposerAttachments, AparteComposerAddAttachment, AparteComposerAction, AparteComposerToolbar } from './composer/index.js';
|
|
7
|
-
export type { AparteComposerEventMap, AparteComposerEventType, AparteComposerState, AparteComposerChangeEventDetail } from './composer/index.js';
|
|
7
|
+
export type { AparteComposerEventMap, AparteComposerEventType, AparteComposerState, AparteComposerChangeEventDetail, AparteActionClickEventDetail } from './composer/index.js';
|
|
8
8
|
export { AparteConversationList } from './conversation-list/index.js';
|
|
9
|
-
export type { AparteConversationListItem, AparteConversationSelectDetail, AparteConversationDeleteDetail } from './conversation-list/index.js';
|
|
9
|
+
export type { AparteConversationListItem, AparteConversationSelectDetail, AparteConversationDeleteDetail, AparteConversationArchiveDetail } from './conversation-list/index.js';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAChF,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACzN,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAChF,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACzN,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAG/K,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,YAAY,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -6,7 +6,14 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class AparteChatStatus extends HTMLElement {
|
|
8
8
|
static get observedAttributes(): string[];
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Resolved LIVE, not cached. Caching it at connect made this element
|
|
11
|
+
* permanently deaf to its own instance: `_onConfigChange` filters on
|
|
12
|
+
* `detail.config !== this._cfg`, so once `_cfg` had latched the global config no
|
|
13
|
+
* change for the real instance ever matched, and the filter meant to isolate
|
|
14
|
+
* chats became the thing that silenced one.
|
|
15
|
+
*/
|
|
16
|
+
private get _cfg();
|
|
10
17
|
constructor();
|
|
11
18
|
connectedCallback(): void;
|
|
12
19
|
disconnectedCallback(): void;
|
|
@@ -32,9 +39,4 @@ export declare class AparteChatStatus extends HTMLElement {
|
|
|
32
39
|
private _updateVisibility;
|
|
33
40
|
private _updateText;
|
|
34
41
|
}
|
|
35
|
-
declare global {
|
|
36
|
-
interface HTMLElementTagNameMap {
|
|
37
|
-
'aparte-chat-status': AparteChatStatus;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
42
|
//# sourceMappingURL=aparte-chat-status.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-chat-status.d.ts","sourceRoot":"","sources":["../../../src/components/status/aparte-chat-status.ts"],"names":[],"mappings":"AAaA;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED,OAAO,
|
|
1
|
+
{"version":3,"file":"aparte-chat-status.d.ts","sourceRoot":"","sources":["../../../src/components/status/aparte-chat-status.ts"],"names":[],"mappings":"AAaA;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED;;;;;;OAMG;IACH,OAAO,KAAK,IAAI,GAEf;;IAMD,iBAAiB,IAAI,IAAI;IAWzB,oBAAoB,IAAI,IAAI;IAI5B,OAAO,CAAC,eAAe,CASrB;IAEF,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAa9F;;OAEG;IACH,IAAI,IAAI,IAAI;IAIZ;;OAEG;IACH,IAAI,IAAI,IAAI;IAIZ;;OAEG;IACH,MAAM,IAAI,IAAI;IAQd;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB,OAAO,CAAC,OAAO;IAoDf,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,WAAW;CASpB"}
|
|
@@ -16,7 +16,7 @@ import type { ExportedMessageRepository } from '../../runtime/message-repository
|
|
|
16
16
|
*
|
|
17
17
|
* @example
|
|
18
18
|
* // Three calls are a whole streamed turn.
|
|
19
|
-
* const viewport = document.querySelector('aparte-chat-viewport')
|
|
19
|
+
* const viewport = document.querySelector('aparte-chat-viewport')!;
|
|
20
20
|
*
|
|
21
21
|
* viewport.appendMessage({ id: 'a1', role: 'assistant', content: '', timestamp: Date.now() });
|
|
22
22
|
* for await (const chunk of tokens) viewport.appendToken('a1', chunk);
|
|
@@ -97,6 +97,8 @@ export declare class AparteChatViewport extends HTMLElement {
|
|
|
97
97
|
* framework wrapper's host element.
|
|
98
98
|
*/
|
|
99
99
|
private _activeMessageId;
|
|
100
|
+
/** The id of the message currently streaming, if any. */
|
|
101
|
+
private _streamingMessageId;
|
|
100
102
|
/**
|
|
101
103
|
* Add a new segment. Two calling conventions are accepted:
|
|
102
104
|
* - `addSegment(segment)` — AparteClient's 1-arg "operate on the current
|
|
@@ -134,7 +136,7 @@ export declare class AparteChatViewport extends HTMLElement {
|
|
|
134
136
|
/**
|
|
135
137
|
* Persist token usage on a message and propagate to the live bubble, which is
|
|
136
138
|
* what allows the info ("i") action to render — provided the app declared it
|
|
137
|
-
* with `
|
|
139
|
+
* with `aparteGlobalConfig.setBubbleActions({ info: true })`; it is off by default,
|
|
138
140
|
* since the popover it opens belongs to the app.
|
|
139
141
|
*/
|
|
140
142
|
setUsage(messageId: string, usage: AparteUsage): void;
|
|
@@ -142,6 +144,16 @@ export declare class AparteChatViewport extends HTMLElement {
|
|
|
142
144
|
* Mark a message as finished streaming
|
|
143
145
|
*/
|
|
144
146
|
completeMessage(messageId: string): void;
|
|
147
|
+
/**
|
|
148
|
+
* Close a finished message's still-open segments, one `updateSegment` each.
|
|
149
|
+
*
|
|
150
|
+
* Deliberately NOT a loop that writes `isStreaming` onto the objects: that path
|
|
151
|
+
* stamps the model and tells the bubble nothing, so a renderer never learns its
|
|
152
|
+
* segment settled — no `endedAt` in the rendered label, and no final Markdown
|
|
153
|
+
* flush either. Going through `updateSegment` reuses the one path that does
|
|
154
|
+
* both.
|
|
155
|
+
*/
|
|
156
|
+
private _settleSegments;
|
|
145
157
|
/**
|
|
146
158
|
* Atomic update for a message by ID
|
|
147
159
|
* Supports updating content, status, segments, and other metadata
|
|
@@ -239,7 +251,9 @@ export declare class AparteChatViewport extends HTMLElement {
|
|
|
239
251
|
* so desynchronises the framework's view tree from the live DOM and the
|
|
240
252
|
* next change-detection pass throws `NotFoundError` on insertBefore.
|
|
241
253
|
*/
|
|
242
|
-
clearAll(
|
|
254
|
+
clearAll(options?: {
|
|
255
|
+
revokeAttachments?: boolean;
|
|
256
|
+
}): void;
|
|
243
257
|
/**
|
|
244
258
|
* Clear all messages
|
|
245
259
|
* @deprecated Use clearAll() to also remove DOM bubbles
|
|
@@ -323,12 +337,39 @@ export declare class AparteChatViewport extends HTMLElement {
|
|
|
323
337
|
private _getSpacerHeight;
|
|
324
338
|
/** Set the spacer — host padding (framework, additive to base padding) or element height (core). */
|
|
325
339
|
private _setSpacerHeight;
|
|
340
|
+
private readonly _onScrollBtnClick;
|
|
341
|
+
private readonly _onBranchNavigate;
|
|
326
342
|
private _setupEventListeners;
|
|
327
343
|
private _setupObservers;
|
|
328
344
|
/** Is the scroll surface within `_scrollThreshold` of its bottom, right now? */
|
|
329
345
|
private _isAtBottom;
|
|
330
346
|
private _handleScroll;
|
|
331
347
|
private _scrollToBottom;
|
|
348
|
+
/**
|
|
349
|
+
* Confirm over the next few frames that we actually reached the bottom.
|
|
350
|
+
*
|
|
351
|
+
* One assignment is not enough, and the reason is measured rather than guessed.
|
|
352
|
+
* A timeline of a streamed turn on Safari (framework mode) recorded the content
|
|
353
|
+
* settling in TWO layout passes — 1118 → 1121 → 1152 px. `scrollTop =
|
|
354
|
+
* scrollHeight` ran against the middle one, clamped to that layout's max (603),
|
|
355
|
+
* and nothing ran afterwards: the last 31px never closed. Auto-follow stayed
|
|
356
|
+
* armed the whole time, so the component was not disarmed — it was SATISFIED.
|
|
357
|
+
* `_isAtBottom()` answers "yes" for any gap under `_scrollThreshold` (50), which
|
|
358
|
+
* is the right rule for keeping auto-follow armed and the wrong one as a
|
|
359
|
+
* definition of "anchored".
|
|
360
|
+
*
|
|
361
|
+
* Ruled out on the way here, so nobody pays for it twice: not a WebKit
|
|
362
|
+
* padding-accounting difference (a probe writing `scrollTop = 1e7` reached
|
|
363
|
+
* exactly `scrollHeight - clientHeight`), not a missing `characterData`
|
|
364
|
+
* mutation, and not a child resize a ResizeObserver could see.
|
|
365
|
+
*
|
|
366
|
+
* A BOUNDED retry, not one corrective frame: a single frame lands on the same
|
|
367
|
+
* stale layout and was measured leaving a wider gap than doing nothing. Bounded
|
|
368
|
+
* so it always terminates; re-reads `_isAutoScrollEnabled` every frame so a
|
|
369
|
+
* reader who scrolls away mid-settle is left alone; stops as soon as the gap is
|
|
370
|
+
* closed, so the common case costs one frame that does nothing.
|
|
371
|
+
*/
|
|
372
|
+
private _settleAtBottom;
|
|
332
373
|
private _smoothScrollToBottom;
|
|
333
374
|
private _prefersReducedMotion;
|
|
334
375
|
/**
|
|
@@ -370,7 +411,7 @@ export declare class AparteChatViewport extends HTMLElement {
|
|
|
370
411
|
* Cap the number of rendered bubbles in the DOM (perf ceiling only).
|
|
371
412
|
*
|
|
372
413
|
* Drops the oldest `<aparte-chat-bubble>` elements beyond `_maxRenderedBubbles`
|
|
373
|
-
* from the DOM. It **never** touches the
|
|
414
|
+
* from the DOM. It **never** touches the AparteMessageRepository — the conversation
|
|
374
415
|
* model and its persistence snapshot stay complete (retention/eviction is a
|
|
375
416
|
* consumer/persistence concern, not the viewport's). No-op when a framework
|
|
376
417
|
* owns the DOM.
|
|
@@ -379,9 +420,4 @@ export declare class AparteChatViewport extends HTMLElement {
|
|
|
379
420
|
private _warnMaxMessagesDeprecated;
|
|
380
421
|
private _cleanup;
|
|
381
422
|
}
|
|
382
|
-
declare global {
|
|
383
|
-
interface HTMLElementTagNameMap {
|
|
384
|
-
'aparte-chat-viewport': AparteChatViewport;
|
|
385
|
-
}
|
|
386
|
-
}
|
|
387
423
|
//# sourceMappingURL=aparte-chat-viewport.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aparte-chat-viewport.d.ts","sourceRoot":"","sources":["../../../src/components/viewport/aparte-chat-viewport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,oBAAoB,EACpB,aAAa,EAIb,WAAW,EACd,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"aparte-chat-viewport.d.ts","sourceRoot":"","sources":["../../../src/components/viewport/aparte-chat-viewport.ts"],"names":[],"mappings":"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"}
|