@dxos/plugin-preview 0.8.4-main.8360d9e660 → 0.8.4-main.8baae0fced

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 (123) hide show
  1. package/LICENSE +102 -5
  2. package/dist/lib/neutral/PreviewPlugin.mjs +9 -0
  3. package/dist/lib/neutral/PreviewPlugin.mjs.map +7 -0
  4. package/dist/lib/neutral/PreviewPlugin.node.mjs +17 -0
  5. package/dist/lib/neutral/PreviewPlugin.node.mjs.map +7 -0
  6. package/dist/lib/neutral/PreviewPlugin.workerd.mjs +17 -0
  7. package/dist/lib/neutral/PreviewPlugin.workerd.mjs.map +7 -0
  8. package/dist/lib/neutral/capabilities/index.mjs +9 -0
  9. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  10. package/dist/lib/neutral/chunk-3SWUVHXJ.mjs +28 -0
  11. package/dist/lib/neutral/chunk-3SWUVHXJ.mjs.map +7 -0
  12. package/dist/lib/{browser/chunk-KLQDOIFV.mjs → neutral/chunk-XD3EYTHF.mjs} +6 -2
  13. package/dist/lib/neutral/chunk-XD3EYTHF.mjs.map +7 -0
  14. package/dist/lib/neutral/index.mjs +7 -0
  15. package/dist/lib/neutral/index.mjs.map +7 -0
  16. package/dist/lib/neutral/meta.json +1 -0
  17. package/dist/lib/neutral/meta.mjs +7 -0
  18. package/dist/lib/neutral/meta.mjs.map +7 -0
  19. package/dist/lib/neutral/plugin.mjs +11 -0
  20. package/dist/lib/neutral/plugin.mjs.map +7 -0
  21. package/dist/lib/{browser/preview-popover-X2ZJM5MK.mjs → neutral/preview-popover-MPPEMUIA.mjs} +10 -13
  22. package/dist/lib/neutral/preview-popover-MPPEMUIA.mjs.map +7 -0
  23. package/dist/lib/neutral/react-surface-IPTX6ZBX.mjs +418 -0
  24. package/dist/lib/neutral/react-surface-IPTX6ZBX.mjs.map +7 -0
  25. package/dist/lib/neutral/testing.mjs +7 -0
  26. package/dist/lib/neutral/testing.mjs.map +7 -0
  27. package/dist/lib/neutral/translations.mjs +21 -0
  28. package/dist/lib/neutral/translations.mjs.map +7 -0
  29. package/dist/types/src/PreviewPlugin.d.ts +1 -0
  30. package/dist/types/src/PreviewPlugin.d.ts.map +1 -1
  31. package/dist/types/src/PreviewPlugin.node.d.ts +4 -0
  32. package/dist/types/src/PreviewPlugin.node.d.ts.map +1 -0
  33. package/dist/types/src/PreviewPlugin.test.d.ts +2 -0
  34. package/dist/types/src/PreviewPlugin.test.d.ts.map +1 -0
  35. package/dist/types/src/PreviewPlugin.workerd.d.ts +4 -0
  36. package/dist/types/src/PreviewPlugin.workerd.d.ts.map +1 -0
  37. package/dist/types/src/capabilities/index.d.ts +3 -2
  38. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  39. package/dist/types/src/capabilities/preview-popover.d.ts.map +1 -0
  40. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  41. package/dist/types/src/cards/DynamicTypeCard.d.ts +4 -0
  42. package/dist/types/src/cards/DynamicTypeCard.d.ts.map +1 -0
  43. package/dist/types/src/cards/ExpandoCard.d.ts +4 -0
  44. package/dist/types/src/cards/ExpandoCard.d.ts.map +1 -0
  45. package/dist/types/src/cards/FormCard.d.ts +2 -2
  46. package/dist/types/src/cards/FormCard.d.ts.map +1 -1
  47. package/dist/types/src/cards/JsonCard.d.ts +5 -0
  48. package/dist/types/src/cards/JsonCard.d.ts.map +1 -0
  49. package/dist/types/src/cards/OrganizationCard.d.ts +2 -2
  50. package/dist/types/src/cards/OrganizationCard.d.ts.map +1 -1
  51. package/dist/types/src/cards/PersonCard.d.ts +2 -2
  52. package/dist/types/src/cards/PersonCard.d.ts.map +1 -1
  53. package/dist/types/src/cards/ProjectCard.d.ts +2 -2
  54. package/dist/types/src/cards/ProjectCard.d.ts.map +1 -1
  55. package/dist/types/src/cards/TaskCard.d.ts +2 -2
  56. package/dist/types/src/cards/TaskCard.d.ts.map +1 -1
  57. package/dist/types/src/cards/index.d.ts +3 -0
  58. package/dist/types/src/cards/index.d.ts.map +1 -1
  59. package/dist/types/src/index.d.ts +0 -1
  60. package/dist/types/src/index.d.ts.map +1 -1
  61. package/dist/types/src/meta.d.ts.map +1 -1
  62. package/dist/types/src/plugin.d.ts +3 -0
  63. package/dist/types/src/plugin.d.ts.map +1 -0
  64. package/dist/types/src/stories/Card.stories.d.ts +15 -9
  65. package/dist/types/src/stories/Card.stories.d.ts.map +1 -1
  66. package/dist/types/src/stories/testing.d.ts +4 -2
  67. package/dist/types/src/stories/testing.d.ts.map +1 -1
  68. package/dist/types/src/testing.d.ts +2 -0
  69. package/dist/types/src/testing.d.ts.map +1 -0
  70. package/dist/types/src/translations.d.ts +8 -9
  71. package/dist/types/src/translations.d.ts.map +1 -1
  72. package/dist/types/tsconfig.tsbuildinfo +1 -1
  73. package/package.json +83 -41
  74. package/src/PreviewPlugin.node.ts +16 -0
  75. package/src/PreviewPlugin.test.ts +25 -0
  76. package/src/PreviewPlugin.tsx +6 -4
  77. package/src/PreviewPlugin.workerd.ts +16 -0
  78. package/src/capabilities/index.ts +4 -2
  79. package/src/capabilities/{preview-popover/preview-popover.ts → preview-popover.ts} +10 -4
  80. package/src/capabilities/react-surface.tsx +152 -0
  81. package/src/cards/DynamicTypeCard.tsx +53 -0
  82. package/src/cards/ExpandoCard.tsx +76 -0
  83. package/src/cards/FormCard.tsx +5 -5
  84. package/src/cards/JsonCard.tsx +19 -0
  85. package/src/cards/OrganizationCard.tsx +3 -3
  86. package/src/cards/PersonCard.tsx +27 -9
  87. package/src/cards/ProjectCard.tsx +2 -2
  88. package/src/cards/TaskCard.tsx +15 -11
  89. package/src/cards/index.ts +3 -0
  90. package/src/index.ts +0 -2
  91. package/src/meta.ts +2 -0
  92. package/src/plugin.ts +9 -0
  93. package/src/stories/Card.stories.tsx +50 -5
  94. package/src/stories/testing.tsx +26 -16
  95. package/src/testing.ts +7 -0
  96. package/src/translations.ts +8 -8
  97. package/dist/lib/browser/chunk-KLQDOIFV.mjs.map +0 -7
  98. package/dist/lib/browser/index.mjs +0 -55
  99. package/dist/lib/browser/index.mjs.map +0 -7
  100. package/dist/lib/browser/meta.json +0 -1
  101. package/dist/lib/browser/preview-popover-X2ZJM5MK.mjs.map +0 -7
  102. package/dist/lib/browser/react-surface-L57ORUAL.mjs +0 -244
  103. package/dist/lib/browser/react-surface-L57ORUAL.mjs.map +0 -7
  104. package/dist/lib/node-esm/chunk-GFWHEHC5.mjs +0 -19
  105. package/dist/lib/node-esm/chunk-GFWHEHC5.mjs.map +0 -7
  106. package/dist/lib/node-esm/index.mjs +0 -56
  107. package/dist/lib/node-esm/index.mjs.map +0 -7
  108. package/dist/lib/node-esm/meta.json +0 -1
  109. package/dist/lib/node-esm/preview-popover-6FLDJHHB.mjs +0 -83
  110. package/dist/lib/node-esm/preview-popover-6FLDJHHB.mjs.map +0 -7
  111. package/dist/lib/node-esm/react-surface-RIM4RITC.mjs +0 -245
  112. package/dist/lib/node-esm/react-surface-RIM4RITC.mjs.map +0 -7
  113. package/dist/types/src/capabilities/preview-popover/index.d.ts +0 -3
  114. package/dist/types/src/capabilities/preview-popover/index.d.ts.map +0 -1
  115. package/dist/types/src/capabilities/preview-popover/preview-popover.d.ts.map +0 -1
  116. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  117. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  118. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  119. package/src/capabilities/preview-popover/index.ts +0 -7
  120. package/src/capabilities/react-surface/index.ts +0 -7
  121. package/src/capabilities/react-surface/react-surface.tsx +0 -107
  122. /package/dist/types/src/capabilities/{preview-popover/preview-popover.d.ts → preview-popover.d.ts} +0 -0
  123. /package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +0 -0
@@ -0,0 +1,418 @@
1
+ // src/capabilities/react-surface.tsx
2
+ import * as Effect2 from "effect/Effect";
3
+ import React9 from "react";
4
+ import { Capabilities, Capability } from "@dxos/app-framework";
5
+ import { Surface } from "@dxos/app-framework/ui";
6
+ import { AppSurface } from "@dxos/app-toolkit/ui";
7
+ import { Obj as Obj6, Type } from "@dxos/echo";
8
+ import { Card as Card9 } from "@dxos/react-ui";
9
+ import { Expando } from "@dxos/schema";
10
+ import { Organization, Person, Pipeline, Task as Task2 } from "@dxos/types";
11
+
12
+ // src/cards/DynamicTypeCard.tsx
13
+ import React, { useCallback, useMemo } from "react";
14
+ import { Obj } from "@dxos/echo";
15
+ import { useSchema } from "@dxos/echo-react";
16
+ import { splitJsonPath } from "@dxos/effect";
17
+ import { Card, useTranslation } from "@dxos/react-ui";
18
+ import { Form, omitId } from "@dxos/react-ui-form";
19
+ import { descriptionMessage, mx } from "@dxos/ui-theme";
20
+ import { meta } from "#meta";
21
+ var DynamicTypeCard = ({ subject }) => {
22
+ const { t } = useTranslation(meta.id);
23
+ const db = Obj.getDatabase(subject);
24
+ const typename = Obj.getTypename(subject);
25
+ const runtimeSchema = useSchema(db, typename);
26
+ const schema = useMemo(() => runtimeSchema && omitId(runtimeSchema), [
27
+ runtimeSchema
28
+ ]);
29
+ const handleSave = useCallback((values, { changed }) => {
30
+ const paths = Object.keys(changed).filter((path) => changed[path]);
31
+ Obj.update(subject, () => {
32
+ for (const path of paths) {
33
+ const parts = splitJsonPath(path);
34
+ const value = Obj.getValue(values, parts);
35
+ Obj.setValue(subject, parts, value);
36
+ }
37
+ });
38
+ }, [
39
+ subject
40
+ ]);
41
+ if (!schema) {
42
+ return /* @__PURE__ */ React.createElement("p", {
43
+ className: mx(descriptionMessage)
44
+ }, t("unable-to-create-preview.message"));
45
+ }
46
+ return /* @__PURE__ */ React.createElement(Card.Content, null, /* @__PURE__ */ React.createElement(Form.Root, {
47
+ schema,
48
+ values: subject,
49
+ autoSave: true,
50
+ onSave: handleSave
51
+ }, /* @__PURE__ */ React.createElement(Form.Viewport, null, /* @__PURE__ */ React.createElement(Form.Content, null, /* @__PURE__ */ React.createElement(Form.FieldSet, null)))));
52
+ };
53
+
54
+ // src/cards/ExpandoCard.tsx
55
+ import * as Schema from "effect/Schema";
56
+ import React2, { useCallback as useCallback2, useMemo as useMemo2 } from "react";
57
+ import { Obj as Obj2 } from "@dxos/echo";
58
+ import { splitJsonPath as splitJsonPath2 } from "@dxos/effect";
59
+ import { Card as Card2 } from "@dxos/react-ui";
60
+ import { Form as Form2 } from "@dxos/react-ui-form";
61
+ var schemaForValue = (value) => {
62
+ switch (typeof value) {
63
+ case "string":
64
+ return Schema.String;
65
+ case "number":
66
+ return Schema.Number;
67
+ case "boolean":
68
+ return Schema.Boolean;
69
+ default:
70
+ return void 0;
71
+ }
72
+ };
73
+ var isInternalKey = (key) => key === "id" || key.startsWith("~");
74
+ var ExpandoCard = ({ subject, ignorePaths }) => {
75
+ const schema = useMemo2(() => {
76
+ const ignored = new Set(ignorePaths ?? []);
77
+ const fields = {};
78
+ for (const key of Object.keys(subject)) {
79
+ if (isInternalKey(key) || ignored.has(key)) {
80
+ continue;
81
+ }
82
+ const fieldSchema = schemaForValue(subject[key]);
83
+ if (fieldSchema) {
84
+ fields[key] = fieldSchema;
85
+ }
86
+ }
87
+ return Schema.Struct(fields);
88
+ }, [
89
+ subject,
90
+ ignorePaths
91
+ ]);
92
+ const handleSave = useCallback2((values, { changed }) => {
93
+ const paths = Object.keys(changed).filter((path) => changed[path]);
94
+ Obj2.update(subject, () => {
95
+ for (const path of paths) {
96
+ const value = values[path];
97
+ const parts = splitJsonPath2(path);
98
+ Obj2.setValue(subject, parts, value);
99
+ }
100
+ });
101
+ }, [
102
+ subject
103
+ ]);
104
+ return /* @__PURE__ */ React2.createElement(Card2.Content, null, /* @__PURE__ */ React2.createElement(Form2.Root, {
105
+ schema,
106
+ values: subject,
107
+ autoSave: true,
108
+ onSave: handleSave
109
+ }, /* @__PURE__ */ React2.createElement(Form2.Viewport, null, /* @__PURE__ */ React2.createElement(Form2.Content, null, /* @__PURE__ */ React2.createElement(Form2.FieldSet, null)))));
110
+ };
111
+
112
+ // src/cards/FormCard.tsx
113
+ import React3, { useCallback as useCallback3, useMemo as useMemo3 } from "react";
114
+ import { Obj as Obj3 } from "@dxos/echo";
115
+ import { splitJsonPath as splitJsonPath3 } from "@dxos/effect";
116
+ import { Card as Card3, useTranslation as useTranslation2 } from "@dxos/react-ui";
117
+ import { Form as Form3, omitId as omitId2 } from "@dxos/react-ui-form";
118
+ import { descriptionMessage as descriptionMessage2, mx as mx2 } from "@dxos/ui-theme";
119
+ import { meta as meta2 } from "#meta";
120
+ var FormCard = ({ subject, projection }) => {
121
+ const { t } = useTranslation2(meta2.id);
122
+ const echoSchema = Obj3.getSchema(subject);
123
+ const schema = useMemo3(() => echoSchema && omitId2(echoSchema), [
124
+ echoSchema
125
+ ]);
126
+ const handleSave = useCallback3((values, { changed }) => {
127
+ const paths = Object.keys(changed).filter((path) => changed[path]);
128
+ Obj3.update(subject, () => {
129
+ for (const path of paths) {
130
+ const value = values[path];
131
+ const parts = splitJsonPath3(path);
132
+ Obj3.setValue(subject, parts, value);
133
+ }
134
+ });
135
+ }, []);
136
+ if (!schema) {
137
+ return /* @__PURE__ */ React3.createElement("p", {
138
+ className: mx2(descriptionMessage2)
139
+ }, t("unable-to-create-preview.message"));
140
+ }
141
+ return /* @__PURE__ */ React3.createElement(Card3.Content, null, /* @__PURE__ */ React3.createElement(Form3.Root, {
142
+ schema,
143
+ projection,
144
+ values: subject,
145
+ autoSave: true,
146
+ onSave: handleSave
147
+ }, /* @__PURE__ */ React3.createElement(Form3.Viewport, null, /* @__PURE__ */ React3.createElement(Form3.Content, null, /* @__PURE__ */ React3.createElement(Form3.FieldSet, null)))));
148
+ };
149
+
150
+ // src/cards/JsonCard.tsx
151
+ import React4 from "react";
152
+ import { Card as Card4 } from "@dxos/react-ui";
153
+ import { JsonHighlighter } from "@dxos/react-ui-syntax-highlighter";
154
+ var JsonCard = ({ data }) => {
155
+ return /* @__PURE__ */ React4.createElement(Card4.Content, null, /* @__PURE__ */ React4.createElement("span", null), /* @__PURE__ */ React4.createElement(JsonHighlighter, {
156
+ data
157
+ }), /* @__PURE__ */ React4.createElement("span", null));
158
+ };
159
+
160
+ // src/cards/OrganizationCard.tsx
161
+ import React5 from "react";
162
+ import { Card as Card5 } from "@dxos/react-ui";
163
+ var OrganizationCard = ({ subject }) => {
164
+ const { name, image, description, website } = subject;
165
+ return /* @__PURE__ */ React5.createElement(Card5.Content, null, /* @__PURE__ */ React5.createElement(Card5.Poster, {
166
+ alt: name ?? "",
167
+ ...image ? {
168
+ image
169
+ } : {
170
+ icon: "ph--building-office--regular"
171
+ },
172
+ classNames: !image && "opacity-50"
173
+ }), description && /* @__PURE__ */ React5.createElement(Card5.Row, null, /* @__PURE__ */ React5.createElement(Card5.Text, {
174
+ variant: "description"
175
+ }, description)), website && /* @__PURE__ */ React5.createElement(Card5.Link, {
176
+ label: website,
177
+ href: website
178
+ }));
179
+ };
180
+
181
+ // src/cards/PersonCard.tsx
182
+ import * as Effect from "effect/Effect";
183
+ import React6, { useCallback as useCallback4 } from "react";
184
+ import { useOperationInvoker } from "@dxos/app-framework/ui";
185
+ import { LayoutOperation, getObjectPathFromObject, getSpacePath } from "@dxos/app-toolkit";
186
+ import { Obj as Obj4 } from "@dxos/echo";
187
+ import { runAndForwardErrors } from "@dxos/effect";
188
+ import { Avatar } from "@dxos/react-ui";
189
+ import { Card as Card6 } from "@dxos/react-ui";
190
+ var PersonCard = ({ subject }) => {
191
+ const { invoke } = useOperationInvoker();
192
+ const { image, organization: { target: organization } = {}, emails = [] } = subject;
193
+ const handleOrganizationClick = useCallback4(() => {
194
+ if (!organization) {
195
+ return;
196
+ }
197
+ return Effect.gen(function* () {
198
+ const organizationPath = getObjectPathFromObject(organization);
199
+ const db = Obj4.getDatabase(organization);
200
+ yield* invoke(LayoutOperation.UpdatePopover, {
201
+ state: false,
202
+ anchorId: ""
203
+ });
204
+ yield* invoke(LayoutOperation.Open, {
205
+ subject: [
206
+ organizationPath
207
+ ],
208
+ workspace: db ? getSpacePath(db.spaceId) : void 0
209
+ });
210
+ }).pipe(runAndForwardErrors);
211
+ }, [
212
+ invoke,
213
+ organization
214
+ ]);
215
+ return /* @__PURE__ */ React6.createElement(Card6.Content, null, /* @__PURE__ */ React6.createElement(Avatar.Root, null, image && /* @__PURE__ */ React6.createElement(Card6.Row, {
216
+ className: "py-1"
217
+ }, /* @__PURE__ */ React6.createElement(Avatar.Content, {
218
+ imgSrc: image,
219
+ icon: "ph--user--regular",
220
+ size: 20,
221
+ classNames: !image && "opacity-50",
222
+ hue: "neutral",
223
+ variant: "square"
224
+ })), organization?.name && /* @__PURE__ */ React6.createElement(Card6.Action, {
225
+ icon: "ph--buildings--regular",
226
+ label: organization.name,
227
+ onClick: handleOrganizationClick
228
+ }), emails.map(({ value }) => /* @__PURE__ */ React6.createElement(Card6.Row, {
229
+ key: value,
230
+ icon: "ph--at--regular"
231
+ }, /* @__PURE__ */ React6.createElement(Card6.Text, {
232
+ truncate: true,
233
+ className: "text-primary-text"
234
+ }, value)))));
235
+ };
236
+
237
+ // src/cards/ProjectCard.tsx
238
+ import React7 from "react";
239
+ import { Obj as Obj5 } from "@dxos/echo";
240
+ import { Card as Card7 } from "@dxos/react-ui";
241
+ var ProjectCard = ({ subject }) => {
242
+ const { image, description } = subject;
243
+ return /* @__PURE__ */ React7.createElement(Card7.Content, null, image && /* @__PURE__ */ React7.createElement(Card7.Poster, {
244
+ image,
245
+ alt: Obj5.getLabel(subject) ?? "",
246
+ aspect: "auto"
247
+ }), description && /* @__PURE__ */ React7.createElement(Card7.Text, {
248
+ variant: "description"
249
+ }, description));
250
+ };
251
+
252
+ // src/cards/TaskCard.tsx
253
+ import * as SchemaAST from "effect/SchemaAST";
254
+ import React8 from "react";
255
+ import { PropertyMetaAnnotationId } from "@dxos/echo/internal";
256
+ import { Card as Card8 } from "@dxos/react-ui";
257
+ import { Task } from "@dxos/types";
258
+ var TaskCard = ({ subject }) => {
259
+ const { title, status } = subject;
260
+ const statusOption = getActiveStatusOption(status);
261
+ return /* @__PURE__ */ React8.createElement(Card8.Content, null, /* @__PURE__ */ React8.createElement(Card8.Row, null, statusOption && /* @__PURE__ */ React8.createElement("div", null, /* @__PURE__ */ React8.createElement("span", {
262
+ className: "dx-tag",
263
+ "data-hue": statusOption.color
264
+ }, statusOption.title))));
265
+ };
266
+ var getActiveStatusOption = (status) => {
267
+ const properties = SchemaAST.getPropertySignatures(Task.Task.ast);
268
+ const statusProperty = properties.find((p) => p.name === "status");
269
+ const statusMeta = SchemaAST.getAnnotation(PropertyMetaAnnotationId)(statusProperty.type.types[0]);
270
+ const options = statusMeta.value.singleSelect.options;
271
+ return options.find(({ id }) => id === status);
272
+ };
273
+
274
+ // src/capabilities/react-surface.tsx
275
+ var react_surface_default = Capability.makeModule(() => Effect2.succeed(Capability.contributes(Capabilities.ReactSurface, [
276
+ //
277
+ // Specific schema types.
278
+ // TODO(burdon): Create helpers and factor out.
279
+ //
280
+ Surface.create({
281
+ id: "schema-popover--contact",
282
+ position: "first",
283
+ filter: AppSurface.object(AppSurface.Card, Person.Person),
284
+ component: ({ data, role }) => {
285
+ return /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement(PersonCard, {
286
+ role,
287
+ subject: data.subject
288
+ }), /* @__PURE__ */ React9.createElement(Surface.Surface, {
289
+ type: AppSurface.Related,
290
+ data,
291
+ limit: 1
292
+ }));
293
+ }
294
+ }),
295
+ Surface.create({
296
+ id: "schema-popover--organization",
297
+ position: "first",
298
+ filter: AppSurface.object(AppSurface.Card, Organization.Organization),
299
+ component: ({ data, role }) => {
300
+ return /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement(OrganizationCard, {
301
+ role,
302
+ subject: data.subject
303
+ }), /* @__PURE__ */ React9.createElement(Surface.Surface, {
304
+ type: AppSurface.Related,
305
+ data,
306
+ limit: 1
307
+ }));
308
+ }
309
+ }),
310
+ Surface.create({
311
+ id: "schema-popover--project",
312
+ position: "first",
313
+ filter: AppSurface.object(AppSurface.Card, Pipeline.Pipeline),
314
+ component: ({ data, role }) => {
315
+ return /* @__PURE__ */ React9.createElement(ProjectCard, {
316
+ role,
317
+ subject: data.subject
318
+ });
319
+ }
320
+ }),
321
+ Surface.create({
322
+ id: "schema-popover--task",
323
+ position: "first",
324
+ filter: AppSurface.object(AppSurface.Card, Task2.Task),
325
+ component: ({ data, role }) => {
326
+ return /* @__PURE__ */ React9.createElement(TaskCard, {
327
+ role,
328
+ subject: data.subject
329
+ });
330
+ }
331
+ }),
332
+ Surface.create({
333
+ id: "schema-popover--expando",
334
+ filter: AppSurface.object(AppSurface.Card, Expando.Expando),
335
+ component: ({ data, role }) => {
336
+ return /* @__PURE__ */ React9.createElement(ExpandoCard, {
337
+ role,
338
+ subject: data.subject,
339
+ ignorePaths: data.ignorePaths
340
+ });
341
+ }
342
+ }),
343
+ Surface.create({
344
+ id: "schema-popover--dynamic-type",
345
+ role: "card--content",
346
+ filter: (data) => {
347
+ if (!Obj6.isObject(data.subject)) {
348
+ return false;
349
+ }
350
+ const schema = Obj6.getSchema(data.subject);
351
+ if (schema) {
352
+ return Type.isMutable(schema);
353
+ }
354
+ try {
355
+ const db = Obj6.getDatabase(data.subject);
356
+ const typename = Obj6.getTypename(data.subject);
357
+ return !!db && !!typename && db.schemaRegistry.query({
358
+ typename
359
+ }).runSync().length > 0;
360
+ } catch {
361
+ return false;
362
+ }
363
+ },
364
+ component: ({ data, role }) => {
365
+ return /* @__PURE__ */ React9.createElement(DynamicTypeCard, {
366
+ role,
367
+ subject: data.subject
368
+ });
369
+ }
370
+ }),
371
+ //
372
+ // Fallback for any object.
373
+ //
374
+ Surface.create({
375
+ id: "fallback-popover",
376
+ role: "card--content",
377
+ position: "last",
378
+ filter: (data) => Obj6.isObject(data.subject),
379
+ component: ({ data, role }) => {
380
+ return /* @__PURE__ */ React9.createElement(FormCard, {
381
+ role,
382
+ subject: data.subject,
383
+ projection: data.projection
384
+ });
385
+ }
386
+ }),
387
+ Surface.create({
388
+ id: "fallback-json",
389
+ role: "card--content",
390
+ position: "last",
391
+ filter: (data) => true,
392
+ component: ({ data }) => {
393
+ return /* @__PURE__ */ React9.createElement(JsonCard, {
394
+ data
395
+ });
396
+ }
397
+ }),
398
+ Surface.create({
399
+ id: "section",
400
+ position: "last",
401
+ filter: AppSurface.subject(AppSurface.Section, Obj6.isObject),
402
+ component: ({ data }) => {
403
+ return /* @__PURE__ */ React9.createElement("div", {
404
+ className: "flex w-full justify-center"
405
+ }, /* @__PURE__ */ React9.createElement("div", {
406
+ className: "py-2 dx-card-min-width dx-card-max-width"
407
+ }, /* @__PURE__ */ React9.createElement(Card9.Root, null, /* @__PURE__ */ React9.createElement(Surface.Surface, {
408
+ type: AppSurface.Card,
409
+ data,
410
+ limit: 1
411
+ }))));
412
+ }
413
+ })
414
+ ])));
415
+ export {
416
+ react_surface_default as default
417
+ };
418
+ //# sourceMappingURL=react-surface-IPTX6ZBX.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface.tsx", "../../../src/cards/DynamicTypeCard.tsx", "../../../src/cards/ExpandoCard.tsx", "../../../src/cards/FormCard.tsx", "../../../src/cards/JsonCard.tsx", "../../../src/cards/OrganizationCard.tsx", "../../../src/cards/PersonCard.tsx", "../../../src/cards/ProjectCard.tsx", "../../../src/cards/TaskCard.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface } from '@dxos/app-framework/ui';\nimport { AppSurface } from '@dxos/app-toolkit/ui';\nimport { Obj, Type } from '@dxos/echo';\nimport { Card } from '@dxos/react-ui';\nimport { Expando, type ProjectionModel } from '@dxos/schema';\nimport { Organization, Person, Pipeline, Task } from '@dxos/types';\n\nimport {\n DynamicTypeCard,\n ExpandoCard,\n FormCard,\n JsonCard,\n OrganizationCard,\n PersonCard,\n ProjectCard,\n TaskCard,\n} from '../cards';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Capabilities.ReactSurface, [\n //\n // Specific schema types.\n // TODO(burdon): Create helpers and factor out.\n //\n\n Surface.create<{ subject: Person.Person }>({\n id: 'schema-popover--contact',\n position: 'first',\n filter: AppSurface.object(AppSurface.Card, Person.Person),\n component: ({ data, role }) => {\n return (\n <>\n <PersonCard role={role} subject={data.subject} />\n <Surface.Surface type={AppSurface.Related} data={data} limit={1} />\n </>\n );\n },\n }),\n Surface.create({\n id: 'schema-popover--organization',\n position: 'first',\n filter: AppSurface.object(AppSurface.Card, Organization.Organization),\n component: ({ data, role }) => {\n return (\n <>\n <OrganizationCard role={role} subject={data.subject} />\n <Surface.Surface type={AppSurface.Related} data={data} limit={1} />\n </>\n );\n },\n }),\n Surface.create({\n id: 'schema-popover--project',\n position: 'first',\n filter: AppSurface.object(AppSurface.Card, Pipeline.Pipeline),\n component: ({ data, role }) => {\n return <ProjectCard role={role} subject={data.subject} />;\n },\n }),\n Surface.create({\n id: 'schema-popover--task',\n position: 'first',\n filter: AppSurface.object(AppSurface.Card, Task.Task),\n component: ({ data, role }) => {\n return <TaskCard role={role} subject={data.subject} />;\n },\n }),\n Surface.create<AppSurface.ObjectCardData<Expando.Expando>>({\n id: 'schema-popover--expando',\n filter: AppSurface.object(AppSurface.Card, Expando.Expando),\n component: ({ data, role }) => {\n return <ExpandoCard role={role} subject={data.subject} ignorePaths={data.ignorePaths} />;\n },\n }),\n\n Surface.create({\n id: 'schema-popover--dynamic-type',\n role: 'card--content',\n filter: (data): data is { subject: Obj.Unknown } => {\n if (!Obj.isObject(data.subject)) {\n return false;\n }\n const schema = Obj.getSchema(data.subject);\n if (schema) {\n return Type.isMutable(schema);\n }\n // Obj.getSchema fails for database-registered schemas (DXN mismatch); fall back to typename query.\n try {\n const db = Obj.getDatabase(data.subject);\n const typename = Obj.getTypename(data.subject);\n return !!db && !!typename && db.schemaRegistry.query({ typename }).runSync().length > 0;\n } catch {\n return false;\n }\n },\n component: ({ data, role }) => {\n return <DynamicTypeCard role={role} subject={data.subject} />;\n },\n }),\n\n //\n // Fallback for any object.\n //\n\n Surface.create({\n id: 'fallback-popover',\n role: 'card--content',\n position: 'last',\n filter: (data): data is { subject: Obj.Unknown; projection?: ProjectionModel } => Obj.isObject(data.subject),\n component: ({ data, role }) => {\n return <FormCard role={role} subject={data.subject} projection={data.projection} />;\n },\n }),\n\n Surface.create({\n id: 'fallback-json',\n role: 'card--content',\n position: 'last',\n filter: (data): data is Record<string, unknown> => true,\n component: ({ data }) => {\n return <JsonCard data={data} />;\n },\n }),\n\n Surface.create({\n id: 'section',\n position: 'last',\n filter: AppSurface.subject(AppSurface.Section, Obj.isObject),\n component: ({ data }) => {\n return (\n <div className='flex w-full justify-center'>\n <div className='py-2 dx-card-min-width dx-card-max-width'>\n <Card.Root>\n <Surface.Surface type={AppSurface.Card} data={data} limit={1} />\n </Card.Root>\n </div>\n </div>\n );\n },\n }),\n ]),\n ),\n);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback, useMemo } from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Obj } from '@dxos/echo';\nimport { useSchema } from '@dxos/echo-react';\nimport { type JsonPath, splitJsonPath } from '@dxos/effect';\nimport { Card, useTranslation } from '@dxos/react-ui';\nimport { Form, type FormUpdateMeta, omitId } from '@dxos/react-ui-form';\nimport { descriptionMessage, mx } from '@dxos/ui-theme';\n\nimport { meta } from '#meta';\n\nexport const DynamicTypeCard = ({ subject }: AppSurface.ObjectCardProps) => {\n const { t } = useTranslation(meta.id);\n const db = Obj.getDatabase(subject);\n const typename = Obj.getTypename(subject);\n const runtimeSchema = useSchema(db, typename);\n const schema = useMemo(() => runtimeSchema && omitId(runtimeSchema), [runtimeSchema]);\n\n const handleSave = useCallback(\n (values: Record<string, unknown>, { changed }: FormUpdateMeta<Record<string, unknown>>) => {\n const paths = (Object.keys(changed) as JsonPath[]).filter((path) => changed[path]);\n Obj.update(subject, () => {\n for (const path of paths) {\n const parts = splitJsonPath(path);\n const value = Obj.getValue(values as any, parts);\n Obj.setValue(subject, parts, value);\n }\n });\n },\n [subject],\n );\n\n if (!schema) {\n return <p className={mx(descriptionMessage)}>{t('unable-to-create-preview.message')}</p>;\n }\n\n return (\n <Card.Content>\n <Form.Root schema={schema} values={subject} autoSave onSave={handleSave}>\n <Form.Viewport>\n <Form.Content>\n <Form.FieldSet />\n </Form.Content>\n </Form.Viewport>\n </Form.Root>\n </Card.Content>\n );\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\nimport React, { useCallback, useMemo } from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Obj } from '@dxos/echo';\nimport { type JsonPath, splitJsonPath } from '@dxos/effect';\nimport { Card } from '@dxos/react-ui';\nimport { Form } from '@dxos/react-ui-form';\n\nconst schemaForValue = (value: unknown): Schema.Schema.AnyNoContext | undefined => {\n switch (typeof value) {\n case 'string':\n return Schema.String;\n case 'number':\n return Schema.Number;\n case 'boolean':\n return Schema.Boolean;\n default:\n return undefined;\n }\n};\n\n/**\n * Reserved keys: `id`, plus any `~`-prefixed key (ECHO uses `~`-prefixed\n * string keys to brand entity instances and schemas — KindId,\n * SchemaKindId, SnapshotKindId, etc. — and the `~` namespace is reserved\n * for that purpose). They show up in `Object.keys` but aren't user data.\n */\nconst isInternalKey = (key: string) => key === 'id' || key.startsWith('~');\n\nexport const ExpandoCard = ({ subject, ignorePaths }: AppSurface.ObjectCardProps) => {\n const schema = useMemo(() => {\n const ignored = new Set(ignorePaths ?? []);\n const fields: Record<string, Schema.Schema.AnyNoContext> = {};\n for (const key of Object.keys(subject)) {\n if (isInternalKey(key) || ignored.has(key)) {\n continue;\n }\n const fieldSchema = schemaForValue((subject as any)[key]);\n if (fieldSchema) {\n fields[key] = fieldSchema;\n }\n }\n return Schema.Struct(fields);\n }, [subject, ignorePaths]);\n\n const handleSave = useCallback(\n (values: any, { changed }: { changed: Record<string, boolean> }) => {\n const paths = Object.keys(changed).filter((path) => changed[path]);\n Obj.update(subject, () => {\n for (const path of paths) {\n const value = values[path];\n const parts = splitJsonPath(path as JsonPath);\n Obj.setValue(subject, parts, value);\n }\n });\n },\n [subject],\n );\n\n return (\n <Card.Content>\n <Form.Root schema={schema} values={subject} autoSave onSave={handleSave}>\n <Form.Viewport>\n <Form.Content>\n <Form.FieldSet />\n </Form.Content>\n </Form.Viewport>\n </Form.Root>\n </Card.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback, useMemo } from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Obj } from '@dxos/echo';\nimport { type JsonPath, splitJsonPath } from '@dxos/effect';\nimport { Card, useTranslation } from '@dxos/react-ui';\nimport { Form, omitId } from '@dxos/react-ui-form';\nimport { type ProjectionModel } from '@dxos/schema';\nimport { descriptionMessage, mx } from '@dxos/ui-theme';\n\nimport { meta } from '#meta';\n\nexport const FormCard = ({ subject, projection }: AppSurface.ObjectCardProps & { projection?: ProjectionModel }) => {\n const { t } = useTranslation(meta.id);\n const echoSchema = Obj.getSchema(subject);\n const schema = useMemo(() => echoSchema && omitId(echoSchema), [echoSchema]);\n\n const handleSave = useCallback((values: any, { changed }: { changed: Record<string, boolean> }) => {\n const paths = Object.keys(changed).filter((path) => changed[path]);\n Obj.update(subject, () => {\n for (const path of paths) {\n const value = values[path];\n const parts = splitJsonPath(path as JsonPath);\n Obj.setValue(subject, parts, value);\n }\n });\n }, []);\n\n if (!schema) {\n return <p className={mx(descriptionMessage)}>{t('unable-to-create-preview.message')}</p>;\n }\n\n return (\n <Card.Content>\n <Form.Root schema={schema} projection={projection} values={subject} autoSave onSave={handleSave}>\n <Form.Viewport>\n <Form.Content>\n <Form.FieldSet />\n </Form.Content>\n </Form.Viewport>\n </Form.Root>\n </Card.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Card } from '@dxos/react-ui';\nimport { JsonHighlighter } from '@dxos/react-ui-syntax-highlighter';\n\nexport const JsonCard = ({ data }: { data: unknown }) => {\n return (\n <Card.Content>\n <span />\n {/* TODO(wittjosiah): Span whole row. */}\n <JsonHighlighter data={data} />\n <span />\n </Card.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Card } from '@dxos/react-ui';\nimport { type Organization } from '@dxos/types';\n\nexport const OrganizationCard = ({ subject }: AppSurface.ObjectCardProps<Organization.Organization>) => {\n const { name, image, description, website } = subject;\n\n return (\n <Card.Content>\n <Card.Poster\n alt={name ?? ''}\n {...(image ? { image } : { icon: 'ph--building-office--regular' })}\n classNames={!image && 'opacity-50'}\n />\n {description && (\n <Card.Row>\n <Card.Text variant='description'>{description}</Card.Text>\n </Card.Row>\n )}\n {website && <Card.Link label={website} href={website} />}\n </Card.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React, { useCallback } from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { LayoutOperation, getObjectPathFromObject, getSpacePath } from '@dxos/app-toolkit';\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Obj } from '@dxos/echo';\nimport { runAndForwardErrors } from '@dxos/effect';\nimport { Avatar } from '@dxos/react-ui';\nimport { Card } from '@dxos/react-ui';\nimport { type Person } from '@dxos/types';\n\nexport const PersonCard = ({ subject }: AppSurface.ObjectCardProps<Person.Person>) => {\n const { invoke } = useOperationInvoker();\n const { image, organization: { target: organization } = {}, emails = [] } = subject;\n\n const handleOrganizationClick = useCallback(() => {\n if (!organization) {\n return;\n }\n\n return Effect.gen(function* () {\n const organizationPath = getObjectPathFromObject(organization);\n const db = Obj.getDatabase(organization);\n yield* invoke(LayoutOperation.UpdatePopover, { state: false, anchorId: '' });\n yield* invoke(LayoutOperation.Open, {\n subject: [organizationPath],\n workspace: db ? getSpacePath(db.spaceId) : undefined,\n });\n }).pipe(runAndForwardErrors);\n }, [invoke, organization]);\n\n return (\n <Card.Content>\n <Avatar.Root>\n {image && (\n <Card.Row className='py-1'>\n <Avatar.Content\n imgSrc={image}\n icon='ph--user--regular'\n size={20}\n classNames={!image && 'opacity-50'}\n hue='neutral'\n variant='square'\n />\n </Card.Row>\n )}\n {organization?.name && (\n <Card.Action icon='ph--buildings--regular' label={organization.name} onClick={handleOrganizationClick} />\n )}\n {emails.map(({ value }) => (\n <Card.Row key={value} icon='ph--at--regular'>\n <Card.Text truncate className='text-primary-text'>\n {value}\n </Card.Text>\n </Card.Row>\n ))}\n </Avatar.Root>\n </Card.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Obj } from '@dxos/echo';\nimport { Card } from '@dxos/react-ui';\nimport { type Pipeline } from '@dxos/types';\n\nexport const ProjectCard = ({ subject }: AppSurface.ObjectCardProps<Pipeline.Pipeline>) => {\n const { image, description } = subject;\n\n return (\n <Card.Content>\n {image && <Card.Poster image={image} alt={Obj.getLabel(subject) ?? ''} aspect='auto' />}\n {/* <CardHeader label={name} subject={subject} db={db} /> */}\n {description && <Card.Text variant='description'>{description}</Card.Text>}\n </Card.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as SchemaAST from 'effect/SchemaAST';\nimport React from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { type PropertyMetaAnnotation, PropertyMetaAnnotationId } from '@dxos/echo/internal';\nimport { Card } from '@dxos/react-ui';\nimport { Task } from '@dxos/types';\n\nexport const TaskCard = ({ subject }: AppSurface.ObjectCardProps<Task.Task>) => {\n const { title, status } = subject;\n const statusOption = getActiveStatusOption(status);\n\n return (\n <Card.Content>\n <Card.Row>\n {statusOption && (\n <div>\n <span className='dx-tag' data-hue={statusOption.color}>\n {statusOption.title}\n </span>\n </div>\n )}\n </Card.Row>\n </Card.Content>\n );\n};\n\n// TODO(thure): Should this move upstream as a helper? Is there an easier way to get options?\nconst getActiveStatusOption = (status?: string) => {\n const properties = SchemaAST.getPropertySignatures(Task.Task.ast);\n const statusProperty = properties.find((p) => p.name === 'status');\n // TODO(thure): Typescript asserts `.type` doesn’t have `.types`, but in runtime it does.\n const statusMeta = SchemaAST.getAnnotation<PropertyMetaAnnotation>(PropertyMetaAnnotationId)(\n (statusProperty!.type as any).types[0],\n );\n\n // TODO(thure): Typescript asserts `statusMeta` doesn’t have `.value`, but in runtime it does.\n const options = (statusMeta as any).value.singleSelect.options as { id: string; title: string; color: string }[];\n return options.find(({ id }) => id === status);\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["Effect", "React", "Capabilities", "Capability", "Surface", "AppSurface", "Obj", "Type", "Card", "Expando", "Organization", "Person", "Pipeline", "Task", "React", "useCallback", "useMemo", "Obj", "useSchema", "splitJsonPath", "Card", "useTranslation", "Form", "omitId", "descriptionMessage", "mx", "meta", "DynamicTypeCard", "subject", "t", "id", "db", "getDatabase", "typename", "getTypename", "runtimeSchema", "schema", "handleSave", "values", "changed", "paths", "Object", "keys", "filter", "path", "update", "parts", "value", "getValue", "setValue", "p", "className", "Content", "Root", "autoSave", "onSave", "Viewport", "FieldSet", "Schema", "React", "useCallback", "useMemo", "Obj", "splitJsonPath", "Card", "Form", "schemaForValue", "value", "String", "Number", "Boolean", "undefined", "isInternalKey", "key", "startsWith", "ExpandoCard", "subject", "ignorePaths", "schema", "ignored", "Set", "fields", "Object", "keys", "has", "fieldSchema", "Struct", "handleSave", "values", "changed", "paths", "filter", "path", "update", "parts", "setValue", "Content", "Root", "autoSave", "onSave", "Viewport", "FieldSet", "React", "useCallback", "useMemo", "Obj", "splitJsonPath", "Card", "useTranslation", "Form", "omitId", "descriptionMessage", "mx", "meta", "FormCard", "subject", "projection", "t", "id", "echoSchema", "getSchema", "schema", "handleSave", "values", "changed", "paths", "Object", "keys", "filter", "path", "update", "value", "parts", "setValue", "p", "className", "Content", "Root", "autoSave", "onSave", "Viewport", "FieldSet", "React", "Card", "JsonHighlighter", "JsonCard", "data", "Content", "span", "React", "Card", "OrganizationCard", "subject", "name", "image", "description", "website", "Content", "Poster", "alt", "icon", "classNames", "Row", "Text", "variant", "Link", "label", "href", "Effect", "React", "useCallback", "useOperationInvoker", "LayoutOperation", "getObjectPathFromObject", "getSpacePath", "Obj", "runAndForwardErrors", "Avatar", "Card", "PersonCard", "subject", "invoke", "image", "organization", "target", "emails", "handleOrganizationClick", "gen", "organizationPath", "db", "getDatabase", "UpdatePopover", "state", "anchorId", "Open", "workspace", "spaceId", "undefined", "pipe", "Content", "Root", "Row", "className", "imgSrc", "icon", "size", "classNames", "hue", "variant", "name", "Action", "label", "onClick", "map", "value", "key", "Text", "truncate", "React", "Obj", "Card", "ProjectCard", "subject", "image", "description", "Content", "Poster", "alt", "getLabel", "aspect", "Text", "variant", "SchemaAST", "React", "PropertyMetaAnnotationId", "Card", "Task", "TaskCard", "subject", "title", "status", "statusOption", "getActiveStatusOption", "Content", "Row", "div", "span", "className", "data-hue", "color", "properties", "getPropertySignatures", "ast", "statusProperty", "find", "p", "name", "statusMeta", "getAnnotation", "type", "types", "options", "value", "singleSelect", "id", "Capability", "makeModule", "succeed", "contributes", "Capabilities", "ReactSurface", "Surface", "create", "id", "position", "filter", "AppSurface", "object", "Card", "Person", "component", "data", "role", "React", "PersonCard", "subject", "type", "Related", "limit", "Organization", "OrganizationCard", "Pipeline", "ProjectCard", "Task", "TaskCard", "Expando", "ExpandoCard", "ignorePaths", "Obj", "isObject", "schema", "getSchema", "Type", "isMutable", "db", "getDatabase", "typename", "getTypename", "schemaRegistry", "query", "runSync", "length", "DynamicTypeCard", "FormCard", "projection", "JsonCard", "Section", "div", "className", "Root"]
7
+ }
@@ -0,0 +1,7 @@
1
+ import {
2
+ PreviewPlugin
3
+ } from "./chunk-3SWUVHXJ.mjs";
4
+ export {
5
+ PreviewPlugin
6
+ };
7
+ //# sourceMappingURL=testing.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,21 @@
1
+ // src/translations.ts
2
+ import { meta } from "#meta";
3
+ var translations = [
4
+ {
5
+ "en-US": {
6
+ [meta.id]: {
7
+ "unable-to-create-preview.message": "No preview",
8
+ "todo.label": "To do",
9
+ "in-progress.label": "In progress",
10
+ "done.label": "Done",
11
+ "open-object.label": "Open",
12
+ "add-object-to-space.label": "Add to space",
13
+ "more-options.label": "More options"
14
+ }
15
+ }
16
+ }
17
+ ];
18
+ export {
19
+ translations
20
+ };
21
+ //# sourceMappingURL=translations.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from '#meta';\n\nexport const translations = [\n {\n 'en-US': {\n [meta.id]: {\n 'unable-to-create-preview.message': 'No preview',\n 'todo.label': 'To do',\n 'in-progress.label': 'In progress',\n 'done.label': 'Done',\n 'open-object.label': 'Open',\n 'add-object-to-space.label': 'Add to space',\n 'more-options.label': 'More options',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": ";AAMA,SAASA,YAAY;AAEd,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACD,KAAKE,EAAE,GAAG;QACT,oCAAoC;QACpC,cAAc;QACd,qBAAqB;QACrB,cAAc;QACd,qBAAqB;QACrB,6BAA6B;QAC7B,sBAAsB;MACxB;IACF;EACF;;",
6
+ "names": ["meta", "translations", "id"]
7
+ }
@@ -1,3 +1,4 @@
1
1
  import { Plugin } from '@dxos/app-framework';
2
2
  export declare const PreviewPlugin: Plugin.PluginFactory<void>;
3
+ export default PreviewPlugin;
3
4
  //# sourceMappingURL=PreviewPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewPlugin.d.ts","sourceRoot":"","sources":["../../../src/PreviewPlugin.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAoB,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAQ/D,eAAO,MAAM,aAAa,4BAUzB,CAAC"}
1
+ {"version":3,"file":"PreviewPlugin.d.ts","sourceRoot":"","sources":["../../../src/PreviewPlugin.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAoB,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAQ/D,eAAO,MAAM,aAAa,4BAUzB,CAAC;eAEa,aAAa"}
@@ -0,0 +1,4 @@
1
+ import { Plugin } from '@dxos/app-framework';
2
+ export declare const PreviewPlugin: Plugin.PluginFactory<void>;
3
+ export default PreviewPlugin;
4
+ //# sourceMappingURL=PreviewPlugin.node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreviewPlugin.node.d.ts","sourceRoot":"","sources":["../../../src/PreviewPlugin.node.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAM7C,eAAO,MAAM,aAAa,4BAGzB,CAAC;eAEa,aAAa"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=PreviewPlugin.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreviewPlugin.test.d.ts","sourceRoot":"","sources":["../../../src/PreviewPlugin.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { Plugin } from '@dxos/app-framework';
2
+ export declare const PreviewPlugin: Plugin.PluginFactory<void>;
3
+ export default PreviewPlugin;
4
+ //# sourceMappingURL=PreviewPlugin.workerd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreviewPlugin.workerd.d.ts","sourceRoot":"","sources":["../../../src/PreviewPlugin.workerd.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAM7C,eAAO,MAAM,aAAa,4BAGzB,CAAC;eAEa,aAAa"}
@@ -1,3 +1,4 @@
1
- export * from './preview-popover';
2
- export * from './react-surface';
1
+ import { Capability } from '@dxos/app-framework';
2
+ export declare const PreviewPopover: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<null>>, Error>;
3
+ export declare const ReactSurface: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/Capabilities").ReactSurface>>, Error>;
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,cAAc,8FAAuE,CAAC;AACnG,eAAO,MAAM,YAAY,iJAAmE,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-popover.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/preview-popover.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { type AppSurface } from '@dxos/app-toolkit/ui';
3
+ export declare const DynamicTypeCard: ({ subject }: AppSurface.ObjectCardProps) => React.JSX.Element;
4
+ //# sourceMappingURL=DynamicTypeCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DynamicTypeCard.d.ts","sourceRoot":"","sources":["../../../../src/cards/DynamicTypeCard.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAUvD,eAAO,MAAM,eAAe,gBAAiB,UAAU,CAAC,eAAe,sBAoCtE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { type AppSurface } from '@dxos/app-toolkit/ui';
3
+ export declare const ExpandoCard: ({ subject, ignorePaths }: AppSurface.ObjectCardProps) => React.JSX.Element;
4
+ //# sourceMappingURL=ExpandoCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpandoCard.d.ts","sourceRoot":"","sources":["../../../../src/cards/ExpandoCard.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AA2BvD,eAAO,MAAM,WAAW,6BAA8B,UAAU,CAAC,eAAe,sBAyC/E,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { type SurfaceComponentProps } from '@dxos/app-toolkit/ui';
2
+ import { type AppSurface } from '@dxos/app-toolkit/ui';
3
3
  import { type ProjectionModel } from '@dxos/schema';
4
- export declare const FormCard: ({ subject, projection }: SurfaceComponentProps & {
4
+ export declare const FormCard: ({ subject, projection }: AppSurface.ObjectCardProps & {
5
5
  projection?: ProjectionModel;
6
6
  }) => React.JSX.Element;
7
7
  //# sourceMappingURL=FormCard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormCard.d.ts","sourceRoot":"","sources":["../../../../src/cards/FormCard.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAKlE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAKpD,eAAO,MAAM,QAAQ,GAAI,yBAAyB,qBAAqB,GAAG;IAAE,UAAU,CAAC,EAAE,eAAe,CAAA;CAAE,sBA+BzG,CAAC"}
1
+ {"version":3,"file":"FormCard.d.ts","sourceRoot":"","sources":["../../../../src/cards/FormCard.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAKvD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAKpD,eAAO,MAAM,QAAQ,4BAA6B,UAAU,CAAC,eAAe,GAAG;IAAE,UAAU,CAAC,EAAE,eAAe,CAAA;CAAE,sBA+B9G,CAAC"}