@dxos/plugin-debug 0.6.13 → 0.6.14-main.2b6a0f3

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.
Files changed (62) hide show
  1. package/dist/lib/browser/{DebugGlobal-H56M2VL4.mjs → DebugGlobal-ZTCBF3XR.mjs} +5 -5
  2. package/dist/lib/browser/{DebugSpace-NHPMLATA.mjs → DebugSpace-2G2PBGCC.mjs} +16 -41
  3. package/dist/lib/browser/DebugSpace-2G2PBGCC.mjs.map +7 -0
  4. package/dist/lib/browser/chunk-2HTS7SNO.mjs +17 -0
  5. package/dist/lib/browser/chunk-2HTS7SNO.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-RYK3J66D.mjs → chunk-6Y463JSP.mjs} +3 -3
  7. package/dist/lib/browser/{chunk-ED5L5YYI.mjs → chunk-H3BJHVRD.mjs} +5 -8
  8. package/dist/lib/browser/chunk-H3BJHVRD.mjs.map +7 -0
  9. package/dist/lib/browser/index.mjs +133 -106
  10. package/dist/lib/browser/index.mjs.map +4 -4
  11. package/dist/lib/browser/meta.json +1 -1
  12. package/dist/lib/browser/meta.mjs +1 -1
  13. package/dist/types/src/DebugPlugin.d.ts.map +1 -1
  14. package/dist/types/src/components/DebugObjectPanel.d.ts +7 -0
  15. package/dist/types/src/components/DebugObjectPanel.d.ts.map +1 -0
  16. package/dist/types/src/components/DebugPanel.d.ts +3 -3
  17. package/dist/types/src/components/DebugPanel.d.ts.map +1 -1
  18. package/dist/types/src/components/DebugSpace.stories.d.ts +3 -13
  19. package/dist/types/src/components/DebugSpace.stories.d.ts.map +1 -1
  20. package/dist/types/src/components/DebugStatus.d.ts.map +1 -1
  21. package/dist/types/src/components/ObjectCreator.d.ts +5 -5
  22. package/dist/types/src/components/ObjectCreator.d.ts.map +1 -1
  23. package/dist/types/src/components/ObjectCreator.stories.d.ts +3 -14
  24. package/dist/types/src/components/ObjectCreator.stories.d.ts.map +1 -1
  25. package/dist/types/src/components/SurfaceDebug.d.ts +9 -0
  26. package/dist/types/src/components/SurfaceDebug.d.ts.map +1 -0
  27. package/dist/types/src/components/Wireframe.d.ts +5 -4
  28. package/dist/types/src/components/Wireframe.d.ts.map +1 -1
  29. package/dist/types/src/components/index.d.ts +3 -4
  30. package/dist/types/src/components/index.d.ts.map +1 -1
  31. package/dist/types/src/meta.d.ts +4 -9
  32. package/dist/types/src/meta.d.ts.map +1 -1
  33. package/dist/types/src/scaffolding/generator.d.ts +1 -2
  34. package/dist/types/src/scaffolding/generator.d.ts.map +1 -1
  35. package/package.json +41 -43
  36. package/src/DebugPlugin.tsx +21 -15
  37. package/src/components/DebugObjectPanel.tsx +22 -0
  38. package/src/components/DebugPanel.tsx +4 -9
  39. package/src/components/DebugSpace.stories.tsx +6 -3
  40. package/src/components/DebugStatus.tsx +20 -13
  41. package/src/components/ObjectCreator.stories.tsx +13 -10
  42. package/src/components/ObjectCreator.tsx +12 -21
  43. package/src/components/SurfaceDebug.tsx +55 -0
  44. package/src/components/Wireframe.tsx +20 -11
  45. package/src/components/index.ts +4 -5
  46. package/src/meta.ts +15 -0
  47. package/src/scaffolding/generator.ts +4 -15
  48. package/dist/lib/browser/DebugSpace-NHPMLATA.mjs.map +0 -7
  49. package/dist/lib/browser/DevtoolsMain-RWT3FLJ6.mjs +0 -15
  50. package/dist/lib/browser/DevtoolsMain-RWT3FLJ6.mjs.map +0 -7
  51. package/dist/lib/browser/chunk-ED5L5YYI.mjs.map +0 -7
  52. package/dist/lib/browser/chunk-WEGYHXMB.mjs +0 -21
  53. package/dist/lib/browser/chunk-WEGYHXMB.mjs.map +0 -7
  54. package/dist/types/src/components/DevtoolsMain.d.ts +0 -4
  55. package/dist/types/src/components/DevtoolsMain.d.ts.map +0 -1
  56. package/dist/types/src/types.test.d.ts +0 -2
  57. package/dist/types/src/types.test.d.ts.map +0 -1
  58. package/src/components/DevtoolsMain.tsx +0 -15
  59. package/src/meta.tsx +0 -19
  60. package/src/types.test.ts +0 -13
  61. /package/dist/lib/browser/{DebugGlobal-H56M2VL4.mjs.map → DebugGlobal-ZTCBF3XR.mjs.map} +0 -0
  62. /package/dist/lib/browser/{chunk-RYK3J66D.mjs.map → chunk-6Y463JSP.mjs.map} +0 -0
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  DebugPanel
3
- } from "./chunk-ED5L5YYI.mjs";
3
+ } from "./chunk-H3BJHVRD.mjs";
4
4
 
5
- // packages/plugins/experimental/plugin-debug/src/components/DebugGlobal.tsx
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/experimental/plugin-debug/src/components/Tree.tsx
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/experimental/plugin-debug/src/components/DebugGlobal.tsx
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-H56M2VL4.mjs.map
171
+ //# sourceMappingURL=DebugGlobal-ZTCBF3XR.mjs.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  DebugContext
3
- } from "./chunk-RYK3J66D.mjs";
4
- import "./chunk-WEGYHXMB.mjs";
3
+ } from "./chunk-6Y463JSP.mjs";
4
+ import "./chunk-2HTS7SNO.mjs";
5
5
  import {
6
6
  DebugPanel
7
- } from "./chunk-ED5L5YYI.mjs";
7
+ } from "./chunk-H3BJHVRD.mjs";
8
8
 
9
- // packages/plugins/experimental/plugin-debug/src/components/DebugSpace.tsx
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/experimental/plugin-debug/src/components/ObjectCreator.tsx
23
+ // packages/plugins/plugin-debug/src/components/ObjectCreator.tsx
24
24
  import React, { useMemo, useState } from "react";
25
- import { Button, DensityProvider } from "@dxos/react-ui";
25
+ import { Button } from "@dxos/react-ui";
26
26
  import { createColumnBuilder, Table } from "@dxos/react-ui-table";
27
27
 
28
- // packages/plugins/experimental/plugin-debug/src/scaffolding/generator.ts
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";
@@ -33,23 +33,19 @@ import { SpaceObjectGenerator } from "@dxos/echo-generator";
33
33
  import { create } from "@dxos/echo-schema";
34
34
  import { log } from "@dxos/log";
35
35
  import { DocumentType, TextType } from "@dxos/plugin-markdown/types";
36
- import { createTestSheet } from "@dxos/plugin-sheet/testing";
37
- import { SheetType } from "@dxos/plugin-sheet/types";
38
- import { TLDrawStoreAdapter } from "@dxos/plugin-sketch";
36
+ import { TLDrawStoreAdapter } from "@dxos/plugin-sketch/sdk";
39
37
  import { CanvasType, DiagramType, TLDRAW_SCHEMA } from "@dxos/plugin-sketch/types";
40
38
  import { faker } from "@dxos/random";
41
39
  import { createDocAccessor } from "@dxos/react-client/echo";
42
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-debug/src/scaffolding/generator.ts";
40
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-debug/src/scaffolding/generator.ts";
43
41
  var SchemasNames;
44
42
  (function(SchemasNames2) {
45
43
  SchemasNames2["document"] = "dxos.org/type/Document";
46
44
  SchemasNames2["diagram"] = "dxos.org/type/Diagram";
47
- SchemasNames2["sheet"] = "dxos.org/type/SheetType";
48
45
  })(SchemasNames || (SchemasNames = {}));
49
46
  var SchemasMap = {
50
47
  ["dxos.org/type/Document"]: DocumentType,
51
- ["dxos.org/type/Diagram"]: DiagramType,
52
- ["dxos.org/type/SheetType"]: SheetType
48
+ ["dxos.org/type/Diagram"]: DiagramType
53
49
  };
54
50
  var ObjectGenerators = {
55
51
  ["dxos.org/type/Document"]: () => {
@@ -77,15 +73,6 @@ var ObjectGenerators = {
77
73
  content: {}
78
74
  })
79
75
  };
80
- },
81
- ["dxos.org/type/SheetType"]: () => {
82
- const name = faker.lorem.sentence({
83
- min: 2,
84
- max: 3
85
- });
86
- return createTestSheet({
87
- name
88
- });
89
76
  }
90
77
  };
91
78
  var MutationsGenerators = {
@@ -105,7 +92,7 @@ var MutationsGenerators = {
105
92
  mutationIdx: i
106
93
  }, {
107
94
  F: __dxlog_file,
108
- L: 83,
95
+ L: 76,
109
96
  S: void 0,
110
97
  C: (f, a) => f(...a)
111
98
  });
@@ -173,13 +160,11 @@ var MutationsGenerators = {
173
160
  await sleep(1);
174
161
  }
175
162
  }
176
- },
177
- ["dxos.org/type/SheetType"]: async (object, params) => {
178
163
  }
179
164
  };
180
165
  var createSpaceObjectGenerator = (space) => new SpaceObjectGenerator(space, SchemasMap, ObjectGenerators, MutationsGenerators);
181
166
 
182
- // packages/plugins/experimental/plugin-debug/src/components/ObjectCreator.tsx
167
+ // packages/plugins/plugin-debug/src/components/ObjectCreator.tsx
183
168
  var CREATE_OBJECTS_IN_ONE_CHUNK = 10;
184
169
  var ObjectCreator = ({ space, onAddObjects }) => {
185
170
  const generator = useMemo(() => createSpaceObjectGenerator(space), [
@@ -201,14 +186,6 @@ var ObjectCreator = ({ space, onAddObjects }) => {
201
186
  mutationsCount: 10,
202
187
  mutationSize: 10,
203
188
  maxContentLength: 1e3
204
- },
205
- {
206
- enabled: true,
207
- schema: SchemasNames.sheet,
208
- objectsCount: 10,
209
- mutationsCount: 10,
210
- mutationSize: 10,
211
- maxContentLength: 1e3
212
189
  }
213
190
  ]);
214
191
  const handleCreate = async () => {
@@ -268,17 +245,15 @@ var ObjectCreator = ({ space, onAddObjects }) => {
268
245
  onUpdate: handleChangeOnRow
269
246
  }))
270
247
  ];
271
- return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(DensityProvider, {
272
- density: "fine"
273
- }, /* @__PURE__ */ React.createElement(Table.Root, null, /* @__PURE__ */ React.createElement(Table.Viewport, null, /* @__PURE__ */ React.createElement(Table.Main, {
248
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Table.Root, null, /* @__PURE__ */ React.createElement(Table.Viewport, null, /* @__PURE__ */ React.createElement(Table.Main, {
274
249
  columns,
275
250
  data: objectsToCreate
276
- })))), /* @__PURE__ */ React.createElement(Button, {
251
+ }))), /* @__PURE__ */ React.createElement(Button, {
277
252
  onClick: handleCreate
278
253
  }, "Create"));
279
254
  };
280
255
 
281
- // packages/plugins/experimental/plugin-debug/src/components/DebugSpace.tsx
256
+ // packages/plugins/plugin-debug/src/components/DebugSpace.tsx
282
257
  var DEFAULT_COUNT = 100;
283
258
  var DEFAULT_PERIOD = 500;
284
259
  var DEFAULT_JITTER = 50;
@@ -433,4 +408,4 @@ var DebugSpace_default = DebugSpace;
433
408
  export {
434
409
  DebugSpace_default as default
435
410
  };
436
- //# sourceMappingURL=DebugSpace-NHPMLATA.mjs.map
411
+ //# sourceMappingURL=DebugSpace-2G2PBGCC.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/DebugSpace.tsx", "../../../src/components/ObjectCreator.tsx", "../../../src/scaffolding/generator.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n ArrowClockwise,\n DownloadSimple,\n Flag,\n FlagPennant,\n HandPalm,\n Play,\n PlusMinus,\n Timer,\n UserCirclePlus,\n} from '@phosphor-icons/react';\nimport React, { type FC, useContext, useMemo, useState } from 'react';\n\nimport { type ReactiveObject } from '@dxos/echo-schema';\nimport { DocumentType } from '@dxos/plugin-markdown/types';\nimport { Invitation } from '@dxos/protocols/proto/dxos/client/services';\nimport { faker } from '@dxos/random';\nimport { useClient } from '@dxos/react-client';\nimport { Filter, type Space, useSpaceInvitation } from '@dxos/react-client/echo';\nimport { InvitationEncoder } from '@dxos/react-client/invitations';\nimport { useAsyncEffect } from '@dxos/react-hooks';\nimport { Button, Input, useFileDownload } from '@dxos/react-ui';\nimport { getSize, mx } from '@dxos/react-ui-theme';\nimport { safeParseInt } from '@dxos/util';\n\nimport { DebugPanel } from './DebugPanel';\nimport { ObjectCreator } from './ObjectCreator';\nimport { createSpaceObjectGenerator } from '../scaffolding';\nimport { DebugContext } from '../types';\n\nconst DEFAULT_COUNT = 100;\nconst DEFAULT_PERIOD = 500;\nconst DEFAULT_JITTER = 50;\n\n// TODO(burdon): Factor out.\nconst useRefresh = (): [any, () => void] => {\n const [update, setUpdate] = useState({});\n return [update, () => setUpdate({})];\n};\n\nconst DebugSpace: FC<{\n space: Space;\n onAddObjects?: (objects: ReactiveObject<any>[]) => void;\n}> = ({ space, onAddObjects }) => {\n const { connect } = useSpaceInvitation(space?.key);\n const client = useClient();\n const [data, setData] = useState<any>({});\n\n const [update, handleUpdate] = useRefresh();\n useAsyncEffect(\n async (isMounted) => {\n const data = await client.diagnostics({ truncate: true });\n if (isMounted()) {\n setData(\n data?.diagnostics?.spaces?.find(({ key }: any) => {\n return space.key.toHex().startsWith(key);\n }),\n );\n }\n },\n [space, update],\n );\n\n const download = useFileDownload();\n const handleCopy = async () => {\n download(\n new Blob([JSON.stringify(data, undefined, 2)], { type: 'text/plain' }),\n `${new Date().toISOString().replace(/\\W/g, '-')}.json`,\n );\n };\n\n const [mutationCount, setMutationCount] = useState(String(DEFAULT_COUNT));\n const [mutationInterval, setMutationInterval] = useState(String(DEFAULT_PERIOD));\n const [mutationJitter, setMutationJitter] = useState(String(DEFAULT_JITTER));\n\n const generator = useMemo(() => createSpaceObjectGenerator(space), [space]);\n\n // TODO(burdon): Note: this is shared across all spaces!\n const { running, start, stop } = useContext(DebugContext);\n const handleToggleRunning = () => {\n if (running) {\n stop();\n handleUpdate();\n } else {\n start(\n async () => {\n const { objects } = await space.db.query(Filter.schema(DocumentType)).run();\n if (objects.length) {\n const object = faker.helpers.arrayElement(objects);\n await generator.mutateObject(object, { count: 10, mutationSize: 10, maxContentLength: 1000 });\n }\n },\n {\n count: safeParseInt(mutationCount) ?? 0,\n interval: safeParseInt(mutationInterval) ?? 0,\n jitter: safeParseInt(mutationJitter) ?? 0,\n },\n );\n }\n };\n\n const handleCreateInvitation = () => {\n const invitation = space.share({\n type: Invitation.Type.INTERACTIVE,\n authMethod: Invitation.AuthMethod.NONE,\n multiUse: true,\n });\n\n // TODO(burdon): Refactor.\n // TODO(burdon): Unsubscribe?\n connect(invitation);\n const code = InvitationEncoder.encode(invitation.get());\n new URL(window.origin).searchParams.set('spaceInvitationCode', code);\n const url = `${window.origin}?spaceInvitationCode=${code}`;\n void navigator.clipboard.writeText(url);\n };\n\n const handleCreateEpoch = async () => {\n await space.internal.createEpoch();\n handleUpdate();\n };\n\n return (\n <DebugPanel\n menu={\n <>\n <div className='relative' title='mutation count'>\n <Input.Root>\n <Input.TextInput\n autoComplete='off'\n size={5}\n classNames='w-[100px] text-right pie-[22px]'\n placeholder='Count'\n value={mutationCount}\n onChange={({ target: { value } }) => setMutationCount(value)}\n />\n </Input.Root>\n <Flag className={mx('absolute inline-end-1 block-start-1 mt-[6px]', getSize(3))} />\n </div>\n <div className='relative' title='mutation period'>\n <Input.Root>\n <Input.TextInput\n autoComplete='off'\n size={5}\n classNames='w-[100px] text-right pie-[22px]'\n placeholder='Interval'\n value={mutationInterval}\n onChange={({ target: { value } }) => setMutationInterval(value)}\n />\n </Input.Root>\n <Timer className={mx('absolute inline-end-1 block-start-1 mt-[6px]', getSize(3))} />\n </div>\n <div className='relative' title='mutation jitter'>\n <Input.Root>\n <Input.TextInput\n autoComplete='off'\n size={5}\n classNames='w-[100px] text-right pie-[22px]'\n placeholder='Jitter'\n value={mutationJitter}\n onChange={({ target: { value } }) => setMutationJitter(value)}\n />\n </Input.Root>\n <PlusMinus className={mx('absolute inline-end-1 block-start-1 mt-[6px]', getSize(3))} />\n </div>\n <Button onClick={handleToggleRunning}>\n {running ? <HandPalm className={getSize(5)} /> : <Play className={getSize(5)} />}\n </Button>\n <Button onClick={handleUpdate}>\n <ArrowClockwise className={getSize(5)} />\n </Button>\n <Button onClick={handleCopy}>\n <DownloadSimple className={getSize(5)} />\n </Button>\n\n <div className='grow' />\n <Button onClick={handleCreateEpoch} title='Create epoch'>\n <FlagPennant className={mx(getSize(5))} />\n </Button>\n <Button onClick={handleCreateInvitation} title='Create Space invitation'>\n <UserCirclePlus className={mx(getSize(5), 'text-blue-500')} />\n </Button>\n </>\n }\n >\n <ObjectCreator space={space} onAddObjects={onAddObjects} />\n </DebugPanel>\n );\n};\n\nexport default DebugSpace;\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useMemo, useState } from 'react';\n\nimport { type EchoReactiveObject, type ReactiveObject, type Space } from '@dxos/react-client/echo';\nimport { Button } from '@dxos/react-ui';\nimport { createColumnBuilder, type TableColumnDef, Table } from '@dxos/react-ui-table';\n\nimport { SchemasNames, createSpaceObjectGenerator } from '../scaffolding';\n\nexport type CreateObjectsParams = {\n enabled: boolean;\n schema: SchemasNames;\n objectsCount: number;\n mutationsCount: number;\n maxContentLength: number;\n mutationSize: number;\n};\n\nconst CREATE_OBJECTS_IN_ONE_CHUNK = 10;\n\nexport type ObjectCreatorProps = {\n space: Space;\n onAddObjects?: (objects: ReactiveObject<any>[]) => void;\n};\n\nexport const ObjectCreator = ({ space, onAddObjects }: ObjectCreatorProps) => {\n const generator = useMemo(() => createSpaceObjectGenerator(space), [space]);\n\n const [objectsToCreate, setObjectsToCreate] = useState<CreateObjectsParams[]>([\n {\n enabled: true,\n schema: SchemasNames.document,\n objectsCount: 10,\n mutationsCount: 10,\n mutationSize: 10,\n maxContentLength: 1000,\n },\n {\n enabled: true,\n schema: SchemasNames.diagram,\n objectsCount: 10,\n mutationsCount: 10,\n mutationSize: 10,\n maxContentLength: 1000,\n },\n ]);\n\n const handleCreate = async () => {\n for (const params of objectsToCreate) {\n if (!params.enabled) {\n continue;\n }\n let objectsCreated = 0;\n while (objectsCreated < params.objectsCount) {\n const objects = (await generator.createObjects({\n [params.schema]: Math.min(CREATE_OBJECTS_IN_ONE_CHUNK, params.objectsCount - objectsCreated),\n })) as EchoReactiveObject<any>[];\n\n await generator.mutateObjects(objects, {\n count: params.mutationsCount,\n mutationSize: params.mutationSize,\n maxContentLength: params.maxContentLength,\n });\n objectsCreated += objects.length;\n onAddObjects?.(objects);\n }\n }\n await space.db.flush();\n };\n const handleChangeOnRow = (row: CreateObjectsParams, key: string, value: any) => {\n const newObjects = [...objectsToCreate];\n Object.assign(newObjects.find((object) => object.schema === row.schema)!, { [key]: value });\n setObjectsToCreate(newObjects);\n };\n\n const { helper, builder } = createColumnBuilder<CreateObjectsParams>();\n const columns: TableColumnDef<CreateObjectsParams>[] = [\n helper.accessor('enabled', builder.switch({ label: 'Enabled', onUpdate: handleChangeOnRow })),\n helper.accessor('schema', builder.string({ classNames: 'font-mono', label: 'Schema' })),\n helper.accessor('objectsCount', builder.number({ label: 'Objects', onUpdate: handleChangeOnRow })),\n helper.accessor('mutationsCount', builder.number({ label: 'Mutations', onUpdate: handleChangeOnRow })),\n helper.accessor('mutationSize', builder.number({ label: 'Mut. Size', onUpdate: handleChangeOnRow })),\n helper.accessor('maxContentLength', builder.number({ label: 'Length', onUpdate: handleChangeOnRow })),\n ];\n\n return (\n <>\n <Table.Root>\n <Table.Viewport>\n <Table.Main<CreateObjectsParams> columns={columns} data={objectsToCreate} />\n </Table.Viewport>\n </Table.Root>\n <Button onClick={handleCreate}>Create</Button>\n </>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n createShapeId,\n defaultBindingUtils,\n defaultShapeUtils,\n defaultTools,\n Editor,\n type TLParentId,\n} from '@tldraw/tldraw';\n\nimport { sleep } from '@dxos/async';\nimport { next as A } from '@dxos/automerge/automerge';\nimport {\n SpaceObjectGenerator,\n type TestGeneratorMap,\n type TestMutationsMap,\n type TestSchemaMap,\n} from '@dxos/echo-generator';\nimport { create } from '@dxos/echo-schema';\nimport { log } from '@dxos/log';\nimport { DocumentType, TextType } from '@dxos/plugin-markdown/types';\nimport { TLDrawStoreAdapter } from '@dxos/plugin-sketch/sdk';\nimport { CanvasType, DiagramType, TLDRAW_SCHEMA } from '@dxos/plugin-sketch/types';\nimport { faker } from '@dxos/random';\nimport { createDocAccessor, type Space } from '@dxos/react-client/echo';\n\n// TODO(burdon): Move to echo-generator.\n\n// TODO(wittjosiah): Remove? Just use DXNs.\nexport enum SchemasNames {\n document = 'dxos.org/type/Document',\n diagram = 'dxos.org/type/Diagram',\n}\n\nexport const SchemasMap: TestSchemaMap<SchemasNames> = {\n [SchemasNames.document]: DocumentType,\n [SchemasNames.diagram]: DiagramType,\n};\n\nexport const ObjectGenerators: TestGeneratorMap<SchemasNames> = {\n [SchemasNames.document]: () => {\n const name = faker.lorem.sentence({ min: 2, max: 3 });\n return { name, content: create(TextType, { content: '' }), threads: [] };\n },\n\n [SchemasNames.diagram]: () => {\n const name = faker.lorem.sentence({ min: 2, max: 3 });\n return {\n name,\n canvas: create(CanvasType, { schema: TLDRAW_SCHEMA, content: {} }),\n };\n },\n};\n\nexport const MutationsGenerators: TestMutationsMap<SchemasNames> = {\n [SchemasNames.document]: async (object, params) => {\n const accessor = createDocAccessor<DocumentType>(object.content, ['content']);\n\n for (let i = 0; i < params.count; i++) {\n const length = object.content?.content?.length ?? 0;\n accessor.handle.change((doc) => {\n A.splice(\n doc,\n accessor.path.slice(),\n 0,\n params.maxContentLength >= length ? 0 : params.mutationSize,\n faker.string.hexadecimal({ length: params.mutationSize - 1 }) + ' ',\n );\n });\n\n // Release the event loop.\n if (i % 100 === 0 || i === params.count - 1) {\n log.info('Mutation:', { mutationIdx: i });\n await sleep(1);\n }\n }\n },\n\n [SchemasNames.diagram]: async (object, params) => {\n const store = new TLDrawStoreAdapter();\n await store.open(createDocAccessor<CanvasType>(object.canvas, ['content']));\n const app = new Editor({\n store: store.store!,\n shapeUtils: defaultShapeUtils,\n bindingUtils: defaultBindingUtils,\n tools: defaultTools,\n getContainer: () => document.getElementsByTagName('body')[0],\n });\n\n //\n // Draw spiral.\n //\n const r = 100;\n const a = 0.05;\n const cx = 200;\n const cy = 200;\n\n for (let i = 0; i < params.count; i++) {\n const t = i;\n const t1 = i + 1;\n const x = cx + a * t * r * Math.cos(t);\n const y = cy + a * t * r * Math.sin(t);\n const x1 = cx + a * t1 * r * Math.cos(t1);\n const y1 = cy + a * t1 * r * Math.sin(t1);\n\n app.createShape({\n id: createShapeId(),\n isLocked: false,\n meta: {},\n opacity: 1,\n parentId: 'page:page' as TLParentId,\n props: {\n arrowheadEnd: 'none',\n arrowheadStart: 'none',\n bend: 0,\n color: 'black',\n dash: 'draw',\n start: { x, y },\n end: { x: x1, y: y1 },\n fill: 'none',\n font: 'draw',\n labelColor: 'black',\n labelPosition: 0.5,\n scale: 1,\n size: 'm',\n },\n rotation: 0,\n type: 'arrow',\n typeName: 'shape',\n x: 0,\n y: 0,\n });\n\n // Release the event loop.\n if (i % 100 === 0) {\n await sleep(1);\n }\n }\n },\n};\n\nexport const createSpaceObjectGenerator = (space: Space) =>\n new SpaceObjectGenerator(space, SchemasMap, ObjectGenerators, MutationsGenerators);\n"],
5
+ "mappings": "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",
6
+ "names": ["ArrowClockwise", "DownloadSimple", "Flag", "FlagPennant", "HandPalm", "Play", "PlusMinus", "Timer", "UserCirclePlus", "React", "useContext", "useMemo", "useState", "DocumentType", "Invitation", "faker", "useClient", "Filter", "useSpaceInvitation", "InvitationEncoder", "useAsyncEffect", "Button", "Input", "useFileDownload", "getSize", "mx", "safeParseInt", "React", "useMemo", "useState", "Button", "createColumnBuilder", "Table", "createShapeId", "defaultBindingUtils", "defaultShapeUtils", "defaultTools", "Editor", "sleep", "next", "A", "SpaceObjectGenerator", "create", "log", "DocumentType", "TextType", "TLDrawStoreAdapter", "CanvasType", "DiagramType", "TLDRAW_SCHEMA", "faker", "createDocAccessor", "SchemasNames", "SchemasMap", "ObjectGenerators", "name", "lorem", "sentence", "min", "max", "content", "threads", "canvas", "schema", "MutationsGenerators", "object", "params", "accessor", "i", "count", "length", "handle", "change", "doc", "splice", "path", "slice", "maxContentLength", "mutationSize", "string", "hexadecimal", "info", "mutationIdx", "store", "open", "app", "shapeUtils", "bindingUtils", "tools", "getContainer", "document", "getElementsByTagName", "r", "a", "cx", "cy", "t", "t1", "x", "Math", "cos", "y", "sin", "x1", "y1", "createShape", "id", "isLocked", "meta", "opacity", "parentId", "props", "arrowheadEnd", "arrowheadStart", "bend", "color", "dash", "start", "end", "fill", "font", "labelColor", "labelPosition", "scale", "size", "rotation", "type", "typeName", "createSpaceObjectGenerator", "space", "CREATE_OBJECTS_IN_ONE_CHUNK", "ObjectCreator", "space", "onAddObjects", "generator", "useMemo", "createSpaceObjectGenerator", "objectsToCreate", "setObjectsToCreate", "useState", "enabled", "schema", "SchemasNames", "document", "objectsCount", "mutationsCount", "mutationSize", "maxContentLength", "diagram", "handleCreate", "params", "objectsCreated", "objects", "createObjects", "Math", "min", "mutateObjects", "count", "length", "db", "flush", "handleChangeOnRow", "row", "key", "value", "newObjects", "Object", "assign", "find", "object", "helper", "builder", "createColumnBuilder", "columns", "accessor", "switch", "label", "onUpdate", "string", "classNames", "number", "Table", "Root", "Viewport", "Main", "data", "Button", "onClick", "DEFAULT_COUNT", "DEFAULT_PERIOD", "DEFAULT_JITTER", "useRefresh", "update", "setUpdate", "useState", "DebugSpace", "space", "onAddObjects", "connect", "useSpaceInvitation", "key", "client", "useClient", "data", "setData", "handleUpdate", "useAsyncEffect", "isMounted", "diagnostics", "truncate", "spaces", "find", "toHex", "startsWith", "download", "useFileDownload", "handleCopy", "Blob", "JSON", "stringify", "undefined", "type", "Date", "toISOString", "replace", "mutationCount", "setMutationCount", "String", "mutationInterval", "setMutationInterval", "mutationJitter", "setMutationJitter", "generator", "useMemo", "createSpaceObjectGenerator", "running", "start", "stop", "useContext", "DebugContext", "handleToggleRunning", "objects", "db", "query", "Filter", "schema", "DocumentType", "run", "length", "object", "faker", "helpers", "arrayElement", "mutateObject", "count", "mutationSize", "maxContentLength", "safeParseInt", "interval", "jitter", "handleCreateInvitation", "invitation", "share", "Invitation", "Type", "INTERACTIVE", "authMethod", "AuthMethod", "NONE", "multiUse", "code", "InvitationEncoder", "encode", "get", "URL", "window", "origin", "searchParams", "set", "url", "navigator", "clipboard", "writeText", "handleCreateEpoch", "internal", "createEpoch", "React", "DebugPanel", "menu", "div", "className", "title", "Input", "Root", "TextInput", "autoComplete", "size", "classNames", "placeholder", "value", "onChange", "target", "Flag", "mx", "getSize", "Timer", "PlusMinus", "Button", "onClick", "HandPalm", "Play", "ArrowClockwise", "DownloadSimple", "FlagPennant", "UserCirclePlus", "ObjectCreator"]
7
+ }
@@ -0,0 +1,17 @@
1
+ // packages/plugins/plugin-debug/src/meta.ts
2
+ var DEBUG_PLUGIN = "dxos.org/plugin/debug";
3
+ var meta_default = {
4
+ id: DEBUG_PLUGIN,
5
+ name: "Debug",
6
+ description: "DXOS debugging tools.",
7
+ tags: [
8
+ "experimental"
9
+ ],
10
+ icon: "ph--bug--regular"
11
+ };
12
+
13
+ export {
14
+ DEBUG_PLUGIN,
15
+ meta_default
16
+ };
17
+ //# sourceMappingURL=chunk-2HTS7SNO.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/meta.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const DEBUG_PLUGIN = 'dxos.org/plugin/debug';\n\nexport default {\n id: DEBUG_PLUGIN,\n name: 'Debug',\n description: 'DXOS debugging tools.',\n tags: ['experimental'],\n icon: 'ph--bug--regular',\n} satisfies PluginMeta;\n"],
5
+ "mappings": ";AAMO,IAAMA,eAAe;AAE5B,IAAA,eAAe;EACbC,IAAID;EACJE,MAAM;EACNC,aAAa;EACbC,MAAM;IAAC;;EACPC,MAAM;AACR;",
6
+ "names": ["DEBUG_PLUGIN", "id", "name", "description", "tags", "icon"]
7
+ }
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  DEBUG_PLUGIN
3
- } from "./chunk-WEGYHXMB.mjs";
3
+ } from "./chunk-2HTS7SNO.mjs";
4
4
 
5
- // packages/plugins/experimental/plugin-debug/src/types.ts
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-RYK3J66D.mjs.map
24
+ //# sourceMappingURL=chunk-6Y463JSP.mjs.map
@@ -1,27 +1,24 @@
1
- // packages/plugins/experimental/plugin-debug/src/components/DebugPanel.tsx
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";
5
- import { DensityProvider } from "@dxos/react-ui";
6
5
  var DebugPanel = ({ menu, children }) => {
7
6
  const config = useConfig();
8
7
  return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", {
9
8
  className: "flex shrink-0 p-2 space-x-2"
10
- }, /* @__PURE__ */ React.createElement(DensityProvider, {
11
- density: "fine"
12
- }, menu)), /* @__PURE__ */ React.createElement("div", {
9
+ }, menu), /* @__PURE__ */ React.createElement("div", {
13
10
  className: "flex flex-col grow px-2 overflow-hidden"
14
11
  }, /* @__PURE__ */ React.createElement("div", {
15
12
  className: "flex flex-col grow overflow-auto"
16
13
  }, children), config.values?.runtime?.app?.build?.timestamp && /* @__PURE__ */ React.createElement("div", {
17
14
  className: "p-2 text-sm font-mono"
18
- }, config.values?.runtime?.app?.build?.version, " (", formatDistance(new Date(config.values?.runtime?.app?.build?.timestamp), /* @__PURE__ */ new Date(), {
15
+ }, config.values?.runtime?.app?.build?.version, formatDistance(new Date(config.values?.runtime?.app?.build?.timestamp), /* @__PURE__ */ new Date(), {
19
16
  addSuffix: true,
20
17
  includeSeconds: true
21
- }), ")")));
18
+ }))));
22
19
  };
23
20
 
24
21
  export {
25
22
  DebugPanel
26
23
  };
27
- //# sourceMappingURL=chunk-ED5L5YYI.mjs.map
24
+ //# sourceMappingURL=chunk-H3BJHVRD.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/DebugPanel.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { formatDistance } from 'date-fns';\nimport React, { type PropsWithChildren, type ReactNode } from 'react';\n\nimport { useConfig } from '@dxos/react-client';\n\nexport const DebugPanel = ({ menu, children }: PropsWithChildren<{ menu: ReactNode }>) => {\n const config = useConfig();\n return (\n <>\n <div className='flex shrink-0 p-2 space-x-2'>{menu}</div>\n <div className='flex flex-col grow px-2 overflow-hidden'>\n <div className='flex flex-col grow overflow-auto'>{children}</div>\n {config.values?.runtime?.app?.build?.timestamp && (\n <div className='p-2 text-sm font-mono'>\n {config.values?.runtime?.app?.build?.version}\n {formatDistance(new Date(config.values?.runtime?.app?.build?.timestamp), new Date(), {\n addSuffix: true,\n includeSeconds: true,\n })}\n </div>\n )}\n </div>\n </>\n );\n};\n"],
5
+ "mappings": ";AAIA,SAASA,sBAAsB;AAC/B,OAAOC,WAAuD;AAE9D,SAASC,iBAAiB;AAEnB,IAAMC,aAAa,CAAC,EAAEC,MAAMC,SAAQ,MAA0C;AACnF,QAAMC,SAASC,UAAAA;AACf,SACE,sBAAA,cAAA,MAAA,UAAA,MACE,sBAAA,cAACC,OAAAA;IAAIC,WAAU;KAA+BL,IAAAA,GAC9C,sBAAA,cAACI,OAAAA;IAAIC,WAAU;KACb,sBAAA,cAACD,OAAAA;IAAIC,WAAU;KAAoCJ,QAAAA,GAClDC,OAAOI,QAAQC,SAASC,KAAKC,OAAOC,aACnC,sBAAA,cAACN,OAAAA;IAAIC,WAAU;KACZH,OAAOI,QAAQC,SAASC,KAAKC,OAAOE,SACpCC,eAAe,IAAIC,KAAKX,OAAOI,QAAQC,SAASC,KAAKC,OAAOC,SAAAA,GAAY,oBAAIG,KAAAA,GAAQ;IACnFC,WAAW;IACXC,gBAAgB;EAClB,CAAA,CAAA,CAAA,CAAA;AAMZ;",
6
+ "names": ["formatDistance", "React", "useConfig", "DebugPanel", "menu", "children", "config", "useConfig", "div", "className", "values", "runtime", "app", "build", "timestamp", "version", "formatDistance", "Date", "addSuffix", "includeSeconds"]
7
+ }