@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.
- 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 +4 -1
- package/dist/src/graphql/base-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/base-subgraph.js +4 -0
- package/dist/src/graphql/base-subgraph.js.map +1 -1
- package/dist/src/graphql/document-model-subgraph.d.ts +51 -0
- package/dist/src/graphql/document-model-subgraph.d.ts.map +1 -0
- package/dist/src/graphql/document-model-subgraph.js +104 -0
- package/dist/src/graphql/document-model-subgraph.js.map +1 -0
- 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 +11 -3
- package/dist/src/graphql/graphql-manager.d.ts.map +1 -1
- package/dist/src/graphql/graphql-manager.js +72 -15
- 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 +48 -17
- package/dist/src/graphql/reactor/resolvers.d.ts.map +1 -1
- package/dist/src/graphql/reactor/resolvers.js +114 -34
- 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 +325 -22
- package/dist/src/graphql/reactor/subgraph.js.map +1 -1
- package/dist/src/graphql/reactor/validation.d.ts +62 -62
- package/dist/src/graphql/system/system-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/types.d.ts +5 -1
- package/dist/src/graphql/types.d.ts.map +1 -1
- package/dist/src/graphql/utils.js +1 -1
- package/dist/src/graphql/utils.js.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 +17 -7
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +49 -27
- 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 +32 -22
- 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 +5 -4
- package/dist/src/utils/create-schema.d.ts.map +1 -1
- package/dist/src/utils/create-schema.js +110 -4
- 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.d.ts +2 -0
- package/dist/test/two-reactor-gql-sync.test.d.ts.map +1 -0
- package/dist/test/two-reactor-gql-sync.test.js +298 -0
- package/dist/test/two-reactor-gql-sync.test.js.map +1 -0
- package/dist/test/utils/gql-resolver-bridge.d.ts +12 -0
- package/dist/test/utils/gql-resolver-bridge.d.ts.map +1 -0
- package/dist/test/utils/gql-resolver-bridge.js +60 -0
- package/dist/test/utils/gql-resolver-bridge.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- 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,
|
|
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
|
-
|
|
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":"
|
|
1
|
+
{"version":3,"file":"pubsub.js","sourceRoot":"","sources":["../../../../src/graphql/reactor/pubsub.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;AAE5B,MAAM,UAAU,SAAS;IACvB,OAAO,MAAM,CAAC;AAChB,CAAC;AAOD,MAAM,CAAC,MAAM,qBAAqB,GAAyB;IACzD,gBAAgB,EAAE,kBAAkB;IACpC,WAAW,EAAE,aAAa;CAC3B,CAAC;AAoBF,IAAI,yBAAyB,GAAwB,IAAI,CAAC;AAC1D,IAAI,uBAAuB,GAAG,CAAC,CAAC;AAEhC,MAAM,UAAU,gCAAgC,CAC9C,aAA6B;IAE7B,IAAI,uBAAuB,KAAK,CAAC,EAAE,CAAC;QAClC,yBAAyB,GAAG,aAAa,CAAC,SAAS,CACjD,EAAE,EACF,CAAC,KAA0B,EAAE,EAAE;YAC7B,MAAM,OAAO,GAA2B;gBACtC,eAAe,EAAE,KAAK;gBACtB,MAAM,EAAE,EAAE;gBACV,IAAI,EAAE,SAAS;aAChB,CAAC;YACF,KAAK,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACvE,CAAC,CACF,CAAC;IACJ,CAAC;IAED,uBAAuB,EAAE,CAAC;IAE1B,OAAO,GAAG,EAAE;QACV,uBAAuB,EAAE,CAAC;QAC1B,IAAI,uBAAuB,KAAK,CAAC,IAAI,yBAAyB,EAAE,CAAC;YAC/D,yBAAyB,EAAE,CAAC;YAC5B,yBAAyB,GAAG,IAAI,CAAC;QACnC,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAMnC,CAAC;AAEJ,MAAM,UAAU,qBAAqB,CACnC,aAA6B,EAC7B,KAAa;IAEb,IAAI,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAErD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,SAAqC,CAAC;QAE1C,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;YACtB,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YACxD,MAAM,OAAO,GAAsB;gBACjC,UAAU,EAAE;oBACV,KAAK,EAAE,OAAO,CAAC,EAAE;oBACjB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,SAAS,EAAE,OAAO,CAAC,eAAe;oBAClC,WAAW,EAAE,OAAO,CAAC,iBAAiB,IAAI,IAAI;oBAC9C,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI;oBACrC,mEAAmE;oBACnE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;iBAC7B;gBACD,KAAK;aACN,CAAC;YAEF,KAAK,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAEhE,MAAM,UAAU,GACd,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,QAAQ;gBACnC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,mBAAmB;gBAC9C,OAAO,CAAC,iBAAiB,KAAK,SAAS,CAAC;YAE1C,IAAI,CAAC,UAAU,IAAI,CAAC,WAAW,EAAE,CAAC;gBAChC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC1B,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;wBAC1B,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;oBACpD,CAAC,CAAC,CAAC;gBACL,CAAC,EAAE,IAAI,CAAC,CAAC;YACX,CAAC;iBAAM,IAAI,UAAU,EAAE,CAAC;gBACtB,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvC,CAAC;QACH,CAAC,CAAC;QAEF,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAC1B,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,GAAG,EAAE;YAClB,WAAW,GAAG,IAAI,CAAC;YACnB,IAAI,SAAS,EAAE,CAAC;gBACd,YAAY,CAAC,SAAS,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC;QAEF,YAAY,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACvC,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,YAAY,CAAC,QAAQ,EAAE,CAAC;IAExB,OAAO,GAAG,EAAE;QACV,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,YAAY,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAChC,YAAY,CAAC,MAAM,EAAE,CAAC;gBACtB,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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":"AAAA,OAAO,KAAK,
|
|
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.
|
|
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.
|
|
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
|
-
|
|
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,
|
|
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
|
-
|
|
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,
|
|
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
|
-
|
|
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,
|
|
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
|
-
|
|
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,
|
|
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
|