@dxos/plugin-explorer 0.8.2-main.fbd8ed0 → 0.8.2-staging.42af850

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 (143) hide show
  1. package/dist/lib/browser/ExplorerContainer-BBZ54DJS.mjs +37 -0
  2. package/dist/lib/browser/ExplorerContainer-BBZ54DJS.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-JL7ZGOFE.mjs → chunk-73GQ46YO.mjs} +415 -155
  4. package/dist/lib/{node-esm/chunk-MUHCE377.mjs.map → browser/chunk-73GQ46YO.mjs.map} +4 -4
  5. package/dist/lib/browser/{chunk-HKQSZX7S.mjs → chunk-73YTQHOT.mjs} +3 -3
  6. package/dist/lib/browser/{chunk-HKQSZX7S.mjs.map → chunk-73YTQHOT.mjs.map} +1 -1
  7. package/dist/lib/browser/chunk-M2BGAY6H.mjs +177 -0
  8. package/dist/lib/browser/chunk-M2BGAY6H.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-Z2SDLMQM.mjs → chunk-OBAFAA5V.mjs} +3 -3
  10. package/dist/lib/browser/{chunk-Z2SDLMQM.mjs.map → chunk-OBAFAA5V.mjs.map} +1 -1
  11. package/dist/lib/browser/chunk-SLB2F5AO.mjs +30 -0
  12. package/dist/lib/browser/chunk-SLB2F5AO.mjs.map +7 -0
  13. package/dist/lib/browser/index.mjs +15 -11
  14. package/dist/lib/browser/index.mjs.map +1 -1
  15. package/dist/lib/browser/{intent-resolver-7JF4DU2C.mjs → intent-resolver-FJDVBDE3.mjs} +3 -3
  16. package/dist/lib/browser/meta.json +1 -1
  17. package/dist/lib/browser/meta.mjs +1 -1
  18. package/dist/lib/browser/{react-surface-JLE6GLG6.mjs → react-surface-H3YDMXAQ.mjs} +5 -5
  19. package/dist/lib/browser/types/index.mjs +2 -2
  20. package/dist/lib/node/{ExplorerContainer-4RMWCWRX.cjs → ExplorerContainer-MVP2AM7R.cjs} +24 -16
  21. package/dist/lib/node/ExplorerContainer-MVP2AM7R.cjs.map +7 -0
  22. package/dist/lib/node/chunk-4T4LCT5R.cjs +52 -0
  23. package/dist/lib/node/chunk-4T4LCT5R.cjs.map +7 -0
  24. package/dist/lib/node/{chunk-R4TOGRPE.cjs → chunk-72H5HBTK.cjs} +414 -153
  25. package/dist/lib/node/{chunk-R4TOGRPE.cjs.map → chunk-72H5HBTK.cjs.map} +4 -4
  26. package/dist/lib/node/{chunk-VB3QE6XY.cjs → chunk-BCDVG2CH.cjs} +6 -6
  27. package/dist/lib/node/{chunk-VB3QE6XY.cjs.map → chunk-BCDVG2CH.cjs.map} +1 -1
  28. package/dist/lib/node/{chunk-6R5P3UVS.cjs → chunk-MLRYW4WQ.cjs} +7 -7
  29. package/dist/lib/node/{chunk-6R5P3UVS.cjs.map → chunk-MLRYW4WQ.cjs.map} +1 -1
  30. package/dist/lib/node/chunk-NELWWGBU.cjs +204 -0
  31. package/dist/lib/node/chunk-NELWWGBU.cjs.map +7 -0
  32. package/dist/lib/node/index.cjs +34 -31
  33. package/dist/lib/node/index.cjs.map +1 -1
  34. package/dist/lib/node/{intent-resolver-VDAHQEE7.cjs → intent-resolver-DRT67ZU4.cjs} +8 -8
  35. package/dist/lib/node/meta.cjs +3 -3
  36. package/dist/lib/node/meta.cjs.map +1 -1
  37. package/dist/lib/node/meta.json +1 -1
  38. package/dist/lib/node/{react-surface-F66QYWDR.cjs → react-surface-6ESLSM33.cjs} +11 -11
  39. package/dist/lib/node/types/index.cjs +4 -4
  40. package/dist/lib/node/types/index.cjs.map +1 -1
  41. package/dist/lib/node-esm/ExplorerContainer-APGUQI4M.mjs +38 -0
  42. package/dist/lib/node-esm/ExplorerContainer-APGUQI4M.mjs.map +7 -0
  43. package/dist/lib/node-esm/{chunk-MUHCE377.mjs → chunk-34X2VFQN.mjs} +415 -154
  44. package/dist/lib/{browser/chunk-JL7ZGOFE.mjs.map → node-esm/chunk-34X2VFQN.mjs.map} +4 -4
  45. package/dist/lib/node-esm/{chunk-PUFSCMN4.mjs → chunk-3CMBLK6W.mjs} +3 -3
  46. package/dist/lib/node-esm/{chunk-PUFSCMN4.mjs.map → chunk-3CMBLK6W.mjs.map} +1 -1
  47. package/dist/lib/node-esm/{chunk-QOJSLABX.mjs → chunk-N6VEANUZ.mjs} +3 -3
  48. package/dist/lib/node-esm/{chunk-QOJSLABX.mjs.map → chunk-N6VEANUZ.mjs.map} +1 -1
  49. package/dist/lib/node-esm/chunk-PVII2K2B.mjs +179 -0
  50. package/dist/lib/node-esm/chunk-PVII2K2B.mjs.map +7 -0
  51. package/dist/lib/node-esm/chunk-VSORIAHH.mjs +32 -0
  52. package/dist/lib/node-esm/chunk-VSORIAHH.mjs.map +7 -0
  53. package/dist/lib/node-esm/index.mjs +15 -11
  54. package/dist/lib/node-esm/index.mjs.map +1 -1
  55. package/dist/lib/node-esm/{intent-resolver-XWRVHP6H.mjs → intent-resolver-4RBV644N.mjs} +3 -3
  56. package/dist/lib/node-esm/meta.json +1 -1
  57. package/dist/lib/node-esm/meta.mjs +1 -1
  58. package/dist/lib/node-esm/{react-surface-4ZT5BQP6.mjs → react-surface-ZEVL3FXG.mjs} +5 -5
  59. package/dist/lib/node-esm/types/index.mjs +2 -2
  60. package/dist/types/src/components/ExplorerContainer.d.ts +4 -3
  61. package/dist/types/src/components/ExplorerContainer.d.ts.map +1 -1
  62. package/dist/types/src/components/Graph/D3ForceGraph.d.ts +14 -0
  63. package/dist/types/src/components/Graph/D3ForceGraph.d.ts.map +1 -0
  64. package/dist/types/src/components/Graph/D3ForceGraph.stories.d.ts +6 -0
  65. package/dist/types/src/components/Graph/D3ForceGraph.stories.d.ts.map +1 -0
  66. package/dist/types/src/components/Graph/ForceGraph.d.ts +8 -0
  67. package/dist/types/src/components/Graph/ForceGraph.d.ts.map +1 -0
  68. package/dist/types/src/components/Graph/{Graph.stories.d.ts → ForceGraph.stories.d.ts} +1 -1
  69. package/dist/types/src/components/Graph/ForceGraph.stories.d.ts.map +1 -0
  70. package/dist/types/src/components/Graph/adapter.d.ts +21 -0
  71. package/dist/types/src/components/Graph/adapter.d.ts.map +1 -0
  72. package/dist/types/src/components/Graph/index.d.ts +2 -2
  73. package/dist/types/src/components/Graph/index.d.ts.map +1 -1
  74. package/dist/types/src/components/Graph/testing.d.ts +14 -0
  75. package/dist/types/src/components/Graph/testing.d.ts.map +1 -0
  76. package/dist/types/src/components/Tree/Tree.d.ts.map +1 -1
  77. package/dist/types/src/components/Tree/testing/generator.d.ts +8 -0
  78. package/dist/types/src/components/Tree/testing/generator.d.ts.map +1 -0
  79. package/dist/types/src/components/Tree/testing/index.d.ts +2 -0
  80. package/dist/types/src/components/Tree/testing/index.d.ts.map +1 -0
  81. package/dist/types/src/components/Tree/types/index.d.ts +3 -0
  82. package/dist/types/src/components/Tree/types/index.d.ts.map +1 -0
  83. package/dist/types/src/components/Tree/types/tree.d.ts +83 -0
  84. package/dist/types/src/components/Tree/types/tree.d.ts.map +1 -0
  85. package/dist/types/src/components/Tree/types/tree.test.d.ts +2 -0
  86. package/dist/types/src/components/Tree/types/tree.test.d.ts.map +1 -0
  87. package/dist/types/src/components/Tree/types/types.d.ts +8 -0
  88. package/dist/types/src/components/Tree/types/types.d.ts.map +1 -0
  89. package/dist/types/src/components/index.d.ts +2 -2
  90. package/dist/types/src/hooks/index.d.ts +2 -0
  91. package/dist/types/src/hooks/index.d.ts.map +1 -0
  92. package/dist/types/src/hooks/useGraphModel.d.ts +4 -0
  93. package/dist/types/src/hooks/useGraphModel.d.ts.map +1 -0
  94. package/dist/types/src/index.d.ts +2 -1
  95. package/dist/types/src/index.d.ts.map +1 -1
  96. package/package.json +28 -28
  97. package/src/components/ExplorerContainer.tsx +11 -4
  98. package/src/components/Graph/D3ForceGraph.stories.tsx +64 -0
  99. package/src/components/Graph/D3ForceGraph.tsx +101 -0
  100. package/src/components/Graph/ForceGraph.stories.tsx +64 -0
  101. package/src/components/Graph/{Graph.tsx → ForceGraph.tsx} +19 -26
  102. package/src/components/Graph/adapter.ts +47 -0
  103. package/src/components/Graph/index.ts +2 -3
  104. package/src/components/Graph/testing.ts +57 -0
  105. package/src/components/Tree/Tree.stories.tsx +1 -1
  106. package/src/components/Tree/Tree.tsx +11 -18
  107. package/src/components/Tree/testing/generator.ts +46 -0
  108. package/src/components/Tree/testing/index.ts +5 -0
  109. package/src/components/Tree/types/index.ts +6 -0
  110. package/src/components/Tree/types/tree.test.ts +133 -0
  111. package/src/components/Tree/types/tree.ts +287 -0
  112. package/src/components/Tree/types/types.ts +41 -0
  113. package/src/hooks/index.ts +5 -0
  114. package/src/hooks/useGraphModel.ts +35 -0
  115. package/src/index.ts +2 -2
  116. package/src/meta.ts +2 -2
  117. package/dist/lib/browser/ExplorerContainer-6U4GS62Q.mjs +0 -27
  118. package/dist/lib/browser/ExplorerContainer-6U4GS62Q.mjs.map +0 -7
  119. package/dist/lib/browser/chunk-QRPUL5AH.mjs +0 -206
  120. package/dist/lib/browser/chunk-QRPUL5AH.mjs.map +0 -7
  121. package/dist/lib/node/ExplorerContainer-4RMWCWRX.cjs.map +0 -7
  122. package/dist/lib/node/chunk-4ZUNNUQD.cjs +0 -237
  123. package/dist/lib/node/chunk-4ZUNNUQD.cjs.map +0 -7
  124. package/dist/lib/node-esm/ExplorerContainer-3GOCCL7Q.mjs +0 -28
  125. package/dist/lib/node-esm/ExplorerContainer-3GOCCL7Q.mjs.map +0 -7
  126. package/dist/lib/node-esm/chunk-BJZBPCC3.mjs +0 -208
  127. package/dist/lib/node-esm/chunk-BJZBPCC3.mjs.map +0 -7
  128. package/dist/types/src/components/Graph/Graph.d.ts +0 -8
  129. package/dist/types/src/components/Graph/Graph.d.ts.map +0 -1
  130. package/dist/types/src/components/Graph/Graph.stories.d.ts.map +0 -1
  131. package/dist/types/src/components/Graph/graph-model.d.ts +0 -39
  132. package/dist/types/src/components/Graph/graph-model.d.ts.map +0 -1
  133. package/dist/types/src/components/Tree/types.d.ts +0 -8
  134. package/dist/types/src/components/Tree/types.d.ts.map +0 -1
  135. package/src/components/Graph/Graph.stories.tsx +0 -62
  136. package/src/components/Graph/graph-model.ts +0 -194
  137. package/src/components/Tree/types.ts +0 -40
  138. /package/dist/lib/browser/{intent-resolver-7JF4DU2C.mjs.map → intent-resolver-FJDVBDE3.mjs.map} +0 -0
  139. /package/dist/lib/browser/{react-surface-JLE6GLG6.mjs.map → react-surface-H3YDMXAQ.mjs.map} +0 -0
  140. /package/dist/lib/node/{intent-resolver-VDAHQEE7.cjs.map → intent-resolver-DRT67ZU4.cjs.map} +0 -0
  141. /package/dist/lib/node/{react-surface-F66QYWDR.cjs.map → react-surface-6ESLSM33.cjs.map} +0 -0
  142. /package/dist/lib/node-esm/{intent-resolver-XWRVHP6H.mjs.map → intent-resolver-4RBV644N.mjs.map} +0 -0
  143. /package/dist/lib/node-esm/{react-surface-4ZT5BQP6.mjs.map → react-surface-ZEVL3FXG.mjs.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  EXPLORER_PLUGIN
3
- } from "./chunk-Z2SDLMQM.mjs";
3
+ } from "./chunk-OBAFAA5V.mjs";
4
4
 
5
5
  // packages/plugins/plugin-explorer/src/types/schema.ts
6
6
  import { Schema } from "effect";
@@ -16,7 +16,6 @@ var ViewType = class extends TypedObject({
16
16
 
17
17
  // packages/plugins/plugin-explorer/src/types/types.ts
18
18
  import { Schema as Schema2 } from "effect";
19
- var ExplorerAction;
20
19
  (function(ExplorerAction2) {
21
20
  const EXPLORER_ACTION = `${EXPLORER_PLUGIN}/action`;
22
21
  class Create extends Schema2.TaggedClass()(`${EXPLORER_ACTION}/create`, {
@@ -30,9 +29,10 @@ var ExplorerAction;
30
29
  }
31
30
  ExplorerAction2.Create = Create;
32
31
  })(ExplorerAction || (ExplorerAction = {}));
32
+ var ExplorerAction;
33
33
 
34
34
  export {
35
35
  ViewType,
36
36
  ExplorerAction
37
37
  };
38
- //# sourceMappingURL=chunk-HKQSZX7S.mjs.map
38
+ //# sourceMappingURL=chunk-73YTQHOT.mjs.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/types/schema.ts", "../../../src/types/types.ts"],
4
4
  "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { TypedObject } from '@dxos/echo-schema';\n\n// TODO(burdon): Clashes with sdk/view.\nexport class ViewType extends TypedObject({\n typename: 'dxos.org/type/ExplorerView',\n version: '0.1.0',\n})({\n name: Schema.optional(Schema.String),\n type: Schema.String,\n}) {}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { ViewType } from './schema';\nimport { EXPLORER_PLUGIN } from '../meta';\n\nexport namespace ExplorerAction {\n const EXPLORER_ACTION = `${EXPLORER_PLUGIN}/action`;\n\n export class Create extends Schema.TaggedClass<Create>()(`${EXPLORER_ACTION}/create`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: ViewType,\n }),\n }) {}\n}\n"],
5
- "mappings": ";;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,mBAAmB;AAGrB,IAAMC,WAAN,cAAuBC,YAAY;EACxCC,UAAU;EACVC,SAAS;AACX,CAAA,EAAG;EACDC,MAAMC,OAAOC,SAASD,OAAOE,MAAM;EACnCC,MAAMH,OAAOE;AACf,CAAA,EAAA;AAAI;;;ACXJ,SAASE,UAAAA,eAAc;;UAKNC,iBAAAA;AACf,QAAMC,kBAAkB,GAAGC,eAAAA;EAEpB,MAAMC,eAAeC,QAAOC,YAAW,EAAW,GAAGJ,eAAAA,WAA0B;IACpFK,OAAOF,QAAOG,OAAO;MACnBC,MAAMJ,QAAOK,SAASL,QAAOM,MAAM;IACrC,CAAA;IACAC,QAAQP,QAAOG,OAAO;MACpBK,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;kBAPSV,SAAAA;AAQf,GAXiBH,mBAAAA,iBAAAA,CAAAA,EAAAA;",
5
+ "mappings": ";;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,mBAAmB;AAGrB,IAAMC,WAAN,cAAuBC,YAAY;EACxCC,UAAU;EACVC,SAAS;AACX,CAAA,EAAG;EACDC,MAAMC,OAAOC,SAASD,OAAOE,MAAM;EACnCC,MAAMH,OAAOE;AACf,CAAA,EAAA;AAAI;;;ACXJ,SAASE,UAAAA,eAAc;UAKNC,iBAAAA;AACf,QAAMC,kBAAkB,GAAGC,eAAAA;EAEpB,MAAMC,eAAeC,QAAOC,YAAW,EAAW,GAAGJ,eAAAA,WAA0B;IACpFK,OAAOF,QAAOG,OAAO;MACnBC,MAAMJ,QAAOK,SAASL,QAAOM,MAAM;IACrC,CAAA;IACAC,QAAQP,QAAOG,OAAO;MACpBK,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;kBAPSV,SAAAA;AAQf,GAXiBH,mBAAAA,iBAAAA,CAAAA,EAAAA;;",
6
6
  "names": ["Schema", "TypedObject", "ViewType", "TypedObject", "typename", "version", "name", "Schema", "optional", "String", "type", "Schema", "ExplorerAction", "EXPLORER_ACTION", "EXPLORER_PLUGIN", "Create", "Schema", "TaggedClass", "input", "Struct", "name", "optional", "String", "output", "object", "ViewType"]
7
7
  }
@@ -0,0 +1,177 @@
1
+ // packages/plugins/plugin-explorer/src/components/Graph/D3ForceGraph.tsx
2
+ import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
3
+ import React, { useCallback, useEffect, useMemo, useRef } from "react";
4
+ import { getTypename } from "@dxos/echo-schema";
5
+ import { SelectionModel } from "@dxos/graph";
6
+ import { GraphForceProjector, SVG } from "@dxos/react-ui-graph";
7
+ import { getHashColor } from "@dxos/react-ui-theme";
8
+ import "@dxos/react-ui-graph/styles/graph.css";
9
+ var D3ForceGraph = ({ classNames, model, selection: _selection, grid, ...props }) => {
10
+ var _effect = _useSignals();
11
+ try {
12
+ const context = useRef(null);
13
+ const projector = useMemo(() => {
14
+ if (context.current) {
15
+ return new GraphForceProjector(context.current, {
16
+ attributes: {
17
+ linkForce: (edge) => {
18
+ return edge.data?.object?.active !== false;
19
+ }
20
+ },
21
+ forces: {
22
+ point: {
23
+ strength: 0.01
24
+ }
25
+ }
26
+ });
27
+ }
28
+ }, [
29
+ context.current
30
+ ]);
31
+ const graph = useRef(null);
32
+ const selection = useMemo(() => _selection ?? new SelectionModel(), [
33
+ _selection
34
+ ]);
35
+ useEffect(() => graph.current?.repaint(), [
36
+ selection.selected.value
37
+ ]);
38
+ const handleSelect = useCallback((node) => {
39
+ if (selection.contains(node.id)) {
40
+ selection.remove(node.id);
41
+ } else {
42
+ selection.add(node.id);
43
+ }
44
+ }, [
45
+ selection
46
+ ]);
47
+ return /* @__PURE__ */ React.createElement(SVG.Root, {
48
+ ref: context,
49
+ classNames
50
+ }, /* @__PURE__ */ React.createElement(SVG.Markers, null), grid && /* @__PURE__ */ React.createElement(SVG.Grid, {
51
+ axis: true
52
+ }), /* @__PURE__ */ React.createElement(SVG.Zoom, {
53
+ extent: [
54
+ 1 / 2,
55
+ 2
56
+ ]
57
+ }, /* @__PURE__ */ React.createElement(SVG.Graph, {
58
+ ...props,
59
+ ref: graph,
60
+ model,
61
+ projector,
62
+ labels: {
63
+ text: (node) => {
64
+ return node.data?.data.label ?? node.id;
65
+ }
66
+ },
67
+ attributes: {
68
+ node: (node) => {
69
+ const obj = node.data?.data.object;
70
+ return {
71
+ data: {
72
+ color: getHashColor(obj && getTypename(obj))?.color
73
+ },
74
+ classes: {
75
+ "dx-selected": selection.contains(node.id)
76
+ }
77
+ };
78
+ }
79
+ },
80
+ onSelect: handleSelect
81
+ })));
82
+ } finally {
83
+ _effect.f();
84
+ }
85
+ };
86
+
87
+ // packages/plugins/plugin-explorer/src/components/Graph/ForceGraph.tsx
88
+ import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
89
+ import { forceLink, forceManyBody } from "d3";
90
+ import NativeForceGraph from "force-graph";
91
+ import React2, { useEffect as useEffect2, useRef as useRef2 } from "react";
92
+ import { useResizeDetector } from "react-resize-detector";
93
+ import { filterObjectsSync } from "@dxos/plugin-search";
94
+
95
+ // packages/plugins/plugin-explorer/src/components/Graph/adapter.ts
96
+ var GraphAdapter = class {
97
+ constructor(graph) {
98
+ this.graph = graph;
99
+ this._nodes = [];
100
+ this._links = [];
101
+ this._nodes = graph.nodes.map((node) => ({
102
+ id: node.id,
103
+ type: node.type,
104
+ data: node.data
105
+ }));
106
+ this._links = graph.edges.map((edge) => ({
107
+ type: edge.type,
108
+ source: edge.source,
109
+ target: edge.target,
110
+ data: edge.data
111
+ }));
112
+ }
113
+ get nodes() {
114
+ return this._nodes;
115
+ }
116
+ get links() {
117
+ return this._links;
118
+ }
119
+ };
120
+
121
+ // packages/plugins/plugin-explorer/src/components/Graph/ForceGraph.tsx
122
+ var ForceGraph = ({ model, match }) => {
123
+ var _effect = _useSignals2();
124
+ try {
125
+ const { ref, width, height } = useResizeDetector({
126
+ refreshRate: 200
127
+ });
128
+ const rootRef = useRef2(null);
129
+ const forceGraph = useRef2();
130
+ const filteredRef = useRef2();
131
+ filteredRef.current = filterObjectsSync(model?.objects ?? [], match);
132
+ useEffect2(() => {
133
+ if (rootRef.current) {
134
+ forceGraph.current = new NativeForceGraph(rootRef.current).nodeRelSize(6).nodeLabel((node) => node.type === "schema" ? node.data.typename : node.data.label ?? node.id).nodeAutoColorBy((node) => node.type === "schema" ? "schema" : node.data.typename).linkAutoColorBy((link) => link.type);
135
+ }
136
+ return () => {
137
+ forceGraph.current?.pauseAnimation().graphData({
138
+ nodes: [],
139
+ links: []
140
+ });
141
+ forceGraph.current = void 0;
142
+ };
143
+ }, []);
144
+ useEffect2(() => {
145
+ if (forceGraph.current && width && height && model) {
146
+ forceGraph.current.pauseAnimation().width(width).height(height).onEngineStop(() => {
147
+ handleZoomToFit();
148
+ }).onNodeClick((node) => {
149
+ forceGraph.current?.emitParticle(node);
150
+ }).d3Force("link", forceLink().distance(160).strength(0.5)).d3Force("charge", forceManyBody().strength(-30)).graphData(new GraphAdapter(model)).warmupTicks(100).cooldownTime(1e3).resumeAnimation();
151
+ }
152
+ }, [
153
+ model,
154
+ width,
155
+ height
156
+ ]);
157
+ const handleZoomToFit = () => {
158
+ forceGraph.current?.zoomToFit(400, 40);
159
+ };
160
+ return /* @__PURE__ */ React2.createElement("div", {
161
+ ref,
162
+ className: "relative grow",
163
+ onClick: handleZoomToFit
164
+ }, /* @__PURE__ */ React2.createElement("div", {
165
+ ref: rootRef,
166
+ className: "absolute inset-0"
167
+ }));
168
+ } finally {
169
+ _effect.f();
170
+ }
171
+ };
172
+
173
+ export {
174
+ D3ForceGraph,
175
+ ForceGraph
176
+ };
177
+ //# sourceMappingURL=chunk-M2BGAY6H.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/Graph/D3ForceGraph.tsx", "../../../src/components/Graph/ForceGraph.tsx", "../../../src/components/Graph/adapter.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type FC, useCallback, useEffect, useMemo, useRef } from 'react';\n\nimport { getTypename } from '@dxos/echo-schema';\nimport { SelectionModel } from '@dxos/graph';\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport {\n type GraphController,\n GraphForceProjector,\n type GraphLayoutNode,\n type GraphProps,\n SVG,\n type SVGContext,\n} from '@dxos/react-ui-graph';\nimport { getHashColor } from '@dxos/react-ui-theme';\nimport { type SpaceGraphNode, type SpaceGraphModel, type SpaceGraphEdge } from '@dxos/schema';\n\nimport '@dxos/react-ui-graph/styles/graph.css';\n\nexport type D3ForceGraphProps = ThemedClassName<\n {\n model?: SpaceGraphModel;\n match?: RegExp;\n selection?: SelectionModel;\n grid?: boolean;\n } & Pick<GraphProps, 'drag'>\n>;\n\nexport const D3ForceGraph: FC<D3ForceGraphProps> = ({ classNames, model, selection: _selection, grid, ...props }) => {\n const context = useRef<SVGContext>(null);\n const projector = useMemo<GraphForceProjector | undefined>(() => {\n if (context.current) {\n return new GraphForceProjector(context.current, {\n attributes: {\n linkForce: (edge) => {\n // TODO(burdon): Check type (currently assumes Employee property).\n // Edge shouldn't contribute to force if it's not active.\n return edge.data?.object?.active !== false;\n },\n },\n forces: {\n point: {\n strength: 0.01,\n },\n },\n });\n }\n }, [context.current]);\n\n const graph = useRef<GraphController>(null);\n const selection = useMemo(() => _selection ?? new SelectionModel(), [_selection]);\n useEffect(() => graph.current?.repaint(), [selection.selected.value]);\n\n const handleSelect = useCallback<NonNullable<GraphProps['onSelect']>>(\n (node) => {\n if (selection.contains(node.id)) {\n selection.remove(node.id);\n } else {\n selection.add(node.id);\n }\n },\n [selection],\n );\n\n return (\n <SVG.Root ref={context} classNames={classNames}>\n <SVG.Markers />\n {grid && <SVG.Grid axis />}\n <SVG.Zoom extent={[1 / 2, 2]}>\n <SVG.Graph<SpaceGraphNode, SpaceGraphEdge>\n {...props}\n ref={graph}\n model={model}\n projector={projector}\n labels={{\n text: (node) => {\n return node.data?.data.label ?? node.id;\n },\n }}\n attributes={{\n node: (node: GraphLayoutNode<SpaceGraphNode>) => {\n const obj = node.data?.data.object;\n return {\n data: {\n color: getHashColor(obj && getTypename(obj))?.color,\n },\n classes: {\n 'dx-selected': selection.contains(node.id),\n },\n };\n },\n }}\n onSelect={handleSelect}\n />\n </SVG.Zoom>\n </SVG.Root>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { forceLink, forceManyBody } from 'd3';\nimport NativeForceGraph from 'force-graph';\nimport React, { type FC, useEffect, useRef } from 'react';\nimport { useResizeDetector } from 'react-resize-detector';\n\nimport { filterObjectsSync, type SearchResult } from '@dxos/plugin-search';\nimport { type SpaceGraphModel } from '@dxos/schema';\n\nimport { GraphAdapter } from './adapter';\n\nexport type ForceGraphProps = {\n model?: SpaceGraphModel;\n match?: RegExp;\n};\n\nexport const ForceGraph: FC<ForceGraphProps> = ({ model, match }) => {\n const { ref, width, height } = useResizeDetector({ refreshRate: 200 });\n const rootRef = useRef<HTMLDivElement>(null);\n const forceGraph = useRef<NativeForceGraph>();\n\n const filteredRef = useRef<SearchResult[]>();\n filteredRef.current = filterObjectsSync(model?.objects ?? [], match);\n\n useEffect(() => {\n if (rootRef.current) {\n // https://github.com/vasturiano/force-graph\n // https://github.com/vasturiano/3d-force-graph\n forceGraph.current = new NativeForceGraph(rootRef.current)\n // https://github.com/vasturiano/force-graph?tab=readme-ov-file#node-styling\n .nodeRelSize(6)\n .nodeLabel((node: any) => (node.type === 'schema' ? node.data.typename : node.data.label ?? node.id))\n .nodeAutoColorBy((node: any) => (node.type === 'schema' ? 'schema' : node.data.typename))\n\n // https://github.com/vasturiano/force-graph?tab=readme-ov-file#link-styling\n .linkAutoColorBy((link: any) => link.type);\n }\n\n return () => {\n forceGraph.current?.pauseAnimation().graphData({ nodes: [], links: [] });\n forceGraph.current = undefined;\n };\n }, []);\n\n useEffect(() => {\n if (forceGraph.current && width && height && model) {\n // https://github.com/vasturiano/force-graph?tab=readme-ov-file#container-layout\n forceGraph.current\n .pauseAnimation()\n .width(width)\n .height(height)\n .onEngineStop(() => {\n handleZoomToFit();\n })\n .onNodeClick((node: any) => {\n forceGraph.current?.emitParticle(node);\n })\n\n // https://github.com/vasturiano/force-graph?tab=readme-ov-file#force-engine-d3-force-configuration\n // .d3Force('center', forceCenter().strength(0.9))\n .d3Force('link', forceLink().distance(160).strength(0.5))\n .d3Force('charge', forceManyBody().strength(-30))\n\n .graphData(new GraphAdapter(model))\n .warmupTicks(100)\n .cooldownTime(1_000)\n .resumeAnimation();\n }\n }, [model, width, height]);\n\n const handleZoomToFit = () => {\n forceGraph.current?.zoomToFit(400, 40);\n };\n\n return (\n <div ref={ref} className='relative grow' onClick={handleZoomToFit}>\n <div ref={rootRef} className='absolute inset-0' />\n </div>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Graph } from '@dxos/graph';\n\nexport type GraphNode = {\n id?: string;\n};\n\nexport type GraphLink = {\n source?: string;\n target?: string;\n};\n\nexport type GraphData = {\n nodes: GraphNode[];\n links: GraphLink[];\n};\n\nexport class GraphAdapter implements GraphData {\n private readonly _nodes: GraphNode[] = [];\n private readonly _links: GraphLink[] = [];\n\n constructor(private readonly graph: Graph) {\n this._nodes = graph.nodes.map((node) => ({\n id: node.id,\n type: node.type,\n data: node.data,\n }));\n\n this._links = graph.edges.map((edge) => ({\n type: edge.type,\n source: edge.source,\n target: edge.target,\n data: edge.data,\n }));\n }\n\n get nodes() {\n return this._nodes;\n }\n\n get links() {\n return this._links;\n }\n}\n"],
5
+ "mappings": ";;AAIA,OAAOA,SAAkBC,aAAaC,WAAWC,SAASC,cAAc;AAExE,SAASC,mBAAmB;AAC5B,SAASC,sBAAsB;AAE/B,SAEEC,qBAGAC,WAEK;AACP,SAASC,oBAAoB;AAG7B,OAAO;AAWA,IAAMC,eAAsC,CAAC,EAAEC,YAAYC,OAAOC,WAAWC,YAAYC,MAAM,GAAGC,MAAAA,MAAO;;;AAC9G,UAAMC,UAAUC,OAAmB,IAAA;AACnC,UAAMC,YAAYC,QAAyC,MAAA;AACzD,UAAIH,QAAQI,SAAS;AACnB,eAAO,IAAIC,oBAAoBL,QAAQI,SAAS;UAC9CE,YAAY;YACVC,WAAW,CAACC,SAAAA;AAGV,qBAAOA,KAAKC,MAAMC,QAAQC,WAAW;YACvC;UACF;UACAC,QAAQ;YACNC,OAAO;cACLC,UAAU;YACZ;UACF;QACF,CAAA;MACF;IACF,GAAG;MAACd,QAAQI;KAAQ;AAEpB,UAAMW,QAAQd,OAAwB,IAAA;AACtC,UAAML,YAAYO,QAAQ,MAAMN,cAAc,IAAImB,eAAAA,GAAkB;MAACnB;KAAW;AAChFoB,cAAU,MAAMF,MAAMX,SAASc,QAAAA,GAAW;MAACtB,UAAUuB,SAASC;KAAM;AAEpE,UAAMC,eAAeC,YACnB,CAACC,SAAAA;AACC,UAAI3B,UAAU4B,SAASD,KAAKE,EAAE,GAAG;AAC/B7B,kBAAU8B,OAAOH,KAAKE,EAAE;MAC1B,OAAO;AACL7B,kBAAU+B,IAAIJ,KAAKE,EAAE;MACvB;IACF,GACA;MAAC7B;KAAU;AAGb,WACE,sBAAA,cAACgC,IAAIC,MAAI;MAACC,KAAK9B;MAASN;OACtB,sBAAA,cAACkC,IAAIG,SAAO,IAAA,GACXjC,QAAQ,sBAAA,cAAC8B,IAAII,MAAI;MAACC,MAAAA;QACnB,sBAAA,cAACL,IAAIM,MAAI;MAACC,QAAQ;QAAC,IAAI;QAAG;;OACxB,sBAAA,cAACP,IAAIQ,OAAK;MACP,GAAGrC;MACJ+B,KAAKf;MACLpB;MACAO;MACAmC,QAAQ;QACNC,MAAM,CAACf,SAAAA;AACL,iBAAOA,KAAKd,MAAMA,KAAK8B,SAAShB,KAAKE;QACvC;MACF;MACAnB,YAAY;QACViB,MAAM,CAACA,SAAAA;AACL,gBAAMiB,MAAMjB,KAAKd,MAAMA,KAAKC;AAC5B,iBAAO;YACLD,MAAM;cACJgC,OAAOC,aAAaF,OAAOG,YAAYH,GAAAA,CAAAA,GAAOC;YAChD;YACAG,SAAS;cACP,eAAehD,UAAU4B,SAASD,KAAKE,EAAE;YAC3C;UACF;QACF;MACF;MACAoB,UAAUxB;;;;;AAKpB;;;;AChGA,SAASyB,WAAWC,qBAAqB;AACzC,OAAOC,sBAAsB;AAC7B,OAAOC,UAAkBC,aAAAA,YAAWC,UAAAA,eAAc;AAClD,SAASC,yBAAyB;AAElC,SAASC,yBAA4C;;;ACW9C,IAAMC,eAAN,MAAMA;EAIX,YAA6BC,OAAc;SAAdA,QAAAA;SAHZC,SAAsB,CAAA;SACtBC,SAAsB,CAAA;AAGrC,SAAKD,SAASD,MAAMG,MAAMC,IAAI,CAACC,UAAU;MACvCC,IAAID,KAAKC;MACTC,MAAMF,KAAKE;MACXC,MAAMH,KAAKG;IACb,EAAA;AAEA,SAAKN,SAASF,MAAMS,MAAML,IAAI,CAACM,UAAU;MACvCH,MAAMG,KAAKH;MACXI,QAAQD,KAAKC;MACbC,QAAQF,KAAKE;MACbJ,MAAME,KAAKF;IACb,EAAA;EACF;EAEA,IAAIL,QAAQ;AACV,WAAO,KAAKF;EACd;EAEA,IAAIY,QAAQ;AACV,WAAO,KAAKX;EACd;AACF;;;AD3BO,IAAMY,aAAkC,CAAC,EAAEC,OAAOC,MAAK,MAAE;;;AAC9D,UAAM,EAAEC,KAAKC,OAAOC,OAAM,IAAKC,kBAAkB;MAAEC,aAAa;IAAI,CAAA;AACpE,UAAMC,UAAUC,QAAuB,IAAA;AACvC,UAAMC,aAAaD,QAAAA;AAEnB,UAAME,cAAcF,QAAAA;AACpBE,gBAAYC,UAAUC,kBAAkBZ,OAAOa,WAAW,CAAA,GAAIZ,KAAAA;AAE9Da,IAAAA,WAAU,MAAA;AACR,UAAIP,QAAQI,SAAS;AAGnBF,mBAAWE,UAAU,IAAII,iBAAiBR,QAAQI,OAAO,EAEtDK,YAAY,CAAA,EACZC,UAAU,CAACC,SAAeA,KAAKC,SAAS,WAAWD,KAAKE,KAAKC,WAAWH,KAAKE,KAAKE,SAASJ,KAAKK,EAAE,EAClGC,gBAAgB,CAACN,SAAeA,KAAKC,SAAS,WAAW,WAAWD,KAAKE,KAAKC,QAAQ,EAGtFI,gBAAgB,CAACC,SAAcA,KAAKP,IAAI;MAC7C;AAEA,aAAO,MAAA;AACLV,mBAAWE,SAASgB,eAAAA,EAAiBC,UAAU;UAAEC,OAAO,CAAA;UAAIC,OAAO,CAAA;QAAG,CAAA;AACtErB,mBAAWE,UAAUoB;MACvB;IACF,GAAG,CAAA,CAAE;AAELjB,IAAAA,WAAU,MAAA;AACR,UAAIL,WAAWE,WAAWR,SAASC,UAAUJ,OAAO;AAElDS,mBAAWE,QACRgB,eAAc,EACdxB,MAAMA,KAAAA,EACNC,OAAOA,MAAAA,EACP4B,aAAa,MAAA;AACZC,0BAAAA;QACF,CAAA,EACCC,YAAY,CAAChB,SAAAA;AACZT,qBAAWE,SAASwB,aAAajB,IAAAA;QACnC,CAAA,EAICkB,QAAQ,QAAQC,UAAAA,EAAYC,SAAS,GAAA,EAAKC,SAAS,GAAA,CAAA,EACnDH,QAAQ,UAAUI,cAAAA,EAAgBD,SAAS,GAAC,CAAA,EAE5CX,UAAU,IAAIa,aAAazC,KAAAA,CAAAA,EAC3B0C,YAAY,GAAA,EACZC,aAAa,GAAA,EACbC,gBAAe;MACpB;IACF,GAAG;MAAC5C;MAAOG;MAAOC;KAAO;AAEzB,UAAM6B,kBAAkB,MAAA;AACtBxB,iBAAWE,SAASkC,UAAU,KAAK,EAAA;IACrC;AAEA,WACE,gBAAAC,OAAA,cAACC,OAAAA;MAAI7C;MAAU8C,WAAU;MAAgBC,SAAShB;OAChD,gBAAAa,OAAA,cAACC,OAAAA;MAAI7C,KAAKK;MAASyC,WAAU;;;;;AAGnC;",
6
+ "names": ["React", "useCallback", "useEffect", "useMemo", "useRef", "getTypename", "SelectionModel", "GraphForceProjector", "SVG", "getHashColor", "D3ForceGraph", "classNames", "model", "selection", "_selection", "grid", "props", "context", "useRef", "projector", "useMemo", "current", "GraphForceProjector", "attributes", "linkForce", "edge", "data", "object", "active", "forces", "point", "strength", "graph", "SelectionModel", "useEffect", "repaint", "selected", "value", "handleSelect", "useCallback", "node", "contains", "id", "remove", "add", "SVG", "Root", "ref", "Markers", "Grid", "axis", "Zoom", "extent", "Graph", "labels", "text", "label", "obj", "color", "getHashColor", "getTypename", "classes", "onSelect", "forceLink", "forceManyBody", "NativeForceGraph", "React", "useEffect", "useRef", "useResizeDetector", "filterObjectsSync", "GraphAdapter", "graph", "_nodes", "_links", "nodes", "map", "node", "id", "type", "data", "edges", "edge", "source", "target", "links", "ForceGraph", "model", "match", "ref", "width", "height", "useResizeDetector", "refreshRate", "rootRef", "useRef", "forceGraph", "filteredRef", "current", "filterObjectsSync", "objects", "useEffect", "NativeForceGraph", "nodeRelSize", "nodeLabel", "node", "type", "data", "typename", "label", "id", "nodeAutoColorBy", "linkAutoColorBy", "link", "pauseAnimation", "graphData", "nodes", "links", "undefined", "onEngineStop", "handleZoomToFit", "onNodeClick", "emitParticle", "d3Force", "forceLink", "distance", "strength", "forceManyBody", "GraphAdapter", "warmupTicks", "cooldownTime", "resumeAnimation", "zoomToFit", "React", "div", "className", "onClick"]
7
+ }
@@ -5,9 +5,9 @@ var meta = {
5
5
  name: "Explorer",
6
6
  description: "Install this plugin to view a hypergraph of all objects inside of your Space.",
7
7
  icon: "ph--graph--regular",
8
- source: "https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-explorer",
8
+ source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-explorer",
9
9
  tags: [
10
- "experimental"
10
+ "labs"
11
11
  ],
12
12
  screenshots: [
13
13
  "https://dxos.network/plugin-details-explorer-dark.png"
@@ -18,4 +18,4 @@ export {
18
18
  EXPLORER_PLUGIN,
19
19
  meta
20
20
  };
21
- //# sourceMappingURL=chunk-Z2SDLMQM.mjs.map
21
+ //# sourceMappingURL=chunk-OBAFAA5V.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
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 EXPLORER_PLUGIN = 'dxos.org/plugin/explorer';\n\nexport const meta: PluginMeta = {\n id: EXPLORER_PLUGIN,\n name: 'Explorer',\n description: 'Install this plugin to view a hypergraph of all objects inside of your Space.',\n icon: 'ph--graph--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-explorer',\n tags: ['experimental'],\n screenshots: ['https://dxos.network/plugin-details-explorer-dark.png'],\n};\n"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const EXPLORER_PLUGIN = 'dxos.org/plugin/explorer';\n\nexport const meta: PluginMeta = {\n id: EXPLORER_PLUGIN,\n name: 'Explorer',\n description: 'Install this plugin to view a hypergraph of all objects inside of your Space.',\n icon: 'ph--graph--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-explorer',\n tags: ['labs'],\n screenshots: ['https://dxos.network/plugin-details-explorer-dark.png'],\n};\n"],
5
5
  "mappings": ";AAMO,IAAMA,kBAAkB;AAExB,IAAMC,OAAmB;EAC9BC,IAAIF;EACJG,MAAM;EACNC,aAAa;EACbC,MAAM;EACNC,QAAQ;EACRC,MAAM;IAAC;;EACPC,aAAa;IAAC;;AAChB;",
6
6
  "names": ["EXPLORER_PLUGIN", "meta", "id", "name", "description", "icon", "source", "tags", "screenshots"]
7
7
  }
@@ -0,0 +1,30 @@
1
+ // packages/plugins/plugin-explorer/src/hooks/useGraphModel.ts
2
+ import { useEffect, useState } from "react";
3
+ import { SpaceGraphModel } from "@dxos/schema";
4
+ var useGraphModel = (space, filter, options) => {
5
+ const [model, setModel] = useState(void 0);
6
+ useEffect(() => {
7
+ if (!space) {
8
+ void model?.close();
9
+ setModel(void 0);
10
+ return;
11
+ }
12
+ if (!model) {
13
+ const model2 = new SpaceGraphModel().setFilter(filter).setOptions(options);
14
+ void model2.open(space);
15
+ setModel(model2);
16
+ } else {
17
+ model.setFilter(filter).setOptions(options);
18
+ }
19
+ }, [
20
+ space,
21
+ filter,
22
+ options
23
+ ]);
24
+ return model;
25
+ };
26
+
27
+ export {
28
+ useGraphModel
29
+ };
30
+ //# sourceMappingURL=chunk-SLB2F5AO.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/useGraphModel.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\nimport { type Filter, type Space } from '@dxos/client/echo';\nimport { SpaceGraphModel, type SpaceGraphModelOptions } from '@dxos/schema';\n\n// TODO(burdon): Factor out.\nexport const useGraphModel = (\n space: Space | undefined,\n filter?: Filter.Any | undefined,\n options?: SpaceGraphModelOptions,\n): SpaceGraphModel | undefined => {\n const [model, setModel] = useState<SpaceGraphModel | undefined>(undefined);\n useEffect(() => {\n if (!space) {\n void model?.close();\n setModel(undefined);\n return;\n }\n\n // TODO(burdon): Does this need to be a dependency?\n if (!model) {\n const model = new SpaceGraphModel().setFilter(filter).setOptions(options);\n void model.open(space);\n setModel(model);\n } else {\n model.setFilter(filter).setOptions(options);\n }\n }, [space, filter, options]);\n\n return model;\n};\n"],
5
+ "mappings": ";AAIA,SAASA,WAAWC,gBAAgB;AAGpC,SAASC,uBAAoD;AAGtD,IAAMC,gBAAgB,CAC3BC,OACAC,QACAC,YAAAA;AAEA,QAAM,CAACC,OAAOC,QAAAA,IAAYC,SAAsCC,MAAAA;AAChEC,YAAU,MAAA;AACR,QAAI,CAACP,OAAO;AACV,WAAKG,OAAOK,MAAAA;AACZJ,eAASE,MAAAA;AACT;IACF;AAGA,QAAI,CAACH,OAAO;AACV,YAAMA,SAAQ,IAAIM,gBAAAA,EAAkBC,UAAUT,MAAAA,EAAQU,WAAWT,OAAAA;AACjE,WAAKC,OAAMS,KAAKZ,KAAAA;AAChBI,eAASD,MAAAA;IACX,OAAO;AACLA,YAAMO,UAAUT,MAAAA,EAAQU,WAAWT,OAAAA;IACrC;EACF,GAAG;IAACF;IAAOC;IAAQC;GAAQ;AAE3B,SAAOC;AACT;",
6
+ "names": ["useEffect", "useState", "SpaceGraphModel", "useGraphModel", "space", "filter", "options", "model", "setModel", "useState", "undefined", "useEffect", "close", "SpaceGraphModel", "setFilter", "setOptions", "open"]
7
+ }
@@ -1,22 +1,25 @@
1
+ import {
2
+ useGraphModel
3
+ } from "./chunk-SLB2F5AO.mjs";
1
4
  import {
2
5
  Chart,
3
6
  ExplorerContainer,
4
7
  Globe,
5
8
  Tree,
6
9
  defaultTreeLayoutSlots
7
- } from "./chunk-JL7ZGOFE.mjs";
10
+ } from "./chunk-73GQ46YO.mjs";
8
11
  import {
9
- Graph,
10
- SpaceGraphModel
11
- } from "./chunk-QRPUL5AH.mjs";
12
+ D3ForceGraph,
13
+ ForceGraph
14
+ } from "./chunk-M2BGAY6H.mjs";
12
15
  import {
13
16
  ExplorerAction,
14
17
  ViewType
15
- } from "./chunk-HKQSZX7S.mjs";
18
+ } from "./chunk-73YTQHOT.mjs";
16
19
  import {
17
20
  EXPLORER_PLUGIN,
18
21
  meta
19
- } from "./chunk-Z2SDLMQM.mjs";
22
+ } from "./chunk-OBAFAA5V.mjs";
20
23
 
21
24
  // packages/plugins/plugin-explorer/src/ExplorerPlugin.tsx
22
25
  import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from "@dxos/app-framework";
@@ -26,8 +29,8 @@ import { defineObjectForm } from "@dxos/plugin-space/types";
26
29
 
27
30
  // packages/plugins/plugin-explorer/src/capabilities/index.ts
28
31
  import { lazy } from "@dxos/app-framework";
29
- var IntentResolver = lazy(() => import("./intent-resolver-7JF4DU2C.mjs"));
30
- var ReactSurface = lazy(() => import("./react-surface-JLE6GLG6.mjs"));
32
+ var IntentResolver = lazy(() => import("./intent-resolver-FJDVBDE3.mjs"));
33
+ var ReactSurface = lazy(() => import("./react-surface-H3YDMXAQ.mjs"));
31
34
 
32
35
  // packages/plugins/plugin-explorer/src/translations.ts
33
36
  var translations_default = [
@@ -90,14 +93,15 @@ var ExplorerPlugin = () => definePlugin(meta, [
90
93
  ]);
91
94
  export {
92
95
  Chart,
96
+ D3ForceGraph,
93
97
  EXPLORER_PLUGIN,
94
98
  ExplorerContainer,
95
99
  ExplorerPlugin,
100
+ ForceGraph,
96
101
  Globe,
97
- Graph,
98
- SpaceGraphModel,
99
102
  Tree,
100
103
  defaultTreeLayoutSlots,
101
- meta
104
+ meta,
105
+ useGraphModel
102
106
  };
103
107
  //# sourceMappingURL=index.mjs.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/ExplorerPlugin.tsx", "../../../src/capabilities/index.ts", "../../../src/translations.ts"],
4
4
  "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\n\nimport { IntentResolver, ReactSurface } from './capabilities';\nimport { meta } from './meta';\nimport translations from './translations';\nimport { ViewType, ExplorerAction } from './types';\n\nexport const ExplorerPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: ViewType.typename,\n metadata: {\n icon: 'ph--graph--regular',\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: ViewType,\n getIntent: () => createIntent(ExplorerAction.Create),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [ViewType]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n ]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { EXPLORER_PLUGIN } from './meta';\nimport { ViewType } from './types';\n\nexport default [\n {\n 'en-US': {\n [ViewType.typename]: {\n 'typename label': 'Explorer',\n 'object name placeholder': 'New explorer',\n },\n [EXPLORER_PLUGIN]: {\n 'plugin name': 'Explorer',\n 'object title label': 'Title',\n },\n },\n },\n];\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;AAIA,SAASA,cAAcC,aAAaC,cAAcC,cAAcC,cAAcC,cAAc;AAC5F,SAASC,oBAAoBC,oBAAoB;AACjD,SAASC,yBAAyB;AAClC,SAASC,wBAAwB;;;ACHjC,SAASC,YAAY;AAEd,IAAMC,iBAAiBC,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMC,eAAeD,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ACA9C,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACE,SAASC,QAAQ,GAAG;QACnB,kBAAkB;QAClB,2BAA2B;MAC7B;MACA,CAACC,eAAAA,GAAkB;QACjB,eAAe;QACf,sBAAsB;MACxB;IACF;EACF;;;;AFLK,IAAMC,iBAAiB,MAC5BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAcC,oBAAAA;EACzD,CAAA;EACAT,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOO;IACpBL,UAAU,MACRC,YAAYC,aAAaI,UAAU;MACjCV,IAAIW,SAASC;MACbC,UAAU;QACRC,MAAM;MACR;IACF,CAAA;EACJ,CAAA;EACAf,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAac,aAAaC;IAC1BZ,UAAU,MACRC,YACEY,kBAAkBC,YAClBC,iBAAiB;MACfC,cAAcT;MACdU,WAAW,MAAMC,aAAaC,eAAeC,MAAM;IACrD,CAAA,CAAA;EAEN,CAAA;EACAzB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAac,aAAaC;IAC1BZ,UAAU,MAAMC,YAAYoB,mBAAmBC,QAAQ;MAACf;KAAS;EACnE,CAAA;EACAZ,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOyB;IACpBvB,UAAUwB;EACZ,CAAA;EACA7B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO2B;IACpBzB,UAAU0B;EACZ,CAAA;CACD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAASA,cAAcC,aAAaC,cAAcC,cAAcC,cAAcC,cAAc;AAC5F,SAASC,oBAAoBC,oBAAoB;AACjD,SAASC,yBAAyB;AAClC,SAASC,wBAAwB;;;ACHjC,SAASC,YAAY;AAEd,IAAMC,iBAAiBC,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMC,eAAeD,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ACA9C,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACE,SAASC,QAAQ,GAAG;QACnB,kBAAkB;QAClB,2BAA2B;MAC7B;MACA,CAACC,eAAAA,GAAkB;QACjB,eAAe;QACf,sBAAsB;MACxB;IACF;EACF;;;;AFLK,IAAMC,iBAAiB,MAC5BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAcC,oBAAAA;EACzD,CAAA;EACAT,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOO;IACpBL,UAAU,MACRC,YAAYC,aAAaI,UAAU;MACjCV,IAAIW,SAASC;MACbC,UAAU;QACRC,MAAM;MACR;IACF,CAAA;EACJ,CAAA;EACAf,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAac,aAAaC;IAC1BZ,UAAU,MACRC,YACEY,kBAAkBC,YAClBC,iBAAiB;MACfC,cAAcT;MACdU,WAAW,MAAMC,aAAaC,eAAeC,MAAM;IACrD,CAAA,CAAA;EAEN,CAAA;EACAzB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAac,aAAaC;IAC1BZ,UAAU,MAAMC,YAAYoB,mBAAmBC,QAAQ;MAACf;KAAS;EACnE,CAAA;EACAZ,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOyB;IACpBvB,UAAUwB;EACZ,CAAA;EACA7B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO2B;IACpBzB,UAAU0B;EACZ,CAAA;CACD;",
6
6
  "names": ["Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "ClientCapabilities", "ClientEvents", "SpaceCapabilities", "defineObjectForm", "lazy", "IntentResolver", "lazy", "ReactSurface", "ViewType", "typename", "EXPLORER_PLUGIN", "ExplorerPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "SetupMetadata", "Metadata", "ViewType", "typename", "metadata", "icon", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "createIntent", "ExplorerAction", "Create", "ClientCapabilities", "Schema", "SetupReactSurface", "ReactSurface", "SetupIntentResolver", "IntentResolver"]
7
7
  }
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  ExplorerAction,
3
3
  ViewType
4
- } from "./chunk-HKQSZX7S.mjs";
5
- import "./chunk-Z2SDLMQM.mjs";
4
+ } from "./chunk-73YTQHOT.mjs";
5
+ import "./chunk-OBAFAA5V.mjs";
6
6
 
7
7
  // packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts
8
8
  import { contributes, Capabilities, createResolver } from "@dxos/app-framework";
@@ -21,4 +21,4 @@ var intent_resolver_default = () => contributes(Capabilities.IntentResolver, cre
21
21
  export {
22
22
  intent_resolver_default as default
23
23
  };
24
- //# sourceMappingURL=intent-resolver-7JF4DU2C.mjs.map
24
+ //# sourceMappingURL=intent-resolver-FJDVBDE3.mjs.map
@@ -1 +1 @@
1
- {"inputs":{"packages/plugins/plugin-explorer/src/components/plot.ts":{"bytes":1452,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Chart/Chart.tsx":{"bytes":4922,"imports":[{"path":"@observablehq/plot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/plot.ts","kind":"import-statement","original":"../plot"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Chart/index.ts":{"bytes":514,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Chart/Chart.tsx","kind":"import-statement","original":"./Chart"}],"format":"esm"},"packages/plugins/plugin-explorer/data/countries-110m.js":{"bytes":187226,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Globe/Globe.tsx":{"bytes":7510,"imports":[{"path":"@observablehq/plot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"topojson-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/data/countries-110m.js","kind":"import-statement","original":"../../../data/countries-110m.js"},{"path":"packages/plugins/plugin-explorer/src/components/plot.ts","kind":"import-statement","original":"../plot"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Globe/index.ts":{"bytes":514,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Globe/Globe.tsx","kind":"import-statement","original":"./Globe"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Graph/graph-model.ts":{"bytes":22142,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/gem-spore","kind":"import-statement","external":true},{"path":"@dxos/log","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}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Graph/Graph.tsx":{"bytes":9918,"imports":[{"path":"d3","kind":"import-statement","external":true},{"path":"force-graph","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/Graph/graph-model.ts","kind":"import-statement","original":"./graph-model"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Graph/index.ts":{"bytes":617,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Graph/graph-model.ts","kind":"import-statement","original":"./graph-model"},{"path":"packages/plugins/plugin-explorer/src/components/Graph/Graph.tsx","kind":"import-statement","original":"./Graph"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/layout/HierarchicalEdgeBundling.ts":{"bytes":17704,"imports":[{"path":"d3","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/layout/RadialTree.ts":{"bytes":8806,"imports":[{"path":"d3","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/layout/TidyTree.ts":{"bytes":9328,"imports":[{"path":"d3","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/layout/index.ts":{"bytes":1143,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Tree/layout/HierarchicalEdgeBundling.ts","kind":"import-statement","original":"./HierarchicalEdgeBundling"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/layout/RadialTree.ts","kind":"import-statement","original":"./RadialTree"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/layout/TidyTree.ts","kind":"import-statement","original":"./TidyTree"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/types.ts":{"bytes":3854,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/Tree.tsx":{"bytes":10127,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/gem-core","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/Tree/layout/index.ts","kind":"import-statement","original":"./layout"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/plugins/plugin-explorer/src/components/Graph/index.ts","kind":"import-statement","original":"../Graph"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/index.ts":{"bytes":512,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Tree/Tree.tsx","kind":"import-statement","original":"./Tree"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/ExplorerContainer.tsx":{"bytes":2730,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/Graph/index.ts","kind":"import-statement","original":"./Graph"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/index.ts":{"bytes":1150,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/Chart/index.ts","kind":"import-statement","original":"./Chart"},{"path":"packages/plugins/plugin-explorer/src/components/Globe/index.ts","kind":"import-statement","original":"./Globe"},{"path":"packages/plugins/plugin-explorer/src/components/Graph/index.ts","kind":"import-statement","original":"./Graph"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/index.ts","kind":"import-statement","original":"./Tree"},{"path":"packages/plugins/plugin-explorer/src/components/ExplorerContainer.tsx","kind":"dynamic-import","original":"./ExplorerContainer"}],"format":"esm"},"packages/plugins/plugin-explorer/src/types/schema.ts":{"bytes":1560,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/meta.ts":{"bytes":1971,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/types/types.ts":{"bytes":2316,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/types/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-explorer/src/types/index.ts":{"bytes":589,"imports":[{"path":"packages/plugins/plugin-explorer/src/types/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/plugins/plugin-explorer/src/types/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts":{"bytes":2222,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/capabilities/react-surface.tsx":{"bytes":2957,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-explorer/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/capabilities/index.ts":{"bytes":1083,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-explorer/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"packages/plugins/plugin-explorer/src/translations.ts":{"bytes":1740,"imports":[{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-explorer/src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/ExplorerPlugin.tsx":{"bytes":7518,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","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":"packages/plugins/plugin-explorer/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-explorer/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-explorer/src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/index.ts":{"bytes":785,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/plugins/plugin-explorer/src/ExplorerPlugin.tsx","kind":"import-statement","original":"./ExplorerPlugin"},{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-explorer/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4787},"packages/plugins/plugin-explorer/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-JL7ZGOFE.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-QRPUL5AH.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-HKQSZX7S.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-Z2SDLMQM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","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/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/intent-resolver-7JF4DU2C.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/react-surface-JLE6GLG6.mjs","kind":"dynamic-import"}],"exports":["Chart","EXPLORER_PLUGIN","ExplorerContainer","ExplorerPlugin","Globe","Graph","SpaceGraphModel","Tree","defaultTreeLayoutSlots","meta"],"entryPoint":"packages/plugins/plugin-explorer/src/index.ts","inputs":{"packages/plugins/plugin-explorer/src/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/ExplorerPlugin.tsx":{"bytesInOutput":1546},"packages/plugins/plugin-explorer/src/capabilities/index.ts":{"bytesInOutput":190},"packages/plugins/plugin-explorer/src/translations.ts":{"bytesInOutput":295}},"bytes":2777},"packages/plugins/plugin-explorer/dist/lib/browser/meta.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-explorer/dist/lib/browser/meta.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-Z2SDLMQM.mjs","kind":"import-statement"}],"exports":["EXPLORER_PLUGIN","meta"],"entryPoint":"packages/plugins/plugin-explorer/src/meta.ts","inputs":{},"bytes":138},"packages/plugins/plugin-explorer/dist/lib/browser/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-explorer/dist/lib/browser/types/index.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-HKQSZX7S.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-Z2SDLMQM.mjs","kind":"import-statement"}],"exports":["ExplorerAction","ViewType"],"entryPoint":"packages/plugins/plugin-explorer/src/types/index.ts","inputs":{},"bytes":178},"packages/plugins/plugin-explorer/dist/lib/browser/ExplorerContainer-6U4GS62Q.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1382},"packages/plugins/plugin-explorer/dist/lib/browser/ExplorerContainer-6U4GS62Q.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-QRPUL5AH.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-explorer/src/components/ExplorerContainer.tsx","inputs":{"packages/plugins/plugin-explorer/src/components/ExplorerContainer.tsx":{"bytesInOutput":590}},"bytes":819},"packages/plugins/plugin-explorer/dist/lib/browser/intent-resolver-7JF4DU2C.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1081},"packages/plugins/plugin-explorer/dist/lib/browser/intent-resolver-7JF4DU2C.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-HKQSZX7S.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-Z2SDLMQM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts":{"bytesInOutput":377}},"bytes":653},"packages/plugins/plugin-explorer/dist/lib/browser/react-surface-JLE6GLG6.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1433},"packages/plugins/plugin-explorer/dist/lib/browser/react-surface-JLE6GLG6.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-JL7ZGOFE.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-QRPUL5AH.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-HKQSZX7S.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-Z2SDLMQM.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-explorer/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-explorer/src/capabilities/react-surface.tsx":{"bytesInOutput":517}},"bytes":888},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-JL7ZGOFE.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":475787},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-JL7ZGOFE.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-QRPUL5AH.mjs","kind":"import-statement"},{"path":"@observablehq/plot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@observablehq/plot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"topojson-client","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/gem-core","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"d3","kind":"import-statement","external":true},{"path":"d3","kind":"import-statement","external":true},{"path":"d3","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/ExplorerContainer-6U4GS62Q.mjs","kind":"dynamic-import"}],"exports":["Chart","ExplorerContainer","Globe","Tree","defaultTreeLayoutSlots"],"inputs":{"packages/plugins/plugin-explorer/src/components/Chart/Chart.tsx":{"bytesInOutput":1031},"packages/plugins/plugin-explorer/src/components/plot.ts":{"bytesInOutput":133},"packages/plugins/plugin-explorer/src/components/Globe/Globe.tsx":{"bytesInOutput":1707},"packages/plugins/plugin-explorer/data/countries-110m.js":{"bytesInOutput":188376},"packages/plugins/plugin-explorer/src/components/Tree/Tree.tsx":{"bytesInOutput":2078},"packages/plugins/plugin-explorer/src/components/Tree/layout/HierarchicalEdgeBundling.ts":{"bytesInOutput":2167},"packages/plugins/plugin-explorer/src/components/Tree/layout/RadialTree.ts":{"bytesInOutput":1355},"packages/plugins/plugin-explorer/src/components/Tree/layout/TidyTree.ts":{"bytesInOutput":1596},"packages/plugins/plugin-explorer/src/components/Tree/types.ts":{"bytesInOutput":699},"packages/plugins/plugin-explorer/src/components/index.ts":{"bytesInOutput":110},"packages/plugins/plugin-explorer/src/components/Chart/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/components/Globe/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/components/Tree/index.ts":{"bytesInOutput":0}},"bytes":200336},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-QRPUL5AH.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":15436},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-QRPUL5AH.mjs":{"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/gem-spore","kind":"import-statement","external":true},{"path":"@dxos/log","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":"d3","kind":"import-statement","external":true},{"path":"force-graph","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["Graph","SpaceGraphModel"],"inputs":{"packages/plugins/plugin-explorer/src/components/Graph/graph-model.ts":{"bytesInOutput":4902},"packages/plugins/plugin-explorer/src/components/Graph/Graph.tsx":{"bytesInOutput":2042},"packages/plugins/plugin-explorer/src/components/Graph/index.ts":{"bytesInOutput":0}},"bytes":7168},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-HKQSZX7S.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1805},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-HKQSZX7S.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-Z2SDLMQM.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true}],"exports":["ExplorerAction","ViewType"],"inputs":{"packages/plugins/plugin-explorer/src/types/schema.ts":{"bytesInOutput":261},"packages/plugins/plugin-explorer/src/types/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/types/types.ts":{"bytesInOutput":455}},"bytes":973},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-Z2SDLMQM.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":917},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-Z2SDLMQM.mjs":{"imports":[],"exports":["EXPLORER_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-explorer/src/meta.ts":{"bytesInOutput":448}},"bytes":579}}}
1
+ {"inputs":{"packages/plugins/plugin-explorer/src/components/plot.ts":{"bytes":1420,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Chart/Chart.tsx":{"bytes":5152,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@observablehq/plot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/plot.ts","kind":"import-statement","original":"../plot"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Chart/index.ts":{"bytes":482,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Chart/Chart.tsx","kind":"import-statement","original":"./Chart"}],"format":"esm"},"packages/plugins/plugin-explorer/data/countries-110m.js":{"bytes":187226,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Globe/Globe.tsx":{"bytes":7796,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@observablehq/plot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"topojson-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/data/countries-110m.js","kind":"import-statement","original":"../../../data/countries-110m.js"},{"path":"packages/plugins/plugin-explorer/src/components/plot.ts","kind":"import-statement","original":"../plot"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Globe/index.ts":{"bytes":482,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Globe/Globe.tsx","kind":"import-statement","original":"./Globe"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Graph/D3ForceGraph.tsx":{"bytes":10409,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-graph/styles/graph.css","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Graph/adapter.ts":{"bytes":3071,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Graph/ForceGraph.tsx":{"bytes":10284,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"d3","kind":"import-statement","external":true},{"path":"force-graph","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/Graph/adapter.ts","kind":"import-statement","original":"./adapter"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Graph/index.ts":{"bytes":595,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Graph/D3ForceGraph.tsx","kind":"import-statement","original":"./D3ForceGraph"},{"path":"packages/plugins/plugin-explorer/src/components/Graph/ForceGraph.tsx","kind":"import-statement","original":"./ForceGraph"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/layout/HierarchicalEdgeBundling.ts":{"bytes":17492,"imports":[{"path":"d3","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/layout/RadialTree.ts":{"bytes":8718,"imports":[{"path":"d3","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/layout/TidyTree.ts":{"bytes":9220,"imports":[{"path":"d3","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/layout/index.ts":{"bytes":1107,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Tree/layout/HierarchicalEdgeBundling.ts","kind":"import-statement","original":"./HierarchicalEdgeBundling"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/layout/RadialTree.ts","kind":"import-statement","original":"./RadialTree"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/layout/TidyTree.ts","kind":"import-statement","original":"./TidyTree"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/types/tree.ts":{"bytes":26149,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/types/types.ts":{"bytes":3316,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/types/index.ts":{"bytes":567,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Tree/types/tree.ts","kind":"import-statement","original":"./tree"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/types/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/Tree.tsx":{"bytes":9679,"imports":[{"path":"@preact-signals/safe-react/tracking","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-graph","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/Tree/layout/index.ts","kind":"import-statement","original":"./layout"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/Tree/index.ts":{"bytes":480,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/Tree/Tree.tsx","kind":"import-statement","original":"./Tree"}],"format":"esm"},"packages/plugins/plugin-explorer/src/hooks/useGraphModel.ts":{"bytes":3269,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/hooks/index.ts":{"bytes":495,"imports":[{"path":"packages/plugins/plugin-explorer/src/hooks/useGraphModel.ts","kind":"import-statement","original":"./useGraphModel"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/ExplorerContainer.tsx":{"bytes":3342,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/Graph/index.ts","kind":"import-statement","original":"./Graph"},{"path":"packages/plugins/plugin-explorer/src/hooks/index.ts","kind":"import-statement","original":"../hooks"}],"format":"esm"},"packages/plugins/plugin-explorer/src/components/index.ts":{"bytes":1110,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/Chart/index.ts","kind":"import-statement","original":"./Chart"},{"path":"packages/plugins/plugin-explorer/src/components/Globe/index.ts","kind":"import-statement","original":"./Globe"},{"path":"packages/plugins/plugin-explorer/src/components/Graph/index.ts","kind":"import-statement","original":"./Graph"},{"path":"packages/plugins/plugin-explorer/src/components/Tree/index.ts","kind":"import-statement","original":"./Tree"},{"path":"packages/plugins/plugin-explorer/src/components/ExplorerContainer.tsx","kind":"dynamic-import","original":"./ExplorerContainer"}],"format":"esm"},"packages/plugins/plugin-explorer/src/meta.ts":{"bytes":1874,"imports":[],"format":"esm"},"packages/plugins/plugin-explorer/src/types/schema.ts":{"bytes":1516,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-explorer/src/types/types.ts":{"bytes":2252,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/types/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-explorer/src/types/index.ts":{"bytes":557,"imports":[{"path":"packages/plugins/plugin-explorer/src/types/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/plugins/plugin-explorer/src/types/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts":{"bytes":2174,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/capabilities/react-surface.tsx":{"bytes":2897,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-explorer/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/capabilities/index.ts":{"bytes":1051,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-explorer/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"packages/plugins/plugin-explorer/src/translations.ts":{"bytes":1688,"imports":[{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-explorer/src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/ExplorerPlugin.tsx":{"bytes":7382,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","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":"packages/plugins/plugin-explorer/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-explorer/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-explorer/src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-explorer/src/index.ts":{"bytes":745,"imports":[{"path":"packages/plugins/plugin-explorer/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/plugins/plugin-explorer/src/hooks/index.ts","kind":"import-statement","original":"./hooks"},{"path":"packages/plugins/plugin-explorer/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-explorer/src/ExplorerPlugin.tsx","kind":"import-statement","original":"./ExplorerPlugin"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-explorer/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4790},"packages/plugins/plugin-explorer/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-SLB2F5AO.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73GQ46YO.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-M2BGAY6H.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73YTQHOT.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-OBAFAA5V.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","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/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/intent-resolver-FJDVBDE3.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/react-surface-H3YDMXAQ.mjs","kind":"dynamic-import"}],"exports":["Chart","D3ForceGraph","EXPLORER_PLUGIN","ExplorerContainer","ExplorerPlugin","ForceGraph","Globe","Tree","defaultTreeLayoutSlots","meta","useGraphModel"],"entryPoint":"packages/plugins/plugin-explorer/src/index.ts","inputs":{"packages/plugins/plugin-explorer/src/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/ExplorerPlugin.tsx":{"bytesInOutput":1546},"packages/plugins/plugin-explorer/src/capabilities/index.ts":{"bytesInOutput":190},"packages/plugins/plugin-explorer/src/translations.ts":{"bytesInOutput":295}},"bytes":2854},"packages/plugins/plugin-explorer/dist/lib/browser/meta.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-explorer/dist/lib/browser/meta.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-OBAFAA5V.mjs","kind":"import-statement"}],"exports":["EXPLORER_PLUGIN","meta"],"entryPoint":"packages/plugins/plugin-explorer/src/meta.ts","inputs":{},"bytes":138},"packages/plugins/plugin-explorer/dist/lib/browser/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-explorer/dist/lib/browser/types/index.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73YTQHOT.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-OBAFAA5V.mjs","kind":"import-statement"}],"exports":["ExplorerAction","ViewType"],"entryPoint":"packages/plugins/plugin-explorer/src/types/index.ts","inputs":{},"bytes":178},"packages/plugins/plugin-explorer/dist/lib/browser/ExplorerContainer-BBZ54DJS.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1631},"packages/plugins/plugin-explorer/dist/lib/browser/ExplorerContainer-BBZ54DJS.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-SLB2F5AO.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-M2BGAY6H.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-explorer/src/components/ExplorerContainer.tsx","inputs":{"packages/plugins/plugin-explorer/src/components/ExplorerContainer.tsx":{"bytesInOutput":822}},"bytes":1112},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-SLB2F5AO.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1781},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-SLB2F5AO.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["useGraphModel"],"inputs":{"packages/plugins/plugin-explorer/src/hooks/useGraphModel.ts":{"bytesInOutput":590},"packages/plugins/plugin-explorer/src/hooks/index.ts":{"bytesInOutput":0}},"bytes":726},"packages/plugins/plugin-explorer/dist/lib/browser/intent-resolver-FJDVBDE3.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1081},"packages/plugins/plugin-explorer/dist/lib/browser/intent-resolver-FJDVBDE3.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73YTQHOT.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-OBAFAA5V.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-explorer/src/capabilities/intent-resolver.ts":{"bytesInOutput":377}},"bytes":653},"packages/plugins/plugin-explorer/dist/lib/browser/react-surface-H3YDMXAQ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1433},"packages/plugins/plugin-explorer/dist/lib/browser/react-surface-H3YDMXAQ.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73GQ46YO.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-M2BGAY6H.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73YTQHOT.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-OBAFAA5V.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-explorer/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-explorer/src/capabilities/react-surface.tsx":{"bytesInOutput":517}},"bytes":888},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73GQ46YO.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":487576},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73GQ46YO.mjs":{"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@observablehq/plot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@observablehq/plot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"topojson-client","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","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-graph","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"d3","kind":"import-statement","external":true},{"path":"d3","kind":"import-statement","external":true},{"path":"d3","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-explorer/dist/lib/browser/ExplorerContainer-BBZ54DJS.mjs","kind":"dynamic-import"}],"exports":["Chart","ExplorerContainer","Globe","Tree","defaultTreeLayoutSlots"],"inputs":{"packages/plugins/plugin-explorer/src/components/Chart/Chart.tsx":{"bytesInOutput":1254},"packages/plugins/plugin-explorer/src/components/plot.ts":{"bytesInOutput":133},"packages/plugins/plugin-explorer/src/components/Globe/Globe.tsx":{"bytesInOutput":1968},"packages/plugins/plugin-explorer/data/countries-110m.js":{"bytesInOutput":188376},"packages/plugins/plugin-explorer/src/components/Tree/Tree.tsx":{"bytesInOutput":2157},"packages/plugins/plugin-explorer/src/components/Tree/layout/HierarchicalEdgeBundling.ts":{"bytesInOutput":2167},"packages/plugins/plugin-explorer/src/components/Tree/layout/RadialTree.ts":{"bytesInOutput":1355},"packages/plugins/plugin-explorer/src/components/Tree/layout/TidyTree.ts":{"bytesInOutput":1596},"packages/plugins/plugin-explorer/src/components/Tree/types/tree.ts":{"bytesInOutput":6378},"packages/plugins/plugin-explorer/src/components/Tree/types/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/components/Tree/types/types.ts":{"bytesInOutput":82},"packages/plugins/plugin-explorer/src/components/index.ts":{"bytesInOutput":110},"packages/plugins/plugin-explorer/src/components/Chart/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/components/Globe/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/components/Tree/index.ts":{"bytesInOutput":0}},"bytes":206687},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-M2BGAY6H.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":12029},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-M2BGAY6H.mjs":{"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-graph/styles/graph.css","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"d3","kind":"import-statement","external":true},{"path":"force-graph","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-resize-detector","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true}],"exports":["D3ForceGraph","ForceGraph"],"inputs":{"packages/plugins/plugin-explorer/src/components/Graph/D3ForceGraph.tsx":{"bytesInOutput":2413},"packages/plugins/plugin-explorer/src/components/Graph/ForceGraph.tsx":{"bytesInOutput":2193},"packages/plugins/plugin-explorer/src/components/Graph/adapter.ts":{"bytesInOutput":488},"packages/plugins/plugin-explorer/src/components/Graph/index.ts":{"bytesInOutput":0}},"bytes":5469},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73YTQHOT.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1805},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-73YTQHOT.mjs":{"imports":[{"path":"packages/plugins/plugin-explorer/dist/lib/browser/chunk-OBAFAA5V.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true}],"exports":["ExplorerAction","ViewType"],"inputs":{"packages/plugins/plugin-explorer/src/types/schema.ts":{"bytesInOutput":261},"packages/plugins/plugin-explorer/src/types/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-explorer/src/types/types.ts":{"bytesInOutput":455}},"bytes":973},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-OBAFAA5V.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":896},"packages/plugins/plugin-explorer/dist/lib/browser/chunk-OBAFAA5V.mjs":{"imports":[],"exports":["EXPLORER_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-explorer/src/meta.ts":{"bytesInOutput":427}},"bytes":558}}}
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  EXPLORER_PLUGIN,
3
3
  meta
4
- } from "./chunk-Z2SDLMQM.mjs";
4
+ } from "./chunk-OBAFAA5V.mjs";
5
5
  export {
6
6
  EXPLORER_PLUGIN,
7
7
  meta