@openneuro/server 4.28.3 → 4.29.0-alpha.1
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/package.json +9 -9
- package/src/app.ts +0 -2
- package/src/cache/item.ts +4 -4
- package/src/datalad/__tests__/files.spec.ts +0 -25
- package/src/datalad/analytics.ts +0 -1
- package/src/datalad/dataset.ts +17 -7
- package/src/datalad/description.ts +11 -11
- package/src/datalad/draft.ts +1 -1
- package/src/datalad/pagination.ts +3 -3
- package/src/datalad/snapshots.ts +6 -2
- package/src/elasticsearch/reindex-dataset.ts +2 -6
- package/src/graphql/permissions.ts +1 -1
- package/src/graphql/resolvers/__tests__/brainlife.spec.ts +1 -1
- package/src/graphql/resolvers/brainlife.ts +3 -5
- package/src/graphql/resolvers/cache.ts +1 -1
- package/src/graphql/resolvers/dataset-search.ts +4 -4
- package/src/graphql/resolvers/dataset.ts +14 -10
- package/src/graphql/resolvers/derivatives.ts +5 -7
- package/src/graphql/resolvers/draft.ts +4 -15
- package/src/graphql/resolvers/importRemoteDataset.ts +1 -0
- package/src/graphql/resolvers/metadata.ts +5 -4
- package/src/graphql/resolvers/mutation.ts +6 -3
- package/src/graphql/resolvers/permissions.ts +52 -33
- package/src/graphql/resolvers/reset.ts +1 -1
- package/src/graphql/resolvers/reviewer.ts +1 -0
- package/src/graphql/resolvers/snapshots.ts +4 -2
- package/src/graphql/resolvers/summary.ts +4 -4
- package/src/graphql/resolvers/validation.ts +37 -2
- package/src/graphql/schema.ts +59 -50
- package/src/handlers/comments.ts +7 -6
- package/src/handlers/datalad.ts +2 -3
- package/src/libs/__tests__/dataset.spec.ts +1 -1
- package/src/libs/email/index.ts +3 -2
- package/src/models/analytics.ts +2 -1
- package/src/models/badAnnexObject.ts +3 -2
- package/src/models/comment.ts +2 -1
- package/src/models/counter.ts +2 -1
- package/src/models/dataset.ts +3 -2
- package/src/models/deletion.ts +2 -1
- package/src/models/deprecatedSnapshot.ts +2 -1
- package/src/models/doi.ts +2 -1
- package/src/models/file.ts +3 -2
- package/src/models/ingestDataset.ts +2 -1
- package/src/models/issue.ts +2 -1
- package/src/models/key.ts +2 -1
- package/src/models/mailgunIdentifier.ts +2 -1
- package/src/models/metadata.ts +2 -1
- package/src/models/newsletter.ts +2 -1
- package/src/models/notification.ts +2 -1
- package/src/models/permission.ts +2 -1
- package/src/models/reviewer.ts +2 -1
- package/src/models/snapshot.ts +2 -1
- package/src/models/stars.ts +2 -1
- package/src/models/subscription.ts +2 -1
- package/src/models/summary.ts +9 -2
- package/src/models/upload.ts +2 -1
- package/src/models/user.ts +2 -1
- package/src/models/validation.ts +58 -0
- package/src/routes.ts +1 -1
- package/src/utils/validateUrl.ts +1 -1
- package/tsconfig.json +3 -1
package/src/models/key.ts
CHANGED
package/src/models/metadata.ts
CHANGED
package/src/models/newsletter.ts
CHANGED
package/src/models/permission.ts
CHANGED
package/src/models/reviewer.ts
CHANGED
package/src/models/snapshot.ts
CHANGED
package/src/models/stars.ts
CHANGED
package/src/models/summary.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import mongoose
|
|
1
|
+
import mongoose from "mongoose"
|
|
2
|
+
import type { Document } from "mongoose"
|
|
2
3
|
const { Schema, model } = mongoose
|
|
3
4
|
|
|
4
5
|
export interface SummaryPetField {
|
|
@@ -9,12 +10,18 @@ export interface SummaryPetField {
|
|
|
9
10
|
TracerRadionuclide: string[]
|
|
10
11
|
}
|
|
11
12
|
|
|
13
|
+
export interface SummarySubjectMetadata {
|
|
14
|
+
participantId: string
|
|
15
|
+
age: number
|
|
16
|
+
sex: string
|
|
17
|
+
}
|
|
18
|
+
|
|
12
19
|
export interface SummaryDocument extends Document {
|
|
13
20
|
id: string
|
|
14
21
|
datasetId: string
|
|
15
22
|
sessions: string[]
|
|
16
23
|
subjects: string[]
|
|
17
|
-
subjectMetadata:
|
|
24
|
+
subjectMetadata: SummarySubjectMetadata[]
|
|
18
25
|
tasks: string[]
|
|
19
26
|
modalities: string[]
|
|
20
27
|
primaryModality: string
|
package/src/models/upload.ts
CHANGED
package/src/models/user.ts
CHANGED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import mongoose from "mongoose"
|
|
2
|
+
import type { Document } from "mongoose"
|
|
3
|
+
const { Schema, model } = mongoose
|
|
4
|
+
|
|
5
|
+
export interface ValidatorMetadata {
|
|
6
|
+
validator: string
|
|
7
|
+
version: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface ValidatorCodeMessages {
|
|
11
|
+
code: string
|
|
12
|
+
message: string
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface ValidatorIssue {
|
|
16
|
+
code: string
|
|
17
|
+
subCode?: string
|
|
18
|
+
location?: string
|
|
19
|
+
severity?: "error" | "warning"
|
|
20
|
+
rule?: string
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Schema validator output collection
|
|
25
|
+
*/
|
|
26
|
+
export interface ValidationDocument extends Document {
|
|
27
|
+
id: string
|
|
28
|
+
datasetId: string
|
|
29
|
+
issues: ValidatorIssue[]
|
|
30
|
+
codeMessages: ValidatorCodeMessages
|
|
31
|
+
validatorMetadata: ValidatorMetadata
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const issueSchema = new Schema({
|
|
35
|
+
id: { type: String, required: true },
|
|
36
|
+
datasetId: { type: String, required: true },
|
|
37
|
+
issues: [{
|
|
38
|
+
code: String,
|
|
39
|
+
subCode: String,
|
|
40
|
+
location: String,
|
|
41
|
+
severity: String,
|
|
42
|
+
rule: String,
|
|
43
|
+
}],
|
|
44
|
+
codeMessages: [
|
|
45
|
+
{
|
|
46
|
+
code: String,
|
|
47
|
+
message: String,
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
validatorMetadata: {
|
|
51
|
+
validator: String,
|
|
52
|
+
version: String,
|
|
53
|
+
},
|
|
54
|
+
})
|
|
55
|
+
|
|
56
|
+
const Validation = model<ValidationDocument>("Validation", issueSchema)
|
|
57
|
+
|
|
58
|
+
export default Validation
|
package/src/routes.ts
CHANGED
|
@@ -177,7 +177,7 @@ const routes = [
|
|
|
177
177
|
const router = express.Router()
|
|
178
178
|
|
|
179
179
|
for (const route of routes) {
|
|
180
|
-
const arr =
|
|
180
|
+
const arr = Object.hasOwn(route, "middleware") ? route.middleware : []
|
|
181
181
|
arr.unshift(route.url)
|
|
182
182
|
arr.push(route.handler)
|
|
183
183
|
router[route.method](...arr)
|
package/src/utils/validateUrl.ts
CHANGED
package/tsconfig.json
CHANGED
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
"rootDir": "./src",
|
|
5
5
|
"outDir": "./dist",
|
|
6
6
|
"tsBuildInfoFile": "../../.build-cache/server.tsbuildinfo",
|
|
7
|
-
"types": ["vitest/globals"]
|
|
7
|
+
"types": ["vitest/globals"],
|
|
8
|
+
"moduleResolution": "Node",
|
|
9
|
+
"module": "CommonJS"
|
|
8
10
|
},
|
|
9
11
|
"include": ["./src"],
|
|
10
12
|
"files": ["./src/lerna.json"],
|