@voltro/ui 0.87.0 → 0.88.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/CHANGELOG.md +169 -6
- package/THIRD-PARTY-NOTICES.md +6 -1349
- package/dist/achievementStrings.js +1 -2
- package/dist/agentChat.js +1 -2
- package/dist/appAgent.js +1 -2
- package/dist/asyncSelect.js +1 -2
- package/dist/autoForm.js +1 -2
- package/dist/commentsThread.js +1 -2
- package/dist/connectAccount.js +1 -2
- package/dist/dataCopilot.js +1 -2
- package/dist/dataTable.js +1 -2
- package/dist/filters.js +1 -2
- package/dist/presence.js +1 -2
- package/dist/questStrings.js +1 -2
- package/dist/recordView.js +1 -2
- package/dist/richText.js +1 -2
- package/dist/skeleton.js +1 -2
- package/dist/strings.js +1 -2
- package/dist/widgets.js +1 -2
- package/dist/workflow.js +1 -2
- package/package.json +4 -4
package/dist/agentChat.js
CHANGED
|
@@ -2,7 +2,7 @@ import { useUiStrings as e } from "./strings.js";
|
|
|
2
2
|
import { useState as t } from "react";
|
|
3
3
|
import { useAgentChat as n } from "@voltro/client";
|
|
4
4
|
import { jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
5
|
-
|
|
5
|
+
// src/agentChat.tsx
|
|
6
6
|
var a = (e) => typeof e.text == "string" ? e.text : "";
|
|
7
7
|
function o({ text: t }) {
|
|
8
8
|
let n = e().agentChat;
|
|
@@ -113,5 +113,4 @@ function u(e) {
|
|
|
113
113
|
let t = n(e.api, e.agent, { threadId: e.threadId });
|
|
114
114
|
return e.children(t);
|
|
115
115
|
}
|
|
116
|
-
//#endregion
|
|
117
116
|
export { l as AgentChat, c as AgentMessageView, s as AgentPartView, u as AgentStream };
|
package/dist/appAgent.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useUiStrings as e } from "./strings.js";
|
|
2
2
|
import { AgentChat as t } from "./agentChat.js";
|
|
3
3
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
-
|
|
4
|
+
// src/appAgent.tsx
|
|
5
5
|
function i(i) {
|
|
6
6
|
let { tools: a, showTools: o, ...s } = i, c = e().appAgent, l = (o ?? (a !== void 0 && a.length > 0)) && a && a.length > 0;
|
|
7
7
|
return /* @__PURE__ */ r("div", {
|
|
@@ -26,5 +26,4 @@ function i(i) {
|
|
|
26
26
|
}) : null, /* @__PURE__ */ n(t, { ...s })]
|
|
27
27
|
});
|
|
28
28
|
}
|
|
29
|
-
//#endregion
|
|
30
29
|
export { i as AppAgent };
|
package/dist/asyncSelect.js
CHANGED
|
@@ -2,7 +2,7 @@ import { useUiStrings as e } from "./strings.js";
|
|
|
2
2
|
import { useId as t } from "react";
|
|
3
3
|
import { useQueryField as n } from "@voltro/client";
|
|
4
4
|
import { jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
5
|
-
|
|
5
|
+
// src/asyncSelect.tsx
|
|
6
6
|
var a = (a) => {
|
|
7
7
|
let o = n(a.api, a.source, {
|
|
8
8
|
skipUntilTerm: !0,
|
|
@@ -59,5 +59,4 @@ var a = (a) => {
|
|
|
59
59
|
]
|
|
60
60
|
});
|
|
61
61
|
};
|
|
62
|
-
//#endregion
|
|
63
62
|
export { a as AsyncSelect };
|
package/dist/autoForm.js
CHANGED
|
@@ -2,7 +2,7 @@ import { useWidget as e } from "./widgets.js";
|
|
|
2
2
|
import { createContext as t, useContext as n, useMemo as r } from "react";
|
|
3
3
|
import { FORM_CAPTURE_FIELD as i, FORM_KEY_FIELD as a, FORM_REDIRECT_FIELD as o, FORM_SOURCE_FIELD as s, FormBindingProvider as c, formActionPath as l, formSections as u, useFormBinding as d, useFormCapture as f, useFormFlash as p, useServerRequest as m } from "@voltro/client";
|
|
4
4
|
import { Fragment as h, jsx as g, jsxs as _ } from "react/jsx-runtime";
|
|
5
|
-
|
|
5
|
+
// src/autoForm.tsx
|
|
6
6
|
var v = t(null), y = () => {
|
|
7
7
|
let e = n(v);
|
|
8
8
|
if (e === null) throw Error("<Field> must be rendered inside <AutoForm>");
|
|
@@ -100,5 +100,4 @@ function S(e) {
|
|
|
100
100
|
})
|
|
101
101
|
});
|
|
102
102
|
}
|
|
103
|
-
//#endregion
|
|
104
103
|
export { S as AutoForm, x as Field };
|
package/dist/commentsThread.js
CHANGED
|
@@ -2,7 +2,7 @@ import { useUiStrings as e } from "./strings.js";
|
|
|
2
2
|
import { useState as t } from "react";
|
|
3
3
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
4
|
import { useComments as i } from "@voltro/plugin-comments/web";
|
|
5
|
-
|
|
5
|
+
// src/commentsThread.tsx
|
|
6
6
|
var a = (e) => [...e.matchAll(/@([\w.-]+)/g)].map((e) => e[1]);
|
|
7
7
|
function o({ comment: i, onReact: a, onRemove: o, onEdit: s }) {
|
|
8
8
|
let c = e().comments, [l, u] = t(!1), [d, f] = t(i.body);
|
|
@@ -159,5 +159,4 @@ function c({ anchor: o, api: c = "app" }) {
|
|
|
159
159
|
})]
|
|
160
160
|
});
|
|
161
161
|
}
|
|
162
|
-
//#endregion
|
|
163
162
|
export { c as CommentsThread };
|
package/dist/connectAccount.js
CHANGED
|
@@ -2,7 +2,7 @@ import { useUiStrings as e } from "./strings.js";
|
|
|
2
2
|
import { useState as t } from "react";
|
|
3
3
|
import { useConnection as n } from "@voltro/client";
|
|
4
4
|
import { Fragment as r, jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
5
|
-
|
|
5
|
+
// src/connectAccount.tsx
|
|
6
6
|
var o = (e, t) => {
|
|
7
7
|
switch (e.status) {
|
|
8
8
|
case "connected": return e.accountLabel === null ? t.connected : t.connectedAs(e.accountLabel);
|
|
@@ -95,5 +95,4 @@ var o = (e, t) => {
|
|
|
95
95
|
})]
|
|
96
96
|
});
|
|
97
97
|
};
|
|
98
|
-
//#endregion
|
|
99
98
|
export { c as ConnectAccount, s as ConnectAccountFor };
|
package/dist/dataCopilot.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useState as e } from "react";
|
|
2
2
|
import { useDataCopilot as t } from "@voltro/client";
|
|
3
3
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
-
|
|
4
|
+
// src/dataCopilot.tsx
|
|
5
5
|
var i = (e) => e == null ? "" : typeof e == "boolean" ? e ? "✓" : "✗" : typeof e == "object" ? JSON.stringify(e) : String(e), a = (e) => {
|
|
6
6
|
let t = /* @__PURE__ */ new Set(), n = [];
|
|
7
7
|
for (let r of e) for (let e of Object.keys(r)) t.has(e) || (t.add(e), n.push(e));
|
|
@@ -73,5 +73,4 @@ function c(e) {
|
|
|
73
73
|
let n = t(e.api, e.action);
|
|
74
74
|
return e.children(n);
|
|
75
75
|
}
|
|
76
|
-
//#endregion
|
|
77
76
|
export { s as DataCopilot, o as DataCopilotAnswer, c as DataCopilotStream };
|
package/dist/dataTable.js
CHANGED
|
@@ -2,7 +2,7 @@ import { useUiStrings as e } from "./strings.js";
|
|
|
2
2
|
import { memo as t, useMemo as n } from "react";
|
|
3
3
|
import { useDataTable as r } from "@voltro/client";
|
|
4
4
|
import { Fragment as i, jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
5
|
-
|
|
5
|
+
// src/dataTable.tsx
|
|
6
6
|
var s = (e) => e == null ? "" : typeof e == "boolean" ? e ? "✓" : "✗" : String(e), c = (e, t) => e ? t === "asc" ? "ascending" : "descending" : "none";
|
|
7
7
|
function l({ row: e, columns: t, renderCell: n, rowActions: r }) {
|
|
8
8
|
return /* @__PURE__ */ o("tr", { children: [t.map((t) => /* @__PURE__ */ a("td", {
|
|
@@ -56,5 +56,4 @@ function d(t) {
|
|
|
56
56
|
children: p ?? "Load more"
|
|
57
57
|
}) : null] });
|
|
58
58
|
}
|
|
59
|
-
//#endregion
|
|
60
59
|
export { d as DataTable };
|
package/dist/filters.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useUiStrings as e } from "./strings.js";
|
|
2
2
|
import { useQueryFilters as t } from "@voltro/client";
|
|
3
3
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
-
|
|
4
|
+
// src/filters.tsx
|
|
5
5
|
var i = (e) => e == null ? "" : String(e);
|
|
6
6
|
function a(t) {
|
|
7
7
|
let { filter: a, value: o, onChange: s } = t, c = e().filters, l = {
|
|
@@ -101,5 +101,4 @@ function o(i) {
|
|
|
101
101
|
}), i.children ? i.children(o) : null]
|
|
102
102
|
});
|
|
103
103
|
}
|
|
104
|
-
//#endregion
|
|
105
104
|
export { o as QueryFilters };
|
package/dist/presence.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defaultUiStrings as e, useUiStrings as t } from "./strings.js";
|
|
2
2
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
3
|
-
|
|
3
|
+
// src/presence.tsx
|
|
4
4
|
var i = (e, t) => {
|
|
5
5
|
let n = e.meta?.[t];
|
|
6
6
|
return typeof n == "string" ? n : void 0;
|
|
@@ -39,5 +39,4 @@ function l(e) {
|
|
|
39
39
|
children: c(f.map(u), l, d)
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
|
-
//#endregion
|
|
43
42
|
export { l as EditingIndicator, s as PresenceAvatars, o as initials, c as summarizeEditors };
|
package/dist/questStrings.js
CHANGED
package/dist/recordView.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useUiStrings as e } from "./strings.js";
|
|
2
2
|
import { useRecord as t } from "@voltro/client";
|
|
3
3
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
-
|
|
4
|
+
// src/recordView.tsx
|
|
5
5
|
var i = (e) => e.replace(/[_-]+/g, " ").replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/\s+/g, " ").trim().replace(/^./, (e) => e.toUpperCase()), a = (e) => Array.isArray(e) && e.every((e) => typeof e == "object" && !!e), o = (e) => e == null ? "—" : typeof e == "boolean" ? e ? "✓" : "✗" : String(e);
|
|
6
6
|
function s({ name: t, items: a }) {
|
|
7
7
|
let s = e().recordView;
|
|
@@ -48,5 +48,4 @@ function c(e) {
|
|
|
48
48
|
}, e))]
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
|
-
//#endregion
|
|
52
51
|
export { c as RecordView };
|
package/dist/richText.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Fragment as e, useEffect as t, useId as n, useRef as r, useState as i } from "react";
|
|
2
2
|
import { isRichTextDocument as a, isSafeHref as o, parseRichText as s, serializeRichText as c } from "@voltro/client";
|
|
3
3
|
import { Fragment as l, jsx as u, jsxs as d } from "react/jsx-runtime";
|
|
4
|
-
|
|
4
|
+
// src/richText.tsx
|
|
5
5
|
var f = (t, n) => {
|
|
6
6
|
let r = t.marks ?? [], i = t.text;
|
|
7
7
|
return r.includes("code") && (i = /* @__PURE__ */ u("code", { children: i }, n)), r.includes("italic") && (i = /* @__PURE__ */ u("em", { children: i }, n)), r.includes("strike") && (i = /* @__PURE__ */ u("s", { children: i }, n)), r.includes("bold") && (i = /* @__PURE__ */ u("strong", { children: i }, n)), /* @__PURE__ */ u(e, { children: i }, n);
|
|
@@ -77,5 +77,4 @@ var f = (t, n) => {
|
|
|
77
77
|
]
|
|
78
78
|
});
|
|
79
79
|
};
|
|
80
|
-
//#endregion
|
|
81
80
|
export { h as RichTextView, g as RichTextWidget };
|
package/dist/skeleton.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { formSections as e, useFormSkeleton as t, useTableSkeleton as n } from "@voltro/client";
|
|
2
2
|
import { jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
3
|
-
|
|
3
|
+
// src/skeleton.tsx
|
|
4
4
|
var a = ({ w: e }) => /* @__PURE__ */ r("span", {
|
|
5
5
|
"data-skeleton-bar": !0,
|
|
6
6
|
style: {
|
|
@@ -48,5 +48,4 @@ function s(e) {
|
|
|
48
48
|
}, t)) })]
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
|
-
//#endregion
|
|
52
51
|
export { o as FormSkeleton, s as TableSkeleton };
|
package/dist/strings.js
CHANGED
|
@@ -2,7 +2,7 @@ import { achievementUiStrings as e } from "./achievementStrings.js";
|
|
|
2
2
|
import { questUiStrings as t } from "./questStrings.js";
|
|
3
3
|
import { createContext as n, useContext as r, useMemo as i } from "react";
|
|
4
4
|
import { jsx as a } from "react/jsx-runtime";
|
|
5
|
-
|
|
5
|
+
// src/strings.tsx
|
|
6
6
|
var o = {
|
|
7
7
|
achievements: e.en,
|
|
8
8
|
quests: t.en,
|
|
@@ -144,5 +144,4 @@ function l(e) {
|
|
|
144
144
|
});
|
|
145
145
|
}
|
|
146
146
|
var u = () => r(s);
|
|
147
|
-
//#endregion
|
|
148
147
|
export { l as UiStringsProvider, o as defaultUiStrings, u as useUiStrings };
|
package/dist/widgets.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RichTextWidget as e } from "./richText.js";
|
|
2
2
|
import { createContext as t, useContext as n, useId as r, useMemo as i } from "react";
|
|
3
3
|
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
4
|
-
|
|
4
|
+
// src/widgets.tsx
|
|
5
5
|
var s = (e) => e == null ? "" : String(e), c = ({ required: e }) => e ? /* @__PURE__ */ a("span", {
|
|
6
6
|
"aria-hidden": "true",
|
|
7
7
|
children: " *"
|
|
@@ -243,5 +243,4 @@ var s = (e) => e == null ? "" : String(e), c = ({ required: e }) => e ? /* @__PU
|
|
|
243
243
|
children: e.children
|
|
244
244
|
});
|
|
245
245
|
}, w = (e) => n(S)[e] ?? x[e] ?? x.custom;
|
|
246
|
-
//#endregion
|
|
247
246
|
export { C as WidgetRegistryProvider, x as defaultWidgets, w as useWidget };
|
package/dist/workflow.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useUiStrings as e } from "./strings.js";
|
|
2
2
|
import { useWorkflowRunState as t } from "@voltro/client";
|
|
3
3
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
-
|
|
4
|
+
// src/workflow.tsx
|
|
5
5
|
var i = (e) => e === "succeeded" ? "✓" : e === "failed" ? "✗" : "…";
|
|
6
6
|
function a(a) {
|
|
7
7
|
let { api: o, runId: s, loadingText: c, emptyText: l } = a, u = e().workflow, d = t(o, s);
|
|
@@ -88,5 +88,4 @@ function s(e) {
|
|
|
88
88
|
})]
|
|
89
89
|
}) : null;
|
|
90
90
|
}
|
|
91
|
-
//#endregion
|
|
92
91
|
export { s as ApprovalControls, a as WorkflowProgress, o as WorkflowStatusBadge };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@voltro/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.88.0",
|
|
4
4
|
"description": "Schema-driven React components over Voltro's headless client bindings: AutoForm, DataTable, the widget seam, and live workflow/presence/AI surfaces.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"voltro",
|
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
"node": ">=24.0.0"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@voltro/client": "0.
|
|
37
|
-
"@voltro/plugin-comments": "0.
|
|
36
|
+
"@voltro/client": "0.88.0",
|
|
37
|
+
"@voltro/plugin-comments": "0.88.0"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
|
-
"effect": "4.0
|
|
40
|
+
"effect": "4.1.0",
|
|
41
41
|
"react": "^19.0.0"
|
|
42
42
|
},
|
|
43
43
|
"publishConfig": {
|