@dxos/plugin-debug 0.6.12-main.78ddbdf → 0.6.12-main.7907542
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/{DebugGlobal-H56M2VL4.mjs → DebugGlobal-EKGO6BLV.mjs} +5 -5
- package/dist/lib/browser/{DebugSpace-J4YF3H67.mjs → DebugSpace-WBO7S7HS.mjs} +10 -10
- package/dist/lib/browser/{chunk-ED5L5YYI.mjs → chunk-FMLIYWVW.mjs} +2 -2
- package/dist/lib/browser/{chunk-KXZKF6LX.mjs → chunk-RXFUQL3T.mjs} +2 -2
- package/dist/lib/browser/{chunk-G6OQPL2E.mjs → chunk-YZYTCG6C.mjs} +3 -3
- package/dist/lib/browser/index.mjs +17 -17
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/meta.mjs +1 -1
- package/package.json +38 -37
- package/src/components/Wireframe.tsx +2 -2
- /package/dist/lib/browser/{DebugGlobal-H56M2VL4.mjs.map → DebugGlobal-EKGO6BLV.mjs.map} +0 -0
- /package/dist/lib/browser/{DebugSpace-J4YF3H67.mjs.map → DebugSpace-WBO7S7HS.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-ED5L5YYI.mjs.map → chunk-FMLIYWVW.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-KXZKF6LX.mjs.map → chunk-RXFUQL3T.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-G6OQPL2E.mjs.map → chunk-YZYTCG6C.mjs.map} +0 -0
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DebugPanel
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-FMLIYWVW.mjs";
|
|
4
4
|
|
|
5
|
-
// packages/plugins/
|
|
5
|
+
// packages/plugins/plugin-debug/src/components/DebugGlobal.tsx
|
|
6
6
|
import { Gauge, Graph as GraphIcon, Gear, Toolbox, Warning } from "@phosphor-icons/react";
|
|
7
7
|
import React2, { useEffect, useState as useState2 } from "react";
|
|
8
8
|
import { useClient, useConfig } from "@dxos/react-client";
|
|
9
9
|
import { Button, ToggleGroup, ToggleGroupItem } from "@dxos/react-ui";
|
|
10
10
|
import { getSize, mx as mx2 } from "@dxos/react-ui-theme";
|
|
11
11
|
|
|
12
|
-
// packages/plugins/
|
|
12
|
+
// packages/plugins/plugin-debug/src/components/Tree.tsx
|
|
13
13
|
import React, { useState } from "react";
|
|
14
14
|
import { SyntaxHighlighter } from "@dxos/react-ui-syntax-highlighter";
|
|
15
15
|
import { mx } from "@dxos/react-ui-theme";
|
|
@@ -92,7 +92,7 @@ var Box = ({ children, className, ...props }) => {
|
|
|
92
92
|
}, children);
|
|
93
93
|
};
|
|
94
94
|
|
|
95
|
-
// packages/plugins/
|
|
95
|
+
// packages/plugins/plugin-debug/src/components/DebugGlobal.tsx
|
|
96
96
|
var DebugGlobal = ({ graph }) => {
|
|
97
97
|
const [view, setView] = useState2("graph");
|
|
98
98
|
const [data, setData] = useState2({});
|
|
@@ -168,4 +168,4 @@ var DebugGlobal_default = DebugGlobal;
|
|
|
168
168
|
export {
|
|
169
169
|
DebugGlobal_default as default
|
|
170
170
|
};
|
|
171
|
-
//# sourceMappingURL=DebugGlobal-
|
|
171
|
+
//# sourceMappingURL=DebugGlobal-EKGO6BLV.mjs.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DebugContext
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-YZYTCG6C.mjs";
|
|
4
|
+
import "./chunk-RXFUQL3T.mjs";
|
|
5
5
|
import {
|
|
6
6
|
DebugPanel
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-FMLIYWVW.mjs";
|
|
8
8
|
|
|
9
|
-
// packages/plugins/
|
|
9
|
+
// packages/plugins/plugin-debug/src/components/DebugSpace.tsx
|
|
10
10
|
import { ArrowClockwise, DownloadSimple, Flag, FlagPennant, HandPalm, Play, PlusMinus, Timer, UserCirclePlus } from "@phosphor-icons/react";
|
|
11
11
|
import React2, { useContext, useMemo as useMemo2, useState as useState2 } from "react";
|
|
12
12
|
import { DocumentType as DocumentType2 } from "@dxos/plugin-markdown/types";
|
|
@@ -20,12 +20,12 @@ import { Button as Button2, Input, useFileDownload } from "@dxos/react-ui";
|
|
|
20
20
|
import { getSize, mx } from "@dxos/react-ui-theme";
|
|
21
21
|
import { safeParseInt } from "@dxos/util";
|
|
22
22
|
|
|
23
|
-
// packages/plugins/
|
|
23
|
+
// packages/plugins/plugin-debug/src/components/ObjectCreator.tsx
|
|
24
24
|
import React, { useMemo, useState } from "react";
|
|
25
25
|
import { Button, DensityProvider } from "@dxos/react-ui";
|
|
26
26
|
import { createColumnBuilder, Table } from "@dxos/react-ui-table";
|
|
27
27
|
|
|
28
|
-
// packages/plugins/
|
|
28
|
+
// packages/plugins/plugin-debug/src/scaffolding/generator.ts
|
|
29
29
|
import { createShapeId, defaultBindingUtils, defaultShapeUtils, defaultTools, Editor } from "@tldraw/tldraw";
|
|
30
30
|
import { sleep } from "@dxos/async";
|
|
31
31
|
import { next as A } from "@dxos/automerge/automerge";
|
|
@@ -37,7 +37,7 @@ import { TLDrawStoreAdapter } from "@dxos/plugin-sketch/sdk";
|
|
|
37
37
|
import { CanvasType, DiagramType, TLDRAW_SCHEMA } from "@dxos/plugin-sketch/types";
|
|
38
38
|
import { faker } from "@dxos/random";
|
|
39
39
|
import { createDocAccessor } from "@dxos/react-client/echo";
|
|
40
|
-
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/
|
|
40
|
+
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-debug/src/scaffolding/generator.ts";
|
|
41
41
|
var SchemasNames;
|
|
42
42
|
(function(SchemasNames2) {
|
|
43
43
|
SchemasNames2["document"] = "dxos.org/type/Document";
|
|
@@ -164,7 +164,7 @@ var MutationsGenerators = {
|
|
|
164
164
|
};
|
|
165
165
|
var createSpaceObjectGenerator = (space) => new SpaceObjectGenerator(space, SchemasMap, ObjectGenerators, MutationsGenerators);
|
|
166
166
|
|
|
167
|
-
// packages/plugins/
|
|
167
|
+
// packages/plugins/plugin-debug/src/components/ObjectCreator.tsx
|
|
168
168
|
var CREATE_OBJECTS_IN_ONE_CHUNK = 10;
|
|
169
169
|
var ObjectCreator = ({ space, onAddObjects }) => {
|
|
170
170
|
const generator = useMemo(() => createSpaceObjectGenerator(space), [
|
|
@@ -255,7 +255,7 @@ var ObjectCreator = ({ space, onAddObjects }) => {
|
|
|
255
255
|
}, "Create"));
|
|
256
256
|
};
|
|
257
257
|
|
|
258
|
-
// packages/plugins/
|
|
258
|
+
// packages/plugins/plugin-debug/src/components/DebugSpace.tsx
|
|
259
259
|
var DEFAULT_COUNT = 100;
|
|
260
260
|
var DEFAULT_PERIOD = 500;
|
|
261
261
|
var DEFAULT_JITTER = 50;
|
|
@@ -410,4 +410,4 @@ var DebugSpace_default = DebugSpace;
|
|
|
410
410
|
export {
|
|
411
411
|
DebugSpace_default as default
|
|
412
412
|
};
|
|
413
|
-
//# sourceMappingURL=DebugSpace-
|
|
413
|
+
//# sourceMappingURL=DebugSpace-WBO7S7HS.mjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// packages/plugins/
|
|
1
|
+
// packages/plugins/plugin-debug/src/components/DebugPanel.tsx
|
|
2
2
|
import { formatDistance } from "date-fns";
|
|
3
3
|
import React from "react";
|
|
4
4
|
import { useConfig } from "@dxos/react-client";
|
|
@@ -24,4 +24,4 @@ var DebugPanel = ({ menu, children }) => {
|
|
|
24
24
|
export {
|
|
25
25
|
DebugPanel
|
|
26
26
|
};
|
|
27
|
-
//# sourceMappingURL=chunk-
|
|
27
|
+
//# sourceMappingURL=chunk-FMLIYWVW.mjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// packages/plugins/
|
|
1
|
+
// packages/plugins/plugin-debug/src/meta.tsx
|
|
2
2
|
import { pluginMeta } from "@dxos/app-framework";
|
|
3
3
|
var DEBUG_PLUGIN = "dxos.org/plugin/debug";
|
|
4
4
|
var meta_default = pluginMeta({
|
|
@@ -15,4 +15,4 @@ export {
|
|
|
15
15
|
DEBUG_PLUGIN,
|
|
16
16
|
meta_default
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=chunk-
|
|
18
|
+
//# sourceMappingURL=chunk-RXFUQL3T.mjs.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DEBUG_PLUGIN
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-RXFUQL3T.mjs";
|
|
4
4
|
|
|
5
|
-
// packages/plugins/
|
|
5
|
+
// packages/plugins/plugin-debug/src/types.ts
|
|
6
6
|
import { createContext } from "react";
|
|
7
7
|
var DEBUG_ACTION = `${DEBUG_PLUGIN}/action`;
|
|
8
8
|
var DebugAction;
|
|
@@ -21,4 +21,4 @@ export {
|
|
|
21
21
|
DebugAction,
|
|
22
22
|
DebugContext
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=chunk-
|
|
24
|
+
//# sourceMappingURL=chunk-YZYTCG6C.mjs.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DebugAction,
|
|
3
3
|
DebugContext
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-YZYTCG6C.mjs";
|
|
5
5
|
import {
|
|
6
6
|
DEBUG_PLUGIN,
|
|
7
7
|
meta_default
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-RXFUQL3T.mjs";
|
|
9
9
|
|
|
10
|
-
// packages/plugins/
|
|
10
|
+
// packages/plugins/plugin-debug/src/DebugPlugin.tsx
|
|
11
11
|
import React5, { useEffect as useEffect3, useState as useState3 } from "react";
|
|
12
12
|
import { getPlugin, parseGraphPlugin as parseGraphPlugin2, parseIntentPlugin, resolvePlugin } from "@dxos/app-framework";
|
|
13
13
|
import { Timer } from "@dxos/async";
|
|
@@ -20,10 +20,10 @@ import { SpaceState, isSpace } from "@dxos/react-client/echo";
|
|
|
20
20
|
import { Main } from "@dxos/react-ui";
|
|
21
21
|
import { baseSurface, topbarBlockPaddingStart, fixedInsetFlexLayout, bottombarBlockPaddingEnd } from "@dxos/react-ui-theme";
|
|
22
22
|
|
|
23
|
-
// packages/plugins/
|
|
23
|
+
// packages/plugins/plugin-debug/src/components/index.ts
|
|
24
24
|
import React4 from "react";
|
|
25
25
|
|
|
26
|
-
// packages/plugins/
|
|
26
|
+
// packages/plugins/plugin-debug/src/components/DebugSettings.tsx
|
|
27
27
|
import { Gift, DownloadSimple, FirstAidKit } from "@phosphor-icons/react";
|
|
28
28
|
import React, { useEffect, useState } from "react";
|
|
29
29
|
import { parseFileManagerPlugin, useResolvePlugin } from "@dxos/app-framework";
|
|
@@ -34,7 +34,7 @@ import { useClient } from "@dxos/react-client";
|
|
|
34
34
|
import { useTranslation, Button, Toast, Input, useFileDownload, Select } from "@dxos/react-ui";
|
|
35
35
|
import { getSize, mx } from "@dxos/react-ui-theme";
|
|
36
36
|
import { setDeep } from "@dxos/util";
|
|
37
|
-
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/
|
|
37
|
+
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-debug/src/components/DebugSettings.tsx";
|
|
38
38
|
var StorageAdapters = {
|
|
39
39
|
opfs: defs.Runtime.Client.Storage.StorageDriver.WEBFS,
|
|
40
40
|
idb: defs.Runtime.Client.Storage.StorageDriver.IDB
|
|
@@ -171,7 +171,7 @@ var updateConfig = (config, setConfig, path, value) => {
|
|
|
171
171
|
});
|
|
172
172
|
};
|
|
173
173
|
|
|
174
|
-
// packages/plugins/
|
|
174
|
+
// packages/plugins/plugin-debug/src/components/DebugStatus.tsx
|
|
175
175
|
import { ChartBar, Circle, Lightning, LightningSlash } from "@phosphor-icons/react";
|
|
176
176
|
import React2, { useEffect as useEffect2, useRef, useState as useState2 } from "react";
|
|
177
177
|
import { firstIdInPart, parseGraphPlugin, parseNavigationPlugin, useResolvePlugin as useResolvePlugin2 } from "@dxos/app-framework";
|
|
@@ -183,7 +183,7 @@ import { StatusBar } from "@dxos/plugin-status-bar";
|
|
|
183
183
|
import { ConnectionState } from "@dxos/protocols/proto/dxos/client/services";
|
|
184
184
|
import { useNetworkStatus } from "@dxos/react-client/mesh";
|
|
185
185
|
import { getSize as getSize2, mx as mx2 } from "@dxos/react-ui-theme";
|
|
186
|
-
var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/
|
|
186
|
+
var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-debug/src/components/DebugStatus.tsx";
|
|
187
187
|
var styles = {
|
|
188
188
|
success: "text-sky-300 dark:text-green-700",
|
|
189
189
|
warning: "text-orange-300 dark:text-orange-600",
|
|
@@ -315,13 +315,13 @@ var DebugStatus = () => {
|
|
|
315
315
|
})));
|
|
316
316
|
};
|
|
317
317
|
|
|
318
|
-
// packages/plugins/
|
|
318
|
+
// packages/plugins/plugin-debug/src/components/Wireframe.tsx
|
|
319
319
|
import React3 from "react";
|
|
320
320
|
import { useResizeDetector } from "react-resize-detector";
|
|
321
|
-
import {
|
|
321
|
+
import { useAttendableAttributes } from "@dxos/react-ui-attention";
|
|
322
322
|
import { mx as mx3 } from "@dxos/react-ui-theme";
|
|
323
323
|
var Wireframe = ({ label, data, className }) => {
|
|
324
|
-
const attendableAttrs =
|
|
324
|
+
const attendableAttrs = useAttendableAttributes(data);
|
|
325
325
|
const { width, height, ref } = useResizeDetector();
|
|
326
326
|
return /* @__PURE__ */ React3.createElement("div", {
|
|
327
327
|
ref,
|
|
@@ -361,11 +361,11 @@ var Wireframe = ({ label, data, className }) => {
|
|
|
361
361
|
})));
|
|
362
362
|
};
|
|
363
363
|
|
|
364
|
-
// packages/plugins/
|
|
365
|
-
var DebugGlobal = React4.lazy(() => import("./DebugGlobal-
|
|
366
|
-
var DebugSpace = React4.lazy(() => import("./DebugSpace-
|
|
364
|
+
// packages/plugins/plugin-debug/src/components/index.ts
|
|
365
|
+
var DebugGlobal = React4.lazy(() => import("./DebugGlobal-EKGO6BLV.mjs"));
|
|
366
|
+
var DebugSpace = React4.lazy(() => import("./DebugSpace-WBO7S7HS.mjs"));
|
|
367
367
|
|
|
368
|
-
// packages/plugins/
|
|
368
|
+
// packages/plugins/plugin-debug/src/translations.ts
|
|
369
369
|
var translations_default = [
|
|
370
370
|
{
|
|
371
371
|
"en-US": {
|
|
@@ -396,7 +396,7 @@ var translations_default = [
|
|
|
396
396
|
}
|
|
397
397
|
];
|
|
398
398
|
|
|
399
|
-
// packages/plugins/
|
|
399
|
+
// packages/plugins/plugin-debug/src/DebugPlugin.tsx
|
|
400
400
|
var SETTINGS_KEY = DEBUG_PLUGIN + "/settings";
|
|
401
401
|
var DebugPlugin = () => {
|
|
402
402
|
const settings = new LocalStorageStore(DEBUG_PLUGIN, {
|
|
@@ -644,7 +644,7 @@ var DebugPlugin = () => {
|
|
|
644
644
|
};
|
|
645
645
|
};
|
|
646
646
|
|
|
647
|
-
// packages/plugins/
|
|
647
|
+
// packages/plugins/plugin-debug/src/index.ts
|
|
648
648
|
var src_default = DebugPlugin;
|
|
649
649
|
export {
|
|
650
650
|
DebugPlugin,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/DebugPlugin.tsx", "../../../src/components/index.ts", "../../../src/components/DebugSettings.tsx", "../../../src/components/DebugStatus.tsx", "../../../src/components/Wireframe.tsx", "../../../src/translations.ts", "../../../src/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type ReactNode, useEffect, useState } from 'react';\n\nimport {\n getPlugin,\n parseGraphPlugin,\n parseIntentPlugin,\n resolvePlugin,\n type IntentPluginProvides,\n type Plugin,\n type PluginDefinition,\n} from '@dxos/app-framework';\nimport { Timer } from '@dxos/async';\nimport { Devtools } from '@dxos/devtools';\nimport { LocalStorageStore } from '@dxos/local-storage';\nimport { type ClientPluginProvides } from '@dxos/plugin-client';\nimport { createExtension, Graph, type Node } from '@dxos/plugin-graph';\nimport { SpaceAction } from '@dxos/plugin-space';\nimport { CollectionType } from '@dxos/plugin-space/types';\nimport { type Client } from '@dxos/react-client';\nimport { type Space, SpaceState, isSpace } from '@dxos/react-client/echo';\nimport { Main } from '@dxos/react-ui';\nimport {\n baseSurface,\n topbarBlockPaddingStart,\n fixedInsetFlexLayout,\n bottombarBlockPaddingEnd,\n} from '@dxos/react-ui-theme';\n\nimport { DebugGlobal, DebugSettings, DebugSpace, DebugStatus, Wireframe } from './components';\nimport meta, { DEBUG_PLUGIN } from './meta';\nimport translations from './translations';\nimport { DebugContext, type DebugSettingsProps, type DebugPluginProvides, DebugAction } from './types';\n\nexport const SETTINGS_KEY = DEBUG_PLUGIN + '/settings';\n\nexport const DebugPlugin = (): PluginDefinition<DebugPluginProvides> => {\n const settings = new LocalStorageStore<DebugSettingsProps>(DEBUG_PLUGIN, { debug: true, devtools: true });\n let intentPlugin: Plugin<IntentPluginProvides>;\n\n return {\n meta,\n ready: async (plugins) => {\n intentPlugin = resolvePlugin(plugins, parseIntentPlugin)!;\n settings\n .prop({ key: 'debug', type: LocalStorageStore.bool({ allowUndefined: true }) })\n .prop({ key: 'devtools', type: LocalStorageStore.bool({ allowUndefined: true }) })\n .prop({ key: 'wireframe', type: LocalStorageStore.bool({ allowUndefined: true }) });\n\n // TODO(burdon): Remove hacky dependency on global variable.\n // Used to test how composer handles breaking protocol changes.\n const composer = (window as any).composer;\n composer.changeStorageVersionInMetadata = async (version: number) => {\n const { changeStorageVersionInMetadata } = await import('@dxos/echo-pipeline/testing');\n const { createStorageObjects } = await import('@dxos/client-services');\n const client: Client = (window as any).dxos.client;\n const config = client.config;\n await client.destroy();\n const { storage } = createStorageObjects(config.values?.runtime?.client?.storage ?? {});\n await changeStorageVersionInMetadata(storage, version);\n location.pathname = '/';\n };\n },\n unload: async () => {\n settings.close();\n },\n provides: {\n settings: settings.values,\n translations,\n context: ({ children }) => {\n const [timer, setTimer] = useState<Timer>();\n useEffect(() => timer?.state.on((value) => !value && setTimer(undefined)), [timer]);\n useEffect(() => {\n timer?.stop();\n }, []);\n\n return (\n <DebugContext.Provider\n value={{\n running: !!timer,\n start: (cb, options) => {\n timer?.stop();\n setTimer(new Timer(cb).start(options));\n },\n stop: () => timer?.stop(),\n }}\n >\n {children}\n </DebugContext.Provider>\n );\n },\n graph: {\n builder: (plugins) => {\n const graphPlugin = resolvePlugin(plugins, parseGraphPlugin);\n\n // TODO(burdon): Combine nodes into single subtree.\n\n return [\n // Devtools node.\n createExtension({\n id: 'dxos.org/plugin/debug/devtools',\n filter: (node): node is Node<null> => !!settings.values.devtools && node.id === 'root',\n connector: () => [\n {\n // TODO(zan): Removed `/` because it breaks deck layout reload. Fix?\n id: 'dxos.org.plugin.debug.devtools',\n data: 'devtools',\n type: 'dxos.org/plugin/debug/devtools',\n properties: {\n label: ['devtools label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--hammer--regular',\n },\n },\n ],\n }),\n\n // Debug node.\n createExtension({\n id: 'dxos.org/plugin/debug/debug',\n filter: (node): node is Node<null> => !!settings.values.debug && node.id === 'root',\n connector: () => [\n {\n id: 'dxos.org/plugin/debug/debug',\n type: 'dxos.org/plugin/debug/debug',\n data: { graph: graphPlugin?.provides.graph },\n properties: {\n label: ['debug label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--bug--regular',\n },\n },\n ],\n }),\n\n // Space debug nodes.\n createExtension({\n id: 'dxos.org/plugin/debug/spaces',\n filter: (node): node is Node<Space> => !!settings.values.debug && isSpace(node.data),\n connector: ({ node }) => {\n const space = node.data;\n return [\n {\n id: `${space.id}-debug`,\n type: 'dxos.org/plugin/debug/space',\n data: { space },\n properties: {\n label: ['debug label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--bug--regular',\n },\n },\n ];\n },\n }),\n ];\n },\n },\n intent: {\n resolver: async (intent, plugins) => {\n switch (intent.action) {\n case DebugAction.OPEN_DEVTOOLS: {\n const clientPlugin = getPlugin<ClientPluginProvides>(plugins, 'dxos.org/plugin/client');\n const client = clientPlugin.provides.client;\n const vaultUrl = client.config.values?.runtime?.client?.remoteSource ?? 'https://halo.dxos.org';\n\n // Check if we're serving devtools locally on the usual port.\n let devtoolsUrl = 'http://localhost:5174';\n try {\n // TODO(burdon): Test header to see if this is actually devtools.\n await fetch(devtoolsUrl);\n } catch {\n // Match devtools to running app.\n const isDev = window.location.href.includes('.dev.') || window.location.href.includes('localhost');\n devtoolsUrl = `https://devtools${isDev ? '.dev.' : '.'}dxos.org`;\n }\n\n window.open(`${devtoolsUrl}?target=${vaultUrl}`, '_blank');\n return { data: true };\n }\n }\n },\n },\n surface: {\n component: ({ name, data, role }) => {\n switch (role) {\n case 'settings':\n return data.plugin === meta.id ? <DebugSettings settings={settings.values} /> : null;\n case 'status':\n return <DebugStatus />;\n }\n\n const primary = data.active ?? data.object;\n let component: ReactNode;\n if (role === 'main' || role === 'article') {\n if (primary === 'devtools' && settings.values.devtools) {\n component = <Devtools />;\n } else if (!primary || typeof primary !== 'object' || !settings.values.debug) {\n component = null;\n } else if ('space' in primary && isSpace(primary.space)) {\n component = (\n <DebugSpace\n space={primary.space}\n onAddObjects={(objects) => {\n if (!isSpace(primary.space)) {\n return;\n }\n\n const collection =\n primary.space.state.get() === SpaceState.SPACE_READY &&\n primary.space.properties[CollectionType.typename];\n if (!(collection instanceof CollectionType)) {\n return;\n }\n\n void intentPlugin?.provides.intent.dispatch(\n objects.map((object) => ({\n action: SpaceAction.ADD_OBJECT,\n data: { target: collection, object },\n })),\n );\n }}\n />\n );\n } else if ('graph' in primary && primary.graph instanceof Graph) {\n component = <DebugGlobal graph={primary.graph} />;\n } else {\n component = null;\n }\n }\n\n if (!component) {\n if (settings.values.wireframe) {\n if (role === 'main' || role === 'article' || role === 'section') {\n const primary = data.active ?? data.object;\n if (!(primary instanceof CollectionType)) {\n return <Wireframe label={role} data={data} className='row-span-2 overflow-hidden' />;\n }\n }\n }\n\n return null;\n }\n\n switch (role) {\n case 'article':\n return (\n <div role='none' className='row-span-2 rounded-t-md overflow-x-auto'>\n {component}\n </div>\n );\n case 'main':\n return (\n <Main.Content\n classNames={[baseSurface, fixedInsetFlexLayout, topbarBlockPaddingStart, bottombarBlockPaddingEnd]}\n >\n {component}\n </Main.Content>\n );\n }\n\n return null;\n },\n },\n },\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\n// Lazily load components for content surfaces.\nexport const DebugGlobal = React.lazy(() => import('./DebugGlobal'));\nexport const DebugSpace = React.lazy(() => import('./DebugSpace'));\n\nexport * from './DebugSettings';\nexport * from './DebugStatus';\nexport * from './Wireframe';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Gift, DownloadSimple, FirstAidKit } from '@phosphor-icons/react';\nimport React, { useEffect, useState } from 'react';\n\nimport { parseFileManagerPlugin, useResolvePlugin } from '@dxos/app-framework';\nimport { type ConfigProto, defs, SaveConfig, Storage } from '@dxos/config';\nimport { log } from '@dxos/log';\nimport { SettingsValue } from '@dxos/plugin-settings';\nimport { useClient } from '@dxos/react-client';\nimport { useTranslation, Button, Toast, Input, useFileDownload, Select } from '@dxos/react-ui';\nimport { getSize, mx } from '@dxos/react-ui-theme';\nimport { setDeep } from '@dxos/util';\n\nimport { DEBUG_PLUGIN } 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 const DebugSettings = ({ settings }: { settings: DebugSettingsProps }) => {\n const { t } = useTranslation(DEBUG_PLUGIN);\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 fileManagerPlugin = useResolvePlugin(parseFileManagerPlugin);\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)], { type: 'text/plain' });\n const fileName = `composer-${new Date().toISOString().replace(/\\W/g, '-')}.json`;\n download(file, fileName);\n\n if (fileManagerPlugin?.provides.file.upload) {\n const info = await fileManagerPlugin.provides.file.upload(new File([file], fileName), client.spaces.default);\n if (!info) {\n log.error('diagnostics failed to upload to IPFS');\n return;\n }\n handleToast({ title: t('settings uploaded'), description: t('settings uploaded to clipboard') });\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({ title: t('settings uploaded'), description: t('settings uploaded to clipboard') });\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({ title: t('settings repair success'), description: JSON.stringify(info, undefined, 2) });\n } catch (err: any) {\n handleToast({ title: t('settings repair failed'), description: err.message });\n }\n };\n\n return (\n <>\n <SettingsValue label={t('settings show debug panel')}>\n <Input.Switch checked={settings.debug} onCheckedChange={(checked) => (settings.debug = !!checked)} />\n </SettingsValue>\n <SettingsValue label={t('settings show devtools panel')}>\n <Input.Switch checked={settings.devtools} onCheckedChange={(checked) => (settings.devtools = !!checked)} />\n </SettingsValue>\n <SettingsValue label={t('settings wireframe')}>\n <Input.Switch checked={settings.wireframe} onCheckedChange={(checked) => (settings.wireframe = !!checked)} />\n </SettingsValue>\n <SettingsValue label={t('settings download diagnostics')}>\n <Button onClick={handleDownload}>\n <DownloadSimple className={getSize(5)} />\n </Button>\n </SettingsValue>\n <SettingsValue label={t('settings repair')}>\n <Button onClick={handleRepair}>\n <FirstAidKit className={getSize(5)} />\n </Button>\n </SettingsValue>\n\n {/* TODO(burdon): Move to layout? */}\n {toast && (\n <Toast.Root>\n <Toast.Body>\n <Toast.Title>\n <Gift className={mx(getSize(5), 'inline mr-1')} weight='duotone' />\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 <SettingsValue label={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.Content>\n </Select.Portal>\n </Select.Root>\n </SettingsValue>\n </>\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 { ChartBar, Circle, Lightning, LightningSlash } from '@phosphor-icons/react';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { firstIdInPart, parseGraphPlugin, parseNavigationPlugin, useResolvePlugin } from '@dxos/app-framework';\nimport { TimeoutError } from '@dxos/async';\nimport { StatsPanel, useStats } from '@dxos/devtools';\nimport { log } from '@dxos/log';\nimport { getActiveSpace } 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 { getSize, mx } from '@dxos/react-ui-theme';\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>();\n useEffect(() => {\n const errorListener = (event: any) => {\n const error: Error = event.error ?? event.reason;\n // event.preventDefault();\n if (errorRef.current !== error) {\n // eslint-disable-next-line no-console\n log.error('onError', { event });\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 = undefined;\n forceUpdate({});\n };\n\n if (errorRef.current) {\n return (\n <StatusBar.Button title={errorRef.current.message} onClick={handleReset}>\n <Circle weight='fill' className={mx(styles.error, getSize(3))} />\n </StatusBar.Button>\n );\n } else {\n return (\n <StatusBar.Item title='No errors.'>\n <Circle weight='fill' className={getSize(3)} />\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 <Lightning className={getSize(4)} />\n </StatusBar.Item>\n );\n } else {\n return (\n <StatusBar.Item title='Disconnected from swarm.'>\n <LightningSlash className={mx(styles.warning, getSize(4))} />\n </StatusBar.Item>\n );\n }\n};\n\n/**\n * Space saving indicator.\n */\nconst SavingIndicator = () => {\n const [state, _setState] = useState(0);\n const navigationPlugin = useResolvePlugin(parseNavigationPlugin);\n const graphPlugin = useResolvePlugin(parseGraphPlugin);\n const location = navigationPlugin?.provides.location;\n const graph = graphPlugin?.provides.graph;\n const _space = location && graph ? getActiveSpace(graph, firstIdInPart(location.active, 'main')) : undefined;\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 <Circle weight='fill' className={mx(styles.warning, getSize(3))} />\n </StatusBar.Item>\n );\n case 1:\n return (\n <StatusBar.Item title='Saving...'>\n <Circle weight='fill' className={mx(styles.success, getSize(3))} />\n </StatusBar.Item>\n );\n case 0:\n default:\n return (\n <StatusBar.Item title='Modified indicator.'>\n <Circle weight='fill' className={getSize(3)} />\n </StatusBar.Item>\n );\n }\n};\n\nconst PerformanceIndicator = () => {\n const [visible, setVisible] = useState(false);\n const [stats, refreshStats] = useStats();\n\n return (\n <>\n <StatusBar.Button onClick={() => setVisible((visible) => !visible)} title='Performance panels'>\n <ChartBar />\n </StatusBar.Button>\n {visible && (\n <div className='z-20 absolute bottom-[24px] w-[450px] border-l border-y border-separator'>\n <StatsPanel stats={stats} onRefresh={refreshStats} />\n </div>\n )}\n </>\n );\n};\n\nconst indicators = [PerformanceIndicator, SavingIndicator, ErrorIndicator, SwarmIndicator];\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 { createAttendableAttributes } from '@dxos/react-ui-attention';\nimport { mx } from '@dxos/react-ui-theme';\n\n// TODO(burdon): Make focusable and attendable with input.\nexport const Wireframe = ({ label, data, className }: { label?: string; data?: any; className?: string }) => {\n const attendableAttrs = createAttendableAttributes(data);\n const { width, height, ref } = useResizeDetector();\n return (\n <div ref={ref} className={mx('relative grow min-bs-96', className)} {...attendableAttrs}>\n <div className='absolute inset-2 flex flex-col overflow-hidden font-mono'>\n <div className='flex justify-between'>\n <div>{label}</div>\n <div>{`[${width}x${height}]`}</div>\n </div>\n <div className='flex grow overflow-auto'>\n {data && (\n <pre className='text-neutral-500 text-sm whitespace-pre-line'>{JSON.stringify(data, undefined, 1)}</pre>\n )}\n </div>\n </div>\n <svg width={width} height={height} className='bg-transparent [&>*]:stroke-neutral-500'>\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", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { DEBUG_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [DEBUG_PLUGIN]: {\n 'plugin name': 'Debug',\n 'mutation count': 'Number of mutations',\n 'mutation period': 'Mutation period',\n 'open devtools label': 'Open DevTools',\n 'devtools label': 'DevTools',\n 'debug label': 'Debug',\n 'settings show debug panel': 'Show Debug panel.',\n 'settings show devtools panel': 'Show DevTools panel.',\n 'settings wireframe': 'Show wireframes.',\n 'settings repair': 'Run repair tool.',\n 'settings download diagnostics': 'Download diagnostics.',\n 'settings uploaded': 'Uploaded to IPFS',\n 'settings uploaded to clipboard': 'URL copied to clipboard.',\n 'settings repair success': 'Repair succeeded',\n 'settings repair failed': 'Repair failed',\n 'settings choose storage adaptor': 'Storage adaptor (worker reload required).',\n 'settings storage adaptor idb label': 'IndexedDB',\n 'settings storage adaptor opfs label': 'OPFS',\n 'settings data store label': 'Data Store',\n 'settings storage adapter changed alert':\n 'Warning: Swapping the storage adapter will make your data unavailable.',\n 'settings space fragmentation': 'Enable AM space fragmentation',\n },\n },\n },\n];\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { DebugPlugin } from './DebugPlugin';\n\nexport * from './DebugPlugin';\n\nexport default DebugPlugin;\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;AAIA,OAAOA,UAAyBC,aAAAA,YAAWC,YAAAA,iBAAgB;AAE3D,SACEC,WACAC,oBAAAA,mBACAC,mBACAC,qBAIK;AACP,SAASC,aAAa;AACtB,SAASC,gBAAgB;AACzB,SAASC,yBAAyB;AAElC,SAASC,iBAAiBC,aAAwB;AAClD,SAASC,mBAAmB;AAC5B,SAASC,sBAAsB;AAE/B,SAAqBC,YAAYC,eAAe;AAChD,SAASC,YAAY;AACrB,SACEC,aACAC,yBACAC,sBACAC,gCACK;;;AC1BP,OAAOC,YAAW;;;ACAlB,SAASC,MAAMC,gBAAgBC,mBAAmB;AAClD,OAAOC,SAASC,WAAWC,gBAAgB;AAE3C,SAASC,wBAAwBC,wBAAwB;AACzD,SAA2BC,MAAMC,YAAYC,eAAe;AAC5D,SAASC,WAAW;AACpB,SAASC,qBAAqB;AAC9B,SAASC,iBAAiB;AAC1B,SAASC,gBAAgBC,QAAQC,OAAOC,OAAOC,iBAAiBC,cAAc;AAC9E,SAASC,SAASC,UAAU;AAC5B,SAASC,eAAe;;AAUxB,IAAMC,kBAAkB;EACtBC,MAAMC,KAAKC,QAAQC,OAAOC,QAAQC,cAAcC;EAChDC,KAAKN,KAAKC,QAAQC,OAAOC,QAAQC,cAAcG;AACjD;AAEO,IAAMC,gBAAgB,CAAC,EAAEC,SAAQ,MAAoC;AAC1E,QAAM,EAAEC,EAAC,IAAKC,eAAeC,YAAAA;AAC7B,QAAM,CAACC,OAAOC,QAAAA,IAAYC,SAAAA;AAC1B,QAAMC,SAASC,UAAAA;AACf,QAAMC,WAAWC,gBAAAA;AAEjB,QAAM,CAACC,eAAeC,gBAAAA,IAAoBN,SAAsB,CAAC,CAAA;AACjE,QAAMO,oBAAoBC,iBAAiBC,sBAAAA;AAE3CC,YAAU,MAAA;AACR,SAAKtB,QAAAA,EAAUuB,KAAK,CAACC,WAAWN,iBAAiBM,MAAAA,CAAAA;EACnD,GAAG,CAAA,CAAE;AAEL,QAAMC,cAAc,CAACf,WAAAA;AACnBC,aAASD,MAAAA;AACT,UAAMH,KAAImB,WAAW,MAAMf,SAASgB,MAAAA,GAAY,GAAA;AAChD,WAAO,MAAMC,aAAarB,EAAAA;EAC5B;AAEA,QAAMsB,iBAAiB,YAAA;AACrB,UAAMC,OAAO,MAAMjB,OAAOkB,YAAW;AACrC,UAAMC,OAAO,IAAIC,KAAK;MAACC,KAAKC,UAAUL,MAAMH,QAAW,CAAA;OAAK;MAAES,MAAM;IAAa,CAAA;AACjF,UAAMC,WAAW,aAAY,oBAAIC,KAAAA,GAAOC,YAAW,EAAGC,QAAQ,OAAO,GAAA,CAAA;AACrEzB,aAASiB,MAAMK,QAAAA;AAEf,QAAIlB,mBAAmBsB,SAAST,KAAKU,QAAQ;AAC3C,YAAMC,OAAO,MAAMxB,kBAAkBsB,SAAST,KAAKU,OAAO,IAAIE,KAAK;QAACZ;SAAOK,QAAAA,GAAWxB,OAAOgC,OAAOC,OAAO;AAC3G,UAAI,CAACH,MAAM;AACTI,YAAIC,MAAM,wCAAA,QAAA;;;;;;AACV;MACF;AACAvB,kBAAY;QAAEwB,OAAO1C,EAAE,mBAAA;QAAsB2C,aAAa3C,EAAE,gCAAA;MAAkC,CAAA;AAG9F,YAAM4C,MAAMtC,OAAOW,OAAO4B,OAAOC,QAASC,SAAUC,KAAMC,UAAU,MAAMb,KAAKc;AAC/E,WAAKC,UAAUC,UAAUC,UAAUT,GAAAA;AACnC1B,kBAAY;QAAEwB,OAAO1C,EAAE,mBAAA;QAAsB2C,aAAa3C,EAAE,gCAAA;MAAkC,CAAA;AAC9FwC,UAAIJ,KAAK,eAAe;QAAEQ;MAAI,GAAA;;;;;;IAChC;EACF;AAEA,QAAMU,eAAe,YAAA;AACnB,QAAI;AACF,YAAMlB,OAAO,MAAM9B,OAAOiD,OAAM;AAChC5C,uBAAiB,MAAMlB,QAAAA,CAAAA;AACvByB,kBAAY;QAAEwB,OAAO1C,EAAE,yBAAA;QAA4B2C,aAAahB,KAAKC,UAAUQ,MAAMhB,QAAW,CAAA;MAAG,CAAA;IACrG,SAASoC,KAAU;AACjBtC,kBAAY;QAAEwB,OAAO1C,EAAE,wBAAA;QAA2B2C,aAAaa,IAAIC;MAAQ,CAAA;IAC7E;EACF;AAEA,SACE,sBAAA,cAAA,MAAA,UAAA,MACE,sBAAA,cAACC,eAAAA;IAAcC,OAAO3D,EAAE,2BAAA;KACtB,sBAAA,cAAC4D,MAAMC,QAAM;IAACC,SAAS/D,SAASgE;IAAOC,iBAAiB,CAACF,YAAa/D,SAASgE,QAAQ,CAAC,CAACD;OAE3F,sBAAA,cAACJ,eAAAA;IAAcC,OAAO3D,EAAE,8BAAA;KACtB,sBAAA,cAAC4D,MAAMC,QAAM;IAACC,SAAS/D,SAASkE;IAAUD,iBAAiB,CAACF,YAAa/D,SAASkE,WAAW,CAAC,CAACH;OAEjG,sBAAA,cAACJ,eAAAA;IAAcC,OAAO3D,EAAE,oBAAA;KACtB,sBAAA,cAAC4D,MAAMC,QAAM;IAACC,SAAS/D,SAASmE;IAAWF,iBAAiB,CAACF,YAAa/D,SAASmE,YAAY,CAAC,CAACJ;OAEnG,sBAAA,cAACJ,eAAAA;IAAcC,OAAO3D,EAAE,+BAAA;KACtB,sBAAA,cAACmE,QAAAA;IAAOC,SAAS9C;KACf,sBAAA,cAAC+C,gBAAAA;IAAeC,WAAWC,QAAQ,CAAA;QAGvC,sBAAA,cAACb,eAAAA;IAAcC,OAAO3D,EAAE,iBAAA;KACtB,sBAAA,cAACmE,QAAAA;IAAOC,SAASd;KACf,sBAAA,cAACkB,aAAAA;IAAYF,WAAWC,QAAQ,CAAA;QAKnCpE,SACC,sBAAA,cAACsE,MAAMC,MAAI,MACT,sBAAA,cAACD,MAAME,MAAI,MACT,sBAAA,cAACF,MAAMG,OAAK,MACV,sBAAA,cAACC,MAAAA;IAAKP,WAAWQ,GAAGP,QAAQ,CAAA,GAAI,aAAA;IAAgBQ,QAAO;MACvD,sBAAA,cAACC,QAAAA,MAAM7E,MAAMuC,KAAK,CAAA,GAEnBvC,MAAMwC,eAAe,sBAAA,cAAC8B,MAAMQ,aAAW,MAAE9E,MAAMwC,WAAW,CAAA,CAAA,GAKjE,sBAAA,cAACe,eAAAA;IAAcC,OAAO3D,EAAE,iCAAA;KACtB,sBAAA,cAACkF,OAAOR,MAAI;IACVS,OACEC,OAAOC,QAAQjG,eAAAA,EAAiBkG,KAC9B,CAAC,CAACC,MAAMJ,KAAAA,MAAWA,UAAUzE,eAAeoC,SAASxC,QAAQkF,SAASC,SAAAA,IACpE,CAAA;IAENC,eAAe,CAACP,UAAAA;AACd,UAAIQ,QAAQ3F,EAAE,wCAAA,CAAA,GAA4C;AACxD4F,qBACElF,eACAC,kBACA;UAAC;UAAW;UAAU;UAAW;WACjCvB,gBAAgB+F,KAAAA,CAAsC;MAE1D;IACF;KAEA,sBAAA,cAACD,OAAOW,eAAa;IAACC,aAAa9F,EAAE,2BAAA;MACrC,sBAAA,cAACkF,OAAOa,QAAM,MACZ,sBAAA,cAACb,OAAOc,SAAO,MACb,sBAAA,cAACd,OAAOe,UAAQ,MACbb,OAAOc,KAAK9G,eAAAA,EAAiB+G,IAAI,CAACC,QACjC,sBAAA,cAAClB,OAAOmB,QAAM;IAACD;IAAUjB,OAAOiB;KAC7BpG,EAAE,4BAA4BoG,GAAAA,QAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAU9D;AAEA,IAAMR,eAAe,CAAC3E,QAAqBqF,WAA6CC,MAAgBpB,UAAAA;AACtG,QAAMqB,oBAAoB7E,KAAK8E,MAAM9E,KAAKC,UAAUX,UAAU,CAAC,CAAA,CAAA;AAC/DyF,UAAQF,mBAAmBD,MAAMpB,KAAAA;AACjCmB,YAAUE,iBAAAA;AACVG,iBAAe,YAAA;AACb,UAAMC,WAAWJ,iBAAAA;EACnB,CAAA;AACF;;;AC1JA,SAASK,UAAUC,QAAQC,WAAWC,sBAAsB;AAC5D,OAAOC,UAASC,aAAAA,YAAWC,QAAQC,YAAAA,iBAAgB;AAEnD,SAASC,eAAeC,kBAAkBC,uBAAuBC,oBAAAA,yBAAwB;AACzF,SAASC,oBAAoB;AAC7B,SAASC,YAAYC,gBAAgB;AACrC,SAASC,OAAAA,YAAW;AACpB,SAASC,sBAAsB;AAC/B,SAASC,iBAAiB;AAC1B,SAASC,uBAAuB;AAChC,SAASC,wBAAwB;AACjC,SAASC,WAAAA,UAASC,MAAAA,WAAU;;AAE5B,IAAMC,SAAS;EACbC,SAAS;EACTC,SAAS;EACTC,OAAO;AACT;AA0CA,IAAMC,iBAAiB,MAAA;AACrB,QAAM,CAAA,EAAGC,WAAAA,IAAeC,UAAS,CAAC,CAAA;AAClC,QAAMC,WAAWC,OAAAA;AACjBC,EAAAA,WAAU,MAAA;AACR,UAAMC,gBAAgB,CAACC,UAAAA;AACrB,YAAMC,QAAeD,MAAMC,SAASD,MAAME;AAE1C,UAAIN,SAASO,YAAYF,OAAO;AAE9BG,QAAAA,KAAIH,MAAM,WAAW;UAAED;QAAM,GAAA;;;;;;AAC7BJ,iBAASO,UAAUF;AACnBP,oBAAY,CAAC,CAAA;MACf;IACF;AAIAW,WAAOC,iBAAiB,SAASP,aAAAA;AAGjCM,WAAOC,iBAAiB,sBAAsBP,aAAAA;AAE9C,WAAO,MAAA;AACLM,aAAOE,oBAAoB,SAASR,aAAAA;AACpCM,aAAOE,oBAAoB,sBAAsBR,aAAAA;IACnD;EACF,GAAG,CAAA,CAAE;AAEL,QAAMS,cAAc,MAAA;AAClBZ,aAASO,UAAUM;AACnBf,gBAAY,CAAC,CAAA;EACf;AAEA,MAAIE,SAASO,SAAS;AACpB,WACE,gBAAAO,OAAA,cAACC,UAAUC,QAAM;MAACC,OAAOjB,SAASO,QAAQW;MAASC,SAASP;OAC1D,gBAAAE,OAAA,cAACM,QAAAA;MAAOC,QAAO;MAAOC,WAAWC,IAAGC,OAAOnB,OAAOoB,SAAQ,CAAA,CAAA;;EAGhE,OAAO;AACL,WACE,gBAAAX,OAAA,cAACC,UAAUW,MAAI;MAACT,OAAM;OACpB,gBAAAH,OAAA,cAACM,QAAAA;MAAOC,QAAO;MAAOC,WAAWG,SAAQ,CAAA;;EAG/C;AACF;AAKA,IAAME,iBAAiB,MAAA;AACrB,QAAM,CAACC,OAAOC,QAAAA,IAAY9B,UAAS,CAAA;AACnC,QAAM,EAAE+B,MAAK,IAAKC,iBAAAA;AAClB7B,EAAAA,WAAU,MAAA;AACR2B,aAASC,UAAUE,gBAAgBC,SAAS,IAAI,CAAA;EAClD,GAAG;IAACH;GAAM;AAEV,MAAIF,UAAU,GAAG;AACf,WACE,gBAAAd,OAAA,cAACC,UAAUW,MAAI;MAACT,OAAM;OACpB,gBAAAH,OAAA,cAACoB,WAAAA;MAAUZ,WAAWG,SAAQ,CAAA;;EAGpC,OAAO;AACL,WACE,gBAAAX,OAAA,cAACC,UAAUW,MAAI;MAACT,OAAM;OACpB,gBAAAH,OAAA,cAACqB,gBAAAA;MAAeb,WAAWC,IAAGC,OAAOY,SAASX,SAAQ,CAAA,CAAA;;EAG5D;AACF;AAKA,IAAMY,kBAAkB,MAAA;AACtB,QAAM,CAACT,OAAOU,SAAAA,IAAavC,UAAS,CAAA;AACpC,QAAMwC,mBAAmBC,kBAAiBC,qBAAAA;AAC1C,QAAMC,cAAcF,kBAAiBG,gBAAAA;AACrC,QAAMC,YAAWL,kBAAkBM,SAASD;AAC5C,QAAME,QAAQJ,aAAaG,SAASC;AACpC,QAAMC,SAASH,aAAYE,QAAQE,eAAeF,OAAOG,cAAcL,UAASM,QAAQ,MAAA,CAAA,IAAWrC;AAoBnG,UAAQe,OAAAA;IACN,KAAK;AACH,aACE,gBAAAd,OAAA,cAACC,UAAUW,MAAI;QAACT,OAAM;SACpB,gBAAAH,OAAA,cAACM,QAAAA;QAAOC,QAAO;QAAOC,WAAWC,IAAGC,OAAOY,SAASX,SAAQ,CAAA,CAAA;;IAGlE,KAAK;AACH,aACE,gBAAAX,OAAA,cAACC,UAAUW,MAAI;QAACT,OAAM;SACpB,gBAAAH,OAAA,cAACM,QAAAA;QAAOC,QAAO;QAAOC,WAAWC,IAAGC,OAAO2B,SAAS1B,SAAQ,CAAA,CAAA;;IAGlE,KAAK;IACL;AACE,aACE,gBAAAX,OAAA,cAACC,UAAUW,MAAI;QAACT,OAAM;SACpB,gBAAAH,OAAA,cAACM,QAAAA;QAAOC,QAAO;QAAOC,WAAWG,SAAQ,CAAA;;EAGjD;AACF;AAEA,IAAM2B,uBAAuB,MAAA;AAC3B,QAAM,CAACC,SAASC,UAAAA,IAAcvD,UAAS,KAAA;AACvC,QAAM,CAACwD,OAAOC,YAAAA,IAAgBC,SAAAA;AAE9B,SACE,gBAAA3C,OAAA,cAAAA,OAAA,UAAA,MACE,gBAAAA,OAAA,cAACC,UAAUC,QAAM;IAACG,SAAS,MAAMmC,WAAW,CAACD,aAAY,CAACA,QAAAA;IAAUpC,OAAM;KACxE,gBAAAH,OAAA,cAAC4C,UAAAA,IAAAA,CAAAA,GAEFL,WACC,gBAAAvC,OAAA,cAAC6C,OAAAA;IAAIrC,WAAU;KACb,gBAAAR,OAAA,cAAC8C,YAAAA;IAAWL;IAAcM,WAAWL;;AAK/C;AAEA,IAAMM,aAAa;EAACV;EAAsBf;EAAiBxC;EAAgB8B;;AAEpE,IAAMoC,cAAc,MAAA;AACzB,SACE,gBAAAjD,OAAA,cAAAA,OAAA,UAAA,MACGgD,WAAWE,IAAI,CAACC,cACf,gBAAAnD,OAAA,cAACmD,WAAAA;IAAUC,KAAKD,UAAUE;;AAIlC;;;ACpNA,OAAOC,YAAW;AAClB,SAASC,yBAAyB;AAElC,SAASC,kCAAkC;AAC3C,SAASC,MAAAA,WAAU;AAGZ,IAAMC,YAAY,CAAC,EAAEC,OAAOC,MAAMC,UAAS,MAAsD;AACtG,QAAMC,kBAAkBC,2BAA2BH,IAAAA;AACnD,QAAM,EAAEI,OAAOC,QAAQC,IAAG,IAAKC,kBAAAA;AAC/B,SACE,gBAAAC,OAAA,cAACC,OAAAA;IAAIH;IAAUL,WAAWS,IAAG,2BAA2BT,SAAAA;IAAa,GAAGC;KACtE,gBAAAM,OAAA,cAACC,OAAAA;IAAIR,WAAU;KACb,gBAAAO,OAAA,cAACC,OAAAA;IAAIR,WAAU;KACb,gBAAAO,OAAA,cAACC,OAAAA,MAAKV,KAAAA,GACN,gBAAAS,OAAA,cAACC,OAAAA,MAAK,IAAIL,KAAAA,IAASC,MAAAA,GAAS,CAAA,GAE9B,gBAAAG,OAAA,cAACC,OAAAA;IAAIR,WAAU;KACZD,QACC,gBAAAQ,OAAA,cAACG,OAAAA;IAAIV,WAAU;KAAgDW,KAAKC,UAAUb,MAAMc,QAAW,CAAA,CAAA,CAAA,CAAA,GAIrG,gBAAAN,OAAA,cAACO,OAAAA;IAAIX;IAAcC;IAAgBJ,WAAU;KAC3C,gBAAAO,OAAA,cAACQ,QAAAA;IAAKC,GAAG;IAAGC,GAAG;IAAGd;IAAcC;IAAgBc,aAAa;IAAGC,MAAK;MACrE,gBAAAZ,OAAA,cAACa,QAAAA;IAAKC,IAAI;IAAGC,IAAI;IAAGC,IAAIpB;IAAOqB,IAAIpB;IAAQc,aAAa;MACxD,gBAAAX,OAAA,cAACa,QAAAA;IAAKC,IAAI;IAAGC,IAAIlB;IAAQmB,IAAIpB;IAAOqB,IAAI;IAAGN,aAAa;;AAIhE;;;AH3BO,IAAMO,cAAcC,OAAMC,KAAK,MAAM,OAAO,4BAAA,CAAA;AAC5C,IAAMC,aAAaF,OAAMC,KAAK,MAAM,OAAO,2BAAA,CAAA;;;AIFlD,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACE,YAAAA,GAAe;QACd,eAAe;QACf,kBAAkB;QAClB,mBAAmB;QACnB,uBAAuB;QACvB,kBAAkB;QAClB,eAAe;QACf,6BAA6B;QAC7B,gCAAgC;QAChC,sBAAsB;QACtB,mBAAmB;QACnB,iCAAiC;QACjC,qBAAqB;QACrB,kCAAkC;QAClC,2BAA2B;QAC3B,0BAA0B;QAC1B,mCAAmC;QACnC,sCAAsC;QACtC,uCAAuC;QACvC,6BAA6B;QAC7B,0CACE;QACF,gCAAgC;MAClC;IACF;EACF;;;;ALGK,IAAMC,eAAeC,eAAe;AAEpC,IAAMC,cAAc,MAAA;AACzB,QAAMC,WAAW,IAAIC,kBAAsCH,cAAc;IAAEI,OAAO;IAAMC,UAAU;EAAK,CAAA;AACvG,MAAIC;AAEJ,SAAO;IACLC;IACAC,OAAO,OAAOC,YAAAA;AACZH,qBAAeI,cAAcD,SAASE,iBAAAA;AACtCT,eACGU,KAAK;QAAEC,KAAK;QAASC,MAAMX,kBAAkBY,KAAK;UAAEC,gBAAgB;QAAK,CAAA;MAAG,CAAA,EAC5EJ,KAAK;QAAEC,KAAK;QAAYC,MAAMX,kBAAkBY,KAAK;UAAEC,gBAAgB;QAAK,CAAA;MAAG,CAAA,EAC/EJ,KAAK;QAAEC,KAAK;QAAaC,MAAMX,kBAAkBY,KAAK;UAAEC,gBAAgB;QAAK,CAAA;MAAG,CAAA;AAInF,YAAMC,WAAYC,OAAeD;AACjCA,eAASE,iCAAiC,OAAOC,YAAAA;AAC/C,cAAM,EAAED,+BAA8B,IAAK,MAAM,OAAO,6BAAA;AACxD,cAAM,EAAEE,qBAAoB,IAAK,MAAM,OAAO,uBAAA;AAC9C,cAAMC,SAAkBJ,OAAeK,KAAKD;AAC5C,cAAME,SAASF,OAAOE;AACtB,cAAMF,OAAOG,QAAO;AACpB,cAAM,EAAEC,QAAO,IAAKL,qBAAqBG,OAAOG,QAAQC,SAASN,QAAQI,WAAW,CAAC,CAAA;AACrF,cAAMP,+BAA+BO,SAASN,OAAAA;AAC9CS,iBAASC,WAAW;MACtB;IACF;IACAC,QAAQ,YAAA;AACN7B,eAAS8B,MAAK;IAChB;IACAC,UAAU;MACR/B,UAAUA,SAASyB;MACnBO;MACAC,SAAS,CAAC,EAAEC,SAAQ,MAAE;AACpB,cAAM,CAACC,OAAOC,QAAAA,IAAYC,UAAAA;AAC1BC,QAAAA,WAAU,MAAMH,OAAOI,MAAMC,GAAG,CAACC,UAAU,CAACA,SAASL,SAASM,MAAAA,CAAAA,GAAa;UAACP;SAAM;AAClFG,QAAAA,WAAU,MAAA;AACRH,iBAAOQ,KAAAA;QACT,GAAG,CAAA,CAAE;AAEL,eACE,gBAAAC,OAAA,cAACC,aAAaC,UAAQ;UACpBL,OAAO;YACLM,SAAS,CAAC,CAACZ;YACXa,OAAO,CAACC,IAAIC,YAAAA;AACVf,qBAAOQ,KAAAA;AACPP,uBAAS,IAAIe,MAAMF,EAAAA,EAAID,MAAME,OAAAA,CAAAA;YAC/B;YACAP,MAAM,MAAMR,OAAOQ,KAAAA;UACrB;WAECT,QAAAA;MAGP;MACAkB,OAAO;QACLC,SAAS,CAAC9C,YAAAA;AACR,gBAAM+C,cAAc9C,cAAcD,SAASgD,iBAAAA;AAI3C,iBAAO;;YAELC,gBAAgB;cACdC,IAAI;cACJC,QAAQ,CAACC,SAA6B,CAAC,CAAC3D,SAASyB,OAAOtB,YAAYwD,KAAKF,OAAO;cAChFG,WAAW,MAAM;gBACf;;kBAEEH,IAAI;kBACJI,MAAM;kBACNjD,MAAM;kBACNkD,YAAY;oBACVC,OAAO;sBAAC;sBAAkB;wBAAEC,IAAIlE;sBAAa;;oBAC7CmE,MAAM;kBACR;gBACF;;YAEJ,CAAA;;YAGAT,gBAAgB;cACdC,IAAI;cACJC,QAAQ,CAACC,SAA6B,CAAC,CAAC3D,SAASyB,OAAOvB,SAASyD,KAAKF,OAAO;cAC7EG,WAAW,MAAM;gBACf;kBACEH,IAAI;kBACJ7C,MAAM;kBACNiD,MAAM;oBAAET,OAAOE,aAAavB,SAASqB;kBAAM;kBAC3CU,YAAY;oBACVC,OAAO;sBAAC;sBAAe;wBAAEC,IAAIlE;sBAAa;;oBAC1CmE,MAAM;kBACR;gBACF;;YAEJ,CAAA;;YAGAT,gBAAgB;cACdC,IAAI;cACJC,QAAQ,CAACC,SAA8B,CAAC,CAAC3D,SAASyB,OAAOvB,SAASgE,QAAQP,KAAKE,IAAI;cACnFD,WAAW,CAAC,EAAED,KAAI,MAAE;AAClB,sBAAMQ,QAAQR,KAAKE;AACnB,uBAAO;kBACL;oBACEJ,IAAI,GAAGU,MAAMV,EAAE;oBACf7C,MAAM;oBACNiD,MAAM;sBAAEM;oBAAM;oBACdL,YAAY;sBACVC,OAAO;wBAAC;wBAAe;0BAAEC,IAAIlE;wBAAa;;sBAC1CmE,MAAM;oBACR;kBACF;;cAEJ;YACF,CAAA;;QAEJ;MACF;MACAG,QAAQ;QACNC,UAAU,OAAOD,QAAQ7D,YAAAA;AACvB,kBAAQ6D,OAAOE,QAAM;YACnB,KAAKC,YAAYC,eAAe;AAC9B,oBAAMC,eAAeC,UAAgCnE,SAAS,wBAAA;AAC9D,oBAAMa,SAASqD,aAAa1C,SAASX;AACrC,oBAAMuD,WAAWvD,OAAOE,OAAOG,QAAQC,SAASN,QAAQwD,gBAAgB;AAGxE,kBAAIC,cAAc;AAClB,kBAAI;AAEF,sBAAMC,MAAMD,WAAAA;cACd,QAAQ;AAEN,sBAAME,QAAQ/D,OAAOW,SAASqD,KAAKC,SAAS,OAAA,KAAYjE,OAAOW,SAASqD,KAAKC,SAAS,WAAA;AACtFJ,8BAAc,mBAAmBE,QAAQ,UAAU,GAAA;cACrD;AAEA/D,qBAAOkE,KAAK,GAAGL,WAAAA,WAAsBF,QAAAA,IAAY,QAAA;AACjD,qBAAO;gBAAEd,MAAM;cAAK;YACtB;UACF;QACF;MACF;MACAsB,SAAS;QACPC,WAAW,CAAC,EAAEC,MAAMxB,MAAMyB,KAAI,MAAE;AAC9B,kBAAQA,MAAAA;YACN,KAAK;AACH,qBAAOzB,KAAK0B,WAAWlF,aAAKoD,KAAK,gBAAAb,OAAA,cAAC4C,eAAAA;gBAAcxF,UAAUA,SAASyB;mBAAa;YAClF,KAAK;AACH,qBAAO,gBAAAmB,OAAA,cAAC6C,aAAAA,IAAAA;UACZ;AAEA,gBAAMC,UAAU7B,KAAK8B,UAAU9B,KAAK+B;AACpC,cAAIR;AACJ,cAAIE,SAAS,UAAUA,SAAS,WAAW;AACzC,gBAAII,YAAY,cAAc1F,SAASyB,OAAOtB,UAAU;AACtDiF,0BAAY,gBAAAxC,OAAA,cAACiD,UAAAA,IAAAA;YACf,WAAW,CAACH,WAAW,OAAOA,YAAY,YAAY,CAAC1F,SAASyB,OAAOvB,OAAO;AAC5EkF,0BAAY;YACd,WAAW,WAAWM,WAAWxB,QAAQwB,QAAQvB,KAAK,GAAG;AACvDiB,0BACE,gBAAAxC,OAAA,cAACkD,YAAAA;gBACC3B,OAAOuB,QAAQvB;gBACf4B,cAAc,CAACC,YAAAA;AACb,sBAAI,CAAC9B,QAAQwB,QAAQvB,KAAK,GAAG;AAC3B;kBACF;AAEA,wBAAM8B,aACJP,QAAQvB,MAAM5B,MAAM2D,IAAG,MAAOC,WAAWC,eACzCV,QAAQvB,MAAML,WAAWuC,eAAeC,QAAQ;AAClD,sBAAI,EAAEL,sBAAsBI,iBAAiB;AAC3C;kBACF;AAEA,uBAAKjG,cAAc2B,SAASqC,OAAOmC,SACjCP,QAAQQ,IAAI,CAACZ,YAAY;oBACvBtB,QAAQmC,YAAYC;oBACpB7C,MAAM;sBAAE8C,QAAQV;sBAAYL;oBAAO;kBACrC,EAAA,CAAA;gBAEJ;;YAGN,WAAW,WAAWF,WAAWA,QAAQtC,iBAAiBwD,OAAO;AAC/DxB,0BAAY,gBAAAxC,OAAA,cAACiE,aAAAA;gBAAYzD,OAAOsC,QAAQtC;;YAC1C,OAAO;AACLgC,0BAAY;YACd;UACF;AAEA,cAAI,CAACA,WAAW;AACd,gBAAIpF,SAASyB,OAAOqF,WAAW;AAC7B,kBAAIxB,SAAS,UAAUA,SAAS,aAAaA,SAAS,WAAW;AAC/D,sBAAMI,WAAU7B,KAAK8B,UAAU9B,KAAK+B;AACpC,oBAAI,EAAEF,oBAAmBW,iBAAiB;AACxC,yBAAO,gBAAAzD,OAAA,cAACmE,WAAAA;oBAAUhD,OAAOuB;oBAAMzB;oBAAYmD,WAAU;;gBACvD;cACF;YACF;AAEA,mBAAO;UACT;AAEA,kBAAQ1B,MAAAA;YACN,KAAK;AACH,qBACE,gBAAA1C,OAAA,cAACqE,OAAAA;gBAAI3B,MAAK;gBAAO0B,WAAU;iBACxB5B,SAAAA;YAGP,KAAK;AACH,qBACE,gBAAAxC,OAAA,cAACsE,KAAKC,SAAO;gBACXC,YAAY;kBAACC;kBAAaC;kBAAsBC;kBAAyBC;;iBAExEpC,SAAAA;UAGT;AAEA,iBAAO;QACT;MACF;IACF;EACF;AACF;;;AMlQA,IAAA,cAAeqC;",
|
|
6
|
-
"names": ["React", "useEffect", "useState", "getPlugin", "parseGraphPlugin", "parseIntentPlugin", "resolvePlugin", "Timer", "Devtools", "LocalStorageStore", "createExtension", "Graph", "SpaceAction", "CollectionType", "SpaceState", "isSpace", "Main", "baseSurface", "topbarBlockPaddingStart", "fixedInsetFlexLayout", "bottombarBlockPaddingEnd", "React", "Gift", "DownloadSimple", "FirstAidKit", "React", "useEffect", "useState", "parseFileManagerPlugin", "useResolvePlugin", "defs", "SaveConfig", "Storage", "log", "SettingsValue", "useClient", "useTranslation", "Button", "Toast", "Input", "useFileDownload", "Select", "getSize", "mx", "setDeep", "StorageAdapters", "opfs", "defs", "Runtime", "Client", "Storage", "StorageDriver", "WEBFS", "idb", "IDB", "DebugSettings", "settings", "t", "useTranslation", "DEBUG_PLUGIN", "toast", "setToast", "useState", "client", "useClient", "download", "useFileDownload", "storageConfig", "setStorageConfig", "fileManagerPlugin", "useResolvePlugin", "parseFileManagerPlugin", "useEffect", "then", "config", "handleToast", "setTimeout", "undefined", "clearTimeout", "handleDownload", "data", "diagnostics", "file", "Blob", "JSON", "stringify", "type", "fileName", "Date", "toISOString", "replace", "provides", "upload", "info", "File", "spaces", "default", "log", "error", "title", "description", "url", "values", "runtime", "services", "ipfs", "gateway", "cid", "navigator", "clipboard", "writeText", "handleRepair", "repair", "err", "message", "SettingsValue", "label", "Input", "Switch", "checked", "debug", "onCheckedChange", "devtools", "wireframe", "Button", "onClick", "DownloadSimple", "className", "getSize", "FirstAidKit", "Toast", "Root", "Body", "Title", "Gift", "mx", "weight", "span", "Description", "Select", "value", "Object", "entries", "find", "name", "storage", "dataStore", "onValueChange", "confirm", "updateConfig", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "keys", "map", "key", "Option", "setConfig", "path", "storageConfigCopy", "parse", "setDeep", "queueMicrotask", "SaveConfig", "ChartBar", "Circle", "Lightning", "LightningSlash", "React", "useEffect", "useRef", "useState", "firstIdInPart", "parseGraphPlugin", "parseNavigationPlugin", "useResolvePlugin", "TimeoutError", "StatsPanel", "useStats", "log", "getActiveSpace", "StatusBar", "ConnectionState", "useNetworkStatus", "getSize", "mx", "styles", "success", "warning", "error", "ErrorIndicator", "forceUpdate", "useState", "errorRef", "useRef", "useEffect", "errorListener", "event", "error", "reason", "current", "log", "window", "addEventListener", "removeEventListener", "handleReset", "undefined", "React", "StatusBar", "Button", "title", "message", "onClick", "Circle", "weight", "className", "mx", "styles", "getSize", "Item", "SwarmIndicator", "state", "setState", "swarm", "useNetworkStatus", "ConnectionState", "ONLINE", "Lightning", "LightningSlash", "warning", "SavingIndicator", "_setState", "navigationPlugin", "useResolvePlugin", "parseNavigationPlugin", "graphPlugin", "parseGraphPlugin", "location", "provides", "graph", "_space", "getActiveSpace", "firstIdInPart", "active", "success", "PerformanceIndicator", "visible", "setVisible", "stats", "refreshStats", "useStats", "ChartBar", "div", "StatsPanel", "onRefresh", "indicators", "DebugStatus", "map", "Indicator", "key", "name", "React", "useResizeDetector", "
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type ReactNode, useEffect, useState } from 'react';\n\nimport {\n getPlugin,\n parseGraphPlugin,\n parseIntentPlugin,\n resolvePlugin,\n type IntentPluginProvides,\n type Plugin,\n type PluginDefinition,\n} from '@dxos/app-framework';\nimport { Timer } from '@dxos/async';\nimport { Devtools } from '@dxos/devtools';\nimport { LocalStorageStore } from '@dxos/local-storage';\nimport { type ClientPluginProvides } from '@dxos/plugin-client';\nimport { createExtension, Graph, type Node } from '@dxos/plugin-graph';\nimport { SpaceAction } from '@dxos/plugin-space';\nimport { CollectionType } from '@dxos/plugin-space/types';\nimport { type Client } from '@dxos/react-client';\nimport { type Space, SpaceState, isSpace } from '@dxos/react-client/echo';\nimport { Main } from '@dxos/react-ui';\nimport {\n baseSurface,\n topbarBlockPaddingStart,\n fixedInsetFlexLayout,\n bottombarBlockPaddingEnd,\n} from '@dxos/react-ui-theme';\n\nimport { DebugGlobal, DebugSettings, DebugSpace, DebugStatus, Wireframe } from './components';\nimport meta, { DEBUG_PLUGIN } from './meta';\nimport translations from './translations';\nimport { DebugContext, type DebugSettingsProps, type DebugPluginProvides, DebugAction } from './types';\n\nexport const SETTINGS_KEY = DEBUG_PLUGIN + '/settings';\n\nexport const DebugPlugin = (): PluginDefinition<DebugPluginProvides> => {\n const settings = new LocalStorageStore<DebugSettingsProps>(DEBUG_PLUGIN, { debug: true, devtools: true });\n let intentPlugin: Plugin<IntentPluginProvides>;\n\n return {\n meta,\n ready: async (plugins) => {\n intentPlugin = resolvePlugin(plugins, parseIntentPlugin)!;\n settings\n .prop({ key: 'debug', type: LocalStorageStore.bool({ allowUndefined: true }) })\n .prop({ key: 'devtools', type: LocalStorageStore.bool({ allowUndefined: true }) })\n .prop({ key: 'wireframe', type: LocalStorageStore.bool({ allowUndefined: true }) });\n\n // TODO(burdon): Remove hacky dependency on global variable.\n // Used to test how composer handles breaking protocol changes.\n const composer = (window as any).composer;\n composer.changeStorageVersionInMetadata = async (version: number) => {\n const { changeStorageVersionInMetadata } = await import('@dxos/echo-pipeline/testing');\n const { createStorageObjects } = await import('@dxos/client-services');\n const client: Client = (window as any).dxos.client;\n const config = client.config;\n await client.destroy();\n const { storage } = createStorageObjects(config.values?.runtime?.client?.storage ?? {});\n await changeStorageVersionInMetadata(storage, version);\n location.pathname = '/';\n };\n },\n unload: async () => {\n settings.close();\n },\n provides: {\n settings: settings.values,\n translations,\n context: ({ children }) => {\n const [timer, setTimer] = useState<Timer>();\n useEffect(() => timer?.state.on((value) => !value && setTimer(undefined)), [timer]);\n useEffect(() => {\n timer?.stop();\n }, []);\n\n return (\n <DebugContext.Provider\n value={{\n running: !!timer,\n start: (cb, options) => {\n timer?.stop();\n setTimer(new Timer(cb).start(options));\n },\n stop: () => timer?.stop(),\n }}\n >\n {children}\n </DebugContext.Provider>\n );\n },\n graph: {\n builder: (plugins) => {\n const graphPlugin = resolvePlugin(plugins, parseGraphPlugin);\n\n // TODO(burdon): Combine nodes into single subtree.\n\n return [\n // Devtools node.\n createExtension({\n id: 'dxos.org/plugin/debug/devtools',\n filter: (node): node is Node<null> => !!settings.values.devtools && node.id === 'root',\n connector: () => [\n {\n // TODO(zan): Removed `/` because it breaks deck layout reload. Fix?\n id: 'dxos.org.plugin.debug.devtools',\n data: 'devtools',\n type: 'dxos.org/plugin/debug/devtools',\n properties: {\n label: ['devtools label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--hammer--regular',\n },\n },\n ],\n }),\n\n // Debug node.\n createExtension({\n id: 'dxos.org/plugin/debug/debug',\n filter: (node): node is Node<null> => !!settings.values.debug && node.id === 'root',\n connector: () => [\n {\n id: 'dxos.org/plugin/debug/debug',\n type: 'dxos.org/plugin/debug/debug',\n data: { graph: graphPlugin?.provides.graph },\n properties: {\n label: ['debug label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--bug--regular',\n },\n },\n ],\n }),\n\n // Space debug nodes.\n createExtension({\n id: 'dxos.org/plugin/debug/spaces',\n filter: (node): node is Node<Space> => !!settings.values.debug && isSpace(node.data),\n connector: ({ node }) => {\n const space = node.data;\n return [\n {\n id: `${space.id}-debug`,\n type: 'dxos.org/plugin/debug/space',\n data: { space },\n properties: {\n label: ['debug label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--bug--regular',\n },\n },\n ];\n },\n }),\n ];\n },\n },\n intent: {\n resolver: async (intent, plugins) => {\n switch (intent.action) {\n case DebugAction.OPEN_DEVTOOLS: {\n const clientPlugin = getPlugin<ClientPluginProvides>(plugins, 'dxos.org/plugin/client');\n const client = clientPlugin.provides.client;\n const vaultUrl = client.config.values?.runtime?.client?.remoteSource ?? 'https://halo.dxos.org';\n\n // Check if we're serving devtools locally on the usual port.\n let devtoolsUrl = 'http://localhost:5174';\n try {\n // TODO(burdon): Test header to see if this is actually devtools.\n await fetch(devtoolsUrl);\n } catch {\n // Match devtools to running app.\n const isDev = window.location.href.includes('.dev.') || window.location.href.includes('localhost');\n devtoolsUrl = `https://devtools${isDev ? '.dev.' : '.'}dxos.org`;\n }\n\n window.open(`${devtoolsUrl}?target=${vaultUrl}`, '_blank');\n return { data: true };\n }\n }\n },\n },\n surface: {\n component: ({ name, data, role }) => {\n switch (role) {\n case 'settings':\n return data.plugin === meta.id ? <DebugSettings settings={settings.values} /> : null;\n case 'status':\n return <DebugStatus />;\n }\n\n const primary = data.active ?? data.object;\n let component: ReactNode;\n if (role === 'main' || role === 'article') {\n if (primary === 'devtools' && settings.values.devtools) {\n component = <Devtools />;\n } else if (!primary || typeof primary !== 'object' || !settings.values.debug) {\n component = null;\n } else if ('space' in primary && isSpace(primary.space)) {\n component = (\n <DebugSpace\n space={primary.space}\n onAddObjects={(objects) => {\n if (!isSpace(primary.space)) {\n return;\n }\n\n const collection =\n primary.space.state.get() === SpaceState.SPACE_READY &&\n primary.space.properties[CollectionType.typename];\n if (!(collection instanceof CollectionType)) {\n return;\n }\n\n void intentPlugin?.provides.intent.dispatch(\n objects.map((object) => ({\n action: SpaceAction.ADD_OBJECT,\n data: { target: collection, object },\n })),\n );\n }}\n />\n );\n } else if ('graph' in primary && primary.graph instanceof Graph) {\n component = <DebugGlobal graph={primary.graph} />;\n } else {\n component = null;\n }\n }\n\n if (!component) {\n if (settings.values.wireframe) {\n if (role === 'main' || role === 'article' || role === 'section') {\n const primary = data.active ?? data.object;\n if (!(primary instanceof CollectionType)) {\n return <Wireframe label={role} data={data} className='row-span-2 overflow-hidden' />;\n }\n }\n }\n\n return null;\n }\n\n switch (role) {\n case 'article':\n return (\n <div role='none' className='row-span-2 rounded-t-md overflow-x-auto'>\n {component}\n </div>\n );\n case 'main':\n return (\n <Main.Content\n classNames={[baseSurface, fixedInsetFlexLayout, topbarBlockPaddingStart, bottombarBlockPaddingEnd]}\n >\n {component}\n </Main.Content>\n );\n }\n\n return null;\n },\n },\n },\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\n// Lazily load components for content surfaces.\nexport const DebugGlobal = React.lazy(() => import('./DebugGlobal'));\nexport const DebugSpace = React.lazy(() => import('./DebugSpace'));\n\nexport * from './DebugSettings';\nexport * from './DebugStatus';\nexport * from './Wireframe';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Gift, DownloadSimple, FirstAidKit } from '@phosphor-icons/react';\nimport React, { useEffect, useState } from 'react';\n\nimport { parseFileManagerPlugin, useResolvePlugin } from '@dxos/app-framework';\nimport { type ConfigProto, defs, SaveConfig, Storage } from '@dxos/config';\nimport { log } from '@dxos/log';\nimport { SettingsValue } from '@dxos/plugin-settings';\nimport { useClient } from '@dxos/react-client';\nimport { useTranslation, Button, Toast, Input, useFileDownload, Select } from '@dxos/react-ui';\nimport { getSize, mx } from '@dxos/react-ui-theme';\nimport { setDeep } from '@dxos/util';\n\nimport { DEBUG_PLUGIN } 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 const DebugSettings = ({ settings }: { settings: DebugSettingsProps }) => {\n const { t } = useTranslation(DEBUG_PLUGIN);\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 fileManagerPlugin = useResolvePlugin(parseFileManagerPlugin);\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)], { type: 'text/plain' });\n const fileName = `composer-${new Date().toISOString().replace(/\\W/g, '-')}.json`;\n download(file, fileName);\n\n if (fileManagerPlugin?.provides.file.upload) {\n const info = await fileManagerPlugin.provides.file.upload(new File([file], fileName), client.spaces.default);\n if (!info) {\n log.error('diagnostics failed to upload to IPFS');\n return;\n }\n handleToast({ title: t('settings uploaded'), description: t('settings uploaded to clipboard') });\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({ title: t('settings uploaded'), description: t('settings uploaded to clipboard') });\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({ title: t('settings repair success'), description: JSON.stringify(info, undefined, 2) });\n } catch (err: any) {\n handleToast({ title: t('settings repair failed'), description: err.message });\n }\n };\n\n return (\n <>\n <SettingsValue label={t('settings show debug panel')}>\n <Input.Switch checked={settings.debug} onCheckedChange={(checked) => (settings.debug = !!checked)} />\n </SettingsValue>\n <SettingsValue label={t('settings show devtools panel')}>\n <Input.Switch checked={settings.devtools} onCheckedChange={(checked) => (settings.devtools = !!checked)} />\n </SettingsValue>\n <SettingsValue label={t('settings wireframe')}>\n <Input.Switch checked={settings.wireframe} onCheckedChange={(checked) => (settings.wireframe = !!checked)} />\n </SettingsValue>\n <SettingsValue label={t('settings download diagnostics')}>\n <Button onClick={handleDownload}>\n <DownloadSimple className={getSize(5)} />\n </Button>\n </SettingsValue>\n <SettingsValue label={t('settings repair')}>\n <Button onClick={handleRepair}>\n <FirstAidKit className={getSize(5)} />\n </Button>\n </SettingsValue>\n\n {/* TODO(burdon): Move to layout? */}\n {toast && (\n <Toast.Root>\n <Toast.Body>\n <Toast.Title>\n <Gift className={mx(getSize(5), 'inline mr-1')} weight='duotone' />\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 <SettingsValue label={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.Content>\n </Select.Portal>\n </Select.Root>\n </SettingsValue>\n </>\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 { ChartBar, Circle, Lightning, LightningSlash } from '@phosphor-icons/react';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { firstIdInPart, parseGraphPlugin, parseNavigationPlugin, useResolvePlugin } from '@dxos/app-framework';\nimport { TimeoutError } from '@dxos/async';\nimport { StatsPanel, useStats } from '@dxos/devtools';\nimport { log } from '@dxos/log';\nimport { getActiveSpace } 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 { getSize, mx } from '@dxos/react-ui-theme';\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>();\n useEffect(() => {\n const errorListener = (event: any) => {\n const error: Error = event.error ?? event.reason;\n // event.preventDefault();\n if (errorRef.current !== error) {\n // eslint-disable-next-line no-console\n log.error('onError', { event });\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 = undefined;\n forceUpdate({});\n };\n\n if (errorRef.current) {\n return (\n <StatusBar.Button title={errorRef.current.message} onClick={handleReset}>\n <Circle weight='fill' className={mx(styles.error, getSize(3))} />\n </StatusBar.Button>\n );\n } else {\n return (\n <StatusBar.Item title='No errors.'>\n <Circle weight='fill' className={getSize(3)} />\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 <Lightning className={getSize(4)} />\n </StatusBar.Item>\n );\n } else {\n return (\n <StatusBar.Item title='Disconnected from swarm.'>\n <LightningSlash className={mx(styles.warning, getSize(4))} />\n </StatusBar.Item>\n );\n }\n};\n\n/**\n * Space saving indicator.\n */\nconst SavingIndicator = () => {\n const [state, _setState] = useState(0);\n const navigationPlugin = useResolvePlugin(parseNavigationPlugin);\n const graphPlugin = useResolvePlugin(parseGraphPlugin);\n const location = navigationPlugin?.provides.location;\n const graph = graphPlugin?.provides.graph;\n const _space = location && graph ? getActiveSpace(graph, firstIdInPart(location.active, 'main')) : undefined;\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 <Circle weight='fill' className={mx(styles.warning, getSize(3))} />\n </StatusBar.Item>\n );\n case 1:\n return (\n <StatusBar.Item title='Saving...'>\n <Circle weight='fill' className={mx(styles.success, getSize(3))} />\n </StatusBar.Item>\n );\n case 0:\n default:\n return (\n <StatusBar.Item title='Modified indicator.'>\n <Circle weight='fill' className={getSize(3)} />\n </StatusBar.Item>\n );\n }\n};\n\nconst PerformanceIndicator = () => {\n const [visible, setVisible] = useState(false);\n const [stats, refreshStats] = useStats();\n\n return (\n <>\n <StatusBar.Button onClick={() => setVisible((visible) => !visible)} title='Performance panels'>\n <ChartBar />\n </StatusBar.Button>\n {visible && (\n <div className='z-20 absolute bottom-[24px] w-[450px] border-l border-y border-separator'>\n <StatsPanel stats={stats} onRefresh={refreshStats} />\n </div>\n )}\n </>\n );\n};\n\nconst indicators = [PerformanceIndicator, SavingIndicator, ErrorIndicator, SwarmIndicator];\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 { useAttendableAttributes } from '@dxos/react-ui-attention';\nimport { mx } from '@dxos/react-ui-theme';\n\n// TODO(burdon): Make focusable and attendable with input.\nexport const Wireframe = ({ label, data, className }: { label?: string; data?: any; className?: string }) => {\n const attendableAttrs = useAttendableAttributes(data);\n const { width, height, ref } = useResizeDetector();\n return (\n <div ref={ref} className={mx('relative grow min-bs-96', className)} {...attendableAttrs}>\n <div className='absolute inset-2 flex flex-col overflow-hidden font-mono'>\n <div className='flex justify-between'>\n <div>{label}</div>\n <div>{`[${width}x${height}]`}</div>\n </div>\n <div className='flex grow overflow-auto'>\n {data && (\n <pre className='text-neutral-500 text-sm whitespace-pre-line'>{JSON.stringify(data, undefined, 1)}</pre>\n )}\n </div>\n </div>\n <svg width={width} height={height} className='bg-transparent [&>*]:stroke-neutral-500'>\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", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { DEBUG_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [DEBUG_PLUGIN]: {\n 'plugin name': 'Debug',\n 'mutation count': 'Number of mutations',\n 'mutation period': 'Mutation period',\n 'open devtools label': 'Open DevTools',\n 'devtools label': 'DevTools',\n 'debug label': 'Debug',\n 'settings show debug panel': 'Show Debug panel.',\n 'settings show devtools panel': 'Show DevTools panel.',\n 'settings wireframe': 'Show wireframes.',\n 'settings repair': 'Run repair tool.',\n 'settings download diagnostics': 'Download diagnostics.',\n 'settings uploaded': 'Uploaded to IPFS',\n 'settings uploaded to clipboard': 'URL copied to clipboard.',\n 'settings repair success': 'Repair succeeded',\n 'settings repair failed': 'Repair failed',\n 'settings choose storage adaptor': 'Storage adaptor (worker reload required).',\n 'settings storage adaptor idb label': 'IndexedDB',\n 'settings storage adaptor opfs label': 'OPFS',\n 'settings data store label': 'Data Store',\n 'settings storage adapter changed alert':\n 'Warning: Swapping the storage adapter will make your data unavailable.',\n 'settings space fragmentation': 'Enable AM space fragmentation',\n },\n },\n },\n];\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { DebugPlugin } from './DebugPlugin';\n\nexport * from './DebugPlugin';\n\nexport default DebugPlugin;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "useEffect", "useState", "getPlugin", "parseGraphPlugin", "parseIntentPlugin", "resolvePlugin", "Timer", "Devtools", "LocalStorageStore", "createExtension", "Graph", "SpaceAction", "CollectionType", "SpaceState", "isSpace", "Main", "baseSurface", "topbarBlockPaddingStart", "fixedInsetFlexLayout", "bottombarBlockPaddingEnd", "React", "Gift", "DownloadSimple", "FirstAidKit", "React", "useEffect", "useState", "parseFileManagerPlugin", "useResolvePlugin", "defs", "SaveConfig", "Storage", "log", "SettingsValue", "useClient", "useTranslation", "Button", "Toast", "Input", "useFileDownload", "Select", "getSize", "mx", "setDeep", "StorageAdapters", "opfs", "defs", "Runtime", "Client", "Storage", "StorageDriver", "WEBFS", "idb", "IDB", "DebugSettings", "settings", "t", "useTranslation", "DEBUG_PLUGIN", "toast", "setToast", "useState", "client", "useClient", "download", "useFileDownload", "storageConfig", "setStorageConfig", "fileManagerPlugin", "useResolvePlugin", "parseFileManagerPlugin", "useEffect", "then", "config", "handleToast", "setTimeout", "undefined", "clearTimeout", "handleDownload", "data", "diagnostics", "file", "Blob", "JSON", "stringify", "type", "fileName", "Date", "toISOString", "replace", "provides", "upload", "info", "File", "spaces", "default", "log", "error", "title", "description", "url", "values", "runtime", "services", "ipfs", "gateway", "cid", "navigator", "clipboard", "writeText", "handleRepair", "repair", "err", "message", "SettingsValue", "label", "Input", "Switch", "checked", "debug", "onCheckedChange", "devtools", "wireframe", "Button", "onClick", "DownloadSimple", "className", "getSize", "FirstAidKit", "Toast", "Root", "Body", "Title", "Gift", "mx", "weight", "span", "Description", "Select", "value", "Object", "entries", "find", "name", "storage", "dataStore", "onValueChange", "confirm", "updateConfig", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "keys", "map", "key", "Option", "setConfig", "path", "storageConfigCopy", "parse", "setDeep", "queueMicrotask", "SaveConfig", "ChartBar", "Circle", "Lightning", "LightningSlash", "React", "useEffect", "useRef", "useState", "firstIdInPart", "parseGraphPlugin", "parseNavigationPlugin", "useResolvePlugin", "TimeoutError", "StatsPanel", "useStats", "log", "getActiveSpace", "StatusBar", "ConnectionState", "useNetworkStatus", "getSize", "mx", "styles", "success", "warning", "error", "ErrorIndicator", "forceUpdate", "useState", "errorRef", "useRef", "useEffect", "errorListener", "event", "error", "reason", "current", "log", "window", "addEventListener", "removeEventListener", "handleReset", "undefined", "React", "StatusBar", "Button", "title", "message", "onClick", "Circle", "weight", "className", "mx", "styles", "getSize", "Item", "SwarmIndicator", "state", "setState", "swarm", "useNetworkStatus", "ConnectionState", "ONLINE", "Lightning", "LightningSlash", "warning", "SavingIndicator", "_setState", "navigationPlugin", "useResolvePlugin", "parseNavigationPlugin", "graphPlugin", "parseGraphPlugin", "location", "provides", "graph", "_space", "getActiveSpace", "firstIdInPart", "active", "success", "PerformanceIndicator", "visible", "setVisible", "stats", "refreshStats", "useStats", "ChartBar", "div", "StatsPanel", "onRefresh", "indicators", "DebugStatus", "map", "Indicator", "key", "name", "React", "useResizeDetector", "useAttendableAttributes", "mx", "Wireframe", "label", "data", "className", "attendableAttrs", "useAttendableAttributes", "width", "height", "ref", "useResizeDetector", "React", "div", "mx", "pre", "JSON", "stringify", "undefined", "svg", "rect", "x", "y", "strokeWidth", "fill", "line", "x1", "y1", "x2", "y2", "DebugGlobal", "React", "lazy", "DebugSpace", "DEBUG_PLUGIN", "SETTINGS_KEY", "DEBUG_PLUGIN", "DebugPlugin", "settings", "LocalStorageStore", "debug", "devtools", "intentPlugin", "meta", "ready", "plugins", "resolvePlugin", "parseIntentPlugin", "prop", "key", "type", "bool", "allowUndefined", "composer", "window", "changeStorageVersionInMetadata", "version", "createStorageObjects", "client", "dxos", "config", "destroy", "storage", "values", "runtime", "location", "pathname", "unload", "close", "provides", "translations", "context", "children", "timer", "setTimer", "useState", "useEffect", "state", "on", "value", "undefined", "stop", "React", "DebugContext", "Provider", "running", "start", "cb", "options", "Timer", "graph", "builder", "graphPlugin", "parseGraphPlugin", "createExtension", "id", "filter", "node", "connector", "data", "properties", "label", "ns", "icon", "isSpace", "space", "intent", "resolver", "action", "DebugAction", "OPEN_DEVTOOLS", "clientPlugin", "getPlugin", "vaultUrl", "remoteSource", "devtoolsUrl", "fetch", "isDev", "href", "includes", "open", "surface", "component", "name", "role", "plugin", "DebugSettings", "DebugStatus", "primary", "active", "object", "Devtools", "DebugSpace", "onAddObjects", "objects", "collection", "get", "SpaceState", "SPACE_READY", "CollectionType", "typename", "dispatch", "map", "SpaceAction", "ADD_OBJECT", "target", "Graph", "DebugGlobal", "wireframe", "Wireframe", "className", "div", "Main", "Content", "classNames", "baseSurface", "fixedInsetFlexLayout", "topbarBlockPaddingStart", "bottombarBlockPaddingEnd", "DebugPlugin"]
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/plugins/experimental/plugin-debug/src/meta.tsx":{"bytes":1395,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/DebugSettings.tsx":{"bytes":22433,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/config","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-debug/src/meta.tsx","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/DebugStatus.tsx":{"bytes":22833,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/devtools","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-status-bar","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/Wireframe.tsx":{"bytes":5718,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/DebugPanel.tsx":{"bytes":4021,"imports":[{"path":"date-fns","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/Tree.tsx":{"bytes":10132,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-syntax-highlighter","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/DebugGlobal.tsx":{"bytes":10577,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-debug/src/components/DebugPanel.tsx","kind":"import-statement","original":"./DebugPanel"},{"path":"packages/plugins/experimental/plugin-debug/src/components/Tree.tsx","kind":"import-statement","original":"./Tree"}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/scaffolding/generator.ts":{"bytes":15978,"imports":[{"path":"@tldraw/tldraw","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/echo-generator","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-sketch/sdk","kind":"import-statement","external":true},{"path":"@dxos/plugin-sketch/types","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/scaffolding/index.ts":{"bytes":527,"imports":[{"path":"packages/plugins/experimental/plugin-debug/src/scaffolding/generator.ts","kind":"import-statement","original":"./generator"}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/ObjectCreator.tsx":{"bytes":12270,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-table","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-debug/src/scaffolding/index.ts","kind":"import-statement","original":"../scaffolding"}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/types.ts":{"bytes":2694,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-debug/src/meta.tsx","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/DebugSpace.tsx":{"bytes":24398,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-debug/src/components/DebugPanel.tsx","kind":"import-statement","original":"./DebugPanel"},{"path":"packages/plugins/experimental/plugin-debug/src/components/ObjectCreator.tsx","kind":"import-statement","original":"./ObjectCreator"},{"path":"packages/plugins/experimental/plugin-debug/src/scaffolding/index.ts","kind":"import-statement","original":"../scaffolding"},{"path":"packages/plugins/experimental/plugin-debug/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/components/index.ts":{"bytes":1503,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-debug/src/components/DebugSettings.tsx","kind":"import-statement","original":"./DebugSettings"},{"path":"packages/plugins/experimental/plugin-debug/src/components/DebugStatus.tsx","kind":"import-statement","original":"./DebugStatus"},{"path":"packages/plugins/experimental/plugin-debug/src/components/Wireframe.tsx","kind":"import-statement","original":"./Wireframe"},{"path":"packages/plugins/experimental/plugin-debug/src/components/DebugGlobal.tsx","kind":"dynamic-import","original":"./DebugGlobal"},{"path":"packages/plugins/experimental/plugin-debug/src/components/DebugSpace.tsx","kind":"dynamic-import","original":"./DebugSpace"}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/translations.ts":{"bytes":4357,"imports":[{"path":"packages/plugins/experimental/plugin-debug/src/meta.tsx","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/DebugPlugin.tsx":{"bytes":37024,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/devtools","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-debug/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/plugins/experimental/plugin-debug/src/meta.tsx","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/experimental/plugin-debug/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/experimental/plugin-debug/src/types.ts","kind":"import-statement","original":"./types"},{"path":"@dxos/echo-pipeline/testing","kind":"dynamic-import","external":true},{"path":"@dxos/client-services","kind":"dynamic-import","external":true}],"format":"esm"},"packages/plugins/experimental/plugin-debug/src/index.ts":{"bytes":782,"imports":[{"path":"packages/plugins/experimental/plugin-debug/src/DebugPlugin.tsx","kind":"import-statement","original":"./DebugPlugin"},{"path":"packages/plugins/experimental/plugin-debug/src/DebugPlugin.tsx","kind":"import-statement","original":"./DebugPlugin"}],"format":"esm"}},"outputs":{"packages/plugins/experimental/plugin-debug/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":44924},"packages/plugins/experimental/plugin-debug/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-G6OQPL2E.mjs","kind":"import-statement"},{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-KXZKF6LX.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/devtools","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/config","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/devtools","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-status-bar","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/DebugGlobal-H56M2VL4.mjs","kind":"dynamic-import"},{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/DebugSpace-J4YF3H67.mjs","kind":"dynamic-import"},{"path":"@dxos/echo-pipeline/testing","kind":"dynamic-import","external":true},{"path":"@dxos/client-services","kind":"dynamic-import","external":true}],"exports":["DebugPlugin","SETTINGS_KEY","default"],"entryPoint":"packages/plugins/experimental/plugin-debug/src/index.ts","inputs":{"packages/plugins/experimental/plugin-debug/src/DebugPlugin.tsx":{"bytesInOutput":9600},"packages/plugins/experimental/plugin-debug/src/components/index.ts":{"bytesInOutput":176},"packages/plugins/experimental/plugin-debug/src/components/DebugSettings.tsx":{"bytesInOutput":6234},"packages/plugins/experimental/plugin-debug/src/components/DebugStatus.tsx":{"bytesInOutput":5261},"packages/plugins/experimental/plugin-debug/src/components/Wireframe.tsx":{"bytesInOutput":1638},"packages/plugins/experimental/plugin-debug/src/translations.ts":{"bytesInOutput":1297},"packages/plugins/experimental/plugin-debug/src/index.ts":{"bytesInOutput":31}},"bytes":25118},"packages/plugins/experimental/plugin-debug/dist/lib/browser/meta.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/experimental/plugin-debug/dist/lib/browser/meta.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-KXZKF6LX.mjs","kind":"import-statement"}],"exports":["DEBUG_PLUGIN","default"],"entryPoint":"packages/plugins/experimental/plugin-debug/src/meta.tsx","inputs":{},"bytes":159},"packages/plugins/experimental/plugin-debug/dist/lib/browser/DebugGlobal-H56M2VL4.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10741},"packages/plugins/experimental/plugin-debug/dist/lib/browser/DebugGlobal-H56M2VL4.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-ED5L5YYI.mjs","kind":"import-statement"},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-syntax-highlighter","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/experimental/plugin-debug/src/components/DebugGlobal.tsx","inputs":{"packages/plugins/experimental/plugin-debug/src/components/DebugGlobal.tsx":{"bytesInOutput":2994},"packages/plugins/experimental/plugin-debug/src/components/Tree.tsx":{"bytesInOutput":2694}},"bytes":6063},"packages/plugins/experimental/plugin-debug/dist/lib/browser/DebugSpace-J4YF3H67.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":27141},"packages/plugins/experimental/plugin-debug/dist/lib/browser/DebugSpace-J4YF3H67.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-G6OQPL2E.mjs","kind":"import-statement"},{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-KXZKF6LX.mjs","kind":"import-statement"},{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-ED5L5YYI.mjs","kind":"import-statement"},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-table","kind":"import-statement","external":true},{"path":"@tldraw/tldraw","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/echo-generator","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-sketch/sdk","kind":"import-statement","external":true},{"path":"@dxos/plugin-sketch/types","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/experimental/plugin-debug/src/components/DebugSpace.tsx","inputs":{"packages/plugins/experimental/plugin-debug/src/components/DebugSpace.tsx":{"bytesInOutput":6626},"packages/plugins/experimental/plugin-debug/src/components/ObjectCreator.tsx":{"bytesInOutput":2964},"packages/plugins/experimental/plugin-debug/src/scaffolding/generator.ts":{"bytesInOutput":4044},"packages/plugins/experimental/plugin-debug/src/scaffolding/index.ts":{"bytesInOutput":0}},"bytes":14256},"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-G6OQPL2E.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1538},"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-G6OQPL2E.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-KXZKF6LX.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true}],"exports":["DebugAction","DebugContext"],"inputs":{"packages/plugins/experimental/plugin-debug/src/types.ts":{"bytesInOutput":364}},"bytes":566},"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-KXZKF6LX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":653},"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-KXZKF6LX.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["DEBUG_PLUGIN","meta_default"],"inputs":{"packages/plugins/experimental/plugin-debug/src/meta.tsx":{"bytesInOutput":268}},"bytes":415},"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-ED5L5YYI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2147},"packages/plugins/experimental/plugin-debug/dist/lib/browser/chunk-ED5L5YYI.mjs":{"imports":[{"path":"date-fns","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["DebugPanel"],"inputs":{"packages/plugins/experimental/plugin-debug/src/components/DebugPanel.tsx":{"bytesInOutput":1063}},"bytes":1209}}}
|
|
1
|
+
{"inputs":{"packages/plugins/plugin-debug/src/meta.tsx":{"bytes":1382,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-debug/src/components/DebugSettings.tsx":{"bytes":22420,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/config","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-debug/src/meta.tsx","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-debug/src/components/DebugStatus.tsx":{"bytes":22820,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/devtools","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-status-bar","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-debug/src/components/Wireframe.tsx":{"bytes":5687,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-debug/src/components/DebugPanel.tsx":{"bytes":4008,"imports":[{"path":"date-fns","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-debug/src/components/Tree.tsx":{"bytes":10119,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-syntax-highlighter","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-debug/src/components/DebugGlobal.tsx":{"bytes":10564,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-debug/src/components/DebugPanel.tsx","kind":"import-statement","original":"./DebugPanel"},{"path":"packages/plugins/plugin-debug/src/components/Tree.tsx","kind":"import-statement","original":"./Tree"}],"format":"esm"},"packages/plugins/plugin-debug/src/scaffolding/generator.ts":{"bytes":15965,"imports":[{"path":"@tldraw/tldraw","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/echo-generator","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-sketch/sdk","kind":"import-statement","external":true},{"path":"@dxos/plugin-sketch/types","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-debug/src/scaffolding/index.ts":{"bytes":514,"imports":[{"path":"packages/plugins/plugin-debug/src/scaffolding/generator.ts","kind":"import-statement","original":"./generator"}],"format":"esm"},"packages/plugins/plugin-debug/src/components/ObjectCreator.tsx":{"bytes":12257,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-table","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-debug/src/scaffolding/index.ts","kind":"import-statement","original":"../scaffolding"}],"format":"esm"},"packages/plugins/plugin-debug/src/types.ts":{"bytes":2681,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-debug/src/meta.tsx","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-debug/src/components/DebugSpace.tsx":{"bytes":24385,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-debug/src/components/DebugPanel.tsx","kind":"import-statement","original":"./DebugPanel"},{"path":"packages/plugins/plugin-debug/src/components/ObjectCreator.tsx","kind":"import-statement","original":"./ObjectCreator"},{"path":"packages/plugins/plugin-debug/src/scaffolding/index.ts","kind":"import-statement","original":"../scaffolding"},{"path":"packages/plugins/plugin-debug/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-debug/src/components/index.ts":{"bytes":1490,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-debug/src/components/DebugSettings.tsx","kind":"import-statement","original":"./DebugSettings"},{"path":"packages/plugins/plugin-debug/src/components/DebugStatus.tsx","kind":"import-statement","original":"./DebugStatus"},{"path":"packages/plugins/plugin-debug/src/components/Wireframe.tsx","kind":"import-statement","original":"./Wireframe"},{"path":"packages/plugins/plugin-debug/src/components/DebugGlobal.tsx","kind":"dynamic-import","original":"./DebugGlobal"},{"path":"packages/plugins/plugin-debug/src/components/DebugSpace.tsx","kind":"dynamic-import","original":"./DebugSpace"}],"format":"esm"},"packages/plugins/plugin-debug/src/translations.ts":{"bytes":4344,"imports":[{"path":"packages/plugins/plugin-debug/src/meta.tsx","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-debug/src/DebugPlugin.tsx":{"bytes":37011,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/devtools","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-debug/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/plugins/plugin-debug/src/meta.tsx","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-debug/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-debug/src/types.ts","kind":"import-statement","original":"./types"},{"path":"@dxos/echo-pipeline/testing","kind":"dynamic-import","external":true},{"path":"@dxos/client-services","kind":"dynamic-import","external":true}],"format":"esm"},"packages/plugins/plugin-debug/src/index.ts":{"bytes":769,"imports":[{"path":"packages/plugins/plugin-debug/src/DebugPlugin.tsx","kind":"import-statement","original":"./DebugPlugin"},{"path":"packages/plugins/plugin-debug/src/DebugPlugin.tsx","kind":"import-statement","original":"./DebugPlugin"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-debug/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":44912},"packages/plugins/plugin-debug/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-debug/dist/lib/browser/chunk-YZYTCG6C.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-debug/dist/lib/browser/chunk-RXFUQL3T.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/devtools","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/config","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/devtools","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-status-bar","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-debug/dist/lib/browser/DebugGlobal-EKGO6BLV.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-debug/dist/lib/browser/DebugSpace-WBO7S7HS.mjs","kind":"dynamic-import"},{"path":"@dxos/echo-pipeline/testing","kind":"dynamic-import","external":true},{"path":"@dxos/client-services","kind":"dynamic-import","external":true}],"exports":["DebugPlugin","SETTINGS_KEY","default"],"entryPoint":"packages/plugins/plugin-debug/src/index.ts","inputs":{"packages/plugins/plugin-debug/src/DebugPlugin.tsx":{"bytesInOutput":9600},"packages/plugins/plugin-debug/src/components/index.ts":{"bytesInOutput":176},"packages/plugins/plugin-debug/src/components/DebugSettings.tsx":{"bytesInOutput":6221},"packages/plugins/plugin-debug/src/components/DebugStatus.tsx":{"bytesInOutput":5248},"packages/plugins/plugin-debug/src/components/Wireframe.tsx":{"bytesInOutput":1632},"packages/plugins/plugin-debug/src/translations.ts":{"bytesInOutput":1297},"packages/plugins/plugin-debug/src/index.ts":{"bytesInOutput":31}},"bytes":24969},"packages/plugins/plugin-debug/dist/lib/browser/meta.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-debug/dist/lib/browser/meta.mjs":{"imports":[{"path":"packages/plugins/plugin-debug/dist/lib/browser/chunk-RXFUQL3T.mjs","kind":"import-statement"}],"exports":["DEBUG_PLUGIN","default"],"entryPoint":"packages/plugins/plugin-debug/src/meta.tsx","inputs":{},"bytes":159},"packages/plugins/plugin-debug/dist/lib/browser/DebugGlobal-EKGO6BLV.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10741},"packages/plugins/plugin-debug/dist/lib/browser/DebugGlobal-EKGO6BLV.mjs":{"imports":[{"path":"packages/plugins/plugin-debug/dist/lib/browser/chunk-FMLIYWVW.mjs","kind":"import-statement"},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-syntax-highlighter","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-debug/src/components/DebugGlobal.tsx","inputs":{"packages/plugins/plugin-debug/src/components/DebugGlobal.tsx":{"bytesInOutput":2994},"packages/plugins/plugin-debug/src/components/Tree.tsx":{"bytesInOutput":2694}},"bytes":6024},"packages/plugins/plugin-debug/dist/lib/browser/DebugSpace-WBO7S7HS.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":27141},"packages/plugins/plugin-debug/dist/lib/browser/DebugSpace-WBO7S7HS.mjs":{"imports":[{"path":"packages/plugins/plugin-debug/dist/lib/browser/chunk-YZYTCG6C.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-debug/dist/lib/browser/chunk-RXFUQL3T.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-debug/dist/lib/browser/chunk-FMLIYWVW.mjs","kind":"import-statement"},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-table","kind":"import-statement","external":true},{"path":"@tldraw/tldraw","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/echo-generator","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-sketch/sdk","kind":"import-statement","external":true},{"path":"@dxos/plugin-sketch/types","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-debug/src/components/DebugSpace.tsx","inputs":{"packages/plugins/plugin-debug/src/components/DebugSpace.tsx":{"bytesInOutput":6626},"packages/plugins/plugin-debug/src/components/ObjectCreator.tsx":{"bytesInOutput":2964},"packages/plugins/plugin-debug/src/scaffolding/generator.ts":{"bytesInOutput":4031},"packages/plugins/plugin-debug/src/scaffolding/index.ts":{"bytesInOutput":0}},"bytes":14178},"packages/plugins/plugin-debug/dist/lib/browser/chunk-YZYTCG6C.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1538},"packages/plugins/plugin-debug/dist/lib/browser/chunk-YZYTCG6C.mjs":{"imports":[{"path":"packages/plugins/plugin-debug/dist/lib/browser/chunk-RXFUQL3T.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true}],"exports":["DebugAction","DebugContext"],"inputs":{"packages/plugins/plugin-debug/src/types.ts":{"bytesInOutput":364}},"bytes":553},"packages/plugins/plugin-debug/dist/lib/browser/chunk-RXFUQL3T.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":653},"packages/plugins/plugin-debug/dist/lib/browser/chunk-RXFUQL3T.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["DEBUG_PLUGIN","meta_default"],"inputs":{"packages/plugins/plugin-debug/src/meta.tsx":{"bytesInOutput":268}},"bytes":402},"packages/plugins/plugin-debug/dist/lib/browser/chunk-FMLIYWVW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2147},"packages/plugins/plugin-debug/dist/lib/browser/chunk-FMLIYWVW.mjs":{"imports":[{"path":"date-fns","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["DebugPanel"],"inputs":{"packages/plugins/plugin-debug/src/components/DebugPanel.tsx":{"bytesInOutput":1063}},"bytes":1196}}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/plugin-debug",
|
|
3
|
-
"version": "0.6.12-main.
|
|
3
|
+
"version": "0.6.12-main.7907542",
|
|
4
4
|
"description": "DXOS Surface plugin for testing.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -36,36 +36,36 @@
|
|
|
36
36
|
"react-json-tree": "^0.18.0",
|
|
37
37
|
"react-resize-detector": "^11.0.1",
|
|
38
38
|
"react-syntax-highlighter": "^15.5.0",
|
|
39
|
-
"@dxos/app-framework": "0.6.12-main.
|
|
40
|
-
"@dxos/async": "0.6.12-main.
|
|
41
|
-
"@dxos/automerge": "0.6.12-main.
|
|
42
|
-
"@dxos/
|
|
43
|
-
"@dxos/
|
|
44
|
-
"@dxos/devtools": "0.6.12-main.
|
|
45
|
-
"@dxos/
|
|
46
|
-
"@dxos/echo-
|
|
47
|
-
"@dxos/
|
|
48
|
-
"@dxos/
|
|
49
|
-
"@dxos/
|
|
50
|
-
"@dxos/
|
|
51
|
-
"@dxos/
|
|
52
|
-
"@dxos/plugin-client": "0.6.12-main.
|
|
53
|
-
"@dxos/plugin-
|
|
54
|
-
"@dxos/plugin-
|
|
55
|
-
"@dxos/plugin-
|
|
56
|
-
"@dxos/plugin-sketch": "0.6.12-main.
|
|
57
|
-
"@dxos/plugin-
|
|
58
|
-
"@dxos/plugin-
|
|
59
|
-
"@dxos/plugin-table": "0.6.12-main.
|
|
60
|
-
"@dxos/
|
|
61
|
-
"@dxos/
|
|
62
|
-
"@dxos/
|
|
63
|
-
"@dxos/
|
|
64
|
-
"@dxos/react-hooks": "0.6.12-main.
|
|
65
|
-
"@dxos/react-ui-
|
|
66
|
-
"@dxos/react-
|
|
67
|
-
"@dxos/react-ui-table": "0.6.12-main.
|
|
68
|
-
"@dxos/util": "0.6.12-main.
|
|
39
|
+
"@dxos/app-framework": "0.6.12-main.7907542",
|
|
40
|
+
"@dxos/async": "0.6.12-main.7907542",
|
|
41
|
+
"@dxos/automerge": "0.6.12-main.7907542",
|
|
42
|
+
"@dxos/config": "0.6.12-main.7907542",
|
|
43
|
+
"@dxos/echo-generator": "0.6.12-main.7907542",
|
|
44
|
+
"@dxos/devtools": "0.6.12-main.7907542",
|
|
45
|
+
"@dxos/client-services": "0.6.12-main.7907542",
|
|
46
|
+
"@dxos/echo-schema": "0.6.12-main.7907542",
|
|
47
|
+
"@dxos/echo-pipeline": "0.6.12-main.7907542",
|
|
48
|
+
"@dxos/invariant": "0.6.12-main.7907542",
|
|
49
|
+
"@dxos/keys": "0.6.12-main.7907542",
|
|
50
|
+
"@dxos/log": "0.6.12-main.7907542",
|
|
51
|
+
"@dxos/local-storage": "0.6.12-main.7907542",
|
|
52
|
+
"@dxos/plugin-client": "0.6.12-main.7907542",
|
|
53
|
+
"@dxos/plugin-graph": "0.6.12-main.7907542",
|
|
54
|
+
"@dxos/plugin-settings": "0.6.12-main.7907542",
|
|
55
|
+
"@dxos/plugin-markdown": "0.6.12-main.7907542",
|
|
56
|
+
"@dxos/plugin-sketch": "0.6.12-main.7907542",
|
|
57
|
+
"@dxos/plugin-status-bar": "0.6.12-main.7907542",
|
|
58
|
+
"@dxos/plugin-space": "0.6.12-main.7907542",
|
|
59
|
+
"@dxos/plugin-table": "0.6.12-main.7907542",
|
|
60
|
+
"@dxos/plugin-theme": "0.6.12-main.7907542",
|
|
61
|
+
"@dxos/protocols": "0.6.12-main.7907542",
|
|
62
|
+
"@dxos/react-client": "0.6.12-main.7907542",
|
|
63
|
+
"@dxos/random": "0.6.12-main.7907542",
|
|
64
|
+
"@dxos/react-hooks": "0.6.12-main.7907542",
|
|
65
|
+
"@dxos/react-ui-attention": "0.6.12-main.7907542",
|
|
66
|
+
"@dxos/react-ui-syntax-highlighter": "0.6.12-main.7907542",
|
|
67
|
+
"@dxos/react-ui-table": "0.6.12-main.7907542",
|
|
68
|
+
"@dxos/util": "0.6.12-main.7907542"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@phosphor-icons/react": "^2.1.5",
|
|
@@ -76,17 +76,18 @@
|
|
|
76
76
|
"react": "~18.2.0",
|
|
77
77
|
"react-dom": "~18.2.0",
|
|
78
78
|
"vite": "5.4.7",
|
|
79
|
-
"@dxos/random": "0.6.12-main.
|
|
80
|
-
"@dxos/react-ui": "0.6.12-main.
|
|
81
|
-
"@dxos/react-ui-theme": "0.6.12-main.
|
|
82
|
-
"@dxos/storybook-utils": "0.6.12-main.
|
|
79
|
+
"@dxos/random": "0.6.12-main.7907542",
|
|
80
|
+
"@dxos/react-ui": "0.6.12-main.7907542",
|
|
81
|
+
"@dxos/react-ui-theme": "0.6.12-main.7907542",
|
|
82
|
+
"@dxos/storybook-utils": "0.6.12-main.7907542"
|
|
83
83
|
},
|
|
84
84
|
"peerDependencies": {
|
|
85
85
|
"@phosphor-icons/react": "^2.1.5",
|
|
86
86
|
"react": "~18.2.0",
|
|
87
87
|
"react-dom": "~18.2.0",
|
|
88
|
-
"@dxos/
|
|
89
|
-
"@dxos/react-ui-theme": "0.6.12-main.
|
|
88
|
+
"@dxos/random": "0.6.12-main.7907542",
|
|
89
|
+
"@dxos/react-ui-theme": "0.6.12-main.7907542",
|
|
90
|
+
"@dxos/react-ui": "0.6.12-main.7907542"
|
|
90
91
|
},
|
|
91
92
|
"publishConfig": {
|
|
92
93
|
"access": "public"
|
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import { useResizeDetector } from 'react-resize-detector';
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import { useAttendableAttributes } from '@dxos/react-ui-attention';
|
|
9
9
|
import { mx } from '@dxos/react-ui-theme';
|
|
10
10
|
|
|
11
11
|
// TODO(burdon): Make focusable and attendable with input.
|
|
12
12
|
export const Wireframe = ({ label, data, className }: { label?: string; data?: any; className?: string }) => {
|
|
13
|
-
const attendableAttrs =
|
|
13
|
+
const attendableAttrs = useAttendableAttributes(data);
|
|
14
14
|
const { width, height, ref } = useResizeDetector();
|
|
15
15
|
return (
|
|
16
16
|
<div ref={ref} className={mx('relative grow min-bs-96', className)} {...attendableAttrs}>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|