@resolution/jira-api-client 0.1.0 → 0.1.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/CHANGELOG.md +22 -0
- package/package.json +10 -3
- package/.eslintrc.js +0 -3
- package/config/api-typescript-generator.config.ts +0 -91
- package/config/compare-schemas.ts +0 -307
- package/src/index.ts +0 -47
- package/src/openapi/platform/base-jira-platform-api-client.ts +0 -2298
- package/src/openapi/platform/core/common-http-client.ts +0 -723
- package/src/openapi/platform/core/common-http-service.ts +0 -22
- package/src/openapi/platform/core/common-validation-schema-storage.ts +0 -105
- package/src/openapi/platform/models/announcement-banner.ts +0 -59
- package/src/openapi/platform/models/app-data-policies.ts +0 -79
- package/src/openapi/platform/models/app-migration.ts +0 -172
- package/src/openapi/platform/models/app-properties.ts +0 -32
- package/src/openapi/platform/models/audit-records.ts +0 -140
- package/src/openapi/platform/models/avatars.ts +0 -48
- package/src/openapi/platform/models/classification-levels.ts +0 -58
- package/src/openapi/platform/models/common.ts +0 -2669
- package/src/openapi/platform/models/dashboards.ts +0 -849
- package/src/openapi/platform/models/dynamic-modules.ts +0 -121
- package/src/openapi/platform/models/filter-sharing.ts +0 -103
- package/src/openapi/platform/models/filters.ts +0 -319
- package/src/openapi/platform/models/group-and-user-picker.ts +0 -85
- package/src/openapi/platform/models/groups.ts +0 -247
- package/src/openapi/platform/models/issue-attachments.ts +0 -290
- package/src/openapi/platform/models/issue-comment-properties.ts +0 -27
- package/src/openapi/platform/models/issue-comments.ts +0 -91
- package/src/openapi/platform/models/issue-custom-field-configuration-apps.ts +0 -96
- package/src/openapi/platform/models/issue-custom-field-contexts.ts +0 -1072
- package/src/openapi/platform/models/issue-custom-field-options-apps.ts +0 -273
- package/src/openapi/platform/models/issue-custom-field-options.ts +0 -283
- package/src/openapi/platform/models/issue-custom-field-values-apps.ts +0 -118
- package/src/openapi/platform/models/issue-field-configurations.ts +0 -435
- package/src/openapi/platform/models/issue-fields.ts +0 -392
- package/src/openapi/platform/models/issue-link-types.ts +0 -28
- package/src/openapi/platform/models/issue-links.ts +0 -185
- package/src/openapi/platform/models/issue-notification-schemes.ts +0 -370
- package/src/openapi/platform/models/issue-priorities.ts +0 -196
- package/src/openapi/platform/models/issue-properties.ts +0 -259
- package/src/openapi/platform/models/issue-remote-links.ts +0 -207
- package/src/openapi/platform/models/issue-resolutions.ts +0 -180
- package/src/openapi/platform/models/issue-search.ts +0 -367
- package/src/openapi/platform/models/issue-security-level.ts +0 -76
- package/src/openapi/platform/models/issue-security-schemes.ts +0 -496
- package/src/openapi/platform/models/issue-type-schemes.ts +0 -290
- package/src/openapi/platform/models/issue-type-screen-schemes.ts +0 -286
- package/src/openapi/platform/models/issue-types.ts +0 -66
- package/src/openapi/platform/models/issue-votes.ts +0 -38
- package/src/openapi/platform/models/issue-watchers.ts +0 -67
- package/src/openapi/platform/models/issue-worklogs.ts +0 -190
- package/src/openapi/platform/models/issues.ts +0 -1268
- package/src/openapi/platform/models/jira-expressions.ts +0 -578
- package/src/openapi/platform/models/jira-settings.ts +0 -118
- package/src/openapi/platform/models/jql-functions-apps.ts +0 -128
- package/src/openapi/platform/models/jql.ts +0 -783
- package/src/openapi/platform/models/labels.ts +0 -42
- package/src/openapi/platform/models/license-metrics.ts +0 -68
- package/src/openapi/platform/models/myself.ts +0 -29
- package/src/openapi/platform/models/permission-schemes.ts +0 -89
- package/src/openapi/platform/models/permissions.ts +0 -308
- package/src/openapi/platform/models/priority-schemes.ts +0 -527
- package/src/openapi/platform/models/project-avatars.ts +0 -29
- package/src/openapi/platform/models/project-classification-levels.ts +0 -24
- package/src/openapi/platform/models/project-components.ts +0 -231
- package/src/openapi/platform/models/project-email.ts +0 -27
- package/src/openapi/platform/models/project-features.ts +0 -78
- package/src/openapi/platform/models/project-permission-schemes.ts +0 -43
- package/src/openapi/platform/models/project-role-actors.ts +0 -107
- package/src/openapi/platform/models/project-roles.ts +0 -76
- package/src/openapi/platform/models/project-types.ts +0 -36
- package/src/openapi/platform/models/project-versions.ts +0 -216
- package/src/openapi/platform/models/projects.ts +0 -429
- package/src/openapi/platform/models/screen-schemes.ts +0 -192
- package/src/openapi/platform/models/screen-tab-fields.ts +0 -45
- package/src/openapi/platform/models/screens.ts +0 -171
- package/src/openapi/platform/models/server-info.ts +0 -100
- package/src/openapi/platform/models/service-registry.ts +0 -68
- package/src/openapi/platform/models/status.ts +0 -229
- package/src/openapi/platform/models/time-tracking.ts +0 -38
- package/src/openapi/platform/models/ui-modifications-apps.ts +0 -229
- package/src/openapi/platform/models/user-search.ts +0 -69
- package/src/openapi/platform/models/users.ts +0 -121
- package/src/openapi/platform/models/webhooks.ts +0 -307
- package/src/openapi/platform/models/workflow-scheme-drafts.ts +0 -58
- package/src/openapi/platform/models/workflow-scheme-project-associations.ts +0 -68
- package/src/openapi/platform/models/workflow-schemes.ts +0 -545
- package/src/openapi/platform/models/workflow-transition-properties.ts +0 -33
- package/src/openapi/platform/models/workflow-transition-rules.ts +0 -261
- package/src/openapi/platform/models/workflows.ts +0 -1943
- package/src/openapi/platform/services/announcement-banner-service.ts +0 -142
- package/src/openapi/platform/services/app-data-policies-service.ts +0 -136
- package/src/openapi/platform/services/app-migration-service.ts +0 -289
- package/src/openapi/platform/services/app-properties-service.ts +0 -441
- package/src/openapi/platform/services/application-roles-service.ts +0 -247
- package/src/openapi/platform/services/audit-records-service.ts +0 -164
- package/src/openapi/platform/services/avatars-service.ts +0 -769
- package/src/openapi/platform/services/classification-levels-service.ts +0 -131
- package/src/openapi/platform/services/dashboards-service.ts +0 -1721
- package/src/openapi/platform/services/dynamic-modules-service.ts +0 -127
- package/src/openapi/platform/services/filter-sharing-service.ts +0 -687
- package/src/openapi/platform/services/filters-service.ts +0 -1901
- package/src/openapi/platform/services/group-and-user-picker-service.ts +0 -224
- package/src/openapi/platform/services/groups-service.ts +0 -751
- package/src/openapi/platform/services/issue-attachments-service.ts +0 -900
- package/src/openapi/platform/services/issue-comment-properties-service.ts +0 -324
- package/src/openapi/platform/services/issue-comments-service.ts +0 -812
- package/src/openapi/platform/services/issue-custom-field-configuration-apps-service.ts +0 -277
- package/src/openapi/platform/services/issue-custom-field-contexts-service.ts +0 -1339
- package/src/openapi/platform/services/issue-custom-field-options-apps-service.ts +0 -994
- package/src/openapi/platform/services/issue-custom-field-options-service.ts +0 -651
- package/src/openapi/platform/services/issue-custom-field-values-apps-service.ts +0 -201
- package/src/openapi/platform/services/issue-field-configurations-service.ts +0 -1294
- package/src/openapi/platform/services/issue-fields-service.ts +0 -837
- package/src/openapi/platform/services/issue-link-types-service.ts +0 -360
- package/src/openapi/platform/services/issue-links-service.ts +0 -345
- package/src/openapi/platform/services/issue-navigator-settings-service.ts +0 -119
- package/src/openapi/platform/services/issue-notification-schemes-service.ts +0 -1209
- package/src/openapi/platform/services/issue-priorities-service.ts +0 -575
- package/src/openapi/platform/services/issue-properties-service.ts +0 -606
- package/src/openapi/platform/services/issue-remote-links-service.ts +0 -597
- package/src/openapi/platform/services/issue-resolutions-service.ts +0 -534
- package/src/openapi/platform/services/issue-search-service.ts +0 -1139
- package/src/openapi/platform/services/issue-security-level-service.ts +0 -250
- package/src/openapi/platform/services/issue-security-schemes-service.ts +0 -1240
- package/src/openapi/platform/services/issue-type-properties-service.ts +0 -325
- package/src/openapi/platform/services/issue-type-schemes-service.ts +0 -940
- package/src/openapi/platform/services/issue-type-screen-schemes-service.ts +0 -994
- package/src/openapi/platform/services/issue-types-service.ts +0 -679
- package/src/openapi/platform/services/issue-votes-service.ts +0 -221
- package/src/openapi/platform/services/issue-watchers-service.ts +0 -331
- package/src/openapi/platform/services/issue-worklog-properties-service.ts +0 -348
- package/src/openapi/platform/services/issue-worklogs-service.ts +0 -1089
- package/src/openapi/platform/services/issues-service.ts +0 -3346
- package/src/openapi/platform/services/jira-expressions-service.ts +0 -407
- package/src/openapi/platform/services/jira-settings-service.ts +0 -415
- package/src/openapi/platform/services/jql-functions-apps-service.ts +0 -219
- package/src/openapi/platform/services/jql-service.ts +0 -896
- package/src/openapi/platform/services/labels-service.ts +0 -89
- package/src/openapi/platform/services/license-metrics-service.ts +0 -216
- package/src/openapi/platform/services/myself-service.ts +0 -520
- package/src/openapi/platform/services/permission-schemes-service.ts +0 -926
- package/src/openapi/platform/services/permissions-service.ts +0 -407
- package/src/openapi/platform/services/priority-schemes-service.ts +0 -1001
- package/src/openapi/platform/services/project-avatars-service.ts +0 -341
- package/src/openapi/platform/services/project-categories-service.ts +0 -318
- package/src/openapi/platform/services/project-classification-levels-service.ts +0 -232
- package/src/openapi/platform/services/project-components-service.ts +0 -1332
- package/src/openapi/platform/services/project-email-service.ts +0 -161
- package/src/openapi/platform/services/project-features-service.ts +0 -207
- package/src/openapi/platform/services/project-key-and-name-validation-service.ts +0 -200
- package/src/openapi/platform/services/project-permission-schemes-service.ts +0 -384
- package/src/openapi/platform/services/project-properties-service.ts +0 -320
- package/src/openapi/platform/services/project-role-actors-service.ts +0 -627
- package/src/openapi/platform/services/project-roles-service.ts +0 -867
- package/src/openapi/platform/services/project-types-service.ts +0 -297
- package/src/openapi/platform/services/project-versions-service.ts +0 -1287
- package/src/openapi/platform/services/projects-service.ts +0 -2196
- package/src/openapi/platform/services/screen-schemes-service.ts +0 -334
- package/src/openapi/platform/services/screen-tab-fields-service.ts +0 -276
- package/src/openapi/platform/services/screen-tabs-service.ts +0 -421
- package/src/openapi/platform/services/screens-service.ts +0 -528
- package/src/openapi/platform/services/server-info-service.ts +0 -88
- package/src/openapi/platform/services/service-registry-service.ts +0 -89
- package/src/openapi/platform/services/status-service.ts +0 -498
- package/src/openapi/platform/services/tasks-service.ts +0 -159
- package/src/openapi/platform/services/time-tracking-service.ts +0 -386
- package/src/openapi/platform/services/ui-modifications-apps-service.ts +0 -403
- package/src/openapi/platform/services/user-properties-service.ts +0 -413
- package/src/openapi/platform/services/user-search-service.ts +0 -1214
- package/src/openapi/platform/services/users-service.ts +0 -1108
- package/src/openapi/platform/services/webhooks-service.ts +0 -458
- package/src/openapi/platform/services/workflow-scheme-drafts-service.ts +0 -1313
- package/src/openapi/platform/services/workflow-scheme-project-associations-service.ts +0 -189
- package/src/openapi/platform/services/workflow-schemes-service.ts +0 -1617
- package/src/openapi/platform/services/workflow-status-categories-service.ts +0 -151
- package/src/openapi/platform/services/workflow-statuses-service.ts +0 -176
- package/src/openapi/platform/services/workflow-transition-properties-service.ts +0 -388
- package/src/openapi/platform/services/workflow-transition-rules-service.ts +0 -485
- package/src/openapi/platform/services/workflows-service.ts +0 -3477
- package/src/openapi/platform/validation-schema-storage.ts +0 -186
- package/src/openapi/software/base-jira-software-api-client.ts +0 -447
- package/src/openapi/software/core/common-http-client.ts +0 -723
- package/src/openapi/software/core/common-http-service.ts +0 -22
- package/src/openapi/software/core/common-validation-schema-storage.ts +0 -105
- package/src/openapi/software/models/board.ts +0 -918
- package/src/openapi/software/services/backlog-service.ts +0 -160
- package/src/openapi/software/services/board-service.ts +0 -4189
- package/src/openapi/software/services/builds-service.ts +0 -571
- package/src/openapi/software/services/deployments-service.ts +0 -403
- package/src/openapi/software/services/dev-ops-components-service.ts +0 -371
- package/src/openapi/software/services/development-information-service.ts +0 -2357
- package/src/openapi/software/services/epic-service.ts +0 -854
- package/src/openapi/software/services/feature-flags-service.ts +0 -303
- package/src/openapi/software/services/issue-service.ts +0 -529
- package/src/openapi/software/services/operations-service.ts +0 -741
- package/src/openapi/software/services/remote-links-service.ts +0 -653
- package/src/openapi/software/services/security-information-service.ts +0 -495
- package/src/openapi/software/services/sprint-service.ts +0 -969
- package/src/openapi/software/validation-schema-storage.ts +0 -186
- package/tsconfig.build.json +0 -7
- package/tsconfig.json +0 -4
|
@@ -1,407 +0,0 @@
|
|
|
1
|
-
// DO NOT EDIT!
|
|
2
|
-
// This file is generated by "api-typescript-generator".
|
|
3
|
-
// To update this file run "yarn build:openapi".
|
|
4
|
-
import { z } from "zod";
|
|
5
|
-
|
|
6
|
-
import * as commonHttpClient from "../core/common-http-client";
|
|
7
|
-
import { CommonHttpService } from "../core/common-http-service";
|
|
8
|
-
import {
|
|
9
|
-
type JiraExpressionEvalRequestBean,
|
|
10
|
-
type JiraExpressionForAnalysis,
|
|
11
|
-
type JiraExpressionResult,
|
|
12
|
-
type JiraExpressionsAnalysis,
|
|
13
|
-
registerJiraExpressionsValidationSchemas,
|
|
14
|
-
} from "../models/jira-expressions";
|
|
15
|
-
import { validationSchemaStorage } from "../validation-schema-storage";
|
|
16
|
-
/**
|
|
17
|
-
* This resource is a collection of operations for [Jira
|
|
18
|
-
* expressions](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/).
|
|
19
|
-
*/
|
|
20
|
-
export class JiraExpressionsService extends CommonHttpService {
|
|
21
|
-
/**
|
|
22
|
-
* Analyses and validates Jira expressions.
|
|
23
|
-
*
|
|
24
|
-
* As an experimental feature, this operation can also attempt to type-check the
|
|
25
|
-
* expressions.
|
|
26
|
-
*
|
|
27
|
-
* Learn more about Jira expressions in the
|
|
28
|
-
* [documentation](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/).
|
|
29
|
-
*
|
|
30
|
-
* **[Permissions](#permissions) required**: None.
|
|
31
|
-
*
|
|
32
|
-
* @returns Returned if the request is successful.
|
|
33
|
-
*
|
|
34
|
-
* example: {
|
|
35
|
-
* "results": [
|
|
36
|
-
* {
|
|
37
|
-
* "expression": "analysed expression",
|
|
38
|
-
* "errors": [
|
|
39
|
-
* {
|
|
40
|
-
* "line": 1,
|
|
41
|
-
* "column": 4,
|
|
42
|
-
* "message": "!, -, typeof, (, IDENTIFIER, null, true, false, NUMBER,
|
|
43
|
-
* STRING, TEMPLATE_LITERAL, new, [ or { expected, > encountered.",
|
|
44
|
-
* "type": "syntax"
|
|
45
|
-
* },
|
|
46
|
-
* {
|
|
47
|
-
* "message": "Jira expression is too long (1040), limit: 1000
|
|
48
|
-
* characters",
|
|
49
|
-
* "type": "other"
|
|
50
|
-
* },
|
|
51
|
-
* {
|
|
52
|
-
* "message": "Jira expression has too many nodes (150), limit: 100
|
|
53
|
-
* leaves",
|
|
54
|
-
* "type": "other"
|
|
55
|
-
* }
|
|
56
|
-
* ],
|
|
57
|
-
* "valid": false
|
|
58
|
-
* },
|
|
59
|
-
* {
|
|
60
|
-
* "expression": "issues.map(i => {idAndKey: [i.id, i.key], summary:
|
|
61
|
-
* i.summary, comments: i.comments})",
|
|
62
|
-
* "valid": true,
|
|
63
|
-
* "type": "List<{idAndKey: [Number, String], summary: String, comments:
|
|
64
|
-
* List<Comment>}>",
|
|
65
|
-
* "complexity": {
|
|
66
|
-
* "expensiveOperations": "N",
|
|
67
|
-
* "variables": {
|
|
68
|
-
* "N": "issues"
|
|
69
|
-
* }
|
|
70
|
-
* }
|
|
71
|
-
* },
|
|
72
|
-
* {
|
|
73
|
-
* "expression": "issues.map(i => i.id > '0')",
|
|
74
|
-
* "errors": [
|
|
75
|
-
* {
|
|
76
|
-
* "expression": "i.id > 0",
|
|
77
|
-
* "message": "Can't compare Number to String.",
|
|
78
|
-
* "type": "type"
|
|
79
|
-
* }
|
|
80
|
-
* ],
|
|
81
|
-
* "valid": false,
|
|
82
|
-
* "type": "TypeError"
|
|
83
|
-
* }
|
|
84
|
-
* ]
|
|
85
|
-
* }
|
|
86
|
-
* @path {POST} /rest/api/3/expression/analyse
|
|
87
|
-
* @scopes-current read:jira-work, read:jira-user
|
|
88
|
-
* @scopes-beta read:field:jira, read:jira-expressions:jira
|
|
89
|
-
*/
|
|
90
|
-
analyseExpression({
|
|
91
|
-
check,
|
|
92
|
-
jiraExpressionForAnalysis,
|
|
93
|
-
}: {
|
|
94
|
-
/**
|
|
95
|
-
* The check to perform:
|
|
96
|
-
*
|
|
97
|
-
* * `syntax` Each expression's syntax is checked to ensure the expression can
|
|
98
|
-
* be parsed. Also, syntactic limits are validated. For example, the expression's
|
|
99
|
-
* length.
|
|
100
|
-
* * `type` EXPERIMENTAL. Each expression is type checked and the final type of
|
|
101
|
-
* the expression inferred. Any type errors that would result in the expression
|
|
102
|
-
* failure at runtime are reported. For example, accessing properties that don't
|
|
103
|
-
* exist or passing the wrong number of arguments to functions. Also performs the
|
|
104
|
-
* syntax check.
|
|
105
|
-
* * `complexity` EXPERIMENTAL. Determines the formulae for how many [expensive
|
|
106
|
-
* operations](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#expensive-operations)
|
|
107
|
-
* each expression may execute.
|
|
108
|
-
*/
|
|
109
|
-
check?: "syntax" | "type" | "complexity";
|
|
110
|
-
/**
|
|
111
|
-
* The Jira expressions to analyse.
|
|
112
|
-
*
|
|
113
|
-
* @example {
|
|
114
|
-
* "contextVariables": {
|
|
115
|
-
* "listOfStrings": "List<String>",
|
|
116
|
-
* "record": "{ a: Number, b: String }",
|
|
117
|
-
* "value": "User"
|
|
118
|
-
* },
|
|
119
|
-
* "expressions": [
|
|
120
|
-
* "issues.map(issue => issue.properties['property_key'])"
|
|
121
|
-
* ]
|
|
122
|
-
* }
|
|
123
|
-
*/
|
|
124
|
-
jiraExpressionForAnalysis: JiraExpressionForAnalysis;
|
|
125
|
-
}): Promise<JiraExpressionsAnalysis> {
|
|
126
|
-
return this.getClientInstance()
|
|
127
|
-
.request({
|
|
128
|
-
path: "/rest/api/3/expression/analyse",
|
|
129
|
-
method: "POST",
|
|
130
|
-
query: {
|
|
131
|
-
check,
|
|
132
|
-
},
|
|
133
|
-
headers: {
|
|
134
|
-
"Content-Type": "application/json",
|
|
135
|
-
},
|
|
136
|
-
body: jiraExpressionForAnalysis,
|
|
137
|
-
})
|
|
138
|
-
.then(
|
|
139
|
-
this.getClientInstance().responseHandler({
|
|
140
|
-
200: {
|
|
141
|
-
"application/json": "json",
|
|
142
|
-
},
|
|
143
|
-
}),
|
|
144
|
-
)
|
|
145
|
-
.then(
|
|
146
|
-
commonHttpClient.castResponse<{
|
|
147
|
-
status: 200;
|
|
148
|
-
mediaType: "application/json";
|
|
149
|
-
body: JiraExpressionsAnalysis;
|
|
150
|
-
}>(),
|
|
151
|
-
)
|
|
152
|
-
.then(
|
|
153
|
-
validationSchemaStorage.validator(
|
|
154
|
-
"JiraExpressionsService.analyseExpression.response",
|
|
155
|
-
),
|
|
156
|
-
)
|
|
157
|
-
.then(commonHttpClient.getBody);
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Evaluates a Jira expression and returns its value.
|
|
161
|
-
*
|
|
162
|
-
* This resource can be used to test Jira expressions that you plan to use
|
|
163
|
-
* elsewhere, or to fetch data in a flexible way. Consult the [Jira expressions
|
|
164
|
-
* documentation](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/)
|
|
165
|
-
* for more details.
|
|
166
|
-
*
|
|
167
|
-
* #### Context variables ####
|
|
168
|
-
*
|
|
169
|
-
* The following context variables are available to Jira expressions evaluated by
|
|
170
|
-
* this resource. Their presence depends on various factors; usually you need to
|
|
171
|
-
* manually request them in the context object sent in the payload, but some of
|
|
172
|
-
* them are added automatically under certain conditions.
|
|
173
|
-
*
|
|
174
|
-
* * `user`
|
|
175
|
-
* ([User](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user)):
|
|
176
|
-
* The current user. Always available and equal to `null` if the request is
|
|
177
|
-
* anonymous.
|
|
178
|
-
* * `app`
|
|
179
|
-
* ([App](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#app)):
|
|
180
|
-
* The [Connect
|
|
181
|
-
* app](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps)
|
|
182
|
-
* that made the request. Available only for authenticated requests made by
|
|
183
|
-
* Connect Apps (read more here: [Authentication for Connect
|
|
184
|
-
* apps](https://developer.atlassian.com/cloud/jira/platform/security-for-connect-apps/)).
|
|
185
|
-
* * `issue`
|
|
186
|
-
* ([Issue](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue)):
|
|
187
|
-
* The current issue. Available only when the issue is provided in the request
|
|
188
|
-
* context object.
|
|
189
|
-
* * `issues`
|
|
190
|
-
* ([List](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#list)
|
|
191
|
-
* of
|
|
192
|
-
* [Issues](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue)):
|
|
193
|
-
* A collection of issues matching a JQL query. Available only when JQL is
|
|
194
|
-
* provided in the request context object.
|
|
195
|
-
* * `project`
|
|
196
|
-
* ([Project](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#project)):
|
|
197
|
-
* The current project. Available only when the project is provided in the request
|
|
198
|
-
* context object.
|
|
199
|
-
* * `sprint`
|
|
200
|
-
* ([Sprint](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#sprint)):
|
|
201
|
-
* The current sprint. Available only when the sprint is provided in the request
|
|
202
|
-
* context object.
|
|
203
|
-
* * `board`
|
|
204
|
-
* ([Board](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#board)):
|
|
205
|
-
* The current board. Available only when the board is provided in the request
|
|
206
|
-
* context object.
|
|
207
|
-
* * `serviceDesk`
|
|
208
|
-
* ([ServiceDesk](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#servicedesk)):
|
|
209
|
-
* The current service desk. Available only when the service desk is provided in
|
|
210
|
-
* the request context object.
|
|
211
|
-
* * `customerRequest`
|
|
212
|
-
* ([CustomerRequest](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#customerrequest)):
|
|
213
|
-
* The current customer request. Available only when the customer request is
|
|
214
|
-
* provided in the request context object.
|
|
215
|
-
*
|
|
216
|
-
* Also, custom context variables can be passed in the request with their types.
|
|
217
|
-
* Those variables can be accessed by key in the Jira expression. These variable
|
|
218
|
-
* types are available for use in a custom context:
|
|
219
|
-
*
|
|
220
|
-
* * `user`: A
|
|
221
|
-
* [user](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user)
|
|
222
|
-
* specified as an Atlassian account ID.
|
|
223
|
-
* * `issue`: An
|
|
224
|
-
* [issue](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue)
|
|
225
|
-
* specified by ID or key. All the fields of the issue object are available in the
|
|
226
|
-
* Jira expression.
|
|
227
|
-
* * `json`: A JSON object containing custom content.
|
|
228
|
-
* * `list`: A JSON list of `user`, `issue`, or `json` variable types.
|
|
229
|
-
*
|
|
230
|
-
* This operation can be accessed anonymously.
|
|
231
|
-
*
|
|
232
|
-
* **[Permissions](#permissions) required**: None. However, an expression may
|
|
233
|
-
* return different results for different users depending on their permissions.
|
|
234
|
-
* For example, different users may see different comments on the same issue.
|
|
235
|
-
* Permission to access Jira Software is required to access Jira Software context
|
|
236
|
-
* variables (`board` and `sprint`) or fields (for example, `issue.sprint`).
|
|
237
|
-
*
|
|
238
|
-
* @returns Returned if the evaluation results in a value. The result is a JSON primitive
|
|
239
|
-
* value, list, or object.
|
|
240
|
-
*
|
|
241
|
-
* example: {
|
|
242
|
-
* "value": "The expression's result. This value can be any JSON, not
|
|
243
|
-
* necessarily a String",
|
|
244
|
-
* "meta": {
|
|
245
|
-
* "complexity": {
|
|
246
|
-
* "steps": {
|
|
247
|
-
* "value": 1,
|
|
248
|
-
* "limit": 10000
|
|
249
|
-
* },
|
|
250
|
-
* "expensiveOperations": {
|
|
251
|
-
* "value": 3,
|
|
252
|
-
* "limit": 10
|
|
253
|
-
* },
|
|
254
|
-
* "beans": {
|
|
255
|
-
* "value": 0,
|
|
256
|
-
* "limit": 1000
|
|
257
|
-
* },
|
|
258
|
-
* "primitiveValues": {
|
|
259
|
-
* "value": 1,
|
|
260
|
-
* "limit": 10000
|
|
261
|
-
* }
|
|
262
|
-
* },
|
|
263
|
-
* "issues": {
|
|
264
|
-
* "jql": {
|
|
265
|
-
* "startAt": 0,
|
|
266
|
-
* "maxResults": 1000,
|
|
267
|
-
* "count": 140,
|
|
268
|
-
* "totalCount": 140,
|
|
269
|
-
* "validationWarnings": [
|
|
270
|
-
* "There is a problem with the JQL query."
|
|
271
|
-
* ]
|
|
272
|
-
* }
|
|
273
|
-
* }
|
|
274
|
-
* }
|
|
275
|
-
* }
|
|
276
|
-
* @path {POST} /rest/api/3/expression/eval
|
|
277
|
-
* @scopes-current read:jira-work, read:jira-user
|
|
278
|
-
* @scopes-beta read:jira-expressions:jira
|
|
279
|
-
*/
|
|
280
|
-
evaluateJiraExpression({
|
|
281
|
-
expand,
|
|
282
|
-
jiraExpressionEvalRequestBean,
|
|
283
|
-
}: {
|
|
284
|
-
/**
|
|
285
|
-
* Use [expand](#expansion) to include additional information in the response.
|
|
286
|
-
* This parameter accepts `meta.complexity` that returns information about the
|
|
287
|
-
* expression complexity. For example, the number of expensive operations used by
|
|
288
|
-
* the expression and how close the expression is to reaching the [complexity
|
|
289
|
-
* limit](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#restrictions).
|
|
290
|
-
* Useful when designing and debugging your expressions.
|
|
291
|
-
*/
|
|
292
|
-
expand?: string;
|
|
293
|
-
/**
|
|
294
|
-
* The Jira expression and the evaluation context.
|
|
295
|
-
*
|
|
296
|
-
* @example {
|
|
297
|
-
* "context": {
|
|
298
|
-
* "board": 10100,
|
|
299
|
-
* "custom": {
|
|
300
|
-
* "config": {
|
|
301
|
-
* "type": "json",
|
|
302
|
-
* "value": {
|
|
303
|
-
* "userId": "10002"
|
|
304
|
-
* }
|
|
305
|
-
* },
|
|
306
|
-
* "issuesList": [
|
|
307
|
-
* {
|
|
308
|
-
* "key": "ACJIRA-1471",
|
|
309
|
-
* "type": "issue"
|
|
310
|
-
* },
|
|
311
|
-
* {
|
|
312
|
-
* "id": 100001,
|
|
313
|
-
* "type": "issue"
|
|
314
|
-
* }
|
|
315
|
-
* ],
|
|
316
|
-
* "myUser": {
|
|
317
|
-
* "accountId": "100001",
|
|
318
|
-
* "type": "user"
|
|
319
|
-
* },
|
|
320
|
-
* "nullField": {
|
|
321
|
-
* "type": "json"
|
|
322
|
-
* }
|
|
323
|
-
* },
|
|
324
|
-
* "customerRequest": 1450,
|
|
325
|
-
* "issue": {
|
|
326
|
-
* "key": "ACJIRA-1470"
|
|
327
|
-
* },
|
|
328
|
-
* "issues": {
|
|
329
|
-
* "jql": {
|
|
330
|
-
* "maxResults": 100,
|
|
331
|
-
* "query": "project = HSP",
|
|
332
|
-
* "startAt": 0,
|
|
333
|
-
* "validation": "strict"
|
|
334
|
-
* }
|
|
335
|
-
* },
|
|
336
|
-
* "project": {
|
|
337
|
-
* "key": "ACJIRA"
|
|
338
|
-
* },
|
|
339
|
-
* "serviceDesk": 10023,
|
|
340
|
-
* "sprint": 10001
|
|
341
|
-
* },
|
|
342
|
-
* "expression": "{ key: issue.key, type: issue.issueType.name, links:
|
|
343
|
-
* issue.links.map(link => link.linkedIssue.id), listCustomVariable:
|
|
344
|
-
* issuesList.includes(issue), customVariables: myUser.accountId == config.userId}"
|
|
345
|
-
* }
|
|
346
|
-
*/
|
|
347
|
-
jiraExpressionEvalRequestBean: JiraExpressionEvalRequestBean;
|
|
348
|
-
}): Promise<JiraExpressionResult> {
|
|
349
|
-
return this.getClientInstance()
|
|
350
|
-
.request({
|
|
351
|
-
path: "/rest/api/3/expression/eval",
|
|
352
|
-
method: "POST",
|
|
353
|
-
query: {
|
|
354
|
-
expand,
|
|
355
|
-
},
|
|
356
|
-
headers: {
|
|
357
|
-
"Content-Type": "application/json",
|
|
358
|
-
},
|
|
359
|
-
body: jiraExpressionEvalRequestBean,
|
|
360
|
-
})
|
|
361
|
-
.then(
|
|
362
|
-
this.getClientInstance().responseHandler({
|
|
363
|
-
200: {
|
|
364
|
-
"application/json": "json",
|
|
365
|
-
},
|
|
366
|
-
}),
|
|
367
|
-
)
|
|
368
|
-
.then(
|
|
369
|
-
commonHttpClient.castResponse<{
|
|
370
|
-
status: 200;
|
|
371
|
-
mediaType: "application/json";
|
|
372
|
-
body: JiraExpressionResult;
|
|
373
|
-
}>(),
|
|
374
|
-
)
|
|
375
|
-
.then(
|
|
376
|
-
validationSchemaStorage.validator(
|
|
377
|
-
"JiraExpressionsService.evaluateJiraExpression.response",
|
|
378
|
-
),
|
|
379
|
-
)
|
|
380
|
-
.then(commonHttpClient.getBody);
|
|
381
|
-
}
|
|
382
|
-
static initialize() {
|
|
383
|
-
validationSchemaStorage.registerExtensible(
|
|
384
|
-
"JiraExpressionsService.analyseExpression.response",
|
|
385
|
-
z
|
|
386
|
-
.object({
|
|
387
|
-
status: z.literal(200),
|
|
388
|
-
mediaType: z.literal("application/json"),
|
|
389
|
-
body: validationSchemaStorage.lazy("JiraExpressionsAnalysis"),
|
|
390
|
-
})
|
|
391
|
-
.describe("JiraExpressionsService.analyseExpression.response"),
|
|
392
|
-
);
|
|
393
|
-
validationSchemaStorage.registerExtensible(
|
|
394
|
-
"JiraExpressionsService.evaluateJiraExpression.response",
|
|
395
|
-
z
|
|
396
|
-
.object({
|
|
397
|
-
status: z.literal(200),
|
|
398
|
-
mediaType: z.literal("application/json"),
|
|
399
|
-
body: validationSchemaStorage.lazy("JiraExpressionResult"),
|
|
400
|
-
})
|
|
401
|
-
.describe("JiraExpressionsService.evaluateJiraExpression.response"),
|
|
402
|
-
);
|
|
403
|
-
validationSchemaStorage.registerOnce([
|
|
404
|
-
registerJiraExpressionsValidationSchemas,
|
|
405
|
-
]);
|
|
406
|
-
}
|
|
407
|
-
}
|