Skip to content

Commit 16894e1

Browse files
committed
[FIX] Schema: Add missing metadata properties
Also refactored the schema to only test and validate the metadata where required.
1 parent c76fb49 commit 16894e1

File tree

18 files changed

+1010
-235
lines changed

18 files changed

+1010
-235
lines changed

lib/validation/schema/specVersion/2.0.json

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,12 @@
33
"$id": "http://ui5.sap/schema/specVersion/2.0.json",
44

55
"type": "object",
6-
"required": ["specVersion", "metadata"],
6+
"required": ["specVersion"],
77
"properties": {
88
"specVersion": { "enum": ["2.0"] },
99
"kind": {
1010
"enum": ["project", "extension", null],
1111
"$comment": "Using null to allow not defining 'kind' which defaults to project"
12-
},
13-
"metadata": {
14-
"$ref": "../ui5.json#/definitions/metadata"
1512
}
1613
},
1714
"if": {

lib/validation/schema/specVersion/2.0/kind/extension.json

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
]
1818
},
1919
"metadata": {
20-
"$ref": "../../../ui5.json#/definitions/metadata"
20+
"$ref": "#/definitions/metadata"
2121
}
2222
},
2323
"if": {
@@ -56,5 +56,20 @@
5656
}
5757
}
5858
}
59+
},
60+
"definitions": {
61+
"metadata": {
62+
"type": "object",
63+
"required": ["name"],
64+
"additionalProperties": false,
65+
"properties": {
66+
"name": {
67+
"type": "string"
68+
},
69+
"copyright": {
70+
"type": "string"
71+
}
72+
}
73+
}
5974
}
6075
}

lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"enum": ["project-shim"]
1515
},
1616
"metadata": {
17-
"$ref": "../../../../ui5.json#/definitions/metadata"
17+
"$ref": "../extension.json#/definitions/metadata"
1818
},
1919
"shims": {
2020
"type": "object",

lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"enum": ["server-middleware"]
1515
},
1616
"metadata": {
17-
"$ref": "../../../../ui5.json#/definitions/metadata"
17+
"$ref": "../extension.json#/definitions/metadata"
1818
},
1919
"middleware": {
2020
"type": "object",

lib/validation/schema/specVersion/2.0/kind/extension/task.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"enum": ["task"]
1515
},
1616
"metadata": {
17-
"$ref": "../../../../ui5.json#/definitions/metadata"
17+
"$ref": "../extension.json#/definitions/metadata"
1818
},
1919
"task": {
2020
"type": "object",

lib/validation/schema/specVersion/2.0/kind/project.json

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"$id": "http://ui5.sap/schema/specVersion/2.0/kind/project.json",
44

55
"type": "object",
6-
"required": ["specVersion", "type", "metadata"],
6+
"required": ["specVersion", "type"],
77
"properties": {
88
"specVersion": { "enum": ["2.0"] },
99
"kind": {
@@ -17,9 +17,6 @@
1717
"theme-library",
1818
"module"
1919
]
20-
},
21-
"metadata": {
22-
"$ref": "../../../ui5.json#/definitions/metadata"
2320
}
2421
},
2522
"if": {
@@ -71,6 +68,31 @@
7168
},
7269

7370
"definitions": {
71+
"metadata": {
72+
"type": "object",
73+
"required": ["name"],
74+
"additionalProperties": false,
75+
"properties": {
76+
"name": {
77+
"type": "string"
78+
},
79+
"copyright": {
80+
"type": "string"
81+
},
82+
"deprecated": {
83+
"type": "boolean",
84+
"default": false
85+
},
86+
"sapInternal": {
87+
"type": "boolean",
88+
"default": false
89+
},
90+
"allowSapInternal": {
91+
"type": "boolean",
92+
"default": false
93+
}
94+
}
95+
},
7496
"resources-configuration-propertiesFileSourceEncoding": {
7597
"enum": ["UTF-8", "ISO-8859-1"],
7698
"default": "UTF-8",

lib/validation/schema/specVersion/2.0/kind/project/application.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"enum": ["application"]
1515
},
1616
"metadata": {
17-
"$ref": "../../../../ui5.json#/definitions/metadata"
17+
"$ref": "../project.json#/definitions/metadata"
1818
},
1919
"framework": {
2020
"$ref": "../project.json#/definitions/framework"

lib/validation/schema/specVersion/2.0/kind/project/library.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"enum": ["library"]
1515
},
1616
"metadata": {
17-
"$ref": "../../../../ui5.json#/definitions/metadata"
17+
"$ref": "../project.json#/definitions/metadata"
1818
},
1919
"framework": {
2020
"$ref": "../project.json#/definitions/framework"

lib/validation/schema/specVersion/2.0/kind/project/module.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"enum": ["module"]
1515
},
1616
"metadata": {
17-
"$ref": "../../../../ui5.json#/definitions/metadata"
17+
"$ref": "../project.json#/definitions/metadata"
1818
},
1919
"resources": {
2020
"type": "object",

lib/validation/schema/specVersion/2.0/kind/project/theme-library.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"enum": ["theme-library"]
1515
},
1616
"metadata": {
17-
"$ref": "../../../../ui5.json#/definitions/metadata"
17+
"$ref": "../project.json#/definitions/metadata"
1818
},
1919
"framework": {
2020
"$ref": "../project.json#/definitions/framework"

0 commit comments

Comments
 (0)