@forge/manifest 12.5.0-next.3 → 12.5.0-next.5
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/CHANGELOG.md +12 -0
- package/out/processor/basic-validation-processor.d.ts.map +1 -1
- package/out/processor/basic-validation-processor.js +2 -1
- package/out/schema/basic-manifest-schema.json +40 -126
- package/out/schema/basic-manifest.d.ts +18 -37
- package/out/schema/manifest-schema.json +85 -127
- package/out/schema/manifest.d.ts +42 -37
- package/out/text/errors.d.ts +1 -0
- package/out/text/errors.d.ts.map +1 -1
- package/out/text/errors.js +2 -1
- package/out/validators/compatibility-validator.d.ts.map +1 -1
- package/out/validators/compatibility-validator.js +16 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @forge/manifest
|
|
2
2
|
|
|
3
|
+
## 12.5.0-next.5
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 47a8b98: Added new `installationTarget` field on `app` in the manifest schema (`site` | `unit`).
|
|
8
|
+
|
|
9
|
+
## 12.5.0-next.4
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- a02af38: Update manifest definitions
|
|
14
|
+
|
|
3
15
|
## 12.5.0-next.3
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/basic-validation-processor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"basic-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/basic-validation-processor.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,qBAAa,wBAAyB,SAAQ,2BAA2B,CAAC,mBAAmB,CAAC;gBAChF,WAAW,EAAE,WAAW;CAWrC"}
|
|
@@ -15,7 +15,8 @@ class BasicValidationProcessor extends abstract_validation_processor_1.AbstractV
|
|
|
15
15
|
new validators_1.SchemaValidator(BASIC_SCHEMA),
|
|
16
16
|
new validators_1.EntityPropertyValidator(),
|
|
17
17
|
new jql_function_validator_1.JqlFunctionValidator(),
|
|
18
|
-
new runtime_version_validator_1.RuntimeVersionValidator(lintOptions)
|
|
18
|
+
new runtime_version_validator_1.RuntimeVersionValidator(lintOptions),
|
|
19
|
+
new validators_1.CompatibilityValidator()
|
|
19
20
|
]);
|
|
20
21
|
}
|
|
21
22
|
}
|
|
@@ -51,144 +51,58 @@
|
|
|
51
51
|
"name"
|
|
52
52
|
]
|
|
53
53
|
},
|
|
54
|
+
"installationTarget": {
|
|
55
|
+
"type": "string",
|
|
56
|
+
"enum": [
|
|
57
|
+
"site",
|
|
58
|
+
"unit"
|
|
59
|
+
],
|
|
60
|
+
"description": "The target of the app installation."
|
|
61
|
+
},
|
|
54
62
|
"compatibility": {
|
|
55
63
|
"type": "object",
|
|
56
64
|
"title": "compatibility",
|
|
57
|
-
"description": "The app compatibility configuration. If not set, app is not a cross-context app.",
|
|
58
|
-
"
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
"additionalProperties": false,
|
|
65
|
+
"description": "The app compatibility configuration. If not set, app is not a cross-context or global app.",
|
|
66
|
+
"additionalProperties": false,
|
|
67
|
+
"minProperties": 1,
|
|
68
|
+
"properties": {
|
|
69
|
+
"confluence": {
|
|
70
|
+
"type": "object",
|
|
64
71
|
"properties": {
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
]
|
|
70
|
-
"properties": {
|
|
71
|
-
"required": {
|
|
72
|
-
"enum": [
|
|
73
|
-
true
|
|
74
|
-
]
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
"additionalProperties": false
|
|
78
|
-
},
|
|
79
|
-
"jira": {
|
|
80
|
-
"type": "object",
|
|
81
|
-
"properties": {
|
|
82
|
-
"required": {
|
|
83
|
-
"enum": [
|
|
84
|
-
false
|
|
85
|
-
]
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
"additionalProperties": false
|
|
89
|
-
},
|
|
90
|
-
"compass": {
|
|
91
|
-
"type": "object",
|
|
92
|
-
"properties": {
|
|
93
|
-
"required": {
|
|
94
|
-
"enum": [
|
|
95
|
-
false
|
|
96
|
-
]
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
"additionalProperties": false
|
|
72
|
+
"required": {
|
|
73
|
+
"enum": [
|
|
74
|
+
true,
|
|
75
|
+
false
|
|
76
|
+
]
|
|
100
77
|
}
|
|
101
|
-
}
|
|
78
|
+
},
|
|
79
|
+
"additionalProperties": false
|
|
102
80
|
},
|
|
103
|
-
{
|
|
104
|
-
"
|
|
105
|
-
"jira"
|
|
106
|
-
],
|
|
107
|
-
"additionalProperties": false,
|
|
81
|
+
"jira": {
|
|
82
|
+
"type": "object",
|
|
108
83
|
"properties": {
|
|
109
|
-
"
|
|
110
|
-
"
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
false
|
|
115
|
-
]
|
|
116
|
-
}
|
|
117
|
-
},
|
|
118
|
-
"additionalProperties": false
|
|
119
|
-
},
|
|
120
|
-
"jira": {
|
|
121
|
-
"type": "object",
|
|
122
|
-
"required": [
|
|
123
|
-
"required"
|
|
124
|
-
],
|
|
125
|
-
"properties": {
|
|
126
|
-
"required": {
|
|
127
|
-
"enum": [
|
|
128
|
-
true
|
|
129
|
-
]
|
|
130
|
-
}
|
|
131
|
-
},
|
|
132
|
-
"additionalProperties": false
|
|
133
|
-
},
|
|
134
|
-
"compass": {
|
|
135
|
-
"type": "object",
|
|
136
|
-
"properties": {
|
|
137
|
-
"required": {
|
|
138
|
-
"enum": [
|
|
139
|
-
false
|
|
140
|
-
]
|
|
141
|
-
}
|
|
142
|
-
},
|
|
143
|
-
"additionalProperties": false
|
|
84
|
+
"required": {
|
|
85
|
+
"enum": [
|
|
86
|
+
true,
|
|
87
|
+
false
|
|
88
|
+
]
|
|
144
89
|
}
|
|
145
|
-
}
|
|
90
|
+
},
|
|
91
|
+
"additionalProperties": false
|
|
146
92
|
},
|
|
147
|
-
{
|
|
148
|
-
"
|
|
149
|
-
"compass"
|
|
150
|
-
],
|
|
151
|
-
"additionalProperties": false,
|
|
93
|
+
"compass": {
|
|
94
|
+
"type": "object",
|
|
152
95
|
"properties": {
|
|
153
|
-
"
|
|
154
|
-
"
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
false
|
|
159
|
-
]
|
|
160
|
-
}
|
|
161
|
-
},
|
|
162
|
-
"additionalProperties": false
|
|
163
|
-
},
|
|
164
|
-
"jira": {
|
|
165
|
-
"type": "object",
|
|
166
|
-
"properties": {
|
|
167
|
-
"required": {
|
|
168
|
-
"enum": [
|
|
169
|
-
false
|
|
170
|
-
]
|
|
171
|
-
}
|
|
172
|
-
},
|
|
173
|
-
"additionalProperties": false
|
|
174
|
-
},
|
|
175
|
-
"compass": {
|
|
176
|
-
"type": "object",
|
|
177
|
-
"required": [
|
|
178
|
-
"required"
|
|
179
|
-
],
|
|
180
|
-
"properties": {
|
|
181
|
-
"required": {
|
|
182
|
-
"enum": [
|
|
183
|
-
true
|
|
184
|
-
]
|
|
185
|
-
}
|
|
186
|
-
},
|
|
187
|
-
"additionalProperties": false
|
|
96
|
+
"required": {
|
|
97
|
+
"enum": [
|
|
98
|
+
true,
|
|
99
|
+
false
|
|
100
|
+
]
|
|
188
101
|
}
|
|
189
|
-
}
|
|
102
|
+
},
|
|
103
|
+
"additionalProperties": false
|
|
190
104
|
}
|
|
191
|
-
|
|
105
|
+
}
|
|
192
106
|
},
|
|
193
107
|
"access": {
|
|
194
108
|
"additionalProperties": false,
|
|
@@ -25,43 +25,6 @@ export type Architecture = 'x86_64' | 'arm64';
|
|
|
25
25
|
* The default amount of memory available to all functions at runtime. Increasing the function memory also increases its CPU allocation. You can configure memory between 128 MB and 1024 MB in 1-MB increments. The default value is 512 MB.
|
|
26
26
|
*/
|
|
27
27
|
export type MemoryMB = number;
|
|
28
|
-
/**
|
|
29
|
-
* The app compatibility configuration. If not set, app is not a cross-context app.
|
|
30
|
-
*/
|
|
31
|
-
export type Compatibility =
|
|
32
|
-
| {
|
|
33
|
-
confluence: {
|
|
34
|
-
required: true;
|
|
35
|
-
};
|
|
36
|
-
jira?: {
|
|
37
|
-
required?: false;
|
|
38
|
-
};
|
|
39
|
-
compass?: {
|
|
40
|
-
required?: false;
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
| {
|
|
44
|
-
confluence?: {
|
|
45
|
-
required?: false;
|
|
46
|
-
};
|
|
47
|
-
jira: {
|
|
48
|
-
required: true;
|
|
49
|
-
};
|
|
50
|
-
compass?: {
|
|
51
|
-
required?: false;
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
| {
|
|
55
|
-
confluence?: {
|
|
56
|
-
required?: false;
|
|
57
|
-
};
|
|
58
|
-
jira?: {
|
|
59
|
-
required?: false;
|
|
60
|
-
};
|
|
61
|
-
compass: {
|
|
62
|
-
required: true;
|
|
63
|
-
};
|
|
64
|
-
};
|
|
65
28
|
/**
|
|
66
29
|
* Whether to enable user access control for this app. Default value of false.
|
|
67
30
|
*/
|
|
@@ -95,6 +58,10 @@ export interface App {
|
|
|
95
58
|
description?: Description;
|
|
96
59
|
id: Id;
|
|
97
60
|
runtime: Runtime;
|
|
61
|
+
/**
|
|
62
|
+
* The target of the app installation.
|
|
63
|
+
*/
|
|
64
|
+
installationTarget?: 'site' | 'unit';
|
|
98
65
|
compatibility?: Compatibility;
|
|
99
66
|
access?: Access;
|
|
100
67
|
licensing?: Licensing;
|
|
@@ -212,6 +179,20 @@ export interface Runtime {
|
|
|
212
179
|
architecture?: Architecture;
|
|
213
180
|
memoryMB?: MemoryMB;
|
|
214
181
|
}
|
|
182
|
+
/**
|
|
183
|
+
* The app compatibility configuration. If not set, app is not a cross-context or global app.
|
|
184
|
+
*/
|
|
185
|
+
export interface Compatibility {
|
|
186
|
+
confluence?: {
|
|
187
|
+
required?: true | false;
|
|
188
|
+
};
|
|
189
|
+
jira?: {
|
|
190
|
+
required?: true | false;
|
|
191
|
+
};
|
|
192
|
+
compass?: {
|
|
193
|
+
required?: true | false;
|
|
194
|
+
};
|
|
195
|
+
}
|
|
215
196
|
/**
|
|
216
197
|
* Options related to app access control
|
|
217
198
|
*/
|
|
@@ -51,144 +51,58 @@
|
|
|
51
51
|
"name"
|
|
52
52
|
]
|
|
53
53
|
},
|
|
54
|
+
"installationTarget": {
|
|
55
|
+
"type": "string",
|
|
56
|
+
"enum": [
|
|
57
|
+
"site",
|
|
58
|
+
"unit"
|
|
59
|
+
],
|
|
60
|
+
"description": "The target of the app installation."
|
|
61
|
+
},
|
|
54
62
|
"compatibility": {
|
|
55
63
|
"type": "object",
|
|
56
64
|
"title": "compatibility",
|
|
57
|
-
"description": "The app compatibility configuration. If not set, app is not a cross-context app.",
|
|
58
|
-
"
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
"additionalProperties": false,
|
|
65
|
+
"description": "The app compatibility configuration. If not set, app is not a cross-context or global app.",
|
|
66
|
+
"additionalProperties": false,
|
|
67
|
+
"minProperties": 1,
|
|
68
|
+
"properties": {
|
|
69
|
+
"confluence": {
|
|
70
|
+
"type": "object",
|
|
64
71
|
"properties": {
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
]
|
|
70
|
-
"properties": {
|
|
71
|
-
"required": {
|
|
72
|
-
"enum": [
|
|
73
|
-
true
|
|
74
|
-
]
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
"additionalProperties": false
|
|
78
|
-
},
|
|
79
|
-
"jira": {
|
|
80
|
-
"type": "object",
|
|
81
|
-
"properties": {
|
|
82
|
-
"required": {
|
|
83
|
-
"enum": [
|
|
84
|
-
false
|
|
85
|
-
]
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
"additionalProperties": false
|
|
89
|
-
},
|
|
90
|
-
"compass": {
|
|
91
|
-
"type": "object",
|
|
92
|
-
"properties": {
|
|
93
|
-
"required": {
|
|
94
|
-
"enum": [
|
|
95
|
-
false
|
|
96
|
-
]
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
"additionalProperties": false
|
|
72
|
+
"required": {
|
|
73
|
+
"enum": [
|
|
74
|
+
true,
|
|
75
|
+
false
|
|
76
|
+
]
|
|
100
77
|
}
|
|
101
|
-
}
|
|
78
|
+
},
|
|
79
|
+
"additionalProperties": false
|
|
102
80
|
},
|
|
103
|
-
{
|
|
104
|
-
"
|
|
105
|
-
"jira"
|
|
106
|
-
],
|
|
107
|
-
"additionalProperties": false,
|
|
81
|
+
"jira": {
|
|
82
|
+
"type": "object",
|
|
108
83
|
"properties": {
|
|
109
|
-
"
|
|
110
|
-
"
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
false
|
|
115
|
-
]
|
|
116
|
-
}
|
|
117
|
-
},
|
|
118
|
-
"additionalProperties": false
|
|
119
|
-
},
|
|
120
|
-
"jira": {
|
|
121
|
-
"type": "object",
|
|
122
|
-
"required": [
|
|
123
|
-
"required"
|
|
124
|
-
],
|
|
125
|
-
"properties": {
|
|
126
|
-
"required": {
|
|
127
|
-
"enum": [
|
|
128
|
-
true
|
|
129
|
-
]
|
|
130
|
-
}
|
|
131
|
-
},
|
|
132
|
-
"additionalProperties": false
|
|
133
|
-
},
|
|
134
|
-
"compass": {
|
|
135
|
-
"type": "object",
|
|
136
|
-
"properties": {
|
|
137
|
-
"required": {
|
|
138
|
-
"enum": [
|
|
139
|
-
false
|
|
140
|
-
]
|
|
141
|
-
}
|
|
142
|
-
},
|
|
143
|
-
"additionalProperties": false
|
|
84
|
+
"required": {
|
|
85
|
+
"enum": [
|
|
86
|
+
true,
|
|
87
|
+
false
|
|
88
|
+
]
|
|
144
89
|
}
|
|
145
|
-
}
|
|
90
|
+
},
|
|
91
|
+
"additionalProperties": false
|
|
146
92
|
},
|
|
147
|
-
{
|
|
148
|
-
"
|
|
149
|
-
"compass"
|
|
150
|
-
],
|
|
151
|
-
"additionalProperties": false,
|
|
93
|
+
"compass": {
|
|
94
|
+
"type": "object",
|
|
152
95
|
"properties": {
|
|
153
|
-
"
|
|
154
|
-
"
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
false
|
|
159
|
-
]
|
|
160
|
-
}
|
|
161
|
-
},
|
|
162
|
-
"additionalProperties": false
|
|
163
|
-
},
|
|
164
|
-
"jira": {
|
|
165
|
-
"type": "object",
|
|
166
|
-
"properties": {
|
|
167
|
-
"required": {
|
|
168
|
-
"enum": [
|
|
169
|
-
false
|
|
170
|
-
]
|
|
171
|
-
}
|
|
172
|
-
},
|
|
173
|
-
"additionalProperties": false
|
|
174
|
-
},
|
|
175
|
-
"compass": {
|
|
176
|
-
"type": "object",
|
|
177
|
-
"required": [
|
|
178
|
-
"required"
|
|
179
|
-
],
|
|
180
|
-
"properties": {
|
|
181
|
-
"required": {
|
|
182
|
-
"enum": [
|
|
183
|
-
true
|
|
184
|
-
]
|
|
185
|
-
}
|
|
186
|
-
},
|
|
187
|
-
"additionalProperties": false
|
|
96
|
+
"required": {
|
|
97
|
+
"enum": [
|
|
98
|
+
true,
|
|
99
|
+
false
|
|
100
|
+
]
|
|
188
101
|
}
|
|
189
|
-
}
|
|
102
|
+
},
|
|
103
|
+
"additionalProperties": false
|
|
190
104
|
}
|
|
191
|
-
|
|
105
|
+
}
|
|
192
106
|
},
|
|
193
107
|
"access": {
|
|
194
108
|
"additionalProperties": false,
|
|
@@ -2007,6 +1921,45 @@
|
|
|
2007
1921
|
},
|
|
2008
1922
|
"minItems": 1
|
|
2009
1923
|
},
|
|
1924
|
+
"connectToForgeMigration": {
|
|
1925
|
+
"type": "array",
|
|
1926
|
+
"items": {
|
|
1927
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
1928
|
+
"additionalProperties": false,
|
|
1929
|
+
"type": "object",
|
|
1930
|
+
"properties": {
|
|
1931
|
+
"migrationGuideUrl": {
|
|
1932
|
+
"description": "The URL of the migration guide hosted by the app developer.",
|
|
1933
|
+
"type": "string",
|
|
1934
|
+
"pattern": "^https://",
|
|
1935
|
+
"maxLength": 2048
|
|
1936
|
+
},
|
|
1937
|
+
"willMigrateToForgeBeforeEOS": {
|
|
1938
|
+
"description": "Whether the app developer has committed to moving to fully Forge.",
|
|
1939
|
+
"type": "string",
|
|
1940
|
+
"enum": [
|
|
1941
|
+
"YES",
|
|
1942
|
+
"NO",
|
|
1943
|
+
"UNDECIDED"
|
|
1944
|
+
]
|
|
1945
|
+
},
|
|
1946
|
+
"key": {
|
|
1947
|
+
"$ref": "#/definitions/ModuleKeySchema"
|
|
1948
|
+
}
|
|
1949
|
+
},
|
|
1950
|
+
"required": [
|
|
1951
|
+
"migrationGuideUrl",
|
|
1952
|
+
"willMigrateToForgeBeforeEOS",
|
|
1953
|
+
"key"
|
|
1954
|
+
],
|
|
1955
|
+
"not": {
|
|
1956
|
+
"required": [
|
|
1957
|
+
"unlicensedAccess"
|
|
1958
|
+
]
|
|
1959
|
+
}
|
|
1960
|
+
},
|
|
1961
|
+
"minItems": 1
|
|
1962
|
+
},
|
|
2010
1963
|
"macro": {
|
|
2011
1964
|
"type": "array",
|
|
2012
1965
|
"items": {
|
|
@@ -9764,7 +9717,12 @@
|
|
|
9764
9717
|
"resource",
|
|
9765
9718
|
"title",
|
|
9766
9719
|
"key"
|
|
9767
|
-
]
|
|
9720
|
+
],
|
|
9721
|
+
"not": {
|
|
9722
|
+
"required": [
|
|
9723
|
+
"unlicensedAccess"
|
|
9724
|
+
]
|
|
9725
|
+
}
|
|
9768
9726
|
},
|
|
9769
9727
|
"minItems": 1
|
|
9770
9728
|
},
|
package/out/schema/manifest.d.ts
CHANGED
|
@@ -25,43 +25,6 @@ export type Architecture = 'x86_64' | 'arm64';
|
|
|
25
25
|
* The default amount of memory available to all functions at runtime. Increasing the function memory also increases its CPU allocation. You can configure memory between 128 MB and 1024 MB in 1-MB increments. The default value is 512 MB.
|
|
26
26
|
*/
|
|
27
27
|
export type MemoryMB = number;
|
|
28
|
-
/**
|
|
29
|
-
* The app compatibility configuration. If not set, app is not a cross-context app.
|
|
30
|
-
*/
|
|
31
|
-
export type Compatibility =
|
|
32
|
-
| {
|
|
33
|
-
confluence: {
|
|
34
|
-
required: true;
|
|
35
|
-
};
|
|
36
|
-
jira?: {
|
|
37
|
-
required?: false;
|
|
38
|
-
};
|
|
39
|
-
compass?: {
|
|
40
|
-
required?: false;
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
| {
|
|
44
|
-
confluence?: {
|
|
45
|
-
required?: false;
|
|
46
|
-
};
|
|
47
|
-
jira: {
|
|
48
|
-
required: true;
|
|
49
|
-
};
|
|
50
|
-
compass?: {
|
|
51
|
-
required?: false;
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
| {
|
|
55
|
-
confluence?: {
|
|
56
|
-
required?: false;
|
|
57
|
-
};
|
|
58
|
-
jira?: {
|
|
59
|
-
required?: false;
|
|
60
|
-
};
|
|
61
|
-
compass: {
|
|
62
|
-
required: true;
|
|
63
|
-
};
|
|
64
|
-
};
|
|
65
28
|
/**
|
|
66
29
|
* Whether to enable user access control for this app. Default value of false.
|
|
67
30
|
*/
|
|
@@ -840,6 +803,10 @@ export interface App {
|
|
|
840
803
|
description?: Description;
|
|
841
804
|
id: Id;
|
|
842
805
|
runtime: Runtime;
|
|
806
|
+
/**
|
|
807
|
+
* The target of the app installation.
|
|
808
|
+
*/
|
|
809
|
+
installationTarget?: 'site' | 'unit';
|
|
843
810
|
compatibility?: Compatibility;
|
|
844
811
|
access?: Access;
|
|
845
812
|
licensing?: Licensing;
|
|
@@ -957,6 +924,20 @@ export interface Runtime {
|
|
|
957
924
|
architecture?: Architecture;
|
|
958
925
|
memoryMB?: MemoryMB;
|
|
959
926
|
}
|
|
927
|
+
/**
|
|
928
|
+
* The app compatibility configuration. If not set, app is not a cross-context or global app.
|
|
929
|
+
*/
|
|
930
|
+
export interface Compatibility {
|
|
931
|
+
confluence?: {
|
|
932
|
+
required?: true | false;
|
|
933
|
+
};
|
|
934
|
+
jira?: {
|
|
935
|
+
required?: true | false;
|
|
936
|
+
};
|
|
937
|
+
compass?: {
|
|
938
|
+
required?: true | false;
|
|
939
|
+
};
|
|
940
|
+
}
|
|
960
941
|
/**
|
|
961
942
|
* Options related to app access control
|
|
962
943
|
*/
|
|
@@ -12414,6 +12395,30 @@ export interface Modules {
|
|
|
12414
12395
|
key: ModuleKeySchema;
|
|
12415
12396
|
}[]
|
|
12416
12397
|
];
|
|
12398
|
+
connectToForgeMigration?: [
|
|
12399
|
+
{
|
|
12400
|
+
/**
|
|
12401
|
+
* The URL of the migration guide hosted by the app developer.
|
|
12402
|
+
*/
|
|
12403
|
+
migrationGuideUrl: string;
|
|
12404
|
+
/**
|
|
12405
|
+
* Whether the app developer has committed to moving to fully Forge.
|
|
12406
|
+
*/
|
|
12407
|
+
willMigrateToForgeBeforeEOS: 'YES' | 'NO' | 'UNDECIDED';
|
|
12408
|
+
key: ModuleKeySchema;
|
|
12409
|
+
},
|
|
12410
|
+
...{
|
|
12411
|
+
/**
|
|
12412
|
+
* The URL of the migration guide hosted by the app developer.
|
|
12413
|
+
*/
|
|
12414
|
+
migrationGuideUrl: string;
|
|
12415
|
+
/**
|
|
12416
|
+
* Whether the app developer has committed to moving to fully Forge.
|
|
12417
|
+
*/
|
|
12418
|
+
willMigrateToForgeBeforeEOS: 'YES' | 'NO' | 'UNDECIDED';
|
|
12419
|
+
key: ModuleKeySchema;
|
|
12420
|
+
}[]
|
|
12421
|
+
];
|
|
12417
12422
|
macro?: [
|
|
12418
12423
|
(
|
|
12419
12424
|
| {
|
package/out/text/errors.d.ts
CHANGED
package/out/text/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"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"}
|
package/out/text/errors.js
CHANGED
|
@@ -240,7 +240,8 @@ exports.errors = {
|
|
|
240
240
|
},
|
|
241
241
|
compatibility: {
|
|
242
242
|
invalidConfluenceModuleInJira: () => 'Using the module `confluence:fullPage` is invalid when the required product is Jira. Full page modules must match the required product. Use `jira:fullPage` as the module type, or change the required product to Confluence in your manifest.yml compatibility settings.',
|
|
243
|
-
invalidJiraModuleInConfluence: () => 'Using the module `jira:fullPage` is invalid when the required product is Confluence. Full page modules must match the required product. Use `confluence:fullPage` as the module type, or change the required product to Jira in your manifest.yml compatibility settings.'
|
|
243
|
+
invalidJiraModuleInConfluence: () => 'Using the module `jira:fullPage` is invalid when the required product is Confluence. Full page modules must match the required product. Use `confluence:fullPage` as the module type, or change the required product to Jira in your manifest.yml compatibility settings.',
|
|
244
|
+
oneRequiredContext: () => 'One context (Jira, Confluence, or Compass) must have `required:true` in app.compatibility.'
|
|
244
245
|
}
|
|
245
246
|
},
|
|
246
247
|
translations: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compatibility-validator.d.ts","sourceRoot":"","sources":["../../src/validators/compatibility-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAK3D,qBAAa,sBAAuB,YAAW,kBAAkB,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,CAAC;IAC/F,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"compatibility-validator.d.ts","sourceRoot":"","sources":["../../src/validators/compatibility-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAK3D,qBAAa,sBAAuB,YAAW,kBAAkB,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,CAAC;IAC/F,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;CA6DlG"}
|
|
@@ -13,8 +13,23 @@ class CompatibilityValidator {
|
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
const validationErrors = [];
|
|
16
|
+
const app = manifest.typedContent.app;
|
|
16
17
|
const modules = manifest.typedContent.modules || {};
|
|
17
|
-
const compatibility =
|
|
18
|
+
const compatibility = app?.compatibility || {};
|
|
19
|
+
const installationTarget = app?.installationTarget;
|
|
20
|
+
const shouldCheckRequiredContext = installationTarget === undefined || installationTarget === 'site';
|
|
21
|
+
if (shouldCheckRequiredContext) {
|
|
22
|
+
const hasCompatibilityKeys = Object.keys(compatibility).length > 0;
|
|
23
|
+
const requiredContexts = Object.keys(compatibility).filter((key) => compatibility[key]?.required === true);
|
|
24
|
+
if (hasCompatibilityKeys && requiredContexts.length !== 1) {
|
|
25
|
+
validationErrors.push({
|
|
26
|
+
message: text_1.errors.app.compatibility.oneRequiredContext(),
|
|
27
|
+
reference: text_2.References.SchemaError,
|
|
28
|
+
level: 'error',
|
|
29
|
+
...(0, utils_1.findPosition)('compatibility', manifest.yamlContentByLine)
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
}
|
|
18
33
|
const isJiraPrimary = compatibility.jira?.required === true;
|
|
19
34
|
const isConfluencePrimary = compatibility.confluence?.required === true;
|
|
20
35
|
const moduleKeys = Object.keys(modules);
|