@dxos/plugin-debug 0.8.4-main.21d9917 → 0.8.4-main.2244d791bb
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/browser/{DevtoolsOverviewContainer-77PKFLYV.mjs → DevtoolsOverviewContainer-2C6XMJ3L.mjs} +3 -3
- package/dist/lib/browser/{DevtoolsOverviewContainer-77PKFLYV.mjs.map → DevtoolsOverviewContainer-2C6XMJ3L.mjs.map} +2 -2
- package/dist/lib/browser/{SpaceGenerator-ZHVZWGM7.mjs → SpaceGenerator-B4A7J26E.mjs} +33 -31
- package/dist/lib/browser/SpaceGenerator-B4A7J26E.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-builder-FBDRMMYF.mjs → app-graph-builder-DEBTVBQG.mjs} +9 -7
- package/dist/lib/browser/app-graph-builder-DEBTVBQG.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +18 -17
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-context-FSWBT3MH.mjs → react-context-I3USIAF6.mjs} +3 -3
- package/dist/lib/browser/react-context-I3USIAF6.mjs.map +7 -0
- package/dist/lib/browser/{react-surface-W62RJ32U.mjs → react-surface-ADOU5663.mjs} +57 -56
- package/dist/lib/browser/react-surface-ADOU5663.mjs.map +7 -0
- package/dist/lib/browser/{settings-KA4GN73K.mjs → settings-SLTQJJNF.mjs} +4 -3
- package/dist/lib/browser/settings-SLTQJJNF.mjs.map +7 -0
- package/dist/types/src/DebugPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-context/react-context.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts +1 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +2 -2
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/settings/index.d.ts +1 -1
- package/dist/types/src/capabilities/settings/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/settings/settings.d.ts +3 -2
- package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -1
- package/dist/types/src/components/DebugObjectPanel.d.ts.map +1 -1
- package/dist/types/src/components/SpaceGenerator/SpaceGenerator.d.ts.map +1 -1
- package/dist/types/src/components/SpaceGenerator/presets.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +64 -63
- package/src/DebugPlugin.tsx +8 -7
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +8 -6
- package/src/capabilities/react-context/react-context.tsx +2 -2
- package/src/capabilities/react-surface/react-surface.tsx +44 -42
- package/src/capabilities/settings/settings.ts +3 -2
- package/src/components/DebugObjectPanel.tsx +1 -2
- package/src/components/DebugSettings.tsx +18 -18
- package/src/components/DevtoolsOverviewContainer.tsx +2 -2
- package/src/components/SpaceGenerator/SpaceGenerator.stories.tsx +1 -1
- package/src/components/SpaceGenerator/SpaceGenerator.tsx +15 -16
- package/src/components/SpaceGenerator/presets.ts +18 -22
- package/dist/lib/browser/SpaceGenerator-ZHVZWGM7.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-FBDRMMYF.mjs.map +0 -7
- package/dist/lib/browser/react-context-FSWBT3MH.mjs.map +0 -7
- package/dist/lib/browser/react-surface-W62RJ32U.mjs.map +0 -7
- package/dist/lib/browser/settings-KA4GN73K.mjs.map +0 -7
|
@@ -9,8 +9,10 @@ import {
|
|
|
9
9
|
// src/capabilities/react-surface/react-surface.tsx
|
|
10
10
|
import * as Effect from "effect/Effect";
|
|
11
11
|
import React5, { useCallback } from "react";
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
12
|
+
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
13
|
+
import { Surface, useCapability, useOperationInvoker, useSettingsState } from "@dxos/app-framework/ui";
|
|
14
|
+
import { AppCapabilities as AppCapabilities2, LayoutOperation } from "@dxos/app-toolkit";
|
|
15
|
+
import { useLayout } from "@dxos/app-toolkit/ui";
|
|
14
16
|
import { AutomergePanel, ConfigPanel, CredentialsPanel, DeviceListPanel, DiagnosticsPanel, EdgeDashboardPanel, FeedsPanel, IdentityPanel, InvocationTraceContainer, KeyringPanel, LoggingPanel, MembersPanel, MetadataPanel, NetworkPanel, ObjectsPanel, QueuesPanel, SchemaPanel, SignalPanel, SpaceInfoPanel, SpaceListPanel, StoragePanel, SwarmPanel, TestingPanel, TracingPanel, WorkflowPanel } from "@dxos/devtools";
|
|
15
17
|
import { Obj as Obj2 } from "@dxos/echo";
|
|
16
18
|
import { log as log2 } from "@dxos/log";
|
|
@@ -18,7 +20,7 @@ import { ClientCapabilities } from "@dxos/plugin-client";
|
|
|
18
20
|
import { ScriptOperation } from "@dxos/plugin-script/types";
|
|
19
21
|
import { SpaceOperation } from "@dxos/plugin-space/types";
|
|
20
22
|
import { SpaceState, isSpace, parseId } from "@dxos/react-client/echo";
|
|
21
|
-
import { Layout as Layout2 } from "@dxos/react-ui
|
|
23
|
+
import { Layout as Layout2 } from "@dxos/react-ui";
|
|
22
24
|
import { Collection } from "@dxos/schema";
|
|
23
25
|
|
|
24
26
|
// src/components/index.ts
|
|
@@ -26,8 +28,7 @@ import { lazy } from "react";
|
|
|
26
28
|
|
|
27
29
|
// src/components/DebugObjectPanel.tsx
|
|
28
30
|
import React from "react";
|
|
29
|
-
import { Clipboard, Input, Toolbar } from "@dxos/react-ui";
|
|
30
|
-
import { Layout } from "@dxos/react-ui-mosaic";
|
|
31
|
+
import { Clipboard, Input, Layout, Toolbar } from "@dxos/react-ui";
|
|
31
32
|
import { Json } from "@dxos/react-ui-syntax-highlighter";
|
|
32
33
|
var DebugObjectPanel = ({ object }) => {
|
|
33
34
|
const dxn = `dxn:echo:@:${object.id}`;
|
|
@@ -45,13 +46,13 @@ var DebugObjectPanel = ({ object }) => {
|
|
|
45
46
|
|
|
46
47
|
// src/components/DebugSettings.tsx
|
|
47
48
|
import React2, { useEffect, useState } from "react";
|
|
48
|
-
import {
|
|
49
|
-
import {
|
|
49
|
+
import { useCapabilities } from "@dxos/app-framework/ui";
|
|
50
|
+
import { AppCapabilities } from "@dxos/app-toolkit";
|
|
50
51
|
import { SaveConfig, Storage, defs } from "@dxos/config";
|
|
51
52
|
import { log } from "@dxos/log";
|
|
52
53
|
import { useClient } from "@dxos/react-client";
|
|
53
54
|
import { Icon, IconButton, Input as Input2, Select, Toast, useFileDownload, useTranslation } from "@dxos/react-ui";
|
|
54
|
-
import {
|
|
55
|
+
import { Settings } from "@dxos/react-ui-form";
|
|
55
56
|
import { setDeep } from "@dxos/util";
|
|
56
57
|
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-debug/src/components/DebugSettings.tsx";
|
|
57
58
|
var StorageAdapters = {
|
|
@@ -64,7 +65,7 @@ var DebugSettings = ({ settings, onSettingsChange }) => {
|
|
|
64
65
|
const client = useClient();
|
|
65
66
|
const download = useFileDownload();
|
|
66
67
|
const [storageConfig, setStorageConfig] = useState({});
|
|
67
|
-
const [upload] = useCapabilities(
|
|
68
|
+
const [upload] = useCapabilities(AppCapabilities.FileUploader);
|
|
68
69
|
useEffect(() => {
|
|
69
70
|
void Storage().then((config) => setStorageConfig(config));
|
|
70
71
|
}, []);
|
|
@@ -130,11 +131,11 @@ var DebugSettings = ({ settings, onSettingsChange }) => {
|
|
|
130
131
|
});
|
|
131
132
|
}
|
|
132
133
|
};
|
|
133
|
-
return /* @__PURE__ */ React2.createElement(
|
|
134
|
+
return /* @__PURE__ */ React2.createElement(Settings.Root, null, /* @__PURE__ */ React2.createElement(Settings.Section, {
|
|
134
135
|
title: t("settings title", {
|
|
135
136
|
ns: meta.id
|
|
136
137
|
})
|
|
137
|
-
}, /* @__PURE__ */ React2.createElement(
|
|
138
|
+
}, /* @__PURE__ */ React2.createElement(Settings.Group, null, /* @__PURE__ */ React2.createElement(Settings.ItemInput, {
|
|
138
139
|
title: t("settings wireframe")
|
|
139
140
|
}, /* @__PURE__ */ React2.createElement(Input2.Switch, {
|
|
140
141
|
checked: settings.wireframe,
|
|
@@ -142,14 +143,14 @@ var DebugSettings = ({ settings, onSettingsChange }) => {
|
|
|
142
143
|
...s,
|
|
143
144
|
wireframe: !!checked
|
|
144
145
|
}))
|
|
145
|
-
})), /* @__PURE__ */ React2.createElement(
|
|
146
|
+
})), /* @__PURE__ */ React2.createElement(Settings.ItemInput, {
|
|
146
147
|
title: t("settings download diagnostics")
|
|
147
148
|
}, /* @__PURE__ */ React2.createElement(IconButton, {
|
|
148
149
|
icon: "ph--download-simple--regular",
|
|
149
150
|
iconOnly: true,
|
|
150
151
|
label: t("settings download diagnostics"),
|
|
151
152
|
onClick: handleDownload
|
|
152
|
-
})), /* @__PURE__ */ React2.createElement(
|
|
153
|
+
})), /* @__PURE__ */ React2.createElement(Settings.ItemInput, {
|
|
153
154
|
title: t("settings repair")
|
|
154
155
|
}, /* @__PURE__ */ React2.createElement(IconButton, {
|
|
155
156
|
icon: "ph--first-aid-kit--regular",
|
|
@@ -160,7 +161,7 @@ var DebugSettings = ({ settings, onSettingsChange }) => {
|
|
|
160
161
|
icon: "ph--gift--duotone",
|
|
161
162
|
size: 5,
|
|
162
163
|
classNames: "inline mr-1"
|
|
163
|
-
}), /* @__PURE__ */ React2.createElement("span", null, toast.title)), toast.description && /* @__PURE__ */ React2.createElement(Toast.Description, null, toast.description))), /* @__PURE__ */ React2.createElement(
|
|
164
|
+
}), /* @__PURE__ */ React2.createElement("span", null, toast.title)), toast.description && /* @__PURE__ */ React2.createElement(Toast.Description, null, toast.description))), /* @__PURE__ */ React2.createElement(Settings.ItemInput, {
|
|
164
165
|
title: t("settings choose storage adaptor")
|
|
165
166
|
}, /* @__PURE__ */ React2.createElement(Select.Root, {
|
|
166
167
|
value: Object.entries(StorageAdapters).find(([_name, value]) => value === storageConfig?.runtime?.client?.storage?.dataStore)?.[0],
|
|
@@ -358,8 +359,8 @@ var Wireframe = ({ classNames, label, object }) => {
|
|
|
358
359
|
|
|
359
360
|
// src/components/index.ts
|
|
360
361
|
var DebugGraph = lazy(() => import("./DebugGraph-6VMEOKEV.mjs"));
|
|
361
|
-
var DevtoolsOverviewContainer = lazy(() => import("./DevtoolsOverviewContainer-
|
|
362
|
-
var SpaceGenerator = lazy(() => import("./SpaceGenerator-
|
|
362
|
+
var DevtoolsOverviewContainer = lazy(() => import("./DevtoolsOverviewContainer-2C6XMJ3L.mjs"));
|
|
363
|
+
var SpaceGenerator = lazy(() => import("./SpaceGenerator-B4A7J26E.mjs"));
|
|
363
364
|
|
|
364
365
|
// src/capabilities/react-surface/react-surface.tsx
|
|
365
366
|
var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-debug/src/capabilities/react-surface/react-surface.tsx";
|
|
@@ -377,13 +378,13 @@ var useCurrentSpace = () => {
|
|
|
377
378
|
};
|
|
378
379
|
var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* () {
|
|
379
380
|
const capabilities = yield* Capability.Service;
|
|
380
|
-
const registry = capabilities.get(
|
|
381
|
+
const registry = capabilities.get(Capabilities.AtomRegistry);
|
|
381
382
|
const settingsAtom = capabilities.get(DebugCapabilities.Settings);
|
|
382
|
-
return Capability.contributes(
|
|
383
|
-
|
|
383
|
+
return Capability.contributes(Capabilities.ReactSurface, [
|
|
384
|
+
Surface.create({
|
|
384
385
|
id: `${meta.id}/plugin-settings`,
|
|
385
386
|
role: "article",
|
|
386
|
-
filter: (data) =>
|
|
387
|
+
filter: (data) => AppCapabilities2.isSettings(data.subject) && data.subject.prefix === meta.id,
|
|
387
388
|
component: ({ data: { subject } }) => {
|
|
388
389
|
const { settings, updateSettings } = useSettingsState(subject.atom);
|
|
389
390
|
return /* @__PURE__ */ React5.createElement(DebugSettings, {
|
|
@@ -392,7 +393,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
392
393
|
});
|
|
393
394
|
}
|
|
394
395
|
}),
|
|
395
|
-
|
|
396
|
+
Surface.create({
|
|
396
397
|
id: `${meta.id}/space`,
|
|
397
398
|
role: "article",
|
|
398
399
|
filter: (data) => isSpaceDebug(data.subject),
|
|
@@ -424,7 +425,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
424
425
|
}));
|
|
425
426
|
}
|
|
426
427
|
}),
|
|
427
|
-
|
|
428
|
+
Surface.create({
|
|
428
429
|
id: `${meta.id}/app-graph`,
|
|
429
430
|
role: "article",
|
|
430
431
|
filter: (data) => isGraphDebug(data.subject),
|
|
@@ -433,7 +434,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
433
434
|
root: data.subject.root
|
|
434
435
|
})
|
|
435
436
|
}),
|
|
436
|
-
|
|
437
|
+
Surface.create({
|
|
437
438
|
id: `${meta.id}/wireframe`,
|
|
438
439
|
role: [
|
|
439
440
|
"article",
|
|
@@ -450,7 +451,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
450
451
|
classNames: "row-span-2 overflow-hidden"
|
|
451
452
|
})
|
|
452
453
|
}),
|
|
453
|
-
|
|
454
|
+
Surface.create({
|
|
454
455
|
id: `${meta.id}/object-debug`,
|
|
455
456
|
role: "article",
|
|
456
457
|
filter: (data) => data.subject === "debug" && Obj2.isObject(data.companionTo),
|
|
@@ -458,12 +459,12 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
458
459
|
object: data.companionTo
|
|
459
460
|
})
|
|
460
461
|
}),
|
|
461
|
-
|
|
462
|
+
Surface.create({
|
|
462
463
|
id: `${meta.id}/devtools-overview`,
|
|
463
464
|
role: "deck-companion--devtools",
|
|
464
465
|
component: () => /* @__PURE__ */ React5.createElement(DevtoolsOverviewContainer, null)
|
|
465
466
|
}),
|
|
466
|
-
|
|
467
|
+
Surface.create({
|
|
467
468
|
id: `${meta.id}/status`,
|
|
468
469
|
role: "status",
|
|
469
470
|
component: () => /* @__PURE__ */ React5.createElement(DebugStatus, null)
|
|
@@ -471,7 +472,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
471
472
|
//
|
|
472
473
|
// Devtools
|
|
473
474
|
//
|
|
474
|
-
|
|
475
|
+
Surface.create({
|
|
475
476
|
id: `${meta.id}/client/config`,
|
|
476
477
|
role: "article",
|
|
477
478
|
filter: (data) => data.subject === Devtools.Client.Config,
|
|
@@ -479,49 +480,49 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
479
480
|
vaultSelector: false
|
|
480
481
|
})
|
|
481
482
|
}),
|
|
482
|
-
|
|
483
|
+
Surface.create({
|
|
483
484
|
id: `${meta.id}/client/storage`,
|
|
484
485
|
role: "article",
|
|
485
486
|
filter: (data) => data.subject === Devtools.Client.Storage,
|
|
486
487
|
component: () => /* @__PURE__ */ React5.createElement(StoragePanel, null)
|
|
487
488
|
}),
|
|
488
|
-
|
|
489
|
+
Surface.create({
|
|
489
490
|
id: `${meta.id}/client/logs`,
|
|
490
491
|
role: "article",
|
|
491
492
|
filter: (data) => data.subject === Devtools.Client.Logs,
|
|
492
493
|
component: () => /* @__PURE__ */ React5.createElement(LoggingPanel, null)
|
|
493
494
|
}),
|
|
494
|
-
|
|
495
|
+
Surface.create({
|
|
495
496
|
id: `${meta.id}/client/diagnostics`,
|
|
496
497
|
role: "article",
|
|
497
498
|
filter: (data) => data.subject === Devtools.Client.Diagnostics,
|
|
498
499
|
component: () => /* @__PURE__ */ React5.createElement(DiagnosticsPanel, null)
|
|
499
500
|
}),
|
|
500
|
-
|
|
501
|
+
Surface.create({
|
|
501
502
|
id: `${meta.id}/client/tracing`,
|
|
502
503
|
role: "article",
|
|
503
504
|
filter: (data) => data.subject === Devtools.Client.Tracing,
|
|
504
505
|
component: () => /* @__PURE__ */ React5.createElement(TracingPanel, null)
|
|
505
506
|
}),
|
|
506
|
-
|
|
507
|
+
Surface.create({
|
|
507
508
|
id: `${meta.id}/halo/identity`,
|
|
508
509
|
role: "article",
|
|
509
510
|
filter: (data) => data.subject === Devtools.Halo.Identity,
|
|
510
511
|
component: () => /* @__PURE__ */ React5.createElement(IdentityPanel, null)
|
|
511
512
|
}),
|
|
512
|
-
|
|
513
|
+
Surface.create({
|
|
513
514
|
id: `${meta.id}/halo/devices`,
|
|
514
515
|
role: "article",
|
|
515
516
|
filter: (data) => data.subject === Devtools.Halo.Devices,
|
|
516
517
|
component: () => /* @__PURE__ */ React5.createElement(DeviceListPanel, null)
|
|
517
518
|
}),
|
|
518
|
-
|
|
519
|
+
Surface.create({
|
|
519
520
|
id: `${meta.id}/halo/keyring`,
|
|
520
521
|
role: "article",
|
|
521
522
|
filter: (data) => data.subject === Devtools.Halo.Keyring,
|
|
522
523
|
component: () => /* @__PURE__ */ React5.createElement(KeyringPanel, null)
|
|
523
524
|
}),
|
|
524
|
-
|
|
525
|
+
Surface.create({
|
|
525
526
|
id: `${meta.id}/halo/credentials`,
|
|
526
527
|
role: "article",
|
|
527
528
|
filter: (data) => data.subject === Devtools.Halo.Credentials,
|
|
@@ -532,13 +533,13 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
532
533
|
});
|
|
533
534
|
}
|
|
534
535
|
}),
|
|
535
|
-
|
|
536
|
+
Surface.create({
|
|
536
537
|
id: `${meta.id}/echo/spaces`,
|
|
537
538
|
role: "article",
|
|
538
539
|
filter: (data) => data.subject === Devtools.Echo.Spaces,
|
|
539
540
|
component: () => {
|
|
540
541
|
const { invokePromise } = useOperationInvoker();
|
|
541
|
-
const handleSelect = useCallback(() => invokePromise(
|
|
542
|
+
const handleSelect = useCallback(() => invokePromise(LayoutOperation.Open, {
|
|
542
543
|
subject: [
|
|
543
544
|
Devtools.Echo.Space
|
|
544
545
|
]
|
|
@@ -550,14 +551,14 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
550
551
|
});
|
|
551
552
|
}
|
|
552
553
|
}),
|
|
553
|
-
|
|
554
|
+
Surface.create({
|
|
554
555
|
id: `${meta.id}/echo/space`,
|
|
555
556
|
role: "article",
|
|
556
557
|
filter: (data) => data.subject === Devtools.Echo.Space,
|
|
557
558
|
component: () => {
|
|
558
559
|
const space = useCurrentSpace();
|
|
559
560
|
const { invokePromise } = useOperationInvoker();
|
|
560
|
-
const handleSelect = useCallback(() => invokePromise(
|
|
561
|
+
const handleSelect = useCallback(() => invokePromise(LayoutOperation.Open, {
|
|
561
562
|
subject: [
|
|
562
563
|
Devtools.Echo.Feeds
|
|
563
564
|
]
|
|
@@ -571,7 +572,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
571
572
|
});
|
|
572
573
|
}
|
|
573
574
|
}),
|
|
574
|
-
|
|
575
|
+
Surface.create({
|
|
575
576
|
id: `${meta.id}/echo/feeds`,
|
|
576
577
|
role: "article",
|
|
577
578
|
filter: (data) => data.subject === Devtools.Echo.Feeds,
|
|
@@ -582,7 +583,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
582
583
|
});
|
|
583
584
|
}
|
|
584
585
|
}),
|
|
585
|
-
|
|
586
|
+
Surface.create({
|
|
586
587
|
id: `${meta.id}/echo/objects`,
|
|
587
588
|
role: "article",
|
|
588
589
|
filter: (data) => data.subject === Devtools.Echo.Objects,
|
|
@@ -593,7 +594,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
593
594
|
});
|
|
594
595
|
}
|
|
595
596
|
}),
|
|
596
|
-
|
|
597
|
+
Surface.create({
|
|
597
598
|
id: `${meta.id}/echo/schema`,
|
|
598
599
|
role: "article",
|
|
599
600
|
filter: (data) => data.subject === Devtools.Echo.Schema,
|
|
@@ -604,7 +605,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
604
605
|
});
|
|
605
606
|
}
|
|
606
607
|
}),
|
|
607
|
-
|
|
608
|
+
Surface.create({
|
|
608
609
|
id: `${meta.id}/echo/automerge`,
|
|
609
610
|
role: "article",
|
|
610
611
|
filter: (data) => data.subject === Devtools.Echo.Automerge,
|
|
@@ -615,13 +616,13 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
615
616
|
});
|
|
616
617
|
}
|
|
617
618
|
}),
|
|
618
|
-
|
|
619
|
+
Surface.create({
|
|
619
620
|
id: `${meta.id}/echo/queues`,
|
|
620
621
|
role: "article",
|
|
621
622
|
filter: (data) => data.subject === Devtools.Echo.Queues,
|
|
622
623
|
component: () => /* @__PURE__ */ React5.createElement(QueuesPanel, null)
|
|
623
624
|
}),
|
|
624
|
-
|
|
625
|
+
Surface.create({
|
|
625
626
|
id: `${meta.id}/echo/members`,
|
|
626
627
|
role: "article",
|
|
627
628
|
filter: (data) => data.subject === Devtools.Echo.Members,
|
|
@@ -632,25 +633,25 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
632
633
|
});
|
|
633
634
|
}
|
|
634
635
|
}),
|
|
635
|
-
|
|
636
|
+
Surface.create({
|
|
636
637
|
id: `${meta.id}/echo/metadata`,
|
|
637
638
|
role: "article",
|
|
638
639
|
filter: (data) => data.subject === Devtools.Echo.Metadata,
|
|
639
640
|
component: () => /* @__PURE__ */ React5.createElement(MetadataPanel, null)
|
|
640
641
|
}),
|
|
641
|
-
|
|
642
|
+
Surface.create({
|
|
642
643
|
id: `${meta.id}/mesh/signal`,
|
|
643
644
|
role: "article",
|
|
644
645
|
filter: (data) => data.subject === Devtools.Mesh.Signal,
|
|
645
646
|
component: () => /* @__PURE__ */ React5.createElement(SignalPanel, null)
|
|
646
647
|
}),
|
|
647
|
-
|
|
648
|
+
Surface.create({
|
|
648
649
|
id: `${meta.id}/mesh/swarm`,
|
|
649
650
|
role: "article",
|
|
650
651
|
filter: (data) => data.subject === Devtools.Mesh.Swarm,
|
|
651
652
|
component: () => /* @__PURE__ */ React5.createElement(SwarmPanel, null)
|
|
652
653
|
}),
|
|
653
|
-
|
|
654
|
+
Surface.create({
|
|
654
655
|
id: `${meta.id}/mesh/network`,
|
|
655
656
|
role: "article",
|
|
656
657
|
filter: (data) => data.subject === Devtools.Mesh.Network,
|
|
@@ -668,13 +669,13 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
668
669
|
// filter: (data): data is any => data.subject === Devtools.Agent.Dashboard,
|
|
669
670
|
// component: () => <DashboardPanel />,
|
|
670
671
|
// }),
|
|
671
|
-
|
|
672
|
+
Surface.create({
|
|
672
673
|
id: `${meta.id}/edge/dashboard`,
|
|
673
674
|
role: "article",
|
|
674
675
|
filter: (data) => data.subject === Devtools.Edge.Dashboard,
|
|
675
676
|
component: () => /* @__PURE__ */ React5.createElement(EdgeDashboardPanel, null)
|
|
676
677
|
}),
|
|
677
|
-
|
|
678
|
+
Surface.create({
|
|
678
679
|
id: `${meta.id}/edge/workflows`,
|
|
679
680
|
role: "article",
|
|
680
681
|
filter: (data) => data.subject === Devtools.Edge.Workflows,
|
|
@@ -685,7 +686,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
685
686
|
});
|
|
686
687
|
}
|
|
687
688
|
}),
|
|
688
|
-
|
|
689
|
+
Surface.create({
|
|
689
690
|
id: `${meta.id}/edge/traces`,
|
|
690
691
|
role: "article",
|
|
691
692
|
filter: (data) => data.subject === Devtools.Edge.Traces,
|
|
@@ -699,7 +700,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
699
700
|
});
|
|
700
701
|
}
|
|
701
702
|
}),
|
|
702
|
-
|
|
703
|
+
Surface.create({
|
|
703
704
|
id: `${meta.id}/edge/testing`,
|
|
704
705
|
role: "article",
|
|
705
706
|
filter: (data) => data.subject === Devtools.Edge.Testing,
|
|
@@ -729,12 +730,12 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
729
730
|
result: createResult
|
|
730
731
|
}, {
|
|
731
732
|
F: __dxlog_file2,
|
|
732
|
-
L:
|
|
733
|
+
L: 397,
|
|
733
734
|
S: this,
|
|
734
735
|
C: (f, a) => f(...a)
|
|
735
736
|
});
|
|
736
737
|
if (createResult.data?.object?.id) {
|
|
737
|
-
await invokePromise(
|
|
738
|
+
await invokePromise(LayoutOperation.Open, {
|
|
738
739
|
subject: [
|
|
739
740
|
`${space.id}:${createResult.data.object.id}`
|
|
740
741
|
]
|
|
@@ -754,4 +755,4 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
754
755
|
export {
|
|
755
756
|
react_surface_default as default
|
|
756
757
|
};
|
|
757
|
-
//# sourceMappingURL=react-surface-
|
|
758
|
+
//# sourceMappingURL=react-surface-ADOU5663.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/react-surface/react-surface.tsx", "../../../src/components/index.ts", "../../../src/components/DebugObjectPanel.tsx", "../../../src/components/DebugSettings.tsx", "../../../src/components/DebugStatus.tsx", "../../../src/components/Wireframe.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React, { useCallback } from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface, useCapability, useOperationInvoker, useSettingsState } from '@dxos/app-framework/ui';\nimport { AppCapabilities, LayoutOperation } from '@dxos/app-toolkit';\nimport { useLayout } from '@dxos/app-toolkit/ui';\nimport {\n AutomergePanel,\n ConfigPanel,\n CredentialsPanel,\n DeviceListPanel,\n DiagnosticsPanel,\n EdgeDashboardPanel,\n FeedsPanel,\n IdentityPanel,\n InvocationTraceContainer,\n KeyringPanel,\n LoggingPanel,\n MembersPanel,\n MetadataPanel,\n NetworkPanel,\n ObjectsPanel,\n QueuesPanel,\n SchemaPanel,\n SignalPanel,\n SpaceInfoPanel,\n SpaceListPanel,\n StoragePanel,\n SwarmPanel,\n TestingPanel,\n TracingPanel,\n WorkflowPanel,\n} from '@dxos/devtools';\nimport { Obj } from '@dxos/echo';\nimport { log } from '@dxos/log';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { type Graph } from '@dxos/plugin-graph';\nimport { ScriptOperation } from '@dxos/plugin-script/types';\nimport { SpaceOperation } from '@dxos/plugin-space/types';\nimport { type Space, SpaceState, isSpace, parseId } from '@dxos/react-client/echo';\nimport { Layout } from '@dxos/react-ui';\nimport { Collection } from '@dxos/schema';\n\nimport {\n DebugGraph,\n DebugObjectPanel,\n DebugSettings,\n DebugStatus,\n DevtoolsOverviewContainer,\n SpaceGenerator,\n Wireframe,\n} from '../../components';\nimport { meta } from '../../meta';\nimport { DebugCapabilities, type DebugSettingsProps, Devtools } from '../../types';\n\ntype SpaceDebug = {\n type: string;\n space: Space;\n};\n\ntype GraphDebug = {\n graph: Graph.Graph;\n root: string;\n};\n\nconst isSpaceDebug = (data: any): data is SpaceDebug => data?.type === `${meta.id}/space` && isSpace(data.space);\nconst isGraphDebug = (data: any): data is GraphDebug => {\n const graph = data?.graph;\n return (\n graph != null && typeof graph === 'object' && typeof graph.json === 'function' && typeof data?.root === 'string'\n );\n};\n\n// TODO(wittjosiah): Factor out?\nconst useCurrentSpace = () => {\n const layout = useLayout();\n const client = useCapability(ClientCapabilities.Client);\n const { spaceId } = parseId(layout.workspace);\n const space = spaceId ? client.spaces.get(spaceId) : undefined;\n return space;\n};\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const capabilities = yield* Capability.Service;\n const registry = capabilities.get(Capabilities.AtomRegistry);\n const settingsAtom = capabilities.get(DebugCapabilities.Settings);\n\n return Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: `${meta.id}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: AppCapabilities.Settings } =>\n AppCapabilities.isSettings(data.subject) && data.subject.prefix === meta.id,\n component: ({ data: { subject } }) => {\n const { settings, updateSettings } = useSettingsState<DebugSettingsProps>(subject.atom);\n return <DebugSettings settings={settings} onSettingsChange={updateSettings} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/space`,\n role: 'article',\n filter: (data): data is { subject: SpaceDebug } => isSpaceDebug(data.subject),\n component: ({ role, data }) => {\n const { invokePromise } = useOperationInvoker();\n\n const handleCreateObject = useCallback(\n (objects: Obj.Unknown[]) => {\n if (!isSpace(data.subject.space)) {\n return;\n }\n\n const collection =\n data.subject.space.state.get() === SpaceState.SPACE_READY &&\n data.subject.space.properties[Collection.Collection.typename]?.target;\n if (!Obj.instanceOf(Collection.Collection, collection)) {\n return;\n }\n\n objects.forEach((object) => {\n void invokePromise(SpaceOperation.AddObject, {\n target: collection,\n object,\n });\n });\n },\n [data.subject.space, invokePromise],\n );\n\n return (\n <Layout.Main role={role}>\n <SpaceGenerator space={data.subject.space} onCreateObjects={handleCreateObject} />\n </Layout.Main>\n );\n },\n }),\n Surface.create({\n id: `${meta.id}/app-graph`,\n role: 'article',\n filter: (data): data is { subject: GraphDebug } => isGraphDebug(data.subject),\n component: ({ data }) => <DebugGraph graph={data.subject.graph} root={data.subject.root} />,\n }),\n Surface.create({\n id: `${meta.id}/wireframe`,\n role: ['article', 'section'],\n position: 'hoist',\n filter: (data): data is { subject: Obj.Unknown } => {\n const settings = registry.get(settingsAtom);\n return Obj.isObject(data.subject) && !!settings.wireframe;\n },\n component: ({ data, role }) => (\n <Wireframe label={`${role}:${name}`} object={data.subject} classNames='row-span-2 overflow-hidden' />\n ),\n }),\n Surface.create({\n id: `${meta.id}/object-debug`,\n role: 'article',\n filter: (data): data is { companionTo: Obj.Unknown } =>\n data.subject === 'debug' && Obj.isObject(data.companionTo),\n component: ({ data }) => <DebugObjectPanel object={data.companionTo} />,\n }),\n Surface.create({\n id: `${meta.id}/devtools-overview`,\n role: 'deck-companion--devtools',\n component: () => <DevtoolsOverviewContainer />,\n }),\n Surface.create({\n id: `${meta.id}/status`,\n role: 'status',\n component: () => <DebugStatus />,\n }),\n\n //\n // Devtools\n //\n\n Surface.create({\n id: `${meta.id}/client/config`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Config,\n component: () => <ConfigPanel vaultSelector={false} />,\n }),\n Surface.create({\n id: `${meta.id}/client/storage`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Storage,\n component: () => <StoragePanel />,\n }),\n Surface.create({\n id: `${meta.id}/client/logs`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Logs,\n component: () => <LoggingPanel />,\n }),\n Surface.create({\n id: `${meta.id}/client/diagnostics`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Diagnostics,\n component: () => <DiagnosticsPanel />,\n }),\n Surface.create({\n id: `${meta.id}/client/tracing`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Tracing,\n component: () => <TracingPanel />,\n }),\n Surface.create({\n id: `${meta.id}/halo/identity`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Halo.Identity,\n component: () => <IdentityPanel />,\n }),\n Surface.create({\n id: `${meta.id}/halo/devices`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Halo.Devices,\n component: () => <DeviceListPanel />,\n }),\n Surface.create({\n id: `${meta.id}/halo/keyring`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Halo.Keyring,\n component: () => <KeyringPanel />,\n }),\n Surface.create({\n id: `${meta.id}/halo/credentials`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Halo.Credentials,\n component: () => {\n const space = useCurrentSpace();\n return <CredentialsPanel space={space} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/echo/spaces`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Spaces,\n component: () => {\n const { invokePromise } = useOperationInvoker();\n const handleSelect = useCallback(\n () => invokePromise(LayoutOperation.Open, { subject: [Devtools.Echo.Space] }),\n [invokePromise],\n );\n return <SpaceListPanel onSelect={handleSelect} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/echo/space`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Space,\n component: () => {\n const space = useCurrentSpace();\n const { invokePromise } = useOperationInvoker();\n const handleSelect = useCallback(\n () => invokePromise(LayoutOperation.Open, { subject: [Devtools.Echo.Feeds] }),\n [invokePromise],\n );\n return <SpaceInfoPanel space={space} onSelectFeed={handleSelect} onSelectPipeline={handleSelect} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/echo/feeds`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Feeds,\n component: () => {\n const space = useCurrentSpace();\n return <FeedsPanel space={space} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/echo/objects`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Objects,\n component: () => {\n const space = useCurrentSpace();\n return <ObjectsPanel space={space} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/echo/schema`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Schema,\n component: () => {\n const space = useCurrentSpace();\n return <SchemaPanel space={space} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/echo/automerge`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Automerge,\n component: () => {\n const space = useCurrentSpace();\n return <AutomergePanel space={space} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/echo/queues`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Queues,\n component: () => <QueuesPanel />,\n }),\n Surface.create({\n id: `${meta.id}/echo/members`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Members,\n component: () => {\n const space = useCurrentSpace();\n return <MembersPanel space={space} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/echo/metadata`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Metadata,\n component: () => <MetadataPanel />,\n }),\n Surface.create({\n id: `${meta.id}/mesh/signal`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Mesh.Signal,\n component: () => <SignalPanel />,\n }),\n Surface.create({\n id: `${meta.id}/mesh/swarm`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Mesh.Swarm,\n component: () => <SwarmPanel />,\n }),\n Surface.create({\n id: `${meta.id}/mesh/network`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Mesh.Network,\n component: () => {\n const space = useCurrentSpace();\n return <NetworkPanel space={space} />;\n },\n }),\n // TODO(wittjosiah): Remove?\n // createSurface({\n // id: `${meta.id}/agent/dashboard`,\n // role: 'article',\n // filter: (data): data is any => data.subject === Devtools.Agent.Dashboard,\n // component: () => <DashboardPanel />,\n // }),\n Surface.create({\n id: `${meta.id}/edge/dashboard`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Edge.Dashboard,\n component: () => <EdgeDashboardPanel />,\n }),\n Surface.create({\n id: `${meta.id}/edge/workflows`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Edge.Workflows,\n component: () => {\n const space = useCurrentSpace();\n return <WorkflowPanel space={space} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/edge/traces`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Edge.Traces,\n component: () => {\n const space = useCurrentSpace();\n const queueDxn = space?.properties.invocationTraceQueue?.dxn;\n return <InvocationTraceContainer db={space?.db} queueDxn={queueDxn} detailAxis='block' />;\n },\n }),\n Surface.create({\n id: `${meta.id}/edge/testing`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Edge.Testing,\n component: () => {\n const { invokePromise } = useOperationInvoker();\n const onSpaceCreate = useCallback(\n async (space: Space) => {\n await space.waitUntilReady();\n await invokePromise(SpaceOperation.Migrate, { space });\n await space.db.flush();\n },\n [invokePromise],\n );\n const onScriptPluginOpen = useCallback(\n async (space: Space) => {\n await space.waitUntilReady();\n const createResult = await invokePromise(ScriptOperation.CreateScript, { db: space.db });\n if (createResult.data?.object) {\n await invokePromise(SpaceOperation.AddObject, { target: space.db, object: createResult.data.object });\n }\n log.info('script created', { result: createResult });\n if (createResult.data?.object?.id) {\n await invokePromise(LayoutOperation.Open, {\n subject: [`${space.id}:${createResult.data.object.id}`],\n });\n }\n },\n [invokePromise],\n );\n return <TestingPanel onSpaceCreate={onSpaceCreate} onScriptPluginOpen={onScriptPluginOpen} />;\n },\n }),\n ]);\n }),\n);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\nimport { type FC } from 'react';\n\nimport { type DebugGraphProps } from './DebugGraph';\n\nexport const DebugGraph: ReturnType<typeof lazy<FC<DebugGraphProps>>> = lazy(() => import('./DebugGraph'));\nexport const DevtoolsOverviewContainer = lazy(() => import('./DevtoolsOverviewContainer'));\nexport const SpaceGenerator = lazy(() => import('./SpaceGenerator'));\n\nexport * from './DebugObjectPanel';\nexport * from './DebugSettings';\nexport * from './DebugStatus';\nexport * from './Wireframe';\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Obj } from '@dxos/echo';\nimport { Clipboard, Input, Layout, Toolbar } from '@dxos/react-ui';\nimport { Json } from '@dxos/react-ui-syntax-highlighter';\n\nexport type DebugObjectPanelProps = {\n object: Obj.Unknown;\n};\n\n// TODO(burdon): Get schema and traverse references.\nexport const DebugObjectPanel = ({ object }: DebugObjectPanelProps) => {\n const dxn = `dxn:echo:@:${object.id}`;\n\n return (\n <Clipboard.Provider>\n <Layout.Main toolbar>\n <Toolbar.Root>\n <Input.Root>\n <Input.TextInput disabled value={dxn} />\n <Clipboard.IconButton value={dxn} />\n </Input.Root>\n </Toolbar.Root>\n <Json data={object} />\n </Layout.Main>\n </Clipboard.Provider>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useEffect, useState } from 'react';\n\nimport { useCapabilities } from '@dxos/app-framework/ui';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { type ConfigProto, SaveConfig, Storage, defs } from '@dxos/config';\nimport { log } from '@dxos/log';\nimport { useClient } from '@dxos/react-client';\nimport { Icon, IconButton, Input, Select, Toast, useFileDownload, useTranslation } from '@dxos/react-ui';\nimport { Settings } from '@dxos/react-ui-form';\nimport { setDeep } from '@dxos/util';\n\nimport { meta } from '../meta';\nimport { type DebugSettingsProps } from '../types';\n\ntype Toast = {\n title: string;\n description?: string;\n};\n\nconst StorageAdapters = {\n opfs: defs.Runtime.Client.Storage.StorageDriver.WEBFS,\n idb: defs.Runtime.Client.Storage.StorageDriver.IDB,\n} as const;\n\nexport type DebugSettingsComponentProps = {\n settings: DebugSettingsProps;\n onSettingsChange: (fn: (current: DebugSettingsProps) => DebugSettingsProps) => void;\n};\n\nexport const DebugSettings = ({ settings, onSettingsChange }: DebugSettingsComponentProps) => {\n const { t } = useTranslation(meta.id);\n const [toast, setToast] = useState<Toast>();\n const client = useClient();\n const download = useFileDownload();\n // TODO(mykola): Get updates from other places that change Config.\n const [storageConfig, setStorageConfig] = useState<ConfigProto>({});\n const [upload] = useCapabilities(AppCapabilities.FileUploader);\n\n useEffect(() => {\n void Storage().then((config) => setStorageConfig(config));\n }, []);\n\n const handleToast = (toast: Toast) => {\n setToast(toast);\n const t = setTimeout(() => setToast(undefined), 5_000);\n return () => clearTimeout(t);\n };\n\n const handleDownload = async () => {\n const data = await client.diagnostics();\n const file = new Blob([JSON.stringify(data, undefined, 2)], {\n type: 'text/plain',\n });\n const fileName = `composer-${new Date().toISOString().replace(/\\W/g, '-')}.json`;\n download(file, fileName);\n\n if (upload) {\n const info = await upload(client.spaces.default.db, new File([file], fileName));\n if (!info) {\n log.error('diagnostics failed to upload to IPFS');\n return;\n }\n handleToast({\n title: t('settings uploaded'),\n description: t('settings uploaded to clipboard'),\n });\n\n // TODO(nf): move to IpfsPlugin?\n const url = client.config.values.runtime!.services!.ipfs!.gateway + '/' + info.cid;\n void navigator.clipboard.writeText(url);\n handleToast({\n title: t('settings uploaded'),\n description: t('settings uploaded to clipboard'),\n });\n log.info('diagnostics', { url });\n }\n };\n\n const handleRepair = async () => {\n try {\n const info = await client.repair();\n setStorageConfig(await Storage());\n handleToast({\n title: t('settings repair success'),\n description: JSON.stringify(info, undefined, 2),\n });\n } catch (err: any) {\n handleToast({\n title: t('settings repair failed'),\n description: err.message,\n });\n }\n };\n\n return (\n <Settings.Root>\n <Settings.Section title={t('settings title', { ns: meta.id })}>\n <Settings.Group>\n <Settings.ItemInput title={t('settings wireframe')}>\n <Input.Switch\n checked={settings.wireframe}\n onCheckedChange={(checked) => onSettingsChange((s) => ({ ...s, wireframe: !!checked }))}\n />\n </Settings.ItemInput>\n <Settings.ItemInput title={t('settings download diagnostics')}>\n <IconButton\n icon='ph--download-simple--regular'\n iconOnly\n label={t('settings download diagnostics')}\n onClick={handleDownload}\n />\n </Settings.ItemInput>\n <Settings.ItemInput title={t('settings repair')}>\n <IconButton\n icon='ph--first-aid-kit--regular'\n iconOnly\n label={t('settings repair')}\n onClick={handleRepair}\n />\n </Settings.ItemInput>\n\n {/* TODO(burdon): Move to layout? */}\n {toast && (\n <Toast.Root>\n <Toast.Body>\n <Toast.Title>\n <Icon icon='ph--gift--duotone' size={5} classNames='inline mr-1' />\n <span>{toast.title}</span>\n </Toast.Title>\n {toast.description && <Toast.Description>{toast.description}</Toast.Description>}\n </Toast.Body>\n </Toast.Root>\n )}\n\n <Settings.ItemInput title={t('settings choose storage adaptor')}>\n <Select.Root\n value={\n Object.entries(StorageAdapters).find(\n ([_name, value]) => value === storageConfig?.runtime?.client?.storage?.dataStore,\n )?.[0]\n }\n onValueChange={(value) => {\n if (confirm(t('settings storage adapter changed alert'))) {\n updateConfig(\n storageConfig,\n setStorageConfig,\n ['runtime', 'client', 'storage', 'dataStore'],\n StorageAdapters[value as keyof typeof StorageAdapters],\n );\n }\n }}\n >\n <Select.TriggerButton placeholder={t('settings data store label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {Object.keys(StorageAdapters).map((key) => (\n <Select.Option key={key} value={key}>\n {t(`settings storage adaptor ${key} label`)}\n </Select.Option>\n ))}\n </Select.Viewport>\n <Select.Arrow />\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </Settings.ItemInput>\n </Settings.Group>\n </Settings.Section>\n </Settings.Root>\n );\n};\n\nconst updateConfig = (config: ConfigProto, setConfig: (newConfig: ConfigProto) => void, path: string[], value: any) => {\n const storageConfigCopy = JSON.parse(JSON.stringify(config ?? {}));\n setDeep(storageConfigCopy, path, value);\n setConfig(storageConfigCopy);\n queueMicrotask(async () => {\n await SaveConfig(storageConfigCopy);\n });\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { TimeoutError } from '@dxos/async';\nimport { useActiveSpace } from '@dxos/plugin-space';\nimport { StatusBar } from '@dxos/plugin-status-bar';\nimport { ConnectionState } from '@dxos/protocols/proto/dxos/client/services';\nimport { useNetworkStatus } from '@dxos/react-client/mesh';\nimport { Icon } from '@dxos/react-ui';\n\nconst styles = {\n success: 'text-sky-300 dark:text-green-700',\n warning: 'text-orange-300 dark:text-orange-600',\n error: 'text-red-300 dark:text-red-600',\n};\n\n// TODO(burdon): Move out of debug plugin.\n// TODO(burdon): Make pluggable (move indicators to relevant plugins).\n// TODO(burdon): Vault heartbeat indicator (global scope)?\n\n/**\n * Ensure light doesn't flicker immediately after start.\n */\n// TODO(burdon): Move to @dxos/async (debounce?)\nconst _timer = (cb: (err?: Error) => void, options?: { min?: number; max?: number }) => {\n const min = options?.min ?? 500;\n let start: number;\n let pending: NodeJS.Timeout;\n let timeout: NodeJS.Timeout;\n return {\n start: () => {\n start = Date.now();\n clearTimeout(pending);\n if (options?.max) {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n cb(new TimeoutError(options.max));\n }, options.max);\n }\n },\n stop: () => {\n clearTimeout(timeout);\n const delta = Date.now() - start;\n if (delta < min) {\n pending = setTimeout(() => {\n cb();\n }, min - delta);\n }\n },\n };\n};\n\n/**\n * Global error handler.\n */\n// TODO(burdon): Integrate with Sentry?\nconst ErrorIndicator = () => {\n const [, forceUpdate] = useState({});\n const errorRef = useRef<Error>(null);\n useEffect(() => {\n const errorListener = (event: any) => {\n const error: Error = event.error ?? event.reason;\n if (errorRef.current !== error) {\n errorRef.current = error;\n forceUpdate({});\n }\n };\n\n // TODO(burdon): Register globally?\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/error_event\n window.addEventListener('error', errorListener);\n\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/unhandledrejection_event\n window.addEventListener('unhandledrejection', errorListener);\n\n return () => {\n window.removeEventListener('error', errorListener);\n window.removeEventListener('unhandledrejection', errorListener);\n };\n }, []);\n\n const handleReset = () => {\n errorRef.current = null;\n forceUpdate({});\n };\n\n if (errorRef.current) {\n return (\n <StatusBar.Button title={errorRef.current.message} onClick={handleReset}>\n <Icon icon='ph--warning-circle--duotone' size={4} classNames={styles.error} />\n </StatusBar.Button>\n );\n } else {\n return (\n <StatusBar.Item title='No errors.'>\n <Icon icon='ph--check--regular' size={4} />\n </StatusBar.Item>\n );\n }\n};\n\n/**\n * Swarm connection handler.\n */\nconst SwarmIndicator = () => {\n const [state, setState] = useState(0);\n const { swarm } = useNetworkStatus();\n useEffect(() => {\n setState(swarm === ConnectionState.ONLINE ? 0 : 1);\n }, [swarm]);\n\n if (state === 0) {\n return (\n <StatusBar.Item title='Connected to swarm.'>\n <Icon icon='ph--lightning--regular' size={4} />\n </StatusBar.Item>\n );\n } else {\n return (\n <StatusBar.Item title='Disconnected from swarm.'>\n <Icon icon='ph--lightning-slash--regular' size={4} classNames={styles.warning} />\n </StatusBar.Item>\n );\n }\n};\n\n/**\n * Data saving indicator.\n */\n// TODO(burdon): Merge with SaveStatus.\nconst SavingIndicator = () => {\n const [state, _setState] = useState(0);\n const _space = useActiveSpace();\n // TODO(dmaretskyi): Fix this when we have save status for automerge.\n // useEffect(() => {\n // if (!space) {\n // return;\n // }\n // const { start, stop } = timer(() => setState(0), { min: 250 });\n // return space.db.pendingBatch.on(({ duration, error }) => {\n // if (error) {\n // setState(2);\n // stop();\n // } else if (duration === undefined) {\n // setState(1);\n // start();\n // } else {\n // stop();\n // }\n // });\n // }, [space]);\n\n switch (state) {\n case 2:\n return (\n <StatusBar.Item title='Edit not saved.'>\n <Icon icon='ph--circle--duotone' size={4} classNames={styles.warning} />\n </StatusBar.Item>\n );\n case 1:\n return (\n <StatusBar.Item title='Saving...'>\n <Icon icon='ph--circle--duotone' size={4} classNames={styles.success} />\n </StatusBar.Item>\n );\n case 0:\n default:\n return (\n <StatusBar.Item title='Modified indicator.'>\n <Icon icon='ph--circle--duotone' size={4} />\n </StatusBar.Item>\n );\n }\n};\n\nconst indicators = [SavingIndicator, SwarmIndicator, ErrorIndicator];\n\nexport const DebugStatus = () => {\n return (\n <>\n {indicators.map((Indicator) => (\n <Indicator key={Indicator.name} />\n ))}\n </>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\nimport { useResizeDetector } from 'react-resize-detector';\n\nimport { Obj } from '@dxos/echo';\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport { useAttentionAttributes } from '@dxos/react-ui-attention';\nimport { SyntaxHighlighter } from '@dxos/react-ui-syntax-highlighter';\nimport { mx } from '@dxos/ui-theme';\n\n// TODO(burdon): Create generic container with wireframe mode.\nexport type WireframeProps = ThemedClassName<{\n object: Obj.Unknown;\n label?: string;\n}>;\n\n// TODO(burdon): Make focusable and attendable with input.\nexport const Wireframe = ({ classNames, label, object }: WireframeProps) => {\n const attentionAttrs = useAttentionAttributes(Obj.getDXN(object).toString());\n const { width, height, ref } = useResizeDetector();\n\n return (\n <div ref={ref} className={mx('relative grow min-bs-96', classNames)} {...attentionAttrs}>\n <div className='absolute inset-2 flex flex-col gap-2 overflow-hidden font-mono'>\n <div className='flex justify-between'>\n <div>{label}</div>\n <div>{`[${width}x${height}]`}</div>\n </div>\n {object && (\n <SyntaxHighlighter language='json' classNames='text-xs opacity-75 rounded'>\n {JSON.stringify(object, undefined, 2)}\n </SyntaxHighlighter>\n )}\n </div>\n <svg width={width} height={height} className='bg-transparent *:text-subdued'>\n <rect x={0} y={0} width={width} height={height} strokeWidth={1} fill='none' />\n <line x1={0} y1={0} x2={width} y2={height} strokeWidth={1} />\n <line x1={0} y1={height} x2={width} y2={0} strokeWidth={1} />\n </svg>\n </div>\n );\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Effect", "React", "useCallback", "Capabilities", "Capability", "Surface", "useCapability", "useOperationInvoker", "useSettingsState", "AppCapabilities", "LayoutOperation", "useLayout", "AutomergePanel", "ConfigPanel", "CredentialsPanel", "DeviceListPanel", "DiagnosticsPanel", "EdgeDashboardPanel", "FeedsPanel", "IdentityPanel", "InvocationTraceContainer", "KeyringPanel", "LoggingPanel", "MembersPanel", "MetadataPanel", "NetworkPanel", "ObjectsPanel", "QueuesPanel", "SchemaPanel", "SignalPanel", "SpaceInfoPanel", "SpaceListPanel", "StoragePanel", "SwarmPanel", "TestingPanel", "TracingPanel", "WorkflowPanel", "Obj", "log", "ClientCapabilities", "ScriptOperation", "SpaceOperation", "SpaceState", "isSpace", "parseId", "Layout", "Collection", "lazy", "React", "Clipboard", "Input", "Layout", "Toolbar", "Json", "DebugObjectPanel", "object", "dxn", "id", "Clipboard", "Provider", "Layout", "Main", "toolbar", "Toolbar", "Root", "Input", "TextInput", "disabled", "value", "IconButton", "Json", "data", "React", "useEffect", "useState", "useCapabilities", "AppCapabilities", "SaveConfig", "Storage", "defs", "log", "useClient", "Icon", "IconButton", "Input", "Select", "Toast", "useFileDownload", "useTranslation", "Settings", "setDeep", "StorageAdapters", "opfs", "defs", "Runtime", "Client", "Storage", "StorageDriver", "WEBFS", "idb", "IDB", "DebugSettings", "settings", "onSettingsChange", "t", "useTranslation", "meta", "id", "toast", "setToast", "useState", "client", "useClient", "download", "useFileDownload", "storageConfig", "setStorageConfig", "upload", "useCapabilities", "AppCapabilities", "FileUploader", "useEffect", "then", "config", "handleToast", "setTimeout", "undefined", "clearTimeout", "handleDownload", "data", "diagnostics", "file", "Blob", "JSON", "stringify", "type", "fileName", "Date", "toISOString", "replace", "info", "spaces", "default", "db", "File", "log", "error", "title", "description", "url", "values", "runtime", "services", "ipfs", "gateway", "cid", "navigator", "clipboard", "writeText", "handleRepair", "repair", "err", "message", "React", "Settings", "Root", "Section", "ns", "Group", "ItemInput", "Input", "Switch", "checked", "wireframe", "onCheckedChange", "s", "IconButton", "icon", "iconOnly", "label", "onClick", "Toast", "Body", "Title", "Icon", "size", "classNames", "span", "Description", "Select", "value", "Object", "entries", "find", "_name", "storage", "dataStore", "onValueChange", "confirm", "updateConfig", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "keys", "map", "key", "Option", "Arrow", "setConfig", "path", "storageConfigCopy", "parse", "setDeep", "queueMicrotask", "SaveConfig", "React", "useEffect", "useRef", "useState", "TimeoutError", "useActiveSpace", "StatusBar", "ConnectionState", "useNetworkStatus", "Icon", "styles", "success", "warning", "error", "ErrorIndicator", "forceUpdate", "useState", "errorRef", "useRef", "useEffect", "errorListener", "event", "error", "reason", "current", "window", "addEventListener", "removeEventListener", "handleReset", "React", "StatusBar", "Button", "title", "message", "onClick", "Icon", "icon", "size", "classNames", "styles", "Item", "SwarmIndicator", "state", "setState", "swarm", "useNetworkStatus", "ConnectionState", "ONLINE", "warning", "SavingIndicator", "_setState", "_space", "useActiveSpace", "success", "indicators", "DebugStatus", "map", "Indicator", "key", "name", "React", "useResizeDetector", "Obj", "useAttentionAttributes", "SyntaxHighlighter", "mx", "Wireframe", "classNames", "label", "object", "attentionAttrs", "useAttentionAttributes", "Obj", "getDXN", "toString", "width", "height", "ref", "useResizeDetector", "React", "div", "className", "mx", "SyntaxHighlighter", "language", "JSON", "stringify", "undefined", "svg", "rect", "x", "y", "strokeWidth", "fill", "line", "x1", "y1", "x2", "y2", "DebugGraph", "lazy", "DevtoolsOverviewContainer", "SpaceGenerator", "isSpaceDebug", "data", "type", "meta", "id", "isSpace", "space", "isGraphDebug", "graph", "json", "root", "useCurrentSpace", "layout", "useLayout", "client", "useCapability", "ClientCapabilities", "Client", "spaceId", "parseId", "workspace", "spaces", "get", "undefined", "Capability", "makeModule", "fnUntraced", "capabilities", "Service", "registry", "Capabilities", "AtomRegistry", "settingsAtom", "DebugCapabilities", "Settings", "contributes", "ReactSurface", "Surface", "create", "role", "filter", "AppCapabilities", "isSettings", "subject", "prefix", "component", "settings", "updateSettings", "useSettingsState", "atom", "React", "DebugSettings", "onSettingsChange", "invokePromise", "useOperationInvoker", "handleCreateObject", "useCallback", "objects", "collection", "state", "SpaceState", "SPACE_READY", "properties", "Collection", "typename", "target", "Obj", "instanceOf", "forEach", "object", "SpaceOperation", "AddObject", "Layout", "Main", "SpaceGenerator", "onCreateObjects", "DebugGraph", "position", "isObject", "wireframe", "Wireframe", "label", "name", "classNames", "companionTo", "DebugObjectPanel", "DevtoolsOverviewContainer", "DebugStatus", "Devtools", "Config", "ConfigPanel", "vaultSelector", "Storage", "StoragePanel", "Logs", "LoggingPanel", "Diagnostics", "DiagnosticsPanel", "Tracing", "TracingPanel", "Halo", "Identity", "IdentityPanel", "Devices", "DeviceListPanel", "Keyring", "KeyringPanel", "Credentials", "CredentialsPanel", "Echo", "Spaces", "handleSelect", "LayoutOperation", "Open", "Space", "SpaceListPanel", "onSelect", "Feeds", "SpaceInfoPanel", "onSelectFeed", "onSelectPipeline", "FeedsPanel", "Objects", "ObjectsPanel", "Schema", "SchemaPanel", "Automerge", "AutomergePanel", "Queues", "QueuesPanel", "Members", "MembersPanel", "Metadata", "MetadataPanel", "Mesh", "Signal", "SignalPanel", "Swarm", "SwarmPanel", "Network", "NetworkPanel", "Edge", "Dashboard", "EdgeDashboardPanel", "Workflows", "WorkflowPanel", "Traces", "queueDxn", "invocationTraceQueue", "dxn", "InvocationTraceContainer", "db", "detailAxis", "Testing", "onSpaceCreate", "waitUntilReady", "Migrate", "flush", "onScriptPluginOpen", "createResult", "ScriptOperation", "CreateScript", "log", "info", "result", "TestingPanel"]
|
|
7
|
+
}
|
|
@@ -8,7 +8,8 @@ import {
|
|
|
8
8
|
|
|
9
9
|
// src/capabilities/settings/settings.ts
|
|
10
10
|
import * as Effect from "effect/Effect";
|
|
11
|
-
import { Capability
|
|
11
|
+
import { Capability } from "@dxos/app-framework";
|
|
12
|
+
import { AppCapabilities } from "@dxos/app-toolkit";
|
|
12
13
|
import { createKvsStore } from "@dxos/effect";
|
|
13
14
|
var settings_default = Capability.makeModule(() => Effect.sync(() => {
|
|
14
15
|
const settingsAtom = createKvsStore({
|
|
@@ -18,7 +19,7 @@ var settings_default = Capability.makeModule(() => Effect.sync(() => {
|
|
|
18
19
|
});
|
|
19
20
|
return [
|
|
20
21
|
Capability.contributes(DebugCapabilities.Settings, settingsAtom),
|
|
21
|
-
Capability.contributes(
|
|
22
|
+
Capability.contributes(AppCapabilities.Settings, {
|
|
22
23
|
prefix: meta.id,
|
|
23
24
|
schema: DebugSettingsSchema,
|
|
24
25
|
atom: settingsAtom
|
|
@@ -28,4 +29,4 @@ var settings_default = Capability.makeModule(() => Effect.sync(() => {
|
|
|
28
29
|
export {
|
|
29
30
|
settings_default as default
|
|
30
31
|
};
|
|
31
|
-
//# sourceMappingURL=settings-
|
|
32
|
+
//# sourceMappingURL=settings-SLTQJJNF.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/settings/settings.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { createKvsStore } from '@dxos/effect';\n\nimport { meta } from '../../meta';\nimport { DebugCapabilities, DebugSettingsSchema } from '../../types';\n\nexport default Capability.makeModule(() =>\n Effect.sync(() => {\n const settingsAtom = createKvsStore({\n key: meta.id,\n schema: DebugSettingsSchema,\n defaultValue: () => ({}),\n });\n\n return [\n Capability.contributes(DebugCapabilities.Settings, settingsAtom),\n Capability.contributes(AppCapabilities.Settings, {\n prefix: meta.id,\n schema: DebugSettingsSchema,\n atom: settingsAtom,\n }),\n ];\n }),\n);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,uBAAuB;AAChC,SAASC,sBAAsB;AAK/B,IAAA,mBAAeC,WAAWC,WAAW,MAC5BC,YAAK,MAAA;AACV,QAAMC,eAAeC,eAAe;IAClCC,KAAKC,KAAKC;IACVC,QAAQC;IACRC,cAAc,OAAO,CAAC;EACxB,CAAA;AAEA,SAAO;IACLV,WAAWW,YAAYC,kBAAkBC,UAAUV,YAAAA;IACnDH,WAAWW,YAAYG,gBAAgBD,UAAU;MAC/CE,QAAQT,KAAKC;MACbC,QAAQC;MACRO,MAAMb;IACR,CAAA;;AAEJ,CAAA,CAAA;",
|
|
6
|
+
"names": ["Effect", "Capability", "AppCapabilities", "createKvsStore", "Capability", "makeModule", "sync", "settingsAtom", "createKvsStore", "key", "meta", "id", "schema", "DebugSettingsSchema", "defaultValue", "contributes", "DebugCapabilities", "Settings", "AppCapabilities", "prefix", "atom"]
|
|
7
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DebugPlugin.d.ts","sourceRoot":"","sources":["../../../src/DebugPlugin.tsx"],"names":[],"mappings":"AAMA,OAAO,
|
|
1
|
+
{"version":3,"file":"DebugPlugin.d.ts","sourceRoot":"","sources":["../../../src/DebugPlugin.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAoB,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAS/D,eAAO,MAAM,WAAW,4BAYvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/app-graph-builder/app-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/app-graph-builder/app-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAKjD,OAAO,EAAE,YAAY,EAAqB,MAAM,oBAAoB,CAAC;;AASrE,wBAgZE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-context.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-context/react-context.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,
|
|
1
|
+
{"version":3,"file":"react-context.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-context/react-context.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;;;;;;AAK/D,wBAOE"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Capability } from '@dxos/app-framework';
|
|
2
|
-
export declare const ReactSurface: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/
|
|
2
|
+
export declare const ReactSurface: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/Capabilities").ReactSurface>>, Error>;
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,YAAY,iJAAmE,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as Effect from 'effect/Effect';
|
|
2
|
-
import {
|
|
3
|
-
declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<
|
|
2
|
+
import { Capabilities, Capability } from '@dxos/app-framework';
|
|
3
|
+
declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<Capabilities.ReactSurface>>, never, Capability.Service>;
|
|
4
4
|
export default _default;
|
|
5
5
|
//# sourceMappingURL=react-surface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;;AAgF/D,wBAmUE"}
|