@omg-dev/app 0.6.38 → 0.6.39
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-lib/{ChangelogPage-bXEhk45x.js → ChangelogPage-Cw7SixAz.js} +18 -1
- package/dist-lib/{SessionFilesPanel-BOp2-2Qk.js → SessionFilesPanel-hjPtShAt.js} +1 -1
- package/dist-lib/{TermView-yUJq4X6a.js → TermView-Bc0haP5i.js} +2 -2
- package/dist-lib/{board-page-DSsxqeVL.js → board-page-By1kRbgQ.js} +15 -15
- package/dist-lib/{chat-engine-BpLW78aS.js → chat-engine-Cf2JPtp2.js} +1 -1
- package/dist-lib/{coding-agents-page-Mny8ZCKg.js → coding-agents-page-BNk32Wyw.js} +1 -1
- package/dist-lib/{computer-page-CBgIW1Gu.js → computer-page-DagCSMck.js} +2 -2
- package/dist-lib/{embedded-CblBLBh9.js → embedded-7v2RQwAy.js} +11425 -10438
- package/dist-lib/index.js +1 -1
- package/dist-lib/{keyboard-BI3LBFBT.js → keyboard-CnQhbyYy.js} +1 -1
- package/dist-lib/{resume-session-sheet-DxGDw7a4.js → resume-session-sheet-B_JC5R7U.js} +1 -1
- package/dist-lib/{session-token-usage-umnfevLI.js → session-token-usage-gFCp_A33.js} +1 -1
- package/dist-lib/{shipped-page-Cgc62O38.js → shipped-page-MuQOZWnY.js} +1 -1
- package/dist-lib/{streamdown-response-Ba03vt5J.js → streamdown-response-CE5P_PxD.js} +1 -1
- package/dist-lib/styles.css +1 -1
- package/package.json +2 -2
|
@@ -1,9 +1,26 @@
|
|
|
1
1
|
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { z as n } from "./embedded-
|
|
2
|
+
import { z as n } from "./embedded-7v2RQwAy.js";
|
|
3
3
|
const t = `# Changelog
|
|
4
4
|
|
|
5
5
|
Recent product updates and deployment notes.
|
|
6
6
|
|
|
7
|
+
## September 4, 2026 - Native integrations and per-role tool access (v0.6.39)
|
|
8
|
+
|
|
9
|
+
- **Connect integrations natively.** The Integrations panel lists your
|
|
10
|
+
connectors with their logos. It uses the integrations.sh catalog. The old
|
|
11
|
+
embedded iframe is gone.
|
|
12
|
+
- **OAuth connect for a connector.** You authorize a connector in a popup. omg
|
|
13
|
+
owns the callback and stores the tokens encrypted on the box. The flow
|
|
14
|
+
completes over remote access.
|
|
15
|
+
- **Add a custom MCP or OpenAPI source.** The custom source form is collapsed
|
|
16
|
+
behind a button so the panel stays clean.
|
|
17
|
+
- **Per-member and per-role tool access.** Each member gets connectors scoped to
|
|
18
|
+
the member. A role controls which tools a session can use.
|
|
19
|
+
- **Approve connector calls from chat.** A restricted role must get approval in
|
|
20
|
+
the chat before a connector tool runs.
|
|
21
|
+
- **Sandbox for restricted roles.** A restricted-role session runs with a
|
|
22
|
+
bubblewrap filesystem sandbox and a per-role network egress allowlist.
|
|
23
|
+
|
|
7
24
|
## September 3, 2026 - Board in the desktop workspace (v0.6.38)
|
|
8
25
|
|
|
9
26
|
- **The Board sits in the desktop workspace.** On a wide screen the session
|
|
@@ -2,7 +2,7 @@ import { jsx as e, jsxs as s, Fragment as te } from "react/jsx-runtime";
|
|
|
2
2
|
import { memo as ne, useState as m, useRef as T, useCallback as v, useEffect as C, useMemo as q, Suspense as U } from "react";
|
|
3
3
|
import { createPortal as re } from "react-dom";
|
|
4
4
|
import { cn as y } from "cnfast";
|
|
5
|
-
import { f as oe, a4 as W, a5 as se, X as I, a6 as ie, a7 as ae, L as H, a8 as le, y as de, C as ce, a9 as L } from "./embedded-
|
|
5
|
+
import { f as oe, a4 as W, a5 as se, X as I, a6 as ie, a7 as ae, L as H, a8 as le, y as de, C as ce, a9 as L } from "./embedded-7v2RQwAy.js";
|
|
6
6
|
import { c as me } from "./create-CBk9uwJH.js";
|
|
7
7
|
/**
|
|
8
8
|
* @license lucide-react v0.577.0 - ISC
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as r, jsx as k, Fragment as vA } from "react/jsx-runtime";
|
|
2
2
|
import { useState as L, useRef as R, useEffect as p, useCallback as q } from "react";
|
|
3
|
-
import { f as UA, o as iQ, X as CA, aa as wQ, y as sQ, ab as tQ, ac as eQ, a4 as aQ, ad as MQ, R as hQ, C as NQ } from "./embedded-
|
|
4
|
-
import { K as ZA } from "./keyboard-
|
|
3
|
+
import { f as UA, o as iQ, X as CA, aa as wQ, y as sQ, ab as tQ, ac as eQ, a4 as aQ, ad as MQ, R as hQ, C as NQ } from "./embedded-7v2RQwAy.js";
|
|
4
|
+
import { K as ZA } from "./keyboard-CnQhbyYy.js";
|
|
5
5
|
/**
|
|
6
6
|
* @license lucide-react v0.577.0 - ISC
|
|
7
7
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { jsx as i, jsxs as
|
|
1
|
+
import { jsx as i, jsxs as l } from "react/jsx-runtime";
|
|
2
2
|
import { useState as x, useEffect as h, useMemo as b } from "react";
|
|
3
|
-
import { f as y, F as N, O as k, Q as w, a3 as v, L as I, m as A, k as _ } from "./embedded-
|
|
3
|
+
import { f as y, F as N, O as k, Q as w, a3 as v, L as I, m as A, k as _ } from "./embedded-7v2RQwAy.js";
|
|
4
4
|
import { cn as g } from "cnfast";
|
|
5
5
|
/**
|
|
6
6
|
* @license lucide-react v0.577.0 - ISC
|
|
@@ -56,7 +56,7 @@ function M(t) {
|
|
|
56
56
|
for (const e of t.sessions) {
|
|
57
57
|
const n = e.sessionId;
|
|
58
58
|
if (!n || e.botId) continue;
|
|
59
|
-
const f = o.get(n),
|
|
59
|
+
const f = o.get(n), c = {
|
|
60
60
|
key: `session:${n}`,
|
|
61
61
|
sessionId: n,
|
|
62
62
|
title: B(e),
|
|
@@ -66,7 +66,7 @@ function M(t) {
|
|
|
66
66
|
project: e.project,
|
|
67
67
|
at: e.lastActivityAt ?? e.startedAt ?? 0
|
|
68
68
|
};
|
|
69
|
-
f ? (
|
|
69
|
+
f ? (c.note = p(f.question), d.push(c)) : e.status === "blocked" ? (c.note = C(e), d.push(c)) : e.busy ? (e.last?.text && (c.note = p(e.last.text)), a.push(c)) : (e.last?.text && (c.note = p(e.last.text)), s.push(c));
|
|
70
70
|
}
|
|
71
71
|
const r = t.posts.map((e) => ({
|
|
72
72
|
key: `post:${e.id}`,
|
|
@@ -115,14 +115,14 @@ function S({
|
|
|
115
115
|
card: t,
|
|
116
116
|
onOpen: o
|
|
117
117
|
}) {
|
|
118
|
-
return /* @__PURE__ */
|
|
118
|
+
return /* @__PURE__ */ l(
|
|
119
119
|
"button",
|
|
120
120
|
{
|
|
121
121
|
type: "button",
|
|
122
122
|
onClick: o,
|
|
123
123
|
className: "flex w-full flex-col gap-1.5 rounded-xl border border-border bg-card px-3 py-2.5 text-left shadow-xs transition-colors hover:bg-foreground/[0.03] active:bg-foreground/[0.06]",
|
|
124
124
|
children: [
|
|
125
|
-
/* @__PURE__ */
|
|
125
|
+
/* @__PURE__ */ l("div", { className: "flex items-start gap-2", children: [
|
|
126
126
|
/* @__PURE__ */ i(
|
|
127
127
|
A,
|
|
128
128
|
{
|
|
@@ -134,7 +134,7 @@ function S({
|
|
|
134
134
|
/* @__PURE__ */ i("span", { className: "line-clamp-2 min-w-0 flex-1 text-sm font-medium leading-snug", children: t.title })
|
|
135
135
|
] }),
|
|
136
136
|
t.note ? /* @__PURE__ */ i("p", { className: "line-clamp-2 text-xs leading-snug text-muted-foreground", children: t.note }) : null,
|
|
137
|
-
/* @__PURE__ */
|
|
137
|
+
/* @__PURE__ */ l("div", { className: "flex items-center gap-2 text-[11px] text-muted-foreground/80", children: [
|
|
138
138
|
t.project ? /* @__PURE__ */ i("span", { className: "truncate", children: t.project }) : null,
|
|
139
139
|
/* @__PURE__ */ i("span", { className: "ml-auto shrink-0", children: _(t.at || null) })
|
|
140
140
|
] })
|
|
@@ -148,25 +148,25 @@ function O({
|
|
|
148
148
|
onOpenShipped: d
|
|
149
149
|
}) {
|
|
150
150
|
const a = t.reduce((s, r) => s + r.cards.length, 0);
|
|
151
|
-
return /* @__PURE__ */
|
|
152
|
-
/* @__PURE__ */
|
|
151
|
+
return /* @__PURE__ */ l("div", { className: "flex h-full min-h-0 flex-col gap-3 px-3 pb-4 md:px-4", children: [
|
|
152
|
+
/* @__PURE__ */ l("div", { className: "flex items-baseline justify-between gap-3", children: [
|
|
153
153
|
/* @__PURE__ */ i("h1", { className: "text-base font-semibold tracking-tight", children: "Board" }),
|
|
154
|
-
/* @__PURE__ */
|
|
154
|
+
/* @__PURE__ */ l("span", { className: "text-xs text-muted-foreground", children: [
|
|
155
155
|
a,
|
|
156
156
|
" ",
|
|
157
157
|
a === 1 ? "card" : "cards",
|
|
158
158
|
" · read only"
|
|
159
159
|
] })
|
|
160
160
|
] }),
|
|
161
|
-
/* @__PURE__ */ i("div", { className: "flex min-h-0 flex-1 flex-
|
|
161
|
+
/* @__PURE__ */ i("div", { className: "flex min-h-0 flex-1 flex-row snap-x snap-mandatory gap-3 overflow-x-auto overflow-y-hidden pb-2 md:snap-none", children: t.map((s) => {
|
|
162
162
|
const r = q[s.id], e = r.icon;
|
|
163
|
-
return /* @__PURE__ */
|
|
163
|
+
return /* @__PURE__ */ l(
|
|
164
164
|
"section",
|
|
165
165
|
{
|
|
166
166
|
"aria-label": s.label,
|
|
167
|
-
className: "flex w-
|
|
167
|
+
className: "flex min-h-0 w-[82vw] max-w-72 shrink-0 snap-start flex-col rounded-2xl bg-muted/40 ring-1 ring-inset ring-border/60 md:w-72",
|
|
168
168
|
children: [
|
|
169
|
-
/* @__PURE__ */
|
|
169
|
+
/* @__PURE__ */ l("header", { className: "flex items-center gap-2 px-3 pt-3 pb-2", children: [
|
|
170
170
|
/* @__PURE__ */ i(
|
|
171
171
|
e,
|
|
172
172
|
{
|
|
@@ -189,7 +189,7 @@ function O({
|
|
|
189
189
|
}
|
|
190
190
|
)
|
|
191
191
|
] }),
|
|
192
|
-
/* @__PURE__ */ i("div", { className: "flex flex-col gap-2 px-2 pb-2
|
|
192
|
+
/* @__PURE__ */ i("div", { className: "flex min-h-0 flex-1 flex-col gap-2 overflow-y-auto px-2 pb-2", children: s.cards.length === 0 ? /* @__PURE__ */ i("p", { className: "px-1 py-6 text-center text-xs text-muted-foreground", children: r.empty }) : s.cards.map((n) => /* @__PURE__ */ i(
|
|
193
193
|
S,
|
|
194
194
|
{
|
|
195
195
|
card: n,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as ao } from "react/jsx-runtime";
|
|
2
2
|
import { useRef as Dt, useCallback as Lt, useSyncExternalStore as ut, useEffect as so } from "react";
|
|
3
3
|
import { g as io } from "./_commonjsHelpers-C6fGbg64.js";
|
|
4
|
-
import { ae as uo } from "./embedded-
|
|
4
|
+
import { ae as uo } from "./embedded-7v2RQwAy.js";
|
|
5
5
|
var Ar = "vercel.ai.error", co = Symbol.for(Ar), Ut, Ft, se = class Nr extends (Ft = Error, Ut = co, Ft) {
|
|
6
6
|
/**
|
|
7
7
|
* Creates an AI SDK Error.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs as s, jsx as e, Fragment as O } from "react/jsx-runtime";
|
|
2
|
-
import { R, B as u, L as $, n as A, o as S, M as G, p as j, q as E, s as f, T as P, u as D, v as W, w as T, x as X, y as J, X as Q, K as V } from "./embedded-
|
|
2
|
+
import { R, B as u, L as $, n as A, o as S, M as G, p as j, q as E, s as f, T as P, u as D, v as W, w as T, x as X, y as J, X as Q, K as V } from "./embedded-7v2RQwAy.js";
|
|
3
3
|
import { cn as U } from "cnfast";
|
|
4
4
|
import { useState as I } from "react";
|
|
5
5
|
function B(l) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as pe, jsx as J, Fragment as zt } from "react/jsx-runtime";
|
|
2
2
|
import { useState as Ve, useRef as Qe, useCallback as ve, useEffect as Le } from "react";
|
|
3
|
-
import { f as Fn, a4 as Ai, ac as Mn, B as Ge, R as Tn, X as Qn, L as Xi, af as Ln } from "./embedded-
|
|
4
|
-
import { K as Rn } from "./keyboard-
|
|
3
|
+
import { f as Fn, a4 as Ai, ac as Mn, B as Ge, R as Tn, X as Qn, L as Xi, af as Ln } from "./embedded-7v2RQwAy.js";
|
|
4
|
+
import { K as Rn } from "./keyboard-CnQhbyYy.js";
|
|
5
5
|
/**
|
|
6
6
|
* @license lucide-react v0.577.0 - ISC
|
|
7
7
|
*
|