@belonguniverseai/react-sdk 0.6.26 → 0.6.28
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 +36 -0
- package/dist/api/account-connectors.d.ts +2 -2
- package/dist/api/account-scope.d.ts +75 -0
- package/dist/api/artifact-actions.d.ts +29 -0
- package/dist/api/client-identity.d.ts +3 -1
- package/dist/api/client.d.ts +1972 -226
- package/dist/api/goals.d.ts +4 -4
- package/dist/api/live-artifacts.d.ts +197 -0
- package/dist/api/my-usage.d.ts +28 -0
- package/dist/api/queries.d.ts +6 -4
- package/dist/api/query-keys.d.ts +44 -3
- package/dist/api/task-schedule-sharing.d.ts +7 -4
- package/dist/api/task-schedules.d.ts +20 -17
- package/dist/app/dock-story-data.d.ts +10 -6
- package/dist/component/BelongWidget.d.ts +4 -1
- package/dist/component/{abnfDiagram-N423BO3Z-DpQ_UaNq.js → abnfDiagram-N423BO3Z-BGC_KU0K.js} +4 -4
- package/dist/component/{arc-BoxI9KQB.js → arc-BpIEtZvJ.js} +2 -2
- package/dist/component/{architectureDiagram-T3A2C74G-C0Pxx-k7.js → architectureDiagram-T3A2C74G-DYlEVfnh.js} +3 -3
- package/dist/component/{blockDiagram-VBNYF7ZC-CPX5VZHq.js → blockDiagram-VBNYF7ZC-BWDnhAW1.js} +4 -4
- package/dist/component/{c4Diagram-5PPSVZJV-6GrzIAcz.js → c4Diagram-5PPSVZJV-VKL0Shn2.js} +3 -3
- package/dist/component/{channel-Dp0k-SEg.js → channel-gGd0pNDR.js} +2 -2
- package/dist/component/{chunk-2GRJ4B5K-CTz4CZNM.js → chunk-2GRJ4B5K-CEt4y1jX.js} +2 -2
- package/dist/component/{chunk-2Q5K7J3B-Bg9gj6WB.js → chunk-2Q5K7J3B-Dj2wrNzr.js} +2 -2
- package/dist/component/{chunk-5RXB4S5H-SJVXjTS4.js → chunk-5RXB4S5H-oJQEn1bH.js} +5 -5
- package/dist/component/{chunk-5VM5RSS4-CCi9rnUJ.js → chunk-5VM5RSS4-DddP8MPP.js} +2 -2
- package/dist/component/{chunk-6Q2QTUOP-DxQKGpDM.js → chunk-6Q2QTUOP-CppUJwrF.js} +2 -2
- package/dist/component/{chunk-GF5L2VYU-C1soxsXo.js → chunk-GF5L2VYU--hyUlO9v.js} +6 -6
- package/dist/component/{chunk-JWPE2WC7-3wshSHI2.js → chunk-JWPE2WC7-CN0Ieqel.js} +2 -2
- package/dist/component/{chunk-KBJHAD2P-DQdZO07y.js → chunk-KBJHAD2P-BWhCQoHz.js} +2 -2
- package/dist/component/{chunk-RYQCIY6F-DUaZ-HUS.js → chunk-RYQCIY6F-BgNewpQe.js} +2 -2
- package/dist/component/{chunk-XXDRQBXY-D3NSjj_n.js → chunk-XXDRQBXY-mNH171OF.js} +2 -2
- package/dist/component/{classDiagram-JCYQIIEL-BVRygNRR.js → classDiagram-JCYQIIEL-UjZbWotD.js} +3 -3
- package/dist/component/{classDiagram-v2-OCEON4UE-BVRygNRR.js → classDiagram-v2-OCEON4UE-UjZbWotD.js} +3 -3
- package/dist/component/{cose-bilkent-JH36ORCC-DLTvBiOo.js → cose-bilkent-JH36ORCC-lsVWGlMj.js} +2 -2
- package/dist/component/{cynefinDiagram-MW4NZA55-xK50k2_4.js → cynefinDiagram-MW4NZA55-B5Ss0zoy.js} +3 -3
- package/dist/component/{dagre-VZM6K2ZE-DMUwiPX1.js → dagre-VZM6K2ZE-DisWRVfU.js} +3 -3
- package/dist/component/{diagram-7IWD3JNH-Cn6oaVgE.js → diagram-7IWD3JNH-B2QrdsOh.js} +4 -4
- package/dist/component/{diagram-B4RE2ZJO-Dc_LVByi.js → diagram-B4RE2ZJO-Bs8l4THz.js} +3 -3
- package/dist/component/{diagram-LBJQPF4R-y80jmIxC.js → diagram-LBJQPF4R-JTadtYMW.js} +3 -3
- package/dist/component/{diagram-Q27KOJAE-Bp6njNLR.js → diagram-Q27KOJAE-BQC33flc.js} +4 -4
- package/dist/component/{diagram-UB23O5K3-D3X1PDYF.js → diagram-UB23O5K3-ujC22dQx.js} +3 -3
- package/dist/component/{ebnfDiagram-BXEA7PRR-9Lw8nzKe.js → ebnfDiagram-BXEA7PRR-0WnF2wzt.js} +4 -4
- package/dist/component/{erDiagram-JOGREHBK-CcG_SaTj.js → erDiagram-JOGREHBK-CqgMsd5R.js} +5 -5
- package/dist/component/{flowDiagram-UKHOOZJN-BiabESAj.js → flowDiagram-UKHOOZJN-BOM0P8Mk.js} +7 -7
- package/dist/component/{ganttDiagram-PKOTCBZU-BAfZiFRN.js → ganttDiagram-PKOTCBZU-WeRFC1th.js} +3 -3
- package/dist/component/{gitGraphDiagram-DS77QQ5N-2_hBA0gy.js → gitGraphDiagram-DS77QQ5N-CS8L-BA8.js} +4 -4
- package/dist/component/{highlighted-body-OFNGDK62-BWKA8a2L.js → highlighted-body-OFNGDK62-CGejnMyq.js} +2 -2
- package/dist/component/index.js +2 -2
- package/dist/component/{infoDiagram-6WML65LV-C-P8lJtc.js → infoDiagram-6WML65LV-CQQhytkd.js} +2 -2
- package/dist/component/{ishikawaDiagram-WSZJBQD7-CkTFVaSp.js → ishikawaDiagram-WSZJBQD7-CjDo3-zt.js} +2 -2
- package/dist/component/{journeyDiagram-NVQOT4AX-CVW--vNB.js → journeyDiagram-NVQOT4AX-BCCoblta.js} +5 -5
- package/dist/component/{kanban-definition-27J2QSJJ-5EmiKkud.js → kanban-definition-27J2QSJJ-DgTIrgvB.js} +3 -3
- package/dist/component/{linear-CSKvOjpb.js → linear-BOaza_dp.js} +2 -2
- package/dist/component/{mermaid-GHXKKRXX-DJmRTUDm.js → mermaid-GHXKKRXX-BAq5-Vj8.js} +54487 -50019
- package/dist/component/{mindmap-definition-FAOFIHXS-D8kuCYBh.js → mindmap-definition-FAOFIHXS-D1oolR3A.js} +4 -4
- package/dist/component/{pegDiagram-VL7TDLO6-BTfnYOZL.js → pegDiagram-VL7TDLO6-C9UxqvBP.js} +4 -4
- package/dist/component/{pieDiagram-7S7Q4E2Y-CzbOJQ6u.js → pieDiagram-7S7Q4E2Y-I5IXzOZM.js} +4 -4
- package/dist/component/{quadrantDiagram-CIZ2JOQS-BCLm-h12.js → quadrantDiagram-CIZ2JOQS-DPDFBhEd.js} +3 -3
- package/dist/component/{railroadDiagram-AXF67PYL-DxjbsMsY.js → railroadDiagram-AXF67PYL-DIAkhVTf.js} +4 -4
- package/dist/component/{requirementDiagram-LRYGKXZP-7CT3WVcX.js → requirementDiagram-LRYGKXZP-DBEmV-Qy.js} +4 -4
- package/dist/component/{sankeyDiagram-W5VNT64P-P0xeL0DB.js → sankeyDiagram-W5VNT64P-BEeDyDj7.js} +2 -2
- package/dist/component/{sequenceDiagram-SI44F4Z6-BZwzqGo7.js → sequenceDiagram-SI44F4Z6-WYcXWUHF.js} +4 -4
- package/dist/component/{sizeCapture-X5ZJPWSS-BmFHn5uM.js → sizeCapture-X5ZJPWSS-BqDBRpiS.js} +2 -2
- package/dist/component/{stateDiagram-OKZ733FA-CVuv1e4U.js → stateDiagram-OKZ733FA-CfYfR0OH.js} +3 -3
- package/dist/component/{stateDiagram-v2-UEYNNEHI-D9ToaXGa.js → stateDiagram-v2-UEYNNEHI-BSa2VwcQ.js} +3 -3
- package/dist/component/{swimlanes-SLNWSIFB-D4imP0Ms.js → swimlanes-SLNWSIFB-C-7mrC4X.js} +4 -4
- package/dist/component/{swimlanesDiagram-ULZ7WXOC-BTQ985v3.js → swimlanesDiagram-ULZ7WXOC-DXcMd7U4.js} +3 -3
- package/dist/component/{timeline-definition-Z64GVDOM-DAHxnCB-.js → timeline-definition-Z64GVDOM-Dp65E80E.js} +3 -3
- package/dist/component/{vennDiagram-T6HMQDX7-K5TNKkRE.js → vennDiagram-T6HMQDX7-CRpZ12TH.js} +2 -2
- package/dist/component/{wardleyDiagram-T6FBY63Y-CYU76C7a.js → wardleyDiagram-T6FBY63Y-BupsM8K3.js} +3 -3
- package/dist/component/{xychartDiagram-ELKLHX3M-CRncQBO_.js → xychartDiagram-ELKLHX3M-CUnr8Qbu.js} +3 -3
- package/dist/components/artifacts/ArtifactDetailSurface.d.ts +37 -0
- package/dist/components/artifacts/ArtifactMeta.d.ts +10 -0
- package/dist/components/artifacts/ArtifactsListSurface.d.ts +11 -0
- package/dist/components/artifacts/BindScheduleDialog.d.ts +39 -0
- package/dist/components/artifacts/ConfirmDeleteArtifactDialog.d.ts +9 -0
- package/dist/components/artifacts/ConfirmReshareDialog.d.ts +24 -0
- package/dist/components/artifacts/artifact-format.d.ts +38 -0
- package/dist/components/artifacts/open-artifact-version.d.ts +16 -0
- package/dist/components/artifacts/use-artifact-actions.d.ts +32 -0
- package/dist/components/embed/ArtifactApprovalDialog.d.ts +8 -0
- package/dist/components/embed/ArtifactOperationNoticeLine.d.ts +5 -0
- package/dist/components/embed/EmbedComposer.d.ts +5 -1
- package/dist/components/embed/EmbedConversation.d.ts +4 -1
- package/dist/components/embed/EmbedRail.d.ts +9 -2
- package/dist/components/embed/MobileNavBar.d.ts +2 -1
- package/dist/components/embed/ResponseModeDial.d.ts +11 -0
- package/dist/components/embed/SessionStatsPanel.d.ts +3 -0
- package/dist/components/embed/UsageSettings.d.ts +11 -0
- package/dist/components/embed/WorkspacePolicySetting.d.ts +1 -0
- package/dist/components/embed/format-compact-number.d.ts +8 -0
- package/dist/components/embed/use-artifact-operation-notices.d.ts +20 -0
- package/dist/components/embed/use-inline-preview-url.d.ts +3 -1
- package/dist/components/scheduled/ScheduledDetailSurface.d.ts +9 -0
- package/dist/embed/artifact-action-bridge.d.ts +70 -0
- package/dist/embed/artifact-operation-notices.d.ts +45 -0
- package/dist/embed/artifact-remint-budget.d.ts +19 -0
- package/dist/embed/artifact-sandbox-hold.d.ts +10 -0
- package/dist/embed/dock-state.d.ts +1 -1
- package/dist/embed/global.d.ts +2 -0
- package/dist/embed/goal-row-model.d.ts +1 -1
- package/dist/embed/presets.d.ts +1 -0
- package/dist/embed/response-mode.d.ts +48 -0
- package/dist/embed/theme.d.ts +5 -0
- package/dist/embed/workspace-policy.d.ts +7 -0
- package/dist/i18n/messages/en.d.ts +161 -8
- package/dist/i18n/messages/surfaces/aiElements.d.ts +4 -0
- package/dist/i18n/messages/surfaces/artifacts.d.ts +304 -0
- package/dist/i18n/messages/surfaces/embedMisc.d.ts +84 -0
- package/dist/i18n/messages/surfaces/header.d.ts +4 -0
- package/dist/i18n/messages/surfaces/myUsage.d.ts +75 -0
- package/dist/i18n/messages/surfaces/scheduled.d.ts +22 -2
- package/dist/i18n/messages/surfaces/settings.d.ts +28 -0
- package/dist/i18n/messages/surfaces/stats.d.ts +4 -12
- package/dist/i18n/messages/surfaces/stream.d.ts +120 -0
- package/dist/i18n/messages/surfaces/usage.d.ts +0 -8
- package/dist/infrastructure/telemetry/first-response-timing.d.ts +51 -0
- package/dist/lib/use-now.d.ts +32 -0
- package/dist/routes/artifact-detail.d.ts +2 -0
- package/dist/routes/artifacts.d.ts +2 -0
- package/dist/routes/chat/transcript-row.d.ts +1 -0
- package/dist/stream/belong-chat-transport.d.ts +39 -7
- package/dist/stream/belong-data-parts.d.ts +10 -0
- package/dist/stream/message-parts.d.ts +3 -1
- package/dist/stream/queued-message-outbox.d.ts +5 -0
- package/dist/stream/select-session-usage.d.ts +9 -0
- package/dist/stream/session-stats-csv.d.ts +7 -9
- package/dist/types/public.d.ts +4 -4
- package/package.json +1 -1
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Settings → Usage (plan 018): the signed-in user's own consumption, in
|
|
3
|
+
* weighted tokens — month-to-date, today, and a 30-day daily strip.
|
|
4
|
+
*
|
|
5
|
+
* One unit only. The raw input / output / cache counts never reach the dock
|
|
6
|
+
* (`GET /v1/usage` does not send them). Days are UTC days, and the view says so.
|
|
7
|
+
* Quiet by design (§42): primary-coloured bars, muted text, no red. A load
|
|
8
|
+
* failure is one muted line with a retry, and a cloud that predates the route
|
|
9
|
+
* says "not available yet" instead of failing.
|
|
10
|
+
*/
|
|
11
|
+
export declare const UsageSettings: () => import("react").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function WorkspacePolicySetting(): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Locale-aware compact numbers for the Usage view (plan 018): "1.3M" in
|
|
3
|
+
* English, "1,3 M" in Spanish — `formatTokens` predates the dock's locales and
|
|
4
|
+
* always writes "." and "k". One formatter per locale, built once.
|
|
5
|
+
*/
|
|
6
|
+
export declare const formatCompactNumber: (value: number, locale: string) => string;
|
|
7
|
+
/** A full, grouped number for tooltips and screen readers: "1,250,000". */
|
|
8
|
+
export declare const formatWholeNumber: (value: number, locale: string) => string;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ArtifactOperation } from '@belong/codec/artifact-actions';
|
|
2
|
+
import { ArtifactActionApi } from '../../api/artifact-actions.ts';
|
|
3
|
+
import { ArtifactOperationSighting } from '../../embed/artifact-action-bridge.ts';
|
|
4
|
+
import { ArtifactOperationNotice } from '../../embed/artifact-operation-notices.ts';
|
|
5
|
+
/** Re-read invocations that hold the sandbox at most this often (nothing else may be reading). */
|
|
6
|
+
export declare const ARTIFACT_HOLD_REFRESH_MS = 15000;
|
|
7
|
+
export declare const useArtifactOperationNotices: (input: {
|
|
8
|
+
/** Null when this preview has no actions. A new API (new artifact or workspace) starts over. */
|
|
9
|
+
readonly api: ArtifactActionApi | null;
|
|
10
|
+
/**
|
|
11
|
+
* Starts the dock's automatic Simetrik reconnect, or returns null when this view has no grant
|
|
12
|
+
* scope to reconnect.
|
|
13
|
+
*/
|
|
14
|
+
readonly reconnect: (reconnectId: string) => Promise<void> | null;
|
|
15
|
+
}) => {
|
|
16
|
+
readonly notice: ArtifactOperationNotice;
|
|
17
|
+
readonly onOperation: (operation: ArtifactOperation, sighting: ArtifactOperationSighting) => void;
|
|
18
|
+
readonly onReconnectRequired: (reconnectId: string) => void;
|
|
19
|
+
readonly stop: () => void;
|
|
20
|
+
};
|
|
@@ -16,5 +16,7 @@ export type InlinePreviewUrl = {
|
|
|
16
16
|
} | {
|
|
17
17
|
readonly status: "ready";
|
|
18
18
|
readonly url: string;
|
|
19
|
+
readonly actionEnabled?: boolean;
|
|
20
|
+
readonly actionBridgeKey?: string;
|
|
19
21
|
};
|
|
20
|
-
export declare const useInlinePreviewUrl: (target: InlinePreviewTarget | null) => InlinePreviewUrl;
|
|
22
|
+
export declare const useInlinePreviewUrl: (target: InlinePreviewTarget | null, remintSeq?: number) => InlinePreviewUrl;
|
|
@@ -2,10 +2,19 @@ import { TaskScheduleDetail, TaskScheduleRun } from '../../api/task-schedules.ts
|
|
|
2
2
|
export declare const EmailNotificationIndicator: (props: {
|
|
3
3
|
readonly notification: TaskScheduleDetail["notification"];
|
|
4
4
|
readonly shared?: boolean;
|
|
5
|
+
readonly sharedRecipients?: readonly string[] | undefined;
|
|
5
6
|
}) => import("react").JSX.Element;
|
|
6
7
|
export declare const MicrosoftTeamsDeliveryIndicator: (props: {
|
|
7
8
|
readonly delivery: NonNullable<TaskScheduleDetail["microsoftTeamsDelivery"]>;
|
|
8
9
|
}) => import("react").JSX.Element;
|
|
10
|
+
/**
|
|
11
|
+
* #655: the stable SERIES id integrations use to trigger a schedule. It exists
|
|
12
|
+
* from creation, so it shows for manual and paused schedules before any
|
|
13
|
+
* occurrence or execution id does. Copying is read-only — it never runs work.
|
|
14
|
+
*/
|
|
15
|
+
export declare const ScheduleIdField: (props: {
|
|
16
|
+
readonly taskScheduleId: string;
|
|
17
|
+
}) => import("react").JSX.Element;
|
|
9
18
|
export declare const RunCard: (props: {
|
|
10
19
|
readonly run: TaskScheduleRun;
|
|
11
20
|
readonly scheduleTitle: string;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { ArtifactOperation, ArtifactReview } from '@belong/codec/artifact-actions';
|
|
2
|
+
import { ArtifactBridgeApi } from '../api/artifact-actions.ts';
|
|
3
|
+
export type ArtifactApprovalRequest = {
|
|
4
|
+
readonly operation: ArtifactOperation;
|
|
5
|
+
readonly review: ArtifactReview;
|
|
6
|
+
};
|
|
7
|
+
export type ArtifactActionBridge = {
|
|
8
|
+
onLoad: () => void;
|
|
9
|
+
dispose: () => void;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Why a bridge asks its owner for a fresh preview mint (new token, new document key, new frame):
|
|
13
|
+
* `navigation` — a second document loaded in the frame (the report reloaded or navigated itself);
|
|
14
|
+
* `stale` — the bridge was created for a frame that already loaded, or for a key already spent.
|
|
15
|
+
*/
|
|
16
|
+
export type ArtifactRemintReason = "navigation" | "stale";
|
|
17
|
+
/**
|
|
18
|
+
* How the parent learned a snapshot: `transition` = it just changed in front of this view (a
|
|
19
|
+
* submission, an approval decision, an observed status read); `snapshot` = a current read the
|
|
20
|
+
* report asked for (get, list, observe's first answer, cancel).
|
|
21
|
+
*/
|
|
22
|
+
export type ArtifactOperationSighting = "transition" | "snapshot";
|
|
23
|
+
/** Report requests admitted per window, across every bridge one preview view creates. */
|
|
24
|
+
export declare const ARTIFACT_REQUESTS_PER_WINDOW = 60;
|
|
25
|
+
export declare const ARTIFACT_REQUEST_WINDOW_MS = 60000;
|
|
26
|
+
export type ArtifactRequestWindow = {
|
|
27
|
+
readonly admit: (nowMs: number) => boolean;
|
|
28
|
+
};
|
|
29
|
+
/** Fixed window. Owned by the preview view, so neither a reload nor a re-mint refills it. */
|
|
30
|
+
export declare const createArtifactRequestWindow: () => ArtifactRequestWindow;
|
|
31
|
+
export declare const ARTIFACT_POLL_BASE_MS = 2000;
|
|
32
|
+
/** Ceilings while a status stays the same. Running work changes sooner than work that waits. */
|
|
33
|
+
export declare const ARTIFACT_POLL_RUNNING_MAX_MS = 15000;
|
|
34
|
+
export declare const ARTIFACT_POLL_WAITING_MAX_MS = 30000;
|
|
35
|
+
type PolledStatus = ArtifactOperation["status"];
|
|
36
|
+
/**
|
|
37
|
+
* Delay before the next status read. A new status starts again at 2 s; the same pending status
|
|
38
|
+
* backs off by half each read (running up to 15 s, queued/approval up to 30 s); an unsettled
|
|
39
|
+
* unknown outcome or a failed read doubles up to 30 s.
|
|
40
|
+
*/
|
|
41
|
+
export declare const nextArtifactPollDelayMs: (previous: {
|
|
42
|
+
readonly delayMs: number;
|
|
43
|
+
readonly status: PolledStatus | null;
|
|
44
|
+
}, read: PolledStatus | "read_failed") => number;
|
|
45
|
+
/**
|
|
46
|
+
* One bridge per minted preview document. Opaque origins require the exact frame source, a single
|
|
47
|
+
* challenge sent on the frame's FIRST load, and the minted document key; origin "null" is never an
|
|
48
|
+
* authority. The first document is the one the parent navigated the frame to; any later load is a
|
|
49
|
+
* document the report chose (reload or navigation), so the bridge retires and asks for a re-mint
|
|
50
|
+
* rather than offering that document a channel.
|
|
51
|
+
*/
|
|
52
|
+
export declare const createArtifactActionBridge: (input: {
|
|
53
|
+
readonly frame: HTMLIFrameElement;
|
|
54
|
+
readonly artifactId: string;
|
|
55
|
+
readonly documentKey: string;
|
|
56
|
+
readonly api: ArtifactBridgeApi;
|
|
57
|
+
readonly currentScopeKey: () => string;
|
|
58
|
+
readonly onApproval: (request: ArtifactApprovalRequest, signal: AbortSignal) => Promise<"approved" | "rejected">;
|
|
59
|
+
readonly onRemint: (reason: ArtifactRemintReason) => void;
|
|
60
|
+
/** Every validated snapshot this bridge received, for trusted parent UI (never the report). */
|
|
61
|
+
readonly onOperation?: (operation: ArtifactOperation, sighting: ArtifactOperationSighting) => void;
|
|
62
|
+
/** An authenticated API refusal needs connection repair; never a report-requested method. */
|
|
63
|
+
readonly onReconnectRequired?: (reconnectId: string) => void;
|
|
64
|
+
/** The frame already finished a load before this bridge existed: its document is unknown. */
|
|
65
|
+
readonly frameAlreadyLoaded?: boolean;
|
|
66
|
+
readonly requestWindow?: ArtifactRequestWindow;
|
|
67
|
+
readonly eventTarget?: Window;
|
|
68
|
+
readonly nowMs?: () => number;
|
|
69
|
+
}) => ArtifactActionBridge;
|
|
70
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ArtifactOperation } from '@belong/codec/artifact-actions';
|
|
2
|
+
import { ArtifactOperationSighting } from './artifact-action-bridge.ts';
|
|
3
|
+
export declare const CLI_RECONNECT_REQUIRED = "cli_reconnect_required";
|
|
4
|
+
export type TrackedArtifactOperation = {
|
|
5
|
+
readonly operation: ArtifactOperation;
|
|
6
|
+
readonly receivedAtMs: number;
|
|
7
|
+
/** This view saw it change (a transition) or saw it unsettled: its outcome is news here. */
|
|
8
|
+
readonly seenLive: boolean;
|
|
9
|
+
};
|
|
10
|
+
export type TrackedArtifactOperations = ReadonlyMap<string, TrackedArtifactOperation>;
|
|
11
|
+
/** Latest snapshot wins; an older read finishing late never replaces a newer one. */
|
|
12
|
+
export declare const trackArtifactOperation: (tracked: TrackedArtifactOperations, operation: ArtifactOperation, sighting: ArtifactOperationSighting, nowMs: number) => TrackedArtifactOperations;
|
|
13
|
+
/**
|
|
14
|
+
* Launched, no positive stop evidence, and no longer running normally (its outcome is in, or it is
|
|
15
|
+
* unknown): the user's agent work waits for it, so the parent offers to stop it.
|
|
16
|
+
*/
|
|
17
|
+
export declare const awaitsArtifactStop: (operation: ArtifactOperation) => boolean;
|
|
18
|
+
export declare const artifactOperationsAwaitingStop: (tracked: TrackedArtifactOperations) => readonly ArtifactOperation[];
|
|
19
|
+
/**
|
|
20
|
+
* The newest invocation of some action was released without proof it stopped. Older ones are
|
|
21
|
+
* history: a later run of the same action already superseded them.
|
|
22
|
+
*/
|
|
23
|
+
export declare const latestReleasedUnconfirmed: (tracked: TrackedArtifactOperations) => boolean;
|
|
24
|
+
/** A reconnect is due for an operation this view watched fail on the Simetrik connection. */
|
|
25
|
+
export declare const needsArtifactReconnect: (entry: TrackedArtifactOperation) => boolean;
|
|
26
|
+
export type ArtifactStopState = "idle" | "stopping" | "unreachable";
|
|
27
|
+
export type ArtifactReconnectState = "idle" | "reconnecting" | "failed";
|
|
28
|
+
export type ArtifactOperationNotice = {
|
|
29
|
+
readonly kind: "none";
|
|
30
|
+
} | {
|
|
31
|
+
readonly kind: "awaiting_stop";
|
|
32
|
+
readonly stop: ArtifactStopState;
|
|
33
|
+
} | {
|
|
34
|
+
readonly kind: "reconnecting";
|
|
35
|
+
} | {
|
|
36
|
+
readonly kind: "reconnect_failed";
|
|
37
|
+
} | {
|
|
38
|
+
readonly kind: "released_unconfirmed";
|
|
39
|
+
};
|
|
40
|
+
/** One line at most, most actionable first. */
|
|
41
|
+
export declare const artifactOperationNotice: (input: {
|
|
42
|
+
readonly tracked: TrackedArtifactOperations;
|
|
43
|
+
readonly stop: ArtifactStopState;
|
|
44
|
+
readonly reconnect: ArtifactReconnectState;
|
|
45
|
+
}) => ArtifactOperationNotice;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How often one action-enabled preview view re-mints after its report reloads or navigates
|
|
3
|
+
* itself. Each re-mint reloads the real report with a fresh document key; a report that keeps
|
|
4
|
+
* doing it (a `location.reload()` loop, or a page that bounces the frame) must not mint forever,
|
|
5
|
+
* so after the window's allowance the view shows a static state instead.
|
|
6
|
+
*/
|
|
7
|
+
export declare const ARTIFACT_SELF_RELOAD_WINDOW_MS = 60000;
|
|
8
|
+
/** Delay before each successive re-mint inside one window. Its length is the per-window cap. */
|
|
9
|
+
export declare const ARTIFACT_REMINT_BACKOFF_MS: readonly number[];
|
|
10
|
+
export type ArtifactRemintDecision = {
|
|
11
|
+
readonly kind: "remint";
|
|
12
|
+
readonly delayMs: number;
|
|
13
|
+
} | {
|
|
14
|
+
readonly kind: "exhausted";
|
|
15
|
+
};
|
|
16
|
+
export type ArtifactRemintBudget = {
|
|
17
|
+
readonly next: (nowMs: number) => ArtifactRemintDecision;
|
|
18
|
+
};
|
|
19
|
+
export declare const createArtifactRemintBudget: () => ArtifactRemintBudget;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ArtifactOperation } from '@belong/codec/artifact-actions';
|
|
2
|
+
/** Running work owns the sandbox; launched work without stop evidence still fences it. */
|
|
3
|
+
export declare const holdsArtifactSandbox: (operation: Pick<ArtifactOperation, "status" | "stopEvidence">) => boolean;
|
|
4
|
+
/** One slot per preview view; `set` replaces that view's answer, `release` withdraws it. */
|
|
5
|
+
export declare const registerArtifactSandboxHoldSlot: () => {
|
|
6
|
+
readonly set: (holding: boolean) => void;
|
|
7
|
+
readonly release: () => void;
|
|
8
|
+
};
|
|
9
|
+
export declare const peekArtifactSandboxHeld: () => boolean;
|
|
10
|
+
export declare const subscribeArtifactSandboxHold: (listener: () => void) => (() => void);
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* in the stream-state store; this module owns only view + size. Best-effort:
|
|
6
6
|
* disabled/quota'd storage just means no cross-reload restore.
|
|
7
7
|
*/
|
|
8
|
-
export type DockView = "chat" | "goal" | "files" | "scheduled" | "prompts" | "connectors" | "skills";
|
|
8
|
+
export type DockView = "chat" | "goal" | "files" | "scheduled" | "prompts" | "connectors" | "skills" | "artifacts";
|
|
9
9
|
export type DockSize = "collapsed" | "expanded" | "fullscreen";
|
|
10
10
|
export type DockState = {
|
|
11
11
|
readonly view: DockView;
|
package/dist/embed/global.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { BelongGlobal, BelongInitInput, RouteHandler, UiActionHandler } from '../types/public.ts';
|
|
2
|
+
/** Release listeners and invalidate pending theme reads when an embed leaves. */
|
|
3
|
+
export declare const stopTenantThemeRefresh: () => void;
|
|
2
4
|
type AgentGrantConfig = {
|
|
3
5
|
readonly provider: string;
|
|
4
6
|
readonly scopeExternalId: string | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { GoalElapsed } from './goal-plain-units.ts';
|
|
2
2
|
import { GoalView } from '../api/goals.ts';
|
|
3
3
|
export type GoalRowTone = "live" | "calm" | "attention";
|
|
4
|
-
export type GoalRowActionKind = "cancel_setup" | "pause" | "resume" | "wake_now" | "details" | "answer" | "review" | "show_me" | "tell_it" | "give_it_more" | "new_goal";
|
|
4
|
+
export type GoalRowActionKind = "cancel_setup" | "pause" | "resume" | "wake_now" | "details" | "answer" | "review" | "show_me" | "tell_it" | "give_it_more" | "new_goal" | "exit_goal";
|
|
5
5
|
export type GoalRowAction = {
|
|
6
6
|
readonly kind: GoalRowActionKind;
|
|
7
7
|
readonly labelKey: string;
|
package/dist/embed/presets.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export declare const PRESET_NAME_SCHEMA: z.ZodEnum<{
|
|
|
6
6
|
custom: "custom";
|
|
7
7
|
belong: "belong";
|
|
8
8
|
simetrik: "simetrik";
|
|
9
|
+
tenant: "tenant";
|
|
9
10
|
}>;
|
|
10
11
|
export declare const BELONG_LIGHT_PALETTE: BelongThemePalette;
|
|
11
12
|
export declare const BELONG_DARK_PALETTE: BelongThemePalette;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The composer's RESPONSE MODE — Fast / Balanced / Smart on a three-stop
|
|
3
|
+
* slider (the Codex app's dial). Every mode is named for its upside: a person
|
|
4
|
+
* picks what they want more of, never "less" of anything.
|
|
5
|
+
*
|
|
6
|
+
* fast → quick answers for simple requests
|
|
7
|
+
* balanced → everyday work
|
|
8
|
+
* smart → the most capable, for complex multi-step work (the default)
|
|
9
|
+
*
|
|
10
|
+
* The dock only ever names a MODE. Which model a mode buys is the backend's
|
|
11
|
+
* call (`response-mode-model.ts`), so no model name ever reaches a customer.
|
|
12
|
+
*
|
|
13
|
+
* "Never picked" is NOT "picked Smart". Until a person picks a mode the dial
|
|
14
|
+
* shows Smart but the dock sends no mode at all, so the deployment decides:
|
|
15
|
+
* its own model today, or the intention model switch where that is enabled. A
|
|
16
|
+
* pick — Smart included — is the person's choice, sent with every message and
|
|
17
|
+
* outranking the switch.
|
|
18
|
+
*
|
|
19
|
+
* A personal preference, not a per-conversation one: the mode a person last
|
|
20
|
+
* picked carries into new chats, the way other assistants remember your last
|
|
21
|
+
* choice. Persisted best-effort to localStorage (zod-validated at the storage
|
|
22
|
+
* perimeter); private mode, disabled storage or a junk value read as "never
|
|
23
|
+
* picked". The transport stamps the pick on every send (beside the locale),
|
|
24
|
+
* and the backend keeps it durable on the message, so a continuation after a
|
|
25
|
+
* reload still runs in the mode the person chose.
|
|
26
|
+
*/
|
|
27
|
+
/** Fastest first — the slider's stops, left to right. */
|
|
28
|
+
export declare const RESPONSE_MODES: readonly ["fast", "balanced", "smart"];
|
|
29
|
+
export type ResponseMode = (typeof RESPONSE_MODES)[number];
|
|
30
|
+
/** What the dial shows before a person picks: the deployment's own model. */
|
|
31
|
+
export declare const DEFAULT_RESPONSE_MODE: ResponseMode;
|
|
32
|
+
/** Narrow an untrusted value (storage, a slider position's lookup) to a mode. */
|
|
33
|
+
export declare const parseResponseMode: (value: unknown) => ResponseMode | null;
|
|
34
|
+
/** The mode the person picked, or null when they never did — sends carry a mode only then. */
|
|
35
|
+
export declare const peekResponseModePick: () => ResponseMode | null;
|
|
36
|
+
/** The mode the dial shows: the person's pick, else the default. */
|
|
37
|
+
export declare const peekResponseMode: () => ResponseMode;
|
|
38
|
+
export declare const subscribeResponseMode: (listener: () => void) => (() => void);
|
|
39
|
+
/** Pick `mode` — Smart included — and remember it for this browser. */
|
|
40
|
+
export declare const writeResponseMode: (mode: ResponseMode) => void;
|
|
41
|
+
/** Test-only: back to a browser that never picked a mode. */
|
|
42
|
+
export declare const __resetResponseModeForTest: () => void;
|
|
43
|
+
/** The current mode, re-rendering on change. */
|
|
44
|
+
export declare const useResponseMode: () => ResponseMode;
|
|
45
|
+
/** Ask the API once whether it offers the dial (repeat calls are no-ops). */
|
|
46
|
+
export declare const askResponseModesAvailability: (apiBaseUrl: string) => void;
|
|
47
|
+
/** Whether the composer should show the dial for this API (the shell asked). */
|
|
48
|
+
export declare const useResponseModesAvailable: (apiBaseUrl: string) => boolean;
|
package/dist/embed/theme.d.ts
CHANGED
|
@@ -4,6 +4,11 @@ export declare const DEFAULT_THEME: BelongTheme;
|
|
|
4
4
|
export declare const peekTheme: () => BelongTheme;
|
|
5
5
|
export declare const subscribeTheme: (listener: () => void) => (() => void);
|
|
6
6
|
export declare const setTheme: (partial: PartialBelongTheme) => void;
|
|
7
|
+
/** Start a branding scope. Old global prefs cannot override a tenant's default. */
|
|
8
|
+
export declare const configureTenantTheme: (scope: string, inline?: PartialBelongTheme) => void;
|
|
9
|
+
/** Refresh the baseline even while a user-selected style is active. No writes
|
|
10
|
+
* to local preferences: only explicit user/host overrides are persisted. */
|
|
11
|
+
export declare const setPublishedTenantTheme: (partial: PartialBelongTheme | null) => void;
|
|
7
12
|
/** Switch the active theme style. Built-in presets render their pure palette;
|
|
8
13
|
* the Custom style overlays the user's accent/cssVars stash. */
|
|
9
14
|
export declare const applyPreset: (name: PresetName) => void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const peekWorkspacePolicy: () => "open" | "strict";
|
|
2
|
+
/** Report storage failure so the UI never claims a preference was saved when it wasn't. */
|
|
3
|
+
export declare const setWorkspacePolicy: (policy: "open" | "strict") => boolean;
|
|
4
|
+
export declare const useWorkspacePolicy: () => {
|
|
5
|
+
policy: string;
|
|
6
|
+
identified: boolean;
|
|
7
|
+
};
|
|
@@ -21,7 +21,6 @@ export declare const en: {
|
|
|
21
21
|
readonly closeContext: "Close context";
|
|
22
22
|
readonly currentPage: "Current page";
|
|
23
23
|
readonly windowTooltip: "Context window: {{used}} of {{window}} tokens used ({{pct}}%)";
|
|
24
|
-
readonly inOut: "Input {{in}} · output {{out}}";
|
|
25
24
|
readonly turnsThisSessionOne: "{{count}} turn this session";
|
|
26
25
|
readonly turnsThisSessionOther: "{{count}} turns this session";
|
|
27
26
|
readonly panel: {
|
|
@@ -35,7 +34,6 @@ export declare const en: {
|
|
|
35
34
|
};
|
|
36
35
|
readonly freeSpace: "Free space";
|
|
37
36
|
readonly estimateNote: "Breakdown is estimated; the total is as reported by the model.";
|
|
38
|
-
readonly cacheLine: "Cache: {{read}} read · {{write}} written";
|
|
39
37
|
readonly autoCompact: "Auto-compact: {{pct}}% of budget";
|
|
40
38
|
};
|
|
41
39
|
readonly compactionLabel: "Auto-compact: {{used}} of {{limit}} characters used ({{pct}}%)";
|
|
@@ -113,6 +111,35 @@ export declare const en: {
|
|
|
113
111
|
readonly toolForgetDone: "Forgot a note";
|
|
114
112
|
readonly toolForgetFailed: "Couldn't forget the note";
|
|
115
113
|
readonly toolForgetDetail: "Deleted a saved note about you.";
|
|
114
|
+
readonly toolUsageRunning: "Checking your usage";
|
|
115
|
+
readonly toolUsageDone: "Checked your usage";
|
|
116
|
+
readonly toolUsageFailed: "Couldn't check your usage";
|
|
117
|
+
readonly toolUsageDetail: "Looked up how many tokens you've used.";
|
|
118
|
+
readonly toolCheckBackgroundRunning: "Checking a background command";
|
|
119
|
+
readonly toolCheckBackgroundDone: "Checked a background command";
|
|
120
|
+
readonly toolCheckBackgroundFailed: "Couldn't check the background command";
|
|
121
|
+
readonly toolCheckBackgroundDetail: "Read what a command running in the background wrote.";
|
|
122
|
+
readonly toolWaitBackgroundRunning: "Waiting for a background command";
|
|
123
|
+
readonly toolWaitBackgroundDone: "Waited for a background command";
|
|
124
|
+
readonly toolWaitBackgroundFailed: "Couldn't wait for the background command";
|
|
125
|
+
readonly toolWaitBackgroundDetail: "Waited for a command running in the background to finish.";
|
|
126
|
+
readonly toolStopBackgroundRunning: "Stopping a background command";
|
|
127
|
+
readonly toolStopBackgroundDone: "Stopped a background command";
|
|
128
|
+
readonly toolStopBackgroundFailed: "Couldn't stop the background command";
|
|
129
|
+
readonly toolStopBackgroundDetail: "Stopped a command that was running in the background.";
|
|
130
|
+
readonly toolReadFileRunning: "Reading {{file}}";
|
|
131
|
+
readonly toolReadFileDone: "Read {{file}}";
|
|
132
|
+
readonly toolReadFileFailed: "Couldn't read {{file}}";
|
|
133
|
+
readonly toolReadFileDetail: "Read {{path}}.";
|
|
134
|
+
readonly toolWriteFileRunning: "Writing {{file}}";
|
|
135
|
+
readonly toolWriteFileDone: "Wrote {{file}}";
|
|
136
|
+
readonly toolWriteFileFailed: "Couldn't write {{file}}";
|
|
137
|
+
readonly toolWriteFileDetail: "Wrote {{path}}.";
|
|
138
|
+
readonly toolEditFileRunning: "Editing {{file}}";
|
|
139
|
+
readonly toolEditFileDone: "Edited {{file}}";
|
|
140
|
+
readonly toolEditFileFailed: "Couldn't edit {{file}}";
|
|
141
|
+
readonly toolEditFileDetail: "Edited {{path}}.";
|
|
142
|
+
readonly toolFileUnnamed: "a file";
|
|
116
143
|
readonly toolSaveSkillRunning: "Saving a skill";
|
|
117
144
|
readonly toolSaveSkillDone: "Saved a skill";
|
|
118
145
|
readonly toolSaveSkillFailed: "Couldn't save the skill";
|
|
@@ -137,6 +164,7 @@ export declare const en: {
|
|
|
137
164
|
readonly browserRefreshView: "Refreshed the page";
|
|
138
165
|
readonly failedBadge: "failed";
|
|
139
166
|
readonly actionReadFile: "Read a file";
|
|
167
|
+
readonly actionCheckedUsage: "Checked your usage";
|
|
140
168
|
readonly actionWroteFile: "Updated a file";
|
|
141
169
|
readonly actionPublishedArtifact: "Put a report on screen";
|
|
142
170
|
readonly actionLookedUpSkill: "Looked up a skill";
|
|
@@ -214,11 +242,24 @@ export declare const en: {
|
|
|
214
242
|
readonly reconnectRateLimited: "{{provider}} is busy — trying again automatically in {{seconds}}s.";
|
|
215
243
|
readonly reconnectRateLimitedStill: "{{provider}} is still busy. We'll keep trying on our own.";
|
|
216
244
|
};
|
|
245
|
+
readonly myUsage: {
|
|
246
|
+
readonly thisMonth: "This month";
|
|
247
|
+
readonly today: "Today";
|
|
248
|
+
readonly last30Days: "Last 30 days";
|
|
249
|
+
readonly unit: "tokens";
|
|
250
|
+
readonly explainer: "Tokens measure all the work the agent does for you. Days are counted in UTC.";
|
|
251
|
+
readonly dayValue: "{{date}}: {{tokens}} tokens";
|
|
252
|
+
readonly chartLabel: "Tokens per day over the last 30 days";
|
|
253
|
+
readonly empty: "No usage in the last 30 days.";
|
|
254
|
+
readonly updated: "Updated {{time}} UTC";
|
|
255
|
+
readonly loading: "Loading your usage…";
|
|
256
|
+
readonly loadError: "Couldn't load your usage.";
|
|
257
|
+
readonly retry: "Try again";
|
|
258
|
+
readonly unavailable: "Usage isn't available here yet.";
|
|
259
|
+
};
|
|
217
260
|
readonly stats: {
|
|
218
261
|
readonly title: "Session stats";
|
|
219
|
-
readonly
|
|
220
|
-
readonly output: "Output";
|
|
221
|
-
readonly total: "Total";
|
|
262
|
+
readonly tokens: "Tokens";
|
|
222
263
|
readonly timeRunning: "Time running";
|
|
223
264
|
readonly turns: "Turns";
|
|
224
265
|
readonly toolCalls: "Tool calls";
|
|
@@ -329,6 +370,8 @@ export declare const en: {
|
|
|
329
370
|
voiceDescription: string;
|
|
330
371
|
history: string;
|
|
331
372
|
historyDescription: string;
|
|
373
|
+
usage: string;
|
|
374
|
+
usageDescription: string;
|
|
332
375
|
about: string;
|
|
333
376
|
aboutDescription: string;
|
|
334
377
|
apiKeys: string;
|
|
@@ -349,6 +392,10 @@ export declare const en: {
|
|
|
349
392
|
apiKeysAuthError: string;
|
|
350
393
|
apiKeysCreateError: string;
|
|
351
394
|
apiKeysRevokeError: string;
|
|
395
|
+
workspaceScope: string;
|
|
396
|
+
workspaceScopeDescription: string;
|
|
397
|
+
workspaceScopeApplies: string;
|
|
398
|
+
workspaceScopeSaveError: string;
|
|
352
399
|
profile: string;
|
|
353
400
|
languageDescription: string;
|
|
354
401
|
dockPosition: string;
|
|
@@ -357,6 +404,7 @@ export declare const en: {
|
|
|
357
404
|
light: string;
|
|
358
405
|
dark: string;
|
|
359
406
|
presetDescription: string;
|
|
407
|
+
tenantDefault: string;
|
|
360
408
|
advancedAppearance: string;
|
|
361
409
|
advancedDescription: string;
|
|
362
410
|
readRepliesDescription: string;
|
|
@@ -438,8 +486,8 @@ export declare const en: {
|
|
|
438
486
|
readonly sharedFinished: "This one-time task has already passed. Ask an editor to update its timing.";
|
|
439
487
|
readonly sharedLimit: "You have reached the active task limit. Pause a task before adding another.";
|
|
440
488
|
readonly useInWorkspace: "Use in this workspace";
|
|
441
|
-
readonly enableHelp: "Runs here using your account and connections. Run history and
|
|
442
|
-
readonly sharedSyncHelp: "Future edits to instructions and
|
|
489
|
+
readonly enableHelp: "Runs here using your account and connections. Run history and regular recipients belong to this workspace. Make sure the required connections are ready.";
|
|
490
|
+
readonly sharedSyncHelp: "Future edits to instructions, timing, and shared recipients apply here automatically. You can pause or remove the task in this workspace at any time.";
|
|
443
491
|
readonly templateSynced: "Linked HTML template. Each run uses the latest file from the owner’s workspace.";
|
|
444
492
|
readonly sharedLabel: "Shared";
|
|
445
493
|
readonly sharedWorkspaceCount_one: "Shared in {{count}} workspace";
|
|
@@ -476,11 +524,16 @@ export declare const en: {
|
|
|
476
524
|
readonly lastRun: "Last run {{time}}";
|
|
477
525
|
readonly dayAtTime: "{{day}} at {{time}}";
|
|
478
526
|
readonly pausedNotice: "Paused — runs won't start until you resume.";
|
|
527
|
+
readonly scheduleIdLabel: "Schedule ID";
|
|
528
|
+
readonly copyScheduleId: "Copy ID";
|
|
479
529
|
readonly customEmailLabel: "Custom email enabled";
|
|
480
530
|
readonly customEmailDescription: "Each run reads the latest version of this template and sends an email only when its condition matches.";
|
|
481
531
|
readonly customEmailTemplate: "HTML template";
|
|
482
532
|
readonly emailNotificationLabel: "Completion email enabled";
|
|
483
533
|
readonly emailRecipients: "Recipients";
|
|
534
|
+
readonly sharedRecipients: "Shared recipients";
|
|
535
|
+
readonly sharedRecipientsHelp: "Sent only from the owner’s original task. Shared delivery pauses when that task is paused.";
|
|
536
|
+
readonly errorRecipientsInvalid: "Enter valid, unique email addresses.";
|
|
484
537
|
readonly emailAccountRecipient: "Schedule owner's account email";
|
|
485
538
|
readonly teamsDeliveryLabel: "Microsoft Teams delivery approved";
|
|
486
539
|
readonly teamsStatusActive: "Active";
|
|
@@ -681,6 +734,7 @@ export declare const en: {
|
|
|
681
734
|
readonly navPrompts: "Prompts";
|
|
682
735
|
readonly navConnectors: "Connectors";
|
|
683
736
|
readonly navSkills: "Skills";
|
|
737
|
+
readonly navApps: "Apps";
|
|
684
738
|
readonly chatPlanRunning: "Chat — plan running, {{completed}} of {{total}} steps done";
|
|
685
739
|
readonly devMode: "Dev mode";
|
|
686
740
|
readonly devModeTitle: "Dev mode (belong:dev)";
|
|
@@ -795,6 +849,26 @@ export declare const en: {
|
|
|
795
849
|
readonly thisFile: "this file";
|
|
796
850
|
readonly download: "Download";
|
|
797
851
|
readonly loadingPreview: "Loading preview…";
|
|
852
|
+
readonly artifactApprovalLabel: "Approve report action";
|
|
853
|
+
readonly artifactApprovalTitle: "Approve {{title}}?";
|
|
854
|
+
readonly artifactApprovalDescription: "This report action runs a registered script using your workspace access.";
|
|
855
|
+
readonly artifactApprovalSelection: "Workspace: {{workspace}}. Selected transactions: {{count}}";
|
|
856
|
+
readonly artifactApprovalOperation: "Operation: {{id}}";
|
|
857
|
+
readonly artifactApprovalVersion: "Script version: {{version}}";
|
|
858
|
+
readonly artifactApprovalReview: "Show full request and script";
|
|
859
|
+
readonly artifactApprovalProvided: "Provided by the report — check these values before approving";
|
|
860
|
+
readonly artifactApprovalTransactions: "Transaction IDs ({{count}})";
|
|
861
|
+
readonly artifactApprovalParameters: "Parameters";
|
|
862
|
+
readonly artifactApprovalNoParameters: "No parameters";
|
|
863
|
+
readonly artifactReportReloadLoop: "This report keeps reloading itself, so it was stopped. Close and reopen the preview to try again.";
|
|
864
|
+
readonly artifactApprovalReject: "Reject";
|
|
865
|
+
readonly artifactApprovalConfirm: "Approve action";
|
|
866
|
+
readonly artifactApprovalPersonal: "Personal";
|
|
867
|
+
readonly artifactHeldNotice: "An earlier report action may still be running. Belong will continue when it stops.";
|
|
868
|
+
readonly artifactHeldStop: "Stop it";
|
|
869
|
+
readonly artifactHeldStopping: "Stopping…";
|
|
870
|
+
readonly artifactHeldUnreachable: "Couldn't reach your workspace. Try again in a moment.";
|
|
871
|
+
readonly artifactReleasedUnconfirmed: "An earlier report action ended before Belong could confirm it stopped. Check its results before you run it again.";
|
|
798
872
|
readonly devDefault: "default";
|
|
799
873
|
readonly devModelIdPlaceholder: "model id (blank = env default)";
|
|
800
874
|
readonly devModelIdTitle: "Exact model id for the selected provider — overrides the env pin";
|
|
@@ -806,6 +880,7 @@ export declare const en: {
|
|
|
806
880
|
readonly devOverrideActive: "Dev override active — click to change";
|
|
807
881
|
readonly callLightModelActive: "Calls are stepped down to the light voice model — click for the best voice";
|
|
808
882
|
readonly agentWorking: "{{name}} is working…";
|
|
883
|
+
readonly waitingForReportAction: "Waiting for a report action to finish…";
|
|
809
884
|
};
|
|
810
885
|
readonly connectors: {
|
|
811
886
|
readonly setupChooseAccount: "Several accounts are connected. Open Connectors and choose the account to manage, then continue your request.";
|
|
@@ -1040,6 +1115,74 @@ export declare const en: {
|
|
|
1040
1115
|
readonly deleteConfirmBody: "The agent will lose access to its tools. This can't be undone.";
|
|
1041
1116
|
readonly deleteConfirm: "Delete connector";
|
|
1042
1117
|
};
|
|
1118
|
+
readonly artifacts: {
|
|
1119
|
+
readonly viewTitle: "Apps";
|
|
1120
|
+
readonly viewDescription: "Pages the assistant keeps up to date, and that you can act on. Share one with a link that always shows the latest.";
|
|
1121
|
+
readonly slotCounter: "{{used}} of {{limit}}";
|
|
1122
|
+
readonly atCapHint: "You're using every slot. Delete one to make room for a new app.";
|
|
1123
|
+
readonly versionLine: "v{{version}} · refreshed {{when}}";
|
|
1124
|
+
readonly versionLineNeverRefreshed: "v{{version}} · not refreshed yet";
|
|
1125
|
+
readonly notScheduled: "Not scheduled";
|
|
1126
|
+
readonly scheduledUnnamed: "On a schedule";
|
|
1127
|
+
readonly overdue: "Hasn't refreshed since {{when}}";
|
|
1128
|
+
readonly shareLive: "Link works until {{when}}";
|
|
1129
|
+
readonly shareExpired: "Link expired";
|
|
1130
|
+
readonly shareRevoked: "Link turned off";
|
|
1131
|
+
readonly shareNever: "Not shared";
|
|
1132
|
+
readonly copyLink: "Copy link";
|
|
1133
|
+
readonly copied: "Copied";
|
|
1134
|
+
readonly share: "Share";
|
|
1135
|
+
readonly shareAgain: "Share again";
|
|
1136
|
+
readonly extend: "Extend the link";
|
|
1137
|
+
readonly revoke: "Turn the link off";
|
|
1138
|
+
readonly rebind: "Change the schedule";
|
|
1139
|
+
readonly delete: "Delete";
|
|
1140
|
+
readonly open: "Open";
|
|
1141
|
+
readonly menuAria: "More actions for {{name}}";
|
|
1142
|
+
readonly emptyTitle: "No apps yet";
|
|
1143
|
+
readonly emptyHint: "Ask the assistant to keep a report up to date — it will show up here with a link you can share.";
|
|
1144
|
+
readonly featureAbsent: "Apps aren't available here yet.";
|
|
1145
|
+
readonly loading: "Loading your apps…";
|
|
1146
|
+
readonly loadError: "Couldn't load your apps.";
|
|
1147
|
+
readonly retry: "Try again";
|
|
1148
|
+
readonly noticeShareFailed: "Couldn't create a link for {{name}}. Try again.";
|
|
1149
|
+
readonly noticeExtendFailed: "Couldn't extend the link for {{name}}. Try again.";
|
|
1150
|
+
readonly noticeRevokeFailed: "Couldn't turn off the link for {{name}}. Try again.";
|
|
1151
|
+
readonly noticeDeleteFailed: "Couldn't delete {{name}}. Try again.";
|
|
1152
|
+
readonly noticeRebindFailed: "Couldn't change the schedule for {{name}}. Try again.";
|
|
1153
|
+
readonly noticeScheduleGone: "That schedule no longer exists.";
|
|
1154
|
+
readonly noticeCopyFailed: "Couldn't copy the link. Select it and copy it by hand.";
|
|
1155
|
+
readonly noticeOpenFailed: "Couldn't open that version. Try again.";
|
|
1156
|
+
readonly noticeGone: "That app no longer exists.";
|
|
1157
|
+
readonly noticeForbidden: "You don't have permission to change apps here.";
|
|
1158
|
+
readonly noticeResharedRotated: "New link created. The link you shared before no longer works.";
|
|
1159
|
+
readonly reshareTitle: "Share {{name}} again?";
|
|
1160
|
+
readonly reshareDescription: "This creates a new link. The one you shared before stops working for everyone who has it.";
|
|
1161
|
+
readonly reshareConfirm: "Create a new link";
|
|
1162
|
+
readonly cancel: "Cancel";
|
|
1163
|
+
readonly deleteTitle: "Delete this app?";
|
|
1164
|
+
readonly deleteDescription: "{{name}} will be removed, and the link you shared will stop working for everyone who has it.";
|
|
1165
|
+
readonly deleteConfirm: "Delete";
|
|
1166
|
+
readonly deleting: "Deleting…";
|
|
1167
|
+
readonly bindTitle: "Keep {{name}} up to date";
|
|
1168
|
+
readonly bindDescription: "Pick the schedule that should refresh this app.";
|
|
1169
|
+
readonly bindNone: "Not scheduled";
|
|
1170
|
+
readonly bindEmpty: "You don't have any schedules yet.";
|
|
1171
|
+
readonly bindLoading: "Loading your schedules…";
|
|
1172
|
+
readonly bindSearchPlaceholder: "Search your schedules";
|
|
1173
|
+
readonly bindNoResults: "No schedule matches \"{{q}}\".";
|
|
1174
|
+
readonly bindLoadMore: "Show more schedules";
|
|
1175
|
+
readonly bindLoadError: "Couldn't load your schedules.";
|
|
1176
|
+
readonly bindLoadMoreError: "Couldn't load more schedules. Try again.";
|
|
1177
|
+
readonly bindConfirm: "Save";
|
|
1178
|
+
readonly detailBack: "Apps";
|
|
1179
|
+
readonly detailCurrent: "Current version";
|
|
1180
|
+
readonly detailHistory: "Version history";
|
|
1181
|
+
readonly detailVersion: "v{{version}}";
|
|
1182
|
+
readonly detailPublished: "Published {{when}}";
|
|
1183
|
+
readonly detailNoSummary: "No summary for this version";
|
|
1184
|
+
readonly detailNotFound: "This app no longer exists.";
|
|
1185
|
+
};
|
|
1043
1186
|
readonly app: {
|
|
1044
1187
|
readonly uploadNoWorkspace: "Open the terminal once so your workspace exists, then upload.";
|
|
1045
1188
|
readonly uploadTooLarge: "{{name}} is too large (max 25 MB).";
|
|
@@ -1100,6 +1243,7 @@ export declare const en: {
|
|
|
1100
1243
|
readonly terminalFailed: "failed";
|
|
1101
1244
|
readonly terminalRunning: "running…";
|
|
1102
1245
|
readonly terminalStillRunning: "still running…";
|
|
1246
|
+
readonly terminalInBackground: "running in the background";
|
|
1103
1247
|
readonly copyCommand: "Copy command";
|
|
1104
1248
|
readonly waitingForOutput: "waiting for output…";
|
|
1105
1249
|
readonly previousBranch: "Previous branch";
|
|
@@ -1122,6 +1266,14 @@ export declare const en: {
|
|
|
1122
1266
|
readonly modeApproveDescription: "Ask before each consequential action";
|
|
1123
1267
|
readonly modePlanLabel: "Plan";
|
|
1124
1268
|
readonly modePlanDescription: "Propose a plan — no actions";
|
|
1269
|
+
readonly responseMode: "Response mode: {{mode}}";
|
|
1270
|
+
readonly responseModeTitle: "Response mode";
|
|
1271
|
+
readonly responseModeFastLabel: "Fast";
|
|
1272
|
+
readonly responseModeFastDescription: "Quick answers for simple requests";
|
|
1273
|
+
readonly responseModeBalancedLabel: "Balanced";
|
|
1274
|
+
readonly responseModeBalancedDescription: "Great for everyday work";
|
|
1275
|
+
readonly responseModeSmartLabel: "Smart";
|
|
1276
|
+
readonly responseModeSmartDescription: "Most capable, for complex work";
|
|
1125
1277
|
};
|
|
1126
1278
|
readonly conversation: {
|
|
1127
1279
|
readonly thinking: "Thinking…";
|
|
@@ -1292,7 +1444,7 @@ export declare const en: {
|
|
|
1292
1444
|
readonly edit: "Edit…";
|
|
1293
1445
|
readonly clear: "Clear";
|
|
1294
1446
|
readonly clearTitle: "Clear this goal?";
|
|
1295
|
-
readonly clearBody: "The conversation
|
|
1447
|
+
readonly clearBody: "The conversation and its messages stay, and you can keep chatting. The goal stops here — nothing it already did is undone.";
|
|
1296
1448
|
readonly clearConfirm: "Clear this goal";
|
|
1297
1449
|
readonly clearKeep: "Keep it";
|
|
1298
1450
|
readonly failedPause: "Couldn't pause the goal. Try again.";
|
|
@@ -1364,6 +1516,7 @@ export declare const en: {
|
|
|
1364
1516
|
readonly primary: "Give it more";
|
|
1365
1517
|
readonly newGoal: "Start a new goal";
|
|
1366
1518
|
readonly newGoalHint: "Say what the new goal should get done…";
|
|
1519
|
+
readonly exit: "Exit goal mode";
|
|
1367
1520
|
};
|
|
1368
1521
|
readonly composerHint: "Tell it what to try instead…";
|
|
1369
1522
|
};
|