@nextclaw/ui 0.12.35-beta.3 → 0.12.35-beta.4
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 +63 -0
- package/dist/assets/api-BTZui7nj.js +15 -0
- package/dist/assets/{book-open--T9dJHnp.js → book-open-qc0UVn6m.js} +1 -1
- package/dist/assets/channels-list-page-DBtU_M1Y.js +8 -0
- package/dist/assets/{chat-page-DOKLoiqI.js → chat-page-BcoJYo91.js} +2 -2
- package/dist/assets/config-split-page-DW8tP9Bc.js +1 -0
- package/dist/assets/createLucideIcon-CA0sgoMJ.js +1 -0
- package/dist/assets/desktop-update-config-DARSwQG8.js +1 -0
- package/dist/assets/dist-D5zsy7pX.js +1 -0
- package/dist/assets/dist-DNxIa3pe.js +41 -0
- package/dist/assets/doc-browser-B9skxzVo.js +1 -0
- package/dist/assets/doc-browser-CwyITRXx.js +1 -0
- package/dist/assets/doc-browser-context-Do2qSrB8.js +1 -0
- package/dist/assets/{external-link-CZ9bQY0L.js → external-link-C9fbyi6k.js} +1 -1
- package/dist/assets/index-BYRP_BMj.css +1 -0
- package/dist/assets/index-DckPGTdM.js +103 -0
- package/dist/assets/mcp-marketplace-page-BiExW5wq.js +40 -0
- package/dist/assets/mcp-marketplace-page-Cj6MDSkE.js +1 -0
- package/dist/assets/model-config-DbdY7fF1.js +1 -0
- package/dist/assets/notice-card-CyiVcu_Z.js +5 -0
- package/dist/assets/play-D-s0C4MN.js +1 -0
- package/dist/assets/plus-DOwjM_kF.js +1 -0
- package/dist/assets/provider-scoped-model-input-Bk8jlpRm.js +1 -0
- package/dist/assets/providers-list-CJjNStDV.js +1 -0
- package/dist/assets/react-BaRotFd6.js +1 -0
- package/dist/assets/remote-gl8QckNc.js +1 -0
- package/dist/assets/runtime-config-page-BMFc1yzf.js +1 -0
- package/dist/assets/{save-B6wbBLkU.js → save-CG4Hb1u8.js} +1 -1
- package/dist/assets/{search-config-BFmG4_F7.js → search-config-DUOR26if.js} +1 -1
- package/dist/assets/{search-Czito3Dk.js → search-lWpOIHEn.js} +1 -1
- package/dist/assets/secrets-config-ZbLzjIRx.js +3 -0
- package/dist/assets/setting-row-CNfTKDjc.js +1 -0
- package/dist/assets/tabs-custom-BbZoysAl.js +1 -0
- package/dist/assets/tag-chip-Dl8JbhC7.js +1 -0
- package/dist/assets/x-D6GwT_8k.js +1 -0
- package/dist/index.html +15 -17
- package/package.json +8 -9
- package/src/app/components/app-presenter-provider.tsx +21 -0
- package/src/app/components/layout/sidebar.layout.test.tsx +2 -2
- package/src/app/components/layout/sidebar.tsx +3 -3
- package/src/app/index.tsx +5 -3
- package/src/app/presenters/app.presenter.ts +24 -0
- package/src/features/account/components/account-panel.tsx +11 -11
- package/src/features/account/index.ts +1 -4
- package/src/features/account/managers/account.manager.ts +52 -27
- package/src/features/account/stores/account.store.ts +0 -15
- package/src/features/apps/components/apps-panel.tsx +43 -0
- package/src/features/apps/index.ts +1 -0
- package/src/features/chat/components/layout/chat-sidebar-utility-menu.tsx +8 -8
- package/src/features/chat/components/layout/chat-sidebar.tsx +3 -2
- package/src/features/chat/managers/chat-session-list.manager.test.ts +58 -0
- package/src/features/chat/stores/chat-session-list.store.ts +58 -7
- package/src/features/panel-apps/components/panel-app-toolbar.tsx +4 -4
- package/src/features/panel-apps/components/panel-apps-list.tsx +6 -2
- package/src/features/panel-apps/index.ts +3 -1
- package/src/features/panel-apps/managers/panel-app-bridge.manager.test.ts +111 -0
- package/src/features/panel-apps/managers/panel-app-bridge.manager.ts +247 -0
- package/src/features/panel-apps/utils/panel-app-doc-browser.utils.test.ts +23 -0
- package/src/features/panel-apps/utils/panel-app-doc-browser.utils.tsx +42 -16
- package/src/features/remote/components/remote-access-page.test.tsx +2 -2
- package/src/features/remote/components/remote-access-page.tsx +9 -9
- package/src/features/remote/managers/remote-access.manager.ts +24 -41
- package/src/features/service-apps/components/service-action-authorization-dialog.tsx +78 -0
- package/src/features/service-apps/components/service-apps-panel.tsx +290 -0
- package/src/features/service-apps/hooks/use-service-apps.ts +66 -0
- package/src/features/service-apps/index.ts +3 -0
- package/src/features/service-apps/managers/service-action-authorization.manager.ts +10 -0
- package/src/features/service-apps/stores/service-action-authorization.store.ts +53 -0
- package/src/shared/components/doc-browser/doc-browser-context.test.tsx +150 -1
- package/src/shared/components/doc-browser/doc-browser-context.tsx +34 -443
- package/src/shared/components/doc-browser/doc-browser-renderer.types.ts +7 -0
- package/src/shared/components/doc-browser/doc-browser.tsx +16 -1
- package/src/shared/components/doc-browser/managers/doc-browser.manager.ts +272 -0
- package/src/shared/components/doc-browser/stores/doc-browser.store.ts +140 -0
- package/src/shared/components/doc-browser/types/doc-browser.types.ts +47 -0
- package/src/shared/components/doc-browser/utils/doc-browser-state.utils.ts +47 -0
- package/src/shared/components/doc-browser/utils/doc-browser-url.utils.ts +95 -0
- package/src/shared/lib/api/managers/client.manager.ts +2 -1
- package/src/shared/lib/i18n/runtime/doc-browser-labels.utils.ts +31 -0
- package/src/shared/lib/transport/local-transport.service.ts +18 -2
- package/src/shared/lib/transport/remote-transport.service.ts +19 -3
- package/src/shared/lib/transport/request-raw-api-response.utils.ts +1 -1
- package/dist/assets/api-D3uoaOR8.js +0 -15
- package/dist/assets/channels-list-page-DHmz9iHg.js +0 -8
- package/dist/assets/config-split-page-Dutq3R5o.js +0 -1
- package/dist/assets/createLucideIcon-Cwr2o6Zq.js +0 -1
- package/dist/assets/desktop-update-config-ClbDsIOs.js +0 -1
- package/dist/assets/dist-e5WATjIW.js +0 -1
- package/dist/assets/doc-browser-ChY6hMn8.js +0 -1
- package/dist/assets/doc-browser-cR1vWRs1.js +0 -1
- package/dist/assets/doc-browser-context-CLczyX2Z.js +0 -1
- package/dist/assets/es2015-BJw-hrex.js +0 -41
- package/dist/assets/i18n-tWKGEGxB.js +0 -1
- package/dist/assets/index-DPz9DRZN.js +0 -103
- package/dist/assets/index-HvJDzfSU.css +0 -1
- package/dist/assets/key-round-B8tTb3ZJ.js +0 -1
- package/dist/assets/mcp-marketplace-page-BYPxLdUR.js +0 -40
- package/dist/assets/mcp-marketplace-page-DXCvk7wJ.js +0 -1
- package/dist/assets/model-config-DcnC_fSr.js +0 -1
- package/dist/assets/notice-card-DUDbOvqx.js +0 -5
- package/dist/assets/play-CV_kwi9X.js +0 -1
- package/dist/assets/plus-BqfNq7Tu.js +0 -1
- package/dist/assets/provider-scoped-model-input-eO4XY0iY.js +0 -1
- package/dist/assets/providers-list-BgvjRVmp.js +0 -1
- package/dist/assets/remote-BCuZ1JJe.js +0 -1
- package/dist/assets/rotate-cw-BKEhWuWp.js +0 -1
- package/dist/assets/runtime-config-page-B2XPXHrk.js +0 -1
- package/dist/assets/secrets-config-4uY5sk-V.js +0 -3
- package/dist/assets/select-CmmDgG8o.js +0 -1
- package/dist/assets/setting-row-BUO6FeN1.js +0 -1
- package/dist/assets/tabs-custom-D3IZL9WX.js +0 -1
- package/dist/assets/tag-chip-Dm_pOtE3.js +0 -1
- package/dist/assets/x-DBP3WiC9.js +0 -1
- package/src/app/components/app-manager-provider.tsx +0 -20
- package/src/app/managers/app.manager.ts +0 -12
- /package/dist/assets/{config-hints-DGfwbumO.js → config-hints-CTqBnCDp.js} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ApiError } from '@nextclaw/
|
|
1
|
+
import type { ApiError } from '@nextclaw/client-sdk';
|
|
2
2
|
import type { AppEvent, AppTransport, RemoteRuntimeInfo, RequestInput, StreamInput, StreamSession } from './transport.types';
|
|
3
3
|
import { resolveTransportWebSocketUrl } from './transport-websocket-url.utils';
|
|
4
4
|
|
|
@@ -6,6 +6,7 @@ type RemoteTarget = {
|
|
|
6
6
|
method: string;
|
|
7
7
|
path: string;
|
|
8
8
|
body?: unknown;
|
|
9
|
+
headers?: Record<string, string>;
|
|
9
10
|
};
|
|
10
11
|
|
|
11
12
|
type RemoteBrowserFrame =
|
|
@@ -40,7 +41,15 @@ function normalizeApiError(body: unknown, status: number, fallback: string): Err
|
|
|
40
41
|
if (typeof body === 'object' && body && 'ok' in body) {
|
|
41
42
|
const typed = body as { ok?: boolean; error?: ApiError; data?: unknown };
|
|
42
43
|
if (typed.ok === false && typed.error?.message) {
|
|
43
|
-
|
|
44
|
+
const error = new Error(typed.error.message) as Error & {
|
|
45
|
+
code?: string;
|
|
46
|
+
details?: Record<string, unknown>;
|
|
47
|
+
status?: number;
|
|
48
|
+
};
|
|
49
|
+
error.code = typed.error.code;
|
|
50
|
+
error.details = typed.error.details;
|
|
51
|
+
error.status = status;
|
|
52
|
+
return error;
|
|
44
53
|
}
|
|
45
54
|
if (typed.ok === true) {
|
|
46
55
|
return new Error(fallback);
|
|
@@ -56,7 +65,13 @@ function unwrapApiBody<T>(body: unknown): T {
|
|
|
56
65
|
if (typeof body === 'object' && body && 'ok' in body) {
|
|
57
66
|
const typed = body as { ok?: boolean; error?: ApiError; data?: T };
|
|
58
67
|
if (typed.ok === false) {
|
|
59
|
-
|
|
68
|
+
const error = new Error(typed.error?.message ?? 'Remote request failed.') as Error & {
|
|
69
|
+
code?: string;
|
|
70
|
+
details?: Record<string, unknown>;
|
|
71
|
+
};
|
|
72
|
+
error.code = typed.error?.code;
|
|
73
|
+
error.details = typed.error?.details;
|
|
74
|
+
throw error;
|
|
60
75
|
}
|
|
61
76
|
if (typed.ok === true) {
|
|
62
77
|
return typed.data as T;
|
|
@@ -108,6 +123,7 @@ export class RemoteSessionMultiplexTransport implements AppTransport {
|
|
|
108
123
|
target: {
|
|
109
124
|
method: input.method,
|
|
110
125
|
path: input.path,
|
|
126
|
+
...(input.headers ? { headers: input.headers } : {}),
|
|
111
127
|
...(input.body !== undefined ? { body: input.body } : {})
|
|
112
128
|
}
|
|
113
129
|
});
|