@aparte/core 0.16.7 → 0.16.8
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/dist/components/bubble/aparte-chat-bubble.d.ts +33 -18
- package/dist/components/bubble/aparte-chat-bubble.d.ts.map +1 -1
- package/dist/components/chat/aparte-chat.d.ts +32 -25
- package/dist/components/chat/aparte-chat.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-action.d.ts +1 -1
- package/dist/components/composer/aparte-composer-add-attachment.d.ts +1 -1
- package/dist/components/composer/aparte-composer-attachments.d.ts +1 -1
- package/dist/components/composer/aparte-composer-cancel.d.ts +2 -2
- package/dist/components/composer/aparte-composer-cancel.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer-input.d.ts +6 -6
- package/dist/components/composer/aparte-composer-send.d.ts +3 -3
- package/dist/components/composer/aparte-composer-send.d.ts.map +1 -1
- package/dist/components/composer/aparte-composer.d.ts +9 -2
- package/dist/components/composer/aparte-composer.d.ts.map +1 -1
- package/dist/components/context/aparte-context.d.ts +0 -1
- package/dist/components/context/aparte-context.d.ts.map +1 -1
- package/dist/components/conversation-list/aparte-conversation-list.d.ts +6 -6
- package/dist/components/elicitation/aparte-elicitation.d.ts +20 -18
- package/dist/components/elicitation/aparte-elicitation.d.ts.map +1 -1
- package/dist/components/scroll-rail/aparte-scroll-rail.d.ts +9 -2
- package/dist/components/scroll-rail/aparte-scroll-rail.d.ts.map +1 -1
- package/dist/components/sidebar/aparte-sidebar.d.ts +16 -2
- package/dist/components/sidebar/aparte-sidebar.d.ts.map +1 -1
- package/dist/components/split/aparte-split.d.ts +9 -4
- package/dist/components/split/aparte-split.d.ts.map +1 -1
- package/dist/components/status/aparte-chat-status.d.ts +3 -2
- package/dist/components/status/aparte-chat-status.d.ts.map +1 -1
- package/dist/components/viewport/aparte-chat-viewport.d.ts +27 -4
- package/dist/components/viewport/aparte-chat-viewport.d.ts.map +1 -1
- package/dist/config/icon-provider.d.ts +6 -0
- package/dist/config/icon-provider.d.ts.map +1 -1
- package/dist/config/locale.d.ts +3 -1
- package/dist/config/locale.d.ts.map +1 -1
- package/dist/custom-elements.json +11304 -11171
- package/dist/{dialog-triggers-Dw_DIlQ7.js → dialog-triggers-D8wNICrT.js} +24 -19
- package/dist/dialog-triggers-D8wNICrT.js.map +1 -0
- package/dist/generated/element-attributes.d.ts +13 -3
- package/dist/generated/element-attributes.d.ts.map +1 -1
- package/dist/{glyphs-DQTeOj4w.js → glyphs-C8z2oJUg.js} +36 -27
- package/dist/{glyphs-DQTeOj4w.js.map → glyphs-C8z2oJUg.js.map} +1 -1
- package/dist/icons/extended.d.ts +0 -6
- package/dist/icons/extended.d.ts.map +1 -1
- package/dist/icons/glyphs.d.ts +13 -4
- package/dist/icons/glyphs.d.ts.map +1 -1
- package/dist/icons.js +28 -31
- package/dist/icons.js.map +1 -1
- package/dist/index.css +831 -359
- package/dist/index.js +176 -54
- package/dist/index.js.map +1 -1
- package/dist/index.node.js +1 -1
- package/dist/primitives/icon/aparte-icon.d.ts +1 -1
- package/dist/primitives/progress-spinner/aparte-progress-spinner.d.ts +2 -3
- package/dist/primitives/progress-spinner/aparte-progress-spinner.d.ts.map +1 -1
- package/dist/primitives/select/aparte-optgroup.d.ts +1 -1
- package/dist/primitives/select/aparte-optgroup.d.ts.map +1 -1
- package/dist/primitives/select/aparte-option.d.ts +4 -4
- package/dist/primitives/select/aparte-option.d.ts.map +1 -1
- package/dist/primitives/select/aparte-select.d.ts +21 -12
- package/dist/primitives/select/aparte-select.d.ts.map +1 -1
- package/dist/renderers/segments/code.d.ts.map +1 -1
- package/dist/renderers/segments/error.d.ts.map +1 -1
- package/dist/renderers/segments/thinking.d.ts.map +1 -1
- package/dist/renderers/segments/tool-call.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist/dialog-triggers-Dw_DIlQ7.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as APARTE_ICON_GLYPHS } from "./glyphs-
|
|
1
|
+
import { A as APARTE_ICON_GLYPHS } from "./glyphs-C8z2oJUg.js";
|
|
2
2
|
import { runStreamAgent } from "@aparte/engine";
|
|
3
3
|
function contentToText(content) {
|
|
4
4
|
if (typeof content === "string") return content;
|
|
@@ -97,7 +97,7 @@ const APARTE_DEFAULT_LOCALE = {
|
|
|
97
97
|
elicitationAnswerLabel: "Your answer",
|
|
98
98
|
approvalInstructionPlaceholder: "Or tell it what to do instead…",
|
|
99
99
|
approvalAsk: "Run {tool}?",
|
|
100
|
-
approvalWaiting: "
|
|
100
|
+
approvalWaiting: "Waiting",
|
|
101
101
|
scrollToBottom: "Scroll to bottom",
|
|
102
102
|
suggestionsLabel: "Suggested prompts",
|
|
103
103
|
contextLabel: "Context window",
|
|
@@ -115,6 +115,7 @@ const APARTE_DEFAULT_LOCALE = {
|
|
|
115
115
|
removeAttachment: "Remove {name}",
|
|
116
116
|
selectSearchPlaceholder: "Search…",
|
|
117
117
|
selectSearchLabel: "Search options",
|
|
118
|
+
loading: "Loading…",
|
|
118
119
|
download: "Download",
|
|
119
120
|
previewPending: "Press Preview to run this artifact.",
|
|
120
121
|
sandboxError: "The sandbox failed during generation.",
|
|
@@ -2484,14 +2485,16 @@ const thinkingRenderer = {
|
|
|
2484
2485
|
* only part that is genuinely about reasoning rather than about disclosure.
|
|
2485
2486
|
* `.aparte-thinking-label` stays too: `relabel` below queries it.
|
|
2486
2487
|
*/
|
|
2487
|
-
render: (segment) => `<details class="aparte-segment aparte-segment-thinking aparte-accordion__item" data-segment-id="${escapeHtml(segment.id)}" ${segment.collapsed === false ? "open" : ""}><summary class="aparte-accordion__header aparte-thinking-header"><span class="aparte-thinking-label">${escapeHtml(segment.label || contextConfig().t("thinking"))}</span>${contextConfig().getIcon("expand")}</summary><div class="aparte-accordion__panel aparte-thinking-content">${contextConfig().renderMarkdown(segment.content)}</div></details>`,
|
|
2488
|
+
render: (segment) => `<details class="aparte-segment aparte-segment-thinking aparte-accordion__item" data-segment-id="${escapeHtml(segment.id)}" ${segment.collapsed === false ? "open" : ""}><summary class="aparte-accordion__header aparte-thinking-header"><span class="aparte-thinking-label">${escapeHtml(segment.label || contextConfig().t("thinking"))}</span><span class="aparte-accordion__icon">${contextConfig().getIcon("expand")}</span></summary><div class="aparte-accordion__panel aparte-thinking-content" role="region" tabindex="0" aria-label="${escapeAttr(segment.label || contextConfig().t("thinking"))}">${contextConfig().renderMarkdown(segment.content)}</div></details>`,
|
|
2488
2489
|
/**
|
|
2489
2490
|
* The default label is the only config-derived text here — and `segment.label`
|
|
2490
2491
|
* still wins, exactly as in `render`, because that string is the app's.
|
|
2491
2492
|
*/
|
|
2492
2493
|
relabel: (el2, segment) => {
|
|
2494
|
+
const text = segment.label || contextConfig().t("thinking");
|
|
2493
2495
|
const label = el2.querySelector(".aparte-thinking-label");
|
|
2494
|
-
if (label) label.textContent =
|
|
2496
|
+
if (label) label.textContent = text;
|
|
2497
|
+
el2.querySelector(".aparte-thinking-content")?.setAttribute("aria-label", text);
|
|
2495
2498
|
},
|
|
2496
2499
|
update: (el2, segment) => {
|
|
2497
2500
|
const contentEl = el2.querySelector(".aparte-thinking-content");
|
|
@@ -2585,6 +2588,10 @@ function streamHighlight(element, paneSelector, content, lang, segId) {
|
|
|
2585
2588
|
}).catch(() => {
|
|
2586
2589
|
});
|
|
2587
2590
|
}
|
|
2591
|
+
function nameButton(button, label) {
|
|
2592
|
+
button.setAttribute("aria-label", label);
|
|
2593
|
+
button.setAttribute("title", label);
|
|
2594
|
+
}
|
|
2588
2595
|
const codeRenderer = {
|
|
2589
2596
|
type: "code",
|
|
2590
2597
|
render: (segment) => `
|
|
@@ -2592,7 +2599,7 @@ const codeRenderer = {
|
|
|
2592
2599
|
<div class="aparte-code-header">
|
|
2593
2600
|
${segment.filename ? `<span class="aparte-code-filename">${escapeHtml(segment.filename)}</span>` : `<span class="aparte-code-header-filler"></span>`}
|
|
2594
2601
|
<span class="aparte-code-language">${escapeHtml(segment.language || "")}</span>
|
|
2595
|
-
<button class="aparte-btn aparte-btn--icon aparte-btn--sm aparte-code-copy" data-action="copy" title="${escapeAttr(contextConfig().t("copy"))}">
|
|
2602
|
+
<button type="button" class="aparte-btn aparte-btn--icon aparte-btn--sm aparte-code-copy" data-action="copy" aria-label="${escapeAttr(contextConfig().t("copy"))}" title="${escapeAttr(contextConfig().t("copy"))}">
|
|
2596
2603
|
${contextConfig().getIcon("copy")}
|
|
2597
2604
|
</button>
|
|
2598
2605
|
</div>
|
|
@@ -2605,7 +2612,7 @@ const codeRenderer = {
|
|
|
2605
2612
|
relabel: (element) => {
|
|
2606
2613
|
const copyBtn = element.querySelector(".aparte-code-copy");
|
|
2607
2614
|
if (!copyBtn || copyBtn.dataset.copied) return;
|
|
2608
|
-
copyBtn
|
|
2615
|
+
nameButton(copyBtn, contextConfig().t("copy"));
|
|
2609
2616
|
copyBtn.innerHTML = contextConfig().getIcon("copy");
|
|
2610
2617
|
},
|
|
2611
2618
|
setup: (element, segment) => {
|
|
@@ -2623,11 +2630,11 @@ const codeRenderer = {
|
|
|
2623
2630
|
void copyText(source).catch(() => {
|
|
2624
2631
|
});
|
|
2625
2632
|
copyBtn.innerHTML = contextConfig(copyBtn).getIcon("check");
|
|
2626
|
-
copyBtn
|
|
2633
|
+
nameButton(copyBtn, contextConfig(copyBtn).t("copied"));
|
|
2627
2634
|
copyBtn.dataset.copied = "1";
|
|
2628
2635
|
setTimeout(() => {
|
|
2629
2636
|
copyBtn.innerHTML = contextConfig(copyBtn).getIcon("copy");
|
|
2630
|
-
copyBtn
|
|
2637
|
+
nameButton(copyBtn, contextConfig(copyBtn).t("copy"));
|
|
2631
2638
|
delete copyBtn.dataset.copied;
|
|
2632
2639
|
}, 1500);
|
|
2633
2640
|
});
|
|
@@ -2662,13 +2669,11 @@ const errorRenderer = {
|
|
|
2662
2669
|
}
|
|
2663
2670
|
return `
|
|
2664
2671
|
<div class="aparte-segment aparte-alert aparte-alert--danger aparte-segment-error" data-segment-id="${escapeHtml(segment.id)}">
|
|
2665
|
-
<
|
|
2666
|
-
|
|
2667
|
-
|
|
2668
|
-
|
|
2669
|
-
|
|
2670
|
-
<div class="aparte-error-message">${escapeHtml(segment.content)}</div>
|
|
2671
|
-
${segment.details ? `<div class="aparte-error-details">${escapeHtml(segment.details)}</div>` : ""}
|
|
2672
|
+
<span class="aparte-alert__icon">${contextConfig().getIcon("error") || "⚠"}</span>
|
|
2673
|
+
<div class="aparte-alert__body">
|
|
2674
|
+
<div class="aparte-alert__title">${escapeHtml(contextConfig().t("error"))}</div>
|
|
2675
|
+
<div class="aparte-alert__message">${escapeHtml(segment.content)}</div>
|
|
2676
|
+
${segment.details ? `<pre class="aparte-segment-error__details">${escapeHtml(segment.details)}</pre>` : ""}
|
|
2672
2677
|
</div>
|
|
2673
2678
|
</div>
|
|
2674
2679
|
`;
|
|
@@ -2683,9 +2688,9 @@ const errorRenderer = {
|
|
|
2683
2688
|
* language it arrived in. Relabelling it would be inventing content.
|
|
2684
2689
|
*/
|
|
2685
2690
|
relabel: (element) => {
|
|
2686
|
-
const wrap = element.querySelector(".aparte-
|
|
2691
|
+
const wrap = element.querySelector(".aparte-alert__icon");
|
|
2687
2692
|
if (wrap) wrap.innerHTML = contextConfig().getIcon("error") || "⚠";
|
|
2688
|
-
const title = element.querySelector(".aparte-
|
|
2693
|
+
const title = element.querySelector(".aparte-alert__title");
|
|
2689
2694
|
if (title) title.textContent = contextConfig().t("error");
|
|
2690
2695
|
},
|
|
2691
2696
|
getStyles: () => ``
|
|
@@ -2705,7 +2710,7 @@ function stateBadge(segment) {
|
|
|
2705
2710
|
const cfg = contextConfig();
|
|
2706
2711
|
const status = segment.status ?? "pending";
|
|
2707
2712
|
const word = (key) => escapeHtml(cfg.t(key));
|
|
2708
|
-
if (status === "awaiting-approval") return word("approvalWaiting")
|
|
2713
|
+
if (status === "awaiting-approval") return `${cfg.getIcon("pause")}${word("approvalWaiting")}`;
|
|
2709
2714
|
if (status === "pending") return word("toolRunning");
|
|
2710
2715
|
if (status === "resolved") return `${cfg.getIcon("check")}${word("toolCompleted")}`;
|
|
2711
2716
|
if (status === "rejected") return `${cfg.getIcon("close")}${word("toolRejected")}`;
|
|
@@ -6402,4 +6407,4 @@ export {
|
|
|
6402
6407
|
collectRendererStyles as y,
|
|
6403
6408
|
contentToText as z
|
|
6404
6409
|
};
|
|
6405
|
-
//# sourceMappingURL=dialog-triggers-
|
|
6410
|
+
//# sourceMappingURL=dialog-triggers-D8wNICrT.js.map
|