@powerhousedao/reactor-api 5.1.0 → 5.2.0-staging.2

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 (129) hide show
  1. package/dist/codegen.js +2 -2
  2. package/dist/codegen.js.map +1 -1
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +1 -0
  6. package/dist/index.js.map +1 -1
  7. package/dist/src/graphql/auth/index.d.ts +2 -0
  8. package/dist/src/graphql/auth/index.d.ts.map +1 -0
  9. package/dist/src/graphql/auth/index.js +2 -0
  10. package/dist/src/graphql/auth/index.js.map +1 -0
  11. package/dist/src/graphql/auth/resolvers.d.ts +149 -0
  12. package/dist/src/graphql/auth/resolvers.d.ts.map +1 -0
  13. package/dist/src/graphql/auth/resolvers.js +173 -0
  14. package/dist/src/graphql/auth/resolvers.js.map +1 -0
  15. package/dist/src/graphql/auth/schema.graphql +173 -0
  16. package/dist/src/graphql/auth/subgraph.d.ts +177 -0
  17. package/dist/src/graphql/auth/subgraph.d.ts.map +1 -0
  18. package/dist/src/graphql/auth/subgraph.js +340 -0
  19. package/dist/src/graphql/auth/subgraph.js.map +1 -0
  20. package/dist/src/graphql/base-subgraph.d.ts +4 -1
  21. package/dist/src/graphql/base-subgraph.d.ts.map +1 -1
  22. package/dist/src/graphql/base-subgraph.js +4 -0
  23. package/dist/src/graphql/base-subgraph.js.map +1 -1
  24. package/dist/src/graphql/document-model-subgraph.d.ts +51 -0
  25. package/dist/src/graphql/document-model-subgraph.d.ts.map +1 -0
  26. package/dist/src/graphql/document-model-subgraph.js +104 -0
  27. package/dist/src/graphql/document-model-subgraph.js.map +1 -0
  28. package/dist/src/graphql/drive-subgraph.d.ts.map +1 -1
  29. package/dist/src/graphql/drive-subgraph.js +51 -10
  30. package/dist/src/graphql/drive-subgraph.js.map +1 -1
  31. package/dist/src/graphql/graphql-manager.d.ts +11 -3
  32. package/dist/src/graphql/graphql-manager.d.ts.map +1 -1
  33. package/dist/src/graphql/graphql-manager.js +72 -15
  34. package/dist/src/graphql/graphql-manager.js.map +1 -1
  35. package/dist/src/graphql/index.d.ts +1 -0
  36. package/dist/src/graphql/index.d.ts.map +1 -1
  37. package/dist/src/graphql/index.js +1 -0
  38. package/dist/src/graphql/index.js.map +1 -1
  39. package/dist/src/graphql/reactor/adapters.js +1 -1
  40. package/dist/src/graphql/reactor/adapters.js.map +1 -1
  41. package/dist/src/graphql/reactor/factory.d.ts +4 -4
  42. package/dist/src/graphql/reactor/factory.d.ts.map +1 -1
  43. package/dist/src/graphql/reactor/gen/graphql.d.ts +295 -64
  44. package/dist/src/graphql/reactor/gen/graphql.d.ts.map +1 -1
  45. package/dist/src/graphql/reactor/gen/graphql.js +121 -8
  46. package/dist/src/graphql/reactor/gen/graphql.js.map +1 -1
  47. package/dist/src/graphql/reactor/operations.graphql +253 -0
  48. package/dist/src/graphql/reactor/pubsub.d.ts +2 -2
  49. package/dist/src/graphql/reactor/pubsub.d.ts.map +1 -1
  50. package/dist/src/graphql/reactor/pubsub.js +2 -1
  51. package/dist/src/graphql/reactor/pubsub.js.map +1 -1
  52. package/dist/src/graphql/reactor/resolvers.d.ts +48 -17
  53. package/dist/src/graphql/reactor/resolvers.d.ts.map +1 -1
  54. package/dist/src/graphql/reactor/resolvers.js +114 -34
  55. package/dist/src/graphql/reactor/resolvers.js.map +1 -1
  56. package/dist/src/graphql/reactor/schema.graphql +429 -0
  57. package/dist/src/graphql/reactor/subgraph.d.ts +34 -0
  58. package/dist/src/graphql/reactor/subgraph.d.ts.map +1 -1
  59. package/dist/src/graphql/reactor/subgraph.js +325 -22
  60. package/dist/src/graphql/reactor/subgraph.js.map +1 -1
  61. package/dist/src/graphql/reactor/validation.d.ts +62 -62
  62. package/dist/src/graphql/system/system-subgraph.d.ts.map +1 -1
  63. package/dist/src/graphql/types.d.ts +5 -1
  64. package/dist/src/graphql/types.d.ts.map +1 -1
  65. package/dist/src/graphql/utils.js +1 -1
  66. package/dist/src/graphql/utils.js.map +1 -1
  67. package/dist/src/migrations/001_create_document_permissions.d.ts +4 -0
  68. package/dist/src/migrations/001_create_document_permissions.d.ts.map +1 -0
  69. package/dist/src/migrations/001_create_document_permissions.js +91 -0
  70. package/dist/src/migrations/001_create_document_permissions.js.map +1 -0
  71. package/dist/src/migrations/index.d.ts +10 -0
  72. package/dist/src/migrations/index.d.ts.map +1 -0
  73. package/dist/src/migrations/index.js +59 -0
  74. package/dist/src/migrations/index.js.map +1 -0
  75. package/dist/src/packages/util.js +1 -1
  76. package/dist/src/packages/util.js.map +1 -1
  77. package/dist/src/server.d.ts +17 -7
  78. package/dist/src/server.d.ts.map +1 -1
  79. package/dist/src/server.js +49 -27
  80. package/dist/src/server.js.map +1 -1
  81. package/dist/src/services/auth.service.d.ts +1 -0
  82. package/dist/src/services/auth.service.d.ts.map +1 -1
  83. package/dist/src/services/auth.service.js +32 -22
  84. package/dist/src/services/auth.service.js.map +1 -1
  85. package/dist/src/services/document-permission.service.d.ts +201 -0
  86. package/dist/src/services/document-permission.service.d.ts.map +1 -0
  87. package/dist/src/services/document-permission.service.js +636 -0
  88. package/dist/src/services/document-permission.service.js.map +1 -0
  89. package/dist/src/utils/create-schema.d.ts +5 -4
  90. package/dist/src/utils/create-schema.d.ts.map +1 -1
  91. package/dist/src/utils/create-schema.js +110 -4
  92. package/dist/src/utils/create-schema.js.map +1 -1
  93. package/dist/src/utils/db.d.ts +65 -1
  94. package/dist/src/utils/db.d.ts.map +1 -1
  95. package/dist/src/utils/db.js.map +1 -1
  96. package/dist/test/document-permission.service.test.d.ts +2 -0
  97. package/dist/test/document-permission.service.test.d.ts.map +1 -0
  98. package/dist/test/document-permission.service.test.js +480 -0
  99. package/dist/test/document-permission.service.test.js.map +1 -0
  100. package/dist/test/drive-subgraph-permissions.test.d.ts +2 -0
  101. package/dist/test/drive-subgraph-permissions.test.d.ts.map +1 -0
  102. package/dist/test/drive-subgraph-permissions.test.js +195 -0
  103. package/dist/test/drive-subgraph-permissions.test.js.map +1 -0
  104. package/dist/test/identity-integration.test.d.ts +2 -0
  105. package/dist/test/identity-integration.test.d.ts.map +1 -0
  106. package/dist/test/identity-integration.test.js +349 -0
  107. package/dist/test/identity-integration.test.js.map +1 -0
  108. package/dist/test/permissions-integration.test.d.ts +2 -0
  109. package/dist/test/permissions-integration.test.d.ts.map +1 -0
  110. package/dist/test/permissions-integration.test.js +421 -0
  111. package/dist/test/permissions-integration.test.js.map +1 -0
  112. package/dist/test/reactor-adapters.test.js +2 -2
  113. package/dist/test/reactor-adapters.test.js.map +1 -1
  114. package/dist/test/reactor-resolvers.test.js +24 -24
  115. package/dist/test/reactor-resolvers.test.js.map +1 -1
  116. package/dist/test/reactor-subgraph-permissions.test.d.ts +2 -0
  117. package/dist/test/reactor-subgraph-permissions.test.d.ts.map +1 -0
  118. package/dist/test/reactor-subgraph-permissions.test.js +400 -0
  119. package/dist/test/reactor-subgraph-permissions.test.js.map +1 -0
  120. package/dist/test/two-reactor-gql-sync.test.d.ts +2 -0
  121. package/dist/test/two-reactor-gql-sync.test.d.ts.map +1 -0
  122. package/dist/test/two-reactor-gql-sync.test.js +298 -0
  123. package/dist/test/two-reactor-gql-sync.test.js.map +1 -0
  124. package/dist/test/utils/gql-resolver-bridge.d.ts +12 -0
  125. package/dist/test/utils/gql-resolver-bridge.d.ts.map +1 -0
  126. package/dist/test/utils/gql-resolver-bridge.js +60 -0
  127. package/dist/test/utils/gql-resolver-bridge.js.map +1 -0
  128. package/dist/tsconfig.tsbuildinfo +1 -1
  129. package/package.json +11 -9
@@ -0,0 +1,253 @@
1
+ # Fragment for common PHDocument fields
2
+ fragment PHDocumentFields on PHDocument {
3
+ id
4
+ slug
5
+ name
6
+ documentType
7
+ state
8
+ revisionsList {
9
+ scope
10
+ revision
11
+ }
12
+ createdAtUtcIso
13
+ lastModifiedAtUtcIso
14
+ parentId
15
+ }
16
+
17
+ # Query operations
18
+ query GetDocumentModels($namespace: String, $paging: PagingInput) {
19
+ documentModels(namespace: $namespace, paging: $paging) {
20
+ items {
21
+ id
22
+ name
23
+ namespace
24
+ version
25
+ specification
26
+ }
27
+ totalCount
28
+ hasNextPage
29
+ hasPreviousPage
30
+ cursor
31
+ }
32
+ }
33
+
34
+ query GetDocument($identifier: String!, $view: ViewFilterInput) {
35
+ document(identifier: $identifier, view: $view) {
36
+ document {
37
+ ...PHDocumentFields
38
+ }
39
+ childIds
40
+ }
41
+ }
42
+
43
+ query GetDocumentChildren(
44
+ $parentIdentifier: String!
45
+ $view: ViewFilterInput
46
+ $paging: PagingInput
47
+ ) {
48
+ documentChildren(
49
+ parentIdentifier: $parentIdentifier
50
+ view: $view
51
+ paging: $paging
52
+ ) {
53
+ items {
54
+ ...PHDocumentFields
55
+ }
56
+ totalCount
57
+ hasNextPage
58
+ hasPreviousPage
59
+ cursor
60
+ }
61
+ }
62
+
63
+ query GetDocumentParents(
64
+ $childIdentifier: String!
65
+ $view: ViewFilterInput
66
+ $paging: PagingInput
67
+ ) {
68
+ documentParents(
69
+ childIdentifier: $childIdentifier
70
+ view: $view
71
+ paging: $paging
72
+ ) {
73
+ items {
74
+ ...PHDocumentFields
75
+ }
76
+ totalCount
77
+ hasNextPage
78
+ hasPreviousPage
79
+ cursor
80
+ }
81
+ }
82
+
83
+ query FindDocuments(
84
+ $search: SearchFilterInput!
85
+ $view: ViewFilterInput
86
+ $paging: PagingInput
87
+ ) {
88
+ findDocuments(search: $search, view: $view, paging: $paging) {
89
+ items {
90
+ ...PHDocumentFields
91
+ }
92
+ totalCount
93
+ hasNextPage
94
+ hasPreviousPage
95
+ cursor
96
+ }
97
+ }
98
+
99
+ query GetJobStatus($jobId: String!) {
100
+ jobStatus(jobId: $jobId) {
101
+ id
102
+ status
103
+ result
104
+ error
105
+ createdAt
106
+ completedAt
107
+ }
108
+ }
109
+
110
+ # Mutation operations
111
+ mutation CreateDocument($document: JSONObject!, $parentIdentifier: String) {
112
+ createDocument(document: $document, parentIdentifier: $parentIdentifier) {
113
+ ...PHDocumentFields
114
+ }
115
+ }
116
+
117
+ mutation CreateEmptyDocument(
118
+ $documentType: String!
119
+ $parentIdentifier: String
120
+ ) {
121
+ createEmptyDocument(
122
+ documentType: $documentType
123
+ parentIdentifier: $parentIdentifier
124
+ ) {
125
+ ...PHDocumentFields
126
+ }
127
+ }
128
+
129
+ mutation MutateDocument(
130
+ $documentIdentifier: String!
131
+ $actions: [JSONObject!]!
132
+ $view: ViewFilterInput
133
+ ) {
134
+ mutateDocument(
135
+ documentIdentifier: $documentIdentifier
136
+ actions: $actions
137
+ view: $view
138
+ ) {
139
+ ...PHDocumentFields
140
+ }
141
+ }
142
+
143
+ mutation MutateDocumentAsync(
144
+ $documentIdentifier: String!
145
+ $actions: [JSONObject!]!
146
+ $view: ViewFilterInput
147
+ ) {
148
+ mutateDocumentAsync(
149
+ documentIdentifier: $documentIdentifier
150
+ actions: $actions
151
+ view: $view
152
+ )
153
+ }
154
+
155
+ mutation RenameDocument(
156
+ $documentIdentifier: String!
157
+ $name: String!
158
+ $branch: String
159
+ ) {
160
+ renameDocument(
161
+ documentIdentifier: $documentIdentifier
162
+ name: $name
163
+ branch: $branch
164
+ ) {
165
+ ...PHDocumentFields
166
+ }
167
+ }
168
+
169
+ mutation AddChildren(
170
+ $parentIdentifier: String!
171
+ $documentIdentifiers: [String!]!
172
+ $branch: String
173
+ ) {
174
+ addChildren(
175
+ parentIdentifier: $parentIdentifier
176
+ documentIdentifiers: $documentIdentifiers
177
+ branch: $branch
178
+ ) {
179
+ ...PHDocumentFields
180
+ }
181
+ }
182
+
183
+ mutation RemoveChildren(
184
+ $parentIdentifier: String!
185
+ $documentIdentifiers: [String!]!
186
+ $branch: String
187
+ ) {
188
+ removeChildren(
189
+ parentIdentifier: $parentIdentifier
190
+ documentIdentifiers: $documentIdentifiers
191
+ branch: $branch
192
+ ) {
193
+ ...PHDocumentFields
194
+ }
195
+ }
196
+
197
+ mutation MoveChildren(
198
+ $sourceParentIdentifier: String!
199
+ $targetParentIdentifier: String!
200
+ $documentIdentifiers: [String!]!
201
+ $branch: String
202
+ ) {
203
+ moveChildren(
204
+ sourceParentIdentifier: $sourceParentIdentifier
205
+ targetParentIdentifier: $targetParentIdentifier
206
+ documentIdentifiers: $documentIdentifiers
207
+ branch: $branch
208
+ ) {
209
+ source {
210
+ ...PHDocumentFields
211
+ }
212
+ target {
213
+ ...PHDocumentFields
214
+ }
215
+ }
216
+ }
217
+
218
+ mutation DeleteDocument($identifier: String!, $propagate: PropagationMode) {
219
+ deleteDocument(identifier: $identifier, propagate: $propagate)
220
+ }
221
+
222
+ mutation DeleteDocuments(
223
+ $identifiers: [String!]!
224
+ $propagate: PropagationMode
225
+ ) {
226
+ deleteDocuments(identifiers: $identifiers, propagate: $propagate)
227
+ }
228
+
229
+ # Subscription operations
230
+ subscription DocumentChanges(
231
+ $search: SearchFilterInput!
232
+ $view: ViewFilterInput
233
+ ) {
234
+ documentChanges(search: $search, view: $view) {
235
+ type
236
+ documents {
237
+ ...PHDocumentFields
238
+ }
239
+ context {
240
+ parentId
241
+ childId
242
+ }
243
+ }
244
+ }
245
+
246
+ subscription JobChanges($jobId: String!) {
247
+ jobChanges(jobId: $jobId) {
248
+ jobId
249
+ status
250
+ result
251
+ error
252
+ }
253
+ }
@@ -1,5 +1,5 @@
1
- import { PubSub } from "graphql-subscriptions";
2
1
  import type { DocumentChangeEvent, IReactorClient, SearchFilter, ViewFilter } from "@powerhousedao/reactor";
2
+ import { PubSub } from "graphql-subscriptions";
3
3
  export declare function getPubSub(): PubSub;
4
4
  export type SubscriptionTriggers = {
5
5
  DOCUMENT_CHANGES: string;
@@ -18,7 +18,7 @@ export interface JobChangesPayload {
18
18
  createdAt: string;
19
19
  completedAt: string | null;
20
20
  error: string | null;
21
- result: unknown;
21
+ result: NonNullable<unknown>;
22
22
  };
23
23
  jobId: string;
24
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pubsub.d.ts","sourceRoot":"","sources":["../../../../src/graphql/reactor/pubsub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,UAAU,EACX,MAAM,wBAAwB,CAAC;AAIhC,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,oBAGnC,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,mBAAmB,CAAC;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;CACf;AAKD,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,cAAc,GAC5B,MAAM,IAAI,CAwBZ;AAUD,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,cAAc,EAC7B,KAAK,EAAE,MAAM,GACZ,MAAM,IAAI,CAqEZ"}
1
+ {"version":3,"file":"pubsub.d.ts","sourceRoot":"","sources":["../../../../src/graphql/reactor/pubsub.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,UAAU,EACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAI/C,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,oBAGnC,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,mBAAmB,CAAC;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;KAC9B,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;CACf;AAKD,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,cAAc,GAC5B,MAAM,IAAI,CAwBZ;AAUD,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,cAAc,EAC7B,KAAK,EAAE,MAAM,GACZ,MAAM,IAAI,CAsEZ"}
@@ -47,7 +47,8 @@ export function ensureJobSubscription(reactorClient, jobId) {
47
47
  createdAt: jobInfo.createdAtUtcIso,
48
48
  completedAt: jobInfo.completedAtUtcIso ?? null,
49
49
  error: jobInfo.error?.message ?? null,
50
- result: jobInfo.result ?? null,
50
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
51
+ result: jobInfo.result ?? {},
51
52
  },
52
53
  jobId,
53
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"pubsub.js","sourceRoot":"","sources":["../../../../src/graphql/reactor/pubsub.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pubsub.js","sourceRoot":"","sources":["../../../../src/graphql/reactor/pubsub.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { IReactorClient } from "@powerhousedao/reactor";
1
+ import { type IReactorClient, type ISyncManager } from "@powerhousedao/reactor";
2
2
  import { toGqlPhDocument } from "./adapters.js";
3
3
  import type { DocumentModelResultPage, JobInfo as GqlJobInfo, PropagationMode as GqlPropagationMode, PhDocumentResultPage } from "./gen/graphql.js";
4
4
  export declare function documentModels(reactorClient: IReactorClient, args: {
@@ -84,35 +84,23 @@ export declare function mutateDocumentAsync(reactorClient: IReactorClient, args:
84
84
  export declare function renameDocument(reactorClient: IReactorClient, args: {
85
85
  documentIdentifier: string;
86
86
  name: string;
87
- view?: {
88
- branch?: string | null;
89
- scopes?: readonly string[] | null;
90
- } | null;
87
+ branch?: string | null;
91
88
  }): Promise<ReturnType<typeof toGqlPhDocument>>;
92
89
  export declare function addChildren(reactorClient: IReactorClient, args: {
93
90
  parentIdentifier: string;
94
91
  documentIdentifiers: readonly string[];
95
- view?: {
96
- branch?: string | null;
97
- scopes?: readonly string[] | null;
98
- } | null;
92
+ branch?: string | null;
99
93
  }): Promise<ReturnType<typeof toGqlPhDocument>>;
100
94
  export declare function removeChildren(reactorClient: IReactorClient, args: {
101
95
  parentIdentifier: string;
102
96
  documentIdentifiers: readonly string[];
103
- view?: {
104
- branch?: string | null;
105
- scopes?: readonly string[] | null;
106
- } | null;
97
+ branch?: string | null;
107
98
  }): Promise<ReturnType<typeof toGqlPhDocument>>;
108
99
  export declare function moveChildren(reactorClient: IReactorClient, args: {
109
100
  sourceParentIdentifier: string;
110
101
  targetParentIdentifier: string;
111
102
  documentIdentifiers: readonly string[];
112
- view?: {
113
- branch?: string | null;
114
- scopes?: readonly string[] | null;
115
- } | null;
103
+ branch?: string | null;
116
104
  }): Promise<{
117
105
  source: ReturnType<typeof toGqlPhDocument>;
118
106
  target: ReturnType<typeof toGqlPhDocument>;
@@ -125,4 +113,47 @@ export declare function deleteDocuments(reactorClient: IReactorClient, args: {
125
113
  identifiers: readonly string[];
126
114
  propagate?: GqlPropagationMode | null;
127
115
  }): Promise<boolean>;
116
+ export declare function touchChannel(syncManager: ISyncManager, args: {
117
+ input: {
118
+ id: string;
119
+ name: string;
120
+ collectionId: string;
121
+ filter: {
122
+ documentId: readonly string[];
123
+ scope: readonly string[];
124
+ branch: string;
125
+ };
126
+ };
127
+ }): Promise<boolean>;
128
+ export declare function pollSyncEnvelopes(syncManager: ISyncManager, args: {
129
+ channelId: string;
130
+ cursorOrdinal: number;
131
+ }): Promise<any[]>;
132
+ export declare function pushSyncEnvelope(syncManager: ISyncManager, args: {
133
+ envelope: {
134
+ type: string;
135
+ channelMeta: {
136
+ id: string;
137
+ };
138
+ operations?: Array<{
139
+ operation: any;
140
+ context: {
141
+ documentId: string;
142
+ documentType: string;
143
+ scope: string;
144
+ branch: string;
145
+ };
146
+ }> | null;
147
+ cursor?: {
148
+ remoteName: string;
149
+ cursorOrdinal: number;
150
+ lastSyncedAtUtcMs?: string | null;
151
+ } | null;
152
+ };
153
+ }): Promise<boolean>;
154
+ import type { GetParentIdsFn } from "../../services/document-permission.service.js";
155
+ /**
156
+ * Create a getParentIds function using the reactor client
157
+ */
158
+ export declare function createGetParentIdsFn(reactorClient: IReactorClient): GetParentIdsFn;
128
159
  //# sourceMappingURL=resolvers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../../src/graphql/reactor/resolvers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../../src/graphql/reactor/resolvers.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { SyncOperation, } from "@powerhousedao/reactor";
1
2
  import { GraphQLError } from "graphql";
2
3
  import { fromInputMaybe, toDocumentModelResultPage, toGqlJobInfo, toGqlPhDocument, toMutableArray, toPhDocumentResultPage, validateActions, } from "./adapters.js";
3
4
  export async function documentModels(reactorClient, args) {
@@ -227,7 +228,7 @@ export async function mutateDocument(reactorClient, args) {
227
228
  const branch = args.view?.branch ?? "main";
228
229
  let result;
229
230
  try {
230
- result = await reactorClient.mutate(args.documentIdentifier, branch, validatedActions);
231
+ result = await reactorClient.execute(args.documentIdentifier, branch, validatedActions);
231
232
  }
232
233
  catch (error) {
233
234
  throw new GraphQLError(`Failed to mutate document: ${error instanceof Error ? error.message : "Unknown error"}`);
@@ -255,7 +256,7 @@ export async function mutateDocumentAsync(reactorClient, args) {
255
256
  const branch = args.view?.branch ?? "main";
256
257
  let result;
257
258
  try {
258
- result = await reactorClient.mutateAsync(args.documentIdentifier, branch, validatedActions);
259
+ result = await reactorClient.executeAsync(args.documentIdentifier, branch, validatedActions);
259
260
  }
260
261
  catch (error) {
261
262
  throw new GraphQLError(`Failed to submit document mutation: ${error instanceof Error ? error.message : "Unknown error"}`);
@@ -263,16 +264,10 @@ export async function mutateDocumentAsync(reactorClient, args) {
263
264
  return result.id;
264
265
  }
265
266
  export async function renameDocument(reactorClient, args) {
266
- let view;
267
- if (args.view) {
268
- view = {
269
- branch: fromInputMaybe(args.view.branch),
270
- scopes: toMutableArray(fromInputMaybe(args.view.scopes)),
271
- };
272
- }
267
+ const branch = fromInputMaybe(args.branch);
273
268
  let result;
274
269
  try {
275
- result = await reactorClient.rename(args.documentIdentifier, args.name, view);
270
+ result = await reactorClient.rename(args.documentIdentifier, args.name, branch);
276
271
  }
277
272
  catch (error) {
278
273
  throw new GraphQLError(`Failed to rename document: ${error instanceof Error ? error.message : "Unknown error"}`);
@@ -285,17 +280,11 @@ export async function renameDocument(reactorClient, args) {
285
280
  }
286
281
  }
287
282
  export async function addChildren(reactorClient, args) {
288
- let view;
289
- if (args.view) {
290
- view = {
291
- branch: fromInputMaybe(args.view.branch),
292
- scopes: toMutableArray(fromInputMaybe(args.view.scopes)),
293
- };
294
- }
283
+ const branch = fromInputMaybe(args.branch);
295
284
  const documentIdentifiers = [...args.documentIdentifiers];
296
285
  let result;
297
286
  try {
298
- result = await reactorClient.addChildren(args.parentIdentifier, documentIdentifiers, view);
287
+ result = await reactorClient.addChildren(args.parentIdentifier, documentIdentifiers, branch);
299
288
  }
300
289
  catch (error) {
301
290
  throw new GraphQLError(`Failed to add children: ${error instanceof Error ? error.message : "Unknown error"}`);
@@ -308,17 +297,11 @@ export async function addChildren(reactorClient, args) {
308
297
  }
309
298
  }
310
299
  export async function removeChildren(reactorClient, args) {
311
- let view;
312
- if (args.view) {
313
- view = {
314
- branch: fromInputMaybe(args.view.branch),
315
- scopes: toMutableArray(fromInputMaybe(args.view.scopes)),
316
- };
317
- }
300
+ const branch = fromInputMaybe(args.branch);
318
301
  const documentIdentifiers = [...args.documentIdentifiers];
319
302
  let result;
320
303
  try {
321
- result = await reactorClient.removeChildren(args.parentIdentifier, documentIdentifiers, view);
304
+ result = await reactorClient.removeChildren(args.parentIdentifier, documentIdentifiers, branch);
322
305
  }
323
306
  catch (error) {
324
307
  throw new GraphQLError(`Failed to remove children: ${error instanceof Error ? error.message : "Unknown error"}`);
@@ -331,17 +314,11 @@ export async function removeChildren(reactorClient, args) {
331
314
  }
332
315
  }
333
316
  export async function moveChildren(reactorClient, args) {
334
- let view;
335
- if (args.view) {
336
- view = {
337
- branch: fromInputMaybe(args.view.branch),
338
- scopes: toMutableArray(fromInputMaybe(args.view.scopes)),
339
- };
340
- }
317
+ const branch = fromInputMaybe(args.branch);
341
318
  const documentIdentifiers = [...args.documentIdentifiers];
342
319
  let result;
343
320
  try {
344
- result = await reactorClient.moveChildren(args.sourceParentIdentifier, args.targetParentIdentifier, documentIdentifiers, view);
321
+ result = await reactorClient.moveChildren(args.sourceParentIdentifier, args.targetParentIdentifier, documentIdentifiers, branch);
345
322
  }
346
323
  catch (error) {
347
324
  throw new GraphQLError(`Failed to move children: ${error instanceof Error ? error.message : "Unknown error"}`);
@@ -377,4 +354,107 @@ export async function deleteDocuments(reactorClient, args) {
377
354
  throw new GraphQLError(`Failed to delete documents: ${error instanceof Error ? error.message : "Unknown error"}`);
378
355
  }
379
356
  }
357
+ export async function touchChannel(syncManager, args) {
358
+ try {
359
+ const existing = syncManager.getById(args.input.id);
360
+ if (existing) {
361
+ return true;
362
+ }
363
+ }
364
+ catch {
365
+ // Ignore errors when checking for existing sync connection
366
+ }
367
+ const filter = {
368
+ documentId: [...args.input.filter.documentId],
369
+ scope: [...args.input.filter.scope],
370
+ branch: args.input.filter.branch,
371
+ };
372
+ try {
373
+ await syncManager.add(args.input.name, args.input.collectionId, {
374
+ type: "internal",
375
+ parameters: {},
376
+ }, filter, {}, args.input.id);
377
+ }
378
+ catch (error) {
379
+ throw new GraphQLError(`Failed to create channel: ${error instanceof Error ? error.message : "Unknown error"}`);
380
+ }
381
+ return true;
382
+ }
383
+ export function pollSyncEnvelopes(syncManager, args) {
384
+ let remote;
385
+ try {
386
+ remote = syncManager.getById(args.channelId);
387
+ }
388
+ catch (error) {
389
+ throw new GraphQLError(`Channel not found: ${error instanceof Error ? error.message : "Unknown error"}`);
390
+ }
391
+ const operations = remote.channel.outbox.items;
392
+ const envelopes = operations.map((syncOp) => ({
393
+ type: "OPERATIONS",
394
+ channelMeta: {
395
+ id: args.channelId,
396
+ },
397
+ operations: syncOp.operations.map((op) => ({
398
+ operation: op.operation,
399
+ context: op.context,
400
+ })),
401
+ cursor: {
402
+ remoteName: remote.name,
403
+ cursorOrdinal: args.cursorOrdinal + 1,
404
+ lastSyncedAtUtcMs: Date.now().toString(),
405
+ },
406
+ }));
407
+ return Promise.resolve(envelopes);
408
+ }
409
+ export function pushSyncEnvelope(syncManager, args) {
410
+ let remote;
411
+ try {
412
+ remote = syncManager.getById(args.envelope.channelMeta.id);
413
+ }
414
+ catch (error) {
415
+ throw new GraphQLError(`Channel not found: ${error instanceof Error ? error.message : "Unknown error"}`);
416
+ }
417
+ if (!args.envelope.operations || args.envelope.operations.length === 0) {
418
+ return Promise.resolve(true);
419
+ }
420
+ const firstOp = args.envelope.operations[0];
421
+ const syncOpId = `syncop-${args.envelope.channelMeta.id}-${Date.now()}-${crypto.randomUUID()}`;
422
+ const scopes = [
423
+ ...new Set(args.envelope.operations.map((op) => op.context.scope)),
424
+ ];
425
+ const operations = args.envelope.operations.map((op) => ({
426
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
427
+ operation: op.operation,
428
+ context: {
429
+ documentId: op.context.documentId,
430
+ documentType: op.context.documentType,
431
+ scope: op.context.scope,
432
+ branch: op.context.branch,
433
+ ordinal: 0,
434
+ },
435
+ }));
436
+ const syncOp = new SyncOperation(syncOpId, remote.name, firstOp.context.documentId, scopes, firstOp.context.branch, operations);
437
+ try {
438
+ remote.channel.inbox.add(syncOp);
439
+ }
440
+ catch (error) {
441
+ throw new GraphQLError(`Failed to push sync envelope: ${error instanceof Error ? error.message : "Unknown error"}`);
442
+ }
443
+ return Promise.resolve(true);
444
+ }
445
+ /**
446
+ * Create a getParentIds function using the reactor client
447
+ */
448
+ export function createGetParentIdsFn(reactorClient) {
449
+ return async (documentId) => {
450
+ try {
451
+ const result = await reactorClient.getParents(documentId);
452
+ return result.results.map((doc) => doc.header.id);
453
+ }
454
+ catch {
455
+ // If document has no parents or error, return empty array
456
+ return [];
457
+ }
458
+ };
459
+ }
380
460
  //# sourceMappingURL=resolvers.js.map