@dxos/plugin-space 0.8.4-main.72ec0f3 → 0.8.4-main.7ace549

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 (187) hide show
  1. package/dist/lib/browser/{ObjectDetailsPanel-2BRUBHP6.mjs → ObjectDetailsPanel-ACGHWPDX.mjs} +2 -2
  2. package/dist/lib/browser/{ObjectDetailsPanel-2BRUBHP6.mjs.map → ObjectDetailsPanel-ACGHWPDX.mjs.map} +3 -3
  3. package/dist/lib/browser/{ObjectSettings-5LLWCVEK.mjs → ObjectSettings-U3IH7BMV.mjs} +2 -2
  4. package/dist/lib/browser/{ObjectSettings-5LLWCVEK.mjs.map → ObjectSettings-U3IH7BMV.mjs.map} +3 -3
  5. package/dist/lib/browser/{RecordArticle-SXDRWTTU.mjs → RecordArticle-2PFEBPXY.mjs} +1 -1
  6. package/dist/lib/browser/RecordArticle-2PFEBPXY.mjs.map +7 -0
  7. package/dist/lib/browser/{app-graph-builder-VQAB3GCQ.mjs → app-graph-builder-HABMCWAI.mjs} +140 -151
  8. package/dist/lib/browser/app-graph-builder-HABMCWAI.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-serializer-KSLKMEPP.mjs → app-graph-serializer-G3VFEGTN.mjs} +4 -4
  10. package/dist/lib/browser/chunk-6A3NWBB6.mjs +392 -0
  11. package/dist/lib/browser/chunk-6A3NWBB6.mjs.map +7 -0
  12. package/dist/lib/browser/{chunk-K5J7ZB5P.mjs → chunk-C6DAPIFF.mjs} +3 -3
  13. package/dist/lib/browser/chunk-C6DAPIFF.mjs.map +7 -0
  14. package/dist/lib/browser/{chunk-ERQMHU7L.mjs → chunk-GJOZILGC.mjs} +163 -105
  15. package/dist/lib/browser/chunk-GJOZILGC.mjs.map +7 -0
  16. package/dist/lib/browser/{chunk-J2BUK5E6.mjs → chunk-KCZ527AM.mjs} +169 -101
  17. package/dist/lib/browser/chunk-KCZ527AM.mjs.map +7 -0
  18. package/dist/lib/browser/{chunk-PU5IOFMG.mjs → chunk-P25R3AOK.mjs} +4 -47
  19. package/dist/lib/browser/{chunk-PU5IOFMG.mjs.map → chunk-P25R3AOK.mjs.map} +4 -4
  20. package/dist/lib/browser/{chunk-OLBBSOVI.mjs → chunk-POFUXISV.mjs} +53 -59
  21. package/dist/lib/browser/chunk-POFUXISV.mjs.map +7 -0
  22. package/dist/lib/browser/index.mjs +47 -94
  23. package/dist/lib/browser/index.mjs.map +3 -3
  24. package/dist/lib/browser/{intent-resolver-Q2XWHAVA.mjs → intent-resolver-RZEWNJ2K.mjs} +51 -40
  25. package/dist/lib/browser/intent-resolver-RZEWNJ2K.mjs.map +7 -0
  26. package/dist/lib/browser/meta.json +1 -1
  27. package/dist/lib/browser/{react-root-MM4HADPE.mjs → react-root-JCRD74GI.mjs} +6 -6
  28. package/dist/lib/browser/{react-surface-SGZC3Y4U.mjs → react-surface-VOETEAG3.mjs} +28 -14
  29. package/dist/lib/browser/react-surface-VOETEAG3.mjs.map +7 -0
  30. package/dist/lib/browser/repair-CNLE35NF.mjs +44 -0
  31. package/dist/lib/browser/repair-CNLE35NF.mjs.map +7 -0
  32. package/dist/lib/browser/{settings-WKLGKUHQ.mjs → settings-TRLI52I5.mjs} +2 -2
  33. package/dist/lib/browser/{spaces-ready-C5QC2UFL.mjs → spaces-ready-OHGCWZHQ.mjs} +13 -7
  34. package/dist/lib/browser/{spaces-ready-C5QC2UFL.mjs.map → spaces-ready-OHGCWZHQ.mjs.map} +2 -2
  35. package/dist/lib/browser/{state-Q7YRE5KG.mjs → state-C7N6EDDZ.mjs} +2 -2
  36. package/dist/lib/browser/types/index.mjs +9 -3
  37. package/dist/lib/node-esm/{ObjectDetailsPanel-6PZQIQG3.mjs → ObjectDetailsPanel-6OFTT3GG.mjs} +2 -2
  38. package/dist/lib/node-esm/{ObjectDetailsPanel-6PZQIQG3.mjs.map → ObjectDetailsPanel-6OFTT3GG.mjs.map} +3 -3
  39. package/dist/lib/node-esm/{ObjectSettings-OQSBOH7K.mjs → ObjectSettings-YXPJQMJ5.mjs} +2 -2
  40. package/dist/lib/node-esm/{ObjectSettings-OQSBOH7K.mjs.map → ObjectSettings-YXPJQMJ5.mjs.map} +3 -3
  41. package/dist/lib/node-esm/{RecordArticle-NACBH42P.mjs → RecordArticle-SSJ7PULS.mjs} +1 -1
  42. package/dist/lib/node-esm/RecordArticle-SSJ7PULS.mjs.map +7 -0
  43. package/dist/lib/node-esm/{app-graph-builder-24JCLJPX.mjs → app-graph-builder-T6VJKIOA.mjs} +140 -151
  44. package/dist/lib/node-esm/app-graph-builder-T6VJKIOA.mjs.map +7 -0
  45. package/dist/lib/node-esm/{app-graph-serializer-R723K764.mjs → app-graph-serializer-2NLWWFUB.mjs} +4 -4
  46. package/dist/lib/node-esm/{chunk-TJPQDQNI.mjs → chunk-7EV4SN47.mjs} +4 -47
  47. package/dist/lib/node-esm/{chunk-TJPQDQNI.mjs.map → chunk-7EV4SN47.mjs.map} +4 -4
  48. package/dist/lib/node-esm/{chunk-WC4VBFMA.mjs → chunk-AX3UGL5D.mjs} +53 -59
  49. package/dist/lib/node-esm/chunk-AX3UGL5D.mjs.map +7 -0
  50. package/dist/lib/node-esm/{chunk-VH2EBZEV.mjs → chunk-I6FZP42D.mjs} +163 -105
  51. package/dist/lib/node-esm/chunk-I6FZP42D.mjs.map +7 -0
  52. package/dist/lib/node-esm/{chunk-ITQFSFQ3.mjs → chunk-JAMGJUFU.mjs} +169 -101
  53. package/dist/lib/node-esm/chunk-JAMGJUFU.mjs.map +7 -0
  54. package/dist/lib/node-esm/{chunk-Z7BB6HC2.mjs → chunk-WWGV5FJM.mjs} +3 -3
  55. package/dist/lib/node-esm/chunk-WWGV5FJM.mjs.map +7 -0
  56. package/dist/lib/node-esm/chunk-X34VDVMY.mjs +393 -0
  57. package/dist/lib/node-esm/chunk-X34VDVMY.mjs.map +7 -0
  58. package/dist/lib/node-esm/index.mjs +47 -94
  59. package/dist/lib/node-esm/index.mjs.map +3 -3
  60. package/dist/lib/node-esm/{intent-resolver-YK4ESSET.mjs → intent-resolver-4PHJWDXW.mjs} +51 -40
  61. package/dist/lib/node-esm/intent-resolver-4PHJWDXW.mjs.map +7 -0
  62. package/dist/lib/node-esm/meta.json +1 -1
  63. package/dist/lib/node-esm/{react-root-5ANDLQMX.mjs → react-root-O5I5CDJ7.mjs} +6 -6
  64. package/dist/lib/node-esm/{react-surface-V7J2QB44.mjs → react-surface-J3XDMU2D.mjs} +28 -14
  65. package/dist/lib/node-esm/react-surface-J3XDMU2D.mjs.map +7 -0
  66. package/dist/lib/node-esm/repair-EHZS6MFY.mjs +45 -0
  67. package/dist/lib/node-esm/repair-EHZS6MFY.mjs.map +7 -0
  68. package/dist/lib/node-esm/{settings-RBB5633M.mjs → settings-MNQTKHL7.mjs} +2 -2
  69. package/dist/lib/node-esm/{spaces-ready-SJCXV6YH.mjs → spaces-ready-ZPU24DA2.mjs} +13 -7
  70. package/dist/lib/node-esm/{spaces-ready-SJCXV6YH.mjs.map → spaces-ready-ZPU24DA2.mjs.map} +2 -2
  71. package/dist/lib/node-esm/{state-362I5BMK.mjs → state-45TXZQJ6.mjs} +2 -2
  72. package/dist/lib/node-esm/types/index.mjs +9 -3
  73. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  74. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  75. package/dist/types/src/capabilities/capabilities.d.ts +9 -4
  76. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  77. package/dist/types/src/capabilities/index.d.ts +1 -1
  78. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  79. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  80. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  81. package/dist/types/src/capabilities/repair.d.ts +4 -0
  82. package/dist/types/src/capabilities/repair.d.ts.map +1 -0
  83. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  84. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  85. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +147 -253
  86. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  87. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +14 -7
  88. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  89. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts +147 -253
  90. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts.map +1 -1
  91. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  92. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts +147 -253
  93. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts.map +1 -1
  94. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +3 -3
  95. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
  96. package/dist/types/src/components/RecordArticle.stories.d.ts +147 -253
  97. package/dist/types/src/components/RecordArticle.stories.d.ts.map +1 -1
  98. package/dist/types/src/components/SchemaContainer.d.ts +1 -1
  99. package/dist/types/src/components/SchemaContainer.d.ts.map +1 -1
  100. package/dist/types/src/components/SpacePresence/SpacePresence.d.ts +2 -2
  101. package/dist/types/src/components/SpacePresence/SpacePresence.d.ts.map +1 -1
  102. package/dist/types/src/components/SpacePresence/SpacePresence.stories.d.ts +147 -253
  103. package/dist/types/src/components/SpacePresence/SpacePresence.stories.d.ts.map +1 -1
  104. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  105. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +147 -253
  106. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  107. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +147 -253
  108. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  109. package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
  110. package/dist/types/src/components/index.d.ts +2 -2
  111. package/dist/types/src/helpers/query.d.ts +1 -1
  112. package/dist/types/src/helpers/query.d.ts.map +1 -1
  113. package/dist/types/src/hooks/useTypeOptions.d.ts +2 -2
  114. package/dist/types/src/hooks/useTypeOptions.d.ts.map +1 -1
  115. package/dist/types/src/translations.d.ts +147 -253
  116. package/dist/types/src/translations.d.ts.map +1 -1
  117. package/dist/types/src/types/form.d.ts +24 -0
  118. package/dist/types/src/types/form.d.ts.map +1 -0
  119. package/dist/types/src/types/index.d.ts +1 -0
  120. package/dist/types/src/types/index.d.ts.map +1 -1
  121. package/dist/types/src/types/types.d.ts +29 -72
  122. package/dist/types/src/types/types.d.ts.map +1 -1
  123. package/dist/types/src/util.d.ts +16 -32
  124. package/dist/types/src/util.d.ts.map +1 -1
  125. package/dist/types/tsconfig.tsbuildinfo +1 -1
  126. package/package.json +54 -50
  127. package/src/SpacePlugin.ts +34 -84
  128. package/src/capabilities/app-graph-builder.ts +130 -227
  129. package/src/capabilities/capabilities.ts +10 -5
  130. package/src/capabilities/index.ts +1 -1
  131. package/src/capabilities/intent-resolver.ts +31 -35
  132. package/src/capabilities/react-surface.tsx +34 -8
  133. package/src/capabilities/repair.ts +57 -0
  134. package/src/capabilities/spaces-ready.ts +7 -1
  135. package/src/components/CreateDialog/CreateObjectDialog.tsx +33 -23
  136. package/src/components/CreateDialog/CreateObjectPanel.tsx +32 -25
  137. package/src/components/ObjectDetailsPanel/ObjectForm.tsx +1 -1
  138. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +4 -5
  139. package/src/components/ObjectSettings/BaseObjectSettings.tsx +1 -1
  140. package/src/components/ObjectSettings/ForeignKeys.tsx +5 -5
  141. package/src/components/RecordArticle.tsx +6 -6
  142. package/src/components/SchemaContainer.tsx +2 -2
  143. package/src/components/SpacePresence/SpacePresence.tsx +2 -2
  144. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +25 -6
  145. package/src/components/ViewEditor.tsx +9 -3
  146. package/src/helpers/query.ts +1 -1
  147. package/src/hooks/useTypeOptions.ts +3 -35
  148. package/src/translations.ts +52 -57
  149. package/src/types/form.ts +75 -0
  150. package/src/types/index.ts +1 -0
  151. package/src/types/types.ts +26 -36
  152. package/src/util.tsx +165 -107
  153. package/dist/lib/browser/RecordArticle-SXDRWTTU.mjs.map +0 -7
  154. package/dist/lib/browser/app-graph-builder-VQAB3GCQ.mjs.map +0 -7
  155. package/dist/lib/browser/chunk-ERQMHU7L.mjs.map +0 -7
  156. package/dist/lib/browser/chunk-J2BUK5E6.mjs.map +0 -7
  157. package/dist/lib/browser/chunk-K5J7ZB5P.mjs.map +0 -7
  158. package/dist/lib/browser/chunk-M2Z6D4ZI.mjs +0 -349
  159. package/dist/lib/browser/chunk-M2Z6D4ZI.mjs.map +0 -7
  160. package/dist/lib/browser/chunk-OLBBSOVI.mjs.map +0 -7
  161. package/dist/lib/browser/intent-resolver-Q2XWHAVA.mjs.map +0 -7
  162. package/dist/lib/browser/react-surface-SGZC3Y4U.mjs.map +0 -7
  163. package/dist/lib/browser/schema-defs-QPI2JU3X.mjs +0 -26
  164. package/dist/lib/browser/schema-defs-QPI2JU3X.mjs.map +0 -7
  165. package/dist/lib/node-esm/RecordArticle-NACBH42P.mjs.map +0 -7
  166. package/dist/lib/node-esm/app-graph-builder-24JCLJPX.mjs.map +0 -7
  167. package/dist/lib/node-esm/chunk-2PN7QNGV.mjs +0 -350
  168. package/dist/lib/node-esm/chunk-2PN7QNGV.mjs.map +0 -7
  169. package/dist/lib/node-esm/chunk-ITQFSFQ3.mjs.map +0 -7
  170. package/dist/lib/node-esm/chunk-VH2EBZEV.mjs.map +0 -7
  171. package/dist/lib/node-esm/chunk-WC4VBFMA.mjs.map +0 -7
  172. package/dist/lib/node-esm/chunk-Z7BB6HC2.mjs.map +0 -7
  173. package/dist/lib/node-esm/intent-resolver-YK4ESSET.mjs.map +0 -7
  174. package/dist/lib/node-esm/react-surface-V7J2QB44.mjs.map +0 -7
  175. package/dist/lib/node-esm/schema-defs-ZS2D47XW.mjs +0 -27
  176. package/dist/lib/node-esm/schema-defs-ZS2D47XW.mjs.map +0 -7
  177. package/dist/types/src/capabilities/schema-defs.d.ts +0 -4
  178. package/dist/types/src/capabilities/schema-defs.d.ts.map +0 -1
  179. package/src/capabilities/schema-defs.ts +0 -31
  180. /package/dist/lib/browser/{app-graph-serializer-KSLKMEPP.mjs.map → app-graph-serializer-G3VFEGTN.mjs.map} +0 -0
  181. /package/dist/lib/browser/{react-root-MM4HADPE.mjs.map → react-root-JCRD74GI.mjs.map} +0 -0
  182. /package/dist/lib/browser/{settings-WKLGKUHQ.mjs.map → settings-TRLI52I5.mjs.map} +0 -0
  183. /package/dist/lib/browser/{state-Q7YRE5KG.mjs.map → state-C7N6EDDZ.mjs.map} +0 -0
  184. /package/dist/lib/node-esm/{app-graph-serializer-R723K764.mjs.map → app-graph-serializer-2NLWWFUB.mjs.map} +0 -0
  185. /package/dist/lib/node-esm/{react-root-5ANDLQMX.mjs.map → react-root-O5I5CDJ7.mjs.map} +0 -0
  186. /package/dist/lib/node-esm/{settings-RBB5633M.mjs.map → settings-MNQTKHL7.mjs.map} +0 -0
  187. /package/dist/lib/node-esm/{state-362I5BMK.mjs.map → state-45TXZQJ6.mjs.map} +0 -0
@@ -0,0 +1,393 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ meta
4
+ } from "./chunk-BDEFTL6K.mjs";
5
+
6
+ // src/types/form.ts
7
+ import * as Option from "effect/Option";
8
+ import * as Schema from "effect/Schema";
9
+ import { Type } from "@dxos/echo";
10
+ import { EntityKind, SystemTypeAnnotation, createAnnotationHelper, getTypeAnnotation } from "@dxos/echo/internal";
11
+ var TypeInputOptions = Schema.Struct({
12
+ location: Schema.Array(Schema.Literal("database", "runtime")),
13
+ kind: Schema.Array(Schema.Literal("system", "user")),
14
+ registered: Schema.Array(Schema.Literal("registered", "unregistered"))
15
+ });
16
+ var TypeInputOptionsAnnotationId = Symbol.for("@dxos/schema/annotation/TypeInputOptions");
17
+ var TypeInputOptionsAnnotation = createAnnotationHelper(TypeInputOptionsAnnotationId);
18
+ var getTypenames = ({ annotation, space, client }) => {
19
+ const includeRuntime = annotation.location.includes("runtime");
20
+ const includeDatabase = annotation.location.includes("database");
21
+ const includeSystemType = annotation.kind.includes("system");
22
+ const includeUserType = annotation.kind.includes("user");
23
+ const includeRegistered = annotation.registered.includes("registered");
24
+ const includeUnregistered = annotation.registered.includes("unregistered");
25
+ const runtimeTypenames = includeRuntime ? client.graph.schemaRegistry.schemas.filter((schema) => {
26
+ const relation = getTypeAnnotation(schema)?.kind === EntityKind.Relation;
27
+ if (relation) {
28
+ return includeSystemType;
29
+ }
30
+ const system = SystemTypeAnnotation.get(schema).pipe(Option.getOrElse(() => false));
31
+ if (system) {
32
+ return includeSystemType;
33
+ }
34
+ return includeUserType;
35
+ }).filter((schema) => {
36
+ const registered = space?.properties.staticRecords?.includes(Type.getTypename(schema));
37
+ return registered ? includeRegistered : includeUnregistered;
38
+ }).map((schema) => Type.getTypename(schema)) : [];
39
+ const databaseTypenames = includeDatabase && includeRegistered && space ? space.db.schemaRegistry.query().runSync().map((schema) => schema.typename) : [];
40
+ return Array.from(/* @__PURE__ */ new Set([
41
+ ...runtimeTypenames,
42
+ ...databaseTypenames
43
+ ])).sort();
44
+ };
45
+
46
+ // src/types/types.ts
47
+ import * as Schema2 from "effect/Schema";
48
+ import { QueryAST, Type as Type2 } from "@dxos/echo";
49
+ import { EchoObjectSchema, ReactiveObjectSchema, SpaceSchema } from "@dxos/react-client/echo";
50
+ import { CancellableInvitationObservable, Invitation } from "@dxos/react-client/invitations";
51
+ import { Collection, FieldSchema, View } from "@dxos/schema";
52
+ var SPACE_DIRECTORY_HANDLE = `${meta.id}/directory`;
53
+ var SPACE_TYPE = "dxos.org/type/Space";
54
+ var SpaceSettingsSchema = Schema2.mutable(Schema2.Struct({
55
+ /**
56
+ * Show closed spaces.
57
+ */
58
+ showHidden: Schema2.Boolean
59
+ }));
60
+ var IconAnnotationId = Symbol.for("@dxos/plugin-space/annotation/Icon");
61
+ var HueAnnotationId = Symbol.for("@dxos/plugin-space/annotation/Hue");
62
+ var SpaceForm = Schema2.Struct({
63
+ name: Schema2.optional(Schema2.String.annotations({
64
+ title: "Name"
65
+ })),
66
+ icon: Schema2.optional(Schema2.String.annotations({
67
+ title: "Icon",
68
+ [IconAnnotationId]: true
69
+ })),
70
+ hue: Schema2.optional(Schema2.String.annotations({
71
+ title: "Color",
72
+ [HueAnnotationId]: true
73
+ })),
74
+ // TODO(wittjosiah): Make optional with default value.
75
+ edgeReplication: Schema2.Boolean.annotations({
76
+ title: "Enable EDGE Replication"
77
+ })
78
+ });
79
+ var SPACE_ACTION = `${meta.id}/action`;
80
+ (function(SpaceAction2) {
81
+ class OpenCreateSpace extends Schema2.TaggedClass()(`${SPACE_ACTION}/open-create-space`, {
82
+ input: Schema2.Void,
83
+ output: Schema2.Void
84
+ }) {
85
+ }
86
+ SpaceAction2.OpenCreateSpace = OpenCreateSpace;
87
+ class Create extends Schema2.TaggedClass()(`${SPACE_ACTION}/create`, {
88
+ input: SpaceForm,
89
+ output: Schema2.Struct({
90
+ id: Schema2.String,
91
+ subject: Schema2.Array(Schema2.String),
92
+ space: SpaceSchema
93
+ })
94
+ }) {
95
+ }
96
+ SpaceAction2.Create = Create;
97
+ class Join extends Schema2.TaggedClass()(`${SPACE_ACTION}/join`, {
98
+ input: Schema2.Struct({
99
+ invitationCode: Schema2.optional(Schema2.String),
100
+ onDone: Schema2.optional(Schema2.Any)
101
+ }),
102
+ output: Schema2.Void
103
+ }) {
104
+ }
105
+ SpaceAction2.Join = Join;
106
+ class OpenMembers extends Schema2.TaggedClass()(`${SPACE_ACTION}/open-members`, {
107
+ input: Schema2.Struct({
108
+ space: SpaceSchema
109
+ }),
110
+ output: Schema2.Void
111
+ }) {
112
+ }
113
+ SpaceAction2.OpenMembers = OpenMembers;
114
+ class Share extends Schema2.TaggedClass()(`${SPACE_ACTION}/share`, {
115
+ input: Schema2.Struct({
116
+ space: SpaceSchema,
117
+ type: Schema2.Enums(Invitation.Type),
118
+ authMethod: Schema2.Enums(Invitation.AuthMethod),
119
+ multiUse: Schema2.Boolean,
120
+ target: Schema2.optional(Schema2.String)
121
+ }),
122
+ output: Schema2.instanceOf(CancellableInvitationObservable)
123
+ }) {
124
+ }
125
+ SpaceAction2.Share = Share;
126
+ class GetShareLink extends Schema2.TaggedClass()(`${SPACE_ACTION}/get-share-link`, {
127
+ input: Schema2.Struct({
128
+ space: SpaceSchema,
129
+ target: Schema2.optional(Schema2.String),
130
+ copyToClipboard: Schema2.optional(Schema2.Boolean)
131
+ }),
132
+ output: Schema2.String
133
+ }) {
134
+ }
135
+ SpaceAction2.GetShareLink = GetShareLink;
136
+ class Lock extends Schema2.TaggedClass()(`${SPACE_ACTION}/lock`, {
137
+ input: Schema2.Struct({
138
+ space: SpaceSchema
139
+ }),
140
+ output: Schema2.Void
141
+ }) {
142
+ }
143
+ SpaceAction2.Lock = Lock;
144
+ class Unlock extends Schema2.TaggedClass()(`${SPACE_ACTION}/unlock`, {
145
+ input: Schema2.Struct({
146
+ space: SpaceSchema
147
+ }),
148
+ output: Schema2.Void
149
+ }) {
150
+ }
151
+ SpaceAction2.Unlock = Unlock;
152
+ class Rename extends Schema2.TaggedClass()(`${SPACE_ACTION}/rename`, {
153
+ input: Schema2.Struct({
154
+ space: SpaceSchema,
155
+ caller: Schema2.optional(Schema2.String)
156
+ }),
157
+ output: Schema2.Void
158
+ }) {
159
+ }
160
+ SpaceAction2.Rename = Rename;
161
+ class OpenSettings extends Schema2.TaggedClass()(`${SPACE_ACTION}/open-settings`, {
162
+ input: Schema2.Struct({
163
+ space: SpaceSchema
164
+ }),
165
+ output: Schema2.Void
166
+ }) {
167
+ }
168
+ SpaceAction2.OpenSettings = OpenSettings;
169
+ class Open extends Schema2.TaggedClass()(`${SPACE_ACTION}/open`, {
170
+ input: Schema2.Struct({
171
+ space: SpaceSchema
172
+ }),
173
+ output: Schema2.Void
174
+ }) {
175
+ }
176
+ SpaceAction2.Open = Open;
177
+ class Close extends Schema2.TaggedClass()(`${SPACE_ACTION}/close`, {
178
+ input: Schema2.Struct({
179
+ space: SpaceSchema
180
+ }),
181
+ output: Schema2.Void
182
+ }) {
183
+ }
184
+ SpaceAction2.Close = Close;
185
+ class Migrate extends Schema2.TaggedClass()(`${SPACE_ACTION}/migrate`, {
186
+ input: Schema2.Struct({
187
+ space: SpaceSchema,
188
+ version: Schema2.optional(Schema2.String)
189
+ }),
190
+ output: Schema2.Boolean
191
+ }) {
192
+ }
193
+ SpaceAction2.Migrate = Migrate;
194
+ class Snapshot extends Schema2.TaggedClass()(`${SPACE_ACTION}/snapshot`, {
195
+ input: Schema2.Struct({
196
+ space: SpaceSchema,
197
+ query: QueryAST.Query.pipe(Schema2.optional)
198
+ }),
199
+ output: Schema2.Struct({
200
+ snapshot: Schema2.instanceOf(Blob)
201
+ })
202
+ }) {
203
+ }
204
+ SpaceAction2.Snapshot = Snapshot;
205
+ SpaceAction2.StoredSchemaForm = Schema2.Struct({
206
+ name: Schema2.optional(Schema2.String),
207
+ typename: Schema2.String.pipe(Schema2.annotations({
208
+ title: "Select type (leave blank to create a new type)"
209
+ }), TypeInputOptionsAnnotation.set({
210
+ location: [
211
+ "runtime"
212
+ ],
213
+ kind: [
214
+ "user"
215
+ ],
216
+ registered: [
217
+ "unregistered"
218
+ ]
219
+ }), Schema2.optional)
220
+ });
221
+ class UseStaticSchema extends Schema2.TaggedClass()(`${SPACE_ACTION}/use-static-schema`, {
222
+ input: Schema2.Struct({
223
+ space: SpaceSchema,
224
+ typename: Schema2.String,
225
+ // TODO(wittjosiah): This is leaky.
226
+ show: Schema2.optional(Schema2.Boolean)
227
+ }),
228
+ output: Schema2.Struct({})
229
+ }) {
230
+ }
231
+ SpaceAction2.UseStaticSchema = UseStaticSchema;
232
+ class AddSchema extends Schema2.TaggedClass()(`${SPACE_ACTION}/add-schema`, {
233
+ input: Schema2.Struct({
234
+ space: SpaceSchema,
235
+ name: Schema2.optional(Schema2.String),
236
+ typename: Schema2.optional(Schema2.String),
237
+ // TODO(wittjosiah): Semantic version format.
238
+ version: Schema2.optional(Schema2.String),
239
+ // TODO(wittjosiah): Schema for schema?
240
+ schema: Schema2.Any,
241
+ // TODO(wittjosiah): This is leaky.
242
+ show: Schema2.optional(Schema2.Boolean)
243
+ }),
244
+ output: Schema2.Struct({
245
+ // TODO(wittjosiah): ObjectId.
246
+ id: Schema2.String,
247
+ object: Type2.PersistentType,
248
+ schema: Schema2.instanceOf(Type2.RuntimeType)
249
+ })
250
+ }) {
251
+ }
252
+ SpaceAction2.AddSchema = AddSchema;
253
+ class DeleteField extends Schema2.TaggedClass()(`${SPACE_ACTION}/delete-field`, {
254
+ input: Schema2.Struct({
255
+ view: View.View,
256
+ fieldId: Schema2.String,
257
+ // TODO(wittjosiah): Separate fields for undo data?
258
+ deletionData: Schema2.optional(Schema2.Struct({
259
+ field: FieldSchema,
260
+ // TODO(wittjosiah): This creates a type error.
261
+ // props: PropertySchema,
262
+ props: Schema2.Any,
263
+ index: Schema2.Number
264
+ }))
265
+ }),
266
+ output: Schema2.Void
267
+ }) {
268
+ }
269
+ SpaceAction2.DeleteField = DeleteField;
270
+ class OpenCreateObject extends Schema2.TaggedClass()(`${SPACE_ACTION}/open-create-object`, {
271
+ input: Schema2.Struct({
272
+ target: Schema2.Union(SpaceSchema, Collection.Collection),
273
+ views: Schema2.optional(Schema2.Boolean),
274
+ typename: Schema2.optional(Schema2.String),
275
+ initialFormValues: Schema2.optional(Schema2.Any),
276
+ navigable: Schema2.optional(Schema2.Boolean),
277
+ // TODO(wittjosiah): This is a function, is there a better way to handle this?
278
+ onCreateObject: Schema2.optional(Schema2.Any)
279
+ }),
280
+ output: Schema2.Void
281
+ }) {
282
+ }
283
+ SpaceAction2.OpenCreateObject = OpenCreateObject;
284
+ class AddObject extends Schema2.TaggedClass()(`${SPACE_ACTION}/add-object`, {
285
+ input: Schema2.Struct({
286
+ object: ReactiveObjectSchema,
287
+ target: Schema2.Union(SpaceSchema, Collection.Collection),
288
+ hidden: Schema2.optional(Schema2.Boolean)
289
+ }),
290
+ output: Schema2.Struct({
291
+ // TODO(wittjosiah): ObjectId.
292
+ id: Schema2.String,
293
+ subject: Schema2.Array(Schema2.String),
294
+ object: EchoObjectSchema
295
+ })
296
+ }) {
297
+ }
298
+ SpaceAction2.AddObject = AddObject;
299
+ class AddRelation extends Schema2.TaggedClass()(`${SPACE_ACTION}/add-relation`, {
300
+ input: Schema2.Struct({
301
+ space: SpaceSchema,
302
+ // TODO(wittjosiah): Relation schema.
303
+ schema: Schema2.Any,
304
+ source: Type2.Expando,
305
+ target: Type2.Expando,
306
+ // TODO(wittjosiah): Type based on relation schema.
307
+ fields: Schema2.optional(Schema2.Record({
308
+ key: Schema2.String,
309
+ value: Schema2.Any
310
+ }))
311
+ }),
312
+ output: Schema2.Struct({
313
+ relation: Schema2.Any
314
+ })
315
+ }) {
316
+ }
317
+ SpaceAction2.AddRelation = AddRelation;
318
+ SpaceAction2.DeletionData = Schema2.Struct({
319
+ objects: Schema2.Array(EchoObjectSchema),
320
+ parentCollection: Collection.Collection,
321
+ indices: Schema2.Array(Schema2.Number),
322
+ nestedObjectsList: Schema2.Array(Schema2.Array(EchoObjectSchema)),
323
+ wasActive: Schema2.Array(Schema2.String)
324
+ });
325
+ class RemoveObjects extends Schema2.TaggedClass()(`${SPACE_ACTION}/remove-objects`, {
326
+ input: Schema2.Struct({
327
+ // TODO(wittjosiah): Should be Schema.Union(Type.Obj, Type.Relation).
328
+ objects: Schema2.Array(ReactiveObjectSchema),
329
+ target: Schema2.optional(Collection.Collection),
330
+ deletionData: Schema2.optional(SpaceAction2.DeletionData)
331
+ }),
332
+ output: Schema2.Void
333
+ }) {
334
+ }
335
+ SpaceAction2.RemoveObjects = RemoveObjects;
336
+ class RenameObject extends Schema2.TaggedClass()(`${SPACE_ACTION}/rename-object`, {
337
+ input: Schema2.Struct({
338
+ object: EchoObjectSchema,
339
+ caller: Schema2.optional(Schema2.String)
340
+ }),
341
+ output: Schema2.Void
342
+ }) {
343
+ }
344
+ SpaceAction2.RenameObject = RenameObject;
345
+ class DuplicateObject extends Schema2.TaggedClass()(`${SPACE_ACTION}/duplicate-object`, {
346
+ input: Schema2.Struct({
347
+ object: EchoObjectSchema,
348
+ target: Schema2.Union(SpaceSchema, Collection.Collection)
349
+ }),
350
+ output: Schema2.Void
351
+ }) {
352
+ }
353
+ SpaceAction2.DuplicateObject = DuplicateObject;
354
+ class WaitForObject extends Schema2.TaggedClass()(`${SPACE_ACTION}/wait-for-object`, {
355
+ input: Schema2.Struct({
356
+ id: Schema2.optional(Schema2.String)
357
+ }),
358
+ output: Schema2.Void
359
+ }) {
360
+ }
361
+ SpaceAction2.WaitForObject = WaitForObject;
362
+ })(SpaceAction || (SpaceAction = {}));
363
+ (function(CollectionAction2) {
364
+ class Create extends Schema2.TaggedClass()("dxos.org/plugin/collection/action/create", {
365
+ input: Schema2.Struct({
366
+ name: Schema2.optional(Schema2.String)
367
+ }),
368
+ output: Schema2.Struct({
369
+ object: Collection.Collection
370
+ })
371
+ }) {
372
+ }
373
+ CollectionAction2.Create = Create;
374
+ })(CollectionAction || (CollectionAction = {}));
375
+ var SpaceAction;
376
+ var CollectionAction;
377
+
378
+ export {
379
+ TypeInputOptions,
380
+ TypeInputOptionsAnnotationId,
381
+ TypeInputOptionsAnnotation,
382
+ getTypenames,
383
+ SPACE_DIRECTORY_HANDLE,
384
+ SPACE_TYPE,
385
+ SpaceSettingsSchema,
386
+ IconAnnotationId,
387
+ HueAnnotationId,
388
+ SpaceForm,
389
+ SPACE_ACTION,
390
+ SpaceAction,
391
+ CollectionAction
392
+ };
393
+ //# sourceMappingURL=chunk-X34VDVMY.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/form.ts", "../../../src/types/types.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\n\nimport { type Client } from '@dxos/client';\nimport { type Space } from '@dxos/client/echo';\nimport { Type } from '@dxos/echo';\nimport { EntityKind, SystemTypeAnnotation, createAnnotationHelper, getTypeAnnotation } from '@dxos/echo/internal';\n\nexport const TypeInputOptions = Schema.Struct({\n location: Schema.Array(Schema.Literal('database', 'runtime')),\n kind: Schema.Array(Schema.Literal('system', 'user')),\n registered: Schema.Array(Schema.Literal('registered', 'unregistered')),\n});\n\nexport type TypeInputOptions = Schema.Schema.Type<typeof TypeInputOptions>;\n\n/**\n * Used in forms to identify the field representing an object's type and determine which types are shown as options.\n */\nexport const TypeInputOptionsAnnotationId = Symbol.for('@dxos/schema/annotation/TypeInputOptions');\nexport const TypeInputOptionsAnnotation = createAnnotationHelper<TypeInputOptions>(TypeInputOptionsAnnotationId);\n\n// TODO(wittjosiah): This is way to complicated and needs to be simplified.\nexport const getTypenames = ({\n annotation,\n space,\n client,\n}: {\n annotation: TypeInputOptions;\n space?: Space;\n client: Client;\n}) => {\n const includeRuntime = annotation.location.includes('runtime');\n const includeDatabase = annotation.location.includes('database');\n const includeSystemType = annotation.kind.includes('system');\n const includeUserType = annotation.kind.includes('user');\n const includeRegistered = annotation.registered.includes('registered');\n const includeUnregistered = annotation.registered.includes('unregistered');\n\n const runtimeTypenames = includeRuntime\n ? client.graph.schemaRegistry.schemas\n .filter((schema) => {\n const relation = getTypeAnnotation(schema)?.kind === EntityKind.Relation;\n if (relation) {\n return includeSystemType;\n }\n\n const system = SystemTypeAnnotation.get(schema).pipe(Option.getOrElse(() => false));\n if (system) {\n return includeSystemType;\n }\n\n return includeUserType;\n })\n .filter((schema) => {\n const registered = space?.properties.staticRecords?.includes(Type.getTypename(schema));\n return registered ? includeRegistered : includeUnregistered;\n })\n .map((schema) => Type.getTypename(schema))\n : [];\n\n const databaseTypenames =\n includeDatabase && includeRegistered && space\n ? space.db.schemaRegistry\n .query()\n .runSync()\n .map((schema) => schema.typename)\n : [];\n\n return Array.from(new Set<string>([...runtimeTypenames, ...databaseTypenames])).sort();\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { type AnyIntentChain } from '@dxos/app-framework';\nimport { type Obj, QueryAST, Type } from '@dxos/echo';\nimport { type PublicKey } from '@dxos/react-client';\n// TODO(wittjosiah): This pulls in full client.\nimport { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';\nimport { CancellableInvitationObservable, Invitation } from '@dxos/react-client/invitations';\nimport { Collection, FieldSchema, View } from '@dxos/schema';\nimport { type ComplexMap } from '@dxos/util';\n\nimport { meta } from '../meta';\n\nimport { TypeInputOptionsAnnotation } from './form';\n\nexport const SPACE_DIRECTORY_HANDLE = `${meta.id}/directory`;\n\nexport const SPACE_TYPE = 'dxos.org/type/Space';\n\nexport type ObjectViewerProps = {\n lastSeen: number;\n currentlyAttended: boolean;\n};\n\nexport type ObjectId = string;\n\nexport type PluginState = {\n /**\n * Which objects are currently being viewed by which peers.\n */\n viewersByObject: Record<ObjectId, ComplexMap<PublicKey, ObjectViewerProps>>;\n\n /**\n * Which peers are currently viewing which objects.\n */\n viewersByIdentity: ComplexMap<PublicKey, Set<ObjectId>>;\n\n /**\n * Object that was linked to directly but not found and is being awaited.\n */\n awaiting: string | undefined;\n\n /**\n * Cached space names, used when spaces are closed or loading.\n */\n spaceNames: Record<string, string>;\n\n /**\n * Which spaces have an SDK migration running currently.\n */\n // TODO(wittjosiah): Factor out to sdk. Migration running should probably be a space state.\n sdkMigrationRunning: Record<string, boolean>;\n\n /**\n * Whether or not the user can navigate to collections in the graph.\n * Determined by whether or not there is an available plugin that can render a collection.\n */\n navigableCollections: boolean;\n\n /**\n * Tracks whether setting edge replication as default has been run on spaces.\n */\n // TODO(wittjosiah): Systematic way to handle migrations of state outside of spaces.\n enabledEdgeReplication: boolean;\n};\n\nexport const SpaceSettingsSchema = Schema.mutable(\n Schema.Struct({\n /**\n * Show closed spaces.\n */\n showHidden: Schema.Boolean,\n }),\n);\n\nexport type SpaceSettingsProps = Schema.Schema.Type<typeof SpaceSettingsSchema>;\n\n// TODO(wittjosiah): Reconcile with graph export serializers.\n\nexport type SerializerMap = Record<string, TypedObjectSerializer>;\n\nexport interface TypedObjectSerializer<T extends Obj.Any = Obj.Any> {\n serialize(params: { object: T }): Promise<string>;\n\n /**\n * @param params.content\n * @param params.space Space to use for deserializing schema references.\n * @param params.newId Generate new ID for deserialized object.\n */\n deserialize(params: { content: string; space: Space; newId?: boolean }): Promise<T>;\n}\n\nexport type CreateObjectIntent = (props: any, options: { space: Space }) => AnyIntentChain;\n\n// TODO(burdon): Move to FormatEnum or SDK.\nexport const IconAnnotationId = Symbol.for('@dxos/plugin-space/annotation/Icon');\nexport const HueAnnotationId = Symbol.for('@dxos/plugin-space/annotation/Hue');\n\nexport const SpaceForm = Schema.Struct({\n name: Schema.optional(Schema.String.annotations({ title: 'Name' })),\n icon: Schema.optional(Schema.String.annotations({ title: 'Icon', [IconAnnotationId]: true })),\n hue: Schema.optional(Schema.String.annotations({ title: 'Color', [HueAnnotationId]: true })),\n // TODO(wittjosiah): Make optional with default value.\n edgeReplication: Schema.Boolean.annotations({ title: 'Enable EDGE Replication' }),\n});\n\nexport const SPACE_ACTION = `${meta.id}/action`;\n\nexport namespace SpaceAction {\n export class OpenCreateSpace extends Schema.TaggedClass<OpenCreateSpace>()(`${SPACE_ACTION}/open-create-space`, {\n input: Schema.Void,\n output: Schema.Void,\n }) {}\n\n export class Create extends Schema.TaggedClass<Create>()(`${SPACE_ACTION}/create`, {\n input: SpaceForm,\n output: Schema.Struct({\n id: Schema.String,\n subject: Schema.Array(Schema.String),\n space: SpaceSchema,\n }),\n }) {}\n\n export class Join extends Schema.TaggedClass<Join>()(`${SPACE_ACTION}/join`, {\n input: Schema.Struct({\n invitationCode: Schema.optional(Schema.String),\n onDone: Schema.optional(Schema.Any),\n }),\n output: Schema.Void,\n }) {}\n\n export class OpenMembers extends Schema.TaggedClass<OpenMembers>()(`${SPACE_ACTION}/open-members`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Share extends Schema.TaggedClass<Share>()(`${SPACE_ACTION}/share`, {\n input: Schema.Struct({\n space: SpaceSchema,\n type: Schema.Enums(Invitation.Type),\n authMethod: Schema.Enums(Invitation.AuthMethod),\n multiUse: Schema.Boolean,\n target: Schema.optional(Schema.String),\n }),\n output: Schema.instanceOf(CancellableInvitationObservable),\n }) {}\n\n export class GetShareLink extends Schema.TaggedClass<GetShareLink>()(`${SPACE_ACTION}/get-share-link`, {\n input: Schema.Struct({\n space: SpaceSchema,\n target: Schema.optional(Schema.String),\n copyToClipboard: Schema.optional(Schema.Boolean),\n }),\n output: Schema.String,\n }) {}\n\n export class Lock extends Schema.TaggedClass<Lock>()(`${SPACE_ACTION}/lock`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Unlock extends Schema.TaggedClass<Unlock>()(`${SPACE_ACTION}/unlock`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Rename extends Schema.TaggedClass<Rename>()(`${SPACE_ACTION}/rename`, {\n input: Schema.Struct({\n space: SpaceSchema,\n caller: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n }) {}\n\n // TODO(wittjosiah): Handle scrolling to section.\n // This maybe motivates making the space settings its own deck?\n export class OpenSettings extends Schema.TaggedClass<OpenSettings>()(`${SPACE_ACTION}/open-settings`, {\n input: Schema.Struct({ space: SpaceSchema }),\n output: Schema.Void,\n }) {}\n\n export class Open extends Schema.TaggedClass<Open>()(`${SPACE_ACTION}/open`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Close extends Schema.TaggedClass<Close>()(`${SPACE_ACTION}/close`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Migrate extends Schema.TaggedClass<Migrate>()(`${SPACE_ACTION}/migrate`, {\n input: Schema.Struct({\n space: SpaceSchema,\n version: Schema.optional(Schema.String),\n }),\n output: Schema.Boolean,\n }) {}\n\n export class Snapshot extends Schema.TaggedClass<Snapshot>()(`${SPACE_ACTION}/snapshot`, {\n input: Schema.Struct({\n space: SpaceSchema,\n query: QueryAST.Query.pipe(Schema.optional),\n }),\n output: Schema.Struct({\n snapshot: Schema.instanceOf(Blob),\n }),\n }) {}\n\n export const StoredSchemaForm = Schema.Struct({\n name: Schema.optional(Schema.String),\n typename: Schema.String.pipe(\n Schema.annotations({ title: 'Select type (leave blank to create a new type)' }),\n TypeInputOptionsAnnotation.set({\n location: ['runtime'],\n kind: ['user'],\n registered: ['unregistered'],\n }),\n Schema.optional,\n ),\n });\n\n export class UseStaticSchema extends Schema.TaggedClass<UseStaticSchema>()(`${SPACE_ACTION}/use-static-schema`, {\n input: Schema.Struct({\n space: SpaceSchema,\n typename: Schema.String,\n // TODO(wittjosiah): This is leaky.\n show: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({}),\n }) {}\n\n export class AddSchema extends Schema.TaggedClass<AddSchema>()(`${SPACE_ACTION}/add-schema`, {\n input: Schema.Struct({\n space: SpaceSchema,\n name: Schema.optional(Schema.String),\n typename: Schema.optional(Schema.String),\n // TODO(wittjosiah): Semantic version format.\n version: Schema.optional(Schema.String),\n // TODO(wittjosiah): Schema for schema?\n schema: Schema.Any,\n // TODO(wittjosiah): This is leaky.\n show: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({\n // TODO(wittjosiah): ObjectId.\n id: Schema.String,\n object: Type.PersistentType,\n schema: Schema.instanceOf(Type.RuntimeType),\n }),\n }) {}\n\n export class DeleteField extends Schema.TaggedClass<DeleteField>()(`${SPACE_ACTION}/delete-field`, {\n input: Schema.Struct({\n view: View.View,\n fieldId: Schema.String,\n // TODO(wittjosiah): Separate fields for undo data?\n deletionData: Schema.optional(\n Schema.Struct({\n field: FieldSchema,\n // TODO(wittjosiah): This creates a type error.\n // props: PropertySchema,\n props: Schema.Any,\n index: Schema.Number,\n }),\n ),\n }),\n output: Schema.Void,\n }) {}\n\n export class OpenCreateObject extends Schema.TaggedClass<OpenCreateObject>()(`${SPACE_ACTION}/open-create-object`, {\n input: Schema.Struct({\n target: Schema.Union(SpaceSchema, Collection.Collection),\n views: Schema.optional(Schema.Boolean),\n typename: Schema.optional(Schema.String),\n initialFormValues: Schema.optional(Schema.Any),\n navigable: Schema.optional(Schema.Boolean),\n // TODO(wittjosiah): This is a function, is there a better way to handle this?\n onCreateObject: Schema.optional(Schema.Any),\n }),\n output: Schema.Void,\n }) {}\n\n export class AddObject extends Schema.TaggedClass<AddObject>()(`${SPACE_ACTION}/add-object`, {\n input: Schema.Struct({\n object: ReactiveObjectSchema,\n target: Schema.Union(SpaceSchema, Collection.Collection),\n hidden: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({\n // TODO(wittjosiah): ObjectId.\n id: Schema.String,\n subject: Schema.Array(Schema.String),\n object: EchoObjectSchema,\n }),\n }) {}\n\n export class AddRelation extends Schema.TaggedClass<AddRelation>()(`${SPACE_ACTION}/add-relation`, {\n input: Schema.Struct({\n space: SpaceSchema,\n // TODO(wittjosiah): Relation schema.\n schema: Schema.Any,\n source: Type.Expando,\n target: Type.Expando,\n // TODO(wittjosiah): Type based on relation schema.\n fields: Schema.optional(Schema.Record({ key: Schema.String, value: Schema.Any })),\n }),\n output: Schema.Struct({\n relation: Schema.Any,\n }),\n }) {}\n\n export const DeletionData = Schema.Struct({\n objects: Schema.Array(EchoObjectSchema),\n parentCollection: Collection.Collection,\n indices: Schema.Array(Schema.Number),\n nestedObjectsList: Schema.Array(Schema.Array(EchoObjectSchema)),\n wasActive: Schema.Array(Schema.String),\n });\n\n export type DeletionData = Schema.Schema.Type<typeof DeletionData>;\n\n export class RemoveObjects extends Schema.TaggedClass<RemoveObjects>()(`${SPACE_ACTION}/remove-objects`, {\n input: Schema.Struct({\n // TODO(wittjosiah): Should be Schema.Union(Type.Obj, Type.Relation).\n objects: Schema.Array(ReactiveObjectSchema),\n target: Schema.optional(Collection.Collection),\n deletionData: Schema.optional(DeletionData),\n }),\n output: Schema.Void,\n }) {}\n\n export class RenameObject extends Schema.TaggedClass<RenameObject>()(`${SPACE_ACTION}/rename-object`, {\n input: Schema.Struct({\n object: EchoObjectSchema,\n caller: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n }) {}\n\n export class DuplicateObject extends Schema.TaggedClass<DuplicateObject>()(`${SPACE_ACTION}/duplicate-object`, {\n input: Schema.Struct({\n object: EchoObjectSchema,\n target: Schema.Union(SpaceSchema, Collection.Collection),\n }),\n output: Schema.Void,\n }) {}\n\n export class WaitForObject extends Schema.TaggedClass<WaitForObject>()(`${SPACE_ACTION}/wait-for-object`, {\n input: Schema.Struct({\n id: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n }) {}\n}\n\nexport namespace CollectionAction {\n export class Create extends Schema.TaggedClass<Create>()('dxos.org/plugin/collection/action/create', {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: Collection.Collection,\n }),\n }) {}\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["Option", "Schema", "Type", "EntityKind", "SystemTypeAnnotation", "createAnnotationHelper", "getTypeAnnotation", "TypeInputOptions", "Struct", "location", "Array", "Literal", "kind", "registered", "TypeInputOptionsAnnotationId", "Symbol", "for", "TypeInputOptionsAnnotation", "createAnnotationHelper", "getTypenames", "annotation", "space", "client", "includeRuntime", "includes", "includeDatabase", "includeSystemType", "includeUserType", "includeRegistered", "includeUnregistered", "runtimeTypenames", "graph", "schemaRegistry", "schemas", "filter", "schema", "relation", "getTypeAnnotation", "EntityKind", "Relation", "system", "SystemTypeAnnotation", "get", "pipe", "getOrElse", "properties", "staticRecords", "Type", "getTypename", "map", "databaseTypenames", "db", "query", "runSync", "typename", "from", "Set", "sort", "Schema", "QueryAST", "Type", "EchoObjectSchema", "ReactiveObjectSchema", "SpaceSchema", "CancellableInvitationObservable", "Invitation", "Collection", "FieldSchema", "View", "SPACE_DIRECTORY_HANDLE", "meta", "id", "SPACE_TYPE", "SpaceSettingsSchema", "mutable", "Struct", "showHidden", "Boolean", "IconAnnotationId", "Symbol", "for", "HueAnnotationId", "SpaceForm", "name", "optional", "String", "annotations", "title", "icon", "hue", "edgeReplication", "SPACE_ACTION", "SpaceAction", "OpenCreateSpace", "TaggedClass", "input", "Void", "output", "Create", "subject", "Array", "space", "SpaceSchema", "Join", "invitationCode", "onDone", "Any", "OpenMembers", "Share", "type", "Enums", "Invitation", "Type", "authMethod", "AuthMethod", "multiUse", "target", "instanceOf", "CancellableInvitationObservable", "GetShareLink", "copyToClipboard", "Lock", "Unlock", "Rename", "caller", "OpenSettings", "Open", "Close", "Migrate", "version", "Snapshot", "query", "QueryAST", "Query", "pipe", "snapshot", "Blob", "StoredSchemaForm", "typename", "TypeInputOptionsAnnotation", "set", "location", "kind", "registered", "UseStaticSchema", "show", "AddSchema", "schema", "object", "PersistentType", "RuntimeType", "DeleteField", "view", "View", "fieldId", "deletionData", "field", "FieldSchema", "props", "index", "Number", "OpenCreateObject", "Union", "Collection", "views", "initialFormValues", "navigable", "onCreateObject", "AddObject", "ReactiveObjectSchema", "hidden", "EchoObjectSchema", "AddRelation", "source", "Expando", "fields", "Record", "key", "value", "relation", "DeletionData", "objects", "parentCollection", "indices", "nestedObjectsList", "wasActive", "RemoveObjects", "RenameObject", "DuplicateObject", "WaitForObject", "CollectionAction"]
7
+ }