@june-ai/june-ui 0.2.11 → 0.2.13
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/{chunk-TD6GKOUR.cjs → chunk-NMTAZCQD.cjs} +199 -10
- package/dist/{chunk-2TBT4VRQ.js → chunk-SZ47R4Z5.js} +200 -11
- package/dist/entry-core.cjs +18 -2
- package/dist/entry-core.d.cts +59 -3
- package/dist/entry-core.d.ts +59 -3
- package/dist/entry-core.js +19 -3
- package/dist/index.cjs +25 -7
- package/dist/index.d.cts +4 -3
- package/dist/index.d.ts +4 -3
- package/dist/index.js +22 -4
- package/dist/june.css +227 -2
- package/package.json +1 -1
|
@@ -3705,7 +3705,7 @@ var SAVE_LABEL = {
|
|
|
3705
3705
|
error: "Save failed"
|
|
3706
3706
|
};
|
|
3707
3707
|
var ZOOM_STEPS = [0.5, 0.67, 0.75, 0.9, 1, 1.1, 1.25, 1.5, 1.75, 2];
|
|
3708
|
-
var stepZoom = (
|
|
3708
|
+
var stepZoom = (z4, dir) => dir > 0 ? _nullishCoalesce(ZOOM_STEPS.find((s) => s > z4 + 1e-3), () => ( z4)) : _nullishCoalesce([...ZOOM_STEPS].reverse().find((s) => s < z4 - 1e-3), () => ( z4));
|
|
3709
3709
|
function DocumentEditorImpl(props) {
|
|
3710
3710
|
const {
|
|
3711
3711
|
documentId,
|
|
@@ -4166,15 +4166,14 @@ function DocumentPreview(props) {
|
|
|
4166
4166
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "june-doc-card__title", children: title }),
|
|
4167
4167
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "june-doc-card__actions", children: [
|
|
4168
4168
|
notice ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "june-doc-card__notice", children: notice }) : null,
|
|
4169
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Copy document", title: "Copy", onClick: () => void handleCopy(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { name: "copy", size: 16 }) }),
|
|
4170
|
+
editable ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Edit document", title: "Edit", onClick: () => setOpen(true), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { name: "pencil", size: 16 }) }) : null,
|
|
4169
4171
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4170
4172
|
Dropdown,
|
|
4171
4173
|
{
|
|
4172
4174
|
align: "end",
|
|
4173
4175
|
className: "june-doc__menu",
|
|
4174
|
-
trigger: ({ open: menuOpen, toggle }) => /* @__PURE__ */ _jsxruntime.
|
|
4175
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { name: "download", size: 16 }),
|
|
4176
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Download" })
|
|
4177
|
-
] }),
|
|
4176
|
+
trigger: ({ open: menuOpen, toggle }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Download", title: "Download", "aria-haspopup": "menu", "aria-expanded": menuOpen, onClick: toggle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { name: "download", size: 16 }) }),
|
|
4178
4177
|
children: (dismiss) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "menu", "aria-label": "Download options", children: formats.map((format2) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4179
4178
|
"button",
|
|
4180
4179
|
{
|
|
@@ -4190,9 +4189,7 @@ function DocumentPreview(props) {
|
|
|
4190
4189
|
format2
|
|
4191
4190
|
)) })
|
|
4192
4191
|
}
|
|
4193
|
-
)
|
|
4194
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Copy document", title: "Copy", onClick: () => void handleCopy(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { name: "copy", size: 16 }) }),
|
|
4195
|
-
editable ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Edit document", title: "Edit", onClick: () => setOpen(true), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { name: "pencil", size: 16 }) }) : null
|
|
4192
|
+
)
|
|
4196
4193
|
] })
|
|
4197
4194
|
] }),
|
|
4198
4195
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "june-doc-card__canvas", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "june-doc-card__sheet", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "june-doc__prose", dangerouslySetInnerHTML: { __html: html } }) }) })
|
|
@@ -4448,6 +4445,115 @@ function ToolApproval({
|
|
|
4448
4445
|
);
|
|
4449
4446
|
}
|
|
4450
4447
|
|
|
4448
|
+
// src/features/tool-approval/tool-approval-card.tsx
|
|
4449
|
+
|
|
4450
|
+
|
|
4451
|
+
|
|
4452
|
+
var sideEffects = ["read", "write", "destructive"];
|
|
4453
|
+
var risks = ["low", "medium", "high"];
|
|
4454
|
+
var sideEffectLabel = {
|
|
4455
|
+
read: "Reads data",
|
|
4456
|
+
write: "Makes changes",
|
|
4457
|
+
destructive: "Deletes or overwrites"
|
|
4458
|
+
};
|
|
4459
|
+
var riskLabel = {
|
|
4460
|
+
low: "Low Risk",
|
|
4461
|
+
medium: "Medium Risk",
|
|
4462
|
+
high: "High Risk"
|
|
4463
|
+
};
|
|
4464
|
+
var cardProps = _v4.z.object({
|
|
4465
|
+
agent: _v4.z.string().describe("Assistant name shown in the request, e.g. Trademark Filing Assistant."),
|
|
4466
|
+
tool: _v4.z.string().describe("Tool the assistant wants to run, e.g. get_user_details."),
|
|
4467
|
+
sideEffect: _v4.z.enum(sideEffects).optional().describe('What the tool does: "read", "write", or "destructive".'),
|
|
4468
|
+
risk: _v4.z.enum(risks).optional().describe('Risk level: "low", "medium", or "high".')
|
|
4469
|
+
});
|
|
4470
|
+
var TOOL_APPROVAL_CARD_DESCRIPTION = "Custom component. Asks the user to approve, reject, or edit a tool call before it runs. ToolApprovalCard(agent, tool, sideEffect?, risk?). Use it when an assistant wants to run a tool that needs the user's decision.";
|
|
4471
|
+
function ShieldIcon() {
|
|
4472
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "svg", { className: "june-approval-card__glyph", viewBox: "0 0 24 24", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4473
|
+
"path",
|
|
4474
|
+
{
|
|
4475
|
+
fill: "currentColor",
|
|
4476
|
+
d: "M12 2.2 4.8 5.1v6.3c0 4.6 3 8.6 7.2 9.6 4.2-1 7.2-5 7.2-9.6V5.1L12 2.2zm0 2.1 5.4 2.1v4.9c0 3.5-2.2 6.6-5.4 7.5-3.2-.9-5.4-4-5.4-7.5V6.4L12 4.3z"
|
|
4477
|
+
}
|
|
4478
|
+
) });
|
|
4479
|
+
}
|
|
4480
|
+
function CheckIcon() {
|
|
4481
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "svg", { className: "june-approval-card__btn-icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "path", { fill: "none", stroke: "currentColor", strokeWidth: "1.8", strokeLinecap: "round", strokeLinejoin: "round", d: "M3.2 8.2 6.4 11.4 12.8 4.6" }) });
|
|
4482
|
+
}
|
|
4483
|
+
function CrossIcon() {
|
|
4484
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "svg", { className: "june-approval-card__btn-icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "path", { fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", d: "M4.2 4.2 11.8 11.8M11.8 4.2 4.2 11.8" }) });
|
|
4485
|
+
}
|
|
4486
|
+
function PencilIcon() {
|
|
4487
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "svg", { className: "june-approval-card__btn-icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4488
|
+
"path",
|
|
4489
|
+
{
|
|
4490
|
+
fill: "none",
|
|
4491
|
+
stroke: "currentColor",
|
|
4492
|
+
strokeWidth: "1.4",
|
|
4493
|
+
strokeLinecap: "round",
|
|
4494
|
+
strokeLinejoin: "round",
|
|
4495
|
+
d: "M9.2 3.2 12.8 6.8 5.6 14H2v-3.6L9.2 3.2z"
|
|
4496
|
+
}
|
|
4497
|
+
) });
|
|
4498
|
+
}
|
|
4499
|
+
function ToolApprovalCard({ agent, tool, sideEffect, risk }) {
|
|
4500
|
+
const triggerAction = _reactlang.useTriggerAction.call(void 0, );
|
|
4501
|
+
const { isStreaming } = useJuneRuntime();
|
|
4502
|
+
const payload = { agent, tool, sideEffect: _nullishCoalesce(sideEffect, () => ( null)), risk: _nullishCoalesce(risk, () => ( null)) };
|
|
4503
|
+
const choose = (choice, label) => {
|
|
4504
|
+
if (isStreaming) return;
|
|
4505
|
+
void triggerAction(`${label} ${tool}`, void 0, {
|
|
4506
|
+
type: `${choice}_tool`,
|
|
4507
|
+
params: { ...payload, choice }
|
|
4508
|
+
});
|
|
4509
|
+
};
|
|
4510
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { className: "june-approval-card", "data-testid": "tool-approval-card", "data-risk": risk, "aria-label": `${agent} wants to run ${tool}`, children: [
|
|
4511
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "june-approval-card__icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ShieldIcon, {}) }),
|
|
4512
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "june-approval-card__body", children: [
|
|
4513
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "june-approval-card__title", children: [
|
|
4514
|
+
agent,
|
|
4515
|
+
" wants to run ",
|
|
4516
|
+
tool
|
|
4517
|
+
] }),
|
|
4518
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "june-approval-card__meta", children: [
|
|
4519
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "june-approval-card__tool", children: tool }),
|
|
4520
|
+
sideEffect && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "june-approval-card__effect", children: sideEffectLabel[sideEffect] }),
|
|
4521
|
+
risk && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "june-approval-card__risk", "data-risk": risk, children: riskLabel[risk] })
|
|
4522
|
+
] }),
|
|
4523
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "june-approval-card__actions", children: [
|
|
4524
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "button", { type: "button", className: "june-approval-card__button", "data-choice": "approve", disabled: isStreaming, onClick: () => choose("approve", "Approve"), children: [
|
|
4525
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, CheckIcon, {}),
|
|
4526
|
+
"Approve"
|
|
4527
|
+
] }),
|
|
4528
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "button", { type: "button", className: "june-approval-card__button", "data-choice": "reject", disabled: isStreaming, onClick: () => choose("reject", "Reject"), children: [
|
|
4529
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, CrossIcon, {}),
|
|
4530
|
+
"Reject"
|
|
4531
|
+
] }),
|
|
4532
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "button", { type: "button", className: "june-approval-card__button", "data-choice": "edit", disabled: isStreaming, onClick: () => choose("edit", "Edit"), children: [
|
|
4533
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PencilIcon, {}),
|
|
4534
|
+
"Edit"
|
|
4535
|
+
] })
|
|
4536
|
+
] })
|
|
4537
|
+
] })
|
|
4538
|
+
] });
|
|
4539
|
+
}
|
|
4540
|
+
var JuneToolApprovalCardComponent = defineComponent({
|
|
4541
|
+
name: "ToolApprovalCard",
|
|
4542
|
+
description: TOOL_APPROVAL_CARD_DESCRIPTION,
|
|
4543
|
+
schema: cardProps,
|
|
4544
|
+
component: ToolApprovalCard,
|
|
4545
|
+
slots: ["Card"]
|
|
4546
|
+
});
|
|
4547
|
+
function withToolApprovalCard(library) {
|
|
4548
|
+
try {
|
|
4549
|
+
return library.extend({
|
|
4550
|
+
components: { add: [{ component: JuneToolApprovalCardComponent, slots: ["Card"] }] }
|
|
4551
|
+
});
|
|
4552
|
+
} catch (e14) {
|
|
4553
|
+
return library.extend({ components: { add: [JuneToolApprovalCardComponent] } });
|
|
4554
|
+
}
|
|
4555
|
+
}
|
|
4556
|
+
|
|
4451
4557
|
// src/features/tool-approval/tool-approval-list.tsx
|
|
4452
4558
|
|
|
4453
4559
|
function ToolApprovalList({ approvals, pendingOnly = false, renderItem, labels, className }) {
|
|
@@ -4532,6 +4638,81 @@ function useToolApproval() {
|
|
|
4532
4638
|
);
|
|
4533
4639
|
}
|
|
4534
4640
|
|
|
4641
|
+
// src/features/retry-notice/retry-notice.tsx
|
|
4642
|
+
|
|
4643
|
+
|
|
4644
|
+
|
|
4645
|
+
var noticeProps = _v4.z.object({
|
|
4646
|
+
title: _v4.z.string().describe("Short heading, e.g. The response couldn't be completed."),
|
|
4647
|
+
message: _v4.z.string().describe("Why it failed and what the user can do next.")
|
|
4648
|
+
});
|
|
4649
|
+
var RETRY_NOTICE_DESCRIPTION = "Custom component. Shows that a response failed and offers Retry. RetryNotice(title, message). Use it when the model or request could not be completed.";
|
|
4650
|
+
function AlertIcon() {
|
|
4651
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "svg", { className: "june-retry__glyph", viewBox: "0 0 20 20", "aria-hidden": "true", children: [
|
|
4652
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "circle", { cx: "10", cy: "10", r: "9", fill: "currentColor" }),
|
|
4653
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "path", { fill: "#fff", d: "M9.1 5.2h1.8v6.2H9.1V5.2zm0 7.6h1.8V14.6H9.1v-1.8z" })
|
|
4654
|
+
] });
|
|
4655
|
+
}
|
|
4656
|
+
function RefreshIcon() {
|
|
4657
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "svg", { className: "june-retry__btn-icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: [
|
|
4658
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4659
|
+
"path",
|
|
4660
|
+
{
|
|
4661
|
+
fill: "none",
|
|
4662
|
+
stroke: "currentColor",
|
|
4663
|
+
strokeWidth: "1.5",
|
|
4664
|
+
strokeLinecap: "round",
|
|
4665
|
+
strokeLinejoin: "round",
|
|
4666
|
+
d: "M13.2 8a5.2 5.2 0 1 1-1.4-3.5"
|
|
4667
|
+
}
|
|
4668
|
+
),
|
|
4669
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "path", { fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", d: "M13.4 2.8v3.2H10.2" })
|
|
4670
|
+
] });
|
|
4671
|
+
}
|
|
4672
|
+
function RetryNotice({ title, message }) {
|
|
4673
|
+
const triggerAction = _reactlang.useTriggerAction.call(void 0, );
|
|
4674
|
+
const { isStreaming } = useJuneRuntime();
|
|
4675
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { className: "june-retry", "data-testid": "retry-notice", role: "alert", children: [
|
|
4676
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "june-retry__icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AlertIcon, {}) }),
|
|
4677
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "june-retry__copy", children: [
|
|
4678
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "june-retry__title", children: title }),
|
|
4679
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "june-retry__message", children: message })
|
|
4680
|
+
] }),
|
|
4681
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4682
|
+
"button",
|
|
4683
|
+
{
|
|
4684
|
+
type: "button",
|
|
4685
|
+
className: "june-retry__button",
|
|
4686
|
+
disabled: isStreaming,
|
|
4687
|
+
onClick: () => {
|
|
4688
|
+
if (isStreaming) return;
|
|
4689
|
+
void triggerAction("Retry", void 0, { type: "retry", params: { title, message } });
|
|
4690
|
+
},
|
|
4691
|
+
children: [
|
|
4692
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, RefreshIcon, {}),
|
|
4693
|
+
"Retry"
|
|
4694
|
+
]
|
|
4695
|
+
}
|
|
4696
|
+
)
|
|
4697
|
+
] });
|
|
4698
|
+
}
|
|
4699
|
+
var JuneRetryNoticeComponent = defineComponent({
|
|
4700
|
+
name: "RetryNotice",
|
|
4701
|
+
description: RETRY_NOTICE_DESCRIPTION,
|
|
4702
|
+
schema: noticeProps,
|
|
4703
|
+
component: RetryNotice,
|
|
4704
|
+
slots: ["Card"]
|
|
4705
|
+
});
|
|
4706
|
+
function withRetryNotice(library) {
|
|
4707
|
+
try {
|
|
4708
|
+
return library.extend({
|
|
4709
|
+
components: { add: [{ component: JuneRetryNoticeComponent, slots: ["Card"] }] }
|
|
4710
|
+
});
|
|
4711
|
+
} catch (e15) {
|
|
4712
|
+
return library.extend({ components: { add: [JuneRetryNoticeComponent] } });
|
|
4713
|
+
}
|
|
4714
|
+
}
|
|
4715
|
+
|
|
4535
4716
|
// src/adapters/langgraph/langgraph.ts
|
|
4536
4717
|
var AI_TYPES = /* @__PURE__ */ new Set(["ai", "AIMessage", "AIMessageChunk"]);
|
|
4537
4718
|
function isAiMessage(message) {
|
|
@@ -4553,7 +4734,7 @@ function messageContentToText(content) {
|
|
|
4553
4734
|
function parse(data) {
|
|
4554
4735
|
try {
|
|
4555
4736
|
return JSON.parse(data);
|
|
4556
|
-
} catch (
|
|
4737
|
+
} catch (e16) {
|
|
4557
4738
|
return void 0;
|
|
4558
4739
|
}
|
|
4559
4740
|
}
|
|
@@ -4695,4 +4876,12 @@ function interruptToApprovalRequests(value, idPrefix = "interrupt") {
|
|
|
4695
4876
|
|
|
4696
4877
|
|
|
4697
4878
|
|
|
4698
|
-
|
|
4879
|
+
|
|
4880
|
+
|
|
4881
|
+
|
|
4882
|
+
|
|
4883
|
+
|
|
4884
|
+
|
|
4885
|
+
|
|
4886
|
+
|
|
4887
|
+
exports.useJuneTheme = useJuneTheme; exports.JuneRuntimeContext = JuneRuntimeContext; exports.useJuneRuntime = useJuneRuntime; exports.defaultParseActionEvent = defaultParseActionEvent; exports.runAction = runAction; exports.createActionHandler = createActionHandler; exports.JuneDocumentContext = JuneDocumentContext; exports.DocumentEditorConfigContext = DocumentEditorConfigContext; exports.useDocumentEditorConfig = useDocumentEditorConfig; exports.useDocumentOptions = useDocumentOptions; exports.mergeDocuments = mergeDocuments; exports.createDocumentStore = createDocumentStore; exports.rememberDocumentEcho = rememberDocumentEcho; exports.isDocumentEcho = isDocumentEcho; exports.getDefaultDocumentStore = getDefaultDocumentStore; exports.updateDocumentInProgram = updateDocumentInProgram; exports.readDocumentFromProgram = readDocumentFromProgram; exports.useDocumentBridge = useDocumentBridge; exports.DocumentBridge = DocumentBridge; exports.darkTheme = darkTheme; exports.lightTheme = lightTheme; exports.isThemeSet = isThemeSet; exports.resolveThemeVars = resolveThemeVars; exports.createTheme = createTheme; exports.useResolvedTheme = useResolvedTheme; exports.JuneThemeProvider = JuneThemeProvider; exports.normalizeProgram = normalizeProgram; exports.splitResponse = splitResponse; exports.resolveMixedContent = resolveMixedContent; exports.JuneErrorBoundary = JuneErrorBoundary; exports.MarkdownText = MarkdownText; exports.JuneRenderer = JuneRenderer; exports.validateComponentDefinition = validateComponentDefinition; exports.defineComponent = defineComponent; exports.isJuneComponent = isJuneComponent; exports.ComponentRegistry = ComponentRegistry; exports.createComponentRegistry = createComponentRegistry; exports.useRegistryLibrary = useRegistryLibrary; exports.defineJuneComponent = defineJuneComponent; exports.createJuneLibrary = createJuneLibrary; exports.defineJuneAction = defineJuneAction; exports.toAsyncIterable = toAsyncIterable; exports.consumeStream = consumeStream; exports.sseToText = sseToText; exports.jsonFieldExtractor = jsonFieldExtractor; exports.fetchStream = fetchStream; exports.useJuneStream = useJuneStream; exports.registerDocumentExporter = registerDocumentExporter; exports.listDocumentExporters = listDocumentExporters; exports.exportDocument = exportDocument; exports.downloadResult = downloadResult; exports.copyDocumentToClipboard = copyDocumentToClipboard; exports.ALL_EXPORT_FORMATS = ALL_EXPORT_FORMATS; exports.resolveDocumentPresentation = resolveDocumentPresentation; exports.documentPanelWidth = documentPanelWidth; exports.DOCUMENT_COMPONENT_DESCRIPTION = DOCUMENT_COMPONENT_DESCRIPTION; exports.DocumentEditor = DocumentEditor; exports.JuneDocumentEditorComponent = JuneDocumentEditorComponent; exports.withDocumentEditor = withDocumentEditor; exports.getDocumentEditorRules = getDocumentEditorRules; exports.getDocumentEditorInstructions = getDocumentEditorInstructions; exports.documentPromptOptions = documentPromptOptions; exports.serializeDocumentsForAgent = serializeDocumentsForAgent; exports.defaultToolApprovalLabels = defaultToolApprovalLabels; exports.ToolApproval = ToolApproval; exports.TOOL_APPROVAL_CARD_DESCRIPTION = TOOL_APPROVAL_CARD_DESCRIPTION; exports.ToolApprovalCard = ToolApprovalCard; exports.JuneToolApprovalCardComponent = JuneToolApprovalCardComponent; exports.withToolApprovalCard = withToolApprovalCard; exports.ToolApprovalList = ToolApprovalList; exports.useToolApproval = useToolApproval; exports.RETRY_NOTICE_DESCRIPTION = RETRY_NOTICE_DESCRIPTION; exports.RetryNotice = RetryNotice; exports.JuneRetryNoticeComponent = JuneRetryNoticeComponent; exports.withRetryNotice = withRetryNotice; exports.messageContentToText = messageContentToText; exports.createLangGraphExtractor = createLangGraphExtractor; exports.langGraphStreamOptions = langGraphStreamOptions; exports.readLangGraphInterrupts = readLangGraphInterrupts; exports.interruptToApprovalRequests = interruptToApprovalRequests;
|
|
@@ -3705,7 +3705,7 @@ var SAVE_LABEL = {
|
|
|
3705
3705
|
error: "Save failed"
|
|
3706
3706
|
};
|
|
3707
3707
|
var ZOOM_STEPS = [0.5, 0.67, 0.75, 0.9, 1, 1.1, 1.25, 1.5, 1.75, 2];
|
|
3708
|
-
var stepZoom = (
|
|
3708
|
+
var stepZoom = (z4, dir) => dir > 0 ? ZOOM_STEPS.find((s) => s > z4 + 1e-3) ?? z4 : [...ZOOM_STEPS].reverse().find((s) => s < z4 - 1e-3) ?? z4;
|
|
3709
3709
|
function DocumentEditorImpl(props) {
|
|
3710
3710
|
const {
|
|
3711
3711
|
documentId,
|
|
@@ -4166,15 +4166,14 @@ function DocumentPreview(props) {
|
|
|
4166
4166
|
/* @__PURE__ */ jsx17("span", { className: "june-doc-card__title", children: title }),
|
|
4167
4167
|
/* @__PURE__ */ jsxs11("div", { className: "june-doc-card__actions", children: [
|
|
4168
4168
|
notice ? /* @__PURE__ */ jsx17("span", { className: "june-doc-card__notice", children: notice }) : null,
|
|
4169
|
+
/* @__PURE__ */ jsx17("button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Copy document", title: "Copy", onClick: () => void handleCopy(), children: /* @__PURE__ */ jsx17(Icon, { name: "copy", size: 16 }) }),
|
|
4170
|
+
editable ? /* @__PURE__ */ jsx17("button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Edit document", title: "Edit", onClick: () => setOpen(true), children: /* @__PURE__ */ jsx17(Icon, { name: "pencil", size: 16 }) }) : null,
|
|
4169
4171
|
/* @__PURE__ */ jsx17(
|
|
4170
4172
|
Dropdown,
|
|
4171
4173
|
{
|
|
4172
4174
|
align: "end",
|
|
4173
4175
|
className: "june-doc__menu",
|
|
4174
|
-
trigger: ({ open: menuOpen, toggle }) => /* @__PURE__ */
|
|
4175
|
-
/* @__PURE__ */ jsx17(Icon, { name: "download", size: 16 }),
|
|
4176
|
-
/* @__PURE__ */ jsx17("span", { children: "Download" })
|
|
4177
|
-
] }),
|
|
4176
|
+
trigger: ({ open: menuOpen, toggle }) => /* @__PURE__ */ jsx17("button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Download", title: "Download", "aria-haspopup": "menu", "aria-expanded": menuOpen, onClick: toggle, children: /* @__PURE__ */ jsx17(Icon, { name: "download", size: 16 }) }),
|
|
4178
4177
|
children: (dismiss) => /* @__PURE__ */ jsx17("div", { role: "menu", "aria-label": "Download options", children: formats.map((format2) => /* @__PURE__ */ jsx17(
|
|
4179
4178
|
"button",
|
|
4180
4179
|
{
|
|
@@ -4190,9 +4189,7 @@ function DocumentPreview(props) {
|
|
|
4190
4189
|
format2
|
|
4191
4190
|
)) })
|
|
4192
4191
|
}
|
|
4193
|
-
)
|
|
4194
|
-
/* @__PURE__ */ jsx17("button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Copy document", title: "Copy", onClick: () => void handleCopy(), children: /* @__PURE__ */ jsx17(Icon, { name: "copy", size: 16 }) }),
|
|
4195
|
-
editable ? /* @__PURE__ */ jsx17("button", { type: "button", className: "june-doc__btn june-doc__btn--icon june-doc__btn--ghost", "aria-label": "Edit document", title: "Edit", onClick: () => setOpen(true), children: /* @__PURE__ */ jsx17(Icon, { name: "pencil", size: 16 }) }) : null
|
|
4192
|
+
)
|
|
4196
4193
|
] })
|
|
4197
4194
|
] }),
|
|
4198
4195
|
/* @__PURE__ */ jsx17("div", { className: "june-doc-card__canvas", children: /* @__PURE__ */ jsx17("div", { className: "june-doc-card__sheet", children: /* @__PURE__ */ jsx17("div", { className: "june-doc__prose", dangerouslySetInnerHTML: { __html: html } }) }) })
|
|
@@ -4448,13 +4445,122 @@ function ToolApproval({
|
|
|
4448
4445
|
);
|
|
4449
4446
|
}
|
|
4450
4447
|
|
|
4448
|
+
// src/features/tool-approval/tool-approval-card.tsx
|
|
4449
|
+
import { useTriggerAction } from "@openuidev/react-lang";
|
|
4450
|
+
import { z as z2 } from "zod/v4";
|
|
4451
|
+
import { jsx as jsx20, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
4452
|
+
var sideEffects = ["read", "write", "destructive"];
|
|
4453
|
+
var risks = ["low", "medium", "high"];
|
|
4454
|
+
var sideEffectLabel = {
|
|
4455
|
+
read: "Reads data",
|
|
4456
|
+
write: "Makes changes",
|
|
4457
|
+
destructive: "Deletes or overwrites"
|
|
4458
|
+
};
|
|
4459
|
+
var riskLabel = {
|
|
4460
|
+
low: "Low Risk",
|
|
4461
|
+
medium: "Medium Risk",
|
|
4462
|
+
high: "High Risk"
|
|
4463
|
+
};
|
|
4464
|
+
var cardProps = z2.object({
|
|
4465
|
+
agent: z2.string().describe("Assistant name shown in the request, e.g. Trademark Filing Assistant."),
|
|
4466
|
+
tool: z2.string().describe("Tool the assistant wants to run, e.g. get_user_details."),
|
|
4467
|
+
sideEffect: z2.enum(sideEffects).optional().describe('What the tool does: "read", "write", or "destructive".'),
|
|
4468
|
+
risk: z2.enum(risks).optional().describe('Risk level: "low", "medium", or "high".')
|
|
4469
|
+
});
|
|
4470
|
+
var TOOL_APPROVAL_CARD_DESCRIPTION = "Custom component. Asks the user to approve, reject, or edit a tool call before it runs. ToolApprovalCard(agent, tool, sideEffect?, risk?). Use it when an assistant wants to run a tool that needs the user's decision.";
|
|
4471
|
+
function ShieldIcon() {
|
|
4472
|
+
return /* @__PURE__ */ jsx20("svg", { className: "june-approval-card__glyph", viewBox: "0 0 24 24", "aria-hidden": "true", children: /* @__PURE__ */ jsx20(
|
|
4473
|
+
"path",
|
|
4474
|
+
{
|
|
4475
|
+
fill: "currentColor",
|
|
4476
|
+
d: "M12 2.2 4.8 5.1v6.3c0 4.6 3 8.6 7.2 9.6 4.2-1 7.2-5 7.2-9.6V5.1L12 2.2zm0 2.1 5.4 2.1v4.9c0 3.5-2.2 6.6-5.4 7.5-3.2-.9-5.4-4-5.4-7.5V6.4L12 4.3z"
|
|
4477
|
+
}
|
|
4478
|
+
) });
|
|
4479
|
+
}
|
|
4480
|
+
function CheckIcon() {
|
|
4481
|
+
return /* @__PURE__ */ jsx20("svg", { className: "june-approval-card__btn-icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: /* @__PURE__ */ jsx20("path", { fill: "none", stroke: "currentColor", strokeWidth: "1.8", strokeLinecap: "round", strokeLinejoin: "round", d: "M3.2 8.2 6.4 11.4 12.8 4.6" }) });
|
|
4482
|
+
}
|
|
4483
|
+
function CrossIcon() {
|
|
4484
|
+
return /* @__PURE__ */ jsx20("svg", { className: "june-approval-card__btn-icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: /* @__PURE__ */ jsx20("path", { fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", d: "M4.2 4.2 11.8 11.8M11.8 4.2 4.2 11.8" }) });
|
|
4485
|
+
}
|
|
4486
|
+
function PencilIcon() {
|
|
4487
|
+
return /* @__PURE__ */ jsx20("svg", { className: "june-approval-card__btn-icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: /* @__PURE__ */ jsx20(
|
|
4488
|
+
"path",
|
|
4489
|
+
{
|
|
4490
|
+
fill: "none",
|
|
4491
|
+
stroke: "currentColor",
|
|
4492
|
+
strokeWidth: "1.4",
|
|
4493
|
+
strokeLinecap: "round",
|
|
4494
|
+
strokeLinejoin: "round",
|
|
4495
|
+
d: "M9.2 3.2 12.8 6.8 5.6 14H2v-3.6L9.2 3.2z"
|
|
4496
|
+
}
|
|
4497
|
+
) });
|
|
4498
|
+
}
|
|
4499
|
+
function ToolApprovalCard({ agent, tool, sideEffect, risk }) {
|
|
4500
|
+
const triggerAction = useTriggerAction();
|
|
4501
|
+
const { isStreaming } = useJuneRuntime();
|
|
4502
|
+
const payload = { agent, tool, sideEffect: sideEffect ?? null, risk: risk ?? null };
|
|
4503
|
+
const choose = (choice, label) => {
|
|
4504
|
+
if (isStreaming) return;
|
|
4505
|
+
void triggerAction(`${label} ${tool}`, void 0, {
|
|
4506
|
+
type: `${choice}_tool`,
|
|
4507
|
+
params: { ...payload, choice }
|
|
4508
|
+
});
|
|
4509
|
+
};
|
|
4510
|
+
return /* @__PURE__ */ jsxs13("section", { className: "june-approval-card", "data-testid": "tool-approval-card", "data-risk": risk, "aria-label": `${agent} wants to run ${tool}`, children: [
|
|
4511
|
+
/* @__PURE__ */ jsx20("span", { className: "june-approval-card__icon", children: /* @__PURE__ */ jsx20(ShieldIcon, {}) }),
|
|
4512
|
+
/* @__PURE__ */ jsxs13("div", { className: "june-approval-card__body", children: [
|
|
4513
|
+
/* @__PURE__ */ jsxs13("p", { className: "june-approval-card__title", children: [
|
|
4514
|
+
agent,
|
|
4515
|
+
" wants to run ",
|
|
4516
|
+
tool
|
|
4517
|
+
] }),
|
|
4518
|
+
/* @__PURE__ */ jsxs13("div", { className: "june-approval-card__meta", children: [
|
|
4519
|
+
/* @__PURE__ */ jsx20("span", { className: "june-approval-card__tool", children: tool }),
|
|
4520
|
+
sideEffect && /* @__PURE__ */ jsx20("span", { className: "june-approval-card__effect", children: sideEffectLabel[sideEffect] }),
|
|
4521
|
+
risk && /* @__PURE__ */ jsx20("span", { className: "june-approval-card__risk", "data-risk": risk, children: riskLabel[risk] })
|
|
4522
|
+
] }),
|
|
4523
|
+
/* @__PURE__ */ jsxs13("div", { className: "june-approval-card__actions", children: [
|
|
4524
|
+
/* @__PURE__ */ jsxs13("button", { type: "button", className: "june-approval-card__button", "data-choice": "approve", disabled: isStreaming, onClick: () => choose("approve", "Approve"), children: [
|
|
4525
|
+
/* @__PURE__ */ jsx20(CheckIcon, {}),
|
|
4526
|
+
"Approve"
|
|
4527
|
+
] }),
|
|
4528
|
+
/* @__PURE__ */ jsxs13("button", { type: "button", className: "june-approval-card__button", "data-choice": "reject", disabled: isStreaming, onClick: () => choose("reject", "Reject"), children: [
|
|
4529
|
+
/* @__PURE__ */ jsx20(CrossIcon, {}),
|
|
4530
|
+
"Reject"
|
|
4531
|
+
] }),
|
|
4532
|
+
/* @__PURE__ */ jsxs13("button", { type: "button", className: "june-approval-card__button", "data-choice": "edit", disabled: isStreaming, onClick: () => choose("edit", "Edit"), children: [
|
|
4533
|
+
/* @__PURE__ */ jsx20(PencilIcon, {}),
|
|
4534
|
+
"Edit"
|
|
4535
|
+
] })
|
|
4536
|
+
] })
|
|
4537
|
+
] })
|
|
4538
|
+
] });
|
|
4539
|
+
}
|
|
4540
|
+
var JuneToolApprovalCardComponent = defineComponent({
|
|
4541
|
+
name: "ToolApprovalCard",
|
|
4542
|
+
description: TOOL_APPROVAL_CARD_DESCRIPTION,
|
|
4543
|
+
schema: cardProps,
|
|
4544
|
+
component: ToolApprovalCard,
|
|
4545
|
+
slots: ["Card"]
|
|
4546
|
+
});
|
|
4547
|
+
function withToolApprovalCard(library) {
|
|
4548
|
+
try {
|
|
4549
|
+
return library.extend({
|
|
4550
|
+
components: { add: [{ component: JuneToolApprovalCardComponent, slots: ["Card"] }] }
|
|
4551
|
+
});
|
|
4552
|
+
} catch {
|
|
4553
|
+
return library.extend({ components: { add: [JuneToolApprovalCardComponent] } });
|
|
4554
|
+
}
|
|
4555
|
+
}
|
|
4556
|
+
|
|
4451
4557
|
// src/features/tool-approval/tool-approval-list.tsx
|
|
4452
|
-
import { jsx as
|
|
4558
|
+
import { jsx as jsx21 } from "react/jsx-runtime";
|
|
4453
4559
|
function ToolApprovalList({ approvals, pendingOnly = false, renderItem, labels, className }) {
|
|
4454
4560
|
const entries = pendingOnly ? approvals.entries.filter((e) => e.status === "pending") : approvals.entries;
|
|
4455
4561
|
if (entries.length === 0) return null;
|
|
4456
|
-
return /* @__PURE__ */
|
|
4457
|
-
(entry) => renderItem ? /* @__PURE__ */
|
|
4562
|
+
return /* @__PURE__ */ jsx21("div", { className: className ? `june-approval-list ${className}` : "june-approval-list", children: entries.map(
|
|
4563
|
+
(entry) => renderItem ? /* @__PURE__ */ jsx21("div", { children: renderItem(entry, approvals.decide) }, entry.request.id) : /* @__PURE__ */ jsx21(
|
|
4458
4564
|
ToolApproval,
|
|
4459
4565
|
{
|
|
4460
4566
|
request: entry.request,
|
|
@@ -4532,6 +4638,81 @@ function useToolApproval() {
|
|
|
4532
4638
|
);
|
|
4533
4639
|
}
|
|
4534
4640
|
|
|
4641
|
+
// src/features/retry-notice/retry-notice.tsx
|
|
4642
|
+
import { useTriggerAction as useTriggerAction2 } from "@openuidev/react-lang";
|
|
4643
|
+
import { z as z3 } from "zod/v4";
|
|
4644
|
+
import { jsx as jsx22, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
4645
|
+
var noticeProps = z3.object({
|
|
4646
|
+
title: z3.string().describe("Short heading, e.g. The response couldn't be completed."),
|
|
4647
|
+
message: z3.string().describe("Why it failed and what the user can do next.")
|
|
4648
|
+
});
|
|
4649
|
+
var RETRY_NOTICE_DESCRIPTION = "Custom component. Shows that a response failed and offers Retry. RetryNotice(title, message). Use it when the model or request could not be completed.";
|
|
4650
|
+
function AlertIcon() {
|
|
4651
|
+
return /* @__PURE__ */ jsxs14("svg", { className: "june-retry__glyph", viewBox: "0 0 20 20", "aria-hidden": "true", children: [
|
|
4652
|
+
/* @__PURE__ */ jsx22("circle", { cx: "10", cy: "10", r: "9", fill: "currentColor" }),
|
|
4653
|
+
/* @__PURE__ */ jsx22("path", { fill: "#fff", d: "M9.1 5.2h1.8v6.2H9.1V5.2zm0 7.6h1.8V14.6H9.1v-1.8z" })
|
|
4654
|
+
] });
|
|
4655
|
+
}
|
|
4656
|
+
function RefreshIcon() {
|
|
4657
|
+
return /* @__PURE__ */ jsxs14("svg", { className: "june-retry__btn-icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: [
|
|
4658
|
+
/* @__PURE__ */ jsx22(
|
|
4659
|
+
"path",
|
|
4660
|
+
{
|
|
4661
|
+
fill: "none",
|
|
4662
|
+
stroke: "currentColor",
|
|
4663
|
+
strokeWidth: "1.5",
|
|
4664
|
+
strokeLinecap: "round",
|
|
4665
|
+
strokeLinejoin: "round",
|
|
4666
|
+
d: "M13.2 8a5.2 5.2 0 1 1-1.4-3.5"
|
|
4667
|
+
}
|
|
4668
|
+
),
|
|
4669
|
+
/* @__PURE__ */ jsx22("path", { fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", d: "M13.4 2.8v3.2H10.2" })
|
|
4670
|
+
] });
|
|
4671
|
+
}
|
|
4672
|
+
function RetryNotice({ title, message }) {
|
|
4673
|
+
const triggerAction = useTriggerAction2();
|
|
4674
|
+
const { isStreaming } = useJuneRuntime();
|
|
4675
|
+
return /* @__PURE__ */ jsxs14("section", { className: "june-retry", "data-testid": "retry-notice", role: "alert", children: [
|
|
4676
|
+
/* @__PURE__ */ jsx22("span", { className: "june-retry__icon", children: /* @__PURE__ */ jsx22(AlertIcon, {}) }),
|
|
4677
|
+
/* @__PURE__ */ jsxs14("div", { className: "june-retry__copy", children: [
|
|
4678
|
+
/* @__PURE__ */ jsx22("p", { className: "june-retry__title", children: title }),
|
|
4679
|
+
/* @__PURE__ */ jsx22("p", { className: "june-retry__message", children: message })
|
|
4680
|
+
] }),
|
|
4681
|
+
/* @__PURE__ */ jsxs14(
|
|
4682
|
+
"button",
|
|
4683
|
+
{
|
|
4684
|
+
type: "button",
|
|
4685
|
+
className: "june-retry__button",
|
|
4686
|
+
disabled: isStreaming,
|
|
4687
|
+
onClick: () => {
|
|
4688
|
+
if (isStreaming) return;
|
|
4689
|
+
void triggerAction("Retry", void 0, { type: "retry", params: { title, message } });
|
|
4690
|
+
},
|
|
4691
|
+
children: [
|
|
4692
|
+
/* @__PURE__ */ jsx22(RefreshIcon, {}),
|
|
4693
|
+
"Retry"
|
|
4694
|
+
]
|
|
4695
|
+
}
|
|
4696
|
+
)
|
|
4697
|
+
] });
|
|
4698
|
+
}
|
|
4699
|
+
var JuneRetryNoticeComponent = defineComponent({
|
|
4700
|
+
name: "RetryNotice",
|
|
4701
|
+
description: RETRY_NOTICE_DESCRIPTION,
|
|
4702
|
+
schema: noticeProps,
|
|
4703
|
+
component: RetryNotice,
|
|
4704
|
+
slots: ["Card"]
|
|
4705
|
+
});
|
|
4706
|
+
function withRetryNotice(library) {
|
|
4707
|
+
try {
|
|
4708
|
+
return library.extend({
|
|
4709
|
+
components: { add: [{ component: JuneRetryNoticeComponent, slots: ["Card"] }] }
|
|
4710
|
+
});
|
|
4711
|
+
} catch {
|
|
4712
|
+
return library.extend({ components: { add: [JuneRetryNoticeComponent] } });
|
|
4713
|
+
}
|
|
4714
|
+
}
|
|
4715
|
+
|
|
4535
4716
|
// src/adapters/langgraph/langgraph.ts
|
|
4536
4717
|
var AI_TYPES = /* @__PURE__ */ new Set(["ai", "AIMessage", "AIMessageChunk"]);
|
|
4537
4718
|
function isAiMessage(message) {
|
|
@@ -4688,8 +4869,16 @@ export {
|
|
|
4688
4869
|
serializeDocumentsForAgent,
|
|
4689
4870
|
defaultToolApprovalLabels,
|
|
4690
4871
|
ToolApproval,
|
|
4872
|
+
TOOL_APPROVAL_CARD_DESCRIPTION,
|
|
4873
|
+
ToolApprovalCard,
|
|
4874
|
+
JuneToolApprovalCardComponent,
|
|
4875
|
+
withToolApprovalCard,
|
|
4691
4876
|
ToolApprovalList,
|
|
4692
4877
|
useToolApproval,
|
|
4878
|
+
RETRY_NOTICE_DESCRIPTION,
|
|
4879
|
+
RetryNotice,
|
|
4880
|
+
JuneRetryNoticeComponent,
|
|
4881
|
+
withRetryNotice,
|
|
4693
4882
|
messageContentToText,
|
|
4694
4883
|
createLangGraphExtractor,
|
|
4695
4884
|
langGraphStreamOptions,
|
package/dist/entry-core.cjs
CHANGED
|
@@ -71,7 +71,15 @@
|
|
|
71
71
|
|
|
72
72
|
|
|
73
73
|
|
|
74
|
-
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
var _chunkNMTAZCQDcjs = require('./chunk-NMTAZCQD.cjs');
|
|
75
83
|
|
|
76
84
|
|
|
77
85
|
|
|
@@ -153,4 +161,12 @@ var _chunkG6YPSE6Jcjs = require('./chunk-G6YPSE6J.cjs');
|
|
|
153
161
|
|
|
154
162
|
|
|
155
163
|
|
|
156
|
-
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
exports.ALL_EXPORT_FORMATS = _chunkNMTAZCQDcjs.ALL_EXPORT_FORMATS; exports.ComponentRegistry = _chunkNMTAZCQDcjs.ComponentRegistry; exports.DOCUMENT_COMPONENT_DESCRIPTION = _chunkNMTAZCQDcjs.DOCUMENT_COMPONENT_DESCRIPTION; exports.DocumentBridge = _chunkNMTAZCQDcjs.DocumentBridge; exports.DocumentEditor = _chunkNMTAZCQDcjs.DocumentEditor; exports.DocumentEditorConfigContext = _chunkNMTAZCQDcjs.DocumentEditorConfigContext; exports.JuneDocumentContext = _chunkNMTAZCQDcjs.JuneDocumentContext; exports.JuneDocumentEditorComponent = _chunkNMTAZCQDcjs.JuneDocumentEditorComponent; exports.JuneError = _chunkG6YPSE6Jcjs.JuneError; exports.JuneErrorBoundary = _chunkNMTAZCQDcjs.JuneErrorBoundary; exports.JuneRenderer = _chunkNMTAZCQDcjs.JuneRenderer; exports.JuneRetryNoticeComponent = _chunkNMTAZCQDcjs.JuneRetryNoticeComponent; exports.JuneRuntimeContext = _chunkNMTAZCQDcjs.JuneRuntimeContext; exports.JuneThemeProvider = _chunkNMTAZCQDcjs.JuneThemeProvider; exports.JuneToolApprovalCardComponent = _chunkNMTAZCQDcjs.JuneToolApprovalCardComponent; exports.MarkdownText = _chunkNMTAZCQDcjs.MarkdownText; exports.RETRY_NOTICE_DESCRIPTION = _chunkNMTAZCQDcjs.RETRY_NOTICE_DESCRIPTION; exports.RetryNotice = _chunkNMTAZCQDcjs.RetryNotice; exports.TOOL_APPROVAL_CARD_DESCRIPTION = _chunkNMTAZCQDcjs.TOOL_APPROVAL_CARD_DESCRIPTION; exports.ToolApproval = _chunkNMTAZCQDcjs.ToolApproval; exports.ToolApprovalCard = _chunkNMTAZCQDcjs.ToolApprovalCard; exports.ToolApprovalList = _chunkNMTAZCQDcjs.ToolApprovalList; exports.consumeStream = _chunkNMTAZCQDcjs.consumeStream; exports.copyDocumentToClipboard = _chunkNMTAZCQDcjs.copyDocumentToClipboard; exports.createActionHandler = _chunkNMTAZCQDcjs.createActionHandler; exports.createComponentRegistry = _chunkNMTAZCQDcjs.createComponentRegistry; exports.createDocumentStore = _chunkNMTAZCQDcjs.createDocumentStore; exports.createJuneLibrary = _chunkNMTAZCQDcjs.createJuneLibrary; exports.createLangGraphExtractor = _chunkNMTAZCQDcjs.createLangGraphExtractor; exports.createTheme = _chunkNMTAZCQDcjs.createTheme; exports.darkTheme = _chunkNMTAZCQDcjs.darkTheme; exports.defaultParseActionEvent = _chunkNMTAZCQDcjs.defaultParseActionEvent; exports.defaultToolApprovalLabels = _chunkNMTAZCQDcjs.defaultToolApprovalLabels; exports.defineComponent = _chunkNMTAZCQDcjs.defineComponent; exports.defineJuneAction = _chunkNMTAZCQDcjs.defineJuneAction; exports.defineJuneComponent = _chunkNMTAZCQDcjs.defineJuneComponent; exports.documentPanelWidth = _chunkNMTAZCQDcjs.documentPanelWidth; exports.documentPromptOptions = _chunkNMTAZCQDcjs.documentPromptOptions; exports.downloadResult = _chunkNMTAZCQDcjs.downloadResult; exports.exportDocument = _chunkNMTAZCQDcjs.exportDocument; exports.fetchStream = _chunkNMTAZCQDcjs.fetchStream; exports.getDefaultDocumentStore = _chunkNMTAZCQDcjs.getDefaultDocumentStore; exports.getDocumentEditorInstructions = _chunkNMTAZCQDcjs.getDocumentEditorInstructions; exports.getDocumentEditorRules = _chunkNMTAZCQDcjs.getDocumentEditorRules; exports.interruptToApprovalRequests = _chunkNMTAZCQDcjs.interruptToApprovalRequests; exports.isDocumentEcho = _chunkNMTAZCQDcjs.isDocumentEcho; exports.isJuneComponent = _chunkNMTAZCQDcjs.isJuneComponent; exports.isJuneError = _chunkG6YPSE6Jcjs.isJuneError; exports.isThemeSet = _chunkNMTAZCQDcjs.isThemeSet; exports.jsonFieldExtractor = _chunkNMTAZCQDcjs.jsonFieldExtractor; exports.langGraphStreamOptions = _chunkNMTAZCQDcjs.langGraphStreamOptions; exports.lightTheme = _chunkNMTAZCQDcjs.lightTheme; exports.listDocumentExporters = _chunkNMTAZCQDcjs.listDocumentExporters; exports.mergeDocuments = _chunkNMTAZCQDcjs.mergeDocuments; exports.messageContentToText = _chunkNMTAZCQDcjs.messageContentToText; exports.normalizeProgram = _chunkNMTAZCQDcjs.normalizeProgram; exports.readDocumentFromProgram = _chunkNMTAZCQDcjs.readDocumentFromProgram; exports.readLangGraphInterrupts = _chunkNMTAZCQDcjs.readLangGraphInterrupts; exports.registerDocumentExporter = _chunkNMTAZCQDcjs.registerDocumentExporter; exports.rememberDocumentEcho = _chunkNMTAZCQDcjs.rememberDocumentEcho; exports.resolveDocumentPresentation = _chunkNMTAZCQDcjs.resolveDocumentPresentation; exports.resolveMixedContent = _chunkNMTAZCQDcjs.resolveMixedContent; exports.resolveThemeVars = _chunkNMTAZCQDcjs.resolveThemeVars; exports.runAction = _chunkNMTAZCQDcjs.runAction; exports.serializeDocumentsForAgent = _chunkNMTAZCQDcjs.serializeDocumentsForAgent; exports.splitResponse = _chunkNMTAZCQDcjs.splitResponse; exports.sseToText = _chunkNMTAZCQDcjs.sseToText; exports.toAsyncIterable = _chunkNMTAZCQDcjs.toAsyncIterable; exports.toJuneError = _chunkG6YPSE6Jcjs.toJuneError; exports.updateDocumentInProgram = _chunkNMTAZCQDcjs.updateDocumentInProgram; exports.useDocumentBridge = _chunkNMTAZCQDcjs.useDocumentBridge; exports.useDocumentEditorConfig = _chunkNMTAZCQDcjs.useDocumentEditorConfig; exports.useDocumentOptions = _chunkNMTAZCQDcjs.useDocumentOptions; exports.useJuneRuntime = _chunkNMTAZCQDcjs.useJuneRuntime; exports.useJuneStream = _chunkNMTAZCQDcjs.useJuneStream; exports.useJuneTheme = _chunkNMTAZCQDcjs.useJuneTheme; exports.useRegistryLibrary = _chunkNMTAZCQDcjs.useRegistryLibrary; exports.useResolvedTheme = _chunkNMTAZCQDcjs.useResolvedTheme; exports.useToolApproval = _chunkNMTAZCQDcjs.useToolApproval; exports.validateComponentDefinition = _chunkNMTAZCQDcjs.validateComponentDefinition; exports.withDocumentEditor = _chunkNMTAZCQDcjs.withDocumentEditor; exports.withRetryNotice = _chunkNMTAZCQDcjs.withRetryNotice; exports.withToolApprovalCard = _chunkNMTAZCQDcjs.withToolApprovalCard;
|