@powerhousedao/reactor-api 5.1.0-dev.2 → 5.1.0-dev.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/codegen.js +2 -2
- package/dist/codegen.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/src/graphql/auth/index.d.ts +2 -0
- package/dist/src/graphql/auth/index.d.ts.map +1 -0
- package/dist/src/graphql/auth/index.js +2 -0
- package/dist/src/graphql/auth/index.js.map +1 -0
- package/dist/src/graphql/auth/resolvers.d.ts +149 -0
- package/dist/src/graphql/auth/resolvers.d.ts.map +1 -0
- package/dist/src/graphql/auth/resolvers.js +173 -0
- package/dist/src/graphql/auth/resolvers.js.map +1 -0
- package/dist/src/graphql/auth/schema.graphql +173 -0
- package/dist/src/graphql/auth/subgraph.d.ts +177 -0
- package/dist/src/graphql/auth/subgraph.d.ts.map +1 -0
- package/dist/src/graphql/auth/subgraph.js +340 -0
- package/dist/src/graphql/auth/subgraph.js.map +1 -0
- package/dist/src/graphql/base-subgraph.d.ts +3 -1
- package/dist/src/graphql/base-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/base-subgraph.js +2 -0
- package/dist/src/graphql/base-subgraph.js.map +1 -1
- package/dist/src/graphql/drive-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/drive-subgraph.js +51 -10
- package/dist/src/graphql/drive-subgraph.js.map +1 -1
- package/dist/src/graphql/graphql-manager.d.ts +5 -2
- package/dist/src/graphql/graphql-manager.d.ts.map +1 -1
- package/dist/src/graphql/graphql-manager.js +7 -2
- package/dist/src/graphql/graphql-manager.js.map +1 -1
- package/dist/src/graphql/index.d.ts +1 -0
- package/dist/src/graphql/index.d.ts.map +1 -1
- package/dist/src/graphql/index.js +1 -0
- package/dist/src/graphql/index.js.map +1 -1
- package/dist/src/graphql/reactor/adapters.js +1 -1
- package/dist/src/graphql/reactor/adapters.js.map +1 -1
- package/dist/src/graphql/reactor/factory.d.ts +4 -4
- package/dist/src/graphql/reactor/factory.d.ts.map +1 -1
- package/dist/src/graphql/reactor/gen/graphql.d.ts +295 -64
- package/dist/src/graphql/reactor/gen/graphql.d.ts.map +1 -1
- package/dist/src/graphql/reactor/gen/graphql.js +121 -8
- package/dist/src/graphql/reactor/gen/graphql.js.map +1 -1
- package/dist/src/graphql/reactor/operations.graphql +253 -0
- package/dist/src/graphql/reactor/pubsub.d.ts +2 -2
- package/dist/src/graphql/reactor/pubsub.d.ts.map +1 -1
- package/dist/src/graphql/reactor/pubsub.js +2 -1
- package/dist/src/graphql/reactor/pubsub.js.map +1 -1
- package/dist/src/graphql/reactor/resolvers.d.ts +10 -17
- package/dist/src/graphql/reactor/resolvers.d.ts.map +1 -1
- package/dist/src/graphql/reactor/resolvers.js +27 -36
- package/dist/src/graphql/reactor/resolvers.js.map +1 -1
- package/dist/src/graphql/reactor/schema.graphql +429 -0
- package/dist/src/graphql/reactor/subgraph.d.ts +34 -0
- package/dist/src/graphql/reactor/subgraph.d.ts.map +1 -1
- package/dist/src/graphql/reactor/subgraph.js +289 -26
- package/dist/src/graphql/reactor/subgraph.js.map +1 -1
- package/dist/src/graphql/reactor/validation.d.ts +44 -44
- package/dist/src/graphql/types.d.ts +4 -1
- package/dist/src/graphql/types.d.ts.map +1 -1
- package/dist/src/migrations/001_create_document_permissions.d.ts +4 -0
- package/dist/src/migrations/001_create_document_permissions.d.ts.map +1 -0
- package/dist/src/migrations/001_create_document_permissions.js +91 -0
- package/dist/src/migrations/001_create_document_permissions.js.map +1 -0
- package/dist/src/migrations/index.d.ts +10 -0
- package/dist/src/migrations/index.d.ts.map +1 -0
- package/dist/src/migrations/index.js +59 -0
- package/dist/src/migrations/index.js.map +1 -0
- package/dist/src/packages/util.js +1 -1
- package/dist/src/packages/util.js.map +1 -1
- package/dist/src/server.d.ts +16 -7
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +44 -18
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/auth.service.d.ts +1 -0
- package/dist/src/services/auth.service.d.ts.map +1 -1
- package/dist/src/services/auth.service.js +31 -17
- package/dist/src/services/auth.service.js.map +1 -1
- package/dist/src/services/document-permission.service.d.ts +201 -0
- package/dist/src/services/document-permission.service.d.ts.map +1 -0
- package/dist/src/services/document-permission.service.js +636 -0
- package/dist/src/services/document-permission.service.js.map +1 -0
- package/dist/src/utils/create-schema.d.ts +1 -1
- package/dist/src/utils/create-schema.d.ts.map +1 -1
- package/dist/src/utils/create-schema.js +10 -1
- package/dist/src/utils/create-schema.js.map +1 -1
- package/dist/src/utils/db.d.ts +65 -1
- package/dist/src/utils/db.d.ts.map +1 -1
- package/dist/src/utils/db.js.map +1 -1
- package/dist/test/document-permission.service.test.d.ts +2 -0
- package/dist/test/document-permission.service.test.d.ts.map +1 -0
- package/dist/test/document-permission.service.test.js +480 -0
- package/dist/test/document-permission.service.test.js.map +1 -0
- package/dist/test/drive-subgraph-permissions.test.d.ts +2 -0
- package/dist/test/drive-subgraph-permissions.test.d.ts.map +1 -0
- package/dist/test/drive-subgraph-permissions.test.js +195 -0
- package/dist/test/drive-subgraph-permissions.test.js.map +1 -0
- package/dist/test/identity-integration.test.d.ts +2 -0
- package/dist/test/identity-integration.test.d.ts.map +1 -0
- package/dist/test/identity-integration.test.js +349 -0
- package/dist/test/identity-integration.test.js.map +1 -0
- package/dist/test/permissions-integration.test.d.ts +2 -0
- package/dist/test/permissions-integration.test.d.ts.map +1 -0
- package/dist/test/permissions-integration.test.js +421 -0
- package/dist/test/permissions-integration.test.js.map +1 -0
- package/dist/test/reactor-adapters.test.js +2 -2
- package/dist/test/reactor-adapters.test.js.map +1 -1
- package/dist/test/reactor-resolvers.test.js +24 -24
- package/dist/test/reactor-resolvers.test.js.map +1 -1
- package/dist/test/reactor-subgraph-permissions.test.d.ts +2 -0
- package/dist/test/reactor-subgraph-permissions.test.d.ts.map +1 -0
- package/dist/test/reactor-subgraph-permissions.test.js +400 -0
- package/dist/test/reactor-subgraph-permissions.test.js.map +1 -0
- package/dist/test/two-reactor-gql-sync.test.js +19 -17
- package/dist/test/two-reactor-gql-sync.test.js.map +1 -1
- package/dist/test/utils/gql-resolver-bridge.js +4 -4
- package/dist/test/utils/gql-resolver-bridge.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -8
|
@@ -0,0 +1,429 @@
|
|
|
1
|
+
# Scalar types (for codegen - also defined in create-schema.ts)
|
|
2
|
+
scalar JSONObject
|
|
3
|
+
scalar DateTime
|
|
4
|
+
|
|
5
|
+
# Input types
|
|
6
|
+
input PagingInput {
|
|
7
|
+
limit: Int
|
|
8
|
+
offset: Int
|
|
9
|
+
cursor: String
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
input ViewFilterInput {
|
|
13
|
+
branch: String
|
|
14
|
+
scopes: [String!]
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
input SearchFilterInput {
|
|
18
|
+
type: String
|
|
19
|
+
parentId: String
|
|
20
|
+
identifiers: [String!]
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
# Enums
|
|
24
|
+
enum PropagationMode {
|
|
25
|
+
CASCADE
|
|
26
|
+
ORPHAN
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
enum DocumentChangeType {
|
|
30
|
+
CREATED
|
|
31
|
+
DELETED
|
|
32
|
+
UPDATED
|
|
33
|
+
PARENT_ADDED
|
|
34
|
+
PARENT_REMOVED
|
|
35
|
+
CHILD_ADDED
|
|
36
|
+
CHILD_REMOVED
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
# Object types
|
|
40
|
+
type DocumentModelGlobalState {
|
|
41
|
+
id: String!
|
|
42
|
+
name: String!
|
|
43
|
+
namespace: String
|
|
44
|
+
version: String
|
|
45
|
+
specification: JSONObject!
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
type DocumentModelResultPage {
|
|
49
|
+
items: [DocumentModelGlobalState!]!
|
|
50
|
+
totalCount: Int!
|
|
51
|
+
hasNextPage: Boolean!
|
|
52
|
+
hasPreviousPage: Boolean!
|
|
53
|
+
cursor: String
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
type Revision {
|
|
57
|
+
scope: String!
|
|
58
|
+
revision: Int!
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
type PHDocument {
|
|
62
|
+
id: String!
|
|
63
|
+
slug: String
|
|
64
|
+
name: String!
|
|
65
|
+
documentType: String!
|
|
66
|
+
state: JSONObject!
|
|
67
|
+
revisionsList: [Revision!]!
|
|
68
|
+
createdAtUtcIso: DateTime!
|
|
69
|
+
lastModifiedAtUtcIso: DateTime!
|
|
70
|
+
parentId: String
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
type PHDocumentResultPage {
|
|
74
|
+
items: [PHDocument!]!
|
|
75
|
+
totalCount: Int!
|
|
76
|
+
hasNextPage: Boolean!
|
|
77
|
+
hasPreviousPage: Boolean!
|
|
78
|
+
cursor: String
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
type DocumentWithChildren {
|
|
82
|
+
document: PHDocument!
|
|
83
|
+
childIds: [String!]!
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
type MoveChildrenResult {
|
|
87
|
+
source: PHDocument!
|
|
88
|
+
target: PHDocument!
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
type JobInfo {
|
|
92
|
+
id: String!
|
|
93
|
+
status: String!
|
|
94
|
+
result: JSONObject!
|
|
95
|
+
error: String
|
|
96
|
+
createdAt: DateTime!
|
|
97
|
+
completedAt: DateTime
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
type DocumentChangeEvent {
|
|
101
|
+
type: DocumentChangeType!
|
|
102
|
+
documents: [PHDocument!]!
|
|
103
|
+
context: DocumentChangeContext
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
type DocumentChangeContext {
|
|
107
|
+
parentId: String
|
|
108
|
+
childId: String
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
type JobChangeEvent {
|
|
112
|
+
jobId: String!
|
|
113
|
+
status: String!
|
|
114
|
+
result: JSONObject!
|
|
115
|
+
error: String
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
type ReactorSignerUser {
|
|
119
|
+
address: String!
|
|
120
|
+
networkId: String!
|
|
121
|
+
chainId: Int!
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
type ReactorSignerApp {
|
|
125
|
+
name: String!
|
|
126
|
+
key: String!
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
type ReactorSigner {
|
|
130
|
+
user: ReactorSignerUser
|
|
131
|
+
app: ReactorSignerApp
|
|
132
|
+
signatures: [String!]!
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
type ActionContext {
|
|
136
|
+
signer: ReactorSigner
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
type Action {
|
|
140
|
+
id: String!
|
|
141
|
+
type: String!
|
|
142
|
+
timestampUtcMs: String!
|
|
143
|
+
input: JSONObject!
|
|
144
|
+
scope: String!
|
|
145
|
+
attachments: [Attachment!]
|
|
146
|
+
context: ActionContext
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
type Attachment {
|
|
150
|
+
data: String!
|
|
151
|
+
mimeType: String!
|
|
152
|
+
hash: String!
|
|
153
|
+
extension: String
|
|
154
|
+
fileName: String
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
# Input types for sync operations
|
|
158
|
+
input ActionContextInput {
|
|
159
|
+
signer: ReactorSignerInput
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
input ReactorSignerInput {
|
|
163
|
+
user: ReactorSignerUserInput
|
|
164
|
+
app: ReactorSignerAppInput
|
|
165
|
+
signatures: [String!]!
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
input ReactorSignerUserInput {
|
|
169
|
+
address: String!
|
|
170
|
+
networkId: String!
|
|
171
|
+
chainId: Int!
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
input ReactorSignerAppInput {
|
|
175
|
+
name: String!
|
|
176
|
+
key: String!
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
input ActionInput {
|
|
180
|
+
id: String!
|
|
181
|
+
type: String!
|
|
182
|
+
timestampUtcMs: String!
|
|
183
|
+
input: JSONObject!
|
|
184
|
+
scope: String!
|
|
185
|
+
attachments: [AttachmentInput!]
|
|
186
|
+
context: ActionContextInput
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
input AttachmentInput {
|
|
190
|
+
data: String!
|
|
191
|
+
mimeType: String!
|
|
192
|
+
hash: String!
|
|
193
|
+
extension: String
|
|
194
|
+
fileName: String
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
# Synchronization types
|
|
198
|
+
type ReactorOperation {
|
|
199
|
+
index: Int!
|
|
200
|
+
timestampUtcMs: String!
|
|
201
|
+
hash: String!
|
|
202
|
+
skip: Int!
|
|
203
|
+
error: String
|
|
204
|
+
id: String
|
|
205
|
+
action: Action!
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
input OperationInput {
|
|
209
|
+
index: Int!
|
|
210
|
+
timestampUtcMs: String!
|
|
211
|
+
hash: String!
|
|
212
|
+
skip: Int!
|
|
213
|
+
error: String
|
|
214
|
+
id: String
|
|
215
|
+
action: ActionInput!
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
type OperationContext {
|
|
219
|
+
documentId: String!
|
|
220
|
+
documentType: String!
|
|
221
|
+
scope: String!
|
|
222
|
+
branch: String!
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
input OperationContextInput {
|
|
226
|
+
documentId: String!
|
|
227
|
+
documentType: String!
|
|
228
|
+
scope: String!
|
|
229
|
+
branch: String!
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
type OperationWithContext {
|
|
233
|
+
operation: ReactorOperation!
|
|
234
|
+
context: OperationContext!
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
input OperationWithContextInput {
|
|
238
|
+
operation: OperationInput!
|
|
239
|
+
context: OperationContextInput!
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
type ChannelMeta {
|
|
243
|
+
id: String!
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
input ChannelMetaInput {
|
|
247
|
+
id: String!
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
type RemoteCursor {
|
|
251
|
+
remoteName: String!
|
|
252
|
+
cursorOrdinal: Int!
|
|
253
|
+
lastSyncedAtUtcMs: String
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
input RemoteCursorInput {
|
|
257
|
+
remoteName: String!
|
|
258
|
+
cursorOrdinal: Int!
|
|
259
|
+
lastSyncedAtUtcMs: String
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
enum SyncEnvelopeType {
|
|
263
|
+
OPERATIONS
|
|
264
|
+
ACK
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
type SyncEnvelope {
|
|
268
|
+
type: SyncEnvelopeType!
|
|
269
|
+
channelMeta: ChannelMeta!
|
|
270
|
+
operations: [OperationWithContext!]
|
|
271
|
+
cursor: RemoteCursor
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
input SyncEnvelopeInput {
|
|
275
|
+
type: SyncEnvelopeType!
|
|
276
|
+
channelMeta: ChannelMetaInput!
|
|
277
|
+
operations: [OperationWithContextInput!]
|
|
278
|
+
cursor: RemoteCursorInput
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
input RemoteFilterInput {
|
|
282
|
+
documentId: [String!]!
|
|
283
|
+
scope: [String!]!
|
|
284
|
+
branch: String!
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
input TouchChannelInput {
|
|
288
|
+
id: String!
|
|
289
|
+
name: String!
|
|
290
|
+
collectionId: String!
|
|
291
|
+
filter: RemoteFilterInput!
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
type Query {
|
|
295
|
+
# Get document models for a namespace
|
|
296
|
+
documentModels(
|
|
297
|
+
namespace: String
|
|
298
|
+
paging: PagingInput
|
|
299
|
+
): DocumentModelResultPage!
|
|
300
|
+
|
|
301
|
+
# Get a specific document by ID or slug
|
|
302
|
+
document(
|
|
303
|
+
identifier: String!
|
|
304
|
+
view: ViewFilterInput
|
|
305
|
+
): DocumentWithChildren
|
|
306
|
+
|
|
307
|
+
# Get children of a document
|
|
308
|
+
documentChildren(
|
|
309
|
+
parentIdentifier: String!
|
|
310
|
+
view: ViewFilterInput
|
|
311
|
+
paging: PagingInput
|
|
312
|
+
): PHDocumentResultPage!
|
|
313
|
+
|
|
314
|
+
# Get parents of a document
|
|
315
|
+
documentParents(
|
|
316
|
+
childIdentifier: String!
|
|
317
|
+
view: ViewFilterInput
|
|
318
|
+
paging: PagingInput
|
|
319
|
+
): PHDocumentResultPage!
|
|
320
|
+
|
|
321
|
+
# Find documents by search criteria
|
|
322
|
+
findDocuments(
|
|
323
|
+
search: SearchFilterInput!
|
|
324
|
+
view: ViewFilterInput
|
|
325
|
+
paging: PagingInput
|
|
326
|
+
): PHDocumentResultPage!
|
|
327
|
+
|
|
328
|
+
# Get job status
|
|
329
|
+
jobStatus(jobId: String!): JobInfo
|
|
330
|
+
|
|
331
|
+
# Poll for sync envelopes from a channel
|
|
332
|
+
pollSyncEnvelopes(
|
|
333
|
+
channelId: String!
|
|
334
|
+
cursorOrdinal: Int!
|
|
335
|
+
): [SyncEnvelope!]!
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
type Mutation {
|
|
339
|
+
# Create a new document
|
|
340
|
+
createDocument(
|
|
341
|
+
document: JSONObject!
|
|
342
|
+
parentIdentifier: String
|
|
343
|
+
): PHDocument!
|
|
344
|
+
|
|
345
|
+
# Create an empty document of specified type
|
|
346
|
+
createEmptyDocument(
|
|
347
|
+
documentType: String!
|
|
348
|
+
parentIdentifier: String
|
|
349
|
+
): PHDocument!
|
|
350
|
+
|
|
351
|
+
# Apply actions to a document (synchronous)
|
|
352
|
+
mutateDocument(
|
|
353
|
+
documentIdentifier: String!
|
|
354
|
+
actions: [JSONObject!]!
|
|
355
|
+
view: ViewFilterInput
|
|
356
|
+
): PHDocument!
|
|
357
|
+
|
|
358
|
+
# Submit actions to a document (asynchronous)
|
|
359
|
+
mutateDocumentAsync(
|
|
360
|
+
documentIdentifier: String!
|
|
361
|
+
actions: [JSONObject!]!
|
|
362
|
+
view: ViewFilterInput
|
|
363
|
+
): String!
|
|
364
|
+
|
|
365
|
+
# Rename a document
|
|
366
|
+
renameDocument(
|
|
367
|
+
documentIdentifier: String!
|
|
368
|
+
name: String!
|
|
369
|
+
branch: String
|
|
370
|
+
): PHDocument!
|
|
371
|
+
|
|
372
|
+
# Add children to a document
|
|
373
|
+
addChildren(
|
|
374
|
+
parentIdentifier: String!
|
|
375
|
+
documentIdentifiers: [String!]!
|
|
376
|
+
branch: String
|
|
377
|
+
): PHDocument!
|
|
378
|
+
|
|
379
|
+
# Remove children from a document
|
|
380
|
+
removeChildren(
|
|
381
|
+
parentIdentifier: String!
|
|
382
|
+
documentIdentifiers: [String!]!
|
|
383
|
+
branch: String
|
|
384
|
+
): PHDocument!
|
|
385
|
+
|
|
386
|
+
# Move children between documents
|
|
387
|
+
moveChildren(
|
|
388
|
+
sourceParentIdentifier: String!
|
|
389
|
+
targetParentIdentifier: String!
|
|
390
|
+
documentIdentifiers: [String!]!
|
|
391
|
+
branch: String
|
|
392
|
+
): MoveChildrenResult!
|
|
393
|
+
|
|
394
|
+
# Delete a single document
|
|
395
|
+
deleteDocument(
|
|
396
|
+
identifier: String!
|
|
397
|
+
propagate: PropagationMode
|
|
398
|
+
): Boolean!
|
|
399
|
+
|
|
400
|
+
# Delete multiple documents
|
|
401
|
+
deleteDocuments(
|
|
402
|
+
identifiers: [String!]!
|
|
403
|
+
propagate: PropagationMode
|
|
404
|
+
): Boolean!
|
|
405
|
+
|
|
406
|
+
# Touch (create or update) a channel for sync
|
|
407
|
+
touchChannel(
|
|
408
|
+
input: TouchChannelInput!
|
|
409
|
+
): Boolean!
|
|
410
|
+
|
|
411
|
+
# Push sync envelope to a channel
|
|
412
|
+
pushSyncEnvelope(
|
|
413
|
+
envelope: SyncEnvelopeInput!
|
|
414
|
+
): Boolean!
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
type Subscription {
|
|
418
|
+
# Subscribe to document changes
|
|
419
|
+
documentChanges(
|
|
420
|
+
search: SearchFilterInput!
|
|
421
|
+
view: ViewFilterInput
|
|
422
|
+
): DocumentChangeEvent!
|
|
423
|
+
|
|
424
|
+
# Subscribe to job changes
|
|
425
|
+
jobChanges(
|
|
426
|
+
jobId: String!
|
|
427
|
+
): JobChangeEvent!
|
|
428
|
+
}
|
|
429
|
+
|
|
@@ -6,6 +6,40 @@ export declare class ReactorSubgraph extends BaseSubgraph {
|
|
|
6
6
|
constructor(args: SubgraphArgs);
|
|
7
7
|
name: string;
|
|
8
8
|
hasSubscriptions: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Check if user has global read access (admin, user, or guest)
|
|
11
|
+
*/
|
|
12
|
+
private hasGlobalReadAccess;
|
|
13
|
+
/**
|
|
14
|
+
* Check if user has global write access (admin or user, not guest)
|
|
15
|
+
*/
|
|
16
|
+
private hasGlobalWriteAccess;
|
|
17
|
+
/**
|
|
18
|
+
* Get the parent IDs function for hierarchical permission checks
|
|
19
|
+
*/
|
|
20
|
+
private getParentIdsFn;
|
|
21
|
+
/**
|
|
22
|
+
* Check if user can read a document (with hierarchy)
|
|
23
|
+
*/
|
|
24
|
+
private canReadDocument;
|
|
25
|
+
/**
|
|
26
|
+
* Check if user can write to a document (with hierarchy)
|
|
27
|
+
*/
|
|
28
|
+
private canWriteDocument;
|
|
29
|
+
/**
|
|
30
|
+
* Throw an error if user cannot read the document
|
|
31
|
+
*/
|
|
32
|
+
private assertCanRead;
|
|
33
|
+
/**
|
|
34
|
+
* Throw an error if user cannot write to the document
|
|
35
|
+
*/
|
|
36
|
+
private assertCanWrite;
|
|
37
|
+
/**
|
|
38
|
+
* Check if user can execute specific operations on a document.
|
|
39
|
+
* Only checks operations that have restrictions set.
|
|
40
|
+
* Throws an error if any operation is restricted and user lacks permission.
|
|
41
|
+
*/
|
|
42
|
+
private assertCanExecuteOperations;
|
|
9
43
|
typeDefs: import("graphql").DocumentNode;
|
|
10
44
|
resolvers: Resolvers;
|
|
11
45
|
onSetup(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraph.d.ts","sourceRoot":"","sources":["../../../../src/graphql/reactor/subgraph.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"subgraph.d.ts","sourceRoot":"","sources":["../../../../src/graphql/reactor/subgraph.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,aAAa,CAAC;AAMzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAclD,qBAAa,eAAgB,SAAQ,YAAY;IAE/C,OAAO,CAAC,MAAM,CAA0C;gBAE5C,IAAI,EAAE,YAAY;IAK9B,IAAI,SAAgB;IACpB,gBAAgB,UAAQ;IAExB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAS3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;YACW,eAAe;IAqB7B;;OAEG;YACW,gBAAgB;IAqB9B;;OAEG;YACW,aAAa;IAS3B;;OAEG;YACW,cAAc;IAY5B;;;;OAIG;YACW,0BAA0B;IAqDxC,QAAQ,iCAEN;IAEF,SAAS,EAAE,SAAS,CAkdlB;IAEF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAKzB"}
|