@dxos/plugin-registry 0.8.4-main.f9ba587 → 0.8.4-main.fffef41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/{app-graph-builder-LKQBQDUA.mjs → app-graph-builder-6CNBP3A4.mjs} +27 -26
- package/dist/lib/browser/app-graph-builder-6CNBP3A4.mjs.map +7 -0
- package/dist/lib/browser/chunk-XPEFEID2.mjs +19 -0
- package/dist/lib/browser/chunk-XPEFEID2.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +6 -8
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-W67CIJI3.mjs → intent-resolver-LKNUYBTN.mjs} +5 -5
- package/dist/lib/browser/{intent-resolver-W67CIJI3.mjs.map → intent-resolver-LKNUYBTN.mjs.map} +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-SRFVJQKE.mjs → react-surface-IGCXOVE2.mjs} +116 -92
- package/dist/lib/browser/react-surface-IGCXOVE2.mjs.map +7 -0
- package/dist/types/src/RegistryPlugin.d.ts +1 -1
- package/dist/types/src/RegistryPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +3 -3
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/components/PluginDetail.d.ts.map +1 -1
- package/dist/types/src/components/PluginDetail.stories.d.ts +29 -5
- package/dist/types/src/components/PluginDetail.stories.d.ts.map +1 -1
- package/dist/types/src/components/PluginItem.d.ts +1 -1
- package/dist/types/src/components/PluginItem.d.ts.map +1 -1
- package/dist/types/src/components/PluginList.d.ts.map +1 -1
- package/dist/types/src/components/PluginList.stories.d.ts +31 -8
- package/dist/types/src/components/PluginList.stories.d.ts.map +1 -1
- package/dist/types/src/components/RegistryContainer.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +0 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/types.d.ts +3 -1
- package/dist/types/src/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +28 -30
- package/src/RegistryPlugin.tsx +23 -24
- package/src/capabilities/app-graph-builder.ts +27 -26
- package/src/capabilities/intent-resolver.ts +4 -4
- package/src/capabilities/react-surface.tsx +9 -13
- package/src/components/PluginDetail.stories.tsx +9 -9
- package/src/components/PluginDetail.tsx +53 -34
- package/src/components/PluginItem.tsx +53 -52
- package/src/components/PluginList.stories.tsx +25 -27
- package/src/components/PluginList.tsx +2 -4
- package/src/components/RegistryContainer.tsx +3 -11
- package/src/meta.ts +6 -3
- package/src/types.ts +5 -1
- package/dist/lib/browser/app-graph-builder-LKQBQDUA.mjs.map +0 -7
- package/dist/lib/browser/chunk-AEBASNOI.mjs +0 -16
- package/dist/lib/browser/chunk-AEBASNOI.mjs.map +0 -7
- package/dist/lib/browser/react-surface-SRFVJQKE.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-N44OGVQA.mjs +0 -162
- package/dist/lib/node-esm/app-graph-builder-N44OGVQA.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-R3GXMWPJ.mjs +0 -18
- package/dist/lib/node-esm/chunk-R3GXMWPJ.mjs.map +0 -7
- package/dist/lib/node-esm/index.mjs +0 -72
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-M2CBVUVQ.mjs +0 -24
- package/dist/lib/node-esm/intent-resolver-M2CBVUVQ.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/react-surface-5XAG2EYX.mjs +0 -336
- package/dist/lib/node-esm/react-surface-5XAG2EYX.mjs.map +0 -7
- package/dist/types/src/components/Icon.stories.d.ts +0 -6
- package/dist/types/src/components/Icon.stories.d.ts.map +0 -1
- package/src/components/Icon.stories.tsx +0 -107
|
@@ -1,47 +1,65 @@
|
|
|
1
1
|
import {
|
|
2
2
|
REGISTRY_KEY,
|
|
3
|
-
|
|
4
|
-
} from "./chunk-
|
|
3
|
+
meta
|
|
4
|
+
} from "./chunk-XPEFEID2.mjs";
|
|
5
5
|
|
|
6
6
|
// src/capabilities/react-surface.tsx
|
|
7
7
|
import React5, { useCallback as useCallback3, useMemo as useMemo2 } from "react";
|
|
8
|
-
import { Capabilities as Capabilities2, contributes, createSurface
|
|
9
|
-
import {
|
|
8
|
+
import { Capabilities as Capabilities2, Plugin, contributes, createSurface } from "@dxos/app-framework";
|
|
9
|
+
import { usePluginManager as usePluginManager2 } from "@dxos/app-framework/react";
|
|
10
10
|
|
|
11
11
|
// src/components/PluginDetail.tsx
|
|
12
12
|
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
13
13
|
import React from "react";
|
|
14
14
|
import { Icon, Input, Link, useTranslation } from "@dxos/react-ui";
|
|
15
|
-
import {
|
|
15
|
+
import { StackItem } from "@dxos/react-ui-stack";
|
|
16
|
+
import { getStyles, mx } from "@dxos/react-ui-theme";
|
|
16
17
|
var PluginDetail = ({ plugin, enabled, onEnable }) => {
|
|
17
18
|
var _effect = _useSignals();
|
|
18
19
|
try {
|
|
19
|
-
const { t } = useTranslation(
|
|
20
|
-
const { id, name, description, homePage, source, screenshots } = plugin.meta;
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
const { t } = useTranslation(meta.id);
|
|
21
|
+
const { id, name, description, homePage, source, screenshots, icon = "ph--circle--regular", iconHue = "neutral" } = plugin.meta;
|
|
22
|
+
const styles = getStyles(iconHue);
|
|
23
|
+
return /* @__PURE__ */ React.createElement(StackItem.Content, {
|
|
24
|
+
scrollable: true
|
|
25
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
26
|
+
role: "none",
|
|
27
|
+
className: "grid grid-cols-[min-content_1fr] gap-4 container-max-width p-4"
|
|
28
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
29
|
+
role: "none"
|
|
30
|
+
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
31
|
+
classNames: mx("p-1 rounded", styles.bg, styles.icon),
|
|
32
|
+
icon,
|
|
33
|
+
size: 14
|
|
34
|
+
})), /* @__PURE__ */ React.createElement("div", {
|
|
35
|
+
role: "none",
|
|
36
|
+
className: "flex flex-col gap-6"
|
|
23
37
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
24
38
|
role: "none",
|
|
25
|
-
className: "
|
|
26
|
-
}, /* @__PURE__ */ React.createElement("
|
|
39
|
+
className: "grid grid-cols-[1fr_min-content] gap-x-3 is-full pbs-1"
|
|
40
|
+
}, /* @__PURE__ */ React.createElement("h2", {
|
|
41
|
+
className: "text-xl"
|
|
42
|
+
}, name), /* @__PURE__ */ React.createElement(Input.Root, null, /* @__PURE__ */ React.createElement(Input.Switch, {
|
|
27
43
|
classNames: "self-center",
|
|
28
44
|
checked: enabled,
|
|
29
45
|
onClick: onEnable
|
|
30
|
-
}))
|
|
46
|
+
})), /* @__PURE__ */ React.createElement("p", {
|
|
47
|
+
className: "pbs-0.5 text-sm text-description"
|
|
48
|
+
}, id)), /* @__PURE__ */ React.createElement("div", {
|
|
31
49
|
role: "none"
|
|
32
|
-
}, /* @__PURE__ */ React.createElement("
|
|
33
|
-
className: "text-
|
|
34
|
-
},
|
|
50
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
51
|
+
className: "text-description"
|
|
52
|
+
}, description)), screenshots && screenshots.length > 0 && /* @__PURE__ */ React.createElement("div", {
|
|
53
|
+
role: "none",
|
|
54
|
+
className: "flex flex-col gap-2"
|
|
55
|
+
}, /* @__PURE__ */ React.createElement("h2", null, "Preview"), /* @__PURE__ */ React.createElement("img", {
|
|
35
56
|
src: screenshots[0],
|
|
36
57
|
alt: name,
|
|
37
58
|
className: "aspect-video object-fit"
|
|
38
59
|
})), /* @__PURE__ */ React.createElement("div", {
|
|
39
|
-
role: "none"
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}, /* @__PURE__ */ React.createElement("h1", {
|
|
43
|
-
className: "text-lg mb-2"
|
|
44
|
-
}, "Resources"), /* @__PURE__ */ React.createElement("div", {
|
|
60
|
+
role: "none",
|
|
61
|
+
className: "flex flex-col gap-2"
|
|
62
|
+
}, /* @__PURE__ */ React.createElement("h2", null, "Resources"), /* @__PURE__ */ React.createElement("div", {
|
|
45
63
|
className: "flex gap-2"
|
|
46
64
|
}, homePage && /* @__PURE__ */ React.createElement(Link, {
|
|
47
65
|
href: homePage,
|
|
@@ -61,7 +79,7 @@ var PluginDetail = ({ plugin, enabled, onEnable }) => {
|
|
|
61
79
|
icon: "ph--arrow-square-out--bold",
|
|
62
80
|
size: 3,
|
|
63
81
|
classNames: "inline-block leading-none mli-1"
|
|
64
|
-
})))));
|
|
82
|
+
})))))));
|
|
65
83
|
} finally {
|
|
66
84
|
_effect.f();
|
|
67
85
|
}
|
|
@@ -76,12 +94,13 @@ import { List } from "@dxos/react-ui";
|
|
|
76
94
|
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
77
95
|
import React2, { useCallback } from "react";
|
|
78
96
|
import { Icon as Icon2, IconButton, Input as Input2, Link as Link2, ListItem, Tag, useTranslation as useTranslation2 } from "@dxos/react-ui";
|
|
79
|
-
import { descriptionText, mx } from "@dxos/react-ui-theme";
|
|
80
|
-
|
|
97
|
+
import { descriptionText, mx as mx2 } from "@dxos/react-ui-theme";
|
|
98
|
+
import { getStyles as getStyles2 } from "@dxos/react-ui-theme";
|
|
99
|
+
var PluginItem = ({ plugin, enabled = [], onClick, onChange, hasSettings: hasSettingsParam, onSettings }) => {
|
|
81
100
|
var _effect = _useSignals2();
|
|
82
101
|
try {
|
|
83
|
-
const { t } = useTranslation2(
|
|
84
|
-
const { id, name, description, tags, icon = "ph--circle--regular" } = plugin.meta;
|
|
102
|
+
const { t } = useTranslation2(meta.id);
|
|
103
|
+
const { id, name, description, tags, icon = "ph--circle--regular", iconHue = "neutral" } = plugin.meta;
|
|
85
104
|
const isEnabled = enabled.includes(id);
|
|
86
105
|
const inputId = `${id}-input`;
|
|
87
106
|
const labelId = `${id}-label`;
|
|
@@ -98,86 +117,92 @@ var PluginItem = ({ plugin, enabled = [], onClick, onChange, hasSettings: _hasSe
|
|
|
98
117
|
isEnabled,
|
|
99
118
|
onChange
|
|
100
119
|
]);
|
|
101
|
-
const hasSettings =
|
|
120
|
+
const hasSettings = hasSettingsParam?.(id) ?? false;
|
|
102
121
|
const handleSettings = useCallback(() => onSettings?.(id), [
|
|
103
122
|
id,
|
|
104
123
|
onSettings
|
|
105
124
|
]);
|
|
125
|
+
const styles = getStyles2(iconHue);
|
|
126
|
+
const gridCols = "grid grid-cols-[5rem_1fr]";
|
|
127
|
+
const gridRows = "grid grid-rows-[40px_1fr_min-content_40px]";
|
|
106
128
|
return /* @__PURE__ */ React2.createElement(ListItem.Root, {
|
|
107
129
|
key: id,
|
|
108
130
|
labelId,
|
|
109
131
|
"data-testid": `pluginList.${id}`,
|
|
110
132
|
"aria-describedby": descriptionId,
|
|
111
|
-
|
|
112
|
-
classNames: "is-full bs-full grid grid-cols-[48px_1fr_48px] grid-rows-[40px_1fr_32px] p-1 border border-separator rounded-md"
|
|
133
|
+
classNames: mx2(gridCols, "bs-[12rem] is-full gap-3 pie-2 border border-separator rounded-md overflow-hidden")
|
|
113
134
|
}, /* @__PURE__ */ React2.createElement("div", {
|
|
114
|
-
className: "
|
|
115
|
-
}, /* @__PURE__ */ React2.createElement(Icon2, {
|
|
135
|
+
className: mx2(gridRows, "justify-center rounded-l-md", styles.bg)
|
|
136
|
+
}, /* @__PURE__ */ React2.createElement("div", null), /* @__PURE__ */ React2.createElement(Icon2, {
|
|
137
|
+
classNames: mx2("cursor-pointer", styles.icon),
|
|
116
138
|
icon,
|
|
117
|
-
size:
|
|
118
|
-
onClick: handleClick
|
|
119
|
-
classNames: "text-subdued cursor-pointer"
|
|
139
|
+
size: 14,
|
|
140
|
+
onClick: handleClick
|
|
120
141
|
})), /* @__PURE__ */ React2.createElement("div", {
|
|
142
|
+
className: mx2(gridRows)
|
|
143
|
+
}, /* @__PURE__ */ React2.createElement("div", {
|
|
121
144
|
className: "flex items-center overflow-hidden cursor-pointer",
|
|
122
145
|
onClick: handleClick
|
|
123
146
|
}, /* @__PURE__ */ React2.createElement("span", {
|
|
124
|
-
className: "truncate"
|
|
125
|
-
}, name ?? id)), /* @__PURE__ */ React2.createElement("div", {
|
|
126
|
-
className: "
|
|
127
|
-
}, /* @__PURE__ */ React2.createElement(
|
|
128
|
-
|
|
129
|
-
}, /* @__PURE__ */ React2.createElement(
|
|
130
|
-
classNames: "self-center",
|
|
131
|
-
checked: isEnabled,
|
|
132
|
-
onClick: handleChange
|
|
133
|
-
}))), /* @__PURE__ */ React2.createElement("div", null), (description || tags) && /* @__PURE__ */ React2.createElement("div", {
|
|
134
|
-
id: descriptionId,
|
|
135
|
-
className: "col-span-2 flex flex-col w-full justify-between gap-2 pb-2"
|
|
136
|
-
}, /* @__PURE__ */ React2.createElement("div", {
|
|
137
|
-
className: "grow"
|
|
138
|
-
}, /* @__PURE__ */ React2.createElement("p", {
|
|
139
|
-
className: mx(descriptionText, "line-clamp-3 min-w-0 pie-2")
|
|
140
|
-
}, description)), tags && tags.length > 0 && /* @__PURE__ */ React2.createElement("div", null, tags.map((tag) => /* @__PURE__ */ React2.createElement(Tag, {
|
|
147
|
+
className: "text-lg truncate"
|
|
148
|
+
}, name ?? id)), /* @__PURE__ */ React2.createElement("div", null, /* @__PURE__ */ React2.createElement("p", {
|
|
149
|
+
className: mx2(descriptionText, "line-clamp-4 min-is-0")
|
|
150
|
+
}, description)), /* @__PURE__ */ React2.createElement("div", {
|
|
151
|
+
className: "flex -mis-0.5 overflow-x-auto scrollbar-none"
|
|
152
|
+
}, tags?.map((tag) => /* @__PURE__ */ React2.createElement(Tag, {
|
|
141
153
|
key: tag,
|
|
142
|
-
palette:
|
|
143
|
-
classNames: "text-xs
|
|
144
|
-
}, tag)))
|
|
145
|
-
className: "flex gap-2 items-center
|
|
146
|
-
}, /* @__PURE__ */ React2.createElement(
|
|
147
|
-
"aria-describedby": descriptionId,
|
|
148
|
-
classNames: "text-sm text-description cursor-pointer",
|
|
149
|
-
onClick: handleClick
|
|
150
|
-
}, t("details label")), /* @__PURE__ */ React2.createElement("div", {
|
|
151
|
-
className: "flex-1"
|
|
152
|
-
})), /* @__PURE__ */ React2.createElement("div", {
|
|
153
|
-
className: "flex justify-center items-center"
|
|
154
|
-
}, hasSettings && /* @__PURE__ */ React2.createElement(IconButton, {
|
|
154
|
+
palette: tagColors[tag],
|
|
155
|
+
classNames: "text-xs uppercase font-thin"
|
|
156
|
+
}, tag))), /* @__PURE__ */ React2.createElement("div", {
|
|
157
|
+
className: "flex gap-2 items-center text-sm"
|
|
158
|
+
}, /* @__PURE__ */ React2.createElement(IconButton, {
|
|
155
159
|
"aria-describedby": descriptionId,
|
|
156
|
-
classNames: "
|
|
160
|
+
classNames: "cursor-pointer",
|
|
157
161
|
icon: "ph--gear--regular",
|
|
158
162
|
label: t("settings label"),
|
|
159
163
|
iconOnly: true,
|
|
160
164
|
size: 4,
|
|
161
|
-
onClick: handleSettings
|
|
162
|
-
|
|
165
|
+
onClick: handleSettings,
|
|
166
|
+
disabled: !hasSettings
|
|
167
|
+
}), /* @__PURE__ */ React2.createElement(Link2, {
|
|
168
|
+
"aria-describedby": descriptionId,
|
|
169
|
+
classNames: "text-description cursor-pointer",
|
|
170
|
+
onClick: handleClick
|
|
171
|
+
}, t("details label")), /* @__PURE__ */ React2.createElement("div", {
|
|
172
|
+
className: "grow"
|
|
173
|
+
}), /* @__PURE__ */ React2.createElement("div", {
|
|
174
|
+
className: "pie-1"
|
|
175
|
+
}, /* @__PURE__ */ React2.createElement(Input2.Root, {
|
|
176
|
+
id: inputId
|
|
177
|
+
}, /* @__PURE__ */ React2.createElement(Input2.Switch, {
|
|
178
|
+
classNames: "self-center",
|
|
179
|
+
checked: isEnabled,
|
|
180
|
+
onClick: handleChange
|
|
181
|
+
}))))));
|
|
163
182
|
} finally {
|
|
164
183
|
_effect.f();
|
|
165
184
|
}
|
|
166
185
|
};
|
|
186
|
+
var tagColors = {
|
|
187
|
+
new: "rose",
|
|
188
|
+
beta: "teal",
|
|
189
|
+
labs: "blue",
|
|
190
|
+
popular: "green",
|
|
191
|
+
featured: "pink",
|
|
192
|
+
experimental: "amber"
|
|
193
|
+
};
|
|
167
194
|
|
|
168
195
|
// src/components/PluginList.tsx
|
|
169
196
|
var PluginList = ({ plugins = [], ...props }) => {
|
|
170
197
|
var _effect = _useSignals3();
|
|
171
198
|
try {
|
|
172
199
|
return /* @__PURE__ */ React3.createElement(List, {
|
|
173
|
-
classNames: "grid grid-cols-[repeat(auto-fill,minmax(
|
|
174
|
-
}, plugins.map((plugin) => /* @__PURE__ */ React3.createElement(
|
|
200
|
+
classNames: "grid grid-cols-[repeat(auto-fill,minmax(18rem,1fr))] gap-4 p-4"
|
|
201
|
+
}, plugins.map((plugin) => /* @__PURE__ */ React3.createElement(PluginItem, {
|
|
175
202
|
key: plugin.meta.id,
|
|
176
|
-
className: "flex"
|
|
177
|
-
}, /* @__PURE__ */ React3.createElement(PluginItem, {
|
|
178
203
|
plugin,
|
|
179
204
|
...props
|
|
180
|
-
})))
|
|
205
|
+
})));
|
|
181
206
|
} finally {
|
|
182
207
|
_effect.f();
|
|
183
208
|
}
|
|
@@ -186,9 +211,10 @@ var PluginList = ({ plugins = [], ...props }) => {
|
|
|
186
211
|
// src/components/RegistryContainer.tsx
|
|
187
212
|
import { useSignals as _useSignals4 } from "@preact-signals/safe-react/tracking";
|
|
188
213
|
import React4, { useCallback as useCallback2, useMemo } from "react";
|
|
189
|
-
import { Capabilities,
|
|
214
|
+
import { Capabilities, LayoutAction, SettingsAction, createIntent } from "@dxos/app-framework";
|
|
215
|
+
import { useCapability, useIntentDispatcher, usePluginManager } from "@dxos/app-framework/react";
|
|
190
216
|
import { ObservabilityAction } from "@dxos/plugin-observability/types";
|
|
191
|
-
import { StackItem } from "@dxos/react-ui-stack";
|
|
217
|
+
import { StackItem as StackItem2 } from "@dxos/react-ui-stack";
|
|
192
218
|
var sortByPluginMeta = ({ meta: { name: a = "" } }, { meta: { name: b = "" } }) => a.localeCompare(b);
|
|
193
219
|
var RegistryContainer = ({ id, plugins: _plugins }) => {
|
|
194
220
|
var _effect = _useSignals4();
|
|
@@ -238,8 +264,8 @@ var RegistryContainer = ({ id, plugins: _plugins }) => {
|
|
|
238
264
|
})), [
|
|
239
265
|
dispatch
|
|
240
266
|
]);
|
|
241
|
-
return /* @__PURE__ */ React4.createElement(
|
|
242
|
-
|
|
267
|
+
return /* @__PURE__ */ React4.createElement(StackItem2.Content, {
|
|
268
|
+
scrollable: true
|
|
243
269
|
}, /* @__PURE__ */ React4.createElement(PluginList, {
|
|
244
270
|
plugins,
|
|
245
271
|
enabled: manager.enabled,
|
|
@@ -254,14 +280,14 @@ var RegistryContainer = ({ id, plugins: _plugins }) => {
|
|
|
254
280
|
};
|
|
255
281
|
|
|
256
282
|
// src/capabilities/react-surface.tsx
|
|
257
|
-
var react_surface_default = () => contributes(Capabilities2.ReactSurface, [
|
|
283
|
+
var react_surface_default = (() => contributes(Capabilities2.ReactSurface, [
|
|
258
284
|
createSurface({
|
|
259
|
-
id: `${
|
|
285
|
+
id: `${meta.id}/all`,
|
|
260
286
|
role: "article",
|
|
261
287
|
filter: (data) => data.subject === `${REGISTRY_KEY}+all`,
|
|
262
288
|
component: () => {
|
|
263
289
|
const manager = usePluginManager2();
|
|
264
|
-
const filtered = useMemo2(() => manager.plugins.filter(({ meta }) => !manager.core.includes(
|
|
290
|
+
const filtered = useMemo2(() => manager.plugins.filter(({ meta: meta2 }) => !manager.core.includes(meta2.id)), []);
|
|
265
291
|
return /* @__PURE__ */ React5.createElement(RegistryContainer, {
|
|
266
292
|
id: `${REGISTRY_KEY}+all`,
|
|
267
293
|
plugins: filtered
|
|
@@ -269,12 +295,12 @@ var react_surface_default = () => contributes(Capabilities2.ReactSurface, [
|
|
|
269
295
|
}
|
|
270
296
|
}),
|
|
271
297
|
createSurface({
|
|
272
|
-
id: `${
|
|
298
|
+
id: `${meta.id}/installed`,
|
|
273
299
|
role: "article",
|
|
274
300
|
filter: (data) => data.subject === `${REGISTRY_KEY}+installed`,
|
|
275
301
|
component: () => {
|
|
276
302
|
const manager = usePluginManager2();
|
|
277
|
-
const filtered = useMemo2(() => manager.plugins.filter(({ meta }) => !manager.core.includes(
|
|
303
|
+
const filtered = useMemo2(() => manager.plugins.filter(({ meta: meta2 }) => !manager.core.includes(meta2.id)).filter(({ meta: meta2 }) => manager.enabled.includes(meta2.id)), []);
|
|
278
304
|
return /* @__PURE__ */ React5.createElement(RegistryContainer, {
|
|
279
305
|
id: `${REGISTRY_KEY}+installed`,
|
|
280
306
|
plugins: filtered
|
|
@@ -282,12 +308,12 @@ var react_surface_default = () => contributes(Capabilities2.ReactSurface, [
|
|
|
282
308
|
}
|
|
283
309
|
}),
|
|
284
310
|
createSurface({
|
|
285
|
-
id: `${
|
|
311
|
+
id: `${meta.id}/recommended`,
|
|
286
312
|
role: "article",
|
|
287
313
|
filter: (data) => data.subject === `${REGISTRY_KEY}+recommended`,
|
|
288
314
|
component: () => {
|
|
289
315
|
const manager = usePluginManager2();
|
|
290
|
-
const filtered = useMemo2(() => manager.plugins.filter(({ meta }) => !manager.core.includes(
|
|
316
|
+
const filtered = useMemo2(() => manager.plugins.filter(({ meta: meta2 }) => !manager.core.includes(meta2.id)).filter(({ meta: meta2 }) => !meta2.tags?.includes("labs")), []);
|
|
291
317
|
return /* @__PURE__ */ React5.createElement(RegistryContainer, {
|
|
292
318
|
id: `${REGISTRY_KEY}+recommended`,
|
|
293
319
|
plugins: filtered
|
|
@@ -295,12 +321,12 @@ var react_surface_default = () => contributes(Capabilities2.ReactSurface, [
|
|
|
295
321
|
}
|
|
296
322
|
}),
|
|
297
323
|
createSurface({
|
|
298
|
-
id: `${
|
|
324
|
+
id: `${meta.id}/labs`,
|
|
299
325
|
role: "article",
|
|
300
326
|
filter: (data) => data.subject === `${REGISTRY_KEY}+labs`,
|
|
301
327
|
component: () => {
|
|
302
328
|
const manager = usePluginManager2();
|
|
303
|
-
const filtered = useMemo2(() => manager.plugins.filter(({ meta }) =>
|
|
329
|
+
const filtered = useMemo2(() => manager.plugins.filter(({ meta: meta2 }) => meta2.tags?.includes("labs")), []);
|
|
304
330
|
return /* @__PURE__ */ React5.createElement(RegistryContainer, {
|
|
305
331
|
id: `${REGISTRY_KEY}+labs`,
|
|
306
332
|
plugins: filtered
|
|
@@ -308,7 +334,7 @@ var react_surface_default = () => contributes(Capabilities2.ReactSurface, [
|
|
|
308
334
|
}
|
|
309
335
|
}),
|
|
310
336
|
createSurface({
|
|
311
|
-
id: `${
|
|
337
|
+
id: `${meta.id}/plugin-details`,
|
|
312
338
|
role: "article",
|
|
313
339
|
filter: (data) => data.subject instanceof Plugin,
|
|
314
340
|
component: ({ data: { subject } }) => {
|
|
@@ -319,17 +345,15 @@ var react_surface_default = () => contributes(Capabilities2.ReactSurface, [
|
|
|
319
345
|
subject.meta.id,
|
|
320
346
|
enabled
|
|
321
347
|
]);
|
|
322
|
-
return /* @__PURE__ */ React5.createElement(
|
|
323
|
-
role: "article"
|
|
324
|
-
}, /* @__PURE__ */ React5.createElement(PluginDetail, {
|
|
348
|
+
return /* @__PURE__ */ React5.createElement(PluginDetail, {
|
|
325
349
|
plugin: subject,
|
|
326
350
|
enabled,
|
|
327
351
|
onEnable: handleEnable
|
|
328
|
-
})
|
|
352
|
+
});
|
|
329
353
|
}
|
|
330
354
|
})
|
|
331
|
-
]);
|
|
355
|
+
]));
|
|
332
356
|
export {
|
|
333
357
|
react_surface_default as default
|
|
334
358
|
};
|
|
335
|
-
//# sourceMappingURL=react-surface-
|
|
359
|
+
//# sourceMappingURL=react-surface-IGCXOVE2.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/react-surface.tsx", "../../../src/components/PluginDetail.tsx", "../../../src/components/PluginList.tsx", "../../../src/components/PluginItem.tsx", "../../../src/components/RegistryContainer.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback, useMemo } from 'react';\n\nimport { Capabilities, Plugin, contributes, createSurface } from '@dxos/app-framework';\nimport { usePluginManager } from '@dxos/app-framework/react';\n\nimport { PluginDetail, RegistryContainer } from '../components';\nimport { REGISTRY_KEY, meta } from '../meta';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${meta.id}/all`,\n role: 'article',\n filter: (data): data is any => data.subject === `${REGISTRY_KEY}+all`,\n component: () => {\n const manager = usePluginManager();\n const filtered = useMemo(() => manager.plugins.filter(({ meta }) => !manager.core.includes(meta.id)), []);\n\n return <RegistryContainer id={`${REGISTRY_KEY}+all`} plugins={filtered} />;\n },\n }),\n createSurface({\n id: `${meta.id}/installed`,\n role: 'article',\n filter: (data): data is any => data.subject === `${REGISTRY_KEY}+installed`,\n component: () => {\n const manager = usePluginManager();\n const filtered = useMemo(\n () =>\n manager.plugins\n .filter(({ meta }) => !manager.core.includes(meta.id))\n .filter(({ meta }) => manager.enabled.includes(meta.id)),\n [],\n );\n\n return <RegistryContainer id={`${REGISTRY_KEY}+installed`} plugins={filtered} />;\n },\n }),\n createSurface({\n id: `${meta.id}/recommended`,\n role: 'article',\n filter: (data): data is any => data.subject === `${REGISTRY_KEY}+recommended`,\n component: () => {\n const manager = usePluginManager();\n const filtered = useMemo(\n () =>\n manager.plugins\n .filter(({ meta }) => !manager.core.includes(meta.id))\n .filter(({ meta }) => !meta.tags?.includes('labs')),\n [],\n );\n\n return <RegistryContainer id={`${REGISTRY_KEY}+recommended`} plugins={filtered} />;\n },\n }),\n createSurface({\n id: `${meta.id}/labs`,\n role: 'article',\n filter: (data): data is any => data.subject === `${REGISTRY_KEY}+labs`,\n component: () => {\n const manager = usePluginManager();\n const filtered = useMemo(() => manager.plugins.filter(({ meta }) => meta.tags?.includes('labs')), []);\n\n return <RegistryContainer id={`${REGISTRY_KEY}+labs`} plugins={filtered} />;\n },\n }),\n createSurface({\n id: `${meta.id}/plugin-details`,\n role: 'article',\n filter: (data): data is { subject: Plugin } => data.subject instanceof Plugin,\n component: ({ data: { subject } }) => {\n const manager = usePluginManager();\n const enabled = manager.enabled.includes(subject.meta.id);\n const handleEnable = useCallback(\n () => (enabled ? manager.disable(subject.meta.id) : manager.enable(subject.meta.id)),\n [manager, subject.meta.id, enabled],\n );\n\n return <PluginDetail plugin={subject} enabled={enabled} onEnable={handleEnable} />;\n },\n }),\n ]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { Icon, Input, Link, useTranslation } from '@dxos/react-ui';\nimport { StackItem } from '@dxos/react-ui-stack';\nimport { getStyles, mx } from '@dxos/react-ui-theme';\n\nimport { meta } from '../meta';\n\nexport type PluginDetailProps = {\n plugin: Plugin;\n enabled?: boolean;\n onEnable?: () => void;\n};\n\nexport const PluginDetail = ({ plugin, enabled, onEnable }: PluginDetailProps) => {\n const { t } = useTranslation(meta.id);\n const {\n id,\n name,\n description,\n homePage,\n source,\n screenshots,\n icon = 'ph--circle--regular',\n iconHue = 'neutral',\n } = plugin.meta;\n const styles = getStyles(iconHue);\n\n return (\n <StackItem.Content scrollable>\n <div role='none' className='grid grid-cols-[min-content_1fr] gap-4 container-max-width p-4'>\n <div role='none'>\n <Icon classNames={mx('p-1 rounded', styles.bg, styles.icon)} icon={icon} size={14} />\n </div>\n <div role='none' className='flex flex-col gap-6'>\n <div role='none' className='grid grid-cols-[1fr_min-content] gap-x-3 is-full pbs-1'>\n <h2 className='text-xl'>{name}</h2>\n <Input.Root>\n <Input.Switch classNames='self-center' checked={enabled} onClick={onEnable} />\n </Input.Root>\n <p className='pbs-0.5 text-sm text-description'>{id}</p>\n </div>\n\n <div role='none'>\n <p className='text-description'>{description}</p>\n </div>\n\n {screenshots && screenshots.length > 0 && (\n <div role='none' className='flex flex-col gap-2'>\n <h2>Preview</h2>\n <img src={screenshots[0]} alt={name} className='aspect-video object-fit' />\n </div>\n )}\n\n <div role='none' className='flex flex-col gap-2'>\n <h2>Resources</h2>\n <div className='flex gap-2'>\n {homePage && (\n <Link href={homePage} target='_blank' rel='noreferrer' classNames='text-sm text-description'>\n {t('home page label')}\n <Icon icon='ph--arrow-square-out--bold' size={3} classNames='inline-block leading-none mli-1' />\n </Link>\n )}\n\n {source && (\n <Link href={source} target='_blank' rel='noreferrer' classNames='text-sm text-description'>\n {t('source label')}\n <Icon icon='ph--arrow-square-out--bold' size={3} classNames='inline-block leading-none mli-1' />\n </Link>\n )}\n </div>\n </div>\n </div>\n </div>\n </StackItem.Content>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { List } from '@dxos/react-ui';\n\nimport { PluginItem, type PluginItemProps } from './PluginItem';\n\nexport type PluginListProps = Omit<PluginItemProps, 'plugin'> & {\n plugins?: readonly Plugin[];\n};\n\nexport const PluginList = ({ plugins = [], ...props }: PluginListProps) => {\n return (\n <List classNames='grid grid-cols-[repeat(auto-fill,minmax(18rem,1fr))] gap-4 p-4'>\n {plugins.map((plugin) => (\n <PluginItem key={plugin.meta.id} plugin={plugin} {...props} />\n ))}\n </List>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { type MouseEvent, useCallback } from 'react';\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { type ChromaticPalette, Icon, IconButton, Input, Link, ListItem, Tag, useTranslation } from '@dxos/react-ui';\nimport { descriptionText, mx } from '@dxos/react-ui-theme';\nimport { getStyles } from '@dxos/react-ui-theme';\n\nimport { meta } from '../meta';\nimport { type RegistryTagType } from '../types';\n\nexport type PluginItemProps = {\n plugin: Plugin;\n installed?: readonly string[];\n enabled?: readonly string[];\n onClick?: (id: string) => void;\n onChange?: (id: string, enabled: boolean) => void;\n hasSettings?: (id: string) => boolean;\n onSettings?: (id: string) => void;\n};\n\nexport const PluginItem = ({\n plugin,\n enabled = [],\n onClick,\n onChange,\n hasSettings: hasSettingsParam,\n onSettings,\n}: PluginItemProps) => {\n const { t } = useTranslation(meta.id);\n const { id, name, description, tags, icon = 'ph--circle--regular', iconHue = 'neutral' } = plugin.meta;\n const isEnabled = enabled.includes(id);\n const inputId = `${id}-input`;\n const labelId = `${id}-label`;\n const descriptionId = `${id}-description`;\n const handleClick = useCallback(() => onClick?.(id), [id, onClick]);\n\n const handleChange = useCallback(\n (event: MouseEvent) => {\n event.stopPropagation();\n onChange?.(id, !isEnabled);\n },\n [id, isEnabled, onChange],\n );\n\n const hasSettings = hasSettingsParam?.(id) ?? false;\n const handleSettings = useCallback(() => onSettings?.(id), [id, onSettings]);\n const styles = getStyles(iconHue);\n const gridCols = 'grid grid-cols-[5rem_1fr]';\n const gridRows = 'grid grid-rows-[40px_1fr_min-content_40px]';\n\n return (\n <ListItem.Root\n key={id}\n labelId={labelId}\n data-testid={`pluginList.${id}`}\n aria-describedby={descriptionId}\n classNames={mx(gridCols, 'bs-[12rem] is-full gap-3 pie-2 border border-separator rounded-md overflow-hidden')}\n >\n <div className={mx(gridRows, 'justify-center rounded-l-md', styles.bg)}>\n <div />\n <Icon classNames={mx('cursor-pointer', styles.icon)} icon={icon} size={14} onClick={handleClick} />\n </div>\n\n <div className={mx(gridRows)}>\n <div className='flex items-center overflow-hidden cursor-pointer' onClick={handleClick}>\n <span className='text-lg truncate'>{name ?? id}</span>\n </div>\n\n <div>\n <p className={mx(descriptionText, 'line-clamp-4 min-is-0')}>{description}</p>\n </div>\n\n <div className='flex -mis-0.5 overflow-x-auto scrollbar-none'>\n {tags?.map((tag) => (\n <Tag key={tag} palette={tagColors[tag as RegistryTagType]} classNames='text-xs uppercase font-thin'>\n {tag}\n </Tag>\n ))}\n </div>\n\n <div className='flex gap-2 items-center text-sm'>\n <IconButton\n aria-describedby={descriptionId}\n classNames='cursor-pointer'\n icon='ph--gear--regular'\n label={t('settings label')}\n iconOnly\n size={4}\n onClick={handleSettings}\n disabled={!hasSettings}\n />\n\n <Link aria-describedby={descriptionId} classNames='text-description cursor-pointer' onClick={handleClick}>\n {t('details label')}\n </Link>\n\n <div className='grow' />\n <div className='pie-1'>\n <Input.Root id={inputId}>\n <Input.Switch classNames='self-center' checked={isEnabled} onClick={handleChange} />\n </Input.Root>\n </div>\n </div>\n </div>\n </ListItem.Root>\n );\n};\n\nconst tagColors: Record<RegistryTagType, ChromaticPalette> = {\n new: 'rose',\n beta: 'teal',\n labs: 'blue',\n popular: 'green',\n featured: 'pink',\n experimental: 'amber',\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useCallback, useMemo } from 'react';\n\nimport { Capabilities, LayoutAction, type Plugin, SettingsAction, createIntent } from '@dxos/app-framework';\nimport { useCapability, useIntentDispatcher, usePluginManager } from '@dxos/app-framework/react';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nimport { PluginList } from './PluginList';\n\nconst sortByPluginMeta = ({ meta: { name: a = '' } }: Plugin, { meta: { name: b = '' } }: Plugin) => a.localeCompare(b);\n\nexport const RegistryContainer = ({ id, plugins: _plugins }: { id: string; plugins: Plugin[] }) => {\n const manager = usePluginManager();\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const plugins = useMemo(() => _plugins.sort(sortByPluginMeta), [_plugins]);\n const settingsStore = useCapability(Capabilities.SettingsStore);\n\n // TODO(wittjosiah): Factor out to an intent?\n const handleChange = useCallback(\n async (id: string, enabled: boolean) => {\n if (enabled) {\n await manager.enable(id);\n } else {\n await manager.disable(id);\n }\n\n await dispatch(\n createIntent(ObservabilityAction.SendEvent, {\n name: 'plugins.toggle',\n properties: {\n plugin: id,\n enabled,\n },\n }),\n );\n },\n [dispatch, manager],\n );\n\n const handleClick = useCallback(\n (pluginId: string) =>\n dispatch(\n createIntent(LayoutAction.Open, {\n part: 'main',\n // TODO(wittjosiah): `/` currently is not supported in ids.\n subject: [pluginId.replaceAll('/', ':')],\n options: { pivotId: id, positioning: 'end' },\n }),\n ),\n [dispatch, id],\n );\n\n const hasSettings = useCallback((pluginId: string) => !!settingsStore.getStore(pluginId), [settingsStore]);\n\n const handleSettings = useCallback(\n (pluginId: string) => dispatch(createIntent(SettingsAction.Open, { plugin: pluginId })),\n [dispatch],\n );\n\n return (\n <StackItem.Content scrollable>\n <PluginList\n plugins={plugins}\n enabled={manager.enabled}\n onClick={handleClick}\n onChange={handleChange}\n hasSettings={hasSettings}\n onSettings={handleSettings}\n />\n </StackItem.Content>\n );\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "useCallback", "useMemo", "Capabilities", "Plugin", "contributes", "createSurface", "usePluginManager", "React", "Icon", "Input", "Link", "useTranslation", "StackItem", "getStyles", "mx", "PluginDetail", "plugin", "enabled", "onEnable", "t", "useTranslation", "meta", "id", "name", "description", "homePage", "source", "screenshots", "icon", "iconHue", "styles", "getStyles", "StackItem", "Content", "scrollable", "div", "role", "className", "Icon", "classNames", "mx", "bg", "size", "h2", "Input", "Root", "Switch", "checked", "onClick", "p", "length", "img", "src", "alt", "Link", "href", "target", "rel", "React", "List", "React", "useCallback", "Icon", "IconButton", "Input", "Link", "ListItem", "Tag", "useTranslation", "descriptionText", "mx", "getStyles", "PluginItem", "plugin", "enabled", "onClick", "onChange", "hasSettings", "hasSettingsParam", "onSettings", "t", "useTranslation", "meta", "id", "name", "description", "tags", "icon", "iconHue", "isEnabled", "includes", "inputId", "labelId", "descriptionId", "handleClick", "useCallback", "handleChange", "event", "stopPropagation", "handleSettings", "styles", "getStyles", "gridCols", "gridRows", "React", "ListItem", "Root", "key", "data-testid", "aria-describedby", "classNames", "mx", "div", "className", "bg", "Icon", "size", "span", "p", "descriptionText", "map", "tag", "Tag", "palette", "tagColors", "IconButton", "label", "iconOnly", "disabled", "Link", "Input", "Switch", "checked", "new", "beta", "labs", "popular", "featured", "experimental", "PluginList", "plugins", "props", "React", "List", "classNames", "map", "plugin", "PluginItem", "key", "meta", "id", "React", "useCallback", "useMemo", "Capabilities", "LayoutAction", "SettingsAction", "createIntent", "useCapability", "useIntentDispatcher", "usePluginManager", "ObservabilityAction", "StackItem", "sortByPluginMeta", "meta", "name", "a", "b", "localeCompare", "RegistryContainer", "id", "plugins", "_plugins", "manager", "usePluginManager", "dispatchPromise", "dispatch", "useIntentDispatcher", "useMemo", "sort", "settingsStore", "useCapability", "Capabilities", "SettingsStore", "handleChange", "useCallback", "enabled", "enable", "disable", "createIntent", "ObservabilityAction", "SendEvent", "properties", "plugin", "handleClick", "pluginId", "LayoutAction", "Open", "part", "subject", "replaceAll", "options", "pivotId", "positioning", "hasSettings", "getStore", "handleSettings", "SettingsAction", "React", "StackItem", "Content", "scrollable", "PluginList", "onClick", "onChange", "onSettings", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "meta", "role", "filter", "data", "subject", "REGISTRY_KEY", "component", "manager", "usePluginManager", "filtered", "useMemo", "plugins", "core", "includes", "React", "RegistryContainer", "enabled", "tags", "Plugin", "handleEnable", "useCallback", "disable", "enable", "PluginDetail", "plugin", "onEnable"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const RegistryPlugin:
|
|
1
|
+
export declare const RegistryPlugin: import("@dxos/app-framework").PluginFactory<void>;
|
|
2
2
|
//# sourceMappingURL=RegistryPlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RegistryPlugin.d.ts","sourceRoot":"","sources":["../../../src/RegistryPlugin.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"RegistryPlugin.d.ts","sourceRoot":"","sources":["../../../src/RegistryPlugin.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,mDAqBzB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type PluginContext } from '@dxos/app-framework';
|
|
2
|
-
declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<import("@dxos/app-graph").BuilderExtensions
|
|
2
|
+
declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-graph").BuilderExtensions>>;
|
|
3
3
|
export default _default;
|
|
4
4
|
//# sourceMappingURL=app-graph-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/app-graph-builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/app-graph-builder.ts"],"names":[],"mappings":"AAQA,OAAO,EAAgB,KAAK,aAAa,EAA6C,MAAM,qBAAqB,CAAC;yBAKlG,SAAS,aAAa;AAAtC,wBA8IK"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const AppGraphBuilder: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-graph").BuilderExtensions
|
|
2
|
-
export declare const IntentResolver: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").Capabilities.IntentResolver
|
|
3
|
-
export declare const ReactSurface: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").Capabilities.ReactSurface
|
|
1
|
+
export declare const AppGraphBuilder: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-graph").BuilderExtensions>> | import("@dxos/app-framework").AnyCapability[]>>;
|
|
2
|
+
export declare const IntentResolver: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-framework").Capabilities.IntentResolver>> | import("@dxos/app-framework").AnyCapability[]>>;
|
|
3
|
+
export declare const ReactSurface: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-framework").Capabilities.ReactSurface>> | import("@dxos/app-framework").AnyCapability[]>>;
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe,gRAA4C,CAAC;AACzE,eAAO,MAAM,cAAc,8OAA0C,CAAC;AACtE,eAAO,MAAM,YAAY,4OAAwC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Capabilities } from '@dxos/app-framework';
|
|
2
|
-
declare const _default: () => import("@dxos/app-framework").Capability<Capabilities.IntentResolver
|
|
2
|
+
declare const _default: () => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<Capabilities.IntentResolver>>;
|
|
3
3
|
export default _default;
|
|
4
4
|
//# sourceMappingURL=intent-resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intent-resolver.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/intent-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"intent-resolver.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/intent-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,YAAY,EAMb,MAAM,qBAAqB,CAAC;;AAI7B,wBAWI"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Capabilities } from '@dxos/app-framework';
|
|
2
|
-
declare const _default: () => import("@dxos/app-framework").Capability<Capabilities.ReactSurface
|
|
2
|
+
declare const _default: () => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<Capabilities.ReactSurface>>;
|
|
3
3
|
export default _default;
|
|
4
4
|
//# sourceMappingURL=react-surface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAsC,MAAM,qBAAqB,CAAC;;AAMvF,wBAyEK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PluginDetail.d.ts","sourceRoot":"","sources":["../../../../src/components/PluginDetail.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"PluginDetail.d.ts","sourceRoot":"","sources":["../../../../src/components/PluginDetail.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAOlD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,+BAA+B,iBAAiB,sBA8D5E,CAAC"}
|
|
@@ -1,8 +1,32 @@
|
|
|
1
|
-
import '@
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { type StoryObj } from '@storybook/react-vite';
|
|
2
|
+
declare const meta: {
|
|
3
|
+
title: string;
|
|
4
|
+
component: ({ plugin, enabled, onEnable }: import("./PluginDetail").PluginDetailProps) => import("react").JSX.Element;
|
|
5
|
+
decorators: import("@storybook/react").Decorator[];
|
|
6
|
+
parameters: {
|
|
7
|
+
translations: [{
|
|
8
|
+
readonly 'en-US': {
|
|
9
|
+
readonly [meta.id]: {
|
|
10
|
+
readonly 'plugin name': "Registry";
|
|
11
|
+
readonly 'details label': "Details";
|
|
12
|
+
readonly 'home page label': "Website";
|
|
13
|
+
readonly 'source label': "Source";
|
|
14
|
+
readonly 'plugin registry label': "Plugin Registry";
|
|
15
|
+
readonly 'all plugins label': "All";
|
|
16
|
+
readonly 'installed plugins label': "Enabled";
|
|
17
|
+
readonly 'recommended plugins label': "Recommended";
|
|
18
|
+
readonly 'labs plugins label': "Labs";
|
|
19
|
+
readonly 'community plugins label': "Community";
|
|
20
|
+
readonly 'load by url label': "Load by URL (soon)";
|
|
21
|
+
readonly 'coming soon label': "Coming soon!";
|
|
22
|
+
readonly 'open plugin registry label': "Open plugin registry";
|
|
23
|
+
readonly 'settings label': "Settings";
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
}];
|
|
27
|
+
};
|
|
28
|
+
};
|
|
5
29
|
export default meta;
|
|
6
|
-
type Story = StoryObj<
|
|
30
|
+
type Story = StoryObj<typeof meta>;
|
|
7
31
|
export declare const Default: Story;
|
|
8
32
|
//# sourceMappingURL=PluginDetail.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PluginDetail.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/PluginDetail.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"PluginDetail.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/PluginDetail.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AASjE,QAAA,MAAM,IAAI;;;;;;;yBANc,CAAS,IAAG,CAAE,EAAC,CAAC;;;;;;;;;;;;;;;;;;;CAaH,CAAC;AAEtC,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAkBrB,CAAC"}
|
|
@@ -9,5 +9,5 @@ export type PluginItemProps = {
|
|
|
9
9
|
hasSettings?: (id: string) => boolean;
|
|
10
10
|
onSettings?: (id: string) => void;
|
|
11
11
|
};
|
|
12
|
-
export declare const PluginItem: ({ plugin, enabled, onClick, onChange, hasSettings:
|
|
12
|
+
export declare const PluginItem: ({ plugin, enabled, onClick, onChange, hasSettings: hasSettingsParam, onSettings, }: PluginItemProps) => React.JSX.Element;
|
|
13
13
|
//# sourceMappingURL=PluginItem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PluginItem.d.ts","sourceRoot":"","sources":["../../../../src/components/PluginItem.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"PluginItem.d.ts","sourceRoot":"","sources":["../../../../src/components/PluginItem.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAQlD,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IACtC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,oFAOxB,eAAe,sBA+EjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PluginList.d.ts","sourceRoot":"","sources":["../../../../src/components/PluginList.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAEhE,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG;IAC9D,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,uBAA4B,eAAe,
|
|
1
|
+
{"version":3,"file":"PluginList.d.ts","sourceRoot":"","sources":["../../../../src/components/PluginList.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAEhE,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG;IAC9D,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,uBAA4B,eAAe,sBAQrE,CAAC"}
|
|
@@ -1,11 +1,34 @@
|
|
|
1
|
-
import '@
|
|
2
|
-
import
|
|
3
|
-
declare const meta:
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { type StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
declare const meta: {
|
|
4
|
+
title: string;
|
|
5
|
+
component: ({ plugins, ...props }: import("./PluginList").PluginListProps) => React.JSX.Element;
|
|
6
|
+
render: () => React.JSX.Element;
|
|
7
|
+
parameters: {
|
|
8
|
+
translations: [{
|
|
9
|
+
readonly 'en-US': {
|
|
10
|
+
readonly [meta.id]: {
|
|
11
|
+
readonly 'plugin name': "Registry";
|
|
12
|
+
readonly 'details label': "Details";
|
|
13
|
+
readonly 'home page label': "Website";
|
|
14
|
+
readonly 'source label': "Source";
|
|
15
|
+
readonly 'plugin registry label': "Plugin Registry";
|
|
16
|
+
readonly 'all plugins label': "All";
|
|
17
|
+
readonly 'installed plugins label': "Enabled";
|
|
18
|
+
readonly 'recommended plugins label': "Recommended";
|
|
19
|
+
readonly 'labs plugins label': "Labs";
|
|
20
|
+
readonly 'community plugins label': "Community";
|
|
21
|
+
readonly 'load by url label': "Load by URL (soon)";
|
|
22
|
+
readonly 'coming soon label': "Coming soon!";
|
|
23
|
+
readonly 'open plugin registry label': "Open plugin registry";
|
|
24
|
+
readonly 'settings label': "Settings";
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
}];
|
|
9
28
|
};
|
|
10
29
|
};
|
|
30
|
+
export default meta;
|
|
31
|
+
type Story = StoryObj<typeof meta>;
|
|
32
|
+
export declare const Default: Story;
|
|
33
|
+
export declare const FullScreen: Story;
|
|
11
34
|
//# sourceMappingURL=PluginList.stories.d.ts.map
|